* Release notes.

This commit is contained in:
Eelco Dolstra 2005-09-13 10:57:24 +00:00
parent cb44aa03b8
commit 699073c337
1 changed files with 53 additions and 3 deletions

56
NEWS
View File

@ -1,6 +1,6 @@
Version 0.9
NOTE: this version of Nix used Berkeley DB 4.3 instead of 4.2. The
NOTE: this version of Nix uses Berkeley DB 4.3 instead of 4.2. The
database is upgraded automatically, but you should be careful not to
use old versions of Nix that still use Berkeley DB 4.2. In
particular, if you use a Nix installed through Nix, you should run
@ -9,8 +9,8 @@ particular, if you use a Nix installed through Nix, you should run
first.
* Unpacking of patch sequences is much faster now by not doing
redundant unpacking and repacking of intermediate paths.
* Unpacking of patch sequences is much faster now since we no longer
do redundant unpacking and repacking of intermediate paths.
* Nix now uses Berkeley DB 4.3.
@ -19,6 +19,56 @@ first.
no data dependencies on the `outPath' and `drvPath' attributes
computed by `derivation').
For example, the expression `derivation attrs' now evaluates to
(essentially)
attrs // {
type = "derivation";
outPath = derivation! attrs;
drvPath = derivation! attrs;
}
where `derivation!' is a primop that does the actual derivation
instantiation (i.e., it does what `derivation' used to do). The
advantage is that it allows commands such as `nix-env -qa' and
`nix-env -i' to be much faster since they no longer need to
instantiate all derivations, just the `name' attribute.
Also, it allows derivations to cyclically reference each other, for
example,
webServer = derivation {
...
hostName = "svn.cs.uu.nl";
services = [svnService];
};
svnService = derivation {
...
hostName = webServer.hostName;
};
Previously, this would yield a black hole (infinite recursion).
* `nix-build' now defaults to using `./default.nix' if no Nix
expression is specified.
* `nix-instantiate', when applied to a Nix expression that evaluates
to a function, will call the function automatically if all its
arguments have defaults.
* Nix now uses libtool to build dynamic libraries. This reduces the
size of executables.
* A new list concatenation operator `++'. For example, `[1 2 3] ++ [4
5 6]' evaluates to `[1 2 3 4 5 6]'.
* Some currently undocumented primops to support low-level build
management using Nix (i.e., using Nix as a Make replacement). See
the commit message for r3578 and r3580.
* Various bug fixes and performance improvements.
Version 0.8 (April 11, 2005)