Rebecca Turner
a27651908f
Add assertion for decreasing the indent
...
Co-authored-by: Théophane Hufschmitt <7226587+thufschmitt@users.noreply.github.com>
2024-02-08 10:11:45 -08:00
Rebecca Turner
c0a15fb7d0
Pretty-print values in the REPL
...
Pretty-print values in the REPL by printing each item in a list or
attrset on a separate line. When possible, single-item lists and
attrsets are printed on one line, as long as they don't contain a nested
list, attrset, or thunk.
Before:
```
{ attrs = { a = { b = { c = { }; }; }; }; list = [ 1 ]; list' = [ 1 2 3 ]; }
```
After:
```
{
attrs = {
a = {
b = {
c = { };
};
};
};
list = [ 1 ];
list' = [
1
2
3
];
}
```
2024-02-05 13:23:38 -08:00
Robert Hensing
a31f2cb0cd
Merge pull request #9939 from edolstra/slash-operator
...
CanonPath, SourcePath: Change operator + to /
2024-02-05 15:55:27 +01:00
Eelco Dolstra
a6737b7e17
CanonPath, SourcePath: Change operator + to /
...
This is less confusing and makes it more similar to std::filesystem::path.
2024-02-05 15:17:39 +01:00
Eelco Dolstra
c291d2d8dd
Merge pull request #9927 from 9999years/catch-error-in-value-printer
...
Catch `Error`, not `BaseError` in `ValuePrinter`
2024-02-05 15:01:21 +01:00
Eelco Dolstra
6ec08b85f6
Merge pull request #9934 from nmeum/absPath-out-of-bounds
...
absPath: Explicitly check if path is empty before accessing it
2024-02-05 14:44:02 +01:00
Eelco Dolstra
e190c20c33
Merge pull request #9926 from 9999years/fix-cycle-detection-in-nix-repl
...
Fix cycle detection in `nix repl`
2024-02-05 14:24:28 +01:00
Valentin Gagarin
8d4890c3f8
catch multiple use of link reference ( #9937 )
2024-02-04 21:45:10 +00:00
Valentin Gagarin
8b873edcca
fix anchor link; less weird link texts ( #9936 )
2024-02-04 21:15:20 +00:00
Valentin Gagarin
721fddac2f
use the right heading level ( #9935 )
2024-02-04 21:03:13 +00:00
Théophane Hufschmitt
25385a408e
Merge pull request #9930 from rvl/print-dev-env-unbound-variables
...
print-dev-env: Avoid using unbound shellHook variable
2024-02-04 20:55:17 +01:00
Rodney Lorrimar
e1131b5927
print-dev-env: Avoid using unbound shellHook variable
...
Some tools which consume the "nix print-dev-env" rc script (such as
"nix-direnv") are sensitive to the use of unbound variables. They use
"set -u".
The "nix print-dev-env" rc script initially unsets "shellHook", then
loads variables from the derivation, and then evaluates "shellHook".
However, most derivations don't have a "shellHook" attribute.
So users get the error "shellHook: unbound variable". This can be
demonstrated with the command:
nix print-dev-env nixpkgs#hello | bash -u
This commit changes the rc script to provide an empty fallback value
for the "shellHook" variable.
Closes : #7951 #8253
2024-02-04 13:57:13 +08:00
Rebecca Turner
770d2bc779
Key repeated values on attribute binding pointers, not value pointers
...
Closes #8672
2024-02-03 21:23:06 -08:00
Rebecca Turner
a7927abdc1
Catch Error
, not BaseError
in ValuePrinter
...
`BaseError` includes `Interrupt`. We probably don't want the value
printer to tell you you pressed Ctrl-C while it was working.
2024-02-03 19:29:07 -08:00
Sören Tempel
ec5cc1026d
absPath: Explicitly check if path is empty before accessing it
...
It is entirely possible for the path to be an empty string and many
unit tests actually pass it as an empty string (e.g. both_roundrip or
turnsEmptyPathIntoCWD). In this case, without this patch, absPath will
perform a one-byte out-of-bounds access.
This was discovered while enabling the nix test suite on Alpine where
we compile all software with `-D_GLIBCXX_ASSERTIONS=1`, thus resulting
in a test failure on Alpine.
2024-02-04 00:47:47 +01:00
Eelco Dolstra
49cf090cb2
Merge pull request #9913 from 9999years/debugger-positions
...
Print positions in `--debugger`, instead of pointers
2024-02-03 09:27:09 +01:00
Rebecca Turner
7d7483cafc
Print positions in --debugger
, instead of pointers
2024-02-02 17:38:46 -08:00
Eelco Dolstra
081dc5daa1
Merge pull request #9902 from NixOS/require-fixed-output-fetchurl
...
builtin:fetchurl: Ensure a fixed-output derivation
2024-02-02 14:00:34 +01:00
Eelco Dolstra
e67458e5b8
Better test fix
2024-02-02 13:34:56 +01:00
Eelco Dolstra
05535be03a
Fix test
2024-02-02 13:07:08 +01:00
Eelco Dolstra
b8b739e484
builtin:fetchurl: Get output hash info from the drv
2024-02-01 22:01:02 +01:00
Eelco Dolstra
1ee42c5b88
builtin:fetchurl: Ensure a fixed-output derivation
...
Previously we didn't check that the derivation was fixed-output, so
you could use builtin:fetchurl to impurely fetch a file.
2024-02-01 21:46:01 +01:00
Eelco Dolstra
ef6d055ace
Merge pull request #9896 from hercules-ci/tidy-tidy
...
Disable a slightly annoying clang-tidy check
2024-02-01 09:02:46 +01:00
Robert Hensing
58c26dd0f0
Add .clang-tidy
2024-02-01 01:01:39 +01:00
Robert Hensing
0f2e9e6bd2
Typo
2024-02-01 01:01:04 +01:00
Robert Hensing
4072a8fea0
Merge pull request #9867 from hercules-ci/issue-912
...
#912 allow leading period
2024-01-31 19:10:59 +01:00
Robert Hensing
7c9ed1b1a3
Merge pull request #9890 from obsidiansystems/remove-unneeded-toRealPath
...
Change an `allowPath` call to take a store path again
2024-01-31 18:45:19 +01:00
Robert Hensing
f1b4663805
Disallow store path names that are . or .. (plus opt. -)
...
As discussed in the maintainer meeting on 2024-01-29.
Mainly this is to avoid a situation where the name is parsed and
treated as a file name, mostly to protect users.
.-* and ..-* are also considered invalid because they might strip
on that separator to remove versions. Doesn't really work, but that's
what we decided, and I won't argue with it, because .-* probably
doesn't seem to have a real world application anyway.
We do still permit a 1-character name that's just "-", which still
poses a similar risk in such a situation. We can't start disallowing
trailing -, because a non-zero number of users will need it and we've
seen how annoying and painful such a change is.
What matters most is preventing a situation where . or .. can be
injected, and to just get this done.
2024-01-31 18:35:19 +01:00
Robert Hensing
8406da2877
test: Generate distinct hashes
...
Gen::just is the constant generator. Don't just return that!
2024-01-31 18:35:19 +01:00
Robert Hensing
69bbd5852a
test: Generate distinct path names
...
Gen::just is the constant generator. Don't just return that!
2024-01-31 18:35:19 +01:00
Robert Hensing
b13e6a76b4
parseStorePath: Support leading period
2024-01-31 18:35:19 +01:00
John Ericson
caea7dcb7e
Change an allowPath
call to take a store path again
...
This looks like a revert of #5844 , but is not.
That one was needed because
d90f9d4b99 (diff-0f59bb6f197822ef9f19ceae9624989499d170c84dfdc1f486a8959bb4588cafR85)
changed the type of the argument to `allowPath` from a `StorePath` to a
`Path`. But since
caabc4f648 (diff-0f59bb6f197822ef9f19ceae9624989499d170c84dfdc1f486a8959bb4588cafL100-R92)
,
it is a `StorePath` again.
I think this is worth changing because we want to be very careful about
`toRealPath` and the evaluator --- ideally the choice of real path does
not affect evaluation at all. So using it fewer times is better.
2024-01-31 11:44:06 -05:00
John Ericson
75ebb90a70
Merge pull request #9884 from edolstra/resolve-symlinks
...
Resolve symlinks in a few more places
2024-01-30 10:42:54 -05:00
Eelco Dolstra
d661a89398
Merge pull request #9880 from NixOS/dependabot/github_actions/zeebe-io/backport-action-2.4.1
...
build(deps): bump zeebe-io/backport-action from 2.4.0 to 2.4.1
2024-01-30 15:37:25 +01:00
Eelco Dolstra
b36ff47e7c
Resolve symlinks in a few more places
...
Fixes #9882 .
2024-01-30 15:35:31 +01:00
Eelco Dolstra
a7db7b6e44
Merge pull request #9879 from NixOS/bump-2.21.0
...
Bump version
2024-01-30 10:13:42 +01:00
dependabot[bot]
a3aae7beef
build(deps): bump zeebe-io/backport-action from 2.4.0 to 2.4.1
...
Bumps [zeebe-io/backport-action](https://github.com/zeebe-io/backport-action ) from 2.4.0 to 2.4.1.
- [Release notes](https://github.com/zeebe-io/backport-action/releases )
- [Commits](https://github.com/zeebe-io/backport-action/compare/v2.4.0...v2.4.1 )
---
updated-dependencies:
- dependency-name: zeebe-io/backport-action
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-01-29 22:14:10 +00:00
Eelco Dolstra
2f3fb6c12e
Bump version
2024-01-29 22:57:25 +01:00
Eelco Dolstra
9b8e0a7790
Merge pull request #9877 from edolstra/release-notes
...
Nix 2.20 release notes
2024-01-29 18:29:33 +01:00
Eelco Dolstra
652f334f87
Edit release notes
2024-01-29 17:51:21 +01:00
Eelco Dolstra
9465c8cca1
nix hash convert: Add manpage
2024-01-29 17:51:01 +01:00
Eelco Dolstra
6f86f87043
Fix formatting of hash args
2024-01-29 17:50:25 +01:00
Eelco Dolstra
3089bce41b
release notes: 2.20.0
2024-01-29 17:14:17 +01:00
Eelco Dolstra
0070400809
maintainers/release-notes: Include changelog-d
...
Otherwise it quietly generates an empty rl-<version>.md
2024-01-29 17:13:48 +01:00
Eelco Dolstra
1ef6bbb16d
Update release-process.md
2024-01-29 17:12:22 +01:00
Eelco Dolstra
e9c8e859db
Merge pull request #9876 from edolstra/store-settings
...
Don't include store docs in every manpage
2024-01-29 17:01:24 +01:00
Eelco Dolstra
baff34d728
Don't include store docs in every manpage
2024-01-29 16:30:29 +01:00
Eelco Dolstra
f6719032cf
Shut up a gcc warning
2024-01-29 15:22:44 +01:00
Valentin Gagarin
44a0d04483
add missing link ( #9869 )
2024-01-29 05:56:19 +01:00
Robert Hensing
40254092dd
Merge pull request #9770 from hercules-ci/refactor-rename-derivation-isPure
...
Refactor rename derivation type `isPure`
2024-01-27 11:24:20 +01:00