diff --git a/doc/manual/release-notes.xml b/doc/manual/release-notes.xml index 328853a77..1ebef331e 100644 --- a/doc/manual/release-notes.xml +++ b/doc/manual/release-notes.xml @@ -1,4 +1,5 @@ -
+
Nix Release Notes @@ -36,6 +37,9 @@ irreversible. derivations, you need to specify \*. + Berkeley DB 4.4’s process registry feature is used + to recover from crashed Nix processes. + A performance issue has been fixed with the @@ -52,27 +56,142 @@ irreversible. nix-store without triggering a database recovery. - Reference scanning (which happens after each build) - is much faster. - TODO: string interpolation + New language features: - TODO: string concatenations involving - derivations + - TODO: function argument default values can refer to - other function arguments + Reference scanning (which happens after each + build) is much faster. + + String interpolation. Expressions like + + +"--with-freetype2-library=" + freetype + "/lib" + + can now be written as + + +"--with-freetype2-library=${freetype}/lib" + + You can write arbitrary expressions within + ${...}, not just + identifiers. + + Multi-line string literals. + + TODO: string concatenations involving + derivations. Consequently, the subpath operator + (~) has been deprecated. + + TODO: function argument default values can refer + to other function arguments + + TODO: domain checks (r5895). + + + + + + + If the top-level Nix expression used by + nix-env, nix-instantiate or + nix-build evaluates to a function whose arguments + all have default values, the function will be called automatically. + Also, the new command-line switch can be used to specify + function arguments on the command line. TODO: proxy support. - TODO: nix-pack-closure and - nix-unpack-closure. + New commands nix-pack-closure and + nix-unpack-closure than can be used to easily + transfer a stire path with all its dependencies to another machine. + Very convenient whenever you have some package on your machine and + you want to copy it somewhere else. + + bsdiff updated + 4.3. TODO: open files etc. are now used as roots of the - garbage collector. + garbage collector (r5796). - TODO: --attr / -a flags in - nix-env/nix-instantiate/nix-build. + TODO: --attr / -A flags in + nix-env/nix-instantiate/nix-build. Also nix-env -qa + --attr. + + nix-build -o + symlink allows the symlink to + the build result to be named something other than + result. + + nix-store --gc + (a.k.a. nix-collect-garbage) prints out the + number of bytes freed on standard output. nix-store --gc + --print-dead shows how many bytes would be freed by an + actual garbage collection. + + New command nix-store --delete to + delete specific paths from the Nix store. It won’t delete reachable + (non-garbage) paths unless is + specified. + + Substantial performance improvements in expression + evaluation and nix-env -qa, all thanks to Valgrind. Memory use has + been reduced by a factor 8 or so. Big speedup by memoisation of + path hashing. + + Lots of bug fixes, notably: + + + + Make sure that the garbage collector can run + succesfully when the disk is full. + + + + + + TODO: XML support in nix-env -q + --xml and nix-instantiate --eval-only + --xml. + + nix-env -i + pkgname will now install the + highest available version of pkgname, + rather than installing all available versions (which would probably + give collisions). + + nix-env (-i|-u) --dry-run now + shows exactly which missing paths will be built or + substituted. + + nix-env -qa --description shows + human-readable descriptions of packages, provided that they have a + meta.description attribute (which most packages + in Nixpkgs don’t have yet). + + Nix source distributions are a lot smaller now since + we no longer include a full copy of the Berkeley DB source + distribution (but only the bits we need). + + Support for 64-bit platforms, provided suitably + patched ATerm library is used. + + Added support for Cygwin (Windows, + i686-cygwin) and Mac OS X on Intel + (i686-darwin). + + nix-env now locks the profile to + prevent races between concurrent nix-env + operations on the same profile + (NIX-7). + + TODO: nix-push + --target.