[[email protected]] - 2025-04-23
[[email protected]] - 2025-04-21
[[email protected]] - 2025-04-18
-
(es/minifier) Use bigflags to reduce context size of analyzer (#10380) (773d19c)
-
(es/minifier) Use
bitflags
to reduce context size ofInfectionCollector
(#10387) (126d432) -
(es/minifier) Use
bitflags
to reduce compress context size (#10381) (99495bd) -
(es/parser) Move
found_module_item
toParser
(#10388) (fd52c5c)
[[email protected]] - 2025-04-15
-
(bindings/core) Enhance existing parse function to accept both string and buffer types(#10371) (c9a2afc)
-
(css/prefixer) Fix default implementation (#10351) (34f4e41)
[[email protected]] - 2025-04-14
-
(es/helpers) Sync tslib
_ts_generator
implementation (#10366) (d3fb992) -
(es/proposal) Fix scope of declarations for
explicit-resource-management
(#10362) (eb7f7e9)
-
(es/parser) Add initial capacitity for some vectors (#10361) (7b7b50e)
-
(es/parser) Reduce clone of token contexts (#10364) (3ab47b2)
-
(es/parser) Use
bitflags
to reduce parser context size (#10367) (a2d3596) -
(es/parser) Replace byte arguments with generics (#10370) (68f7667)
-
(es/parser) Use
arrayvec
and unsafepush
to optimize escaped string parsing (#10369) (e12ae1c)
[[email protected]] - 2025-04-11
[[email protected]] - 2025-04-11
[[email protected]] - 2025-04-10
-
(error_reporters) Removing unused code to fix clippy check (#10338) (5970f93)
-
(es/minifier) Preserve block with block scoped declaration (#10335) (a4ac3b7)
-
(es/parser) Allow abstract method named
accessor
(#10327) (3f71776) -
(es/preset-env) Consider
browserslist
config ifenv.target
is not configured (#8921) (a2dc372) -
fix(es/compat): Remove one promise tick in yield* (tc39/ecma262#2819) (#10317)
Related issue:
-
(errors) Integrate
miette
for enhanced diagnostic reporting (#10241) (156c3b1) -
(es/codegen) Support
sourceMap.url
option ofterser
(#10346) (566bc7c)
-
(es/ast) Reduce redundant string comparison for
Atom
s (#10323) (3ce9d81) -
(es/jsx) Cache FileName for JSX pass (#9951) (#10322) (9852940)
-
(es/parser) Remove redundant
is_ascii
calls (#10334) (e66b4d6)
[[email protected]] - 2025-04-07
[[email protected]] - 2025-04-04
-
(bindings/node) Fix build on platforms without plugin (#10301) (3faae55)
-
(es/codegen) Ensure proper Unicode escape handling for ES5 and below #10028 (#10309) (7f76fa3)
-
(node) Fix
worker_threads
issue on glibc platform (#10306) (1d1ff9e)
-
(es/codegen) Split
lib.rs
into multiple files (#10304) (5a07a5d) -
(es/codegen) Refactor macro to inverse order (#10297) (78f907f)
[[email protected]] - 2025-03-31
-
(es) Add Rust plugin host part for analysis API (#10285) (d213a84)
-
(es) Add analysis API and refactor output API (#10288) (a53c60d)
-
(es/minifier) Merge expression with empty return (#10283) (c276a38)
-
(es/minifier) Optimize code generated by optional chaining (#10292) (0d88041)
-
(es/minifier) Support
reduce_escaped_newline
(#10232) (64fb286)
[[email protected]] - 2025-03-29
-
(es) Do not reuse
Compiler
forminify()
andtransform()
(#10273) (63bd8a1) -
(es/bugfix) Do not rename in non-ident-function (#10274) (48b6bdb)
-
(es/minifier) Remove unnecessary check when invoke IIFE (#10257) (6b75775)
-
(es/parser) Parser a program as a module with TLA in non-expression statement (#10287) (157c52a)
-
(html) Remove
async
fromminifyFragmentSync
(#10289) (7028457)
-
(es/minifier) Adjust parallelism threshold (#10260) (28cc6f6)
-
(es/minifier) Process
cons
andalt
ofIfStmt
in parallel (#10262) (ccb6eb8) -
(es/minifier) Move logic to the pure minifier (#10264) (7ecd807)
-
(es/minifier) Use
swc_par_iter
instead ofrayon
(#10267) (78e37a1)
[[email protected]] - 2025-03-24
[[email protected]] - 2025-03-23
-
(ts/fast-strip) Add start/end span information (#10251) (ab39a62)
-
(ts/fast-strip) Improve error message snippet (#10253) (f4f426c)
[[email protected]] - 2025-03-20
[[email protected]] - 2025-03-20
[[email protected]] - 2025-03-17
[[email protected]] - 2025-03-17
[[email protected]] - 2025-03-17
-
(es/minifier) Do not drop numbers incorrectly (#10211) (80ccd86)
-
(es/types) Add missing types for
jsc.transform.react.refresh
(#10206) (e71b000)
-
(es/minifier) Disable real-world benchmarks on CI (#10205) (c5f1cbe)
-
(es/minifier) Test only sizes for large inputs (#10208) (bec3e3e)
-
(es/minifier) Remove
full
tests with too large input (#10213) (99b590f)
[[email protected]] - 2025-03-15
-
(es/proposal) Fix declarations for
explicit-resource-management
(#10198) (99ba555) -
(typescript) Skip the body of ArrowExpr in type usage analysis (#10187) (9aca205)
-
(es/fast-parser) Implement the initial version (#10185) (44e7c39)
-
(ts/fast-strip) Throw js object instead of map (#10186) (2da0142)
[[email protected]] - 2025-03-12
-
(es/compat) Hoist
arguments
in object method while lowering async functions (#10167) (e764df2) -
(es/minifier) Check array inline for indexed with dynamic key (#10184) (c2fe4bf)
-
(es/fast-lexer) Use
memchr
forskip_line_comments
(#10173) (35194e3) -
(es/fast-lexer) Use SIMD properly for string literals (#10172) (be60338)
-
(es/fast-lexer) Add length-based fast path for keywords (#10176) (1f70af8)
-
(es/fast-lexer) Optimize memory layout of cursor (#10175) (aa20494)
-
(es/fast-lexer) Replace PHF with static keyword lookup table (#10181) (56d065e)
-
(es/fast-lexer) Optimize SIMD vector initialization with initialing
u8x16
once. (#10183) (435197c)
[[email protected]] - 2025-03-07
-
(es/fast-lexer) Optimize lexing of keywords (#10155) (fb610b0)
-
(es/fast-lexer) Make whitespace skipper use SIMD properly (#10158) (15ea059)
[[email protected]] - 2025-03-04
[[email protected]] - 2025-03-04
-
(es/minifier) Skip inlining if the referential identity of a function matters (#10123) (c08fe8d)
-
(es/minifier) Fix regression due to #10056 (#10134) (b145275)
-
(es/typescript) Remove empty statements that const enum decls are folded into (#10128) (7bea830)
-
(ts/fast-strip) Throw object consistently (#10122) (010ff2a)
[[email protected]] - 2025-02-27
[[email protected]] - 2025-02-27
[[email protected]] - 2025-02-27
[[email protected]] - 2025-02-27
[[email protected]] - 2025-02-27
[[email protected]] - 2025-02-27
-
(es/minifier) Inline before cost analysis (#10092) (1425b56)
-
(es/minifier) Remove needless
println
(b1e5b2d)
-
(es/minifier) Improve arrow function inlining cost analysis (#10093) (e74929c)
-
(es/resolver) Remove some vector allocations (#10101) (b65387a)
[[email protected]] - 2025-02-24
-
(error-reporters) Store diagnostics in
TransformOutput
(#10027) (52caf23) -
(es/loader) Fix the absolute path check when resolving modules (#10080) (a3894ae)
-
(es/types) Add
transform.verbatimModuleSyntax
(#10079) (a883cdc) -
(swc_common) Fix build with
swc_allocator/nightly
(#10067) (6a90b1f)
-
(es/ast) Add explicit
namespace
field to distinguish namespace and module declarations (#10023) (76c2cba) -
(es/ast) Add import attributes to
TsImportType
(#9796) (7d297be) -
(es/minifier) Make seq inliner inline into var without init (#10077) (c4a839b)
[[email protected]] - 2025-02-20
-
(deps) Update dependency swc-plugin-coverage-instrument to ^0.0.26 (#10051) (d3fbd21)
-
(swc_allocator) Remove
nightly
from default feature (#10058) (e78b9d1)
[[email protected]] - 2025-02-19
[[email protected]] - 2025-02-17
-
(typescript) Improve type inferring for undefined and null (#10038) (5059ece)
-
(typescript) Remove the usages of private members (#10037) (8410b59)
[[email protected]] - 2025-02-13
-
(es/minifier) Check assign target before merge assign cond (#10020) (6dab49a)
-
(es/parser) Preserve comment positions with leading semicolon (#10019) (c9937b6)
-
(swc_common) Fix panic with non-narrow chars with width != 2 (#10011) (f9f4cac)
-
(ts/fast-strip) Handle unsupported
module
keyword (#10022) (308f5d0)
[[email protected]] - 2025-02-08
[[email protected]] - 2025-02-06
-
(es/minifier) Dont't optimize swtich case before DCE (#9994) (afe21b5)
-
(es/parser, es/codegen) Handle trailing empty slots in array patterns (#9992) (1a87e76)
-
(es/minifier) Do not clone from
take_ident_of_pat_if_unused
(#10005) (dc3b46e) -
(es/minifier) Allocate in once from
mark_property_mutation
(#10004) (4a90e51) -
(es/minifier) Limit infection analysis by the entry size (#10006) (1a3a4b9)
[[email protected]] - 2025-02-05
[[email protected]] - 2025-02-05
[[email protected]] - 2025-02-03
[[email protected]] - 2025-02-03
[[email protected]] - 2025-02-01
[[email protected]] - 2025-01-29
-
(es/minifier) Make analyzer not call
collect_infects_from
recursively (#9924) (37616c3) -
(es/minifier) Skip complex inline operations if possible (#9972) (772cc30)
-
(es/minifier) Merge binding analyzer into infection analyzer (#9973) (ca8a71f)
[[email protected]] - 2025-01-27
[[email protected]] - 2025-01-27
-
(es/minifier) Avoid paren when compressing ternary (#9920) (9d6fe37)
-
(ts/fast-strip) More robust generic arrow handling (#9913) (f7faa7c)
-
(typescript) Allow references to the global Symbol in computed property names under
isolatedDeclarations
(#9869) (e4c1e03)
[[email protected]] - 2025-01-22
[[email protected]] - 2025-01-21
[[email protected]] - 2025-01-20
[[email protected]] - 2025-01-20
-
(es/minifier) Make character frequency analysis parallel (#9895) (ca2fd1e)
-
(es/minifier) Parallelize handling of class members (#9900) (ed74839)
-
(es/minifier) Adjust threshold for parallel char frequency calculation (#9901) (47ea8de)
-
(es/minifier) Do heavy operation only if required (#9902) (2687231)
[[email protected]] - 2025-01-19
[[email protected]] - 2025-01-17
[[email protected]] - 2025-01-16
[[email protected]] - 2025-01-16
-
(es/minifier) Add a way to profile minifier for real-world inputs (#9881) (9657294)
-
(es/minifier) Use
chili
forminify-all
example (#9885) (197f0bc)
[[email protected]] - 2025-01-15
[[email protected]] - 2025-01-13
-
(es/minifier) Make the first run of DCE more efficient (#9868) (7329824)
-
(es/renamer) Use
IndexSet
for rename queue (#9866) (f404720)
[[email protected]] - 2025-01-10
- Update the link to the team (0fcdc31)
[[email protected]] - 2025-01-09
[[email protected]] - 2025-01-07
[[email protected]] - 2025-01-07
[[email protected]] - 2025-01-06
[[email protected]] - 2025-01-06
-
(es/lints) Configure a benchmark for ES lints (#9833) (734ec21)
-
(es/minifier) Improve parallelism and cache friendliness (#9813) (f8dff56)
-
(es/minifier) Introduce
FastJsWord
andFastId
inswc_atoms
(#9826) (ef0ec38)
[[email protected]] - 2024-12-31
-
(es/minifier) Fix minification of
framer-motion
by checkingcons.termniates()
(#9818) (512c91f) -
(typescript) Fix wrong check for super class (#9822) (2307a4d)
-
Remove
Caused by: 'failed to parse'
from TS blank space (#9820) (aaeb0ab)
[[email protected]] - 2024-12-27
[[email protected]] - 2024-12-18
[[email protected]] - 2024-12-16
[[email protected]] - 2024-12-09
[[email protected]] - 2024-12-09
-
(es/compat) Fix marker for inlined helpers (#9776) (f54ec2c)
-
(es/minifier) Do not inline into the exact LHS (#9777) (985977b)
-
(es/resolver) Fix wrong syntax context of vars with the same names as catch params (#9786) (5a44c6b)
[[email protected]] - 2024-12-02
[[email protected]] - 2024-12-02
[[email protected]] - 2024-11-25
-
(@swc/types) Tsc build file ignored by npm (#9754) (14a5c1e)
-
(es) Source map
super(...args)
calls in injected constructors (#9745) (35b0ca0) -
(es/minifier) Drop
console
in optional chainings (#9759) (39271ad)
[[email protected]] - 2024-11-18
[[email protected]] - 2024-11-16
[[email protected]] - 2024-11-12
[[email protected]] - 2024-11-11
[[email protected]] - 2024-11-06
[[email protected]] - 2024-11-06
[[email protected]] - 2024-11-06
[[email protected]] - 2024-11-04
[[email protected]] - 2024-11-02
[[email protected]] - 2024-11-02
[[email protected]] - 2024-11-01
[[email protected]] - 2024-10-31
-
(es/resolver) Skip resolving lowercase
JSXIdentifiers
(#9686) (6ed1715) -
(es/types) Add
jsc.experimental.keepImportAssertions
to types (#9691) (4b4dcfa)
[[email protected]] - 2024-10-30
[[email protected]] - 2024-10-29
[[email protected]] - 2024-10-29
-
(es/minifier) Optimize switch with side effect and termination tests (#9677) (7344a63)
-
(es/parser) Ability to get script's potential module errors (#9682) (2bbd1e8)
[[email protected]] - 2024-10-26
[[email protected]] - 2024-10-24
-
(bindings) Update napi to handle string with
\0
(#9665) (8f45eaf) -
(bindings/node) Add
VisitTsPropertySignature
(#9670) (715c42c) -
(es/compat) Add missing visit children for
destructuring
(#9658) (32116a0) -
(es/renamer) Check
preserved
in normal renaming mode (#9666) (87b4e10) -
(wasm-typescript) Fix option types of functions (#9662) (4cbe33c)
[[email protected]] - 2024-10-17
[[email protected]] - 2024-10-17
[[email protected]] - 2024-10-15
-
(es) Run esnext transforms on esnext target (#9644) (8a19201)
-
(es/minifier) Check type of assignment target before merging assignments (#9617) (4436621)
-
(es) Introduce
runPluginFirst
for Wasm plugins (#9645) (3d3e434) -
(es/minifier) Support unary negate in
cast_to_number
(#9642) (88a2186)
[[email protected]] - 2024-10-12
-
(es/codegen) Emit space after div if rhs has leading comment (#9631) (f2be26e)
-
(es/lints) Correct the false positive error of TS2309 (#9635) (f74c1f3)
[[email protected]] - 2024-10-10
[[email protected]] - 2024-10-08
[[email protected]] - 2024-10-08
-
(es/minifier) Compress consecutive return statements properly (#9620) (8263da1)
-
(html/minifier) Fix HTML minifier TS types (#9615) (7b98bb5)
[[email protected]] - 2024-10-02
[[email protected]] - 2024-10-01
[[email protected]] - 2024-10-01
-
(ast) Add
archive(check_bytes)
to all relevant AST types (#9574) (185d6f5) -
(ci) FIx pattern for
actions/download-artifact
(ac7bd31) -
(cli) Exclude non-files from get_files_list (#9560) (85cc2bd)
-
(common) Do not use
adjust_mappings
fromsourcemap
crate (#9437) (563c162) -
(common) Use
SourceMap::adjust_mappings
in correct order (#9447) (05961eb) -
(es) Mark TypeScript nodes as reachable from
Evaluator
(#9440) (308e5ec) -
(es/codegen) Ensure decorators are emitted first in TS paramters (#9545) (47ef38d)
-
(es/codegen) Fix wrong sourcemap when there are new lines in tpl (#9578) (cf74382)
-
(es/codegen) Emit .d.ts when using --out-file (#9582) (3d9d641)
-
(es/compat) Init this in sub class constructor for async (#9446) (bfaf31b)
-
(es/compat) Handle label block in constructor (#9528) (c43dbad)
-
(es/compat) Skip
getter
andsetter
as FlowHelperfunction
do (#9580) (14cfd70) -
(es/decorator) Add support for private access expressions in legacy decorators (#9535) (62ed065)
-
(es/decorators) Fix metadata for accessors (#9444) (99738ef)
-
(es/minifier) Force rename synthesized identifiers (#9473) (c72b5f8)
-
(es/minifier) Mark LHS of for-in/of as update (#9474) (ac432c4)
-
(es/minifier) Track if a var is used with
in
(#9508) (7d6269e) -
(es/minifier) Iterate object properties in reverse direction while inlining property access (#9507) (f584ef7)
-
(es/minifier)
typeof
class should befunction
(#9522) (c7fdd6b) -
(es/minifier) Prevent removing side effects from accessing getter (#9530) (8513816)
-
(es/minifier) Avoid decl name when mangle with eval (#9546) (e2242c4)
-
(es/minifier) Check variable type while optimizing
+=
(#9575) (04016e9) -
(es/module) Rewrite import specifier in type declaration (#9577) (fc0ba2a)
-
(es/module) Fix
jsc.paths
using absolute paths with dots in a filename for an alias (#9595) (74e3d04) -
(es/parser) Fix failure of TS instantiation followed by satisfies (#9583) (77900d8)
-
(es/typescript) Correctly handle deep import chains (#9487) (50d70d3)
-
(es/typescript) Correctly handle ESM context (#9490) (fc0483c)
-
(es/typescript) Handle enum in single statement (#9532) (84b0043)
-
(html) Fix html binding (eefae1c)
-
(plugin) Don't panic when ast byte not match (#9562) (c36871a)
-
(bindings/html) Allow using
lightningcss
as minfiier (#9462) (74d6478) -
(es/common) Introduce pure
Span
andBytePos
to handle#__PURE__
(#9539) (f63a481) -
(es/decorators) Groundwork for stage 3 decorator (#9450) (238ba8b)
-
(es/minifier) Drop more patterns with
PURE
marker (#9478) (ede1a52)
-
(bindings/node) Fix type definition (64ec111)
-
(deps) Update rust crate arrayvec to v0.7.6 (#9436) (08dd948)
-
(es/codegen) Bump minimum required swc_allocator version to 0.1.8 (#9492) (5258763)
-
(html) Use
binding_html_node
instead ofhtml_node
(bdea5cb) -
(html) Fix publish action (f30fd4f)