aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-07-14Merge pull request #8696 from NixLayeredStore/nested-sandboxingJohn Ericson
Test nested sandboxing, and make nicer error
2023-07-14Test nested sandboxing, and make nicer errorJohn Ericson
We were bedeviled by sandboxing issues when working on the layered store. The problem ended up being that when we have nested nix builds, and the inner store is inside the build dir (e.g. store is `/build/nix-test/$name/store`, build dir is `/build`) bind mounts clobber each other and store paths cannot be found. After thoroughly cleaning up `local-derivation-goal.cc`, we might be able to make that work. But that is a lot of work. For now, we just fail earlier with a proper error message. Finally, test this: nested sandboxing without the problematic store dir should work, and with should fail with the expected error message. Co-authored-by: Dylan Green <67574902+cidkidnix@users.noreply.github.com> Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-07-14Merge pull request #8691 from obsidiansystems/built-pathRobert Hensing
Move `BuiltPath` to its own header/C++ file in libcmd
2023-07-13Merge pull request #8694 from obsidiansystems/fix-lang-testsJohn Ericson
Fix race condition in the language tests
2023-07-13Fix race condition in the language testsJohn Ericson
When we pipe to `>(...)` like that, we unfortunately don't wait for the process to finish. Better to just substitute the file. Also, use the "unified" diff output that people (including myself) are more familiar with, thanks to Git.
2023-07-12Move `BuiltPath` to its own header/C++ file in libcmdJohn Ericson
It is less important, and used less widely, than `DerivedPath`.
2023-07-11Merge pull request #7954 from obsidiansystems/lang-test-improvementsJohn Ericson
Language test improvements
2023-07-11Expanded test suiteMathnerd314
* Lang now verifies errors and parse output * Some new miscellaneous tests * Easy way to update the tests * Document workflow in manual * Use `!` not `~` as separater char for sed It is confusing to use `~` when we are talking about paths and home directories! * Test test suite itself (`test/lang-test/infra.sh`) Additionally, run shellcheck on `tests/lang.sh` to help ensure it is correct, now that is is more complex. Co-authored-by: Robert Hensing <roberth@users.noreply.github.com> Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-07-10Fix test file nameJohn Ericson
It's UTF-8, not UFT-8.
2023-07-10Merge pull request #8579 from obsidiansystems/findPath-cleanup-2John Ericson
Further search path cleanups
2023-07-10Merge pull request #8681 from inclyc/libexpr/parser-move-noeffectEelco Dolstra
libexpr: remove std::move() for `basePath` in parser, it has no effect
2023-07-10Merge pull request #8660 from Hoverbear/nix-daemon.service-tasksmax-infinityEelco Dolstra
nix-daemon.service: Add TasksMax=1048576
2023-07-10Fix some grammar in installables doc (#8682)Bader AlAttar
2023-07-10libexpr: remove std::move() for `basePath` in parser, it has no effectYingchi Long
2023-07-09Merge pull request #8370 from hercules-ci/fetchClosure-input-addressedJohn Ericson
`fetchClosure`: input addressed and pure
2023-07-09Clean up `SearchPath`John Ericson
- Better types - Own header / C++ file pair - Test factored out methods - Pass parsed thing around more than strings Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-07-09Clean up `resolveSearchPathElem`John Ericson
We should use `std::optional<std::string>` not `std::pair<bool, std::string>` for an optional string.
2023-07-08Merge pull request #8612 from NixOS/labeler-tests-to-with-testsRobert Hensing
labeler.yml: tests -> with-tests
2023-07-07Choose a reasonable number similar to LimitNOFileAna Hobden
2023-07-07signing.sh: Revert test improvement because it fails on GHA + macOSRobert Hensing
2023-07-07fetchClosure: Interleave the examples in the docsRobert Hensing
2023-07-07fetchClosure: Apply suggestions from code reviewRobert Hensing
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-07-06nix-daemon.service: Add TasksMax=infinityAna Hobden
2023-07-05Merge pull request #8631 from iFreilicht/profile-listEelco Dolstra
Profile list improvements
2023-07-04Document the path flakeref format (#8640)Théophane Hufschmitt
* Document the path flakeref format Fix https://github.com/NixOS/nix/issues/8482 Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-07-03Merge pull request #8633 from inclyc/libexpr/fix-data-race-in-lexer.lEelco Dolstra
libexpr: use `thread_local` to make the parser thread-safe
2023-07-03Fix testEelco Dolstra
2023-07-03nix profile list: Add --json flagEelco Dolstra
This just dumps the profile manifest to stdout.
2023-07-03Rename 'resolvedRef' to 'lockedRef'Eelco Dolstra
'resolvedRef' was incorrect, since a resolved ref is one after registry resolution, which may still be unlocked (e.g. 'nixpkgs' -> 'github:NixOS/nixpkgs').
2023-07-03libexpr: use `thread_local` to make the parser thread-safeYingchi Long
If we call `adjustLoc`, the global variable `prev_yylloc` is shared between threads and racy. Currently, nix itself does not concurrently parsing files, but this is helpful for libexpr users. (The parser is thread-safe except this.)
2023-07-02nix profile list: Improve readability of the outputEelco Dolstra
2023-07-01Merge pull request #8566 from inclyc/nixd/value-print-depthRobert Hensing
libexpr: extend `Value::print` to allow limited depth
2023-07-01Merge pull request #8619 from hercules-ci/issue-8616-dont-install-test-programRobert Hensing
tests: Don't install test-libstoreconsumer program
2023-06-30tests: Don't install test-libstoreconsumer programRobert Hensing
Sorry about that. Fixes https://github.com/NixOS/nix/issues/8616
2023-06-30tests/signing.sh: Check signature checking error messageRobert Hensing
We should check error messages, so that we know the command fails for the right reason. Alternatively, a mere typo can run the test undetected.
2023-06-30tests/fetchClosure: Improve coverage of new and some existing flowsRobert Hensing
2023-06-30fetchClosure: Docs and error message improvementsRobert Hensing
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-06-30doc: Improve `fetchClosure` documentationRobert Hensing
2023-06-30doc: TypoRobert Hensing
2023-06-30fetchClosure: Refactor: replace enableRewritingRobert Hensing
A single variable is nice and self-contained.
2023-06-30fetchClosure: Split into three casesRobert Hensing
2023-06-30makeContentAddressed: Add single path helperRobert Hensing
2023-06-30fetchClosure: Disallow toPath for inputAddressed = trueRobert Hensing
2023-06-30fetchClosure: Always check that inputAddressed matches the resultRobert Hensing
2023-06-30fetchClosure: Allow input addressed paths in pure modeRobert Hensing
When explicitly requested by the caller, as suggested in the meeting (https://github.com/NixOS/nix/pull/8090#issuecomment-1531139324) > @edolstra: { toPath } vs { fromPath } is too implicit I've opted for the `inputAddressed = true` requirement, because it we did not agree on renaming the path attributes. > @roberth: more explicit > @edolstra: except for the direction; not immediately clear in which direction the rewriting happens This is in fact the most explicit syntax and a bit redundant, which is good, because that redundancy lets us deliver an error message that reminds expression authors that CA provides a better experience to their users.
2023-06-30fetchClosure: Refactor: rename toCA -> enableRewritingRobert Hensing
2023-06-30fetchClosure: Factor out attribute hintRobert Hensing
2023-06-30Merge pull request #8614 from ShamrockLee/quickfix-exdevEelco Dolstra
linkOrCopy: Fallback upon cross-device link error (EXDEV)
2023-06-30linkOrCopy: Fallback upon cross-device link error (EXDEV)Yueh-Shun Li
Fix building derivations in local chroot store on OpenAFS, where hard linking accross directories causes cross-device link error (EXDEV).
2023-06-30labeler.yml: tests -> with-testsRobert Hensing