Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-02-26 | Simplify the case where the drv is a purely input-addressed one | regnat | |
2021-02-19 | Remove the drv resolution caching mechanism | regnat | |
It isn't needed anymore now that don't need to eagerly resolve everything like we used to do. So we can safely get rid of it | |||
2020-12-17 | Fix the detection of already built drv outputs | regnat | |
PRs #4370 and #4348 had a bad interaction in that the second broke the fist one in a not trivial way. The issue was that since #4348 the logic for detecting whether a derivation output is already built requires some logic that was specific to the `LocalStore`. It happens though that most of this logic could be upstreamed to any `Store`, which is what this commit does. | |||
2020-12-11 | Use the hash modulo in the derivation outputs | regnat | |
Rather than storing the derivation outputs as `drvPath!outputName` internally, store them as `drvHashModulo!outputName` (or `outputHash!outputName` for fixed-output derivations). This makes the storage slightly more opaque, but enables an earlier cutoff in cases where a fixed-output dependency changes (but keeps the same output hash) − same as what we already do for input-addressed derivations. | |||
2020-11-19 | Make drv hash modulo memo table thread-safe | John Ericson | |
Let's get one step closer to the daemon not needing to fork. | |||
2020-10-27 | Allow non-CA derivations to depend on CA derivations | regnat | |
2020-10-09 | Remove stray DerivationOutputsAndPaths type | Eelco Dolstra | |
2020-09-28 | Clarify comment a bit | John Ericson | |
2020-09-16 | Ensure resolved CA derivations are written | John Ericson | |
so we can link outputs to deriver and thus properly cache. | |||
2020-09-16 | Merge remote-tracking branch 'upstream/master' into ca-floating-upstream | John Ericson | |
2020-09-15 | Rename `Derivation::pathOpt` to `Derivation::path` | John Ericson | |
We no longer need the `*Opt` to disambiguate. | |||
2020-09-04 | Fix querying outputs for CA derivations some more | John Ericson | |
If we resolve using the known path of a derivation whose output we didn't have, we previously blew up. Now we just fail gracefully, returning the map of all outputs unknown. | |||
2020-09-04 | Merge remote-tracking branch 'obsidian/single-ca-drv-build' into ↵ | John Ericson | |
ca-floating-upstream | |||
2020-09-04 | Fix some of the issues raised by @edolstra | John Ericson | |
- More and better comments - The easier renames | |||
2020-09-04 | Fix floating CA tests | John Ericson | |
We will sometimes try to query the outputs of derivations we can't resolve. That's fine; it just means we don't know what those outputs are yet. | |||
2020-08-28 | Merge remote-tracking branch 'obsidian/single-ca-drv-build' into ↵ | John Ericson | |
ca-floating-upstream | |||
2020-08-28 | Merge remote-tracking branch 'upstream/master' into single-ca-drv-build | John Ericson | |
2020-08-27 | Merge pull request #3434 from Ericson2314/derivation-header-include-order | Eelco Dolstra | |
Revise division of labor in deserialization of derivations | |||
2020-08-24 | CA derivations that depend on other CA derivations | John Ericson | |
Co-authored-by: Théophane Hufschmitt <regnat@users.noreply.github.com> | |||
2020-08-24 | Add constructor for BasicDerivation -> Derivation | John Ericson | |
2020-08-23 | Merge remote-tracking branch 'obsidian/write-derivation-borrow' into HEAD | John Ericson | |
2020-08-23 | `writeDerivation` just needs a plain store reference | John Ericson | |
2020-08-21 | "Downstream placeholders" should not be store paths | John Ericson | |
Insead they should be opaque `/<hash>` like the placeholders we already have. | |||
2020-08-18 | Merge remote-tracking branch 'upstream/master' into ↵ | John Ericson | |
derivation-header-include-order | |||
2020-08-14 | Merge remote-tracking branch 'upstream/master' into single-ca-drv-build | John Ericson | |
2020-08-14 | Merge pull request #3875 from obsidiansystems/new-interface-for-path-pathOpt | Eelco Dolstra | |
Offer a safer interface for path and pathOpt | |||
2020-08-10 | Merge branch 'small-drv-serialize-cleanup' of github.com:obsidiansystems/nix ↵ | John Ericson | |
into single-ca-drv-build | |||
2020-08-10 | Remove name parameter from `writeDerivation` | John Ericson | |
The name is now stored with the derivation itself. | |||
2020-08-07 | Squashed get CA derivations building | John Ericson | |
2020-08-05 | Merge branch 'master' of github.com:NixOS/nix into ↵ | Carlo Nucera | |
new-interface-for-path-pathOpt | |||
2020-08-05 | Reanme `DerivationType::Regular` defintion too | John Ericson | |
This is the one non-prefixed occurence | |||
2020-08-05 | Make names more consistent | John Ericson | |
2020-08-01 | Merge remote-tracking branch 'upstream/master' into ↵ | John Ericson | |
derivation-header-include-order | |||
2020-07-28 | Offer a safer interface for pathOpt | Carlo Nucera | |
The new interface we offer provides a way of getting all the DerivationOutputs with the storePaths directly, based on the observation that it's the most common usecase. | |||
2020-07-27 | Merge remote-tracking branch 'upstream/master' into ↵ | John Ericson | |
optional-derivation-output-storepath | |||
2020-07-23 | Merge remote-tracking branch 'upstream/master' into misc-ca | John Ericson | |
2020-07-23 | Get rid of `basicDerivation::findOutput` | John Ericson | |
It's a tiny function which is: - hardly worth abstrating over, and also only used once. - doesn't work once we get CA drvs I rewrote the one callsite to be forwards compatable with CA derivations, and also potentially more performant: instead of reading in the derivation it can ust consult the SQLite DB in the common case. | |||
2020-07-20 | Merge branch 'ca-derivation-data-types' of github.com:obsidiansystems/nix ↵ | Carlo Nucera | |
into misc-ca | |||
2020-07-20 | Add UnimplementedError to ease grepping for these | Carlo Nucera | |
2020-07-17 | Add `DerivationType::CAFloating` | John Ericson | |
2020-07-17 | Merge branch 'ca-drv' of github.com:Ericson2314/nix into misc-ca | Carlo Nucera | |
2020-07-17 | Merge branch 'multi-output-hashDerivationModulo' of ↵ | Carlo Nucera | |
github.com:Ericson2314/nix into misc-ca | |||
2020-07-16 | Small namespace fix | Carlo Nucera | |
2020-07-15 | Merge branch 'master' of github.com:NixOS/nix into ↵ | Carlo Nucera | |
derivation-header-include-order | |||
2020-07-12 | Change types to prepare the way for CA derivations | John Ericson | |
We've added the variant to `DerivationOutput` to support them, but made `DerivationOutput::path` partial to avoid actually implementing them. With this chage, we can all collaborate on "just" removing `DerivationOutput::path` calls to implement CA derivations. | |||
2020-07-12 | Use more std::visit to prepare for new variant | John Ericson | |
N.B. not using `std::visit` for fetchurl because there is no attempt to handle all the cases (e.g. no `else`) and lambda complicates early return. | |||
2020-07-12 | DerivationOutputExtensional -> DerivationOutputInputAddressed | John Ericson | |
Thanks @regnat for the great name. | |||
2020-07-12 | String .drv suffix to create derivation name | John Ericson | |
2020-07-12 | std::string_view for new derivation name parameters | John Ericson | |
2020-07-12 | BasicDerivation::findOutput cannot return reference anymore | John Ericson | |