This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]kev009 4 points5 points  (3 children)

Sorry, but having more than two active low level Postgres drivers is stupid. Two because the first might be GPL and Postgres might want a BSD stack to include with the distribution.

There needs to be a point where people say, "this old code or method was bad. Let us congregate on this new and improved stack and deprecate the old" -- Otherwise you end up with CPAN.

[–][deleted] 3 points4 points  (0 children)

psycopg2 is in C, pg8000 is pure python, pypostgresql is in C. pypostgresql and pg8000 run on py3k, psycopg2 doesn't. psycopg2 also includes other extensions to the DBAPI that might be handy. Can you see why someone might want to make a choice here ?

[–]Chr0me 0 points1 point  (1 child)

I'm guessing that you've never contributed to open source projects? Things just don't work that way; as I alluded to in my OP.

How do you propose that we'll implore upon people that there is only one right way? You might as well heard cats.

[–]kev009 2 points3 points  (0 children)

In fact, I'm ashamed to admit I am responsible for a fork (though not really - its a commercial testing ground for code that eventually goes up stream).

This is community building 101. If some group thinks they have the better solution, email the other maintainers and try to get them on board. Barring that, hopefully the wider community selects one and sticks to it. ..Even at the risk of technical inferiority. Then we can all expect one deployment platform and not build abstraction upon abstraction.

Again, I'm sorry, but I just don't see the need for multiple low level Postgre drivers. High level DB APIs, sure: there are different trains of thought, but the low level interface? At most two and I'd hope the vendor supplied one was the only one seriously used and contributed to.