Skip to content

Commit d3fd7a9

Browse files
oxc-botBoshen
andauthored
release(crates): v0.47.0 (#8580)
## [0.47.0] - 2025-01-18 - fae4cd2 allocator: [**BREAKING**] Remove `Vec::into_string` (#8571) (overlookmotel) - 95bc0d7 allocator: [**BREAKING**] `Allocator` do not deref to `bumpalo::Bump` (#8569) (overlookmotel) - 19d3677 ast: [**BREAKING**] Always return `Array<ImportDeclarationSpecifier>` for `ImportDeclaration.specifiers` (#8560) (sapphi-red) - 4ce6329 semantic: [**BREAKING**] Ensure program outlives semantic (#8455) (Valentinas Janeiko) - 7066d1c ast, span, syntax, regular_expression: [**BREAKING**] Remove `ContentHash` (#8512) (overlookmotel) ### Features - bf4e5e1 allocator: Add `HashMap` (#8553) (overlookmotel) - a6d71f8 ast: Add `AstKind::ty` method (#8521) (overlookmotel) - 4d4e805 minifier: Collapse if stmt with empty consequent (#8577) (camc314) - 991a22f minifier: Fold `Array::concat` into literal (#8442) (sapphi-red) - 3dc2d8b minifier: Fold string concat chaining (#8441) (sapphi-red) - a4ae450 minifier: Fold array concat chaining (#8440) (sapphi-red) - 7cc81ef minifier: Fold invalid typeof comparisons (#8550) (camc314) - 927f43f minifier: Improve `.charCodeAt(arg)` when arg is valid (#8534) (Boshen) - 06f14d5 minifier: Remove empty class static block `class Foo { static {} }` (#8525) (Boshen) - 1860411 minifier: Remove last redundant return statement (#8523) (Boshen) - c479a58 napi/parser: Expose dynamic import expressions (#8540) (Boshen) - 2f0314e npm/oxc-minify: Npm package and publish script (#8579) (Boshen) - f413bb5 transformer/optional-chaining: Change parent scope for expression when it wrapped with an arrow function (#8511) (Dunqing) ### Bug Fixes - e87c001 allocator: Statically prevent memory leaks in allocator (#8570) (overlookmotel) - 855c839 codegen: Shorthand assignment target identifier consider mangled names (#8536) (Boshen) - 65c596d minifer: Keep idents if not in scope when minimizing array exprs (#8551) (camc314) - f57aac2 minifier: Incorrect folding of expr in bool ctx (#8542) (camc314) - 946ad76 minifier: `(-Infinity).toString()` -> `'-Infinity'` (#8535) (Boshen) - b1d0186 minifier: Do not fold `!!void b` (#8533) (Boshen) - 53adde5 minifier: `x['-2147483648']` -> `x[-2147483648]` (#8528) (Boshen) - 405b73d minifier: Do not change `delete undefined` to `delete void 0` (#8527) (Boshen) - 92e44cb minifier: Do not remove `undefined` in `var x = undefined` (#8526) (Boshen) - 209e313 minifier: `class C { ['-1']() {} }` cannot be minifized (#8516) (Boshen) - 6585463 minifier: Always keep the last value of sequence expression (#8490) (Boshen) - b552f5c transformer: `wrap_in_arrow_function_iife` take span of input `Expression` (#8547) (overlookmotel) - 9963533 transformer/arrow-functions: Visit arguments to `super()` call (#8494) (overlookmotel) - 06ccb51 transformer/async-to-generator: Move parameters to the inner generator function when they could throw errors (#8500) (Dunqing) - 356f0c1 transformer/class-properties: Handle nested `super()` calls (#8506) (overlookmotel) - a048337 transformer/class-static-blocks: Static block converted to IIFE use span of original block (#8549) (overlookmotel) ### Performance - 76ea52b allocator: Inline `Box` methods (#8572) (overlookmotel) - 93df57f allocator: `#[inline(always)]` methods of `Vec` which just delegate to `allocator_api2` (#8567) (overlookmotel) - 5a28d68 allocator: `#[inline(always)]` methods of `HashMap` which just delegate to `hashbrown` (#8565) (overlookmotel) - d17021c mangler: Optimize `base54` function (#8557) (overlookmotel) - 6b52d7a mangler: Use a single allocation space for temporary vecs (#8495) (Boshen) - 30a869e semantic: Use `oxc_allocator::HashMap` in `ScopeTree` (#8554) (overlookmotel) - 63eb298 span: Compare `Span`s as single `u64`s (#8300) (overlookmotel) - a43560c span: Hash `Span` as a single `u64` (#8299) (overlookmotel) - 3fff7d2 span: Align `Span` same as `usize` (#8298) (overlookmotel) - 53ef263 transformer/arrow-functions: Bail out of visiting early when inserting `_this = this` after `super()` (#8482) (overlookmotel) ### Documentation - fa1a6d5 allocator: Update docs for `Vec` (#8555) (overlookmotel) ### Refactor - ac05134 allocator: `String` type (#8568) (overlookmotel) - 68fab81 allocator: Rename inner `Vec` type (#8566) (overlookmotel) - fcbca32 ast: Rename `#[estree(with)]` to `#[estree(via)]` (#8564) (overlookmotel) - 007e8c0 ast, regular_expression: Shorten `ContentEq` implementations (#8519) (overlookmotel) - b4c87e2 linter: Move DiagnosticsReporters to oxlint (#8454) (Alexander S.) - 8f57929 minifier: Merge `try_compress_type_of_equal_string` into `try_minimize_binary` (#8561) (sapphi-red) - 2857ae1 parser: Refactor visitor in regexp example (#8524) (overlookmotel) - b5ed58e span: All methods take owned `Span` (#8297) (overlookmotel) - 712633f transformer: `wrap_statements_in_arrow_function_iife` utility function (#8548) (overlookmotel) - 5206c6a transformer: Rename `wrap_in_arrow_function_iife` (#8546) (overlookmotel) - 61077ca transformer: `wrap_arrow_function_iife` receive an owned `Expression` (#8545) (overlookmotel) - 6820d24 transformer: Move `wrap_arrow_function_iife` to root utils module (#8529) (Dunqing) - 52bd0b1 transformer: Move common utils functions to the root module (#8513) (Dunqing) - c30654a transformer/arrow-function: Wrapping arrow function iife by using `wrap_arrow_function_iife` (#8530) (Dunqing) - 2bc5175 transformer/arrow-functions: Rename method (#8481) (overlookmotel) - 72f425f transformer/class-properties: Fix lint warning in release mode (#8539) (overlookmotel) - 7e61b23 transformer/typescript: Shorten code (#8504) (overlookmotel) - 04bc259 traverse: Remove unnecessary `#[allow]` (#8518) (overlookmotel) - a368726 traverse: Harden soundness of `Traverse` and document safety invariants better (#8507) (overlookmotel) ### Testing - e0f5d6c minifier: Update esbuild test (Boshen) - 629c417 minifier: Port esbuild minification tests (#8497) (Boshen) Co-authored-by: Boshen <[email protected]>
1 parent 3d64cef commit d3fd7a9

File tree

49 files changed

+336
-74
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+336
-74
lines changed

Cargo.lock

+23-23
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

+23-23
Original file line numberDiff line numberDiff line change
@@ -79,29 +79,29 @@ doc_lazy_continuation = "allow" # FIXME
7979

8080
[workspace.dependencies]
8181
# publish = true
82-
oxc = { version = "0.46.0", path = "crates/oxc" }
83-
oxc_allocator = { version = "0.46.0", path = "crates/oxc_allocator" }
84-
oxc_ast = { version = "0.46.0", path = "crates/oxc_ast" }
85-
oxc_ast_macros = { version = "0.46.0", path = "crates/oxc_ast_macros" }
86-
oxc_cfg = { version = "0.46.0", path = "crates/oxc_cfg" }
87-
oxc_codegen = { version = "0.46.0", path = "crates/oxc_codegen" }
88-
oxc_data_structures = { version = "0.46.0", path = "crates/oxc_data_structures" }
89-
oxc_diagnostics = { version = "0.46.0", path = "crates/oxc_diagnostics" }
90-
oxc_ecmascript = { version = "0.46.0", path = "crates/oxc_ecmascript" }
91-
oxc_estree = { version = "0.46.0", path = "crates/oxc_estree" }
92-
oxc_isolated_declarations = { version = "0.46.0", path = "crates/oxc_isolated_declarations" }
93-
oxc_mangler = { version = "0.46.0", path = "crates/oxc_mangler" }
94-
oxc_minifier = { version = "0.46.0", path = "crates/oxc_minifier" }
95-
oxc_napi = { version = "0.46.0", path = "crates/oxc_napi" }
96-
oxc_parser = { version = "0.46.0", path = "crates/oxc_parser" }
97-
oxc_parser_napi = { version = "0.46.0", path = "napi/parser" }
98-
oxc_regular_expression = { version = "0.46.0", path = "crates/oxc_regular_expression" }
99-
oxc_semantic = { version = "0.46.0", path = "crates/oxc_semantic" }
100-
oxc_span = { version = "0.46.0", path = "crates/oxc_span" }
101-
oxc_syntax = { version = "0.46.0", path = "crates/oxc_syntax" }
102-
oxc_transform_napi = { version = "0.46.0", path = "napi/transform" }
103-
oxc_transformer = { version = "0.46.0", path = "crates/oxc_transformer" }
104-
oxc_traverse = { version = "0.46.0", path = "crates/oxc_traverse" }
82+
oxc = { version = "0.47.0", path = "crates/oxc" }
83+
oxc_allocator = { version = "0.47.0", path = "crates/oxc_allocator" }
84+
oxc_ast = { version = "0.47.0", path = "crates/oxc_ast" }
85+
oxc_ast_macros = { version = "0.47.0", path = "crates/oxc_ast_macros" }
86+
oxc_cfg = { version = "0.47.0", path = "crates/oxc_cfg" }
87+
oxc_codegen = { version = "0.47.0", path = "crates/oxc_codegen" }
88+
oxc_data_structures = { version = "0.47.0", path = "crates/oxc_data_structures" }
89+
oxc_diagnostics = { version = "0.47.0", path = "crates/oxc_diagnostics" }
90+
oxc_ecmascript = { version = "0.47.0", path = "crates/oxc_ecmascript" }
91+
oxc_estree = { version = "0.47.0", path = "crates/oxc_estree" }
92+
oxc_isolated_declarations = { version = "0.47.0", path = "crates/oxc_isolated_declarations" }
93+
oxc_mangler = { version = "0.47.0", path = "crates/oxc_mangler" }
94+
oxc_minifier = { version = "0.47.0", path = "crates/oxc_minifier" }
95+
oxc_napi = { version = "0.47.0", path = "crates/oxc_napi" }
96+
oxc_parser = { version = "0.47.0", path = "crates/oxc_parser" }
97+
oxc_parser_napi = { version = "0.47.0", path = "napi/parser" }
98+
oxc_regular_expression = { version = "0.47.0", path = "crates/oxc_regular_expression" }
99+
oxc_semantic = { version = "0.47.0", path = "crates/oxc_semantic" }
100+
oxc_span = { version = "0.47.0", path = "crates/oxc_span" }
101+
oxc_syntax = { version = "0.47.0", path = "crates/oxc_syntax" }
102+
oxc_transform_napi = { version = "0.47.0", path = "napi/transform" }
103+
oxc_transformer = { version = "0.47.0", path = "crates/oxc_transformer" }
104+
oxc_traverse = { version = "0.47.0", path = "crates/oxc_traverse" }
105105

106106
# publish = false
107107
oxc_linter = { path = "crates/oxc_linter" }

crates/oxc/CHANGELOG.md

+7
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,13 @@ All notable changes to this package will be documented in this file.
44

55
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.
66

7+
## [0.47.0] - 2025-01-18
8+
9+
- 4ce6329 semantic: [**BREAKING**] Ensure program outlives semantic (#8455) (Valentinas Janeiko)
10+
11+
### Bug Fixes
12+
13+
714
## [0.42.0] - 2024-12-18
815

916
### Refactor

crates/oxc/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "oxc"
3-
version = "0.46.0"
3+
version = "0.47.0"
44
authors.workspace = true
55
categories.workspace = true
66
edition.workspace = true

crates/oxc_allocator/CHANGELOG.md

+29
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,35 @@ All notable changes to this package will be documented in this file.
44

55
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.
66

7+
## [0.47.0] - 2025-01-18
8+
9+
- fae4cd2 allocator: [**BREAKING**] Remove `Vec::into_string` (#8571) (overlookmotel)
10+
11+
- 95bc0d7 allocator: [**BREAKING**] `Allocator` do not deref to `bumpalo::Bump` (#8569) (overlookmotel)
12+
13+
### Features
14+
15+
- bf4e5e1 allocator: Add `HashMap` (#8553) (overlookmotel)
16+
17+
### Bug Fixes
18+
19+
- e87c001 allocator: Statically prevent memory leaks in allocator (#8570) (overlookmotel)
20+
21+
### Performance
22+
23+
- 76ea52b allocator: Inline `Box` methods (#8572) (overlookmotel)
24+
- 93df57f allocator: `#[inline(always)]` methods of `Vec` which just delegate to `allocator_api2` (#8567) (overlookmotel)
25+
- 5a28d68 allocator: `#[inline(always)]` methods of `HashMap` which just delegate to `hashbrown` (#8565) (overlookmotel)
26+
27+
### Documentation
28+
29+
- fa1a6d5 allocator: Update docs for `Vec` (#8555) (overlookmotel)
30+
31+
### Refactor
32+
33+
- ac05134 allocator: `String` type (#8568) (overlookmotel)
34+
- 68fab81 allocator: Rename inner `Vec` type (#8566) (overlookmotel)
35+
736
## [0.45.0] - 2025-01-11
837

938
### Features

crates/oxc_allocator/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "oxc_allocator"
3-
version = "0.46.0"
3+
version = "0.47.0"
44
authors.workspace = true
55
categories.workspace = true
66
edition.workspace = true

crates/oxc_ast/CHANGELOG.md

+24
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,30 @@ All notable changes to this package will be documented in this file.
44

55
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.
66

7+
## [0.47.0] - 2025-01-18
8+
9+
- 19d3677 ast: [**BREAKING**] Always return `Array<ImportDeclarationSpecifier>` for `ImportDeclaration.specifiers` (#8560) (sapphi-red)
10+
11+
- 7066d1c ast, span, syntax, regular_expression: [**BREAKING**] Remove `ContentHash` (#8512) (overlookmotel)
12+
13+
### Features
14+
15+
- a6d71f8 ast: Add `AstKind::ty` method (#8521) (overlookmotel)
16+
17+
### Bug Fixes
18+
19+
- 855c839 codegen: Shorthand assignment target identifier consider mangled names (#8536) (Boshen)
20+
21+
### Performance
22+
23+
- 3fff7d2 span: Align `Span` same as `usize` (#8298) (overlookmotel)
24+
25+
### Refactor
26+
27+
- ac05134 allocator: `String` type (#8568) (overlookmotel)
28+
- fcbca32 ast: Rename `#[estree(with)]` to `#[estree(via)]` (#8564) (overlookmotel)
29+
- 007e8c0 ast, regular_expression: Shorten `ContentEq` implementations (#8519) (overlookmotel)
30+
731
## [0.46.0] - 2025-01-14
832

933
- 7eb6ccd ast: [**BREAKING**] Remove unused and not useful `ContentHash` (#8483) (Boshen)

crates/oxc_ast/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "oxc_ast"
3-
version = "0.46.0"
3+
version = "0.47.0"
44
authors.workspace = true
55
categories.workspace = true
66
edition.workspace = true

crates/oxc_ast_macros/CHANGELOG.md

+7
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,13 @@ All notable changes to this package will be documented in this file.
44

55
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.
66

7+
## [0.47.0] - 2025-01-18
8+
9+
- 7066d1c ast, span, syntax, regular_expression: [**BREAKING**] Remove `ContentHash` (#8512) (overlookmotel)
10+
11+
### Features
12+
13+
714
## [0.38.0] - 2024-11-26
815

916
### Features

crates/oxc_ast_macros/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "oxc_ast_macros"
3-
version = "0.46.0"
3+
version = "0.47.0"
44
authors.workspace = true
55
categories.workspace = true
66
edition.workspace = true

crates/oxc_cfg/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "oxc_cfg"
3-
version = "0.46.0"
3+
version = "0.47.0"
44
authors.workspace = true
55
categories.workspace = true
66
edition.workspace = true

0 commit comments

Comments
 (0)