Commit graph

13567 commits

Author SHA1 Message Date
Alex Ameen
153ee460c5 primop: add readFileType, optimize readDir
Allows checking directory entry type of a single file/directory.

This was added to optimize the use of `builtins.readDir` on some
filesystems and operating systems which cannot detect this information
using POSIX's `readdir`.

Previously `builtins.readDir` would eagerly use system calls to lookup
these filetypes using other interfaces; this change makes these
operations lazy in the attribute values for each file with application
of `builtins.readFileType`.
2023-01-22 13:45:02 -06:00
John Ericson
0afdf4084c Fix #7655
We had some local variables left over from the older (more
complicated) implementation of this function. They should all be unused,
but one wasn't by mistake.

Delete them all, and replace the one that was still in use as intended.
2023-01-21 23:55:06 -05:00
John Ericson
88d8f6ac48 Expand tests to reproduce #7655
The original `builtins.getContext` test from
1d757292d0 would have caught this. The
problem is that b30be6b450 adding
`builtins.appendContext` modified that test to make it test too much at
once, rather than adding a separate test.

We now have isolated tests for both functions, and also a property test
showing everything put together (in the form of an eta rule for strings
with context). This is better coverage and properly reproduces the bug.
2023-01-21 23:50:09 -05:00
Robert Hensing
3c08a3e6b6 PR template: Specify path to integration tests 2023-01-20 16:23:52 +01:00
Robert Hensing
261c25601d Use the official, documented NixOS runTest interface 2023-01-20 16:23:52 +01:00
Robert Hensing
74026bb101 tests: Move NixOS tests to tests/nixos
This will allow contributors to find them more easily.
2023-01-20 15:33:13 +01:00
Robert Hensing
04de0dd0b4
Merge pull request #7577 from hercules-ci/pr-template
.github: Add pull request template
2023-01-20 14:36:09 +01:00
Robert Hensing
dfbdde6d07
Update .github/PULL_REQUEST_TEMPLATE.md 2023-01-20 14:06:46 +01:00
Robert Hensing
7f04a54214
Update .github/PULL_REQUEST_TEMPLATE.md 2023-01-20 13:56:14 +01:00
Valentin Gagarin
e90d7570a3
Merge pull request #7647 from fps/operator_doc
doc: fix update operator description
2023-01-20 13:54:51 +01:00
Florian Paul Schmidt
4ff9ed5c2d doc: fix update operator description 2023-01-20 13:21:45 +01:00
Guillaume Maudoux
a0642305ab
Use complete '__toString' attribute name
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-01-20 13:06:00 +01:00
Guillaume Maudoux
ee4b849b17
Fix unreachable error message
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-01-20 13:01:03 +01:00
Théophane Hufschmitt
fdc02d2b6a
Merge pull request #7490 from fricklerhandwerk/doc-realise
define the terms "realise" and "valid" for store paths
2023-01-20 11:19:45 +01:00
Eric Wolf
4d50995eff Fix url parsing for urls using file+
`file+https://example.org/test.mp4` should not be rejected with
`unexpected authority`.
2023-01-20 10:31:26 +01:00
Valentin Gagarin
b911307d7a
Merge pull request #7629 from phip1611/patch-3 2023-01-19 16:41:20 +01:00
Philipp Schuster
9469b1bb30 doc: update language/index.md
- make `<nixpkgs>` visible (was blank in the rendered version)
2023-01-19 15:11:20 +01:00
Guillaume Maudoux
a9fa2c758b Always display addErrorContext messages in (expanded) traces 2023-01-19 14:14:19 +01:00
Guillaume Maudoux
6228b6b950 Discuss re-entrant errors and design 2023-01-19 14:12:26 +01:00
Guillaume Maudoux
ca7c5e08c1 Add tests for error traces, and fixes 2023-01-19 14:10:56 +01:00
Guillaume Maudoux
e4726a0c79 Revert "Revert "Merge pull request #6204 from layus/coerce-string""
This reverts commit 9b33ef3879.
2023-01-19 13:23:04 +01:00
Eelco Dolstra
38b90c618f
Merge pull request #7640 from marceltransier/patch-2
Fix update operator usage in operators.md
2023-01-19 11:12:10 +01:00
Eelco Dolstra
5a0865b591
Merge pull request #7638 from marceltransier/patch-1
Fix markdown error in operators.md
2023-01-19 11:04:52 +01:00
Marcel Transier
8b9325ec4a
Fix update operator usage in operators.md 2023-01-19 10:20:41 +01:00
Marcel Transier
9141b74eb7
Fix markdown error in operators.md
Escape logical or pipe in markdown table according to https://github.github.com/gfm/#example-200
2023-01-18 22:34:49 +01:00
Eelco Dolstra
2513eba46a
Merge pull request #7636 from asymmetric/relnotes-flakre-reg
Relase notes: add empty flake registry
2023-01-18 18:04:27 +01:00
Lorenzo Manacorda
913782af4d Relase notes: add empty flake registry
Introduced in #5420
2023-01-18 17:34:19 +01:00
Eelco Dolstra
0510aa40a3
Merge pull request #7631 from edolstra/output-names
OutputSpec: Allow all valid output names
2023-01-18 17:09:15 +01:00
Eelco Dolstra
75c89c3e5e Add test for OutputsSpec::Names
From @Ericson2314.
2023-01-18 16:34:37 +01:00
Eelco Dolstra
8a3b30822b Fix indentation 2023-01-18 16:33:39 +01:00
Philipp Schuster
70e193d64b
Update binary-cache-substituter.md (#7628)
`binary-caches` is deprecated and `substituters` the new recommended option.
2023-01-18 15:08:20 +00:00
Eelco Dolstra
ee1372d246
Merge pull request #7627 from edolstra/fetchTarball-channel
Restore support for channel: URLs in fetchTarball
2023-01-18 14:26:35 +01:00
Eelco Dolstra
1ebfa6ba2d Add some tests for illegal output names 2023-01-18 14:21:17 +01:00
Eelco Dolstra
95cfd50d25 OutputSpec: Allow all valid output names
Fixes #7624.
2023-01-18 14:14:29 +01:00
Théophane Hufschmitt
e3bb97d44a
Merge pull request #7598 from yangsheng6810/fix_env_escape
Add escape for systemd service in installer script
2023-01-18 13:46:29 +01:00
Eelco Dolstra
01f268322a Restore support for channel: URLs in fetchTarball
Fixes #7625.
2023-01-18 12:57:03 +01:00
Robert Hensing
d385c13202
Merge pull request #7621 from hercules-ci/nixpkgs-lib-regression-test
Revert #6204 to fix regression, add nixpkgs/lib/tests as regression test
2023-01-18 02:26:30 +01:00
Robert Hensing
620e4fb89b flake.nix: Add nixpkgs/lib/tests as regression test 2023-01-18 01:55:21 +01:00
Robert Hensing
9b33ef3879 Revert "Merge pull request #6204 from layus/coerce-string"
This reverts commit a75b7ba30f, reversing
changes made to 9af16c5f74.
2023-01-18 01:34:07 +01:00
Eelco Dolstra
98f57f44bb
Merge pull request #7620 from NixOS/bump-2.14.0
Bump version
2023-01-17 22:39:07 +01:00
Eelco Dolstra
2769c83b5e Bump version 2023-01-17 22:08:36 +01:00
Eelco Dolstra
ab9dcf3477
Merge pull request #7614 from edolstra/typo
Fix typo in the release notes
2023-01-17 17:31:35 +01:00
Eelco Dolstra
3ff9fc0d7d Typo 2023-01-17 17:03:30 +01:00
Eelco Dolstra
94d6bccf4f
Merge pull request #7613 from obsidiansystems/fix-variant-missing-raw
Try again to fix aarch64-linux build failure
2023-01-17 16:06:45 +01:00
John Ericson
3965b0f75f Try again to fix aarch64-linux build failure
f419ab48e6 was on the right track, but
there are a few more missing `raw()` calls to fix.
2023-01-17 09:14:17 -05:00
Théophane Hufschmitt
6bdf4edb77 Keep the default profile the same
It's used as the “system” profile in a bunch of places, so better not
touch it. Besides, it doesn't hurt to keep it since it's owned by root
any way, so it doesn't have the `chown` problem that the user profiles
had and that led to wanting to move them on the client-side.
2023-01-17 14:17:28 +01:00
Théophane Hufschmitt
c80621dbac Don't try to migrate existing profiles
Doing so would be more dangerous than useful, better leave them as-is if
they already exist
2023-01-17 14:17:28 +01:00
Théophane Hufschmitt
1f02aa4098 Test the migration of the user profiles 2023-01-17 14:17:28 +01:00
Théophane Hufschmitt
0601050755 Migrate the old profiles to the new location
Make sure that we don’t just create the new profiles directory, but that
we also migrate every existing profile to it.
2023-01-17 14:17:28 +01:00
Théophane Hufschmitt
a5919f4754 Move the default profiles to the user’s home
Rather than using `/nix/var/nix/{profiles,gcroots}/per-user/`, put the user
profiles and gcroots under `$XDG_DATA_DIR/nix/{profiles,gcroots}`.

This means that the daemon no longer needs to manage these paths itself
(they are fully handled client-side). In particular, it doesn’t have to
`chown` them anymore (removing one need for root).

This does change the layout of the gc-roots created by nix-env, and is
likely to break some stuff, so I’m not sure how to properly handle that.
2023-01-17 14:17:28 +01:00