Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2006-12-12 | * New built-in function `builtins.attrNames' that returns the | Eelco Dolstra | 1 | -0/+21 | |
names of the attributes in an attribute set. | |||||
2006-12-01 | * Replace read-only calls to addTextToStore. | Eelco Dolstra | 1 | -1/+3 | |
2006-11-30 | * Put building in the store API. | Eelco Dolstra | 1 | -2/+1 | |
2006-11-30 | * Refactoring. There is now an abstract interface class StoreAPI | Eelco Dolstra | 1 | -3/+3 | |
containing functions that operate on the Nix store. One implementation is LocalStore, which operates on the Nix store directly. The next step, to enable secure multi-user Nix, is to create a different implementation RemoteStore that talks to a privileged daemon process that uses LocalStore to perform the actual operations. | |||||
2006-11-03 | * Fix importing of derivation outputs. | Eelco Dolstra | 1 | -2/+9 | |
2006-10-23 | * Some better error messages. | Eelco Dolstra | 1 | -3/+10 | |
2006-10-19 | * Better message. | Eelco Dolstra | 1 | -1/+1 | |
2006-10-19 | * toFile: maintain the references. | Eelco Dolstra | 1 | -10/+4 | |
2006-10-17 | * baseNameOf: paths don't have to be absolute. | Eelco Dolstra | 1 | -1/+1 | |
2006-10-17 | * toPath: should be the identity on paths. | Eelco Dolstra | 1 | -3/+1 | |
2006-10-17 | * dirOf: return a path if the argument is a path. | Eelco Dolstra | 1 | -2/+6 | |
2006-10-17 | * toString: don't copy paths. So toString can be used to pass | Eelco Dolstra | 1 | -3/+4 | |
non-store paths to a builder. | |||||
2006-10-16 | * Big cleanup of the semantics of paths, strings, contexts, string | Eelco Dolstra | 1 | -233/+75 | |
concatenation and string coercion. This was a big mess (see e.g. NIX-67). Contexts are now folded into strings, so that they don't cause evaluation errors when they're not expected. The semantics of paths has been clarified (see nixexpr-ast.def). toString() and coerceToString() have been merged. Semantic change: paths are now copied to the store when they're in a concatenation (and in most other situations - that's the formalisation of the meaning of a path). So "foo " + ./bla evaluates to "foo /nix/store/hash...-bla", not "foo /path/to/current-dir/bla". This prevents accidental impurities, and is more consistent with the treatment of derivation outputs, e.g., `"foo " + bla' where `bla' is a derivation. (Here `bla' would be replaced by the output path of `bla'.) | |||||
2006-10-11 | * Removed URIs from the evaluator (NIX-66). They are now just another | Eelco Dolstra | 1 | -2/+1 | |
kind of notation for strings. | |||||
2006-10-10 | * Quick hack to fix NIX-67: evaluation result differing if the Nix | Eelco Dolstra | 1 | -9/+8 | |
expression resides in the store. | |||||
2006-10-10 | * `import': unwrap the context. Necessary to make `import (x + y)' | Eelco Dolstra | 1 | -13/+14 | |
work, where x is a store path. | |||||
2006-10-03 | * toXML: propagate the context to allow derivations to be used in the | Eelco Dolstra | 1 | -2/+3 | |
argument. | |||||
2006-10-03 | * toFile: added an additional argument to specify the store path | Eelco Dolstra | 1 | -3/+32 | |
suffix, e.g., `builtins.toFile "builder.sh" "..."'. * toFile: handle references to other files correctly. | |||||
2006-09-24 | * The result of a concatenation with a derivation on the left-hand | Eelco Dolstra | 1 | -4/+12 | |
side should be a path, I guess. * Handle paths that are in the store but not direct children of the store directory. * Ugh, hack to prevent double context wrapping. | |||||
2006-09-24 | * Primop `toPath' to convert a string to a path. | Eelco Dolstra | 1 | -7/+26 | |
* Primop `pathExists' to check for path existence. | |||||
2006-09-24 | * Builtin function `getEnv' for getting environment variables. | Eelco Dolstra | 1 | -6/+18 | |
2006-09-24 | * lessThan primitive for integer comparison. | Eelco Dolstra | 1 | -0/+9 | |
2006-09-22 | * Builtin function `add' to add integers. | Eelco Dolstra | 1 | -0/+9 | |
* Put common test functions in tests/lang/lib.nix. | |||||
2006-09-22 | * Added a builtin function `isList' to test whether a value is a list. | Eelco Dolstra | 1 | -0/+9 | |
With this primitive, a list-flattening function can be implemented (NIX-55, example is in tests/lang/eval-okay-flatten.nix). | |||||
2006-09-22 | * Builtin functions `head' and `tail' to return the head and tail of | Eelco Dolstra | 1 | -0/+25 | |
list. Useful for lots of things, such as implementing a fold function (see NIX-30, example is in tests/lang/eval-okay-list.nix). | |||||
2006-09-22 | * New builtin functions builtins.{hasAttr, getAttr} to check for | Eelco Dolstra | 1 | -0/+16 | |
attribute existence and to return an attribute from an attribute set, respectively. Example: `hasAttr "foo" {foo = 1;}'. They differ from the `?' and `.' operators in that the attribute name is an arbitrary expression. (NIX-61) | |||||
2006-09-21 | * Fix comment. | Eelco Dolstra | 1 | -3/+1 | |
2006-09-20 | * Print a better error message for wrong hashes (NIX-49). | Eelco Dolstra | 1 | -3/+6 | |
2006-09-04 | * Use a proper namespace. | Eelco Dolstra | 1 | -4/+12 | |
* Optimise header file usage a bit. * Compile the parser as C++. | |||||
2006-09-01 | * New primop: builtins.toFile, which writes a string into the store | Eelco Dolstra | 1 | -0/+14 | |
and returns its path. This can be used to (for instance) write builders inside a Nix expression, e.g., stdenv.mkDerivation { builder = " source $stdenv/setup ... "; ... } | |||||
2006-08-29 | * Support singleton values and nested lists again in `args', but print | Eelco Dolstra | 1 | -1/+5 | |
a warning. | |||||
2006-08-29 | * Fix the ~ operator. | Eelco Dolstra | 1 | -1/+1 | |
2006-08-28 | * In toString, deal with nested lists properly (i.e., flatten them). | Eelco Dolstra | 1 | -0/+21 | |
2006-08-28 | * Removed processBinding, instead we now apply toString to all | Eelco Dolstra | 1 | -138/+138 | |
derivation attributes to flatten them into strings. This is possible since string can nowadays be wrapped in contexts that describe the derivations/sources referenced by the evaluation of the string. | |||||
2006-08-26 | * Refactoring. | Eelco Dolstra | 1 | -6/+1 | |
2006-08-25 | * Remove those storePath attribute sets, we don't need 'em. | Eelco Dolstra | 1 | -12/+1 | |
2006-08-24 | * New primop __toXML (or builtins.toXML) to convert an expression to | Eelco Dolstra | 1 | -0/+10 | |
an XML representation stored in a string. This should be useful to pass structured information to builders. | |||||
2006-08-23 | * Quotes. | Eelco Dolstra | 1 | -1/+1 | |
2006-08-23 | * New primop: abort "error message". | Eelco Dolstra | 1 | -0/+8 | |
2006-08-23 | * A new primop `builtins', which returns an attribute set containing | Eelco Dolstra | 1 | -0/+26 | |
all the primops. This allows Nix expressions to test for new primops and take appropriate action if they're not available. For instance, rather than calling a primop `foo' directly, they could say `if builtins ? foo then builtins.foo ... else ...'. | |||||
2006-08-09 | * Print a warning that the subpath operator (~) is deprecated. | Eelco Dolstra | 1 | -0/+5 | |
2006-07-19 | * Better error messages (especially wrt types). | Eelco Dolstra | 1 | -20/+20 | |
2006-05-11 | * 64-bit compatibility fixes (for problems revealed by building on an Athlon | Eelco Dolstra | 1 | -2/+2 | |
64 running 64-bit SUSE). A patched ATerm library is required to run Nix succesfully. | |||||
2006-05-04 | * Use the new ATermMap. | Eelco Dolstra | 1 | -14/+19 | |
2006-05-01 | * Allow string concatenations involving derivations, e.g., | Eelco Dolstra | 1 | -3/+12 | |
configureFlags = "--with-freetype2-library=" + freetype + "/lib"; | |||||
2006-03-24 | * Print a more useful stack trace when an error occurs deep in the | Eelco Dolstra | 1 | -4/+10 | |
derivation dependency graph. | |||||
2006-03-10 | * `nix-env -qa --description' shows human-readable descriptions of | Eelco Dolstra | 1 | -5/+12 | |
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-09 | * Big speedup (factor > 2.5) in all nix-env operations that do actual | Eelco Dolstra | 1 | -3/+9 | |
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 | * Some refactoring of the exception handling code so that we can catch | Eelco Dolstra | 1 | -4/+6 | |
Nix expression assertion failures. | |||||
2006-03-06 | * `nix-env (-i|-u) --dry-run' now shows exactly which missing paths | Eelco Dolstra | 1 | -0/+1 | |
will be built or substituted. |