aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-06-10Merge pull request #3655 from zimbatm/hash-encoding-prepareEelco Dolstra
libutils/hash: remove default encoding
2020-06-10Merge pull request #3668 from tweag/fix-remote-nix-env-testEelco Dolstra
Actually test nix-env with a remote store
2020-06-10Merge pull request #3677 from matthewbauer/static-nix-one-translation-unitEelco Dolstra
Prelink static libraries into an object file
2020-06-09Prelink static libraries into an object fileMatthew Bauer
This combines the *.o into a big .o producing one translation unit. This preserve our unused static initializers, as specified in the C++ standard: If no variable or function is odr-used from a given translation unit, the non-local variables defined in that translation unit may never be initialized (this models the behavior of an on-demand dynamic library). Note that this is very similar to how the --whole-archive flag works. One advantage of this is that users of the final .a library don’t have to worry about specifying --whole-archive, or that we have unused static initializers at all!
2020-06-09Disable extra-platforms = i686-linux on wsl1 (#3676)Matthew Bauer
WSL1 doesn’t support i686-linux emulation, see https://github.com/microsoft/wsl/issues/2468
2020-06-08Actually test nix-env with a remote storeregnat
The `remote-store` test loads the `user-env` one to test nix-env when using the daemon, but actually does it incorrectly because every test starts (in `common.sh`) by resetting the value of `NIX_REMOTE`, meaning that the `user-env` test will never use the daemon. Fix this by setting `NIX_REMOTE_` before sourcing `user-env.sh` in the `remote-store` test, so that `NIX_REMOTE` is correctly set inside the test
2020-06-05Merge pull request #3656 from obsidiansystems/handle-unknown-file-ingestionEelco Dolstra
Add error message when FileIngestionMethod is out of bounds
2020-06-05Fix log-prefix of `nix build -L`Eelco Dolstra
Alternative fix to #3661. The cause was that 'name' is a std::string_view into a temporary which could get overwritten.
2020-06-05Merge pull request #3664 from obsidiansystems/gitignore-test-fileEelco Dolstra
Add `src/libutil/tests/libutil-tests` to `.gitignore`
2020-06-04Add `src/libutil/tests/libutil-tests` to `.gitignore`John Ericson
I gather this comes from the new unit tests.
2020-06-04Add error message when FileIngestionMethod is out of boundsMatthew Bauer
bool coerces anything >0 to true, but in the future we may have other file ingestion methods. This shows a better error message when the “recursive” byte isn’t 1.
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-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-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-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-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-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 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
2020-05-25Merge pull request #3623 from domenkozar/installer-pass-nix-confDomen Kožar
Allow passing extra nix.conf to installer
2020-05-25Allow passing extra nix.conf to installerDomen Kožar
2020-05-25install-multi-user: allow overriding user countDomen Kožar
2020-05-25Add unit tests for "json.hh"Tobias Pflug
2020-05-25Add unit tests for hashing functionsTobias Pflug
2020-05-23Merge pull request #3611 from nomeata/joachim/nix-env-manDomen Kožar
Manpages: Do not refer to nixpkgs-channels