It's finally here! Thank you very much for waiting so long: we have finally released Psycopg 2.7!
Buzzwords: - Faster! Helps generating SQL for repeatedly executed statements and faster Unicode decoding. - Safer! Helps generating dynamic SQL statements with variable table and field names. - Easier! Use the binary package to avoid the need of C compiler, pg_config, libpq required on the clients. - Replication! Support for PostgreSQL physical and logical replication. - Plays-better-with-pgbouncer-at-transaction-pooling-level! This. You can download the source packages as usual from the canonical urls: - http://initd.org/psycopg/tarballs/PSYCOPG-2-7/psycopg2-2.7.tar.gz - http://initd.org/psycopg/tarballs/PSYCOPG-2-7/psycopg2-2.7.tar.gz.asc Or just use pip: pip install psycopg2 Before dumping the full set of changes I wish to thank again all the people who have contributed to this psycopg version, especially Oleksandr Shulgin and Craig Ringer for the replication protocol support and Jason Erickson for the windows packaging. New features: - Added psycopg2.sql module to generate SQL dynamically (ticket #308). - Added replication protocol support (ticket #322). - Added parse_dsn() and make_dsn() functions (ticket #321, ticket #363). connect() now can take both dsn and keyword arguments, merging them together. - Added __libpq_version__ and libpq_version() to inspect the version of the libpq library the module was compiled/loaded with (ticket #35, ticket #323). - The attributes notices and notifies can be customized replacing them with any object exposing an append() method (ticket #326). - Adapt network types to ipaddress objects when available. When not enabled, convert arrays of network types to lists by default. The old Inet adapter is deprecated (ticket #317, ticket #343, ticket #387). - Added quote_ident() function (ticket #359). - Added get_dsn_parameters() connection method (ticket #364). - callproc() now accepts a dictionary of parameters (ticket #381). - Give precedence to __conform__() over superclasses to choose an object adapter (ticket #456). - Using Python C API decoding functions and codecs caching for faster Unicode encoding/decoding (ticket #473). - executemany() slowness addressed by execute_batch() and execute_values() (ticket #491). - Added async_ as an alias for async to support Python 3.7 where async will become a keyword (ticket #495). - Unless in autocommit, do not use default_transaction_* settings to control the session characteristics as it may create problems with external connection pools such as pgbouncer; use BEGIN options instead (ticket #503). - isolation_level is now writable and entirely separated from autocommit; added readonly, deferrable writable attributes. Bug fixes: - Fixed error caused by missing decoding LoggingConnection (ticket #483). - Fixed integer overflow in interval seconds (ticket #512). Other changes: - Dropped support for Python 2.5 and 3.1. - Dropped support for client library older than PostgreSQL 9.1 (but older server versions are still supported). - isolation_level doesn't read from the database but will return ISOLATION_LEVEL_DEFAULT if no value was set on the connection. - Empty arrays no more converted into lists if they don't have a type attached (ticket #506). ---- Psycopg is the most popular PostgreSQL adapter for the Python programming language. At its core it fully implements the Python DB API 2.0 specifications. Several extensions allow access to many of the features offered by PostgreSQL. -- Sent via pgsql-announce mailing list (pgsql-announce@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-announce