From 9e6cd33fed64a587fb9c2f4c83de6330dac60c47 Mon Sep 17 00:00:00 2001 From: Boshen <1430279+Boshen@users.noreply.github.com> Date: Wed, 4 Dec 2024 11:32:08 +0000 Subject: [PATCH] release(crates): v0.39.0 --- Cargo.lock | 42 +++++++------- Cargo.toml | 42 +++++++------- crates/oxc/CHANGELOG.md | 12 ++++ crates/oxc/Cargo.toml | 2 +- crates/oxc_allocator/CHANGELOG.md | 6 ++ crates/oxc_allocator/Cargo.toml | 2 +- crates/oxc_ast/CHANGELOG.md | 7 +++ crates/oxc_ast/Cargo.toml | 2 +- crates/oxc_ast_macros/Cargo.toml | 2 +- crates/oxc_cfg/Cargo.toml | 2 +- crates/oxc_codegen/CHANGELOG.md | 6 ++ crates/oxc_codegen/Cargo.toml | 2 +- crates/oxc_data_structures/CHANGELOG.md | 6 ++ crates/oxc_data_structures/Cargo.toml | 2 +- crates/oxc_diagnostics/Cargo.toml | 2 +- crates/oxc_ecmascript/CHANGELOG.md | 12 ++++ crates/oxc_ecmascript/Cargo.toml | 2 +- crates/oxc_estree/Cargo.toml | 2 +- crates/oxc_isolated_declarations/CHANGELOG.md | 7 +++ crates/oxc_isolated_declarations/Cargo.toml | 2 +- crates/oxc_mangler/Cargo.toml | 2 +- crates/oxc_minifier/CHANGELOG.md | 28 ++++++++++ crates/oxc_minifier/Cargo.toml | 2 +- crates/oxc_parser/CHANGELOG.md | 20 +++++++ crates/oxc_parser/Cargo.toml | 2 +- crates/oxc_regular_expression/Cargo.toml | 2 +- crates/oxc_semantic/CHANGELOG.md | 25 +++++++++ crates/oxc_semantic/Cargo.toml | 2 +- crates/oxc_span/CHANGELOG.md | 10 ++++ crates/oxc_span/Cargo.toml | 2 +- crates/oxc_syntax/CHANGELOG.md | 24 ++++++++ crates/oxc_syntax/Cargo.toml | 2 +- crates/oxc_transformer/CHANGELOG.md | 55 +++++++++++++++++++ crates/oxc_transformer/Cargo.toml | 2 +- crates/oxc_traverse/CHANGELOG.md | 15 +++++ crates/oxc_traverse/Cargo.toml | 2 +- napi/transform/CHANGELOG.md | 16 ++++++ napi/transform/Cargo.toml | 2 +- npm/oxc-parser/CHANGELOG.md | 6 ++ npm/oxc-parser/package.json | 2 +- npm/oxc-transform/package.json | 2 +- npm/oxc-types/CHANGELOG.md | 7 +++ npm/oxc-types/package.json | 2 +- wasm/parser/package.json | 2 +- 44 files changed, 329 insertions(+), 67 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8ca29a0ea3114..d32247277fa1a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1374,7 +1374,7 @@ checksum = "fb37767f6569cd834a413442455e0f066d0d522de8630436e2a1761d9726ba56" [[package]] name = "oxc" -version = "0.38.0" +version = "0.39.0" dependencies = [ "oxc_allocator", "oxc_ast", @@ -1436,7 +1436,7 @@ dependencies = [ [[package]] name = "oxc_allocator" -version = "0.38.0" +version = "0.39.0" dependencies = [ "allocator-api2", "bumpalo", @@ -1446,7 +1446,7 @@ dependencies = [ [[package]] name = "oxc_ast" -version = "0.38.0" +version = "0.39.0" dependencies = [ "bitflags 2.6.0", "cow-utils", @@ -1464,7 +1464,7 @@ dependencies = [ [[package]] name = "oxc_ast_macros" -version = "0.38.0" +version = "0.39.0" dependencies = [ "proc-macro2", "quote", @@ -1512,7 +1512,7 @@ dependencies = [ [[package]] name = "oxc_cfg" -version = "0.38.0" +version = "0.39.0" dependencies = [ "bitflags 2.6.0", "itertools", @@ -1525,7 +1525,7 @@ dependencies = [ [[package]] name = "oxc_codegen" -version = "0.38.0" +version = "0.39.0" dependencies = [ "assert-unchecked", "base64", @@ -1586,14 +1586,14 @@ dependencies = [ [[package]] name = "oxc_data_structures" -version = "0.38.0" +version = "0.39.0" dependencies = [ "assert-unchecked", ] [[package]] name = "oxc_diagnostics" -version = "0.38.0" +version = "0.39.0" dependencies = [ "oxc-miette", "rustc-hash", @@ -1601,7 +1601,7 @@ dependencies = [ [[package]] name = "oxc_ecmascript" -version = "0.38.0" +version = "0.39.0" dependencies = [ "num-bigint", "num-traits", @@ -1612,7 +1612,7 @@ dependencies = [ [[package]] name = "oxc_estree" -version = "0.38.0" +version = "0.39.0" dependencies = [ "serde", ] @@ -1628,7 +1628,7 @@ dependencies = [ [[package]] name = "oxc_isolated_declarations" -version = "0.38.0" +version = "0.39.0" dependencies = [ "bitflags 2.6.0", "insta", @@ -1728,7 +1728,7 @@ dependencies = [ [[package]] name = "oxc_mangler" -version = "0.38.0" +version = "0.39.0" dependencies = [ "itertools", "oxc_ast", @@ -1739,7 +1739,7 @@ dependencies = [ [[package]] name = "oxc_minifier" -version = "0.38.0" +version = "0.39.0" dependencies = [ "cow-utils", "insta", @@ -1787,7 +1787,7 @@ dependencies = [ [[package]] name = "oxc_parser" -version = "0.38.0" +version = "0.39.0" dependencies = [ "assert-unchecked", "bitflags 2.6.0", @@ -1863,7 +1863,7 @@ dependencies = [ [[package]] name = "oxc_regular_expression" -version = "0.38.0" +version = "0.39.0" dependencies = [ "oxc_allocator", "oxc_ast_macros", @@ -1897,7 +1897,7 @@ dependencies = [ [[package]] name = "oxc_semantic" -version = "0.38.0" +version = "0.39.0" dependencies = [ "assert-unchecked", "indexmap", @@ -1939,7 +1939,7 @@ dependencies = [ [[package]] name = "oxc_span" -version = "0.38.0" +version = "0.39.0" dependencies = [ "compact_str", "oxc-miette", @@ -1952,7 +1952,7 @@ dependencies = [ [[package]] name = "oxc_syntax" -version = "0.38.0" +version = "0.39.0" dependencies = [ "assert-unchecked", "bitflags 2.6.0", @@ -2010,7 +2010,7 @@ dependencies = [ [[package]] name = "oxc_transform_napi" -version = "0.38.0" +version = "0.39.0" dependencies = [ "napi", "napi-build", @@ -2022,7 +2022,7 @@ dependencies = [ [[package]] name = "oxc_transformer" -version = "0.38.0" +version = "0.39.0" dependencies = [ "base64", "compact_str", @@ -2055,7 +2055,7 @@ dependencies = [ [[package]] name = "oxc_traverse" -version = "0.38.0" +version = "0.39.0" dependencies = [ "compact_str", "itoa", diff --git a/Cargo.toml b/Cargo.toml index e575a459ab5fb..8aee27568f722 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -78,27 +78,27 @@ doc_lazy_continuation = "allow" # FIXME [workspace.dependencies] # publish = true -oxc = { version = "0.38.0", path = "crates/oxc" } -oxc_allocator = { version = "0.38.0", path = "crates/oxc_allocator" } -oxc_ast = { version = "0.38.0", path = "crates/oxc_ast" } -oxc_ast_macros = { version = "0.38.0", path = "crates/oxc_ast_macros" } -oxc_cfg = { version = "0.38.0", path = "crates/oxc_cfg" } -oxc_codegen = { version = "0.38.0", path = "crates/oxc_codegen" } -oxc_data_structures = { version = "0.38.0", path = "crates/oxc_data_structures" } -oxc_diagnostics = { version = "0.38.0", path = "crates/oxc_diagnostics" } -oxc_ecmascript = { version = "0.38.0", path = "crates/oxc_ecmascript" } -oxc_estree = { version = "0.38.0", path = "crates/oxc_estree" } -oxc_isolated_declarations = { version = "0.38.0", path = "crates/oxc_isolated_declarations" } -oxc_mangler = { version = "0.38.0", path = "crates/oxc_mangler" } -oxc_minifier = { version = "0.38.0", path = "crates/oxc_minifier" } -oxc_parser = { version = "0.38.0", path = "crates/oxc_parser" } -oxc_regular_expression = { version = "0.38.0", path = "crates/oxc_regular_expression" } -oxc_semantic = { version = "0.38.0", path = "crates/oxc_semantic" } -oxc_span = { version = "0.38.0", path = "crates/oxc_span" } -oxc_syntax = { version = "0.38.0", path = "crates/oxc_syntax" } -oxc_transform_napi = { version = "0.38.0", path = "napi/transform" } -oxc_transformer = { version = "0.38.0", path = "crates/oxc_transformer" } -oxc_traverse = { version = "0.38.0", path = "crates/oxc_traverse" } +oxc = { version = "0.39.0", path = "crates/oxc" } +oxc_allocator = { version = "0.39.0", path = "crates/oxc_allocator" } +oxc_ast = { version = "0.39.0", path = "crates/oxc_ast" } +oxc_ast_macros = { version = "0.39.0", path = "crates/oxc_ast_macros" } +oxc_cfg = { version = "0.39.0", path = "crates/oxc_cfg" } +oxc_codegen = { version = "0.39.0", path = "crates/oxc_codegen" } +oxc_data_structures = { version = "0.39.0", path = "crates/oxc_data_structures" } +oxc_diagnostics = { version = "0.39.0", path = "crates/oxc_diagnostics" } +oxc_ecmascript = { version = "0.39.0", path = "crates/oxc_ecmascript" } +oxc_estree = { version = "0.39.0", path = "crates/oxc_estree" } +oxc_isolated_declarations = { version = "0.39.0", path = "crates/oxc_isolated_declarations" } +oxc_mangler = { version = "0.39.0", path = "crates/oxc_mangler" } +oxc_minifier = { version = "0.39.0", path = "crates/oxc_minifier" } +oxc_parser = { version = "0.39.0", path = "crates/oxc_parser" } +oxc_regular_expression = { version = "0.39.0", path = "crates/oxc_regular_expression" } +oxc_semantic = { version = "0.39.0", path = "crates/oxc_semantic" } +oxc_span = { version = "0.39.0", path = "crates/oxc_span" } +oxc_syntax = { version = "0.39.0", path = "crates/oxc_syntax" } +oxc_transform_napi = { version = "0.39.0", path = "napi/transform" } +oxc_transformer = { version = "0.39.0", path = "crates/oxc_transformer" } +oxc_traverse = { version = "0.39.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 a4a5b0e267af4..7f3afcb0f5916 100644 --- a/crates/oxc/CHANGELOG.md +++ b/crates/oxc/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.39.0] - 2024-12-04 + +- 8a788b8 parser: [**BREAKING**] Build `ModuleRecord` directly in parser (#7546) (Boshen) + +### Features + +- 40792b4 napi/parser: Change parse API to accept mandatory `filename` and optional `lang` (#7605) (Boshen) +- 7c62a33 napi/parser: Return esm info (#7602) (Boshen) +- 5864352 napi/transform: Add `TransformerOptions::assumptions` (#7601) (翠 / green) +- 771c698 oxc: Remove `oxc_napi` crate (#7634) (Boshen) +- bd977cf oxc: Add `oxc_napi` crate (#7612) (Boshen) + ## [0.38.0] - 2024-11-26 - 5d65656 oxc_index: [**BREAKING**] Move to own repo github.com/oxc-project/oxc-index-vec (#7464) (Boshen) diff --git a/crates/oxc/Cargo.toml b/crates/oxc/Cargo.toml index ce6863bb5adc6..7926610e9fc67 100644 --- a/crates/oxc/Cargo.toml +++ b/crates/oxc/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc" -version = "0.38.0" +version = "0.39.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_allocator/CHANGELOG.md b/crates/oxc_allocator/CHANGELOG.md index c68b355bdc526..2e22a97bdc113 100644 --- a/crates/oxc_allocator/CHANGELOG.md +++ b/crates/oxc_allocator/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.39.0] - 2024-12-04 + +### Bug Fixes + +- 896ff86 minifier: Do not fold if statement block with lexical declaration (#7519) (Boshen) + ## [0.37.0] - 2024-11-21 ### Features diff --git a/crates/oxc_allocator/Cargo.toml b/crates/oxc_allocator/Cargo.toml index 2fbad6e6b47b8..cb4d1b07065d0 100644 --- a/crates/oxc_allocator/Cargo.toml +++ b/crates/oxc_allocator/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_allocator" -version = "0.38.0" +version = "0.39.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 b45582089d289..47c88ea6a7186 100644 --- a/crates/oxc_ast/CHANGELOG.md +++ b/crates/oxc_ast/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.39.0] - 2024-12-04 + +- b0e1c03 ast: [**BREAKING**] Add `StringLiteral::raw` field (#7393) (Boshen) + +### Features + + ## [0.38.0] - 2024-11-26 ### Features diff --git a/crates/oxc_ast/Cargo.toml b/crates/oxc_ast/Cargo.toml index cff291869b78f..f8d733e77cb83 100644 --- a/crates/oxc_ast/Cargo.toml +++ b/crates/oxc_ast/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_ast" -version = "0.38.0" +version = "0.39.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_ast_macros/Cargo.toml b/crates/oxc_ast_macros/Cargo.toml index ed131dc93b6c5..a57fd4b7f960c 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.38.0" +version = "0.39.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 4514743f7c728..d78e306966a22 100644 --- a/crates/oxc_cfg/Cargo.toml +++ b/crates/oxc_cfg/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_cfg" -version = "0.38.0" +version = "0.39.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 33cc69a25f917..da29ca12c61b8 100644 --- a/crates/oxc_codegen/CHANGELOG.md +++ b/crates/oxc_codegen/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.39.0] - 2024-12-04 + +### Bug Fixes + +- e787e9d codegen: Print parentheses correctly for ClassHeritage (#7637) (Boshen) + ## [0.38.0] - 2024-11-26 ### Bug Fixes diff --git a/crates/oxc_codegen/Cargo.toml b/crates/oxc_codegen/Cargo.toml index 70d05f89b2b0f..df6c02b1af304 100644 --- a/crates/oxc_codegen/Cargo.toml +++ b/crates/oxc_codegen/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_codegen" -version = "0.38.0" +version = "0.39.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_data_structures/CHANGELOG.md b/crates/oxc_data_structures/CHANGELOG.md index 2e8900d203fd2..09846e6ea90b4 100644 --- a/crates/oxc_data_structures/CHANGELOG.md +++ b/crates/oxc_data_structures/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.39.0] - 2024-12-04 + +### Features + +- defaf4b data_structures: Add `SparseStack::last_mut` method (#7528) (overlookmotel) + ## [0.37.0] - 2024-11-21 ### Features diff --git a/crates/oxc_data_structures/Cargo.toml b/crates/oxc_data_structures/Cargo.toml index 282025ba5f22e..6f9bc0af26ab3 100644 --- a/crates/oxc_data_structures/Cargo.toml +++ b/crates/oxc_data_structures/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_data_structures" -version = "0.38.0" +version = "0.39.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_diagnostics/Cargo.toml b/crates/oxc_diagnostics/Cargo.toml index 49e79fa1350da..e5aa770d9bdf1 100644 --- a/crates/oxc_diagnostics/Cargo.toml +++ b/crates/oxc_diagnostics/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_diagnostics" -version = "0.38.0" +version = "0.39.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_ecmascript/CHANGELOG.md b/crates/oxc_ecmascript/CHANGELOG.md index 25eb514511b6b..8257e23c0bd52 100644 --- a/crates/oxc_ecmascript/CHANGELOG.md +++ b/crates/oxc_ecmascript/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.39.0] - 2024-12-04 + +- b0e1c03 ast: [**BREAKING**] Add `StringLiteral::raw` field (#7393) (Boshen) + +### Features + +- 24189f2 ecma: Implement array join method (#6936) (7086cmd) + +### Testing + +- 9d6e14b ecmascript: Move tests to `oxc_minifier` due to cyclic dependency with `oxc_parser` (#7542) (Boshen) + ## [0.35.0] - 2024-11-04 ### Bug Fixes diff --git a/crates/oxc_ecmascript/Cargo.toml b/crates/oxc_ecmascript/Cargo.toml index 65e59de4bcfc4..30c8a5d946ca3 100644 --- a/crates/oxc_ecmascript/Cargo.toml +++ b/crates/oxc_ecmascript/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_ecmascript" -version = "0.38.0" +version = "0.39.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_estree/Cargo.toml b/crates/oxc_estree/Cargo.toml index 0ee08d35eb02a..91db22e075848 100644 --- a/crates/oxc_estree/Cargo.toml +++ b/crates/oxc_estree/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_estree" -version = "0.38.0" +version = "0.39.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 5351793e6751b..45805b1acec64 100644 --- a/crates/oxc_isolated_declarations/CHANGELOG.md +++ b/crates/oxc_isolated_declarations/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.39.0] - 2024-12-04 + +- b0e1c03 ast: [**BREAKING**] Add `StringLiteral::raw` field (#7393) (Boshen) + +### Features + + ## [0.38.0] - 2024-11-26 ### Refactor diff --git a/crates/oxc_isolated_declarations/Cargo.toml b/crates/oxc_isolated_declarations/Cargo.toml index 918b406b2ecdc..1a6272e429376 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.38.0" +version = "0.39.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/crates/oxc_mangler/Cargo.toml b/crates/oxc_mangler/Cargo.toml index c801cc40618f4..019a1416d608e 100644 --- a/crates/oxc_mangler/Cargo.toml +++ b/crates/oxc_mangler/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_mangler" -version = "0.38.0" +version = "0.39.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 f4c3e342644a8..2cd488e25ff7c 100644 --- a/crates/oxc_minifier/CHANGELOG.md +++ b/crates/oxc_minifier/CHANGELOG.md @@ -4,6 +4,34 @@ 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.39.0] - 2024-12-04 + +- f2f31a8 traverse: [**BREAKING**] Remove unsound APIs (#7514) (overlookmotel) + +- b0e1c03 ast: [**BREAKING**] Add `StringLiteral::raw` field (#7393) (Boshen) + +### Features + +- 97af341 minifier: Minify alternated one child if block (#7231) (7086cmd) +- ac0d25c minifier: Minify one child if statement expression (#7230) (Ethan Goh) + +### Bug Fixes + +- 896ff86 minifier: Do not fold if statement block with lexical declaration (#7519) (Boshen) + +### Performance + +- c133693 minifier: Fuse ast passes (#7493) (Boshen) + +### Refactor + +- 63a66cf minifier: Remove unused ast pass from DCE (#7540) (Boshen) +- 625a5ba minifier: Improve ast passes (#7518) (Boshen) + +### Testing + +- 9d6e14b ecmascript: Move tests to `oxc_minifier` due to cyclic dependency with `oxc_parser` (#7542) (Boshen) + ## [0.37.0] - 2024-11-21 ### Features diff --git a/crates/oxc_minifier/Cargo.toml b/crates/oxc_minifier/Cargo.toml index 352847c62ca4e..e0dd97fe8ac19 100644 --- a/crates/oxc_minifier/Cargo.toml +++ b/crates/oxc_minifier/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_minifier" -version = "0.38.0" +version = "0.39.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 1e5db53aff885..7f287cf33947e 100644 --- a/crates/oxc_parser/CHANGELOG.md +++ b/crates/oxc_parser/CHANGELOG.md @@ -4,6 +4,26 @@ 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.39.0] - 2024-12-04 + +- c2ced15 parser,linter: [**BREAKING**] Use a different `ModuleRecord` for linter (#7554) (Boshen) + +- 8a788b8 parser: [**BREAKING**] Build `ModuleRecord` directly in parser (#7546) (Boshen) + +- b0e1c03 ast: [**BREAKING**] Add `StringLiteral::raw` field (#7393) (Boshen) + +### Features + +- 33e5a49 syntax: Add statement span to `ImportEntry` and `ExportEntry` (#7583) (Boshen) + +### Refactor + +- b24beeb parser: Use `PropName` trait from `oxc_ecmascript` (#7543) (Boshen) +- f0e7acc syntax: Change `ModuleRecord::not_esm` to `has_module_syntax` (#7579) (Boshen) +- 18519de syntax: Remove `ModuleRecord::export_default` (#7578) (Boshen) +- d476660 syntax: Remove `ModuleRecord::exported_bindings_duplicated` because it is a syntax error (#7577) (Boshen) +- 17663f5 syntax: Remove `ModuleRecord::export_default_duplicated` because it is a syntax error (#7576) (Boshen) + ## [0.37.0] - 2024-11-21 - f059b0e ast: [**BREAKING**] Add missing `ChainExpression` from `TSNonNullExpression` (#7377) (Boshen) diff --git a/crates/oxc_parser/Cargo.toml b/crates/oxc_parser/Cargo.toml index 55cc1ce6f8c1b..848274eeec5c9 100644 --- a/crates/oxc_parser/Cargo.toml +++ b/crates/oxc_parser/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_parser" -version = "0.38.0" +version = "0.39.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 b24b27484adb3..4f07bc0f1b015 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.38.0" +version = "0.39.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 68956ff56cfed..fe82279bda0c0 100644 --- a/crates/oxc_semantic/CHANGELOG.md +++ b/crates/oxc_semantic/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.39.0] - 2024-12-04 + +- 0be5233 semantic: [**BREAKING**] Remove `ModuleRecord` from `Semantic` (#7548) (Boshen) + +- 8a788b8 parser: [**BREAKING**] Build `ModuleRecord` directly in parser (#7546) (Boshen) + +### Features + +- d2767be semantic: Syntax error for `delete object?.#a` (#7636) (Boshen) +- 206de91 semantic: Add `SymbolTable::add_resolved_reference` method (#7608) (overlookmotel) + +### Bug Fixes + +- 1486849 semantic: Syntax error for undeclared private field access (#7635) (Boshen) +- f3850eb semantic: Correctly resolve binding for return type of functions (#6388) (overlookmotel) + +### Refactor + +- d21448b semantic, transformer: Simplify `FxIndexMap` type aliases (#7524) (overlookmotel) + +### Testing + +- fed8327 semantic: Add a test for `UpdateExpression` (#7495) (Dunqing) +- 4b0720a semantic: Re-organize snapshot-based tests (#7494) (Dunqing) + ## [0.38.0] - 2024-11-26 - 27b2268 semantic: [**BREAKING**] Remove `SymbolFlags::Export` (#7414) (Dunqing) diff --git a/crates/oxc_semantic/Cargo.toml b/crates/oxc_semantic/Cargo.toml index 949cdca215fdb..7c8f8733077a7 100644 --- a/crates/oxc_semantic/Cargo.toml +++ b/crates/oxc_semantic/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_semantic" -version = "0.38.0" +version = "0.39.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 f46055c0cf98b..3e3aa24ddd850 100644 --- a/crates/oxc_span/CHANGELOG.md +++ b/crates/oxc_span/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.39.0] - 2024-12-04 + +### Bug Fixes + +- b553d6f span: Fix clippy warning (#7591) (overlookmotel) + +### Refactor + +- 823353a linter: Clean up APIs for `ModuleRecord` (#7556) (Boshen) + ## [0.36.0] - 2024-11-09 ### Features diff --git a/crates/oxc_span/Cargo.toml b/crates/oxc_span/Cargo.toml index bcc7248c85d3c..49765b8e943d9 100644 --- a/crates/oxc_span/Cargo.toml +++ b/crates/oxc_span/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_span" -version = "0.38.0" +version = "0.39.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 5faadc26338a9..b41fdf3d21558 100644 --- a/crates/oxc_syntax/CHANGELOG.md +++ b/crates/oxc_syntax/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.39.0] - 2024-12-04 + +- c2ced15 parser,linter: [**BREAKING**] Use a different `ModuleRecord` for linter (#7554) (Boshen) + +- 8a788b8 parser: [**BREAKING**] Build `ModuleRecord` directly in parser (#7546) (Boshen) + +### Features + +- 7c62a33 napi/parser: Return esm info (#7602) (Boshen) +- 33e5a49 syntax: Add statement span to `ImportEntry` and `ExportEntry` (#7583) (Boshen) + +### Performance + +- 4a98230 syntax: Use `FxDashMap` for exported bindings (#7525) (overlookmotel) + +### Refactor + +- 169b8bf linter, syntax: Introduce type alias `FxDashMap` (#7520) (overlookmotel) +- f0e7acc syntax: Change `ModuleRecord::not_esm` to `has_module_syntax` (#7579) (Boshen) +- 18519de syntax: Remove `ModuleRecord::export_default` (#7578) (Boshen) +- d476660 syntax: Remove `ModuleRecord::exported_bindings_duplicated` because it is a syntax error (#7577) (Boshen) +- 17663f5 syntax: Remove `ModuleRecord::export_default_duplicated` because it is a syntax error (#7576) (Boshen) +- 79014ff syntax: Clean up `ModuleRecord` (#7568) (Boshen) + ## [0.38.0] - 2024-11-26 - 27b2268 semantic: [**BREAKING**] Remove `SymbolFlags::Export` (#7414) (Dunqing) diff --git a/crates/oxc_syntax/Cargo.toml b/crates/oxc_syntax/Cargo.toml index f1e22850f9033..28c063a2547d4 100644 --- a/crates/oxc_syntax/Cargo.toml +++ b/crates/oxc_syntax/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_syntax" -version = "0.38.0" +version = "0.39.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 4538b31175adb..79e619eb6b0b7 100644 --- a/crates/oxc_transformer/CHANGELOG.md +++ b/crates/oxc_transformer/CHANGELOG.md @@ -4,6 +4,61 @@ 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.39.0] - 2024-12-04 + +- f2f31a8 traverse: [**BREAKING**] Remove unsound APIs (#7514) (overlookmotel) + +- b0e1c03 ast: [**BREAKING**] Add `StringLiteral::raw` field (#7393) (Boshen) + +### Features + +- a784a82 oxc_transformer: Support jsx pragma that are long member expressions (#7538) (IWANABETHATGUY) +- a23ce15 oxc_transformer: Replace_global_define for assignmentTarget (#7505) (IWANABETHATGUY) +- 3539f56 transformer/class-properties: Support for transforming `TaggedTemplateExpresssion` (#7504) (Dunqing) + +### Bug Fixes + +- 64f92e9 oxc_transform: Oxc dot define is postfix of some MemberExpr (#7640) (IWANABETHATGUY) +- 6af8659 oxc_transformer: Correct generate `ThisExpr` and `import.meta` in jsx pragma (#7553) (IWANABETHATGUY) +- 58a125f transformer/async-to-generator: Correct the `SymbolFlags` of function id in module (#7470) (Dunqing) +- eb825ed transformer/class-properties: Replace references to class name with temp var in static prop initializers (#7610) (overlookmotel) +- 0eadd9f transformer/class-properties: Create temp var for class where required (#7516) (overlookmotel) +- 199076b transformer/class-properties: Transform private property accesses in static prop initializers (#7483) (overlookmotel) +- 37842c1 transformer/object-rest-spread: Generate catch variable binding with correct `SymbolFlags` (#7469) (Dunqing) + +### Performance + +- 7ebe8c2 transformer: Use `FxDashMap` for browser query cache (#7521) (overlookmotel) +- 5ca6eea transformer/class-properties: Inline visitor methods (#7485) (overlookmotel) +- 3b1e63e transformer/jsx: No string comparisons generating pragma expression (#7620) (overlookmotel) + +### Documentation + +- 370d4b9 transformer/class-properties: Add missing docs (#7588) (overlookmotel) + +### Refactor + +- d21448b semantic, transformer: Simplify `FxIndexMap` type aliases (#7524) (overlookmotel) +- 7d1c12e transformer/class-properties: Rename misleadingly-named method (#7609) (overlookmotel) +- 802233d transformer/class-properties: Remove pointless method (#7592) (overlookmotel) +- a07f278 transformer/class-properties: `PrivatePropsStack` type (#7589) (overlookmotel) +- 7bd6350 transformer/class-properties: Move creating temp var out of main loop (#7587) (overlookmotel) +- ebd11fb transformer/class-properties: Exit `transform_class` faster if nothing to do (#7586) (overlookmotel) +- dccff38 transformer/class-properties: `ResolvedPrivateProp` type (#7532) (overlookmotel) +- 367b6c8 transformer/class-properties: `shortcut_static_class` take `SymbolId` (#7531) (overlookmotel) +- ab1214d transformer/class-properties: Rename `class_binding` (#7533) (overlookmotel) +- d5aaee7 transformer/class-properties: Remove defunct comments (#7527) (overlookmotel) +- 968863b transformer/class-properties: Move transform logic of `callee` of `CallExpression` to `transform_private_field_callee` (#7503) (Dunqing) +- 5261547 transformer/class-properties: Remove a branch from `transform_call_expression_impl` (#7507) (overlookmotel) +- 1c4b29c transformer/class-properties: Correct comments (#7506) (overlookmotel) +- 8ad52be transformer/jsx: `Pragma::parse` take a `&str` (#7619) (overlookmotel) +- ef62b9d transformer/react-refresh: Use `generate_uid_in_current_hoist_scope` to add hoisted binding (#7492) (Dunqing) + +### Testing + +- 71b3437 oxc_transformer: Define works differently with esbuild (#7593) (翠 / green) +- 2158c38 transformer/jsx: Move tests setup into a macro (#7618) (overlookmotel) + ## [0.38.0] - 2024-11-26 - bb2c0c2 transformer: [**BREAKING**] Return `String` as error instead of OxcDiagnostic (#7424) (Boshen) diff --git a/crates/oxc_transformer/Cargo.toml b/crates/oxc_transformer/Cargo.toml index ff8e8ab166d0a..6a21fc190e7d6 100644 --- a/crates/oxc_transformer/Cargo.toml +++ b/crates/oxc_transformer/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_transformer" -version = "0.38.0" +version = "0.39.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 97e8087e0e9c7..261080a66cf48 100644 --- a/crates/oxc_traverse/CHANGELOG.md +++ b/crates/oxc_traverse/CHANGELOG.md @@ -4,6 +4,21 @@ 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.39.0] - 2024-12-04 + +- f2f31a8 traverse: [**BREAKING**] Remove unsound APIs (#7514) (overlookmotel) + +### Features + +- 9c9deae traverse: Add `generate_uid_in_current_hoist_scope` method (#7423) (Dunqing) + +### Bug Fixes + + +### Documentation + +- 4d157c5 traverse: Document soundness hole (#7515) (overlookmotel) + ## [0.38.0] - 2024-11-26 ### Features diff --git a/crates/oxc_traverse/Cargo.toml b/crates/oxc_traverse/Cargo.toml index d191c9ab2833b..a1dd33aceab50 100644 --- a/crates/oxc_traverse/Cargo.toml +++ b/crates/oxc_traverse/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_traverse" -version = "0.38.0" +version = "0.39.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/napi/transform/CHANGELOG.md b/napi/transform/CHANGELOG.md index e23f04d7aa79f..d7772718dff27 100644 --- a/napi/transform/CHANGELOG.md +++ b/napi/transform/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.39.0] - 2024-12-04 + +### Features + +- 5864352 napi/transform: Add `TransformerOptions::assumptions` (#7601) (翠 / green) +- 771c698 oxc: Remove `oxc_napi` crate (#7634) (Boshen) +- bd977cf oxc: Add `oxc_napi` crate (#7612) (Boshen) + +### Bug Fixes + +- be2293a napi/transform: Respect `options.sourcemap` for id (#7590) (Kevin Deng 三咲智子) + +### Refactor + +- b4f3812 oxc_napi: Remove `source_map` - moved to its crate (#7614) (Boshen) + ## [0.38.0] - 2024-11-26 - bb2c0c2 transformer: [**BREAKING**] Return `String` as error instead of OxcDiagnostic (#7424) (Boshen) diff --git a/napi/transform/Cargo.toml b/napi/transform/Cargo.toml index f3793b80477b7..6a7cb38181427 100644 --- a/napi/transform/Cargo.toml +++ b/napi/transform/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "oxc_transform_napi" -version = "0.38.0" +version = "0.39.0" authors.workspace = true categories.workspace = true edition.workspace = true diff --git a/npm/oxc-parser/CHANGELOG.md b/npm/oxc-parser/CHANGELOG.md index f5491c12fa332..0ca27fb69c22e 100644 --- a/npm/oxc-parser/CHANGELOG.md +++ b/npm/oxc-parser/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.39.0] - 2024-12-04 + +### Refactor + +- b4f3812 oxc_napi: Remove `source_map` - moved to its crate (#7614) (Boshen) + ## [0.35.0] - 2024-11-04 ### Bug Fixes diff --git a/npm/oxc-parser/package.json b/npm/oxc-parser/package.json index 2b605015f19ef..44dfdcd941ab2 100644 --- a/npm/oxc-parser/package.json +++ b/npm/oxc-parser/package.json @@ -1,6 +1,6 @@ { "name": "oxc-parser", - "version": "0.38.0", + "version": "0.39.0", "description": "Oxc Parser Node API", "keywords": [ "Parser" diff --git a/npm/oxc-transform/package.json b/npm/oxc-transform/package.json index 04d019473672a..767741c1e47c7 100644 --- a/npm/oxc-transform/package.json +++ b/npm/oxc-transform/package.json @@ -1,6 +1,6 @@ { "name": "oxc-transform", - "version": "0.38.0", + "version": "0.39.0", "description": "Oxc transform Node API", "keywords": [ "transform" diff --git a/npm/oxc-types/CHANGELOG.md b/npm/oxc-types/CHANGELOG.md index 52e5bc30718b6..a832720312621 100644 --- a/npm/oxc-types/CHANGELOG.md +++ b/npm/oxc-types/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.39.0] - 2024-12-04 + +- b0e1c03 ast: [**BREAKING**] Add `StringLiteral::raw` field (#7393) (Boshen) + +### Features + + ## [0.37.0] - 2024-11-21 - f059b0e ast: [**BREAKING**] Add missing `ChainExpression` from `TSNonNullExpression` (#7377) (Boshen) diff --git a/npm/oxc-types/package.json b/npm/oxc-types/package.json index 66045a4a74cc7..05fc7a85eafac 100644 --- a/npm/oxc-types/package.json +++ b/npm/oxc-types/package.json @@ -1,6 +1,6 @@ { "name": "@oxc-project/types", - "version": "0.38.0", + "version": "0.39.0", "description": "Types for Oxc AST nodes", "keywords": [ "AST", diff --git a/wasm/parser/package.json b/wasm/parser/package.json index 95c32b676e817..2f5607c6eb741 100644 --- a/wasm/parser/package.json +++ b/wasm/parser/package.json @@ -1,6 +1,6 @@ { "name": "@oxc-parser/wasm", - "version": "0.38.0", + "version": "0.39.0", "description": "Wasm target for the oxc parser.", "keywords": [ "JavaScript",