Visitar URL original
asyncpg v0.32.0 · MagicStack/asyncpg@d701e11 · GitHub
Skip to content

Commit d701e11

Browse files
committed
asyncpg v0.32.0
## Improvements * Support Python 3.15 (#1367, #1378) (by @elprans in 1b11846 and 58c0c59) * Support PostgreSQL 19 (#1379) (by @elprans in 8d2a5ae) * Make pool `min_size` a maintained connection floor and add `init_size` to control the number of connections opened at startup (#1323). Idle connections at or below `min_size` are retained, and closed connections are replaced in the background. `init_size` defaults to `min_size`. To preserve the previous behavior, where the pool could drain to zero, replace `min_size=N` with `init_size=N, min_size=0`. (by @shatilov-diman in 67a1cbc) * Use `hashlib.pbkdf2_hmac()` for faster SCRAM password derivation (#1359) (by @twelfthlabor in 00319a9) * Use the statement cache for `copy_records_to_table()` introspection (#1360) (by @matemax in dd05865) ## Fixes * Clean up connections rejected by `target_session_attrs` immediately so an unresponsive rejected host cannot delay the selected connection, and cleanup tasks cannot outlive the event loop. Rejected connections are aborted without waiting for a graceful disconnect; servers may log "unexpected EOF on client connection" if the Terminate message is not delivered before the transport closes. * Fix a connection pool deadlock when releasing a connection after a protocol abort (#1324) (by @pchaseh in 4a83cc2) * Honor `Connection.close(timeout=...)` while waiting for a pending cancellation (#1361) (by @gyanu2507 in c06bcb4) * Prevent stuck cancellation from blocking connection teardown or pool release by bounding cancellation with the command or release timeout (#1370) (by @elprans in 4cf0220) * Preserve the server error when the connection closes mid-operation (#1369) (by @RitiGrover in 6c8f1a7) * Fix COPY cleanup when a records generator raises, preserving the original exception and avoiding protocol desynchronization and stalled rollback (#1358) (by @CodingCossack in fdc6bc8) * Reparse unnamed statements before cursor binding when the statement cache is disabled (#1364) (by @elprans in 302ba49) * Allow cursors in transactions started outside `Connection.transaction()`, such as with an explicit `BEGIN` (#1350) (by @aryansk in 25aaaf5) * Remove the query logger when the `query_logger()` block raises (#1373) (by @kratos0718 in 6a7fbd3) * Fix a segfault in `Record.get()` with an invalid number of positional arguments (#1333) (by @apoorvdarshan in 40a3832) * Align SSL startup retries with libpq and improve SSL rejection diagnostics (#1366). Retry alternative transports only before authentication succeeds. Direct TLS now requires `sslmode=require`, `verify-ca`, or `verify-full`, or an explicit `SSLContext`. (by @elprans in 78752c9) * Preserve password errors during SSL fallback when the fallback fails with a less specific authorization error (#1331) (by @Mauricio0129 in 2d97947) * Handle cleartext password authentication when no password is supplied without raising an `AttributeError` (#1351) (by @aryansk in 6be5915) * Set the `postgresql` ALPN protocol on SSL contexts created by asyncpg so direct TLS connections work with PostgreSQL 17 and later (#1372). User-provided contexts must set this protocol for direct TLS connections. (by @DurandA in b21325d) * Link explicitly against `libm` on non-Windows platforms to fix undefined math symbol errors when loading the extensions (#1305) (by @veeceey in db8ecc2) * Fix builds on FreeBSD 15 by linking against `libstdthreads` (#1368) (by @elprans in 87bcaf9) ## Other * Replace `pkg_resources` with `packaging` in `setup.py` (#1362) (by @elprans in 6695db7) * Build Linux and macOS ARM64 wheels on native runners and add Windows ARM64 wheel builds (#1308) (by @ddelange in 1e8cc1c) * Add manual and PR-label-triggered dry runs to the release workflow (#1374) (by @elprans in 1bd643e) * Clarify how `execute()` uses prepared statements and how to confirm an `INSERT` in the documentation (#1336) (by @pctablet505 in cdf816c) * Fix typos in comments and docstrings (#1332) (by @maxtaran2010 in bc3e246)
1 parent b04f8f2 commit d701e11

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

‎asyncpg/_version.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,4 @@
1414

1515
import typing
1616

17-
__version__: typing.Final = '0.32.0.dev0'
17+
__version__: typing.Final = '0.32.0'

0 commit comments

Comments
 (0)