mirror of
https://github.com/NixOS/nix
synced 2025-07-06 21:41:48 +02:00
parser: merge nested dynamic attributes
Fixes https://github.com/NixOS/nix/issues/7115
This commit is contained in:
parent
85d0eb6316
commit
570a1a3ad7
6 changed files with 46 additions and 0 deletions
|
@ -6,3 +6,22 @@
|
|||
|
||||
- Nix now allows unprivileged/[`allowed-users`](../command-ref/conf-file.md#conf-allowed-users) to sign paths.
|
||||
Previously, only [`trusted-users`](../command-ref/conf-file.md#conf-trusted-users) users could sign paths.
|
||||
|
||||
- Nested dynamic attributes are now merged correctly by the parser. For example:
|
||||
|
||||
```nix
|
||||
{
|
||||
nested = { foo = 1; };
|
||||
nested = { ${"ba" + "r"} = 2; };
|
||||
}
|
||||
```
|
||||
|
||||
This used to silently discard `nested.bar`, but now behaves as one would expect and evaluates to:
|
||||
|
||||
```nix
|
||||
{ nested = { bar = 2; foo = 1; }; }
|
||||
```
|
||||
|
||||
Note that the feature of merging multiple attribute set declarations is of questionable value.
|
||||
It allows writing expressions that are very hard to read, for instance when there are many lines of code between two declarations of the same attribute.
|
||||
This has been around for a long time and is therefore supported for backwards compatibility, but should not be relied upon.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue