mirror of
https://github.com/NixOS/nix
synced 2025-06-24 22:11:15 +02:00
release notes: 2.29.0
This commit is contained in:
parent
18894c934f
commit
d5e7359155
18 changed files with 156 additions and 155 deletions
|
@ -1,19 +0,0 @@
|
|||
---
|
||||
synopsis: "C API: functions for locking and loading a flake"
|
||||
issues: 10435
|
||||
prs: [12877, 13098]
|
||||
---
|
||||
|
||||
This release adds functions to the C API for handling the loading of flakes. Previously, this had to be worked around by using `builtins.getFlake`.
|
||||
C API consumers and language bindings now have access to basic locking functionality.
|
||||
|
||||
It does not expose the full locking API, so that the implementation can evolve more freely.
|
||||
Locking is controlled with the functions, which cover the common use cases for consuming a flake:
|
||||
- `nix_flake_lock_flags_set_mode_check`
|
||||
- `nix_flake_lock_flags_set_mode_virtual`
|
||||
- `nix_flake_lock_flags_set_mode_write_as_needed`
|
||||
- `nix_flake_lock_flags_add_input_override`, which also enables `virtual`
|
||||
|
||||
This change also introduces the new `nix-fetchers-c` library, whose single purpose for now is to manage the (`nix.conf`) settings for the built-in fetchers.
|
||||
|
||||
More details can be found in the [C API documentation](@docroot@/c-api.md).
|
|
@ -1,8 +0,0 @@
|
|||
---
|
||||
synopsis: "No longer copy flakes that are in the nix store"
|
||||
issues: 10435
|
||||
prs: [12877, 13098]
|
||||
---
|
||||
|
||||
Previously, we would duplicate entries like `path:/nix/store/*` back into the Nix store.
|
||||
This was prominently visible for pinned system flake registry entries in NixOS, e.g., when running `nix run nixpkgs#hello`.
|
|
@ -1,9 +0,0 @@
|
|||
---
|
||||
synopsis: "Consistently preserve error messages from cached evaluation"
|
||||
issues: [12762]
|
||||
prs: [12809]
|
||||
---
|
||||
|
||||
In one code path, we are not returning the errors cached from prior evaluation, but instead throwing generic errors stemming from the lack of value (due to the error).
|
||||
These generic error messages were far less informative.
|
||||
Now we consistently return the original error message.
|
|
@ -1,8 +0,0 @@
|
|||
---
|
||||
synopsis: "Faster blake3 hashing"
|
||||
issues:
|
||||
prs: [12676]
|
||||
---
|
||||
|
||||
The implementation for blake3 hashing is now multi-threaded and used memory-mapped IO.
|
||||
Benchmark results can be found the [pull request](https://github.com/NixOS/nix/pull/12676).
|
|
@ -1,7 +0,0 @@
|
|||
---
|
||||
synopsis: "Fix progress bar for S3 binary caches and make file transfers interruptible"
|
||||
issues: [12877, 13098]
|
||||
prs: [12538]
|
||||
---
|
||||
|
||||
The progress bar now correctly display upload/download progress for S3 up/downloads. S3 uploads are now interruptible.
|
|
@ -1,7 +0,0 @@
|
|||
---
|
||||
synopsis: "Add host attribute of github/gitlab flakerefs to URL serialization"
|
||||
issues:
|
||||
prs: [12580]
|
||||
---
|
||||
|
||||
Resolved an issue where `github:` or `gitlab:` URLs lost their `host` attribute when written to a lockfile, resulting in invalid URLs.
|
|
@ -1,15 +0,0 @@
|
|||
---
|
||||
synopsis: "Multiple signatures support in store urls"
|
||||
issues:
|
||||
prs: [12976]
|
||||
---
|
||||
|
||||
Added support for a `secretKeyFiles` URI parameter in Nix store URIs, allowing multiple signing key files to be specified as a comma-separated list.
|
||||
This enables signing paths with multiple keys. This helps with [RFC #149](https://github.com/NixOS/rfcs/pull/149) to enable binary cache key rotation in the NixOS infra.
|
||||
|
||||
Example usage:
|
||||
|
||||
```bash
|
||||
nix copy --to "file:///tmp/store?secret-keys=/tmp/key1,/tmp/key2" \
|
||||
"$(nix build --print-out-paths nixpkgs#hello)"
|
||||
```
|
|
@ -1,8 +0,0 @@
|
|||
---
|
||||
synopsis: "nix flake show now skips over import-from-derivation"
|
||||
issues: 4265
|
||||
prs: [12583]
|
||||
---
|
||||
|
||||
Previously, if a flake contained outputs relying on [import from derivation](@docroot@/language/import-from-derivation.md) during evaluation, `nix flake show` would fail to display the rest of the flake. The updated behavior skips such outputs, allowing the rest of the flake to be shown.
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
---
|
||||
synopsis: "Add `nix formatter build` and `nix formatter run` commands"
|
||||
issues:
|
||||
prs: [13063]
|
||||
---
|
||||
|
||||
`nix formatter run` is an alias for `nix fmt`. Nothing new there.
|
||||
|
||||
`nix formatter build` is sort of like `nix build`: it builds, links, and prints a path to the formatter program:
|
||||
|
||||
```
|
||||
$ nix formatter build
|
||||
/nix/store/cb9w44vkhk2x4adfxwgdkkf5gjmm856j-treefmt/bin/treefmt
|
||||
```
|
||||
|
||||
Note that unlike `nix build`, this prints the full path to the program, not just the store path (in the example above that would be `/nix/store/cb9w44vkhk2x4adfxwgdkkf5gjmm856j-treefmt`).
|
|
@ -1,8 +0,0 @@
|
|||
---
|
||||
synopsis: "Amend OSC 8 escape stripping for xterm-style separator"
|
||||
issues:
|
||||
prs: [13109]
|
||||
---
|
||||
|
||||
Improve terminal escape code filtering to understand a second type of hyperlink escape codes.
|
||||
This in particular prevents parts of GCC 14's diagnostics from being improperly filtered away.
|
|
@ -1,12 +0,0 @@
|
|||
---
|
||||
synopsis: "Prettified JSON output on the terminal"
|
||||
issues: 12555
|
||||
prs: [12652]
|
||||
---
|
||||
|
||||
This makes the output easier to read.
|
||||
|
||||
Scripts are mostly unaffected because for those, stdout will be a file or a pipe, not a terminal, and for those, the old single-line behavior applies.
|
||||
|
||||
`--json --pretty` can be passed to enable it even if the output is not a terminal.
|
||||
If your script creates a pseudoterminal for Nix's stdout, you can pass `--no-pretty` to disable the new behavior.
|
|
@ -1,7 +0,0 @@
|
|||
---
|
||||
synopsis: "Repl: improve continuation prompt for incomplete expressions"
|
||||
issues:
|
||||
prs: [12846]
|
||||
---
|
||||
|
||||
Improved REPL user experience by updating the continuation prompt from invisible blank spaces to a visible `" > "`, enhancing clarity when entering multi-line expressions.
|
|
@ -1,9 +0,0 @@
|
|||
---
|
||||
synopsis: "REPL `:load-flake` and `:reload` now work together"
|
||||
issues: [8753]
|
||||
prs: [13180]
|
||||
---
|
||||
|
||||
Previously, `:reload` only reloaded the files specified with `:load` (or on the command line).
|
||||
Now, it also works with the flakes specified with `:load-flake` (or on the command line).
|
||||
This makes it correctly reload everything that was previously loaded, regardless of what sort of thing (plain file or flake) each item is.
|
|
@ -1,8 +0,0 @@
|
|||
---
|
||||
synopsis: "Increase retry delays on HTTP 429 Too Many Requests"
|
||||
issues:
|
||||
prs: [13052]
|
||||
---
|
||||
|
||||
When downloading Nix, the retry delay was previously set to 0.25 seconds. It has now been increased to 1 minute to better handle transient CI errors, particularly on GitHub.
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
---
|
||||
synopsis: "S3: opt-in the STSProfileCredentialsProvider"
|
||||
issues:
|
||||
prs: [12646]
|
||||
---
|
||||
|
||||
Added support for STS-based authentication for S3-based binary caches, i.e. enabling seamless integration with `aws sso login`.
|
|
@ -1,7 +0,0 @@
|
|||
---
|
||||
synopsis: "Reduce connect timeout for http substituter"
|
||||
issues:
|
||||
prs: [12876]
|
||||
---
|
||||
|
||||
Previously, the Nix setting `connect-timeout` had no limit. It is now set to `5s`, offering a more practical default for users self-hosting binary caches, which may occasionally become unavailable, such as during updates.
|
Loading…
Add table
Add a link
Reference in a new issue