Commit graph

120 commits

Author SHA1 Message Date
yangchenye
1ea463e0bb
feat(oxc_linter): implement eslint(no-mixed-operators) (#145) 2023-03-09 00:05:44 +08:00
Boshen
e1971577cb
fix(oxc_macros): fix clippy warnings 2023-03-08 23:35:34 +08:00
Boshen
94fdd54368
perf(lexer): fine tune identifier checking with less redundant branches (#154)
perf(lexer): fine tune checking of identifiers with less redundant branches
2023-03-08 22:00:15 +08:00
Domon
be2231b689
fix: fix wasm-pack build crash (#156) 2023-03-08 19:00:40 +08:00
Xuan
158a79eba5
refactor(fixer): add span to message (#146)
* refactor(fixer): add span to message

* refactor(fixer): use error.labels() to sort

* fix(fixer): make clippy happy

* refactor(fixer): use sort_by_cached_key
2023-03-08 15:36:05 +08:00
Amit Dahan
2687d7868f
refactor(linter): add declare_all_lint_rules proc macro (#121) 2023-03-07 07:39:38 -08:00
Boshen
4d32bfb55e
refactor: remove all declarations of const fn, which is useless for us 2023-03-07 21:29:47 +08:00
Shannon Rothe
11237f3cbd
feat(linter): implement eslint(constructor-super) (#126) 2023-03-07 18:22:58 +08:00
Boshen
6b9bbaa091
perf(lexer): try &static Atom for match_keyword (#143)
* perf(lexer): try phf_map for `match_keyword`

* wip
2023-03-07 13:14:22 +08:00
Shannon Rothe
2423257573
feat(linter): implement eslint(eqeqeq) rule (#124)
* feat(linter): implement `eslint(eqeqeq)` rule

* chore: improve comment

* better errors

* regenerate snapshots

* add nursery lint category
2023-03-07 06:26:41 +08:00
Shannon Rothe
b3dfb0ab51
chore(linter): remove extra spacing (#141) 2023-03-07 06:25:14 +08:00
Boshen
d4a10e3fac fix(linter): fix clippy warning 2023-03-06 06:29:18 -08:00
Boshen
c8e968f35d perf(ast): shrink some struct sizes
relates #138
2023-03-06 06:29:18 -08:00
Xuan
d833672023
test(fixer): remove BOM testing (#137) 2023-03-06 18:50:21 +08:00
Boshen
c5dea20e1d
fix(oxc_wasm): remove wee_alloc dependency; fix profile warning 2023-03-06 14:50:02 +08:00
Domon
24d327c40d
feat(wasm): add wasm to oxc (#130) 2023-03-06 14:13:06 +08:00
yangchenye
500f42b134
feat(oxc_linter): implement eslint(for-direction) (#136)
feat(oxc_linter): implement eslint(for-direction)
2023-03-06 13:49:18 +08:00
Boshen
683778dfe2
feat(semantic): implement scopes (#135)
closes #119
2023-03-05 07:43:32 -08:00
Shannon Rothe
d6b52167d3
feat(linter): implement rule categories (#131) 2023-03-05 04:14:24 -08:00
Fnll
81760da7cc
feat(parser): better diagnostic for missing semicolon in for loop statement (#133)
feat(parser): better diagnostic

Co-authored-by: kerui.lian <kerui.lian@bytedance.com>
2023-03-05 04:13:23 -08:00
Boshen
0a9ab3ed4c
feat(cli): print miette diagnostics with 4 spaces indentation 2023-03-05 15:19:59 +08:00
Boshen
94fddffc70
chore: use fancy-no-backtrace from miette
See https://github.com/zkat/miette/issues/132
2023-03-05 15:16:26 +08:00
Boshen
7d3ce8b125
feat(benchmark): add semantic builder to benchmark (#129) 2023-03-04 23:09:19 -08:00
Shannon Rothe
b9be065c8c
feat(cli): introduce pretty errors (#111) 2023-03-04 20:40:07 -08:00
Boshen
35cb007b76
chore(ast): fix clippy warnings 2023-03-05 11:12:59 +08:00
Boshen
0a2cd5b1f5
chore(ast): document the Span type
closes #109
2023-03-05 11:11:41 +08:00
Boshen
5106d2d63d
fix(cli): fix clippy warning 2023-03-05 11:04:43 +08:00
Xuan
ee569ae684
feat(oxc_linter): implement rule fixing logic (#114)
* refactor(oxc_linter): add FixResult

* refactor(oxc_linter): pass closure instead of an struct

* test(oxc_linter): uncomment tests
2023-03-04 18:57:50 -08:00
Boshen
e71de0bff6 perf(cli): lint files while walking directories 2023-03-04 04:38:58 -08:00
Boshen
88735e2a94 perf(cli): turn on simd-accel for ignore because globs are being used 2023-03-04 04:38:58 -08:00
Boshen
e73f0b3ebe chore(cli): turn off unused default_features of git2 2023-03-04 04:38:58 -08:00
Boshen
aa773f0aa8 perf(cli): do not follow symlinks in ignore because it is a slow syscall 2023-03-04 04:38:58 -08:00
Boshen
331a258182
feat(linter): implement uninvoked-array-callback (#112)
* feat(linter): implement uninvoked-array-callback

closes #98

Co-authored-by: Shannon Rothe <shannon.michael.rothe@gmail.com>
2023-03-04 00:04:04 -08:00
Shannon Rothe
f8b8f045a9
feat(cli): filter out uncommitted files (#110) 2023-03-03 22:42:22 -08:00
Yoni Feng
dcfdce5bb7
refactor(lexer): avoid copying of self in SIMD functions (#104) 2023-03-03 21:46:55 -08:00
Xuan
91c01633d6
test(oxc_linter): add testing for code fixer (#101)
---------

Co-authored-by: Shannon Rothe <shannon.michael.rothe@gmail.com>
2023-03-03 21:37:25 -08:00
Amit Dahan
50f133f9a6
feat(cli): Print lint duration (#105) 2023-03-03 18:34:30 -08:00
Boshen
47c1e7ef51
feat(cli): print diagnostics with file name (#103)
This also speeds up printing when a file has lots diagnostics.
This is done by allocating only once compared to multiple times from before.
2023-03-03 08:43:13 -08:00
magic-akari
b4ee8c0dc3
feat(linter): no-empty-pattern (fix) 2023-03-03 17:53:51 +08:00
magic-akari
85de06eae7
feat(linter): no-empty-pattern (#74)
* feat(linter): no-empty-pattern

* chore(linter/no-empty-pattern): update docs and examples

* chore: fix typo
2023-03-03 17:53:00 +08:00
Shannon Rothe
92b232372f
feat(linter): implement autofix (#94)
* feat(linter): implement autofix

* remove `fs::write`
2023-03-03 17:12:47 +08:00
Shannon Rothe
77d6edbe72 feat(cli): use BufWriter for diagnostic printing 2023-03-02 21:59:42 -08:00
Ye Yangchen
b06ab627bf fix(oxc_parser) correct span for decorators 2023-03-02 21:34:24 -08:00
Boshen
6a191ddce2
chore(cli): fix clippy warnings 2023-03-03 10:41:34 +08:00
Pascal Schilp
679cd0bf32
feat(cli): parallelize diagnostics (#93)
feat(cli): parallelize printing of diagnostics
2023-03-02 07:28:45 -08:00
Shannon Rothe
27b82bda36
feat(cli): implement --max-warnings CLI option (#77)
* implement `--max-warnings` CLI option

* implement `--max-warnings` CLI option

* review comments

* remove `.vscode/`

* revert loop + add tests
2023-03-02 16:16:03 +08:00
Xuan
51d0ced5a0 feat(oxc_cli): support no-ignore 2023-03-01 23:54:11 -08:00
Shannon Rothe
6647752e03
refactor(ast): change Option<Vec> to Vec for decorators (#84)
* remove `Option<Vec>` from `FormalParameter`

* `unwrap` -> `unwrap_or_else`

* prefer `AstBuilder` helper

* implement `consume_decorators`
2023-03-02 15:52:46 +08:00
Ye Yangchen
d8c6caf57f feat(oxc_parser): Parse modifiers before declaration 2023-03-01 22:50:23 -08:00
Shannon Rothe
143edeb62f prepend TS error code 2023-03-01 20:47:52 -08:00