aboutsummaryrefslogtreecommitdiff
path: root/src/libexpr
AgeCommit message (Collapse)Author
2020-07-05Merge remote-tracking branch 'upstream/master' into ↵John Ericson
derivation-header-include-order
2020-07-02move showTrace to new loggerSettingsBen Burdette
2020-07-02assert for invalid fileoriginBen Burdette
2020-07-01don't include errpos for addErrorContextBen Burdette
2020-06-30comments and cleanupBen Burdette
2020-06-30double addtrace for 'called from'Ben Burdette
2020-06-24convenience form of addTraceBen Burdette
2020-06-23use plain errPos instead of nixCode; fix testsBen Burdette
2020-06-23Merge remote-tracking branch 'upstream/master' into add-traceBen Burdette
2020-06-21Merge remote-tracking branch 'upstream/master' into ↵John Ericson
derivation-header-include-order
2020-06-19addErrorTraceBen Burdette
2020-06-19Merge remote-tracking branch 'upstream/master' into no-hash-type-unknownJohn Ericson
2020-06-19Merge remote-tracking branch 'me/no-stringly-typed-derivation-output' into ↵John Ericson
validPathInfo-ca-proper-datatype
2020-06-19Merge remote-tracking branch 'upstream/master' into ↵John Ericson
no-stringly-typed-derivation-output
2020-06-19Use designated initializers for `DerivationOutputHash`John Ericson
2020-06-19FileSystemHash -> DerivationOutputHashJohn Ericson
2020-06-18Merge branch 'validPathInfo-temp' into validPathInfo-ca-proper-datatypeJohn Ericson
2020-06-18Merge branch 'no-hash-type-unknown' into validPathInfo-tempJohn Ericson
2020-06-18Revert the `enum struct` changeJohn Ericson
Not a regular git revert as there have been many merges and things.
2020-06-18Merge branch 'enum-class' into no-hash-type-unknownJohn Ericson
2020-06-18Merge remote-tracking branch 'upstream/master' into enum-classJohn Ericson
2020-06-18addTraceBen Burdette
2020-06-18Merge branch 'master' into caveman-LOCsBen Burdette
2020-06-18Don't provide 'getFlake' if the 'flakes' feature is not enabledEelco Dolstra
(cherry picked from commit 0a1d3c1dd311f94e9d1f56e1aa7fe1ab34314ec1)
2020-06-18Some backports from the flakes branchEelco Dolstra
2020-06-18Make constant primops lazyEelco Dolstra
(cherry picked from commit aa0e2a2e70a3519a9dcb9b1da000a13c01aa6cc1)
2020-06-17Replace struct StorePath with class StorePathMatthew Bauer
also a similar case with struct Goal
2020-06-17Merge remote-tracking branch 'upstream/master' into ↵John Ericson
no-stringly-typed-derivation-output
2020-06-17Move some Store functions from derivations.cc to store-api.ccJohn Ericson
This further continues with the dependency inverstion. Also I just went ahead and exposed `parseDerivation`: it seems like the more proper building block, and not a bad thing to expose if we are trying to be less wedded to drv files on disk anywas.
2020-06-17Merge remote-tracking branch 'upstream/master' into ↵John Ericson
derivation-header-include-order
2020-06-16Remove StorePath::clone() and related functionsEelco Dolstra
2020-06-16StorePath: Rewrite in C++Eelco Dolstra
On nix-env -qa -f '<nixpkgs>', this reduces maximum RSS by 20970 KiB and runtime by 0.8%. This is mostly because we're not parsing the hash part as a hash anymore (just validating that it consists of base-32 characters). Also, replace storePathToHash() by StorePath::hashPart().
2020-06-15Give better error message about <...> in pure eval modeEelco Dolstra
2020-06-15Remove trailing whitespaceEelco Dolstra
2020-06-15Get rid of explicit ErrorInfo constructorsEelco Dolstra
2020-06-15Disambiguate BaseError(Args) constructorEelco Dolstra
This means that 'throw Error({ ... ErrorInfo ... })' now works.
2020-06-15Merge branch 'errors-phase-2' of https://github.com/bburdette/nixEelco Dolstra
2020-06-12Merge pull request #3674 from matthewbauer/allow-empty-hash2Eelco Dolstra
Allow empty hash in derivations
2020-06-12Add newHashAllowEmpty helper functionMatthew Bauer
This replaces the copy&paste with a helper function in hash.hh.
2020-06-12Add Store::readDerivation() convenience functionEelco Dolstra
2020-06-12Remove Store::queryDerivationOutputNames()Eelco Dolstra
This function was used in only one place, where it could easily be replaced by readDerivation() since it's not performance-critical. (This function appears to have been modelled after queryDerivationOutputs(), which exists only to make the garbage collector faster.)
2020-06-11Merge remote-tracking branch 'upstream/master' into errors-phase-2Ben Burdette
2020-06-11Merge pull request #3073 from tweag/machine-logsEelco Dolstra
Add an option to print the logs in a machine-readable format
2020-06-09Support empty hash in fetchersMatthew Bauer
fetchTarball, fetchTree, and fetchGit all have *optional* hash attrs. This means that we need to be careful with what we allow to avoid accidentally making these defaults. When ‘hash = ""’ we assume the empty hash is wanted.
2020-06-09Allow empty hash in derivationsMatthew Bauer
follow up of https://github.com/NixOS/nix/pull/3544 This allows hash="" so that it can be used for debugging purposes. For instance, this gives you an error message like: warning: found empty hash, assuming you wanted 'sha256:0000000000000000000000000000000000000000000000000000' hash mismatch in fixed-output derivation '/nix/store/asx6qw1r1xk6iak6y6jph4n58h4hdmbm-nix': wanted: sha256:0000000000000000000000000000000000000000000000000000 got: sha256:0fpfhipl9v1mfzw2ffmxiyyzqwlkvww22bh9wcy4qrfslb4jm429
2020-06-08Merge branch 'errors-phase-2' into caveman-LOCsBen Burdette
2020-06-08Move progress-bar.cc to libmainregnat
Needed so that we can include it as a logger in loggers.cc without adding a dependency on nix This also requires moving names.hh to libutil to prevent a circular dependency between libmain and libexpr
2020-06-03libutils/hash: remove default encodingzimbatm
This will make it easier to reason about the hash encoding and switch to SRI everywhere where possible.
2020-06-03Merge remote-tracking branch 'obsidian/no-hash-type-unknown' into ↵John Ericson
validPathInfo-ca-proper-datatype
2020-06-02Remove `HashType::Unknown`John Ericson
Instead, `Hash` uses `std::optional<HashType>`. In the future, we may also make `Hash` itself require a known hash type, encoraging people to use `std::optional<Hash>` instead.