aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-07-28Restore backwards-compat for current `builtins.fetchGit`Maximilian Bosch
If a repo is dirty, it used to return a `rev` object with an "empty" sha1 (0000000000000000000000000000000000000000). Please note that this only applies for `builtins.fetchGit` and *not* for `builtins.fetchTree{ type = "git"; }`.
2020-07-28Use assert(false) instead of abort()Carlo Nucera
2020-07-28Merge branch 'master' of github.com:NixOS/nix into ca-drvCarlo Nucera
2020-07-28Merge branch 'misc-ca' of github.com:obsidiansystems/nix into ↵Carlo Nucera
new-interface-for-path-pathOpt
2020-07-28Use the new interfaceCarlo Nucera
2020-07-28Offer a safer interface for pathOptCarlo 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-28Remove putBytesEelco Dolstra
istream->tellg() returns -1 so we can't get the number of bytes written. Fixes 'uploaded 's3://nix-cache/nar/00819r9lp5kajr6baxfw5dhhc0cx8ndxaz43qmd2f0gn1hk1ynlp.nar.xz' (-1 bytes) in 11620 ms' messages.
2020-07-28Bump version to 3.0Eelco Dolstra
Since there are some incompatible changes, it's better to bump the major version number.
2020-07-28Merge legacy `fetchGit`-builtin with the generic `fetchTree`-functionMaximilian Bosch
The original idea was to implement a git-fetcher in Nix's core that supports content hashes[1]. In #3549[2] it has been suggested to actually use `fetchTree` for this since it's a fairly generic wrapper over the new fetcher-API[3] and already supports content-hashes. This patch implements a new git-fetcher based on `fetchTree` by incorporating the following changes: * Removed the original `fetchGit`-implementation and replaced it with an alias on the `fetchTree` implementation. * Ensured that the `git`-fetcher from `libfetchers` always computes a content-hash and returns an "empty" revision on dirty trees (the latter one is needed to retain backwards-compatibility). * The hash-mismatch error in the fetcher-API exits with code 102 as it usually happens whenever a hash-mismatch is detected by Nix. * Removed the `flakes`-feature-flag: I didn't see a reason why this API is so tightly coupled to the flakes-API and at least `fetchGit` should remain usable without any feature-flags. * It's only possible to specify a `narHash` for a `git`-tree if either a `ref` or a `rev` is given[4]. * It's now possible to specify an URL without a protocol. If it's missing, `file://` is automatically added as it was the case in the original `fetchGit`-implementation. [1] https://github.com/NixOS/nix/pull/3216 [2] https://github.com/NixOS/nix/pull/3549#issuecomment-625194383 [3] https://github.com/NixOS/nix/pull/3459 [4] https://github.com/NixOS/nix/pull/3216#issuecomment-553956703
2020-07-27Abstract out topo sorting logicJohn Ericson
2020-07-27Require `ca-derivations` everywhere we create a CA derivationJohn Ericson
"create" as in read one in from a serialized form, or build one from scratch in memory.
2020-07-27Merge branch 'misc-ca' of github.com:obsidiansystems/nix into ↵John Ericson
derivation-primop-floating-output
2020-07-27Merge branch 'ca-derivation-data-types' of github.com:obsidiansystems/nix ↵John Ericson
into misc-ca
2020-07-27Merge remote-tracking branch 'upstream/master' into ca-derivation-data-typesJohn Ericson
2020-07-27Merge pull request #3738 from obsidiansystems/hash-always-has-typeEelco Dolstra
Hash always has a valid type
2020-07-27Merge branch 'hash-always-has-type' of github.com:obsidiansystems/nix into ↵John Ericson
better-ca-parse-errors
2020-07-27Merge remote-tracking branch 'upstream/master' into hash-always-has-typeJohn Ericson
2020-07-27Merge branch 'ca-derivation-data-types' of github.com:obsidiansystems/nix ↵John Ericson
into misc-ca
2020-07-27Merge remote-tracking branch 'upstream/master' into ca-derivation-data-typesJohn Ericson
2020-07-27Merge pull request #3795 from ↵Eelco Dolstra
obsidiansystems/optional-derivation-output-storepath Only store hash in DerivationOutput for fixed output derivations
2020-07-27Merge branch 'optional-derivation-output-storepath' into ↵John Ericson
ca-derivation-data-types
2020-07-27Merge remote-tracking branch 'upstream/master' into ↵John Ericson
optional-derivation-output-storepath
2020-07-27Merge remote-tracking branch 'upstream/master' into hash-always-has-typeJohn Ericson
2020-07-26Merge pull request #3860 from matthewbauer/precompile-headers-crossEelco Dolstra
Allow PRECOMPILE_HEADERS in cross-compilation
2020-07-25Allow PRECOMPILE_HEADERS in cross-compilationMatthew Bauer
In cross, CXX will look like aarch64-unknown-linux-gnu-g++. We could run some command to check what kind of compiler it is, but for now we can just check if g++ is anywhere in the string. I couldn’t find any "ends with" for makefile, so it can be anywhere in CXX.
2020-07-24createUnixDomainSocket(): Fix off-by-one error in copying the socket pathEelco Dolstra
Reported by Kane York.
2020-07-23Merge branch 'misc-ca' of github.com:obsidiansystems/nix into ↵John Ericson
derivation-primop-floating-output
2020-07-23Merge remote-tracking branch 'upstream/master' into misc-caJohn Ericson
2020-07-23Make `Buildable` a `std::variant`John Ericson
I think this better captures the intent of what's going on: we either have an opaque store path, or a drv path with some outputs. Having this structure will also help us support CA derivations: we'll have to allow the outpath paths to be optional, so the structure we gain now makes up for the structure we loose then.
2020-07-23Remove unused fileEelco Dolstra
2020-07-23Merge branch 'misc-ca' of github.com:obsidiansystems/nix into ↵John Ericson
derivation-primop-floating-output
2020-07-23Merge remote-tracking branch 'upstream/master' into misc-caJohn Ericson
2020-07-23Merge pull request #3855 from obsidiansystems/delete-find-outputEelco Dolstra
Get rid of `basicDerivation::findOutput`
2020-07-23Merge remote-tracking branch 'upstream/master' into better-ca-parse-errorsJohn Ericson
2020-07-23Get 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-23Merge pull request #3854 from B4dM4n/registry-pin-writeEelco Dolstra
Save changes made by "nix registry pin" to user registry
2020-07-23Save changes made by "nix registry pin" to user registryFabian Möller
2020-07-23Merge pull request #3850 from obsidiansystems/references-scan-cleanupEelco Dolstra
Separate concerns in `scanForReferences` with TeeSink
2020-07-22Parse CA derivations using new output variantsJohn Ericson
We no longer need `ParsedDerivation` because everything libstore needs to know about is in the `BasicDerivation` proper.
2020-07-22Separate concerns in `scanForReferences` with TeeSinkJohn Ericson
This also will make it easier to use a `HashModuloSink` instead for CA derivations.
2020-07-22Merge pull request #3848 from knedlsepp/patch-1Eelco Dolstra
README: Fix link to hacking guide
2020-07-22README: Fix link to hacking guideJosef Kemetmüller
The link was previously interpreted as if it were relative to the current file.
2020-07-21Merge pull request #3736 from ↵Eelco Dolstra
obsidiansystems/allow-relative-paths-in-store-option Allow relative paths in --store option
2020-07-21Merge pull request #3714 from obsidiansystems/add-body-to-network-errorsEelco Dolstra
Add response body to network errors
2020-07-21Change logic for deciding what is a relative path for the local storeJohn Ericson
The was Eelco's prefered logic, and it looks good to me!
2020-07-21Merge pull request #3844 from ↵Eelco Dolstra
obsidiansystems/update-chunksize-to-suggested-value Update chunkSize to the suggested value
2020-07-21Update chunkSize to the suggested valueCarlo Nucera
This was a suggested course of action in a review in one of our earlier commits, https://github.com/NixOS/nix/pull/3801#discussion_r457557079
2020-07-21Merge remote-tracking branch 'upstream/master' into add-body-to-network-errorsJohn Ericson
2020-07-21Update src/libstore/build.ccJohn Ericson
2020-07-21Merge remote-tracking branch 'upstream/master' into better-ca-parse-errorsJohn Ericson