diff --git a/CHANGELOG.md b/CHANGELOG.md index 51b53f22ab..3ab7c7d1e8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,53 @@ All notable changes to this project will be documented in this file. +## [1.8.0](https://github.com/TraceMachina/nativelink/compare/v1.7.7..v1.8.0) - 2026-10-20 + + + +### โ›ฐ๏ธ Features + +- Bound object store reads with an adaptive permit pool, Azure first ([#2941](https://github.com/TraceMachina/nativelink/issues/2941)) - ([3e3237c](https://github.com/TraceMachina/nativelink/commit/3e3237cd8371e56f1d62ca65b1cbc8b6a75fa758)) +- add option to mount cached input directories as read-only ([#2751](https://github.com/TraceMachina/nativelink/issues/2751)) - ([786c2c2](https://github.com/TraceMachina/nativelink/commit/786c2c2f0da02711e2b632ab0a19524a2a953f9d)) +- Bound a worker's input fetches with one pool across the actions it stages ([#2952](https://github.com/TraceMachina/nativelink/issues/2952)) - ([23b4472](https://github.com/TraceMachina/nativelink/commit/23b4472a09ea1467708e5980b8ae846a9542625f)) +- Grow and jitter consecutive throttle waits in the retrier ([#2939](https://github.com/TraceMachina/nativelink/issues/2939)) - ([23e76a8](https://github.com/TraceMachina/nativelink/commit/23e76a8ab132b4940bba4b3fa02f9f07a0418aba)) + +### ๐Ÿ› Bug Fixes + +- *(evicting_map)* stop has() batch from cascading-evicting every queried blob ([#2840](https://github.com/TraceMachina/nativelink/issues/2840)) - ([56085a4](https://github.com/TraceMachina/nativelink/commit/56085a463f6ec417f025239a6733b6ebbfdca973)) +- *(remote-exec)* handle scheduling edge cases and output flush ([#1533](https://github.com/TraceMachina/nativelink/issues/1533)) ([#2963](https://github.com/TraceMachina/nativelink/issues/2963)) - ([1b9362d](https://github.com/TraceMachina/nativelink/commit/1b9362d1f58665ba035cdfea479f88415b9cf3be)) +- Report the digest size from the compression store has, not the compressed one ([#2960](https://github.com/TraceMachina/nativelink/issues/2960)) - ([a1e6efb](https://github.com/TraceMachina/nativelink/commit/a1e6efb55d9ba0af3cd1b33ce0bdef6788383d96)) +- Reject incomplete CAS uploads before publishing blobs ([#2974](https://github.com/TraceMachina/nativelink/issues/2974)) - ([086289a](https://github.com/TraceMachina/nativelink/commit/086289a0639b46f4973f235532c056ebab628ebe)) +- Reconnect and retry the Redis length check after a failover ([#2961](https://github.com/TraceMachina/nativelink/issues/2961)) - ([11dc077](https://github.com/TraceMachina/nativelink/commit/11dc07771261c45791ce9e25495ad1ab892c563c)) +- Discard the blocks a failed Azure upload left staged ([#2969](https://github.com/TraceMachina/nativelink/issues/2969)) - ([2966660](https://github.com/TraceMachina/nativelink/commit/29666603725f5e185f9b513f29e26dce0d783c20)) +- Forward cache removal through CacheMetricsStore ([#2968](https://github.com/TraceMachina/nativelink/issues/2968)) - ([7abc434](https://github.com/TraceMachina/nativelink/commit/7abc434b887790b97f4eedd0253290fa9b313941)) +- Preserve retryable failures in CAS uploads ([#2966](https://github.com/TraceMachina/nativelink/issues/2966)) - ([94c86c0](https://github.com/TraceMachina/nativelink/commit/94c86c0715079363dd9c6c233d7fcfd5b32d7cd2)) +- Return Unavailable when resuming an active ByteStream upload ([#2889](https://github.com/TraceMachina/nativelink/issues/2889)) - ([a55baad](https://github.com/TraceMachina/nativelink/commit/a55baad786fceb487e06927039db327502c799d4)) +- Count the fast store toward presence when the slow store is read-only ([#2959](https://github.com/TraceMachina/nativelink/issues/2959)) - ([bd87f4d](https://github.com/TraceMachina/nativelink/commit/bd87f4d6f982c46ec2272c85aa614fac665cd659)) +- Reduce matcher contention after lost assignments ([#2954](https://github.com/TraceMachina/nativelink/issues/2954)) - ([8431150](https://github.com/TraceMachina/nativelink/commit/843115085cd746664d10fecd9838a29394891b54)) +- Write every upload through the existence cache instead of discarding one it believes present ([#2951](https://github.com/TraceMachina/nativelink/issues/2951)) - ([d05d910](https://github.com/TraceMachina/nativelink/commit/d05d910fe750e9ba9f0f1f160db464fa7244c1b5)) +- propagate completeness backend errors instead of swallowing them ([#2815](https://github.com/TraceMachina/nativelink/issues/2815)) - ([7149987](https://github.com/TraceMachina/nativelink/commit/7149987fc5c51e62ce68ff134f0a674430af05ea)) +- close two subscription-lifecycle windows that silently drop events ([#2839](https://github.com/TraceMachina/nativelink/issues/2839)) - ([89ea706](https://github.com/TraceMachina/nativelink/commit/89ea706c34b440d02ded72fef602c3649187d5d5)) +- map transport-originated Unknown to retryable Unavailable ([#2816](https://github.com/TraceMachina/nativelink/issues/2816)) - ([0cd82ff](https://github.com/TraceMachina/nativelink/commit/0cd82fffc2dc9de9e213bf5d754fb05fd2cbf9d5)) + +### ๐Ÿ“š Documentation + +- Correct various metric links ([#2977](https://github.com/TraceMachina/nativelink/issues/2977)) - ([f66c65c](https://github.com/TraceMachina/nativelink/commit/f66c65c14f16f2d7f732294c8c119d59f6965fb3)) + +### ๐Ÿงช Testing & CI + +- run Bazel Native nightly and on merge, not on every PR ([#2880](https://github.com/TraceMachina/nativelink/issues/2880)) - ([616c315](https://github.com/TraceMachina/nativelink/commit/616c315b6a16d1d786a93db0e9addda3ac244a23)) +- Split rbe-toolchain test into generate and test ([#2964](https://github.com/TraceMachina/nativelink/issues/2964)) - ([6a52a66](https://github.com/TraceMachina/nativelink/commit/6a52a6681eebcec1e30754ae14043949a48627fc)) +- defer cargo, integration, and coverage lanes to nightly ([#2877](https://github.com/TraceMachina/nativelink/issues/2877)) - ([34da49a](https://github.com/TraceMachina/nativelink/commit/34da49a443ce7c796da05177a347e4174996b9c4)) + +### โฌ†๏ธ Bumps & Version Updates + +- Fix vulnerable dependencies in fuzzing, Azurite, and web tooling ([#2965](https://github.com/TraceMachina/nativelink/issues/2965)) - ([c788277](https://github.com/TraceMachina/nativelink/commit/c788277abfd5b7571cb19d080ae86e8ddcc95a2b)) +- Update Rust crate zip to v9 [SECURITY] ([#2956](https://github.com/TraceMachina/nativelink/issues/2956)) - ([d5f7f9b](https://github.com/TraceMachina/nativelink/commit/d5f7f9b188f59e0284dc9d6952ac894b9722303e)) +- Update renovate.json5 ([#2950](https://github.com/TraceMachina/nativelink/issues/2950)) - ([5186112](https://github.com/TraceMachina/nativelink/commit/518611285ced0c0889c9d1b19abcdee7e16ea497)) +- Update Rust crate rustls to v0.23.46 [SECURITY] ([#2938](https://github.com/TraceMachina/nativelink/issues/2938)) - ([f798fa1](https://github.com/TraceMachina/nativelink/commit/f798fa160f78225f059996f945d73334cfa0dcd1)) +- Upgrade curl to 8.5.0-2ubuntu10.16 ([#2942](https://github.com/TraceMachina/nativelink/issues/2942)) - ([8bf6be1](https://github.com/TraceMachina/nativelink/commit/8bf6be139660bab7310b88129629c1fd78ccb8be)) + ## [1.7.7](https://github.com/TraceMachina/nativelink/compare/v1.7.6..v1.7.7) - 2026-10-14 diff --git a/Cargo.lock b/Cargo.lock index 40140853bf..1f9474622e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2932,7 +2932,7 @@ checksum = "1d87ecb2933e8aeadb3e3a02b828fed80a7528047e68b4f424523a0981a3a084" [[package]] name = "nativelink" -version = "1.7.7" +version = "1.8.0" dependencies = [ "async-lock", "axum", @@ -2963,7 +2963,7 @@ dependencies = [ [[package]] name = "nativelink-config" -version = "1.7.7" +version = "1.8.0" dependencies = [ "byte-unit", "humantime", @@ -2982,7 +2982,7 @@ dependencies = [ [[package]] name = "nativelink-error" -version = "1.7.7" +version = "1.8.0" dependencies = [ "base64 0.22.1", "mongodb", @@ -3006,7 +3006,7 @@ dependencies = [ [[package]] name = "nativelink-macro" -version = "1.7.7" +version = "1.8.0" dependencies = [ "proc-macro2", "quote", @@ -3015,7 +3015,7 @@ dependencies = [ [[package]] name = "nativelink-metric" -version = "1.7.7" +version = "1.8.0" dependencies = [ "async-lock", "nativelink-metric-macro-derive", @@ -3026,7 +3026,7 @@ dependencies = [ [[package]] name = "nativelink-metric-macro-derive" -version = "1.7.7" +version = "1.8.0" dependencies = [ "proc-macro2", "quote", @@ -3035,7 +3035,7 @@ dependencies = [ [[package]] name = "nativelink-proto" -version = "1.7.7" +version = "1.8.0" dependencies = [ "derive_more 2.1.0", "prost", @@ -3047,7 +3047,7 @@ dependencies = [ [[package]] name = "nativelink-redis-tester" -version = "1.7.7" +version = "1.8.0" dependencies = [ "either", "nativelink-util", @@ -3060,7 +3060,7 @@ dependencies = [ [[package]] name = "nativelink-scheduler" -version = "1.7.7" +version = "1.8.0" dependencies = [ "async-lock", "async-trait", @@ -3097,7 +3097,7 @@ dependencies = [ [[package]] name = "nativelink-service" -version = "1.7.7" +version = "1.8.0" dependencies = [ "async-lock", "async-trait", @@ -3141,7 +3141,7 @@ dependencies = [ [[package]] name = "nativelink-store" -version = "1.7.7" +version = "1.8.0" dependencies = [ "async-lock", "async-trait", @@ -3222,7 +3222,7 @@ dependencies = [ [[package]] name = "nativelink-util" -version = "1.7.7" +version = "1.8.0" dependencies = [ "anyhow", "async-trait", @@ -3285,7 +3285,7 @@ dependencies = [ [[package]] name = "nativelink-worker" -version = "1.7.7" +version = "1.8.0" dependencies = [ "async-lock", "async-trait", diff --git a/Cargo.toml b/Cargo.toml index a1bb55bc9e..0f20bfb61f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,7 +11,7 @@ resolver = "2" edition = "2024" name = "nativelink" rust-version = "1.97.1" -version = "1.7.7" +version = "1.8.0" [profile.release] lto = true diff --git a/MODULE.bazel b/MODULE.bazel index 01772065aa..1eeddbaf21 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -1,6 +1,6 @@ module( name = "nativelink", - version = "1.7.7", + version = "1.8.0", ) bazel_dep(name = "rules_cc", version = "0.2.22") diff --git a/cliff.toml b/cliff.toml index 9746087317..e44bc7708b 100644 --- a/cliff.toml +++ b/cliff.toml @@ -78,6 +78,31 @@ commit_parsers = [ # Custom rules for specific commits. + # v1.8.0: pinned by subject, since their bodies trip the generic word rules. + { message = "Bound a worker's input fetches with one pool across the actions it stages", group = "โ›ฐ๏ธ Features" }, + { message = "Bound object store reads with an adaptive permit pool", group = "โ›ฐ๏ธ Features" }, + { message = "Correct various metric links", group = "๐Ÿ“š Documentation" }, + { message = "Count the fast store toward presence when the slow store is read-only", group = "๐Ÿ› Bug Fixes" }, + { message = "Discard the blocks a failed Azure upload left staged", group = "๐Ÿ› Bug Fixes" }, + { message = "Fix vulnerable dependencies in fuzzing, Azurite, and web tooling", group = "โฌ†๏ธ Bumps & Version Updates" }, + { message = "Forward cache removal through CacheMetricsStore", group = "๐Ÿ› Bug Fixes" }, + { message = "Grow and jitter consecutive throttle waits in the retrier", group = "โ›ฐ๏ธ Features" }, + { message = "Preserve retryable failures in CAS uploads", group = "๐Ÿ› Bug Fixes" }, + { message = "Reconnect and retry the Redis length check after a failover", group = "๐Ÿ› Bug Fixes" }, + { message = "Reduce matcher contention after lost assignments", group = "๐Ÿ› Bug Fixes" }, + { message = "Reject incomplete CAS uploads before publishing blobs", group = "๐Ÿ› Bug Fixes" }, + { message = "Report the digest size from the compression store has", group = "๐Ÿ› Bug Fixes" }, + { message = "Return Unavailable when resuming an active ByteStream upload", group = "๐Ÿ› Bug Fixes" }, + { message = "Write every upload through the existence cache", group = "๐Ÿ› Bug Fixes" }, + { message = "add option to mount cached input directories as read-only", group = "โ›ฐ๏ธ Features" }, + { message = "batch from cascading-evicting every queried blob", group = "๐Ÿ› Bug Fixes" }, + { message = "close two subscription-lifecycle windows that silently drop events", group = "๐Ÿ› Bug Fixes" }, + { message = "handle scheduling edge cases and output flush", group = "๐Ÿ› Bug Fixes" }, + { message = "map transport-originated Unknown to retryable Unavailable", group = "๐Ÿ› Bug Fixes" }, + { message = "propagate completeness backend errors instead of swallowing them", group = "๐Ÿ› Bug Fixes" }, + # #2881 and its revert #2953 cancel out; one rule skips both. + { message = "Reject short and torn uploads in ByteStream and FilesystemStore", skip = true }, + # v1.7.7: pinned by subject, since their bodies trip the generic word rules. { message = "Clear a read-only tree without changing the mode", group = "๐Ÿ› Bug Fixes" }, { message = "Count retries, recoveries and exhausted retries per client", group = "โ›ฐ๏ธ Features" }, diff --git a/nativelink-config/Cargo.toml b/nativelink-config/Cargo.toml index 1f76dbc502..2d7aad78e4 100644 --- a/nativelink-config/Cargo.toml +++ b/nativelink-config/Cargo.toml @@ -4,7 +4,7 @@ lints.workspace = true [package] edition = "2024" name = "nativelink-config" -version = "1.7.7" +version = "1.8.0" [dependencies] nativelink-error = { path = "../nativelink-error" } diff --git a/nativelink-error/Cargo.toml b/nativelink-error/Cargo.toml index 75e54b9150..f24f00f863 100644 --- a/nativelink-error/Cargo.toml +++ b/nativelink-error/Cargo.toml @@ -8,7 +8,7 @@ autoexamples = false autotests = true edition = "2024" name = "nativelink-error" -version = "1.7.7" +version = "1.8.0" [dependencies] nativelink-metric = { path = "../nativelink-metric" } diff --git a/nativelink-macro/Cargo.toml b/nativelink-macro/Cargo.toml index c45e73ad8c..0927a93186 100644 --- a/nativelink-macro/Cargo.toml +++ b/nativelink-macro/Cargo.toml @@ -4,7 +4,7 @@ lints.workspace = true [package] edition = "2024" name = "nativelink-macro" -version = "1.7.7" +version = "1.8.0" [lib] proc-macro = true diff --git a/nativelink-metric/Cargo.toml b/nativelink-metric/Cargo.toml index 3cf7c521de..246c56cd14 100644 --- a/nativelink-metric/Cargo.toml +++ b/nativelink-metric/Cargo.toml @@ -4,7 +4,7 @@ lints.workspace = true [package] edition = "2024" name = "nativelink-metric" -version = "1.7.7" +version = "1.8.0" [dependencies] nativelink-metric-macro-derive = { path = "nativelink-metric-macro-derive" } diff --git a/nativelink-metric/nativelink-metric-macro-derive/Cargo.toml b/nativelink-metric/nativelink-metric-macro-derive/Cargo.toml index c3d7b78382..cfd0563f09 100644 --- a/nativelink-metric/nativelink-metric-macro-derive/Cargo.toml +++ b/nativelink-metric/nativelink-metric-macro-derive/Cargo.toml @@ -1,7 +1,7 @@ [package] edition = "2024" name = "nativelink-metric-macro-derive" -version = "1.7.7" +version = "1.8.0" [lib] proc-macro = true diff --git a/nativelink-proto/Cargo.toml b/nativelink-proto/Cargo.toml index 4e32a13bd8..e2e5cf6ad4 100644 --- a/nativelink-proto/Cargo.toml +++ b/nativelink-proto/Cargo.toml @@ -2,7 +2,7 @@ [package] edition = "2024" name = "nativelink-proto" -version = "1.7.7" +version = "1.8.0" [lib] doctest = false # because some of the generated protos have things that look like doctests but break diff --git a/nativelink-redis-tester/Cargo.toml b/nativelink-redis-tester/Cargo.toml index f2cdec0644..1705c594b8 100644 --- a/nativelink-redis-tester/Cargo.toml +++ b/nativelink-redis-tester/Cargo.toml @@ -4,7 +4,7 @@ lints.workspace = true [package] edition = "2024" name = "nativelink-redis-tester" -version = "1.7.7" +version = "1.8.0" [dependencies] nativelink-util = { path = "../nativelink-util" } diff --git a/nativelink-scheduler/Cargo.toml b/nativelink-scheduler/Cargo.toml index 4e13952a3a..99795eb35b 100644 --- a/nativelink-scheduler/Cargo.toml +++ b/nativelink-scheduler/Cargo.toml @@ -4,7 +4,7 @@ lints.workspace = true [package] edition = "2024" name = "nativelink-scheduler" -version = "1.7.7" +version = "1.8.0" [dependencies] nativelink-config = { path = "../nativelink-config" } diff --git a/nativelink-service/Cargo.toml b/nativelink-service/Cargo.toml index 0d7343ad72..33ca650c8e 100644 --- a/nativelink-service/Cargo.toml +++ b/nativelink-service/Cargo.toml @@ -4,7 +4,7 @@ lints.workspace = true [package] edition = "2024" name = "nativelink-service" -version = "1.7.7" +version = "1.8.0" [dependencies] nativelink-config = { path = "../nativelink-config" } diff --git a/nativelink-store/Cargo.toml b/nativelink-store/Cargo.toml index 47d5a4d519..c278a5978a 100644 --- a/nativelink-store/Cargo.toml +++ b/nativelink-store/Cargo.toml @@ -4,7 +4,7 @@ lints.workspace = true [package] edition = "2024" name = "nativelink-store" -version = "1.7.7" +version = "1.8.0" [dependencies] nativelink-config = { path = "../nativelink-config" } diff --git a/nativelink-test/fuzz/Cargo.lock b/nativelink-test/fuzz/Cargo.lock index 2dc06a8e1d..01ae1e7f28 100644 --- a/nativelink-test/fuzz/Cargo.lock +++ b/nativelink-test/fuzz/Cargo.lock @@ -1028,7 +1028,7 @@ dependencies = [ [[package]] name = "nativelink-config" -version = "1.7.7" +version = "1.8.0" dependencies = [ "byte-unit", "humantime", @@ -1043,7 +1043,7 @@ dependencies = [ [[package]] name = "nativelink-error" -version = "1.7.7" +version = "1.8.0" dependencies = [ "base64", "mongodb", @@ -1075,7 +1075,7 @@ dependencies = [ [[package]] name = "nativelink-metric" -version = "1.7.7" +version = "1.8.0" dependencies = [ "async-lock", "nativelink-metric-macro-derive", @@ -1086,7 +1086,7 @@ dependencies = [ [[package]] name = "nativelink-metric-macro-derive" -version = "1.7.7" +version = "1.8.0" dependencies = [ "proc-macro2", "quote", @@ -1095,7 +1095,7 @@ dependencies = [ [[package]] name = "nativelink-proto" -version = "1.7.7" +version = "1.8.0" dependencies = [ "derive_more", "prost", diff --git a/nativelink-util/Cargo.toml b/nativelink-util/Cargo.toml index f3430f152c..5ac55bca41 100644 --- a/nativelink-util/Cargo.toml +++ b/nativelink-util/Cargo.toml @@ -4,7 +4,7 @@ lints.workspace = true [package] edition = "2024" name = "nativelink-util" -version = "1.7.7" +version = "1.8.0" [dependencies] nativelink-config = { path = "../nativelink-config" } diff --git a/nativelink-worker/Cargo.toml b/nativelink-worker/Cargo.toml index 6e172fc94d..81f57ac155 100644 --- a/nativelink-worker/Cargo.toml +++ b/nativelink-worker/Cargo.toml @@ -4,7 +4,7 @@ lints.workspace = true [package] edition = "2024" name = "nativelink-worker" -version = "1.7.7" +version = "1.8.0" [features] nix = []