diff --git a/NEWS b/NEWS index 267f61d5..bb2d69ec 100644 --- a/NEWS +++ b/NEWS @@ -3,29 +3,40 @@ What's new in psycopg 2.4 * New features and changes: - - Added support for Python 3.1 and 3.2. - - Adapt types 'bytearray' (from Python 2.6), 'memoryview' (from Python 2.7) - and other objects implementing the "Revised Buffer Protocol" to 'bytea' - data type. - - Added 'register_composite()' function to cast PostgreSQL composite types - into Python tuples/namedtuples. - - More efficient iteration on named cursors, fetching 'itersize' records at - time from the backend. - - The named cursors name can be an invalid identifier. - - 'cursor.description' is provided in named tuples if available. - - Raise a clean exception instead of returning bad data when receiving bytea - in 'hex' format and the client libpq can't parse them. - - Connections and cursors are weakly referenceable. - - 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'. - - The build script refuses to guess values if 'pg_config' is not found. - - 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. - - Empty lists correctly roundtrip Python -> PostgreSQL -> Python. + - 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. + - 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: