Commit graph

2542 commits

Author SHA1 Message Date
Dunqing
080e78c647
feat(ast): complete AccessorProperty todo in has_decorator (#2178) 2024-01-26 15:47:26 +08:00
Yuji Sugiura
cba8a4c131
feat(tasks): Enable tasks/lint_rules(JS ver) (#2177)
- [x] Remove old task(Rust ver)
- [x] Migrate to new task(JS ver)
- [x] Confirm CI works w/o `--output`
-
https://github.com/oxc-project/oxc/actions/runs/7663961642/job/20887579432?pr=2177
- [x] Confirm CI works w/ fake issue no
  - https://github.com/oxc-project/oxc/issues/2117
- [x] Enable

- - -

I've noticed that

- eslint/no-extra-semi
- eslint/no-mixed-spaces-and-tabs

are maked as deprecated and also recommended.

This is ESLint side
[issue](https://github.com/eslint/eslint/pull/17696#issuecomment-1792452766)
and will fix after v9.
2024-01-26 15:45:05 +08:00
Dunqing
ea8cc98c34
fix(ast): AcessorProperty is missing decorators (#2176) 2024-01-26 15:43:05 +08:00
Yuji Sugiura
2e3153e16f
fix(linter): Rename react_perf/jsx_no_new_function_as_props to jsx_no_new_function_as_prop (#2175)
s/props/prop/

>
https://github.com/cvazac/eslint-plugin-react-perf/blob/master/docs/rules/jsx-no-new-function-as-prop.md

Sorry, I overlooked this in #2169 😨
2024-01-26 11:06:50 +08:00
Julien Tanay
d5b378a891
feat(vscode): allow config path configuration (#2172)
Fixes #1944
2024-01-26 10:49:25 +08:00
Yuji Sugiura
b268cb2545
feat(tasks): tasks/lint_rules2 re-implement --update (#2173)
- Add `pluginMeta` field to make issue more informative
- Implement `--update` flag to update GitHub issue

With lots of refactoring.
2024-01-26 10:48:26 +08:00
fi3ework
ee5b9682ae
feat(linter): support read env from eslintrc (#2130)
## target

resolve #732 

## contexts

- globals definition from
https://github.com/sindresorhus/globals/blob/main/globals.json
- port https://github.com/eslint/eslintrc/blob/main/conf/environments.js
to derive environments
2024-01-26 10:43:44 +08:00
Dunqing
e5719e9b4d
feat(transformer/decorators): support transform member decorators (#2171) 2024-01-26 10:14:19 +08:00
Boshen
fc1592bc97
refactor(semantic): remove all #[dead_code[ from tester 2024-01-25 20:27:46 +08:00
Boshen
889837704c
feat(semantic): cfg prototype (#2019)
Co-authored-by: U9G <git@u9g.dev>
2024-01-25 20:19:35 +08:00
underfin
2794064eef
feat(transfrom): transform-json-strings (#2168)
The pr intends to implement the plugin
`babel-plugin-transform-json-strings`. But here is only mutate
`Directive`, the `StringLiteral` is not implement. It need to changed
the `StringLiteral` printer.

I'm intend to add the raw of `StringLiteral`, it will be mutate at
plugin, and using the `raw` to print `StringLiteral`. If you other
ideas, please let me know.

---------

Co-authored-by: Boshen <boshenc@gmail.com>
2024-01-25 10:39:02 +00:00
Boshen
8ca1812ad1
Release oxlint and vscode extension v0.2.5 2024-01-25 17:17:59 +08:00
Boshen
7f114d4d98
chore(linter): clean up unused snapshots 2024-01-25 17:01:17 +08:00
Boshen
ed87cbf1f0
chore(linter): remove type info rule consistent-type-exports 2024-01-25 16:56:23 +08:00
Yuji Sugiura
c18619ee4c
fix(linter): use correct rule name (#2169)
Found by accident but it should be.

- [x] react/jsx-no-comment-text-nodes
  - `jsx-no-comment-textnodes` is correct
-
https://github.com/jsx-eslint/eslint-plugin-react/blob/master/lib/rules/jsx-no-comment-textnodes.js
- [x] react/no-dangerously-set-inner-html
  - `no-danger` is correct
-
https://github.com/jsx-eslint/eslint-plugin-react/blob/master/lib/rules/no-danger.js
- [x] react-perf/no-jsx-as-prop
  - Correct name has `jsx-` prefix
-
https://github.com/cvazac/eslint-plugin-react-perf/tree/master/lib/rules
- [x] react-perf/no-new-array-as-prop
  - The same as above
- [x] react-perf/no-new-function-as-props
  - The same as above
- [x] react-perf/no-new-object-as-prop
  - The same as above
- [x] jsx-a11y/tab-index-no-positive
  - `tabindex-no-positive` is correct
-
https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/src/rules/tabindex-no-positive.js
- [x] jsx-a11y/role-support-aria-props
  - `role-suports-aria-props` is correct
-
https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/src/rules/role-supports-aria-props.js

- - - 

+1, 

- typescript/consistent-type-exports
- Listed in `disable-type-checked` config == This is type checking rule
but implemented
-
8622286207/packages/eslint-plugin/src/configs/disable-type-checked.ts (L12)
  - Should remove it..?
2024-01-25 16:54:52 +08:00
Yuji Sugiura
83a54e0d06
feat(tasks): Add more plugins for tasks/lint_rules2 (#2167)
Part pf #2020 

- [x] jsx-a11y
- [x] react, react-hooks, react-perf
- [x] nextjs

Now, we can track all target plugins(AFAIK)? 🕵🏻
2024-01-25 16:32:26 +08:00
underfin
989ab88bc6
fix(codegen): print Directive original string (#2157)
> A Use Strict Directive may not contain an EscapeSequence or
LineContinuation.

It is `Use Strict Directive` spec, but the `expression` of `Directive`
isn't original string value, it has error if using it to codegen, so
here using `directive` of `Directive` to codegen and not to escape it.
Here is crashed test cases.

``` js
'use str\
ict';
```
The babel will print the original string, I follow it and avoid using
`print_str` because it will escape string.

I also changed some code using the `expression` of `Directive` to check
`Use Strict Directive` .
2024-01-25 15:24:05 +08:00
cin
ac1d318dc3
feat(linter): eslint-plugin-jest: prefer-called-with (#2163)
Rule Detail:
[link](https://github.com/jest-community/eslint-plugin-jest/blob/main/src/rules/prefer-called-with.ts)
2024-01-25 14:01:51 +08:00
Yuji Sugiura
80a454630a
feat(tasks): Re-introduce tasks/lint_rules (#2166)
Part of #2020
2024-01-25 13:14:40 +08:00
Dunqing
51cecbb3ea
refactor(transformer/decorators): align the implementation of all versions (#2159) 2024-01-25 13:11:24 +08:00
cin
38914308e7
feat(linter): eslint: no-void (#2162)
Rule Detail:
[link](https://github.com/eslint/eslint/blob/main/lib/rules/no-void.js)
2024-01-25 12:40:30 +08:00
hjio
a5d7c67982
feat(linter) eslint-plugin-react/jsx-no-target-blank (#2149)
#1022 try to implement `jsx-no-target-blank`

* code:
https://github.com/jsx-eslint/eslint-plugin-react/blob/master/lib/rules/jsx-no-target-blank.js
* doc:
https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-no-target-blank.md
* test:
https://github.com/jsx-eslint/eslint-plugin-react/blob/master/tests/lib/rules/jsx-no-target-blank.js

---------

Co-authored-by: huangjunjie.coder <huangjunjie.coder@bytedance.com>
2024-01-25 09:42:05 +08:00
Maurice Nicholson
26022322ff
fix(linter): explicit-length-check inside ternary (#2165) 2024-01-25 08:09:35 +08:00
Boshen
3d184d56a8
deps: bump 2024-01-24 15:08:47 +08:00
Boshen
1c44e0a510
deps(website): bump dependencies 2024-01-24 13:04:35 +08:00
Boshen
fb6eeef0a1
deps(vscode): bump deps 2024-01-24 11:25:18 +08:00
Dunqing
b261e86ea9
refactor(ast): improve simple_assignment_target_identifier and simple_assignment_target_member_expression method (#2153)
Based on current usage, I think returning AssignmentTarget is better.
2024-01-24 11:24:27 +08:00
Dunqing
7f89bfea0d
feat(transformer/decorators): support version 2023-05 (#2152) 2024-01-24 11:19:29 +08:00
Dunqing
04b401cbfd
feat(transformer/decorators): support transform the class decorators in export declaration (#2145) 2024-01-24 11:13:29 +08:00
xc2
8e332b20a1
ci(oxlint): run smoke test against both glibc and musl (#2155) 2024-01-24 11:10:53 +08:00
Dunqing
9e598ff650
feat(transformer): add decorators plugin (#2139) 2024-01-24 11:09:19 +08:00
Wenzhe Wang
1ee6d8cea9
feat(codegen): move string test to codegen (#2150) 2024-01-23 23:49:36 +08:00
Boshen
2406e94c0d
Release oxlint and vscode extension v0.2.4 2024-01-23 19:30:09 +08:00
Boshen
25a089ba01
Release oxlint v0.2.4-alpha.0 2024-01-23 19:09:57 +08:00
Boshen
382a187175
fix(npm): fix bin script for musl / gnu 2024-01-23 19:09:11 +08:00
Boshen
fda2d7c334
deps(website): bump deps (#2146) 2024-01-23 17:15:42 +08:00
renovate[bot]
0f9b9a814e
chore(deps): update vscode (#2142) 2024-01-23 16:10:59 +08:00
Boshen
ea2e957a48
chore(renovate): ignore napi/ and npm/ 2024-01-23 15:49:39 +08:00
Boshen
16729ae950
fix(renovate): use matchFileNames 2024-01-23 15:42:02 +08:00
Boshen
376f13d65a
chore(renovate): fix includePaths 2024-01-23 15:26:33 +08:00
Boshen
e1ea0e4d17
fix(renovate): ignore breaking major bumps from owo-colors and syn 2024-01-23 15:20:06 +08:00
Boshen
16a192cf1a
chore: try fix broken env_logger 2024-01-23 15:03:53 +08:00
renovate[bot]
0be0a234ce
chore(deps): update cargo (#2138) 2024-01-23 14:48:04 +08:00
Boshen
3032dbb98e
fix(renovate): ignore textwrap 2024-01-23 14:38:15 +08:00
Boshen
b329cc4db6
deps: bump env_logger 2024-01-23 14:37:07 +08:00
Boshen
e5d5e60469
chore(renovate): update 2024-01-23 14:23:06 +08:00
Boshen
b46dd9bbf8
chore(renovate): update 2024-01-23 14:11:34 +08:00
Boshen
d5014c03e7
chore: use renovatebot instead of dependabot 2024-01-23 13:58:27 +08:00
Boshen
518bc0d7c1
Release oxlint and vscode extension v0.2.3 2024-01-23 12:38:11 +08:00
overlookmotel
777352e2ba
fix(transformer): always create valid identifiers (#2131)
I'm not familiar with the transformer, so not 100% sure what this
function does. But from the name `create_valid_identifier`, I'm guessing
that `-` is a mistake - it's not a valid character to have in
identifiers.

If I've misunderstood, please feel free to close this.
2024-01-23 12:35:41 +08:00