Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2009-06-30 | * Support integers and lists of strings in meta fields. This is | Eelco Dolstra | 3 | -41/+106 | |
useful for fields like meta.maintainers, meta.priority (which can be a proper integer now) and even meta.license (if there are multiple licenses). | |||||
2009-06-30 | * Don't show trace information by default (`--show-trace' to enable). | Eelco Dolstra | 6 | -3/+21 | |
NixOS evaluation errors in particular look intimidating and generally aren't very useful. Ideally the builtins.throw messages should be self-contained. | |||||
2009-06-18 | * Highlight URLs containing "=" properly. | Eelco Dolstra | 1 | -2/+2 | |
2009-06-18 | * Attributes names in attrsets can contain dots now. | Eelco Dolstra | 1 | -1/+1 | |
2009-06-13 | * Canonicalise timestamps in the Nix store to 1 (1970-01-01 00:00:01 | Eelco Dolstra | 3 | -4/+4 | |
UTC) rather than 0 (00:00:00). 1 is a better choice because some programs use 0 as a special value. For instance, the Template Toolkit uses a timestamp of 0 to denote the non-existence of a file, so it barfs on files in the Nix store (see template-toolkit-nix-store.patch in Nixpkgs). Similarly, Maya 2008 fails to load script directories with a timestamp of 0 and can't be patched because it's closed source. This will also shut up those "implausibly old time stamp" GNU tar warnings. | |||||
2009-06-10 | * nix-build: if nix-instantiate or nix-store fails due to a signal | Eelco Dolstra | 1 | -2/+8 | |
(e.g. out of memory or a segfault), print an error message. Otherwise the user doesn't see anything. | |||||
2009-05-26 | (no commit message) | Eelco Dolstra | 1 | -0/+27 | |
2009-05-15 | * Change the scoping of "inherit (e) ..." in recs so that the | Eelco Dolstra | 3 | -2/+10 | |
attributes of the rec are in scope of `e'. This is useful in expressions such as rec { lib = import ./lib; inherit (lib) concatStrings; } It does change the semantics of expressions such as let x = {y = 1;}; in rec { x = {y = 2;}; inherit (x) y; }.y This now returns 2 instead of 1. However, no code in Nixpkgs or NixOS seems to rely on the old behaviour. | |||||
2009-05-15 | * Some syntactic sugar for attribute sets: allow {x.y.z = ...;} as a | Eelco Dolstra | 9 | -26/+118 | |
shorthand for {x = {y = {z = ...;};};}. This is especially useful for NixOS configuration files, e.g. { services = { sshd = { enable = true; port = 2022; }; }; } can now be written as { services.sshd.enable = true; services.sshd.port = 2022; } However, it is currently not permitted to write { services.sshd = {enable = true;}; services.sshd.port = 2022; } as this is considered a duplicate definition of `services.sshd'. | |||||
2009-05-14 | * Check for duplicate attributes in fixAttrs, rather than doing a | Eelco Dolstra | 1 | -94/+63 | |
separate traversal after parsing. Likewise, check for duplicate pattern variables right away. | |||||
2009-05-12 | * Allow unsafe (unspecified) comparisons between attrsets unless | Eelco Dolstra | 2 | -1/+9 | |
NIX_NO_UNSAFE_EQ is set, for now. | |||||
2009-05-11 | * Disallow equality tests between attribute sets. This was always | Eelco Dolstra | 1 | -6/+42 | |
broken, but now the evaluator checks for it to prevent Nix expressions from relying on undefined behaviour. Equality tests are implemented using a shallow pointer equality test between ATerms. However, because attribute sets are lazy and contain position information, this can give false positives. For instance, previously let y = {x = 1;}; in y == y evaluated to true, while the equivalent expression {x = 1;} == {x = 1;} evaluated to false. So disallow these tests for now. (Eventually we may want to implement deep equality tests for attribute sets, like lib.eqStrict.) * Idem: disallow comparisons between functions. * Implemented deep comparisons of lists. This had the same problem as attribute sets - the elements in the list weren't evaluated. For instance, ["xy"] == [("x" + "y")] evaluated to false. Now it works properly. | |||||
2009-05-07 | (no commit message) | Eelco Dolstra | 1 | -2/+3 | |
2009-05-07 | * Build a PDF version of the manual in the tarball job (it's not | Eelco Dolstra | 1 | -1/+5 | |
included in the tarball though). | |||||
2009-05-07 | * Don't have a bugs section in the manual. Bugs should be kept in the | Eelco Dolstra | 1 | -1/+1 | |
bug tracker. | |||||
2009-05-07 | * Produce the manual in the tarball job. | Eelco Dolstra | 1 | -5/+6 | |
2009-05-07 | * Remove a right recursion that causes the parser to barf on very long | Eelco Dolstra | 1 | -6/+3 | |
lists. The comment about ATreverse requiring unbounded stack space was unfounded anyway. | |||||
2009-05-07 | * Include the version file. | Eelco Dolstra | 1 | -1/+1 | |
2009-05-07 | * Typo. | Eelco Dolstra | 1 | -1/+1 | |
2009-05-04 | Add an ftruncate call paired with fallocate to play safe with some FSes ↵ | Michael Raskin | 2 | -0/+9 | |
(namely, BtrFS fallocate sets file size to allocated size, i.e. multiple of block size) | |||||
2009-04-21 | * Machines of type x86_64-linux can do i686-linux builds. | Eelco Dolstra | 1 | -1/+3 | |
2009-04-21 | * Use foreach in a lot of places. | Eelco Dolstra | 10 | -96/+59 | |
2009-04-21 | * nix-store --verify: don't bail out if a referenced path is missing. | Eelco Dolstra | 1 | -14/+13 | |
(It can't fix it though.) | |||||
2009-04-16 | * Fix a few "comparison is always false/true due to limited range of | Eelco Dolstra | 3 | -5/+5 | |
data type" warnings on 64-bit platforms. The one in parser.y is likely to be a real bug. | |||||
2009-04-16 | * Cleanup. | Eelco Dolstra | 1 | -15/+6 | |
2009-04-15 | * Don't cache transient build hook problems. | Eelco Dolstra | 1 | -6/+11 | |
2009-04-14 | * Remove references to __XXX primops. | Eelco Dolstra | 2 | -14/+4 | |
2009-04-14 | * Release notes. | Eelco Dolstra | 1 | -0/+60 | |
2009-04-02 | * Debian packages: use /etc, not /usr/etc. | Eelco Dolstra | 1 | -0/+1 | |
2009-03-31 | * Do a substitution even if --max-jobs == 0. | Eelco Dolstra | 2 | -18/+23 | |
2009-03-31 | * Doh! | Eelco Dolstra | 1 | -1/+1 | |
2009-03-30 | (no commit message) | Eelco Dolstra | 1 | -0/+1 | |
2009-03-30 | * Make the poll interval configurable. | Eelco Dolstra | 2 | -3/+3 | |
2009-03-29 | * Update the mtime on the lock file to make it easy to see when a slot | Eelco Dolstra | 1 | -4/+8 | |
was last used. | |||||
2009-03-29 | * Undocument the "system" option. No sane person would use it :-) | Eelco Dolstra | 1 | -20/+0 | |
2009-03-29 | * With `--max-jobs 0', print a nicer error message than "Assertion | Eelco Dolstra | 1 | -1/+5 | |
`!awake.empty()' failed." | |||||
2009-03-29 | * Use polling to wait for a remote build slot when using a build hook | Eelco Dolstra | 2 | -36/+3 | |
(that is, call the build hook with a certain interval until it accepts the build). * build-remote.pl was totally broken: for all system types other than the local system type, it would send all builds to the *first* machine of the appropriate type. | |||||
2009-03-28 | * nix-copy-closure: compute the closure in one call to nix-store, | Eelco Dolstra | 2 | -26/+10 | |
which is much faster. | |||||
2009-03-28 | * Scan for references and compute the SHA-256 hash of the output in | Eelco Dolstra | 3 | -89/+50 | |
one pass. This halves the amount of I/O. | |||||
2009-03-28 | * Don't use the non-standard __gnu_cxx::stdio_filebuf class. | Eelco Dolstra | 2 | -33/+17 | |
2009-03-28 | * Simplify communication with the hook a bit (don't use file | Eelco Dolstra | 6 | -117/+68 | |
descriptors 3/4, just use stdin/stderr). | |||||
2009-03-28 | * Clean up the output a bit. | Eelco Dolstra | 1 | -5/+5 | |
2009-03-28 | * The `fixedOutput' variable didn't get initialised when using a build | Eelco Dolstra | 1 | -5/+6 | |
hook, causing negative caching to fail randomly. | |||||
2009-03-27 | * Argh, stupid timing sensitive tests... | Eelco Dolstra | 1 | -4/+4 | |
2009-03-27 | * Debian 5.0, Ubuntu 8.10 builds. | Eelco Dolstra | 1 | -4/+8 | |
2009-03-27 | * Create /nix/store if it doesn't exist. | Eelco Dolstra | 1 | -0/+2 | |
2009-03-26 | * A job for creating a fully statically linked binary tarball. | Eelco Dolstra | 1 | -1/+22 | |
2009-03-26 | * Support doing a fully static build. Statically linked Nix binaries | Eelco Dolstra | 1 | -11/+24 | |
will be useful as a fallback on platforms for which there are no RPMs/Debs available. | |||||
2009-03-26 | * Don't use ULLONG_MAX in maxFreed - use 0 to mean "no limit". | Eelco Dolstra | 4 | -10/+8 | |
18446744073709551615ULL breaks on GCC 3.3.6 (`integer constant is too large for "long" type'). | |||||
2009-03-25 | * Negative caching, i.e. caching of build failures. Disabled by | Eelco Dolstra | 7 | -7/+140 | |
default. This is mostly useful for Hydra. |