From 4cbb12c5cafdc89b61e12cb67b049516a5d7b72b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 2 Sep 2026 19:06:13 +0000 Subject: [PATCH 1/5] Prepare release v3.22.3 From 98b3f0ec6bb6677fbaf703f9d928155453aa6505 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 2 Sep 2026 19:06:16 +0000 Subject: [PATCH 2/5] packaging/secure-packages/flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'nix': 'path:../..' → 'path:../..' • Updated input 'nix/nixpkgs': 'https://api.flakehub.com/f/pinned/DeterminateSystems/secure-packages-26.05/0.1.1013487%2Brev-01649628bfcaf28024737daec63d559fe0463e6c/01a04eb4-9c90-76b3-a3fb-a92559e04618/source.tar.gz' (2026-08-29) → 'https://api.flakehub.com/f/pinned/DeterminateSystems/secure-packages-26.05/0.1.1013502%2Brev-88369aab48f8d2b0f69126d306c5af06e997849b/01a05deb-f862-7c32-a065-599b037b2e53/source.tar.gz' (2026-09-01) --- packaging/secure-packages/flake.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packaging/secure-packages/flake.lock b/packaging/secure-packages/flake.lock index ed100b9a765..ff01da98612 100644 --- a/packaging/secure-packages/flake.lock +++ b/packaging/secure-packages/flake.lock @@ -77,12 +77,12 @@ }, "nixpkgs": { "locked": { - "lastModified": 1788025223, - "narHash": "sha256-TWYxqK6AnH3/AXPSowct3pxzafZ501CjVuJGu1kBUJw=", - "rev": "01649628bfcaf28024737daec63d559fe0463e6c", - "revCount": 1013487, + "lastModified": 1788280191, + "narHash": "sha256-mB3qK5ql+QFtajxSI/qwCPRPaJMuWyqIKnTZvADKwU8=", + "rev": "88369aab48f8d2b0f69126d306c5af06e997849b", + "revCount": 1013502, "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/secure-packages-26.05/0.1.1013487%2Brev-01649628bfcaf28024737daec63d559fe0463e6c/01a04eb4-9c90-76b3-a3fb-a92559e04618/source.tar.gz" + "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/secure-packages-26.05/0.1.1013502%2Brev-88369aab48f8d2b0f69126d306c5af06e997849b/01a05deb-f862-7c32-a065-599b037b2e53/source.tar.gz" }, "original": { "type": "tarball", From 96e755aa8b6602e236b6891663b83c527684e326 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 2 Sep 2026 19:06:19 +0000 Subject: [PATCH 3/5] Set .version-determinate to 3.22.3 --- .version-determinate | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.version-determinate b/.version-determinate index 2fec58b681b..ce070a60eb7 100644 --- a/.version-determinate +++ b/.version-determinate @@ -1 +1 @@ -3.22.2 +3.22.3 From 648a0ea3275d5c09b522ad7247354a5c9ca15e2f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 2 Sep 2026 19:06:24 +0000 Subject: [PATCH 4/5] Generate release notes for 3.22.3 --- doc/manual/source/SUMMARY.md.in | 1 + .../release-notes-determinate/changes.md | 32 ++++++++++++++++++- .../release-notes-determinate/v3.22.3.md | 22 +++++++++++++ 3 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 doc/manual/source/release-notes-determinate/v3.22.3.md diff --git a/doc/manual/source/SUMMARY.md.in b/doc/manual/source/SUMMARY.md.in index 224d901c2eb..308569fb90f 100644 --- a/doc/manual/source/SUMMARY.md.in +++ b/doc/manual/source/SUMMARY.md.in @@ -154,6 +154,7 @@ - [Contributing](development/contributing.md) - [Determinate Nix Release Notes](release-notes-determinate/index.md) - [Changes between Nix and Determinate Nix](release-notes-determinate/changes.md) + - [Release 3.22.3 (2026-09-02)](release-notes-determinate/v3.22.3.md) - [Release 3.22.2 (2026-08-21)](release-notes-determinate/v3.22.2.md) - [Release 3.22.1 (2026-08-18)](release-notes-determinate/v3.22.1.md) - [Release 3.22.0 (2026-08-06)](release-notes-determinate/v3.22.0.md) diff --git a/doc/manual/source/release-notes-determinate/changes.md b/doc/manual/source/release-notes-determinate/changes.md index 4de2651e51e..53560f33de5 100644 --- a/doc/manual/source/release-notes-determinate/changes.md +++ b/doc/manual/source/release-notes-determinate/changes.md @@ -1,6 +1,6 @@ # Changes between Nix and Determinate Nix -This section lists the differences between upstream Nix 2.35 and Determinate Nix 3.22.2. +This section lists the differences between upstream Nix 2.35 and Determinate Nix 3.22.3. * In Determinate Nix, flakes are stable. You no longer need to enable the `flakes` experimental feature. @@ -232,3 +232,33 @@ This section lists the differences between upstream Nix 2.35 and Determinate Nix * `nix eval --json` has a flag `--drv-link` to create symlinks to top-level derivations. This prevents them from being garbage-collected. [DeterminateSystems/nix-src#599](https://github.com/DeterminateSystems/nix-src/pull/599) + + + +* Fix `dir` attribute handling in nix-219-compat mode by @edolstra in [DeterminateSystems/nix-src#604](https://github.com/DeterminateSystems/nix-src/pull/604) + +* Update the schema file atomically by @edolstra in [DeterminateSystems/nix-src#606](https://github.com/DeterminateSystems/nix-src/pull/606) + +* Reduce contention on the bdwgc global lock by @edolstra in [DeterminateSystems/nix-src#608](https://github.com/DeterminateSystems/nix-src/pull/608) + +* fromJSON: Eliminate use of uncollectable containers by @edolstra in [DeterminateSystems/nix-src#609](https://github.com/DeterminateSystems/nix-src/pull/609) + +* nix copy: Don't register temp roots if the remote doesn't have AddTempRoots by @edolstra in [DeterminateSystems/nix-src#610](https://github.com/DeterminateSystems/nix-src/pull/610) + +* Update Nixpkgs by @edolstra in [DeterminateSystems/nix-src#607](https://github.com/DeterminateSystems/nix-src/pull/607) + +* Fix crash when GC is interrupted by @edolstra in [DeterminateSystems/nix-src#612](https://github.com/DeterminateSystems/nix-src/pull/612) + +* Handle out-of-memory crashes better by @edolstra in [DeterminateSystems/nix-src#603](https://github.com/DeterminateSystems/nix-src/pull/603) + +* Fix forwarding netrc-file to the daemon by @edolstra in [DeterminateSystems/nix-src#616](https://github.com/DeterminateSystems/nix-src/pull/616) + +* Sync with upstream 2.35-maintenance by @edolstra in [DeterminateSystems/nix-src#617](https://github.com/DeterminateSystems/nix-src/pull/617) + +* Fix Ctrl-C handling when Sentry is enabled by @edolstra in [DeterminateSystems/nix-src#618](https://github.com/DeterminateSystems/nix-src/pull/618) + +* Eval cache: make the second evaluation hit the cache by @edolstra in [DeterminateSystems/nix-src#619](https://github.com/DeterminateSystems/nix-src/pull/619) + +* doc: mention that flake metadata's `Path` field is absent with lazy-trees by @edolstra in [DeterminateSystems/nix-src#620](https://github.com/DeterminateSystems/nix-src/pull/620) + +* Deduplicate `nix build --print-out-paths` output by @edolstra in [DeterminateSystems/nix-src#622](https://github.com/DeterminateSystems/nix-src/pull/622) diff --git a/doc/manual/source/release-notes-determinate/v3.22.3.md b/doc/manual/source/release-notes-determinate/v3.22.3.md new file mode 100644 index 00000000000..1203ed34c18 --- /dev/null +++ b/doc/manual/source/release-notes-determinate/v3.22.3.md @@ -0,0 +1,22 @@ +# Release 3.22.3 (2026-09-02) + +* Based on [upstream Nix 2.35.3](../release-notes/rl-2.35.md). + +## What's Changed +* Fix `dir` attribute handling in nix-219-compat mode by @edolstra in [DeterminateSystems/nix-src#604](https://github.com/DeterminateSystems/nix-src/pull/604) +* Update the schema file atomically by @edolstra in [DeterminateSystems/nix-src#606](https://github.com/DeterminateSystems/nix-src/pull/606) +* Reduce contention on the bdwgc global lock by @edolstra in [DeterminateSystems/nix-src#608](https://github.com/DeterminateSystems/nix-src/pull/608) +* fromJSON: Eliminate use of uncollectable containers by @edolstra in [DeterminateSystems/nix-src#609](https://github.com/DeterminateSystems/nix-src/pull/609) +* nix copy: Don't register temp roots if the remote doesn't have AddTempRoots by @edolstra in [DeterminateSystems/nix-src#610](https://github.com/DeterminateSystems/nix-src/pull/610) +* Update Nixpkgs by @edolstra in [DeterminateSystems/nix-src#607](https://github.com/DeterminateSystems/nix-src/pull/607) +* Fix crash when GC is interrupted by @edolstra in [DeterminateSystems/nix-src#612](https://github.com/DeterminateSystems/nix-src/pull/612) +* Handle out-of-memory crashes better by @edolstra in [DeterminateSystems/nix-src#603](https://github.com/DeterminateSystems/nix-src/pull/603) +* Fix forwarding netrc-file to the daemon by @edolstra in [DeterminateSystems/nix-src#616](https://github.com/DeterminateSystems/nix-src/pull/616) +* Sync with upstream 2.35-maintenance by @edolstra in [DeterminateSystems/nix-src#617](https://github.com/DeterminateSystems/nix-src/pull/617) +* Fix Ctrl-C handling when Sentry is enabled by @edolstra in [DeterminateSystems/nix-src#618](https://github.com/DeterminateSystems/nix-src/pull/618) +* Eval cache: make the second evaluation hit the cache by @edolstra in [DeterminateSystems/nix-src#619](https://github.com/DeterminateSystems/nix-src/pull/619) +* doc: mention that flake metadata's `Path` field is absent with lazy-trees by @edolstra in [DeterminateSystems/nix-src#620](https://github.com/DeterminateSystems/nix-src/pull/620) +* Deduplicate `nix build --print-out-paths` output by @edolstra in [DeterminateSystems/nix-src#622](https://github.com/DeterminateSystems/nix-src/pull/622) + + +**Full Changelog**: [v3.22.2...v3.22.3](https://github.com/DeterminateSystems/nix-src/compare/v3.22.2...v3.22.3) From 4ede2f57d5c8b44a34ba54221893d74e54066c32 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 2 Sep 2026 22:00:34 +0200 Subject: [PATCH 5/5] Tweak release notes Also drop the Nix version number down to 2.35.2 since there is no 2.35.3 yet. --- .version | 2 +- .../release-notes-determinate/changes.md | 28 ------------------- .../release-notes-determinate/v3.22.3.md | 23 +++++++++------ 3 files changed, 16 insertions(+), 37 deletions(-) diff --git a/.version b/.version index c819688d6b5..c0ac27fe010 100644 --- a/.version +++ b/.version @@ -1 +1 @@ -2.35.3 +2.35.2 diff --git a/doc/manual/source/release-notes-determinate/changes.md b/doc/manual/source/release-notes-determinate/changes.md index 53560f33de5..27aa8517a57 100644 --- a/doc/manual/source/release-notes-determinate/changes.md +++ b/doc/manual/source/release-notes-determinate/changes.md @@ -234,31 +234,3 @@ This section lists the differences between upstream Nix 2.35 and Determinate Nix * `nix eval --json` has a flag `--drv-link` to create symlinks to top-level derivations. This prevents them from being garbage-collected. [DeterminateSystems/nix-src#599](https://github.com/DeterminateSystems/nix-src/pull/599) - -* Fix `dir` attribute handling in nix-219-compat mode by @edolstra in [DeterminateSystems/nix-src#604](https://github.com/DeterminateSystems/nix-src/pull/604) - -* Update the schema file atomically by @edolstra in [DeterminateSystems/nix-src#606](https://github.com/DeterminateSystems/nix-src/pull/606) - -* Reduce contention on the bdwgc global lock by @edolstra in [DeterminateSystems/nix-src#608](https://github.com/DeterminateSystems/nix-src/pull/608) - -* fromJSON: Eliminate use of uncollectable containers by @edolstra in [DeterminateSystems/nix-src#609](https://github.com/DeterminateSystems/nix-src/pull/609) - -* nix copy: Don't register temp roots if the remote doesn't have AddTempRoots by @edolstra in [DeterminateSystems/nix-src#610](https://github.com/DeterminateSystems/nix-src/pull/610) - -* Update Nixpkgs by @edolstra in [DeterminateSystems/nix-src#607](https://github.com/DeterminateSystems/nix-src/pull/607) - -* Fix crash when GC is interrupted by @edolstra in [DeterminateSystems/nix-src#612](https://github.com/DeterminateSystems/nix-src/pull/612) - -* Handle out-of-memory crashes better by @edolstra in [DeterminateSystems/nix-src#603](https://github.com/DeterminateSystems/nix-src/pull/603) - -* Fix forwarding netrc-file to the daemon by @edolstra in [DeterminateSystems/nix-src#616](https://github.com/DeterminateSystems/nix-src/pull/616) - -* Sync with upstream 2.35-maintenance by @edolstra in [DeterminateSystems/nix-src#617](https://github.com/DeterminateSystems/nix-src/pull/617) - -* Fix Ctrl-C handling when Sentry is enabled by @edolstra in [DeterminateSystems/nix-src#618](https://github.com/DeterminateSystems/nix-src/pull/618) - -* Eval cache: make the second evaluation hit the cache by @edolstra in [DeterminateSystems/nix-src#619](https://github.com/DeterminateSystems/nix-src/pull/619) - -* doc: mention that flake metadata's `Path` field is absent with lazy-trees by @edolstra in [DeterminateSystems/nix-src#620](https://github.com/DeterminateSystems/nix-src/pull/620) - -* Deduplicate `nix build --print-out-paths` output by @edolstra in [DeterminateSystems/nix-src#622](https://github.com/DeterminateSystems/nix-src/pull/622) diff --git a/doc/manual/source/release-notes-determinate/v3.22.3.md b/doc/manual/source/release-notes-determinate/v3.22.3.md index 1203ed34c18..db6cab11ffb 100644 --- a/doc/manual/source/release-notes-determinate/v3.22.3.md +++ b/doc/manual/source/release-notes-determinate/v3.22.3.md @@ -1,22 +1,29 @@ # Release 3.22.3 (2026-09-02) -* Based on [upstream Nix 2.35.3](../release-notes/rl-2.35.md). +* Based on [upstream Nix 2.35.2](../release-notes/rl-2.35.md). + +## Parallel evaluation performance improvements + +We're continuing to make performance improvements to parallel evaluation, in particular reducing contention on the Boehm-Demers-Weiser garbage collector's global lock by making more use of per-thread freelists and by removing the use of uncollectable allocations in `builtins.fromJSON`. + +PRs: [DeterminateSystems/nix-src#608](https://github.com/DeterminateSystems/nix-src/pull/608), [DeterminateSystems/nix-src#609](https://github.com/DeterminateSystems/nix-src/pull/609) + +## Miscellaneous changes + +* Update Nixpkgs by @edolstra in [DeterminateSystems/nix-src#607](https://github.com/DeterminateSystems/nix-src/pull/607) +* doc: mention that flake metadata's `Path` field is absent with lazy-trees by @edolstra in [DeterminateSystems/nix-src#620](https://github.com/DeterminateSystems/nix-src/pull/620) + +## Bug fixes -## What's Changed * Fix `dir` attribute handling in nix-219-compat mode by @edolstra in [DeterminateSystems/nix-src#604](https://github.com/DeterminateSystems/nix-src/pull/604) * Update the schema file atomically by @edolstra in [DeterminateSystems/nix-src#606](https://github.com/DeterminateSystems/nix-src/pull/606) -* Reduce contention on the bdwgc global lock by @edolstra in [DeterminateSystems/nix-src#608](https://github.com/DeterminateSystems/nix-src/pull/608) -* fromJSON: Eliminate use of uncollectable containers by @edolstra in [DeterminateSystems/nix-src#609](https://github.com/DeterminateSystems/nix-src/pull/609) * nix copy: Don't register temp roots if the remote doesn't have AddTempRoots by @edolstra in [DeterminateSystems/nix-src#610](https://github.com/DeterminateSystems/nix-src/pull/610) -* Update Nixpkgs by @edolstra in [DeterminateSystems/nix-src#607](https://github.com/DeterminateSystems/nix-src/pull/607) * Fix crash when GC is interrupted by @edolstra in [DeterminateSystems/nix-src#612](https://github.com/DeterminateSystems/nix-src/pull/612) * Handle out-of-memory crashes better by @edolstra in [DeterminateSystems/nix-src#603](https://github.com/DeterminateSystems/nix-src/pull/603) * Fix forwarding netrc-file to the daemon by @edolstra in [DeterminateSystems/nix-src#616](https://github.com/DeterminateSystems/nix-src/pull/616) * Sync with upstream 2.35-maintenance by @edolstra in [DeterminateSystems/nix-src#617](https://github.com/DeterminateSystems/nix-src/pull/617) * Fix Ctrl-C handling when Sentry is enabled by @edolstra in [DeterminateSystems/nix-src#618](https://github.com/DeterminateSystems/nix-src/pull/618) -* Eval cache: make the second evaluation hit the cache by @edolstra in [DeterminateSystems/nix-src#619](https://github.com/DeterminateSystems/nix-src/pull/619) -* doc: mention that flake metadata's `Path` field is absent with lazy-trees by @edolstra in [DeterminateSystems/nix-src#620](https://github.com/DeterminateSystems/nix-src/pull/620) +* Eval cache: make the second evaluation hit the cache by @roberth in [DeterminateSystems/nix-src#619](https://github.com/DeterminateSystems/nix-src/pull/619) * Deduplicate `nix build --print-out-paths` output by @edolstra in [DeterminateSystems/nix-src#622](https://github.com/DeterminateSystems/nix-src/pull/622) - **Full Changelog**: [v3.22.2...v3.22.3](https://github.com/DeterminateSystems/nix-src/compare/v3.22.2...v3.22.3)