-
Notifications
You must be signed in to change notification settings - Fork 572
Open
Labels
awaiting-responseMaintainers have responded to the pull-request or thread and now await contributor responses.Maintainers have responded to the pull-request or thread and now await contributor responses.bugdeterminism
Description
My project uses rules_rust. After periods of idleness, Bazel will take it upon itself to rebuild some of the rules_rust dependencies, even though nothing at all has been touched in my directory tree (even my own project sources).
Example:
❯ bazel test -c opt //...
INFO: Invocation ID: 64dd997d-3fa5-46e7-9db2-3f9a175663dc
INFO: Analyzed 7 targets (269 packages loaded, 9252 targets configured).
INFO: Found 5 targets and 2 test targets...
INFO: Writing explanation of rebuilds to 'explain.log'
INFO: Elapsed time: 13.249s, Critical Path: 11.57s
INFO: 211 processes: 232 action cache hit, 149 disk cache hit, 21 internal, 10 darwin-sandbox, 31 remote.
INFO: Build completed successfully, 211 total actions
//<some test> (cached) PASSED in 0.2s
wait one hour
❯ bazel test -c opt //...
INFO: Invocation ID: a1c7cee0-d065-4ea0-84cc-93ebcc3e3195
INFO: Analyzed 7 targets (0 packages loaded, 0 targets configured).
INFO: Found 5 targets and 2 test targets...
INFO: Writing explanation of rebuilds to 'explain.log'
INFO: Elapsed time: 9.635s, Critical Path: 7.51s
INFO: 20 processes: 3 action cache hit, 3 internal, 17 remote.
INFO: Build completed successfully, 20 total actions
//<some test> (cached) PASSED in 0.2s
explain.log:
Build options: --experimental_disk_cache_gc_max_size=20G --enable_platform_specific_config --disk_cache='~/Work/bazel-cache' --remote_default_exec_properties='OSFamily=macos' --remote_executor=grpc://remote_executor.local:50051 --internal_spawn_scheduler --spawn_strategy=dynamic --define='EXECUTOR=remote' --extra_toolchains=@local-remote-execution//rust:rust-aarch64-darwin --extra_execution_platforms=@local-remote-execution//platforms:aarch64-darwin --platforms=@local-remote-execution//platforms:aarch64-darwin --host_platform=@local-remote-execution//platforms:aarch64-darwin --action_env='DYLD_LIBRARY_PATH=/Users/user/.rustup/toolchains/nightly-2025-01-23-aarch64-apple-darwin/lib' --host_action_env='DYLD_LIBRARY_PATH=/Users/user/.rustup/toolchains/nightly-2025-01-23-aarch64-apple-darwin/lib' --reuse_sandbox_directories --verbose_failures --noincompatible_disallow_empty_glob --noworker_sandboxing --remote_instance_name=main --remote_cache=grpc://remote_executor.local:50051 --explain=explain.log --verbose_explanations --incompatible_strict_action_env --watchfs --experimental_windows_watchfs --color=yes --jobs=10000 --keep_going --remote_retries=10 --workspace_status_command=./bld/workspace_status.sh --stamp --aspects=@rules_rust//rust:defs.bzl%rust_clippy_aspect --output_groups=+clippy_checks --remote_timeout=600 --action_env='CARGO_PKG_NAME=mock' --action_env='CARGO_PKG_VERSION_PATCH=mock' --action_env='CARGO_PKG_VERSION_MAJOR=mock' --action_env='CARGO_PKG_VERSION_MINOR=mock' --action_env='CARGO_PKG_VERSION=mock2' --action_env='CARGO_PKG_AUTHORS=mock2' --action_env='CARGO_PKG_DESCRIPTION=mock3' --action_env='CARGO_PKG_HOMEPAGE=mock4' --action_env='CARGO_PKG_LICENSE=mock5' --action_env='CARGO_PKG_REPOSITORY=mock6' --action_env='RUSTDOC=mock7' --test_output=errors --test_verbose_timeout_warnings --action_env='RUST_BACKTRACE=1' --compilation_mode=opt
Executing action 'BazelWorkspaceStatusAction stable-status.txt': unconditional execution is requested.
Executing action 'Compiling Rust (without process_wrapper) rlib tinyjson (4 files) [for tool]': One of the files has changed.
Executing action 'Compiling Rust rlib cargo_build_script_runner (2 files) [for tool]': One of the files has changed.
Executing action 'Compiling Rust rlib unicode_ident v1.0.14 (11 files) [for tool]': One of the files has changed.
Executing action 'Compiling Rust rlib heck v0.5.0 (9 files) [for tool]': One of the files has changed.
Executing action 'Compiling Rust rlib autocfg v1.4.0 (15 files) [for tool]': One of the files has changed.
Executing action 'Compiling Rust bin _bs_ (17 files) [for tool]': One of the files has changed.
Executing action 'Compiling Rust bin _bs_ (17 files) [for tool]': One of the files has changed.
Executing action 'Compiling Rust rlib shlex v1.3.0 (2 files) [for tool]': One of the files has changed.
Executing action 'Compiling Rust rlib cc v1.2.10 (24 files) [for tool]': One of the files has changed.
Executing action 'Creating symlink external/rules_rust++crate+crates__proc-macro2-1.0.93/_bs- [for tool]': One of the files has changed.
Executing action 'Running Cargo build script proc-macro2 [for tool]': One of the files has changed.
Executing action 'Creating symlink external/rules_rust++crate+crates__semver-1.0.25/_bs- [for tool]': One of the files has changed.
Executing action 'Running Cargo build script semver [for tool]': One of the files has changed.
Executing action 'Compiling Rust rlib proc_macro2 v1.0.93 (17 files) [for tool]': One of the files has changed.
Executing action 'Compiling Rust rlib semver v1.0.25 (17 files) [for tool]': One of the files has changed.
Executing action 'Compiling Rust rlib quote v1.0.38 (16 files) [for tool]': One of the files has changed.
Executing action 'Compiling Rust rlib rustc_version v0.4.1 (2 files) [for tool]': One of the files has changed.
Executing action 'Compiling Rust rlib syn v2.0.96 (96 files) [for tool]': One of the files has changed.
Executing action 'Compiling Rust rlib synstructure v0.13.1 (2 files) [for tool]': One of the files has changed.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
awaiting-responseMaintainers have responded to the pull-request or thread and now await contributor responses.Maintainers have responded to the pull-request or thread and now await contributor responses.bugdeterminism