about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2012-01-04 * Don't use dynamic_cast, it's very slow. "nix-instantiateEelco Dolstra3-24/+23
/etc/nixos/nixos -A system" spent about 10% of its time in dynamic_cast.
2012-01-04 * Merge the multiple-outputs-sandbox branch (svn merge --reintegrateEelco Dolstra21-125/+343
^/nix/branches/multiple-outputs-sandbox). Multiple output support still isn't complete, but it wasn't complete in the trunk either, so it doesn't hurt.
2012-01-04 * Check whether the outputName attribute works.Eelco Dolstra1-2/+2
2012-01-04 * Let --disable-gc work.Eelco Dolstra1-2/+2
2012-01-04 * currentOutput -> outputName. "current" implies some temporalEelco Dolstra1-1/+1
aspect.
2012-01-04 * Export the original input attributes of the derivation inEelco Dolstra1-1/+4
‘drvAttrs’. This will simplify the implementation of functions such as ‘overrideDerivation’ in Nixpkgs, which need to filter out any added attributes such as outPath.
2012-01-04 * Simplify the implementation of "derivation" a bit: lift out theEelco Dolstra1-18/+11
common attribution so that they're evaluated only once, etc. Note that the default output is now the first element of the "outputs" attribute, rather than the first element of the sorted list of outputs. This seems more user-friendly.
2012-01-03 * Drop the inefficient "Path" suffix in output attribute names.Eelco Dolstra2-7/+5
2012-01-03 * Move the implementation of the ‘derivation’ primop into a separateEelco Dolstra4-26/+35
file.
2012-01-03 * Sync with the trunk.Eelco Dolstra35-243/+242
2012-01-03 * Ignore missing manifest symlinks.Eelco Dolstra1-0/+1
2012-01-03 * FreeBSD tar defaults to the tape device instead of stdout.Eelco Dolstra1-1/+1
2012-01-03 * Forgot to add.Eelco Dolstra1-0/+13
2012-01-03 * Add a test for nix-channel.Eelco Dolstra13-75/+103
* Refactor the nix-channel unpacker a bit.
2012-01-03 * Use Nix::Config.Eelco Dolstra4-22/+15
2012-01-03 * Refactoring: Get rid of a few subdirectories in corepkgs/, and someEelco Dolstra15-84/+52
other simplifications. * Use <nix/...> to locate the corepkgs. This allows them to be overriden through $NIX_PATH. * Use bash's pipefail option in the NAR builder so that we don't need to create a temporary file.
2011-12-30 * Follow our own coding conventions.Eelco Dolstra3-65/+61
2011-12-30 * Remove a redundant dot (Nicolas Pierron).Eelco Dolstra1-1/+1
2011-12-30 * Support multiple outputs in nix-store (specifically the ‘--query’Eelco Dolstra1-43/+63
and ‘--realise’ actions).
2011-12-30 * Oops.Eelco Dolstra1-1/+1
2011-12-30 * Move topoSortPaths() out of gc.cc.Eelco Dolstra2-36/+36
2011-12-30 * Reject a build if there is a cycle among the outputs. This isEelco Dolstra4-9/+24
necessary because existing code assumes that the references graph is acyclic.
2011-12-30 * Fix doc error.Eelco Dolstra1-1/+1
2011-12-30 * Sync with the trunk.Eelco Dolstra9-30/+70
2011-12-25 * Make sure that lock files are cleaned up properly when buildingEelco Dolstra1-7/+7
through the build hook.
2011-12-22 * Oops.Eelco Dolstra1-1/+1
2011-12-22 * In the garbage collector, delete invalid paths before deletingEelco Dolstra3-12/+45
unreachable paths. This matters when using --max-freed etc.: unreachable paths could become reachable again, so it's nicer to keep them if there is "real" garbage to be deleted. Also, don't use readDirectory() but read the Nix store and delete invalid paths in parallel. This reduces GC latency on very large Nix stores.
2011-12-22 * Drop unnecessary call to canonPath() (nixStore is already canonical).Eelco Dolstra1-1/+1
2011-12-22 * ‘--disable-shared’ is no longer supported. Fortunately it's notEelco Dolstra1-2/+2
needed for the coverage analysis.
2011-12-21 * Another case of lock file permissions being too liberal.Eelco Dolstra1-1/+1
2011-12-21 * Security: make sure the lock files used by build-remote.pl are notEelco Dolstra1-5/+5
readable to other users. Otherwise, any user can open the lock file for reading and lock it, thus DoSing the remote build mechanism.
2011-12-21 * Use a lock to ensure that only one build-remote instance can copy aEelco Dolstra1-1/+10
closure to a given machine at the same time. This prevents the case where multiple instances try to copy the same missing store path to the target machine, which is very wasteful.
2011-12-21 * The ‘foo.drvPath’ feature was already broken in read-only mode.Eelco Dolstra2-4/+5
Since it's rarely used and fixing it is too much work right now, just document it.
2011-12-21 Make the reference cycle in the cyclic outputs test indirectShea Levy1-3/+4
2011-12-21 Revert previous commitShea Levy1-9/+0
It doesn't detect indirect references
2011-12-21 Detect and reject mutually-referential outputsShea Levy1-0/+9
There is probably a more efficient way to do this.
2011-12-21 * Simplify the context handling logic.Eelco Dolstra1-24/+13
2011-12-21 * Add a test for unsafeDiscardOutputDependency. Not really related toEelco Dolstra2-0/+16
multiple outputs, but good to have anyway.
2011-12-21 * Add a test for referring to another derivation's ‘drvPath’. ThisEelco Dolstra2-1/+29
currently fails in read-only mode.
2011-12-21 * Add some accidentally committed files.Eelco Dolstra2-2/+0
2011-12-20 * Doing a GC after building a derivation with cyclic outputs currentlyEelco Dolstra1-1/+1
segfaults.
2011-12-20 * Add a (currently failing) test that checks whether mutuallyEelco Dolstra2-0/+22
recursive outputs are properly rejected. * Add a (also failing) test for "nix-build -A <output-name>".
2011-12-20 * Refactor a bit so that more tests can be added.Eelco Dolstra5-36/+26
2011-12-20 * Fix the build.Eelco Dolstra2-2/+2
2011-12-16 * Sync with the trunk.Eelco Dolstra45-684/+930
2011-12-16 * importPath() -> importPaths(). Because of buffering of the inputEelco Dolstra10-57/+75
stream it's now necessary for the daemon to process the entire sequence of exported paths, rather than letting the client do it.
2011-12-16 * Avoid expensive conversions from char arrays to STL strings.Eelco Dolstra3-13/+25
2011-12-16 * Make the import operation through the daemon much more efficientEelco Dolstra6-44/+68
(way fewer roundtrips) by allowing the client to send data in bigger chunks. * Some refactoring.
2011-12-16 * Clean up exception handling.Eelco Dolstra2-3/+10
2011-12-15 * Refactoring: move sink/source buffering into separate classes.Eelco Dolstra8-90/+125
* Buffer the HashSink. This speeds up hashing a bit because it prevents lots of calls to the hash update functions (e.g. nix-hash went from 9.3s to 8.7s of user time on the closure of my /var/run/current-system).