aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2021-09-01Merge branch 'short-circuit-subst' of https://github.com/Kha/nixEelco Dolstra
2021-09-01Merge pull request #5066 from Radvendii/masterEelco Dolstra
add antiquotations to paths
2021-08-31fix parse of `/${foo}`. was `// + foo`Taeer Bar-Yam
I don't think this changes the way any program would behave, but it's a cleaner internal representation.
2021-08-31path antiquotations: canonizePath -> canonicalizePathTaeer Bar-Yam
2021-08-31Merge pull request #5071 from NixOS/dont-send-xp-features-to-the-daemonEelco Dolstra
Don’t send the experimental-features to the daemon
2021-08-30TarArchive: Small refactoringEelco Dolstra
2021-08-30Don't segfault if archive_entry_pathname() returns nullEelco Dolstra
Issues #4499.
2021-08-30Merge pull request #5175 from Pamplemousse/makeEelco Dolstra
Don't overwrite user provided `lib*_LDFLAGS`
2021-08-30Merge pull request #5191 from hercules-ci/evalstate-lifetime-hygieneEelco Dolstra
EvalState lifetime hygiene
2021-08-30Don’t accept experimental features from the clientregnat
If the client sends an “experimental features” setting, just ignore it
2021-08-30TidyRobert Hensing
2021-08-29Fix use after free with vImportedDrvToDerivationRobert Hensing
2021-08-29Move vCallFlake into EvalStateRobert Hensing
This fixes a use-after-free bug: 1. s = new EvalState(); 2. callFlake() 3. static vCallFlake now references s 4. delete s; 5. s2 = new EvalState(); 6. callFlake() 7. static vCallFlake still references s 8. crash Nix 2.3 did not have a problem with recreating EvalState.
2021-08-29Force all Pos* to be non-nullRobert Hensing
This fixes a class of crashes and introduces ptr<T> to make the code robust against this failure mode going forward. Thanks regnat for the idea of a ref<T> without overhead! Closes #4895 Closes #4893 Closes #5127 Closes #5113
2021-08-25Don't overwrite user provided `lib*_LDFLAGS`Pamplemousse
Signed-off-by: Pamplemousse <xav.maso@gmail.com>
2021-08-23Coding styleEelco Dolstra
2021-08-23Merge branch 'fix/subflake-follows-fix' of ↵Eelco Dolstra
https://github.com/ArctarusLimited/nix
2021-08-23Merge pull request #5160 from CertainLach/fix/invalid-characters-in-json-loggerEelco Dolstra
Replace invalid characters in json logger
2021-08-22Replace invalid characters in json loggerYaroslav Bolyukin
Fixes #5159 Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
2021-08-21nix {bundle,run}: drop broken flake attr-path prefixesJan Tojnar
“packages” was probably meant to be “packages.${system}.” but that is already listed in `getDefaultFlakeAttrPathPrefixes` in `installables`, which is probably why no one noticed it was broken.
2021-08-21nix develop: Fix `devShells` lookupJan Tojnar
It currently fails with the following error: error: flake 'git+file://…' does not provide attribute 'devShells.x86_64-linuxhaskell', 'packages.x86_64-linux.haskell', 'legacyPackages.x86_64-linux.haskell' or 'haskell'
2021-08-19nix develop --phase: chdir to flake directoryMatthew Kenigsberg
For git+file and path flakes, chdir to flake directory so that phases that expect to be in the flake directory can run Fixes https://github.com/NixOS/nix/issues/3976
2021-08-17Enable JSON option to show flakesTom Bereknyei
`nix-flake show --json`
2021-08-17Fix follows paths in subordinate lockfilesAlex Zero
2021-08-16Merge pull request #5134 from pszubiak/fix-pkgconfig-install-pathEelco Dolstra
Install pkg-config files in the correct location
2021-08-14fix typo in ca-error messageJörg Thalheim
2021-08-13Install pkg-config files in the correct locationPiotr Szubiakowski
Use `$(libdir)` while installing .pc files looks like a more generic solution. For example, it will work for distributions like RHEL or Fedora where .pc files are installed in `/usr/lib64/pkgconfig`.
2021-08-11In flake lock file diffs, show the last-modified date of inputs if availableEelco Dolstra
This is a bit more informative than just the hash. Also, format the diffs a bit nicer.
2021-08-1015f4d4f follow upPamplemousse
* libstore: `bz2` should not be linked * libutil: `zlib.h` should not be included Signed-off-by: Pamplemousse <xav.maso@gmail.com>
2021-08-09Merge pull request #5111 from Pamplemousse/cleanEelco Dolstra
Minor maintenance cleaning
2021-08-09libexpr: Squash similar conditionsPamplemousse
Signed-off-by: Pamplemousse <xav.maso@gmail.com>
2021-08-09Expand docstring of `Store::querySubstitutablePathInfos`Sebastian Ullrich
2021-08-09Merge pull request #5101 from fzakaria/faridzakaria/fix-nix-shellEelco Dolstra
nix-shell --pure: Let it work for any derivation
2021-08-09Merge pull request #5104 from andir/refscan-raceEelco Dolstra
Fix potential race-condition in reference scanning code
2021-08-09Merge pull request #5106 from andir/libstore-waiter-setEelco Dolstra
libstore: use set instead of list for waiter list
2021-08-08libstore: use set instead of list for waiter listAndreas Rammhold
This replaces the O(n) search complexity in our insert code with a lookup of O(log n). It also makes removing waitees easier as we can use the extract method provided by the set class.
2021-08-08Short-circuit querying substituters on successSebastian Ullrich
2021-08-07Fix potential race-condition in reference scanning codeAndreas Rammhold
Previously the code ensures that the isBase32 array would only be initialised once in a single-threaded context. If two threads happen to call the function before the initialisation was completed both of them would have completed the initialization step. This allowed for a race-condition where one thread might be done with the initialization but the other thread sets all the fields to false again. For a brief moment the base32 detection would then produce false-negatives.
2021-08-07Whitelist nixConfig.flake-registryAlexander Bantyev
flake-registry should be safe to set to an aribtrary value, since it is identical to just setting `inputs`.
2021-08-06nix-shell --pure: Let it work for any derivationFarid Zakaria
`nix-shell --pure` when applied to a non stdenv derivation doesn't seem to clear the PATH. It expects the stdenv/setup file to do so. This adds an explicit `unset PATH` by nix-build.cc (nix-shell) itself so that it's not reliant on stdenv/setup anymore. This does not break impure nix-shell since the PATH is persisted as the variable `p` prior in the bash rcfile fixes #5092
2021-08-06Merge pull request #5075 from andir/libutil-base64-initEelco Dolstra
libutil: initialize the base64 decode array only once
2021-08-06add antiquotations to pathsTaeer Bar-Yam
2021-08-02fix git init race conditionMichael Fellinger
2021-07-31nix-shell -p: pass --arg values as nixpkgs paramsldesgoui
2021-07-30libutil: initialize the base64 decode array only onceAndreas Rammhold
Previously, despite having a boolean that tracked initialization, the decode characters have been "calculated" every single time a base64 string was being decoded. With this change we only initialize the decode array once in a thread-safe manner.
2021-07-30Remove unused struct in `libstore`Pamplemousse
Signed-off-by: Pamplemousse <xav.maso@gmail.com>
2021-07-30Don’t send the experimental-features to the daemonregnat
The experimental features are, well, experimental, and shouldn’t be carelessly and transparently enabled. Besides, some (`ca-derivations` at least) need to be enabled at startup in order to work properly. So it’s better to just require that daemon be started with the right `experimental-features` option. Fix #5017
2021-07-28Merge pull request #5042 from alyssais/pthreadEelco Dolstra
Enable pthreads for new libraries
2021-07-27nix develop: Support chroot storesEelco Dolstra
Fixes #5024.
2021-07-27Merge pull request #5048 from tweag/flox-eval-storeEelco Dolstra
--eval-store and faster closure copying