Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
84 commits
Select commit Hold shift + click to select a range
2a061ba
Adds weekly and "everything" docs regen (#2551)
palfrey Jul 15, 2026
27fb8ad
Enforce Vale settings for config as well as markdown (#2552)
palfrey Jul 16, 2026
f871377
docs(config-reference): regenerate for NativeLink v1.6.0 (#2553)
github-actions[bot] Jul 16, 2026
c9d16c3
docs(config-reference): regenerate for NativeLink (#2555)
github-actions[bot] Jul 16, 2026
4be35e6
Add opt-in small-blob read coalescing to GrpcStore (#2540)
erneestoc Jul 16, 2026
e952657
docs(config-reference): regenerate for NativeLink (#2558)
github-actions[bot] Jul 16, 2026
7a4279b
Add fallback match interval to simple scheduler (#2557)
MarcusSorealheis Jul 16, 2026
5003676
Tag config regen builds to our bot account (#2554)
palfrey Jul 16, 2026
48d9b96
Don't update config reference without changes (#2562)
palfrey Jul 16, 2026
b18311f
Upgrade serde_with to 3.21 for GHSA-7gcf-g7xr-8hxj (#2559)
palfrey Jul 16, 2026
8a8be18
Remove more unused items (#2561)
palfrey Jul 16, 2026
65e2ec2
Remove quoting around NetApp (#2556)
palfrey Jul 16, 2026
b173e4b
Upgrade quick-xml to 0.41 for RUSTSEC-2026-0194 (#2566)
MarcusSorealheis Jul 17, 2026
2a4d961
docs(config-reference): regenerate for NativeLink (#2568)
github-actions[bot] Jul 17, 2026
6675acb
Upgrade anyhow to 1.0.103 for RUSTSEC-2026-0190 (#2569)
MarcusSorealheis Jul 17, 2026
b01cb0d
Fix AsyncFixedBuffer with zstd compression, remove unused BufChannelR…
MarcusSorealheis Jul 17, 2026
7d3e58f
Release NativeLink v1.6.2 (#2575)
amankrx Jul 17, 2026
9717f2f
Fix skopeo login on ubuntu-24.04 for all image workflows (#2577)
amankrx Jul 17, 2026
9daa989
docs(config-reference): regenerate for NativeLink v1.6.2 (#2576)
github-actions[bot] Jul 17, 2026
5ee0afc
Cache cargo runs under nix (#2570)
palfrey Jul 18, 2026
eed5b31
Bootstrap CI on NativeLink Cloud staging (remote cache + BES, dark) (…
MarcusSorealheis Jul 20, 2026
abd0258
Update Rust crate syn to v3 (#2578)
renovate[bot] Jul 20, 2026
d1e49ac
anyhow to 1.0.104 (#2580)
palfrey Jul 20, 2026
45a5652
Redis eviction events support (#2521)
palfrey Jul 21, 2026
d59e50f
cargo-llvm-cov gets flagged, but doesn't have actual vulnerabilities …
palfrey Jul 21, 2026
3947c71
Let GCS get_part defer NotFound to the retrier (#2584)
j-j-m Jul 21, 2026
43c0658
Give fork PRs read-only remote cache via a public key variable (#2587)
MarcusSorealheis Jul 21, 2026
3b1e179
Exclude the aggregate total runner entry from the canary hit-rate mat…
MarcusSorealheis Jul 21, 2026
ddcb47e
cmake links; rust headers; sandboxing (#2586)
palfrey Jul 21, 2026
217276c
Extend the docs FAQ to cover every documentation area (#2581)
heyitsalec Jul 21, 2026
2cbf21e
Prefetch directory-cache tree protos with one GetTree stream (#2546)
erneestoc Jul 22, 2026
82a036c
Move the FAQ into per-page FAQ sections (#2590)
heyitsalec Jul 22, 2026
97b961a
Coalesce FilesystemStore durability flushes on macOS (#2539)
erneestoc Jul 22, 2026
02e3e76
Skip pre_exec hook when namespaces are disabled to allow posix_spawn …
amankrx Jul 22, 2026
4e2f554
Add trace logging for bytestream read (#2482)
palfrey Jul 22, 2026
63567c8
Fix custom-image workflow: grant pull-requests: write and fix command…
amankrx Jul 22, 2026
9fe34de
Commit public read-only cache defaults so fork PRs actually receive t…
MarcusSorealheis Jul 22, 2026
9700a4a
Add the Leadfeeder tracker to the marketing site (#2606)
heyitsalec Jul 22, 2026
94f312a
Add Google Tag Manager to the marketing site (#2610)
heyitsalec Jul 23, 2026
b44f31d
Fix #2564, .exec cleanup and coun F_FULLFSYNC operations (#2602)
MarcusSorealheis Jul 23, 2026
d15b2a9
Make filesystem store posix_fadvise(DONTNEED) opt-in (#2608)
amankrx Jul 23, 2026
7bb62d7
Record the execution metrics that were declared but never emitted (#2…
amankrx Jul 23, 2026
fbf49d6
Increase timeout on trivy (#2613)
palfrey Jul 23, 2026
0e7580f
Upgrade to rules_rs 0.0.96 (#2615)
palfrey Jul 23, 2026
c3ffa86
web: add change history to Terms & Privacy page (#2619)
heyitsalec Jul 24, 2026
41be332
Skip empty chunks in GCS get_part read stream (#2620)
j-j-m Jul 24, 2026
b3659b7
web: fix compliance claims, normalize contact emails, add careers pag…
amankrx Jul 24, 2026
3d40c91
web: add security and trust responsibilities to careers job descripti…
corcillo Jul 24, 2026
bf908e5
Replace determinate with nix-quick-install-action (#2618)
palfrey Jul 24, 2026
97916b2
Web/compliance and careers (#2624)
amankrx Jul 24, 2026
a83dbc1
Release NativeLink v1.6.3 (#2626)
amankrx Jul 25, 2026
a2634f7
Include OSSP page (#2630)
MarcusSorealheis Jul 26, 2026
a34705e
docs(config-reference): regenerate for NativeLink (#2629)
github-actions[bot] Jul 26, 2026
e8f29a7
Fix clippy::cast_possible_wrap (#1476)
SchahinRohani Jul 26, 2026
5d9aa90
docs(config-reference): regenerate for NativeLink v1.6.3 (#2631)
github-actions[bot] Jul 26, 2026
691eb92
Log client server mismatch (#2633)
MarcusSorealheis Jul 27, 2026
46c3d0f
Revert prepare-nix to the Determinate Nix installer (#2635)
amankrx Jul 27, 2026
4c2269a
Remove the marketing site tracker script (#2612)
heyitsalec Jul 27, 2026
66055ac
Move Github bazel retry into a general command (#2616)
palfrey Jul 27, 2026
d16a1d7
web: remove NativeLink Cloud product listings and links (#2637)
heyitsalec Jul 28, 2026
4eb80ad
Add issue templating for more approachable reports (#2471)
matdexir Jul 29, 2026
64ca974
Add opt-in zstd wire compression to GrpcStore transfers (#2596)
erneestoc Jul 30, 2026
7db3f70
fix(worker): prevent upload_results deadlock when file count exceeds …
namdamdoi68-oss Jul 30, 2026
14dfb71
feat(store): add Store::downcast_ref_immediate non-recursive downcast
walter-zeromatter Jul 14, 2026
da9e18e
feat(config): add ZstdStoreSpec and StoreSpec::ZstdStore
walter-zeromatter Jul 14, 2026
c92afa6
feat(store): add ZstdStore skeleton with identity read/write paths
walter-zeromatter Jul 14, 2026
e997661
feat(store): register ZstdStore in store_factory
walter-zeromatter Jul 14, 2026
8c614a6
fix(store): drain inner stream on ranged reads; zero-digest has; vali…
walter-zeromatter Jul 14, 2026
dbdb6cd
feat(store): ZstdStore zstd fast-path methods and validated staging
walter-zeromatter Jul 14, 2026
89c6b19
fix(store): arm temp-file guard before create; post_init probe; batch…
walter-zeromatter Jul 14, 2026
d4065f6
feat(service): ZstdStore byte-for-byte fast path in bytestream read/w…
walter-zeromatter Jul 14, 2026
3ff9a8b
feat(service): ZstdStore fast path in BatchRead/BatchUpdate
walter-zeromatter Jul 14, 2026
36864e7
fix(service): gate BatchUpdate zstd fast path on remote_cache_compres…
walter-zeromatter Jul 14, 2026
b11a0a0
test(store): ZstdStore cross-wrapper integration coverage
walter-zeromatter Jul 14, 2026
de39ea5
docs: ZstdStore example config and operator guidance
walter-zeromatter Jul 14, 2026
a230a3a
refactor(store): add Store::downcast_arc_immediate; use at ZstdStore …
walter-zeromatter Jul 15, 2026
cdc914c
refactor(util): add blocking buf_channel adapters for ZstdStore
walter-zeromatter Jul 29, 2026
817dcfa
refactor(store): consolidate whole-buffer zstd decode helper in ZstdS…
walter-zeromatter Jul 15, 2026
79939c3
fix(build): add zstd Bazel dep to store integration tests
walter-zeromatter Jul 29, 2026
8904aa8
fix(zstd-store): bound decode, prevent upload starvation, descriptor-…
walter-zeromatter Jul 22, 2026
3917848
fix(zstd-store): harden staging and validation
walter-zeromatter Jul 23, 2026
ef7f5f1
refactor(store): configure zstd as compression algorithm
walter-zeromatter Jul 24, 2026
22bf38b
fix(zstd-store): address review findings
walter-zeromatter Jul 29, 2026
32b65d4
fix(zstd-store): satisfy rustfmt, Vale, and the generated stores-config
walter-zeromatter Jul 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions .bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.

# Use blake3 as digest function instead of the much slower default sha256.
startup --digest_function=blake3
# Keep Bazel aligned with NativeLink's default digest function.
startup --digest_function=sha256
common --enable_platform_specific_config

# Don't use legacy toolchain resolution.
Expand Down Expand Up @@ -158,7 +158,7 @@ build --@rules_rust//:clippy_flag=-Dclippy::use_debug
build --@rules_rust//:clippy_flag=-Dclippy::used_underscore_binding
build --@rules_rust//:clippy_flag=-Dclippy::useless_format
build --@rules_rust//:clippy_flag=-Dclippy::cast_possible_truncation
build --@rules_rust//:clippy_flag=-Aclippy::cast_possible_wrap
build --@rules_rust//:clippy_flag=-Dclippy::cast_possible_wrap
build --@rules_rust//:clippy_flag=-Aclippy::cast_precision_loss
build --@rules_rust//:clippy_flag=-Aclippy::cast_sign_loss
build --@rules_rust//:clippy_flag=-Aclippy::cognitive_complexity
Expand Down Expand Up @@ -232,5 +232,8 @@ try-import %workspace%/nixos.bazelrc
# Generated by the nativelink flake module.
try-import %workspace%/nativelink.bazelrc

# Opt-in NativeLink Cloud configs used by this repo's CI.
try-import %workspace%/ci.bazelrc

# Allow user-side customization.
try-import %workspace%/user.bazelrc
120 changes: 120 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
name: Bug Report
description: File a bug report to help us improve NativeLink
title: "[Bug]: "
labels: ["type:bug"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report! Need help right away?
Join our [Slack community](https://forms.gle/LtaWSixEC6bYi5xF7) for faster responses.

- type: input
id: version
attributes:
label: Version
description: What version of NativeLink are you running?
placeholder: "e.g. v1.0.0, main@abc1234, or ghcr.io image tag"
validations:
required: true

- type: dropdown
id: client
attributes:
label: Client
description: Which client are you using with NativeLink?
options:
- Bazel
- Buck2
- Other
validations:
required: true

- type: input
id: os_arch
attributes:
label: OS / Architecture
description: What operating system and architecture?
placeholder: "e.g. Linux x86_64, macOS arm64"
validations:
required: true

- type: dropdown
id: deployment
attributes:
label: Deployment method
description: How are you deploying NativeLink?
options:
- Docker
- Nix
- Kubernetes
- Bare metal
- Other
validations:
required: true

- type: dropdown
id: storage
attributes:
label: Storage backend
description: Which storage backend are you using for the CAS?
options:
- S3
- GCS
- Azure Blob
- Local filesystem
- Redis
- Other
validations:
required: true

- type: input
id: workers
attributes:
label: Number of workers
description: How many workers are in your deployment? (if applicable)
placeholder: "e.g. 10"

- type: input
id: cas_size
attributes:
label: Rough size of CAS
description: Approximately how large is your CAS store?
placeholder: "e.g. ~50GiB on local SSD"

- type: textarea
id: config
attributes:
label: Configuration
description: Please paste a sanitized version of your NativeLink configuration.
render: json5
placeholder: "{\n ...\n}"

- type: textarea
id: expected_behavior
attributes:
label: Expected behavior
description: What did you expect to happen?
validations:
required: true

- type: textarea
id: actual_behavior
attributes:
label: Actual behavior
description: What actually happened?
validations:
required: true

- type: textarea
id: logs
attributes:
label: Logs / error output
description: Please paste any relevant logs, error messages, or stack traces.
render: shell

- type: textarea
id: context
attributes:
label: Additional context
description: Anything else you think would be useful (links, references, screenshots, etc.).
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: true
contact_links:
- name: Join our Slack community
url: https://forms.gle/LtaWSixEC6bYi5xF7
about: Get faster responses from the NativeLink community
- name: Commercial support
url: mailto:marcus@tracemachina.com
about: Contact us for commercial support inquiries
108 changes: 108 additions & 0 deletions .github/ISSUE_TEMPLATE/config_help.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
name: Configuration / Deployment Help
description: Ask for help with configuring, deploying, or troubleshooting NativeLink
title: "[Config/Help]: "
labels: ["type:question"]
body:
- type: markdown
attributes:
value: |
We're here to help! For faster responses, consider joining our
[Slack community](https://forms.gle/LtaWSixEC6bYi5xF7). For commercial
support, email us at contact@nativelink.com.

- type: input
id: version
attributes:
label: Version
description: What version of NativeLink are you running?
placeholder: "e.g. v1.0.0, main@abc1234, or ghcr.io image tag"
validations:
required: true

- type: dropdown
id: client
attributes:
label: Client
description: Which client are you using with NativeLink?
options:
- Bazel
- Buck2
- Other
validations:
required: true

- type: input
id: os_arch
attributes:
label: OS / Architecture
description: What operating system and architecture?
placeholder: "e.g. Linux x86_64, macOS arm64"
validations:
required: true

- type: dropdown
id: deployment
attributes:
label: Deployment method
description: How are you deploying NativeLink?
options:
- Docker
- Nix
- Kubernetes
- Bare metal
- Other
validations:
required: true

- type: dropdown
id: storage
attributes:
label: Storage backend
description: Which storage backend are you using for the CAS?
options:
- S3
- GCS
- Azure Blob
- Local filesystem
- Redis
- Other
validations:
required: true

- type: input
id: workers
attributes:
label: Number of workers
description: How many workers are in your deployment? (if applicable)
placeholder: "e.g. 10"

- type: input
id: cas_size
attributes:
label: Rough size of CAS
description: Approximately how large is your CAS store?
placeholder: "e.g. ~50GiB on local SSD"

- type: textarea
id: config
attributes:
label: Configuration
description: Please paste a sanitized version of your NativeLink configuration.
render: json5
placeholder: "{\n ...\n}"

- type: textarea
id: question
attributes:
label: What do you need help with?
description: Describe your question or issue in detail.
placeholder: "I'm trying to configure..."
validations:
required: true

- type: textarea
id: tried
attributes:
label: What have you tried so far?
description: Steps you've already taken to resolve this.
placeholder: "I've tried..."
40 changes: 40 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: Feature Request
description: Suggest an idea or improvement for NativeLink
title: "[Feature]: "
labels: ["type:enhancement"]
body:
- type: markdown
attributes:
value: |
Thanks for sharing your idea! Need to discuss it first?
Join our [Slack community](https://forms.gle/LtaWSixEC6bYi5xF7) for faster feedback.

- type: textarea
id: problem
attributes:
label: Problem statement
description: What problem are you trying to solve? What use case does this unlock?
placeholder: "I'm always frustrated when..."
validations:
required: true

- type: textarea
id: solution
attributes:
label: Proposed solution
description: What would you like to see added or changed?
placeholder: "A new configuration option that..."
validations:
required: true

- type: textarea
id: alternatives
attributes:
label: Alternatives considered
description: What workarounds or alternative solutions have you considered?

- type: textarea
id: context
attributes:
label: Additional context
description: Any links, references, screenshots, or prior art that informed this request.
44 changes: 44 additions & 0 deletions .github/ISSUE_TEMPLATE/general.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: General Issue
description: For anything that doesn't fit the other categories
title: "[General]: "
labels: ["needs:triage"]
body:
- type: markdown
attributes:
value: |
Not sure if this is a bug or feature? Feel free to use this template.
For real-time help, join our [Slack community](https://forms.gle/LtaWSixEC6bYi5xF7).

- type: dropdown
id: type
attributes:
label: Issue type
options:
- Question
- Discussion
- Suggestion
- Other
validations:
required: true

- type: input
id: version
attributes:
label: Version (if applicable)
description: What version of NativeLink are you running?
placeholder: "e.g. v1.0.0, main@abc1234"

- type: textarea
id: description
attributes:
label: Description
description: What's on your mind?
placeholder: "Tell us what you're thinking about..."
validations:
required: true

- type: textarea
id: context
attributes:
label: Additional context
description: Any links, references, or screenshots that help explain.
12 changes: 10 additions & 2 deletions .github/actions/free-disk/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,18 +13,26 @@ runs:
endersonmenezes/free-disk-space@7901478139cff6e9d44df5972fd8ab8fcade4db1
with:
rm_cmd: "rmz" # For speed up
rmz_version: "3.2.0"
remove_android: false # Takes too long.
remove_dotnet: true
remove_haskell: true
remove_tool_cache: false # TODO(palfrey): Do we really need this?
# Note: Not deleting google-cloud-cli because it takes too long.
remove_tool_cache: false
remove_folders: >
/opt/go
/opt/Ruby
/opt/microsoft/msedge
/usr/local/lib/android
/usr/share/swift
/usr/share/miniconda
/usr/share/az*
/usr/share/glade*
/usr/local/share/chromium
/usr/local/share/powershell
/usr/local/julia
/usr/local/aws-cli
/usr/local/aws-sam-cli
/usr/share/gradle

# using hints from https://github.com/actions/runner-images/issues/10511#issuecomment-3984466720
- if: runner.os == 'macOS'
Expand Down
3 changes: 3 additions & 0 deletions .github/actions/prepare-nix/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@ runs:
uses: ./.github/actions/free-disk

- name: Install Nix
# Stay on the Determinate installer: the nix-quick-install switch (Nix
# 2.34.7) makes the nix2container multi-arch image publish fail with a
# layer digest mismatch. See the tagged image workflow.
uses: >- # https://github.com/DeterminateSystems/nix-installer-action/releases/tag/v22
DeterminateSystems/nix-installer-action@ef8a148080ab6020fd15196c2084a2eea5ff2d25
with:
Expand Down
Loading
Loading