From: Josh Berkus on

> The situation is unfortunate, but you might as well argue that too many
> Linux desktops or Linux distributions confuse new users and hurt
> adoption. These alternatives all exist for a reason, and it will be
> difficult to get some of them to abandon their work with the aim of
> reducing the overall "confusion".

I'm not as concerned about "confusion" as the fact that *all* of the
various Python drivers suck in different, and crippling, ways. I don't
care how many drivers we have, as long as we have at least one 1st-class
driver.

--Josh Berkus


--
Sent via pgsql-hackers mailing list (pgsql-hackers(a)postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

From: Bruce Momjian on
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.
>
> I suspect GPL does not extend anyway to Python code that imports
> it dynamically, and it does not seem to be their intention - they
> even try to tell it in their current clarification, but it
> is not as clear as it could be.

Yes, this is a good analysis and has some good suggestions for moving
forward. In summary, I don't think the current PG/Python driver
situation is helping PG or Python, and I believe there are enough people
who care about those two to get a group together to sort out a viable
direction and start working toward the goal of improving things.

--
Bruce Momjian <bruce(a)momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ If your life is a hard drive, Christ can be your backup. +

--
Sent via pgsql-hackers mailing list (pgsql-hackers(a)postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

From: Peter Eisentraut on
On fre, 2010-02-05 at 14:45 +0000, Tim Bunce wrote:
> > Does Perl have a similar mess?
>
> I don't think so.
>
> The primary database interface is DBI and as far as I can see there's
> only one DBI PostgreSQL driver: http://search.cpan.org/dist/DBD-Pg/

I think another difference is that the Perl DBI interface is very rich,
whereas the Python DB-API is quite minimal and almost forces people to
write (incompatible) extensions. The DB-SIG at Python that ought to
drive all this is also quite dead, possibly because everyone has moved
on to SQLAlchemy.


--
Sent via pgsql-hackers mailing list (pgsql-hackers(a)postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

From: Bruce Momjian on
Greg Smith wrote:
> Bruce Momjian wrote:
> > While I realize experienced people can easily navigate this confusion...
>
> No, that's the worst part--the more you know and the deeper you dig into
> it, the more broken you realize the whole thing is. When one of the
> best drivers (in some respects) has a web page that looks like this:
> http://initd.org/ that doesn't seem so bad at first--but if you're
> experienced, you know that the page has been in that disturbing state
> since late 2006. You start digging into the driver mess, figure you
> just need to learn how things fit together, but the hole keeps getting
> bigger as you dig.
>
> The issues here have already been identified: the Perl DBI is an
> excellent spec, while the Python one is so weak everybody ends up
> needing their own extensions to it. And then portability *even among
> Python PostgreSQL drivers* goes out the window. If somebody built a
> BSD/MIT licensed driver that replaces every useful feature of all the
> forks, with no major problems, and a couple of major projects switched
> over to it (think "Skype" level big), maybe this mess could get
> resolved. I think it would take someone already familiar with the major
> issues involved a couple of months of regular work to make any serious
> progress on it.

Yes, it is going to take serious time, and it is going to take more than
one person to be involved, but I think there are enough people who care
that something serious can be done to improve its current state.

--
Bruce Momjian <bruce(a)momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ If your life is a hard drive, Christ can be your backup. +

--
Sent via pgsql-hackers mailing list (pgsql-hackers(a)postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

From: "Massa, Harald Armin" on
Bruce,

http://wiki.postgresql.org/wiki/Python
>
> The first one listed, Psycopg, is noted as "preferred libpq-based
> driver", but the license is GPL. Isn't that a problem for many client
> applications?
>
> The licence of psycopg2 is a little more complicated; the "GPL" in that
summary just tries to sum it. The actual licence is: [from the LICENCE in
the source distribution]

---------------------------------------------
psycopg and the GPL
===================

psycopg is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version. See file COPYING for details.

As a special exception, specific permission is granted for the GPLed
code in this distribition to be linked to OpenSSL and PostgreSQL libpq
without invoking GPL clause 2(b).

Note that the GPL was chosen to avoid proprietary adapters based on
psycopg code. Using psycopg in a proprietary product (even bundling
psycopg with the proprietary product) is fine as long as:

1. psycopg is called from Python only using only the provided API
(i.e., no linking with C code and no C modules based on it); and

2. all the other points of the GPL are respected (you offer a copy
of psycopg's source code, and so on.)

Alternative licenses
====================

If you prefer you can use the Zope Database Adapter ZPsycopgDA (i.e.,
every file inside the ZPsycopgDA directory) user the ZPL license as
published on the Zope web site, http://www.zope.org/Resources/ZPL.

Also, the following BSD-like license applies (at your option) to the
files following the pattern psycopg/adapter*.{h,c} and
psycopg/microprotocol*.{h,c}:

Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:

1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this
software in a product, an acknowledgment in the product documentation
would be appreciated but is not required.

2. Altered source versions must be plainly marked as such, and must not
be misrepresented as being the original software.

3. This notice may not be removed or altered from any source distribution.

psycopg is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

Proprietary licenses
====================

A non-exclusive license is available for companies that want to include
psycopg in their proprietary products without respecting the spirit of the
GPL. The price of the license is one day of development done by the author,
at the consulting fee he applies to his usual customers at the day of the
request.

---------------------------------------------

Harald

--
GHUM Harald Massa
persuadere et programmare
Harald Armin Massa
Spielberger Straße 49
70435 Stuttgart
0173/9409607
no fx, no carrier pigeon
-
%s is too gigantic of an industry to bend to the whims of reality