Repository navigation
fix(deps): bump psycopg2-binary to 2.9.13 - #148
Merged
tkislan merged 1 commit intoNov 10, 2026
Merged
Conversation
Contributor
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## tk/install-poetry-with-pipx #148 +/- ##
============================================================
Coverage 78.43% 78.43%
============================================================
Files 121 121
Lines 6920 6920
Branches 1005 1005
============================================================
Hits 5428 5428
Misses 1182 1182
Partials 310 310
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. |
|
🚀 Review App Deployment Started
|
psycopg2-binary 2.9.12 and 2.9.13 fix an infinite loop on a malformed interval and the parsing of malformed bytea and int64-array input. No advisory is published for them yet; the floor is raised the way past audit fixes raise one. 2.9.13 requires Python 3.10 and ships wheels for 3.10 to 3.14, so the per-Python split, which existed only because 2.9.10 was the first release with 3.13 wheels, collapses into one constraint with the newer line's <3 ceiling, as was done for pymongo and pylint. Only the psycopg2-binary block and content-hash were spliced into the lock.
tkislan
force-pushed
the
tk/bump-psycopg2-binary-2026-11-10
branch
from
November 10, 2026 14:06
0bb86ff to
ad79fde
Compare
|
📦 Python package built successfully!
|
tkislan
marked this pull request as ready for review
November 10, 2026 14:27
tkislan
added a commit
that referenced
this pull request
Nov 10, 2026
…149) * fix(ci): install Poetry with pipx instead of snok/install-poetry Every job that installs Poetry through snok/install-poetry fails with HTTP 403. The action downloads https://install.python-poetry.org/ with Python's urllib, and the Cloudflare front of that host now rejects the Python-urllib User-Agent with error 1010. The action's latest release makes the same request, so bumping it does not help. Poetry is installed from PyPI with the runner's preinstalled pipx instead, as dockerfiles/test.Dockerfile already does. The settings the action applied are already set by the workflow-level POETRY_* env vars. The runner image points pipx at /opt, so the two jobs that cache ~/.local for their Poetry install redirect pipx there; otherwise the cache would save nothing and a later cache hit would leave poetry missing. * fix(deps): bump psycopg2-binary to 2.9.13 (#148) psycopg2-binary 2.9.12 and 2.9.13 fix an infinite loop on a malformed interval and the parsing of malformed bytea and int64-array input. No advisory is published for them yet; the floor is raised the way past audit fixes raise one. 2.9.13 requires Python 3.10 and ships wheels for 3.10 to 3.14, so the per-Python split, which existed only because 2.9.10 was the first release with 3.13 wheels, collapses into one constraint with the newer line's <3 ceiling, as was done for pymongo and pylint. Only the psycopg2-binary block and content-hash were spliced into the lock. * fix(deps): bump oauthlib to 4.0.1 CVE-2026-49272 (GHSA-3jp2-3mrg-2vxc) was revised on 2026-11-05 to name 4.0.1 as its fix, so pip-audit fails Production and Server on 4.0.0. 4.0.1 changes only the server-side device flow; databricks-sql-connector, the only consumer, uses oauthlib as a client and allows <5. The floor in the transitive security block is raised in place, as for pyasn1. Only the oauthlib block and content-hash were spliced into the lock.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bumps
psycopg2-binaryfrom 2.9.11 to 2.9.13. No advisory has been published for 2.9.11 yet. The bump follows the process this repository uses for audit findings, because 2.9.12 and 2.9.13 fix parsing of malformed server input.Audit
poetry export <matrix export-args> -f requirements.txt, thenpypa/gh-action-pip-auditwithrequire-hashes: true,disable-pip: true, ignoringPYSEC-2024-161andPYSEC-2026-113, on Python 3.11 (.github/workflows/ci.yml:516,:518). It runs three times: Production (--without dev), Server (--extras server), Dev (--only dev).psycopg2-binaryfindings.oauthlib4.0.0 (CVE-2026-49272, fix version now 4.0.1).mainfails the same way. This is not caused by this PR; see "Not fixed".Precedent
pyproject.toml, with a trailing comment that says why. Examples: pymongo, urllib3 and pyjwt (fix(deps): resolve pip-audit failures #133), snowflake-sqlalchemy (fix(deps): resolve pip-audit failures for snowflake-sqlalchemy, thrift and tornado #126), pymongo (fix(deps): resolve pip-audit failures for pymongo, dnspython, oauthlib and pylint #145).<4.10/<5→<5(fix(deps): resolve pip-audit failures #133), pylint 3.x / 4.x → one line (fix(deps): resolve pip-audit failures for pymongo, dnspython, oauthlib and pylint #145).poetry.lockblocks andcontent-hashare spliced in, because a plainpoetry lockwith Poetry 2.2.0 also drops about 20 unrelated older-Python entries (fix(deps): resolve pip-audit failures for pillow, gitpython, certifi and black #143–fix(deps): resolve pip-audit failures for tornado and pyasn1 #146).fix(deps):titles; a single-package bump is titledfix(deps): bump <package> to <version>(fix(deps): bump deepnote-python-lsp-server to 1.13.1.1 #132).psycopg2-binary 2.9.11 → 2.9.13
maingroup). No other locked package depends on psycopg2.<3ceiling as in fix(deps): resolve pip-audit failures #133/fix(deps): resolve pip-audit failures for pymongo, dnspython, oauthlib and pylint #145. On 3.10–3.12 the ceiling widens from<2.10to<3. That changes nothing today: no 2.10 exists or is announced.DEEPNOTE_ENFORCE_PIP_CONSTRAINTSis on, the published constraints file now rejects user pins below 2.9.13 (deepnote_core/execution/registry.py:155). This is the same effect every earlier floor raise had.Verified
psycopg2-binary==2.9.13.wait_selectcallback: interval, bytea and extreme int8 values in an array parse correctly, andstatement_timeoutcancellation raisesQueryCanceled.Decided with the user
Checks
poetry check --lock(Poetry 2.2.0)poetry lockpsycopg2-binaryandcontent-hashdiffer from basepip-audit==2.10.1on Python 3.11, CI flags and ignores, three exportsmain)pytest tests/uniton Python 3.13, before / afterset_wait_callback(wait_select)Not fixed
oauthlib4.0.0, CVE-2026-49272: the advisory now lists 4.0.1 as the fix. oauthlib 4.0.1 was released on 2026-10-31, andmain's last green CI run was on 2026-11-05, so the advisory data has changed since. It reaches users throughdatabricks-sql-connectorand is pinned by theoauthlib>=4.0.0,<5floor from fix(deps): resolve pip-audit failures for pymongo, dnspython, oauthlib and pylint #145. The Production and Server audit jobs will stay red on this PR until it is fixed in its own PR.Summary by CodeRabbit