From a7484885967331ea2768a4c8cb1dfa79936c07c8 Mon Sep 17 00:00:00 2001 From: Amaan Qureshi Date: Thu, 29 Aug 2024 23:00:58 -0400 Subject: [PATCH] docs(changelog): add 0.23.0 release notes --- CHANGELOG.md | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 92 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 62c98baa..d015e433 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,96 @@ # Changelog +## [0.23.0] - 2024-08-26 + +### Breaking + +- Introduce tree-sitter-language crate for grammar crates to depend on () +- Revert interning of a sequence or choice of a single rule () +- **bindings**: Use capsules in python () +- **dsl**: Support other JS runtimes () + +### Features + +- Add `fuzz` subcommand () +- Allow external scanners to use the logger () +- **bindings**: Add query constants to python +- **bindings**: Add node, python, swift tests () +- **bindings**: Update npm scripts () +- **cli**: Bump unicode data to v15.1.0 +- **cli**: Add debug build flag () +- **cli**: Attach helpful context when `grammar.json` cannot be found () +- **cli**: Add `--show-fields` flag to `test` command () +- **lib**: Add `ts_query_end_byte_for_pattern` () +- **lib**: Support no_std +- **zig**: Update outdated path syntax () + +### Bug Fixes + +- Always reset to the first language when iterating over language attributes () +- Better error when a supertype rule is invalid () +- Intern a sequence or choice of a single element the same as the element itself +- Do not "absorb" rules that consist of a single terminal if the rule is hidden () +- **bindings**: Update go bindings () +- **cli**: Installation via authenticated proxy () +- **cli**: Dedup `preceding_auxiliary_symbols` () +- **dsl**: Improve error message when a rule function returns undefined () +- **generate**: Rename `cargo.toml` template () +- **go**: Update parser name in binding files, add to docs () +- **lib**: A null clock must have `tv_nsec` be 0 as well () +- **lib**: Restrict pattern_map optimization when a wildcard step has an immediate first child () +- **lib**: An empty root node should not precede an empty range () +- **lib**: Fix api header C++ interop () +- **make**: Fail properly on Windows () +- **rust**: Fetch `CARGO_MANIFEST_DIR` at runtime in build script () +- **rust**: Fix new clippy warnings () +- **test**: Multi-grammar corpus tests are now in the repo root () +- **wasm**: Update test + +### Performance + +- Hoist out common subexpressions in satisfies_text_predicates () + +### Documentation + +- Update changelog +- Remove duplicate pr # in changelog +- Add note for bullet +- Fix syntax highlighting unit testing example () +- Add tsserver annotation to example () +- Fix tree cursor documentation () +- Document rust library features () +- Clean up binding & parser lists () + +### Refactor + +- Remove ansi_term dependency () +- Remove difference dependency () +- **scripts**: Clean up bash scripts () + +### Testing + +- Modernize scanner files () + +### Build System and CI + +- **deps**: bump wasmtime, cc, and wasmparser ( +- **bindings**: Use language version in soname () +- **lib**: Include the minor in the soname +- **loader**: Make dependencies optional () +- **swift**: Declare header search path () +- **wasm**: Don't minify JS () +- **wasm**: Bump emscripten to 3.1.64 () +- **wasm**: Support big endian machines () +- **zig**: Git ignore updated Zig cache directory () + +### Other + +- Swap `sprintf()` for `snprintf()` () +- Add `.build` to gitignore () +- Reset language when resetting wasm store () +- Clone wasm store engine () +- **bindings**: Fix indent & line endings () + ## [0.22.6] — 2024-05-05 ### Features @@ -259,7 +350,7 @@ They don't have any dynamic global data, so all it takes is just declaring them as such - Fix crash when attempting to load ancient languages via wasm () - Use workspace dependencies for internal crates like Tree-sitter () -- Remove vendored wasmtime headers (https://github.com/tree-sitter/tree-sitter/pull/3084) +- Remove vendored wasmtime headers () When building rust binding, use wasmtime headers provided via cargo by the wasmtime-c-api crate. - Fix invalid parse stack recursive merging with mismatched error cost ()