aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-03-19Merge branch 'master' of git://github.com/bchallenor/nixShea Levy
2018-03-19Fix build on non-x86_64-linuxEelco Dolstra
2018-03-19Shut up signedness warningEelco Dolstra
2018-03-19Dockerfile: verify tar file with sha256sumBen Challenor
2018-03-18Dockerfile: 1.11.14 -> 2.0Ben Challenor
2018-03-18Fix bad XMLEelco Dolstra
2018-03-17doc: document the min-free and max-free optionszimbatm
2018-03-17doc: add xml:id to all the config optionszimbatm
2018-03-16nix-shell: allow symlinks to .drvsLinus Heckemann
This makes persistent shell environments easier to use.
2018-03-16Reduce substitution memory consumptionEelco Dolstra
copyStorePath() now pipes the output of srcStore->narFromPath() directly into dstStore->addToStore(). The sink used by the former is converted into a source usable by the latter using boost::coroutine2. This is based on [1]. This reduces the maximum resident size of $ nix build --store ~/my-nix/ /nix/store/b0zlxla7dmy1iwc3g459rjznx59797xy-binutils-2.28.1 --substituters file:///tmp/binary-cache-xz/ --no-require-sigs from 418592 KiB to 53416 KiB. (The previous commit also reduced the runtime from ~4.2s to ~3.4s, not sure why.) A further improvement will be to download files into a Sink. [1] https://github.com/NixOS/nix/compare/master...Mathnerd314:dump-fix-coroutine#diff-dcbcac55a634031f9cc73707da6e4b18 Issue #1969.
2018-03-16decompress(): Use a Source and SinkEelco Dolstra
This allows decompression to happen in O(1) memory.
2018-03-16Merge pull request #1939 from dezgeg/lexer-fixEelco Dolstra
libexpr: Recognize newline in more places in lexer
2018-03-16Don't retry on CURLE_SSL_CACERT_BADFILEEelco Dolstra
The certificates won't get any better if we retry.
2018-03-15Filter ANSI colors when not writing to a terminalEelco Dolstra
Fixes https://github.com/NixOS/nixpkgs/issues/37114.
2018-03-15Merge pull request #1965 from masaeedu/masterEelco Dolstra
Wrap thread local in function for Cygwin
2018-03-14Catch more possible instances of passing NULL to memcpy.Shea Levy
Actually fixes #1976.
2018-03-14Merge branch 'fix/errno-sighandler' of git://github.com/dtzWill/nixShea Levy
2018-03-14concatLists: Don't pass NULL pointers to memcpy.Shea Levy
This is UB, even if the size is 0. See #1976. Fixes #1976.
2018-03-14nix-daemon: preserve errno in signal handler (thanks tsan)Will Dietz
2018-03-14Fix compatibility with latest boost::formatEelco Dolstra
2018-03-14Factor out commonality between release.nix and shell.nixEelco Dolstra
2018-03-14Use boost::format from the boost packageEelco Dolstra
Note that this only requires headers from boost so it doesn't add a runtime dependency. Also, use Nixpkgs 18.03.
2018-03-13Merge pull request #1906 from dtzWill/fix/nix-searchShea Levy
nix search: tests and fix #1893 and part of #1892
2018-03-13build-remote: Don't substitute the build resultEelco Dolstra
2018-03-13TypoEelco Dolstra
2018-03-13fetchGit: Fix debug messageGuillaume Maudoux
2018-03-12Wrap thread local in function for CygwinAsad Saeeduddin
Fixes #1826. See #1352 for a previous instance of a similar change.
2018-03-09Fix double free in Store::queryPathInfo()Eelco Dolstra
It was holding on to a Value* (i.e. a std::shared_ptr<ValidPathInfo>*) outside of the pathInfoCache lock, so the std::shared_ptr could be destroyed between the release of the lock and the decrement of the std::shared_ptr refcount. This can happen if more than 'path-info-cache-size' paths are added in the meantime, *or* if clearPathInfoCache() is called. The hydra-queue-runner queue monitor thread periodically calls the later, so is likely to trigger a crash. Fixes https://github.com/NixOS/hydra/issues/542.
2018-03-09Merge pull request #1959 from redfish64/masterEelco Dolstra
Modified MakeBinOp to no longer produce its name using concatenation …
2018-03-09Modified MakeBinOp to no longer produce its name using concatenation and "##".Tim Engler
Doing so prevents emacs tags from working, as well as makes the code extremely confusing for a newbie. In the prior state, if someone wants to find the definition of "ExprApp" for example, a grep through the code reveals nothing. Since the definition could be hiding in numerous ".h" files, it's really difficult to find. This personally took me several hours to figure out.
2018-03-07Fix #1957Eelco Dolstra
2018-03-07Merge pull request #1955 from dtzWill/fix/rand-randomEelco Dolstra
rand() -> random(), since we use srandom().
2018-03-06rand() -> random(), since we use srandom().Will Dietz
rand() requires we call srand() instead, but might as well use random().
2018-03-06logging: Don't throw from Activity destructorWill Dietz
Move definition of destructor to logging.cc for access to util.hh's ignoreException.
2018-03-05Merge pull request #1948 from shlevy/no-forwardEelco Dolstra
ssh-ng: Don't forward options to the daemon.
2018-03-05ssh-ng: Don't forward options to the daemon.Shea Levy
This can be iterated on and currently leaves out settings we know we want to forward, but it fixes #1713 and fixes #1935 and isn't fundamentally broken like the status quo. Future changes are suggested in a comment.
2018-03-03release.nix: don't try to use nix-2.0 branch, no longer existsWill Dietz
Probably should point at the 18.03 release branch once that's made.
2018-03-02hoist vector out of loop just in caseWill Dietz
2018-03-02don't allocate large buffers on the stackWill Dietz
2018-03-02Merge branch 'improve-search-algorithm' of git://github.com/Ma27/nixShea Levy
2018-03-02Merge branch 'write-failure-fixes' of git://github.com/lheckemann/nixShea Levy
2018-03-02Merge pull request #1932 from mfiano/patch-1Eelco Dolstra
nix-channel grammar and punctuation
2018-03-02libexpr: Recognize newline in more places in lexerTuomas Tynkkynen
Flex's regexes have an annoying feature: the dot matches everything except a newline. This causes problems for expressions like: "${0}\ " where the backslash-newline combination matches this rule instead of the intended one mentioned in the comment: <STRING>\$|\\|\$\\ { /* This can only occur when we reach EOF, otherwise the above (...|\$[^\{\"\\]|\\.|\$\\.)+ would have triggered. This is technically invalid, but we leave the problem to the parser who fails with exact location. */ return STR; } However, the parser actually accepts the resulting token sequence ('"' DOLLAR_CURLY 0 '}' STR '"'), which is a problem because the lexer rule didn't assign anything to yylval. Ultimately this leads to a crash when dereferencing a NULL pointer in ExprConcatStrings::bindVars(). The fix does change the syntax of the language in some corner cases but I think it's only turning previously invalid (or crashing) syntax to valid syntax. E.g. "a\ b" and ''a''\ b'' were previously syntax errors but now both result in "a\nb". Found by afl-fuzz.
2018-03-02Fix error messageEelco Dolstra
2018-03-01tests/search.sh: simplify, don't rely on consistent orderingWill Dietz
2018-03-01nix-channel grammar and punctuationMichael Fiano
Minor changes to the nix-channel manpage for my first contribution
2018-02-28Merge pull request #1927 from dtzWill/fix/fetchgit-HEADShea Levy
fetchGit: use "HEAD" as default ref instead of "master"
2018-02-28fetchGit: use "HEAD" as default refWill Dietz
2018-02-28launchd: enable keepalive for the nix-daemon serviceDaiderd Jordan
Without this the daemon won't be restarted if the process ever dies, for example when sending a SIGHUP to reload nix.conf.
2018-02-28Actually fix nixDataDir in non-canonical pathShea Levy