github oxalica/nil 2025-06-13
Snapshot release 2025-06-13

2 months ago

Features

  • nixfmt (nixfmt-rfc-style) is now used by default if no formatter is set, as it's becoming the official formatter for nixpkgs.

    See: NixOS/rfcs#166

  • Support contextual keyword __curPos.

  • Support experimental |> and |< operators since Nix 2.24 (#155).

    See: https://github.com/NixOS/nix/blob/2.24.0/doc/manual/src/language/operators.md#pipe-operators

  • --deny-warnings flags for nil diagnostics (#157).

  • Multiple files support for nil diagnostics (#126).

  • New assist remove_unused_binding (#159).

    • { foo, bar }: { foo = 1; } => { foo }: { foo = 1; }
    • let foo = 1; in { } => let in { }
  • Assist pack_bindings now supports converting implicit attrset into explicit nested one.

    • { foo.bar = 1; } => { foo = { bar = 1; }; }

Fixes

  • Reword and simplify labels of assists, so it's easier to get what is does.

  • Compatibility with latest Nix and Nixpkgs.

  • Compatibility with flakes containing relative subflakes.

Internal

  • The main flake.nix is simplified to only has nixpkgs dependency.

    devShells are moved to ./dev/flake.nix subflake.

  • Bump MSRV to 1.77

  • Bump various dependencies.

  • Documentation tweaks.

Don't miss a new nil release

NewReleases is sending notifications on new releases.