Skip to content
Permalink

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
Choose a base ref
...
head repository: hermeticbuild/rules_rs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.0.34
Choose a head ref
  • 7 commits
  • 15 files changed
  • 4 contributors

Commits on Feb 22, 2026

  1. 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]>
    gregmagolan and claude authored Feb 22, 2026
    Configuration menu
    Copy the full SHA
    9050491 View commit details
    Browse the repository at this point in the history
  2. Update README

    dzbarsky committed Feb 22, 2026
    Configuration menu
    Copy the full SHA
    70e47fb View commit details
    Browse the repository at this point in the history
  3. Bump llvm module

    dzbarsky committed Feb 22, 2026
    Configuration menu
    Copy the full SHA
    4b561cb View commit details
    Browse the repository at this point in the history
  4. Add windows gnullvm 3p deps

    dzbarsky committed Feb 22, 2026
    Configuration menu
    Copy the full SHA
    50d62cc View commit details
    Browse the repository at this point in the history
  5. README updates (#41)

    Let me know what you think. Feel free to ignore / rewrite
    cerisier authored Feb 22, 2026
    Configuration menu
    Copy the full SHA
    a9b5d37 View commit details
    Browse the repository at this point in the history

Commits on Feb 23, 2026

  1. Add rules_py to users

    dzbarsky committed Feb 23, 2026
    Configuration menu
    Copy the full SHA
    0c62b00 View commit details
    Browse the repository at this point in the history
  2. Bump toml2json

    dzbarsky committed Feb 23, 2026
    Configuration menu
    Copy the full SHA
    5f496fb View commit details
    Browse the repository at this point in the history
Loading