All notable changes to this project will be documented in this file. Dates are displayed in UTC.
Generated by auto-changelog
.
- feat: support override severity of unused-suppression
#1556
- feat: unify configuration reading
#1557
- feat: unify configuration
#1557
- refactor: improve file config handling
#1553
- refactor: revamp configuration file discovering and custom language registration
#1553
- feat(scan): support context, before/after flags
#1549
- feat: add RuleOverwrite to override rule severity from CLI
#1061
- Breaking change: feat: support --config in sg new
cfe472f
- feat: add rule overwrite impl
fb4ac07
- fix(deps): update dependency @swc/core to v1.7.36
c11fd89
20 October 2024
- feat: report unused suppression
#1346
- feat: make number of threads configurable
#1498
- doc: add bug report yaml
#1462
- refactor: rename tracing
f83dbe9
- fix: fix bug report bug agains
61921f7
- fix(deps): update dependency @babel/core to v7.25.8
cf06185
6 October 2024
- feat: TypeScript types for Rules in NAPI
#1038
- feat:support glob path match in CLI
#1062
- refactor: move input/output args to standalone file
3d937cb
- refactor: move worker outside of utils
84ea621
- fix(deps): update babel monorepo to v7.25.7
b989f05
22 September 2024
- feat: add prettified pattern debug
70d33b5
- fix(deps): update rust crate pyo3 to v0.22.3
683e398
- test: add test for CST
a79f13f
14 September 2024
- feat: add follow symbolic links option to CLI
#1461
- fix(deps): update dependency @swc/core to v1.7.26
e0b437d
- fix(deps): update dependency @swc/core to v1.7.24
657bc4e
- chore(deps): update dependency typescript to v5.6.2
c55a404
8 September 2024
- fix: create .gitkeep file in new dirs
#1273
- fix: fix unwrap error for unfound dir
#1456
- fix(deps): update dependency @swc/core to v1.7.23
5fd4101
- chore(deps): update dependency @types/node to v20.16.5
294e402
- fix: improve error message
d46df6a
7 September 2024
- feat: support YAML language
#1436
- fix(deps): update dependency @swc/core to v1.7.22
c577761
- fix(deps): update dependency @swc/core to v1.7.21
4b0e594
- feat: add rule config potential kind test
def5b21
25 August 2024
- fix: fix wrong transformation indentation
#1405
- fix: compare only kind for unnamed nodes
#1419
- fix(deps): update dependency @swc/core to v1.7.18
9ecb02c
- fix(deps): update dependency @swc/core to v1.7.14
459d20a
- test: add test for transformation indentation
e0bfaf2
18 August 2024
- fix: readopt matched metavar in napi
#1380
- chore: update napi definition
07e084a
- fix(deps): update dependency @swc/core to v1.7.11
835b06f
- fix(deps): update dependency @swc/core to v1.7.10
d7a3820
9 August 2024
- feat: support dynamic language in pyo3
#1143
- test: add test for load dynamic lang in python
236f4ab
- feat: add py_lang registration function
43e74e7
- feat: add pytype for register language
8b660cf
7 August 2024
- feat: Additional impls for language types
#1379
- feat: append note to error message if available
#1384
- fix: LSP should skip files outside the workspace root
#1382
- fix(deps): update dependency @babel/core to v7.25.2
3b0be88
- refactor: split two macros
b760eb8
- refactor: simplify visitor
5ae03ae
5 August 2024
- feat: add charCount to split lines
#1381
- chore(deps): update dependency @types/node to v20.14.14
bca7e7b
- fix(deps): update rust crate clap to v4.5.13
c143464
- fix(deps): update rust crate toml_edit to v0.22.20
170da4c
4 August 2024
- feat: add
--selector
in sg run#1378
- fix: fix clippy new complaints
a4cc793
- fix(deps): update dependency @swc/core to v1.7.5
d3ee100
- chore(deps): update rust crate tree-sitter to v0.22.2
93d684a
1 August 2024
- feat: support using transform in rule message
#1366
- test: add test for skipping multiple ellipsis
#1365
- feat: Support ast-grep-ignore comment on same line as violation
#1347
- Revert "feat: add wasm engine support"
78b1633
- feat: add wasm engine support
ff77914
- refactor: remove old find/scan
58a3646
25 July 2024
- feat: support sql experimentally
#1300
- feat: consistent file path for search by removing ./ prefix
#1343
- feat: allow multiple tests in a single YAML file
#1344
- refactor: use HarnessBuilder
c41ffa8
- refactor: move out some files
dfa38f2
- test: add test for deserde tests
76796e4
22 July 2024
- feat: support custom language injection
#1309
- feat: register embedded language
416e28e
- fix(deps): update dependency @babel/core to v7.24.9
8c5dd00
- fix(deps): update dependency @swc/core to v1.7.0
61f6a14
18 July 2024
- fix: only present code action when there are truly fixable diagnostic
#1327
- refactor: move some function out of lsp
1e6b477
- fix: use fix in data for fix all command
d358d45
- fix: update fix all lsp
b760b9b
14 July 2024
- fix: make config file work outside of workspace root
#1326
- fix: fix napi musl
bde7f34
- fix: debug napi
2d87fc5
13 July 2024
- Fix Python 3.10 macOS ast-grep-py build
#1315
- feat: support multiple doc in scan
#1310
- fix: fix testing
#1305
- feat: support searching injected code in specified lang
#1307
- feat: improve HTML language extraction for ts/scss
#1301
- fix: use relative path in lsp
#1272
- fix: use match info in lsp message
#1271
- feat: support arm64 musl
#1227
- fix(deps): update dependency @babel/core to v7.24.8
624aa70
- feat: support multiple regions in run
07ef11f
- refactor: move Html out
4a0c177
26 June 2024
23 June 2024
- feat: add debug ast and cst
#1218
- feat: add strictness in PyO3
#1246
- feat: add strictness flag in cli
#1243
- test: add test for different strictness
#1241
- feat: add strictness to YAML
#1239
- Breaking change: fix: update API for fix
4971ac2
- Breaking change: fix: change deletedLength to endPos in napi
c0e9a65
- feat: add colorized output
22f279c
22 June 2024
- fix: all should not pollute env
#1225
- Breaking change: feat: use new pattern struct
f219b43
- refactor: move match_node impl out
27c918a
- refactor: factor out match_ellipsis logic
407d2a8
11 June 2024
- feat: add typings for pyo3
#676
- refactor: remove unused old code
3ffd1d9
- fix(deps): update babel monorepo to v7.24.7
b4aebaf
- refactor: add new abstraction for match_tree
079bc7d
4 June 2024
- fix: add Edit to export list
#1186
- feat: add modify edit range feature in pyo3
1e31253
- test: add test for modifying edit
7044811
- fix: addClass Edit in pyo3
d81c6c3
2 June 2024
- feat: support all languages in napi
#1170
- Breaking change: refactor: rename Frontend Language to Lang
c582c16
- refactor: move find files operations to standalone files
8ebb888
- feat: support more languages in napi
19e3baa
26 May 2024
- feat: use var defined in utils in transform/fix
#1155
- fix: fix pattern polluting env
#1164
- test: add python fix test
#1161
- feat: add fix related feature to pyo3
#1159
- test: add test for napi test
#1160
- feat: add commit_fix and fix to napi
#1158
- fix(deps): update babel monorepo to v7.24.6
0898b55
- fix(deps): update dependency @swc/core to v1.5.7
9beda6e
- feat: add edit/fix sketch
6817854
12 May 2024
- fix: fix napi test
#1140
- fix: use dumb implementation for web-tree-sitter
5cb7052
- chore: fix asset names
70cef40
- fix
af20be8
12 May 2024
12 May 2024
- feat(language): Add support for Haskell via
tree-sitter-haskell
#1128
- fix: add ast-grep to release
#1130
- fix(deps): update dependency @swc/core to v1.5.5
31428dd
- fix(deps): update dependency tree-sitter-typescript to v0.21.1
188525d
- chore(deps): update dependency @types/node to v20.12.11
3fe7780
8 May 2024
- test: add string test case back in Rust
#1060
- chore: bump tree-sitter version
5b45bd7
- fix: update wasm crate
ce9acba
- fix: update ts deps
3a67b6b
6 May 2024
- fix: build from source
#1125
- doc: update how to install via cargo
#1118
- feat: report undefined util rules
#1106
- Breaking change: feat: separate RuleCoreError and RuleConfigError
d96efa9
- refactor: move Transformation into a standalone module
b51cc95
- fix(deps): update dependency @babel/core to v7.24.5
77ea8bd
2 May 2024
- feat: make pattern more permissive
#1087
- refactor: further simplify test case
8188473
- refactor: make rewrite test simplier
5a754ef
- test: add test for contextual pattern defined var
2d6bae8
1 May 2024
- feat: Allow to use meta variable captured outside of rewrite rule inside the rewriter
#1072
- refactor: move rule_core test out of rule_core
1e8af4c
- feat: move check variable usage out to a standalone file
f086d10
- refactor: move check var around
cfe3529
24 April 2024
- feat: find defined vars in utils
cbc6534
- fix: add referent rule stack overflow test case
f7f24e1
- feat: add utils defined vars
59001eb
24 April 2024
- feat: report unused rewriters
#1064
- feat: report undefined error in fix
#1070
- feat: define the resolution order of meta variables
#1068
- feat: export used meta-var in transform
#1069
- feat: export meta variables defined in transform
#1066
- feat: export meta variables defined in constraints/rules
#1067
- test: add test for Pattern::defined_vars method
#1065
- feat: analyze meta variables defined in pattern
#1065
- feat: add field id Error for relational rule
#1059
- feat: support rewrtier check in sub-rule
eb4c47c
- test: add undefined rewriter test
d56ad74
- feat: add used_vars in TemplateFix
641d3b4
10 April 2024
8 April 2024
- fix: fix new deprecation note of Rust 2024
a70565e
- fix: fix quickfix
fef3dfc
- fix: better fix message
e0b5875
7 April 2024
- feat(lsp): run "source.fixAll.ast-grep" onsave
#1021
- test: move the integration-test to test folder
f2ff77a
- chore: cargo update
83394e9
- refactor: move logging and io out of on_apply_all_fix
cd79cda
27 March 2024
- feat: make test --update-all not report error
#771
- fix: fix update cases
f8132a4
- refactor: less indentation for interactive reporter
203bd35
- feat: improve accept
441a548
24 March 2024
- feat: respect suppression in lsp
#1019
24 March 2024
- test: add test for error suppression in scan
#1007
- refactor: merge CombinedScan::scan and CombinedScan::diff
#1011
- feat: report error count instead of file count
#1009
- feat: suppress specific rule
#1005
- fix: skip suppressed error
#1006
- feat: support error/warning suppression
#446
- fix(deps): update babel monorepo
da9a938
- fix(deps): update dependency @swc/core to v1.4.8
d81365a
- feat: add more states for rule suppression
41a058c
10 March 2024
- LSP default message for diagnostics
#970
- feat: Add error messaging for rule file parsing failures
#968
- feat: add html testing and tweak html
#977
- fix(deps): update dependency @babel/core to v7.24.0
a14741d
- fix(deps): update dependency @swc/core to v1.4.6
4a397f4
- fix(deps): update rust crate pyo3 to 0.20.3
23653c2
24 February 2024
- fix(deps): update dependency @swc/core to v1.4.2
67450cb
- refactor: move rewriters to SerializableRuleConfig
d98c062
- fix(deps): update rust crate inquire to 0.7.0
86ec845
22 February 2024
- fix: improve expando char replacement
#883
- feat(napi): add support for napi linux x64 musl
c4d7902
- fix: fix wrong spacing matching
0e8b4f0
- Update README.md
9636a1a
19 February 2024
- fix: avoid input stream when --update-all
#943
- fix: update cargo lock
8a893e7
- fix(deps): update dependency @swc/core to v1.4.1
d18fd70
- chore(deps): update dependency @types/node to v20.11.19
40d3fa0
14 February 2024
- Breaking change: refactor: remove unused type generic
9b13d41
- Breaking change: fix: update pyo3 test
ff10e81
- fix: fix parallel thread output
be230ca
31 January 2024
- Breaking change: refactor: use more concise name
6a4a17c
30 January 2024
- Breaking change: refactor: remove IndentSensitive trait
#868
- feat: add support for rewriters
#855
- Breaking change: refactor: rename RuleWithConstraints to RuleCore
#862
- feat: move fix to SerializableRuleCore
#859
- Breaking change: refactor: remove MetaVarMatchers
beb6f50
- Breaking change: feat: move fixer to RuleCore
8a43a26
- Breaking change: refactor: move language out of SerializableRuleCore
c5e0dc8
- Breaking change: refactor: remove Content generic from Fixer
87bbf93
- Breaking change: feat: improve get_fixer signature
e629e0f
- Breaking change: refactor: make TemplateFix non-generic
0f462a5
- feat: migrate constraints to Rule
230ee9c
- refactor: move SerializableRuleCore to rule_core mod
3a303c1
12 January 2024
- feat: respect user's language extension option
#848
11 January 2024
- Breaking change: feat: change get_fixer to return Fixer
07c5363
- feat: add modify_range for tweaking fix range selection
eeb2f98
- feat: rename modify_range -> get_replace_range
54837df
5 January 2024
- feat: add support for bash and php
#639
- Breaking change: fix: more strict meta var parsing
13ad32b
- Breaking change: refactor: remove thrift language
26ecdf6
- fix(deps): update dependency @swc/core to v1.3.102
9ca9711
29 December 2023
- feat: add language globs to findInFiles in napi
#780
- Breaking change: fix: rename MetaVar for better naming
#805
- refactor: reorgnanize napi file structure
93f8577
- refactor: move file type related function out of lib
64e33a3
- feat: handle FileOption in LangOption::infer
7bc3efe
17 December 2023
- feat: support mutliple rules in -r and --inline-rules
#786
- refactor: unify run_worker and run_std_in
#785
- Breaking change: feat: --stdin now always awaits user input
#791
- feat: support --inline-rules option for sg scan
#396
- refactor: separate PathWorker and StdInWorker and Worker
ef3d8ad
- test: add test cases for sg scan
ed35c71
- fix: revert github action
a2f22d8
15 December 2023
- Breaking change: feat: reduce metavar_env string allocation
e1ab015
- Breaking change: fix: remove pattern as replacer
f6e4293
- Breaking change: feat: better metavar detection
e1ab18a
11 December 2023
- fix: use tempfile to remove vuln
#765
- chore(deps): update dependency typescript to v5.3.3
dbac17d
- chore(deps): update dependency @napi-rs/cli to v2.17.0
f2d32be
- chore(deps): update dependency prettier to v3.1.1
990f09b
10 December 2023
- feat: add getTransformed in napi
#551
- fix: load custom languages in new command
#751
- chore(deps): update dependency ava to v6
496eb9d
- feat: add support for Elixir
57edde1
- feat: rename fixer to TemplateFix
5b53ce0
2 December 2023
- fix: update line number color
#739
- test: add test case for running sg without arg
#748
- fix(deps): update dependency @babel/core to v7.23.5
21e404c
- fix(deps): update dependency @swc/core to v1.3.100
941bffe
- test: add tes for lang_globs
a16001c
30 November 2023
- fix: fix napi building
1a49c67
30 November 2023
- feat: add languageGlobs
#601
- doc: import config reference link in error message
#736
- fix: report error for wrong config file
#736
- feat: support register alias language for extension override
#601
- chore(deps): update dependency typescript to v5.3.2
55a43bd
- fix: remove alias languages
1f26f62
- feat: support language globs
fafd27c
20 November 2023
- chore: add cargo fmt/clippy to CI pipeline
#698
- refactor: better reusability code for benchmark
775cee4
- feat: add async call
11cf0dd
- feat: support napi's parseAsync
ac78bc0
15 November 2023
- Breaking change: fix: use ansi by default on windows
#680
- fix: guard against wrong tree-sitter traversal
#713
- docs(binding/py): basic readme
2d39b9b
- fix(deps): update dependency @oxidation-compiler/napi to ^0.2.0
d64c09b
- feat: rename ast-grep-py
3e891c0
5 November 2023
- feat: support pyo3 TypedDict
#389
- chore(deps): update yarn to v4
818bcc2
- refactor: move node outside
40028b0
- chore: formatting
254e0de
15 October 2023
- fix: rewrite out of bound panic
#668
- chore: bump windows action version
#620
- fix: correct stopBy json schema
#666
- feat:
cargo xtask schema
for rule's JSON schema#665
- feat: add json schema
73d6299
- feat: initialize pyo3
810c454
- feat: update rules field doc
c9d611d
3 October 2023
- fix: fix word split after delimiter appear
b1bcd61
3 October 2023
- fix: correct indent for multiple MV in same line
#647
- Breaking change: feat: change string case interface
4b60f82
- feat: add string split
fe52289
- feat:change string case name and implement conversion
f073ee3
29 September 2023
- Add identifier convention conversions
#638
- Breaking change: feat: change API name toCase
fa50666
- fix: make code compiles
8f29f4f
- fix: remove unused func temporarily
710f76e
13 September 2023
- Implement string conversions described in #436 as a stand-alone chainable
convert
transformdc1e435
- Move structs around in transform.rs for better readability
95a9ab8
- fix(deps): update rust crate serde_json to 1.0.106
b41cfc0
9 September 2023
- chore(deps): update dependency windows to v2022
#623
- Breaking change: feat: interactive print one item a time
#444
- refactor: mvoe combined scan to config crate
#626
- test: add test for test case
#553
- Breaking change: feat: revamp diff printing schema
2b30111
- Breaking change: feat: accept multiple scanning
4860aa4
- refactor: move reporter out of verify.rs
58fb152
17 August 2023
- feat: support context lines in JSON mode
#585
- fix(cli): update typos and usage instructions
9fcf34f
- fix: lock maturin version
83608ac
- fix: allow newer maturin
3704f63
13 August 2023
- feat: Rename scan --rule-id → scan --filter
#596
- feat: improve completions command
#595
- Breaking change: feat: test -f now accepts regex
6465200
- Breaking change: fix: remove -f -F short form argument
d6d2c23
- feat: add option
scan --rule-id <rule_id>…
a424121
4 August 2023
- [feat] Make CLI reports a soft warning if query is invalid
#575
- feat: improve swift support
#573
- doc: add descriptions and links in npm page
3be3764
- feat: implement soft error reporting
c581c34
- fix: show at least three lines of context in diffing
ff61688
30 July 2023
- feat: support multiple JSON printing style
#561
- refactor: move output related arguments out
#539
- feat: improve readability of argument value
#546
- feat: use checked_ilog10 to reduce string allocation
#550
- feat: nicer line number printing color
#547
- refactor: move common input args out
a9bd29a
- refactor: reorganize utils files and add comments
19dacf8
- feat(test): add test case filter for sg test
52f51e9
27 July 2023
- feat: add before/after context
#464
- test: move test out and fix heading never
67037aa
- test: add json print test
374db3b
- fix: fix display context
08a52d1
22 July 2023
- feat(language): add initial support for JSON
#522
- test: add lua language test
#519
- feat: Support meta-variable in ERROR
#526
- infra: add napi benckmark
#442
- feat: support GitHub format
#499
- fix: tweak style
6ec490b
- chore(deps): update yarn to v3.6.1
23a2684
- fix(deps): update dependency @oxidation-compiler/napi to ^0.1.0
492d5c8
16 July 2023
- fix: fix wrong text
#517
- feat: support ruby language
#518
- refactor: use macro to unify language impl
#516
- fix: fix kotlin grammar
e7faadb
- test: add test for diff printing
5330149
- fix(deps): update rust crate dashmap to 5.5.0
05282aa
15 July 2023
- Breaking change: feat: unify
--accept-all
and--update-snapshots
to--update-all
#513
- Breaking change: infra: add breaking change in changelog
#514
- Breaking change: feat: change line separator to colon
:
in CLI output#512
- fix: tsx should only discover *.tsx, ts discover only *.ts
#502
- refactor: refactor path to parallelwalk
d697aad
- fix(deps): update rust crate globset to 0.4.11
3da277f
- test: add test for
sg test
command arg parsing2735057
10 July 2023
- feat: add changelog to tag release
#498
- feat: add changelog to release
#498
- napi: add napi declaration
e897d93
- feat: change
--no-stdin
to--stdin
1e26573
- fix: update napi typing doc
59dfcb7
9 July 2023
- feat: add getRoot for SgNode
#497
- feat: add option to disable a rule
#489
- feat: add pattern fixed string optimizer
#349
- feat: add support for --no-stdin
#490
- feat: change language implementations
7525927
- test: add test for sg scan with off-rule
0eeb99d
- fix: change returning type
10e676b
29 June 2023
- feat: add supported languages in help string
#482
- feat: add Scala support
84492b9
- feat: improve language's crate's organization
429aa35
- feat: Use existing language FromStr impl when Deserializing
ad0e9a6
25 June 2023
- feat: support scan from stdin
#397
- feat: support search code from stdin
#397
- doc: add pip install option
#465
- feat: support stdin as input
2e8f0ef
- fix(deps): update rust crate toml_edit to 0.19.11
f0facff
- fix: remove redundant line number highlighting
aaae3a3
23 June 2023
19 June 2023
19 June 2023
- feat: support check multivar pattern equality
#460
- feat(language): add initial support for C++
9315571
- doc: add docs string for all core modules
e0214f7
- test: add test for transform
100f081
17 June 2023
11 June 2023
- chore: move test cases location
3c0276e
- feat: add support for transform
47feee1
- refactor: move get text to meta_var
5692c26
6 June 2023
6 June 2023
- fix: reindent back into src code
a522875
- perf: remove all possible allocations
45558a5
- fix: use Cow to otpimize allocation
b4c85b3
5 June 2023
- feat: add indentation sensitive replacement
#394
- fix: use ubuntu20.04 instead of latest
#416
- refactor: refine replacer modules
79dc46b
- test: add root replacer test back
99aa031
- feat: add design notes for indentation sensitive fixer
9c8cc05
29 May 2023
- wildcard and spread rust tests
#415
- fix: fix multi variate capturing hangs
#411
- feat: smarter matching algorithm
#374
- chore(deps): update dependency ava to v5.3.0
67e8ec1
- test: add test for match end
3e61667
- chore(deps): update rust crate criterion to 0.5
3579862
25 May 2023
- fix: bump tree-sitter-facade version and support next_all on web
a48ba62
- fix: update tree-sitter-facade version
8e44f6a
- chore: update changelog
78f751a
24 May 2023
24 May 2023
- fix: implement generic Doc replacer for pattern
#405
- fix: use get_range instead as_slice to handle byte_offset and underlying arry size
#400
- chore: bump version
998691d
- feat: support generic new Pattern/Root from str
36d91e7
- chore: use workspace package info
960fa8d
18 May 2023
- perf: optimize relational rule's stopBy: neighbor
#358
- perf: optimize node's next_all by tree-cursor
#358
- test: add test for node operators
ac38cb8
- refactor: add comments for ansi link
d9ebbe5
- test: add test for precedes/follows serialization
1d7d8ff
13 May 2023
- docs: fix readme typo
#366
- chore: add cargo build before git tag
#367
- 0.5.2 bump version
54ba0a7
- feat: add go setting
a1d579b
- fix: fix fmt and clippy
efab639
12 May 2023
12 May 2023
- feat: provide additional binary name
ast-grep
#361
- fix: support custom lang for sg run
#357
- feat: support dynamic lib loading
#347
- feat: replace SupportLanguage with SgLang
f6014f9
- Used result in test code to remove unwrap
07bcf7e
- feat: improve implementation of dynamic lang
3757887
23 April 2023
23 April 2023
- feat: reduce MetaVarEnv cloning in any
#217
- fix: support correct row/col offset for napi!
#336
- refactor: break down napi modules
67062a6
- feat: migrate node
5e15d8d
- feat: change ts_parser to source
a3bef23
6 April 2023
- infra: add criterion benchmark
#141
- feat: Add edit option for rules without fix
#297
- feat: optimize readability of test output
#293
- test: add integration test for run
#292
- refactor: move out lib and main
a95c19e
- fix(deps): update rust crate clap to 4.2.1
b3fb9c9
- feat: add base_dir for new command
2a75a0a
11 March 2023
- fix: find_rule should also find contingent rule
#286
- feat: create new project/util/rule command
#266
- feat: add write sgconfig
750df87
- feat: rename find_config to find_rules
8e5a181
- 0.3.2 bump version
4f41f46
28 February 2023
- fix: fix panic when matching root node
#275
- 0.3.1 bump version
703467e
- fix: fix napi error
3d305a6
- chore: bump version
a25bef1
28 February 2023
- fix: add is_named_leaf
#276
- fix: report indirect cyclic dependencies
#272
- fix: register global rules by dependent order
#269
- [feature] register util rules by their topological sort order
#270
- feat: change stopBy default value to neighbor
#265
- feat: add global utils
#250
- feat: add thrift support
#255
- fix: avoid strong reference in ReferentRule
#253
- refactor: factor out deserialize rule
a6207ae
- refactor: move stop_by to separate file
398c53d
- refactor: reorganize rule and serialization
37a303f
8 February 2023
- feat: add maybe to differentiate null/missing/value
#241
- feat: add error exit code
#238
- refactor: disable color by default if output is not tty
#239
- feat: unify immediate and until to stopBy
ff69866
- 0.2.6 bump version
136a75f
- feat: support field in Inside
c503f0f
4 February 2023
- feat: improve napi error message
#227
- feat: add reference
303ec8c
- feat: add find_in_files
07735df
- feat: add napi findInFiles
3f4e847
29 January 2023
- perf: use potential_kinds for more scenarios
#221
- refactor: remove var_matchers from MetaVarEnv
#218
- refactor: remove get meta_var_matchers in Matcher
#218
- refactor: split scan and run
bf1e7e2
- Revert "perf: use potential_kinds for more scenarios"
c264e32
- refactor: remove duplicate MatchUnit/filter_file
ab2222e
27 January 2023
- feat: make inside util inclusive
#205
- feat: support search multiple paths
#207
- fix: use return number for napi
#205
- 0.2.3 bump version
753e972
- refactor: use stop_by for all relational rule
279edeb
- refactor: cleaner StopBy matching
974a307
25 January 2023
24 January 2023
24 January 2023
- feat: support multi node pattern
#199
- [refactor] Extract a match node iterator function in matcher_tree
#199
- feat: print out serialized rule message
#200
- fix: fix nested leaf match crash in non-entrant traversal
#197
- feat: add Dart support
#172
- fix: fix wrong line number in diff
#192
- feat: support inclusive until
#191
- feat: allow shorthands to combine all rule kinds
51f72db
- refactor: refactor deser for better error message
f28f964
- 0.2.0 bump version
e580932
16 January 2023
- fix: revert write env for unmatched pattern
#190
- fix: fix Has relation
#188
- feat: add rule info to config fixer
#122
- refactor: deduplicate json printer code
#185
- feat: add regex matcher
0a40ed2
- 0.1.18 bump version
bfdde22
- feat: add debugging assert
5b17e8b
15 January 2023
- feat: add error handling for parsing RuleConfig
#182
- feat: better error handling in constraints config
#181
- feat: improve error handling in config
#181
- 0.1.17 bump version
0a638f1
- feat: add try_new for pattern creation
a9510d2
- refactor: cleanup public API
875ef1e
14 January 2023
- fix(deps): update rust crate ignore to 0.4.19
#165
- fix(deps): update rust crate globset to 0.4.10
#164
- feat: support --no-ignore for scan/test
#162
- fix: fix two adjacent sticking but not overlapping matches
#171
- feat: add source
1a23b6a
- 0.1.16 bump version
8cc6765
- feat: add
adopt
method to safely create Node6ea01ae
8 January 2023
- feat: make tree-sitter-* parsers optional dependencies
#160
- 0.1.15 bump version
fa56cf1
- refactor: use macro to abstract away repetitive lang method impl
fb58b15
- feat: edit cargo toml
1611af5
4 January 2023
- chore(deps): update dependency @napi-rs/cli to v2.14.0
#149
- fix(deps): update rust crate num_cpus to 1.15.0
#147
- fix(deps): update rust crate clap to 4.0.32
#145
- chore(deps): update robinraju/release-downloader action to v1.7
#146
- fix(deps): update rust crate serde_json to 1.0.91
#136
- fix(deps): update rust crate serde_yaml to 0.9.16
#137
- fix(deps): update rust crate serde_yaml to 0.9.15
#116
- feat: merge adjacent matches in match printing
#134
- feat: refactor printers to accept output destination
#153
- feat: add traversal mod for sg-core
#152
- [refactor] simplify Matcher trait
#151
- feat: move interactive printer
#135
- feat: implement better heading show
#150
- test: add test for command arg parsing
#128
- feat: support run only one rule for scanning
#139
- feat: support color control on run/scan output
#131
- fix: fix stackoverflow in find_node_impl
#148
- feat: add labels and env info to json output
#121
- refactor: abstract out scan as worker
#138
- refactor: use mpsc for non-interactive output
#125
- feature: extract out a language crate
#126
- refactor: remove some inner call
#3
- refactor: extract out two printers
9328cd7
- feat: fix interactive print rule
17fbaf0
- feat: migrate run with specific lang
ea46263
18 December 2022
- fix(deps): update rust crate serde_json to 1.0.90
#115
- Update dependency @napi-rs/cli to v2.13.3
#114
- feat: implement proper json output
0c031c1
- chore: add changelog
d6fc114
- feat: add json output support
f33e39f
15 December 2022
- Update dependency @napi-rs/cli to v2.13.2
#103
- Update dependency typescript to v4.9.4
#104
- Update Rust crate tree-sitter-java to 0.20.0
#105
- Update dependency chalk to v5.2.0
#106
- feat: use better color output for readability
#111
- feat: support version and help argument
#110
- fix: skip extremely large file
#109
- 0.1.12 bump version
5ea05eb
- fix: use
get_matcher
instead of get_rule in verify4b4ea8e
- fix: better large file detection
293a5c8
11 December 2022
7 December 2022
- Update Rust crate clap to 4.0.29
#102
- Update Rust crate serde_json to 1.0.89
#101
- Update Rust crate clap to 4.0.28
#100
- Update dependency @napi-rs/cli to v2.13.0
#99
- Update dependency ava to v5.1.0
#97
- Update dependency typescript to v4.9.3
#98
- Update Rust crate similar to 2.2.1
#95
- Update dependency @napi-rs/cli to v2.12.1
#92
- Update Rust crate clap to 4.0.23
#91
- chore: break down matcher to smaller files and add potential kind
74e5e7d
- feat: improve contingent rule handling
9c500af
- feat: add augmented rules
c7dc0fe
5 November 2022
- Update Rust crate regex to 1.7.0
#88
- feat: add contingent rules with tests
#82
- Update Rust crate clap to 4.0.19
#83
- Update Rust crate tree-sitter-lua to 0.0.14
#84
- Update Rust crate num_cpus to 1.14.0
#86
- Update Rust crate tree-sitter-rust to 0.20.3
#85
- 0.1.9 bump version
0ddb562
31 October 2022
- Update robinraju/release-downloader action to v1.6
#81
- refactor: move relational rule outside
4c5321d
- test: add test for inside/has
428dd62
- fix: fix precedes/follows operator
020bb3c
27 October 2022
- Update dependency ava to v5
#77
- Update Rust crate serde_yaml to 0.9.14
#76
- Update Rust crate clap to 4.0.18
#74
- Update Rust crate serde_json to 1.0.87
#75
- Update dependency chalk to v5.1.2
#73
- Update dependency @napi-rs/cli to v2.12.0
#66
- Update Rust crate serde_json to 1.0.86
#70
- Update Rust crate tree-sitter-swift to 0.3.4
#69
- Update dependency chalk to v5.1.0
#67
- Revert "Update dependency @swc-node/register to v1.5.2 (#62)"
#64
- 0.1.6 fix napi
d2501ed
- [feat] refine test command
3802816
- [feat] add test command
e45039e
3 October 2022
- Update dependency typescript to v4.8.4
#63
- Update dependency @swc-node/register to v1.5.2
#62
- fix(52): normalize file path output in command line
#55
- [docs] add interactive argument explanation
#59
- [chore] migrate github pages
cc38e5a
- [feat] better error reporting
8e94d1e
- [feat] add lsp fixing
9f3754b
21 September 2022
- [feat] more thorough napi support
6b2bfe0
- 0.1.4 remove optional dep
84b0e59
- [feat] add support for rule matching in napi
78dbe99
19 September 2022
19 September 2022
- Update dependency vite to v3.1.2
#46
- Update dependency @algolia/client-search to v4.14.2
#47
- Update Rust crate tree-sitter-lua to 0.0.13
#44
- Update Rust crate tree-sitter-swift to 0.3.3
#45
- Update Rust crate clap to 3.2.22
#42
- Pin dependencies
#41
- Update Rust crate serde_yaml to 0.9.13
#43
- [fix] reimplement language
Python
to overrideexpando_char
#40
- Update dependency vue to v3.2.39
#34
- Update dependency vue-tsc to v0.40.13
#35
- Update dependency @vitejs/plugin-vue to v3.1.0
#36
- Update dependency vite to v3.1.0
#37
- Update dependency detect-libc to v2
#39
- Update actions/checkout action to v3
#38
- Update dependency typescript to v4.8.3
#33
- Pin dependency detect-libc to v1.0.3
#32
- [feat] use vitepress to host docs
ad09d42
- [feat] add YAML config to playground
e54b244
- [feat] improve styling
e8d4f0d
6 September 2022
- Update dependency vue-tsc to v0.40.6
#29
- Update dependency web-tree-sitter to v0.20.7
#28
- Update Rust crate clap to 3.2.20
#27
- Update Rust crate serde_yaml to 0.9.11
#18
- Update dependency vue-tsc to v0.40.5
#26
- Update Rust crate clap to 3.2.19
#24
- Update Rust crate dashmap to 5.4.0
#25
- Pin dependencies
#20
- Update dependency vue to v3.2.38
#23
- Update Rust crate tree-sitter-swift to 0.3.2
#16
- Update Rust crate similar to 2.2.0
#19
- Update Rust crate tree-sitter-lua to 0.0.12
#14
- Update Rust crate tree-sitter-swift to 0.3.1
#15
- Update Rust crate clap to 3.2.17
#10
- Update Rust crate tree-sitter-c to 0.20.2
#13
- Update Rust crate console_error_panic_hook to 0.1.7
#12
- Pin dependencies
#9
- Configure Renovate
#1
- [fix] Add Rust exmaple test, fix #6
#6
- [feat] add napi support
532f055
- [feat]: add csharp
9a14a4b
- [fix] update napi
ae6d5f1
23 August 2022
5 September 2022
- Update dependency vue-tsc to v0.40.6
#29
- Update dependency web-tree-sitter to v0.20.7
#28
- Update Rust crate clap to 3.2.20
#27
- Update Rust crate serde_yaml to 0.9.11
#18
- Update dependency vue-tsc to v0.40.5
#26
- Update Rust crate clap to 3.2.19
#24
- Update Rust crate dashmap to 5.4.0
#25
- Pin dependencies
#20
- Update dependency vue to v3.2.38
#23
- Update Rust crate tree-sitter-swift to 0.3.2
#16
- Update Rust crate similar to 2.2.0
#19
- Update Rust crate tree-sitter-lua to 0.0.12
#14
- Update Rust crate tree-sitter-swift to 0.3.1
#15
- Update Rust crate clap to 3.2.17
#10
- Update Rust crate tree-sitter-c to 0.20.2
#13
- Update Rust crate console_error_panic_hook to 0.1.7
#12
- Pin dependencies
#9
- Configure Renovate
#1
- fix(playground): color in dark mode
#2
- [fix] Add Rust exmaple test, fix #6
#6
- [feat] add napi support
532f055
- initial commit
94db982
- [feat] initial wasm research
041cc64