swc-project
swc
Blog
Docs
Changelog
Blog
Docs
Changelog
Overview
Branches
Benchmarks
Runs
Performance History
Latest Results
Merge origin/main into kdy1/remove-ecma-lexer
kdy1:kdy1/remove-ecma-lexer
2 hours ago
refactor(es/lexer): remove smartstring dependency (#12013) **Description:** `smartstring` is archived and no longer maintained, but it was still used by the JSX entity readers in `swc_ecma_lexer` and `swc_ecma_parser` and by the `hstr` comparison benchmarks. This replaces the lexer buffers with the existing workspace dependency `compact_str::CompactString`, removes the obsolete `hstr` benchmark cases, and refreshes the root and standalone fixture/fuzz lockfiles so `smartstring` is no longer present in the repository dependency graph. JSX parsing behavior and public APIs are unchanged. Validation: - `cargo test -p swc_ecma_lexer -p swc_ecma_parser -p hstr` - `cargo check -p hstr --benches` - `cargo test -p swc_core -p swc_ecma_minifier -p swc_plugin_backend_tests` - `cargo fmt --all -- --check` - `cargo clippy --all --all-targets -- -D warnings` - `cargo tree -i smartstring --workspace --edges normal,dev` confirms the package is absent **Related issue:** Closes #11986
main
2 hours ago
test: verify v1 plugins with v2 host
kdy1:kdy1/swc-v2-parallel-packages
2 hours ago
refactor(es/parser): remove legacy lexer crate
kdy1:kdy1/remove-ecma-lexer
2 hours ago
refactor(es/lexer): remove smartstring dependency
kdy1/remove-smartstring
2 hours ago
fix(es/minifier): guard computed class keys in new functions Computed class element keys are evaluated while defining the class and can run in the surrounding constructor scope. The usage analyzer may not mark the outer constructor scope as using arguments for these keys, so the new-function argument cleanup must handle them explicitly. Bail out when the current constructor evaluation context may observe the constructor argument list through arguments, this, a referenced named function expression, new.target, or eval, including computed class keys and class heritage expressions. Add fixture and execution coverage for computed class key cases.
skku970412:fix-new-expr-useless-args-11684
12 hours ago
fix(es/minifier): guard new function param observability Default parameter initializers run before the constructor body and can observe the actual constructor argument list through new.target, this.constructor, or a referenced named function expression.\n\nInclude function parameters in the direct new-function constructor observability checks before dropping trailing pure extra arguments, and add fixture plus execution coverage for these parameter-default cases.
skku970412:fix-new-expr-useless-args-11684
13 hours ago
fix(es/minifier): guard new function arg observability Constructor calls can expose their actual argument list through the constructor function object in sloppy-mode code, for example through `this.constructor.arguments` or a referenced named function expression.\n\nTighten the direct new-function argument cleanup so it bails out when the constructor body may reach the current function object or dynamically observe invocation arguments. This includes lexical `arguments`, eval, with, `this`, referenced function-expression identifiers, new.target, rest parameters, and spread argument lists.\n\nAdd fixture and execution coverage for the observed argument-list cases.
skku970412:fix-new-expr-useless-args-11684
13 hours ago
Latest Branches
CodSpeed Performance Gauge
0%
refactor(es/parser): remove legacy lexer crate
#12014
2 hours ago
0d9a6de
kdy1:kdy1/remove-ecma-lexer
CodSpeed Performance Gauge
0%
feat: scaffold parallel SWC v2 npm API
#12015
2 hours ago
6cc187a
kdy1:kdy1/swc-v2-parallel-packages
CodSpeed Performance Gauge
0%
refactor(es/lexer): remove smartstring dependency
#12013
2 hours ago
a7aa2aa
kdy1/remove-smartstring
© 2026 CodSpeed Technology
Home
Terms
Privacy
Docs