Skip to content

Commit 9bbe06b

Browse files
authored
Merge pull request #60 from DeterminateSystems/release-v3.5.1/64e9675a-96ff-4d91-817c-52e0322540e4
Release v3.5.1
2 parents bb8ae35 + 52f51b1 commit 9bbe06b

File tree

4 files changed

+67
-3
lines changed

4 files changed

+67
-3
lines changed

.version-determinate

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.5.0
1+
3.5.1

doc/manual/source/SUMMARY.md.in

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,8 @@
128128
- [Contributing](development/contributing.md)
129129
- [Determinate Nix Release Notes](release-notes-determinate/index.md)
130130
- [Changes between Nix and Determinate Nix](release-notes-determinate/changes.md)<!-- next -->
131-
- [Release 3.5.0 (2025-05-09)](release-notes-determinate/rl-3.5.0.md)
131+
- [Release 3.5.1 (2025-05-09)](release-notes-determinate/rl-3.5.1.md)
132+
- [~~Release 3.5.0 (2025-05-09)~~](release-notes-determinate/rl-3.5.0.md)
132133
- [Release 3.4.2 (2025-05-05)](release-notes-determinate/rl-3.4.2.md)
133134
- [Release 3.4.0 (2025-04-25)](release-notes-determinate/rl-3.4.0.md)
134135
- [Release 3.3.0 (2025-04-11)](release-notes-determinate/rl-3.3.0.md)

doc/manual/source/release-notes-determinate/changes.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Changes between Nix and Determinate Nix
22

3-
This section lists the differences between upstream Nix 2.28 and Determinate Nix 3.5.0.<!-- differences -->
3+
This section lists the differences between upstream Nix 2.28 and Determinate Nix 3.5.1.<!-- differences -->
44

55
* In Determinate Nix, flakes are stable. You no longer need to enable the `flakes` experimental feature.
66

@@ -19,3 +19,9 @@ This section lists the differences between upstream Nix 2.28 and Determinate Nix
1919
<!-- Determinate Nix version 3.4.2 -->
2020

2121
<!-- Determinate Nix version 3.5.0 -->
22+
23+
<!-- Determinate Nix version 3.5.1 -->
24+
25+
* `nix upgrade-nix` is now inert, and suggests using `determinate-nixd upgrade` -- [DeterminateSystems/nix-src#55](https://github.com/DeterminateSystems/nix-src/pull/55)
26+
27+
* Initial Lazy Trees support has been merged, but remains off by default. ([DeterminateSystems/nix-src#27](https://github.com/DeterminateSystems/nix-src/pull/27), [DeterminateSystems/nix-src#56](https://github.com/DeterminateSystems/nix-src/pull/56))
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
# Release 3.5.1 (2025-05-09)
2+
3+
* Based on [upstream Nix 2.28.3](../release-notes/rl-2.28.md).
4+
5+
## What's Changed
6+
7+
Most notably, Lazy Trees has merged in to Determinate Nix and is in Feature Preview status, but remains disabled by default.
8+
Lazy trees massively improves performance in virtually all scenarios because it enables Nix to avoid making unnecessary copies of files into the Nix store.
9+
In testing, we saw iteration times on Nixpkgs **drop from over 12 seconds to 3.5 seconds**.
10+
11+
After upgrading to Determinate Nix 3.5.1 with `sudo determinate-nixd upgrade`, enable lazy trees by adding this to `/etc/nix/nix.custom.conf`:
12+
13+
```
14+
lazy-trees = true
15+
```
16+
17+
Please note that our full flake regression test suite passes with no changes with lazy trees, and please report compatibility issues.
18+
19+
Read [this GitHub comment](https://github.com/DeterminateSystems/nix-src/pull/27#pullrequestreview-2822153088) for further details and next steps.
20+
We'll be publishing an update on the [Determinate Systems blog](https://determinate.systems/posts/) in the next few days with more information as well.
21+
22+
Relevant PRs:
23+
* Lazy trees v2 by @edolstra in [DeterminateSystems/nix-src#27](https://github.com/DeterminateSystems/nix-src/pull/27)
24+
* Improve lazy trees backward compatibility by @edolstra in [DeterminateSystems/nix-src#56](https://github.com/DeterminateSystems/nix-src/pull/56)
25+
26+
27+
### Additional changes in this release:
28+
* Bug fix: Flake input URLs are canonicalized before checking flake.lock file staleness, avoiding needlessly regenerating flake.lock files with `dir` in URL-style flakerefs by @edolstra in [DeterminateSystems/nix-src#57](https://github.com/DeterminateSystems/nix-src/pull/57)
29+
* `nix upgrade-nix` is deprecated in favor of `determinate-nixd upgrade`, by @gustavderdrache in [DeterminateSystems/nix-src#55](https://github.com/DeterminateSystems/nix-src/pull/55)
30+
* UX: Improved build failure and dependency failure error messages to include needed output paths by @edolstra in [DeterminateSystems/nix-src#58](https://github.com/DeterminateSystems/nix-src/pull/58).
31+
32+
Previously:
33+
34+
```
35+
error: builder for '/nix/store/[...]-nested-failure-bottom.drv' failed with exit code 1
36+
error: 1 dependencies of derivation '/nix/store/[...]-nested-failure-middle.drv' failed to build
37+
error: 1 dependencies of derivation '/nix/store/[...]-nested-failure-top.drv' failed to build
38+
```
39+
40+
Now:
41+
42+
```
43+
error: Cannot build '/nix/store/w37gflm9wz9dcnsgy3sfrmnlvm8qigaj-nested-failure-bottom.drv'.
44+
Reason: builder failed with exit code 1.
45+
Output paths:
46+
/nix/store/yzybs8kp35dfipbzdlqcc6lxz62hax04-nested-failure-bottom
47+
error: Cannot build '/nix/store/00gr5hlxfc03x2675w6nn3pwfrz2fr62-nested-failure-middle.drv'.
48+
Reason: 1 dependency failed.
49+
Output paths:
50+
/nix/store/h781j5h4bdchmb4c2lvy8qzh8733azhz-nested-failure-middle
51+
error: Cannot build '/nix/store/8am0ng1gyx8sbzyr0yx6jd5ix3yy5szc-nested-failure-top.drv'.
52+
Reason: 1 dependency failed.
53+
Output paths:
54+
/nix/store/fh12637kgvp906s9yhi9w2dc7ghfwxs1-nested-failure-top
55+
```
56+
57+
**Full Changelog**: [v3.4.2...v3.5.1](https://github.com/DeterminateSystems/nix-src/compare/v3.4.2...v3.5.1)

0 commit comments

Comments
 (0)