Psycopg2

Latest version: v2.9.10

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

Scan your dependencies

Page 6 of 14

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.

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`).
- Added support for MSVC 2015 compiler (:ticket:`350`).

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 adapter's `!str()` returns the adapted content instead of the `!repr()`
(:ticket:`191`).

2.5.5

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

- Named cursors used as context manager don't swallow the exception on exit
(:ticket:`262`).
- `cursor.description` can be pickled (:ticket:`265`).
- Propagate read error messages in COPY FROM (:ticket:`270`).
- PostgreSQL time 24:00 is converted to Python 00:00 (:ticket:`278`).

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`).

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.

Page 6 of 14

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.