Up to [cvs.NetBSD.org] / pkgsrc / databases / py-psycopg2
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
py-psycopg2: updated to 2.9.10 What's new in psycopg 2.9.10 - Add support for Python 3.13. - Receive notifications on commit. - `~psycopg2.errorcodes` map and `~psycopg2.errors` classes updated to PostgreSQL 17. - Drop support for Python 3.7.
py-psycopg2: updated to 2.9.9 What's new in psycopg 2.9.9 - Add support for Python 3.12. - Drop support for Python 3.6.
py-psycopg2: updated to 2.9.8 What's new in psycopg 2.9.8 - Wheel package bundled with PostgreSQL 16 libpq in order to add support for recent features, such as ``sslcertmode``.
py-psycopg2: updated to 2.9.7 What's new in psycopg 2.9.7 - Fix propagation of exceptions raised during module initialization - Fix building when pg_config returns an empty string - Wheel package compiled against OpenSSL 1.1.1v
py-psycopg2: updated to 2.9.6 What's new in psycopg 2.9.6 - Package manylinux 2014 for aarch64 and ppc64le platforms, in order to include libpq 15 in the binary package. - Wheel package compiled against OpenSSL 1.1.1t.
Update databases/py-psycopg2 to 2.9.5 Updating to this version fixed an unknown exception being thrown with Python 3.11 on startup of matrix-synapse.
databases: Replace RMD160 checksums with BLAKE2s checksums All checksums have been double-checked against existing RMD160 and SHA512 hashes The following distfiles could not be fetched (some may be only fetched conditionally): ./databases/cstore/distinfo D6.data.ros.gz ./databases/cstore/distinfo cstore0.2.tar.gz ./databases/cstore/distinfo data4.tar.gz
databases: Remove SHA1 distfile hashes
py-psycopg2: updated to 2.8.6 What's new in psycopg 2.8.6 - Fixed memory leak changing connection encoding to the current one. - Fixed search of mxDateTime headers in virtualenvs. - Added missing values from errorcodes. - `cursor.query` reports the query of the last :sql:`COPY` opearation too. - `~psycopg2.errorcodes` map and `~psycopg2.errors` classes updated to PostgreSQL 13. - Added wheel packages for ARM architecture. - Wheel package compiled against OpenSSL 1.1.1g. What's new in psycopg 2.8.5 - Fixed use of `!connection_factory` and `!cursor_factory` together. - Added support for `~logging.LoggerAdapter` in `~psycopg2.extras.LoggingConnection`. - `~psycopg2.extensions.Column` objects in `cursor.description` can be sliced. - Added AIX support. - Fixed `~copy.copy()` of `~psycopg2.extras.DictCursor` rows
py-psycopg2: updated to 2.8.4 Psycopg 2.8.4 The release brings a few assorted bugfixes and adds support for Python 3.8 and PostgreSQL 12. A more detailed changes list is * Fixed building with Python 3.8. * Don't swallow keyboard interrupts on connect when a password is specified in the connection string. * Don't advance replication cursor when the message wasn't confirmed. * Fixed inclusion of time.h on linux. * Fixed int overflow for large values in Column.table_oid and Column.type_code. * errorcodes map and errors classes updated to PostgreSQL 12. * Wheel package compiled against OpenSSL 1.1.1d and PostgreSQL at least 11.4.
py-psycopg2: updated to 2.8.3 Psycopg 2.8.3 released We have released Psycopg 2.8.3, which includes a slight change to the logical replication. Choosing the right frequency to send replication feedback messages from the client to the server was previously the developer's responsibility, with too many feedback messages being a waste of bandwidth and server resources, too few slowing down WAL cleanup and possibly preventing a server graceful shutdown. Psycopg will now make sure that feedback is only sent after a certain period of time from the previous one, so that the client can simply call send_feedback() at each message without the fear of overwhelming the server. For completeness, the changes included in the release are: * Added interval_status parameter to start_replication() method and other facilities to send automatic replication keepalives at periodic intervals * Fixed namedtuples caching introduced in 2.8
py-psycopg2: updated to 2.8.2 2.8.2: Fixed "there's no async cursor" error polling a connection with no cursor. Fixed RealDictCursor when there are repeated columns. Fixed RealDictRow modifiability. Binary packages built with OpenSSL 1.1.1b. Should fix concurrency problems.
py-psycopg2: updated to 2.8.1 What's new in psycopg 2.8.1 - Fixed RealDictRow modifiability - Fixed "there's no async cursor" error polling a connection with no cursor
py-psycopg2: updated to 2.8 Psycopg 2.8 released After about two years from the previous major release, psycopg 2.8 is finally here! Among the highlights, PostgreSQL errors are now mapped to Python exceptions for a more idiomatic way to handle them. Several additions allow a better insight of the connection status and query results. Behind the scene, asynchronous communication and concurrency received several improvements, and dropping support for older versions of Python gave the chance to refactor and modernise the codebase (with the especial help from Jon Dufresne who ruthlessly butchered our code into a streamlined pulp).
py-psycopg2: updated to 2.7.7 What's new in psycopg 2.7.7 - Cleanup of the cursor results assignment code, which might have solved double free and inconsistencies in concurrent usage. - Wheel package compiled against OpenSSL 1.0.2q.
py-psycopg2: updated to 2.7.6 Psycopg 2.7.6: Summary of changes: - Close named cursors if exist, even if execute() wasn't called. - Fixed building on modern FreeBSD versions with Python 3.7. - Fixed hang trying to COPY via execute() in asynchronous connections. - Fixed adaptation of arrays of empty arrays. - Fixed segfault accessing the connection.readonly and connection.deferrable attributes repeatedly. - execute_values() accepts sql.Composable objects. - errorcodes map updated to PostgreSQL 11. - Wheel package compiled against PostgreSQL 10.5 libpq and OpenSSL 1.0.2p.
py-psycopg2: do not install tests (fix for Python 3.7)
py-psycopg2: updated to 2.7.5 What's new in psycopg 2.7.5: - Allow non-ascii chars in namedtuple fields - Fixed adaptation of arrays of arrays of nulls - Fixed building on Solaris 11 and derivatives such as SmartOS and illumos - Maybe fixed building on MSYS2 - Allow string subclasses in connection and other places - Don't raise an exception closing an unused named cursor - Wheel package compiled against PostgreSQL 10.4 libpq and OpenSSL 1.0.2o
py-psycopg2: Only supply timer funcs if they are missing.
py-psycopg2: updated to 2.7.4 What's new in psycopg 2.7.4 - Moving away from installing the wheel package by default. Packages installed from wheel raise a warning on import. Added package psycopg2-binary to install from wheel instead. - Convert fields names into valid Python identifiers in ~psycopg2.extras.NamedTupleCursor. - Fixed Solaris 10 support. - cursor.mogrify() can be called on closed cursors. - Fixed setting session characteristics in corner cases on autocommit connections. - Fixed ~psycopg2.extras.MinTimeLoggingCursor on Python 3. - Fixed parsing of array of points as floats. - Fixed ~psycopg2.__libpq_version__ building with libpq >= 10.1. - Fixed ~cursor.rowcount after ~cursor.executemany() with :sql:RETURNING statements. - Fixed compatibility problem with pypy3. - Wheel packages compiled against PostgreSQL 10.1 libpq and OpenSSL 1.0.2n. - Wheel packages for Python 2.6 no more available (support dropped from wheel building infrastructure).
py-psycopg2: update to 2.7.3.2 What's new in psycopg 2.7.3.2 - Wheel package compiled against PostgreSQL 10.0 libpq and OpenSSL 1.0.2l
Updated py-psycopg2 to 2.7.3.1. What's new in psycopg 2.7.3.1 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Dropped libresolv from wheel package to avoid incompatibility with glibc 2.26 (wheels ticket #2)
psycopg 2.7.3 - Restored default :sql:`timestamptz[]` typecasting to Python `!datetime`. Regression introduced in Psycopg 2.7.2
What's new in psycopg 2.7.2 - Fixed inconsistent state in externally closed connections Was fixed in 2.6.2 but not included in 2.7 by mistake. - Fixed Python exceptions propagation in green callback - Don't display the password in `connection.dsn` when the connection string is specified as an URI - Return objects with timezone parsing "infinity" :sql:`timestamptz` - Dropped dependency on VC9 runtime on Windows binary packages - Fixed segfault in `~connection.lobject()` when *mode*\=\ `!None` - Fixed `~connection.lobject()` keyword argument *lobject_factory* - Fixed `~psycopg2.extras.ReplicationCursor.consume_stream()` *keepalive_interval* argument - Maybe fixed random import error on Python 3.6 in multiprocess environment - Fixed random `!SystemError` upon receiving abort signal - Accept `~psycopg2.sql.Composable` objects in `~psycopg2.extras.ReplicationCursor.start_replication_expert()` - Parse intervals returned as microseconds from Redshift - Added `~psycopg2.extras.Json` `!prepare()` method to consider connection params when adapting - `~psycopg2.errorcodes` map updated to PostgreSQL 10 beta 1.
Updated py-psycopg2 to 2.7.1. What's new in psycopg 2.7.1 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Ignore `!None` arguments passed to `~psycopg2.connect()` and `~psycopg2.extensions.make_dsn()` (:ticket:`#517`). - OpenSSL upgraded from major version 0.9.8 to 1.0.2 in the Linux wheel packages (:ticket:`#518`). - Fixed build with libpq versions < 9.3 (:ticket:`#520`).
Updated py-psycopg2 to 2.7. What's new in psycopg 2.7 ------------------------- New features: - Added `~psycopg2.sql` module to generate SQL dynamically (:ticket:`#308`). - Added :ref:`replication-support` (:ticket:`#322`). Main authors are Oleksandr Shulgin and Craig Ringer, who deserve a huge thank you. - Added `~psycopg2.extensions.parse_dsn()` and `~psycopg2.extensions.make_dsn()` functions (:tickets:`#321, #363`). `~psycopg2.connect()` now can take both *dsn* and keyword arguments, merging them together. - Added `~psycopg2.__libpq_version__` and `~psycopg2.extensions.libpq_version()` to inspect the version of the ``libpq`` library the module was compiled/loaded with (:tickets:`#35, #323`). - The attributes `~connection.notices` and `~connection.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 (:tickets:`#317, #343, #387`). - Added `~psycopg2.extensions.quote_ident()` function (:ticket:`#359`). - Added `~connection.get_dsn_parameters()` connection method (:ticket:`#364`). - `~cursor.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`). - `~cursor.executemany()` slowness addressed by `~psycopg2.extras.execute_batch()` and `~psycopg2.extras.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 :sql:`default_transaction_*` settings to control the session characteristics as it may create problems with external connection pools such as pgbouncer; use :sql:`BEGIN` options instead (:ticket:`#503`). - `~connection.isolation_level` is now writable and entirely separated from `~connection.autocommit`; added `~connection.readonly`, `~connection.deferrable` writable attributes. Bug fixes: - Fixed error caused by missing decoding `~psycopg2.extras.LoggingConnection` (:ticket:`#483`). - Fixed integer overflow in :sql:`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). - `~connection.isolation_level` doesn't read from the database but will return `~psycopg2.extensions.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`)
Updated py-psycopg2 to 2.6.2. What's new in psycopg 2.6.2 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Fixed inconsistent state in externally closed connections (:tickets:`#263, #311, #443`). - Report the server response status on errors (such as :ticket:`#281`). - Raise `!NotSupportedError` on unhandled server response status (:ticket:`#352`). - Allow overriding string adapter encoding with no connection (:ticket:`#331`). - The `~psycopg2.extras.wait_select` callback allows interrupting a long-running query in an interactive shell using :kbd:`Ctrl-C` (:ticket:`#333`). - Fixed `!PersistentConnectionPool` on Python 3 (:ticket:`#348`). - Fixed segfault on `repr()` of an unitialized connection (:ticket:`#361`). - Allow adapting bytes using `~psycopg2.extensions.QuotedString` on Python 3 (:ticket:`#365`). - Added support for setuptools/wheel (:ticket:`#370`). - Fix build on Windows with Python 3.5, VS 2015 (:ticket:`#380`). - Fixed `!errorcodes.lookup` initialization thread-safety (:ticket:`#382`). - Fixed `!read()` exception propagation in copy_from (:ticket:`#412`). - Fixed possible NULL TZ decref (:ticket:`#424`). - `~psycopg2.errorcodes` map updated to PostgreSQL 9.5.
Add SHA512 digests for distfiles for databases category Problems found with existing distfiles: distfiles/D6.data.ros.gz distfiles/cstore0.2.tar.gz distfiles/data4.tar.gz distfiles/sphinx-2.2.7-release.tar.gz No changes made to the cstore or mariadb55-client distinfo files. Otherwise, existing SHA1 digests verified and found to be the same on the machine holding the existing distfiles (morden). All existing SHA1 digests retained for now as an audit trail.
Update to 2.6.1: What's new in psycopg 2.6.1 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Lists consisting of only `None` are escaped correctly (:ticket:`#285`). - Fixed deadlock in multithread programs using OpenSSL (:ticket:`#290`). - Correctly unlock the connection after error in flush (:ticket:`#294`). - Fixed ``MinTimeLoggingCursor.callproc()`` (:ticket:`#309`).
Update to 2.6: What's new in psycopg 2.6 ------------------------- New features: - Added support for large objects larger than 2GB. Many thanks to Blake Rouse and the MAAS Team for the feature development. - Python `time` objects with a tzinfo specified and PostgreSQL :sql:`timetz` data are converted into each other (:ticket:`#272`). Bug fixes: - Json apapter's `!str()` returns the adapted content instead of the `!repr()` (:ticket:`#191`).
Update to 2.5.4: What's new in psycopg 2.5.4 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Added :sql:`jsonb` support for PostgreSQL 9.4 (:ticket:`#226`). - Fixed segfault if COPY statements are passed to `~cursor.execute()` instead of using the proper methods (:ticket:`#219`). - Force conversion of pool arguments to integer to avoid potentially unbounded pools (:ticket:`#220`). - Cursors :sql:`WITH HOLD` don't begin a new transaction upon move/fetch/close (:ticket:`#228`). - Cursors :sql:`WITH HOLD` can be used in autocommit (:ticket:`#229`). - `~cursor.callproc()` doesn't silently ignore an argument without a length. - Fixed memory leak with large objects (:ticket:`#256`). - Make sure the internal ``_psycopg.so`` module can be imported stand-alone (to allow modules juggling such as the one described in :ticket:`#201`).
Update to 2.5.3: What's new in psycopg 2.5.3 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Work around `pip issue #1630 <https://github.com/pypa/pip/issues/1630>`__ making installation via ``pip -e git+url`` impossible (:ticket:`#18`). - Copy operations correctly set the `cursor.rowcount` attribute (:ticket:`#180`). - It is now possible to call `get_transaction_status()` on closed connections. - Fixed unsafe access to object names causing assertion failures in Python 3 debug builds (:ticket:`#188`). - Mark the connection closed if found broken on `poll()` (from :ticket:`#192` discussion) - Fixed handling of dsn and closed attributes in connection subclasses failing to connect (from :ticket:`#192` discussion). - Added arbitrary but stable order to `Range` objects, thanks to Chris Withers (:ticket:`#193`). - Avoid blocking async connections on connect (:ticket:`#194`). Thanks to Adam Petrovich for the bug report and diagnosis. - Don't segfault using poorly defined cursor subclasses which forgot to call the superclass init (:ticket:`#195`). - Mark the connection closed when a Socket connection is broken, as it happens for TCP connections instead (:ticket:`#196`). - Fixed overflow opening a lobject with an oid not fitting in a signed int (:ticket:`#203`). - Fixed handling of explicit default ``cursor_factory=None`` in `connection.cursor()` (:ticket:`#210`). - Fixed possible segfault in named cursors creation. - Fixed debug build on Windows, thanks to James Emerton.
Update to 2.5.2: What's new in psycopg 2.5.2 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Fixed segfault pickling the exception raised on connection error (:ticket:`#170`). - Meaningful connection errors report a meaningful message, thanks to Alexey Borzenkov (:ticket:`#173`). - Manually creating `lobject` with the wrong parameter doesn't segfault (:ticket:`#187`).
Update to 2.5.1: What's new in psycopg 2.5.1 --------------------------- - Fixed build on Solaris 10 and 11 where the round() function is already declared (:ticket:`#146`). - Fixed comparison of `Range` with non-range objects (:ticket:`#164`). Thanks to Chris Withers for the patch. - Fixed double-free on connection dealloc (:ticket:`#166`). Thanks to Gangadharan S.A. for the report and fix suggestion.
Update to 2.5: What's new in psycopg 2.5 ------------------------- New features: - Added :ref:`JSON adaptation <adapt-json>`. - Added :ref:`support for PostgreSQL 9.2 range types <adapt-range>`. - `connection` and `cursor` objects can be used in ``with`` statements as context managers as specified by recent |DBAPI|_ extension. - Added `~psycopg2.extensions.Diagnostics` object to get extended info from a database error. Many thanks to Matthew Woodcraft for the implementation (:ticket:`#149`). - Added `connection.cursor_factory` attribute to customize the default object returned by `~connection.cursor()`. - Added support for backward scrollable cursors. Thanks to Jon Nelson for the initial patch (:ticket:`#108`). - Added a simple way to :ref:`customize casting of composite types <adapt-composite>` into Python objects other than namedtuples. Many thanks to Ronan Dunklau and Tobias Oberstein for the feature development. - `connection.reset()` implemented using :sql:`DISCARD ALL` on server versions supporting it. Bug fixes: - Properly cleanup memory of broken connections (:ticket:`#148`). - Fixed bad interaction of ``setup.py`` with other dependencies in Distribute projects on Python 3 (:ticket:`#153`). Other changes: - Added support for Python 3.3. - Dropped support for Python 2.4. Please use Psycopg 2.4.x if you need it. - `~psycopg2.errorcodes` map updated to PostgreSQL 9.2. - Dropped Zope adapter from source repository. ZPsycopgDA now has its own project at <http://github.com/psycopg/ZPsycopgDA>.
Update to 2.4.6. Fix python interpreter in installed files. What's new in psycopg 2.4.6 --------------------------- - Fixed 'cursor()' arguments propagation in connection subclasses and overriding of the 'cursor_factory' argument. Thanks to Corry Haines for the report and the initial patch (ticket #105). - Dropped GIL release during string adaptation around a function call invoking a Python API function, which could cause interpreter crash. Thanks to Manu Cupcic for the report (ticket #110). - Close a green connection if there is an error in the callback. Maybe a harsh solution but it leaves the program responsive (ticket #113). - 'register_hstore()', 'register_composite()', 'tpc_recover()' work with RealDictConnection and Cursor (ticket #114). - Fixed broken pool for Zope and connections re-init across ZSQL methods in the same request (tickets #123, #125, #142). - connect() raises an exception instead of swallowing keyword arguments when a connection string is specified as well (ticket #131). - Discard any result produced by 'executemany()' (ticket #133). - Fixed pickling of FixedOffsetTimezone objects (ticket #135). - Release the GIL around PQgetResult calls after COPY (ticket #140). - Fixed empty strings handling in composite caster (ticket #141). - Fixed pickling of DictRow and RealDictRow objects.
Changes 2.4.5: * The close() methods on connections and cursors don't raise exceptions if called on already closed objects. * Fixed fetchmany() with no argument in cursor subclasses. * Use lo_creat() instead of lo_create() when possible for better interaction with pgpool-II. * Error and its subclasses are picklable, useful for multiprocessing interaction * Better efficiency and formatting of timezone offset objects thanks to Menno Smits. * Fixed rownumber during iteration on cursor subclasses. Regression introduced in 2.4.4. * Added support for inet arrays. * Fixed commit() concurrency problem. * Codebase cleaned up using the GCC Python plugin's static analysis tool, which has revealed several unchecked return values, possible NULL dereferences, reference counting problems.
Avoid double definition of double on SunOS.
Update py-psycopg2 to 2.4.4. While here, let to register egg-info. What's new in psycopg 2.4.4 --------------------------- - 'register_composite()' also works with the types implicitly defined after a table row, not only with the ones created by 'CREATE TYPE'. - Values for the isolation level symbolic constants restored to what they were before release 2.4.2 to avoid breaking apps using the values instead of the constants. - Named DictCursor/RealDictCursor honour itersize (ticket #80). - Fixed rollback on error on Zope (ticket #73). - Raise 'DatabaseError' instead of 'Error' with empty libpq errors, consistently with other disconnection-related errors: regression introduced in release 2.4.1 (ticket #82). What's new in psycopg 2.4.3 --------------------------- - connect() supports all the keyword arguments supported by the database - Added 'new_array_type()' function for easy creation of array typecasters. - Added support for arrays of hstores and composite types (ticket #66). - Fixed segfault in case of transaction started with connection lost (and possibly other events). - Fixed adaptation of Decimal type in sub-interpreters, such as in certain mod_wsgi configurations (ticket #52). - Rollback connections in transaction or in error before putting them back into a pool. Also discard broken connections (ticket #62). - Lazy import of the slow uuid module, thanks to Marko Kreen. - Fixed NamedTupleCursor.executemany() (ticket #65). - Fixed --static-libpq setup option (ticket #64). - Fixed interaction between RealDictCursor and named cursors (ticket #67). - Dropped limit on the columns length in COPY operations (ticket #68). - Fixed reference leak with arguments referenced more than once in queries (ticket #81). - Fixed typecasting of arrays containing consecutive backslashes. - 'errorcodes' map updated to PostgreSQL 9.1.
Changes 2.4.2: * Added 'set_session()' method and 'autocommit' property to the connection. Added support for read-only sessions and, for PostgreSQL 9.1, for the "repeatable read" isolation level and the "deferrable" transaction property. * Psycopg doesn't execute queries at connection time to find the default isolation level. * Fixed bug with multithread code potentially causing loss of sync with the server communication or lock of the client. * Don't fail import if mx.DateTime module can't be found, even if its support was built. * Fixed escape for negative numbers prefixed by minus operator. * Fixed refcount issue during copy. * Trying to execute concurrent operations on the same connection through concurrent green thread results in an error instead of a deadlock.
Changes 2.4.1: * Use own parser for bytea output, not requiring anymore the libpq 9.0 to parse the hex format. * Don't fail connection if the client encoding is a non-normalized variant. * Correctly detect an empty query sent to the backend. * Fixed a SystemError clobbering libpq errors raised without SQLSTATE. * Fixed interaction between NamedTuple and server-side cursors. * Allow to specify --static-libpq on setup.py command line instead of just in 'setup.cfg'.
Changes 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
Changes 2.3.2: * Fixed segfault with middleware not passing DateStyle to the client Changes 2.3.1: * Fixed build problem on CentOS 5.5 x86_64 Changes 2.3.0: psycopg 2.3 aims to expose some new features introduced in PostgreSQL 9.0. * Main new features: - `dict` to `hstore` adapter and `hstore` to `dict` typecaster, using both 9.0 and pre-9.0 syntax. - Two-phase commit protocol support as per DBAPI specification. - Support for payload in notifications received from the backed. - `namedtuple`-returning cursor. - Query execution cancel.
Changes 2.2.2: * psycopg/cursor_type.c: executemany() propagates exceptions raised by the iterable to the caller. * lib/pool.py: dropped logging.basicConfig() call. It messes up with projects using logging but where no handler is installed on the root logger. * psycopg/cursor_type.c: exceptions raised in the columns iterator of the copy methods propagated to the caller. * psycopg/typecast_datetime.c: Round seconds in historical timezones to the nearest minute. * lib/extras.py: register_tstz_w_secs() is now no-op. Changes 2.2.1: * Builds again on Windows. Changes 2.2.0: * typecast.c: Fixed problem related to receiving None from Python when a string was expected. * psycopg/adapter_datetime.c: Fixed TimestampFromTicks for second values > 59.5. * psycopg/adapter_datetime.c: Fixed same bug for TimeFromTicks. * Added typecasters for arrays of specific MX/Py time-related types. * psycopg/adapter_[mx]datetime.c: Explicit cast of the SQL representation of time-related objects. * psycopg/adapter_binary.c: Adapt buffer objects using an explicit cast on the string literal * lib/pqpath.c: Fixed reference leak in notify reception. * Notifies are collected if available after every query execution. * lib/extensions.py: DECIMAL typecaster imported from _psycopg. * lib/extensions.py: PY* and MX* time typecaster imported from _psycopg. * psycopg/connection_type.c: Correctly parse keywords in connect(). * psycopg/pqpath.c: Ensure running COPY in blocking mode. * psycopg/pqpath.c: Free the GIL in blocking operations in V2 COPY FROM. * psycopg/pqpath.c: Evaluate Python objects only once outside the COPY I/O loops. * Fixed problem with asynchronous NOTIFYs. * Integrated async pacthes from Jan's git tree.
psycopg 2.0.13: - support for UUIDs - fix issues with non-blocking connections and lo_write - support reset() on connections as faster alternative to open()/close() - improved support for COPY TO and COPY FROM - bugfixes
psycopg-2.0.7: - various smaller bug fixes
Update psycopg2 to 2.0.5.1, the new stable version. Changes since 2.0.2 are mostly bugfixes.
Disable debugging by default.
Import py-psycopg2-2.0.2, a rewritten version of psycopg: This is version 2, a complete rewrite of the original code to provide new-style classes for connection and cursor objects and other sweet candies. Like the original, psycopg 2 was written with the aim of being very small and fast, and stable as a rock.
Initial revision