overlookmotel
2a91ef10ea
refactor(linter): eslint/no_redeclare rule use run_on_symbol not run_once ( #5201 )
...
`eslint/no_redeclare` rule iterates over all symbols. Use `run_on_symbols` for this, instead of `run_once`.
2024-08-25 21:40:58 +00:00
DonIsaac
8ff6f2cb86
fix(linter/no-unused-vars): panic on UsingDeclarations ( #5206 )
...
Closes #5202
2024-08-25 21:26:45 +00:00
camc314
982bd6ecb7
feat(linter/unicorn): add fixer to require-array-join-separator ( #5152 )
2024-08-25 21:07:17 +00:00
camc314
a6704bd293
feat(linter/unicorn): add fixer to prefer-set-size ( #5149 )
2024-08-25 21:04:10 +00:00
dalaoshu
aaaf26cee4
fix(linter): error in fixer for prefer-to-have-length ( #5197 )
...
closes #5195
2024-08-25 17:13:56 +01:00
overlookmotel
f3e1662e4e
improve(codegen): improve oxc_codegen example ( #5198 )
...
Improve `oxc_codegen` example to demonstrate best practice of resetting the allocator once the AST stored in it is no longer needed, before parsing another file.
2024-08-25 14:58:27 +00:00
Kevin Deng 三咲智子
8ebc23f84c
fix(ast): serialize TSParenthesizedType with camelCase ( #5199 )
2024-08-25 22:58:04 +08:00
camc314
ac7edccab3
feat(linter/unicorn): add fixer to prefer-array-some ( #5153 )
2024-08-25 13:25:12 +00:00
Dunqing
f8bb0222b3
fix(transformer/arrow-functions): remove SymbolFlags::ArrowFunction ( #5190 )
...
`ArrowFunction` has been transforming to `FunctionExpression`, So we should remove `SymbolFlags::ArrowFunction`
2024-08-25 10:27:00 +00:00
Dunqing
d9ba5ad022
fix(transformer/arrow-functions): correct scope for _this ( #5189 )
...
The `_this` will eventually be inserted into a `Program` or `Function`. So we have to go up to the corresponding `scope_id`
2024-08-25 10:26:59 +00:00
Dunqing
056c6679ec
feat(transformer/arrow-functions): the output that uses this inside blocks doesn't match Babel ( #5188 )
...
Fixes 666282a13b/crates/oxc_transformer/src/es2015/arrow_functions.rs (L35-L62)
2024-08-25 10:26:57 +00:00
Dunqing
260c9d2712
refactor(transformer/es2015): move all entry points to implementation of Traverse trait ( #5187 )
2024-08-25 10:26:56 +00:00
Dunqing
d51a9549f7
docs(transformer): add documentation for arrow-functions plugin ( #5186 )
2024-08-25 10:26:54 +00:00
Kevin Deng 三咲智子
d22bd2082a
feat(module_lexer): distinguish for types-only imports and exports ( #5184 )
...
Co-authored-by: Boshen <boshenc@gmail.com>
2024-08-25 18:22:44 +08:00
Boshen
543cad6370
refactor(codegen): remove some pub APIs
2024-08-25 13:32:55 +08:00
DonIsaac
a877e5a612
test(linter/no-unused-vars): ensure type annotations on property accessors are considered used ( #5183 )
2024-08-25 01:02:51 +00:00
DonIsaac
49cd5db54f
feat(ast,parser): add definite flag to AccessorProperty node ( #5182 )
2024-08-25 01:02:50 +00:00
DonIsaac
7dfd51a62b
feat(parser): report class properties that are both definite and optional ( #5181 )
2024-08-25 01:02:49 +00:00
DonIsaac
a563968386
feat(parser): report errors on optional accessor properties ( #5180 )
2024-08-25 01:02:49 +00:00
DonIsaac
c2fa72571f
feat(ast,parser): parse TSTypeAnnotations on AccessorProperty ( #5179 )
...
Closes #5177
While making this, I noticed an uncaught parse error for accessors: accessors cannot be optional. I'll add a fix for this in an up-stack PR.
2024-08-25 01:02:48 +00:00
camc314
1d01aa316f
feat(linter/unicorn): add partial fixer for prefer-array-flat ( #5143 )
2024-08-24 22:58:38 +00:00
DonIsaac
fd1031abeb
fix(linter/unicorn): breaking fixer in case statements for no-null ( #5176 )
2024-08-24 22:24:10 +00:00
Don Isaac
7b86ed61d1
fix(linter/unicorn): handle type casts and parens in no-null ( #5175 )
2024-08-24 18:18:52 -04:00
DonIsaac
7ab615220d
refactor(linter/unicorn): clean up no-null ( #5174 )
2024-08-24 21:48:35 +00:00
DonIsaac
7886618e00
test(linter/unicorn): add fixer tests for no-null ( #5173 )
2024-08-24 21:48:34 +00:00
DonIsaac
b629e160db
fix(linter/unicorn): improve diagnostic message for no-null ( #5172 )
...
This stack was made because of shortcomings I noticed while running `oxlint-eccosystem-ci` tests locally
2024-08-24 21:40:00 +00:00
camc314
dc9e1e233a
fix(unicorn/linter) fix multiple false positives in no-useless-promise-resolve-reject ( #5178 )
...
more closely follows the implementation from unicorn's repo.
early returns if the parent is not a `return`, `yield`, or an arroy function
Closes #5125
Closes #5126
2024-08-24 21:03:31 +00:00
DonIsaac
d29042e7fc
fix(linter/no-unused-vars): function expression in implicit arrow function return ( #5155 )
...
Fixes cases such as:
```ts
export const foo = () => function bar() {}
```
2024-08-24 15:49:56 +00:00
Cameron
147b37176b
fix(linter) fix bug in fixer for func names when function is async ( #5167 )
2024-08-24 11:30:56 -04:00
dalaoshu
1f5b6b6c82
fix(linter): bug in fixer for prefer-to-have-length ( #5164 )
2024-08-24 11:29:45 -04:00
Boshen
01c0c3e4b2
feat(transformer): add remaining options to transformer options ( #5169 )
...
closes #5168
2024-08-24 14:52:03 +00:00
Earl Chase
ba62a71975
fix(linter/react): Fixed false positive with missing key inside React.Children.toArray() for fragments ( #5133 )
...
Related: #4421 and #4945
2024-08-24 16:01:50 +08:00
Boshen
7b1546bb66
fix(codegen): do not print comments when --minify
2024-08-24 13:49:34 +08:00
Boshen
0410314278
chore(codegen): improve examples
2024-08-24 13:38:19 +08:00
DonIsaac
36e4a2875c
fix(linter/no-unused-vars): panic in variable declarator usage checks ( #5160 )
...
Part of #5129
2024-08-24 04:49:30 +00:00
Dunqing
e3561127fe
chore(semantic): remove accidentally left comment ( #5162 )
2024-08-24 00:41:01 -04:00
Boshen
d5a494023e
refactor(semantic): rewrite handling of label statement errors ( #5138 )
...
This reverts the previous changes to handling labels so that all tests can pass.
This passes all false postivies found in `monitor-oxc` (node_modules/flow-parser/flow_parser.js)
As it turns out this requires less code and produces better diagnostics.
2024-08-24 02:37:49 +00:00
overlookmotel
960e1d5c60
refactor(ast): rename IdentifierReference::new_with_reference_id ( #5157 )
...
The old name `new_read` no longer makes sense as it doesn't set a read-only flag any more, since `flags` field was removed from `IdentifierReference`.
2024-08-24 02:34:18 +00:00
Cameron
22d57f9e5e
feat(linter/unicorn): add fixer to prefer-string-slice ( #5150 )
2024-08-23 21:37:35 -04:00
camc314
34bfaf6792
feat(linter/react): add fixer to jsx-props-no-spread-multi ( #5145 )
2024-08-23 23:43:53 +00:00
overlookmotel
5136f011d9
refactor(transformer): remove unnecessary type annotation ( #5131 )
...
Remove unnecessary type annotation introduced in #4925 .
2024-08-23 23:10:38 +00:00
overlookmotel
f63b568c48
refactor(ast): remove #[non_exhaustive] attr from AstBuilder ( #5130 )
...
Partially revert #4925 . That PR's description gave no explanation of why this attribute is desirable.
2024-08-23 23:04:28 +00:00
Cameron
2fe44153ac
feat(linter/unicorn): add fixer to no-redundant-roles ( #5146 )
2024-08-23 17:38:24 -04:00
Cameron
d35c6f5dfc
feat(linter/unicorn): add fixer to prefer-regexp-test ( #5151 )
2024-08-23 17:34:06 -04:00
Cameron
27db769b8a
feat(linter/unicorn): add fixer to text-encoding-identifier-case ( #5154 )
2024-08-23 17:29:19 -04:00
Cameron
7eb052e0d4
fix(linter): no-hex-escape fixer removing regex flags ( #5137 )
...
closes #5127
2024-08-23 20:32:34 +01:00
DonIsaac
1ce9630c72
feat(linter/config): implement FromIterator for LintPluginOptions ( #5102 )
...
Part of #5046
2024-08-23 18:55:58 +00:00
DonIsaac
33599b0064
refactor(linter): split options into multiple files ( #5101 )
2024-08-23 18:55:57 +00:00
camc314
56a68f542d
fix(linter) fix bug in fixer for func-name ( #5136 )
...
closes #5128
2024-08-23 18:46:04 +00:00
Boshen
7cc2bbd293
chore(semantic): print errors from examples/simple.rs
2024-08-23 22:57:26 +08:00