Skip to content

Tags: ajaxerror/asyncpg

Tags

v0.23.0

Verified

This tag was signed with the committer’s verified signature.
edgedb-ci EdgeDB CI and Release Bot
asyncpg v0.23.0

Fixes
-----

* Avoid TypeError in `Transaction.__repr__` (MagicStack#703)
  (by @BeatButton in d6eea8e for MagicStack#703)

* Feed memoryview to `writelines()` (MagicStack#715)
  (by @fantix in 359a34c for MagicStack#715)

* Add sslmode=allow support and fix =prefer retry (MagicStack#720)
  (by @fantix in 075114c for MagicStack#720)

* Loosen message test in `test_invalid_input` (MagicStack#751)
  (by @musicinmybrain in bc4127f for MagicStack#751)

* Support readonly and deferrable for non-serializable transactions (MagicStack#747)
  (by @pauldraper in 5cf4089 for MagicStack#747)

* Fix asyncpg with `Py_DEBUG` mode (MagicStack#719)
  (by @shadchin in a113d90 for MagicStack#719)

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

v0.22.0

Verified

This tag was signed with the committer’s verified signature.
edgedb-ci EdgeDB CI and Release Bot
asyncpg v0.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 (MagicStack#295)
  (by @fantix in 690048d for MagicStack#295)

* Allow using custom `Record` class
  (by @elprans in db4f1a6 for MagicStack#577)

* Add Python 3.9 support (MagicStack#610)
  (by @elprans in c05d726 for MagicStack#610)

* Prefer SSL connections by default (MagicStack#660)
  (by @elprans in 16183aa for MagicStack#660)

* Add codecs for a bunch of new builtin types (MagicStack#665)
  (by @elprans in b53f038 for MagicStack#665)

* Expose Pool as `asyncpg.Pool` (MagicStack#669)
  (by @rugleb in 0e0eb8d for MagicStack#669)

* Avoid unnecessary overhead during connection reset (MagicStack#648)
  (by @kitogo in ff5da5f for MagicStack#648)

Fixes
-----

* Add a workaround for bpo-37658
  (by @elprans in 2bac166 for #21894)

* Fix wrong default transaction isolation level (MagicStack#622)
  (by @fantix in 4a627d5 for MagicStack#622)

* Fix `set_type_codec()` to accept standard SQL type names (MagicStack#619)
  (by @elprans in 68b40cb for MagicStack#619)

* Ignore custom data codec for internal introspection (MagicStack#618)
  (by @fantix in e064f59 for MagicStack#618)

* Fix null/NULL quoting in array text encoder (MagicStack#627)
  (by @fantix in 92aa806 for MagicStack#627)

* Fix link in connect docstring (MagicStack#653)
  (by @samuelcolvin in 8b313bd for MagicStack#653)

* Make asyncpg work with pyinstaller (MagicStack#651)
  (by @Atem18 in 5ddabb1 for MagicStack#651)

* Fix possible `AttributeError` exception in `ConnectionSettings` (MagicStack#632)
  (by @petriborg in 0d23182 for MagicStack#632)

* Prohibit custom codecs on domains
  (by @elprans in 50f964f for MagicStack#457)

* Raise proper error on anonymous composite input (tuple arguments) (MagicStack#664)
  (by @elprans in 7252dbe for MagicStack#664)

* Fix incorrect application of custom codecs in some cases (MagicStack#662)
  (by @elprans in 50f65fb for MagicStack#662)

v0.21.0

Verified

This tag was signed with the committer’s verified signature.
elprans Elvis Pranskevichus
v0.21.0

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

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

* Add support for connection termination listeners (MagicStack#525)
  (by @iomintz in 8141b93 for MagicStack#525)

* Update CI matrix, aarch64 builds (MagicStack#595)
  (by @Gelbpunkt in ac6a2fc for MagicStack#595)

Fixes
-----

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

* Fix Connection class _copy_in private method
  (by @ABCDeath in 7f5c2a2 for MagicStack#555)

* Bump pgproto to fix compilation issues
  (by @elprans in aa67d61 for MagicStack#565)

* Improve pool documentation examples (MagicStack#491)
  (by @nyurik in 745f8f8 for MagicStack#491)

* Update usage.rst (MagicStack#572)
  (by @xuedong09 in f5b425a for MagicStack#572)

* Fix links in connection documentation (MagicStack#584)
  (by @samuelcolvin in b081320 for MagicStack#584)

* Fix usage documentation for hstore (MagicStack#515)
  (by @aaliddell in 39040b3 for MagicStack#515)

* Fix compiler warnings
  (by @elprans in 6cb5ba1)

v0.20.1

Verified

This tag was signed with the committer’s verified signature.
elprans Elvis Pranskevichus
v0.20.1

Bug Fixes
=========

* Add back ensure future for connector
  (by Martin Asell in 2c99beb)

* Fix errors in numeric binary decoder
  (by @elprans in 851d586 for MagicStack#520)

v0.20.0

v0.20.0

New Features

* Support Python 3.8
  (by @1st1 in MagicStack#504)

Bug Fixes

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

* Close transport if connection times out
  (by @hexrain in 926f483 for MagicStack#468)

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

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

Build

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

v0.19.0

Verified

This tag was signed with the committer’s verified signature.
elprans Elvis Pranskevichus
asyncpg v0.19.0

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

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

* Add PostgreSQL 12 support
  (by @elprans in 2326153)

Bug Fixes
---------

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

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

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

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

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

* fix timezone type label in docs
  (by @claws in e91e491)

* Fix _StatementCache.clear() PS memory leak
  (by @un-def in f4aa9bf for MagicStack#416)

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

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

* Do not look for a port in a Unix socket domain path
  (by @Lawouach in b773912 for MagicStack#419)

* Unquote connection string components properly
  (by @elprans in 5513b9d for MagicStack#418)

* Remove superfluous transaction from a cursor example
  (by @elprans in 32fccaa for MagicStack#475)

v0.18.3

Verified

This tag was signed with the committer’s verified signature.
elprans Elvis Pranskevichus
asyncpg v0.18.3

Bug Fixes
---------

* Fix bswap on *BSD
  (by @elprans in a6b7775 for MagicStack#313)

* Make sure idle never-acquired pool connections are closed due to inactivity
  (by @elprans in 69cbfd0 for MagicStack#389)

v0.18.2

Verified

This tag was signed with the committer’s verified signature.
elprans Elvis Pranskevichus
asyncpg v0.18.2

Bug Fixes
---------

* Revert "Stop treating ReadyForQuery as a universal result indicator"
  to fix stability regression.
  (by @elprans in 04b6748)

* Correctly ignore all incoming messages after the Terminate message
  (by @elprans in 787317f)

* Properly cleanup connections closed by remote
  (by @elprans in 4393a15 for MagicStack#385)

v0.18.1

Verified

This tag was signed with the committer’s verified signature.
elprans Elvis Pranskevichus
asyncpg v0.18.1

Bug Fixes
---------

* Fix DNS parsing regression
  (by @elprans in 8b98e7b)

v0.18.0

Verified

This tag was signed with the committer’s verified signature.
elprans Elvis Pranskevichus
asyncpg v0.18.0

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

* Implement `Record.get()`
  (by @elprans in 2b93ee5 for MagicStack#330)

* Internal asyncpg errors are now consistently raised as
  `InternalClientError` (by @elprans in 263de3f)

* Allow mappings as composite type input
  (by @elprans in eaa2fa1 for MagicStack#349)

* Add `BitString.to_int()` and `BitString.from_int()`
  (by @percontation in ffd134e)

* Allow 'sslmode' in DSNs
  (by @percontation in 0304288)

* Add support for specifying multiple host addresses when connecting
  (by @elprans in 1d650ed for MagicStack#257)

* Low-level protocol implementation has been tweaked and
  optimized for slightly better performance in certain scenarios
  (by @elprans in 7a81613 and cc053fe)

* Queries with cached statements now generate fewer TCP packets
  (by @aleksey-mashanov in bf07199)

* Allow aliasing builtin types by name in `set_builtin_type_codec()`
  (by @elprans in 687127e)

* Factor out generic PostgreSQL protocol helpers into a separate package
  (by @1st1 in f0adefc)

* Fix tests and enable CI for PostgreSQL 11
  (by @elprans in ddb0ec2 and 716fd9d)

Bug Fixes
---------

* Handle and ignore permission errors when attempting to read .pgpass
  (by @elprans in df7830f for MagicStack#356)

* Fix decoding of fractional timestamps before Postgres epoch
  (by @elprans in a7eaf2b for MagicStack#363)