Re: RFC: Extend psycopg2.connect to accept all valid parameters?

From: Daniele Varrazzo <daniele(dot)varrazzo(at)gmail(dot)com>
To: Fabian Knittel <fabian(dot)knittel(at)avona(dot)com>
Cc: psycopg(at)postgresql(dot)org
Subject: Re: RFC: Extend psycopg2.connect to accept all valid parameters?
Date: 2011-11-17 02:02:14
Message-ID: CA+mi_8a=4EEqWe9mcBa=5WCLMQdRUM32tHYpRiWjq-6DELjsfg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: psycopg

On Wed, Nov 16, 2011 at 10:23 PM, Daniele Varrazzo
<daniele(dot)varrazzo(at)gmail(dot)com> wrote:
> On Wed, Nov 16, 2011 at 9:38 PM, Fabian Knittel
> <fabian(dot)knittel(at)avona(dot)com> wrote:

>> Instead of implementing the kwargs-pass-through approach in C, I could
>> also imagine a solution where psycopg2._psycopg.connect (psyco_connect)
>> is changed to only support a single string-DSN-parameter.
>> psycopg2.connect would be a pure-Python method that wraps around
>> psycopg2._psycopg.connect and provides the kwargs to dsn conversion
>> sugar.  (This would move all the icky string manipulation stuff from C
>> to Python.)
>
> Yes, I agree: this is a less scary implementation if you wanted to
> provide a patch. I'd either leave psycopg2._psycopg.connect as it is,
> with the currently supported keyword arguments, or rename it to
> psycopg2._psycopg._connect, supporting only the connection string.
> Either way, the function would be imported in the module as _connect,
> to be invoked by a connect() function written in python and
> responsible to build the connection string.

I've implemented what discussed here and pushed in a separate branch:
https://github.com/dvarrazzo/psycopg/commit/d2b67364fd2b0b192342281d24a7e3d0a4909980

It's open for discussion. It is not as tested as the rest of the
library, as there aren't many tests covering connect() in all the
possible ways (as there should be as many databases on the other side
to reply). So it needs some manual testing, or a strategy for
automatic ones, definitely more than the 10 minutes I've tried before
pushing.

I'd like to hear from somebody else (mostly Fog, but anybody else)
before having it merged and released: tests and feedbacks are welcome.

Cheers,

-- Daniele

In response to

Responses

Browse psycopg by date

  From Date Subject
Next Message Jan Urbański 2011-11-17 07:48:16 Re: RFC: Extend psycopg2.connect to accept all valid parameters?
Previous Message Daniele Varrazzo 2011-11-16 22:23:21 Re: RFC: Extend psycopg2.connect to accept all valid parameters?