Skip to content

v0.21.0

Compare
Choose a tag to compare
@github-actions github-actions released this 21 Feb 18:47
· 244 commits to master since this release

Changelog

[0.21.0] - 2024-02-21

Breaking

  • Remove the apply-all-captures flag, make last-wins precedence the default

    NOTE: This change might cause breakage in your grammar's highlight tests.
    Just flip the order around of the relevant queries, and keep in mind that the
    last query that matches will win.

Features

  • Use lockfiles to dedup recompilation
  • Improve error message for files with an unknown grammar path (#2475)
  • Implement first-line-regex (#2479)
  • Error out if an empty string is in the extras array
  • Allow specifying an external scanner's files (#3031)
  • Better error info when a scanner is missing required symbols
  • cli: Add an optional grammar-path argument for the playground (#3014)
  • cli: Add optional config-path argument (#3050)
  • loader: Add more commonly used default parser directories

Bug Fixes

  • Prettify xml output and add node position info (#2970)
  • Inherited grammar generation
  • Properly error out when the word property is an invalid rule
  • Update schema for regex flags (#3006)
  • Properly handle Query.matches when filtering out results (#3013)
  • Sexp format edge case with quoted closed parenthesis (#3016)
  • Always push the default files if there's no externals
  • Don't log NUL characters (#3037)
  • Don't throw an error if the user uses map in the grammar (#3041)
  • Remove redundant imports (#3047)
  • cli: Installation via a HTTP tunnel proxy (#2824)
  • cli: Don't update tests automatically if parse errors are detected (#3033)
  • cli: Don't use long for grammar_path
  • test: Allow writing updates to tests without erroneous nodes instead of denying all of them if a single error is found
  • test: Edge case when parsing UNEXPECTED/MISSING nodes with an indentation level greater than 0
  • wasm: Remove C++ mangled symbols (#2971)

Documentation

  • Create issue template (#2978)
  • Document regex limitations
  • Mention that token($.foo) is illegal
  • Explicitly mention behavior of walking outside the given "root" node for a TSTreeCursor (#3021)
  • Small fixes (#2987)
  • Add Tact language parser (#3030)
  • web: Provide deno usage information (#2498)

Refactor

  • Extract regex check into a function and lower its precedence
  • &PathBuf -> &Path (#3035)
  • Name anonymous types in api.h (#1659)

Testing

  • Add quotes around bash variables (#3023)
  • Update html tests

Build System and CI

  • Only create release for normal semver tags (#2973)
  • Add useful development targets to makefile (#2979)
  • Remove minimum glibc information in summary page (#2988)
  • Use the native m1 mac runner (#2995)
  • Add editorconfig (#2998)
  • Remove symbolic links from repository (#2997)
  • Move common Cargo.toml keys into the workspace and inherit them (#3019)
  • Remove reviewers when drafting or closing a PR (#2963)
  • Enable creating changelogs with git-cliff (#3040)
  • Cache fixtures (#3038)
  • Don't cancel jobs on master (#3052)
  • Relax caching requirements (#3051)
  • deps: Bump clap from 4.4.18 to 4.5.0 (#3007)
  • deps: Bump wasmtime from v16.0.0 to v17.0.1 (#3008)
  • deps: Bump wasmtime to v18.0.1 (#3057)
  • sanitize: Add a timeout of 60 minutes (#3017)
  • sanitize: Reduce timeout to 20 minutes (#3054)

Other

  • Document preferred language for scanner (#2972)
  • Add java and tsx to corpus tests (#2992)
  • Provide a CLI flag to open log.html (#2996)
  • Some more clippy lints (#3010)
  • Remove deprecated query parsing mechanism (#3011)
  • Print out full compiler arguments ran when it fails (#3018)
  • Deprecate C++ scanners (#3020)
  • Add some documentation to the playground page (#1495)
  • Update relevant rust tests (#2947)
  • Clippy lints (#3032)
  • Error out when multiple arguments are passed to token/token.immediate (#3036)
  • Tidying
  • Prefer turbofish syntax where possible (#3048)
  • Use published wasmtime crates
  • Cleaner cast
  • Update Cargo.lock
  • Get rid of github_issue_test file (#3055)
  • cli: Use spawn to display emcc's stdout and stderr (#2494)
  • cli: Warn users when a query path needed for a subcommand isn't specified in a grammar's package.json
  • generate: Dedup and warn about duplicate or invalid rules (#2994)
  • test: Use different languages for async tests (#2953)
  • wasm: Use SIDE_MODULE=2 to silence warning (#3003)