RELEASE: psycopg 2.4

From: Federico Di Gregorio <federico(dot)digregorio(at)dndg(dot)it>
To: psycopg(at)postgresql(dot)org
Subject: RELEASE: psycopg 2.4
Date: 2011-02-27 12:17:00
Message-ID: 4D6A40BC.9070808@dndg.it
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: psycopg

Hi *,

this is probably one of the best psycopg releases ever. Daniele, Jason
and all the others that sent patches did an impressive work to have
psycopg build and work flawlessy on all the supported platforms (well..
we can probably do a little bit better on MacOS but everything else is
almost perfect). So here it is (followed by NEWS excerpt, as always):

http://www.psycopg.org/psycopg/tarballs/PSYCOPG-2-4/psycopg2-2.4.tar.gz
http://www.psycopg.org/psycopg/tarballs/PSYCOPG-2-4/psycopg2-2.4.tar.gz.asc

Have fun,
federico

What's new in psycopg 2.4
-------------------------

* New features and changes:

- Added support for Python 3.1 and 3.2. The conversion has also
brought several improvements:

- Added 'b' and 't' mode to large objects: write can deal with both
bytes strings and unicode; read can return either bytes strings
or decoded unicode.
- COPY sends Unicode data to files implementing 'io.TextIOBase'.
- Improved PostgreSQL-Python encodings mapping.
- Added a few missing encodings: EUC_CN, EUC_JIS_2004, ISO885910,
ISO885916, LATIN10, SHIFT_JIS_2004.
- Dropped repeated dictionary lookups with unicode query/parameters.

- Improvements to the named cusors:

- More efficient iteration on named cursors, fetching 'itersize'
records at time from the backend.
- The named cursors name can be an invalid identifier.

- Improvements in data handling:

- Added 'register_composite()' function to cast PostgreSQL
composite types into Python tuples/namedtuples.
- Adapt types 'bytearray' (from Python 2.6), 'memoryview' (from
Python 2.7) and other objects implementing the "Revised Buffer
Protocol" to 'bytea' data type.
- The 'hstore' adapter can work even when the data type is not
installed in the 'public' namespace.
- Raise a clean exception instead of returning bad data when
receiving bytea in 'hex' format and the client libpq can't parse
them.
- Empty lists correctly roundtrip Python -> PostgreSQL -> Python.

- Other changes:

- 'cursor.description' is provided as named tuples if available.
- The build script refuses to guess values if 'pg_config' is not
found.
- Connections and cursors are weakly referenceable.

* Bug fixes:

- Fixed adaptation of None in composite types (ticket #26). Bug
report by Karsten Hilbert.
- Fixed several reference leaks in less common code paths.
- Fixed segfault when a large object is closed and its connection no
more available.
- Added missing icon to ZPsycopgDA package, not available in Zope
2.12.9 (ticket #30). Bug report and patch by Pumukel.
- Fixed conversion of negative infinity (ticket #40). Bug report and
patch by Marti Raudsepp.

--
Federico Di Gregorio federico(dot)digregorio(at)dndg(dot)it
Studio Associato Di Nunzio e Di Gregorio http://dndg.it
99.99999999999999999999% still isn't 100% but sometimes suffice. -- Me

Browse psycopg by date

  From Date Subject
Next Message A.M. 2011-02-27 16:11:25 Re: Using real libpq parameters
Previous Message Federico Di Gregorio 2011-02-27 11:40:00 Re: Using real libpq parameters