-
Notifications
You must be signed in to change notification settings - Fork 404
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
asyncpg v0.22.0 #680
asyncpg v0.22.0 #680
Conversation
@elprans Do you think it's ok to merge it or should the failing build be fixed ? I am asking because it would be cool to have a new release on pypi for the Pyinstaller support instead of relying on master via pip. Thanks in advance. |
@Atem18 the failure in the aarch64 build is a real bug and, ideally, should be fixed before the release. I'll try to get to doing so over the coming weekend. |
@elprans Got it, thanks a lot and keep up the good work ! |
The porting of arm64 builds to Github Actions uncovered an architecture-specific (or, perhaps, virtualization-specific) bug in asyncpg, so, rather than blocking the release, drop aarch64 wheels for now. Also, `manylinux2014_aarch64` is not considered stable yet (see pypa/manylinux#84) and so the compiled wheels might not even work correctly on all aarch64 boxes.
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 690048d for #295) * Allow using custom `Record` class (by @elprans in db4f1a6 for #577) * Add Python 3.9 support (#610) (by @elprans in c05d726 for #610) * Prefer SSL connections by default (#660) (by @elprans in 16183aa for #660) * Add codecs for a bunch of new builtin types (#665) (by @elprans in b53f038 for #665) * Expose Pool as `asyncpg.Pool` (#669) (by @rugleb in 0e0eb8d for #669) * Avoid unnecessary overhead during connection reset (#648) (by @kitogo in ff5da5f for #648) Fixes ----- * Add a workaround for bpo-37658 (by @elprans in 2bac166 for #21894) * Fix wrong default transaction isolation level (#622) (by @fantix in 4a627d5 for #622) * Fix `set_type_codec()` to accept standard SQL type names (#619) (by @elprans in 68b40cb for #619) * Ignore custom data codec for internal introspection (#618) (by @fantix in e064f59 for #618) * Fix null/NULL quoting in array text encoder (#627) (by @fantix in 92aa806 for #627) * Fix link in connect docstring (#653) (by @samuelcolvin in 8b313bd for #653) * Make asyncpg work with pyinstaller (#651) (by @Atem18 in 5ddabb1 for #651) * Fix possible `AttributeError` exception in `ConnectionSettings` (#632) (by @petriborg in 0d23182 for #632) * Prohibit custom codecs on domains (by @elprans in 50f964f for #457) * Raise proper error on anonymous composite input (tuple arguments) (#664) (by @elprans in 7252dbe for #664) * Fix incorrect application of custom codecs in some cases (#662) (by @elprans in 50f65fb for #662)
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, vastlyimproved
executemany()
performance. Importantly,executemany()
isalso 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 (Batch executemany #295)
(by @fantix in 690048d for Batch executemany #295)
Allow using custom
Record
class(by @elprans in db4f1a6 for Add typings #577)
Add Python 3.9 support (Fix compilation under Python 3.9+ #610)
(by @elprans in c05d726 for Fix compilation under Python 3.9+ #610)
Prefer SSL connections by default (Prefer SSL connections by default #660)
(by @elprans in 16183aa for Prefer SSL connections by default #660)
Add codecs for a bunch of new builtin types (Add codecs for a bunch of new builtin types #665)
(by @elprans in b53f038 for Add codecs for a bunch of new builtin types #665)
Expose Pool as
asyncpg.Pool
(Added Pool to public API #669)(by @rugleb in 0e0eb8d for Added Pool to public API #669)
Avoid unnecessary overhead during connection reset (Avoid unnecessary pg_listening_channels queries on connection release #648)
(by @kitogo in ff5da5f for Avoid unnecessary pg_listening_channels queries on connection release #648)
Fixes
Add a workaround for bpo-37658
(by @elprans in 2bac166 for #21894)
Fix wrong default transaction isolation level (Fix wrong default transaction isolation level #622)
(by @fantix in 4a627d5 for Fix wrong default transaction isolation level #622)
Fix
set_type_codec()
to accept standard SQL type names (Fix set_type_codec() to accept standard SQL type names #619)(by @elprans in 68b40cb for Fix set_type_codec() to accept standard SQL type names #619)
Ignore custom data codec for internal introspection (Ignore custom data codec for internal introspection #618)
(by @fantix in e064f59 for Ignore custom data codec for internal introspection #618)
Fix null/NULL quoting in array text encoder (Fix null/NULL quoting in array text encoder #627)
(by @fantix in 92aa806 for Fix null/NULL quoting in array text encoder #627)
Fix link in connect docstring (fix link in connect docstring #653)
(by @samuelcolvin in 8b313bd for fix link in connect docstring #653)
Make asyncpg work with pyinstaller (fix(pgproto): bump version to fix pyinstaller #651)
(by @Atem18 in 5ddabb1 for fix(pgproto): bump version to fix pyinstaller #651)
Fix possible
AttributeError
exception inConnectionSettings
(Fix AttributeError exception #632)(by @petriborg in 0d23182 for Fix AttributeError exception #632)
Prohibit custom codecs on domains
(by @elprans in 50f964f for Custom Codec doesn't work with DOMAIN types #457)
Raise proper error on anonymous composite input (tuple arguments) (Raise proper error on anonymous composite input (tuple arguments) #664)
(by @elprans in 7252dbe for Raise proper error on anonymous composite input (tuple arguments) #664)
Fix incorrect application of custom codecs in some cases (Untangle custom codec confusion #662)
(by @elprans in 50f65fb for Untangle custom codec confusion #662)