summary refs log tree commit diff
path: root/tests
AgeCommit message (Collapse)Author
2010-11-17* Fix the test.Eelco Dolstra
2010-11-16* Sync with the trunk.Eelco Dolstra
2010-10-24* Keep attribute sets in sorted order to speed up attribute lookups.Eelco Dolstra
* Simplify the representation of attributes in the AST. * Change the behaviour of listToAttrs() in case of duplicate names.
2010-10-23* Regression test for listToAttr's behaviour if an attribute nameEelco Dolstra
occurs multiple times.
2010-10-22* Regression test for __overrides.Eelco Dolstra
2010-10-04* In the referrers test, lower the nesting depth from 2500 to 1000 toEelco Dolstra
prevent hitting a stack overflow bug in the garbage collector.
2010-08-25* Made the build hook mechanism more efficient. Rather than startingEelco Dolstra
the hook every time we want to ask whether we can run a remote build (which can be very often), we now reuse a hook process for answering those queries until it accepts a build. So if there are N derivations to be built, at most N hooks will be started.
2010-08-04* Sync with the trunk.Eelco Dolstra
2010-06-25tests/build-hook.hook.sh: prefer more portable `...` syntax over $(...) for ↵Peter Simons
running sub-shells The /bin/sh interpreter on Solaris doesn't understand $(...) syntax for running sub-shells. Consequently, this test fails on Solaris. To remedy the situation, the script either needs to be run by /bin/bash -- which is non-standard --, or it needs to use the ancient but portable `...` syntax.
2010-05-12* Sync with the trunk.Eelco Dolstra
2010-05-12* Print attributes in sorted order.Eelco Dolstra
2010-05-12* Implemented tryEval, the last missing primop in the fast-evalEelco Dolstra
branch. Also added a test for tryEval.
2010-05-07* Sync with the trunk.Eelco Dolstra
2010-04-22* Check for duplicate attribute names / function arguments. `makeEelco Dolstra
check' now succeeds :-) * An attribute set such as `{ foo = { enable = true; }; foo.port = 23; }' now parses. It was previously rejected, but I'm too lazy to implement the check. (The only reason to reject it is that the reverse, `{ foo.port = 23; foo = { enable = true; }; }', is rejected, which is kind of ugly.)
2010-04-21* Update the expected test output (no longer an ATerm).Eelco Dolstra
2010-04-21* Because --parse-only no longer produces an ATerm, don't check theEelco Dolstra
output. Whether it parses at all should be enough.
2010-04-20* Sync with the trunk.Eelco Dolstra
2010-04-19* Drop the dependency on the ATerm library.Eelco Dolstra
2010-04-01* Removed the `~' operator.Eelco Dolstra
2010-03-31(no commit message)Eelco Dolstra
2010-03-31* Fix the broken test for listToAttrs.Eelco Dolstra
2010-03-31Make source location info in the XML output optional.Ludovic Courtès
* src/libexpr/expr-to-xml.cc (nix::showAttrs): Add `location' parameter. Provide location XML attributes when it's true. Update callers. (nix::printTermAsXML): Likewise. * src/libexpr/expr-to-xml.hh (nix::printTermAsXML): Update prototype; have `location' default to `false'. * src/nix-instantiate/nix-instantiate.cc (printResult, processExpr): Add `location' parameter; update callers. (run): Add support for `--no-location'. * src/nix-instantiate/help.txt: Update accordingly. * tests/lang.sh: Invoke `nix-instantiate' with `--no-location' for the XML tests. * tests/lang/eval-okay-toxml.exp, tests/lang/eval-okay-to-xml.nix: New files.
2010-03-25* Simplify @-patterns: only `{attrs}@name' or `name@{attrs}' are nowEelco Dolstra
allowed. So `name1@name2', `{attrs1}@{attrs2}' and so on are now no longer legal. This is no big loss because they were not useful anyway. This also changes the output of builtins.toXML for @-patterns slightly.
2010-03-23* Doh.Eelco Dolstra
2010-03-23* Test "with as; with bs;" since nobody knows what its semantics is.Eelco Dolstra
2010-02-24(no commit message)Eelco Dolstra
2010-02-24* Disable fsync() in SQLite if the fsync-metadata option is set toEelco Dolstra
false. * Change the default for `fsync-metadata' to true. * Disable `fsync-metadata' in `make check'.
2010-02-24* Set the path to sqlite3 properly.Eelco Dolstra
2010-02-24* Don't fork so much.Eelco Dolstra
2010-02-19* Foreign key support in SQLite is not a persistent setting, so enableEelco Dolstra
it at startup. * Implement negative caching. Now `make check' passes.
2010-02-18* Implemented queryValidPaths() and verifyStore().Eelco Dolstra
2010-02-04* Grmbl. Timing-sensitive tests are evil.Eelco Dolstra
2009-11-13* In nix-pull/nix-channel, create the manifests directory if itEelco Dolstra
doesn't exist. The Debian packages don't include the manifests directory, so nix-channel would silently skip doing a nix-pull, resulting in everything being built from source. Thanks to Juan Pedro Bolívar Puente.
2009-09-15* Two primops: builtins.intersectAttrs and builtins.functionArgs.Eelco Dolstra
intersectAttrs returns the (right-biased) intersection between two attribute sets, e.g. every attribute from the second set that also exists in the first. functionArgs returns the set of attributes expected by a function. The main goal of these is to allow the elimination of most of all-packages.nix. Most package instantiations in all-packages.nix have this form: foo = import ./foo.nix { inherit a b c; }; With intersectAttrs and functionArgs, this can be written as: foo = callPackage (import ./foo.nix) { }; where callPackage = f: args: f ((builtins.intersectAttrs (builtins.functionArgs f) pkgs) // args); I.e., foo.nix is called with all attributes from "pkgs" that it actually needs (e.g., pkgs.a, pkgs.b and pkgs.c). (callPackage can do any other generic package-level stuff we might want, such as applying makeOverridable.) Of course, the automatically supplied arguments can be overriden if needed, e.g. foo = callPackage (import ./foo.nix) { c = c_version_2; }; but for the vast majority of packages, this won't be needed. The advantages are to reduce the amount of typing needed to add a dependency (from three sites to two), and to reduce the number of trivial commits to all-packages.nix. For the former, there have been two previous attempts: - Use "args: with args;" in the package's function definition. This however obscures the actual expected arguments of a function, which is very bad. - Use "{ arg1, arg2, ... }:" in the package's function definition (i.e. use the ellipis "..." to allow arbitrary additional arguments), and then call the function with all of "pkgs" as an argument. But this inhibits error detection if you call it with an misspelled (or obsolete) argument.
2009-05-15* Change the scoping of "inherit (e) ..." in recs so that theEelco Dolstra
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 Dolstra
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-03-31* Do a substitution even if --max-jobs == 0.Eelco Dolstra
2009-03-30* Make the poll interval configurable.Eelco Dolstra
2009-03-28* Simplify communication with the hook a bit (don't use fileEelco Dolstra
descriptors 3/4, just use stdin/stderr).
2009-03-27* Argh, stupid timing sensitive tests...Eelco Dolstra
2009-03-25* Negative caching, i.e. caching of build failures. Disabled byEelco Dolstra
default. This is mostly useful for Hydra.
2009-03-25* Removed the locking.sh test; it's redundant because of the extendedEelco Dolstra
parallel.sh test. Also, don't call multiple nix-builds in parallel, since they can race creating .nix-build-tmp-derivation.
2009-03-25* Use bash in the tests.Eelco Dolstra
2009-03-23* Make this test a bit more robust. It's still timing dependentEelco Dolstra
though.
2009-03-22* Test case (currently fails): multiple Nix builds shouldn't blockEelco Dolstra
waiting on the same lock when there are other builds that can be done.
2009-03-18* Unify exportReferencesGraph and exportBuildReferencesGraph, and makeEelco Dolstra
sure that it works as expected when you pass it a derivation. That is, we have to make sure that all build-time dependencies are built, and that they are all in the input closure (otherwise remote builds might fail, for example). This is ensured at instantiation time by adding all derivations and their sources to inputDrvs and inputSrcs.
2009-03-18* Improve the test.Eelco Dolstra
2009-03-18* Better cleanup after tests.Eelco Dolstra
2009-03-18* Missing file.Eelco Dolstra
2009-03-18* Acquire the locks on the output paths before trying to run the buildEelco Dolstra
hook. This fixes a problem with log files being partially or completely filled with 0's because another nix-store process truncates the log file. It should also be more efficient.