aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-06-04Fix completion script install nameEelco Dolstra
2020-06-04Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2020-06-04Make 'nix dev-shell' a deprecated alias for 'nix develop'Eelco Dolstra
2020-06-04Rename 'nix dev-shell' to 'nix develop'Eelco Dolstra
Fixes #3648.
2020-06-03Fix GitHub testEelco Dolstra
2020-06-03Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2020-06-03Missing `#include <cassert>` in `lru-cache.hh` (#3654)John Ericson
This was a latent bug that just appeared because of the tests that were added. Remember to wait for CI! :)
2020-06-02Merge pull request #3639 from obsidiansystems/do-fixme-store-removesEelco Dolstra
Remove `addToStore` variant as requested by `FIXME`
2020-06-02Merge branch 'lru-tests' of https://github.com/gilligan/nixEelco Dolstra
2020-06-02src/libutil/tests/lru-cache.cc: Check erase()Eelco Dolstra
Co-authored-by: James Lee <jbit@jbit.net>
2020-06-02Merge pull request #3642 from knl/improve-ref-validity-checking-in-fetchgitEelco Dolstra
Improve ref validity checking in fetchgit
2020-06-02Merge pull request #3645 from mkenigs/fetchOrSubstituteTree-improvementsEelco Dolstra
Cache tree in fetchOrSubstituteTree
2020-06-01use Tree ctorMatthew Kenigsberg
2020-06-01Tree ctorsMatthew Kenigsberg
2020-06-01fetchOrSubstituteTree improvementsMatthew Kenigsberg
Caches tree in addition to lockedRef, and explicitly writes out the logic for different combinations of cached/uncached flakes and indirect/resolved/locked flakes. This eliminates uneccessary calls to lookupInFlakeCache, fetchTree, maybeLookupFlake, and flakeCache.push_back
2020-05-31Add tests for lru-cache.hhTobias Pflug
2020-05-30Ensure we restrict refspec interpretation while fetchingNikola Knezevic
As `git fetch` may chose to interpret refspec to it's liking, ensure that we only pass refs that begin with `refs/` as is, otherwise, prepend them with `refs/heads`. Otherwise, branches named `heads/foo` (I know it's bad, but it's allowed), would be fetched as `foo`, instead of `heads/foo`.
2020-05-30Improve ref validity checking in fetchGitNikola Knezevic
The previous regex was too strict and did not match what git was allowing. It could lead to `fetchGit` not accepting valid branch names, even though they exist in a repository (for example, branch names containing `/`, which are pretty standard, like `release/1.0` branches). The new regex defines what a branch name should **NOT** contain. It takes the definitions from `refs.c` in https://github.com/git/git and `git help check-ref-format` pages. This change also introduces a test for ref name validity checking, which compares the result from Nix with the result of `git check-ref-format --branch`.
2020-05-30Move substitution into Input::fetch()Eelco Dolstra
Closes #3520.
2020-05-30Check revCount / lastModified input attributes if specifiedEelco Dolstra
2020-05-30Remove TreeInfoEelco Dolstra
The attributes previously stored in TreeInfo (narHash, revCount, lastModified) are now stored in Input. This makes it less arbitrary what attributes are stored where. As a result, the lock file format has changed. An entry like "info": { "lastModified": 1585405475, "narHash": "sha256-bESW0n4KgPmZ0luxvwJ+UyATrC6iIltVCsGdLiphVeE=" }, "locked": { "owner": "NixOS", "repo": "nixpkgs", "rev": "b88ff468e9850410070d4e0ccd68c7011f15b2be", "type": "github" }, is now stored as "locked": { "owner": "NixOS", "repo": "nixpkgs", "rev": "b88ff468e9850410070d4e0ccd68c7011f15b2be", "type": "github", "lastModified": 1585405475, "narHash": "sha256-bESW0n4KgPmZ0luxvwJ+UyATrC6iIltVCsGdLiphVeE=" }, The 'Input' class is now a dumb set of attributes. All the fetcher implementations subclass InputScheme, not Input. This simplifies the API. Also, fix substitution of flake inputs. This was broken since lazy flake fetching started using fetchTree internally.
2020-05-29Remove addToStore variant as requested by `FIXME`John Ericson
The idea is it's always more flexible to consumer a `Source` than a plain string, and it might even reduce memory consumption. I also looked at `addToStoreFromDump` with its `// FIXME: remove?`, but the worked needed for that is far more up for interpretation, so I punted for now.
2020-05-29Factor out GitHub / GitLab commonalityEelco Dolstra
2020-05-29Merge branch 'gitlab' of https://github.com/Kloenk/nixos-nix into flakesEelco Dolstra
2020-05-28add gitlab libfetcherFinn Behrens
2020-05-28Merge pull request #3631 from andir/libutil-config-testsEelco Dolstra
Add unit tests for config.cc
2020-05-28Merge pull request #3455 from Ericson2314/enum-FileIngestionMethodEelco Dolstra
Replace some `bool recursive` with a new `FileIngestionMethod` enum
2020-05-28Merge remote-tracking branch 'origin/master' into flakesEelco Dolstra
2020-05-28Merge branch 'store-visited' of https://github.com/mkenigs/nix into flakesEelco Dolstra
2020-05-28nixpkgsFlakeRef(): Use locked nixpkgsEelco Dolstra
2020-05-28Merge branch 'nixpkgs#bashInteractive' of https://github.com/mkenigs/nix ↵Eelco Dolstra
into flakes
2020-05-28Merge pull request #3632 from LnL7/darwin-xzEelco Dolstra
installer: don't require xz on darwin
2020-05-27Use `FileIngestionMethod` for `nix hash`John Ericson
There was an enum there that matched in perfectly.
2020-05-27installer: don't require xz on darwinDaiderd Jordan
On macOS the system tar has builtin support for lzma while xz isn't available as a separate binary. There's no builtin package manager there available either so having to install lzma (without nix) would be rather painful.
2020-05-27Rename some variables named “recursive” to “method”Matthew Bauer
This is much less confusing since recursive is no longer a boolean.
2020-05-27Don’t use FileIngestionMethod for StorePathsCommandMatthew Bauer
This is a different recursive than used in makeFixedOutputPath.
2020-05-27config.hh: Add documentationAndreas Rammhold
Provides some general overview on the mechanics of Config/Setting and comments for the public methods of Config.
2020-05-27tests/config.cc: add tests for Config::applyConfigAndreas Rammhold
2020-05-27config.cc: extract parts of applyConfigFile into applyConfigAndreas Rammhold
This moves the actual parsing of configuration contents into applyConfig which applyConfigFile is then going to call. By changing this we can now test the configuration file parsing without actually create a file on disk.
2020-05-27Add unit tests for config.ccAndreas Rammhold
2020-05-27Merge pull request #3608 from surajbarkale/patch-1Eelco Dolstra
Use /etc/zshenv instead of /etc/zshrc for profile
2020-05-27Merge pull request #3621 from gilligan/add-json-testsEelco Dolstra
Add unit tests for "json.hh"
2020-05-27Merge pull request #3625 from gilligan/xml-writer-testsEelco Dolstra
Add unit tests for xml-writer
2020-05-27Merge pull request #3620 from gilligan/hash-testsEelco Dolstra
Add unit tests for hashing functions
2020-05-26Change remaining bools with FileIngestionMethodCarlo Nucera
2020-05-26Merge remote-tracking branch 'origin/master' into enum-FileIngestionMethodCarlo Nucera
2020-05-26installer: fix unused variableDomen Kožar
2020-05-26Fix installer script bugsDomen Kožar
- --no-channel-add didn't have effect on multi-user installation - some new flags didn't work at all - document all installer flags
2020-05-25Add unit tests for xml-writerTobias Pflug
2020-05-25Merge pull request #3375 from domenkozar/multi-user-countDomen Kožar
install-multi-user: allow overriding user count