aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-01-17Merge pull request #7620 from NixOS/bump-2.14.0Eelco Dolstra
Bump version
2023-01-17Bump versionEelco Dolstra
2023-01-17Merge pull request #7614 from edolstra/typoEelco Dolstra
Fix typo in the release notes
2023-01-17TypoEelco Dolstra
2023-01-17Merge pull request #7613 from obsidiansystems/fix-variant-missing-rawEelco Dolstra
Try again to fix aarch64-linux build failure
2023-01-17Try again to fix aarch64-linux build failureJohn Ericson
f419ab48e6394838097f158265ac3cc531ee7958 was on the right track, but there are a few more missing `raw()` calls to fix.
2023-01-17Merge pull request #7612 from edolstra/release-notesEelco Dolstra
Release notes for 2.13
2023-01-17Merge pull request #7606 from hercules-ci/recognize-some-flake-attributesEelco Dolstra
flake check: Recognize well known community attributes
2023-01-17Release notesEelco Dolstra
2023-01-16flake check: Recognize well known community attributesRobert Hensing
This avoids warning fatigue, making `nix flake check` more effective.
2023-01-16Merge pull request #7585 from NixOS/macos-disconnectEelco Dolstra
MonitorFdHup: Make it work on macOS again
2023-01-16Merge pull request #7604 from obsidiansystems/fix-variant-missing-rawRobert Hensing
Try to fix build failure
2023-01-15Try to fix build failureJohn Ericson
Failure: https://hydra.nixos.org/build/205357257/nixlog/1 The problem seems to be trying to `std::visit` a derived class of `std::variant`. Per https://stackoverflow.com/questions/63616709/incomplete-type-stdvariant-used-in-nested-name-specifier certain C++ standard library implementations allow this, but others do not. The solution is simply to call the `raw` method, which upcasts the reference back to the `std::variant`.
2023-01-14Merge pull request #7599 from obsidiansystems/move-path-info-definitionsRobert Hensing
Move `ValidPathInfo` defintions to `path-info.cc`
2023-01-13Move `ValidPathInfo` defintions to `path-info.cc`John Ericson
Originally there was no `path-info.*`, then there was `path-info.hh`, then there was `path-info.cc`, but only for new things. Moving this stuff over makes everything consistent.
2023-01-13Merge pull request #7597 from tweag/move-implem-bit-to-implem-fileRobert Hensing
Move the `getBuildLog` implementation to its own implementation file
2023-01-13Merge pull request #6815 from obsidiansystems/better-wanted-outputsRobert Hensing
`OutputSpec` for `DerivationGoal` and `DerivedPath`, today's `OutputSpec` -> `ExtendedOutputSpec`
2023-01-13Move the `getBuildLog` implementation to its own implementation fileThéophane Hufschmitt
Keep the header minimal and clean
2023-01-13Merge pull request #7430 from tweag/ca/fix-nix-logThéophane Hufschmitt
Ca/fix nix log
2023-01-13Merge pull request #7427 from fricklerhandwerk/pr-policyThéophane Hufschmitt
state priorities in triaging and discussion process
2023-01-12Write more (extended) output spec testsJohn Ericson
2023-01-12Assert on construction that `OutputsSpec::Names` is non-emptyJohn Ericson
2023-01-12Unit test `OuputsSpec::{union_, isSubsetOf}`John Ericson
2023-01-12Split `OutputsSpec::merge` into `OuputsSpec::{union_, isSubsetOf}`John Ericson
Additionally get rid of the evil time we made an empty `OutputSpec::Names()`.
2023-01-12state priorities in triaging and discussion processValentin Gagarin
based on - Nix team decisions https://discourse.nixos.org/t/2022-11-11-nix-team-meeting-minutes-7/23451#planning-discussion-1 https://discourse.nixos.org/t/2022-12-02-nix-team-meeting-minutes-13/23731#discussion-3 - proposal to deal use labels more effectively https://discourse.nixos.org/t/improving-nix-developer-experience/21629 - documentation team decision to foster gauging interest using upvotes https://github.com/NixOS/nix/pull/7387
2023-01-12Merge pull request #7590 from fricklerhandwerk/remove-unnecessary-castThéophane Hufschmitt
remove unncessary cast
2023-01-12remove unncessary castValentin Gagarin
2023-01-11Improve tests for `OutputsSpec`John Ericson
2023-01-11Remove default constructor from `OutputsSpec`John Ericson
This forces us to be explicit. It also requires to rework how `from_json` works. A `JSON_IMPL` is added to assist with this.
2023-01-11Make it hard to construct an empty `OutputsSpec::Names`John Ericson
This should be a non-empty set, and so we don't want people doing this by accident. We remove the zero-0 constructor with a little inheritance trickery.
2023-01-11Simplify and document store path installable parsingJohn Ericson
2023-01-11Split `OutputsSpec` and `ExtendedOutputsSpec`, use the former moreJohn Ericson
`DerivedPath::Built` and `DerivationGoal` were previously using a regular set with the convention that the empty set means all outputs. But it is easy to forget about this rule when processing those sets. Using `OutputSpec` forces us to get it right.
2023-01-11Rename `OutputPath` -> `ExtendedOutputPath`John Ericson
Do this prior to making a new more limitted `OutputPath` we will use in more places.
2023-01-11Improve `OutputsSpec` slightlyJohn Ericson
A few little changes preparing for the rest.
2023-01-11MonitorFdHup: Make it work on macOS againEelco Dolstra
It appears that on current macOS versions, our use of poll() to detect client disconnects no longer works. As a workaround, poll() for POLLRDNORM, since this *will* wake up when the client has disconnected. The downside is that it also wakes up when input is available. So just sleep for a bit in that case. This means that on macOS, a client disconnect may take up to a second to be detected, but that's better than not being detected at all. Fixes #7584.
2023-01-11Merge pull request #7581 from edolstra/getline-testsEelco Dolstra
Backport getLine tests from lazy-trees
2023-01-11Backport getLine tests from lazy-treesEelco Dolstra
2023-01-11Merge pull request #7543 from obsidiansystems/typed-string-contextThéophane Hufschmitt
Parse string context elements properly
2023-01-10Merge pull request #7541 from hercules-ci/check-manual-linksRobert Hensing
Check links in the manual
2023-01-10doc/manual/src/contributing/hacking.md: Apply suggestionRobert Hensing
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-01-10doc/manual/hacking: Document @docroot@ variableRobert Hensing
2023-01-10doc/manual: Apply suggestions from code reviewRobert Hensing
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-01-10doc/manual: Move the html files back where they were beforeRobert Hensing
... before the link checking "output" was added, bumping the html output into a subdirectory.
2023-01-10doc/manual: Document hacking on the manual linksRobert Hensing
2023-01-10doc/manual: Fix broken internal linksRobert Hensing
The targets I could find.
2023-01-10doc/manual: Introduce @docroot@ as a stable base for includable snippetsRobert Hensing
This way the links are clearly within the manual (ie not absolute paths), while allowing snippets to reference the documentation root reliably, regardless of at which base url they're included.
2023-01-10manual: Check linksRobert Hensing
mdbook-linkcheck is not consistent about its warning setting. It disables some warnings, but not the warnings about lack of fragment checking support; hence the extra filtering.
2023-01-10Parse string context elements properlyJohn Ericson
Prior to this change, we had a bunch of ad-hoc string manipulation code scattered around. This made it hard to figure out what data model for string contexts is. Now, we still store string contexts most of the time as encoded strings --- I was wary of the performance implications of changing that --- but whenever we parse them we do so only through the `NixStringContextElem::parse` method, which handles all cases. This creates a data type that is very similar to `DerivedPath` but: - Represents the funky `=<drvpath>` case as properly distinct from the others. - Only encodes a single output, no wildcards and no set, for the "built" case. (I would like to deprecate `=<path>`, after which we are in spitting distance of `DerivedPath` and could maybe get away with fewer types, but that is another topic for another day.)
2023-01-10Make clear that `StorePathWithOutputs` is a deprecated typeJohn Ericson
- Add a comment - Put `OutputsSpec` in a different header (First part of #6815) - Make a few stray uses of it in new code use `DerivedPath` instead.
2023-01-10Merge pull request #7484 from edolstra/fix-7417Eelco Dolstra
InstallableFlake::toDerivedPaths(): Support paths and store paths