Commit graph

130 commits

Author SHA1 Message Date
Boshen
aedaa1a110
refactor(linter,semantic): move syntax check from linter to semantic (#272)
Syntax checker is part of semantic analyzer,
it doesn't make sense for the user to add a linter just for semantic errors
2023-04-10 12:23:53 +08:00
Boshen
dc090208c4
fix(parser): fix crashing on empty ParenthesizedExpression with comments (#263)
relates #232
2023-04-06 17:16:15 +08:00
Boshen
0674899b88
Fuzz async (#257)
* fix(parser): parse `async(...null)` as call expression

relates #255

* fix(parser): parse `null?async():null`

relates #255
2023-04-05 14:36:37 +08:00
Boshen
1c2acd121c
refactor(parser): clean up parsing of ForStatement (#251)
closes #176
2023-04-04 22:36:35 +08:00
Boshen
236d53ad9d
fix(parser): fix panic on multi-byte char in ExpectCatchFinally error 2023-04-02 20:09:38 +08:00
Boshen
abcda95e8e
deps: bump deps 2023-04-02 16:48:45 +08:00
Boshen
8833a84840 feat(coverage): read typescript dts option in babel 2023-04-02 16:41:53 +08:00
Boshen
f5c7b3751c fix(coverage): babel plugin option can be an array 2023-04-02 16:41:53 +08:00
Boshen
7db1643425 fix(parser): allow non-last rest element in ambient contexts 2023-04-02 16:41:53 +08:00
Boshen
be9b3f9acc feat(coverage): add babel parser option allow_return_outside_function 2023-04-02 16:41:53 +08:00
Boshen
e6079a1b4e feat(coverage): read jsx attribute from typescript files 2023-04-02 16:41:53 +08:00
Boshen
adedc1a405 feat(parser): parse jsx element and fragment in JSXAttributeValue 2023-04-02 16:41:53 +08:00
Boshen
1130f48278 feat(parser): parse ts satisfies operator 2023-04-02 16:41:53 +08:00
Boshen
90e2d386d7 fix(parser): do not check static prototype in ambient contexts 2023-04-02 16:41:53 +08:00
Boshen
a62c9335a2 fix(parser): fix remaining errors around auto accessors 2023-04-02 16:41:53 +08:00
Boshen
adef772d6c refactor: clean up code around code coverage 2023-04-01 15:59:42 +08:00
Boshen
174330561c
fix(parser): fix panic on multi-byte characaters (#233)
* fix(oxc_parser): fix panic when EOF on a multi-byte character

relates #232

* fix(parser): fix panic on multi-byte char in private identifer

relates #232
2023-04-01 13:34:18 +08:00
Boshen
4ccb9e806b
chore(coverage): remove mention of git submodule update --remote in README
We want people to use --init.
2023-04-01 10:57:25 +08:00
Boshen
f8790d4b89
feat(semantic): can turned off ModuleRecordBuilder
relates to #224
2023-04-01 00:41:52 +08:00
Boshen
05f163f2f7
fix(coverage): fix lint on cfg feature 2023-04-01 00:02:58 +08:00
Boshen
d232199e1c
refactor(parser): return Rc<Trivias> from TriviaBuilder (#231)
closes #229
2023-03-31 09:02:48 -07:00
Boshen
1a6f508bb9
ci: add codecov 2023-03-31 22:59:14 +08:00
Boshen
de9be97f0f
chore: clean up Cargo.toml in tasks 2023-03-31 22:22:18 +08:00
Boshen
9e3675a575
chore: clean up Cargo.toml 2023-03-30 23:27:26 +08:00
yangchenye
929b0efebb
feat(linter): implement isolated_declaration (#209)
* feat(linter): implement isolated_declaration

* Implement check for class elements

* Set up Export SymbolFlag and store declaration AST in Symbol

* Fix tests and comments
2023-03-26 04:37:10 -07:00
Boshen
5a1a72204e
chore(coverage): update snapshots 2023-03-25 14:21:22 +08:00
Boshen
d095d45818
refactor(semantic): add source_text and trivias to semantic 2023-03-25 14:19:53 +08:00
yangchenye
40460dd32b
feat(rulegen): fallback to empty rule template (#208) 2023-03-24 22:36:11 -07:00
Xuan
71e575ab41
feat(linter): implement no-new-symbol rule (#201) 2023-03-23 18:29:57 +08:00
yangchenye
0d8d67b593
feat(linter): implement eslint(no-const-assign) (#199)
* feat(linter): implement eslint(no-const-assign)

* feat(semantics & linter): resolve symbols

* Use run_on_symbol

* Add resolved_reference to SymbolTable
2023-03-23 12:55:40 +08:00
Boshen
7dfaf9949c
chore(README): clean up sentences with chatGPT 2023-03-22 20:34:07 +08:00
Boshen
9dfd4cd936
chore(rust): remove unnecessary missing_const_for_fn 2023-03-22 12:35:52 +08:00
Boshen
ff9a2c3ab0
feat(linter): eslint disable comments (#196)
feat(linter): eslint disable comments

closes #100
closes #170
2023-03-22 11:27:42 +08:00
yangchenye
3487772644
feat(linter): implement eslint(no-dupe-class-members) (#195) 2023-03-21 12:43:23 +08:00
Boshen
69109286b5
chore(README): mention stage 3 skipped tests. 2023-03-19 12:47:57 +08:00
yangchenye
4549fb3cdd
fix(parser): parse decorator with separate grammar (#192) 2023-03-19 11:35:59 +08:00
Boshen
37c7b7a752
refactor(oxc_parser): simply diagnostic messages 2023-03-18 14:39:44 +08:00
Boshen
6a89f085b7
refactor(rust): add more clippy restriction rules 2023-03-17 14:51:25 +08:00
Boshen
a1315e3999
refactor(rust): add clippy::clone_on_ref_ptr 2023-03-17 14:51:25 +08:00
Boshen
57f3065d68
refactor: remove unused #[allow(clippy:..)] 2023-03-17 13:28:06 +08:00
Boshen
bee548b945
fix(coverage): correct the number on AST Parsed 2023-03-17 11:15:33 +08:00
Boshen
97d01b4ced
chore(coverage): remove stage 3 decorators from conformance tests
By looking at the grammar, separate AST nodes need to be created.
Disabling this for now because it still looks like a mess for now.
2023-03-17 10:30:18 +08:00
Boshen
9ed682a38e
fix(semantic): fix function redeclaration errors
The problem here we face here is that TypeScript does not consider Annex
B.3.2, which makes implementation a bit more difficult.

This implementation conforms to test262.
2023-03-17 10:06:02 +08:00
yangchenye
37ad6f3a15
feat(parser): support decorators in class expression (#190)
feat(parser): support decorator in class expression
2023-03-17 09:33:04 +08:00
Boshen
164c2831e1 feat(linter): report export errors in javascript 2023-03-15 18:12:34 -07:00
Boshen
326de5006b
chore: bump submodules 2023-03-15 12:46:21 +08:00
yangchenye
aaaefc8ba5
feat(linter): implement eslint(no-unsafe-negation) (#186) 2023-03-15 11:36:56 +08:00
yangchenye
74c731c415
feat(linter): Implement eslint(no-compare-neg-zero) (#185) 2023-03-15 10:44:11 +08:00
Boshen
e262e18e5f
chore(coverage): remove tests for stage 3 proposal-json-modules 2023-03-14 11:02:00 +08:00
Boshen
ee31f5cc6f
feat(linter): check duplicated bound names in ImportDeclaration 2023-03-14 10:42:18 +08:00