Skip to content

Releases: NixOS/rnix-parser

v0.15.1

Choose a tag to compare

@github-actions github-actions released this 29 Oct 00:50
7a76197

Changed

  • The repository moved from nix-community to NixOS and now lives at
    https://github.com/NixOS/rnix-parser; the crate's repository link points there
    (NixOS/org#300,
    #192).

  • The published crate now contains only the library, its tests and documentation. The
    benchmark input and repository tooling are no longer shipped, which shrinks the download
    from 222 KiB to 63 KiB (#196).

Diff: v0.15.0...v0.15.1

v0.15.0

Choose a tag to compare

@mdaniels5757 mdaniels5757 released this 28 Oct 21:22
e52f20f

Breaking Changes

  • Update rowan to 0.17. rnix re-exports rowan types (SyntaxNode, TextRange, etc.),
    so downstream crates must move to rowan 0.17 as well
    (#189,
    from @mdaniels5757).

  • Minimum supported Rust version is now 1.88. The crate moved to the 2024 edition and uses
    let chains; this is now declared via rust-version in Cargo.toml.

Changed

  • Speed up the tokenizer's path/URI lookahead by tracking the scanned prefix length and
    underscore presence in a single pass instead of collecting the prefix into a String, and
    speed up Str::normalized_parts by iterating string parts directly instead of collecting
    them into an intermediate Vec
    (#188,
    from @NotAShelf).

Fixed

  • Fix parser mistakenly allowing empty dynamic attribute selects such as {}.${}
    (#186,
    from @Starnick4444).

Diff: v0.14.0...v0.15.0

v0.14.0

Choose a tag to compare

@philiptaron philiptaron released this 16 Feb 18:49
0472081

Fixed

  • Fix absolute path interpolation starting with /${ failing to parse (#182, from @imxyy1soope1).

Breaking Changes

  • __curPos is now a distinct node type. __curPos is a Nix keyword that evaluates to an attribute set containing the file, line, and column where it appears. Lix documents this as a keyword. It was previously represented as NODE_IDENT, but is now parsed as NODE_CUR_POS with a
    corresponding TOKEN_CUR_POS token kind (from @3timeslazy).