• Alvaro Herrera's avatar
    Accept postgres:// URIs in libpq connection functions · b035cb9d
    Alvaro Herrera authored
    postgres:// URIs are an attempt to "stop the bleeding" in this general
    area that has been said to occur due to external projects adopting their
    own syntaxes.  The syntaxes supported by this patch:
    
     postgres://[user[:pwd]@][unix-socket][:port[/dbname]][?param1=value1&...]
     postgres://[user[:pwd]@][net-location][:port][/dbname][?param1=value1&...]
    
    should be enough to cover most interesting cases without having to
    resort to "param=value" pairs, but those are provided for the cases that
    need them regardless.
    
    libpq documentation has been shuffled around a bit, to avoid stuffing
    all the format details into the PQconnectdbParams description, which was
    already a bit overwhelming.  The list of keywords has moved to its own
    subsection, and the details on the URI format live in another subsection.
    
    This includes a simple test program, as requested in discussion, to
    ensure that interesting corner cases continue to work appropriately in
    the future.
    
    Author: Alexander Shulgin
    Some tweaking by Álvaro Herrera, Greg Smith, Daniel Farina, Peter Eisentraut
    Reviewed by Robert Haas, Alexey Klyukin (offlist), Heikki Linnakangas,
    Marko Kreen, and others
    
    Oh, it also supports postgresql:// but that's probably just an accident.
    b035cb9d
regress.sh 543 Bytes