Eelco Dolstra
502d94048a
* Ignore missing manifest symlinks.
2012-01-03 12:59:00 +00:00
Eelco Dolstra
93b56acb2d
* Support multiple outputs in nix-store (specifically the ‘--query’
...
and ‘--realise’ actions).
2011-12-30 17:25:19 +00:00
Eelco Dolstra
a71d02440b
* Oops.
2011-12-30 17:13:25 +00:00
Eelco Dolstra
6f5e3326ce
* Move topoSortPaths() out of gc.cc.
2011-12-30 15:02:50 +00:00
Eelco Dolstra
b1004f40f7
* Reject a build if there is a cycle among the outputs. This is
...
necessary because existing code assumes that the references graph is
acyclic.
2011-12-30 14:47:14 +00:00
Eelco Dolstra
254b3399ba
* Sync with the trunk.
2011-12-30 13:08:14 +00:00
Eelco Dolstra
8c42a8c8ff
* Make sure that lock files are cleaned up properly when building
...
through the build hook.
2011-12-25 16:38:37 +00:00
Eelco Dolstra
524fa8a4f1
* Oops.
2011-12-22 16:27:03 +00:00
Eelco Dolstra
b33da599c5
* In the garbage collector, delete invalid paths before deleting
...
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 15:55:53 +00:00
Eelco Dolstra
58d974336c
* Drop unnecessary call to canonPath() (nixStore is already canonical).
2011-12-22 14:33:34 +00:00
Eelco Dolstra
66c99b0cf5
* ‘--disable-shared’ is no longer supported. Fortunately it's not
...
needed for the coverage analysis.
2011-12-22 10:58:27 +00:00
Eelco Dolstra
2aac7cd021
* Another case of lock file permissions being too liberal.
2011-12-21 19:17:45 +00:00
Eelco Dolstra
4d728bc3e6
* Security: make sure the lock files used by build-remote.pl are not
...
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 19:11:58 +00:00
Eelco Dolstra
69d6f0936a
* Use a lock to ensure that only one build-remote instance can copy a
...
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 18:59:25 +00:00
Eelco Dolstra
5679041132
* The ‘foo.drvPath’ feature was already broken in read-only mode.
...
Since it's rarely used and fixing it is too much work right now,
just document it.
2011-12-21 18:19:05 +00:00
Shea Levy
f8e54b7874
Make the reference cycle in the cyclic outputs test indirect
2011-12-21 17:34:44 +00:00
Shea Levy
b4cee3f816
Revert previous commit
...
It doesn't detect indirect references
2011-12-21 17:31:34 +00:00
Shea Levy
f3c88f297d
Detect and reject mutually-referential outputs
...
There is probably a more efficient way to do this.
2011-12-21 17:14:28 +00:00
Eelco Dolstra
b19a0f63db
* Simplify the context handling logic.
2011-12-21 15:33:30 +00:00
Eelco Dolstra
4be5a2c096
* Add a test for unsafeDiscardOutputDependency. Not really related to
...
multiple outputs, but good to have anyway.
2011-12-21 14:42:06 +00:00
Eelco Dolstra
179409b911
* Add a test for referring to another derivation's ‘drvPath’. This
...
currently fails in read-only mode.
2011-12-21 13:47:21 +00:00
Eelco Dolstra
3877619888
* Add some accidentally committed files.
2011-12-21 11:47:52 +00:00
Eelco Dolstra
edd9359beb
* Doing a GC after building a derivation with cyclic outputs currently
...
segfaults.
2011-12-20 17:10:39 +00:00
Eelco Dolstra
1f3b0ede7d
* Add a (currently failing) test that checks whether mutually
...
recursive outputs are properly rejected.
* Add a (also failing) test for "nix-build -A <output-name>".
2011-12-20 17:08:43 +00:00
Eelco Dolstra
46e42c92c1
* Refactor a bit so that more tests can be added.
2011-12-20 17:01:02 +00:00
Eelco Dolstra
b5363810bb
* Fix the build.
2011-12-20 16:37:01 +00:00
Eelco Dolstra
194d21f9f6
* Sync with the trunk.
2011-12-16 23:33:01 +00:00
Eelco Dolstra
273b288a7e
* importPath() -> importPaths(). Because of buffering of the input
...
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 22:31:25 +00:00
Eelco Dolstra
8d3dfa2c17
* Avoid expensive conversions from char arrays to STL strings.
2011-12-16 21:29:46 +00:00
Eelco Dolstra
e0bd307802
* Make the import operation through the daemon much more efficient
...
(way fewer roundtrips) by allowing the client to send data in bigger
chunks.
* Some refactoring.
2011-12-16 19:44:13 +00:00
Eelco Dolstra
78598d06f0
* Clean up exception handling.
2011-12-16 15:45:42 +00:00
Eelco Dolstra
5a1b9ed0aa
* Refactoring: move sink/source buffering into separate classes.
...
* 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).
2011-12-15 16:19:53 +00:00
Eelco Dolstra
a67b8ae224
* Typo.
2011-12-15 14:04:35 +00:00
Eelco Dolstra
a3e0656cbb
* Buffer reads in FdSource. Together with write buffering, this
...
significantly cuts down the number of syscalls (e.g., for "nix-store
-qR /var/run/current-system" via the daemon, it reduced the number
of syscalls in the client from 29134 to 4766 and in the daemon from
44266 to 20666).
2011-12-15 12:32:08 +00:00
Eelco Dolstra
3a48282b06
* Buffer writes in FdSink. This significantly reduces the number of
...
system calls / context switches when dumping a NAR and in the worker
protocol.
2011-12-14 23:30:06 +00:00
Eelco Dolstra
893cac1402
* Remove the terminate handler, which was only really needed because
...
of Berkeley DB (see r8632).
2011-12-14 22:41:10 +00:00
Eelco Dolstra
23bf700196
* Oops, the daemon test wasn't actually using the daemon.
2011-12-14 22:31:31 +00:00
Eelco Dolstra
c8c0380744
* Remove unnecessary quotes. showPaths() already adds quotes.
2011-12-05 21:04:20 +00:00
Eelco Dolstra
000160f5b9
* In ‘nix-store --verify --check-contents’, repair missing hashes
...
rather than complain about them.
2011-12-02 17:52:18 +00:00
Eelco Dolstra
3964d95abf
* nix-prefetch-url: rewritten in Perl.
2011-12-02 12:09:50 +00:00
Eelco Dolstra
92d6a5ed73
* Add some more functions to the Perl bindings.
2011-12-02 12:09:24 +00:00
Eelco Dolstra
49f59dceca
* Move parseHash16or32 into libutil, and use in nix-hash.
2011-12-02 11:47:06 +00:00
Eelco Dolstra
b12b21825c
* Allow '<nixexpr>' syntax to be used in nix-instantiate, nix-build
...
and nix-env, e.g.,
$ nix-env -f '<nixpkgs>' -i patchelf
or
$ nix-build '<nixos/tests>' -A login.test
2011-12-01 16:41:43 +00:00
Eelco Dolstra
23c38a04cc
* Slight improvement.
2011-12-01 13:51:05 +00:00
Eelco Dolstra
24f863d86b
* When doing "nix-store --add-fixed" without "--recursive" via the Nix
...
daemon (which is an error), print a nicer error message than
"Connection reset by peer" or "broken pipe".
* In the daemon, log errors that occur during request parameter
processing.
2011-12-01 13:48:48 +00:00
Peter Simons
be9be4c147
doc/manual/nix-env.xml: fixed "nix-env -qaA" typo
2011-12-01 08:03:30 +00:00
Peter Simons
3c7ec8fc1b
doc/manual/nix-env.xml: stripped trailing whitespace
2011-12-01 08:02:37 +00:00
Eelco Dolstra
f35c4351e5
* Don't require a specific Perl version.
2011-11-29 22:15:07 +00:00
Eelco Dolstra
4d0407ba08
* Fix make check.
2011-11-29 13:38:52 +00:00
Eelco Dolstra
1749a7b0ae
* download-using-manifests: use the Perl bindings.
2011-11-29 13:01:24 +00:00