Re: Confusion over Python drivers - Mailing list pgsql-hackers
From | Marko Kreen |
---|---|
Subject | Re: Confusion over Python drivers |
Date | |
Msg-id | e51f66da1002061648l53bce309v8e3817d188f7f77@mail.gmail.com Whole thread Raw |
In response to | Re: Confusion over Python drivers (Greg Smith <greg@2ndquadrant.com>) |
Responses |
Re: Confusion over Python drivers
Re: Confusion over Python drivers |
List | pgsql-hackers |
On 2/7/10, Greg Smith <greg@2ndquadrant.com> wrote: > Marko Kreen wrote: > > Psycopg was the leader, especially in web-environments, > > but it has non-obvious license and with dead website it does not > > seem that attractive. Although it is well-maintained still. > > Best path forward would be to talk with Psycopg guys about > > license clarification/change. > > Agreed. A relicensed Psycopg, with a more professional looking > introduction/documentation page (like the budding page on our Wiki) than > what the initd web site has, seems like the best platform to hack on top of > to me as well. The fact that they've moved to git recently makes it that > much easier for another branch to exist even outside of their somewhat > troubled infrastructure. > > To summarize what I saw on this thread, the primary wishlist of changes to > it are: > > -License change Note that as long they use non-BSD licence, they need the exception for the horror that is the OpenSSL licence. So you cannot 100% satisfy the one-click-lawyers. > -Consider refactoring to better follow standard driver practices, such as > using PQExecParams This is long-term todo item for psycopg, seems offtopic to the "driver situation". > -Improvement in transaction control to resolve issues that cause idle > transactions This is routine bug in either app or psycopg, we have no reason to touch it. The guy should report to appropriate lists. > -Possible simplifications in how it's implemented async operations, to > improve robustness/reduce code complexity Long-term todo item for psycopg2, offtopic for "driver situation". > -Confirm/add multi-threaded support. Seems psycopg2 already has good enough threading. > -Confirm/add support for the most common standard types (such as array) psycopg2 has array support, I'd like to have tuple/record also. Minor todo item for psycopg, mostly but not completely offtopic for "driver situation". > > PyGreSQL is the oldest, older than DB-API, and so it's DB-API > > interface seems an afterthought and is untested/underused - eg. > > it does not support bytea. > > > > > And if Psycopg can't be relicensed happily and/or improved as above, as the > only other native Python driver PyGreSQL looks like the next candidate to > build on top of. Its major issues are: > > -Test/complete/refactor for full DB-API 2.0 support > -Add bytea support timestamp/timestamptz also... > -Add extension support, perhaps modeled on what Psycopg. > -Build a COPY extension They seems to have the low-level parts, just they are missing from DB-API interface. > -Confirm/add multi-threaded support > -Confirm/add support for the most common standard types (such as array) > > Any other suggestions before I turn the above into a roadmap page on the > wiki? I think we should concentrate on the PR problem and technical issues related to that, keep the other low-level and non-user-visible issues out. Or at least separate. (PsycopgTodo wiki page?) -- marko
pgsql-hackers by date: