## [0.5.1] - 2024-06-29 ### Features -f64ad4bsemantic: Make jsdoc building optional (turned off by default) (#3955) (Boshen) ### Bug Fixes -c26975alinter: Only show the filename for max-lines (#3966) (Boshen) -94329e4linter: Handle useful but empty constructors in no-useless-constructor (#3951) (DonIsaac) -6498a08linter: No-useless-spread fixer with multiple spread elements (#3950) (DonIsaac) -750cb43oxlint: Gate custom allocators by feature flag (#3945) (Luca Bruno) ### Refactor -1cca2a8eslint: Convert with_labels to with_label where applicable (#3946) (Jelle van der Waa) -2705df9linter: Improve diagnostic labeling (#3960) (DonIsaac) Co-authored-by: Boshen <Boshen@users.noreply.github.com>
59 KiB
Changelog
All notable changes to this package will be documented in this file.
The format is based on Keep a Changelog, and this project does not adhere to Semantic Versioning until v1.0.0.
[0.5.1] - 2024-06-29
Features
f64ad4bsemantic: Make jsdoc building optional (turned off by default) (#3955) (Boshen)
Bug Fixes
c26975alinter: Only show the filename for max-lines (#3966) (Boshen)94329e4linter: Handle useful but empty constructors in no-useless-constructor (#3951) (DonIsaac)6498a08linter: No-useless-spread fixer with multiple spread elements (#3950) (DonIsaac)
Refactor
1cca2a8eslint: Convert with_labels to with_label where applicable (#3946) (Jelle van der Waa)2705df9linter: Improve diagnostic labeling (#3960) (DonIsaac)
[0.5.0] - 2024-06-27
-
6796891ast: [BREAKING] Rename all instances ofBigintLiteraltoBigIntLiteral. (#3898) (rzvxa) -
ae09a97ast: [BREAKING] RemoveModifiersfrom ts nodes (#3846) (Boshen) -
1af5ed3ast: [BREAKING] ReplaceModifierswithdeclareandconstonEnumDeclaration(#3845) (Boshen) -
ee6ec4east: [BREAKING] ReplaceModifierswithdeclareandabstractonClass(#3841) (Boshen) -
4456034ast: [BREAKING] AddIdentifierReferencetoExportSpecifier(#3820) (Boshen) -
0537d29cfg: [BREAKING] Move control flow to its own crate. (#3728) (rzvxa) -
5c38a0fcodegen: [BREAKING] New code gen API (#3740) (Boshen) -
4bce59dsemantic/cfg: [BREAKING] Re-exportpetgraphascontrol_flow::graph. (#3722) (rzvxa)
Features
3ae2628linter: Changeno-import-assignto correctness (#3928) (Boshen)a89d501linter: Implement @typescript-eslint/no-non-null-asserted-nulli… (#3850) (kaykdm)fc48cb4linter: eslint-plugin-jest/prefer-jest-mocked (#3865) (cinchen)63b98bdlinter: Accept multiple fixes when fix code (#3842) (mysteryven)328445blinter: Supportvitest/no-disabled-tests(#3717) (mysteryven)8c61f9clinter: Implement @typescript-eslint/no-non-null-assertion (#3825) (kaykdm)080ecbdlinter: Addno-fallthrough. (#3673) (rzvxa)9493fbelinter: Addoxc/no-optional-chainingrule (#3700) (mysteryven)139adfelinter: Add@typescript-eslint/no-import-type-side_effects(#3699) (mysteryven)5f84500linter/eslint-plugin-react: Implement prefer-es6-class (#3812) (Jelle van der Waa)fafe67clinter/import: Implement max-dependencies (#3814) (Jelle van der Waa)d5f6aebsemantic: Check for illegal symbol modifiers (#3838) (Don Isaac)
Bug Fixes
4bd2c88linter: Fix and promotegetter-returnto correctness. (#3777) (rzvxa)1190deelinter: False positives with setters in thegetter-returnrule. (#3714) (rzvxa)de0690flinter: Do not run getter-return in typescript (#3693) (Boshen)cf71c23linter: Edge case with infinite loops. (#3672) (rzvxa)99a40cesemantic:export default fooshould haveExportLocalName::Default(NameSpan)entry (#3823) (Boshen)abd6ac8semantic/cfg: Discrete finalization path afterNewFunctions. (#3671) (rzvxa)
Performance
4f7ff7eDo not pass&Atomto functions (#3818) (overlookmotel)
Refactor
4d2b7f1linter:LintContextcan now only be constructed with a cfg enabled semantic. (#3761) (rzvxa)7302429linter/prefer_number_properties: Remove the unusedIdentifierNamecheck (#3822) (Boshen)d8ad321semantic: Make control flow generation optional. (#3737) (rzvxa)
Testing
887da40linter: Enableno-fallthroughtest withdisable-next-line. (#3766) (rzvxa)
[0.4.4] - 2024-06-14
Features
8f5655dlinter: Add eslint/no-useless-constructor (#3594) (Don Isaac)29c78dblinter: Implement @typescript-eslint/explicit-function-return-type (#3455) (kaykdm)21d3425linter: Typescript-eslint no-useless-empty-export (#3605) (keita hino)85c3b83linter: Eslint-plugin-jest/max-nested-describes (#3585) (cinchen)f6d9ca6linter: Addeslint/sort-importsrule (#3568) (Wang Wenzhe)046ff3flinter/eslint: Addno_unreachablerule. (#3238) (rzvxa)e32ce00linter/jsdoc: Implement require-param-name rule (#3636) (Yuji Sugiura)110661clinter/jsdoc: Implement require-param-description (#3621) (Yuji Sugiura)d6370f1linter/jsdoc: Implement require-param-type rule (#3601) (Yuji Sugiura)d9c5b33semantic/cfg: AddConditioninstruction. (#3567) (Ali Rezvani)f2dfd66semantic/cfg: Add iteration instructions. (#3566) (rzvxa)
Bug Fixes
f0b689dlinter: Panic in jsdoc/require-param (#3590) (Don Isaac)e148a32semantic/cfg: Correct unreachability propagation in try-finally. (#3667) (Ali Rezvani)
Refactor
84304b4linter: Add actx.module_record()method (#3637) (Boshen)f98f777linter: Add rule fixer (#3589) (Don Isaac)fa11644linter: PassRcby value (#3587) (overlookmotel)f702fb9semantic/cfg: Cleanup control flow and it's builder. (#3650) (rzvxa)5793ff1transformer: Replace&’a TriviaswithRc<Trivias>(#3580) (Dunqing)
[0.4.3] - 2024-06-07
Features
1fb9d23linter: Add fixer for no-useless-fallback-in-spread rule (#3544) (Don Isaac)6506d08linter: Add fixer for no-single-promise-in-promise-methods (#3531) (Don Isaac)daf559flinter: Eslint-plugin-jest/no-large-snapshot (#3436) (cinchen)4c17bc6linter: Eslint/no-constructor-return (#3321) (谭光志)4a075cclinter/jsdoc: Implement require-param rule (#3554) (Yuji Sugiura)747500alinter/jsdoc: Implement require-returns-type rule (#3458) (Yuji Sugiura)6b39654linter/tree-shaking: Support options (#3504) (Wang Wenzhe)0cdb45aoxc_codegen: Preserve annotate comment (#3465) (IWANABETHATGUY)
Bug Fixes
b188778linter/eslint: Fixrequire-awaitfalse positives inForOfStatement. (#3457) (rzvxa)350cd91parser: Should parser error when function declaration has no name (#3461) (Dunqing)
[0.4.2] - 2024-05-28
Features
14ef4dflint/eslint: Implement require-await (#3406) (Todor Andonov)e275659linter: Addoxc/no-rest-spread-propertiesrule (#3432) (Wang Wenzhe)0d2c977linter: Addoxc/no-const-enumrule (#3435) (Wang Wenzhe)085f917linter: Addoxc/no-async-awaitrule (#3438) (Wang Wenzhe)ded59bclinter: Eslint-plugin-jest/require-top-level-describe (#3439) (cinchen)edaa555linter: Eslint-plugin-jest/prefer-hooks-on-top (#3437) (cinchen)aa26ce9linter: @typescript-eslint/consistent-indexed-object-style (#3126) (Todor Andonov)b589fd6linter/eslint: Implement no-div-regex (#3442) (Jelle van der Waa)147864clinter/eslint: Implement no-useless-concat (#3363) (Jelle van der Waa)
Bug Fixes
5e06298linter: Memorize visited block id inneighbors_filtered_by_edge_weight(#3407) (mysteryven)74b06a7linter: Accept more valid regex (#3408) (magic-akari)19bb1c0website: Hackschemarsto render code snippet in markdown (#3417) (Boshen)
Documentation
5c7041blinter: Add docs for consistent-indexed-object-style (#3409) (Wang Wenzhe)
[0.4.0] - 2024-05-24
Features
e241136cli,linter: Add--disable-oxc-plugin(#3328) (Boshen)8ab9856cli,linter: Add--disable-react/unicorn/typescript-plugin(#3305) (Boshen)ecdffcflinter: Temporary move react/require-render-return to nursery (Boshen)b8997f5linter: Eslint/no-restricted-globals (#3390) (mysteryven)79811calinter: Change jsdoc/require-returns from correctness to pedantic (Boshen)8a1db67linter: Change jsdoc/require-render-return from correctness to pedantic (Boshen)fe208ddlinter: Start adding json schema for configuration file (#3375) (Boshen)aec613blinter: Eslint-plugin-jest/no-duplicate-hooks (#3358) (cinchen)e4b3a3clinter: Backward compability forreact-hooksanddeepscanplugins (#3334) (Boshen)9744707linter/eslint: Implement default_case rule (#3379) (Jelle van der Waa)74be8b1linter/eslint: Implement no-new (#3368) (Jelle van der Waa)c588e52linter/eslint: Implement prefer-exponentiation-operator (#3365) (Jelle van der Waa)283d6c7linter/eslint: Implement symbol-description (#3364) (Jelle van der Waa)b6e2d62linter/jsdoc: Implement require-returns-description (#3397) (Yuji Sugiura)3a5f088linter/jsdoc: Implement require-returns rule (#3218) (Yuji Sugiura)3671b5ctasks/website: Code generate the linter rules (Boshen)57d2bcatasks/website: Start generating linter config markdown from json schema (#3386) (Boshen)ead637bwebsite: Generate linter configuration page (Boshen)
Bug Fixes
c664c6clinter:no-newfalse positive when return from arrow expression (#3393) (Boshen)fbccd1flinter: Only report issues on top-level fragment (#3389) (Jovi De Croock)a23bbf9linter: Avoid infinite loop injest/expect-expect(#3332) (mysteryven)385965flinter: Avoid infinite loop when traverse ancestors injest/no_conditional_expect(#3330) (mysteryven)95e9b69linter: Fix panic in jest/expect-expect (#3324) (Boshen)6c3d99alinter/jsx-no-undef: Check for globals when an identifier is undefined (#3331) (Boshen)bb2221elinter/next: False positives for non-custom font link (#3383) (Dunqing)712ee0dlinter/react: Fix false positives for async components inrules_of_hooks(#3307) (rzvxa)0864cd0linter/react: Better detection for hooks in therules_of_hooks. (#3306) (rzvxa)9594441linter/react:rules_of_hooksadd support for property hooks/components. (#3300) (rzvxa)c8f1f79linter/react:rules_of_hooksresolve false positives with conditional hooks. (#3299) (rzvxa)d46538elinter/react: Fix loop hooks false positives. (#3297) (Ali Rezvani)
Performance
8388c7blinter: UseusizeforRuleEnumhash (#3336) (Boshen)
Refactor
c9d84afdiagnostics: S/warning/warn (Boshen)5bf595dlinter: Rename variable names prefixESLinttoOxlint(Boshen)d8c3187linter: Remove unnecessary check ineslint/no-global-assign(#3391) (mysteryven)d7849f8linter: Find return statement by using CFG inreact/require-render-return(#3353) (mysteryven)8383b6elinter: Removewith_rule_namefrom the tight loop (#3335) (Boshen)4f76cb6linter: Merge deepscan rules into oxc rules (#3327) (Boshen)78e6326semantic/cfg: Alias petgraph'sNodeIndexasBasicBlockId. (#3380) (rzvxa)
[0.3.5] - 2024-05-15
Features
5b2fc39linter: Add use-isnan fixer for (in)equality operations (#3284) (Don Isaac)3644400linter/eslint: Implement fixer for unicode-bom rule (#3259) (Jelle van der Waa)
Bug Fixes
e12323flinter/no-direct-mutation-state: False positive when class is declared inside aCallExpression(#3294) (Boshen)
Refactor
6128171linter: Rewrite react/require-render-return (#3276) (Wang Wenzhe)
[0.3.4] - 2024-05-13
Features
6edcae8linter: Move react/rules_of_hooks to nursery (Boshen)44b16eflinter/eslint: Implement max-classes-per-file (#3241) (Jelle van der Waa)
[0.3.3] - 2024-05-13
Features
c6874adlinter: Demoteno-inner-declarationsfrom correctness to pedantic (eslint v9) (Boshen)4ccc3eelinter: Demotereact/jsx-no-useless-fragmentfrom correctness to pedantic (Boshen)d45b28alinter: Unicorn/no-anonymous-default-export (#3220) (1zumii)7113e85linter: Addradixrule (#3167) (Kuba Jastrzębski)fa0093blinter: Eslint-plugin-next/no-page-custom-font (#3185) (Dunqing)4defe37linter: Remove deprecated eslint v9 rulesno-return-awaitandno-mixed-operators(#3188) (Boshen)ca9f13flinter: Eslint/no-new-native-nonconstructor (#3187) (Boshen)5514936linter: Eslint-plugin-next/no-styled-jsx-in-document (#3184) (Dunqing)cb2e651linter: Eslint-plugin-next/no-duplicate-head (#3174) (Boshen)8244d2blinter/eslint: Implement unicode-bom rule (#3239) (Jelle van der Waa)5081652linter/eslint: Implement no-empty-function rule (#3181) (Jelle van der Waa)f88f330linter/import: Improve multiple exports error message (#3160) (Dunqing)1f135celinter/react: Add therules_of_hooksrule. (#3071) (rzvxa)c0abbbdlinter/tree-shaking: AddisPureFunction(#3175) (Wang Wenzhe)
Bug Fixes
edb30e1linter: Handleimport { default as foo }in import/named (#3255) (Boshen)313fb83linter/default: Ignore unsupported files (e.g. .vue) (Boshen)0ba7778parser: Correctly parse cls.fn = x (#3208) (Dunqing)
Refactor
dbde5b3diagnostics: Remove export ofmiette(Boshen)551632adiagnostics: Remove thiserror (Boshen)312f74bdiagnostics: S/OxcDiagnostic::new/OxcDiagnostic::error (Boshen)f7a3773linter: Clean up diagnostics (Boshen)5671714linter: Clean up diagnostics in fixer (Boshen)6e90f67linter: Remove unnecessary usages ofCompactStr(Boshen)15f275flinter: Reduce llvm lines generated byRuleEnum::read_json(#3207) (Boshen)a84454clinter: Clean up prefer_node_protocol and move to restriction (#3171) (Boshen)f6f7adclinter,diagnostic: One diagnostic struct to eliminate monomorphization of generic types (#3235) (Boshen)2064ae9parser,diagnostic: One diagnostic struct to eliminate monomorphization of generic types (#3214) (Boshen)-893af23Clean up more diagnostics usages (Boshen)
[0.3.2] - 2024-05-04
Features
80cf0b2linter: @typescript-eslint/prefer-literal-enum-member (#3134) (kaykdm)cd600falinter: Add more "ban-ts-comment" test cases. (#3107) (谭光志)bef8a71linter: Eslint-plugin-jest/require-hook (#3110) (cinchen)388ee51linter: Typescript-eslint/prefer-enum-initializers (#3097) (Todor Andonov)be9cdfclinter: Eslint/no-await-in-loop (#3070) (谭光志)6f5df11linter/import: Move some rules out of nursery (#2841) (Dunqing)5a1d63alinter/jsdoc: Implement require-yields rule (#3150) (Yuji Sugiura)d7a8345linter/jsdoc: Support settings.ignore(Private|Internal) (#3147) (Yuji Sugiura)5866086linter/jsdoc: Implement no-defaults rule (#3098) (Yuji Sugiura)fa3d9d2linter/jsdoc: Implementimplements-on-classesrule (#3081) (Yuji Sugiura)d109767linter/jsdoc: Implement check-tag-names rule (#3029) (Yuji Sugiura)32df6d7linter/tree-shaking: Support While/Switch/Yield Statement (#3155) (Wang Wenzhe)8290421linter/tree-shaking: Support SequenceExpression (#3154) (Wang Wenzhe)5c21b7flinter/tree-shaking: Support UnaryExpression (#3153) (Wang Wenzhe)7333618linter/tree-shaking: Support JSX (#3139) (Wang Wenzhe)16a31e9linter/tree-shaking: Support import statement (#3138) (Wang Wenzhe)88ded0clinter/tree-shaking: Support ForStatement (#3078) (Wang Wenzhe)c3ec710linter/tree-shaking: Support ExportNamedDeclaration (#3072) (Wang Wenzhe)8cdd5b0linter/tree_shaking: Support LogicExpression and MemberExpression (#3148) (Wang Wenzhe)
Bug Fixes
fde7d65linter: Handle named export default in import-plugin/named (#3158) (Boshen)b1bddaclinter: Fix hang if a file fails to parse while using--import-plugin(Boshen)dcb2528semantic: Revert test code pushed to the main by accident. (#3085) (Ali Rezvani)8d17ab3semantic: Allowroot_nodeto be empty for empty trees. (#3084) (Ali Rezvani)
Refactor
7e1fe36ast: Squash nested enums (#3115) (overlookmotel)942b2baast: Add array elementElisiontype (#3074) (overlookmotel)222030clinter: Render--rulesin a table (Boshen)1f12aeelinter/jsdoc: Misc improvements (#3109) (Yuji Sugiura)a8af5desyntax: Move number related functions to number module (#3130) (Boshen)ae65613syntax: UseFxHashMapforModuleRecord::request_modules(#3124) (Boshen)
[0.3.1] - 2024-04-22
Bug Fixes
a5a7351linter: Fix unwanted plugin rules being enabled (Boshen)
[0.3.0] - 2024-04-22
Features
92d709bast: AddCatchParameternode (#3049) (Boshen)8d17bb4linter: --deny all should not enable nursery rules (Boshen)c2ad8f8linter: Implement fixer fortypescript-eslint/consistent-type-definitions(#3045) (Todor Andonov)ae72be1linter: Remove all ESLint Stylistic rules (Boshen)58d6438linter: Change no-empty-static-block tocorrectness(Boshen)5cf55c2linter: No barrel file. (#3030) (Ali Rezvani)ae1f15alinter: Support eslint globals (#3038) (Boshen)1a1ba11linter/tree-shaking: SupportExportDefaultDeclaration(#3052) (Wang Wenzhe)
Bug Fixes
b88dfd7linter: Support-D all -D nursery(Boshen)598bbbalinter: Fix crashing withunwrapin import/no-cycle (#3035) (Boshen)
Performance
6c82961ast: Box typescript enum variants. (#3065) (Ali Rezvani)48e2088ast: Box enum variants (#3058) (overlookmotel)
Refactor
53c0ff5linter: Improve the ergonomics aroundESlintConfig(#3037) (Boshen)7e4beb0linter/import/no_cycle: Use ModuleGraphVisitor. (#3064) (Ali Rezvani)
[0.2.18] - 2024-04-19
Features
2bac1d5linter: Supportoxlint-disablealongsideeslint-disable(#3024) (Boshen)fa08abelinter: Remove import/no-unresolved (#3023) (Boshen)9b4e87alinter: Eslint/max-len (#2874) (谭光志)df2036elinter: Implement plugin-jsdoc/check-property-names (#2989) (Yuji Sugiura)aa62dbblinter: Add missing test cases to no-empty-interface and add config (#2973) (Jose)ba2121flinter: Add --jsdoc-plugin flag (#2935) (Yuji Sugiura)395ad76linter/jsdoc: Update settings.jsdoc method (#3016) (Yuji Sugiura)5d89e75linter/jsdoc: Implement require-property-(type|name|description) rules (#3013) (Yuji Sugiura)7de9c91linter/jsdoc: Implement require-property rule (#3011) (Yuji Sugiura)ac37d55linter/tree-shaking: Support DoWhileStatement and IfStatement (#2994) (Wang Wenzhe)5b02ae1linter/tree-shaking: Support ConditionalExpression (#2965) (Wang Wenzhe)da5ea41linter/tree-shaking: Support Class (#2964) (Wang Wenzhe)
Bug Fixes
627dd42linter/no-empty-interface: Add missing test (#2979) (Jose)
[0.2.17] - 2024-04-11
Features
6757dbalinter: Eslint-plugin-jest/prefer-lowercase-title (#2911) (cinchen)b4b471flinter: Typescript-eslint/consistent-type-definitions (#2885) (Todor Andonov)990eda6linter/tree-shaking: Support part BinaryExpression (#2922) (Wang Wenzhe)
Bug Fixes
5abbb0clinter: Import/no-cycle ignore type-only imports (#2924) (John Daly)
Refactor
0a77d62semantic/jsdoc: Rework JSDoc struct for better Span handling (#2917) (Yuji Sugiura)
[0.2.16] - 2024-04-08
Features
acb6eb2linter: @typescript-eslint/prefer-for-of (#2789) (Denis Gonchar)aa63b64linter: Implement jsdoc/check-access (#2642) (Yuji Sugiura)6823482linter: Implement jsdoc/empty-tags (#2893) (Yuji Sugiura)7bc638elinter: Eslint-plugin-jest/prefer-mock-promise-sorthand (#2864) (cinchen)6de1b77linter/import: AddignoreTypesoption for theimport/no-cyclerule (#2905) (John Daly)b053d54linter/tree-shaking: Support try-catch and AwaitExpression (#2902) (Wang Wenzhe)59869d0linter/tree-shaking: Checkthisin different environment (#2901) (Wang Wenzhe)ce34829linter/tree-shaking: Support ThisExpression and NewExpression (#2890) (Wang Wenzhe)15d08f6linter/tree-shaking: Support ArrowFunctionExpression (#2883) (Wang Wenzhe)4a86dcblinter/tree-shaking: SupportArrayExpressionandArrayPattern(#2882) (Wang Wenzhe)
Bug Fixes
5f8f7f8ast:FinallyClausewon't get visited asBlockStatementanymore. (#2881) (Ali Rezvani)79e2c95linter: Handle self closing script tags in astro partial loader (#2017) (#2907) (Kalven Schraut)1cd5e75linter: Svelte partial loader handle generics (#2875) (#2906) (Kalven Schraut)
[0.2.15] - 2024-03-30
Features
2365198cli: Add tsconfig file validation in LintRunner (#2850) (Dunqing)d63807elinter: Fallback to the default tsconfig path (#2842) (Dunqing)f6391f9linter: Eslint-plugin-jest/prefer-comparison-matcher (#2806) (cinchen)f131442linter: Eslint-plugin-jest/no-untyped-mock-factory (#2807) (cinchen)451162elinter: Eslint/no-iterator (#2758) (Jose)53ffbc6linter: Eslint-plugin-react checked-requires-onchange-or-readonly (#2754) (keita hino)1c07a99linter: Default_param_last (#2756) (Jose)291dc05linter: No_script_url (#2761) (Jose)76cc906linter/import: Ignore type-only imports and exports in no_unresolved (#2849) (Dunqing)0cae373linter/tree-shaking: Pass CallExpression cases (#2839) (Wang Wenzhe)fa39fa8linter/tree-shaking: Check CallExpression when called (#2809) (Wang Wenzhe)3c9e77dlinter/tree-shaking: Detect CallExpression in MemberExpression (#2772) (Wang Wenzhe)
Bug Fixes
df62828linter/import: Ignore export declaration in no-duplicates (#2863) (Dunqing)c452897linter/import: False positive for indirect export in namespace (#2862) (Dunqing)64e4de7linter/max-lines: Only report codes that exceed the line limit (#2778) (Wang Wenzhe)
Refactor
1b5e544semantic: Distinguish whether requested_modules is type imports/exports (#2848) (Dunqing)d9b77d8sourcemap: Change sourcemap name to take a reference (#2779) (underfin)
[0.2.14] - 2024-03-19
c3477deast: [BREAKING] Rename BigintLiteral to BigIntLiteral (#2659) (Arnaud Barré)
Features
ac813a6linter: No_template_curly_in_string (#2763) (Jose)134e15elinter: Eslint/no-proto (#2760) (Jose)39b98balinter: No_eq_null (#2757) (Jose)86d006elinter: Eslint/max-params (#2749) (Jose)22c84c5linter: Eslint/guard-for-in (#2746) (Jose)f5b4599linter: Eslint/no-ternary (#2744) (Jose)6189985linter: Eslint/no-continue (#2742) (Jose)91e8a71linter: Eslint/no-with (#2741) (Andi Pabst)81752b2linter: Eslint/max-lines (#2739) (Andi Pabst)0623a53linter: Eslint-plugin-jest:prefer-to-contain(#2735) (cinchen)9edda49linter: Eslint-plugin-jest:prefer-expect-resolves(#2703) (cinchen)53a8e7flinter: Add settings.jsdoc (#2706) (Yuji Sugiura)f8fe3aflinter: Eslint-plugin-jest: prefer-to-be (#2702) (cinchen)265030dlinter: Eslint-plugin-jest: prefer-spy-on (#2666) (cinchen)3ae9479linter: Report side effect for array element in node_side_effects rule (#2683) (Wang Wenzhe)366a879linter: Resolve ESM star exports (#2682) (Boshen)9b56134linter: Support check ImportNamespaceSpecifier in no_import_assign (#2617) (Dunqing)7605cd3linter: Change ban-ts-comment to pedantic (Boshen)95ac265linter/import: Check ObjectPattern syntax in namespace (#2691) (Dunqing)e86cd62linter/import: Support check reexport binding in namespace (#2678) (Dunqing)4947809linter/jest: Add new property forparse_jest_fn(#2715) (cinchen)2ef4762linter/tree-shaking: Add cache for checking mutating identifiers (#2743) (Wang Wenzhe)11219d4linter/tree_shaking: Check assignment of identifier (#2697) (Wang Wenzhe)57ce737semantic: Move redeclare varaibles to symbol table (#2614) (Dunqing)8b3de77span:impl<'a> PartialEq<str> for Atom<'a>(#2649) (Boshen)4f9dd98span: RemoveFrom<String>andFrom<Cow>API because they create memory leak (#2628) (Boshen)f8e8af2task: Init eslint-plugin-tree-shaking rule (#2662) (Wang Wenzhe)-265b2fbMiette v7 (#2465) (Boshen)
Bug Fixes
a671d75linter: Fix guard_for_in span error (#2755) (Jose)09d4c7dlinter: Correct example for no-obj-calls rule (#2618) (overlookmotel)b453a07parser: Parse named rest element in type tuple (#2655) (Arnaud Barré)
Refactor
0f86333ast: RefactorTriviasAPI - have less noise around it (#2692) (Boshen)220eba1lint: Split files for no_side_effects rule (#2684) (Wang Wenzhe)47e735alinter: Improve the implementation of no_shadow_restricted_names based on symbols (#2615) (Dunqing)240ff19parser: Improve parsing ofBindingPatternin TypeScript (#2624) (Boshen)798a6dfspan: Disallow struct expression constructor forSpan(#2625) (Boshen)-8001b2fMakeCompactStrimmutable (#2620) (overlookmotel)-0646bf3RenameCompactStringtoCompactStr(#2619) (overlookmotel)
[0.2.13] - 2024-03-05
Features
35ce3cclinter: Eslint-plugin-jest: prefer-to-have-length (#2580) (cinchen)212f128linter: Eslint-plugin-jest: prefer-strict-equal (#2581) (cinchen)fe777f3linter/import: Partial support namespace check (#2538) (Dunqing)
Bug Fixes
951297elinter: Avoid crash if no members in TSTypeLiteral in typescript/prefer-function-type (#2604) (Wenzhe Wang)c09c602linter: Exclude typescript syntax function in only_used_in_recursion (#2595) (Dunqing)f00834dlinter: Fix getter return rule false positives in TypeScript (#2543) (BlackSoulHub)24d46bcparser: Fix span start for TSModuleDeclaration (#2593) (Arnaud Barré)37de80dsemantic: Jsx reference with an incorrect node id (#2546) (Dunqing)-7cc9013Broken build from codegen API change (Boshen)
Refactor
ef932a3codegen: Clean up API around building sourcemaps (#2602) (Boshen)1391e4asemantic/jsdoc: Misc fixes for JSDoc related things (#2531) (Yuji Sugiura)
[0.2.12] - 2024-02-28
Features
3efbbb2ast: Add "abstract" type toMethodDefinitionandPropertyDefinition(#2536) (Boshen)02c82c3cli,linter: Provide tsconfig path from the cli (#2526) (Boshen)d41dcc3linter: Remove all commonjs logic for import plugin (#2537) (Boshen)
[0.2.11] - 2024-02-26
Features
f5aadc7linter: Handle cjs `module.exports = {} as default export (#2493) (Boshen)f64c7e0linter: Handle cjsmodule.exports.foo = barandexports.foo = bar(#2492) (Boshen)d0a9c46linter: Handle top-levelrequirefor import plugin (#2491) (Boshen)696818alinter: Implement @typescript-eslint/prefer-ts-expect-error (#2435) (Alex Yip)6aa8c2dlinter: Initialize resolver lazily and automatically read tsconfig.json for now (#2482) (Boshen)135e56alinter: Ignore unsupported extensions in import/no_unresolved (#2481) (Boshen)7f86722linter: Handle built-in modules in import/no_unresolved (#2479) (Boshen)015b2eelinter: Eslint-plugin-react void-dom-elements-no-children (#2477) (keita hino)c5f67felinter: Add boilerplate for eslint-plugin-import/no_duplicates (#2476) (Boshen)f1e364flinter: Eslint-plugin-import/no_unresolved (#2475) (Boshen)2714a32linter: Continue working on no_cycle (#2471) (Boshen)6527bfdlinter: Add boilerplace code for import/namespace,no_deprecated,no_unused_modules (#2470) (Boshen)ff6a337linter: Typescript-eslint: prefer-function-type (#2337) (zhangrunzhao)
Bug Fixes
93742f8linter: Correct configuration file parsing for jsx-no-useless-fragment (#2512) (keita hino)fba66dclinter: Improve import/no-named-as-default (#2494) (Boshen)d741d72linter: Fix import plugin hanging when ignored modules are imported (#2478) (Boshen)35a0f89linter: Handle cases where createElement is an Identifier in is_create_element_call (#2474) (keita hino)bc22ae5semantic: Refactor jsdoc finding (#2437) (Yuji Sugiura)
Refactor
540f917ast: RemoveTSEnumBody(#2509) (Boshen)9087f71ast: S/TSThisKeyword/TSThisType to align with estree (Boshen)d08abc6ast: S/NumberLiteral/NumericLiteral to align with estree (Boshen)e6b391aast: S/ArrowExpression/ArrowFunctionExpression to align estree (Boshen)
[0.2.10] - 2024-02-21
Features
e6d536ccodegen: Configurable typescript codegen (#2443) (Andrew McClenaghan)f7e1576linter: Eslint no-nonoctal-decimal-escape (#2428) (tudorbarbu)
Bug Fixes
5bd2ce6semantic: Incorrect reference flag for MemberExpression assign (#2433) (Dunqing)
Refactor
cd48e1elinter: Simplify getting ImportDefaultSpecifier (#2453) (Dunqing)2a2bb2blinter: Improve implementation of no_dupe_class_members based on ClassTable (#2446) (Dunqing)-a2c173dRemovepanic!from examples (#2454) (Boshen)
[0.2.9] - 2024-02-18
Features
0b9e122linter: Implementunicorn/no-process-exitrule (#2410) (Yuji Sugiura)d9f073elinter: Detect jest file by default glob pattern (#2408) (Wenzhe Wang)8d6202flinter: Eslint-plugin-jest require-to-throw-message (#2384) (keita hino)92afbb1linter: Eslint-plugin-jest: prefer-equality-matcher (#2358) (cinchen)40e9541semantic: Add export binding for ExportDefaultDeclarations in module record (#2329) (Dunqing)-8e0277eAdd Typescript ban-tslint-comment (#2371) (tudorbarbu)
Bug Fixes
f49ffb2linter:getter-returnfalse positive with TypeScript syntax (#2363) (Boshen)ebc08d4linter: Add missing typescript-eslint(_) prefix for some errors (#2342) (Maurice Nicholson)6a25864linter/jsx_a11y: Refactor jsx-a11y related utils and its usage (#2389) (Yuji Sugiura)2521b52linter/jsx_a11y: Ensure plugin settings are used (#2359) (Yuji Sugiura)
Performance
7d7a3fclint/no_var_requires: Quicker way to check if theIdentifierReferencepoint to a global variable (#2376) (Yunfei He)
Refactor
67d7a46linter: Get arrow expression by scope_id in no_render_return_value (#2424) (Dunqing)63b4741linter/config: Use serde::Deserialize for config parsing (#2325) (Yuji Sugiura)
[0.2.8] - 2024-02-06
Features
d571839ast: Enter AstKind::ExportDefaultDeclaration, AstKind::ExportNamedDeclaration and AstKind::ExportAllDeclaration (#2317) (Dunqing)a762d17linter: Promoteno-this-before-superto correctness (#2313) (Boshen)0060d6alinter: Implement no_this_before_super with cfg (#2254) (Tzvi Melamed)f3035f1semantic: Apply ImportSpecifier's binder and remove ModuleDeclaration's binder (#2307) (Dunqing)-8771c64Add typescript-eslint rule array-type (#2292) (luhc228)
Bug Fixes
b5e43fblinter: Fix no_dupe_keys false postive on similar key names (#2291) (Boshen)
Refactor
1822cfeast: Fix BigInt memory leak by removing it (#2293) (Boshen)
[0.2.7] - 2024-02-03
Features
2578bb3ast: Remove generator property from ArrowFunction (#2260) (Dunqing)a95a16clinter: Complete custom components setting (#2234) (hjio)da3b305linter: Implement @next/next/no-before-interactive-script-outsi… (#2203) (kaykdm)b694a6alinter: Implement @next/next/no-unwanted-polyfillio (#2197) (kaykdm)e561457semantic: Track cfg index per ast node (#2210) (Tzvi Melamed)
Bug Fixes
2beacd3lexer: Correct the span for irregular whitespaces (#2245) (Boshen)37a2676linter: AllowFunction doesn't support generator (#2277) (Dunqing)f039ad6linter: Ban--fixfor variety files(vue, astro, svelte) (#2189) (Wenzhe Wang)f32228elinter: Jsx no undef match scope should check with ancestors (#2027) (西了意)73ccf8aoxc_semantic: Proper traversal of try statements (#2250) (Tzvi Melamed)
Refactor
1de3518linter: Remove Regex and change error position (#2188) (Wenzhe Wang)-650f6c9Use our forked version of miette::Reporter for tests (#2266) (Boshen)-87b9978Move all miette usages tooxc_diagnostics(Boshen)
[0.2.6] - 2024-01-26
Features
ee5b968linter: Support read env from eslintrc (#2130) (fi3ework)8898377semantic: Cfg prototype (#2019) (Boshen)2794064transfrom: Transform-json-strings (#2168) (underfin)
Bug Fixes
2e3153elinter: Rename react_perf/jsx_no_new_function_as_props to jsx_no_new_function_as_prop (#2175) (Yuji Sugiura)
Refactor
a17e43elinter: Move settings and env to the config module (#2181) (Boshen)
[0.2.5] - 2024-01-25
Features
ac1d318linter: Eslint-plugin-jest: prefer-called-with (#2163) (cin)3891430linter: Eslint: no-void (#2162) (cin)
Bug Fixes
989ab88codegen: PrintDirectiveoriginal string (#2157) (underfin)c18619elinter: Use correct rule name (#2169) (Yuji Sugiura)2602232linter: Explicit-length-check inside ternary (#2165) (Maurice Nicholson)
[0.2.3] - 2024-01-23
Features
6d808a6linter: Linter-eslint-plugin-import/no-named-as-default (#2109) (Valerii Smirnov)d90db3alinter: Promote no-new-array to correctness with better help message (#2123) (Boshen)69fecaclinter: Eslint config jsonc support (#2121) (Boshen)5ca07bclinter: Eslint-plugin-react-perf (#2086) (Hulk)b160842linter: Support eslint config in nextjs eslint (#2107) (kaykdm)16b3261linter: Eslint-plugin-jest: no-restricted-jest-methods (#2091) (cin)-20a34b5Introduce --react-perf-plugin CLI flag, update rules to correctness (#2119) (Hulk)-4adce6f(eslint-plugin-jest): no-restricted-matchers (#2090) (cin)
Bug Fixes
d00c44clinter: Allow[...new Array(n)]in no-useless-spread (#2124) (Boshen)2228aa8linter: Jsx_a11y/img-redundant linter enable test case(#2112) (msdlisper)142f84flinter: Not usenew_inlinewith flexible str (#2106) (Wenzhe Wang)
Refactor
766ca63ast: Rename RestElement to BindingRestElement (#2116) (Dunqing)8bccdabsemantic: Add binder for FormalParameters and RestElement, replacing the binder for FormalParameters (#2114) (Dunqing)
[0.2.2] - 2024-01-20
Features
721a869linter: Improve no_redeclare rule implementation (#2084) (Dunqing)-2f1e1e2Expose linter RULES and use it for listing (#2083) (Yuji Sugiura)
Bug Fixes
d7ecd21linter: Eslint-plugin-import no-named-as-default-member rule (#2071) (Valerii Smirnov)3faa2aalinter: S/consistent-type-export/consistent-type-exports (#2065) (Boshen)
Refactor
a368134linter: Perfect the scope linter (#2092) (msdlisper)
[0.2.1] - 2024-01-16
Features
9e06bd7linter: Remove the--timingsfeature (#2049) (Boshen)c60c315linter: Eslint-plugin-import no-named-as-default-member rule (#1988) (Valerii Smirnov)530d1belinter: Eslint-plugin-jsx-a11y no-redundant-roles rule (#1981) (Yuto Yoshino)198f0e5linter: Eslint-plugin-jsx-a11y aria-activedescendant-has-tabindex (#2012) (keita hino)a356918linter: Eslint-plugin-next: no-document-import-in-page (#1997) (kaykdm)c70a065linter: Eslint-plugin-next: no-head-element (#2006) (kaykdm)8f0f824linter: Eslint-plugin-next: no-typos (#1978) (kaykdm)04540f7linter: Eslint-plugin-jsx-a11y click-events-have-key-events (#1976) (Yuji Sugiura)
Bug Fixes
3b40fbdlinter: False positive for filename_case where filename doesn't have a proper casing (#2032) (Boshen)68606c4linter: Keep rules disabled if the rule is not enabled in the config (#2031) (Boshen)107a32elinter: Fix false positive forerasing-opin0/0case (#2009) (Cameron)
Refactor
f514410linter: MoveLintSettingsto its own file (#2052) (Boshen)ae4e714linter: Remove theLintSettingsparameter fromLintContext::new. (#2051) (Boshen)b386177linter: Move away from tuples for test cases (#2011) (Boshen)
[0.2.0] - 2024-01-12
Features
d51c9f1linter: Eslint-plugin-jest: no-test-return-statement (#1979) (cin)fb5d0a7linter: Add support for same rule name but different plugin names (#1992) (Boshen)b7ea4e5linter: Support vue generic component (#1989) (Boshen)c5887bclinter: Implement @typescript-eslint/triple-slash-reference (#1903) (kaykdm)ac704cclinter: Eslint-plugin-jsx-a11y autocomplete-valid (#1901) (Yuto Yoshino)40dbfaelinter: Eslint-plugin-react: no-direct-mutation-state (#1892) (zhangrunzhao)856b9a5linter: Support overriding oxlint rules by eslint config (#1966) (Boshen)7891670linter: Eslint-plugin-react: require-render-return (#1946) (kaykdm)2b7ca59linter: Eslint-plugin-jsx-a11y role-has-required-aria-props (#1881) (Yuto Yoshino)f6047b6linter: Eslint-plugin-jsx-a11y role-support-aria-props (#1961) (Rintaro Itokawa)fd5856elinter: Eslint-plugin-jsx-a11y role-support-aria-props (#1949) (Rintaro Itokawa)c6eb519linter: Eslint-plugin-react: no-unknown-property (#1875) (Valerii Smirnov)fe48bfalsp: Support vue, astro and svelte (#1923) (IWANABETHATGUY)-ac3b44bNextjs plugin (#1948) (Cameron)
Bug Fixes
e0da12alinter: Allow eslintrc to add rule when overriding (#1984) (fi3ework)d4acd14linter: Jsx-key: handle anonymous functional components in arrays that have a function body (#1983) (Maurice Nicholson)b5f4f1elinter: Fix plugin name parsing when reading config file (#1972) (Hao Cheng)8d9894alinter: Support cases where aria-hidden includes expressions (#1964) (keita hino)66e95a5linter: Change severity of no-sparse-arrays to warnings (Boshen)
Refactor
a6717dbformatter,linter,codegen: Remove oxc_formatter (#1968) (Boshen)64310falinter: Remove duplicateget_jsx_attribute_name(#1971) (Cameron)