CM-70014: update dependencies (Aug 2026) - #514
Merged
Merged
Conversation
- marshmallow 3.26.2 -> 4.0.1 (capped <4.1.0; 4.1+ drops Python 3.9) - rich 13.9.4 -> 15.0.0 - gitpython 3.1.50 -> 3.1.57 (floor raised to 3.1.51) - pyinstaller 6.20.0 -> 6.21.0 - poetry.lock refreshed (7-day solver cooldown) GitPython only inverts the `R` flag when diffing the index against HEAD, not against the empty tree, so pre-commit scans of a repository with no commits yet sent staged content as removed lines. Centralize the diff in get_staged_diff_index() so both call sites get a patch oriented with staged content as additions, and assert that orientation in tests. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Claude Code Review
This repository is configured for manual code reviews. Comment @claude review for a one-time review, or @claude review always to subscribe this PR to a review on every future push.
Tip: disable this comment in your organization's Code Review settings.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Applies the four open Dependabot bumps in one change, plus a lock refresh, and fixes the one real regression they surfaced.
>=4.0.1,<4.1.0— 4.1+ requires Python >= 3.10>=15.0.0,<16.0.0>=3.1.51Supersedes #508 (marshmallow), #503 (gitpython), #488 (pyinstaller), #446 (rich).
Lock refresh
poetry updatewithin the existing constraints — no widening. The 7-day cooldown is enforced by the solver (poetry.toml[solver] min-release-age = 7), which correctly heldmcpat 1.28.1. No downgrades.poetry locksplit several transitives at apython_version < "3.14"boundary so 3.14 gets newer releases while 3.9–3.13 stay put.marshmallow 4 pulls in a new compiled transitive,
backports-datetime-fromisoformat, on Python < 3.11. cp39/cp310 wheels exist for macOS (arm64/x86_64/universal2), manylinux, musllinux and win_amd64, so every CI matrix cell is covered without building from source.GitPython fix
GitPython only inverts the
Rflag when diffing the index against HEAD, not against the empty tree. Both pre-commit call sites passedR=Trueunconditionally, so scanning a repository with no commits yet produced a reversed patch — staged content sent to Cycode as removed lines instead of added lines.Centralized in
get_staged_diff_index()so both call sites get a consistently oriented patch, with the orientation now asserted in tests (the old assertions only checkedb_path).Verification
test_mcp_command.py— MCP requires 3.10+)pyinstaller.specbuild +cycode-cli versionOKruff checkandruff format --checkclean. marshmallow 4 and rich 15 needed no code changes; rich-sensitive paths tests don't cover (typer help/error panels, theCycodeHeadingmarkdown patch, emoji shortcodes, the progress bar's custom task field,export_html/export_svg) were smoke-tested manually.🤖 Generated with Claude Code