Psycopg2

Latest version: v2.9.9

Safety actively analyzes 630130 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 14

2.8.5

^^^^^^^^^^^^^^^^^^^^^^^^^^^

- Fixed use of `!connection_factory` and `!cursor_factory` together
(:ticket:`1019`).
- Added support for `~logging.LoggerAdapter` in
`~psycopg2.extras.LoggingConnection` (:ticket:`1026`).
- `~psycopg2.extensions.Column` objects in `cursor.description` can be sliced
(:ticket:`1034`).
- Added AIX support (:ticket:`1061`).
- Fixed `~copy.copy()` of `~psycopg2.extras.DictCursor` rows (:ticket:`1073`).

2.8.4

^^^^^^^^^^^^^^^^^^^^^^^^^^^

- Fixed building with Python 3.8 (:ticket:`854`).
- Don't swallow keyboard interrupts on connect when a password is specified
in the connection string (:ticket:`898`).
- Don't advance replication cursor when the message wasn't confirmed
(:ticket:`940`).
- Fixed inclusion of ``time.h`` on linux (:ticket:`951`).
- Fixed int overflow for large values in `~psycopg2.extensions.Column.table_oid`
and `~psycopg2.extensions.Column.type_code` (:ticket:`961`).
- `~psycopg2.errorcodes` map and `~psycopg2.errors` classes updated to
PostgreSQL 12.
- Wheel package bundled with OpenSSL 1.1.1d and PostgreSQL at least 11.4.

2.8.3

^^^^^^^^^^^^^^^^^^^^^^^^^^^

- Added *interval_status* parameter to
`~psycopg2.extras.ReplicationCursor.start_replication()` method and other
facilities to send automatic replication keepalives at periodic intervals
(:ticket:`913`).
- Fixed namedtuples caching introduced in 2.8 (:ticket:`928`).

2.8.2

^^^^^^^^^^^^^^^^^^^^^^^^^^^

- Fixed `~psycopg2.extras.RealDictCursor` when there are repeated columns
(:ticket:`884`).
- Binary packages built with openssl 1.1.1b. Should fix concurrency problems
(:tickets:`543, 836`).

2.8.1

^^^^^^^^^^^^^^^^^^^^^^^^^^^

- Fixed `~psycopg2.extras.RealDictRow` modifiability (:ticket:`886`).
- Fixed "there's no async cursor" error polling a connection with no cursor
(:ticket:`887`).

2.8

-------------------------

New features:

- Added `~psycopg2.errors` module. Every PostgreSQL error is converted into
a specific exception class (:ticket:`682`).
- Added `~psycopg2.extensions.encrypt_password()` function (:ticket:`576`).
- Added `~psycopg2.extensions.BYTES` adapter to manage databases with mixed
encodings on Python 3 (:ticket:`835`).
- Added `~psycopg2.extensions.Column.table_oid` and
`~psycopg2.extensions.Column.table_column` attributes on `cursor.description`
items (:ticket:`661`).
- Added `connection.info` object to retrieve various PostgreSQL connection
information (:ticket:`726`).
- Added `~connection.get_native_connection()` to expose the raw ``PGconn``
structure to C extensions via Capsule (:ticket:`782`).
- Added `~connection.pgconn_ptr` and `~cursor.pgresult_ptr` to expose raw
C structures to Python and interact with libpq via ctypes (:ticket:`782`).
- `~psycopg2.sql.Identifier` can represent qualified names in SQL composition
(:ticket:`732`).
- Added `!ReplicationCursor`.\ `~psycopg2.extras.ReplicationCursor.wal_end`
attribute (:ticket:`800`).
- Added *fetch* parameter to `~psycopg2.extras.execute_values()` function
(:ticket:`813`).
- `!str()` on `~psycopg2.extras.Range` produces a human-readable representation
(:ticket:`773`).
- `~psycopg2.extras.DictCursor` and `~psycopg2.extras.RealDictCursor` rows
maintain columns order (:ticket:`177`).
- Added `~psycopg2.extensions.Diagnostics.severity_nonlocalized` attribute on
the `~psycopg2.extensions.Diagnostics` object (:ticket:`783`).
- More efficient `~psycopg2.extras.NamedTupleCursor` (:ticket:`838`).

Bug fixes:

- Fixed connections occasionally broken by the unrelated use of the
multiprocessing module (:ticket:`829`).
- Fixed async communication blocking if results are returned in different
chunks, e.g. with notices interspersed to the results (:ticket:`856`).
- Fixed adaptation of numeric subclasses such as `~enum.IntEnum`
(:ticket:`591`).

Other changes:

- Dropped support for Python 2.6, 3.2, 3.3.
- Dropped `psycopg1` module.
- Dropped deprecated `!register_tstz_w_secs()` (was previously a no-op).
- Dropped deprecated `!PersistentConnectionPool`. This pool class was mostly
designed to interact with Zope. Use `!ZPsycopgDA.pool` instead.
- Binary packages no longer installed by default. The 'psycopg2-binary'
package must be used explicitly.
- Dropped `!PSYCOPG_DISPLAY_SIZE` build parameter.
- Dropped support for mxDateTime as the default date and time adapter.
mxDatetime support continues to be available as an alternative to Python's
builtin datetime.
- No longer use 2to3 during installation for Python 2 & 3 compatibility. All
source files are now compatible with Python 2 & 3 as is.
- The `!psycopg2.test` package is no longer installed by ``python setup.py
install``.
- Wheel package bundled with OpenSSL 1.0.2r and PostgreSQL 11.2 libpq.

Page 3 of 14

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.