Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2003-10-20 | * Refactored the source tree. | Eelco Dolstra | 50 | -1/+2348 | |
2003-10-16 | * Substitutes and nix-pull now work again. | Eelco Dolstra | 9 | -30/+79 | |
* Fixed a segfault caused by the buffering of stderr. * Fix now allows the specification of the full output path. This should be used with great care, since it by-passes the normal hash generation. * Incremented the version number to 0.4 (prerelease). | |||||
2003-10-16 | * Enable buffering of stderr in C++. | Eelco Dolstra | 1 | -0/+4 | |
2003-10-16 | * Upgraded to Berkeley DB 4.1.25 and do not synchronously flush the | Eelco Dolstra | 1 | -4/+5 | |
log on commit. This means that there is a small change that some transactions may be rolled back in case of a system crash, but this should not be a problem (it merely might cause some expression realisations to be rolled back), and it vastly improves performance. * Upgraded to ATerm 2.0.5 (which also includes Armijn's 64-bit patches). | |||||
2003-10-16 | * Don't sort the result of `--query --list'. | Eelco Dolstra | 1 | -6/+4 | |
2003-10-15 | * Refactoring: move all database manipulation into store.cc. | Eelco Dolstra | 10 | -170/+143 | |
* Removed `--query --generators'. | |||||
2003-10-14 | * Automatically recover the database in case of a crash. | Eelco Dolstra | 6 | -38/+201 | |
2003-10-10 | * New query `nix --query --predecessors' to print the predecessors of | Eelco Dolstra | 5 | -2/+29 | |
a Nix expression. | |||||
2003-10-10 | * `nix --verify': check and repair reverse mapping for successors. | Eelco Dolstra | 2 | -89/+33 | |
2003-10-10 | * Reverse mappings for the successor and substitute mappings. | Eelco Dolstra | 6 | -25/+66 | |
2003-10-10 | * Performance improvement: don't register already registered terms, | Eelco Dolstra | 1 | -5/+8 | |
thus greatly reducing the number of db transactions. | |||||
2003-10-08 | * Get rid of identifiers since they are redundant now. This greatly | Eelco Dolstra | 23 | -624/+478 | |
simplifies stuff. * The format of Nix expressions and the database schema changed because of this, so it's best to delete old Nix installations. | |||||
2003-10-07 | * string -> Path. | Eelco Dolstra | 2 | -20/+26 | |
2003-10-07 | * Synchronise terminology with the ICSE paper (e.g., slice -> closure, | Eelco Dolstra | 14 | -266/+252 | |
fstate -> Nix expression). * Fix src/test.cc. | |||||
2003-10-02 | * Include the right files in a distribution. | Eelco Dolstra | 1 | -1/+1 | |
2003-10-02 | * Nix now respects $TMPDIR for the creation of temporary build directories. | Eelco Dolstra | 3 | -5/+24 | |
* Retry creation of a temporary directory (with a different name) in the case of EEXIST. | |||||
2003-09-11 | * Removed references to char_traits so that boost/format also works on | Eelco Dolstra | 1 | -5/+7 | |
GCC 2.95. | |||||
2003-09-11 | * Added some missing #includes. | Eelco Dolstra | 4 | -0/+7 | |
2003-09-03 | * Make nicer dot graphs. Also show the inner structure of slices. | Eelco Dolstra | 2 | -15/+86 | |
2003-09-03 | * Factored out dot graph generation into a separate file. | Eelco Dolstra | 4 | -61/+76 | |
2003-08-29 | * Do not show the output of the builder unless the verbosity is at | Eelco Dolstra | 1 | -1/+5 | |
least at debug level (-vvv). The output is still appended to the build log in /nix/var/log/nix. | |||||
2003-08-28 | * Do not try to remove write permission from symlinks, since chmod() | Eelco Dolstra | 2 | -3/+3 | |
follows symlinks. (Note that the permissions on symlinks are ignored anyway.) | |||||
2003-08-25 | * Fix the atrocious (exponential? factorial?) time complexity in | Eelco Dolstra | 1 | -4/+9 | |
`nix --query --requisites'. | |||||
2003-08-22 | * Remove write permission from output paths after they have been built. | Eelco Dolstra | 3 | -6/+52 | |
* Point $HOME to a non-existing path when building to prevent certain tools (such as wget) from falling back on /etc/passwd to locate the home directory (which we don't want them to look at since it's not declared as an input). | |||||
2003-08-20 | * Use maps and sets in the FState data type. This ensures normalisation of | Eelco Dolstra | 5 | -105/+86 | |
slices and derivations w.r.t. order of paths, slice elements, etc. | |||||
2003-08-20 | * Change the abstract syntax of slices. It used to be that ids were used as | Eelco Dolstra | 4 | -61/+59 | |
keys to reference slice elements, e.g., Slice(["1ef7..."], [("/nix/store/1ef7...-foo", "1ef7", ["8c99..."]), ...]) This was wrong, since ids represent contents, not locations. Therefore we now have: Slice(["/nix/store/1ef7..."], [("/nix/store/1ef7...-foo", "1ef7", ["/nix/store/8c99-..."]), ...]) * Fix a bug in the computation of slice closures that could cause slice elements to be duplicated. | |||||
2003-08-20 | * Fixed a serious bug in the computation of slices. Sometimes the slices | Eelco Dolstra | 1 | -20/+61 | |
would not be properly closed under the path reference relation. | |||||
2003-08-19 | * Pipe /dev/null into stdin. | Eelco Dolstra | 1 | -0/+10 | |
2003-08-19 | * Delete the temporary directories of failed builds by default, and an | Eelco Dolstra | 5 | -1/+17 | |
option `--keep-failed' to override this behaviour. | |||||
2003-08-18 | * Allow lists in package bindings, e.g., | Eelco Dolstra | 1 | -0/+12 | |
("srcs", [Relative("foo/bar.c"), Relative("foo/baz.h")]) The result is an environment variable that contains the path names of the inputs separated by spaces (so this is not safe for values containing spaces). | |||||
2003-08-18 | * Most shells initialise PATH to some default (/bin:/usr/bin:...) | Eelco Dolstra | 1 | -0/+5 | |
when PATH is not set. We don't want this, so fill it in with some dummy value. | |||||
2003-08-15 | * Argument support in Fix. Arguments can be passed through the | Eelco Dolstra | 1 | -20/+43 | |
builder using the `args' binding: ("args", ["bla", True, IncludeFix("aterm/aterm.fix")]) Note that packages can also be declared as inputs by specifying them in the argument list. | |||||
2003-08-15 | * Derivation expressions now can specify arguments to be passed to the | Eelco Dolstra | 5 | -20/+56 | |
builder. Note that this unfortunately causes all Fix-computed hashes to change. | |||||
2003-08-15 | * Fix can now read expressions from stdin (by saying `fix -'). | Eelco Dolstra | 1 | -1/+17 | |
2003-08-14 | * Detect infinite loops using blackholing. | Eelco Dolstra | 1 | -3/+13 | |
2003-08-14 | * Function() takes a list of formals. | Eelco Dolstra | 1 | -4/+14 | |
2003-08-14 | * Lam -> Function. Doh! | Eelco Dolstra | 1 | -1/+1 | |
2003-08-08 | * deletePath(): some operating systems (e.g., Mac OS X) don't like it | Eelco Dolstra | 1 | -1/+8 | |
when we delete entries from a directory while we are reading it. So read the directory into memory, then delete its contents. | |||||
2003-08-06 | * Allow locks on paths to be acquired recursively (that is, if the | Eelco Dolstra | 1 | -2/+4 | |
process is already holding a lock on a path, it may acquire the lock again without blocking or failing). (This might be dangerous, not sure). Necessary for fast builds to work. | |||||
2003-08-06 | * A flag `--flat' to just compute the MD5 checksum of the contents of | Eelco Dolstra | 1 | -3/+7 | |
a regular file. I.e., `nix-hash --flat' is equivalent to the coreutils `md5sum' command (which doesn't exist on all systems). | |||||
2003-08-06 | * App -> Call. | Eelco Dolstra | 1 | -1/+8 | |
* Allow booleans in package environment bindings (True maps to "1", False maps to ""). | |||||
2003-08-05 | * Conditionals. | Eelco Dolstra | 1 | -0/+33 | |
2003-08-05 | * Cache result of fstatePaths(). TODO: do this in fstore.cc. | Eelco Dolstra | 1 | -2/+17 | |
2003-08-05 | * Allow the top-level expression to be a list of expressions that | Eelco Dolstra | 1 | -5/+19 | |
normalise to Nix expression. | |||||
2003-08-05 | * Delete obstructed paths prior to building. | Eelco Dolstra | 1 | -3/+12 | |
2003-08-04 | * Path locking in addToStore() and expandPath(). | Eelco Dolstra | 2 | -1/+16 | |
2003-08-01 | * In normaliseFState(), wrap registration of the output paths and the | Eelco Dolstra | 6 | -28/+44 | |
normal form in a single transaction to ensure that if we crash, either everything is registered or nothing is. This is for recoverability: unregistered paths in the store can be deleted arbitrarily, while registered paths can only be deleted by running the garbage collector. | |||||
2003-08-01 | * Defensive programming against POSIX locking idiocy. | Eelco Dolstra | 3 | -25/+18 | |
* Simplified realiseSlice(). | |||||
2003-08-01 | * normaliseFState() now locks all output paths prior to building, thus | Eelco Dolstra | 5 | -30/+151 | |
ensuring that simultaneous invocations of Nix don't clobber each other's builds. * Fixed a bug in `make install'. | |||||
2003-08-01 | * Don't use substitutes in addToStore(). | Eelco Dolstra | 2 | -15/+21 | |