2014-09-16 14:29:00 +02:00
|
|
|
|
<section xmlns="http://docbook.org/ns/docbook"
|
2014-08-27 18:41:09 +02:00
|
|
|
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
|
|
|
xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
|
|
|
version="5.0"
|
|
|
|
|
xml:id="ssec-relnotes-1.8">
|
|
|
|
|
|
|
|
|
|
<title>Release 1.8 (TBA)</title>
|
|
|
|
|
|
2014-09-16 14:13:36 +02:00
|
|
|
|
<itemizedlist>
|
2014-08-27 18:41:09 +02:00
|
|
|
|
|
2014-10-29 16:18:39 +01:00
|
|
|
|
<listitem><para>Breaking change: to address a race condition, the
|
|
|
|
|
remote build hook mechanism now uses <command>nix-store
|
|
|
|
|
--serve</command> on the remote machine. This requires build slaves
|
|
|
|
|
to be updated to Nix 1.8.</para></listitem>
|
|
|
|
|
|
2014-10-03 18:47:16 +02:00
|
|
|
|
<listitem><para><command>nix-env</command> selectors are now regular
|
|
|
|
|
expressions. For instance, you can do
|
|
|
|
|
|
|
|
|
|
<screen>
|
|
|
|
|
$ nix-env -qa '.*zip.*'
|
|
|
|
|
</screen>
|
|
|
|
|
|
|
|
|
|
to query all packages with a name containing
|
|
|
|
|
<literal>zip</literal>.</para></listitem>
|
|
|
|
|
|
2014-10-29 16:18:39 +01:00
|
|
|
|
<listitem><para><command>nix-store --read-log</command> can now
|
|
|
|
|
fetch remote build logs. If a build log is not available locally,
|
|
|
|
|
then ‘nix-store -l’ will now try to download it from the servers
|
|
|
|
|
listed in the ‘log-servers’ option in nix.conf. For instance, if you
|
|
|
|
|
have the configuration option
|
|
|
|
|
|
|
|
|
|
<programlisting>
|
|
|
|
|
log-servers = http://hydra.nixos.org/log
|
|
|
|
|
</programlisting>
|
|
|
|
|
|
|
|
|
|
then it will try to get logs from
|
|
|
|
|
<literal>http://hydra.nixos.org/log/<replaceable>base name of the
|
|
|
|
|
store path</replaceable></literal>. This allows you to do things like:
|
|
|
|
|
|
|
|
|
|
<screen>
|
|
|
|
|
$ nix-store -l $(which xterm)
|
|
|
|
|
</screen>
|
|
|
|
|
|
|
|
|
|
and get a log even if <command>xterm</command> wasn't built
|
|
|
|
|
locally.</para></listitem>
|
|
|
|
|
|
|
|
|
|
<listitem><para>New builtin functions:
|
|
|
|
|
<function>attrValues</function>, <function>deepSeq</function>,
|
|
|
|
|
<function>fromJSON</function>, <function>readDir</function>,
|
|
|
|
|
<function>seq</function>.</para></listitem>
|
|
|
|
|
|
|
|
|
|
<listitem><para><command>nix-instantiate --eval</command> now has a
|
|
|
|
|
<option>--json</option> flag to print the resulting value in JSON
|
|
|
|
|
format.</para></listitem>
|
|
|
|
|
|
|
|
|
|
<listitem><para><command>nix-copy-closure</command> now uses
|
|
|
|
|
<command>nix-store --serve</command> on the remote side to send or
|
|
|
|
|
receive closures. This fixes a race condition between
|
|
|
|
|
<command>nix-copy-closureE</command> and the garbage
|
|
|
|
|
collector.</para></listitem>
|
|
|
|
|
|
2014-09-16 14:13:36 +02:00
|
|
|
|
<listitem><para>Derivations can specify the new special attribute
|
|
|
|
|
<varname>allowedRequisites</varname>, which has a similar meaning to
|
|
|
|
|
<varname>allowedReferences</varname>. But instead of only enforcing
|
|
|
|
|
to explicitly specify the immediate references, it requires the
|
|
|
|
|
derivation to specify all the dependencies recursively (hence the
|
|
|
|
|
name, requisites) that are used by the resulting
|
|
|
|
|
output.</para></listitem>
|
|
|
|
|
|
2014-10-29 16:18:39 +01:00
|
|
|
|
<listitem><para>On Mac OS X, Nix now handles case collisions when
|
|
|
|
|
importing closures from case-sensitive file systems. This is mostly
|
|
|
|
|
useful for running NixOps on Mac OS X.</para></listitem>
|
|
|
|
|
|
|
|
|
|
<listitem><para>The Nix daemon has new configuration options
|
|
|
|
|
<option>allowed-users</option> (specifying the users and groups that
|
|
|
|
|
are allowed to connect to the daemon) and
|
|
|
|
|
<option>trusted-users</option> (specifying the users and groups that
|
|
|
|
|
can perform privileged operations like specifying untrusted binary
|
|
|
|
|
caches).</para></listitem>
|
|
|
|
|
|
|
|
|
|
<listitem><para>The configuration option
|
|
|
|
|
<option>build-max-jobs</option> now defaults to the number of
|
|
|
|
|
available CPU cores.</para></listitem>
|
|
|
|
|
|
|
|
|
|
<listitem><para>Build users are now used by default when Nix is
|
|
|
|
|
invoked as root. This prevents builds from accidentally running as
|
|
|
|
|
root.</para></listitem>
|
|
|
|
|
|
|
|
|
|
<listitem><para>Nix now includes systemd units and Upstart
|
|
|
|
|
jobs.</para></listitem>
|
|
|
|
|
|
|
|
|
|
<listitem><para>Speed improvements to <command>nix-store
|
|
|
|
|
--optimise</command>.</para></listitem>
|
|
|
|
|
|
|
|
|
|
<listitem><para>Language change: the <literal>==</literal> operator
|
|
|
|
|
now ignores string contexts (the “dependencies” of a
|
|
|
|
|
string).</para></listitem>
|
|
|
|
|
|
|
|
|
|
<listitem><para>Nix now filters out Nix-specific ANSI escape
|
|
|
|
|
sequences on standard error. They are supposed to be invisible, but
|
|
|
|
|
some terminals show them anyway.</para></listitem>
|
|
|
|
|
|
|
|
|
|
<listitem><para>Various commands now automatically pipe their output
|
|
|
|
|
into the pager as specified by the <envar>PAGER</envar> environment
|
|
|
|
|
variable.</para></listitem>
|
|
|
|
|
|
|
|
|
|
<listitem><para>Several improvements to reduce memory consumption in
|
|
|
|
|
the evaluator.</para></listitem>
|
|
|
|
|
|
2014-09-16 14:13:36 +02:00
|
|
|
|
</itemizedlist>
|
|
|
|
|
|
2014-09-16 14:29:00 +02:00
|
|
|
|
</section>
|