chore(deps): stop dependabot reopening the unbuildable get-size2 bump - #2386
Merged
Merged
Conversation
`get-size2` is not a dependency bashkit uses — no bashkit source
references it. It is declared under the `python` feature purely to hold
the whole graph at 0.10.1, the last version implementing `GetSize` for
compact_str 0.9. monty 0.0.19's `ruff_python_ast` derives
`get_size2::GetSize` on nodes holding a compact_str 0.9 `CompactString`,
so any get-size2 >= 0.10.2 (which moved those impls to compact_str 0.10)
leaves the derive with no impl.
Bumping the declared version does not just fail to help — it removes the
constraint keeping ruff's copy pinned, letting it float to 0.10.3:
error[E0277]: the trait bound `CompactString: GetSize` is not satisfied
--> ruff_python_ast-0.0.3/src/nodes.rs:411:41
note: there are multiple different versions of crate `compact_str`
That is #2381, red across all 22 build jobs. Without an ignore entry
dependabot reopens it every week, the same failure mode the `monty` and
`num-bigint` entries above already document.
Ignored outright rather than by update-type, because the breaking move
was a patch release. Drop it once monty's ruff moves to compact_str 0.10.
Config and comments only; the pin itself is unchanged.
Claude-Session: https://claude.ai/code/session_014CLqD3xrcs1G5decN6uNcQ
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
bashkit | f03e23a | Commit Preview URL Branch Preview URL |
Sep 07 2026, 10:29 AM |
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.
What changed
Adds
get-size2to the cargoignore:list in.github/dependabot.yml, and expands the pin comment incrates/bashkit/Cargo.tomlto say why the pin exists and to point at the ignore.Config and comments only — the pin itself (
get-size2 = { version = "=0.10.1" }) is unchanged, and no lockfile moves.Why
get-size2is not a dependency bashkit uses; no bashkit source references it. It is declared under thepythonfeature purely to hold the whole graph at 0.10.1, the last version that implementsGetSizeforcompact_str0.9. monty 0.0.19'sruff_python_astderivesget_size2::GetSizeon nodes holding aCompactStringfrom compact_str 0.9, so any get-size2 >= 0.10.2 — which moved those impls to compact_str 0.10 — leaves the derive with no impl.The subtlety that makes an ignore the right tool: bumping bashkit's declared version does not just fail to help, it removes the constraint that keeps ruff's copy pinned. #2381 shows the result — the lockfile floats ruff to get-size2 0.10.3 while ruff keeps compact_str 0.9.1:
All 22 build jobs on #2381 are red. Without an ignore, Dependabot reopens that same unbuildable PR every week — the identical failure mode the
monty,monty-typesandnum-bigintentries directly above already exist to prevent (the config's own comment notes #2296/#2297 for monty).Ignored outright rather than by
update-types, because the breaking move was a patch release (0.10.1 → 0.10.2); a semver-major/minor filter would not catch it.Before / After
Before — Dependabot proposes
=0.10.1→=0.11.0weekly, CI goes red across the board, the PR is closed, and it returns the following week.After — no
get-size2PR is opened. The constraint and its reason are documented in both places a reader lands: next to the dep, and next to the ignore.Verified the config still parses and the manifest is unaffected:
Risk
montyignore uses.Checklist
cargo metadataCloses #2381.
https://claude.ai/code/session_014CLqD3xrcs1G5decN6uNcQ
Generated by Claude Code