From 509ed2bcf32b75a06c6e72c8ba3f413b674191f1 Mon Sep 17 00:00:00 2001 From: Boshen Date: Thu, 6 Jun 2024 01:47:28 +0800 Subject: [PATCH] ci: update prepare release crates; regenerate the changelogs --- .github/workflows/prepare_release_crates.yml | 31 +- cliff.toml | 9 +- crates/oxc/CHANGELOG.md | 8 +- crates/oxc_ast/CHANGELOG.md | 142 +++---- crates/oxc_codegen/CHANGELOG.md | 94 ++--- crates/oxc_diagnostics/CHANGELOG.md | 16 +- crates/oxc_linter/CHANGELOG.md | 388 +++++++++---------- crates/oxc_minifier/CHANGELOG.md | 16 +- crates/oxc_parser/CHANGELOG.md | 176 ++++----- crates/oxc_semantic/CHANGELOG.md | 128 +++--- crates/oxc_sourcemap/CHANGELOG.md | 6 +- crates/oxc_span/CHANGELOG.md | 16 +- crates/oxc_syntax/CHANGELOG.md | 38 +- crates/oxc_transformer/CHANGELOG.md | 122 +++--- crates/oxc_traverse/CHANGELOG.md | 30 +- editors/vscode/CHANGELOG.md | 16 +- 16 files changed, 628 insertions(+), 608 deletions(-) diff --git a/.github/workflows/prepare_release_crates.yml b/.github/workflows/prepare_release_crates.yml index d50e4e09ba917..bea7a610c85d1 100644 --- a/.github/workflows/prepare_release_crates.yml +++ b/.github/workflows/prepare_release_crates.yml @@ -32,11 +32,32 @@ jobs: - name: Run id: run run: | - VERSION=`cargo release-oxc update --release crates` - echo "VERSION=${VERSION}" >> $GITHUB_OUTPUT + { + echo 'OUTPUT<> $GITHUB_OUTPUT + + - name: Save Version + id: version + run: | + { + echo 'VERSION<> $GITHUB_OUTPUT + + - name: Save Changelog + id: changelog + run: | + { + echo 'CHANGELOG<> $GITHUB_OUTPUT # update `Cargo.lock` - - run: cargo ck + - run: cargo check - uses: peter-evans/create-pull-request@v6 with: @@ -46,7 +67,7 @@ jobs: author: Boshen branch: release/crates branch-suffix: timestamp - title: Release crates v${{ steps.run.outputs.VERSION }} - body: Automated Release + title: Release crates v${{ steps.version.outputs.VERSION }} + body: Automated Release \n ${{ steps.changelog.outputs.CHANGELOG }} assignees: Boshen reviewers: Boshen diff --git a/cliff.toml b/cliff.toml index 8c951de7c6db4..45bd3e5e54a34 100644 --- a/cliff.toml +++ b/cliff.toml @@ -21,14 +21,13 @@ body = """ {% for commit in commits | filter(attribute="breaking", value=true) %} - **BREAKING** {{ commit.scope }}: {{ commit.message | trim }} {% endfor -%} -{% for group, commits in commits | group_by(attribute="group") %} +{% for group, commits in commits | sort(attribute="group") | group_by(attribute="group") %} ### {{ group | striptags | trim | upper_first }} {% for commit in commits | filter(attribute="breaking", value=false) | filter(attribute="scope") | sort(attribute="scope") %} * {{commit.scope}}: {{ commit.message | trim }} {%- endfor -%} {%- for commit in commits | filter(attribute="breaking", value=false) %} - {%- if commit.scope -%} - {% else -%} + {%- if not commit.scope -%} - {{ commit.message | trim }} | {%- endif -%} {%- endfor %} @@ -46,10 +45,10 @@ filter_unconventional = true split_commits = false # regex for parsing and grouping commits commit_parsers = [ - { message = "^doc", group = "Documentation" }, { message = "^feat", group = "Features" }, { message = "^fix", group = "Bug Fixes" }, { message = "^perf", group = "Performance" }, + { message = "^doc", group = "Documentation" }, { message = "^refactor", group = "Refactor" }, { message = "^style", group = "Styling" }, { message = "^test", group = "Testing" }, @@ -61,7 +60,7 @@ filter_commits = true # sort the tags topologically topo_order = false # sort the commits inside sections by oldest/newest order -sort_commits = "oldest" +sort_commits = "newest" # https://git-cliff.org/docs/configuration/bump [bump] diff --git a/crates/oxc/CHANGELOG.md b/crates/oxc/CHANGELOG.md index a50b1d8c60491..d8d9aee5f20a0 100644 --- a/crates/oxc/CHANGELOG.md +++ b/crates/oxc/CHANGELOG.md @@ -29,14 +29,14 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe ## [0.5.0] - 2024-01-12 -### Refactor - -* formatter,linter,codegen: remove oxc_formatter (#1968) - ### Features * playground: visualize symbol (#1886) +### Refactor + +* formatter,linter,codegen: remove oxc_formatter (#1968) + ## [0.4.0] - 2023-12-08 ### Refactor diff --git a/crates/oxc_ast/CHANGELOG.md b/crates/oxc_ast/CHANGELOG.md index 195593471122e..853a57719829d 100644 --- a/crates/oxc_ast/CHANGELOG.md +++ b/crates/oxc_ast/CHANGELOG.md @@ -7,29 +7,23 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe ## [0.13.2] - 2024-06-03 -### Refactor +### Features -* ast: update scope attrs (#3494) -* ast: move scope from `TSModuleBlock` to `TSModuleDeclaration` (#3488) -* ast: rename function params (#3487) -* ast: remove defunct hashing of `Span` (#3486) +* linter: add `oxc/no-const-enum` rule (#3435) ### Bug Fixes * ast: UsingDeclaration is not a typescript syntax (#3482) -### Features +### Refactor -* linter: add `oxc/no-const-enum` rule (#3435) +* ast: update scope attrs (#3494) +* ast: move scope from `TSModuleBlock` to `TSModuleDeclaration` (#3488) +* ast: rename function params (#3487) +* ast: remove defunct hashing of `Span` (#3486) ## [0.13.1] - 2024-05-22 -### Refactor - -* ast: fix clippy lint on nightly (#3346) -* ast: store `ScopeId` in AST nodes (#3302) -* parser: improve expression parsing (#3352) - ### Bug Fixes * linter/react: `rules_of_hooks` add support for property hooks/components. (#3300)- fix some nightly warnings | @@ -38,15 +32,13 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * ast: inline all `ASTBuilder` methods (#3295) -## [0.13.0] - 2024-05-14 +### Refactor -### Bug Fixes +* ast: fix clippy lint on nightly (#3346) +* ast: store `ScopeId` in AST nodes (#3302) +* parser: improve expression parsing (#3352) -* ast: do not include `trailing_comma` in JSON AST (#3073) -* parser: correctly parse cls.fn = x (#3208) -* traverse: set `ScopeFlags::Function` bit for class methods (#3277) -* traverse: create scopes for functions (#3273) -* traverse: create scope for function nested in class method (#3234) +## [0.13.0] - 2024-05-14 ### Features @@ -59,6 +51,18 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * transformer/react: enable jsx plugin when development is true (#3141) * traverse: add scope flags to `TraverseCtx` (#3229) +### Bug Fixes + +* ast: do not include `trailing_comma` in JSON AST (#3073) +* parser: correctly parse cls.fn = x (#3208) +* traverse: set `ScopeFlags::Function` bit for class methods (#3277) +* traverse: create scopes for functions (#3273) +* traverse: create scope for function nested in class method (#3234) + +### Documentation + +* ast: document enum inheritance (#3192) + ### Refactor * ast: order AST type fields in visitation order (#3228) @@ -70,11 +74,11 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * syntax: move number related functions to number module (#3130) * transform: fix doc comments for methods generated by `inherit_variants!` macro (#3195) -### Documentation +## [0.12.5] - 2024-04-22 -* ast: document enum inheritance (#3192) +### Features -## [0.12.5] - 2024-04-22 +* ast: add `CatchParameter` node (#3049) ### Performance @@ -83,10 +87,6 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * ast: box `ImportDeclarationSpecifier` enum variants (#3061) * ast: reduce indirection in AST types (#3051) -### Features - -* ast: add `CatchParameter` node (#3049) - ### Refactor * ast: implement same traits on all fieldless enums (#3031) @@ -104,14 +104,14 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe ## [0.12.3] - 2024-04-11 -### Refactor - -* ast: clean up the ts type visit methods - ### Features * oxc_ast: add missing ast visits for types (#2938) +### Refactor + +* ast: clean up the ts type visit methods + ## [0.12.1] - 2024-04-03 ### Bug Fixes @@ -166,6 +166,13 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe - **BREAKING** ast: align TSImportType with ESTree (#2578) +### Features + +* ast: serialize `BindingPattern` to estree (#2610) +* ast: serialize identifiers to ESTree (#2521) +* ast: add `AssignmentTargetRest` (#2601) +* ast: add "abstract" type to `MethodDefinition` and `PropertyDefinition` (#2536) + ### Bug Fixes * ast: temporary fix tsify not generating some typings (#2611) @@ -181,23 +188,8 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * parser: parse empty method declaration as TSEmptyBodyFunctionExpression (#2574) * semantic: incorrect scope for switch statement (#2513) -### Features - -* ast: serialize `BindingPattern` to estree (#2610) -* ast: serialize identifiers to ESTree (#2521) -* ast: add `AssignmentTargetRest` (#2601) -* ast: add "abstract" type to `MethodDefinition` and `PropertyDefinition` (#2536) - ## [0.8.0] - 2024-02-26 -### Refactor - -* ast: remove `TSEnumBody` (#2509) -* ast: s/TSThisKeyword/TSThisType to align with estree -* ast: s/NumberLiteral/NumericLiteral to align with estree -* ast: s/ArrowExpression/ArrowFunctionExpression to align estree -* ast: update TSImportType parameter to argument (#2429) - ### Features * ast: update arrow_expression to arrow_function_expression (#2496) @@ -212,18 +204,26 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * prettier: semi colon after class property (#2387) -## [0.7.0] - 2024-02-09 +### Refactor -### Bug Fixes +* ast: remove `TSEnumBody` (#2509) +* ast: s/TSThisKeyword/TSThisType to align with estree +* ast: s/NumberLiteral/NumericLiteral to align with estree +* ast: s/ArrowExpression/ArrowFunctionExpression to align estree +* ast: update TSImportType parameter to argument (#2429) -* codegen: format new expession + import expression with the correct parentheses (#2346) -* linter: fix no_dupe_keys false postive on similar key names (#2291) +## [0.7.0] - 2024-02-09 ### Features * ast: enter AstKind::ExportDefaultDeclaration, AstKind::ExportNamedDeclaration and AstKind::ExportAllDeclaration (#2317) * semantic: report parameter related errors for setter/getter (#2316) +### Bug Fixes + +* codegen: format new expession + import expression with the correct parentheses (#2346) +* linter: fix no_dupe_keys false postive on similar key names (#2291) + ### Refactor * ast: fix BigInt memory leak by removing it (#2293) @@ -249,6 +249,11 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * transformer/typescript: support transform namespace (#2075) * transformer/typescript: remove type-related exports (#2056) +### Bug Fixes + +* ast: AcessorProperty is missing decorators (#2176) +* parser: fix crash on TSTemplateLiteralType in function return position (#2089) + ### Refactor * ast: improve simple_assignment_target_identifier and simple_assignment_target_member_expression method (#2153) @@ -259,17 +264,8 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * semantic: add binder for FormalParameters and RestElement, replacing the binder for FormalParameters (#2114) * transformer/decorators: optimizing code with ast.private_field (#2249) -### Bug Fixes - -* ast: AcessorProperty is missing decorators (#2176) -* parser: fix crash on TSTemplateLiteralType in function return position (#2089) - ## [0.5.0] - 2024-01-12 -### Bug Fixes - -* ast: implement `GetSpan` for `JSXElement` (#1861)- default visitor should visit prop init at `visit_object_property` (#2000) | - ### Features * ast: visit TSModuleReference (#1998) @@ -280,6 +276,10 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * prettier: print CallExpression arguments correctly (#1631) * semantic: add ClassTable (#1793) +### Bug Fixes + +* ast: implement `GetSpan` for `JSXElement` (#1861)- default visitor should visit prop init at `visit_object_property` (#2000) | + ### Refactor * ast: introduce `ThisParameter` (#1728) @@ -309,17 +309,17 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * transform: TypeScript Enum (#1173) * transformer: Start on `function_name` transform. (#1510)- eslint-plugin-unicorn (recommended) prefer-node-protocol (#1618) | +### Bug Fixes + +* ast: remove debug_assertions from `debug_name` +* parser: Disallow ReservedWord in NamedExports (#1230) + ### Refactor * ast: VariableDeclarationKind::to_string -> as_str (#1321) * prettier: clean up object::print_object_properties (#1573) * rust: move to workspace lint table (#1444) -### Bug Fixes - -* ast: remove debug_assertions from `debug_name` -* parser: Disallow ReservedWord in NamedExports (#1230) - ## [0.3.0] - 2023-11-06 ### Features @@ -364,22 +364,22 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe ## [0.2.0] - 2023-09-14 -### Performance - -* linter: reduce mallocs (#654) -* parser: lazily build trivia map instead of build in-place (#903) - ### Features * ast: Add to ChainExpression and ExpressionArrayElement to ASTKind (#785) * ast: add `SymbolId` and `ReferenceId` (#755) * ast: AstKind::debug_name() (#665) -### Refactor +### Performance -* ast: use `atom` for `Directive` and `Hashbang` (#701)- improve code coverage in various places (#721) | +* linter: reduce mallocs (#654) +* parser: lazily build trivia map instead of build in-place (#903) ### Documentation * ast: document why Directive.directive is a raw string +### Refactor + +* ast: use `atom` for `Directive` and `Hashbang` (#701)- improve code coverage in various places (#721) | + diff --git a/crates/oxc_codegen/CHANGELOG.md b/crates/oxc_codegen/CHANGELOG.md index da6fd9c77bff1..6b42e5394b8d2 100644 --- a/crates/oxc_codegen/CHANGELOG.md +++ b/crates/oxc_codegen/CHANGELOG.md @@ -7,15 +7,15 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe ## [0.13.3] - 2024-06-04 -### Refactor - -* codegen: reduce allocation for print_unquoted_str (#3525) - ### Bug Fixes * codegen: should be double quote for jsx attribute value (#3516) * codegen: wrong escape string (#3514) +### Refactor + +* codegen: reduce allocation for print_unquoted_str (#3525) + ## [0.13.2] - 2024-06-03 ### Features @@ -28,15 +28,15 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * syntax: export `is_reserved_keyword` and `is_global_object` method (#3384) +### Bug Fixes + +* codegen: using declaration in for statement (#3285) + ### Refactor * parser: start porting arrow function parsing from tsc (#3340) * sourcemap: using binary search to search original position (#3360) -### Bug Fixes - -* codegen: using declaration in for statement (#3285) - ## [0.13.0] - 2024-05-14 ### Features @@ -67,34 +67,34 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe ## [0.12.1] - 2024-04-03 -### Refactor - -* codegen: make codegen sourcemap builder clearer (#2894) - ### Bug Fixes * sourcemap: using serde_json::to_string to quote sourcemap string (#2889) -## [0.11.0] - 2024-03-30 +### Refactor -### Bug Fixes +* codegen: make codegen sourcemap builder clearer (#2894) -* codegen: sourcemap token name should be original name (#2843) -* parser: add support for empty module declaration (#2834) +## [0.11.0] - 2024-03-30 ### Features * transformer: numeric separator plugin. (#2795)- add oxc sourcemap crate (#2825) |- SourcemapVisualizer (#2773) | -### Refactor +### Bug Fixes -* sourcemap: change sourcemap name to take a reference (#2779) +* codegen: sourcemap token name should be original name (#2843) +* parser: add support for empty module declaration (#2834) ### Performance * codegen: avoid unnecessary copy (#2727) * sourcemap: remove unnecessary binary search (#2728) +### Refactor + +* sourcemap: change sourcemap name to take a reference (#2779) + ## [0.10.0] - 2024-03-14 - **BREAKING** ast: rename BigintLiteral to BigIntLiteral (#2659) @@ -108,29 +108,34 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe - **BREAKING** ast: align TSImportType with ESTree (#2578) -### Refactor - -* codegen: clean up API around building sourcemaps (#2602) - ### Features * ast: add `AssignmentTargetRest` (#2601) * ast: add "abstract" type to `MethodDefinition` and `PropertyDefinition` (#2536) * codegen: add sourcemap (#2565) +### Bug Fixes + +* codegen: fix adding mapping to sourcemaps (#2590) +* codegen: correct sourcemaps when Windows line breaks + unicode (#2584) +* codegen: correct sourcemaps when unicode chars (#2583) + ### Performance * codegen: speed up generating sourcemap mappings (#2597) * codegen: speed up building sourcemap line tables (#2591) -### Bug Fixes +### Refactor -* codegen: fix adding mapping to sourcemaps (#2590) -* codegen: correct sourcemaps when Windows line breaks + unicode (#2584) -* codegen: correct sourcemaps when unicode chars (#2583) +* codegen: clean up API around building sourcemaps (#2602) ## [0.8.0] - 2024-02-26 +### Features + +* Codegen: Improve codegen (#2460) +* codegen: configurable typescript codegen (#2443) + ### Bug Fixes * codegen: remove redundant semicolon in PropertyDefinition (#2511) @@ -144,35 +149,23 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * ast: s/NumberLiteral/NumericLiteral to align with estree * ast: s/ArrowExpression/ArrowFunctionExpression to align estree- remove `panic!` from examples (#2454) | -### Features +## [0.7.0] - 2024-02-09 -* Codegen: Improve codegen (#2460) -* codegen: configurable typescript codegen (#2443) +### Features -## [0.7.0] - 2024-02-09 +* codegen: avoid printing comma in ArrayAssignmentTarget if the elements is empty (#2331) ### Bug Fixes * codegen: format new expession + import expression with the correct parentheses (#2346) * codegen: format new expression + call expression with the correct parentheses (#2330) -### Features - -* codegen: avoid printing comma in ArrayAssignmentTarget if the elements is empty (#2331) - ### Refactor * ast: fix BigInt memory leak by removing it (#2293) ## [0.6.0] - 2024-02-03 -### Bug Fixes - -* codegen: print space before with clause in import (#2278) -* codegen: print necessary spaces for `ExportAllDeclaration` (#2190) -* codegen: print `Directive` original string (#2157) -* codegen: add parenthesis in binary expression by precedence (#2067) - ### Features * codegen: keep shorthand in ObjectPattern and ObjectProperty (#2265) @@ -180,6 +173,13 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * codegen: print TemplateLiteral with `print_str` (#2207) * codegen: move string test to codegen (#2150) +### Bug Fixes + +* codegen: print space before with clause in import (#2278) +* codegen: print necessary spaces for `ExportAllDeclaration` (#2190) +* codegen: print `Directive` original string (#2157) +* codegen: add parenthesis in binary expression by precedence (#2067) + ### Refactor * ast: rename RestElement to BindingRestElement (#2116) @@ -202,12 +202,6 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe ## [0.3.0] - 2023-11-06 -### Bug Fixes - -* ast: jsx attribute value and text child should be jsx string (#1089) -* codegen: fix some typescript codegen problems (#989) -* linter: revert changes to JSX attribute strings (#1101) - ### Features * codegen: indent inner class (#1085) @@ -222,6 +216,12 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * transformer: add utils to make logical_assignment_operators pass (#1017) * transformer: ES2020 Nullish Coalescing Operator (#1004)- support filter exec snap (#1084) |- adjust the order of print semicolon (#1003) | +### Bug Fixes + +* ast: jsx attribute value and text child should be jsx string (#1089) +* codegen: fix some typescript codegen problems (#989) +* linter: revert changes to JSX attribute strings (#1101) + ### Refactor * minifier: make the minifier api only accept an ast (#990) diff --git a/crates/oxc_diagnostics/CHANGELOG.md b/crates/oxc_diagnostics/CHANGELOG.md index 9a79098db8838..a65eb2e89b0b4 100644 --- a/crates/oxc_diagnostics/CHANGELOG.md +++ b/crates/oxc_diagnostics/CHANGELOG.md @@ -17,6 +17,14 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe ## [0.13.0] - 2024-05-14 +### Features + +* linter: add `--format github` for github check annotation (#3191) + +### Bug Fixes + +* diagnostics: need to escape strings for --format github + ### Refactor * diagnostics: remove export of `miette` @@ -26,14 +34,6 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * linter,diagnostic: one diagnostic struct to eliminate monomorphization of generic types (#3235) * parser,diagnostic: one diagnostic struct to eliminate monomorphization of generic types (#3214)- clean up more diagnostics usages | -### Bug Fixes - -* diagnostics: need to escape strings for --format github - -### Features - -* linter: add `--format github` for github check annotation (#3191) - ## [0.12.5] - 2024-04-22 ### Features diff --git a/crates/oxc_linter/CHANGELOG.md b/crates/oxc_linter/CHANGELOG.md index 80fb6b2e62a6c..f9bfd94016077 100644 --- a/crates/oxc_linter/CHANGELOG.md +++ b/crates/oxc_linter/CHANGELOG.md @@ -52,16 +52,6 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * tasks/website: start generating linter config markdown from json schema (#3386) * website: generate linter configuration page -### Refactor - -* diagnostics: s/warning/warn -* linter: rename variable names prefix `ESLint` to `Oxlint` -* linter: remove unnecessary check in `eslint/no-global-assign` (#3391) -* linter: find return statement by using CFG in `react/require-render-return` (#3353) -* linter: remove `with_rule_name` from the tight loop (#3335) -* linter: merge deepscan rules into oxc rules (#3327) -* semantic/cfg: alias petgraph's `NodeIndex` as `BasicBlockId`. (#3380) - ### Bug Fixes * linter: `no-new` false positive when return from arrow expression (#3393) @@ -81,8 +71,23 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * linter: use `usize` for `RuleEnum` hash (#3336) +### Refactor + +* diagnostics: s/warning/warn +* linter: rename variable names prefix `ESLint` to `Oxlint` +* linter: remove unnecessary check in `eslint/no-global-assign` (#3391) +* linter: find return statement by using CFG in `react/require-render-return` (#3353) +* linter: remove `with_rule_name` from the tight loop (#3335) +* linter: merge deepscan rules into oxc rules (#3327) +* semantic/cfg: alias petgraph's `NodeIndex` as `BasicBlockId`. (#3380) + ## [0.3.5] - 2024-05-15 +### Features + +* linter: add use-isnan fixer for (in)equality operations (#3284) +* linter/eslint: Implement fixer for unicode-bom rule (#3259) + ### Bug Fixes * linter/no-direct-mutation-state: false positive when class is declared inside a `CallExpression` (#3294) @@ -91,11 +96,6 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * linter: rewrite react/require-render-return (#3276) -### Features - -* linter: add use-isnan fixer for (in)equality operations (#3284) -* linter/eslint: Implement fixer for unicode-bom rule (#3259) - ## [0.3.4] - 2024-05-13 ### Features @@ -105,12 +105,6 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe ## [0.3.3] - 2024-05-13 -### Bug Fixes - -* linter: handle `import { default as foo }` in import/named (#3255) -* linter/default: ignore unsupported files (e.g. .vue) -* parser: correctly parse cls.fn = x (#3208) - ### Features * linter: demote `no-inner-declarations` from correctness to pedantic (eslint v9) @@ -128,6 +122,12 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * linter/react: add the `rules_of_hooks` rule. (#3071) * linter/tree-shaking: add `isPureFunction` (#3175) +### Bug Fixes + +* linter: handle `import { default as foo }` in import/named (#3255) +* linter/default: ignore unsupported files (e.g. .vue) +* parser: correctly parse cls.fn = x (#3208) + ### Refactor * diagnostics: remove export of `miette` @@ -189,11 +189,6 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe ## [0.3.0] - 2024-04-22 -### Bug Fixes - -* linter: support `-D all -D nursery` -* linter: fix crashing with `unwrap` in import/no-cycle (#3035) - ### Features * ast: add `CatchParameter` node (#3049) @@ -205,16 +200,21 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * linter: support eslint globals (#3038) * linter/tree-shaking: support `ExportDefaultDeclaration` (#3052) -### Refactor +### Bug Fixes -* linter: improve the ergonomics around `ESlintConfig` (#3037) -* linter/import/no_cycle: use ModuleGraphVisitor. (#3064) +* linter: support `-D all -D nursery` +* linter: fix crashing with `unwrap` in import/no-cycle (#3035) ### Performance * ast: box typescript enum variants. (#3065) * ast: box enum variants (#3058) +### Refactor + +* linter: improve the ergonomics around `ESlintConfig` (#3037) +* linter/import/no_cycle: use ModuleGraphVisitor. (#3064) + ## [0.2.18] - 2024-04-19 ### Features @@ -244,14 +244,14 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * linter: typescript-eslint/consistent-type-definitions (#2885) * linter/tree-shaking: support part BinaryExpression (#2922) -### Refactor - -* semantic/jsdoc: Rework JSDoc struct for better Span handling (#2917) - ### Bug Fixes * linter: import/no-cycle ignore type-only imports (#2924) +### Refactor + +* semantic/jsdoc: Rework JSDoc struct for better Span handling (#2917) + ## [0.2.16] - 2024-04-08 ### Features @@ -275,12 +275,6 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe ## [0.2.15] - 2024-03-30 -### Bug Fixes - -* linter/import: ignore export declaration in no-duplicates (#2863) -* linter/import: false positive for indirect export in namespace (#2862) -* linter/max-lines: only report codes that exceed the line limit (#2778) - ### Features * cli: add tsconfig file validation in LintRunner (#2850) @@ -296,6 +290,12 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * linter/tree-shaking: check CallExpression when called (#2809) * linter/tree-shaking: detect CallExpression in MemberExpression (#2772) +### Bug Fixes + +* linter/import: ignore export declaration in no-duplicates (#2863) +* linter/import: false positive for indirect export in namespace (#2862) +* linter/max-lines: only report codes that exceed the line limit (#2778) + ### Refactor * semantic: distinguish whether requested_modules is type imports/exports (#2848) @@ -380,21 +380,6 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe ## [0.2.11] - 2024-02-26 -### Bug Fixes - -* linter: Correct configuration file parsing for jsx-no-useless-fragment (#2512) -* linter: improve import/no-named-as-default (#2494) -* linter: fix import plugin hanging when ignored modules are imported (#2478) -* linter: Handle cases where createElement is an Identifier in is_create_element_call (#2474) -* semantic: Refactor jsdoc finding (#2437) - -### Refactor - -* ast: remove `TSEnumBody` (#2509) -* ast: s/TSThisKeyword/TSThisType to align with estree -* ast: s/NumberLiteral/NumericLiteral to align with estree -* ast: s/ArrowExpression/ArrowFunctionExpression to align estree - ### Features * linter: handle cjs `module.exports = {} as default export (#2493) @@ -411,6 +396,21 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * linter: add boilerplace code for import/namespace,no_deprecated,no_unused_modules (#2470) * linter: typescript-eslint: prefer-function-type (#2337) +### Bug Fixes + +* linter: Correct configuration file parsing for jsx-no-useless-fragment (#2512) +* linter: improve import/no-named-as-default (#2494) +* linter: fix import plugin hanging when ignored modules are imported (#2478) +* linter: Handle cases where createElement is an Identifier in is_create_element_call (#2474) +* semantic: Refactor jsdoc finding (#2437) + +### Refactor + +* ast: remove `TSEnumBody` (#2509) +* ast: s/TSThisKeyword/TSThisType to align with estree +* ast: s/NumberLiteral/NumericLiteral to align with estree +* ast: s/ArrowExpression/ArrowFunctionExpression to align estree + ## [0.2.10] - 2024-02-21 ### Features @@ -418,21 +418,16 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * codegen: configurable typescript codegen (#2443) * linter: eslint no-nonoctal-decimal-escape (#2428) -### Refactor - -* linter: simplify getting ImportDefaultSpecifier (#2453) -* linter: improve implementation of no_dupe_class_members based on ClassTable (#2446)- remove `panic!` from examples (#2454) | - ### Bug Fixes * semantic: incorrect reference flag for MemberExpression assign (#2433) -## [0.2.9] - 2024-02-18 - ### Refactor -* linter: get arrow expression by scope_id in no_render_return_value (#2424) -* linter/config: Use serde::Deserialize for config parsing (#2325) +* linter: simplify getting ImportDefaultSpecifier (#2453) +* linter: improve implementation of no_dupe_class_members based on ClassTable (#2446)- remove `panic!` from examples (#2454) | + +## [0.2.9] - 2024-02-18 ### Features @@ -453,6 +448,11 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * lint/no_var_requires: quicker way to check if the `IdentifierReference` point to a global variable (#2376) +### Refactor + +* linter: get arrow expression by scope_id in no_render_return_value (#2424) +* linter/config: Use serde::Deserialize for config parsing (#2325) + ## [0.2.8] - 2024-02-06 ### Features @@ -462,15 +462,23 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * linter: Implement no_this_before_super with cfg (#2254) * semantic: apply ImportSpecifier's binder and remove ModuleDeclaration's binder (#2307)- add typescript-eslint rule array-type (#2292) | +### Bug Fixes + +* linter: fix no_dupe_keys false postive on similar key names (#2291) + ### Refactor * ast: fix BigInt memory leak by removing it (#2293) -### Bug Fixes +## [0.2.7] - 2024-02-03 -* linter: fix no_dupe_keys false postive on similar key names (#2291) +### Features -## [0.2.7] - 2024-02-03 +* ast: remove generator property from ArrowFunction (#2260) +* linter: complete custom components setting (#2234) +* linter: implement @next/next/no-before-interactive-script-outsi… (#2203) +* linter: implement @next/next/no-unwanted-polyfillio (#2197) +* semantic: track cfg index per ast node (#2210) ### Bug Fixes @@ -484,43 +492,35 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * linter: remove Regex and change error position (#2188)- use our forked version of miette::Reporter for tests (#2266) |- move all miette usages to `oxc_diagnostics` | -### Features - -* ast: remove generator property from ArrowFunction (#2260) -* linter: complete custom components setting (#2234) -* linter: implement @next/next/no-before-interactive-script-outsi… (#2203) -* linter: implement @next/next/no-unwanted-polyfillio (#2197) -* semantic: track cfg index per ast node (#2210) - ## [0.2.6] - 2024-01-26 -### Refactor +### Features -* linter: move settings and env to the config module (#2181) +* linter: support read env from eslintrc (#2130) +* semantic: cfg prototype (#2019) +* transfrom: transform-json-strings (#2168) ### Bug Fixes * linter: Rename react_perf/jsx_no_new_function_as_props to jsx_no_new_function_as_prop (#2175) -### Features +### Refactor -* linter: support read env from eslintrc (#2130) -* semantic: cfg prototype (#2019) -* transfrom: transform-json-strings (#2168) +* linter: move settings and env to the config module (#2181) ## [0.2.5] - 2024-01-25 +### Features + +* linter: eslint-plugin-jest: prefer-called-with (#2163) +* linter: eslint: no-void (#2162) + ### Bug Fixes * codegen: print `Directive` original string (#2157) * linter: use correct rule name (#2169) * linter: explicit-length-check inside ternary (#2165) -### Features - -* linter: eslint-plugin-jest: prefer-called-with (#2163) -* linter: eslint: no-void (#2162) - ## [0.2.3] - 2024-01-23 ### Features @@ -545,10 +545,6 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe ## [0.2.2] - 2024-01-20 -### Refactor - -* linter: perfect the scope linter (#2092) - ### Features * linter: improve no_redeclare rule implementation (#2084)- expose linter RULES and use it for listing (#2083) | @@ -558,13 +554,11 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * linter: eslint-plugin-import no-named-as-default-member rule (#2071) * linter: s/consistent-type-export/consistent-type-exports (#2065) -## [0.2.1] - 2024-01-16 - ### Refactor -* linter: move `LintSettings` to its own file (#2052) -* linter: remove the `LintSettings` parameter from `LintContext::new`. (#2051) -* linter: move away from tuples for test cases (#2011) +* linter: perfect the scope linter (#2092) + +## [0.2.1] - 2024-01-16 ### Features @@ -583,6 +577,12 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * linter: keep rules disabled if the rule is not enabled in the config (#2031) * linter: fix false positive for `erasing-op` in `0/0` case (#2009) +### Refactor + +* linter: move `LintSettings` to its own file (#2052) +* linter: remove the `LintSettings` parameter from `LintContext::new`. (#2051) +* linter: move away from tuples for test cases (#2011) + ## [0.2.0] - 2024-01-12 ### Features @@ -621,23 +621,15 @@ and this project does not adhere to [Semantic Versioning](https://semver.org/spe * linter: disable no-unused-labels for svelte (#1919) * linter: