fix: Widen cryptography dependency to >=44.0.0,<47.0.0#975
Conversation
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
👋 Greetings, Airbyte Team Member!Here are some helpful tips and reminders for your convenience. 💡 Show Tips and TricksTesting This CDK VersionYou can test this version of the CDK using the following: # Run the CLI from this branch:
uvx 'git+https://github.com/airbytehq/airbyte-python-cdk.git@devin/1775067657-widen-cryptography-constraint#egg=airbyte-python-cdk[dev]' --help
# Update a connector to use the CDK from this branch ref:
cd airbyte-integrations/connectors/source-example
poe use-cdk-branch devin/1775067657-widen-cryptography-constraintPR Slash CommandsAirbyte Maintainers can execute the following slash commands on your PR:
|
PyTest Results (Fast)4 094 tests ±0 4 082 ✅ - 1 7m 27s ⏱️ -59s Results for commit b94d124. ± Comparison against base commit a7b0929. This pull request skips 1 test.♻️ This comment has been updated with latest results. |
…6007 The cryptography package was pinned to <45.0.0 due to upstream key loading regressions in 45.0.0 (pyca/cryptography#12958, #13126, #13196). Those regressions were fixed in 45.0.2+, and the pin now blocks the fix for CVE-2026-26007 (fixed in 46.0.5). Widen the constraint to <47.0.0 so the resolver picks up 46.0.6 (latest) which includes the CVE fix. Co-Authored-By: bot_apk <apk@cognition.ai>
Use 'poetry update cryptography' instead of 'poetry lock' to avoid updating unrelated transitive dependencies that caused MyPy failures. Co-Authored-By: bot_apk <apk@cognition.ai>
Co-Authored-By: AJ Steers <aj@airbyte.io>
Co-Authored-By: AJ Steers <aj@airbyte.io>
873668f to
dd34b2c
Compare
There was a problem hiding this comment.
Pull request overview
This PR aims to address CVE-2026-26007 by widening the allowed cryptography dependency range and updating the Poetry lockfile to resolve a patched cryptography version.
Changes:
- Updated
pyproject.tomlcryptographyconstraint (removed<45.0.0pin and excluded 45.0.0–45.0.1). - Regenerated
poetry.lockto updatecryptography(and transitive dependencies).
Reviewed changes
Copilot reviewed 1 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| pyproject.toml | Adjusts declared cryptography version constraints. |
| poetry.lock | Updates resolved dependency versions based on the new constraints. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
/prerelease
|
>=44.0.0,<47.0.0
Previous lock was generated with Poetry 1.8.5 (lock-version 2.0), which stripped groups/markers metadata and caused CI failures (MyPy, pytest). Regenerated from main's lock using 'poetry update cryptography' with Poetry 2.0.1 to match CI. Only 2 packages changed: - cryptography: 44.0.2 -> 46.0.7 - cffi: 1.17.1 -> 2.0.0 (transitive dep of cryptography) Co-Authored-By: AJ Steers <aj@airbyte.io>
>=44.0.0,<47.0.0cryptography dependency to >=44.0.0,<47.0.0
Summary
Widens the
cryptographypackage constraint from>=44.0.0,<45.0.0to>=44.0.0,<47.0.0,!=45.0.0,!=45.0.1to allow resolution of version 46.x, which includes the fix for CVE-2026-26007.The
<45.0.0pin was added in #377 becausecryptography45.0.0 introduced regressions inload_pem_private_key()(pyca/cryptography#12958). Those regressions were fixed in 45.0.2+, so we now exclude only the broken releases (45.0.0, 45.0.1) and add<47.0.0as a safety upper bound.Lock file changes (regenerated with Poetry 2.0.1, lock-version
2.1):cryptographycffiResolves https://github.com/airbytehq/oncall/issues/11849
Related: #956
Notes
<47.0.0and all 3,945 CDK tests passed. The cryptography change was reverted in that PR for unrelated reasons.Link to Devin session: https://app.devin.ai/sessions/10db7a594acf4f3da627e97e6e77a843
Requested by: Aaron ("AJ") Steers (@aaronsteers)