Asyncpg

Latest version: v0.30.0

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

Scan your dependencies

Page 2 of 6

0.24.0

Changes
-------

* Drop support for Python 3.5 (777)
(by and-semakin in da58cd26 for 777)

* Add support for Python 3.10 (795)
(by elprans in abf55699 for 795)

* Add support for asynchronous iterables to `copy_records_to_table()` (713)
(by elprans in 1d33ff62 for 713)

* Add support for coroutine functions as listener callbacks (802)
(by elprans in 41da093e for 802)

* Add support for sslcert, sslkey and sslrootcert parameters to DSN (768)
(by jdobes and elprans in c674e86a for 768)

* Add copy_ wrappers to Pool (661)
(by elprans in a6b0f283 for 661)

* Add issubset and issuperset methods to the Range type (563)
(by kdorsel in de07d0ab for 563)

Fixes
-----

* Break connection internal circular reference (774)
(by fantix in d08a9b8b for 774)

* Make Server Version Extraction More Flexible (778)
(by Natrinicle in d0761694 for 778)

0.23.0

Fixes
-----

* Avoid TypeError in `Transaction.__repr__` (703)
(by BeatButton in d6eea8ed for 703)

* Feed memoryview to `writelines()` (715)
(by fantix in 359a34c4 for 715)

* Add sslmode=allow support and fix =prefer retry (720)
(by fantix in 075114c1 for 720)

* Loosen message test in `test_invalid_input` (751)
(by musicinmybrain in bc4127f4 for 751)

* Support readonly and deferrable for non-serializable transactions (747)
(by pauldraper in 5cf4089a for 747)

* Fix asyncpg with `Py_DEBUG` mode (719)
(by shadchin in a113d908 for 719)

* Fix docs/Makefile and docs/_static/theme_overrides.css missing from PyPI package (708)
(by musicinmybrain in c3060680 for 708)

0.22.0

A new asyncpg release is here.

Notable additions include Python 3.9 support, support for recently added
PostgreSQL types like `jsonpath`, and last but not least, vastly
improved `executemany()` performance. Importantly, `executemany()` is
also now _atomic_, which means that either all iterations succeed, or
none at all, whereas previously partial results would have remained in
place, unless `executemany()` was called in a transaction.

There is also the usual assortment of improvements and bugfixes, see the
details below.

This is the last release of asyncpg that supports Python 3.5, which has
reached EOL last September.

Improvements
------------

* Vastly speedup executemany by batching protocol messages (295)
(by fantix in 690048db for 295)

* Allow using custom `Record` class
(by elprans in db4f1a6c for 577)

* Add Python 3.9 support (610)
(by elprans in c05d7260 for 610)

* Prefer SSL connections by default (660)
(by elprans in 16183aa0 for 660)

* Add codecs for a bunch of new builtin types (665)
(by elprans in b53f0384 for 665)

* Expose Pool as `asyncpg.Pool` (669)
(by rugleb in 0e0eb8d3 for 669)

* Avoid unnecessary overhead during connection reset (648)
(by kitogo in ff5da5f9 for 648)

Fixes
-----

* Add a workaround for bpo-37658
(by elprans in 2bac166c for 21894)

* Fix wrong default transaction isolation level (622)
(by fantix in 4a627d55 for 622)

* Fix `set_type_codec()` to accept standard SQL type names (619)
(by elprans in 68b40cbf for 619)

* Ignore custom data codec for internal introspection (618)
(by fantix in e064f59e for 618)

* Fix null/NULL quoting in array text encoder (627)
(by fantix in 92aa8062 for 627)

* Fix link in connect docstring (653)
(by samuelcolvin in 8b313bde for 653)

* Make asyncpg work with pyinstaller (651)
(by Atem18 in 5ddabb19 for 651)

* Fix possible `AttributeError` exception in `ConnectionSettings` (632)
(by petriborg in 0d231820 for 632)

* Prohibit custom codecs on domains
(by elprans in 50f964fc for 457)

* Raise proper error on anonymous composite input (tuple arguments) (664)
(by elprans in 7252dbeb for 664)

* Fix incorrect application of custom codecs in some cases (662)
(by elprans in 50f65fbb for 662)

0.21.0

Improvements
------------

* Add support for password functions (useful for RDS IAM auth) (554)
(by Harvey Frye in 1d9457f0 for 554)

* Add support for connection termination listeners (525)
(by iomintz in 8141b93c for 525)

* Update CI matrix, aarch64 builds (595)
(by Gelbpunkt in ac6a2fcf for 595)

Fixes
-----

* Fix possible uninitalized pointer access on unexpected array
message data (CVE-2020-17446, by elprans in 69bcdf5b,
reported by risicle)

* Fix Connection class _copy_in private method
(by ABCDeath in 7f5c2a24 for 555)

* Bump pgproto to fix compilation issues
(by elprans in aa67d61b for 565)

* Improve pool documentation examples (491)
(by nyurik in 745f8f81 for 491)

* Update usage.rst (572)
(by xuedong09 in f5b425ae for 572)

* Fix links in connection documentation (584)
(by samuelcolvin in b0813204 for 584)

* Fix usage documentation for hstore (515)
(by aaliddell in 39040b3c for 515)

* Fix compiler warnings
(by elprans in 6cb5ba19)

0.20.0

Not secure
Improvements

* Support Python 3.8
(by 1st1 in 504)

* Support PgBouncer by sending only a single SYNC message per query
(by fvannee in b043fbd3)

Bug Fixes

* Handle IP values with prefix in "inet" type as `ipaddress.IPvXInterface`
(by elprans in 5a4daf71 for 497)

* Close transport if connection times out
(by hexrain in 926f4833 for 468)

* Use faster UUID codecs; make UUID decoding/encoding/operations 2-7x faster
(by 1st1 in edde3ff4)

* Use `loop.start_tls()` to upgrade connections to SSL
(by 1st1 in bdba7ce7)

Build

* Bump Cython to 0.29.14
(by 1st1 in 7cb31bc6)

0.19.0

Not secure
Improvements
------------

* Add support for SCRAM-SHA-256 authentication.
(by jkatz in 2d76f50d)

* Add PostgreSQL 12 support
(by elprans in 23261532)

Bug Fixes
---------

* Remove preexec_fn hack from test cluster management
(by elprans in 36ed11d2)

* Fix DeprecationWarning in the docstring of copy_from_query()
(by elprans in 482a39ae)

* Allow specifying the target version when generating the release log
(by elprans in 43a7b213)

* Check for .flake8 after importing flake8
(by dotlambda in aaeb7076)

* Include .flake8 in PyPI tarball
(by dotlambda in 43c6b9ce)

* fix timezone type label in docs
(by claws in e91e4911)

* Fix _StatementCache.clear() PS memory leak
(by un-def in f4aa9bf4 for 416)

* fix for warning_callback not yet defined
(by samuelcolvin in 354d9be5)

* Fix assertion fail on copy_records_to_table
(by Petr Reznikov in ae5a89db)

* Do not look for a port in a Unix socket domain path
(by Lawouach in b773912d for 419)

* Unquote connection string components properly
(by elprans in 5513b9d3 for 418)

* Remove superfluous transaction from a cursor example
(by elprans in 32fccaad for 475)

Page 2 of 6

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.