Skip to content

Commit 77debd7

Browse files
fix: Pin crc-fast to 1.3.0 to avoid unstable feature requirements
The crc-fast crate version 1.6.0+ requires unstable Rust features (stdarch_x86_avx512) which causes build failures in CI. This commit: - Pins crc-fast to =1.3.0 (last stable version without unstable features) - Updates Cargo.lock accordingly (downgrades from 1.6.0 -> 1.3.0) - Adds crc-fast to cargo-machete ignored list (it's a transitive dependency) - Fixes warning in simple_scheduler.rs about unused Result from worker_lease.release() Fixes the following CI failures: - coverage/ (Nix build failure) - publish-image/ (Docker image build failure) - asan-ubuntu-24/ (ASAN test failure) All failures were due to: error[E0658]: use of unstable library feature `stdarch_x86_avx512` See: rust-lang/rust#111137
1 parent 94924a0 commit 77debd7

File tree

3 files changed

+23
-9
lines changed

3 files changed

+23
-9
lines changed

Cargo.lock

Lines changed: 8 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@ name = "nativelink"
1313
rust-version = "1.87.0"
1414
version = "0.7.6"
1515

16+
[package.metadata.cargo-machete]
17+
ignored = ["crc-fast"]
18+
1619
[profile.release]
1720
lto = true
1821

@@ -74,6 +77,10 @@ tonic = { version = "0.13.0", features = [
7477
tower = { version = "0.5.2", default-features = false }
7578
tracing = { version = "0.1.41", default-features = false }
7679

80+
# Pin crc-fast to avoid unstable features in 1.6.0+
81+
# See: https://github.com/rust-lang/rust/issues/111137
82+
crc-fast = { version = "=1.3.0", default-features = false }
83+
7784
[workspace.cargo-features-manager.keep]
7885
async-lock = ["std"]
7986
aws-sdk-s3 = ["rt-tokio"]

nativelink-scheduler/src/simple_scheduler.rs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -373,11 +373,17 @@ impl SimpleScheduler {
373373
return Ok(());
374374
}
375375
// Release worker lease and return error
376-
let _ = worker_lease
376+
if let Err(release_err) = worker_lease
377377
.release(
378378
nativelink_crio_worker_pool::WorkerOutcome::Failed,
379379
)
380-
.await;
380+
.await
381+
{
382+
tracing::warn!(
383+
?release_err,
384+
"Failed to release worker lease after assignment failure"
385+
);
386+
}
381387
return Err(err);
382388
}
383389

0 commit comments

Comments
 (0)