Skip to content

Bump dependencies and add Python 3.14 support#418

Open
jvanderaa wants to merge 3 commits into
developfrom
chore/dependency-bumps-2026-05
Open

Bump dependencies and add Python 3.14 support#418
jvanderaa wants to merge 3 commits into
developfrom
chore/dependency-bumps-2026-05

Conversation

@jvanderaa
Copy link
Copy Markdown
Contributor

@jvanderaa jvanderaa commented May 11, 2026

Closes #415.

Summary

  • Bumped click, coverage, mkdocs-redirects, netconan, pylint, ruff, and CI action pins (actions/checkout, docker/setup-buildx-action, pypa/gh-action-pypi-publish).
  • Added Python 3.14 to the supported version range in pyproject.toml and to the check-in-docker and pytest matrices in CI.
  • Removed a trailing indentation-flagged comment in release.yml.

Security

Resolved five open Dependabot advisories by pinning minimum versions in pyproject.toml:

  • lxml >=6.1.0 (XXE in iterparse default configuration)
  • urllib3 >=2.7.0 (sensitive-header forwarding on proxied redirects; decompression-bomb safeguard bypass)
  • requests >=2.33.0 (insecure temp file reuse in extract_zipped_paths)
  • pygments >=2.20.0 (ReDoS in GUID regex matching)

Bumped click, coverage, mkdocs-redirects, netconan, pylint, and ruff,
along with CI action pins (actions/checkout, docker/setup-buildx-action,
pypa/gh-action-pypi-publish). Added Python 3.14 to the supported version
range, expanded the CI matrices to cover it, and removed an
indentation-flagged trailing comment in release.yml.
jvanderaa added 2 commits May 11, 2026 14:46
Resolved five open Dependabot advisories by adding minimum-version
constraints to pyproject.toml so Poetry resolves transitive deps to
patched releases:

- lxml >=6.1.0 (XXE in iterparse default configuration)
- urllib3 >=2.7.0 (sensitive-header forwarding on proxied redirects;
  decompression-bomb safeguard bypass)
- requests >=2.33.0 (insecure temp file reuse in extract_zipped_paths)
- pygments >=2.20.0 (ReDoS in GUID regex matching)

Regenerated poetry.lock; only the four flagged packages changed.
- Added build-essential to the Dockerfile so transitive deps lacking
  cp3xx wheels can be source-built (relevant for the newest Python).
- Added `numpy` as a direct dependency with Python-version markers
  so 3.11+ pulls numpy >=2.3 (with cp314 wheels) while 3.10 stays on
  the 2.2 line; this lets one lock resolve across the full supported
  range, including Python 3.14.
- Bumped cffi (1.17 -> 2.0) so 3.14 uses the wheel-supported line
  rather than source-compiling.
- Bumped pymdown-extensions (10.21 -> 10.21.2) to fix a None-filename
  regression with pygments 2.20.0 that broke `dev/extending.md`
  during docs build.
- Held mkdocs-redirects at 1.2.2; 1.2.3 introduced a transitive
  dependency on the properdocs fork, which deserves separate
  evaluation before adoption.
- Verified locally: full pytest suite passes on Python 3.14.4 inside
  a fresh image, and `invoke build-and-check-docs` succeeds.
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.

Update library dependencies

1 participant