about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2009-08-25 Adding tryEval builtin. It allows to catch presence of errors in an expression.Michael Raskin1-0/+18
2009-08-03 (no commit message)Eelco Dolstra1-1/+12
2009-08-03 (no commit message)Eelco Dolstra1-0/+3
2009-07-15 * nix-build: pass the --show-trace flag.Eelco Dolstra1-0/+4
2009-07-14 * Remove the redundant <sections> around refentries.Eelco Dolstra16-68/+44
2009-07-10 * Leave out the collaborators / revision history page.Eelco Dolstra1-1/+5
2009-07-10 (no commit message)Eelco Dolstra1-1/+1
2009-07-02 * Replace newlines in table output with spaces.Eelco Dolstra1-6/+7
2009-06-30 * Support integers and lists of strings in meta fields. This isEelco Dolstra3-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 Dolstra6-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 Dolstra1-2/+2
2009-06-18 * Attributes names in attrsets can contain dots now.Eelco Dolstra1-1/+1
2009-06-13 * Canonicalise timestamps in the Nix store to 1 (1970-01-01 00:00:01Eelco Dolstra3-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 signalEelco Dolstra1-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 Dolstra1-0/+27
2009-05-15 * Change the scoping of "inherit (e) ..." in recs so that theEelco Dolstra3-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 aEelco Dolstra9-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 aEelco Dolstra1-94/+63
separate traversal after parsing. Likewise, check for duplicate pattern variables right away.
2009-05-12 * Allow unsafe (unspecified) comparisons between attrsets unlessEelco Dolstra2-1/+9
NIX_NO_UNSAFE_EQ is set, for now.
2009-05-11 * Disallow equality tests between attribute sets. This was alwaysEelco Dolstra1-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 Dolstra1-2/+3
2009-05-07 * Build a PDF version of the manual in the tarball job (it's notEelco Dolstra1-1/+5
included in the tarball though).
2009-05-07 * Don't have a bugs section in the manual. Bugs should be kept in theEelco Dolstra1-1/+1
bug tracker.
2009-05-07 * Produce the manual in the tarball job.Eelco Dolstra1-5/+6
2009-05-07 * Remove a right recursion that causes the parser to barf on very longEelco Dolstra1-6/+3
lists. The comment about ATreverse requiring unbounded stack space was unfounded anyway.
2009-05-07 * Include the version file.Eelco Dolstra1-1/+1
2009-05-07 * Typo.Eelco Dolstra1-1/+1
2009-05-04 Add an ftruncate call paired with fallocate to play safe with some FSes ↵Michael Raskin2-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 Dolstra1-1/+3
2009-04-21 * Use foreach in a lot of places.Eelco Dolstra10-96/+59
2009-04-21 * nix-store --verify: don't bail out if a referenced path is missing.Eelco Dolstra1-14/+13
(It can't fix it though.)
2009-04-16 * Fix a few "comparison is always false/true due to limited range ofEelco Dolstra3-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 Dolstra1-15/+6
2009-04-15 * Don't cache transient build hook problems.Eelco Dolstra1-6/+11
2009-04-14 * Remove references to __XXX primops.Eelco Dolstra2-14/+4
2009-04-14 * Release notes.Eelco Dolstra1-0/+60
2009-04-02 * Debian packages: use /etc, not /usr/etc.Eelco Dolstra1-0/+1
2009-03-31 * Do a substitution even if --max-jobs == 0.Eelco Dolstra2-18/+23
2009-03-31 * Doh!Eelco Dolstra1-1/+1
2009-03-30 (no commit message)Eelco Dolstra1-0/+1
2009-03-30 * Make the poll interval configurable.Eelco Dolstra2-3/+3
2009-03-29 * Update the mtime on the lock file to make it easy to see when a slotEelco Dolstra1-4/+8
was last used.
2009-03-29 * Undocument the "system" option. No sane person would use it :-)Eelco Dolstra1-20/+0
2009-03-29 * With `--max-jobs 0', print a nicer error message than "AssertionEelco Dolstra1-1/+5
`!awake.empty()' failed."
2009-03-29 * Use polling to wait for a remote build slot when using a build hookEelco Dolstra2-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 Dolstra2-26/+10
which is much faster.
2009-03-28 * Scan for references and compute the SHA-256 hash of the output inEelco Dolstra3-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 Dolstra2-33/+17
2009-03-28 * Simplify communication with the hook a bit (don't use fileEelco Dolstra6-117/+68
descriptors 3/4, just use stdin/stderr).
2009-03-28 * Clean up the output a bit.Eelco Dolstra1-5/+5