chore(deps): bump cryptography from 46.0.7 to 50.0.0 in /envs/chat_env - #1058
chore(deps): bump cryptography from 46.0.7 to 50.0.0 in /envs/chat_env#1058dependabot[bot] wants to merge 1 commit into
Conversation
Bumps [cryptography](https://github.com/pyca/cryptography) from 46.0.7 to 50.0.0. - [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst) - [Commits](pyca/cryptography@46.0.7...50.0.0) --- updated-dependencies: - dependency-name: cryptography dependency-version: 50.0.0 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
|
The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update. |
There was a problem hiding this comment.
Alignment Review Report
Two-tier review of this Dependabot bump. Only envs/chat_env/uv.lock changes (no pyproject.toml), which is correct: cryptography is transitive (openenv → fastmcp → authlib → cryptography), so a lock-only bump is right.
Automated Checks
- Lint: PASS (N/A to diff) —
uv.lock/TOML aren't linted; CIlintis green. - Debug code: CLEAN —
check-debug.shscanssrc/only; nosrc/files touched. - Lockfile consistency: PASS —
uv lock --check→ Resolved 125 packages, exit 0; CIvalidate-env-locks(uv 0.9.3,uv sync --frozen --dry-run) green. - Integrity: VERIFIED vs PyPI —
cryptography 50.0.0sdist + wheel sha256/size match the lock exactly; not yanked;requires-python !=3.9.0,!=3.9.1,>=3.9⊇ chat_env>=3.10. No non-cryptography artifact URL/hash changed.
Security assessment (positive)
This is effectively a security update. cryptography 46.0.7 carries 7 advisories — notably CVE-2026-69247 (GHSA-g6cj-pr64-35w5), fixed only in 50.0.0 (also CVE-2026-69248 / CVE-2026-69249 → 49.0.0, GHSA-537c-gmf6-5ccf → 48.0.1). The 46→50 major jump is the minimum version clearing all of them; 50.0.0 reports 0 known vulnerabilities. Reasonable to merge on those grounds.
Open RFCs Context
In Review: 000, 001, 002, 003, 005; plus 004 (rubrics) and 010 (Draft). None govern Python packaging / dependency management / PyPI index selection (RFC "registry" references are Docker/tool registries, not package indexes). → No RFC bearing on this change.
Tier 1: Fixes Required
None — mechanically sound and CI is fully green.
Tier 2: Alignment Discussion
Principle conflicts: None identified. No API / reward / client-server / MCP surface is touched, and PRINCIPLES.md / INVARIANTS.md don't cover dependency management.
RFC conflicts: None identified.
ALIGNMENT FLAG — silent index-source migration (non-blocking)
- Principle at stake: reproducibility / declared provenance (
PRINCIPLES.md, "Container isolation for reproducibility").- The concern: beyond the cryptography bump, this re-lock flips 132
sourceentries from the HF mirror (pypi.registries.huggingface.tech) to public PyPI (pypi.org/simple) and bumps lockrevision 2 → 3. Artifact URLs stay onfiles.pythonhosted.orgwith unchanged hashes (verified), so it's almost certainly benign, but it silently changes provenance env-wide and is broader than the PR title implies. It does align chat_env with the referenceecho_env+ 21 otherrevision = 3envs (16revision = 2envs remain on the mirror). Registry choice is a team decision → flagging, not fixing.- Suggested reviewers: @Darktex, @burtenshaw
Process note — native env PR vs root-only Dependabot config (cc @burtenshaw)
.github/dependabot.yml scopes the uv updater to directory: "/" with exclude-paths: ["envs/**"] (commit 5f499da9, "stop dependabot in envs"), yet this native dependabot/uv/envs/chat_env/… PR edits envs/**. Two known upstream limitations explain it: the uv ecosystem currently ignores exclude-paths (dependabot-core#15102), and exclude-paths doesn't suppress security-update PRs at all (dependabot-core#14408) — and this bump is CVE-driven. ~10 sibling env PRs are open right now (#1057 / #1056 / #1055 / #1049 cryptography→50; #1054 / #1052 / #1050 / #1048 / #1040 aiohttp→3.14.3). If stopping env dependency PRs is still the intent, exclude-paths alone is insufficient for the uv ecosystem + security updates; if env updates are welcome, these look safe to take together.
Heads-up — lock revision 3 vs deploy base image (non-blocking). CI is fine (uv 0.9.3). The runtime path (envs/chat_env/server/Dockerfile → uv sync --frozen) uses openenv-base's uv 0.5.27, which predates revision = 3. It doesn't fire here (docker-build.yml isn't triggered by uv.lock, and rev-3 envs already deploy), but worth confirming the base image's uv if you cut a manual chat_env image.
Summary
- 0 mechanical (Tier 1) issues — CI green, hashes verified, security-positive.
- 1 alignment point — the 132-package index-source flip + revision bump (provenance; @Darktex / @burtenshaw).
- 0 RFC conflicts.
- Process: native Dependabot env PR despite
exclude-paths(upstream limitation; part of a ~10-PR batch) — cc @burtenshaw.
Sent by Cursor Automation: Pre-review
| @@ -587,68 +587,65 @@ toml = [ | |||
|
|
|||
| [[package]] | |||
| name = "cryptography" | |||
| version = "46.0.7" | |||
| source = { registry = "https://pypi.registries.huggingface.tech/" } | |||
| version = "50.0.0" | |||
There was a problem hiding this comment.
Security bump — verified. cryptography 46.0.7 → 50.0.0. 46.0.7 has 7 advisories; CVE-2026-69247 (GHSA-g6cj-pr64-35w5) is fixed only in 50.0.0 (CVE-2026-69248 / CVE-2026-69249 → 49.0.0, GHSA-537c-gmf6-5ccf → 48.0.1), so this major jump is the minimum version clearing all of them. sdist + wheel sha256/size match PyPI exactly; not yanked; requires-python >=3.9 (excluding 3.9.0/3.9.1) is satisfied by chat_env's >=3.10. Transitive via openenv → fastmcp → authlib, so the lock-only change (no pyproject.toml edit) is correct.
| @@ -17,7 +17,7 @@ resolution-markers = [ | |||
| [[package]] | |||
| name = "aiofile" | |||
| version = "3.9.0" | |||
| source = { registry = "https://pypi.registries.huggingface.tech/" } | |||
| source = { registry = "https://pypi.org/simple" } | |||
There was a problem hiding this comment.
Index-source flip (provenance, non-blocking). This re-lock rewrites 132 source entries from the HF mirror (pypi.registries.huggingface.tech) to public PyPI (pypi.org/simple) — a Dependabot side effect beyond the cryptography bump. Artifact URLs stay on files.pythonhosted.org with unchanged hashes (verified: no non-cryptography artifact line changed), so it's benign, but it changes declared provenance env-wide and aligns chat_env with echo_env + 21 other revision = 3 envs. Registry choice is a team call. cc @Darktex @burtenshaw
| @@ -1,5 +1,5 @@ | |||
| version = 1 | |||
| revision = 2 | |||
| revision = 3 | |||
There was a problem hiding this comment.
Lock revision 2 → 3 heads-up (non-blocking). Fine for CI (uv 0.9.3) and uv lock --check passes. The deploy server/Dockerfile runs uv sync --frozen against openenv-base's uv 0.5.27, which predates rev 3 — doesn't fire on a lock-only PR (docker-build isn't triggered by uv.lock) and rev-3 envs already deploy, but confirm the base image's uv if manually rebuilding chat_env.
|
Closing in favor of aggregate env Dependabot PR #1015. |
|
OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting If you change your mind, just re-open this PR and I'll resolve any conflicts on it. |


Bumps cryptography from 46.0.7 to 50.0.0.
Changelog
Sourced from cryptography's changelog.
... (truncated)
Commits
dcb7050Prepare for 50.0.0 release (#15372)53fccd9Don't leak how PKCS#7 encryptedKey decryption failed (#15369)d472f97Addfrom __future__ import annotationsto all src/ Python files (#15371)908773dBump downstream dependencies in CI (#15368)2cc07ccBump BoringSSL, OpenSSL, AWS-LC in CI (#15367)c94ede9chore(deps): bump ruff from 0.16.0 to 0.16.1 (#15366)67a8308chore(deps): bump virtualenv from 21.7.0 to 21.7.1 (#15365)95018ffRelease the GIL in one-shot AEAD encrypt/decrypt (#15361)6954733Release the GIL during DH and DSA parameter generation (#15364)6893b94Import _serialization instead of serialization in x509/extensions (#15363)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)You can disable automated security fix PRs for this repo from the Security Alerts page.
Note
Medium Risk
Major-version cryptography upgrade affects transitive crypto used by Authlib; low code churn but possible behavioral changes in TLS/JWT/PKCS#7 paths—worth running chat_env tests.
Overview
This PR bumps the pinned
cryptographyversion inenvs/chat_envfrom 46.0.7 to 50.0.0, typically via updates touv.lock(no app source changes). The library is pulled in transitively (e.g. through Authlib), not as a direct project dependency.50.0.0 is a major release that includes a security fix for PKCS#7 decryption (CVE-2026-69247, Bleichenbacher-style oracle on
encryptedKeyunwrap) and stricter X.509/OCSP parsing, plus deprecations such as finite-field Diffie-Hellman. Reviewers should treat this as a crypto stack upgrade: confirmchat_envtests/CI still pass and that nothing relied on deprecated FFDH or looser ASN.1 behavior.Reviewed by Cursor Bugbot for commit cf355bd. Bugbot is set up for automated code reviews on this repo. Configure here.