106 lines
		
	
	
		
			No EOL
		
	
	
		
			2.8 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			106 lines
		
	
	
		
			No EOL
		
	
	
		
			2.8 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
<section xmlns="http://docbook.org/ns/docbook"
 | 
						||
      xmlns:xlink="http://www.w3.org/1999/xlink"
 | 
						||
      xmlns:xi="http://www.w3.org/2001/XInclude"
 | 
						||
      version="5.0"
 | 
						||
      xml:id="ssec-relnotes-0.13">
 | 
						||
 | 
						||
<title>Release 0.13 (November 5, 2009)</title>
 | 
						||
 | 
						||
<para>This is primarily a bug fix release.  It has some new
 | 
						||
features:</para>
 | 
						||
 | 
						||
<itemizedlist>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>Syntactic sugar for writing nested attribute sets.  Instead of
 | 
						||
 | 
						||
<programlisting>
 | 
						||
{
 | 
						||
  foo = {
 | 
						||
    bar = 123;
 | 
						||
    xyzzy = true;
 | 
						||
  };
 | 
						||
  a = { b = { c = "d"; }; };
 | 
						||
}
 | 
						||
</programlisting>
 | 
						||
 | 
						||
    you can write
 | 
						||
 | 
						||
<programlisting>
 | 
						||
{
 | 
						||
  foo.bar = 123;
 | 
						||
  foo.xyzzy = true;
 | 
						||
  a.b.c = "d";
 | 
						||
}
 | 
						||
</programlisting>
 | 
						||
 | 
						||
    This is useful, for instance, in NixOS configuration files.</para>
 | 
						||
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>Support for Nix channels generated by Hydra, the Nix-based
 | 
						||
    continuous build system.  (Hydra generates NAR archives on the
 | 
						||
    fly, so the size and hash of these archives isn’t known in
 | 
						||
    advance.)</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>Support <literal>i686-linux</literal> builds directly on
 | 
						||
    <literal>x86_64-linux</literal> Nix installations.  This is
 | 
						||
    implemented using the <function>personality()</function> syscall,
 | 
						||
    which causes <command>uname</command> to return
 | 
						||
    <literal>i686</literal> in child processes.</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>Various improvements to the <literal>chroot</literal>
 | 
						||
    support.  Building in a <literal>chroot</literal> works quite well
 | 
						||
    now.</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>Nix no longer blocks if it tries to build a path and another
 | 
						||
    process is already building the same path.  Instead it tries to
 | 
						||
    build another buildable path first.  This improves
 | 
						||
    parallelism.</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>Support for large (> 4 GiB) files in NAR archives.</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>Various (performance) improvements to the remote build
 | 
						||
    mechanism.</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>New primops: <varname>builtins.addErrorContext</varname> (to
 | 
						||
    add a string to stack traces — useful for debugging),
 | 
						||
    <varname>builtins.isBool</varname>,
 | 
						||
    <varname>builtins.isString</varname>,
 | 
						||
    <varname>builtins.isInt</varname>,
 | 
						||
    <varname>builtins.intersectAttrs</varname>.</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>OpenSolaris support (Sander van der Burg).</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>Stack traces are no longer displayed unless the
 | 
						||
    <option>--show-trace</option> option is used.</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
  <listitem>
 | 
						||
    <para>The scoping rules for <literal>inherit
 | 
						||
    (<replaceable>e</replaceable>) ...</literal> in recursive
 | 
						||
    attribute sets have changed.  The expression
 | 
						||
    <replaceable>e</replaceable> can now refer to the attributes
 | 
						||
    defined in the containing set.</para>
 | 
						||
  </listitem>
 | 
						||
 | 
						||
</itemizedlist>
 | 
						||
 | 
						||
</section> |