Skip to content

chore(deps): upgrade Python dependencies to latest versions - #10

Merged
jmlweb merged 1 commit into
mainfrom
hustle/maintainer/upgrade-2026-10-29
Oct 29, 2026
Merged

jmlweb merged 1 commit into
mainfrom
hustle/maintainer/upgrade-2026-10-29

Conversation

@jmlweb

@jmlweb jmlweb commented Oct 29, 2026

Copy link
Copy Markdown
Owner

Summary

This repo is a Python project with no package.json, so npm-check-updates had nothing to check. I upgraded the dependencies with uv, the repo's package manager: uv lock --upgrade, then uv sync --extra dev. I also raised the >= floors in pyproject.toml, requirements.txt and requirements-dev.txt to the locked versions, and bumped the pre-commit hook revisions.

The project has no Node runtime (no .nvmrc, .node-version, engines or CI node matrix), so no Node changes were needed. The repo has no .github/dependabot.yml, and this PR does not create one.

Upgrades

Direct dependencies (versions locked in uv.lock):

  • PyYAML from 6.0.3 to 6.0.3 (lock unchanged; floor raised from 6.0.1)
  • requests from 2.32.5 to 2.34.2
  • pytest from 9.0.2 to 9.2.0
  • pytest-mock from 3.15.1 to 3.17.0
  • coverage from 7.13.1 to 7.17.0
  • ruff from 0.14.13 to 0.17.3
  • mypy from 1.19.1 to 2.4.1 (major)
  • pre-commit from 4.5.1 to 4.7.0
  • types-PyYAML from 6.0.12.20250915 to 6.0.12.20260906
  • types-requests from 2.32.4.20260107 to 2.33.0.20261006

Pre-commit hooks (.pre-commit-config.yaml):

  • astral-sh/ruff-pre-commit from v0.14.0 to v0.17.3
  • pre-commit/mirrors-mypy from v1.15.0 to v2.4.0 (the latest mirror tag)

Transitive dependencies (lockfile only):

  • certifi from 2026.1.4 to 2026.10.23
  • charset-normalizer from 3.4.4 to 3.5.2
  • distlib from 0.4.0 to 0.4.4
  • filelock from 3.20.3 to 4.2.4 (major)
  • identify from 2.6.16 to 2.6.20
  • idna from 3.11 to 3.20
  • iniconfig from 2.3.0 to 2.3.1
  • librt from 0.7.8 to 0.16.0
  • nodeenv from 1.10.0 to 1.11.0
  • packaging from 26.0 to 26.3
  • pathspec from 1.0.3 to 1.1.1
  • platformdirs from 4.5.1 to 4.14.0
  • pluggy from 1.6.0 to 1.7.0
  • pygments from 2.19.2 to 2.21.0
  • typing-extensions from 4.15.0 to 4.16.0
  • urllib3 from 2.6.3 to 2.8.0
  • virtualenv from 20.36.1 to 21.15.1 (major)
  • ast-serialize 0.13.1 and python-discovery 1.6.7 are new (pulled in by the upgraded tools)

Breaking changes and adaptations

  • ruff 0.17 now formats Markdown code blocks. ruff format . wanted to rewrite code snippets in 13 .md files (AGENTS.md, docs/dev/**, .claude/commands/**). I added [tool.ruff.format] exclude = ["*.md"] to pyproject.toml, which keeps formatting scoped to Python files as before. ruff check passes with no new findings.
  • ruff-pre-commit renamed the ruff hook id to ruff-check (ruff is now a "legacy alias"). I renamed it in .pre-commit-config.yaml.
  • mypy 2.x passes with no code changes: mypy --ignore-missing-imports webstatuspi reports no issues in 21 source files.
  • filelock 4 and virtualenv 21 are only used by pre-commit, and pre-commit runs fine with them. No code changes were needed.

Verification (local, Python 3.11)

  • ruff check webstatuspi tests (the CI lint step): passed
  • mypy --ignore-missing-imports webstatuspi: no issues
  • pytest: 521 passed
  • pre-commit run --all-files: ruff-check and mypy pass. ruff-format reports one existing issue in tests/test_config.py, which ruff 0.14 also reports on main. I left that file untouched.

🤖 Generated with Claude Code

Refresh uv.lock with `uv lock --upgrade`, raise the minimum versions in
pyproject.toml and requirements files to the locked versions, and bump
the pre-commit hook revisions for ruff and mypy.

Ruff 0.17 formats Markdown code blocks, so restrict `ruff format` to
Python files and rename the deprecated `ruff` pre-commit hook id to
`ruff-check`.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@jmlweb

jmlweb commented Oct 29, 2026

Copy link
Copy Markdown
Owner Author

🤖 hustle review: approve — Config, hook rename, ruff Markdown-format exclusion and dependency floors are consistent with the description and the locked versions; the lockfile is routine, though its tail was truncated in the diff, so CI must be green.

@jmlweb
jmlweb merged commit d6f6614 into main Oct 29, 2026
5 checks 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