Skip to content

v3.0.2: resolve Dependabot alerts, pin Docker Python to 3.12 - #115

Merged
ibehren1 merged 3 commits into
masterfrom
deps/dependabot-werkzeug-urllib3
Oct 16, 2026
Merged

ibehren1 merged 3 commits into
masterfrom
deps/dependabot-werkzeug-urllib3

Conversation

@ibehren1

Copy link
Copy Markdown
Owner

Summary

Dependabot alerts (3.0.0 → 3.0.1)

  • werkzeug 3.1.6 → 3.1.9 — v1.1.0 #21, safe_join() accepted Windows special device names. Floor raised to >=3.1.9.
  • urllib3 2.7.0 → 2.8.0 — Project name and trademark usage #20, chunked deflate streaming could loop forever. Floor raised to >=2.8.0.
  • paramiko 4.0.0 → 5.0.0 (lock only) — V0.9.0 #13, SHA-1 allowed in RSA signing. The advisory lists no patched version; 5.0.0 removes SHA-1 RSA signatures and SHA-1 key exchange.

Docker build fix (3.0.1 → 3.0.2)

  • The base image has no python3, so uv sync pulled the newest managed CPython (3.15.0). Locked cffi 2.0.0 has no cp315 wheel and the image has no compiler, so the build failed. ENV UV_PYTHON=3.12 now pins it to match CI and local development.
  • The pin is in the Dockerfile rather than .python-version, because pyenv also reads that file and it changed the host python3 that scripts/build.sh uses.

Process

  • CLAUDE.md: every commit that changes code bumps the patch version, in the same commit. Docs-only commits do not bump.

Upgrade impact

paramiko 5 also drops GSSAPI and group-exchange moduli under 2048 bits. A device whose SSH server offers only SHA-1 algorithms will no longer connect. Current VyOS ships OpenSSH with SHA-2.

Testing

  • pytest: 744 passed. bandit: no new findings.
  • Image built locally (arm64); runs Python 3.12.15 and imports the napalm VyOS driver.
  • Push and diff tested by hand against a device with paramiko 5 and napalm-vyos.

- werkzeug 3.1.6 -> 3.1.9 (alert #21: safe_join() accepted Windows
  special device names). Floor raised to >=3.1.9.
- urllib3 2.7.0 -> 2.8.0 (alert #20: chunked deflate streaming could
  loop forever). Floor raised to >=2.8.0.
- paramiko 4.0.0 -> 5.0.0 in uv.lock (alert #13: SHA-1 allowed in RSA
  signing). The advisory lists no patched version; 5.0.0 removes SHA-1
  RSA signatures and SHA-1 key exchange.

paramiko 5 also drops GSSAPI and group-exchange moduli under 2048 bits.
Devices whose SSH server offers only SHA-1 algorithms will no longer
connect; current VyOS ships OpenSSH with SHA-2. Push and diff were
tested against a device with paramiko 5 and napalm-vyos.

Version 3.0.0 -> 3.0.1.
The base image has no python3, so `uv sync` downloaded the newest
managed CPython, now 3.15.0. The locked cffi 2.0.0 has no cp315 wheel
and the image has no compiler, so the build failed. ENV UV_PYTHON=3.12
matches CI and local development.

The pin lives in the Dockerfile rather than a .python-version file
because pyenv also reads .python-version, which switched the host's
python3 used by scripts/build.sh (and its toml/coverage) to a different
interpreter.

Version 3.0.1 -> 3.0.2.
Every commit that changes code, dependencies, templates, static assets,
Docker or Helm files bumps z in x.y.z relative to its parent commit, in
the same commit as the change. Docs-only commits do not bump. Lists the
three files a bump touches (pyproject.toml, .version, uv.lock).
@ibehren1 ibehren1 self-assigned this Oct 16, 2026
@ibehren1
ibehren1 merged commit 6b9670e into master Oct 16, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant