-
Notifications
You must be signed in to change notification settings - Fork 19
Permalink
Choose a base ref
{{ refName }}
default
Choose a head ref
{{ refName }}
default
Comparing changes
Choose two branches to see what’s changed or to start a new pull request.
If you need to, you can also or
learn more about diff comparisons.
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also .
Learn more about diff comparisons here.
base repository: hermeticbuild/rules_rs
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.0.33
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
...
head repository: hermeticbuild/rules_rs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.0.34
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
- 7 commits
- 15 files changed
- 4 contributors
Commits on Feb 22, 2026
-
Suppress spurious version resolution warning for optional deps (#39)
## Summary - Fix stale `name` variable in warning print — it referenced the last package from a previous loop, not the package with the unresolvable dep - Only print a warning when version resolution fails for **non-optional** deps, which indicates a genuine problem - Skip the warning for optional deps behind disabled feature flags, since failing to resolve is expected behavior ## Context During version resolution, the code iterates all `possible_deps` (including optional ones) and attempts to resolve each dep's version against the lockfile. When an optional dependency's version requirement doesn't match any version in the lockfile, this is expected — the dep is behind a disabled feature flag and no crate in the workspace actually uses it at that version. For example, `serde_with 3.14.0` has three optional renamed deps on `schemars` at different versions ([source](https://github.com/jonasbb/serde_with/blob/v3.14.0/serde_with/Cargo.toml)): ```toml schemars_0_8 = { package = "schemars", version = "0.8.16", optional = true, default-features = false } schemars_0_9 = { package = "schemars", version = "0.9.0", optional = true, default-features = false } schemars_1 = { package = "schemars", version = "1.0.2", optional = true, default-features = false } ``` If the lockfile only contains `schemars` at versions `0.9.0` and `1.0.3` (used by other crates), the `schemars_0_8` dep's `^0.8.16` req correctly fails to resolve since `^0.8.16` means `>=0.8.16, <0.9.0`. Due to the stale `name` variable, this produced the misleading message: ``` DEBUG: .../extensions.bzl: zstd-sys schemars ["0.9.0", "1.0.3"] ^0.8.16 ``` The `name` variable was set in a previous loop (line 254) and never reassigned in the version resolution loop (line 415), so it always printed the last package from the first loop. With the name variable fix alone, the correct message would be: ``` WARNING: serde_with: could not resolve schemars ^0.8.16 among ["0.9.0", "1.0.3"] ``` But since this dep is optional and not enabled by any feature, it's not actionable. The existing `continue` already handles it correctly (the dep never gets a `bazel_target`, so the resolver skips it, and the post-resolution validation would `fail()` if any feature tried to activate it). So we suppress the warning for optional deps entirely. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 4.6 <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9050491 - Browse repository at this point
Copy the full SHA 9050491View commit details -
Configuration menu - View commit details
-
Copy full SHA for 70e47fb - Browse repository at this point
Copy the full SHA 70e47fbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4b561cb - Browse repository at this point
Copy the full SHA 4b561cbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 50d62cc - Browse repository at this point
Copy the full SHA 50d62ccView commit details -
Let me know what you think. Feel free to ignore / rewrite
Configuration menu - View commit details
-
Copy full SHA for a9b5d37 - Browse repository at this point
Copy the full SHA a9b5d37View commit details
Commits on Feb 23, 2026
-
Configuration menu - View commit details
-
Copy full SHA for 0c62b00 - Browse repository at this point
Copy the full SHA 0c62b00View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5f496fb - Browse repository at this point
Copy the full SHA 5f496fbView commit details
Loading
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v0.0.33...v0.0.34