### Changelog

All notable changes to this project will be documented in this file. Dates are displayed in UTC.

Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).

#### [0.14.3](https://github.com/ast-grep/ast-grep/compare/0.14.2...0.14.3)

- feat: add getTransformed in napi [`#551`](https://github.com/ast-grep/ast-grep/issues/551)
- fix: load custom languages in new command [`#751`](https://github.com/ast-grep/ast-grep/issues/751)
- chore(deps): update dependency ava to v6 [`496eb9d`](https://github.com/ast-grep/ast-grep/commit/496eb9d1cd9584361986ee0b46f3d85f4158886f)
- feat: add support for Elixir [`57edde1`](https://github.com/ast-grep/ast-grep/commit/57edde1345f72dee7d1073fe40883e9553c1a9d5)
- feat: rename fixer to TemplateFix [`5b53ce0`](https://github.com/ast-grep/ast-grep/commit/5b53ce0dae2809d46f83c03579f7a4d9ef19ce5c)

#### [0.14.2](https://github.com/ast-grep/ast-grep/compare/0.14.1...0.14.2)

> 2 December 2023

- fix: update line number color [`#739`](https://github.com/ast-grep/ast-grep/issues/739)
- test: add test case for running sg without arg [`#748`](https://github.com/ast-grep/ast-grep/issues/748)
- fix(deps): update dependency @babel/core to v7.23.5 [`21e404c`](https://github.com/ast-grep/ast-grep/commit/21e404c2b0a0a7abda999db4bfbdac3a4ec36560)
- fix(deps): update dependency @swc/core to v1.3.100 [`941bffe`](https://github.com/ast-grep/ast-grep/commit/941bffec8449e1e5c5ba83a7926ae8014c2001a8)
- test: add tes for lang_globs [`a16001c`](https://github.com/ast-grep/ast-grep/commit/a16001ca67af17a32826b9907fb407db3fa3f4a3)

#### [0.14.1](https://github.com/ast-grep/ast-grep/compare/0.13.2...0.14.1)

> 30 November 2023

- feat: add languageGlobs [`#601`](https://github.com/ast-grep/ast-grep/issues/601)
- doc: import config reference link in error message [`#736`](https://github.com/ast-grep/ast-grep/issues/736)
- fix: report error for wrong config file [`#736`](https://github.com/ast-grep/ast-grep/issues/736)
- feat: support register alias language for extension override [`#601`](https://github.com/ast-grep/ast-grep/issues/601)
- chore(deps): update dependency typescript to v5.3.2 [`55a43bd`](https://github.com/ast-grep/ast-grep/commit/55a43bd73e6a8d898e1bb28d7ebfed6d5ea2c981)
- fix: remove alias languages [`1f26f62`](https://github.com/ast-grep/ast-grep/commit/1f26f6276ef8babcfbb6492c03bd36753936610b)
- feat: support language globs [`fafd27c`](https://github.com/ast-grep/ast-grep/commit/fafd27cad401b6c1c8509f47401fb3a6c4d4b2d1)

#### [0.13.2](https://github.com/ast-grep/ast-grep/compare/0.13.1...0.13.2)

> 20 November 2023

- chore: add cargo fmt/clippy to CI pipeline [`#698`](https://github.com/ast-grep/ast-grep/issues/698)
- refactor: better reusability code for benchmark [`775cee4`](https://github.com/ast-grep/ast-grep/commit/775cee48dd57b129e7e19e78665752a2fcdf2452)
- feat: add async call [`11cf0dd`](https://github.com/ast-grep/ast-grep/commit/11cf0ddbc9db18167c27b30b7d12800e0ad9935a)
- feat: support napi's parseAsync [`ac78bc0`](https://github.com/ast-grep/ast-grep/commit/ac78bc0f75346d9ef1ed7de2622dfd02c439a4a3)

#### [0.13.1](https://github.com/ast-grep/ast-grep/compare/0.13.0...0.13.1)

> 15 November 2023

- **Breaking change:** fix: use ansi by default on windows [`#680`](https://github.com/ast-grep/ast-grep/issues/680)
- fix: guard against wrong tree-sitter traversal [`#713`](https://github.com/ast-grep/ast-grep/issues/713)
- docs(binding/py): basic readme [`2d39b9b`](https://github.com/ast-grep/ast-grep/commit/2d39b9bd05c3a6a52e8406c5c3ae2ffe4d863e9d)
- fix(deps): update dependency @oxidation-compiler/napi to ^0.2.0 [`d64c09b`](https://github.com/ast-grep/ast-grep/commit/d64c09bf83fb72dbbd31e86cdf90bad18c0db7b6)
- feat: rename ast-grep-py [`3e891c0`](https://github.com/ast-grep/ast-grep/commit/3e891c0389f775a1b3a83f14e73300316bf9ab3f)

#### [0.13.0](https://github.com/ast-grep/ast-grep/compare/0.12.5...0.13.0)

> 5 November 2023

- feat: support pyo3 TypedDict [`#389`](https://github.com/ast-grep/ast-grep/issues/389)
- chore(deps): update yarn to v4 [`818bcc2`](https://github.com/ast-grep/ast-grep/commit/818bcc2cf0c6ba3f6938447f142edddde33fa7c9)
- refactor: move node outside [`40028b0`](https://github.com/ast-grep/ast-grep/commit/40028b0b23c26f4fc51edeb3e90633df983ed34c)
- chore: formatting [`254e0de`](https://github.com/ast-grep/ast-grep/commit/254e0de904ff288e17d3b649c0651258430e5ded)

#### [0.12.5](https://github.com/ast-grep/ast-grep/compare/0.12.4...0.12.5)

> 15 October 2023

- fix: rewrite out of bound panic [`#668`](https://github.com/ast-grep/ast-grep/issues/668)
- chore: bump windows action version [`#620`](https://github.com/ast-grep/ast-grep/issues/620)
- fix: correct stopBy json schema [`#666`](https://github.com/ast-grep/ast-grep/issues/666)
- feat: `cargo xtask schema` for rule's JSON schema [`#665`](https://github.com/ast-grep/ast-grep/issues/665)
- feat: add json schema [`73d6299`](https://github.com/ast-grep/ast-grep/commit/73d629942b6f50c2a06f2ffb37d317f6fe827830)
- feat: initialize pyo3 [`810c454`](https://github.com/ast-grep/ast-grep/commit/810c454f03ca853a0c00533944877191126403ac)
- feat: update rules field doc [`c9d611d`](https://github.com/ast-grep/ast-grep/commit/c9d611dc3422bff29c31e509611dee0c12c87e0d)

#### [0.12.4](https://github.com/ast-grep/ast-grep/compare/0.12.3...0.12.4)

> 3 October 2023

- fix: fix word split after delimiter appear [`b1bcd61`](https://github.com/ast-grep/ast-grep/commit/b1bcd61adc42d362b6c58eb34f963d194f08f6a9)

#### [0.12.3](https://github.com/ast-grep/ast-grep/compare/0.12.2...0.12.3)

> 3 October 2023

- fix: correct indent for multiple MV in same line [`#647`](https://github.com/ast-grep/ast-grep/issues/647)
- **Breaking change:** feat: change string case interface [`4b60f82`](https://github.com/ast-grep/ast-grep/commit/4b60f82210819317768cb9bde6254feacf328969)
- feat: add string split [`fe52289`](https://github.com/ast-grep/ast-grep/commit/fe52289e643b44dca920823d78d461fd80624fde)
- feat:change string case name and implement conversion [`f073ee3`](https://github.com/ast-grep/ast-grep/commit/f073ee328768586a7aa216649947a435378f2387)

#### [0.12.2](https://github.com/ast-grep/ast-grep/compare/0.12.1...0.12.2)

> 29 September 2023

- Add identifier convention conversions [`#638`](https://github.com/ast-grep/ast-grep/pull/638)
- **Breaking change:** feat: change API name toCase [`fa50666`](https://github.com/ast-grep/ast-grep/commit/fa506666def5066f8ed04fbef376101ab6e96672)
- fix: make code compiles [`8f29f4f`](https://github.com/ast-grep/ast-grep/commit/8f29f4feb34d2ea8ec2bd1be6253fe8dc28ea226)
- fix: remove unused func temporarily [`710f76e`](https://github.com/ast-grep/ast-grep/commit/710f76ea42106bda4003675a3b31b5e3b1bc0d9c)

#### [0.12.1](https://github.com/ast-grep/ast-grep/compare/0.12.0...0.12.1)

> 13 September 2023

- Implement string conversions described in #436 as a stand-alone chainable `convert` transform [`dc1e435`](https://github.com/ast-grep/ast-grep/commit/dc1e435d4204fdc9d9771e69b3c8738651f63b77)
- Move structs around in transform.rs for better readability [`95a9ab8`](https://github.com/ast-grep/ast-grep/commit/95a9ab8a1587d80fb1043539ac3d53074bb48fad)
- fix(deps): update rust crate serde_json to 1.0.106 [`b41cfc0`](https://github.com/ast-grep/ast-grep/commit/b41cfc038a23d196f49dd722678b33bc1c7f9c7d)

#### [0.12.0](https://github.com/ast-grep/ast-grep/compare/0.11.1...0.12.0)

> 9 September 2023

- chore(deps): update dependency windows to v2022 [`#623`](https://github.com/ast-grep/ast-grep/pull/623)
- **Breaking change:** feat: interactive print one item a time [`#444`](https://github.com/ast-grep/ast-grep/issues/444)
- refactor: mvoe combined scan to config crate [`#626`](https://github.com/ast-grep/ast-grep/issues/626)
- test: add test for test case [`#553`](https://github.com/ast-grep/ast-grep/issues/553)
- **Breaking change:** feat: revamp diff printing schema [`2b30111`](https://github.com/ast-grep/ast-grep/commit/2b301116996b7b010ed271672d35a3529fb36e56)
- **Breaking change:** feat: accept multiple scanning [`4860aa4`](https://github.com/ast-grep/ast-grep/commit/4860aa4585b85e6efc7a0e979cebce54bc49afc4)
- refactor: move reporter out of verify.rs [`58fb152`](https://github.com/ast-grep/ast-grep/commit/58fb1521488fbee246bfee776f778ffeb261b47e)

#### [0.11.1](https://github.com/ast-grep/ast-grep/compare/0.11.0...0.11.1)

> 17 August 2023

- feat: support context lines in JSON mode [`#585`](https://github.com/ast-grep/ast-grep/issues/585)
- fix(cli): update typos and usage instructions [`9fcf34f`](https://github.com/ast-grep/ast-grep/commit/9fcf34f6954eae82ff8277b7c83362b27e993ed7)
- fix: lock maturin version [`83608ac`](https://github.com/ast-grep/ast-grep/commit/83608ac9142797544b4b30fb937715bd889d4acb)
- fix: allow newer maturin [`3704f63`](https://github.com/ast-grep/ast-grep/commit/3704f6387c690ae4c8b7736eb3f639408ae7bc81)

#### [0.11.0](https://github.com/ast-grep/ast-grep/compare/0.10.1...0.11.0)

> 13 August 2023

- feat: Rename scan --rule-id → scan --filter [`#596`](https://github.com/ast-grep/ast-grep/pull/596)
- feat: improve completions command [`#595`](https://github.com/ast-grep/ast-grep/issues/595)
- **Breaking change:** feat: test -f now accepts regex [`6465200`](https://github.com/ast-grep/ast-grep/commit/646520057cf3b3e0e36a8d8edaeed8fa53fa1794)
- **Breaking change:** fix: remove -f -F short form argument [`d6d2c23`](https://github.com/ast-grep/ast-grep/commit/d6d2c23ed8e8a58bf077b9e51a8b9fce10a2013e)
- feat: add option `scan --rule-id &lt;rule_id&gt;…` [`a424121`](https://github.com/ast-grep/ast-grep/commit/a4241214d661bf1b44d51a7e34aaad5366ae95f3)

#### [0.10.1](https://github.com/ast-grep/ast-grep/compare/0.10.0...0.10.1)

> 4 August 2023

- [feat] Make CLI reports a soft warning if query is invalid [`#575`](https://github.com/ast-grep/ast-grep/issues/575)
- feat: improve swift support [`#573`](https://github.com/ast-grep/ast-grep/issues/573)
- doc: add descriptions and links in npm page [`3be3764`](https://github.com/ast-grep/ast-grep/commit/3be376400a3206fd220360ee4af78eac37a60aa7)
- feat: implement soft error reporting [`c581c34`](https://github.com/ast-grep/ast-grep/commit/c581c349cbd4d4db1ad7a40bfd57a464ba0a636a)
- fix: show at least three lines of context in diffing [`ff61688`](https://github.com/ast-grep/ast-grep/commit/ff616882ad79fa7ca9e549d15ced271c1bbf25f1)

#### [0.10.0](https://github.com/ast-grep/ast-grep/compare/0.9.3...0.10.0)

> 30 July 2023

- feat: support multiple JSON printing style [`#561`](https://github.com/ast-grep/ast-grep/issues/561)
- refactor: move output related arguments out [`#539`](https://github.com/ast-grep/ast-grep/issues/539)
- feat: improve readability of argument value [`#546`](https://github.com/ast-grep/ast-grep/issues/546)
- feat: use checked_ilog10 to reduce string allocation [`#550`](https://github.com/ast-grep/ast-grep/issues/550)
- feat: nicer line number printing color [`#547`](https://github.com/ast-grep/ast-grep/issues/547)
- refactor: move common input args out [`a9bd29a`](https://github.com/ast-grep/ast-grep/commit/a9bd29a9677db1bdb6c9f99d218dd4ecdc5a7927)
- refactor: reorganize utils files and add comments [`19dacf8`](https://github.com/ast-grep/ast-grep/commit/19dacf82d586db1820d779205f56cf08b4dc1acb)
- feat(test): add test case filter for sg test [`52f51e9`](https://github.com/ast-grep/ast-grep/commit/52f51e9e5cea9527ba86928d9e6bef64f77f2262)

#### [0.9.3](https://github.com/ast-grep/ast-grep/compare/0.9.2...0.9.3)

> 27 July 2023

- feat: add before/after context [`#464`](https://github.com/ast-grep/ast-grep/issues/464)
- test: move test out and fix heading never [`67037aa`](https://github.com/ast-grep/ast-grep/commit/67037aa4a7322ed7f3911b33bb71168f3b6aea8c)
- test: add json print test [`374db3b`](https://github.com/ast-grep/ast-grep/commit/374db3ba9027bcaeee6ef040e1b7b87e0e0227f1)
- fix: fix display context [`08a52d1`](https://github.com/ast-grep/ast-grep/commit/08a52d16d9fa47a499db100655153f8b70c68979)

#### [0.9.2](https://github.com/ast-grep/ast-grep/compare/0.9.1...0.9.2)

> 22 July 2023

- feat(language): add initial support for JSON [`#522`](https://github.com/ast-grep/ast-grep/pull/522)
- test: add lua language test [`#519`](https://github.com/ast-grep/ast-grep/issues/519)
- feat: Support meta-variable in ERROR [`#526`](https://github.com/ast-grep/ast-grep/issues/526)
- infra: add napi benckmark [`#442`](https://github.com/ast-grep/ast-grep/issues/442)
- feat: support GitHub format [`#499`](https://github.com/ast-grep/ast-grep/issues/499)
- fix: tweak style [`6ec490b`](https://github.com/ast-grep/ast-grep/commit/6ec490ba17bed6d7919911b32b7ec7e9ca714bab)
- chore(deps): update yarn to v3.6.1 [`23a2684`](https://github.com/ast-grep/ast-grep/commit/23a2684b9778c72539903805a9c3305d2cb8cdcc)
- fix(deps): update dependency @oxidation-compiler/napi to ^0.1.0 [`492d5c8`](https://github.com/ast-grep/ast-grep/commit/492d5c8f52d82555edc542fac4a11060df2abbf4)

#### [0.9.1](https://github.com/ast-grep/ast-grep/compare/0.9.0...0.9.1)

> 16 July 2023

- fix: fix wrong text [`#517`](https://github.com/ast-grep/ast-grep/issues/517)
- feat: support ruby language [`#518`](https://github.com/ast-grep/ast-grep/issues/518)
- refactor: use macro to unify language impl [`#516`](https://github.com/ast-grep/ast-grep/issues/516)
- fix: fix kotlin grammar [`e7faadb`](https://github.com/ast-grep/ast-grep/commit/e7faadb50c4e196a33e4880a08d21af931a16535)
- test: add test for diff printing [`5330149`](https://github.com/ast-grep/ast-grep/commit/533014982903cf18d42dde8de7ae1e7a84da5454)
- fix(deps): update rust crate dashmap to 5.5.0 [`05282aa`](https://github.com/ast-grep/ast-grep/commit/05282aa43547f17eb4a74cbb164172646526e66f)

#### [0.9.0](https://github.com/ast-grep/ast-grep/compare/0.8.0...0.9.0)

> 15 July 2023

- **Breaking change:** feat: unify `--accept-all` and `--update-snapshots` to `--update-all` [`#513`](https://github.com/ast-grep/ast-grep/issues/513)
- **Breaking change:** infra: add breaking change in changelog [`#514`](https://github.com/ast-grep/ast-grep/issues/514)
- **Breaking change:** feat: change line separator to colon `:` in CLI output [`#512`](https://github.com/ast-grep/ast-grep/issues/512)
- fix: tsx should only discover *.tsx, ts discover only *.ts [`#502`](https://github.com/ast-grep/ast-grep/issues/502)
- refactor: refactor path to parallelwalk [`d697aad`](https://github.com/ast-grep/ast-grep/commit/d697aada02c07f7a54bde180a48e38a8a61ef28a)
- fix(deps): update rust crate globset to 0.4.11 [`3da277f`](https://github.com/ast-grep/ast-grep/commit/3da277f416582c405d6d2f7f881919669815f935)
- test: add test for `sg test` command arg parsing [`2735057`](https://github.com/ast-grep/ast-grep/commit/273505712321340933b333abb27c9f64117b0256)

#### [0.8.0](https://github.com/ast-grep/ast-grep/compare/0.7.2...0.8.0)

> 10 July 2023

- feat: add changelog to tag release [`#498`](https://github.com/ast-grep/ast-grep/issues/498)
- feat: add changelog to release [`#498`](https://github.com/ast-grep/ast-grep/issues/498)
- napi: add napi declaration [`e897d93`](https://github.com/ast-grep/ast-grep/commit/e897d93cd3a9942f34eac4c0170462fc19e3bc14)
- feat: change `--no-stdin` to `--stdin` [`1e26573`](https://github.com/ast-grep/ast-grep/commit/1e26573b1743e635533b12ca2e207cb26e515edb)
- fix: update napi typing doc [`59dfcb7`](https://github.com/ast-grep/ast-grep/commit/59dfcb788ec343166b06551d692c6f8ce596c24a)

#### [0.7.2](https://github.com/ast-grep/ast-grep/compare/0.7.1...0.7.2)

> 9 July 2023

- feat: add getRoot for SgNode [`#497`](https://github.com/ast-grep/ast-grep/issues/497)
- feat: add option to disable a rule [`#489`](https://github.com/ast-grep/ast-grep/issues/489)
- feat: add pattern fixed string optimizer [`#349`](https://github.com/ast-grep/ast-grep/issues/349)
- feat: add support for --no-stdin [`#490`](https://github.com/ast-grep/ast-grep/issues/490)
- feat: change language implementations [`7525927`](https://github.com/ast-grep/ast-grep/commit/75259270cdcec2e343cbaba01035dddf223f7d27)
- test: add test for sg scan with off-rule [`0eeb99d`](https://github.com/ast-grep/ast-grep/commit/0eeb99db93db0926a4e681274504126b6a85fe94)
- fix: change returning type [`10e676b`](https://github.com/ast-grep/ast-grep/commit/10e676be35567226b74d23a80ee82eff3e0e4cde)

#### [0.7.1](https://github.com/ast-grep/ast-grep/compare/0.7.0...0.7.1)

> 29 June 2023

- feat: add supported languages in help string [`#482`](https://github.com/ast-grep/ast-grep/issues/482)
- feat: add Scala support [`84492b9`](https://github.com/ast-grep/ast-grep/commit/84492b9f1a1b57a67df7907d6859e9a707dae077)
- feat: improve language's crate's organization [`429aa35`](https://github.com/ast-grep/ast-grep/commit/429aa357d29d80237418585f1a047bfeb0fafbab)
- feat: Use existing language FromStr impl when Deserializing [`ad0e9a6`](https://github.com/ast-grep/ast-grep/commit/ad0e9a68a05c2b60d1078fcd56fc2b8fc5499b50)

#### [0.7.0](https://github.com/ast-grep/ast-grep/compare/0.6.7...0.7.0)

> 25 June 2023

- feat: support scan from stdin [`#397`](https://github.com/ast-grep/ast-grep/issues/397)
- feat: support search code from stdin [`#397`](https://github.com/ast-grep/ast-grep/issues/397)
- doc: add pip install option [`#465`](https://github.com/ast-grep/ast-grep/issues/465)
- feat: support stdin as input [`2e8f0ef`](https://github.com/ast-grep/ast-grep/commit/2e8f0ef9dbd133da842936ea348c1391c81d4f43)
- fix(deps): update rust crate toml_edit to 0.19.11 [`f0facff`](https://github.com/ast-grep/ast-grep/commit/f0facff676e576d5926918b92f380f5544e5d600)
- fix: remove redundant line number highlighting [`aaae3a3`](https://github.com/ast-grep/ast-grep/commit/aaae3a3a1e2c3ba1f91c54223154e28f44052b17)

#### [0.6.7](https://github.com/ast-grep/ast-grep/compare/0.6.6...0.6.7)

> 23 June 2023

- feat: add pypi release [`d4752fd`](https://github.com/ast-grep/ast-grep/commit/d4752fdea8d2ab868415287da5aa572c81884f37)
- feat: add more cli support [`170fbbf`](https://github.com/ast-grep/ast-grep/commit/170fbbf39b0623cc7789ba30a6f3e56db3398197)
- fix: remove linux cross [`692020b`](https://github.com/ast-grep/ast-grep/commit/692020b7111663914975d3b11756d52dff952896)

#### [0.6.6](https://github.com/ast-grep/ast-grep/compare/0.6.5...0.6.6)

> 19 June 2023

- chore: update changelog [`962246b`](https://github.com/ast-grep/ast-grep/commit/962246b9a273386e347ea5cfad1384b618d8b7f4)
- fix: add cpp to non-builtin parser [`0a473c9`](https://github.com/ast-grep/ast-grep/commit/0a473c9e3c5fcfa909f86bea864ae1d671a27cfa)

#### [0.6.5](https://github.com/ast-grep/ast-grep/compare/0.6.4...0.6.5)

> 19 June 2023

- feat: support check multivar pattern equality [`#460`](https://github.com/ast-grep/ast-grep/issues/460)
- feat(language): add initial support for C++ [`9315571`](https://github.com/ast-grep/ast-grep/commit/93155717ba48fdf1dea3138e87b5ff7a220d5cc8)
- doc: add docs string for all core modules [`e0214f7`](https://github.com/ast-grep/ast-grep/commit/e0214f79a6799a51f2ec3b95b32a6dc4838a5df0)
- test: add test for transform [`100f081`](https://github.com/ast-grep/ast-grep/commit/100f081cef8aa1a260ead335446d68b5fbd7346e)

#### [0.6.4](https://github.com/ast-grep/ast-grep/compare/0.6.3...0.6.4)

> 17 June 2023

- chore: bump changelog [`d90e2c3`](https://github.com/ast-grep/ast-grep/commit/d90e2c384eca20d995f51da21836cdc7532481fd)
- fix: skip overlapping diff [`996a423`](https://github.com/ast-grep/ast-grep/commit/996a423f15bec37aa1a6e0a6f9e4d29950857b92)
- doc: fix spelling [`5ef8982`](https://github.com/ast-grep/ast-grep/commit/5ef8982de3b628fca55e657026608e940b6473e0)

#### [0.6.3](https://github.com/ast-grep/ast-grep/compare/0.6.2...0.6.3)

> 11 June 2023

- chore: move test cases location [`3c0276e`](https://github.com/ast-grep/ast-grep/commit/3c0276e9ca2f3d8f16056339d2dd2a656c1efc9f)
- feat: add support for transform [`47feee1`](https://github.com/ast-grep/ast-grep/commit/47feee14afd894f760c0aedeaf95589179511870)
- refactor: move get text to meta_var [`5692c26`](https://github.com/ast-grep/ast-grep/commit/5692c26ab62c67a5193ed89dea202059673f01a5)

#### [0.6.2](https://github.com/ast-grep/ast-grep/compare/0.6.1...0.6.2)

> 6 June 2023

- bump version [`26583ec`](https://github.com/ast-grep/ast-grep/commit/26583eccb7bd8411f9674943302c1470bc816324)
- fix: add re-indent to fixer [`245301e`](https://github.com/ast-grep/ast-grep/commit/245301e8bf9658b5d14e3abaee799e948d001a10)

#### [0.6.1](https://github.com/ast-grep/ast-grep/compare/0.6.0...0.6.1)

> 6 June 2023

- fix: reindent back into src code [`a522875`](https://github.com/ast-grep/ast-grep/commit/a5228759822480238a7ed265e657716a8988d914)
- perf: remove all possible allocations [`45558a5`](https://github.com/ast-grep/ast-grep/commit/45558a5338649dc7b6d6a41bc1d680a86976e4c1)
- fix: use Cow to otpimize allocation [`b4c85b3`](https://github.com/ast-grep/ast-grep/commit/b4c85b3e06b25c75c6ba2226f57e2feb6d7e662b)

#### [0.6.0](https://github.com/ast-grep/ast-grep/compare/0.5.7...0.6.0)

> 5 June 2023

- feat: add indentation sensitive replacement [`#394`](https://github.com/ast-grep/ast-grep/issues/394)
- fix: use ubuntu20.04 instead of latest [`#416`](https://github.com/ast-grep/ast-grep/issues/416)
- refactor: refine replacer modules [`79dc46b`](https://github.com/ast-grep/ast-grep/commit/79dc46b538997489bf26777603cf1814b2372d33)
- test: add root replacer test back [`99aa031`](https://github.com/ast-grep/ast-grep/commit/99aa03102263583bdf673bd8011e7f8206b420b4)
- feat: add design notes for indentation sensitive fixer [`9c8cc05`](https://github.com/ast-grep/ast-grep/commit/9c8cc05dcc7228e9961c6aa7d39c7ff5903f4cad)

#### [0.5.7](https://github.com/ast-grep/ast-grep/compare/0.5.6...0.5.7)

> 29 May 2023

- wildcard and spread rust tests [`#415`](https://github.com/ast-grep/ast-grep/pull/415)
- fix: fix multi variate capturing hangs [`#411`](https://github.com/ast-grep/ast-grep/issues/411)
- feat: smarter matching algorithm [`#374`](https://github.com/ast-grep/ast-grep/issues/374)
- chore(deps): update dependency ava to v5.3.0 [`67e8ec1`](https://github.com/ast-grep/ast-grep/commit/67e8ec1c12840ed8db3886360d5dfff758ec7062)
- test: add test for match end [`3e61667`](https://github.com/ast-grep/ast-grep/commit/3e61667023749560d85a5e1a4ea756f2d3dc6d52)
- chore(deps): update rust crate criterion to 0.5 [`3579862`](https://github.com/ast-grep/ast-grep/commit/357986219ad10db7644d54f797bece1417fa175c)

#### [0.5.6](https://github.com/ast-grep/ast-grep/compare/0.5.5...0.5.6)

> 25 May 2023

- fix: bump tree-sitter-facade version and support next_all on web [`a48ba62`](https://github.com/ast-grep/ast-grep/commit/a48ba62a8f6decd253ee494a15591dda92ed6a45)
- fix: update tree-sitter-facade version [`8e44f6a`](https://github.com/ast-grep/ast-grep/commit/8e44f6ac8aa64d0ad7d7b788074e56baac02e74b)
- chore: update changelog [`78f751a`](https://github.com/ast-grep/ast-grep/commit/78f751ad1710912a81f376ae27049f5b39a8a575)

#### [0.5.5](https://github.com/ast-grep/ast-grep/compare/0.5.4...0.5.5)

> 24 May 2023

- fix: add new xtask [`37d3e40`](https://github.com/ast-grep/ast-grep/commit/37d3e403dbcc35791e0b58d18d11d8573598de04)
- chore: bump version [`20addde`](https://github.com/ast-grep/ast-grep/commit/20addde4df9dd8e425f9eaf7dda6d80f4c9a1d8d)
- fix: add version [`69b0bb6`](https://github.com/ast-grep/ast-grep/commit/69b0bb6197ba28d42104c9d36dbf2f8c664041b1)

#### [0.5.4](https://github.com/ast-grep/ast-grep/compare/0.5.3...0.5.4)

> 24 May 2023

- fix: implement generic Doc replacer for pattern [`#405`](https://github.com/ast-grep/ast-grep/issues/405)
- fix: use get_range instead as_slice to handle byte_offset and underlying arry size [`#400`](https://github.com/ast-grep/ast-grep/issues/400)
- chore: bump version [`998691d`](https://github.com/ast-grep/ast-grep/commit/998691d36b477766be92f1ede3c0bc153d0cca42)
- feat: support generic new Pattern/Root from str [`36d91e7`](https://github.com/ast-grep/ast-grep/commit/36d91e7d48316d3e645b606f2f5a293359d0138e)
- chore: use workspace package info [`960fa8d`](https://github.com/ast-grep/ast-grep/commit/960fa8d1021eb5ba932ee1dab6ecbbfdd82030a3)

#### [0.5.3](https://github.com/ast-grep/ast-grep/compare/0.5.2...0.5.3)

> 18 May 2023

- perf: optimize relational rule's stopBy: neighbor [`#358`](https://github.com/ast-grep/ast-grep/issues/358)
- perf: optimize node's next_all by tree-cursor [`#358`](https://github.com/ast-grep/ast-grep/issues/358)
- test: add test for node operators [`ac38cb8`](https://github.com/ast-grep/ast-grep/commit/ac38cb81d444e458a87a14a789cc043da6d70c8e)
- refactor: add comments for ansi link [`d9ebbe5`](https://github.com/ast-grep/ast-grep/commit/d9ebbe5cc2b47876c8ef212550f34891b64bfd28)
- test: add test for precedes/follows serialization [`1d7d8ff`](https://github.com/ast-grep/ast-grep/commit/1d7d8ff02444224553c1e2647a3a4c49026338ff)

#### [0.5.2](https://github.com/ast-grep/ast-grep/compare/0.5.1...0.5.2)

> 13 May 2023

- docs: fix readme typo [`#366`](https://github.com/ast-grep/ast-grep/pull/366)
- chore: add cargo build before git tag [`#367`](https://github.com/ast-grep/ast-grep/issues/367)
- 0.5.2 bump version [`54ba0a7`](https://github.com/ast-grep/ast-grep/commit/54ba0a7237bf30663c5f89141c0438ffcc9c2cb9)
- feat: add go setting [`a1d579b`](https://github.com/ast-grep/ast-grep/commit/a1d579b4da5766c4cc09cfe0cbf53fc24669b107)
- fix: fix fmt and clippy [`efab639`](https://github.com/ast-grep/ast-grep/commit/efab63959519c6b8f574c8cdfdf79ff9722c2a02)

#### [0.5.1](https://github.com/ast-grep/ast-grep/compare/0.5.0...0.5.1)

> 12 May 2023

- 0.5.1 bump version [`ebae85f`](https://github.com/ast-grep/ast-grep/commit/ebae85f0b18f5f69d30ba9e868b52f3ab850a224)
- fix: update deps [`ccd7a62`](https://github.com/ast-grep/ast-grep/commit/ccd7a62dc455d313ce1de9237b809ddc92db4aec)
- chore: update CHANGELOG [`990091e`](https://github.com/ast-grep/ast-grep/commit/990091e50b4e8bf0cd28026785386a60974a195e)

#### [0.5.0](https://github.com/ast-grep/ast-grep/compare/0.4.1...0.5.0)

> 12 May 2023

- feat: provide additional binary name `ast-grep` [`#361`](https://github.com/ast-grep/ast-grep/issues/361)
- fix: support custom lang for sg run [`#357`](https://github.com/ast-grep/ast-grep/issues/357)
- feat: support dynamic lib loading [`#347`](https://github.com/ast-grep/ast-grep/issues/347)
- feat: replace SupportLanguage with SgLang [`f6014f9`](https://github.com/ast-grep/ast-grep/commit/f6014f994d6b4fc6b2207b4abf47d17fa7ce25a0)
- Used result in test code to remove unwrap [`07bcf7e`](https://github.com/ast-grep/ast-grep/commit/07bcf7e7e2922adfc2c2b4df8d9904ef16a37b7a)
- feat: improve implementation of dynamic lang [`3757887`](https://github.com/ast-grep/ast-grep/commit/37578873565ab3f888bb19a3a2fe90c13f688b06)

#### [0.4.1](https://github.com/ast-grep/ast-grep/compare/0.4.0...0.4.1)

> 23 April 2023

- 0.4.1 bump version [`3ed1886`](https://github.com/ast-grep/ast-grep/commit/3ed18868be32eed98b4dbc8bd45194def03ada6a)
- chore: update changelog [`fdb657e`](https://github.com/ast-grep/ast-grep/commit/fdb657e7742014f8280580775e8dcbc031fb4af4)
- fix: fix sg new rule [`956dc46`](https://github.com/ast-grep/ast-grep/commit/956dc46cc0823c1611ac74f2a5664bae3911d58d)

#### [0.4.0](https://github.com/ast-grep/ast-grep/compare/0.3.3...0.4.0)

> 23 April 2023

- feat: reduce MetaVarEnv cloning in any [`#217`](https://github.com/ast-grep/ast-grep/issues/217)
- fix: support correct row/col offset for napi! [`#336`](https://github.com/ast-grep/ast-grep/issues/336)
- refactor: break down napi modules [`67062a6`](https://github.com/ast-grep/ast-grep/commit/67062a6233a1d6be5a4592f78e77984cd95c9f1c)
- feat: migrate node [`5e15d8d`](https://github.com/ast-grep/ast-grep/commit/5e15d8dbcfbede43dd80949a3e87fdff785bf1fd)
- feat: change ts_parser to source [`a3bef23`](https://github.com/ast-grep/ast-grep/commit/a3bef23c1d9bc9c8471309636d23346758b4a751)

#### [0.3.3](https://github.com/ast-grep/ast-grep/compare/0.3.2...0.3.3)

> 6 April 2023

- infra: add criterion benchmark [`#141`](https://github.com/ast-grep/ast-grep/issues/141)
- feat:  Add edit option for rules without fix [`#297`](https://github.com/ast-grep/ast-grep/issues/297)
- feat: optimize readability of test output [`#293`](https://github.com/ast-grep/ast-grep/issues/293)
- test: add integration test for run [`#292`](https://github.com/ast-grep/ast-grep/issues/292)
- refactor: move out lib and main [`a95c19e`](https://github.com/ast-grep/ast-grep/commit/a95c19eea2844d81d6f6e055581859837006ab7d)
- fix(deps): update rust crate clap to 4.2.1 [`b3fb9c9`](https://github.com/ast-grep/ast-grep/commit/b3fb9c9bf472ecd3c35285fa8a69cb39b40b4961)
- feat: add base_dir for new command [`2a75a0a`](https://github.com/ast-grep/ast-grep/commit/2a75a0a3694826bd6414f38ba46b1b112746a3d0)

#### [0.3.2](https://github.com/ast-grep/ast-grep/compare/0.3.1...0.3.2)

> 11 March 2023

- fix: find_rule should also find contingent rule [`#286`](https://github.com/ast-grep/ast-grep/issues/286)
- feat: create new project/util/rule command [`#266`](https://github.com/ast-grep/ast-grep/issues/266)
- feat: add write sgconfig [`750df87`](https://github.com/ast-grep/ast-grep/commit/750df8700fa58a0f9a70de71c5118cbf8d0a10d4)
- feat: rename find_config to find_rules [`8e5a181`](https://github.com/ast-grep/ast-grep/commit/8e5a181c0b9cb6380a0ab74c922edd2029075335)
- 0.3.2 bump version [`4f41f46`](https://github.com/ast-grep/ast-grep/commit/4f41f461d691a47a5d1562465f634321d022ca9a)

#### [0.3.1](https://github.com/ast-grep/ast-grep/compare/0.3.0...0.3.1)

> 28 February 2023

- fix: fix panic when matching root node [`#275`](https://github.com/ast-grep/ast-grep/issues/275)
- 0.3.1 bump version [`703467e`](https://github.com/ast-grep/ast-grep/commit/703467e420215e70851b5a82d9689e78cb867b59)
- fix: fix napi error [`3d305a6`](https://github.com/ast-grep/ast-grep/commit/3d305a6833471cc3f90e31fdb4111a4a5800c50f)
- chore: bump version [`a25bef1`](https://github.com/ast-grep/ast-grep/commit/a25bef1b5e7926c08b79787c115a913e037a2336)

#### [0.3.0](https://github.com/ast-grep/ast-grep/compare/0.2.6...0.3.0)

> 28 February 2023

- fix: add is_named_leaf [`#276`](https://github.com/ast-grep/ast-grep/issues/276)
- fix: report indirect cyclic dependencies [`#272`](https://github.com/ast-grep/ast-grep/issues/272)
- fix: register global rules by dependent order [`#269`](https://github.com/ast-grep/ast-grep/issues/269)
- [feature] register util rules by their topological sort order [`#270`](https://github.com/ast-grep/ast-grep/issues/270)
- feat: change stopBy default value to neighbor [`#265`](https://github.com/ast-grep/ast-grep/issues/265)
- feat: add global utils [`#250`](https://github.com/ast-grep/ast-grep/issues/250)
- feat: add thrift support [`#255`](https://github.com/ast-grep/ast-grep/issues/255)
- fix: avoid strong reference in ReferentRule [`#253`](https://github.com/ast-grep/ast-grep/issues/253)
- refactor: factor out deserialize rule [`a6207ae`](https://github.com/ast-grep/ast-grep/commit/a6207aed7e238a980fae002cca337119fe5dc48e)
- refactor: move stop_by to separate file [`398c53d`](https://github.com/ast-grep/ast-grep/commit/398c53d144a3def075516af43aafcf5de7a2fcf6)
- refactor: reorganize rule and serialization [`37a303f`](https://github.com/ast-grep/ast-grep/commit/37a303faaf9b584b09495a082346d90c10d63398)

#### [0.2.6](https://github.com/ast-grep/ast-grep/compare/0.2.5...0.2.6)

> 8 February 2023

- feat: add maybe to differentiate null/missing/value [`#241`](https://github.com/ast-grep/ast-grep/issues/241)
- feat: add error exit code [`#238`](https://github.com/ast-grep/ast-grep/issues/238)
- refactor: disable color by default if output is not tty [`#239`](https://github.com/ast-grep/ast-grep/issues/239)
- feat: unify immediate and until to stopBy [`ff69866`](https://github.com/ast-grep/ast-grep/commit/ff69866c7f306fc6c727b7c45a004a8c27e5a3c8)
- 0.2.6 bump version [`136a75f`](https://github.com/ast-grep/ast-grep/commit/136a75f96d80481379aeab2e9cfc08972656b7ca)
- feat: support field in Inside [`c503f0f`](https://github.com/ast-grep/ast-grep/commit/c503f0f6352cee6c6f54e691e88b3a1d153fb221)

#### [0.2.5](https://github.com/ast-grep/ast-grep/compare/0.2.4...0.2.5)

> 4 February 2023

- feat: improve napi error message [`#227`](https://github.com/ast-grep/ast-grep/issues/227)
- feat: add reference [`303ec8c`](https://github.com/ast-grep/ast-grep/commit/303ec8c0b7d6e3489c4fde2e689fe6e4583126cd)
- feat: add find_in_files [`07735df`](https://github.com/ast-grep/ast-grep/commit/07735df59a88b2fbd872c49c99cf5d2e8f29f34a)
- feat: add napi findInFiles [`3f4e847`](https://github.com/ast-grep/ast-grep/commit/3f4e8478ef8deca957c89b8532363c650770d24a)

#### [0.2.4](https://github.com/ast-grep/ast-grep/compare/0.2.3...0.2.4)

> 29 January 2023

- perf: use potential_kinds for more scenarios [`#221`](https://github.com/ast-grep/ast-grep/issues/221)
- refactor: remove var_matchers from MetaVarEnv [`#218`](https://github.com/ast-grep/ast-grep/issues/218)
- refactor: remove get meta_var_matchers in Matcher [`#218`](https://github.com/ast-grep/ast-grep/issues/218)
- refactor: split scan and run [`bf1e7e2`](https://github.com/ast-grep/ast-grep/commit/bf1e7e2d2d5f1333e56a016d5f0378d06f88bb0b)
- Revert "perf: use potential_kinds for more scenarios" [`c264e32`](https://github.com/ast-grep/ast-grep/commit/c264e325dc2d7f6eeae744a5f267d38fcea18c57)
- refactor: remove duplicate MatchUnit/filter_file [`ab2222e`](https://github.com/ast-grep/ast-grep/commit/ab2222ef84be26e4628e22d8168f9b0633fa55f7)

#### [0.2.3](https://github.com/ast-grep/ast-grep/compare/0.2.2...0.2.3)

> 27 January 2023

- feat: make inside util inclusive [`#205`](https://github.com/ast-grep/ast-grep/issues/205)
- feat: support search multiple paths [`#207`](https://github.com/ast-grep/ast-grep/issues/207)
- fix: use return number for napi [`#205`](https://github.com/ast-grep/ast-grep/issues/205)
- 0.2.3 bump version [`753e972`](https://github.com/ast-grep/ast-grep/commit/753e9724ef882ca84b07db19407ecc80920ab459)
- refactor: use stop_by for all relational rule [`279edeb`](https://github.com/ast-grep/ast-grep/commit/279edeb5b19882ae270675dda35106667876cef2)
- refactor: cleaner StopBy matching [`974a307`](https://github.com/ast-grep/ast-grep/commit/974a307c9197ce64732b9a61c15ea26eb6b33cab)

#### [0.2.2](https://github.com/ast-grep/ast-grep/compare/0.2.1...0.2.2)

> 25 January 2023

- feat: add parseFile method [`9d22822`](https://github.com/ast-grep/ast-grep/commit/9d22822b74adc850d2b5e1eb041a5f564eb7a50b)
- 0.2.2 bump version [`767201a`](https://github.com/ast-grep/ast-grep/commit/767201afdf564f8171bb95528ec938091a047343)
- fix: add css [`809133c`](https://github.com/ast-grep/ast-grep/commit/809133c506beab29734d3c9a80061c9fc788e0ee)

#### [0.2.1](https://github.com/ast-grep/ast-grep/compare/0.2.0...0.2.1)

> 24 January 2023

- 0.2.1 bump version [`7d81fd7`](https://github.com/ast-grep/ast-grep/commit/7d81fd7e1abd30bd3b09e2319762154c8d530620)
- chore: update changelog [`f2907a4`](https://github.com/ast-grep/ast-grep/commit/f2907a4e7e917d684abb2393a99d6b7d395501e4)
- fix: add dart in wasm [`545de0e`](https://github.com/ast-grep/ast-grep/commit/545de0e7ddc6703a49c9a8f2a6c95f3c3a53776c)

#### [0.2.0](https://github.com/ast-grep/ast-grep/compare/0.1.18...0.2.0)

> 24 January 2023

- feat: support multi node pattern [`#199`](https://github.com/ast-grep/ast-grep/issues/199)
- [refactor] Extract a match node iterator function in matcher_tree [`#199`](https://github.com/ast-grep/ast-grep/issues/199)
- feat: print out serialized rule message [`#200`](https://github.com/ast-grep/ast-grep/issues/200)
- fix: fix nested leaf match crash in  non-entrant traversal [`#197`](https://github.com/ast-grep/ast-grep/issues/197)
- feat: add Dart support [`#172`](https://github.com/ast-grep/ast-grep/issues/172)
- fix: fix wrong line number in diff [`#192`](https://github.com/ast-grep/ast-grep/issues/192)
- feat: support inclusive until [`#191`](https://github.com/ast-grep/ast-grep/issues/191)
- feat: allow shorthands to combine all rule kinds [`51f72db`](https://github.com/ast-grep/ast-grep/commit/51f72db0a65454e08786a3c76f513e1664a5104d)
- refactor: refactor deser for better error message [`f28f964`](https://github.com/ast-grep/ast-grep/commit/f28f96426e867997994c846d2fcc77044329368c)
- 0.2.0 bump version [`e580932`](https://github.com/ast-grep/ast-grep/commit/e580932f431d1958983bcb9399b5329e58ffcd2a)

#### [0.1.18](https://github.com/ast-grep/ast-grep/compare/0.1.17...0.1.18)

> 16 January 2023

- fix: revert write env for unmatched pattern [`#190`](https://github.com/ast-grep/ast-grep/issues/190)
- fix: fix Has relation [`#188`](https://github.com/ast-grep/ast-grep/issues/188)
- feat: add rule info to config fixer [`#122`](https://github.com/ast-grep/ast-grep/issues/122)
- refactor: deduplicate json printer code [`#185`](https://github.com/ast-grep/ast-grep/issues/185)
- feat: add regex matcher [`0a40ed2`](https://github.com/ast-grep/ast-grep/commit/0a40ed22337c2ebe0bfb33447f8e762adcca5077)
- 0.1.18 bump version [`bfdde22`](https://github.com/ast-grep/ast-grep/commit/bfdde226fa46c58988b58f12b19bca6b64bfa4f2)
- feat: add debugging assert [`5b17e8b`](https://github.com/ast-grep/ast-grep/commit/5b17e8b138524d1455d2842a4c7525d62865951f)

#### [0.1.17](https://github.com/ast-grep/ast-grep/compare/0.1.16...0.1.17)

> 15 January 2023

- feat: add error handling for parsing RuleConfig [`#182`](https://github.com/ast-grep/ast-grep/issues/182)
- feat: better error handling in constraints config [`#181`](https://github.com/ast-grep/ast-grep/issues/181)
- feat: improve error handling in config [`#181`](https://github.com/ast-grep/ast-grep/issues/181)
- 0.1.17 bump version [`0a638f1`](https://github.com/ast-grep/ast-grep/commit/0a638f18769803c60a7e44e9507a53cfbca3d403)
- feat: add try_new for pattern creation [`a9510d2`](https://github.com/ast-grep/ast-grep/commit/a9510d2c718a7d50cc1a5e0c614472d35f5dc028)
- refactor: cleanup public API [`875ef1e`](https://github.com/ast-grep/ast-grep/commit/875ef1e20a5ad00bc6658e31822467bf8fe9a943)

#### [0.1.16](https://github.com/ast-grep/ast-grep/compare/0.1.15...0.1.16)

> 14 January 2023

- fix(deps): update rust crate ignore to 0.4.19 [`#165`](https://github.com/ast-grep/ast-grep/pull/165)
- fix(deps): update rust crate globset to 0.4.10 [`#164`](https://github.com/ast-grep/ast-grep/pull/164)
- feat: support --no-ignore for scan/test [`#162`](https://github.com/ast-grep/ast-grep/issues/162)
- fix: fix two adjacent sticking but not overlapping matches [`#171`](https://github.com/ast-grep/ast-grep/issues/171)
- feat: add source [`1a23b6a`](https://github.com/ast-grep/ast-grep/commit/1a23b6ac5085b1ae9fabd3d58319a3195022a7b6)
- 0.1.16 bump version [`8cc6765`](https://github.com/ast-grep/ast-grep/commit/8cc67654113b10ab0631d277d5c7ebd638bab807)
- feat: add `adopt` method to safely create Node [`6ea01ae`](https://github.com/ast-grep/ast-grep/commit/6ea01ae4d4f02ce6c423d76bcd7d6714bf039757)

#### [0.1.15](https://github.com/ast-grep/ast-grep/compare/0.1.14...0.1.15)

> 8 January 2023

- feat: make tree-sitter-* parsers optional dependencies [`#160`](https://github.com/ast-grep/ast-grep/issues/160)
- 0.1.15 bump version [`fa56cf1`](https://github.com/ast-grep/ast-grep/commit/fa56cf1b5730363874e12e1a2b3e6e3ad056dd98)
- refactor: use macro to abstract away repetitive lang method impl [`fb58b15`](https://github.com/ast-grep/ast-grep/commit/fb58b153f857bcf0ea088e6ea400a6c668bf89dd)
- feat: edit cargo toml [`1611af5`](https://github.com/ast-grep/ast-grep/commit/1611af5d5e4500b632659642805e2da962e0e181)

#### [0.1.14](https://github.com/ast-grep/ast-grep/compare/0.1.13...0.1.14)

> 4 January 2023

- chore(deps): update dependency @napi-rs/cli to v2.14.0 [`#149`](https://github.com/ast-grep/ast-grep/pull/149)
- fix(deps): update rust crate num_cpus to 1.15.0 [`#147`](https://github.com/ast-grep/ast-grep/pull/147)
- fix(deps): update rust crate clap to 4.0.32 [`#145`](https://github.com/ast-grep/ast-grep/pull/145)
- chore(deps): update robinraju/release-downloader action to v1.7 [`#146`](https://github.com/ast-grep/ast-grep/pull/146)
- fix(deps): update rust crate serde_json to 1.0.91 [`#136`](https://github.com/ast-grep/ast-grep/pull/136)
- fix(deps): update rust crate serde_yaml to 0.9.16 [`#137`](https://github.com/ast-grep/ast-grep/pull/137)
- fix(deps): update rust crate serde_yaml to 0.9.15 [`#116`](https://github.com/ast-grep/ast-grep/pull/116)
- feat: merge adjacent matches in match printing [`#134`](https://github.com/ast-grep/ast-grep/issues/134)
- feat: refactor printers to accept output destination [`#153`](https://github.com/ast-grep/ast-grep/issues/153)
- feat: add traversal mod for sg-core [`#152`](https://github.com/ast-grep/ast-grep/issues/152)
- [refactor] simplify Matcher trait [`#151`](https://github.com/ast-grep/ast-grep/issues/151)
- feat: move interactive printer [`#135`](https://github.com/ast-grep/ast-grep/issues/135)
- feat: implement better heading show [`#150`](https://github.com/ast-grep/ast-grep/issues/150)
- test: add test for command arg parsing [`#128`](https://github.com/ast-grep/ast-grep/issues/128)
- feat: support run only one rule for scanning [`#139`](https://github.com/ast-grep/ast-grep/issues/139)
- feat: support color control on run/scan output [`#131`](https://github.com/ast-grep/ast-grep/issues/131)
- fix: fix stackoverflow in find_node_impl [`#148`](https://github.com/ast-grep/ast-grep/issues/148)
- feat: add labels and env info to json output [`#121`](https://github.com/ast-grep/ast-grep/issues/121)
- refactor: abstract out scan as worker [`#138`](https://github.com/ast-grep/ast-grep/issues/138)
- refactor: use mpsc for non-interactive output [`#125`](https://github.com/ast-grep/ast-grep/issues/125)
- feature: extract out a language crate [`#126`](https://github.com/ast-grep/ast-grep/issues/126)
- refactor: remove some inner call [`#3`](https://github.com/ast-grep/ast-grep/issues/3)
- refactor: extract out two printers [`9328cd7`](https://github.com/ast-grep/ast-grep/commit/9328cd77cf3b4d015d51392d31c851a577cc6a11)
- feat: fix interactive print rule [`17fbaf0`](https://github.com/ast-grep/ast-grep/commit/17fbaf03c9c6ff2b69c7beeb58f3190f471cc319)
- feat: migrate run with specific lang [`ea46263`](https://github.com/ast-grep/ast-grep/commit/ea46263f482de906f8260d10e6b3f1848abf0d7d)

#### [0.1.13](https://github.com/ast-grep/ast-grep/compare/0.1.12...0.1.13)

> 18 December 2022

- fix(deps): update rust crate serde_json to 1.0.90 [`#115`](https://github.com/ast-grep/ast-grep/pull/115)
- Update dependency @napi-rs/cli to v2.13.3 [`#114`](https://github.com/ast-grep/ast-grep/pull/114)
- feat: implement proper json output [`0c031c1`](https://github.com/ast-grep/ast-grep/commit/0c031c19e2654c88ed2506ce151423fb013768e7)
- chore: add changelog [`d6fc114`](https://github.com/ast-grep/ast-grep/commit/d6fc114bf93b8a951e8eb863bf96213485e1c638)
- feat: add json output support [`f33e39f`](https://github.com/ast-grep/ast-grep/commit/f33e39f14cb7c2a1a84f5263b280b88f65516f6b)

#### [0.1.12](https://github.com/ast-grep/ast-grep/compare/0.1.11...0.1.12)

> 15 December 2022

- Update dependency @napi-rs/cli to v2.13.2 [`#103`](https://github.com/ast-grep/ast-grep/pull/103)
- Update dependency typescript to v4.9.4 [`#104`](https://github.com/ast-grep/ast-grep/pull/104)
- Update Rust crate tree-sitter-java to 0.20.0 [`#105`](https://github.com/ast-grep/ast-grep/pull/105)
- Update dependency chalk to v5.2.0 [`#106`](https://github.com/ast-grep/ast-grep/pull/106)
- feat: use better color output for readability [`#111`](https://github.com/ast-grep/ast-grep/issues/111)
- feat: support version and help argument [`#110`](https://github.com/ast-grep/ast-grep/issues/110)
- fix: skip extremely large file [`#109`](https://github.com/ast-grep/ast-grep/issues/109)
- 0.1.12 bump version [`5ea05eb`](https://github.com/ast-grep/ast-grep/commit/5ea05eb9fbea70a412b97e16256a27c99f7c9bbb)
- fix: use `get_matcher` instead of get_rule in verify [`4b4ea8e`](https://github.com/ast-grep/ast-grep/commit/4b4ea8e39327260f086052eef8a972ece68d40a0)
- fix: better large file detection [`293a5c8`](https://github.com/ast-grep/ast-grep/commit/293a5c82647f27dc9e2eac853675fbd366231c60)

#### [0.1.11](https://github.com/ast-grep/ast-grep/compare/0.1.10...0.1.11)

> 11 December 2022

- 0.1.11 bump version [`1ba3c13`](https://github.com/ast-grep/ast-grep/commit/1ba3c13eacbbfbb3648c47a1890c7152f06acdda)
- feat: add get all keys in meta var env [`8203945`](https://github.com/ast-grep/ast-grep/commit/820394587219f7e8986e42e9f3e83975007588b7)

#### [0.1.10](https://github.com/ast-grep/ast-grep/compare/0.1.9...0.1.10)

> 7 December 2022

- Update Rust crate clap to 4.0.29 [`#102`](https://github.com/ast-grep/ast-grep/pull/102)
- Update Rust crate serde_json to 1.0.89 [`#101`](https://github.com/ast-grep/ast-grep/pull/101)
- Update Rust crate clap to 4.0.28 [`#100`](https://github.com/ast-grep/ast-grep/pull/100)
- Update dependency @napi-rs/cli to v2.13.0 [`#99`](https://github.com/ast-grep/ast-grep/pull/99)
- Update dependency ava to v5.1.0 [`#97`](https://github.com/ast-grep/ast-grep/pull/97)
- Update dependency typescript to v4.9.3 [`#98`](https://github.com/ast-grep/ast-grep/pull/98)
- Update Rust crate similar to 2.2.1 [`#95`](https://github.com/ast-grep/ast-grep/pull/95)
- Update dependency @napi-rs/cli to v2.12.1 [`#92`](https://github.com/ast-grep/ast-grep/pull/92)
- Update Rust crate clap to 4.0.23 [`#91`](https://github.com/ast-grep/ast-grep/pull/91)
- chore: break down matcher to smaller files and add potential kind [`74e5e7d`](https://github.com/ast-grep/ast-grep/commit/74e5e7db86dd06da765d7a31a41e88ba0b1372c1)
- feat: improve contingent rule handling [`9c500af`](https://github.com/ast-grep/ast-grep/commit/9c500af602b31dd8c5db84207aa2296a3fa77789)
- feat: add augmented rules [`c7dc0fe`](https://github.com/ast-grep/ast-grep/commit/c7dc0fef2459bf32b0c377e5cc2f4fa51dd54222)

#### [0.1.9](https://github.com/ast-grep/ast-grep/compare/0.1.8...0.1.9)

> 5 November 2022

- Update Rust crate regex to 1.7.0 [`#88`](https://github.com/ast-grep/ast-grep/pull/88)
- feat: add contingent rules with tests [`#82`](https://github.com/ast-grep/ast-grep/pull/82)
- Update Rust crate clap to 4.0.19 [`#83`](https://github.com/ast-grep/ast-grep/pull/83)
- Update Rust crate tree-sitter-lua to 0.0.14 [`#84`](https://github.com/ast-grep/ast-grep/pull/84)
- Update Rust crate num_cpus to 1.14.0 [`#86`](https://github.com/ast-grep/ast-grep/pull/86)
- Update Rust crate tree-sitter-rust to 0.20.3 [`#85`](https://github.com/ast-grep/ast-grep/pull/85)
- 0.1.9 bump version [`0ddb562`](https://github.com/ast-grep/ast-grep/commit/0ddb562f0348130d0fb7498259397afa4c96c85c)

#### [0.1.8](https://github.com/ast-grep/ast-grep/compare/0.1.7...0.1.8)

> 31 October 2022

- Update robinraju/release-downloader action to v1.6 [`#81`](https://github.com/ast-grep/ast-grep/pull/81)
- refactor: move relational rule outside [`4c5321d`](https://github.com/ast-grep/ast-grep/commit/4c5321d61a5f3bc45aad238febe6318ab66f4a7d)
- test: add test for inside/has [`428dd62`](https://github.com/ast-grep/ast-grep/commit/428dd62c3f1b5b789bc4a827f219511e07ac6451)
- fix: fix precedes/follows operator [`020bb3c`](https://github.com/ast-grep/ast-grep/commit/020bb3c5d5de5e8ab4e8453c3ccba65a1d68f39d)

#### [0.1.7](https://github.com/ast-grep/ast-grep/compare/0.1.6...0.1.7)

> 27 October 2022

- Update dependency ava to v5 [`#77`](https://github.com/ast-grep/ast-grep/pull/77)
- Update Rust crate serde_yaml to 0.9.14 [`#76`](https://github.com/ast-grep/ast-grep/pull/76)
- Update Rust crate clap to 4.0.18 [`#74`](https://github.com/ast-grep/ast-grep/pull/74)
- Update Rust crate serde_json to 1.0.87 [`#75`](https://github.com/ast-grep/ast-grep/pull/75)
- Update dependency chalk to v5.1.2 [`#73`](https://github.com/ast-grep/ast-grep/pull/73)
- Update dependency @napi-rs/cli to v2.12.0 [`#66`](https://github.com/ast-grep/ast-grep/pull/66)
- Update Rust crate serde_json to 1.0.86 [`#70`](https://github.com/ast-grep/ast-grep/pull/70)
- Update Rust crate tree-sitter-swift to 0.3.4 [`#69`](https://github.com/ast-grep/ast-grep/pull/69)
- Update dependency chalk to v5.1.0 [`#67`](https://github.com/ast-grep/ast-grep/pull/67)
- Revert "Update dependency @swc-node/register to v1.5.2 (#62)" [`#64`](https://github.com/ast-grep/ast-grep/pull/64)
- 0.1.6 fix napi [`d2501ed`](https://github.com/ast-grep/ast-grep/commit/d2501ed82f6dc8a82ff241c1f2bb1de2e15b8085)
- [feat] refine test command [`3802816`](https://github.com/ast-grep/ast-grep/commit/38028162f6c1887f5ac9a68e6620ecf2615aafd8)
- [feat] add test command [`e45039e`](https://github.com/ast-grep/ast-grep/commit/e45039eafe423fd58fefde23b3c5c8f80c8de508)

#### [0.1.6](https://github.com/ast-grep/ast-grep/compare/0.1.5...0.1.6)

> 3 October 2022

- Update dependency typescript to v4.8.4 [`#63`](https://github.com/ast-grep/ast-grep/pull/63)
- Update dependency @swc-node/register to v1.5.2 [`#62`](https://github.com/ast-grep/ast-grep/pull/62)
- fix(52): normalize file path output in command line [`#55`](https://github.com/ast-grep/ast-grep/pull/55)
- [docs] add interactive argument explanation [`#59`](https://github.com/ast-grep/ast-grep/issues/59)
- [chore] migrate github pages [`cc38e5a`](https://github.com/ast-grep/ast-grep/commit/cc38e5adfb139b18c99092b6dd113e3c97e7992a)
- [feat] better error reporting [`8e94d1e`](https://github.com/ast-grep/ast-grep/commit/8e94d1e5f3f6570836877f0c46b0a4edfdcd0538)
- [feat] add lsp fixing [`9f3754b`](https://github.com/ast-grep/ast-grep/commit/9f3754bed4c916aaf0e1f60fa42fa1fffd70503e)

#### [0.1.5](https://github.com/ast-grep/ast-grep/compare/0.1.4...0.1.5)

> 21 September 2022

- [feat] more thorough napi support [`6b2bfe0`](https://github.com/ast-grep/ast-grep/commit/6b2bfe0f7974b7bab46544d3d964799bb4274073)
- 0.1.4 remove optional dep [`84b0e59`](https://github.com/ast-grep/ast-grep/commit/84b0e596ce3363627c230f9849fe067e77e810f6)
- [feat] add support for rule matching in napi [`78dbe99`](https://github.com/ast-grep/ast-grep/commit/78dbe991b9c40320be0bef0c29c45dce36554198)

#### [0.1.4](https://github.com/ast-grep/ast-grep/compare/0.1.3...0.1.4)

> 19 September 2022

- [chore] remove unsupported packages [`dba569b`](https://github.com/ast-grep/ast-grep/commit/dba569b7335844d2c90892a63cd521248125423c)
- 0.1.4 fix napi package [`233be67`](https://github.com/ast-grep/ast-grep/commit/233be6780b1beaadbec33dd1fa3ec226921509c0)

#### [0.1.3](https://github.com/ast-grep/ast-grep/compare/0.1.2...0.1.3)

> 19 September 2022

- Update dependency vite to v3.1.2 [`#46`](https://github.com/ast-grep/ast-grep/pull/46)
- Update dependency @algolia/client-search to v4.14.2 [`#47`](https://github.com/ast-grep/ast-grep/pull/47)
- Update Rust crate tree-sitter-lua to 0.0.13 [`#44`](https://github.com/ast-grep/ast-grep/pull/44)
- Update Rust crate tree-sitter-swift to 0.3.3 [`#45`](https://github.com/ast-grep/ast-grep/pull/45)
- Update Rust crate clap to 3.2.22 [`#42`](https://github.com/ast-grep/ast-grep/pull/42)
- Pin dependencies [`#41`](https://github.com/ast-grep/ast-grep/pull/41)
- Update Rust crate serde_yaml to 0.9.13 [`#43`](https://github.com/ast-grep/ast-grep/pull/43)
- [fix] reimplement language `Python` to override `expando_char` [`#40`](https://github.com/ast-grep/ast-grep/pull/40)
- Update dependency vue to v3.2.39 [`#34`](https://github.com/ast-grep/ast-grep/pull/34)
- Update dependency vue-tsc to v0.40.13 [`#35`](https://github.com/ast-grep/ast-grep/pull/35)
- Update dependency @vitejs/plugin-vue to v3.1.0 [`#36`](https://github.com/ast-grep/ast-grep/pull/36)
- Update dependency vite to v3.1.0 [`#37`](https://github.com/ast-grep/ast-grep/pull/37)
- Update dependency detect-libc to v2 [`#39`](https://github.com/ast-grep/ast-grep/pull/39)
- Update actions/checkout action to v3 [`#38`](https://github.com/ast-grep/ast-grep/pull/38)
- Update dependency typescript to v4.8.3 [`#33`](https://github.com/ast-grep/ast-grep/pull/33)
- Pin dependency detect-libc to v1.0.3 [`#32`](https://github.com/ast-grep/ast-grep/pull/32)
- [feat] use vitepress to host docs [`ad09d42`](https://github.com/ast-grep/ast-grep/commit/ad09d428e3cd1ea1bb6174bede68120c41ef9f3d)
- [feat] add YAML config to playground [`e54b244`](https://github.com/ast-grep/ast-grep/commit/e54b244db6409aa7fd58f46f3be1229d9a8ad1fd)
- [feat] improve styling [`e8d4f0d`](https://github.com/ast-grep/ast-grep/commit/e8d4f0d6a880465663adf6b873b80c1a44d8ff59)

#### [0.1.2](https://github.com/ast-grep/ast-grep/compare/0.1.1...0.1.2)

> 6 September 2022

- Update dependency vue-tsc to v0.40.6 [`#29`](https://github.com/ast-grep/ast-grep/pull/29)
- Update dependency web-tree-sitter to v0.20.7 [`#28`](https://github.com/ast-grep/ast-grep/pull/28)
- Update Rust crate clap to 3.2.20 [`#27`](https://github.com/ast-grep/ast-grep/pull/27)
- Update Rust crate serde_yaml to 0.9.11 [`#18`](https://github.com/ast-grep/ast-grep/pull/18)
- Update dependency vue-tsc to v0.40.5 [`#26`](https://github.com/ast-grep/ast-grep/pull/26)
- Update Rust crate clap to 3.2.19 [`#24`](https://github.com/ast-grep/ast-grep/pull/24)
- Update Rust crate dashmap to 5.4.0 [`#25`](https://github.com/ast-grep/ast-grep/pull/25)
- Pin dependencies [`#20`](https://github.com/ast-grep/ast-grep/pull/20)
- Update dependency vue to v3.2.38 [`#23`](https://github.com/ast-grep/ast-grep/pull/23)
- Update Rust crate tree-sitter-swift to 0.3.2 [`#16`](https://github.com/ast-grep/ast-grep/pull/16)
- Update Rust crate similar to 2.2.0 [`#19`](https://github.com/ast-grep/ast-grep/pull/19)
- Update Rust crate tree-sitter-lua to 0.0.12 [`#14`](https://github.com/ast-grep/ast-grep/pull/14)
- Update Rust crate tree-sitter-swift to 0.3.1 [`#15`](https://github.com/ast-grep/ast-grep/pull/15)
- Update Rust crate clap to 3.2.17 [`#10`](https://github.com/ast-grep/ast-grep/pull/10)
- Update Rust crate tree-sitter-c to 0.20.2 [`#13`](https://github.com/ast-grep/ast-grep/pull/13)
- Update Rust crate console_error_panic_hook to 0.1.7 [`#12`](https://github.com/ast-grep/ast-grep/pull/12)
- Pin dependencies [`#9`](https://github.com/ast-grep/ast-grep/pull/9)
- Configure Renovate [`#1`](https://github.com/ast-grep/ast-grep/pull/1)
- [fix] Add Rust exmaple test, fix #6 [`#6`](https://github.com/ast-grep/ast-grep/issues/6)
- [feat] add napi support [`532f055`](https://github.com/ast-grep/ast-grep/commit/532f0557a6fb32f790e143f901a69cd73055ebb2)
- [feat]: add csharp [`9a14a4b`](https://github.com/ast-grep/ast-grep/commit/9a14a4b71cc348274ad6d153fc9011aedf9b490e)
- [fix] update napi [`ae6d5f1`](https://github.com/ast-grep/ast-grep/commit/ae6d5f161fd51692fe12c03ee5553cf6e077ec67)

#### [0.1.1](https://github.com/ast-grep/ast-grep/compare/v0.1.0...0.1.1)

> 23 August 2022

#### v0.1.0

> 5 September 2022

- Update dependency vue-tsc to v0.40.6 [`#29`](https://github.com/ast-grep/ast-grep/pull/29)
- Update dependency web-tree-sitter to v0.20.7 [`#28`](https://github.com/ast-grep/ast-grep/pull/28)
- Update Rust crate clap to 3.2.20 [`#27`](https://github.com/ast-grep/ast-grep/pull/27)
- Update Rust crate serde_yaml to 0.9.11 [`#18`](https://github.com/ast-grep/ast-grep/pull/18)
- Update dependency vue-tsc to v0.40.5 [`#26`](https://github.com/ast-grep/ast-grep/pull/26)
- Update Rust crate clap to 3.2.19 [`#24`](https://github.com/ast-grep/ast-grep/pull/24)
- Update Rust crate dashmap to 5.4.0 [`#25`](https://github.com/ast-grep/ast-grep/pull/25)
- Pin dependencies [`#20`](https://github.com/ast-grep/ast-grep/pull/20)
- Update dependency vue to v3.2.38 [`#23`](https://github.com/ast-grep/ast-grep/pull/23)
- Update Rust crate tree-sitter-swift to 0.3.2 [`#16`](https://github.com/ast-grep/ast-grep/pull/16)
- Update Rust crate similar to 2.2.0 [`#19`](https://github.com/ast-grep/ast-grep/pull/19)
- Update Rust crate tree-sitter-lua to 0.0.12 [`#14`](https://github.com/ast-grep/ast-grep/pull/14)
- Update Rust crate tree-sitter-swift to 0.3.1 [`#15`](https://github.com/ast-grep/ast-grep/pull/15)
- Update Rust crate clap to 3.2.17 [`#10`](https://github.com/ast-grep/ast-grep/pull/10)
- Update Rust crate tree-sitter-c to 0.20.2 [`#13`](https://github.com/ast-grep/ast-grep/pull/13)
- Update Rust crate console_error_panic_hook to 0.1.7 [`#12`](https://github.com/ast-grep/ast-grep/pull/12)
- Pin dependencies [`#9`](https://github.com/ast-grep/ast-grep/pull/9)
- Configure Renovate [`#1`](https://github.com/ast-grep/ast-grep/pull/1)
- fix(playground): color in dark mode [`#2`](https://github.com/ast-grep/ast-grep/pull/2)
- [fix] Add Rust exmaple test, fix #6 [`#6`](https://github.com/ast-grep/ast-grep/issues/6)
- [feat] add napi support [`532f055`](https://github.com/ast-grep/ast-grep/commit/532f0557a6fb32f790e143f901a69cd73055ebb2)
- initial commit [`94db982`](https://github.com/ast-grep/ast-grep/commit/94db982f174c493fec6e27f306fb23e9980d22ff)
- [feat] initial wasm research [`041cc64`](https://github.com/ast-grep/ast-grep/commit/041cc6405e06369d4ce69d1e491f90447d72f296)
