Skip to content

Commit fb6b1b0

Browse files
authored
release(crates): oxc v0.125.0 (#21374)
### 💥 BREAKING CHANGES - 36cdc31 str: [**BREAKING**] Remove identity `FromIn` impl for `Ident` (#21251) (overlookmotel) - 382958a span: [**BREAKING**] Remove re-exports of string types from `oxc_span` crate (#21246) (overlookmotel) - c4aedfa str: [**BREAKING**] Add `static_ident!` macro (#21245) (overlookmotel) ### 🚀 Features - e7e1aea transformer/typescript: Add `optimize_enums` option for regular enum inlining (#20539) (Dunqing) - 679f57f transformer/typescript: Implement const enum inlining and declaration removal (#20508) (Dunqing) - 6dd061c semantic: Extend `MemberWriteTarget` to cover all property modification patterns (#21205) (Dunqing) - f134e24 minifier: Support `property_write_side_effects` option to drop unused property assignments (#20773) (Dunqing) - 75663c0 semantic: Add enum member value evaluation for const enum support (#20602) (Dunqing) - 3cfe8ed semantic: Add `MemberWriteTarget` flag to `ReferenceFlags` (#20772) (Dunqing) ### 🐛 Bug Fixes - af1a586 transformer/class-properties: Use correct property name when converting parameter properties (#21268) (Amal Jossy) - b43250a allocator: Move allocation tracking into `Bump` (#21342) (overlookmotel) - 36f505f allocator: `StringBuilder` use `Allocator::alloc_layout` (#21340) (overlookmotel) - 7a08a6f allocator: Fix allocation counting in `Allocator::alloc_concat_strs_array` (#21336) (overlookmotel) - 2338e28 ecmascript: Treat `this` as potentially having side effects (#21297) (sapphi-red) - bd8bd39 allocator: Remove unsafe hacks from `from_raw_parts` methods (#21283) (overlookmotel) - 8f4c340 allocator: Remove dangerous pointer const to mut cast (#21279) (overlookmotel) - aa9259f parser: Add missing error code for optional param diagnostic (#21258) (camc314) - 04b3c2f str: Fix unsound casting const pointers to mut pointers (#21242) (overlookmotel) - ceadf6c str: Make `Ident::from_raw` an unsafe function (#21241) (overlookmotel) - eab13b3 transformer/decorators: Avoid accessor storage name collisions (#21106) (Dunqing) - 07e8a30 transformer/react-refresh: Handle parenthesized variable initializers (#21047) (camc314) ### ⚡ Performance - c3ca6f6 allocator: `StringBuilder::from_strs_array_in` check for 0 length earlier (#21338) (overlookmotel) - c2422bb allocator: `Allocator::alloc_concat_strs_array` check for 0 length earlier (#21337) (overlookmotel) - 04b0fdc allocator: Mark `Allocator::alloc_layout` as `#[inline(always)]` (#21335) (overlookmotel) - 17aee9e allocator: Use `offset_from_unsigned` in `ChunkFooter::as_raw_parts` (#21280) (overlookmotel) - 61adedd minifier: Fix O(n²) perf on very many var decls (#21062) (Gunnlaugur Thor Briem) - addcd02 napi/parser, linter/plugins: Raw transfer deserializer for `Vec`s use shift instead of multiply where possible (#21142) (overlookmotel) - 3068ded napi/parser, linter/plugins: Shift before add when calculating positions in raw transfer deserializer (#21141) (overlookmotel) - eb400b8 napi/parser, linter/plugins: Remove `uint32` buffer view (#21140) (overlookmotel) - 2675085 napi/parser: Lazy deserialization use only `Int32Array` (#21139) (overlookmotel) - 5b35a53 napi/parser: Deserializing tokens use only `int32` array (#21138) (overlookmotel) - f163d10 parser: Tokens raw deserialization use `Int32Array` (#21137) (overlookmotel) - 7a86613 linter/plugins: Use `Int32Array`s for tokens and comments buffers (#21136) (overlookmotel) - 8c51121 napi/parser, linter/plugins: Raw transfer deserialize `Span` fields as `i32`s (#21135) (overlookmotel) - bc1bcdd napi/parser, linter/plugins: Inline trivial raw transfer field deserializers into node object definitions (#21134) (overlookmotel) - c0278ab napi/parser, linter/plugins: Use `Int32Array` in raw transfer deserializer (#21132) (overlookmotel) - 43482c7 linter/plugins: Use `>>` not `>>>` in binary search loops (#21129) (overlookmotel) ### 📚 Documentation - f5e1845 allocator: Upgrade headers in doc comments for `Bump` (#21263) (overlookmotel) - 2870174 allocator: Upper case `SAFETY` in comments (#21253) (overlookmotel) - 01bc269 str: Reformat `Ident` doc comments (#21240) (overlookmotel) - dd47359 allocator: Add doc comments for panics and errors (#21230) (overlookmotel)
1 parent c683279 commit fb6b1b0

File tree

61 files changed

+475
-251
lines changed

Some content is hidden

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

61 files changed

+475
-251
lines changed

Cargo.lock

Lines changed: 30 additions & 30 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -105,38 +105,38 @@ multiple_crate_versions = "allow"
105105

106106
[workspace.dependencies]
107107
# publish = true
108-
oxc = { version = "0.124.0", path = "crates/oxc" } # Main entry point
109-
oxc_allocator = { version = "0.124.0", path = "crates/oxc_allocator" } # Memory management
110-
oxc_ast = { version = "0.124.0", path = "crates/oxc_ast" } # AST definitions
111-
oxc_ast_macros = { version = "0.124.0", path = "crates/oxc_ast_macros" } # AST proc macros
112-
oxc_ast_visit = { version = "0.124.0", path = "crates/oxc_ast_visit" } # AST visitor pattern
113-
oxc_cfg = { version = "0.124.0", path = "crates/oxc_cfg" } # Control flow graph
114-
oxc_codegen = { version = "0.124.0", path = "crates/oxc_codegen", default-features = false } # Code generation
115-
oxc_compat = { version = "0.124.0", path = "crates/oxc_compat" } # Browser compatibility
116-
oxc_data_structures = { version = "0.124.0", path = "crates/oxc_data_structures" } # Shared data structures
117-
oxc_diagnostics = { version = "0.124.0", path = "crates/oxc_diagnostics" } # Error reporting
118-
oxc_ecmascript = { version = "0.124.0", path = "crates/oxc_ecmascript" } # ECMAScript operations
119-
oxc_estree = { version = "0.124.0", path = "crates/oxc_estree" } # ESTree format
120-
oxc_estree_tokens = { version = "0.124.0", path = "crates/oxc_estree_tokens" } # ESTree token conversion
121-
oxc_isolated_declarations = { version = "0.124.0", path = "crates/oxc_isolated_declarations" } # TS declaration generation
122-
oxc_jsdoc = { version = "0.124.0", path = "crates/oxc_jsdoc" } # JSDoc parsing
123-
oxc_mangler = { version = "0.124.0", path = "crates/oxc_mangler" } # Name mangling
124-
oxc_minifier = { version = "0.124.0", path = "crates/oxc_minifier" } # Code minification
125-
oxc_minify_napi = { version = "0.124.0", path = "napi/minify" } # Node.js minifier binding
126-
oxc_napi = { version = "0.124.0", path = "crates/oxc_napi" } # NAPI utilities
127-
oxc_parser = { version = "0.124.0", path = "crates/oxc_parser", features = [
108+
oxc = { version = "0.125.0", path = "crates/oxc" } # Main entry point
109+
oxc_allocator = { version = "0.125.0", path = "crates/oxc_allocator" } # Memory management
110+
oxc_ast = { version = "0.125.0", path = "crates/oxc_ast" } # AST definitions
111+
oxc_ast_macros = { version = "0.125.0", path = "crates/oxc_ast_macros" } # AST proc macros
112+
oxc_ast_visit = { version = "0.125.0", path = "crates/oxc_ast_visit" } # AST visitor pattern
113+
oxc_cfg = { version = "0.125.0", path = "crates/oxc_cfg" } # Control flow graph
114+
oxc_codegen = { version = "0.125.0", path = "crates/oxc_codegen", default-features = false } # Code generation
115+
oxc_compat = { version = "0.125.0", path = "crates/oxc_compat" } # Browser compatibility
116+
oxc_data_structures = { version = "0.125.0", path = "crates/oxc_data_structures" } # Shared data structures
117+
oxc_diagnostics = { version = "0.125.0", path = "crates/oxc_diagnostics" } # Error reporting
118+
oxc_ecmascript = { version = "0.125.0", path = "crates/oxc_ecmascript" } # ECMAScript operations
119+
oxc_estree = { version = "0.125.0", path = "crates/oxc_estree" } # ESTree format
120+
oxc_estree_tokens = { version = "0.125.0", path = "crates/oxc_estree_tokens" } # ESTree token conversion
121+
oxc_isolated_declarations = { version = "0.125.0", path = "crates/oxc_isolated_declarations" } # TS declaration generation
122+
oxc_jsdoc = { version = "0.125.0", path = "crates/oxc_jsdoc" } # JSDoc parsing
123+
oxc_mangler = { version = "0.125.0", path = "crates/oxc_mangler" } # Name mangling
124+
oxc_minifier = { version = "0.125.0", path = "crates/oxc_minifier" } # Code minification
125+
oxc_minify_napi = { version = "0.125.0", path = "napi/minify" } # Node.js minifier binding
126+
oxc_napi = { version = "0.125.0", path = "crates/oxc_napi" } # NAPI utilities
127+
oxc_parser = { version = "0.125.0", path = "crates/oxc_parser", features = [
128128
"regular_expression",
129129
] } # JS/TS parser
130-
oxc_parser_napi = { version = "0.124.0", path = "napi/parser" } # Node.js parser binding
131-
oxc_regular_expression = { version = "0.124.0", path = "crates/oxc_regular_expression" } # Regex parser
132-
oxc_semantic = { version = "0.124.0", path = "crates/oxc_semantic" } # Semantic analysis
133-
oxc_span = { version = "0.124.0", path = "crates/oxc_span" } # Source positions
134-
oxc_str = { version = "0.124.0", path = "crates/oxc_str" } # String types
135-
oxc_syntax = { version = "0.124.0", path = "crates/oxc_syntax" } # Syntax utilities
136-
oxc_transform_napi = { version = "0.124.0", path = "napi/transform" } # Node.js transformer binding
137-
oxc_transformer = { version = "0.124.0", path = "crates/oxc_transformer" } # Code transformation
138-
oxc_transformer_plugins = { version = "0.124.0", path = "crates/oxc_transformer_plugins" } # Transformer plugins
139-
oxc_traverse = { version = "0.124.0", path = "crates/oxc_traverse" } # AST traversal
130+
oxc_parser_napi = { version = "0.125.0", path = "napi/parser" } # Node.js parser binding
131+
oxc_regular_expression = { version = "0.125.0", path = "crates/oxc_regular_expression" } # Regex parser
132+
oxc_semantic = { version = "0.125.0", path = "crates/oxc_semantic" } # Semantic analysis
133+
oxc_span = { version = "0.125.0", path = "crates/oxc_span" } # Source positions
134+
oxc_str = { version = "0.125.0", path = "crates/oxc_str" } # String types
135+
oxc_syntax = { version = "0.125.0", path = "crates/oxc_syntax" } # Syntax utilities
136+
oxc_transform_napi = { version = "0.125.0", path = "napi/transform" } # Node.js transformer binding
137+
oxc_transformer = { version = "0.125.0", path = "crates/oxc_transformer" } # Code transformation
138+
oxc_transformer_plugins = { version = "0.125.0", path = "crates/oxc_transformer_plugins" } # Transformer plugins
139+
oxc_traverse = { version = "0.125.0", path = "crates/oxc_traverse" } # AST traversal
140140

141141
# publish = false
142142
oxc_formatter = { path = "crates/oxc_formatter" } # Code formatting

crates/oxc/CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,12 @@ 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).
66

7+
## [0.125.0] - 2026-04-13
8+
9+
### 🚀 Features
10+
11+
- 75663c0 semantic: Add enum member value evaluation for const enum support (#20602) (Dunqing)
12+
713
## [0.111.0] - 2026-01-26
814

915
### 💥 BREAKING CHANGES

crates/oxc/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "oxc"
3-
version = "0.124.0"
3+
version = "0.125.0"
44
authors.workspace = true
55
categories.workspace = true
66
edition.workspace = true

crates/oxc_allocator/CHANGELOG.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,29 @@ 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).
66

7+
## [0.125.0] - 2026-04-13
8+
9+
### 🐛 Bug Fixes
10+
11+
- b43250a allocator: Move allocation tracking into `Bump` (#21342) (overlookmotel)
12+
- 36f505f allocator: `StringBuilder` use `Allocator::alloc_layout` (#21340) (overlookmotel)
13+
- 7a08a6f allocator: Fix allocation counting in `Allocator::alloc_concat_strs_array` (#21336) (overlookmotel)
14+
- bd8bd39 allocator: Remove unsafe hacks from `from_raw_parts` methods (#21283) (overlookmotel)
15+
- 8f4c340 allocator: Remove dangerous pointer const to mut cast (#21279) (overlookmotel)
16+
17+
### ⚡ Performance
18+
19+
- c3ca6f6 allocator: `StringBuilder::from_strs_array_in` check for 0 length earlier (#21338) (overlookmotel)
20+
- c2422bb allocator: `Allocator::alloc_concat_strs_array` check for 0 length earlier (#21337) (overlookmotel)
21+
- 04b0fdc allocator: Mark `Allocator::alloc_layout` as `#[inline(always)]` (#21335) (overlookmotel)
22+
- 17aee9e allocator: Use `offset_from_unsigned` in `ChunkFooter::as_raw_parts` (#21280) (overlookmotel)
23+
24+
### 📚 Documentation
25+
26+
- f5e1845 allocator: Upgrade headers in doc comments for `Bump` (#21263) (overlookmotel)
27+
- 2870174 allocator: Upper case `SAFETY` in comments (#21253) (overlookmotel)
28+
- dd47359 allocator: Add doc comments for panics and errors (#21230) (overlookmotel)
29+
730
## [0.124.0] - 2026-04-06
831

932
### 🐛 Bug Fixes

crates/oxc_allocator/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "oxc_allocator"
3-
version = "0.124.0"
3+
version = "0.125.0"
44
authors.workspace = true
55
categories.workspace = true
66
edition.workspace = true

0 commit comments

Comments
 (0)