about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2018-03-22 download.cc: fix path for cached filesWill Dietz1-1/+1
2018-03-22 Fix buildEelco Dolstra1-2/+2
2018-03-22 TweakEelco Dolstra1-1/+1
2018-03-22 Merge branch 'fix/avoid-large-stack-buffers' of https://github.com/dtzWill/nixEelco Dolstra5-26/+27
2018-03-21 Merge branch 'fix/execl-null-sentinel' of git://github.com/dtzWill/nixShea Levy1-5/+5
2018-03-21 Also make the backwards compatible case of RemoteStore::addToStore run in ↵Eelco Dolstra1-15/+15
constant memory Just because we can.
2018-03-21 Make 'nix copy --to daemon' run in constant memoryEelco Dolstra2-5/+4
2018-03-21 shared.cc: style: prefer "nullptr" over '(char *)NULL'Will Dietz1-5/+5
2018-03-21 Make 'nix copy --to ssh://...' run in constant memoryEelco Dolstra1-2/+2
2018-03-21 Make 'nix copy --from ssh://...' run in constant memoryEelco Dolstra4-24/+22
For instance, this reduced the memory consumption of $ nix copy --from ssh://localhost --to ~/my-nix /nix/store/1n7x0yv8vq6zi90hfmian84vdhd04bgp-blender-2.79a from 632 MiB to 16 MiB.
2018-03-21 LegacySSHStore: Allow overriding the path to nix-storeEelco Dolstra1-1/+2
2018-03-20 execl: cast NULL sentinel to (char *), per man page and compiler warningWill Dietz1-5/+5
From exec(3): > The list of arguments must be terminated by a null pointer, and, since these > are variadic functions, this pointer must be cast (char *) NULL
2018-03-20 Remove unused channel-cache directoryEelco Dolstra1-5/+0
2018-03-20 Style fixEelco Dolstra1-17/+14
2018-03-20 Make <nix/buildenv.nix> a builtin builderEelco Dolstra4-66/+67
This avoids sandbox annoyances.
2018-03-20 Move builtinFetchurl to its own fileEelco Dolstra2-1/+1
2018-03-20 Slight simplificationEelco Dolstra1-5/+2
2018-03-20 SSHMaster: Optionally pass -v to sshEelco Dolstra1-0/+4
2018-03-20 Hack to get SSH error messages from build-remoteEelco Dolstra4-7/+33
E.g. cannot build on 'ssh://mac1': cannot connect to 'mac1': bash: nix-store: command not found cannot build on 'ssh://mac2': cannot connect to 'mac2': Host key verification failed. cannot build on 'ssh://mac3': cannot connect to 'mac3': Received disconnect from 213... port 6001:2: Too many authentication failures Authentication failed.
2018-03-19 serialise.cc: remove pessimising moveWill Dietz1-1/+1
from clang6: src/libutil/serialise.cc:189:23: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
2018-03-19 util: rename stdout/stdin members to avoid conflicts w/standard macroWill Dietz2-9/+9
(cherry picked from commit c389a7fb617ed7bcd617efa68c6a48c00405310d)
2018-03-19 Shut up signedness warningEelco Dolstra2-2/+2
2018-03-16 nix-shell: allow symlinks to .drvsLinus Heckemann2-3/+7
This makes persistent shell environments easier to use.
2018-03-16 Reduce substitution memory consumptionEelco Dolstra8-37/+145
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-16 decompress(): Use a Source and SinkEelco Dolstra6-87/+206
This allows decompression to happen in O(1) memory.
2018-03-16 Merge pull request #1939 from dezgeg/lexer-fixEelco Dolstra1-4/+5
libexpr: Recognize newline in more places in lexer
2018-03-16 Don't retry on CURLE_SSL_CACERT_BADFILEEelco Dolstra1-0/+1
The certificates won't get any better if we retry.
2018-03-15 Filter ANSI colors when not writing to a terminalEelco Dolstra4-8/+10
Fixes https://github.com/NixOS/nixpkgs/issues/37114.
2018-03-15 Merge pull request #1965 from masaeedu/masterEelco Dolstra3-7/+17
Wrap thread local in function for Cygwin
2018-03-14 Catch more possible instances of passing NULL to memcpy.Shea Levy3-4/+10
Actually fixes #1976.
2018-03-14 Merge branch 'fix/errno-sighandler' of git://github.com/dtzWill/nixShea Levy1-0/+3
2018-03-14 concatLists: Don't pass NULL pointers to memcpy.Shea Levy1-1/+2
This is UB, even if the size is 0. See #1976. Fixes #1976.
2018-03-14 nix-daemon: preserve errno in signal handler (thanks tsan)Will Dietz1-0/+3
2018-03-14 Fix compatibility with latest boost::formatEelco Dolstra2-23/+23
2018-03-14 Use boost::format from the boost packageEelco Dolstra18-2437/+6
Note that this only requires headers from boost so it doesn't add a runtime dependency. Also, use Nixpkgs 18.03.
2018-03-13 Merge pull request #1906 from dtzWill/fix/nix-searchShea Levy1-1/+6
nix search: tests and fix #1893 and part of #1892
2018-03-13 build-remote: Don't substitute the build resultEelco Dolstra1-1/+1
2018-03-13 TypoEelco Dolstra1-1/+1
2018-03-13 fetchGit: Fix debug messageGuillaume Maudoux1-1/+1
2018-03-12 Wrap thread local in function for CygwinAsad Saeeduddin3-7/+17
Fixes #1826. See #1352 for a previous instance of a similar change.
2018-03-09 Fix double free in Store::queryPathInfo()Eelco Dolstra1-4/+4
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-09 Modified MakeBinOp to no longer produce its name using concatenation and "##".Tim Engler1-11/+11
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-07 Fix #1957Eelco Dolstra1-1/+1
2018-03-07 Merge pull request #1955 from dtzWill/fix/rand-randomEelco Dolstra3-3/+3
rand() -> random(), since we use srandom().
2018-03-06 rand() -> random(), since we use srandom().Will Dietz3-3/+3
rand() requires we call srand() instead, but might as well use random().
2018-03-06 logging: Don't throw from Activity destructorWill Dietz2-2/+9
Move definition of destructor to logging.cc for access to util.hh's ignoreException.
2018-03-05 ssh-ng: Don't forward options to the daemon.Shea Levy2-1/+12
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-02 hoist vector out of loop just in caseWill Dietz1-1/+1
2018-03-02 don't allocate large buffers on the stackWill Dietz5-29/+30
2018-03-02 Merge branch 'improve-search-algorithm' of git://github.com/Ma27/nixShea Levy1-6/+6