chore(deps): update dependency asyncpg to v0.32.0 #1133

Merged
renovate-bot merged 1 commit from renovate/asyncpg-0.x into main 2026-10-12 18:59:02 +00:00
Contributor

This PR contains the following updates:

Package Change Age Confidence
asyncpg ==0.31.0 → ==0.32.0 age confidence

Release Notes

MagicStack/asyncpg (asyncpg)

v0.32.0

Compare Source

Improvements

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


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • "before 9am on monday"
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate.

This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [asyncpg](https://github.com/MagicStack/asyncpg) | `==0.31.0` → `==0.32.0` | ![age](https://developer.mend.io/api/mc/badges/age/pypi/asyncpg/0.32.0?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/asyncpg/0.31.0/0.32.0?slim=true) | --- ### Release Notes <details> <summary>MagicStack/asyncpg (asyncpg)</summary> ### [`v0.32.0`](https://github.com/MagicStack/asyncpg/releases/tag/v0.32.0) [Compare Source](https://github.com/MagicStack/asyncpg/compare/v0.31.0...v0.32.0) #### Improvements - Support Python 3.15 ([#&#8203;1367](https://github.com/MagicStack/asyncpg/issues/1367), [#&#8203;1378](https://github.com/MagicStack/asyncpg/issues/1378)) (by [@&#8203;elprans](https://github.com/elprans) in [`1b11846`](https://github.com/MagicStack/asyncpg/commit/1b118464) and [`58c0c59`](https://github.com/MagicStack/asyncpg/commit/58c0c595)) - Support PostgreSQL 19 ([#&#8203;1379](https://github.com/MagicStack/asyncpg/issues/1379)) (by [@&#8203;elprans](https://github.com/elprans) in [`8d2a5ae`](https://github.com/MagicStack/asyncpg/commit/8d2a5aed)) - Make pool `min_size` a maintained connection floor and add `init_size` to control the number of connections opened at startup ([#&#8203;1323](https://github.com/MagicStack/asyncpg/issues/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 [@&#8203;shatilov-diman](https://github.com/shatilov-diman) in [`67a1cbc`](https://github.com/MagicStack/asyncpg/commit/67a1cbc5)) - Use `hashlib.pbkdf2_hmac()` for faster SCRAM password derivation ([#&#8203;1359](https://github.com/MagicStack/asyncpg/issues/1359)) (by [@&#8203;twelfthlabor](https://github.com/twelfthlabor) in [`00319a9`](https://github.com/MagicStack/asyncpg/commit/00319a9b)) - Use the statement cache for `copy_records_to_table()` introspection ([#&#8203;1360](https://github.com/MagicStack/asyncpg/issues/1360)) (by [@&#8203;matemax](https://github.com/matemax) in [`dd05865`](https://github.com/MagicStack/asyncpg/commit/dd058652)) #### 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 ([#&#8203;1324](https://github.com/MagicStack/asyncpg/issues/1324)) (by [@&#8203;pchaseh](https://github.com/pchaseh) in [`4a83cc2`](https://github.com/MagicStack/asyncpg/commit/4a83cc2f)) - Honor `Connection.close(timeout=...)` while waiting for a pending cancellation ([#&#8203;1361](https://github.com/MagicStack/asyncpg/issues/1361)) (by [@&#8203;gyanu2507](https://github.com/gyanu2507) in [`c06bcb4`](https://github.com/MagicStack/asyncpg/commit/c06bcb4d)) - Prevent stuck cancellation from blocking connection teardown or pool release by bounding cancellation with the command or release timeout ([#&#8203;1370](https://github.com/MagicStack/asyncpg/issues/1370)) (by [@&#8203;elprans](https://github.com/elprans) in [`4cf0220`](https://github.com/MagicStack/asyncpg/commit/4cf02203)) - Preserve the server error when the connection closes mid-operation ([#&#8203;1369](https://github.com/MagicStack/asyncpg/issues/1369)) (by [@&#8203;RitiGrover](https://github.com/RitiGrover) in [`6c8f1a7`](https://github.com/MagicStack/asyncpg/commit/6c8f1a7a)) - Fix COPY cleanup when a records generator raises, preserving the original exception and avoiding protocol desynchronization and stalled rollback ([#&#8203;1358](https://github.com/MagicStack/asyncpg/issues/1358)) (by [@&#8203;CodingCossack](https://github.com/CodingCossack) in [`fdc6bc8`](https://github.com/MagicStack/asyncpg/commit/fdc6bc8f)) - Reparse unnamed statements before cursor binding when the statement cache is disabled ([#&#8203;1364](https://github.com/MagicStack/asyncpg/issues/1364)) (by [@&#8203;elprans](https://github.com/elprans) in [`302ba49`](https://github.com/MagicStack/asyncpg/commit/302ba496)) - Allow cursors in transactions started outside `Connection.transaction()`, such as with an explicit `BEGIN` ([#&#8203;1350](https://github.com/MagicStack/asyncpg/issues/1350)) (by [@&#8203;aryansk](https://github.com/aryansk) in [`25aaaf5`](https://github.com/MagicStack/asyncpg/commit/25aaaf54)) - Remove the query logger when the `query_logger()` block raises ([#&#8203;1373](https://github.com/MagicStack/asyncpg/issues/1373)) (by [@&#8203;kratos0718](https://github.com/kratos0718) in [`6a7fbd3`](https://github.com/MagicStack/asyncpg/commit/6a7fbd3e)) - Fix a segfault in `Record.get()` with an invalid number of positional arguments ([#&#8203;1333](https://github.com/MagicStack/asyncpg/issues/1333)) (by [@&#8203;apoorvdarshan](https://github.com/apoorvdarshan) in [`40a3832`](https://github.com/MagicStack/asyncpg/commit/40a38320)) - Align SSL startup retries with libpq and improve SSL rejection diagnostics ([#&#8203;1366](https://github.com/MagicStack/asyncpg/issues/1366)). Retry alternative transports only before authentication succeeds. Direct TLS now requires `sslmode=require`, `verify-ca`, or `verify-full`, or an explicit `SSLContext`. (by [@&#8203;elprans](https://github.com/elprans) in [`78752c9`](https://github.com/MagicStack/asyncpg/commit/78752c9c)) - Preserve password errors during SSL fallback when the fallback fails with a less specific authorization error ([#&#8203;1331](https://github.com/MagicStack/asyncpg/issues/1331)) (by [@&#8203;Mauricio0129](https://github.com/Mauricio0129) in [`2d97947`](https://github.com/MagicStack/asyncpg/commit/2d979472)) - Handle cleartext password authentication when no password is supplied without raising an `AttributeError` ([#&#8203;1351](https://github.com/MagicStack/asyncpg/issues/1351)) (by [@&#8203;aryansk](https://github.com/aryansk) in [`6be5915`](https://github.com/MagicStack/asyncpg/commit/6be59154)) - Set the `postgresql` ALPN protocol on SSL contexts created by asyncpg so direct TLS connections work with PostgreSQL 17 and later ([#&#8203;1372](https://github.com/MagicStack/asyncpg/issues/1372)). User-provided contexts must set this protocol for direct TLS connections. (by [@&#8203;DurandA](https://github.com/DurandA) in [`b21325d`](https://github.com/MagicStack/asyncpg/commit/b21325d2)) - Link explicitly against `libm` on non-Windows platforms to fix undefined math symbol errors when loading the extensions ([#&#8203;1305](https://github.com/MagicStack/asyncpg/issues/1305)) (by [@&#8203;veeceey](https://github.com/veeceey) in [`db8ecc2`](https://github.com/MagicStack/asyncpg/commit/db8ecc2a)) - Fix builds on FreeBSD 15 by linking against `libstdthreads` ([#&#8203;1368](https://github.com/MagicStack/asyncpg/issues/1368)) (by [@&#8203;elprans](https://github.com/elprans) in [`87bcaf9`](https://github.com/MagicStack/asyncpg/commit/87bcaf97)) #### Other - Replace `pkg_resources` with `packaging` in `setup.py` ([#&#8203;1362](https://github.com/MagicStack/asyncpg/issues/1362)) (by [@&#8203;elprans](https://github.com/elprans) in [`6695db7`](https://github.com/MagicStack/asyncpg/commit/6695db76)) - Build Linux and macOS ARM64 wheels on native runners and add Windows ARM64 wheel builds ([#&#8203;1308](https://github.com/MagicStack/asyncpg/issues/1308)) (by [@&#8203;ddelange](https://github.com/ddelange) in [`1e8cc1c`](https://github.com/MagicStack/asyncpg/commit/1e8cc1c4)) - Add manual and PR-label-triggered dry runs to the release workflow ([#&#8203;1374](https://github.com/MagicStack/asyncpg/issues/1374)) (by [@&#8203;elprans](https://github.com/elprans) in [`1bd643e`](https://github.com/MagicStack/asyncpg/commit/1bd643e1)) - Clarify how `execute()` uses prepared statements and how to confirm an `INSERT` in the documentation ([#&#8203;1336](https://github.com/MagicStack/asyncpg/issues/1336)) (by [@&#8203;pctablet505](https://github.com/pctablet505) in [`cdf816c`](https://github.com/MagicStack/asyncpg/commit/cdf816c4)) - Fix typos in comments and docstrings ([#&#8203;1332](https://github.com/MagicStack/asyncpg/issues/1332)) (by [@&#8203;maxtaran2010](https://github.com/maxtaran2010) in [`bc3e246`](https://github.com/MagicStack/asyncpg/commit/bc3e2462)) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - "before 9am on monday" - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yODguMCIsInVwZGF0ZWRJblZlciI6IjQzLjI4OC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
chore(deps): update dependency asyncpg to v0.32.0
Some checks failed
CI / Backend lint (ruff) (pull_request) Successful in 34s
CI / Bot/backend version sync (pull_request) Successful in 30s
CI / Does this change touch the recording path? (pull_request) Successful in 25s
CI / Feedback site tests (pull_request) Successful in 59s
CI / Summarisation accuracy eval harness (stub provider) (pull_request) Successful in 2m18s
CI / Docker image build (pull_request) Successful in 3m7s
CI / Bot tests and audit (pull_request) Successful in 4m4s
CI / End-to-end journeys (phone) (pull_request) Failing after 1m37s
CI / Frontend (shard 1/2) (pull_request) Successful in 12m6s
CI / Synthetic session harness (no GPU, no LLM) (pull_request) Successful in 13m15s
CI / Frontend (shard 2/2) (pull_request) Successful in 18m11s
CI / End-to-end journeys (keyboard) (pull_request) Successful in 26m6s
CI / End-to-end journeys (desktop) (pull_request) Successful in 26m19s
CI / Backend migration, tests, and audit (pull_request) Successful in 50m50s
1f354038d7
renovate-bot scheduled this pull request to auto merge when all checks succeed 2026-10-12 06:19:07 +00:00
renovate-bot force-pushed renovate/asyncpg-0.x from 1f354038d7
Some checks failed
CI / Backend lint (ruff) (pull_request) Successful in 34s
CI / Bot/backend version sync (pull_request) Successful in 30s
CI / Does this change touch the recording path? (pull_request) Successful in 25s
CI / Feedback site tests (pull_request) Successful in 59s
CI / Summarisation accuracy eval harness (stub provider) (pull_request) Successful in 2m18s
CI / Docker image build (pull_request) Successful in 3m7s
CI / Bot tests and audit (pull_request) Successful in 4m4s
CI / End-to-end journeys (phone) (pull_request) Failing after 1m37s
CI / Frontend (shard 1/2) (pull_request) Successful in 12m6s
CI / Synthetic session harness (no GPU, no LLM) (pull_request) Successful in 13m15s
CI / Frontend (shard 2/2) (pull_request) Successful in 18m11s
CI / End-to-end journeys (keyboard) (pull_request) Successful in 26m6s
CI / End-to-end journeys (desktop) (pull_request) Successful in 26m19s
CI / Backend migration, tests, and audit (pull_request) Successful in 50m50s
to 01c89140c8
All checks were successful
CI / Summarisation accuracy eval harness (stub provider) (pull_request) Successful in 1m5s
CI / Backend lint (ruff) (pull_request) Successful in 31s
CI / Bot/backend version sync (pull_request) Successful in 27s
CI / Does this change touch the recording path? (pull_request) Successful in 24s
CI / Bot tests and audit (pull_request) Successful in 2m10s
CI / Feedback site tests (pull_request) Successful in 2m12s
CI / Docker image build (pull_request) Successful in 4m5s
CI / Frontend (shard 2/2) (pull_request) Successful in 10m43s
CI / Frontend (shard 1/2) (pull_request) Successful in 13m15s
CI / Synthetic session harness (no GPU, no LLM) (pull_request) Successful in 13m45s
CI / End-to-end journeys (phone) (pull_request) Successful in 13m16s
CI / End-to-end journeys (desktop) (pull_request) Successful in 14m26s
CI / End-to-end journeys (keyboard) (pull_request) Successful in 24m59s
CI / Backend migration, tests, and audit (pull_request) Successful in 38m8s
2026-10-12 18:20:37 +00:00
Compare
renovate-bot deleted branch renovate/asyncpg-0.x 2026-10-12 18:59:02 +00:00
Sign in to join this conversation.
No description provided.