diff --git a/Cargo.lock b/Cargo.lock index 9e67521aa737f..3c57ef38eadd5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1397,7 +1397,7 @@ checksum = "caff54706df99d2a78a5a4e3455ff45448d81ef1bb63c22cd14052ca0e993a3f" [[package]] name = "oxc" -version = "0.29.0" +version = "0.30.0" dependencies = [ "oxc_allocator", "oxc_ast", @@ -1436,7 +1436,7 @@ dependencies = [ [[package]] name = "oxc_allocator" -version = "0.29.0" +version = "0.30.0" dependencies = [ "allocator-api2", "bumpalo", @@ -1446,7 +1446,7 @@ dependencies = [ [[package]] name = "oxc_ast" -version = "0.29.0" +version = "0.30.0" dependencies = [ "bitflags 2.6.0", "num-bigint", @@ -1463,7 +1463,7 @@ dependencies = [ [[package]] name = "oxc_ast_macros" -version = "0.29.0" +version = "0.30.0" dependencies = [ "proc-macro2", "quote", @@ -1510,7 +1510,7 @@ dependencies = [ [[package]] name = "oxc_cfg" -version = "0.29.0" +version = "0.30.0" dependencies = [ "bitflags 2.6.0", "itertools", @@ -1521,7 +1521,7 @@ dependencies = [ [[package]] name = "oxc_codegen" -version = "0.29.0" +version = "0.30.0" dependencies = [ "base64", "bitflags 2.6.0", @@ -1568,7 +1568,7 @@ dependencies = [ [[package]] name = "oxc_diagnostics" -version = "0.29.0" +version = "0.30.0" dependencies = [ "miette", "owo-colors", @@ -1578,7 +1578,7 @@ dependencies = [ [[package]] name = "oxc_index" -version = "0.29.0" +version = "0.30.0" dependencies = [ "rayon", "serde", @@ -1586,7 +1586,7 @@ dependencies = [ [[package]] name = "oxc_isolated_declarations" -version = "0.29.0" +version = "0.30.0" dependencies = [ "bitflags 2.6.0", "insta", @@ -1681,7 +1681,7 @@ dependencies = [ [[package]] name = "oxc_mangler" -version = "0.29.0" +version = "0.30.0" dependencies = [ "itertools", "oxc_ast", @@ -1692,7 +1692,7 @@ dependencies = [ [[package]] name = "oxc_minifier" -version = "0.29.0" +version = "0.30.0" dependencies = [ "cow-utils", "insta", @@ -1727,7 +1727,7 @@ dependencies = [ [[package]] name = "oxc_module_lexer" -version = "0.29.0" +version = "0.30.0" dependencies = [ "oxc_allocator", "oxc_ast", @@ -1737,7 +1737,7 @@ dependencies = [ [[package]] name = "oxc_parser" -version = "0.29.0" +version = "0.30.0" dependencies = [ "assert-unchecked", "bitflags 2.6.0", @@ -1814,7 +1814,7 @@ dependencies = [ [[package]] name = "oxc_regular_expression" -version = "0.29.0" +version = "0.30.0" dependencies = [ "oxc_allocator", "oxc_ast_macros", @@ -1848,7 +1848,7 @@ dependencies = [ [[package]] name = "oxc_semantic" -version = "0.29.0" +version = "0.30.0" dependencies = [ "assert-unchecked", "indexmap", @@ -1872,7 +1872,7 @@ dependencies = [ [[package]] name = "oxc_sourcemap" -version = "0.29.0" +version = "0.30.0" dependencies = [ "base64-simd", "cfg-if", @@ -1885,7 +1885,7 @@ dependencies = [ [[package]] name = "oxc_span" -version = "0.29.0" +version = "0.30.0" dependencies = [ "compact_str", "miette", @@ -1899,7 +1899,7 @@ dependencies = [ [[package]] name = "oxc_syntax" -version = "0.29.0" +version = "0.30.0" dependencies = [ "assert-unchecked", "bitflags 2.6.0", @@ -1943,7 +1943,7 @@ dependencies = [ [[package]] name = "oxc_transform_napi" -version = "0.29.0" +version = "0.30.0" dependencies = [ "napi", "napi-build", @@ -1962,7 +1962,7 @@ dependencies = [ [[package]] name = "oxc_transformer" -version = "0.29.0" +version = "0.30.0" dependencies = [ "base64", "dashmap 6.0.1", @@ -1988,7 +1988,7 @@ dependencies = [ [[package]] name = "oxc_traverse" -version = "0.29.0" +version = "0.30.0" dependencies = [ "compact_str", "itoa", diff --git a/Cargo.toml b/Cargo.toml index 9f05359882c08..f3d4029f61489 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -76,27 +76,27 @@ doc_lazy_continuation = "allow" # FIXME [workspace.dependencies] # publish = true -oxc = { version = "0.29.0", path = "crates/oxc" } -oxc_allocator = { version = "0.29.0", path = "crates/oxc_allocator" } -oxc_ast = { version = "0.29.0", path = "crates/oxc_ast" } -oxc_ast_macros = { version = "0.29.0", path = "crates/oxc_ast_macros" } -oxc_cfg = { version = "0.29.0", path = "crates/oxc_cfg" } -oxc_codegen = { version = "0.29.0", path = "crates/oxc_codegen" } -oxc_diagnostics = { version = "0.29.0", path = "crates/oxc_diagnostics" } -oxc_index = { version = "0.29.0", path = "crates/oxc_index" } -oxc_isolated_declarations = { version = "0.29.0", path = "crates/oxc_isolated_declarations" } -oxc_mangler = { version = "0.29.0", path = "crates/oxc_mangler" } -oxc_minifier = { version = "0.29.0", path = "crates/oxc_minifier" } -oxc_module_lexer = { version = "0.29.0", path = "crates/oxc_module_lexer" } -oxc_parser = { version = "0.29.0", path = "crates/oxc_parser" } -oxc_regular_expression = { version = "0.29.0", path = "crates/oxc_regular_expression" } -oxc_semantic = { version = "0.29.0", path = "crates/oxc_semantic" } -oxc_sourcemap = { version = "0.29.0", path = "crates/oxc_sourcemap" } -oxc_span = { version = "0.29.0", path = "crates/oxc_span" } -oxc_syntax = { version = "0.29.0", path = "crates/oxc_syntax" } -oxc_transform_napi = { version = "0.29.0", path = "napi/transform" } -oxc_transformer = { version = "0.29.0", path = "crates/oxc_transformer" } -oxc_traverse = { version = "0.29.0", path = "crates/oxc_traverse" } +oxc = { version = "0.30.0", path = "crates/oxc" } +oxc_allocator = { version = "0.30.0", path = "crates/oxc_allocator" } +oxc_ast = { version = "0.30.0", path = "crates/oxc_ast" } +oxc_ast_macros = { version = "0.30.0", path = "crates/oxc_ast_macros" } +oxc_cfg = { version = "0.30.0", path = "crates/oxc_cfg" } +oxc_codegen = { version = "0.30.0", path = "crates/oxc_codegen" } +oxc_diagnostics = { version = "0.30.0", path = "crates/oxc_diagnostics" } +oxc_index = { version = "0.30.0", path = "crates/oxc_index" } +oxc_isolated_declarations = { version = "0.30.0", path = "crates/oxc_isolated_declarations" } +oxc_mangler = { version = "0.30.0", path = "crates/oxc_mangler" } +oxc_minifier = { version = "0.30.0", path = "crates/oxc_minifier" } +oxc_module_lexer = { version = "0.30.0", path = "crates/oxc_module_lexer" } +oxc_parser = { version = "0.30.0", path = "crates/oxc_parser" } +oxc_regular_expression = { version = "0.30.0", path = "crates/oxc_regular_expression" } +oxc_semantic = { version = "0.30.0", path = "crates/oxc_semantic" } +oxc_sourcemap = { version = "0.30.0", path = "crates/oxc_sourcemap" } +oxc_span = { version = "0.30.0", path = "crates/oxc_span" } +oxc_syntax = { version = "0.30.0", path = "crates/oxc_syntax" } +oxc_transform_napi = { version = "0.30.0", path = "napi/transform" } +oxc_transformer = { version = "0.30.0", path = "crates/oxc_transformer" } +oxc_traverse = { version = "0.30.0", path = "crates/oxc_traverse" } # publish = false oxc_linter = { path = "crates/oxc_linter" } diff --git a/crates/oxc/CHANGELOG.md b/crates/oxc/CHANGELOG.md index 694783d54720d..769beddf985d2 100644 --- a/crates/oxc/CHANGELOG.md +++ b/crates/oxc/CHANGELOG.md @@ -4,6 +4,16 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +### Features + +- 3230ae5 semantic: Add `SemanticBuilder::with_excess_capacity` (#5762) (overlookmotel) + +### Documentation + +- bacfbb8 oxc: Add submodule documentation (#5984) (DonIsaac) + ## [0.28.0] - 2024-09-11 - b060525 semantic: [**BREAKING**] Remove `source_type` argument from `SemanticBuilder::new` (#5553) (Boshen) diff --git a/crates/oxc/Cargo.toml b/crates/oxc/Cargo.toml index c19d8e50c4768..844d591fa4cf8 100644 --- a/crates/oxc/Cargo.toml +++ b/crates/oxc/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_allocator/Cargo.toml b/crates/oxc_allocator/Cargo.toml index 70d22f312cad8..3251e9ca55c44 100644 --- a/crates/oxc_allocator/Cargo.toml +++ b/crates/oxc_allocator/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_allocator" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_ast/CHANGELOG.md b/crates/oxc_ast/CHANGELOG.md index b6b1fbd85ea1a..7a57e05db6c5b 100644 --- a/crates/oxc_ast/CHANGELOG.md +++ b/crates/oxc_ast/CHANGELOG.md @@ -4,6 +4,41 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +- 033b907 ast: [**BREAKING**] Apply `#[non_exhaustive]`, must use `AstBuilder` (#5787) (Boshen) + +### Features + +- ae89145 ast: Revert `#[non_exhaustive]` change (#5885) (Boshen) +- e8bf30a ast: Add `Comment::real_span` (#5764) (Boshen) +- bcdbba3 codegen: Print jsdoc comments that are attached to statements and class elements (#5845) (Boshen) +- 4a62703 isolated-declarations: Handle `export` in the `namespace` correctly (#5950) (Dunqing) +- 3bf7b24 linter: Make `typescript/no-duplicate-enum-values` a `correctness` rule (#5810) (DonIsaac) +- 8e7556f parser: Calculate leading and trailing position for comments (#5785) (Boshen) +- 65c337a prettier: Improve ts compatibility (#5900) (Alexander S.) +- 6d9ccdd prettier: Support TSMappedType (#5834) (Alexander S.) +- b5ac5a6 prettier: Support TSModuleDeclaration (#5813) (Alexander S.) + +### Bug Fixes + +- 66e919e ast: Correct TS types for JSX (#5884) (overlookmotel) +- 0d10521 ast: Serialize `JSXMemberExpressionObject` to estree (#5883) (overlookmotel) +- a822c9d ast: Serialize `JSXElementName` to estree (#5882) (Boshen) +- 8780c54 isolated-declarations: Do not union a undefined when the param type is any or unknown (#5930) (Dunqing) + +### Documentation + +- acc2d16 ast: Document most TypeScript AST nodes (#5983) (DonIsaac) +- 47c2faa ast: Document TryStatement and related nodes (#5970) (DonIsaac) + +### Refactor + +- f4fac0f ast: Remove `.iter()` where not needed (#5904) (camchenry) +- 6dd6f7c ast: Change `Comment` struct (#5783) (Boshen) +- 7caae5b codegen: Add `GetSpan` requirement to `Gen` trait (#5772) (Boshen) +- 1c1353b transformer: Use AstBuilder instead of using struct constructor (#5778) (Boshen) + ## [0.29.0] - 2024-09-13 - c3dd2a0 ast: [**BREAKING**] Revert: reduce byte size of `TaggedTemplateExpression::quasi` by `Boxing` it (#5679) (#5715) (overlookmotel) diff --git a/crates/oxc_ast/Cargo.toml b/crates/oxc_ast/Cargo.toml index f7f03131547ae..1ce250cbc6c15 100644 --- a/crates/oxc_ast/Cargo.toml +++ b/crates/oxc_ast/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_ast" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_ast_macros/CHANGELOG.md b/crates/oxc_ast_macros/CHANGELOG.md index b436cf70c28f0..6f9daff9860b8 100644 --- a/crates/oxc_ast_macros/CHANGELOG.md +++ b/crates/oxc_ast_macros/CHANGELOG.md @@ -4,6 +4,14 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +### Refactor + +- 17cd903 ast: Move functions to top level in `ast` macro (#5793) (overlookmotel) +- cf97f6d ast: Import `syn` types in `ast` macro (#5792) (overlookmotel) +- dc10eaf ast: Split `ast` macro into multiple files (#5791) (overlookmotel) + ## [0.27.0] - 2024-09-06 ### Features diff --git a/crates/oxc_ast_macros/Cargo.toml b/crates/oxc_ast_macros/Cargo.toml index 216d8ac59f13e..ee814a62c208b 100644 --- a/crates/oxc_ast_macros/Cargo.toml +++ b/crates/oxc_ast_macros/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_ast_macros" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_cfg/Cargo.toml b/crates/oxc_cfg/Cargo.toml index 003ba925d0af0..5b977e87449cf 100644 --- a/crates/oxc_cfg/Cargo.toml +++ b/crates/oxc_cfg/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_cfg" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_codegen/CHANGELOG.md b/crates/oxc_codegen/CHANGELOG.md index 5b3b36d15ef0d..1f65bd6077545 100644 --- a/crates/oxc_codegen/CHANGELOG.md +++ b/crates/oxc_codegen/CHANGELOG.md @@ -4,6 +4,31 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +### Features + +- d901772 codegen: Implement minify number from terser (#5929) (Boshen) +- 9f6696a codegen: Add new lines to `TSTypeParameterDeclaration` (#5853) (Boshen) +- bcdbba3 codegen: Print jsdoc comments that are attached to statements and class elements (#5845) (Boshen) +- 26386da codegen: Have `with_source_text` reserve memory for code buffer (#5823) (DonIsaac) +- dfbde2c isolated_declarations: Print jsdoc comments (#5858) (Boshen) + +### Bug Fixes + +- f4aefb5 codegen: Print `let[0]` as `(let)[0]` (#5947) (Boshen) +- cee9d0b codegen: Fix spacing of `for await (x of y)` (#5890) (Boshen) +- 5901d2a codegen: Various spacing issues (#5820) (Boshen) +- 362c427 mangler,codegen: Do not mangle top level symbols (#5965) (Boshen) +- 42dcadf parser: Hashbang comment should not keep the end newline char (#5844) (Boshen) + +### Refactor + +- 6dd6f7c ast: Change `Comment` struct (#5783) (Boshen) +- bb95306 codegen: Change annotation comment tests to snapshot (#5800) (Boshen) +- e613a3d codegen: Prepare to add leading comments by adding a template method pattern (#5784) (Boshen) +- 7caae5b codegen: Add `GetSpan` requirement to `Gen` trait (#5772) (Boshen) + ## [0.29.0] - 2024-09-13 ### Performance diff --git a/crates/oxc_codegen/Cargo.toml b/crates/oxc_codegen/Cargo.toml index 84984f622b126..d7a734c394937 100644 --- a/crates/oxc_codegen/Cargo.toml +++ b/crates/oxc_codegen/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_codegen" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_diagnostics/CHANGELOG.md b/crates/oxc_diagnostics/CHANGELOG.md index 69336a119ec8a..2a565fa58b115 100644 --- a/crates/oxc_diagnostics/CHANGELOG.md +++ b/crates/oxc_diagnostics/CHANGELOG.md @@ -4,6 +4,16 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +### Documentation + +- 83ca7f5 diagnostics: Fully document `oxc_diagnostics` (#5865) (DonIsaac) + +### Refactor + +- 6dd6f7c ast: Change `Comment` struct (#5783) (Boshen) + ## [0.27.0] - 2024-09-06 ### Features diff --git a/crates/oxc_diagnostics/Cargo.toml b/crates/oxc_diagnostics/Cargo.toml index 3edea8c0db838..71b8032778847 100644 --- a/crates/oxc_diagnostics/Cargo.toml +++ b/crates/oxc_diagnostics/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_diagnostics" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_index/CHANGELOG.md b/crates/oxc_index/CHANGELOG.md index 1430442ab22c1..8b5790dd00aa3 100644 --- a/crates/oxc_index/CHANGELOG.md +++ b/crates/oxc_index/CHANGELOG.md @@ -4,6 +4,12 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +### Testing + +- 84b7d1a index: Add unit tests to `oxc_index` (#5979) (DonIsaac) + ## [0.29.0] - 2024-09-13 - 71116a1 index: [**BREAKING**] Remove ability to index `IndexVec` with `usize` (#5733) (overlookmotel) diff --git a/crates/oxc_index/Cargo.toml b/crates/oxc_index/Cargo.toml index a65e5298b93bc..1cb953b7b872a 100644 --- a/crates/oxc_index/Cargo.toml +++ b/crates/oxc_index/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_index" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_isolated_declarations/CHANGELOG.md b/crates/oxc_isolated_declarations/CHANGELOG.md index 2959f19150fa9..aefc385bdfe6c 100644 --- a/crates/oxc_isolated_declarations/CHANGELOG.md +++ b/crates/oxc_isolated_declarations/CHANGELOG.md @@ -4,6 +4,45 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +### Features + +- 4a62703 isolated-declarations: Handle `export` in the `namespace` correctly (#5950) (Dunqing) +- 84a5816 isolated_declarations: Add `stripInternal` (#5878) (Boshen) +- dfbde2c isolated_declarations: Print jsdoc comments (#5858) (Boshen) + +### Bug Fixes + +- 5901d2a codegen: Various spacing issues (#5820) (Boshen) +- fd1c46c isolated-declarations: Infer failed if there are two setter/getter methods that need to be inferred (#5967) (Dunqing) +- 6df82ee isolated-declarations: False positive for class private method that has arguments without type annotations (#5964) (Dunqing) +- 6a9e71d isolated-declarations: Wrap TSFunctionType in parentheses if it is inside the `TSUnionType` (#5963) (Dunqing) +- ea32d5b isolated-declarations: Should print constructor assignments first (#5934) (Dunqing) +- 0f96b59 isolated-declarations: Missing print comments in class's private method (#5931) (Dunqing) +- 8780c54 isolated-declarations: Do not union a undefined when the param type is any or unknown (#5930) (Dunqing) +- f07ff14 isolated-declarations: Should not transform signature that has type annotation (#5927) (Dunqing) +- b6a9178 isolated-declarations: Don't collect references when `ExportNamedDeclaration` has source (#5926) (Dunqing) +- 756a571 isolated-declarations: Missing empty export when has an export declare (#5925) (Dunqing) +- e148c80 isolated_declarations: Try fix fixtures (Boshen) +- 9b3f763 isolated_declarations: Try fix new line issue (Boshen) +- ee748b0 isolated_declarations: Fix fixture spacing (Boshen) + +### Performance + +- cd34f07 isolated-declarations: Combine type/value bindings and type/value references into one (#5968) (Dunqing) + +### Refactor + +- c84bd28 isolated-declarations: Simplify to infer the getter and setter methods (#5966) (Dunqing) +- 67b4220 isolated-declarations: Simplify handling VariableDeclaration transform (#5916) (Dunqing) +- 2fd5c2a isolated-declarations: Pre-filter statements that do not need to be transformed (#5909) (Dunqing) +- 1c1353b transformer: Use AstBuilder instead of using struct constructor (#5778) (Boshen) + +### Testing + +- d6cbbe7 isolated-declarations: Arrow function unions in return signature (#5973) (DonIsaac) + ## [0.29.0] - 2024-09-13 ### Features diff --git a/crates/oxc_isolated_declarations/Cargo.toml b/crates/oxc_isolated_declarations/Cargo.toml index d6e152eb515cd..f57bce8096f83 100644 --- a/crates/oxc_isolated_declarations/Cargo.toml +++ b/crates/oxc_isolated_declarations/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_isolated_declarations" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_mangler/CHANGELOG.md b/crates/oxc_mangler/CHANGELOG.md index ee8a290b6f8e5..8f96561825dba 100644 --- a/crates/oxc_mangler/CHANGELOG.md +++ b/crates/oxc_mangler/CHANGELOG.md @@ -4,6 +4,16 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +### Bug Fixes + +- 362c427 mangler,codegen: Do not mangle top level symbols (#5965) (Boshen) + +### Performance + +- c477424 mangler: Use `sort_unstable_by_key` instead of `sort_by` (#5948) (Boshen) + ## [0.28.0] - 2024-09-11 - b060525 semantic: [**BREAKING**] Remove `source_type` argument from `SemanticBuilder::new` (#5553) (Boshen) diff --git a/crates/oxc_mangler/Cargo.toml b/crates/oxc_mangler/Cargo.toml index 5372e7ee611fa..dc72e573e2127 100644 --- a/crates/oxc_mangler/Cargo.toml +++ b/crates/oxc_mangler/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_mangler" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_minifier/CHANGELOG.md b/crates/oxc_minifier/CHANGELOG.md index 294a69f6a5bfe..ec952d37e208b 100644 --- a/crates/oxc_minifier/CHANGELOG.md +++ b/crates/oxc_minifier/CHANGELOG.md @@ -4,6 +4,22 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +### Features + +- 9076dee minifier: Implement part of `StatementFusion` (#5936) (Boshen) + +### Bug Fixes + +- 362c427 mangler,codegen: Do not mangle top level symbols (#5965) (Boshen) + +### Refactor + +- 943bd76 minifier: Move tests to their src files (#5912) (Boshen) +- cbaeea6 minifier: Clean up some tests (#5910) (Boshen) +- 144611e minifier: Align ast pass names with closure compiler (#5908) (Boshen) + ## [0.29.0] - 2024-09-13 ### Features diff --git a/crates/oxc_minifier/Cargo.toml b/crates/oxc_minifier/Cargo.toml index 98ec8efeeb4c7..ed5b19ed9f709 100644 --- a/crates/oxc_minifier/Cargo.toml +++ b/crates/oxc_minifier/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_minifier" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_module_lexer/Cargo.toml b/crates/oxc_module_lexer/Cargo.toml index 73c101e77b257..80fc32bfde241 100644 --- a/crates/oxc_module_lexer/Cargo.toml +++ b/crates/oxc_module_lexer/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_module_lexer" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_parser/CHANGELOG.md b/crates/oxc_parser/CHANGELOG.md index c1ab67a114ba7..0503073d5a272 100644 --- a/crates/oxc_parser/CHANGELOG.md +++ b/crates/oxc_parser/CHANGELOG.md @@ -4,6 +4,30 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +### Features + +- e8bf30a ast: Add `Comment::real_span` (#5764) (Boshen) +- bcdbba3 codegen: Print jsdoc comments that are attached to statements and class elements (#5845) (Boshen) +- 8e7556f parser: Calculate leading and trailing position for comments (#5785) (Boshen) + +### Bug Fixes + +- 42dcadf parser: Hashbang comment should not keep the end newline char (#5844) (Boshen) + +### Documentation + +- 3120c6c parser: Add module and struct level documentation (#5831) (DonIsaac) + +### Refactor + +- 6dd6f7c ast: Change `Comment` struct (#5783) (Boshen) +- 31e9db4 parser: Shorten `UniquePromise` code (#5805) (overlookmotel) +- 2322b8b parser: Remove dead code warning when running tests (#5804) (overlookmotel) +- 4abfa76 parser: Add `--ast` and `--comments` to example (Boshen) +- a4b55bf parser: Use AstBuilder (#5743) (Boshen) + ## [0.29.0] - 2024-09-13 ### Features diff --git a/crates/oxc_parser/Cargo.toml b/crates/oxc_parser/Cargo.toml index b552d4af2c54e..a3ab163026ccb 100644 --- a/crates/oxc_parser/Cargo.toml +++ b/crates/oxc_parser/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_parser" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_regular_expression/Cargo.toml b/crates/oxc_regular_expression/Cargo.toml index b9195787d8668..592d65026725b 100644 --- a/crates/oxc_regular_expression/Cargo.toml +++ b/crates/oxc_regular_expression/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_regular_expression" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_semantic/CHANGELOG.md b/crates/oxc_semantic/CHANGELOG.md index 87771fd66e03a..36af6e47316ab 100644 --- a/crates/oxc_semantic/CHANGELOG.md +++ b/crates/oxc_semantic/CHANGELOG.md @@ -4,6 +4,40 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +- c96b712 syntax: [**BREAKING**] Remove `SymbolFlags::ArrowFunction` (#5857) (overlookmotel) + +### Features + +- a111bb6 oxc_wasm: Add `verbse` option to `debug_dot` (#5879) (IWANABETHATGUY) +- 74d8714 semantic: Add help message for invalid `let x?: number` (#5969) (DonIsaac) +- 3230ae5 semantic: Add `SemanticBuilder::with_excess_capacity` (#5762) (overlookmotel) +- a07f03a transformer: Sync `Program::source_type` after transform (#5887) (Boshen) + +### Bug Fixes + +- f1551d6 semantic: `?` on variable declaration type annotations is a syntax error (#5956) (DonIsaac) +- a23879c semantic: Analyze `ReferenceFlags` incorrectly when there are nested `AssignmentTarget` (#5847) (Dunqing) + +### Performance + +- c3e0fb6 semantic: Simplify resetting ReferenceFlags in `AssignmentExpression` (#5846) (Dunqing) + +### Documentation + +- 1ccf290 semantic: Document `AstNode` and `AstNodes` (#5872) (DonIsaac) + +### Refactor + +- 6dd6f7c ast: Change `Comment` struct (#5783) (Boshen) +- d910304 semantic: Rename lifetime on `impl IntoIterator for &AstNodes` (#5881) (overlookmotel) +- f360e2c semantic: Remove redundunt is_leading check for JSDoc (#5877) (leaysgur) +- 9115dd9 semantic: Use `Comment::attached_to` for jsdoc attachment (#5876) (Boshen) +- db4f16a semantic: Call `with_trivias` before `build_with_jsdoc` (#5875) (Boshen) +- 3d13c6d semantic: Impl `IntoIterator` for `&AstNodes` (#5873) (DonIsaac) +- 47d9ad8 semantic: Remove unused vars warning in release mode (#5803) (overlookmotel) + ## [0.29.0] - 2024-09-13 ### Features diff --git a/crates/oxc_semantic/Cargo.toml b/crates/oxc_semantic/Cargo.toml index 7f842c553aa78..f6458371ad00a 100644 --- a/crates/oxc_semantic/Cargo.toml +++ b/crates/oxc_semantic/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_semantic" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_sourcemap/Cargo.toml b/crates/oxc_sourcemap/Cargo.toml index 4a012ed952677..459dff250561b 100644 --- a/crates/oxc_sourcemap/Cargo.toml +++ b/crates/oxc_sourcemap/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_sourcemap" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_span/CHANGELOG.md b/crates/oxc_span/CHANGELOG.md index 6e6f7c9cb8841..f5cb63be115bc 100644 --- a/crates/oxc_span/CHANGELOG.md +++ b/crates/oxc_span/CHANGELOG.md @@ -4,6 +4,13 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +### Features + +- a5f2e9a span: Impl `From>` for `Atom` (#5809) (DonIsaac) +- a07f03a transformer: Sync `Program::source_type` after transform (#5887) (Boshen) + ## [0.28.0] - 2024-09-11 - 4a8aec1 span: [**BREAKING**] Change `SourceType::js` to `SourceType::cjs` and `SourceType::mjs` (#5606) (Boshen) diff --git a/crates/oxc_span/Cargo.toml b/crates/oxc_span/Cargo.toml index 656fde3cd56b7..dd4c3e2ff7841 100644 --- a/crates/oxc_span/Cargo.toml +++ b/crates/oxc_span/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_span" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_syntax/CHANGELOG.md b/crates/oxc_syntax/CHANGELOG.md index 018f1ce3ad452..7a0c03d141c2c 100644 --- a/crates/oxc_syntax/CHANGELOG.md +++ b/crates/oxc_syntax/CHANGELOG.md @@ -4,6 +4,18 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +- c96b712 syntax: [**BREAKING**] Remove `SymbolFlags::ArrowFunction` (#5857) (overlookmotel) + +### Documentation + +- 1ccf290 semantic: Document `AstNode` and `AstNodes` (#5872) (DonIsaac) +- e04841c syntax: Add ModuleRecord documentation (#5818) (DonIsaac) + +### Refactor + + ## [0.29.0] - 2024-09-13 ### Bug Fixes diff --git a/crates/oxc_syntax/Cargo.toml b/crates/oxc_syntax/Cargo.toml index 0dc10a3308ed5..1e04205eaf87b 100644 --- a/crates/oxc_syntax/Cargo.toml +++ b/crates/oxc_syntax/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_syntax" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_transformer/CHANGELOG.md b/crates/oxc_transformer/CHANGELOG.md index 911ff21784ed8..206f905e73061 100644 --- a/crates/oxc_transformer/CHANGELOG.md +++ b/crates/oxc_transformer/CHANGELOG.md @@ -4,6 +4,62 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +- c96b712 syntax: [**BREAKING**] Remove `SymbolFlags::ArrowFunction` (#5857) (overlookmotel) + +### Features + +- 3230ae5 semantic: Add `SemanticBuilder::with_excess_capacity` (#5762) (overlookmotel) +- a07f03a transformer: Sync `Program::source_type` after transform (#5887) (Boshen) + +### Bug Fixes + +- 87323c6 transformer: Arrow function transform: prevent stack getting out of sync (#5941) (overlookmotel) +- 4e9e838 transformer: Fix arrow function transform (#5933) (overlookmotel) +- 4d5c4f6 transformer: Fix reference flags in logical assignment operator transform (#5903) (overlookmotel) +- d335a67 transformer: Fix references in logical assignment operator transform (#5896) (overlookmotel) +- 9758c1a transformer: JSX source: add `var _jsxFileName` statement (#5894) (overlookmotel) +- 49ee1dc transformer: Arrow function transform handle `this` in arrow function in class static block (#5848) (overlookmotel) +- 172fa03 transformer: Fix stacks in arrow function transform (#5828) (overlookmotel) +- d74c7fa transformer: Remove `AstBuilder::copy` from arrow functions transform (#5825) (overlookmotel) +- 3cc38df transformer/react: React refresh panics when encounter `use` hook (#5768) (Dunqing) + +### Performance + +- ff7d9c1 transformer: Arrow function transform: calculate whether `this` is in arrow function lazily (#5850) (Dunqing) +- fd70c4b transformer: Arrow function transform more efficient scope search (#5842) (overlookmotel) +- 56703a3 transformer: Make branch more predictable in arrow function transform (#5833) (overlookmotel) +- 36e698b transformer: Call `transform_jsx` in `exit_expression` rather than `enter_expression` (#5751) (Dunqing) +- aac8316 transformer/react: Improve `is_componentish_name`'s implementation (#5769) (Dunqing) + +### Documentation + +- 7085829 transformer: Arrow function transform: comment about incomplete implementation (#5945) (overlookmotel) +- 66b4688 transformer: React: convert docs to standard format (#5891) (overlookmotel) +- 7f05eed transformer: Add comment about missing features in arrow function transform (#5855) (overlookmotel) +- 8770647 transformer: Correct docs for arrow function transform (#5854) (overlookmotel) + +### Refactor + +- 155d7fc transformer: Arrow function transform: ignore type fields when finding enclosing arrow function (#5944) (overlookmotel) +- 2cf5607 transformer: Split up logical assignment operator transform into functions (#5902) (overlookmotel) +- 41fbe15 transformer: Internal functions not `pub` in logical assignment operator transform (#5898) (overlookmotel) +- b11d91c transformer: Remove nested match in logical assignment operator transform (#5897) (overlookmotel) +- 52c9903 transformer: JSX: use `AstBuilder::vec_from_iter` (#5862) (overlookmotel) +- 74364ad transformer: JSX: merge `transform_jsx_attribute_item` into `transform_jsx` (#5861) (overlookmotel) +- d2eaa7d transformer: Reorder match arms in JSX transform (#5860) (overlookmotel) +- 58a8327 transformer: Simplify match in JSX transform (#5859) (overlookmotel) +- b9c4564 transformer: Transformer example output semantic + transformer errors (#5852) (overlookmotel) +- 03e02a0 transformer: Comment about potential improvement to arrow function transform (#5841) (overlookmotel) +- 40cdad5 transformer: Remove repeat code in arrow function transform (#5837) (overlookmotel) +- 3dd188c transformer: Deref `SymbolId` immediately (#5836) (overlookmotel) +- 03a9e1a transformer: Reorder methods in arrow function transform (#5830) (overlookmotel) +- 4d97184 transformer: Rename vars in arrow function transform (#5827) (overlookmotel) +- 01c5b7c transformer: Shorten code in arrow functions transform (#5826) (overlookmotel) +- 85ac3f7 transformer: Arrow functions transform do not wrap function expressions in parentheses (#5824) (overlookmotel) +- 1c1353b transformer: Use AstBuilder instead of using struct constructor (#5778) (Boshen) + ## [0.29.0] - 2024-09-13 ### Features diff --git a/crates/oxc_transformer/Cargo.toml b/crates/oxc_transformer/Cargo.toml index ddaa03ab85f1d..18d2d2f018fd5 100644 --- a/crates/oxc_transformer/Cargo.toml +++ b/crates/oxc_transformer/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_transformer" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_traverse/CHANGELOG.md b/crates/oxc_traverse/CHANGELOG.md index 19db72db61a9a..e45cc3f6159b9 100644 --- a/crates/oxc_traverse/CHANGELOG.md +++ b/crates/oxc_traverse/CHANGELOG.md @@ -4,6 +4,16 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +### Features + +- 635e918 traverse: `generate_uid_name` method (#5839) (overlookmotel) + +### Refactor + +- 1c1353b transformer: Use AstBuilder instead of using struct constructor (#5778) (Boshen) + ## [0.29.0] - 2024-09-13 - c3dd2a0 ast: [**BREAKING**] Revert: reduce byte size of `TaggedTemplateExpression::quasi` by `Boxing` it (#5679) (#5715) (overlookmotel) diff --git a/crates/oxc_traverse/Cargo.toml b/crates/oxc_traverse/Cargo.toml index 0f49d7cd23f19..5d83c947fb58c 100644 --- a/crates/oxc_traverse/Cargo.toml +++ b/crates/oxc_traverse/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_traverse" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/napi/transform/CHANGELOG.md b/napi/transform/CHANGELOG.md index 8faa57801ce9a..c3bb337c321fd 100644 --- a/napi/transform/CHANGELOG.md +++ b/napi/transform/CHANGELOG.md @@ -4,6 +4,19 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project does not adhere to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) until v1.0.0. +## [0.30.0] - 2024-09-23 + +### Features + +- 84a5816 isolated_declarations: Add `stripInternal` (#5878) (Boshen) +- dfbde2c isolated_declarations: Print jsdoc comments (#5858) (Boshen) +- 3230ae5 semantic: Add `SemanticBuilder::with_excess_capacity` (#5762) (overlookmotel) + +### Bug Fixes + +- 127c881 napi/transform: Fix jsdoc links (#5886) (Boshen) +- 6c04fa1 napi/transform: Make isolated_declaration options optional (#5880) (Boshen) + ## [0.29.0] - 2024-09-13 ### Bug Fixes diff --git a/napi/transform/Cargo.toml b/napi/transform/Cargo.toml index 7769da5d3d542..1a355355f563c 100644 --- a/napi/transform/Cargo.toml +++ b/napi/transform/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_transform_napi" -version = "0.29.0" +version = "0.30.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/npm/oxc-parser/package.json b/npm/oxc-parser/package.json index 724ea6e3c8bfb..6647526c76fa2 100644 --- a/npm/oxc-parser/package.json +++ b/npm/oxc-parser/package.json @@ -1,6 +1,6 @@ { "name": "oxc-parser", - "version": "0.29.0", + "version": "0.30.0", "description": "Oxc Parser Node API", "keywords": [ "Parser" @@ -22,4 +22,4 @@ "index.d.ts", "index.js" ] -} +} \ No newline at end of file diff --git a/npm/oxc-transform/package.json b/npm/oxc-transform/package.json index 17b1965381c16..30953ce049e45 100644 --- a/npm/oxc-transform/package.json +++ b/npm/oxc-transform/package.json @@ -1,6 +1,6 @@ { "name": "oxc-transform", - "version": "0.29.0", + "version": "0.30.0", "description": "Oxc transform Node API", "keywords": [ "transform" @@ -22,4 +22,4 @@ "index.d.ts", "index.js" ] -} +} \ No newline at end of file diff --git a/wasm/parser/package.json b/wasm/parser/package.json index 99106caac82d4..5a7d40c25c8d2 100644 --- a/wasm/parser/package.json +++ b/wasm/parser/package.json @@ -1,6 +1,6 @@ { "name": "@oxc-parser/wasm", - "version": "0.29.0", + "version": "0.30.0", "description": "Wasm target for the oxc parser.", "packageManager": "pnpm@9.9.0", "keywords": [