Home Explore Blog CI



nix

doc/manual/source/release-notes/rl-1.6.1.md
39b4139e2224f4474336d754fc460ed77a11ab041f19617d0000000300000595
# Release 1.6.1 (2013-10-28)

This is primarily a bug fix release. Changes of interest are:

  - Nix 1.6 accidentally changed the semantics of antiquoted paths in
    strings, such as `"${/foo}/bar"`. This release reverts to the Nix
    1.5.3 behaviour.

  - Previously, Nix optimised expressions such as `"${expr}"` to *expr*.
    Thus it neither checked whether *expr* could be coerced to a string,
    nor applied such coercions. This meant that `"${123}"` evaluatued to
    `123`, and `"${./foo}"` evaluated to `./foo` (even though `"${./foo}
    "` evaluates to `"/nix/store/hash-foo "`). Nix now checks the type
    of antiquoted expressions and applies coercions.

  - Nix now shows the exact position of undefined variables. In
    particular, undefined variable errors in a `with` previously didn't
    show *any* position information, so this makes it a lot easier to
    fix such errors.

  - Undefined variables are now treated consistently. Previously, the
    `tryEval` function would catch undefined variables inside a `with`
    but not outside. Now `tryEval` never catches undefined variables.

  - Bash completion in `nix-shell` now works correctly.

  - Stack traces are less verbose: they no longer show calls to builtin
    functions and only show a single line for each derivation on the
    call stack.

  - New built-in function: `builtins.typeOf`, which returns the type of
    its argument as a string.

Chunks
3e10687b (1st chunk of `doc/manual/source/release-notes/rl-1.6.1.md`)
Title: Nix Release 1.6.1: Bug Fixes and Improvements
Summary
Nix release 1.6.1 primarily focuses on bug fixes. Key changes include reverting the semantics of antiquoted paths to the Nix 1.5.3 behavior, ensuring type checking and coercion for antiquoted expressions, providing precise locations for undefined variables, consistent handling of undefined variables with `tryEval`, corrected Bash completion in `nix-shell`, less verbose stack traces, and the addition of a new built-in function, `builtins.typeOf`, for determining the type of an argument.