aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2006-05-30* Not all platforms have sys/select.h.Eelco Dolstra
2006-05-30* Don't use badTerm, it gives awful error messages.Eelco Dolstra
2006-05-29* Disable the concurrent garbage collector on Cygwin for now.Eelco Dolstra
2006-05-24* Some Cygwin fixes.Eelco Dolstra
2006-05-12* Support for srcdir != builddir (NIX-41).Eelco Dolstra
2006-05-11* 64-bit compatibility fixes (for problems revealed by building on an AthlonEelco Dolstra
64 running 64-bit SUSE). A patched ATerm library is required to run Nix succesfully.
2006-05-08* GCC 2.95 compatibility.Eelco Dolstra
2006-05-08* Allow function argument default values to refer to other argumentsEelco Dolstra
of the function. Implements NIX-45.
2006-05-08* Show evaluation stats when NIX_SHOW_STATS=1.Eelco Dolstra
2006-05-04* Use the new ATermMap.Eelco Dolstra
2006-05-02* Optimise null-ary term builders. Also declare all term builderEelco Dolstra
functions as pure, which might improve performance a bit.
2006-05-02* Use a linked list of substitutions. This reduces the amount ofEelco Dolstra
copying.
2006-05-02* Removed a bunch of ATreverses.Eelco Dolstra
2006-05-02* Huge reduction in memory use (2/3 or so on large nix-env -qasEelco Dolstra
operations): share ATermMaps between DrvInfos.
2006-05-02* Memory reduction: replaced expensive calls to ATmakeApplList byEelco Dolstra
ATmakeApplArray, and got rid of ATreverse in substitute().
2006-05-02* Some preliminaries towards NIX-45.Eelco Dolstra
2006-05-01* Disallow unescaped $ in string literals.Eelco Dolstra
2006-05-01* String interpolation. Expressions likeEelco Dolstra
"--with-freetype2-library=" + freetype + "/lib" can now be written as "--with-freetype2-library=${freetype}/lib" An arbitrary expression can be enclosed within ${...}, not just identifiers. * Escaping in string literals: \n, \r, \t interpreted as in C, any other character following \ is interpreted as-is. * Newlines are now allowed in string literals.
2006-05-01* Allow string concatenations involving derivations, e.g.,Eelco Dolstra
configureFlags = "--with-freetype2-library=" + freetype + "/lib";
2006-03-24* Print a more useful stack trace when an error occurs deep in theEelco Dolstra
derivation dependency graph.
2006-03-23* In `nix-env', look for derivations inside attribute sets that haveEelco Dolstra
the `recurseForDerivations' attribute set to `true'.
2006-03-23* Hm.Eelco Dolstra
2006-03-10* Allow `make check' to work in directories that have symlinkEelco Dolstra
components.
2006-03-10* `nix-env -qa --description' shows human-readable descriptions ofEelco Dolstra
packages (provided that they have a `meta.description' attribute). E.g., $ ./src/nix-env/nix-env -qa --description gcc gcc-4.0.2 GNU Compiler Collection, 4.0.x (cross-compiler for sparc-linux) gcc-4.0.2 GNU Compiler Collection, 4.0.x (cross-compiler for mips-linux) gcc-4.0.2 GNU Compiler Collection, 4.0.x (cross-compiler for arm-linux) gcc-4.0.2 GNU Compiler Collection, 4.0.x
2006-03-10* In theory, this should reduce the number of ATermMapEelco Dolstra
re-allocations.
2006-03-10* `nix-env -q' now accepts arguments that allow specific derivationsEelco Dolstra
to be queried, e.g., `nix-env -qa firefox'. This does require the argument '*' to be passed if one wants information about all derivations, so the old `nix-env -qa' now is `nix-env -qa "*"'.
2006-03-09* Ugh, printHash() was very inefficient because it usedEelco Dolstra
ostringstreams. Around 11% of execution time was spent here (now it's 0.5%).
2006-03-09* Regression: semantics of the result of getDerivation() changed.Eelco Dolstra
2006-03-09* Big speedup (factor > 2.5) in all nix-env operations that do actualEelco Dolstra
instantiation, e.g. "nix-env -i" and "nix-env -qas" (but not "nix-env -qa"). It turns out that many redundant calls to addToStore(path) were made, which reads and hashes the entire path. For instance, the bash bootstrap binary in Nixpkgs would be read and hashed many times. As a result nix-env would spend around 92% of its time in the function sha256_block (according to callgrind). Some simple memoization fixes this.
2006-03-08* When obtaining derivations from Nix expressions, ignore allEelco Dolstra
expressions that cause an assertion failure (like `assert system == "i686-linux"'). This allows all-packages.nix in Nixpkgs to be used on all platforms, even if some Nix expressions don't work on all platforms. Not sure if this is a good idea; it's a bit hacky. In particular, due to laziness some derivations might appear in `nix-env -qa' but disappear in `nix-env -qas' or `nix-env -i'. Commit 5000!
2006-03-08* Some refactoring of the exception handling code so that we can catchEelco Dolstra
Nix expression assertion failures.
2006-03-06* GCC 4.1 compatibility.Eelco Dolstra
2006-03-06* `nix-env (-i|-u) --dry-run' now shows exactly which missing pathsEelco Dolstra
will be built or substituted.
2006-03-06* Regularise help text a bit.Eelco Dolstra
2006-03-01* Flags `--to-base32' and `--to-base16' to convert between hex andEelco Dolstra
base-32 hashes.
2006-03-01* Ouch, parseHash32 was completely broken. All digits >= 4 wereEelco Dolstra
parsed as 4. For a moment I worried that printHash32 was broken, and that would have been really, *really* bad ;-)
2006-03-01* db.hh shouldn't depend on the Berkeley DB headers.Eelco Dolstra
2006-03-01* Close the database before the destructor runs.Eelco Dolstra
2006-03-01* Uninitialised variable. Fixes the --delete test.Eelco Dolstra
2006-03-01* Wrong delete. Thanks valgrind.Eelco Dolstra
2006-03-01* Generate valid HTML.Eelco Dolstra
2006-03-01* Remove dead code.Eelco Dolstra
2006-02-17* In "nix-env -i", print a warning if there are multiple derivationsEelco Dolstra
with the same name *and* version number, and pick the first one (this means that the order in which channels appear in ~/.nix-channels matters). E.g.: $ nix-env ii aterm warning: there are multiple derivations named `aterm-2.4.2'; using the first one installing `aterm-2.4.2'
2006-02-17* Fix for NIX-31: "nix-env -i foo" installing all derivations namedEelco Dolstra
foo. Now it will only install the one with the highest version number.
2006-02-17* Fix the infamous NIX-17: nix-env -i prints misleading messagesEelco Dolstra
("installing `foo'" followed by "uninstalling `foo'").
2006-02-16* Allow the size of the GC reserved file to be specified in nix.confEelco Dolstra
through the new `gc-reserved-space' option.
2006-02-16* A simple hack to fix NIX-18: the garbage collector cannot run whenEelco Dolstra
the disk is full (because to delete something from the Nix store, we need a Berkeley DB transaction, which takes up disk space). Under normal operation, we make sure that there exists a file /nix/var/nix/db/reserved of 1 MB. When running the garbage collector, we delete that file before we open the Berkeley DB environment.
2006-02-13* Optional switch "--with-openssl=<PATH>" to use OpenSSL'sEelco Dolstra
implementations of MD5, SHA-1 and SHA-256. The main benefit is that we get assembler-optimised implementations of MD5 and SHA-1 (though not SHA-256 (at least on x86), unfortunately). OpenSSL's SHA-1 implementation on Intel is twice as fast as ours.
2006-02-13* Use a union.Eelco Dolstra
2006-02-13* Override YYMALLOC and YYFREE so that we can call AT[un]protectMemoryEelco Dolstra
on the Bison parse stack. Otherwise, a garbage collect during parsing could lead to a crash.