about summary refs log tree commit diff
path: root/src/libstore/build.cc
AgeCommit message (Collapse)AuthorFilesLines
2005-02-23 * When multiple derivations are specified in `nix-store -r', don'tEelco Dolstra1-62/+50
continue building when one fails unless `--keep-going' is specified. * When `--keep-going' is specified, print out the set of failing derivations at the end (otherwise it can be hard to find out which failed).
2005-02-22 * Support for fixed-output hashes over directory trees (i.e., over theEelco Dolstra1-14/+26
NAR dump of the path).
2005-02-22 * Compatibility hack so that Nixpkgs can continue to do hash checkingEelco Dolstra1-0/+9
in `fetchurl' in Nix <= 0.7, but doesn't in Nix 0.8.
2005-02-18 * Subtle bug in the builder: if a subgoal that is instantiatedEelco Dolstra1-31/+30
multiple times is also a top-level goal, then the second and later instantiations would never be created because there would be a stable pointer to the first one that would keep it alive in the WeakGoalMap. * Some tracing code for debugging this kind of problem.
2005-02-17 * Put build logs in $prefix/var/nix/log/drvs/.Eelco Dolstra1-1/+1
2005-02-11 * Input sources should be in the set of all referenceable paths too.Eelco Dolstra1-4/+4
2005-02-09 * Propagate the deriver of a path through the substitute mechanism.Eelco Dolstra1-1/+2
* Removed some dead code (successor stuff) from nix-push. * Updated terminology in the tests (store expr -> drv path). * Check that the deriver is set properly in the tests.
2005-02-08 * Updated `nix-store --verify' to the new schema.Eelco Dolstra1-2/+2
2005-02-07 * Maintain a database table (`derivers') that maps output paths to theEelco Dolstra1-2/+3
derivation that produced them. * `nix-store -qd PATH' prints out the derivation that produced a path.
2005-02-01 * Add missing files to dist.Eelco Dolstra1-2/+4
* Fix GC and substitute bugs related to self-references. Add a regression test.
2005-01-31 * Start of concurrent garbage collection. Processes write temporaryEelco Dolstra1-1/+7
roots to a per-process temporary file in /nix/var/nix/temproots while holding a write lock on that file. The garbage collector acquires read locks on all those files, thus blocking further progress in other Nix processes, and reads the sets of temporary roots.
2005-01-27 * Fix and simplify the garbage collector (it's still not concurrent,Eelco Dolstra1-2/+2
though). In particular it's now much easier to register a GC root. Just place a symlink to whatever store path it is that you want to keep in /nix/var/nix/gcroots.
2005-01-25 * Maintain the references/referers relation also for derivations.Eelco Dolstra1-3/+2
This simplifies garbage collection and `nix-store --query --requisites' since we no longer need to treat derivations specially. * Better maintaining of the invariants, e.g., setReferences() can only be called on a valid/substitutable path.
2005-01-25 * Simplification: registerSubstitutes -> registerSubstitute. We noEelco Dolstra1-1/+0
longer need the former since there we no longer have the substitutes-rev table (which triggered a O(n^2) cost in updating them).
2005-01-25 * Really fix the substitute mechanism, i.e., ensure the closureEelco Dolstra1-7/+32
invariant by registering references through the manifest. * Added a test for nix-pull.
2005-01-25 * Fix the `--fallback' switch.Eelco Dolstra1-0/+6
* Fix the substitutes tests.
2005-01-25 * Fix the build hook mechanism; pass the pointer graph to the hook.Eelco Dolstra1-2/+24
2005-01-25 * In nix-store: change `--build' back to `--realise'. Also broughtEelco Dolstra1-37/+57
back the query flag `--force-realise'. * Fixed some of the tests.
2005-01-20 * Terminology fixes.Eelco Dolstra1-9/+9
2005-01-20 * Another change to low-level derivations. The last one this year, IEelco Dolstra1-11/+17
promise :-) This allows derivations to specify on *what* output paths of input derivations they are dependent. This helps to prevent unnecessary downloads. For instance, a build might be dependent on the `devel' and `lib' outputs of some library component, but not the `docs' output.
2005-01-19 * Renamed `normalise.cc' -> `build.cc', `storeexprs.cc' ->Eelco Dolstra1-0/+1758
`derivations.cc', etc. * Store the SHA-256 content hash of store paths in the database after they have been built/added. This is so that we can check whether the store has been messed with (a la `rpm --verify'). * When registering path validity, verify that the closure property holds.