chore(deps): bump cryptography from 49.0.0 to 50.0.0 in /envs/pi_env - #1067
chore(deps): bump cryptography from 49.0.0 to 50.0.0 in /envs/pi_env#1067dependabot[bot] wants to merge 1 commit into
Conversation
Bumps [cryptography](https://github.com/pyca/cryptography) from 49.0.0 to 50.0.0. - [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst) - [Commits](pyca/cryptography@49.0.0...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 automated review of this Dependabot bump. Net: security-positive and safe on the merits — 0 Tier-1 issues, 1 Tier-2 alignment point (an unreviewed dependency-provenance flip) + 2 non-blocking process/deploy notes. Heads-up: the PR is titled as a single cryptography bump, but the lock was regenerated, so the diff is much larger than the one-line version change.
Automated Checks
- Lint: effectively N/A.
.claude/hooks/lint.shcouldn't execute in this review env (nouv), but the PR touches onlyenvs/pi_env/uv.lock(TOML), whichruff/usortdon't lint — no lint surface. - Debug code: CLEAN.
check-debug.shonly reports pre-existingprint/TODOinsrc/; this PR changes no.py.
What actually changed (verified: 024eedc9 → 2ad04e69, 1 file, +200/-200)
- cryptography 49.0.0 → 50.0.0 — the only package
versionchange (sdist + 45 wheels fromfiles.pythonhosted.org). - Index-flip (side effect): all 141 package
sourceentrieshttps://pypi.registries.huggingface.tech/→https://pypi.org/simple(base 141 mirror / 0 pypi → head 0 mirror / 141 pypi). - Lockfile
revision2 → 3 (side effect). - Benign marker re-normalizations from the re-resolve (e.g.
{ name = "caio", marker = … }→{ name = "caio" }); no resolved versions changed and no non-cryptography artifact/hash line changed → the flip is provenance-only.
Security (positive)
- Base 49.0.0 has exactly one outstanding advisory fixed by the target: GHSA-g6cj-pr64-35w5 / CVE-2026-69247 / PYSEC-2026-3552 (
fixed_in: 50.0.0, verified on PyPI). 50.0.0 reportsvulnerabilities: []. - Locked sdist
sha256:eeac2acb…a6c9(size 880201) matches PyPI exactly. cryptographyis transitive-only inpi_env(viaauthlib); no env code imports it, so the major 49→50 jump has no direct API surface here.
Open RFCs Context
RFCs 000–005 are In Review, 010 is Draft. None concern dependency pinning, lockfiles, or package indexes → no RFC conflict.
Tier 1: Fixes Required
- None.
Tier 2: Alignment Discussion
Principle Conflicts
ALIGNMENT FLAG: Unreviewed dependency-provenance flip (all 141 packages) inside a "bump cryptography" PR
- Principle at stake: Reproducibility —
PRINCIPLES.md"Container isolation for reproducibility" (L15) and "Docker overhead is acceptable for reproducibility" (L22) - The concern: A security bump silently re-sources every package (HF-internal mirror → public PyPI) and bumps the lock
revision. This is benign (hashes unchanged) and actually alignspi_envwith the reference envecho_env+ ~21 other envs already onpypi.org/simple/revision 3(public PyPI is the repo majority, and the HF mirror isn't publicly reachable, so it arguably improves external reproducibility). But it wasn't the PR's stated intent and should be a conscious maintainer decision rather than a Dependabot side effect. It also surfaces the broader split (16 envs still pin the HF mirror). - Suggested reviewers: @Darktex (reproducibility principle author), @burtenshaw (Dependabot config owner)
RFC Conflicts
- None identified.
Non-blocking notes
exclude-pathsbypass (process):.github/dependabot.ymlsetsexclude-paths: ["envs/**"]for theuvecosystem (intent: keep Dependabot out ofenvs/— @burtenshaw, #566/#644), yet this PR targetsenvs/pi_env. That's expected for a security update: Dependabot security updates ignoreexclude-paths/directory scoping (dependabot-core #14408; see also uv-ecosystemexclude-pathshandling #15102). The guard isn't broken — it just can't suppress CVE-driven env bumps. cc @burtenshaw.- rev-3 / base-image
uvdeploy heads-up:envs/pi_env/server/DockerfilebuildsFROM ghcr.io/huggingface/openenv-baseand runsuv sync --frozen, installinguvonlyif ! command -v uv. If the base image's bundleduvpredates ~0.8,uv sync --frozenon arevision 3lock could fail on a Space/Docker rebuild. Non-blocking (docker-build.yml isn't triggered byuv.lock, and other rev-3 envs deploy fine) — but worth confirming the base image'suvversion.
Summary
- 0 mechanical issues to fix
- 1 alignment point for human review (provenance flip) + 2 non-blocking process/deploy notes
- 0 RFC conflicts
- Security-positive; safe to merge on the merits.
Sent by Cursor Automation: Pre-review
| @@ -619,65 +619,65 @@ toml = [ | |||
|
|
|||
| [[package]] | |||
| name = "cryptography" | |||
| version = "49.0.0" | |||
| source = { registry = "https://pypi.registries.huggingface.tech/" } | |||
| version = "50.0.0" | |||
There was a problem hiding this comment.
Security-positive — Tier-1 clean. Base 49.0.0 carries one outstanding advisory that this bump clears: GHSA-g6cj-pr64-35w5 / CVE-2026-69247 / PYSEC-2026-3552 (fixed_in: 50.0.0, verified against the PyPI JSON); 50.0.0 itself reports vulnerabilities: []. This is the only version change in the lock, the sdist sha256:eeac2acb…a6c9 (size 880201) matches PyPI exactly, and all 45 wheels come from files.pythonhosted.org. cryptography is transitive-only in pi_env (via authlib), so the major 49→50 jump has no direct API surface in this env.
| @@ -18,12 +18,12 @@ 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.
ALIGNMENT FLAG (Tier-2): unreviewed provenance flip. This is the first of 141 package source entries flipped from the HF-internal mirror (pypi.registries.huggingface.tech) to public pypi.org/simple — a side effect of the relock, not part of the cryptography bump. It's provenance-only (no artifact/hash changed) and actually aligns pi_env with echo_env + ~21 other envs already on public PyPI, but flipping the source of all 141 packages should be a conscious maintainer decision. Ref reproducibility principle (PRINCIPLES.md L15/L22). cc @Darktex, @burtenshaw.
| @@ -1,5 +1,5 @@ | |||
| version = 1 | |||
| revision = 2 | |||
| revision = 3 | |||
There was a problem hiding this comment.
Side effect + deploy heads-up. The relock also bumped the lockfile revision 2 → 3 (needs uv ≳ 0.8). pi_env/server/Dockerfile builds FROM openenv-base with uv sync --frozen, installing uv only if ! command -v uv — so if the base image's bundled uv predates ~0.8, a Space/Docker rebuild could fail on a rev-3 lock. Non-blocking (docker-build.yml isn't triggered by uv.lock, and other rev-3 envs deploy fine), but worth verifying the base image's uv. Separately, this PR reaching envs/pi_env despite exclude-paths: ["envs/**"] is expected for a security update (Dependabot security updates ignore exclude-paths — dependabot-core #14408). cc @burtenshaw.
|
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 49.0.0 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
Low Risk
Lockfile-only transitive dependency bump with no direct
cryptographyusage inpi_env; main review note is major-version behavior changes in crypto/X.509 parsing, not app logic changes.Overview
Bumps the resolved
cryptographypackage inenvs/pi_envfrom 49.0.0 to 50.0.0 (Dependabot), updatinguv.lockonly—no application code changes.50.0.0 includes a security fix for PKCS#7
encryptedKeydecryption (CVE-2026-69247), stricter X.509/OCSP parsing, and deprecation of finite-field Diffie-Hellman APIs.cryptographyis pulled in transitively (e.g. via Authlib);pi_envdoes not call it directly.Reviewed by Cursor Bugbot for commit 2ad04e6. Bugbot is set up for automated code reviews on this repo. Configure here.