-
-
Notifications
You must be signed in to change notification settings - Fork 482
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(linter/no_restricted_imports): add the no_restricted_imports rules #7629
feat(linter/no_restricted_imports): add the no_restricted_imports rules #7629
Conversation
Your org has enabled the Graphite merge queue for merging into mainAdd the label “0-merge” to the PR and Graphite will automatically add it to the merge queue when it’s ready to merge. Or use the label “hotfix” to add to the merge queue as a hot fix. You must have a Graphite account and log in to Graphite in order to use the merge queue. Sign up using this link. |
8301062
to
d3f2c74
Compare
CodSpeed Performance ReportMerging #7629 will not alter performanceComparing Summary
|
1d5880b
to
00be669
Compare
probably want to normalize them? e.g. match on the
and normalize it into what you want it to be |
add first test cases related to the 'paths' config
00be669
to
e2c3acc
Compare
@camc314 thanks, I'll try it to accept other configs. I am still fighting with the test which failed :
Whereas I tried to improve performances by replacing Vec to a Box in the struct, I still have the error, and I don't know how to improve it. Could you give me some help about it please? |
…acing the vec to Box
e2c3acc
to
3acf3ec
Compare
Ok I found a solution. Tell me if it looks correct |
## [0.15.0] - 2024-12-10 - 39b9c5d linter: [**BREAKING**] Remove unmaintained security plugin (#7773) (Boshen) ### Features - 065f7dc linter: Support `expectTypeOf`, `assert` and `assertType` in `vitest/expect-expect` (#7742) (Yuichiro Yamashita) - 3d5f0a1 linter/no_restricted_imports: Add the no_restricted_imports rules (#7629) (Guillaume Piedigrossi) ### Bug Fixes - ad27b20 linter: Only resolve esm files for import plugin (#7720) (Boshen) - 5e6053f linter: False positive in `eslint/yoda` (#7719) (dalaoshu) ### Refactor - c6a19aa linter: Remove unused `serde` features (#7738) (Boshen) - b9a2b35 linter: Remove `aho-corasick` (#7718) (Boshen) ### Testing - 62f0a22 linter: Port `react-jsx-uses-vars` rules to no_unused_vars (#7731) (Tyler Earls) - 02f9903 linter: Add regression tests for `import/namespace` (#7723) (dalaoshu) Co-authored-by: Boshen <[email protected]>
add first test cases related to the 'paths' config
Note that the test cases and configuration format is not the same as the original ESLint rule.
What is the oxc team strategy to develop such a rule? Is it ok to adapt the config format ?
I started a discussion here : #7534 (comment)
I copy/paste the content here. Maybe it is more relevant?
I am working to implement this no-restricted-imports rule.
I have several problems:
How to handle multiple format configuration in rust?
The eslint config can be: "fs", ["fs"], or {paths: [{name: "fs"}]}. But Rust needs only one type. I don't know how to do this in rust.
Is it ok to cover only the {paths: [{name: "fs"}]} case ?
How to parse this config with the from_configuration method?
Here is what I have done:
But here is my result:
Note the "None" values