Eelco Dolstra
2b9e29b1c8
* Change the right-hand side of the ‘.’ operator from an attribute to
...
an attribute path. This is a refactoring to support default values.
2011-07-06 12:28:57 +00:00
Eelco Dolstra
5580f3817c
* Test case.
2011-07-06 10:58:53 +00:00
Eelco Dolstra
5637037802
* In the ‘?’ operator, allow attribute paths. For instance, you can
...
write ‘attrs ? a.b’ to test whether ‘attrs’ has an attribute ‘a’
containing an attribute ‘b’. This is more convenient than ‘attrs ?
a && attrs.a ? b’.
Slight change in the semantics: it's no longer an error if the
left-hand side of ‘?’ is not an attribute set. In that case it just
returns false. So, ‘null ? foo’ no longer throws an error.
2011-07-06 10:58:17 +00:00
Eelco Dolstra
34f4b91820
2011-07-04 14:44:53 +00:00
Ludovic Courtès
1ea6e06445
doc: Fix typo.
2011-06-30 15:48:40 +00:00
Ludovic Courtès
5c9e9f732d
Add support for the build-timeout' and
--timeout' options.
2011-06-30 15:19:13 +00:00
Eelco Dolstra
9c99aa2620
2011-06-27 09:01:09 +00:00
Eelco Dolstra
e4d8148585
2011-06-27 08:04:54 +00:00
Eelco Dolstra
4891b21f34
* Use SQLite 3.7.6.2.
2011-05-03 16:17:24 +00:00
Eelco Dolstra
d94cb02bfe
* nix-install-package: unset NIX_REMOTE because $NIX_MANIFESTS_DIR
...
doesn't work when building through the Nix daemon. This also
ensures an error message when the user doesn't have sufficient
privileges to do nix-pull.
2011-04-19 10:52:35 +00:00
Eelco Dolstra
8c69dac8a1
* Handle error messages from the Nix worker containing the `%'
...
character. (Nix/216)
2011-04-19 10:44:44 +00:00
Eelco Dolstra
4ba6afaf48
* nix-env -ub' (
--prebuilt-only') didn't really work because it
...
checked too soon whether substitutes are available. That is, it did
so for every available package, rather than those matching installed
packages. This was very slow and subject to assertion failures. So
do the check much later. Idem for `nix-env -qab' and `nix-env -ib'.
2011-04-11 16:27:05 +00:00
Eelco Dolstra
412914d004
* Read manifests directly into the database, rather than first reading
...
them into memory. This brings memory use down to (more or less)
O(1). For instance, on my test case, the maximum resident size of
download-using-manifests while filling the DB went from 142 MiB to
11 MiB.
2011-04-11 13:16:54 +00:00
Eelco Dolstra
08c8971498
* Lock the database during updates.
2011-04-11 12:40:13 +00:00
Eelco Dolstra
b2c11b9ed0
2011-04-11 10:23:15 +00:00
Eelco Dolstra
3cbf680f5d
* configure: detect whether DBD::SQLite is present. If necessary the
...
location to DBI and DBD::SQLite can be passed with --with-dbi and
--with-dbd-sqlite.
2011-04-11 10:13:53 +00:00
Eelco Dolstra
83252b4ca9
* Subtle bug: if you import File::stat in one module, it affects other
...
modules as well. So use symbolic field names everywhere (which is
nicer anyway).
2011-04-11 08:21:30 +00:00
Eelco Dolstra
b1882c3ef7
* Create $manifestDir if it doesn't exist.
2011-04-11 08:06:14 +00:00
Eelco Dolstra
5591fcc529
* Cache the manifests in /nix/var/nix/manifests in a SQLite database.
...
This significantly speeds up the download-using-manifests
substituter, especially if manifests are very large. For instance,
one "nix-build -A geeqie" operation that updated four packages using
binary patches went from 18.5s to 1.6s. It also significantly
reduces memory use.
The cache is kept in /nix/var/nix/manifests/cache.sqlite. It's
updated automatically when manifests are added to or removed from
/nix/var/nix/manifests. It might be interesting to have nix-pull
store manifests directly in the DB, rather than storing them as
separate flat files, but then we would need a command line interface
to delete manifests from the DB.
2011-04-10 23:22:46 +00:00
Eelco Dolstra
1e7e4f21ba
* Remove the localPaths feature in manifests since it's no longer used
...
and redundant anyway.
2011-04-06 09:16:22 +00:00
Eelco Dolstra
0423d0692a
* Print a better error message.
2011-03-16 15:55:57 +00:00
Eelco Dolstra
48bdbbf070
* Fix a bug in the documentation (reported by Olexiy Buyanskyy,
...
Nix/215).
2011-03-15 13:12:59 +00:00
Eelco Dolstra
802c2651c8
2011-02-17 15:08:33 +00:00
Eelco Dolstra
e945b52a31
* nix-push: handle the case where the hash is not set in the DB.
2011-02-17 13:26:33 +00:00
Eelco Dolstra
c3cee5395b
* Build for Ubuntu 10.04.
2011-02-14 14:56:02 +00:00
Florian Friesdorf
8fcaf3e9c6
make nix-mode provide 'nix-mode
...
this enables (require 'nix-mode)
2011-02-14 03:11:56 +00:00
Eelco Dolstra
538b7caab0
* Don't allocate a big initial GC address space on machines with
...
little RAM. Even if the memory isn't actually used, it can cause
problems with the overcommit heuristics in the kernel. So use a VM
space of 25% of RAM, up to 384 MB.
2011-02-10 14:31:04 +00:00
Eelco Dolstra
5a6b039802
* Don't call GC_expand_hp unless we're actually using the garbage
...
collector.
2011-02-09 22:59:50 +00:00
Ludovic Courtès
f1462c208b
Use $BDW_GC_LIBS instead of a custom variable.
2011-02-09 21:23:13 +00:00
Eelco Dolstra
1876ab764f
* A better fix. $boehmgc isn't set anywhere, we should use the flags
...
returned by pkg-config.
2011-02-09 14:13:09 +00:00
Eelco Dolstra
dfc4117e90
* The GC library can't be found on Solaris
...
(http://hydra.nixos.org/build/890714 ), so don't build with GC
support for now.
2011-02-09 14:08:32 +00:00
Eelco Dolstra
d159ea1b7e
* Urgh, FreeBSD doesn't have a "seq" command.
2011-02-09 14:03:16 +00:00
Eelco Dolstra
3087b3f751
* Obsolete.
2011-02-09 12:48:54 +00:00
Eelco Dolstra
eb94581d39
* Remove obsolete directory.
2011-02-09 12:43:44 +00:00
Eelco Dolstra
7bba67c401
* Remove obsolete file.
2011-02-09 12:42:15 +00:00
Eelco Dolstra
d0eda1f3e9
* Merged the SQLite branch.
2011-02-09 12:41:54 +00:00
Eelco Dolstra
543988572e
* Sync with the trunk.
2011-02-09 12:25:53 +00:00
Eelco Dolstra
c0340eec5a
2011-02-08 12:30:28 +00:00
Eelco Dolstra
0304fda3cf
* Propagate the CC setting.
2011-02-05 16:40:15 +00:00
Eelco Dolstra
aeae0beba4
* Clang compatibility fix. Clang actually checks template definitions
...
when they are defined
2011-02-05 16:29:10 +00:00
Ludovic Courtès
3854fc9b42
Remove useless <config.h> inclusion from public header.
2011-01-14 13:55:58 +00:00
Eelco Dolstra
9db190eb31
* builtins.substring: if "start" is beyond the end of the string,
...
return the empty string.
2011-01-14 12:47:10 +00:00
Eelco Dolstra
d6c8b995c5
* In Hydra manifests the Size field is missing, so don't rely on it.
...
This caused a lot of "Use of uninitialized value" warnings from
Perl.
2010-12-22 10:32:32 +00:00
Eelco Dolstra
c931a7aec5
* Do a short sleep after SQLITE_BUSY.
2010-12-17 17:23:15 +00:00
Eelco Dolstra
b1eb252172
* Propagate the "100" exit status for failed builds through the Nix
...
daemon.
2010-12-17 11:28:26 +00:00
Eelco Dolstra
eac93d6efe
* Use the right `make'.
2010-12-17 09:28:51 +00:00
Eelco Dolstra
a0be433fec
* Disable X11 forwarding, it's not needed.
2010-12-15 14:25:54 +00:00
Eelco Dolstra
f1a6b97639
* nix-copy-closure: make sure that the shell doesn't do globbing of
...
`+' and `?' in filenames. This is very slow if /nix/store is very
large. (This is a quick hack - a cleaner solution would be to
bypass the shell entirely.)
2010-12-15 08:39:37 +00:00
Eelco Dolstra
3dd02580e3
* I forgot to catch SQLiteBusy in registerValidPaths(). So
...
registerValidPaths() now handles busy errors and registerValidPath()
is simply a wrapper around it.
2010-12-14 13:25:20 +00:00
Eelco Dolstra
d787285af9
* nix-instantiate: return exit status 100 to denote a permanent build
...
failure. The build hook can use this to distinguish between
transient and permanent failures on the remote side.
2010-12-13 16:53:23 +00:00