Confusion over Python drivers
От | Kevin Ar18 |
---|---|
Тема | Confusion over Python drivers |
Дата | |
Msg-id | SNT110-W19B857B0F06D828BBC0DA6AA520@phx.gbl обсуждение исходный текст |
Ответы |
Re: Confusion over Python drivers
(Josh Berkus <josh@agliodbs.com>)
|
Список | pgsql-hackers |
I saw this on reddit and thought I might drop a line.<br /><br />I went through this same issue, trying to find a postgresqldriver. Mostly, I had no intention of using psycopg because of its copyleft licensing. (Of course, I don't needto go into why.)<br /><br />Anyways, here's some info that might help on three alternatives:<br />Py-postgresql, PyGreSQL,and PG3000<br /><br />Py-postgresql is active (but I only see 1 person committing)<br />MIT/BSD style license<br/> It uses some some C for speed.<br /> It has DB-API and PG-API bindings.<br /><br />Problem: is it Python 3 only!<br/><br /><br />PyGreSQL (looking to not be very active in the last few months)<br />MIT/BSD style license<br />I'mvague on it's features, whether it has C optimizations, or if it is a version limited to Python 3 or 2.x<br /><br /><br/>PG8000 is active at the moment<br />MIT/BSD style license<br />It works on 2.x and Python 3<br /><br />Problem: itis pure Python, so it is slower<br /><br /><br />If you plan on pursuing this, I'd recommend talking to people on on 3projects. Here's what I would describe as ideal in a project:<br /><br />* MIT/BSD style license<br />* works on Python2.x and 3<br />* C optimizations for speed (or whatever for speed)<br /><br />------------------<br />That's that part. Now for some problems that would need solving in order for the db api to be extremely useful/userfriendly in the Pythonworld:<br />------------------<br />* SQLAlchemy bindings/support -- as of right now only psycopyg works in SQLAlchemywithout problems. PG8000 will work, but you need an experimental version of boht PG8000 and SQLAlchemy. The othertwo do not work. SQLAlchemy support is probably most needed of anything. SQLAlchemy support should not only be possiblebut default.<br />* Django bindings (these are unique to Django and nobody but psycopg has them, which is not good). Django support should not only be possible but default.<br /> * Needs 2.x and Python 3 compatability<br />* It isinevitable that if the library uses C optimizations, then that means they need to provide lots of different binaries --think 32bit vs 64bit and then 2.4, 2.5, 3.0 etc.... Some combinations will often be left out making it hard for someoneto use/install it.<br /><br /><br /><br />Of course all of this is from the perspective of Python users. Of course,you have your own features that you want from your end (from PostgreSQL's perspective). Perhaps this info would helpyou to know which avenue to pursue.<br /><br /><hr />Your E-mail and More On-the-Go. Get Windows Live Hotmail Free. <ahref="http://clk.atdmt.com/GBL/go/201469229/direct/01/" target="_new">Sign up now.</a>
В списке pgsql-hackers по дате отправления: