507 KiB
Changelog
[unreleased]
Bug Fixes
- (es/parser) Fix parsing of generics (#6859) (60d9403)
Features
- (es/minifier) Improve compatibility of
arrows
withterser
(#6862) (d1687d8)
Miscellaneous Tasks
- (ci) FIx CI (#6861) (45cdfed)
[1.3.29] - 2023-01-26
Bug Fixes
- (plugin) Make
span_to_source
use dedicated function (#6853) (99d48e3)
Refactor
- (es/minifier) Merge
cond_init
withreassigned
(#6850) (55225cb)
[1.3.28] - 2023-01-24
Bug Fixes
-
(es/codegen) Fix codegen of string literals with
\x000
(#6838) (df70261) -
(es/minifier) Don't inline into
await
from sequential inliner (#6839) (21e1478)
Miscellaneous Tasks
- (ci) Make stale action to wait 30 days (#6828) (1ef2347)
Performance
- (es/minifier) Make pure function check
O(1)
(#6840) (58208ef)
Refactor
-
(es/preset-env) Use a const fn instead of a macro (#6844) (2fcab36)
-
(es/typescript) Remove unused code (#6830) (7205543)
[1.3.27] - 2023-01-17
Bug Fixes
-
(es/codegen) Skip space if jsx attrs is empty (#6823) (e9fdac2)
-
(es/compat) Ignore
this
in nested scopes inclasses
pass (#6796) (07676d5) -
(es/plugin) Fix starter template (#6815) (38fb70c)
-
(es/renamer) Handle rest params correctly (#6821) (ebce18b)
-
(es/transform) Apply
hygiene
andresolver
if minify is specified (#6793) (c145409)
Features
-
(css/parser) Normalize at-rules (#6705) (43e7519)
-
(es/ast) Add
EsNext
toEsVersion
(#6816) (ff78b8f) -
(es/helper) Use
require
to load polyfills and helpers in Script (#6778) (ad8d043) -
(es/minifier) Remove noop spreads (#6803) (8f683e3)
-
(es/quote) Allow using
Str
as a var (#6797) (224eff9) -
(es/renamer) Support
safari10
from the name mangler (#6801) (631dd78) -
(es/renamer) Rename synthesized identifiers even on
eval
(#6818) (82bd5c2)
Testing
-
(es) Enable execution tests for fixed issues (#6805) (e7ea054)
-
(es/compat) Add a test to verify parameters passs (#6792) (7dc5ccb)
-
(es/minifier) Add a test for an invalid issue (#6802) (a299fd0)
-
(es/preset-env) Add a test for a wrong issue (#6794) (b29aa5b)
[1.3.26] - 2023-01-11
Bug Fixes
-
(common) Mark
\r
as a line ending (#6752) (26a0c13) -
(es) Remove useless context (#6777) (ae3cfa7)
-
(es/codegen) Fix LineCol calculation of printed files (#6763) (2b503c1)
-
(es/codegen) Skip
lo
of a program if body is not empty (#6773) (3f0f664) -
(es/decorator) Fix type detection for template literal types (#6786) (bbfa97a)
-
(es/helpers) Make
_classPrivateFieldLooseBase
return receiver (#6770) (1d14760) -
(es/minifier) Make name mangler respect
toplevel
(#6774) (ec7e913) -
(es/minifier) Don't inline conditionally initialized vars (#6751) (336b1d8)
-
(es/minifier) Make AST compressor respect
toplevel
(#6775) (06770cf) -
(es/parser) Allow parsing
import.meta
as an expression (#6783) (ff8face)
Features
-
(es/minifier) Make name mangler understand block scoping (#6670) (a1ccc8a)
-
(es/minifier) Handle boolean in
Evaluator
(#6756) (8a6a1cb) -
(es/typescript) Support const modifier on type parameters (#6672) (019cf37)
Miscellaneous Tasks
- (ci) Fix CI action (#6772) (6d365de)
Testing
-
(es) Add a test for a fixed source map issue (#6768) (6c126da)
-
(es/module) Add a test for invalid issue (#6785) (0ef84e1)
[1.3.25] - 2023-01-05
Bug Fixes
-
(bindings/cli) Skip empty stdin in non tty environments (#6714) (0076418)
-
(cli) Use the
--source-maps
option (#6708) (24cd384) -
(es) Preserve license comments by default (#6703) (58700f2)
-
(es) Remove import statement canonicalization (#6716) (b451fa9)
-
(es) Fix wasm (#6755) (b46815a)
-
(es/compat) Fix syntax context of
async-to-generator
(#6741) (206c0db) -
(es/minifier) Fix usage counter to fix infinite loop (#6744) (88d40e8)
-
(es/parser) Fix priority of
>>>
(#6748) (65a0d3a) -
(es/plugin) Fix plugin starter template (#6723) (082dc21)
-
(es/react) Force refresh if code contains
@refresh reset
(#6749) (36b26d3) -
(es/utils) Fix detection of hoisting (#6738) (b5d31cc)
-
(preset-env) Update data (#6719) (d506c96)
Documentation
- (es) Fix example (#6743) (79afcb5)
Features
-
(bindings) Remove
swcx
from@swc/core
(#6720) (30dd65b) -
(css/parser) Normalize urange (#6704) (8af627d)
-
(css/prefixer) Support page break (#6693) (27a8b7e)
-
(css/prefixer) Support
clamp
(#6695) (1722428) -
(es/jest) Support chaining of jest function calls (#6747) (72fb606)
Miscellaneous Tasks
Performance
- (es/preset-env) Use
VisitMut
instead ofFold
for polyfill (#6734) (98da644)
Refactor
- (css/codegen) Do not use
raw
(#6674) (ebebd60)
[1.3.24] - 2022-12-21
Bug Fixes
-
(css/minifier) Don't remove custom variables with different case (#6655) (dd7280d)
-
(css/minifier) Fix a bug with a modern hash (#6664) (1d3e06a)
-
(es/helpers) Fix loose mode (#6691) (5016ebe)
-
(es/minifier) Abort IIFE invoker completely on eval (#6659) (bb9fab8)
-
(es/minifier) Don't inline invalid LHS into an update argument (#6680) (7e6ec8d)
-
(es/preset-env) Align polyfills with
@babel/plugin-polyfill-corejs3
(#6673) (5fed222)
Features
-
(css/compat) Support function notation (#6651) (39afc46)
-
(css/compat) Support
not
with multiple arguments (#6668) (352896f) -
(css/compat) Support
hwb
color (#6687) (b23cf50) -
(css/minifier) Compress alpha in a hex (#6653) (f6292e6)
-
(css/minifier) Improve compression of media at-rules (#6665) (2fd3ced)
-
(css/parser) Normalize hex colors (#6652) (b257d5d)
-
(css/parser) Normalize selector AST (#6657) (649438b)
-
(css/parser) Normalize declaration and important (#6663) (1fc97a7)
-
(css/parser) Normalize dimension (#6654) (3d3863d)
-
(css/parser) Normalize URL functions (#6675) (c01464e)
-
(css/parser) Normalize at-rule names (#6676) (7f8ba9c)
-
(css/parser) Normalize keyframe selectors (#6688) (d7a0524)
-
(css/parser) Normalize and improve function name (#6667) (2571070)
-
(css/prefixer) Support font-face format (#6644) (199ac74)
-
(css/prefixer) Support
word-wrap
(#6679) (46241b4) -
(css/prefixer) Support
place-*
properties (#6685) (d8df1b5) -
(css/prefixer) Support
overflow
(#6678) (1c7f003) -
(es/minifier) Improve simplification of
?.
(#6681) (707b1e3)
Miscellaneous Tasks
Performance
-
(css/prefixer) Use
JsWord
instead of&str
(#6658) (d27a270) -
(es/minifier) Use rope-like structure for the name mangler (#6661) (cb4173a)
Refactor
-
(css/compat) Merge nesting into the compiler (#6686) (1840e74)
-
(css/prefixer) Use
eq_ignore_span
(#6656) (d4660a4)
Testing
- (css/parser) Add a test (#6666) (87e1efd)
Build
- (bindings) Crash in GraalVM (#6689) (e7849db)
[1.3.23] - 2022-12-14
Bug Fixes
-
(css/minifier) Fix compressions of transform functions (#6617) (208fd55)
-
(css/minifier) Fix compression of timing functions (#6618) (59e8bf4)
-
(css/minifier) Fix minification of
@supports
at-rule (#6632) (d3fbfff) -
(es/codegen) Don't print trailing coma for a rest argument (#6610) (68d76af)
-
(es/codegen) Fix codegen of TypeScript mapped types (#6621) (5c53a74)
-
(es/fixer) Add correct parens to
OptChainExpr
inMemberExpr
(#6639) (be5ea7f) -
(es/minifier) Abort IIFE invoker on
eval
(#6478) (8b2e1d1) -
(es/minifier) Abort sequential inliner on optional chaining (#6637) (e4e4d6c)
-
(es/parser) Parse types in
CallExpression
inside templates (#6611) (c44f1d0) -
(html/parser) Fix parsing of CDATA in the svg context (#6620) (19c2ee5)
-
(node-swc) Add missing
const_to_let
to the type (#6615) (7e841a5)
Features
-
(css/compat) Add
Compiler
(#6626) (b3bbd74) -
(css/compat) Support custom media queries (#6625) (a5f7b4b)
-
(css/compat) Implement compat pass for media ranges (#6631) (704b3ce)
-
(css/compat) Support color with hex alpha (#6643) (fe06b80)
-
(css/minifier) Support
to
andfrom
withinitial
(#6613) (cb49fa6) -
(css/minifier) Remove adjacent identical declarations (#6619) (fb94694)
-
(css/prefixer) Prefix percentage with
opacity
(#6638) (2fee4d1) -
(css/prefixer) Support
display
(#6640) (c8b724f) -
(css/prefixer) Support nested calc (#6645) (5d0dc6e)
-
(dbg-swc) Kill
creduce
on drop (#6614) (2bf7805)
Miscellaneous Tasks
-
(atoms) Make
sort.sh
cross-platform (#6629) (3f469ff) -
(ci) Adjust upload of cli binaries (#6624) (81b352d)
-
(es/minifier) Expose
globals_defs
pass (#6633) (08ccb83)
Performance
-
(html/codegen) Reduce allocations (#6622) (bfdafdb)
-
(html/minifier) Reduce allocations (#6623) (7d3aa66)
Refactor
- (dbg-swc) Cleanup and document reducer (#6647) (b13a079)
Testing
- (es/minifier) Enable size tests created from
creduce
(#6646) (7f3e698)
[1.3.22] - 2022-12-09
Bug Fixes
-
(common) Fix handling of input source maps (#6561) (4af52c7)
-
(common) Fix
BytePos
->CharPos
calculations (#6574) (a203fdb) -
(css/parser) Fix recovery more for invalid component values in declaration value (#6560) (db1eb48)
-
(css/parser) Fix parsing of nested rules (#6563) (a1fe907)
-
(css/parser) Fix a small bug (#6591) (4de378c)
-
(css/parser) Avoid skipping extra whitespaces (#6592) (d8936ad)
-
(es/compat) Prepend generated
_loop
to the correct scope (#6604) (4c2d422) -
(es/parser) Fix
typeof
inTSCallSignatureDeclaration
(#6553) (aa28aa0) -
(es/parser) Fix parsing of JSX with ASI (#6577) (ad95ead)
-
(es/resolver) Reset
in_type
flag correctly (#6597) (29ba05d) -
(es/typescript) Strip inline type declarations (#6600) (fe0c651)
-
(node-swc) Sync types for
jsc.optimizer.globals
(#6603) (b97aa45) -
(xml/parser) Fix parsing of legacy document types (#6555) (cdf0d8a)
-
(xml/parser) Fix various bugs (#6566) (01232f0)
Features
-
(css/ast) Make AST intuitive (#6606) (b4eef53)
-
(css/plugin) Prepare Wasm plugins (#6567) (8cdc28c)
-
(css/plugin) Support Wasm plugin (#6568) (fa8f7b0)
-
(es/analyzer) Extract the analyzer from the minifier to a separate crate (#6586) (e1d01d8)
-
(html/parser) Improve lexer (#6543) (49b7e9e)
Miscellaneous Tasks
-
(ci) Add debug logs for cli binaries (#6556) (8083484)
-
(ci) Fix CI (#6558) (8587589)
-
(ci) Fix benchmark action (#6582) (d8adc58)
-
(ci) Fix benchmark action (#6596) (154c315)
-
(css/lexer) Fix typo (#6588) (f383836)
Performance
-
(css/ast) Reduce token size (#6569) (8633d27)
-
(css/codegen) Reduce allocations (#6599) (538d63e)
-
(css/minifier) Remove redundant clone (#6579) (70ac028)
-
(css/minifier) Remove more redundant clones (#6580) (4171ee7)
-
(css/minifier) Improve performance (#6583) (7895599)
-
(css/parser) Reduce clones and allocations (#6585) (6479670)
-
(css/parser) Reduce number of function calls (#6587) (252edb5)
-
(css/parser) Don't allocate for comparisons (#6593) (08b6eab)
-
(html/parser) Optimize usage of buffers (#6590) (d6e9613)
Refactor
-
(common) Cleanup source_map.rs (#6570) (b3ea52f)
-
(es/minifier) Remove unnecessary code (#6575) (586bfd5)
-
(xml/parser) Simplify logic for parsing elements (#6557) (85a03e7)
Testing
- (css/parser) Move vendor tests (#6564) (4d422b6)
[1.3.21] - 2022-11-30
Bug Fixes
-
(ci) Fix publish action for binaries (#6517) (2ac3201)
-
(es/minifier) Don't drop used variables from sequential inliner (#6520) (b394f9f)
-
(es/minifier) Make sequential inliner respect resolution order (#6509) (27ae59e)
-
(es/minifier) Use unsafe option for arrow => method (#6521) (9752b43)
-
(es/minifier) Don't convert a signed integer literal key to a numeric literal (#6529) (81224b5)
-
(html/parser) Fix parsing of cdata (#6534) (e3cbe7e)
Features
-
(common) Add contexts to the error messages (#6526) (b8fe04f)
-
(es/parser) Make error message helpful (#6535) (cb15721)
-
(es/preset-env) Update data (#6538) (ae63220)
-
(xml/parser) Parse cdata section (#6531) (7f8c4e0)
Miscellaneous Tasks
-
(bindings) Fix jemalloc on aarch64 (#6541) (d56b5a8)
-
(swc_core) Reexport more modules (#6548) (9b58cce)
Performance
- (common) Fix perf bug of sourcemap for inputs with multi-byte chars (#6523) (47908a4)
Refactor
- (css/parser) Canonicalize only if required (#6532) (251e98c)
Testing
-
(es/minifier) Add tests for preserving top-level directives (#6545) (8d8f150)
-
(es/transforms) Add tests about preserving top-level directives (#6518) (5ff87af)
-
(es/typescript) Migrate inline tests to fixture tests (#6546) (cddbc41)
-
(ts/compat) Migrate inline tests to fixture testing (#6475) (cc4646a)- general: Use correct extensions for fixture tests (#6539) (7ee86d1)
Build
- (cargo) Update
browerslist-rs
(#6547) (d730186)
[1.3.20] - 2022-11-26
Bug Fixes
-
(es/codegen) Preserve parens for
new
in optional chaining (#6484) (1ca281a) -
(es/minifier) Preserve classes with side effects in static fields (#6480) (8d906b4)
-
(es/react) Allow spread children (#6505) (90aa6c8)
-
(es/visit) Visit TypeScript satisfies expressions (#6511) (0cee0e1)
Features
- (es/codegen) Skip whitespaces for comments in minify mode (#6465) (08a9e21)
Miscellaneous Tasks
Performance
- (es/helpers) Improve fast-path for helper detection (#6502) (b3b5526)
Refactor
-
(binding/wasm) Use binding_macro (#6487) (d957aac)
-
(es) Remove settings related to
privateInObject
(#6468) (c57307d)
Build
- (publish) Upload cli binaries to github release (#6495) (4f8af16)
[1.3.19] - 2022-11-20
Bug Fixes
-
(es/compat) Fix consecutive optional call (#6461) (f7072db)
-
(es/lints) Revert check for reassignment to classes (#6472) (ca20d94)
-
(es/minifier) Preserve unused imported specifiers (#6458) (dabea71)
-
(es/minifier) Abort inliner on fn declarations used multiple time (#6473) (15ad2c2)
-
(es/minifier) Avoid dropping statements which has side-effects (#6476) (9154bbc)
-
(es/modules) Remove wrong check for
jsc.paths
(#6470) (072bd13) -
(es/parser) Fix parsing of regexp (#6469) (3e702b9)
-
(xml/parser) Fix parsing of comments (#6449) (3a0d98b)
Features
-
(es/minifier) Support script fully (#6455) (4d7b920)
-
(html/minifier) Remove empty script and style tags with attributes (#6447) (7441721)
-
(html/minifier) Use the latest
EsVersion
(#6453) (7f6bf59)
Refactor
- (bindings) Deprecate
jsvalue::*_serde
(#6462) (dd4b9e8)
[1.3.18] - 2022-11-16
Bug Fixes
-
(es/minifier) Fix code for dropping unreachable statements (#6429) (bb544ba)
-
(es/modules) Fix
jsc.paths
(#6454) (05d185d) -
(es/plugins/proxy) Adjust import with compile time flags (#6451) (f14b156)
-
(html/minifier) Fix script/style merging (#6443) (1dfd8ce)
-
(xml/parser) Fix parsing of pi (#6450) (6388920)
Features
- (css/parser) Add
parse_string_input
(#6441) (9600308)
[1.3.17] - 2022-11-15
Bug Fixes
-
(bindings) Revert #6436 (#6444) (948e35b)
-
(css/parser) Fix a bug with scope in block (#6402) (3d7545d)
-
(es/compat) Improve
destructuring
pass (#6412) (6728603) -
(es/compat) Fix span hygiene of function naming pass (#6345) (81a4bb3)
-
(es/minifier) Preserve op of the op-assignments in seq inliner (#6428) (5fd7ab8)
-
(es/minifier) Change the default of
mangle.toplevel
to false (#6439) (99934b0) -
(es/modules) Fix
jsc.paths
of.ts
imports (#6431) (9c9c3eb)
Miscellaneous Tasks
- (ci) Ensure to honor node package manager (#6437) (8ca3cc7)
Refactor
-
(bindings) Deprecate
JsValue::*_serde
(#6436) (1dd8b3d) -
(es/plugins) Simplify
read_result_*
(#6426) (7a1c2a1)
[1.3.16] - 2022-11-13
Bug Fixes
- (es/utils) Verify the name of an alias (#6423) (68ffc5b)
[1.3.15] - 2022-11-12
Bug Fixes
-
(css/parser) Fix parsing of
supports()
(#6333) (f483224) -
(css/parser) Fix parsing of
<general-enclosed>
(#6380) (d18eaf1) -
(es) Use
unresolved_mark
for preset-env (#6386) (156f370) -
(es/compat) Fix chained op-assignment of super properties (#6319) (064baa3)
-
(es/compat) Handle super access in a private static property (#6361) (6cc9e90)
-
(es/compat) Handle a nullish coalescing in a switch case (#6363) (2de45fb)
-
(es/compat) Fix
this
in computed class method names (#6364) (9820122) -
(es/fixer) Handle more expressions in postfix operator (#6359) (8123bf0)
-
(es/helpers) Fix import
_typeof
in__decorate
(#6377) (25333b9) -
(es/lints) Disallow reassignment to a class (#6362) (3793e83)
-
(es/modules) Preserve extensions (#6339) (91e863c)
-
(es/parser) Fix parsing of
await
(#6316) (28af15e) -
(es/parser) Fix parsing of TS
satisfies
expressions (#6354) (f6faeb3) -
(es/plugin) Print more details on pointer conversion failures (#6378) (b6c1cc4)
-
(es/resolver) Resolve interfaces correctly (#6387) (6b876c4)
-
(html/minifier) Fix merging of scripts (#6393) (a923e52)
Documentation
- (contributing) Change feature flags for running all tests (#6396) (6e443d4)
Features
-
(css/parser) Improve error recovery (#6336) (0bc682f)
-
(css/parser) Support new nesting spec (#6337) (e0967ef)
-
(es/utils) Use more unique names for aliases (#6399) (574502a)
-
(html/minifier) Improve merging of group elements (#6349) (34b3710)
-
(swc_core) Expose
swc_css_modules
(#6394) (26b21b1)
Miscellaneous Tasks
- (ci) Fix CI (#6340) (6094994)
Performance
Refactor
-
(css/parser) Avoid unnecessary checks (#6383) (4d49b9f)
-
(css/parser) Union input types (#6385) (434a765)
-
(css/parser) Skip whitespaces in correct places (#6382) (56bc6b8)
-
(css/parser) Refactor parser (#6395) (983ab91)
Testing
- (es/resolver) Add a test about hoisting of functions in a switch (#6341) (2513862)
[1.3.14] - 2022-11-03
Bug Fixes
-
(common) Remove
&mut
frombuild_source_map_from
(#6276) (47d7fca) -
(css/parser) Fix parsing of colors (#6260) (c3944ba)
-
(css/parser) Fix various issues (#6281) (2813acc)
-
(es/codegen) Preserve more parens (#6268) (c318446)
-
(es/compat) Fix
new.target
in a nested scope (#6296) (aa18612) -
(es/compat) Fix destructuring of an empty array (#6314) (3bea6f7)
-
(es/helpers) Fix
toArray
(#6318) (e34c25e) -
(es/lints) Fix
const-assign
in function expressions (#6294) (a27392a) -
(es/minifier) Don't ignore nullish coalescing (#6272) (8c1ac68)
-
(es/minifier) Don't inline regex for IIFEs (#6283) (4eab2ed)
-
(es/minifier) Fix infinite loop (#6300) (655f674)
-
(es/minifier) Don't drop an inlined parameter as a duplicate (#6293) (dd797f7)
-
(es/resolver) Change order for switch cases (#6317) (2737aea)
-
(es/typescript) Fix stack overflow (#6250) (28ec6e8)
-
(html/minifier) Merge style blocks (#6264) (028951c)
Features
-
(css/parser) Improve error reporting (#6274) (956d574)
-
(es) Support trailing commas in
.swcrc
(#6289) (244b0af) -
(es/minfiier) Compute more with sequential inliner (#6169) (743a1aa)
-
(es/minifier) Implement trivial optimizations (#6256) (5d52ae9)
-
(html/minifier) Handle
crossorigin
(#6261) (782da5c) -
(html/minifier) Merge
script
tags (#6273) (02f8d31)
Miscellaneous Tasks
-
(ci) Enforce clippy for all targets (#6299) (0967e8f)
-
(ci) Fix publish action (2737143)
-
(ci) Fix publish action (13b4d31)
-
(common) Switch to
new_debug_unreachable
(#6265) (2f61332)
Performance
- (html/parser) Refactor (#6313) (3a90657)
Refactor
-
(css/parser) Refactor more (#6251) (a0e4684)
-
(css/parser) Refactor even more (#6288) (6cafeb2)
-
(es) Accept custom instance of
Comments
(#6290) (1024a55) -
(html/parser) Refactor (#6267) (c255cfd)
Testing
-
(css/minifier) Fix fixture tester (#6222) (cd1319d)
-
(css/parser) Add tests for refactoring (#6262) (4c293f9)
-
(es) Enable tests for fixed issues (#6311) (5b02e24)
-
(es/compat) Add execution tests (#6312) (0f9d930)
-
(es/minifier) Add a test for
??
operator (#6282) (0376da7)
[1.3.11] - 2022-10-26
Bug Fixes
-
(css/parser) Add more error recovery (#6240) (6341554)
-
(es/minifier) Preserve
this
in more cases (#6226) (e9d421b) -
(es/minifier) Fix
collapse_vars
(#6235) (48bb0cc)
Features
-
(css/minifier) Merge rules (#6220) (8b6b9c0)
-
(es) Expose
unresolved_mark
(#6236) (0b267ed) -
(es/minifier) Respect options (#6245) (ec9a80a)
-
(es/minifier) Support more statements in seqential inliner (#6248) (86e265a)
-
(es/minifier) Inline a lazily initialized var if it's used once (#6237) (1cd7f61)
Miscellaneous Tasks
-
(bindings) Fix type (#6184) (2bafd53)
-
(ci) Fix publish action (3916886)
-
(es/minifier) Configure fuzzer (#6246) (d454488)
-
(es/parser) Typo (#6228) (61e63df)- general: Fix publish action (83c9850)
Refactor
-
(css/parser) Use new approach for parsing invalid tokens (#6224) (ac619e8)
-
(css/parser) Fix parsing of declarations (#6234) (e4fe840)
Testing
-
(es/minifier) Organize terser tests (#6247) (01edb4f)
-
(es/preset-env) Ensure custom transforms are working (#6227) (de03675)
Build
- (bindings) Revert jemallloc bump (#6241) (c28533f)
[1.3.10] - 2022-10-21
Bug Fixes
-
(css/codegen) Fix codegen of pseudo class selectors (#6186) (4fba0db)
-
(css/minifier) Don't touch
@supports
(#6199) (ac7cfa1) -
(es/compat) Fix super method call in loose mode (#6207) (0e2de30)
-
(es/minifier) Remove wrong rule (#6201) (842abd4)
-
(es/minifier) Fix detection of direct
eval
(#6215) (780b5de) -
(html/ast) Fix compilation (#6211) (1b0dad1)
-
(html/minifier) Avoid
;
at the end of js (#6188) (5571c0c) -
(html/minifier) Compress
exportparts
(#6187) (0ba464d) -
(html/minifier) Fix bugs of merging and removing metadata elements (#6200) (3546632)
Features
-
(css/ast) Support
@custom-media
at-rule (#6152) (d46a19b) -
(css/minifier) Handle nested
calc()
(#6153) (d4a733d) -
(es/compat) Support readonly and writeonly for private fields (#6182) (aefc11b)
-
(es/minifier) Make sequential inliner self-repeat (#6168) (3f0fcf4)
-
(es/minifier) Skip function declarations in sequential inliner (#6147) (f2e8f98)
-
(es/minifier) Merge functions using sequential inliner (#6148) (12443db)
-
(es/minifier) Mark more expressions as pure (#6204) (cc848db)
-
(html/ast) Add
raw
to comment tokens (#6202) (99ea286) -
(html/minifier) Merge identical metadata elements (#6183) (41093b0)
-
(html/minifier) Compress
javascript:
URLs (#6185) (8f00d1a) -
(html/minifier) Improve removal of redundant attributes (#6197) (aa3fab1)
Miscellaneous Tasks
Performance
-
(es/transforms) Exclude old inlining pass (#6203) (27896f4)
-
(html/ast) Use
Atom
forraw
(#6210) (420ba32) -
(html/parser) Improve performance a bit (#6213) (ba5d272)
Refactor
-
(css/ast) Refactor dashed ident (#6198) (6c170e5)
-
(css/parser) Improve project structure (#6110) (6e2e2ad)
-
(es/minifier) Don't create invalid nodes (#6191) (ea03ce1)
Testing
-
(css/minifier) Add tests for layer (#6221) (055bdcd)
-
(es/minifier) Add a test for a fixed issue (#6218) (725b118)
-
(html/parser) Update html5lib-test (#6156) (7a38fde)
-
(html/parser) Refactor tests to make
git
faster (#6158) (a4acc7a) -
(html/parser) Resolve TODOs (#6223) (6505c64)
Build
- (bindings) Update mimalloc (#6208) (8ab10f6)
[1.3.9] - 2022-10-17
Bug Fixes
-
(css/parser) Improve handling of math functions in at-rules (#6140) (26aeb18)
-
(es/codegen) Emit
readonly
forTsIndexSignature
(#6172) (083924c) -
(es/minifier) Fix ordering issue of analyzer (#6150) (6d0ca05)
-
(es/minifier) Consider function body cost while inlining function (#5342) (b40d486)
-
(es/minifier) Preserve
this
of tagged template literals (#6165) (aec5cda) -
(es/minifier) Don't create a numeric literal with
NaN
value (#6166) (2e153e5) -
(es/modules) Resolve
jsc.paths
for export alls (#6170) (82cca67) -
(es/parser) Fix parsing of arrow in cond (#6067) (0ca5ded)
-
(es/plugin) Disable SIMD (#6163) (899021e)
-
(es/plugin) Fix plugin on non
x86_64
(#6178) (cb8f350) -
(es/quote) Fix handling of template literals (#6157) (6502979)
-
(es/typescript) Don't generate class field for abstract properties (#6174) (9d93b6c)
Documentation
- (repo) Document maintenance (#6145) (f1bb365)
Features
-
(css/minifier) Handle zero in at-rules (#6155) (0f38e38)
-
(css/modules) Add a lifetime to config parameter (#6144) (1196d60)
-
(es/minifier) Ignore return value if a param of IIFE is not used (#6115) (d334c6e)
-
(es/utils) Add indexed API to the parallel helper (#6149) (6a42e51)
Miscellaneous Tasks
- general: Add lock action (55a836a)
Build
-
(es/plugin) Fix Wasm build (#6179) (7c40e44)
-
(es/plugin) Fix Wasm build, really (#6180) (ea4ae3d)
-
(es/plugin) Fix Wasm build (#6181) (d13a397)
[1.3.8] - 2022-10-14
Bug Fixes
-
(css/ast) Fix AST types for simple block (#6131) (e63fa28)
-
(css/modules) Fix parsing and refactor code (#6132) (39cfade)
-
(es/minifier) Preserve return values of recursive IIFE (#6142) (3d271e8)
Features
-
(css/minifier) Compute
calc
expressions (#5966) (205a317) -
(es/minifier) Enable
reduce_vars
by default (#6096) (fc5d8a5) -
(es/minifier) Merge assignments using sequential inliner (#6103) (5875298)
-
(es/minifier) Swap more binary expressions (#6134) (c37839f)
-
(es/minifier) Change default pass limit to 3 (#6138) (3a29bfe)
-
(es/minifier) Improve trivial rules (#6136) (ec0d6d5)
Miscellaneous Tasks
- (ci) Deny clippy warnings (#6126) (d6fd476)
Performance
- (atoms) Use thin pointer for
Atom
(#6135) (9c8ec0e)
Refactor
- (css/ast) Refactor AST types (#6124) (85b2188)
[1.3.7] - 2022-10-12
Bug Fixes
-
(css/ast) Fix AST types for namespace (#6112) (c765f0f)
-
(es/preset-env) Update data (#6106) (8d4d326)
-
(swc_core) Reexport
swc_css_compat
correctly (#6114) (5fd0e97)
Documentation
- (es/parser) Change file extension in TypeScript example (#6094) (ca67d52)
Features
-
(bindings) Apply
resolver
to the output ofparse
apis (#6118) (0cd8aee) -
(css/ast) Support
::highlight()
(#6109) (1938ed2) -
(css/ast) Add AST types for gradients (#6111) (6b3f4bb)
-
(css/codegen) Support lowercase case insensitivity (#6113) (a920997)
-
(dbg-swc) Remove comments from the output of
terser
(#6119) (8549c47) -
(es/minifier) Mark ref to fn as non-call in alias analyzer (#6088) (b0c5745)
-
(es/minifier) Inline more lazily initialized vars (#6089) (657e5b3)
-
(es/minifier) Enable
reduce_funcs
by default (#6097) (3c6cdbc) -
(es/minifier) Detect type of
.length
(#6120) (ad960c7) -
(es/minifier) Inline and remove vars in one pass (#6093) (5a23949)
-
(es/minifier) Inline pure array literal partially (#6099) (66196a6)
-
(swc_core) Reexport
swc_css_compat
(#6102) (16dc746)
Performance
- (atoms) Add more atoms (#6122) (7343cf3)
Testing
-
(css/prefixer) Verify old gradient syntax (#6121) (7e4d207)
-
(es/minifier) Organize terser tests (#6116) (6365acc)
Build
- (cargo) Remove unused deps (#6117) (27bda13)
[1.3.6] - 2022-10-08
Bug Fixes
- (es/minifier) Improve infection analysis (#6044) (c9427f1)
Documentation
- (es/minifier) Document assumptions (#6085) (d0418eb)
Features
-
(css/ast) Support
@container
at-rule (#6076) (0a61374) -
(css/ast) Support
<general-enclosed>
for@media
at-rules (#6082) (b71dd3e) -
(css/compat) Implement transform for nested css (#6077) (347d4b7)
-
(es/codegen) Remove the trailing comma of binding patterns (#6078) (8003dc8)
-
(es/minifier) Use
usage_count
in sequential inliner (#6071) (ac150c7) -
(es/minifier) Distinguish calls in alias analyzer (#6080) (9ce3df0)
-
(es/testing) Add an option to test sourcemap (#6079) (e6b1dd4)
-
(swc_core) Expose
swc_ecma_preset_env
(#6083) (4cde4f9)
Miscellaneous Tasks
- (common) Make
Mark::root
const fn (#6072) (047da86)
Performance
- (es/minifier) Remove double-visit of DCE (#6069) (e88c1c0)
[1.3.5] - 2022-10-06
Bug Fixes
-
(bindings) Fix type definitions (#6018) (8fea8ca)
-
(cli) Configure
GLOBALS
(#6061) (6cdb5ed) -
(es) Respect exclude option (#6054) (69da081)
-
(es/codegen) Improve performance of debug build (#6003) (8b31b65)
-
(es/compat) Fix handling of deep array pattern of object rest pass (#6035) (0c67a3a)
-
(es/compat) Fix handling of op-assignment in
generator
(#6036) (7554482) -
(es/minifier) Don't inline into nested scope (#6002) (2ee3ad0)
-
(es/minifier) Don't evaluate
String.fromCharCode
for non-ascii values (#6033) (197c4e2) -
(es/minifier) Don't skip unresolved identifiers (#6050) (c5fb774)
-
(es/minifier) Fix optimization of numeric keys (#6052) (e3b55e4)
-
(es/minifier) Fix analysis of var declaration after usage (#6043) (36d467e)
-
(es/minifier) Fix infection analysis of sequential inliner (#6053) (d65fba1)
-
(es/minifier) Mark
delete
as a property mutation (#6063) (38df597) -
(es/renamer) Use a separate scope for the name of
FnExpr
(#6008) (31ffd5a)
Features
-
(css/modules) Implement css modules (#6000) (2cce1c8)
-
(css/modules) Support
:local
and:global
(#6045) (10d0f8e) -
(css/modules) Support
:global
in@keyframes
(#6046) (51e935e) -
(es/compat) Support iterator protocol on loose mode (#6034) (80da098)
-
(es/minifier) Drop vars from sequential inliner (#5993) (286334c)
-
(es/minifier) Inline function calls in more cases (#6010) (61807ab)
-
(es/minifier) Ignore return values of ignored IIFEs (#6020) (2b62752)
-
(es/minifier) Clone trivial literals in sequential inliner (#6005) (877936f)
-
(es/minifier) Inline vars initialized before the declaration (#6027) (c485099)
-
(html/codegen) Add an option to keep quotes while minifying (#5996) (35da762)
Miscellaneous Tasks
-
(ci) Merge CI scripts (#5999) (10fb645)
-
(ci) Extract bot action to a separate repository (#6064) (39481c6)
-
(ci) Fix publish action by reverting #5969 (fee747d)- general: Update
README.md
(#6007) (185d6fe)
Performance
- (common) Split the mutex for the hygiene system (#6019) (5ea2d81)
Testing
- (es/minifier) Organize terser tests (#6015) (1aae503)
Build
-
(cargo) Introduce workspace deps (#5997) (af64217)
-
(cargo) Use workspace deps for internal pkg (#6001) (3204ac3)
-
(cargo) Dedup
indexmap
with known version (#6060) (fff4b9c)
[1.3.4] - 2022-09-30
Bug Fixes
-
(es/codegen) Align sourcemap with terser (#5657) (2ba8815)
-
(es/codegen) Fix codegen of a negative number (#5980) (bc2c0f4)
-
(es/compat) Fix the order of initialization for decorators on computed keys (#5964) (e410102)
-
(es/compat) Fix unrolling of arrays in
generator
(#5965) (1f892cd) -
(es/minifier) Fix skipping logic of sequential inliner (#5956) (9d19742)
-
(es/minifier) Fix analysis of parameters (#5954) (33a15c8)
-
(es/minifier) Fix analysis of nested function-like properties (#5963) (0fb2c1d)
-
(es/minifier) Preserve exports in DCE (#5973) (aff4ea5)
-
(es/minifier) Don't panic on jsx or ts (#5984) (0067f71)
-
(es/minifier) Remove print (af8236d)
-
(es/minifier) Remove wrong variable joiner pass (#5992) (f8358fb)
-
(es/parser) Allow
as
in destructuring assignment (#5948) (cdd69d0) -
(es/resolver) Use a separate mark for the name of
FnExpr
(#5959) (573418f) -
(es/testing) Remove cycle (d0e2e3c)
Features
-
(css/codegen) Minify idents (#5972) (b3a05a0)
-
(css/minifier) Remove duplicate
@counter-style
at-rules (#5970) (dfdad69) -
(dbg-swc) Add a size debugger for next.js (#5945) (b219fa2)
-
(es/minifier) Ignore more expressions in sequential inliner (#5961) (dcd516d)
-
(es/minifier) Evaluate more literals in comparison (#5976) (0e69890)
-
(es/minifier) Ignore more return values (#5981) (08f6e81)
-
(es/minifier) Drop more variables while invoking IIFE (#5987) (c411e5d)
-
(es/minifier) Improve fn-local analysis for better inlining (#5955) (1a11cfd)
-
(es/minifier) Invoke sequential inliner for inlined IIFEs (#5991) (aeb7f30)
Miscellaneous Tasks
-
(ci) Fix benchmark action (#5978) (f7128d2)
-
(es/transforms) Setup parallel benchmark (#5974) (8066d8f)
-
(html/minifier) Typo (#5995) (a716b40)
Performance
-
(css/minifier) Merge all passes (#5971) (7d7c2d3)
-
(es) Don't share
Globals
(#5975) (19131e1) -
(es/minifier) Optimize
MultiReplacer
(#5977) (e37bb55) -
(html/minifier) Improve performance (#5983) (6c08971)
Testing
-
(es/minifier) Categorize terser tests (#5960) (48cddc1)
-
(es/minifier) Remove mangle-only snapshots (#5979) (8c4873f)
-
(es/minifier) Add tests for benchmark files (#5986) (0cfc724)
-
(es/plugin) Reenable compat test (#5969) (ca38a70)
Build
- (rustc) Update rustc (#5943) (3c3529c)
[1.3.3] - 2022-09-23
Bug Fixes
-
(cli) Add missing comma (#5902) (ccca6d0)
-
(css/parser) Fix infinite loop about
@import
andlayer
(#5919) (10cdbed) -
(css/parser) Report an error for invalid
layer
in@import
(#5928) (64694dc) -
(es/minifier) Remove more pure calls (#5900) (83c7887)
-
(es/minifier) Fix analysis of assignments (#5924) (e303f7e)
-
(es/minifier) Prepend vars when dropping vars in a for loop initializer (#5930) (f222413)
-
(es/minifier) Track aliasing via assignments (#5940) (9764786)
Features
-
(css/minifier) Minify the name of
@keyframes
(#5894) (1dc5307) -
(css/parser) Parse more math functions in
@media
(#5904) (2bf2419) -
(es/minifier) Drop function identifier in a single pass (#5901) (aacf7aa)
-
(es/minifier) Collapse
let
without init (#5909) (19ce273) -
(es/minifier) Evaluate more expressions (#5926) (565bf31)
-
(es/minifier) Inline rest parameters of IIFE (#5929) (ac7b066)
-
(es/minifier) Improve analysis of reassignments (#5931) (e9c7041)
-
(es/minifier) Use char frequency data for property manglers (#5932) (5314ac5)
-
(es/minifier) Drop cycles in nested functions (#5933) (e16827c)
-
(es/minifier) Mangle labels (#5934) (7bcaaef)
-
(es/typescript) Support TS 4.9 (#5938) (5cddb4c)
-
(swc_core) Expose tty feature of
swc_common
ascommon_tty
(#5920) (72429d8)
Performance
-
(es) Optimize memory layout of AST (#5829) (1a182ef)
-
(es/minifier) Make more passes parallel (#5906) (6bbd3f4)
-
(es/minifier) Invoke DCE only before the first compression (#5907) (1df7243)
-
(es/minifier) Optimize analyzer (#5908) (a9873e5)
Testing
-
(es) Accept arguments (#5916) (fe40d83)
-
(es/minifier) Add a test for a wrong issue (#5923) (0b34bcb)
-
(es/minifier) Add an execution test for a fixed issue (#5925) (31711e7)
-
(es/minifier) Remove analysis snapshot (#5939) (93964a8)
[1.3.2] - 2022-09-19
Bug Fixes
-
(es/codegen) Drop the last comma in an array literal (#5877) (7d6d04b)
-
(es/compat) Fix handling of objects in generator (#5861) (006c7fb)
-
(es/minifier) Remove
fake_block
while calculating next scope (#5869) (991a34e) -
(es/minifier) Fix handling of
.toFixed
call without an argument (#5868) (90d311c) -
(es/minifier) Fix unicode handling (#5875) (c3fa96b)
-
(html/parser) Reflect the fix for a bug in spec (#5779) (57e9f9c)
Features
-
(es/minifier) Move assign with seq init into seq (#5847) (63fb0c4)
-
(es/minifier) Drop variable from the sequential inliner (#5896) (4e656af)
-
(es/plugin) Enable plugin for bytecheck flags (#5885) (2d4d04d)
-
(preset-env/base) Implement more traits for
BrowserData
andVersion
(#5879) (73c48a8) -
(swc_core) Enable
bytecheck
for plugin (#5878) (1ba151f)
Miscellaneous Tasks
- (ci) Reduce CI time (#5870) (9ca3966)- general: Update MSRV (#5856) (f3e0267)- general: Fix publish script (720b3e0)- general: Remove
.prettierrc.json
(#5895) (89f0a4c)
Performance
Refactor
- (es/ast) Apply rkyv-bytecheck flag (#5866) (092b728)- general: Refactor code using clippy (#5863) (dfb01bd)
Testing
-
(es/minifier) Add a test for a fixed issue (#5897) (0bbcfe1)
-
(es/modules) Add tests for
jsc.paths
(#5876) (0d492bf) -
(es/plugin) Add a noop plugin (#5892) (20d071b)
Build
- (bindings) Remove cargo patch (#5874) (355bb41)
[1.3.1] - 2022-09-14
Bug Fixes
-
(cli) Update the plugin template (#5824) (969ecde)
-
(css/minifier) Compress alpha (#5825) (b531410)
-
(css/minifier) Fix minification of universal selectors (#5826) (1803874)
-
(es/ast) Revert #5798 (#5798) (#5855) (4cde553)
-
(es/codegen) Remove redundant
;
after export default decl (#5851) (2b24642) -
(es/minifier) Don't replace parameters of IIFE if it's recursive (#5852) (a5f7b69)
-
(es/minifier) Preserve more side effects (#5853) (32f1806)
-
(es/modules) Improve compatibility with
cjs-module-lexer
(#5835) (bf75981) -
(es/parser) Keep comments of the RHS of a binary expression (#5812) (8adbe16)
-
(es/parser) Handle more
TS1185
(#5834) (10637b0) -
(swc_core) Fix reexport of
testing
(#5848) (c0da2e9)
Features
-
(css/minifier) Compress
@media
and@supports
(#5828) (211b0a9) -
(es/minifier) Extend inlining of identifiers to multi-usage (#5832) (8567a38)
-
(es/parser) Improve jsx lexer (#5805) (97729e5)
-
(swc_core) Export
swc_common/sourcemap
(#5818) (2819be5) -
(swc_core) Export testing utilities (#5839) (856d741)
Miscellaneous Tasks
- (ci) FIx publish action (#5857) (c2f25c9)
Performance
-
(atoms) Reduce size of
Atom
(#5831) (2400427) -
(css) Optimize memory layout of ast types (#5823) (4f119b2)
-
(css/minifier) Merge passes (#5820) (f523502)
-
(css/minifier) Merge more passes into the compressor (#5821) (4fa5a27)
-
(css/minifier) Merge passes and reduce clone (#5822) (9e81c26)
-
(es/minifier) Optimize usage of
IndexSet
(#5814) (704ea3d) -
(es/minifier) Make expression simplifier stateless and parallel (#5819) (cfe575e)
-
(es/minifier) Make the expression simplifier more parallel (#5841) (b6cf975)
-
(es/minifier) Reduce type sizes (#5843) (fe3072b)
-
(es/parser) Optimize memory layout (#5833) (10484ed)
-
(html/minifier) Improve performance (#5840) (b691fec)
-
(html/minifier) Improve performance (#5838) (ccd618c)
Refactor
- (es/ast) Apply rkyv-bytecheck flag (#5798) (37f42df)
Testing
- (es/transforms) Enable tests for fixed issues (#5845) (0284c1b)
Build
- (bindings) Use new llvm pass manager (#5816) (bb427c4)
[1.3.0] - 2022-09-10
Bug Fixes
-
(es) Use
paren_remover
pass (#5753) (9c998d4) -
(es/compat) Fix
generator
(#5796) (aa8672e) -
(node-swc) Fix the type definition of
jsc.paths
(#5811) (9d16293)
Features
- (es/minifier) Inline lazily initialized variables (#5737) (ee26337)
Performance
-
(css/codegen) Skip useless operations if not required (#5802) (b96eb1e)
-
(css/minifier) Setup benchmark (#5800) (88e59ff)
-
(css/minifier) Use
JsWord
instead of&str
(#5806) (7391cc9) -
(css/parser) Use ascii operations (#5808) (96cc888)
-
(css/parser) Remove needless branching (#5809) (91ed13e)
-
(css/parser) Skip whiltespace from lexer (#5810) (72a8b60)
-
(es/codegen) Skip useless operations if not required (#5803) (49942ca)
Refactor
-
(es/plugin) Fix lints (#5801) (2bbc9bd)
-
(es/renamer) Rename
PARALLEL
toMANGLE
(#5790) (21fbcb9) -
(swc_core) Enable bytechecked flag (#5792) (6f19f89)
Testing
-
(es) Enable tests for fixed issues (#5784) (f11461d)
-
(es) Add more execution tests (#5788) (097245a)
[1.2.249] - 2022-09-08
Bug Fixes
-
(es/minifier) Don't drop parameters in an exported function (#5757) (948d708)
-
(es/minifier) Fix analysis of assignments and classes (#5770) (90852f5)
-
(es/minifier) Fix calculation of character frequency (#5772) (32a73fb)
Features
-
(es/lexer) Recover from git merge conflict (#5775) (7deadd8)
-
(es/minifier) Align name mangler with terser (#5763) (60ce462)
-
(es/minifier) Change order of renaming to align with terser (#5780) (24b60d2)
Miscellaneous Tasks
-
(ci) Cleanup CI config (#5769) (1e8a58d)
-
(es/minifier) Fix size calculator script (#5767) (9d29abc)
-
(html/parser) Typo (#5778) (1b200a0)- general: Typo (#5758) (15e2357)
Performance
-
(es/minifier) Make
MultiReplacer
single-pass (#5761) (27e9254) -
(es/minifier) Make passes more parallel (#5773) (c2d1050)
-
(es/parser) Operate on
u8
(#5774) (c10d557)
Testing
-
(es/plugin) Add E2E test for the published plugins (#5771) (81ab8a2)
-
(es/tsc) Handle tsx (#5764) (52f6ca5)
[1.2.248] - 2022-09-06
Bug Fixes
-
(es/parser) Fix detection of wrong delete targets (#5754) (9fc6eda)
-
(swc_core) Update deps (#5746) (83dbe6c)
Miscellaneous Tasks
-
(es/minifier) Fix example (#5739) (4e98980)
-
(swc_core) Update deps (#5748) (1202762)- general: Fix publish action (f59d44e)
Performance
-
(bindings) Enable LTO (#5740) (49e0c71)
-
(es/minifier) Make passes more parallel (#5741) (2baa640)
-
(es/minifier) Pre-allocate in analyzer (#5743) (96b2e17)
-
(es/minifier) Use efficient logic for entry tracking in DCE (#5749) (08b2aea)
-
(es/minifier) Cache the list of bindings for DCE (#5750) (8789184)
-
(es/minifier) Improve codegen of name mangler (#5751) (6e2002a)
Refactor
- (es/utils) Move utilities for parallel processing (#5742) (64f42be)
[1.2.247] - 2022-09-04
Bug Fixes
-
(bundler) Handle star export with top-level
await
(#5707) (2b7cba8) -
(es/lexer) Drop
ClassExpr
context in object properties (#5729) (a3a7277) -
(es/parser) Improve error message (#5719) (383aa85)
-
(swc_core) Fix reexport of ES transforms (#5716) (9bef836)
-
(swc_core) Bump
swc_ecma_quote_macros
(#5723) (9c43713)
Features
-
(atoms) Introduce bytecheck-ed rkyv version (#5686) (d6e67b5)
-
(es/minifier) Relax function inline requirement (#5607) (4ef99f3)
-
(es/minifier) Make DCE single-pass (#5699) (8827c38)
-
(es/minifier) Support cycles in DCE (#5715) (5e151c8)
-
(es/minifier) Relax requirement for IIFE invokation (#5721) (5b2d024)
Performance
-
(es/minifier) Use faster hash algorithm for DCE (#5725) (25c96b4)
-
(es/minifier) Optimize precompress optimizer (#5727) (31c516a)
-
(es/minifier) Skip useless analysis if not required (#5733) (8963db0)
-
(es/minifier) Make rename operator parallel (#5732) (5936bd2)
-
(es/minifier) Make dead branch remover parallel (#5734) (6ba6da6)
Refactor
-
(swc_core) Use namespace
ecma
(#5713) (975cbfe) -
(swc_core) Directly export
swc_ecma_transforms_base
(#5731) (aad50dc)
[1.2.246] - 2022-09-01
Bug Fixes
-
(es/compat) Handle
yield
in block scoping pass (#5668) (4820f0c) -
(es/compat) Don't move variables from object-rest pass (#5673) (edef5f8)
-
(es/minifier) Don't inline variables declared multiple times (#5667) (fd39bb6)
-
(es/typescript) Mark a namespace as concrete only if it is (#5670) (4babf4a)
-
(swc_core) Bump versions (#5706) (7686fae)
Features
-
(bindings) Reduce size (#5708) (b7da692)
-
(dbg-swc) Improve minifier comparator (#5681) (6febfe9)
-
(es/decorators) Support
bigint
(#5671) (b1f1a86) -
(es/minifier) Exclude
JSON
from alias list (#5698) (fc28242) -
(es/minifier) Ignore closure in initializer from sequential inliner (#5702) (217f519)
-
(es/minifier) Remove useless ES version check (#5703) (5e2b6d5)
Performance
- (es/minifier) Enable parallel processing (#5705) (1085667)
Testing
- (es/compat) Add a test for a fixed issue (#5672) (1ae539a)
[1.2.245] - 2022-08-30
Bug Fixes
-
(css/minifier) Don't compress
none
for keyframes (#5663) (4a5e347) -
(css/parser) Improve parsing of media queries (#5567) (5c28d00)
-
(es/codegen) Emit trailing semicolon (#5659) (537449e)
-
(es/compat) Fix evaluation order of computed class keys (#5621) (d18ee54)
-
(es/fixer) Handle
async
in the left offor of
(#5625) (eb3b0e9) -
(es/minifier) Improve alias analyzer (#5500) (00e635b)
-
(es/minifier) Revert alias analyzer work (#5634) (d44bbff)
-
(es/minifier) Fix alias analyzer (#5639) (a06e6e9)
-
(es/minifier) Fix optimization of template literals with escape (#5650) (100f359)
-
(es/parser) Handle more
TS2406
errors (#5640) (838438d)
Documentation
- (rustdoc) Document rust APIs (#5647) (488562b)
Features
-
(css) Support forgiving selector (#5539) (e2aca46)
-
(es) Improve APIs for plugin authors (#5632) (e8edb67)
-
(es/minifier) Improve gzipped size (#5631) (d81fe67)
-
(es/minifier) Remove redundant check (#5664) (d43334e)
-
(es/parser) Handle
async
infor...of
(#5646) (0f0d1db)
Miscellaneous Tasks
- general: Update download count image url (7c554fc)
Performance
- (es/lexer) Improve keyword tokenizer (#5658) (6c2c258)
Testing
-
(es/transforms) Enable tests for resolved issues (#5651) (efd6a36)
-
(es/transforms) Add tests for fixed issues (#5655) (2cddb24)
-
(es/transforms) Respect directives in tsc tests (#5648) (095cbf1)
[1.2.244] - 2022-08-26
Bug Fixes
-
(es/compat) Ignore invalid class method names (#5612) (1181d0f)
-
(es/compat) Handle
super
in a private method (#5613) (35d3558) -
(es/compat) Revert generator reimplementation (#5624) (927ae7e)
-
(es/fixer) Wrap expressions in the left of a binary expression (#5586) (3d485d2)
-
(es/helpers) Fix
_classStaticPrivateFieldUpdate
(#5620) (d483eb1) -
(swc_core) Re-export
swc_cached
(#5605) (7fcecb8)
Features
-
(cli) Enable LTO by default for the plugins (#5617) (3d2ee6d)
-
(es/generator) Replace generator implementation with one from tsc (#5173) (2aa0090)
-
(es/generator) Use new generator implementation (#5627) (83fec33)
-
(swc_core) Expand features (#5602) (633a23a)
-
(swc_core) Add css features (#5609) (7461e40)
-
(swc_core) Update dependencies and fix build script (#5610) (fad1367)
Testing
- (es/transforms) Add more execution tests (#5598) (cfcd54a)
Build
- (swc_core) Bump
swc_core
(#5604) (52117f7)
[1.2.242] - 2022-08-23
Bug Fixes
-
(es) Improve sourcemap (#5569) (2f7e322)
-
(es/codgen) Fix sourcemap of
BlockStmt
(#5570) (288ae51) -
(es/compat) Use separate
SyntaxContext
for class names (#5566) (b717a68) -
(es/compat) Fix destructuring assignments and updates of super properties (#5576) (bee26a9)
-
(es/compat) Fix destructuring assignments and updates of super properties in async method (#5580) (8645251)
-
(es/helpers) Fix an import (#5587) (610296c)
-
(es/helpers) Fix
_classStaticPrivateFieldSpecSet
(#5597) (0533d56) -
(es/parser) Allow expr to follow
ClassExpr
(#5572) (78dd071) -
(es/parser) Fix false-positives of yield used as a parameter in generator (#5564) (c3f6258)
-
(es/quote) Allow cloning (#5571) (82cc3ca)
Features
-
(bindings) Update
swc_core
(#5594) (e211ad6) -
(css/ast) Make
keyword
optional (#5543) (a3c1ac6) -
(es/plugin) Provide
swc_core
diagnostic from plugin (#5591) (a3e855f) -
(html/minifier) Improve minification modes (#5568) (3cb6fc2)
Miscellaneous Tasks
- (swc_core) Update dependency version (#5595) (1769191)
Testing
-
(es/transforms) Enable tests for fixed issues (#5583) (0f6649c)
-
(es/transforms) Copy execution tests from babel (#5578) (e2fedb9)
Build
- (swc_core) Fix dependency version (#5593) (9bc40e3)
[1.2.241] - 2022-08-19
Bug Fixes
-
(ast) Add attributes for
rkyv
(#5489) (3569b20) -
(ci) Adjust script path (#5546) (c833d08)
-
(ci) Wait exec asynchronously (#5547) (719444c)
-
(css/codegen) Improve codegen of
@media
(#5544) (fa7abe2) -
(es/compat) Handle
async
in class method parameters (#5560) (f2c1164) -
(es/fixer) Wrap
yield
expression inextends
(#5555) (b14d69e) -
(es/helpers) Add a missing helper (#5551) (e930fea)
Features
-
(css/minifier) Remove duplications (#5542) (780a4c2)
-
(es/minifier) Optimize more string property names (#5545) (7487e33)
-
(es/minifier) Optimize numeric property names (#5548) (38b8ca0)
-
(es/minifier) Remove more functions and classes (#5552) (69f8945)
-
(swc_core) Implement engine diagnostics (#5515) (f1a4263)
Miscellaneous Tasks
Testing
- (es/minifier) Add tests for size (#5561) (7f5095d)
[1.2.239] - 2022-08-18
Bug Fixes
-
(css/codegen) Improve output of
@supports
(#5529) (0f45822) -
(css/prefixer) Handle supports (#5503) (dc98234)
-
(css/prefixer) Reduce duplicates (#5537) (0985c15)
-
(es/fixer) Wrap first
function
orclass
of a sequence expression (#5508) (f27ed73) -
(es/fixer) Fix handling of
yield
andawait
(#5533) (7394dee) -
(es/minifier) Remove recklessly inline (#5528) (5aa96e0)
-
(html/minifier) Apply
fixer
(#5514) (1a4d755)
Features
-
(api/rust) Implement more traits for public types (#5488) (75c8e09)
-
(css/prefixer) Support more env properties and values (#5512) (674c788)
-
(dbg-swc) Improve minifier comparator (#5541) (935a2fb)
-
(es/minifier) Ignore recursive usage for function calls and pure calls (#5526) (d2f3e29)
-
(es/plugin/runner) Add more traces for the plugin host (#5538) (d46418b)
-
(es/react) Add
VisitMut
bound to the return type of react preset (#5499) (14606d9)
Testing
- (es/minifier) Remove useless, slow tests (#5502) (69ce1b2)
[1.2.237] - 2022-08-17
Bug Fixes
-
(es/plugin/runner) Provide guest memory allocator for the sourcemap (#5517) (3bdb39c)
-
(es/plugin/runner) Revert wasmer@3 (#5521) (4a9b1dd)
Features
[1.2.235] - 2022-08-16
Bug Fixes
-
(plugin/proxy) Fix a compilation attribute (#5495) (ca82f64)
-
(swc_core) Revert crate version metadata patch (#5501) (ef1f259)
Features
-
(bindings) Update
swc_core
(#5510) (b9f88ff) -
(es/compat) Fix syntax context of transpiled class methods (#5498) (b9933b1)
-
(es/plugin) Update
wasmer
to 3 (#5456) (92f006c) -
(swc_core) Provide build-time metadata diagnostics (#5494) (808e68b)
Refactor
-
(bindings) Use separate workspace for bindings (#5506) (496346a)
-
(bindings) Merge cargo workspace (#5511) (bbf9e2f)
Build
- (swc_core) Bump up
rkyv
(#5507) (becc3ae)
[1.2.233] - 2022-08-15
Build
- (es) Bump up bindings (#5493) (e547631)
[1.2.232] - 2022-08-15
Bug Fixes
-
(es/minifier) Fix context of call/new expressions (#5487) (40bb695)
-
(es/plugin) Share
SourceFile
for plugin transforms (#5475) (ff7f6f6)
[1.2.231] - 2022-08-14
Bug Fixes
-
(es/helpers) Fix
for await
(#5458) (b655bf4) -
(es/minifier) Remove wrong code (#5485) (2045fe6)
-
(swc_core) Bump up
swc_plugin_macro
(#5486) (04e11a5)
Performance
- (es/minifier) Remove needless allocation of name mangler (#5483) (1a0a2b5)
Refactor
- (bindings) Use published
swc_core
as interface (#5482) (83417b6)
Build
- (bindings) Bump up swc_core (#5484) (76797b1)
[1.2.230] - 2022-08-14
Features
-
(css/parser) Parse
@font-feature-values
at-rule (#5468) (eebdfdb) -
(node) Use published version of
swc_core
for node binding (#5481) (9d04f24)
Miscellaneous Tasks
- general: Typo (#5478) (8fde2ab)
Testing
- (es/plugin) Expand test matrix (#5477) (a76380c)
[1.2.229] - 2022-08-13
Bug Fixes
- (atoms) Workaround a bug of
rkyv
(#5479) (b35469a)
[1.2.228] - 2022-08-13
Bug Fixes
-
(css/ast) Use list of component values for error recovery (#5467) (555b6a3)
-
(es/plugin) Revert rustc upgrade to workaround a bug of
rkyv
(#5476) (c918975)
[1.2.227] - 2022-08-13
Bug Fixes
- (swc_core) Bump version of deps (#5466) (5e42864)
Features
- (es/compat) Add pure comments for generator and async transform (#5463) (5a06271)
Miscellaneous Tasks
Refactor
- (es/compat) Respect MSRV (#5473) (4a3b4b2)
Build
- (plugin) Downgrade
rkyv
(#5459) (d36e48e)
[1.2.226] - 2022-08-12
Bug Fixes
-
(cli) Update plugin template (#5421) (ce3bbe4)
-
(es) Temporarily disable
bytecheck
(#5414) (2b5080e) -
(es/ast) Fix json deserialization of
AssignExpr
(#5179) (53627af) -
(es/fixer) Remove useless parentheses around
**
(#5424) (7116636) -
(es/fixer) Remove needless parens for nested
??
(#5432) (e359903) -
(es/helpers) Correct import path (#5460) (efb3d70)
-
(es/utils) Allow
quote_ident!
working withswc_core
(#5409) (c227325) -
(plugin) Disable remaining
bytecheck
(#5437) (6a36a8d) -
(swc_core) Update references for
quote!
(#5408) (27e7e0b) -
(swc_core) Fix dep on
quote_macros
(#5415) (420d936) -
(swc_core) Apply plugin features (#5457) (3760ba0)
Documentation
Features
-
(ast) Make css/html ast serializable (#5427) (56b1036)
-
(dbg-swc) Improve minifier comparator (#5411) (d1da899)
-
(plugin) Add some tracing for plugin host (#5438) (001607f)
-
(swc_core) Add macros for wasm bindings (#5430) (5348195)
Miscellaneous Tasks
-
(ci) Reduce CI time (#5440) (4bdb6a1)
-
(ci) Fix publish action (#5443) (31bd2c8)
-
(html/utils) Fix cargo package metadata (#5439) (0e79d31)
Refactor
- (binding/macros) Update import references (#5431) (f43461d)
Testing
- (es/minifier) Organize simple size tests (#5402) (7b8658e)
Build
[1.2.224] - 2022-08-06
Bug Fixes
-
(es/codegen) Emit extra dot if a float is too large (#5407) (6dca81e)
-
(es/fixer) Preserve parens for optional chaining expressions (#5388) (9443419)
-
(es/minifier) Inline vars declared in conditional paths (#5392) (ca21fd0)
-
(es/modules) Use an indirect call for a tagged template (#5382) (cdb6164)
Features
-
(es/codegen) Remove more whitespaces from
BinExpr
(#5380) (e37b7e8) -
(swc_core) Expand features to support node bindings (#5387) (038a543)
-
(swc_core) Expose
quote!
macros (#5400) (8ca736f)
Testing
-
(es/minifier) Update the golden list (#5378) (84a1ef8)
-
(es/minifier) Add snapshots of compressed libraries (#5389) (a46669d)
-
(es/minifier) Organize simple size tests (#5403) (86da544)
[1.2.223] - 2022-08-03
Bug Fixes
-
(es/fixer) Don't insert extra paren when left of
BinExpr
isUpdateExpr
(#5376) (77497e4) -
(es/lints) Ignore TS module declare blocks (#5363) (daaa8b5)
-
(es/minifier) Drop more comments (#5361) (27cdc65)
-
(es/minifier) Optimize inlining function calls with a literal in arguments (#5365) (b221f90)
Documentation
- (rustdoc) FIx CI (#5370) (cf3de12)
Features
-
(es/minifier) Remove duplicate
var
declarations (#5373) (4fdbe40) -
(es/minifier) Consider char frequencies (#5375) (3943eb2)
-
(swc_core) Introduce package (#5364) (27b464d)
-
(swc_core) Expand features and use it from wasm and cli (#5369) (8b9dd6f)
Miscellaneous Tasks
- general: Update toml formatting (#5368) (12fd737)
Performance
- (es/minifier) Make postcompress pass parallel (#5374) (6552d1a)
[1.2.222] - 2022-08-01
Bug Fixes
-
(css/ast) Support list of component values (#5321) (8f81104)
-
(css/prefixer) Generate prefixes for selectors using env (#5307) (b18172d)
-
(es/codegen) Emit type parameters of class super expression (#5338) (42d8ad2)
-
(es/minifier) Change default es version to
es5
(#5333) (64a9946) -
(es/minifier) Check if an inlined value is mutated (#5318) (11f495a)
-
(es/minifier) Ignore member expression without side-effects in assign position (#5344) (8611161)
-
(es/minifier) Allow single-thread mode (#5353) (fbdc9af)
-
(es/utils) Fix
contains_top_level_await
(#5335) (1d10c3e)
Features
-
(css/prefixer) Prefix more properties (#5340) (8e12e52)
-
(css/prefixer) Avoid prefixing general functions (#5319) (07732d6)
-
(wasm) Add interfaces for wasm bindings (#5341) (c16b6b7)
-
(wasm) Enable string interning (#5351) (b0cb35a)
-
(wasm) Expose async facade interfaces (#5352) (281bdd9)
-
(xml) Add xml crates (#5329) (83e5023)
Miscellaneous Tasks
Performance
-
(es/minifier) Make name mangler faster (#5336) (b378c06)
-
(html/parser) Apply small memory optimizations (#5345) (2a499de)
Refactor
- (wasm) Use async interfaces for fallback bindings (#5356) (74e7486)
Testing
Build
-
(cargo) Update packages (#5331) (5c9ea16)
-
(node) Include fallback binding as a dependency (#5322) (0782d25)
[1.2.220] - 2022-07-28
Bug Fixes
-
(atoms) Workaround a bug of
rkyv
(#5323) (14894ed) -
(css/prefixer) Avoid prefixes for media features (#5308) (925b16a)
Features
- (html/minifier) Compress title (#5320) (6ad5b3c)
Testing
- (swc) Update test cases (#5324) (27c6f23)
[1.2.219] - 2022-07-27
Bug Fixes
-
(css) Fix parsing of
layer
(#5290) (83651c2) -
(css/prefixer) Generate at-rules based on preset-env (#5294) (94b4e0a)
-
(es/codegen) Add
;
for a generator function (#5292) (daac26b) -
(es/codegen) Fix sourcemap of multiline comments (#5299) (3100bf8)
-
(es/compat) Preserve orders of
import
s andexport
s (#5249) (2010409) -
(es/compat) Fix capturing of block scoping pass (#5279) (b423d6f)
-
(es/decorators) Use decorated consturctors (#5263) (d9877e3)
-
(es/fixer) Wrap
await
andyield
in callee (#5314) (b3269fd) -
(es/minifier) Preserve order of side-effects in sequences pass (#5283) (ee84842)
-
(es/modules) Use a private context for
export from
(#5262) (c0ace4c) -
(es/preset-env) Realign with
babel-polyfills
(#5293) (dd0a152) -
(es/preset-env) Don't add instance properties when there's a static property (#5305) (06677c2)
-
(es/visit) Disable
serde
by default (#5273) (a0007e1) -
(html/minifier) Don't break unknown attributes (#5256) (4f55459)
-
(html/parser) Fix span (#5312) (c80b9e1)
Documentation
- (ast_node) Remove an unnecessary comment (#5304) (8896dd9)
Features
-
(css/minifier) Remove duplicate selectors (#5257) (ce34746)
-
(css/prefixer) Implement
preset-env
(#5247) (e78d23d) -
(es/codegen) Optimize number and bigint literal (#5223) (3f0856d)
-
(es/codegen) Remove extra space before a private method (#5295) (0f254d5)
-
(es/minifier) Calculate correct size (#5253) (6573324)
-
(es/plugin) Add experimental metadata field (#5254) (bd1c2cc)
-
(es/plugin) Pass experimental metadata from host (#5261) (43eeeb3)
-
(node) Coerce fallback bindings (#5250) (7e6ffff)
-
(plugin) Make metadata api lazy (#5310) (5a164bd)
-
(testing/macros) Generalize test names with regex (#5242) (ecbf9d6)
Miscellaneous Tasks
-
(ci) Update macos runner (#5284) (e8473eb)
-
(ci) Fix build for Android platforms (#5317) (18d4029)
-
(deps) Update
bytecheck
(#5296) (35b1e78)- general: Fix CI (#5251) (d229917)- general: Fix CI (3421064)
Performance
- (es/ast) Use
Atom
in some places (#5271) (037a53d)
Testing
- (es/plugin) Test plugins with different schema versions (#5255) (b7c7e3a)
Build
- (cargo) Align dependency versions (#5248) (0d91741)
[1.2.218] - 2022-07-18
Bug Fixes
-
(cli) Emit sourcemap with file inputs (#5213) (3e3be80)
-
(es) Check the syntax context of
arguments
(#5174) (375774d) -
(es) Fix resolving of symlinks (#5222) (27cc45d)
-
(es/codegen) Mark bigint as an item starting with number (#5207) (387d5e4)
-
(es/fixer) Handle invalid numeric literals (#5201) (436f620)
-
(es/lints) Disallow duplicate export functions (#5234) (c68d484)
-
(es/minifier) Fix size calculation of numbers (#5232) (2e9c9be)
-
(es/modules) Preserve order for ts import equals (#5215) (6b1ce09)
-
(es/parser) Fix parsing of export specifiers (#5190) (ec93783)
-
(html/parser) Fix span (#5209) (b4daa30)
-
(html/parser) Improve span (#5230) (0f7646c)
-
(testing) Allow space in file names (#5237) (de76868)- general: Fix(es/lints: Handle ts export import equals (#5225)
(04de455)
Features
-
(css/ast) Make
raw
optional (#5211) (b65a16c) -
(es) Add quote to
swc_ecmascript
(#5199) (fbfa59b) -
(es/lints) Support
ignoreReadBeforeAssign
forprefer-const
(#4933) (d035648) -
(es/plugin) Print filename on failure (#5200) (f69dee7)
-
(html/ast) Add
raw
to attributes (#5208) (64237fa) -
(html/ast) Add
raw
to doctype (#5198) (945510a) -
(html/minifier) Compress more default attributes (#5182) (625fc18)
-
(html/minifier) Improve minifier (#5227) (1da6016)
-
(html/parser) Add
raw
to comments (#5196) (dead719) -
(node) Use wasm as a fallback (#5233) (1cebf62)
-
(plugin) Pass
unresolved_mark
to plugins (#5212) (92c0153) -
(quote) Support different types for variables (#5194) (c91abb2)
Miscellaneous Tasks
-
(ci) Skip plugin e2e tests for unsupported targets (#5203) (6b6b582)
-
(ci) Disable plugin tests while publishing (31bbf2d)
-
(ci) Disable some tests (ff949b0)
-
(ci) Fix publish script (#5241) (66550d6)
-
(visit) Specify version of
swc_macros_common
(#5231) (1aa0223)- general: Typo (#5239) (17f1cee)- general: Typo (#5238) (df426d7)
Testing
-
(css/codegen) Add tests (#5195) (fa4c2de)
-
(css/parser) Add a test (#5228) (8e5efb6)
-
(es/plugin) Build plugins for e2e testing (#5210) (cd94f0a)
-
(plugin) Setup e2e fixture testing for plugins (#5192) (2fa51ec)
-
(plugin) Fix e2e tests on windows (#5216) (f1ba332)
Build
- (node) Use explicit list for package files (#5229) (b01b6cf)
[1.2.213] - 2022-07-13
Bug Fixes
-
(css/codegen) Fix sourcemap of multibyte characters (#5183) (5b70233)
-
(css/parser) Avoid skipping whitespaces if not required (#5181) (7b28521)
-
(es/minifier) Don't merge exported declarations (#5193) (16ece4d)
-
(html/codegen) Fix source map generation (#5184) (60ca553)
-
(node/types) Fix AST type definitions (#5175) (afd5171)
Features
-
(es/codegen) Emit comments in
emit_module
(#5132) (1ef541e) -
(html/minifier) Allow specifying options for other tools (#5125) (dada2d7)
-
(visit) Improve API (#5185) (4744d43)
-
(visit) Implement serde for
AstParentKind
(#5191) (d1418ee)
Testing
- (node) Refactor tests (#5187) (a4b14c3)
[1.2.212] - 2022-07-11
Bug Fixes
-
(es/modules) Add the missing span for
export default
(#5170) (997240c) -
(es/modules) Keep TDZ for
export default
if possible (#5164) (56ad09a)
Features
-
(plugin/macros) Export new interface for getting plugin schema version (#5166) (f167198)
-
(visit) Add index to
AstKind
(#5138) (ac3a55a)
Miscellaneous Tasks
- (ci) Fix benchmark action (#5176) (7d4b496)
Performance
- (es/minifier) Remove wrong logic (#5178) (d8f57ab)
[1.2.211] - 2022-07-09
Bug Fixes
-
(cli) Constructs config file correctly (#5146) (4f87396)
-
(es/compat) Preserve more class names (#5106) (dd39a79)
-
(es/compat) Optimize
for-of
loops for array literals (#5141) (9351303) -
(es/compat) Remove extra
this
/arguments
capture in arrows (#5152) (cd8d65b) -
(es/lints) Handle import-require duplicate bindings (#5131) (a0ec370)
-
(es/minifier) Don't inline a callable expression if it's used as a reference (#5118) (0e4a03c)
-
(es/modules) Handle top level this (#5159) (451f346)
-
(es/modules) Handle top level this, really (#5160) (2555d71)
-
(es/parser) Support type-only export-import declarations (#5122) (fbfca36)
-
(sourcemap) Handle multi-byte characters correctly (#5153) (bbbe0b6)
Documentation
Features
-
(css/minifier) Compress hsl colors (#5142) (714ff53)
-
(css/minifier) Compress
hwb
color (#5155) (d6a827d) -
(es/parser) Support
d
in regex flag for es2022 (#5127) (2d94797) -
(es/typescript) Follow TypeScript error report (#5114) (f952a61)
-
(html) Add
raw
for text (#5148) (01bfe46) -
(html/minifier) Sort attributes (#4784) (f813a60)
-
(html/minifier) Compress default attributes for svg (#5150) (8bc9a40)
-
(plugin) Wrap serialized struct with a version (#5128) (82fbe15)
-
(visit) Implement
Eq
forAstKind
(#5133) (46b1b42) -
(visit) Implement more traits for
AstKind
(#5135) (f26d59b)
Refactor
-
(common) Bikeshed plugin apis (#5120) (2ba8b39)
-
(plugin) Refactor transform executor (#5147) (e8214ba)
[1.2.210] - 2022-07-05
Bug Fixes
-
(es/codegen) Fix codegen of some non-ascii characters (#5108) (b76b499)
-
(es/fixer) Preserve parens in opt calls (#5110) (3e3c44a)
-
(es/fixer) Preserve parens in more opt calls (#5111) (528d4c5)
-
(es/lints) Allow overload in typescript (#5116) (bef8aeb)
Documentation
- (visit) Generate rustdoc (#5107) (8ea631c)
[1.2.209] - 2022-07-05
Bug Fixes
-
(es/codegen) Emit numeric value for Binary and Octal literals (#5083) (8df6e04)
-
(es/compat) Preserve spans in
object_rest_spread
(#5082) (de66b64) -
(es/compat) Preserve class names (#5104) (adbb0bf)
-
(es/lints) Cover more
const-assign
cases (#5098) (f7d857c) -
(es/modules) Preserve orders of exports (#5081) (2f2039c)
-
(es/modules) Create an indirect call for a lazy require (#5089) (0a7ca2f)
-
(es/modules) Support lazy for
export from
(#5103) (c531e67) -
(es/react) Don't panic on invalid react pragma (#5101) (cc555ef)
-
(es/resolver) Fix handling of block scoped functions (#5092) (9519e80)
-
(html/minifier) Small fix (#5079) (5ac5ae2)
-
(html/minifier) Fix bugs of the smart mode (#5093) (5932a0a)
-
(node/types) Add
simplify
(#5105) (2a29b50)
Features
-
(es/modules) Support
allowTopLevelThis
(#5086) (9addef6) -
(es/modules) Add pure annotations to interop functions (#5087) (4d5783d)
-
(es/modules) Support AMD triple slash directives (#5091) (ddb31d1)
-
(es/parser) Support labelled function from annex B (#5078) (b62fd3e)
-
(html/minifier) Remove empty metadata elements (#5085) (cb845c9)
-
(visit) Add path-aware variants (#5073) (204d742)
Testing
- (es/modules) Add test for string-names (#5088) (52bfb18)
[1.2.208] - 2022-07-01
Bug Fixes
-
(es/compat) Preserve this in function with block scoped vars (#5056) (18ea2b5)
-
(es/modules) Handle
this
in class methods (#5065) (ef543b1) -
(es/modules) Improve compatibility with cjs lexer (#5080) (9e162dc)
-
(html/minifier) Fix smart mode (#5058) (e9bad20)
-
(html/minifier) Minify
meta
element (#5075) (214c60a)
Documentation
- (contributing) Add
--features memory_cache
to test steps (#5074) (9d8beb0)
Features
-
(atoms) Improve atoms (#5066) (34f4f5a)
-
(es/modules) Support node interop (#5069) (1e33dba)
-
(es/parser) Add
allow_return_outside_function
to options (#5046) (37eb366) -
(html/minifier) Allow minifying custom script contents (#5043) (d7a5f71)
-
(html/minifier) Sort unordered values in attributes (#5035) (26cfeff)
-
(html/minifier) Improve
collapse_whitespaces
(#5070) (144314d) -
(plugin) Add versioned wrapper struct (#5062) (e34a864)
-
(plugin) Allow taking the inner data from versioned (#5071) (e1aa937)
Miscellaneous Tasks
Performance
- (atoms) More groundwork for replacing
JsWord
withAtom
(#5064) (2e139f1)
[1.2.207] - 2022-06-28
Bug Fixes
-
(es/compat) Handle classes with accessors and a method with the same name (#5039) (25bd520)
-
(es/modules) Handle module references in binding idents (#5055) (e13364f)
-
(node-swc/types) Add
nodenext
config type (#5044) (7d4e6be)
Features
-
(es/lints) Report an error for reassignment to import binding (#5033) (376c4e1)
-
(es/minifier) Handle pure annotations on member expressions (#5050) (a15bb48)
-
(es/modules) Optimize a dynamic import with a literal path (#5049) (2cc229e)
-
(html/minifier) Allow compressing additional attributes (#5036) (55e0ea3)
-
(html/minifier) Add
normalize_attributes
for disabling normalization (#5045) (0836d29)
[1.2.206] - 2022-06-27
Bug Fixes
-
(es/compat) Fix name conflict of
Array
(#5034) (04fc1cb) -
(es/parser) Allow initializer of the var of for-in loop in non-strict mode (#5038) (f238093)
Features
-
(html/codegen) Improve API (#5031) (8bf924a)
-
(html/minifier) Add
remove_comments
option (#5037) (e6c78d0) -
(html/minifier) Improve smart mode (#5004) (9202ff9)
Refactor
- (es/module) Implement new module transformer (#4758) (fa68cbd)
[1.2.205] - 2022-06-24
Bug Fixes
-
(css/parser) Improve lexer errors (#5025) (c345524)
-
(es/lints) Allow duplicate function in non-top level (#5011) (4a422a0)
-
(es/parser) Don't panic on an invalid import meta property (#4994) (53a8cb1)
-
(es/parser) Allow instantiation expression followed by a line break or a binary operator (#5000) (a62b2b3)
-
(es/transforms) Add custom
Sync
+Send
for the renamer (#5018) (fd73895) -
(es/typescript) Preserve
export =
for AMD (#4995) (d736b31) -
(html/minifier) Avoid optional attributes (#5016) (f1fd83d)
-
(html/minifier) Compress more complex attributes (#5024) (c61babd)
Documentation
- (readme) Add a link for discord badge in
README.md
(#5005) (1f64055)
Features
-
(html/minifier) Compress more svg/mathml attributes (#5001) (1538649)
-
(html/minifier) Add an API to minify document fragments (#5002) (7745fbf)
-
(html/minifier) Minify js (#4999) (28bc735)
-
(html/minifier) Add
remove_redundant_attributes
(#5023) (03d8a3a) -
(html/minifier) Compress
style
andmedia
attributes (#5022) (47d34a3)
Performance
- (html/parser) Improve performance (#5028) (a057183)
Refactor
- (webpack-ast) Remove (#5026) (17c51fa)
Testing
-
(es/helpers) Unify code path for testing external helpers (#5010) (125549b)
-
(es/minifier) Add a test case for the minifier (#5013) (eedcb11)
-
(es/parser) Add a test case for instantiation expr (#5014) (6bcb925)
[1.2.204] - 2022-06-18
Bug Fixes
-
(es/helpers) Fix
module
field inpackage.json
of@swc/helpers
(#4978) (5123c20) -
(es/helpers) Use
.mjs
extension in helper imports (#4979) (9484cf8) -
(es/parser) Fix binary operator parsed as an instantiation expression (#4992) (36ef3e4)
-
(es/resolver) Make catch parameter not disturb resolving (#4976) (b3f6f20)
-
(html/codegen) Handle optional tags (#4986) (41dc0a7)
-
(html/minifier) Fix removal of comments (#4974) (8e63b0b)
Documentation
- (*) Add more badges (#4982) (cb30ba2)
Features
-
(es/config) Add
isModule
to.swcrc
(#4993) (e85c0db) -
(html/codegen) Add option for tag omission of self closing void elements (#4971) (d07ab2c)
-
(html/minifier) Compress CSS (#4973) (3e6c0f5)
-
(html/minifier) Add
preserve_comments
option (#4959) (2e52c18) -
(html/minifier) Add an option to set html5 doctype (#4980) (fb74ace)
-
(html/minifier) Minify conditional comments (#4975) (713a256)
Performance
- (es/hygiene) Make
hygiene
faster (#4952) (36d960c)
Refactor
- (es/minifier) Use
Program
instead ofModule
(#4969) (99a474c)
Testing
- (html) Remove files which are too large too verify (#4983) (364a34c)
[1.2.203] - 2022-06-14
Bug Fixes
-
(ci) Revert malloc changes (709ad3e)
-
(common) Don't use
get_unchecked
after setting the length to 0 (#4943) (f479951) -
(css/parser) Fix input buffer and improve error recovery (#4948) (bf74d05)
-
(es/helpers) Allow using external helpers with
type: module
(#4962) (4a27e6f) -
(es/parser) Don't assume the length of char (#4967) (3e03ebf)
Features
-
(es/lints) Add
constructor-super
rule (#4912) (6daeeb0) -
(es/minifier) Turn
Array
/Object
calls into literals (#4947) (47bdc6a) -
(html) Support self-closing flag (#4950) (5c2a918)
-
(html/minifier) Compress whitespaces (#4916) (f2690cc)
-
(html/minifier) Add
remove_empty_attributes
option (#4958) (63d630d) -
(html/minifier) Add
collapse_boolean_attributes
option (#4960) (3957bc6)
Miscellaneous Tasks
-
(ci) Test
concurrent
(#4955) (1a9f935) -
(ci) Use macos for release builds (#4968) (1bf2b80)
-
(ci) Fix publish build on Windows (#4970) (db9f7a5)
Performance
-
(common) Add
Atom
type (#4945) (4ada9c7) -
(css/parser) Improve performance of lexer (#4921) (327969d)
-
(es/minifier) Make more things parallel and reduce call stacks (#4915) (3580638)
-
(es/transforms) Make rename operator parallel (#4951) (445d585)
Refactor
-
(es/resolver) Prepare parallel
resolver
(#4957) (ea92a6a) -
(html/parser) Remove unused code (#4949) (42a1d7c)
Testing
- (css/parser) Improve tests (#4963) (1b7b4f0)
[1.2.199] - 2022-06-11
Bug Fixes
-
(ci) Fix android build issue caused by NDK 21 -> 23 (#4942) (52e2347)
-
(es/decorators) Fix syntax context of decorated classes (#4905) (814f72f)
-
(es/fixer) Preserve parens in optional calls (#4923) (5bb417e)
-
(es/helpers) Fix syntax context of helpers (#4900) (4e3a878)
-
(es/minifier) Reserve more symbols on
eval
(#4925) (be87494) -
(es/modules/amd) Support
export * as foo from 'foo'
(#4904) (10f6849) -
(es/parser) Allow negative bigint literal in types (#4938) (11db191)
-
(es/parser) Check for line break after async (#4940) (381d273)
-
(es/resolver) Hoist namespaces (#4902) (a9f91dc)
-
(es/transforms) Fix threshold (a70c737)
-
(html/codegen) Fix quotes in attributes (#4918) (064e504)
-
(html/codegen) Emit newline in
textarea
/pre
(#4919) (4f1e046) -
(html/parser) Fix spans (#4877) (70760d2)
Features
-
(es/lints) Add
default-case-last
rule (#4913) (4fb932d) -
(es/lints) Add
no-await-in-loop
rule (#4936) (b041f29) -
(es/minifier) Drop
new
token if possible (#4932) (5940894) -
(es/modules/amd) Convert ts import equals to normal AMD import (#4906) (36a82cc)
-
(html/codegen) Support context element (#4887) (ae1ff1e)
-
(html/codegen) Improve entity compression (#4889) (da09c1c)
-
(html/codegen) Minify svg attributes (#4917) (f157aae)
-
(plugin) Upgrade
wasmer
(#4929) (b30032d) -
(preset-env) Upgrade
browserslist-rs
(#4903) (f7c89c5)
Miscellaneous Tasks
- (html/parser) Remove unused dependencies (#4922) (299da10)
Performance
-
(es/minifier) Change default pass limit to 2 (#4924) (fc0d8e3)
-
(es/transforms) Make transforms parallel (#4939) (35c93be)
-
(html/parser) Improve performance (#4881) (5abe847)
-
(html/parser) Improve memory allocation (#4884) (ce4d577)
-
(html/parser) Reduce cloning (#4901) (e365766)
-
(html/parser) Add a benchmark for document fragment (#4920) (d669454)
-
(html/parser) Improve performance (#4934) (f993a52)
Refactor
-
(es/lints) Simplify
no-empty-pattern
rule (#4928) (286f265) -
(html/ast) Avoid
TokenAndSpan
(#4885) (b14719c)
[1.2.197] - 2022-06-05
Bug Fixes
-
(css/parser) Fix parsing of constant function (#4856) (e083d0e)
-
(es/helpers) Update
@swc/core
of@swc/helpers
(#4861) (a4bffcf) -
(es/minifier) Don't drop
typeof
(#4883) (06420d9) -
(html/parser) Fix span of lexer errors (#4846) (f830726)
-
(html/parser) Fix end span of closed tags (#4860) (67b5e3d)
-
(html/parser) Fix span (#4868) (0d5d7c4)
Features
-
(es/codegen) Support other source map implementations (#4879) (6bc33cb)
-
(es/minifier) Remove extra parens in
BinExpr
(#4878) (83ae6a1) -
(html/minifier) Improve compression of attributes (#4849) (c5df1a3)
-
(html/minifier) Remove spaces between nodes (#4880) (6e0f5f1)
-
(wasm) Add json error (#4853) (fd3501b)
Performance
- (html/parser) Improve lexer performance (#4869) (8b67bb9)
Testing
[1.2.196] - 2022-05-31
Bug Fixes
-
(es/codegen) Handle comments in binary expressions (#4817) (1db71cc)
-
(es/compat) Use define for non-spread props (#4754) (573bcb5)
-
(es/minifier) Consider side effects while removing an object spread (#4788) (1c48a8c)
-
(es/minifier) Don't create names which is same as an unresolved var (#4806) (073b146)
-
(es/minifier) Apply name mangler for more cases (#4840) (0567f67)
-
(es/minifier) Make
if_return
to not drop required returns (#4847) (8365c3d) -
(es/modules) Fix local scoped amd require (#4800) (2b03047)
-
(es/modules) Fix lazy option of common js (#4807) (f4c6a20)
-
(html/codegen) Handle HTML entities correctly (#4782) (d833057)
-
(html/codegen) Remove optional html start tag (#4811) (c9d0e37)
-
(html/codegen) Omit on more cases (#4825) (2b7f4b2)
-
(html/codegen) Prevent omitting body for title (#4814) (7407f21)
-
(html/minifier) Avoid removing id with spaces (#4786) (c35cb59)
-
(html/parser) Handle BOM (#4843) (20fee8a)
-
(node) Fix logging (#4833) (c462d4d)
-
(node/types) Add
ignoreDynamic
to typescript types (#4832) (e30449b) -
(preset-env) Ignore unknown versions (#4809) (78d4c2c)
Features
-
(css/ast) Add missing
Is
derive (#4810) (29884b0) -
(es/compat) Don't create vars for computed class methods if possible (#4805) (dc911dc)
-
(html/codegen) Omit start and end tags if it is possible (#4780) (c6ec9f9)
-
(html/minifier) Compress more json types (#4813) (731c59e)
-
(html/minifier) Compress viewport meta (#4844) (e6ae299)
-
(node) Split css binding (#4831) (2e9ab05)
Miscellaneous Tasks
Performance
-
(es/minifier) Make more passes parallel (#4821) (4b27df9)
-
(es/minifier) Make name mangler parallel (#4824) (58b2427)
-
(html/parser) Improve lexer (#4796) (8894e77)
-
(html/parser) Improve lexer (#4802) (f71ef61)
-
(html/parser) Improve lexer performance even more (#4819) (759688c)
Refactor
- (es/transforms) Remove
concurrent
(#4808) (a487fc1)
Testing
-
(es/minifier) Add snapshots for the mangler (#4823) (7f69b9c)
-
(html/codegen) Avoid newline at the end of file (#4815) (a6beda8)
[1.2.194] - 2022-05-25
Bug Fixes
- (common) Fix jemalloc (#4794) (adf70f6)
Features
-
(html/minifier) Improve script type compression (#4785) (b5e481c)
-
(html/minifier) Sort classes (#4783) (11aa6be)
-
(plugin) Implement
SourceMap.span_to_*
(#4781) (a937357)
Performance
- (common) Use
jemalloc
for linux (#4791) (6f04e84)
Testing
- (es) Make execution tests faster (#4789) (38a866a)
[1.2.192] - 2022-05-24
Bug Fixes
-
(css/parser) Allow
var()
call in color functions (#4713) (07d31aa) -
(es/compat) Fix span of
instanceof
(#4757) (8720f9a) -
(es/compat) Handle nested for loops with
break
/continue
(#4777) (4f00914) -
(es/compat) Handle nested
break
/continue
inblock_scoping
(#4778) (db1698e) -
(es/compat) Escape keywords in class method names (#4775) (a3e4c20)
-
(es/fixer) Preserve the paren in a spread element (#4771) (65b7c4b)
-
(es/loader) Fix
jsc.paths
on windows (#4739) (417b218) -
(es/loader) Fix hang related to
jsc.paths
(#4742) (777ea37) -
(es/minifier) Consider parameters while detecting pure calls (#4748) (e4dee1e)
-
(es/modules) Adjust absolute path while rewriting imports (#4776) (75bb858)
-
(es/modules/cjs) FIx detection of exported names (#4737) (d9bb59a)
-
(es/resolver) Handle
var
after catch with the same name (#4772) (e2da3dd) -
(es/resolver) Fix more edge cases related to
catch
andvar
(#4773) (f28d9c1) -
(es/typescript) Mark namespaces as concrete (#4736) (41d4437)
-
(es/typescript) Preserve referenced imports for namespace (#4759) (065b2a5)
-
(html/codegen) Emit
textarea
andpre
in foreign context (#4766) (8662665) -
(html/parser) Fix error reporting in the foreign context (#4725) (4df0637)
-
(html/parser) Fix parsing of closing tag in foreign contents (#4721) (1c4d50f)
Features
-
(es/helpers) Import only used helpers (#4767) (b8d2fb8)
-
(es/minifier) Implement
pure_funcs
(#4710) (9e42382) -
(es/minifier) Handle prefix update expressions with sequential inliner (#4741) (a51816a)
-
(es/minifier) Implement more rules (#4763) (20b724d)
-
(es/modules/amd) Support local-scoped amd requires (#4727) (886585b)
-
(html/codegen) Omit end tags (#4770) (07c197f)
-
(html/parser) Improve error reporting for misplaced non-space characters inside a table (#4723) (e9b2ebf)
-
(html/parser) Improve error reporting (#4728) (c346d30)
-
(html/parser) Improve error reporting (#4740) (51f4cea)
-
(html/parser) Improve public api (#4762) (c07780f)
-
(plugin) Implement more
SourceMap
apis (#4769) (3298cb7)
Miscellaneous Tasks
-
(ci) Fix CI (#4747) (0f85f7b)
-
(ci) Fix CI (#4779) (c31b0a3)
-
(es/minifier) Add
#[doc(hidden)]
(#4751) (22bf5f0)
Performance
- (common) Add more methods to
Spanned
(#4749) (98df645)
Refactor
-
(es/minifier) Make
rust-analyzer
faster (#4744) (47e6cc5) -
(es/minifier) Make
rust-analyzer
fast, really (#4746) (49b3c27) -
(es/parser) Remove duplicate (#4750) (b7a195a)
Testing
- (html/parser) Enable error reporting tests (#4764) (984d69e)
[1.2.189] - 2022-05-21
Bug Fixes
-
(es/codegen) Fix numeric literals (#4733) (ea46eb4)
-
(es/config) Respect
.swcrc
(#4735) (9966e98) -
(html/parser) Fix error reporting related to
image
(#4720) (4cee4ac)
[1.2.188] - 2022-05-21
Bug Fixes
-
(es/codegen) Exclude synthesized files from sourcemap (#4714) (03dd9de)
-
(es/codegen) Fix numeric literals (#4731) (f1baff4)
-
(es/minifier) Consider more side effects while inlining (#4715) (1358f45)
-
(html/parser) Fix handling of unclosed
td
/th
(#4719) (2c2e6bb)
Features
-
(es/minifier) Implement more skipping rules for
sequences
(#4716) (dc67911) -
(html/parser) Report an error for a legacy doctype (#4717) (5d0e8fb)
[1.2.187] - 2022-05-20
Bug Fixes
-
(common) Don't use reserved byte position (#4690) (606f7c9)
-
(es/ast) Fix
EqIgnoreSpan
ofIdent
(#4689) (07356a5) -
(es/codegen) Don't add a newline after an arrow body (#4711) (72fbf69)
-
(es/compat) Fix
break
in for await loop (#4705) (100c0b5) -
(es/config) Auto-detect
tsx
(#4696) (ad309f4) -
(es/config) Add
jsc.output.charset
(#4708) (bf5ba28) -
(es/minifier) Don't hoist functions with
dead_code
(#4695) (183e884) -
(es/minifier) Don't create keys with negative number (#4698) (809a626)
-
(es/minifier) Fix analysis of assignment patterns (#4712) (73dfa95)
-
(es/modules) Fix reassignment of exported vars (#4688) (7ce572b)
-
(es/react) Fix span of error messages (#4704) (5f45a3d)
-
(html/parser) Fix span of attributes (#4681) (637ef7f)
-
(html/parser) Fix bugs (#4707) (0b39e1b)
Features
-
(es/minifier) Improve
if_return
(#4694) (274648e) -
(html/minifier) Compress characters in
head
(#4682) (cac8cee)
Performance
- (es/minifier) Make minifier more parallel (#4699) (9a27b5f)
Testing
-
(es) Add a test for a fixed issue (#4693) (b93af7b)
-
(es/minifier) Categorize more tests (#4709) (6f565fb)
[1.2.186] - 2022-05-17
Bug Fixes
- (es/minifier) Consider fallthrough while merging swtich cases (#4672) (3bb4b74)
Features
-
(dbg-swc) Make reducer parallel (#4676) (ba6688a)
-
(es) Add check for
BytePos::DUMMY
(#4675) (da49f81) -
(es/minifier) Enable
computed_props
by default (#4678) (04d66db) -
(es/minifier) Enable
conditionals
by default (#4687) (c01476d) -
(html/minifier) Compress more json content (#4684) (3aac28e)
Miscellaneous Tasks
- general: Add stale workflow (890a5ae)
Performance
-
(common) Improve performance of
StringInput
(#4680) (fe1e62a) -
(html) Setup benchmarks (#4685) (b56f3b7)
Testing
-
(es/minifier) Add size tests using
dbg-swc
(#4664) (36ff4f7) -
(html/parser) Add tests for broken html/svg (#4683) (1d9ee0a)
[1.2.185] - 2022-05-15
Bug Fixes
- (es/modules) Fix handling of
import.meta.url
(#4670) (49c40af)
Features
-
(dbg-swc) Add a command to diff semantics (#4671) (e3cda26)
-
(es/minifier) Improve
ignore_return_value
(#4673) (e57123e)
Build
- (repo) Downgrade
rustc
(#4674) (50db276)
[1.2.184] - 2022-05-15
Bug Fixes
-
(es/minifier) Don't inline a function if we need referential equality (#4665) (96cec97)
-
(html/parser) Fix error reporting (#4644) (1f945b9)
Documentation
- (es/codegen) Document
ascii_only
(#4669) (bfb6be7)
Features
-
(dbg-swc) Add command to compare minifier (#4653) (af1d195)
-
(dbg-swc) Add auto-reducer for the minifier (#4654) (c8818b0)
-
(es) Add an option to omit columns from sourcemaps (#4646) (b6f904b)
-
(es/codegen) Implement ascii-only (#4660) (eb8508f)
-
(es/lints) Implement
no-sparse-arrays
rule (#4652) (9b226a7) -
(es/minifier) Improve minifier (#4655) (053f42b)
-
(es/minifier) Implement
directives
(#4668) (8a40b58) -
(html) Support
iframe_srcdoc
(#4658) (69ca949) -
(html/parser) Improve error reporting (#4663) (a8467c6)
Performance
- (es/parser) Optimize for cpu code cache (#4666) (11726cc)
Refactor
- (es/react) Use proper ident scope for react refresh (#4649) (1150e84)
Build
- (repo) Update
rustc
(#4667) (98e4845)
[1.2.183] - 2022-05-13
Bug Fixes
-
(css/parser) Remove a wrong assertion (#4641) (84e4ca6)
-
(es/minifier) Don't create direct
eval
(#4634) (56a227a) -
(es/minifier) Fix optimization of spread (#4639) (9c190f0)
-
(es/modules) Fix
jsc.paths
(#4620) (20692cd) -
(es/resolver) Ensure that a parameter type is resolved to parent (#4645) (2745cb7)
-
(html) Fix parsing of template (#4647) (af9c8c6)
-
(html/codegen) Fix codegen (#4629) (fa4a60a)
-
(html/parser) Fix newlines (#4633) (a19db29)
Features
-
(common) Reserve
BytePos(0)
for dummy spans (#4616) (67942d5) -
(debug) Inline
dbg-swc
(#4651) (b393773) -
(es/lints) Implement
no-compare-neg-zero
rule (#4643) (f45dd72) -
(html/minifier) Improve minification of attributes (#4625) (5679b69)
-
(html/minifier) Compress
application/ld+json
(#4628) (c41aca6) -
(html/parser) Add a method to get error message (#4623) (cac4f6e)
Refactor
-
(html/parser) Remove unused code (#4613) (a378e1e)
-
(html/parser) Improve public API (#4626) (b8fa3bc)
-
(html/parser) Improve parser a bit (#4627) (5f899a0)
Testing
-
(es) Add a test for merging configurations (#4617) (53ff81c)
-
(es/minifier) Execute more tests (#4636) (79f87e0)
-
(html/parser) Add dom visualizer for regular tests (#4622) (4e577d7)
[1.2.182] - 2022-05-11
Bug Fixes
-
(es/config) Merge
jsc.transform
correctly (#4615) (3b2b8c4) -
(es/fixer) Handle
new yield
(#4598) (d611d54) -
(es/minifier) Fix switches (#4595) (2ab7594)
-
(es/minifier) Fix
with
andNaN
(#4596) (097ff1d) -
(es/minifier) Fix switch with a unknown case (#4597) (8944a3b)
-
(es/minifier) Preserve more
this
(#4599) (859dc44) -
(es/utils) Fix wrong apis (#4604) (6a97c7b)
-
(html/parser) Fix bugs (#4592) (7166dbf)
Features
-
(css/parser) Add a method to get error message (#4588) (04dd3dd)
-
(es/ast) Improve
Id
APIs (#4614) (2c861bd) -
(es/hygiene) Drop syntax context (#4594) (6ac4a23)
-
(es/lints) Implement
prefer-const
rule without options (#4584) (e65bf3d)
Refactor
- (html) Refactor parser and codegen (#4611) (7c6627f)
Testing
- (es/minifier) Postpone tests which can be verified by execution tests (#4600) (6918e3a)
[1.2.181] - 2022-05-09
Bug Fixes
-
(es) Use
unresolved_mark
(#4573) (0868409) -
(es/minifier) Improve sequential inliner (#4570) (af368ee)
-
(es/minifier) Preserve more identifiers if
eval
orwith
exists (#4580) (e43689b) -
(es/minifier) Don't create an invalid labeled statement (#4581) (7e80c10)
-
(es/minifier) Unwrap blocks more carefully (#4586) (8db3442)
-
(es/minifier) Consider more aliases in sequences pass (#4583) (3521ce0)
-
(es/minifier) Fix handling of
NaN
(#4593) (dd09cdf) -
(es/resolver) Fix handling of a complex try catch (#4574) (9e79f9c)
-
(es/resolver) Fix more try catch issues (#4582) (56c3010)
-
(html/parser) Add recovery for attributes on html and body (#4566) (c7d20e4)
-
(node) Use
jemallocator
on linux (#4591) (af91094)
Features
-
(config) Make all configuration overridable (#4575) (7fc9bbc)
-
(es/ast) Add methods for parens (#4576) (55d0ee6)
-
(html/parser) Parse document fragment (#4579) (a34dea1)
Miscellaneous Tasks
- (ci) Improve CI scripts (#4572) (f23c943)
Refactor
- (html/parser) Resolve TODO (#4577) (4cc247f)
Testing
-
(es/minifier) Fix test system (#4571) (bf5ee01)
-
(html/parser) Add tests (#4565) (adbce64)
-
(html/parser) Improve script on/off tests (#4564) (4838267)
[1.2.179] - 2022-05-08
Bug Fixes
-
(es/minifier) Distinguish
raw
andcooked
while joining template literals (#4559) (f9b6016) -
(es/minifier) Fix handling of template literals (#4563) (920d9a7)
-
(html/parser) Fix for noah's ark clause (#4558) (7ef6372)
-
(html/parser) Fix adoption agency algorithm (#4552) (d6e4885)
Documentation
- (es/resolver) Add docs for top-level mark (#4560) (13cc228)
Features
-
(es/minifier) Drop vars using sequential inliner (#4547) (c5b4ef4)
-
(es/minifier) Remove duplicate control flow in nested blocks (#4569) (b3b6fd4)
Refactor
- (plugin) Align deps (#4568) (846a319)
[1.2.178] - 2022-05-07
Bug Fixes
-
(es/compat) Memorize computed props in logical assignment (#4525) (2e74787)
-
(es/minifier) Respect
keepClassNames
for class expressions (#4536) (3d5d234) -
(es/minifier) Skip getter/setter when collapsing vars (#4557) (5d3a01a)
-
(es/modules) Preserve extensions (#4524) (f3b262e)
-
(es/parser) Revert #4067 (#4540) (2831059)
-
(es/parser) Revert #4287 (#4542) (e2fde1a)
-
(html/lexer) Fix lexing of numeric characters (#4544) (6980381)
-
(html/parser) Fix a bug related to parsing foreign elements (#4527) (2f6f8fa)
-
(html/parser) Fix parsing of cdata in foreign context (#4531) (5dc9376)
-
(html/parser) Fix a bug with optional
li
(#4526) (6310eab) -
(html/parser) Fix parsing of comments in
textarea
(#4530) (79090e1) -
(html/parser) Fix parsing of
nobr
(#4535) (e6042a5) -
(html/parser) Fix parsing of cdata (#4537) (07cf28a)
-
(html/parser) Fix parsing of newline in
textarea
(#4543) (dd40e7b) -
(html/parser) Fix support for document mode (#4539) (e11ee88)
Features
- (plugin) Make plugin source map api use
SourceMapper
(#4541) (10f903d)
Miscellaneous Tasks
- (repo) Configure
prettier
(#4523) (a6d404a)
Refactor
- (html/parser) Cleanup (#4545) (446172f)
Testing
-
(es/minifier) Categorize more tests (#4538) (3d3e3bb)
-
(es/minifier) Ignore difference of parens (#4546) (b0efd00)
-
(html/parser) Add integration tests from html5lib-test (#4517) (a4a815b)
Build
- (plugin) Update
swc_plugin_proxy
(#4551) (b5a2033)
[1.2.177] - 2022-05-04
Bug Fixes
-
(html/parser) Fix a bug of unwrapping element without parent (#4505) (597c0c6)
-
(node) Fix tls allocation issue (#4514) (3d5c0fa)
Features
-
(es/parser) Reject accessors named
constructor
(#4520) (0e0ded1) -
(plugin) Expose
Pos
(#4516) (c0432e4)
Miscellaneous Tasks
- (repo) Fix lints (#4519) (33f58fa)
Testing
- (html/parser) Add tests (#4507) (202a6e4)
[1.2.176] - 2022-05-04
Bug Fixes
-
(es/compat) Revert a wrong patch about private properties (97e0e27)
-
(es/compat) Fix the position of inserted statements in
class_properties
(#4511) (9e45882)
[1.2.175] - 2022-05-03
Bug Fixes
-
(css/prefixer) Add prefix for
print-color-adjust
(#4503) (90ac93a) -
(es/bugfixes) Fix handling of syntax context (#4490) (a444726)
-
(es/compat) Support updating a private field with bigint value (#4136) (1e1d081)
-
(es/compat) Visit default export in
static_block
(#4500) (c4b156c) -
(es/decorators) Make legacy decorator identical to
tsc
(#4496) (f30ffdf) -
(html/parser) Fix adoption agency algorithm (#4487) (00358e1)
-
(html/parser) Fix bugs (#4502) (fca84eb)
-
(html/parser) Fix parsing of
select
(#4504) (b8588c4) -
(html/parser) Fix parsing of a table with a table (#4506) (efe87bc)
-
(node/types) Add types for
jsc.minify.format
(#4492) (3ed1538)
Features
-
(es/compat) Verify private property access (#4465) (de53a6f)
-
(es/lints) Implement
no-var
(#4485) (17f237d) -
(es/parser) Reject private field called
#constructor
(#4491) (857e798) -
(es/preset-env) Update data (#4497) (5c5337d)
Refactor
- (es/minifier) Cleanup (#4489) (50b2049)
Testing
- (es/decorators) Migrate some tests to file-based fixture tests (#4510) (8629e0c)
[1.2.174] - 2022-04-30
Bug Fixes
-
(es/helpers) Update
_interopRequireWildcard
(#4479) (7d40208) -
(es/minifier) Disable some passes for
hoist_props
(#4468) (effc85d) -
(es/minifier) Fix skipping logic of sequential inliner (#4469) (233c4d5)
-
(html) Fix bugs of parser and codegen (#4461) (8bdfcd9)
-
(html/parser) Fix bugs (#4459) (2098228)
Features
-
(es/lints) Implement
no-throw-literal
(#4477) (3a8cade) -
(es/minifier) Drop more returns (#4471) (2739546)
-
(es/minifier) Consider cost of functions for inlining (#4470) (7a584d7)
-
(es/minifier) Drop pure
new
calls (#4478) (918c9c8) -
(es/minifier) Add
pristine_globals
(#4480) (09ba3c0) -
(html/minifier) Remove
javascript:
prefix (#4460) (a1877e7) -
(html/minifier) Remove duplicate attributes (#4474) (750d655)
Miscellaneous Tasks
- (es/minifier) Update debugging utils (#4467) (c45b0df)
[1.2.173] - 2022-04-28
Bug Fixes
-
(es) Remove wrong debug assertion (#4445) (962cf4a)
-
(es/async-generator) Fix
yield*
in async generators (#4452) (0bc0bae) -
(es/parser) Throw syntax error for missing function expr body (#4462) (393cfa8)
-
(es/preset-env) Do not import new features when using old core-js (#4458) (4262874)
-
(html/parser) Fix a bug with nested tags (#4438) (8c4dc4c)
-
(html/parser) Parse table including broken one (#4451) (6e60813)
-
(html/parser) Fix fosting logic for text nodes (#4457) (65a158a)
Features
-
(es/parser) Reject indirect opt chain in assignment (#4447) (df7b3f6)
-
(html/minifier) Compress whitespaces (#4463) (0ae4350)
Miscellaneous Tasks
- (es/minifier) Don't run tests with infinite loops (#4448) (ec7dfb9)
Testing
- (html/codegen) Improve fixture testing (#4450) (f30e771)
[1.2.172] - 2022-04-26
Bug Fixes
-
(es/ast) Fix tag of
BigInt
(#4440) (2813eaa) -
(es/minifier) Remove the last break in the last
BlockStmt
(#4413) (83244ad) -
(es/minifier) Don't drop arguments to an IIFE without body (#4419) (aa19b65)
-
(es/minifier) Preserve more side effects (#4420) (8ab12fd)
-
(es/minifier) Fix analysis of update expressions (#4428) (9733917)
-
(es/minifier) Remove wrong logic for optimizing
delete
s (#4429) (8118569) -
(es/parser) Fix top-level await with binary expr (#4426) (465cc2f)
-
(html/lexer) Fix lexing of html entity (#4423) (9b26dbd)
-
(html/parser) Parse foreign attributes (#4400) (cf3be64)
-
(html/parser) Fix parsing of foreign elements (#4422) (4ccbdf2)
-
(html/parser) Fix span (#4437) (3293060)
-
(html/parsing) Fix parsing of formatting elements (#4442) (8f2a3ea)
Features
-
(es/optimization) Accept top level mark from simplifiers (#4434) (8048597)
-
(es/parser) Reject invalid regex flags (#4404) (c96e322)
-
(es/parser) Reject invalid
new.target
(#4406) (da02c9d) -
(es/parser) Reject
'use strict'
with non-simple params list in TS (#4416) (6dc64c9) -
(es/resolver) Use different syntax context for unresolved refs (#4436) (53610fd)
-
(html) Prepare processing system (#4358) (7332dce)
-
(html/codegen) Print unquoted value when it is possible (#4402) (c15dc4f)
-
(html/minifier) Initialize crate (#4403) (63a6280)
-
(html/minifier) Remove
script
type
attribute (#4407) (fec0f2e) -
(html/minifier) Compress
type
forstyle
andlink
tags (#4424) (25a87f0) -
(html/minifier) Compress doctype (#4425) (6fc70f3)
-
(html/minifier) Compress default values of attributes (#4427) (4c699f2)
-
(node/css) Add css bindings crate (#4346) (6a19ff1)
-
(preset-env/base) Update "browserslist-rs" (#4435) (1c2af93)
Miscellaneous Tasks
-
(ci) Improve bot script (#4430) (c216a03)
-
(ci) Use
yarn
instead ofnpm
(#4432) (b3fb0e9) -
(es/minifier) Add a script to instrument real-world inputs (#4399) (efdf93d)
-
(plugin) Add a benchmark (#4397) (60efb7e)
-
(repo) Make
git commit
faster (#4421) (65e00aa)
Performance
- (es/minifier) Add some fast-path to the
MultiReplacer
(#4408) (4c9e5c0)
Testing
-
(es) Add tests for
.swcrc
(#4398) (5134b4f) -
(es/minifier) Split tests into improvement and stabilization (#4409) (ab88637)
-
(es/minifier) Use
_
instead of-
for terser tests (#4411) (4e11303) -
(es/minifier) Execute terser tests if possible (#4418) (f787f8c)
-
(es/minifier) Categorize tests (#4410) (9b34ecf)
[1.2.171] - 2022-04-22
Bug Fixes
-
(common) Ignore extraneous mapping of 1, 0 => 0, 0 (#4381) (a06c559)
-
(es) Fix CI (#4385) (805238a)
-
(es/codegen) Allow non-ascii character in more places (#4394) (139ac24)
-
(es/minifier) Don't drop labels if required (#4370) (922299a)
-
(es/minifier) Preserve more labels (#4380) (87859e3)
-
(es/minifier) Disable
conditionals
by default (#4391) (375cc59) -
(plugin) Align deps to fix build (#4377) (8419b60)
-
(plugin) Align deps for the plugin (#4384) (46e88a3)
Features
-
(es/minifier) Improve handling of switches (#4260) (8cf3ddd)
-
(es/parser) Reject await expr with
**
(#4395) (59f63da)
Miscellaneous Tasks
- general: Fix wasm publish script (234e380)- general: Fix CI (11012d0)- general: Fix CI, really (000e31b)
Testing
- (es/parser) Add a test for a fixed issue (#4388) (b9cba1a)
[1.2.170] - 2022-04-20
Performance
- (es/minifier) Fix default of
TerserCompressorOptions
(#4378) (203dde9)
Testing
- (es/minifier) Organize tests (#4375) (4a8b1da)
[1.2.169] - 2022-04-20
Bug Fixes
-
(es/lexer) Fix handling of object properties with the name
function
(#4374) (3bdf5a8) -
(es/minifier) Fix default values of
toplevel
(#4366) (128175c) -
(es/minifier) Apply name mangler as much as we can (#4365) (a8ed5ba)
-
(es/minifier) Apply name mangler even more (#4368) (4b1590e)
-
(es/modules/cjs) Fix order of statements (#4361) (5c1ce0b)
Features
-
(cli) Support configuring output file extension (#4343) (c4f01c6)
-
(es/minifier) Implement more evaluation rules (#4356) (e13b862)
-
(es/minifier) Improve evaluation of template literals (#4359) (2e095fa)
-
(es/minifier) Implement all template literal evaluation rules (#4360) (e60ae2a)
-
(plugin) Support
lookup_char_pos
ofSourceMap
(#4364) (f06c862)
Miscellaneous Tasks
-
(es) Rename benchmarks (#4355) (8309440)
-
(es/minifier) Setup correct benchmark (#4372) (5d179bf)
-
(node/types) Add
unsafe
to compress options (#4362) (b63cd53)- general: Remove an incorrect link inCONTRIBUTING.md
(#4363) (c661d5f)
Performance
-
(es/minifier) Make
base54
use stack-allocated vector (#4371) (6300b9c) -
(es/minifier) Change default value of
passes
to3
(#4373) (a8eb00c)
Testing
- (es/parser) Add a test for a fixed issue (#4357) (bf76175)
[1.2.168] - 2022-04-17
Bug Fixes
-
(es/codegen) Emit decorators before export (#4349) (4953ce4)
-
(es/minifier) Preserve vars in dead branches (#4345) (5a5e41a)
Features
- (es/minifier)
const
=>let
(#3654) (b3b95ac)
Miscellaneous Tasks
-
(es/minifier) Organize scripts (#4347) (14c74f5)
-
(es/minifier) Improve scripts (#4339) (2563c7f)
-
(repo) Make git commit faster (#4353) (f7df3d8)- general: Fix CI script (a953455)
Performance
-
(es) Disable wrong parallelization (#4354) (da6fa60)
-
(es/minifier) Split frequently used functions (#4352) (42e15ae)
[1.2.167] - 2022-04-17
Bug Fixes
- (es/parser) Reject optional constructor call (#4340) (31b3336)
Miscellaneous Tasks
- (ci) Fix wasm publish script (1900d35)
Performance
- (es/minifier) Make name mangler faster (#4342) (66ff7b8)
[1.2.166] - 2022-04-15
Bug Fixes
-
(css/parser) Parse legacy
calc
s (#4320) (81370d1) -
(css/prefixer) Don't prefix if it's already prefixed (#4307) (690ce26)
-
(css/prefixer) Handle at-rules and don't generate unnecessary prefixes (#4318) (ac4f14a)
-
(css/prefixer) Fix more bugs (#4330) (405e5ed)
-
(es/codegen) Fix overflow of numeric literals (#4321) (0245e26)
-
(es/codegen) Fix codegen of arrow expressions (#4306) (4c99730)
-
(es/compat) Fix renaming bug of
block_scoping
(#4310) (6c9882e) -
(es/lints) Check parameters in the duplicate binding rule (#4288) (e4a565c)
-
(es/loader) Fix traversal of node modules resolver (#4327) (780de70)
-
(es/minifier) Fix inlining of uninitialized variables (#4292) (b990b19)
-
(es/minifier) Respect
dead_code
(#4328) (8886a4b) -
(es/minifier) Inline before cloning (#4338) (4110fcb)
-
(es/parser) Enable static blocks by default (#4334) (7599fe7)
-
(es/parser) Make parsing of TS InstantiationExpr more permissive (#4332) (ea466af)
-
(node-swc/types) Add
isTypeOnly
to types (#4303) (1a48732)
Features
-
(css/minifier) Compress colors (#4308) (65b18ee)
-
(es) Support
typeof
with private fields (#4302) (d0de5a6) -
(es/minifier) Enable
conditionals
by default (#4301) (7e8f613) -
(es/minifier) Enable
dead_code
by default (#4309) (74a5087) -
(es/minifier) Improve sequential inliner (#4335) (f92242d)
-
(es/parser) Support
extends
clause toinfer
type (#4326) (1c3d1af)
Miscellaneous Tasks
-
(*) Typo + fomatting (#4304) (37a8c90)
-
(ci) Fix CI (#4299) (adea17d)
-
(es/minifier) Update terser test references (#4297) (df0d572)
-
(es/minifier) Add full benchmark for
.minify()
(#4341) (ba5f743)
Refactor
-
(bindings) Rename crates (#4337) (83a8f48)
-
(es/minifier) Clean up logging (#4322) (2002554)
-
(es/parser) Simplify logic (#4329) (37aec5b)
[1.2.165] - 2022-04-09
Bug Fixes
-
(css/prefixer) FIx a bug related to
writing-mode
(#4278) (7f38e06) -
(es/minifier) Fix handling of
eval
(#4273) (c961371) -
(es/module) Support top-level await in dynamic imports (#4277) (720244f)
-
(es/optimization) Don't create invalid sequence expressions (#4285) (4868c73)
Features
-
(html) Add raw fields (#4281) (ee108af)
-
(plugin) Implement
Copy
andClone
for the comment proxy (#4280) (3c4e520) -
(plugin) Make more types serializable (#4289) (281db2c)
-
(plugin/runner) Allow fs access from wasi plugin (#4279) (fc3a2d0)
Miscellaneous Tasks
- (plugin) Align version of
swc_common
to include dummy comment api (#4270) (fad652f)
Refactor
-
(es/minifier) Merge code for multi-replacer (#4269) (434dcf4)
-
(plugin/api) Expand the proxy crate (#4290) (cf7ca50)
[1.2.164] - 2022-04-07
Bug Fixes
-
(es/codegen) Commit
;
before a template literal (#4252) (8cd903b) -
(es/codegen) Handle comments on the argument of
throw
(#4254) (ccd3188) -
(es/minifier) Remap variables on IIFE evaluation (#4230) (55b98fc)
-
(es/minifier) Handle empty RegExp (#4235) (6a51d04)
-
(es/minifier) Fix infinite loops (#4250) (350a195)
-
(es/optimizer/simplifier) Collect idents in init first (#4239) (b1645f6)
-
(es/parser) Support error reporting for TS1274 (#4232) (6d380ea)
-
(es/parser) Adjust context in a function block (#4264) (b89937c)
-
(html/parser) Support cdata (#4259) (3f6037b)
-
(html/parser) Fix bugs (#4265) (105a0cc)
Features
-
(css/parser) Improve error recovery for unknown at-rules (#4257) (8b6647c)
-
(es) Support jsonc for
.swcrc
(#4236) (8008b79) -
(es/ast) Add
raw
toNum
(#4245) (f39d3ac) -
(es/minifier) Improve sequential inlining (#4231) (fe358ad)
-
(es/minifier) Improve inliner and evaluator (#4216) (4701da5)
-
(es/minifier) Exclude local bindings from aliases (#4261) (ab1f440)
-
(es/minifier) Implement more rules for
hoist_props
(#4262) (1f5cac4) -
(es/parser) Report more errors (#4244) (674275c)
-
(html) Initialize (#4240) (3e7872c)
-
(html) Support boolean attributes (#4258) (8640c8b)
-
(plugin) Implement proxy for
dummy_with_cmt
(#4268) (b15e984) -
(plugin/api) Expose
swc_ecma_utils
(#4256) (7bc04a6)
Miscellaneous Tasks
-
(bench) Migrate to criterion (#4237) (06d0891)
-
(build) Dedup
swc_common
(#4247) (4093814) -
(ci) Fix benchmark action (#4242) (1f466e1)
-
(es/preset-env) Typo (#4243) (06020bb)
Refactor
- (plugin) Consolidate exported namespaces (#4263) (8706c17)
Testing
[1.2.163] - 2022-04-03
Bug Fixes
-
(cli) Update plugin template (#4222) (69cb512)
-
(css/prefixer) Fix flex box (#4212) (75b0ed5)
-
(es/preset-env) Change order of passes (7eea95b)
Features
-
(css/ast) Derive more traits (#4220) (def2826)
-
(es/ast) Add
raw
toBigInt
(#4218) (e91f271) -
(es/compat) Support more regex expressions (#4205) (b793aa0)
-
(plugin) Implement plugin api for comments (#4229) (6ea66cf)
Performance
-
(es/minifier) Add fast-path for sequences pass (#4217) (688f653)
-
(es/parser) Improve performance by using
#[cold]
(#4215) (1645562)
Refactor
- (css/ast) Union all at-rules to one at-rule in AST (#4189) (6696a93)
Testing
- (es) Add a test to ensure that an issue is not a bug of swc (#4227) (bbbaf15)
[1.2.162] - 2022-03-31
Bug Fixes
-
(es/compat) Handle spreads of string literials (#4191) (4f5c5cf)
-
(es/compat) Handle
new.target
in getter/setter properties (#4194) (3426dda) -
(es/compat) Fix label handling of
block_scoping
(#4198) (c946236) -
(es/compat) Hoist env in function params (#4210) (6a27a0c)
-
(es/minifier) Fix
react-ace
(#4183) (9a9a4f3) -
(es/minifier) Fix evaluation of IIFEs (#4207) (1071854)
-
(es/optimization) Support jsx in
dce
(#4203) (073751f) -
(es/parser) Fix parsing of an arrow and a conditional expression (#4199) (99a0d34)
-
(node-swc) Initialize custom trace subscriber only once (#4209) (eecda21)
Features
-
(common/preset-env) Dedup
arrayvec
(#4201) (1ad357c) -
(es/minifier) Evaluate trivial expressions (#4179) (a6f6799)
-
(es/minifier) Optimize switches more correctly (#4180) (6d3ea17)
-
(es/minifier) Evaluate more iifes (#4200) (11fe5fa)
-
(es/parser) Allow parsing files with missing close braces (#4187) (cffe5ca)
-
(plugin) Implement PoC of comments api (#4206) (536a190)
Miscellaneous Tasks
- (es/parser) Add span tests back (#4186) (1759567)
Refactor
[1.2.161] - 2022-03-28
Bug Fixes
-
(cli) Fix executable permission (#4154) (e1d1d82)
-
(es) Make
ErrorConfig.filename
default to true (#4150) (7a1dcb1) -
(es) Consume surrogate pairs (#4115) (fcf67c4)
-
(es/codegen) Fix codegen of template literals (#4124) (f5a5217)
-
(es/codegen) Emit sourcemap of key-value properties correctly (#4166) (ea0de90)
-
(es/lints) Ignore type-only imports while checking duplicates (#4163) (fce554c)
-
(es/parser) Allow arrows without parenthesized param in typescript (#4138) (ab4ea9f)
-
(es/parser) Fix logic for consuming ts modifiers (#4137) (f5ce79a)
Features
-
(cli) Implements some compile flags (#4125) (a6f39d3)
-
(css/minifier) Compress more properties (#4130) (93866d0)
-
(css/minifier) Remove
@charset
at-rule if possible (#4135) (6b6664a) -
(css/minifier) Compress more properties (#4155) (364ebd9)
-
(css/prefixer) Prefix more properties (#4153) (46c35da)
-
(es/codegen) Compress
\t
in string literals more (#4131) (48f3dc8) -
(es/lints) Use
Str.raw
instead of source map (#4139) (d8a988e) -
(es/lints) Improve error messages (#4142) (0f92eda)
-
(es/lints) Implement
no-param-reassign
rule (#4134) (47712de) -
(es/lints) Remove source map accesses (#4147) (7a06c5b)
-
(es/lints) Implement
symbol-description
rule (#4161) (10851ec) -
(es/lints) Implement
no-obj-calls
rule (#4168) (a88d56e) -
(es/minifier) Implement some unsafe evaluation rules (#4133) (1d3763d)
-
(es/minifier) Implement more rules for optimizing for-if-break (#4140) (ee5c48c)
-
(es/minifier) Implement rules for optimizing loops (#4157) (b37dafb)
-
(es/minifier) Implement more rules for dropping unused assignemnts (#4171) (6f25e57)
-
(es/parser) Report more errors for invalid patterns (#4145) (cd7112b)
-
(es/plugin) Make
quote
optional (#4160) (5de3141) -
(es/typescript) Support optional variance annotations (#4008) (bf1924d)
-
(plugin/runner) Implement initial loading for wasm32 (#4151) (161353c)
-
(wasm/plugin) Implement initial plugin interface for wasm runtimes (#4123) (50f7f46)
Miscellaneous Tasks
Refactor
Testing
- (es) Organize tests (#4129) (ede6e02)
[1.2.160] - 2022-03-22
Bug Fixes
-
(common) Fix the line number of errors (#4082) (57802cf)
-
(es/codegen) Support multiline comments in return stmt (#4102) (552f16d)
-
(es/codegen) Emit decorators on class methods (#4103) (9b64a69)
-
(es/codegen) Fix codes related to sourcemap (#4106) (61f1a37)
-
(es/compat) Visit non-method properties in a nested object literal (#4094) (f5b9600)
-
(es/compat) Fix regression of
es2015
(#4119) (154d443) -
(es/minifier) Consider side effects while lifting sequences (#4116) (4a9817f)
-
(es/parser) Allow parentheses in assignment target (#4105) (d38117d)
-
(es/parser) Make
let
a reserved word in strict mode (#4113) (9a8fc27) -
(es/typescript) Collect all bindings in
strip
(#4118) (13b2f38)
Features
-
(es/ast) Add
raw
toStr
(#4071) (634d732) -
(es/lints) Implement
valid-typeof
rule (#4095) (9ceefa7) -
(es/lints) Implement
use-isnan
rule (#4080) (dd862ba) -
(es/minifier) Implement more evaluation rules (#4030) (c6f8742)
Miscellaneous Tasks
-
(issues) Add some links (69f16da)
-
(issues) Typo (ea0bbc6)
-
(plugin/runner) Update
wasmer-*
(#4111) (f41a717)- general: Typo (3f78053)- general: Fix CI (565a720)- general: Fix CI (b31ead5)
Testing
- (es/codegen) Add a test for fixed issue (#4121) (95c572f)
[1.2.159] - 2022-03-19
Bug Fixes
-
(api/rust) Exclude test files from rust packages (#4091) (533f756)
-
(common) Fix handling of input source maps (#4086) (b716210)
-
(es/compat) Visit generated codes from
arrow
(#4090) (cb0881c) -
(es/compat) Revert wrong fix of
arrow
(#4093) (0d6bd81) -
(es/module/cjs) Fix conflict of a local export and exports-alls (#4089) (6ac7934)
-
(es/resolver) Fix handling of decorators (#4084) (f662298)
Features
-
(es/lints) Implement
no-new-symbol
rule (#4076) (b39e345) -
(es/module/cjs) Support
import.meta.url
(#4087) (d0f687b)
Testing
- (es/parser) Add a test for a fixed issue (#4085) (792ab2c)
[1.2.158] - 2022-03-18
Bug Fixes
-
(css/prefixer) Reduce the number of vars in debug build (#4078) (4af5e6d)
-
(es/helpers) Fix decorator helper script (#4072) (55cfad1)
-
(es/modules) Fix sourcemap, really (#4074) (22d005e)
-
(es/react) Fix
_createElement
(#4070) (bb08354)
Features
- (es/modules) Support namespaced reexports (#4073) (9458f08)
Miscellaneous Tasks
- (repo) Auto-lock outdated issues and PRs (#4066) (ed7a5e5)
[1.2.157] - 2022-03-17
Bug Fixes
-
(es/ast) Revert removal of
definite
inPrivateProp
(#4051) (bbe8f3d) -
(es/codegen) Fix codegen of string literals (#4037) (bd444c0)
-
(es/codegen) Fix sourcemap (#4062) (9310c39)
-
(es/helpers) Add missing
export
forclassPrivateFieldLooseKey
(#4045) (3125bba) -
(es/helpers) Export
classPrivateFieldLooseKey
asdefault
(#4047) (025c921) -
(es/helpers) Fix the name of
_classPrivateFieldLooseBase
(#4061) (f8a3849) -
(es/parser) Allow nested ambient context in
.d.ts
files (#4060) (ffcb6ce) -
(plugin/runner) Make build pass for
wasm32
(#4056) (5c84fe5)
Features
-
(cli) Enable plugins for
swc_cli
(#4059) (fefb587) -
(css/prefixer) Support more properties (#4055) (f2517a3)
-
(es/lints) Implement
yoda
rule (#3886) (833958b) -
(node-swc) Add
libc
field in Linux platform packages (#4046) (db9b988) -
(node-swc) Embed target triple string (#4058) (5a2a603)
[1.2.156] - 2022-03-16
Bug Fixes
-
(es) Sort spans while preserving comments (#4011) (b337c2e)
-
(es/compat) Change pass ordering of
es2015
(#4029) (e19a60a) -
(es/decorator) Remove
noop_fold_type
(#4022) (0c8c3d7) -
(es/decorator) Insert initializer to constructor with body (#4028) (0c76696)
-
(es/helpers) Inject helpers for scripts (#4025) (73c91d3)
-
(es/lints) Fix false-positive of
duplicate-exports
(#4041) (ba1c854) -
(es/modules) Use correct span for
ExportAll
s (#4038) (834cd4f) -
(es/parser) Report an error if
LeftHandSideExpression
is invalid (#4001) (f8d6127) -
(es/parser) Allow building with stable
rustc
(#4024) (25e5ccc) -
(es/parser) Emit an error for multiple constructors with body (#4031) (120d2a5)
-
(node-swc) Disable logging of
warn
level by default (#4033) (bba5a33)
Features
-
(cli/compile) Support
out-file
(#4016) (629709e) -
(css) Supports more color notations (#4009) (a4bc092)
-
(css/prefixer) Implement more rules for prefixer (#4013) (4f6f244)
-
(es/minifier) Drop noop calls (#4019) (be09ea6)
-
(es/transforms/base) Add
paren_remover
(#4034) (3a4704f)
Miscellaneous Tasks
-
(ci) Make bump-command check lazy (#4018) (c27b84c)
-
(ci) Fix auto-rebase script (9b8b111)
-
(ci) Revert package scripts to fix publish action (#4039) (eee8e0f)- general: Fix CI (da1fd03)
Refactor
-
(es/minifier) Cleanup (#4020) (3173047)
-
(plugin/runner) Split modules and introduce feature flags (#4035) (dab2002)
Testing
- (es) Add tests for fixed issues (#4036) (71f7cf2)
Build
- (tsconfig) Set
tsbuildinfo
filename (#4042) (a1308c9)
[1.2.155] - 2022-03-14
Bug Fixes
-
(common) Don't use
None
as source while generating source maps (#4007) (0ad13d9) -
(css/codegen) Fix source maps (#3997) (ece8d96)
-
(es) Merge
jsc.loose
andjsc.assumptions
(#3990) (3590ea2) -
(es/resolver) Use correct context for identifiers after type parameters (#4000) (87a3c1c)
Documentation
-
(api/rust) Add examples (#4002) (dac84b9)
-
(api/rust) Add an example for generating code and sourcemap (#4005) (f650ca6)
Features
-
(common) Implement a pretty error reporter (#3946) (40b8a4e)
-
(css/parser) Improve error reporting (#3999) (96d6f37)
-
(es/minifier) Implement more rules for
arrows
(#3992) (64ca5ba) -
(es/minifier) Compress more comparisons (#3996) (a23af2d)
Miscellaneous Tasks
-
(ci) Invoke
yarn
before publishing (743a5da) -
(es/preset-env) Track
.json
files to make cargo happy (bd0fcb9)- general: Update linguist (#3991) (0312292)
Performance
-
(es/minifier) Refactor base54 (#3989) (04db7e2)
-
(es/minifier) Use
Vec<u8>
as a buffer forbase54
(#3993) (f7b212b)
Testing
-
(*) Print diagnostics to stderr while testing (#4003) (ee9a841)
-
(es) Add an execution test system (#3994) (b22d084)
-
(es) Add auto-closable tests (#3995) (dabc492)
Build
- (cargo) Set workspace default members (#3978) (560c81b)
[1.2.154] - 2022-03-12
Bug Fixes
-
(es) Change error message as it can be misleading (#3982) (48f2fd8)
-
(es/preset-env) Fix compilation issue (#3972) (7ebfcfa)
-
(es/preset-env) Publish
builtin.json
(#3973) (858372f) -
(es/preset-env) Move out finished proposals (#3970) (502f934)
-
(preset-env) Use
core-js-compat
and@babel/compat-data
directly (#3968) (487273f)
Features
-
(*) Update dependencies (#3964) (1206c84)
-
(css/codegen) Fix source maps and ast defs (#3974) (516dbc6)
-
(css/prefixer) Prefix more properties (#3976) (4a9a5ff)
-
(es/lints) Mark catch params as binding patterns while checking duplicates (#3981) (f28134f)
Miscellaneous Tasks
-
(ci) Skip unnecessary package for the benchmark (#3980) (485dc54)
-
(es/parser) Add some inline attributes (#3969) (6a6c322)
-
(es/preset-env) Use js script for copying files (#3986) (83722df)
Performance
-
(common) Use
fxhash
everywhere (#3985) (db60291) -
(es/minifier) Make mangler faster by merging hash sets into one (#3983) (107c91d)
-
(es/minifier) Use fxhash for integers (#3984) (67e6154)
-
(es/minifier) Merge hashmap for scoping before checking (#3988) (1beecce)
Testing
- (es) Add tests for fixed issues (#3987) (073d847)
[1.2.153] - 2022-03-11
Bug Fixes
-
(api/rust) Fix transform comment api (#3962) (fcbd3c5)
-
(es) Adjust tracing span level (#3911) (ca071fb)
-
(es/codegen) Fix sourcemap issue caused by reserved
BytePos
values (#3948) (e8018c5) -
(es/compat) Refer this in constructor when
super_is_callable_constructor
is set (#3944) (de8a711) -
(es/lints) Don't visit types while collecting
const
(#3967) (c6b5371) -
(es/minifier) Preserve fuction parameters used for template literals in
evaluate
andreduce_vars
(#3949) (91a302a) -
(es/parser) Parse if-else chain iteratively (#3961) (76e6468)
-
(node-swc/types) Add
reserved
toTerserMangleOptions
(#3959) (70a68a7)
Features
-
(css/codegen) Support source map (#3958) (5a6ebd3)
-
(es) Add an option to preserve all comments (#3815) (c5a0c9a)
-
(es/lints) Refine error message (#3952) (579aeb7)
[1.2.152] - 2022-03-10
Bug Fixes
-
(es) Don't create
.swc
if not required (#3937) (46e9d3f) -
(es/compat/es2015) Fix span handling of
arrow
andclasses
(#3921) (12b8606) -
(es/minifier) Skip exported vars while collapsing vars (#3928) (cc564ff)
-
(es/module) Make exported vars follow specification (#3906) (534fc52)
-
(es/module) Fix exported vars with bigint values (#3909) (8559fc9)
-
(es/module) Use correct return values for suffix update expressions (#3927) (dc457b4)
-
(es/module/cjs) Allow re-exports to be lazy (#3856) (f575b1b)
-
(es/parser) Fix the logic for token contexts (#3926) (4b4aef3)
-
(es/transform/optimization) Prevent inlining of vars used as RHS in logical expressions (#3907) (782a874)
-
(es/typescript) Remove imports used in interfaces and type signatures (#3893) (5c92b2d)
-
(wasm) Fix handling of
swc_common::GLOBALS
(#3936) (45a4374)
Features
-
(common) Align
stable_hasher
to latest rustc (#3895) (372f298) -
(css/lints) Implement
custom-property-no-missing-var-function
rule (#3890) (19ececc) -
(css/lints) Implement
no-duplicate-at-import-rules
rule (#3833) (59c84ac) -
(css/parser) Improve error recovery (#3901) (6f781c3)
-
(css/prefixer) Implement more prefixing rules (#3905) (b25c479)
-
(css/prefixer) Handle more properties (#3919) (c2b9e1c)
-
(css/prefixer) Implement more rules (#3933) (62ab179)
-
(es/compat) Add tracing support to remaining compat transforms (#3904) (bd0a921)
-
(es/compat) Add pure comments for class fields keys (#3939) (112f428)
-
(es/fixer) Remove extra parens around IIFE in statements (#3918) (7cfa930)
-
(es/minifier) Remove pure calls (#3925) (bd838ac)
-
(es/minifier) Improve dropping of unused vars (#3923) (9e4dea6)
-
(es/parser) Report errors for non-abstract members in an abstract class (#3917) (16182d5)
-
(es/parser) Relax MSRV requirement (#3922) (a8ac7e3)
-
(es/testing) Print comments in
test_fixture
(#3920) (3d43a9b) -
(preset-env) Update
browserslist-rs
(#3935) (aec1a54)
Performance
-
(*) Update
tracing
to improve performance of disabled spans (#3932) (86ea237) -
(es) Add fast memory deallocator (#3910) (f3da349)
-
(es/minifier) Remove needless type parameter (#3897) (8b3aa6d)
-
(es/minifier) Make optimization of pure calls parallel (#3938) (f1ec862)
-
(es/parser) Improve performance by adjusting inlining (#3902) (4387813)
Refactor
- (css/parser) Remove unused codes (#3903) (3a9af73)
[1.2.151] - 2022-03-07
Bug Fixes
- (es/module) Revert fix for
jest.spyOn
(8e30d83)
Features
-
(es/compat) Enable
set_public_method
for TypeScript (#3884) (cb93883) -
(es/fixer) Remove extra parens around iife in expression position (#3887) (9dd0105)
-
(es/lints) Support module/script mode in
duplicate_bindings
(#3880) (0181fbe)
Performance
-
(es/lints) Extract top level bindings only if the rule is enabled (#3889) (3e8efac)
-
(es/minifier) Add a fast-path to export merger (#3891) (a47eed7)
[1.2.150] - 2022-03-06
Bug Fixes
-
(es/module) Fix
jsc.paths
(#3879) (a65755f) -
(es/parser) Fix parsing of
const
in ambient context (#3883) (aea59b8)
[1.2.149] - 2022-03-06
Bug Fixes
-
(css/lints) Allow empty
@layer
at-rule before@import
at-rule (#3842) (90fdbab) -
(es/lints) Ignore identifiers used as types while checking for duplicate bindings (#3869) (d10e662)
-
(es/minifier) Don't remove comments if
compress
is not configured (#3866) (e70c9d8) -
(es/module) Fix
jest.spyOn
(#3845) (9546eef) -
(es/module) Visit the value of class properties (#3877) (6a005fc)
-
(es/parser) Use unicode id instead of xid (#3867) (4426250)
-
(es/parser) Allow
await
in non-strict mode (#3871) (f757163)
Features
-
(cli) Setup subcommands for the features (#3858) (367a57d)
-
(css) Improve error recovery (#3853) (c84bf13)
-
(css/lints) Allow using regex in ignore list (#3855) (dc0de58)
-
(css/minifier) Compress
@import
at-rule (#3850) (ccfb4bf) -
(es/compat) Implement loose mode for
async_to_generator
(#3870) (c7f2bdb) -
(es/minifier) Implement
pure_getters
partially (#3872) (a264360) -
(es/module/cjs) Support regex-based patterns for lazy config (#3704) (1f70fa6)
-
(es/transform) Unify logic for handling class properties (#3766) (6f076e4)
Performance
-
(es) Filter logs for
cranelift
out (#3801) (225f9a7) -
(es/ast) Implement
Clone
without inline for some enums (#3878) (3b04789) -
(es/compat) Add tracing support to transforms for from es2017 to es2019 (#3844) (a933db5)
-
(es/compat) Add tracing support for es2015 transforms (#3857) (cd8bb0f)
-
(es/transform) Use
SingleThreadedComments
for transform (#3847) (73ec0b3)
Testing
-
(es) Add a test for a fixed issue (#3873) (0ab3263)
-
(es) Add tests for fixed issues (#3874) (2605e13)
-
(es) Add tests for fixed issues (#3875) (8d3c9d3)
-
(es/transform/jest) Ensure that sourcemap is working (#3864) (fc87f43)
-
(swc) Use external helpers for reference testing (#3865) (8400708)
[1.2.148] - 2022-03-04
Bug Fixes
-
(css/codegen) Fix codegen of preserved tokens (#3819) (7ba5861)
-
(css/codegen) Fix the output of
SimpleBlock
(#3838) (e3a5c14) -
(css/parser) Fix parsing of
;
in values (#3821) (30cd29b) -
(es/compat) Fix block scoping of variables (#3826) (406b8ea)
-
(es/hygiene) Fix renaming bugs (#3824) (043fba2)
-
(es/minifier) Preserve more variables (#3805) (89388e6)
-
(es/minifier) Don't reorder unnecessarily (#3817) (8a468f7)
-
(es/minifier) Support declaring multiple bindings with the same name (#3837) (0fc819e)
-
(node-swc) Correctly close trace spans after completion (#3811) (ffb2ee8)
-
(node-swc) Fix handling of
OptionalChainingExpression
inVisitor
(#3809) (4d123c3) -
(node-swc/types) Add a missing field of
ExportNamedDeclaration
(#3822) (bde7577)
Features
-
(config) Add a dedicated cached regex (#3832) (efc6741)
-
(css) Support color functions (#3836) (3df887c)
-
(css/lints) Add
font-family-no-duplicate-names
rule (#3818) (2d273d6) -
(css/lints) Implement
color-hex-alpha
rule (#3829) (818b408) -
(css/minifier) Compress more declarations (#3840) (0db6915)
-
(css/parser) Improve error recovery (#3810) (f969f8c)
-
(css/parser) Improve error recovery (#3828) (fbb98aa)
-
(es/lints) Implement
radix
rule (#3651) (f6b4bbe) -
(es/minifier) Drop more function parameters in strict mode (#3814) (789eb7b)
-
(es/minifier) Improve sequential inlining (#3820) (364532e)
-
(es/minifier) Implement more rules (#3841) (260c2a8)
Miscellaneous Tasks
- general: Ignore linguist detection for CSS test files (#3831) (8755ce1)
Performance
-
(es) Use
Mutex
fromparking_lot
(#3830) (351b814) -
(es/parser) Remove duplicated instantiations of
Parser
to reduce binary size (#3813) (f5103a7)
Testing
- (es/compat) Organize tests (#3825) (814dcc0)
[1.2.147] - 2022-03-02
Bug Fixes
-
(es/compat) Initialize class fields as a last step (#3767) (11bf29f)
-
(es/minifier) Disable some operations for asm.js codes (#3572) (e7f7f69)
-
(es/minifier) Fix inlining logic (#3776) (cfc0363)
-
(es/minifier) Preserve unresolved references (#3780) (73cab63)
-
(es/minifier) Fix optimizations of terminating expressions (#3794) (8beaa20)
-
(es/react) Catch refresh directives widely (#3791) (5ae907f)
-
(es/react) Fix logic for extracting refresh comments (#3796) (b485b5a)
-
(es/typescript) Transform
this
in TypeScript classes (#3764) (5f3f9ef) -
(node-swc/cli) Correctly expose
swcx
entrypoint (#3784) (95ecc01)
Documentation
- (adr) Add
adr-00002
for event trace profiling (#3787) (3c1c5d0)
Features
-
(css/ast) Union
Value
andComponentValue
(#3804) (3ec45a6) -
(css/lints) Add CSS linter (#3765) (66c6cae)
-
(css/lints) Add
selector-max-combinators
rule (#3789) (e389bef) -
(css/minifier) Convert more length (#3769) (500d62c)
-
(es/codegen) Optimize output of new expressions without arguments (#3800) (e1b13eb)
-
(es/compat) Optimize handling of literals in computed property names (#3756) (8ed4d2f)
-
(es/compat) Add tracing support for
es2022
transforms (#3785) (4d70482) -
(es/compat) Use sequence expressions instead of iife in
classes
pass (#3773) (5b6beca) -
(es/compat) Add tracing support for es2020 transforms (#3798) (8f41d7a)
-
(es/dep-graph) Add support for
require.resolve
(#3783) (19b84e7) -
(es/minifier) Consider
arguments
while dropping unused assignments (#3775) (714e05e) -
(es/module) Workaround stack overflow bug of JavaScriptCore related to too many exports (#3763) (ad0a853)
-
(es/modules) Support system js (#3659) (557a520)
-
(es/parser) Raise a syntax error on an invalid shorthand assignment (#3734) (2aa3b21)
-
(es/quote) Implement quasi quoter partially (#3155) (fe0ddcc)
-
(es/quote) Support variables (#3774) (e3c374b)
-
(plugin) Expose
swc_ecma_quote
(#3790) (bc60a6e) -
(plugin/runner) Update
wasmer
tov2.2
(#3788) (99d536e)
Miscellaneous Tasks
- general: Update
rustc
(#3768) (3798436)
Performance
-
(css/lints) Skip disabled rules (#3803) (0336029)
-
(plugin/runner) Optimize
write_into_memory_view
(#3797) (7fd0eee)
Refactor
-
(css/ast) Simplify AST types (#3753) (815a489)
-
(css/lints) Simplify error reporting API (#3781) (b8211da)
Testing
-
(css/parser) Add tests for selectors (#3770) (1651bcc)
-
(css/parser) Add css files for material design (#3777) (189707a)
-
(es/minifier) Prepare porting more rules from
terser
(#3779) (86072b5)
Build
- (node-swc) Rename entrypoint to avoid artifact collision (#3806) (b485a2f)
[1.2.146] - 2022-02-27
Bug Fixes
-
(css) Fix processing of integers (#3752) (f258ee4)
-
(es/codegen) Fix escaping of unicodes in es5 (#3636) (dba90ea)
-
(es/helpers) Cast the result of the
instanceof
helper to boolean (#3728) (72c9e6c) -
(es/parser) Handle trailing comma and bracket after an arrow function in conditional (#3685) (342dccc)
-
(es/typescript) Allow empty nested namespaces (#3754) (f5a3647)
-
(plugin/macro) Do not free guest memory twice (#3732) (d8b0166)- general: Fix(es/parser) Throw a syntax error for
const
without initializer in strict mode (#3742)
Co-authored-by: Donny/강동윤 kdy1997.dev@gmail.com (abc0572)
Features
-
(cli) Add tracing options for
compile
command (#3746) (41f92d2) -
(css/ast) Support more selectors (#3729) (f5c5e77)
-
(css/ast) Allow more syntax for
@supports
at-rule (#3740) (9b92eba) -
(css/ast) Improve type definitions for unicode ranges (#3757) (91cf965)
-
(css/minifier) Compress
display
(#3706) (8512719) -
(es/codegen) Add sourcemap entry for injected semicolons (#3750) (0fd4fd2)
-
(es/compat) Implement loose mode for
class_properties
(#3722) (14155eb) -
(es/dep-graph) Add
TsImportEqualsDecl
forDependencyCollector
(#3758) (7de7eca) -
(es/parser) Provide more api for reducing binary size (#3747) (47ccff8)
-
(macros) Add
#[swc_trace]
(#3738) (b4830b6) -
(node-swc) Add experimental trace support in
@swc/core
(#3731) (a454996) -
(plugin) Support tracing plugin execution (#3744) (5c29f15)
-
(visit) Allow using
?Sized
as visitor (#3745) (b0b5d5d)
Miscellaneous Tasks
- general: Skip CI for automated commits (#3760) (6d98d14)- general: Skip more actions for automated commits (#3761) (0ff4ad3)
Performance
-
(es/modules) Reduce usage of generics (#3743) (1094018)
-
(es/parser) Reduce usage of generics to reduce binary size (#3726) (e21579d)
Refactor
-
(es) Make compilation faster (#3749) (3d94465)
-
(es/transforms) Use recommended ast apis (#3735) (fd22379)
Testing
- (css/parser) Add malformed hex color tests (#3762) (9f90882)
[1.2.145] - 2022-02-24
Bug Fixes
-
(es/codegen) Fix sourcemap of comments (#3723) (b8b0c92)
-
(es/compat) Throw an error if a private property is initialized multiple times (#3665) (b6434e5)
-
(es/parser) Emit an error for non-last rest element in an object pattern (#3675) (6a9d778)
-
(es/parser) Allow
Expr::TsInstantiation
in extends clause (#3696) (d499b8c) -
(es/parser) Disallow using reserved words as an expression in typescript (#3697) (d6522f3)
-
(es/parser) Fix a typescript instantiation expression followed by EOF (#3699) (010fe04)
-
(es/parser) Fix the span of an export declaration containing a const enum (#3701) (4318a2e)
-
(es/parser) Don't attach comments to
;
(#3720) (8b87bb4) -
(es/typescript) Fix
name
of decorated classes (#3689) (1e49fcd) -
(es/typescript) Support heterogeneous enums (#3721) (1761cab)
Features
-
(cli) Support stdin (#3688) (3cf3b20)
-
(css/minifier) Compress urange (#3668) (b1476d2)
-
(css/minifier) Compress lengths (#3698) (7079e88)
-
(css/minifier) Compress more properties (#3708) (cd95ac4)
-
(css/minifier) Compress alpha of values (#3707) (bff04b4)
-
(es/lints) Implement
default-param-last
rule (#3681) (e252265) -
(es/typescript) Inline typescript
enum
s (#3647) (1743302) -
(node-swc) Expose the new
swc_cli
as a binary namedswcx
(#3684) (9cc094a)
Miscellaneous Tasks
Refactor
-
(css/ast) Fix the type definitions for an plus b syntax (#3682) (321ee75)
-
(es) Improve ast apis (#3690) (135acf3)
[1.2.144] - 2022-02-22
Bug Fixes
-
(es/ast) Fix definition of
Expr::TsInstantiation
(#3657) (68a1551) -
(es/parser) Allow type arguments inside optional chaining (#3653) (581b63c)
Features
-
(cli) Improve the template
package.json
for plugins (#3641) (f237aee) -
(css/ast) Improve parsing of colors (#3680) (003a7b8)
-
(css/minifier) Compress selectors (#3623) (9e691fe)
-
(css/minifier) Compress declarations (#3649) (7d15316)
-
(css/minifier) Compress degrees to zero (#3664) (0b5f554)
-
(css/minifier) Compress urls (#3666) (fab6473)
-
(css/minifier) Compress transform functions (#3663) (1afbd1b)
-
(css/minifier) Compress frequency (#3669) (9b28d4d)
-
(es/ast) Support TypeScript Instantiation Expression (#3642) (61e711c)
-
(es/lints) Implement
no-new
rule (#3634) (7ff4cbc) -
(es/lints) Implement
no-bitwise
rule (#3635) (5a9d0cf) -
(es/lints) Add
no-loop-func
rule (#3630) (f4af363) -
(es/lints) Implement
no-empty-function
rule (#3565) (319d501) -
(es/minifier) Merge exports (#3643) (10adf1e)
-
(es/minifier) Improve name mangler (#3638) (e9fabd6)
-
(es/minifier) Drop more unused vars (#3656) (de6effc)
-
(es/preset-env) Upgrade
browserslist-rs
(#3670) (3199966) -
(plugin) Pass
NODE_ENV
to plugins using the plugin context (#3677) (ca0a448)
Miscellaneous Tasks
-
(ci) Kill previous runs (#3678) (f733c9c)
-
(cli) Improve the plugin template (#3632) (0f1afcb)- general: Typo (#3646) (c5f0e87)
Performance
- (es/minifier) Parallelize
join_vars
(#3655) (da2c77d)
Refactor
-
(es/ast) Change definition of optional chaining expressions (#3645) (2cb66ae)
-
(preset-env) Extract common logic for
browserslist
support (#3674) (b1d2470)
Build
-
(cargo) Use
lld
for windows-x64 (#3683) (82914d4) -
(swc) Remove unused dependencies (#3673) (210f17a)
[1.2.143] - 2022-02-19
Features
-
(es/lints) Implement
no-restricted-syntax
rule (#3607) (72343ba) -
(es/minifier) Treat
!0
as a literal while inlining (#3631) (d2c9441)
Performance
- (es/minifier) Fix performance bug of the mangler (#3633) (fd0e952)
[1.2.142] - 2022-02-18
Bug Fixes
-
(css) Fix recovery mode for functions (#3600) (5420bcc)
-
(css/parser) Fix parsing of component values (#3611) (b7dcccc)
-
(es) Pass
FileName::Custom
to plugins (#3578) (df69930) -
(es/compat) Handle
super
andnew.target
in class properties (#3594) (3191741) -
(es/lints) Use
kebab-case
for configuration (#3590) (71a94b1) -
(node-swc/types) Fix experimental config options (#3603) (2b5eba1)
-
(plugin) Fix caching of wasm modulee (#3616) (05aecf5)
-
(swc_common) Fix names of proxied functions (#3608) (e863f9d)
Documentation
-
(api/rust) Fix rustdoc (#3620) (4d5ba55)
-
(swc_common) Document error reporting using
HANDLER
(#3605) (9df0d7c)
Features
-
(api/rust) Improve error messages for wrong usages of scoped thread-local variables (#3606) (798ef13)
-
(cli) Initialize compile command (#3602) (5ed3f3a)
-
(css/ast) Use
SimpleBlock
for@keyframe
s (#3577) (a20ed34) -
(css/codegen) Improve minification of selectors (#3624) (8271566)
-
(css/minifier) Remove empty qualified rules and at-rules (#3597) (8c9b154)
-
(css/minifier) Implement the rule for easing functions (#3615) (8e06b2a)
-
(es/compat) Check for duplicate private names and undefined private names (#3613) (5c03551)
-
(es/lints) Implement
no-dupe-args
rule (#3574) (3e29b73) -
(es/lints) Allow using number as an error level (#3593) (08c343b)
-
(swc) Add
$schema
and utf8-bom support for.swcrc
(#3622) (3615f41)
Miscellaneous Tasks
- (ci) Fix the script for
CHANGELOG.md
(cbe87db)
Refactor
- (node-swc/types) Provide typed configuration for plugins (#3584) (07485d3)
Testing
-
(css/codegen) Add tests for custom properties in at-rules (#3596) (b019165)
-
(es/modules) Add a test for a fixed issue (#3586) (038e7f8)
-
(es/parser) Add a test for #2417 (#3588) (a2f9c88)
-
(es/typescript) Add a test for #2670 (#3589) (f469e65)
Build
- (swc) Bump the version of
parking_lot
(#3604) (5061101)
[1.2.141] - 2022-02-16
Bug Fixes
-
(es/lints) Fix
duplicate-bindings
for typescript (#3583) (786d016) -
(node-swc/types) Change
StringLiteral.has_escape
toStringLiteral.hasEscape
(#3581) (bf68155)
Features
-
(css/ast) Use
SimpleBlock
in more places (#3575) (e97074b) -
(css/minifier) Compress contents of
@keyframes
at-rule (#3579) (803499c)
Miscellaneous Tasks
-
(ci) Don't run pr check for pushes (1bce557)
-
(ci) Make CI faster (55250e4)
-
(ci) Fix the auto-bump scripts (2d9735b)
-
(ci) Fix the auto-bump scripts (7ddd588)
-
(ci) Fix the auto-bump scripts (c775674)
-
(ci) Fix version of git-cliff (32bc17f)
-
(ci) Don't mark as a failure (6173bb8)
-
(ci) Fix the condition for cancel action (d66f701)
-
(ci) Skip instead of cancel (85caf29)
Refactor
- (plugin) Remove direct dependency to
once_cell
(#3582) (88e07b2)
[1.2.140] - 2022-02-15
Bug Fixes
-
(es/compat) Allow destructuring assignment to an object property (#3544) (5802b62)
-
(es/compat) Fix destructing of
const
(#3545) (342c320) -
(es/compat) Apply
new.target
beforeclasses
(#3555) (f1c7394) -
(es/compat) Handle arrow parameters in class fields (#3556) (45b44b0)
-
(es/compat) Fix handling of constructor in
classes
(#3505) (0b16210) -
(es/minifier) Fix analyzer (#3557) (ac1d405)
-
(es/minifier) Disable name mangler if
eval
is used (#3526) (bfc9897) -
(es/utils) Keep arguments to
super
call (#3570) (f67796a)
Documentation
- (plugin) Fix typo (#3547) (3fc16cd)
Features
-
(bot) Add auto-bump script (#3573) (a1e45c4)
-
(css/ast) Add
;
to delimiters (#3551) (da36e90) -
(css/ast) Use correct type for
calc
(#3549) (b311ace) -
(css/ast) Use
SimpleBlock
for@document
at-rule (#3564) (3399702) -
(es/compat) Add loose mode for
classes
(#3474) (0f7a997) -
(es/lints) Add this handling support to
no-alert
rule (#3515) (af82006) -
(es/lints) Add
allow
config forno-console
rule (#3517) (286b6c8) -
(es/lints) Implement
eqeqeq
rule (#3513) (8d92050) -
(es/lints) Implement
no-empty-pattern
rule (#3550) (f9fda27) -
(plugin) Add
PluginContext
(#3568) (a96217f) -
(plugin/runner) Improve resolver support for npm (#3566) (d6477a7)
Miscellaneous Tasks
-
(bot) Fix permission issue (bfb51f3)
-
(ci) Add a bot for auto-rebasing (#3560) (b1fc7a9)
-
(ci) Remove useless tests from the matrix (#3561) (47a81bd)- general: Fix auto-rebase script (d055711)- general: Fix auto-rebase script again (d3f1c4e)- general: Use
GITHUB_TOKEN
for auto-rebasing (1c6e9ef)- general: Fix CLA issue of auto-rebase script (59233d5)
Performance
- (es/optimization) Replace
map_with_mut
with proper implementation (#3539) (6d132ca)
Refactor
-
(css/ast) Rename tokens to match spec (#3553) (aed622b)
-
(css/parser) Remove
parse_values
, which is not used (#3552) (d5aee47)
Testing
-
(css/codegen) Add tests (#3563) (08dd695)
-
(css/parser) Add a test for a custom function name (#3554) (f252dfb)
Build
- (*) Dedupe
once_cell
(#3567) (ad6f24a)
[1.2.139] - 2022-02-12
Bug Fixes
-
(cli) Update the plugin template for pinned dependencies (#3538) (05cf2e9)
-
(css/ast) Use
SimpleBlock
in more types (#3535) (cfb2248) -
(es/modules) Use correct
StrKind
after rewriting import path (#3489) (ff6eb27) -
(es/modules) Hoist named exports (#3479) (fa0216d)
-
(node/helpers) Fix
isNativeReflectConstruct
(#3530) (d14d3eb) -
(plugin) Allow testing (#3542) (fbe9196)
Documentation
- (plugin) Fix install command (#3541) (72b3197)
Features
-
(cli) Add a command for scaffolding a new plugin (#3536) (6ed089e)
-
(css) Support urange syntax (#3491) (cbe302b)
-
(css/minifier) Implement more rules (#3522) (69cfe39)
-
(css/parser) Improve error recovery (#3486) (48e5b90)
-
(css/parser) Implement more parser logic for nth selectors (#3532) (fcbc2ff)
-
(css/parser) Implement more error recovery (#3534) (547eba5)
-
(es/lints) Implement
dot-notation
rule (#3481) (5bb6bd7) -
(es/lints) Implement
no-use-before-define
rule (#3456) (205b76e) -
(es/minifier) Implement
reserved
mangle option (#3476) (5488159) -
(es/minifier) Drop useless assignments (#3528) (a7f0e84)
-
(plugin) Implement proxy for
Mark
andSyntaxContext
(#3511) (bc25026) -
(swc/plugin) Implement proxy for
Mark::fresh
(#3492) (494b4c8)
Miscellaneous Tasks
-
(build) Disable LTO for local builds (#3514) (80ed69d)
-
(build) Remove version pinning of
parking_lot_core
(#3537) (a4d914d) -
(ci) Remove
cargo-uttil
from dependency (#3543) (068a408) -
(crates) Use bot account for publishing commits (c10cbc4)
-
(crates) Use bot account for commiitter (edc46cc)
Performance
- (es/minifier) Remove useless operations like eager call to
.span()
(#3512) (8dab3d9)
Refactor
-
(common) Cleanup & rustfmt (#3495) (9b76783)
-
(css/ast) Rename types to match specification (#3484) (460f846)
-
(css/ast) Remove
Tokens
in favor ofVec<TokenAndSpan>
(#3507) (92a3cb9) -
(css/ast) Unify
SimpleBlock
andBlock
(#3519) (57f6a58) -
(css/ast) Unify
SimpleBlock
andBlock
completely (#3531) (37c49e8) -
(css/parser) Refactor codes related to simple blocks (#3506) (4e124c7)
-
(css/parser) Refactor code for error recovery (#3508) (2d997b3)
Testing
-
(css/codegen) Add tests for multiple keyframe selectors (#3509) (ebd71d5)
-
(css/parser) Add tests from
postcss
(#3488) (04782ae) -
(css/parser) Add some tests from
postcss
(#3501) (8b438ea) -
(es/minifier) Add snapshot testing for the analyzer (#3529) (73e9185)
[1.2.138] - 2022-02-08
Bug Fixes
- (es/minifier) Make
sequences
less aggressive (#3480) (292add7)
Features
-
(css) Add support for
@property
at-rule (#3470) (fd5668c) -
(css/ast) Add types for
@counter-style
at-rule (#3469) (e6f4fbf) -
(css/ast) Add types for all dimensions (#3477) (dc939c6)
-
(es/parser) Disallow assignment to optional chaining expressions (#3483) (26565b1)
-
(plugin) Support global
HANDLER
in the plugin context (#3478) (d473a65)
Miscellaneous Tasks
[1.2.137] - 2022-02-07
Bug Fixes
-
(css) Fix parsing of
@page
at-rule (#3356) (4853821) -
(css/ast) Fix type definitions for
@document
at-rule (#3468) (df08e4c) -
(css/parser) Report errors of at-rules (#3461) (e732250)
-
(es/compat) Handle private fields in nested classes (#3431) (01500a5)
-
(es/compat) Handle initializer hole in array patterns (#3442) (3bb2a6c)
-
(es/compat) Fix legacy decorator pass (#3459) (4f5e87b)
-
(es/fixer) Handle more expressions in the super class position (#3452) (032f397)
-
(es/minifier) Fix
codemirror
(#3462) (5812c3c) -
(es/minifier) Fix
mapbox
(#3463) (0371c41) -
(es/modules) Allow using a dynamic import with an expression from another import (#3450) (745604b)
-
(es/parser) Fix parsing of decorators (#3449) (5a806c5)
-
(es/resolver) Fix handling of for statements (#3446) (2af5096)
Features
-
(css/ast) Improve types related to
url
tokens (#3444) (49564d9) -
(css/codegen) Implement minification of hex colors (#3453) (eeedd71)
-
(css/codegen) Implement minification of identifiers (#3466) (81850c2)
-
(css/codegen) Improve minification for page rules (#3467) (0ca036a)
-
(css/lexer) Implement error recovery for functions (#3445) (f1410fc)
-
(es/lints) Implement
prefer-regex-literals
(#3399) (8166275) -
(es/lints) Implement linter for quotes of string literals (#3443) (5d6143a)
-
(es/parser) Add an option to allow
super
outside of class methods (#3427) (cc185f0)
Miscellaneous Tasks
- (es/lints) Fix CI (b06a5ab)
Refactor
-
(css/ast) Refactor types related to
@keyframes
at-rule (#3441) (5c1b021) -
(css/ast) Change AST for
!important
(#3440) (38879de) -
(css/ast) Refactor types related to selectors (#3460) (cd87d96)
-
(css/ast) Remove unused types (#3465) (69660fd)
Testing
-
(css/parser) Add more tests for the selector parser (#3455) (479b509)
-
(es) Update tsc test suite (#3448) (8b7c38c)
-
(es/parser) Fix crlf (#3451) (397a96a)
[1.2.136] - 2022-02-03
Bug Fixes
-
(css) Allow empty
@media
at-rule (#3404) (75a14f9) -
(css/parser) Fix parser logic related to case insensivity (#3382) (3ded88b)
-
(css/parser) Fix bugs related to
url
(#3403) (3c8d985) -
(es/codegen) Fix bugs (#3436) (ea8dfd8)
-
(es/compat) Add the missing span in
optional_chaining
(#3384) (9eb7773) -
(es/minifier) Fix evaluator (#3391) (38c2499)
-
(es/modules) Allow using dynamic import with a name from another import (#3390) (1dcc188)
-
(es/modules) Fix span of imports (#3418) (2c99ca1)
-
(swc) Run
resolver
before everything (#3400) (cebc5dc)
Features
-
(css) Improve codegen where
minify: true
(#3414) (30c29a3) -
(css/ast) Add
/
to the delimiters (#3402) (2dc31d9) -
(css/codegen) Implement
minify: true
(#3369) (0537ef1) -
(css/codegen) Improve minification of numbers (#3423) (340844a)
-
(css/parser) Improve selector parser (#3386) (c73835b)
-
(css/parser) Improve parsing of math functions (#3415) (1b1cae0)
-
(es/codegen) Improve compression of numbers (#3425) (e8b64a9)
-
(es/lints) Implement
no-debugger
rule (#3398) (9dec923) -
(es/lints) Add
no-alert
and a feature gate (#3394) (5cbe4fe) -
(es/minifier) Implement
drop_console
(#3392) (91d7800)
Miscellaneous Tasks
- (repo) Add
clippy
to git push hook (#3383) (78e83a3)
Performance
- (node-swc) Speed up
parse
andparseFile
(#3380) (0359deb)
Refactor
-
(css/ast) Refactor delimited values (#3397) (b31619d)
-
(css/ast) Use
Dimension
instead ofUnitValue
(#3401) (1904944) -
(css/ast) Use
Color
instead ofHashValue
(#3411) (6b921ca) -
(css/ast) Rename
property
toname
(#3410) (eeedd9a) -
(es/minifier) Remove unused crates (#3395) (74b4330)
-
(es/parser) Flatten tests to make
git
faster (#3393) (839d0ac)
Testing
-
(css/codegen) Add more tests (#3405) (64383e3)
-
(css/codegen) Verify AST is not broken after minification (#3430) (73efd72)
-
(swc) Add tests (#3435) (9e4cea0)
[1.2.135] - 2022-01-27
Bug Fixes
-
(css) Fix the type definition of
@support
at-rules (#3330) (34943ff) -
(css) Fix
@keyframes
at-rule (#3331) (f89ffa6) -
(css) Fix
@supports
at-rule (#3329) (9f38060) -
(css/parser) Fix parsing of at rules (#3328) (506a310)
-
(es/block-scoping) Pop scope correctly on early returns (#3360) (b1a8db6)
-
(es/compat) Fix regression of
destructuring
(#3326) (6d1ad36) -
(es/compat) Handle nested functions in
private_field
(#3355) (29aaac1) -
(es/loader) Add an option to resolve symlinks with
true
as a default (#3340) (afdb168) -
(es/minifier) Consider capturing while inlining (#3322) (4f23d65)
-
(es/minifier) Don't inline a var if the initializer is reassigned (#3333) (d52a1f3)
-
(es/minifier) Respect block scoping while negating if statements (#3344) (6921ffb)
-
(es/minifier) Prepend/append correctly (#3367) (703972d)
-
(es/minifier) Improve minifier (#3350) (68e9017)
-
(es/module) Remove
.jsx
file extension (#3334) (b2bf38d) -
(es/typescript) Handle typescript enums with string values (#3339) (da709fe)
-
(swc) Respect
jsc.experimental.keepImportAssertions
(#3352) (d9dc2b9)
Documentation
- (contributing) Fix formatting (#3376) (90cf073)
Features
-
(css/ast) Add
Ratio
, which is defined by spec (#3335) (c7e5fae) -
(css/ast) Add types for dashed identifiers and
@color-profile
at-rules (#3364) (dfa0286) -
(css/parser) Improve parsing of urls (#3362) (50521d8)
-
(es/bugfix) Add
bugfix-safari-id-destructuring-collision-in-function-expression
(#3109) (d1c90a4) -
(es/codegen) Emit comments of
Module
andScript
(#3358) (fcb7288) -
(es/lints) Implement "no-console" rule (#3269) (9872137)
-
(es/minifier) Handle array literals in
sequences
(#3348) (8007b2d) -
(es/preset-env) Upgrade
browserslist-rs
(#3375) (d3d754b) -
(plugin) Pass host context to plugins for diagnostics emission (#3359) (a8debc1)
Miscellaneous Tasks
Performance
- (node) Avoid cloning options (#3325) (8a76935)
Refactor
-
(css/ast) Merge several kinds of blocks into a single type (#3336) (c664eaf)
-
(css/ast) Fix type definitions related to
@import
at-rule (#3351) (7787f90) -
(css/ast) Rename
PercentValue
toPercent
(#3363) (6fc7562) -
(es/minifier) Merge execution tests into a file to make
git
faster (#3377) (7ef3bfa) -
(plugin) Remove multivalue polyfill (#3346) (4386498)
[1.2.133] - 2022-01-20
Bug Fixes
-
(css) Fix parsing of media queries (#3318) (0723ee2)
-
(es/minifier) Don't inline functions used as arguments (#3320) (57204e3)
Documentation
- (repo) Update contributing docs (#3298) (5af79f6)
Miscellaneous Tasks
- (rustc) Downgrade rustc (041bf00)
Build
-
(node-swc) Fix GLIBC < 2.18 compatible issues and android arm binary loading issue (#3314) (9608605)
-
(node-swc) Fix Windows arm64 build OOM (#3324) (c069c78)
[1.2.131] - 2022-01-19
Bug Fixes
-
(common) Use
siphasher
directly and upgrade transitive dependencies to avoid UB (#3299) (641265b) -
(es/compat) Apply
static_blocks
beforeclass_properties
(#3292) (89235b8) -
(es/minifier) Fix analysis of unary expressions (#3286) (b55ae4b)
-
(es/minifier) Inline into interpolations in tagged template literals (#3287) (fa5c063)
-
(es/minifier) Remove more side-effect-free expressions. (#3301) (18a11d7)
-
(es/minifier) Don't emit invalid code (#3302) (8e796cd)
-
(es/minifier) Fix logic for checking
arguments
(#3313) (1aa494b) -
(es/minifier) Prevent infinite loop due to negation (#3310) (b4d21bf)
-
(es/resolver) Ignore names of jsx attributes (#3289) (9a89895)
Documentation
- (swc) Document
typescript::strip
(#3305) (18cd98e)
Features
-
(es/compat) Use remove useless source map entries generated by
classes
(#3242) (2352920) -
(es/minifier) Drop more expressions from parallel optimizer (#3303) (210ecf8)
-
(plugin) Add
PluginError
(#3300) (c6ffdc8)
Refactor
-
(es) Add
visit_obj_and_computed
macro (#3304) (9e636c7) -
(es/minifier) Fix clippy warnings (#3312) (2891220)
Testing
- (plugin/runner) Pin dependencies for the integration test (#3306) (7ba8a83)
[1.2.130] - 2022-01-17
Bug Fixes
-
(css/lexer) Resolve a
TODO
(#3260) (ade8ab8) -
(es/ast) Update
EsVersion::latest()
(#3261) (6997851) -
(es/minifier) Preserve side effects in correct position (#3263) (efd8671)
-
(es/parser) Throw an error when function body has use strict and paramaters is not simple (#3278) (6406b49)
-
(es/react) Fix
createElement
(#3277) (88a258a) -
(es/resolver) Treat a switch statement as a block scope (#3275) (f4b3cb7)
-
(es/transforms) Fix
this
in async arrow class properties (#3252) (7c19e26) -
(es/transforms) Remove unsafe
new String("...")
optimization (#3284) (162c1fe) -
(es/transforms) Handle template literals within
jsonify
pass (#3282) (b76d1da) -
(swc) Remove
wrong-target
(#3251) (0843f74)
Documentation
- (adr) Configure adr and add
00001-plugin
(#3249) (8652b2d)
Features
-
(css) Support
@layer
at-rule (#3258) (c195335) -
(es/ast) Improve AST api for plugin authors (#3281) (9dd0647)
-
(es/compat) Use
var
for_len
andargs
in rest parameters (#3267) (d3cc488) -
(plugin/runner) Free allocated memory on errors (#3270) (66d1a92)
-
(plugin/runnner) Support
wasm32-wasi
targets (#3271) (a4c4974)
Miscellaneous Tasks
- (ci) Configure
clippy
(#3250) (978de59)
Refactor
-
(*) Fix some clippy warnings (#3257) (15b604b)
-
(*) Cleanup (#3274) (357a350)
-
(es) More fix for clippy (#3280) (e8670b3)
-
(es/transforms) Cleanup (#3273) (2690742)
-
(es/utils) Merge the super field visitor with
FnEnvHoister
(#3279) (90a62bb)
Build
- (node) Fix glibc issue on linux gnu arm (#3255) (2144271)
[1.2.129] - 2022-01-13
Bug Fixes
-
(es/compat) Transform
&&=
operator (#3225) (2e5150d) -
(es/minifier) Fix handling of inlined call to a hoisted function (#3223) (78720c4)
-
(es/minifier) Fix optimization of assignment expressions (#3231) (12dd0a6)
-
(es/minifier) Fix bugs (#3238) (74fd353)
-
(es/parser) Fix span of
ComputedPropName
(#3234) (105cbc2) -
(es/typescript) Remove rogue
println
(#3244) (282232c)
Features
-
(plugin) Don't serialize/deserialize needlessly (#3227) (a2f2b5a)
-
(plugin/macro) Add safe API for plugins based on a proc-macro (#3240) (432d5d3)
[1.2.128] - 2022-01-11
Bug Fixes
-
(es/helpers) Don't transpile
_typeof
helper (#3208) (54353a6) -
(es/hygiene) Visit computed properties in usage analyzer (#3217) (cdb46cf)
-
(es/minifier) Disable inlining of expressions from
collapse_vars
(#3200) (69b5f79) -
(es/minifier) Drop unreachable statements eagerly (#3204) (0105939)
-
(es/modules) Fix lazy import handling (#3211) (9565149)
Features
-
(es/ast) Use
ModuleExportName
forExportNamespaceSpecifier
(#3195) (432f877) -
(es/ast) Update
is-macro
(#3226) (1edbf1a) -
(es/compat) Implement object super (#3127) (b649d23)
-
(es/parser) Accept strings for import/exports (#3190) (3fb76f6)
-
(es/transforms) Add
Assumptions
(#3215) (42f7268) -
(plugin) Pass serialized ast to a wasm file (#3199) (92de2c7)
-
(plugin) Allow multi-value for the plugin signature (#3216) (c9ded9b)
-
(plugin) Perform actual transforms in plugins (#3220) (7e7421e)
Miscellaneous Tasks
- (es/minifier) Add scripts to extract tests automatically (#3212) (057fca4)
Refactor
-
(es/ast) Change types of member-like expressions (#3178) (f58b50b)
-
(es/compat) Preserve length of functions in
async_generator
(#3202) (5bee4e4)
Security
- (repo) Fix crev integration (#3210) (70c2f3b)
[1.2.127] - 2022-01-06
Bug Fixes
-
(es/lints) Fix incorrect duplicate binding error (#3194) (913c82a)
-
(es/minifier) Fix bugs (#2955) (1c1c9f0)
-
(es/visit) Make
noop_visit_type
visit typescript nodes that executes at runtime (#3192) (517662c)
Features
-
(es/dep-graph) Improve DependencyDescriptor to combine
import_assertions
withdynamic_import_assertions
(#3183) (e5e6e84) -
(esdiff) Create a command to determine problematic file (#3181) (51c792e)
Miscellaneous Tasks
-
(*) Update
rustc
(#3185) (7d0a8a1) -
(ci) Split cargo docs (#3187) (46949d3)
-
(ci) Fix publish scripts (3458e9f)
-
(ci) Fix publish scripts again (b292126)
-
(ci) Fix
--cargo-flags
(a20f5d9) -
(ci) Use
--cargo-flags
in correct place (ef4ea2f) -
(ci) Use
RUSTFLAGS
for linux (4cbe8d1) -
(ci) Use more
RUSTFLAGS
(bf0acd1) -
(ci) Fix musl (fef8449)
-
(ci) Fix
aarch64-pc-windows-msvc
(1ebbe62) -
(ci) Change version of
rustc
(d901b62) -
(ci) Fix publish script (#3197) (c34f1a9)
-
(ci) Remove redudant plugin test (e19fe7d)
Refactor
-
(dbg-swc) Rename
esdiff
todbg-swc
(#3189) (c758997) -
(plugin) Add a loader for wasm-based plugin system (#3179) (fc4c670)
-
(plugin) Remove codes related to the plugin system based on
abi_stable
(#3188) (32d3342) -
(plugin/runner) Avoid redundant filesystem reads (#3186) (b61c49f)
-
(plugin/runner) Replace wasm runtime (#3196) (c3895ca)
-
(plugin/runner) Reuse wasmer (28ff059)
[1.2.126] - 2022-01-03
Bug Fixes
-
(es/minifier) Fix comparison of objects, numbers and strings (#3172) (db51ce4)
-
(node-swc) Recover from ldd not found (1dfc2ee)
Features
- (es/ast) Add
ModuleExportName
(#3048) (07c0489)
[1.2.125] - 2022-01-02
Bug Fixes
-
(es/compat) Visit all private class methods (#3150) (35b6461)
-
(es/compat) Fix length of async functions (#3136) (f78d005)
-
(es/compat) Fix
new.target
in class properties (#3156) (e112103) -
(es/minifier) Fix for modules (#3170) (790c506)
-
(es/typescript) Fix handling of references in a TypeScript enum (#3163) (e02307d)
-
(es/typescript) Declare the exported variables in a namespace (#3162) (366dc0e)
-
(es/utils) Fix handling of
new.target
(#3145) (356082a)
Documentation
Features
-
(es/ast) Add
rkyv
support (#3166) (bf751cb) -
(es/codegen) Make the output for empty objects and empty statements pretty (#3171) (5296180)
-
(es/diff) Add a internal CLI program for debugging minifier (#3168) (1aa55e6)
Miscellaneous Tasks
- (ci) Update
github-action-benchmark
(#3148) (5a3bdc9)- general: Addenhancement
label tofeature_request
template (#3164) (360ad7b)
Performance
- (es/ast/serde) Make deserialization faster (#3160) (7a83c0c)
Refactor
-
(*) Drop unused dependencies (#3138) (72c9636)
-
(*) Use 2021 edition (#3151) (194b3e9)
-
(bundler) Improve test suite (#3144) (8a1016f)
Testing
- (es/parser) Add tests about null escape (#3147) (a4e8e53)
[1.2.124] - 2021-12-29
Bug Fixes
-
(es) Handle import assertions correctly (#3113) (c9adf03)
-
(es/compat) Fix handling of hoisted functions in regenerator (#3119) (ac78a52)
-
(es/compat) Fix private methods of a class (#3123) (1b6ac25)
-
(es/compat) Fix
computed_properties
(#3120) (27d3fd9) -
(es/optimization) Fix inlining (#3132) (693c22a)
-
(es/parser) Support import assertions in specifier-less imports (#3134) (2f3ca22)
-
(es/renamer) Fix renamer (#3139) (43c8cda)
-
(es/utils) Fix
is_valid_ident
(#3133) (ec7e0ae) -
(node-swc) Recover from
ldd
not found (#3125) (054a195)
Features
- (es/preset-env) Upgrade
browserslist-rs
(#3122) (83f71c2)
Miscellaneous Tasks
- (ci) Reduce CI time (#3128) (61cd7da)
Refactor
- (es/react/fast-refresh) Use
VisitMut
(#3129) (f8f04e0)
Security
- (repo) Configure
cargo-crev
(#3124) (cec325b)
[1.2.123] - 2021-12-26
Bug Fixes
-
(es/ast) Fix
Ident::verify_symbol
(#3108) (e5971f7) -
(es/compat) Fix
classes
pass (#3107) (d923f89) -
(es/compat) Fix
destructuring
(#3104) (9f5a8f7) -
(es/compat) Fix handling of class methods with a big int as a key (#3118) (a1cb4a4)
-
(es/helpers) Fix decorators (#3105) (f66c2cd)
Features
-
(es/bundler) Add an option to disable tree-shaking (#3102) (d98a593)
-
(es/diff) Initialize a diff tool for ecmascript (#3101) (ff0b55b)
-
(node) Upgrade
napi
to v2 (#2958) (206da12)
Miscellaneous Tasks
-
(ci) Fix script for publishing (f51314c)
-
(xi) Fix publishing script (e0e7f74)- general: Fix
package.json
(999df43)
[1.2.122] - 2021-12-22
Bug Fixes
-
(es/compat) Fix handling of union of the legacy decorator pass (#3057) (938e544)
-
(es/loader) Prefer ESM (#3089) (ba2563f)
-
(es/loader) Update
lru
(#3092) (15cbe4f) -
(es/transforms) Fix
descturcturing
(#3098) (df87c2b) -
(es/typescript) Export destructured properties in typescript namespaces (#3084) (31dea3d)
Features
-
(cli) Setup packages for CLI (#3070) (2e89a4f)
-
(es/dep-graph) Add
DependencyDescriptor::dynamic_import_assertions
(#3095) (7d57eb2) -
(es/lints) Implement simple validations (#2763) (f21af5b)
-
(es/preset-env) Upgrade
browserslist-rs
(#3069) (a1b315a) -
(es/preset-env) Add ES2022 features to
preset-env
(#3072) (7beaabd) -
(es/preset-env) Add
.js
to generated imports (#3077) (7d125f5) -
(node) Report correct error when
swc_v1
andswc_v2
is enabled at the same time (#3080) (f1b8126) -
(node/core) Include noop swc binaries (#3088) (42046e1)
Miscellaneous Tasks
-
(node) Publish v1.2.122 (f4cc323)
-
(repo) Make
git
faster (#3075) (8afb5af) -
(repo) Add section for the actual behavior to the issue template (#3100) (0472199)
-
(scripts) Use
cargo profile instruments
instead ofcargo instruments
(#3086) (d482d61)
Performance
- (es/hygiene) Fix performance bug (#3090) (a81661c)
Refactor
- (es/minifier) Use
swc_timer
(#3087) (0e4dce6)
Testing
- (es/codegen) Add some tests for sourcemap (#3078) (0e58950)
[1.2.121] - 2021-12-19
Bug Fixes
-
(es/compat) Fix
block_scoping
(#3058) (a381fb8) -
(es/compat) Transform an optional eval call as an indirect eval call (#3068) (ff1aab7)
-
(es/lexer) Don't report lexer errors while backtracking (#3051) (61e9b5f)
-
(es/lexer) Fix lexing of numbers with large exponent (#3061) (0c813ae)
-
(es/loader) Support fully-specified ESM import specifiers (#3050) (d5c7fb8)
-
(es/parser) Allow assignment assertions in typescript classes (#3047) (23a59db)
-
(webpack/ast) Fix
webpackAST
(#3040) (15ea98b) -
(webpack/ast) Handle typescript (#3045) (24179bd)
-
(webpack/ast) Expose fields of
AstOutput
(#3046) (0892018)
Features
- (es/parser) Report an error for
export type * from "mod";
(#3064) (f1a2832)
Miscellaneous Tasks
Performance
-
(es/compat) Migrate
regenerator
toVisitMut
(#3037) (29eb71a) -
(es/parser) Improve performance (#3059) (b4d95b4)
Refactor
- (es/ast) Change type or the
key
ofClassProp
toPropName
(#3038) (38955c0)
[1.2.120] - 2021-12-13
Bug Fixes
-
(css/parser) Fix lexing of value starting with
-
(#3011) (e0c8bbf) -
(es/codegen) Fix sourcemap bug related to multi-line comments (#3023) (c415487)
-
(es/dep_graph) Fix parsing of import assertions (#3005) (819fc88)
-
(es/parser) Allow trailing comma in dynamic imports if import assertion is enabled (#3018) (b4c210d)
Features
- (node-swc) Add cargo feature for v2 (#3019) (017392a)
Miscellaneous Tasks
-
(api/rust) Automate updating of change logs (4006d56)
-
(ci) Setup yarn cache (#3015) (69123dd)- general: Remove redundant dependencies (#3008) (cabf5a4)- general: Add changelog and pr template (#3017) (aab3326)
Performance
-
(es/compat) Migrate
regenerator
toVisitMut
partially (#3007) (91d6343) -
(es/compat) Migrate
classes
toVisitMut
partially (#2995) (333b52c) -
(es/compat) Migrate class helper to
VisitMut
(#3020) (d3ffc67)
Refactor
-
(es/ast) Move
Id
toswc_ecma_ast
(#3004) (8340a86) -
(es/parser) Make some verification logic optional (#3024) (7236a22)
Build
- general: Use
mocha
forexec_ test
instead ofjest
(#3009) (00d22b8)
Type
- (node/swc) Allow null for
NamedExportSpecifier.exported
(#3010) (bdea89d)
[1.2.119] - 2021-12-10
Bug Fixes
-
(css) Fix
stylis
(#2987) (c8395bc) -
(es/codegen) Fix sourcemap (#3003) (a3bd6ae)
-
(es/compat) Preserve constructor parameters (#2975) (f052a65)
-
(es/compat) Fix for synthesized template literals (#2994) (6a7ad92)
-
(es/minifier) Don't create top level variables (#2985) (4a7937d)
-
(es/react) Implement proper
development
handling (#2741) (ed704c9) -
(es/transforms) Update helpers about array (#2970) (ae4bb42)
-
(es/typescript) Support declaration merging of exported enums and namespaces (#2982) (2cd1649)
-
(es/typescript) Fix enums which reference themselves (#3000) (c8c73cb)
-
(node/swc) Allow using custom bindings (#2983) (c02dd99)
-
(webpack/ast) Fix
webpackAST
(#2979) (4cf5852)
Features
- (es/minifier) Print more informantion on infinite loops (#2976) (694d3c5)
Miscellaneous Tasks
Performance
-
(es/compat) Migrate
static_blocks
toVisitMut
(#2973) (32f9369) -
(es/compat) Migrate
class_properties
toVisitMut
(#2993) (a175606) -
(es/compat) Migrate
object_rest
toVisitMut
(#2997) (7ca1e17)
Refactor
- (visit) Remove
&dyn Node
fromVisit
(#2984) (e48263b)
[1.2.118] - 2021-12-05
Bug Fixes
-
(es/hygiene) Reduce renaming (#2938) (4d993c2)
-
(es/parser) Drop outdated options (#2974) (1ea965c)
-
(es/parser, es/compat) Transform tagged template with invalid escape sequence (#2939) (d8c8641)
-
(es/typescript) Run
resolver
beforetypescript::strip
(#2951) (67280b6) -
(es/typescript) Transform namespace with multiple identifiers in name (#2952) (0a8a5a1)
-
(estree) Fix serialization of
ObjectMethod
(#2961) (c346f12) -
(node/swc) Add
baseUrl
toJscConfig
(#2968) (1f6d830) -
(swc/hygiene) Prefer not renaming top level variables (#2940) (beb2c73)
-
(webpack/ast) Remove more string literals (#2957) (1eb62dc)
-
(webpack/ast) Fix amd support (#2959) (eda514b)
-
(webpack/ast) Preserve more arguments of
define
calls (#2960) (4008a65) -
(webpack/ast) Reduce
if
statements (#2969) (2a01dd4) -
(webpack/ast) Preserve span (#2971) (74363e0)- general: (es/compat): Change order of passes (#2949) (99da422)
Miscellaneous Tasks
- general: Add a script to manage crates (b9baa50)- general: Make
rust-analyzer
faster (#2962) (02322aa)- general: Remove duplicate version field inpackage.json
(#2965) (ce60138)- general: Inline@swc/helpers
(#2972) (ffec782)
Performance
- (es/compat) Migrate
class_properties
toVisitMut
partially (#2966) (89af8ab)
Refactor
-
(es/compat) Migrate
destructuring
toVisitMut
(#2947) (084eebe) -
(es/parser) Remove
import_assertions
fromTsConfig
(#2950) (97df4ce) -
(es/preset-env) Avoid unnecessary
unwrap
(#2943) (3302d17)
Build
- general: Update
.npmignore
(#2963) (ad35d95)
[1.2.117] - 2021-12-02
Bug Fixes
- (ci) Fix freebsd builds (#2944) (a93f111)
Features
- (es/transforms/compat) Add loose mode to
parameters
(#2911) (1555ceb)
Miscellaneous Tasks
[1.2.116] - 2021-12-01
Bug Fixes
-
(bundler) Use interop for common js dependencies (#2930) (24de550)
-
(css/ast) Fix type definition of
@namespace
(#2919) (0f4ad0f) -
(css/ast) Fix type definitions related to parsing unknown at-rules (#2922) (8781527)
-
(webpack/ast) Fix span of null literals (#2925) (18d9fd9)
-
(webpack/ast) Fix handling of
define
(#2935) (9f5fc11) -
(webpack/ast) Fix ast reducer (#2936) (667dd1e)
-
(webpack/ast) Don't remove comparison of
process.env.NODE_ENV
(#2937) (4539b3a)
Features
- (es/preset-env) Upgrade
browserslist-rs
(#2927) (8a55870)
[1.2.115] - 2021-12-01
Bug Fixes
-
(es/transforms/compat) Fix block scoping (#2916) (028d0ce)
-
(es/transforms/compat) Fix
destructuring
(#2904) (0c1f2eb) -
(webpack/ast) Fix ast reducer (#2914) (32b68ef)
-
(webpack/ast) Improve ast reducer (#2917) (854b598)
Features
-
(css/ast) Add a flag to number types (#2905) (fcd0d7a)
-
(plugin/runner) Supports specifying exact path for plugin (#2918) (5999634)
Miscellaneous Tasks
- general: Reduce compile time (158d4bc)
Performance
- (es/transform/compat) Migrate
optional_chaining
toVisitMut
(#2891) (4075ff8)
[1.2.114] - 2021-11-29
Bug Fixes
-
(css) Handle custom properties properly (#2869) (c94735e)
-
(es/parser) Fix parser (#2903) (c186aa4)
-
(es/preset-env) Enable "mobile to desktop" (#2907) (5a68a36)
-
(es/transforms/module) Fix overriding of
export *
(#2883) (6f05c10) -
(swc) Unimplement
Default
forJsMinifyOptions
(#2901) (bb66083) -
(webpack/ast) Adjust
acorn
options. (#2908) (586ab0c)
Features
-
(css/ast) Add support for nested
@at-rule
s (#2897) (c77ebbe) -
(css/parser) Add more error recovery (#2849) (d7183d8)
-
(plugin) Rename
Plugin
toJsPlugin
(#2893) (ffcb357) -
(plugin) Enable plugin support under experimental flag (#2894) (91ef3cc)
-
(swc) Implement
Default
forJsMinifyOptions
(#2899) (5425509)
Miscellaneous Tasks
- (es/preset-env) Upgrade
browserslist-rs
(#2889) (af216c1)- general: Reduce compile time (#2909) (435facc)- general: Fix cargo config (3695159)- general: Fix cargo config again (189a590)- general: Revert (166c12d)- general: Revert #2907 (666e3cc)
[1.2.113] - 2021-11-27
Bug Fixes
-
(css/ast) Fix AST definitions for
@keyframes
(#2848) (ce6c7ee) -
(css/parser) Fix span of type selectors (#2870) (c40e134)
-
(es/transforms/compat) Fix
destructuring
(#2866) (a6398e9) -
(es/transforms/compat) Fix
arrow
(#2882) (803787a) -
(es/transforms/module) Fix detection of helpers to inject (#2868) (43e89fd)
-
(node) Fix
parseFile
(#2881) (7bccbcc) -
(swc) Fix handling of
jest
option (#2892) (ddc3aca)
Features
-
(css/minifier) Initialize crate (#2884) (c6cb790)
-
(es/estree) Allow emitting
acorn
ast (#2859) (cdef843) -
(es/parser) Implement more error recovery (#2874) (b853d4a)
-
(webpack) Add ast reducer (#2875) (c2bbdbe)
Miscellaneous Tasks
Performance
- (es/transforms/compat) Migrate
spread
toVisitMut
(#2888) (283074c)
Refactor
-
(css/lexer) Follow spec more closely (#2839) (4bf1f93)
-
(es/transforms/compat) Improve
async_to_generator
(#2876) (a350d86)
[1.2.112] - 2021-11-24
Bug Fixes
-
(bundler) Ignore
require
of external modules (#2840) (c8de935) -
(es/lexer) Fix lexing of hexadecimal escape sequences (#2838) (cf777c5)
-
(es/minifier) Fix bugs (#2779) (fa342a0)
-
(es/parser) Fix span of named export (#2813) (338b8fd)
-
(es/parser) Fix span of empty modules (#2827) (9525ea1)
-
(es/parser) Fix comments of empty modules (#2828) (79ba13c)
-
(es/transforms/base) Fix
ts_resolver
(#2824) (9cd3d16) -
(es/transforms/base) Fix
ts_resolver
(#2826) (7a6bf42) -
(es/transforms/compat) Reduce
.bind(this)
(#2806) (26734d4) -
(es/transforms/compat) Fix
this
in constructor (#2818) (6a7775b) -
(es/transforms/typescript) Allow enum aliases when values are strings (#2816) (95a6a28)
-
(graph_analyzer) Allow invoking
load
multiple time (#2823) (020b4a5)
Features
-
(css/parser) Improve parser api (#2847) (839a99e)
-
(es/minifier) Improve
drop_console
(#2830) (c5768d7) -
(es/preset_env) Use
browserslist-rs
(#2845) (2c099bf)- general: Enable logging of timings (#2833) (6b96a3d)
Miscellaneous Tasks
- general: Typo (#2829) (bfa6458)
Performance
-
(es/transforms/compat) Migrate
parameters
toVisitMut
(#2804) (372f5bf) -
(es/transforms/compat) Migrate
block_scoping
toVisitMut
(#2817) (a9a9833) -
(es/transforms/compat) Migrate
computed_props
toVisitMut
(#2857) (1609580)
Refactor
-
(css/ast) Split pseudo class and pseudo element (#2675) (4bcf3fc)
-
(es/estree) Rename:
babel
=>estree
(#2846) (790a262) -
(es/transforms/compat) Lift this replacer out of arrow (#2812) (fbcbeb4)
Bench
- (es/visit) Add some benchmarks (#2820) (d64b066)
[1.2.111] - 2021-11-19
Bug Fixes
-
(css/parser) Fix parsing of whitespaces (#2787) (e32093e)
-
(es/parser) Allow
static
/declare
to be optional class property name (#2782) (1caa61a) -
(es/transforms/compat) Fix
optional_chaining
(#2791) (29da148) -
(es/transforms/compat) Remove
.bind(this)
(#2776) (5261df5) -
(es/utils) Fix
collect_decls
(#2792) (af420ea) -
(es/utils) Fix
extract_var_ids
(#2798) (02ffe8a) -
(wasm) Fix
wasm-web
(#2803) (1368981)
Refactor
- (css/ast) Rename
StyleRule
toQualifiedRule
(#2756) (c50cec1)
[1.2.110] - 2021-11-17
Bug Fixes
- (es/transforms/compat) Revert #2740 (#2784) (06e02d8)
Miscellaneous Tasks
- (es/minifier) Add a script to copy tests from a next.js app (#2778) (e1b7665)
[1.2.109] - 2021-11-17
Bug Fixes
-
(es/lexer) Fix handling of jsx escapes (#2723) (11d1fa5)
-
(es/loader) Add more built-in modules (#2760) (fdd6eaa)
-
(es/minifier) Don't inline string literals if it's used multiple time (#2748) (f2c67b8)
-
(es/parser) Check for more typescript class names (#2732) (6e10168)
-
(es/transform/compat) Preserve more span (#2766) (ddfc7e6)
-
(es/transforms/compat) Fix
new_target
(#2736) (571c5e3) -
(es/transforms/compat) Apply
block_scoping
beforeregenerator
(#2740) (bb646cc) -
(es/transforms/compat) Preserve more span (#2762) (2fb4e5a)- general: Revert #2766 (#2774) (95e7f4d)
Features
-
(css/ast) Add types for
An+b
syntax (#2759) (6ce437d) -
(es/transforms/compat) Add more loose mode (#2611) (dc58122)
-
(swc) Add
IsModule
(#2601) (65d376a)
Miscellaneous Tasks
- general: Fix broken link (#2737) (79fc464)- general: Update markdown files to use "SWC" instead of "swc" (#2744) (3ebc5c6)- general: Change Gitter link to Discord (#2752) (015b258)- general: Rename the default branch from
master
tomain
(#2750) (6b70fb5)- general: Ensurefeature.manyFiles
of Git is enabled (#2754) (8aea5eb)- general: Fix benchmark github action (#2755) (54bc405)- general: Fix typo (#2764) (2e01876)- general: Fix links and paths (#2773) (58bf5a5)
Refactor
-
(css/ast) Rename
Text
toIdent
(#2726) (65ee1b4) -
(es/parser) Simplify
skip_line_comment
(#2768) (1bb2c68) -
(es/transforms/compat) Migrate to
VisitMut
(#2709) (6148d0c) -
(es/transforms/compat) Migrate to
VisitMut
(#2751) (e7cbe3d) -
(swc_bundler) Extract logic for analyzing cycles (#2733) (b869c81)- general: Flatten
css
(#2731) (1d518fe)- general: Cleanup (#2749) (2462b99)
Testing
- (swc) Add a test for sourcemap (#2777) (53c8939)
[1.2.108] - 2021-11-11
Bug Fixes
-
(css/lexer) Exclude whitespace from spans (#2702) (0b10423)
-
(css/parse) Fix parsing of pseudo elements and pseudo classes (#2672) (465c188)
-
(css/parser) Fix parsing of escaped characters (#2700) (d8ddb2f)
-
(es) Fix
paths
support (#2712) (1d028fe) -
(es) Move
TargetEnv
to loader from ast (#2719) (665c8e0) -
(es/minifier) Fix minifier (#2711) (df635c9)
-
(es/transforms/async_to_generator) Fix handling of
this
(#2667) (01727c0) -
(es/transforms/common_js) Allow reassignment to functions exported as default (#2705) (691e5e5)
-
(es/transforms/compat) Apply
regenerator
for default function declarations (#2681) (8fe0d25) -
(es/transforms/compat) Use
_createSuper
for super classes (#2699) (8edd72e) -
(es/transforms/react) Fix handling of whitespaces (#2638) (7ab3b5b)
-
(swc) Don't print same error twice (#2692) (22ce68c)
-
(swc) Fix tests (#2707) (a90fae5)
Features
- (rplugin) Implement general AST processing plugin system (#2671) (bf0007b)
Miscellaneous Tasks
- general: Update rustc to prevent
CVE-2021-42574
(#2690) (368b9e2)- general: Update README.md (#2693) (cb68956)
Performance
- (es/transforms/compat) Migrate to
VisitMut
(#2696) (824fa24)
Refactor
-
(css/ast) Refactor complex selector to represent all css (#2660) (75e6e08)
-
(css/ast) Remove
UniversalSelector
(#2673) (4484d64) -
(es/transforms/bugfix) Migrate
edge_default_param
toVisitMut
(#2676) (8915913)- general: Remove trailing whitespace (#2668) (94cb430)- general: Flatten crates (#2697) (687305f)- general: Flatten more packages (#2706) (4f70ee6)- general: Flattenecmascript
(#2708) (2b2f695)
Testing
-
(css/codegen) Add tests for parenthesis (#2691) (9824fda)
-
(css/parser) Add a test for
BOM
(#2686) (ca2338e)
[1.2.107] - 2021-11-06
Bug Fixes
-
(css/lexer) Fix some edge cases (#2612) (c89a9ea)
-
(css/parser) Exclude whitespace from span (#2659) (a8e4c72)
-
(es/compat) Fix order of transforms (#2629) (550584f)
-
(es/minifier) Fix minifier (#2597) (306cf98)
-
(es/minifier) Fix bugs of the minifier (#2610) (9cb3bf9)
-
(es/minifier) Fix for
react-countup
(#2625) (7ea4ee8) -
(es/minifier) Fix for
@emotion/react
andmurmur2
(#2637) (808d578) -
(es/transforms) Fix detection of
this
(#2634) (f4efd7a) -
(es/transforms/cjs) Allow mixing named exports and export stars. (#2583) (7e3fb0a)
-
(es/transforms/cjs) Allow using multiple
export *
(#2598) (5b141ee) -
(es/transforms/compat) Fix static blocks (#2652) (d1523dc)
-
(es/transforms/strip) Strip types for typescript export equals (#2623) (d2f2409)
-
(es/transforms/typescript) Allow
(foo as any) = bar
(#2631) (12be4b1) -
(node/types) Add
es6
toModuleConfig
(#2648) (b6a5656) -
(plugin) Fix serialization and deserialization (#2651) (a683636)
Features
-
(css/ast) Add
RoundBracketBlock
toValue
(#2618) (8c61d0d) -
(css/ast) Add
SelectorList
(#2639) (0b76d29) -
(css/ast) Add nested selector (#2641) (6ae3af3)
-
(es/ast) Implement
Take
for more types (#2649) (0414c31) -
(es/ast) Add utils (#2657) (994c965)
-
(plugin) Proxy
swc_common
apis (#2646) (3807229) -
(swc) Provide
&Program
to pass creator (#2665) (3dc1e76) -
(swc_common) Allow
dylib
(#2628) (04238d0)
Miscellaneous Tasks
- general: Use form for issues (#2595) (a278eff)- general: Fix syntax of github issue template (#2596) (c05f35d)- general: Update playground link in the issue form (#2621) (f8c7d36)- general: Improve version manager script (3935400)
Refactor
-
(css/ast) Use names from specification for ast types (#2643) (20f4e21)
-
(css/ast) Rename
NamespacedName
toTypeSelector
(#2642) (c361982) -
(css/lexer) Refactor lexer to follow spec (#2593) (b806551)
-
(css/parser) Refactor parser for at rules (#2617) (cc5398b)
-
(es/parser) Deprecate
JscTarget
(#2600) (3280b4c)- general: MoveHANDLER
toswc_common
(#2599) (e589d00)
[1.2.106] - 2021-10-31
Bug Fixes
-
(css/parser) Resolve some TODOs (#2572) (47f7f1a)
-
(es/lexer) Fix parsing of interpreter (#2589) (52318a4)
-
(es/minifier) Fix minifier (#2564) (4b2903e)
-
(es/minifier) Fix block unwrapping issue (#2570) (69cfa98)
-
(es/transform/react) Allow multiple JSX pragmas in single
Comment
(#2561) (3f5c826) -
(es/transforms/cjs) Allow reassignment to exported functions (#2569) (7cc51be)
-
(swc) Use standard base64 charset for inlined source maps (#2585) (4327d11)
Features
-
(css/ast) Add
value
to the whitespace token (#2533) (4f04736) -
(css/ast) Add
SquareBracketBlock
(#2573) (f77d6ce) -
(css/parser) Use
Function
token. (#2571) (67c0d4c) -
(es/transforms/regenerator) Allow configuring import path (#2581) (33bc3d2)
-
(es/transforms/testing) Reduce CI time by caching execution result (#2565) (0364f9a)
Miscellaneous Tasks
- (ci) Don't use push action (b197eb6)- general: Fix failing tests and improve CI scripts (#2563) (7e29685)- general: Fix CI script for PRs (#2575) (a6af0ab)- general: Make
cargo test --all
work (#2580) (f9a8ad3)- general: Fix typo (#2586) (ef3c9a7)- general: Manage crate version using github action (#2587) (f997bc4)- general: Fix script for managing crates (#2588) (d63553e)- general: Fix crate manager script (bab638c)- general: Fix permission issue (ceb025b)- general: Fix musl target (dfd8d1a)- general: Use ubuntu-18.04 for musl (e3b8e53)
Performance
- (node/swc) Parse input using worker thread (#2590) (db09bce)
Ci
- general: Sync to latest napi workflow (#2592) (1a659d3)
[1.2.105] - 2021-10-28
Bug Fixes
- (es/minifier) Don't treat catch clause as a scope (#2557) (79a426e)
Features
-
(css/ast) Add
raw
to the hash value (#2535) (303cecb) -
(es/parser) Enable ergonomic brand checks for TypeScript (#2562) (7b4af43)
Miscellaneous Tasks
- general: Pulbish (7fae0bb)- general: Fix ci script (a6fcfe1)- general: Fix typo (5469457)- general: Fix publish scripts (ac02f3f)
[1.2.104] - 2021-10-27
Bug Fixes
-
(es/fixer) Preserve more parens (#2553) (97b5a73)
-
(es/minifier) Fix minifier (#2528) (dcf5f05)
-
(es/minifier) Fix minifier (#2551) (f81b60f)
-
(es/transforms/react) Revert #2542 (#2552) (5f0524c)
-
(es/transforms/typescript) Remove
declare
d class properties (#2530) (693181e) -
(swc) Fix bugs (#2538) (b8933e3)
-
(swc) Allow overriding specified parser config using
.swcrc
(#2547) (8494f65)
Features
- (es/transforms/react) Improve development more (#2542) (70f5583)
Miscellaneous Tasks
- general: Remove useless submodules (#2537) (265084c)- general: Configure kodiak (2febd77)- general: Disable freebsd build to publish (e3869f1)
Performance
- (es/minifier) Make name mangler parallel (#2527) (a099e8f)
Refactor
-
(css/ast) Rename types (#2532) (0e45877)
-
(css/codegen) Use
raw
instead (#2534) (5ef6686) -
(css/parser) Fix parsing of some selectors (#2525) (6876b1b)
Ci
- general: Limit number of runs in graph (#2540) (edc97ef)
[1.2.103] - 2021-10-25
Bug Fixes
-
(bundler) Fix name of helper (#2518) (5afedf8)
-
(bundler) Fix bundler (#2510) (cead404)
-
(es/minifier) Fix minifier using
Deno
test suite (#2503) (9e21576) -
(es/minifier) Improve name mangler (#2509) (fce3b79)
-
(es/transforms/compat) Change error message (#2500) (52dfb55)
-
(es/transforms/compat) Fix
async_to_generator
(#2526) (e7189fb) -
(es/transforms/optimization) Fix
inline_globals
(#2524) (709b3c7) -
(es/transforms/react) Fix hygiene of react fast refresh (#2501) (175c997)
-
(es/transforms/typescript) Fix
strip
(#2496) (c29a6e1)
Features
-
(css/ast) Add
Percent
token (#2482) (e327c9a) -
(es/babel) Support
babelify
of static blocks (#2504) (91717c9) -
(es/transforms) Move
class_properties
toes2022
(#2512) (ecd617a) -
(es/transforms) Move stage 4 proposals to
es2022
(#2519) (65c83e8) -
(es/transforms/compat) Add single-property optimization to
destructuring
(#2511) (f33d321) -
(es/transforms/module) Fix transform of
this
for classes (#2514) (c482162) -
(swc) Add
browserslist
tooptionalDependencies
(#2515) (4abde38)
Refactor
- (css/parser) Respect spec (#2487) (430a06c)
Testing
-
(es/minifier) Add a test for
moment.js
(#2522) (a8b29b6) -
(es/transforms/compat) Add tests for
optional_catch_binding
(#2502) (a9869e6)
Ci
- general: Re-enable FreeBSD build (#2497) (1b91d55)
[1.2.102] - 2021-10-21
Bug Fixes
-
(css/parser) Fix parsing of url (#2484) (d83bde8)
-
(es) Fix simple bugs (#2495) (eef3d6e)
-
(es/minifier) Fix regexp handling (#2489) (7c5b6ca)
-
(es/minifier) Fix
join_vars
(#2494) (cef2c86) -
(es/parser) Fix parsing of a property named
async
(#2485) (3886eed) -
(es/transforms/base) Reimplement
hygiene
(#2408) (26944e1)
Features
-
(css/ast) Add
Function
token (#2491) (b62dc60) -
(es/trasform) Support static blocks (#2474) (bb1cc97)
-
(swc) Allow removing filename from error output (#2498) (ecf0d75)
Miscellaneous Tasks
- (ci) Prevent benchmark from marking PR as failed (#2488) (eef63ca)
[1.2.101] - 2021-10-19
Bug Fixes
-
(css/ast) Use correct type for units (#2464) (5234530)
-
(es/minifier) Fix minifier (#2477) (0020e16)
-
(es/transforms/compat) Fix handling of private static properties (#2478) (9b96885)
-
(swc) Change default value of
inlineSourcesContent
(#2471) (ee880d6)
Features
-
(es/transforms/optimization) Support inlining of
typeof
s (#2473) (2ca6e5d) -
(es/transforms/optimization) Improve
inline_globals
(#2479) (b0361ca)
Miscellaneous Tasks
- general: Fix typo (#2472) (123c1f5)
Performance
- (es/parser) Make typescript parser faster (#2483) (bf886ba)
[1.2.100] - 2021-10-19
Bug Fixes
-
(common) Fix sourcemap (#2457) (9ba68c6)
-
(es) Fix bugs (#2469) (c9437d3)
-
(es/minifier) Check for conditional usages while inlining (#2459) (06ca25f)
-
(es/regenerator) Fix for nested try (#2463) (201c0fc)
-
(es/transforms/compat) Fix regenerator (#2460) (5bcabb0)
Features
- (swc) Accept map for
envs
(#2467) (28f2c7a)
Miscellaneous Tasks
- general: Add
include
toswc
(ac77240)- general: Add CI steps for combined benchmark data (#2458) (8c0c250)
Performance
- (es/transforms) Improve performance (#2454) (575aa44)
Testing
-
(es) Use typescript test suite as a golden testing (#2456) (675c0e7)
-
(es) Freeze as
es2015
to verify base transforms (#2468) (01e171a)
[1.2.99] - 2021-10-17
Bug Fixes
-
(css/parser) Fix parsing of numbers (#2444) (4f2dbd8)
-
(es/codegen) Escape backtick of synthesized template literals (#2453) (de368f6)
-
(es/minifier) Fix minification of react hooks (#2450) (63ad4b4)
Performance
-
(es/transforms) Reduce usage of
#[fast_path]
(#2442) (1645bb3) -
(es/transforms) Make transforms parallel (#2449) (3d204b4)
[1.2.98] - 2021-10-16
Bug Fixes
Features
[1.2.97] - 2021-10-15
Bug Fixes
-
(css/ast) Fix delimiter token (#2415) (e2e4f2f)
-
(es/codegen) Fix codegen of synthesized template literals. (#2440) (d045244)
-
(es/minifier) Fix bugs (#2433) (0e48284)
-
(es/transforms/proposal) Fix type detection (#2431) (f899584)
Features
- (es/transforms/module) Add an option to preserve dynamic imports (#2441) (130a47f)
Miscellaneous Tasks
- (doc) Add an example of stripping out types (#2430) (647d3ed)- general: Check for issues already fixed (#2429) (a25d67b)
Performance
-
(es/codegen, es/parser) Improve performance (#2406) (4c983e9)
-
(es/transforms) Reduce usage of
#[fast_path]
(#2439) (e722bd4)
Refactor
- (css/ast) Use
delim
token (#2425) (93a7a17)
[1.2.96] - 2021-10-14
Bug Fixes
-
(css/parser) Fix parsing of comments (#2414) (f7b065e)
-
(dev/cli) Remove CLI from main swc repositoy (#2393) (897f4b6)
-
(es) Fix bugs (#2403) (6366d05)
-
(es/minifer) Fix handling of callable expressions (#2379) (ab687a0)
-
(es/minifer) Fix bugs (#2397) (98cc79a)
-
(es/minifier) Fix iteration order (#2412) (62f7f65)
-
(es/minifier) Fix infinite loop (#2424) (aff6670)
-
(es/parser) Allow using
async
as the first one in parameters (#2386) (2379fe1) -
(es/parser) Allow using
async
as the first one in parameters (#2388) (be3dca2) -
(es/parser) Allow
async
inTsAsExpr
(#2395) (4458f9c) -
(es/parser) Fix async function in
SeqExpr
(#2399) (d7f570f) -
(es/parser) Ensure that comments are collected (#2407) (4d47711)
-
(es/parser) Fix class getter/setter ASI bugs (#2409) (9446a03)
-
(es/transforms) Fix for react + typescript (#2422) (76de513)
-
(es/transforms/base) Fix
hyigiene
(#2421) (8074c72) -
(es/transforms/react) Fix escape of quote in HTML entities (#2419) (029cf05)
-
(es/transforms/testing) Fix
test_fixture
(#2400) (f560789) -
(swc) Fix bugs (#2396) (ff2baf7)
-
(swc) Fix order of passes (#2427) (51d7a14)
Features
-
(css/ast) Add
raw
toStr
(#2295) (a5592e3) -
(css/ast) Add
raw
toUrl
(#2389) (2678c34) -
(css/ast) Add delim token (#2398) (fb4869f)
-
(plugin/api) Determine plugin api (#2199) (7a31a3f)
Miscellaneous Tasks
- (plugin) Publish (fd08a27)- general: Fix CI script for publising (5fb5a70)- general: Disable freebsd to publish (267d639)
Performance
-
(atoms) Update
string_cache
(#2411) (4411d1d) -
(bundler) Improve performance (#2384) (ac3fbd9)
-
(bundler) Improve performance (#2394) (b5f8321)
-
(es/transforms/base) Make
resolver
faster (#2392) (a330322)
Refactor
-
(es/parser) Simplify parsing logic (#2405) (4ad25d2)
-
(es/parser) Cleanup codes for the comment buffer (#2410) (d114e7d)
Testing
- (css/parser) Add tests for comments (#2364) (a36f8e4)
[1.2.95] - 2021-10-09
Bug Fixes
-
(css) Change the type of the source of
@import
rules. (#2363) (cf1235e) -
(es/codegen, es/transforms/typescript) Fix bugs (#2383) (2c058cb)
-
(swc) Fix
sourceMap
option of minify (#2380) (486c689)
Refactor
- (es/parser) Simplify parsing logic (#2381) (644e49c)
[1.2.94] - 2021-10-08
Bug Fixes
-
(css/parser) Fix parsing of funxtion named
url
(#2350) (6863d96) -
(es/minifier) Don't optimize
new String
. (#2341) (8403057) -
(es/minifier) Fix inlining into shorthand properties (#2348) (87b20a8)
-
(es/minifier) Fix minifier (#2355) (9e6a1f4)
-
(es/parser) Report errors for multiple array elements without comma (#2366) (521e671)
-
(es/parser) Report errors for array patterns without comma (#2365) (d65ce85)
-
(es/transforms/optimization) Fix
dead_branch_remover
(#2373) (1f99c3a) -
(es/transforms/react) Allow non-first jsx directives (#2377) (4466ca6)
-
(es/trasnforms/testing) Improve
test_fixture
(#2369) (7a19fc6) -
(es/utils) Fix macros (#2349) (b64afb5)
-
(node/bundler) Prevent spreading string into return (#2335) (f426166)
-
(swc) Fix order of custom passes (#2347) (6d35e7c)
-
(swc) Fix order of custom passes (#2367) (edc4cb4)
-
(swc) Fix
swc
as a crate (#2376) (656f3e9) -
(testing) Fix CRLF issue on windows (#2338) (20171a3)
Documentation
- (es/ast) Document identifier mangagement system (#2371) (b0ee954)
Features
-
(babel/compat) Support type-only import/export specifiers (#2342) (ef4c80b)
-
(css) Add error recovery for tokens in selector positions (#2357) (3714802)
-
(css/ast) Add raw to
Text
(#2361) (4ff1b75) -
(es/codegen) Expose more API (#2375) (500dbf2)
-
(swcpack) Enable concurrent mode (#2356) (d0342a5)
Miscellaneous Tasks
-
(ci) Add a CI script to publish from github actions (#2353) (305f90c)
-
(es/minifier) Publish (#2354) (a553451)- general: Improve documentation for rust users (#2340) (bbefa0e)- general: Setup workfllow to bump version (#2368) (e2a0edd)
Performance
- (es/transforms) Improve performance (#2329) (fac6f47)
Testing
[1.2.93] - 2021-10-01
Bug Fixes
-
(css/parser) Fix error recovery logic of property values (#2331) (9f4c5b7)
-
(es) Fix performance bugs (#2313) (6a41e9a)
-
(es/codegen) Fix codegen of numbers (#2317) (bd92d89)
-
(es/minifier) Fix minifier (#2323) (dad7392)
-
(swc) Fix
try_with_handler
(#2315) (2c50cde)
Features
- (css/parser) Implement more error recovery (#2316) (ce40ff7)
Miscellaneous Tasks
- general: Update rustc (#2332) (a7357ab)
Performance
- (common) Avoid string re-allocation (#2318) (fee270f)
[1.2.92] - 2021-09-28
Bug Fixes
-
(css) Reexport codegen from
swc_css
(#2314) (36c8312) -
(es/minifier) Fix bugs (#2283) (e8a1710)
-
(es/parser) Report errors for multiple import/export specifiers without comma (#2302) (83153a0)
-
(es/parser) Improve error message (#2304) (552fc23)- general: Migrate dependencies (#2307) (650e149)
Features
-
(css) Recover from invalid properties (#2312) (b206404)
-
(es) Support type-only import/export specifiers (#2309) (2b292e6)
-
(es/parser, es/transform) Implement ergonomic brand checking (#2079) (e46a842)
-
(node/swc) Add a named export for
Visitor
(#2291) (2580f1a)
[1.2.91] - 2021-09-24
Bug Fixes
-
(css/ast) Fix typo (#2298) (75c930c)
-
(css/parser) Fix parsing of
!important
(#2286) (2f4da9a) -
(es/parser) Fix bugs (#2255) (ca0d6dd)
-
(es/transforms/base) Fix
hygiene
(#2299) (5e1003e) -
(swc) Fix simple bugs (#2292) (1b2e670)
Miscellaneous Tasks
- general: Improve docs (#2301) (83d88ce)
Testing
-
(css/parser) Add tests for
@page
at-rule (#2296) (2a565e8) -
(css/parser) Add tests for comments in selectors (#2293) (8af2173)
[1.2.90] - 2021-09-23
Bug Fixes
-
(es/transforms/base) Fix
hygiene
(#2282) (2156364) -
(node/swc) Allow
JsMinifyOptions
type forJscConfig.minify
(#2287) (4846c32)
Miscellaneous Tasks
- general: Ignore linguist detection for fixtures (#2285) (e538970)- general: Fix typo (#2288) (dd3f18b)
[1.2.89] - 2021-09-21
Bug Fixes
-
(css/parser) Allow @at-rules to be lowercased (#2274) (9eb45e8)
-
(css/parser) Fix parsing of url (#2280) (b5ad03d)
-
(es) Fix bugs (#2256) (ce01b8a)
-
(es/codegen) Fix codegen of ` in synthesized template literals (#2260) (e2d8465)
-
(es/codegen) Emit
static
beforereadonly
(#2271) (8e0a545) -
(es/minifier) Don't drop used variables (#2272) (3f306f0)
-
(es/transforms/base) Fix
hygiene
pass (#2266) (180dc31) -
(es/transforms/compat) Move the optional catch binding pass to ES2019 (#2247) (4d500ba)
-
(es/transforms/testing) Fix comparing logic (#2263) (f087d15)
-
(swc) Remove global side effects for rust users. (#2270) (b82702c)
-
(wasm) Fix bugs (#2279) (e5f46a6)
Features
- (es/minifier) Add CLI for debugging (#2273) (406fa3f)
Miscellaneous Tasks
- general: Add discord server link to
README.md
(#2278) (893fb08)
[1.2.88] - 2021-09-16
Bug Fixes
- (es/transforms) Fix bugs (#2249) (6f33c32)
Features
- (es/minifer) Improve minifier (#2229) (20ce326)
Miscellaneous Tasks
- general: Add a link to github sponers (ff389ca)
[1.2.87] - 2021-09-14
Bug Fixes
-
(ci) Publish (#2250) (cab37f8)
-
(common, node/swc) Allow inlining
sourcesContent
(#2245) (48d6103) -
(es/transforms/compat) Add
new.target
toes5
(#2231) (6e12ef0)
Features
- (node/swc) Enable tsx automatically based on the extension (#2230) (4ca85ec)
[1.2.86] - 2021-09-11
Bug Fixes
-
(ci) Publish v1.2.86 (#2235) (f78a504)
-
(css/parser) Fix parsing of selectors (#2221) (a9573b9)
-
(es) Fix bugs (#2222) (2c47778)
-
(es/loader) Fix support for
jsc.paths
. (#2227) (9eafd0c) -
(swc) Fix
target
(#2226) (9ffe471)
[1.2.85] - 2021-09-09
Bug Fixes
-
(css/parser) Fix parsing of selectors (#2217) (d8ae4c4)
-
(es/parser) Fix parsing of static blocks (#2200) (cbc8230)
-
(swc) Improve rust apis (#2197) (77be9f6)- general: Fix simple bugs (#2220) (b4796d9)
Features
-
(common) Add variants to
FileName
(#2202) (87f30b2) -
(es/minifier) Implement more rules (#2183) (c8b46bf)
[1.2.84] - 2021-09-01
Bug Fixes
-
(es) Fix easy bugs (#2178) (c0b0337)
-
(es/loader) Fix node resolver (#2172) (5d70283)
-
(es/loader) Improve handling of
base_dir
(#2182) (361bc70) -
(es/parser) Remove
static_blocks
fromTsConfig
(#2186) (2f2e35a) -
(es/transforms) Fix bugs (#2181) (ee16139)
-
(es/transforms/base) Optimize
hygiene
(#2193) (cb2b0c6)
Documentation
- (common) Improve doc of
Take
(#2192) (55f065b)
Features
-
(common) Implement
TypeEq
andEqIgnoreSpan
for tuples (#2184) (d58642b) -
(es/minifier) Implement static evaluator (#2176) (11fe35d)
-
(es/parser) Add tests for static blocks (#2180) (b2c9971)
-
(es/parser, es/codegen, es/visit) Support static blocks in classes (#2130) (a10118c)- general: Expose
.take()
(#2190) (a8cb554)
Refactor
- (es) Use
BlockStmt
insteadVec<Stmt>
for static blocks. (#2188) (99c35ff)
[1.2.83] - 2021-08-27
Bug Fixes
-
(es) Fix source map (#2159) (d975a19)
-
(es) Fix some easy bugs (#2166) (97514a7)
-
(es/minifier) Fix usage via yarn resolution (#2158) (e468752)
-
(es/transforms/base) Fix
await
expressions. (#2157) (8c5daee)
Features
- (plugin) Groundwork for rust plugin system (#1893) (18e2232)
Refactor
- (es/dep_graph) Use
dyn
instead ofimpl
(#2119) (3d58457)
[1.2.82] - 2021-08-25
Bug Fixes
- (es/codegen) Fix sourcemap (#2142) (427df9a)
Features
-
(css/parser) Improve parser api (#2147) (8c57cf0)
-
(es) Reexport minifier from
swc_ecmascript
(#2146) (584c44a)
Miscellaneous Tasks
- (es/parser) Update an error message (#2148) (78a7c6b)
[1.2.81] - 2021-08-24
Bug Fixes
-
(bundler) Fix handling of reexports from cjs modules (#2143) (b027824)
-
(css) Fixup (#2138) (81061a9)
-
(es/minifier) Make use of hygiene optimizer (#2145) (838a7a8)
-
(es/transforms/compat) Implement
new.tartet
(#2129) (c78baef)
Features
-
(bundler) Support replacing any environment variables (#2121) (61e58d7)
-
(css) Groundwork for css processor (#2105) (0d63470)
-
(css) Implement codegen for css (#2115) (7381644)
-
(css) Port stylis (#2131) (c05a724)
-
(es/parser) Report an early error for
await
used in wrong contexts (#2098) (e3e2908)
Miscellaneous Tasks
- general: Fix typo in type definition (#2116) (91c239b)- general: Fix typo (#2136) (84cda8a)- general: Fix typo (#2135) (1d71a8e)
[1.2.80] - 2021-08-19
Bug Fixes
- (swc) Disable
aes
feature (#2109) (6eaf60b)
[1.2.79] - 2021-08-19
Bug Fixes
- (es/codegen) Fix codegen of
~
(#2104) (6896a83)
Features
-
(css) Implement parser (#2074) (d39acd1)
-
(es/parser) Emit an error for top-level await in script (#2094) (33bdff0)
-
(swc) Implement
format.comments
of terser (#2095) (879a0f3)
[1.2.78] - 2021-08-16
Bug Fixes
-
(bundler) Fix stack overflow (#2080) (f8aa050)
-
(es) Fix simple bugs (#2077) (949a4d9)
-
(es/parser) Fix parsing of
function
in property names (#2076) (b0067ad) -
(es/parser) Allow using parser with stable rustc (#2084) (1b0ef75)
-
(es/transforms) Fix bugs (#2089) (a309b36)
-
(node/swc) Fix incorrect field package.json (#2069) (035ff77)
Features
-
(es/loader) Support more types for
browser
in package.json (#2060) (e84ed13) -
(es/minifier) Implement more rules (#2058) (0e30deb)
Miscellaneous Tasks
- general: Cleanup codes for fixture testing (#2070) (b0c41bb)
Performance
- general: Use ahash instead of sip hash (#2073) (f6aabfc)
Testing
- (es/ext/jest) Add tests for jest (#2082) (ddb2dc7)
[1.2.77] - 2021-08-13
Bug Fixes
-
(bundler) Prepare renaming of bundler (#2066) (883c1ac)
-
(es) Fix bugs (#2055) (72c9f43)
-
(es/minifier) Fix bugs of the minifier (#2052) (a7cb2ab)
-
(swc) Report error correctly (#2065) (c6dce67)
-
(swc) Fix bugs (#2067) (1b9584c)
Features
-
(bundler) Support
paths
(#2054) (cfc3725) -
(es/transforms) Improve module transform (#2053) (a26071f)
Performance
- (node/swc) Use mimalloc (#2068) (fe2a063)
[1.2.76] - 2021-08-10
Bug Fixes
-
(es/parser) Recover from
import.meta
in scripts (#2042) (8cbbddb) -
(es/transforms/module) Fix
paths
bug. (#2043) (2c52021) -
(swc) Fix bugs (#2034) (53b031b)
Features
-
(es/loader) Support target runtime environment. (#2045) (2151366)
-
(es/minifier) Implement more rules (#2039) (71080db)
Refactor
- (es/parser) Cleanup (#2033) (4ead801)
[1.2.75] - 2021-08-08
Bug Fixes
-
(es/minifier) Fix bugs and implement more rules (#2032) (9793926)
-
(es/parser) Use correct error message (#2025) (8a39c1d)
-
(es/transforms/classes) Fix a bug related to super property access (#1960) (403f647)
-
(es/transforms/react) Handle escape correctly (#2014) (eb45760)
-
(node/swc) Allow specifying filename when parsing (#2031) (abb1451)
Features
-
(es/minifier) Make minifier parallel (#2009) (026c21e)
-
(es/parser) Always enable features in ES spec (#2029) (f4e0e91)
-
(swc) Improve swc as a crate (#2026) (4cdb45f)
[1.2.74] - 2021-08-04
Bug Fixes
- (es) Fix codegen & minifier (#2006) (48bc26d)
[1.2.73] - 2021-08-04
Bug Fixes
-
(ci) Fix CI (#2003) (a4fb114)
-
(common) Remove potential race condition (#2001) (080b1fa)
-
(es) Fix bugs (#2004) (81abfe5)
-
(es/minifier) Improve output of minifier (#1990) (f44e25c)
-
(es/minifier) Improve output of minifier (#2005) (68608db)
Features
-
(common) Add an utiliy method for comments (#2002) (064416c)
-
(es/parser) Report an error for
import.meta
in script (#1999) (a086a20)
[1.2.71] - 2021-08-02
Bug Fixes
- (es) Ensure that #1681 is fixed (#1970) (6285f20)
Features
- (node/swc) Support
sourceFileName
(#1976) (e916b35)
[1.2.70] - 2021-07-31
Bug Fixes
- (es/minifier) Fix minifier (#1985) (be23e66)
[1.2.69] - 2021-07-31
Bug Fixes
- (build) Increase memory (d600d52)
[1.2.67] - 2021-07-31
Bug Fixes
-
(es/codegen) Remove extra space of import decl (#1975) (ef4bb31)
-
(es/transforms) Fix passes related to optimizations (#1942) (21848ce)
-
(es/transforms) Fix bugs (#1950) (204a71c)
-
(es/transforms) Strip out private method overloads (#1977) (d64aa6f)
-
(es/transforms/base) Fix hygiene (#1964) (af4cbba)
-
(es/transforms/module) Allow namespace import with default import (#1940) (de24ff2)
-
(es/transforms/typescript) Fix typescript stripper (#1945) (ebdd04d)
-
(node/swc) Fix typings for parser options (#1971) (eecaac1)
-
(testing) Allow using it with stable rustc (#1974) (4011703)- general: Remove println (360b4bc)
Features
-
(es/minifier) Implement more rules (#1871) (b02e189)
-
(es/parser) Allow stripping out typescript parser (#1962) (85a216e)
-
(swc) Expose minifier api (#1978) (d1c4817)
Miscellaneous Tasks
- general: Fix typo (#1958) (cd4a564)- general: Use correct license for the node package (#1966) (f3603b2)
[1.2.66] - 2021-07-20
Bug Fixes
-
(es/codegen) Fix codegen of template literals (#1936) (39ee7b9)
-
(node/swc) Fix field name (#1923) (d5cdf44)
-
(node/swc) Fix for m1 mac (#1939) (d6454ad)
[1.2.65] - 2021-07-18
Bug Fixes
-
(es/transforms) Allow using rest pattern in arrow functions. (#1926) (a26a189)
-
(swc) Fix order of passes (#1931) (4a9b31d)
-
(swc) Fix bugs (#1932) (ff47e25)
[1.2.64] - 2021-07-14
Bug Fixes
-
(es/parser) Fix parsing of file with onlly shebang (#1896) (ed274b0)
-
(es/transforms) Fix transforms (#1900) (69186eb)
-
(es/transforms) Fix decorator bugs (#1905) (03be315)
-
(es/transforms) Fix transforms (#1909) (104be98)
-
(es/transforms) Fix fixer (#1919) (7a8ad88)
-
(es/transforms/base) Fix ts_resolver (#1903) (fe7f7b6)
-
(es/transforms/compat) Handle nested optional chaining expression (#1899) (6037332)
-
(es/transforms/compat) Fix regenerator (#1906) (480287a)
-
(es/transforms/proposal) Fix order of constructor statements (#1914) (d13eff9)
-
(swc) Fix source path of a source map file (#1902) (19bcb06)
Miscellaneous Tasks
- (ci) Switch installation method of deno (#1915) (4e42c66)- general: Update README.md (#1910) (8694b11)
Refactor
- (es/dep-graph) Remove SourceMap dependency (#1908) (6dc6d8a)
[1.2.63] - 2021-07-06
Bug Fixes
-
(bundler) Prevent infinite loop (#1872) (ea93e1d)
-
(ci) Use cross-env (#1897) (04d4384)
-
(es/ast) Fix handling of reserved words (#1891) (7634106)
-
(es/parser) Make comments in empty file be in leading comments (#1879) (534c0b1)
-
(es/parser) Allow using '>' and '<' in template literal types (#1885) (14cee03)
-
(es/transform/react) Handle TypeScript declare module (#1875) (1a01d0f)
-
(es/transforms/module) Fix for duplicate export (#1846) (f8a3df8)
-
(es/transforms/optimization) Migrate to VisitMut (#1880) (ab16179)
-
(node-swc) Fix visitor (#1890) (211e208)
Features
-
(babel/compat) Implement reverse operation of babelify (#1655) (c49e9b0)
-
(es/minifier) Implement more rules (#1766) (33a43f8)
Miscellaneous Tasks
- (wasm) Fix license (#1874) (c4e0134)
[1.2.62] - 2021-06-27
Bug Fixes
-
(es/codegen) Preserve more comments (#1856) (098e48b)
-
(es/parser) Fix parsing of abstract class over multiple lines (#1837) (6c49279)
-
(es/parser) Fix span of ExportDefaultDeclaration (#1818) (7488950)
-
(es/transforms) Fix transforms (#1861) (33f2ab2)
-
(es/transforms/base) Fix fixer for the call in callee position (#1857) (5345c90)
-
(es/transforms/module) Allow importing same module with multiple names (#1830) (9ae8c47)
-
(es/transforms/module) Share usage data between passes (#1829) (a31ca40)
-
(es/utils) Fix detection of used variables (#1835) (11f75df)
-
(swc) Fix sourcemap (#1832) (5a6c4fd)
Features
-
(ci) Track binary size and performance (#1840) (f424957)
-
(es/loader) Add more logics to tsconfig.paths handler (#1860) (eaaf32d)
-
(es/visit) Groundwork to use VisitMut instead of Fold (#1842) (6ad3f7b)
-
(swc) Add import resolvers (#1834) (4cd4337)
Miscellaneous Tasks
-
(es/ast) Upgrade arbitrary crate to v1 (#1844) (c5f1c6b)
-
(es/ast) Bump version (#1853) (737ce63)- general: Organize project (#1849) (ff440d4)
[1.2.61] - 2021-06-16
Bug Fixes
-
(es) Remove UB (#1815) (3c3fb35)
-
(es) Fix bugs for the type checker (#1823) (7fa4e1b)
-
(es) Improve handling of typescript (#1824) (4c8d68b)
-
(es/parser) Fix parser (#1808) (c561157)
-
(es/parser) Fix lexing of numbers (#1821) (001af86)
-
(es/parser) Fix parsing of line terminators (#1755) (8d8b2d1)
-
(es/parser) Fix panic on debug mode (#1828) (f9bdc7b)
-
(es/transforms/optimization) Fix dead_branch_remover (#1827) (b5a7a3f)
-
(swc) Fix bugs (#1811) (97ef7c0)
-
(swc) Fix bugs (#1820) (d3944f5)
Build
- (node-swc) Support lower version glibc linux on non-x64 arch (#1809) (c6ce8c6)
[1.2.60] - 2021-06-06
Bug Fixes
-
(bundler) Fix cycle detection (#1779) (4e7723a)
-
(es/transforms) Fix bugs (#1769) (ad55711)
-
(es/transforms) Fix bugs (#1783) (0bd2a3a)
-
(es/transforms) Fix bugs (#1795) (7730a6e)
-
(es/transforms/base) Wrap binary operands of unary expressions. (#1793) (03db7ad)
Features
- (node-swc) Support windows aarch64 and linux aarch64 musl (#1773) (d657193)
[1.2.59] - 2021-05-30
Bug Fixes
-
(common) Fix compiler error (#1747) (7b9b9fe)
-
(es) Fix bugs (#1728) (a518c83)
-
(es/codegen) Fix codegen of classes with minify enabled (#1767) (5d219b8)
-
(es/parser) Report error for wrong declare keywords (#1760) (65ffd87)
-
(es/transforms/base) Fix ts_resolver (#1761) (9fa878c)
-
(spack) Fix node resolver (#1748) (1150fbc)
-
(spack) Update the list of node js core modules (#1749) (3359188)
-
(swc) Fix bugs (#1732) (a795de7)
-
(swc) Fix bugs (#1739) (d60c324)
-
(swc) Fix bugs (#1745) (8726c9c)
-
(swc) Fix bugs (#1753) (c79db25)
Features
-
(es/minifier) Implement more rules (#1717) (d20c1d3)
-
(es/minifier) Implement more rules (#1730) (3522fc7)
-
(es/minifier) Implement more rules (#1731) (5e2db21)
-
(es/minifier) Implement more rules (#1735) (ef6a745)
-
(es/minifier) Implement rules and classify tests (#1750) (99e7386)
-
(node-swc) Support FreeBSD (#1758) (6a13615)
[1.2.58] - 2021-05-21
Bug Fixes
-
(es) Fix various bugs (#1680) (24bd5ea)
-
(es) Fix various bugs (#1707) (57d1aaf)
-
(es) Fix bugs (#1709) (dee8290)
-
(es/minifier) Use log instead of stderr (#1715) (ded8f2b)
-
(es/minifier) Publish (#1716) (470c8f4)
-
(es/preset-env) Update core js compat data (#1719) (8a2909b)
-
(es/transform) Fix bugs (#1699) (b4aa1d4)
-
(es/transforms) Fix bugs (#1691) (f0d7a3d)
-
(es/transforms/base) Fix resolver (#1710) (a0241c8)
-
(es/transforms/compat) Support private methods (#1700) (b044d2c)
-
(es/transforms/compat) Fix
async_to_generator
pass. (#1724) (a1341dc) -
(es/transforsm/compat) Transform private field access in private methods (#1703) (8a36435)
-
(node-swc) Fix typescript definitions for react options (#1720) (c2bd319)
-
(swc) Fix bugs (#1712) (b6589af)
Features
-
(es) Support type-only import equals declaration (#1695) (1dbc364)
-
(es/minifier) Implement minifier partially (#1302) (c6b22c5)
[1.2.57] - 2021-05-11
Bug Fixes
-
(ci) Don't run tests on macos (#1659) (4d013d9)
-
(es) Fix various bugs. (#1664) (b0b0709)
-
(es/parser) Allow using
override
withstatic
(#1663) (4aed942) -
(es/tranforms/base) Resolver: Handle function declarations in ts modules (#1665) (aea08fb)
-
(es/transforms/base) Fix resolver (#1666) (9585500)
-
(es/transforms/base) Fix resolver (#1672) (9381d0d)
-
(es/transforms/compat) Fix span for comments in classes transform. (#1658) (c3bf517)
-
(es/transforms/compat) Don't create unnecessary IIFE. (#1669) (2b918b0)
-
(es/transforms/compat) Improve performance (#1673) (2ad0af9)
-
(node-swc) Fixed parseFile (#1654) (0cdabeb)
Features
-
(es/parser) Allow
override
in parameter properties (#1667) (1548f6d) -
(es/parser) Enforce order of
abstract
andoverride
(#1668) (50f8048) -
(es/parser) Enforce orders of
override
andasync
(#1670) (b713972) -
(es/transforms/compat) Add pure comment to classes (#1646) (f4d0e46)
[1.2.56] - 2021-05-08
Bug Fixes
[1.2.55] - 2021-05-07
Bug Fixes
-
(bundler) Improve performance (#1599) (9a07869)
-
(bundler) Fix performance (#1601) (308792d)
-
(bundler) Use proper algorithm for dependency analysis (#1610) (731dc68)
-
(ci) Use ghcr.io build image (#1622) (7ea8760)
-
(es/transforms/compat) Allow keywords in method names. (#1651) (1b1c46b)
-
(es/transforms/fixer) Handle binary expressions in super class expr (#1636) (27a1c30)
-
(es/transforms/optimization) Preserve
x instanceof Object
(#1630) (b6ff4d6) -
(es/transforms/react) Expose
RefreshOptions
(#1635) (2724cef) -
(es/transforms/react) Change order of passes (#1639) (fe107a1)
-
(es/transforms/resolver) Fix setter properties (#1645) (deec1f6)
-
(es/transforms/resolver) Fix setter properties (#1647) (abc24c9)
-
(node-swc) Fix definition of FunctionDeclaration (#1602) (1c1de63)
-
(node-swc) Fix outdated types (#1621) (e9d58fa)
-
(node-swc) Fix definition of JSXOpeningElement (#1608) (304b57c)
-
(swc) Fix bugs (#1591) (dbec753)
-
(swc) Fix various bugs (#1613) (5a0bacb)
-
(swc) Fix bugs (#1624) (28bb61f)
-
(swc) Fix various bugs. (#1632) (d10671b)
-
(wasm-web) Use jq with an explicit temp file (#1637) (882e2d9)
Features
-
(ast_node) Add #[ast_serde] (#1595) (8222cc0)
-
(babel/compat) Improve performance of babelify (#1626) (82ef06a)
-
(es/preset-env) Make android targets fall back to chrome (#1597) (a24266d)
-
(es/transforms/optimization) Simplify: Preserve do-while loops with conditional stoppers (#1618) (f943021)
-
(node-swc) Babel ast translator (#1465) (d1415f9)
[1.2.54] - 2021-04-19
Bug Fixes
-
(es/transforms/compat) Fix syntax context of super classes (#1586) (d7ea5ae)
-
(es/transforms/compat) Handle references to
arguments
inside arrow functions and block scoped loops (#1585) (1c4fa63) -
(swc) Fix bugs (#1560) (46c3d62)
-
(swc) Fix various bugs (#1588) (4db24fb)- general: Fix bugs (#1590) (c765c7e)
[1.2.53] - 2021-04-16
Bug Fixes
-
(bundler) Fix bugs (#1572) (246bdd5)
-
(bundler) Fix bundler (#1576) (1178686)
-
(es/transforms/base) Fix nested function scopes (#1559) (92bbde3)
-
(es/transforms/base) Fix precedence of yield expression inside ternary (#1577) (00461f3)
-
(es/transforms/base/fixer) Fix parens of sequence expressions (#1566) (14edb69)
-
(es/transforms/compat) Fix block scoping of class declarations (#1569) (d8a18df)
-
(es/transforms/compat) Fix regenerator pass for yield* expressions (#1580) (efa7a9a)
-
(es/transforms/module) Use correct this (#1561) (df2a926)
-
(es/transforms/optimization) Preserve missing object members (#1567) (e43de77)
[1.2.52] - 2021-04-11
Bug Fixes
-
(es) Fix for the type checker (#1528) (4ab7a91)
-
(es) Fix sourcemap (#1548) (62d0cbc)
-
(es) Fix bugs. (#1565) (5ef3c43)
-
(es/ast) Remove TsSignatureDecl (#1531) (f179270)
-
(es/codegen) Fix sourcemaps of multi line block comments (#1511) (393808a)
-
(es/parser) Fix assert after imports (#1513) (3ddf229)
-
(es/parser) Use correct position for comments (#1527) (5ce4e1e)
-
(es/parser) Disallow
override
in non-subclass (#1552) (39e1e54) -
(es/parser) Fix error message (#1551) (f002b73)
-
(es/transforms/base) Fix named function expression handling in resolver (#1540) (beeb1f9)
-
(es/transforms/optimization) Fix inlining nested block statements in branch simplifier (#1536) (0d79ca6)
-
(es/transforms/optimization) Fix function hoisting with early return branch simplification (#1539) (ee641ba)
-
(es/transforms/typescript) Fix TS import elision with shadowed declarations (#1521) (b9f5a50)
-
(node-swc) Make
Argument.spread
optional (#1535) (dcaea5f) -
(node-swc) Fix VariableDeclarationKind typescript definition (#1542) (c7dc911)
-
(node-swc) Fix handling of tagged template expressions in Visitor (#1544) (228429c)
-
(strip) Expand class expressions as sequences (8b1f8dd)
-
(swc) Fix bugs for v1.2.52 (#1506) (99f4f0f)
-
(swc) Fix bugs (#1529) (252804d)
-
(swc) Fix various bugs (#1550) (2211a99)- general: Fix bugs (#1516) (51d0cef)
Features
-
(es) Support TS 4.3 static index signature in class (#1537) (6512216)
-
(es) Support
override
syntax in class for TS 4.3 (#1541) (3d0ad22) -
(es/transforms/react) Support fast refresh (#1524) (0fabc2c)
-
(es/transforms/react) Fast refresh config (#1538) (6cad184)
-
(es/transforms/react) Add pure annotation comments (#1564) (8f5daa3)
Miscellaneous Tasks
- (ci) Configure github actions for rustdoc (#1523) (13a9d12)
[1.2.51] - 2021-03-28
Bug Fixes
-
(bundler) Fix stack overflow on Windows (#1464) (fec189f)
-
(bundler) Fix inlining pass (#1495) (7853b0a)
-
(ci) Speed up (#1494) (0351a47)
-
(common) Fix column positions in generated sourcemaps (#1470) (9d53a70)
-
(es/codegen) Fix SX spread props (#1463) (06cb4b8)
-
(es/codegen) Fix codegen of arrow expressions. (#1452) (9445c10)
-
(es/transforms/base) Fix fixer (#1496) (b7eb1f9)
-
(es/transforms/fixer) Fix await expressions. (#1475) (df3f310)
-
(es/transforms/react) Handle jsx entities in attributes correctly (#1501) (232cfc5)
-
(es/transforms/typescript) Precompute class field keys (#1498) (8eae009)
-
(strip) Combine typescript_class_properties() into strip() (#1478) (9bc074e)
-
(strip) Transform static class fields to assignments (#1487) (fa3d65c)
-
(swc) Fix bugs (#1453) (dcdac2d)
Miscellaneous Tasks
- general: Add note about required dev tools (#1467) (a903683)
Refactor
- (es/ast) Change TaggedTpl to have a Tpl (#1114) (da62c73)
[1.2.50] - 2021-03-03
Bug Fixes
-
(bundler) Fix bundler (#1427) (c047e0e)
-
(bundler) Fix bugs (#1437) (bbaf619)
-
(es/parser) Recover from type annotations after
=
(#1445) (73b8826) -
(es/parser) Fix lexing of template literals. (#1450) (bc07215)
-
(es/transforms/base) Fix span hygiene of type elements (#1436) (a4d408d)
-
(swc) Fix various bugs (#1440) (a310542)
-
(swc) Fix bugs for v1.2.50 (#1444) (97269a3)
Features
- (es/transforms) Port @babel/preset-modules (#1439) (eec65f2)
Miscellaneous Tasks
[1.2.49] - 2021-02-23
Bug Fixes
-
(common) Allow using with MIRI (#1426) (abfff69)
-
(node-swc) Fix glibc compatibility issue (#1431) (6ece763)- general: Fix tests on windows (#1419) (59bd00d)
[1.2.48] - 2021-02-22
Bug Fixes
-
(bundler) Fix bugs (#1373) (bfde9a1)
-
(bundler) Fix bugs (#1382) (7f5bfdc)
-
(es) Fix for the type checker (#1381) (686c981)
-
(es) Fix bugs (#1395) (9dabf00)
-
(es) Fix docs.rs (#1399) (fc2a8cb)
-
(es) Improve performance (#1411) (eaeffab)
-
(es/ast) Remove TsTypeCastExpr it's not used (#1420) (adcca03)
-
(es/parser) Fix bugs (#1405) (5ad57b0)
-
(es/transforms/base) Fix hygiene of catch clause (#1413) (27aad87)
-
(es/transforms/base) Fix resolver (#1414) (eecdca4)
-
(es/transforms/react) Use VisitMut instead of Fold (#1409) (8fb0b4c)
-
(node) Add es2020 to JscTarget in types.ts (#1376) (98ae167)
-
(node-swc) Don't remove plugin from options (#1390) (a0898e8)
-
(node-swc) Handle empty object patterns. (#1393) (f5a90ae)
-
(swc) Fix bugs (#1372) (bf445a7)
-
(swc) Reduce allocation (#1401) (a53186c)
Documentation
- general: Fixed documentation link URL in README.md (#1375) (7a93594)
Features
-
(es/parser) Allow to look at the kind of an error (#1396) (313f51f)
-
(es/preset-env) Custom config path (#1374) (bd119e6)
-
(es/transforms/react) New jsx transform (#1408) (0be20ff)
-
(node-swc) Reduce binary size (#1418) (9d896c7)- general: Add import assertion to dep analyzer (#1387) (8ef78a9)
Miscellaneous Tasks
- (node-swc) Use latest napi versions (#1386) (79e991b)
[1.2.47] - 2021-01-30
Bug Fixes
-
(bundler) Fix bugs (#1349) (947161b)
-
(bundler) Fix pass ordering (#1363) (767f21e)
-
(bundler) Prevent hanging (#1369) (0d130f8)
-
(es) Fixes for type checker (#1359) (93a1914)
-
(es/ast) Compilation (#1357) (2921b90)
-
(es/ast) Fix EqIgnoreSpan (#1360) (947f9c5)
-
(swc) Fix bugs for v1.2.47 (#1368) (af25a88)
Features
-
(es/transforms/typescript) Strip out type-only namespaces (#1361) (78e79a7)
-
(node-swc) Support windows ia32 arch (#1367) (ca417e9)
[1.2.46] - 2021-01-24
Bug Fixes
-
(bundler) Publish (ebc0d0a)
-
(bundler) Fix bugs (#1342) (17f17e8)
-
(bundler) Fix bugs (#1346) (6a1c3da)
-
(es) Fixes for the type checker (#1331) (613a5a4)
-
(es) Move and rename JscTarget (#1343) (0469e3a)
-
(es) Fix bugs (#1347) (d4df2ce)
-
(es) Fix bugs (#1353) (b7ae896)
-
(es/transforms) Handle enum in namespaces (#1340) (ddc9492)
-
(swc) Fix bugs (#1300) (a9bf9bb)
Features
V1.2.46
- general: Prevent regression. (#1356) (5c3a0b5)
[1.2.44] - 2021-01-11
Bug Fixes
-
(bundler) Fix bundler (#1318) (23aebac)
-
(ci) Insert *_bg files in @swc/wasm-web (#1305) (895b431)
-
(ecmascript/transforms) Fix dce (#1301) (842b6f9)
Features
-
(ecmascript) Remove macros (#1319) (c83d19e)
-
(ecmascript/transforms) Split into multiple crates. (#1311) (76d9e2a)
Miscellaneous Tasks
- general: Fix website docs link (#1317) (5d88e8b)- general: Update actions/setup-node (#1315) (78dc61a)
[1.2.43] - 2020-12-30
[1.2.42] - 2020-12-29
Bug Fixes
-
(bundler) Fix statement ordering issue (#1264) (b66ee58)
-
(bundler) Fix remaining bugs (#1296) (ba13db5)
-
(bundler) Don't load dynamic imports (#1297) (bc7ac45)
-
(ci) Insert *_bg files in @swc/wasm-web (#1291) (#1293) (066bb4e)
-
(swc) Fixes for typescript type checker (#1146) (6941f29)
Features
-
(ecmascript/ast) Add EqIgnoreSpan and TypeEq (#1295) (34249bb)
-
(ecmascript/codegen) Fix and use omit_trailing_semi (#1298) (9063908)
[1.2.41] - 2020-12-23
Bug Fixes
-
(ci) Fix ci (OOM & library api change) (#1284) (0ead8dc)
-
(ci) Publish npm packages as public (#1277) (#1290) (dd977ff)
-
(ecmascript) Fix bugs related to string literals (#1287) (8a8db58)
-
(ecmascript/codegen) TsQualifiedName has trailing dot (#1268) (b760c7c)
-
(ecmascript/lexer) Normalize \r\n and \r to \n in template literals (#1286) (576fb6a)
-
(ecmascript/parser) Fix span of
declare
decls. (#1282) (bf69b47)
Features
-
(ecmascript/parser) Add tests for binding patterns (#1289) (c2a9994)
-
(fixer) Handle ?? properly (#1270) (ccf4c2b)
-
(node-swc) Remove duplicate type and correct name (#1267) (261e2ec)
-
(parser) Don't hang on unexpected inputs (#1274) (25856f2)
-
(visit) Add support for Arc (#1256) (718f478)
-
(wasm-web) Initialize (edf74fc)- general: Specifier position in DependencyDescriptor (#1260) (8ba2ae9)
[1.2.40] - 2020-12-03
Bug Fixes
-
(regenerator) Handle ternary correctly (#1228) (f8a1fb8)
-
(source map) Fix inline source map comment slicing (#1237) (cdaefcc)- general: Decorator metadata (#1248) (2e29d78)
Features
- (swc_common) Expose non-tty EmitterWriter (#1240) (46b553e)
[1.2.39] - 2020-11-22
Bug Fixes
Features
- general: Macro for fixture testing (#1226) (ad23a58)
Bundler
- general: Fix issues (#1212) (4294b5e)
[1.2.38] - 2020-11-08
Bug Fixes
- general: SourceMap::span_to_lines for empty file (#1198) (546a01c)
Bundler
- general: Improve hook for import.meta (#1195) (3cdb62b)- general: Use a local variable for import.meta (#1201) (64942b5)- general: Handle swc helpers (#1199) (0a5e23f)
Resolver
- general: Handle class declarations (#1200) (f21a288)
[1.2.37] - 2020-10-29
Ast
- general: Add support for fuzzing (#1167) (11d137a)
Bundler
- general: Allow importing and exporting from same module (#1152) (f0ea70c)- general: Fix bugs (#1154) (6f00620)- general: Fix dead code elimination (#1157) (5a91ab9)- general: Handle computed accesses correctly (#1159) (ad7cb65)- general: Make output deterministic (#1166) (41d1738)- general: Fix ordering (#1171) (626c881)
Codegen
- general: Preserve space for postfix unary operators (#1185) (6e9d06e)
Parser
- general: Remove unnecessary question mark (#1174) (fd760fb)
Transforms
- general: Fix _typeof helper (6b03c65)
[1.2.36] - 2020-10-06
Bundler
- general: Fix bugs (#1141) (c127cb2)
[1.2.35] - 2020-10-04
Bug Fixes
-
(jsx) Drop extra spaces around jsx attributes (#1121) (ea09133)
-
(strip) Don't treat type-only exports as concrete references (#1126) (e4b8a0c)
Bundler
[1.2.34] - 2020-09-24
[1.2.33] - 2020-09-24
Bug Fixes
- (strip) Fix Config::import_not_used_as_values (#1101) (a9c3072)
Miscellaneous Tasks
- general: Bump version of wasm (#1102) (73671ec)
[1.2.32] - 2020-09-22
Codegen
- general: Fix for jsx (#1097) (7e8ff1d)
[1.2.31] - 2020-09-22
Bundler
- general: Handle export * properly (#1083) (fa756a1)
Resolver
- general: Handle pattern in lhs of for of/in correctly (#1089) (ac0a19c)
Wasm
- general: Automatic deployment (#1084) (7905b0d)
[1.2.30] - 2020-09-18
[1.2.29] - 2020-09-18
Bundler
- general: Fix for deno (#1078) (24c597f)
Typescript_strip
- general: Option to remove completely unused imports (#1060) (bc82b55)
[1.2.28] - 2020-09-13
[1.2.27-alpha.1] - 2020-09-13
Cjs
- general: Fix import order (#1069) (8a01729)
Parser
- general: Parse member expression is object patterns (#1068) (0972db9)
Resolver
- general: No additional scope for function child (#1070) (f029115)- general: Correctly set in_type (#1071) (4d5a0da)
[1.2.26] - 2020-09-11
[1.2.25] - 2020-09-11
Bug Fixes
- general: Handle conditional expression in callee (#1051) (9be8bf6)
Codegen
- general: Don't emit newline after a block comment (#1062) (2fff66d)
Common_js
- general: Change order of exports (#1057) (dc4c92c)
Jsdoc
- general: Fix parser (#1059) (09e3f96)
Resolver
- general: Handle constructor properly (#1054) (e2546e0)- general: Fix handling of constructor parameters (#1056) (aec155b)
[1.2.24] - 2020-09-08
[1.2.23] - 2020-09-07
[1.2.23-alpha.1] - 2020-09-07
Bug Fixes
- (dep_graph) Top level dynamic import (#1024) (c4cc433)- general: Expose dep_graph crate (#1023) (9a073f1)- general: Handle binary expression in callee of new (#1030) (6524802)
[1.2.22] - 2020-08-30
[1.2.22-alpha.2] - 2020-08-30
[1.2.22-alpha.1] - 2020-08-30
[1.2.21] - 2020-08-24
[1.2.20] - 2020-08-15
Hygiene
- general: No ref-ref conflict (#963) (01aeec3)
Spack
- general: Allow using jsx (#971) (7387872)
[1.2.19] - 2020-08-13
[1.2.17] - 2020-08-10
[1.2.15] - 2020-08-09
[1.2.14] - 2020-08-08
[1.2.13] - 2020-08-07
[1.2.12] - 2020-08-06
[1.2.11] - 2020-08-02
[1.2.10] - 2020-07-31
Bug Fixes
- general: Readonly is not stripped from private prop (#916) (9cb32cb)
Codegen
- general: Preserve quotes (#911) (ca43112)
[1.2.9] - 2020-07-26
Cleanup
- general:
native
(#887) (68799d7)
Spack
- general: Remove_item is deprecated (#881) (053f81c)
[1.2.8] - 2020-07-05
[1.2.7] - 2020-07-01
Spack
- general: More extensions for node resolver (#842) (aea757d)- general: Enhancement (#845) (31020e4)- general: Modules (#848) (66d42ad)
[1.2.1] - 2020-06-14
[1.2.0] - 2020-06-14
Spack
- general: Super-fast bundler (#825) (fcef201)
[1.1.58] - 2020-06-12
Regenerator
- general: Handle yield* correctly (#833) (5022999)
[1.1.56] - 2020-06-10
[1.1.53] - 2020-06-03
[1.1.52] - 2020-06-02
[1.1.51] - 2020-05-28
[1.1.50] - 2020-05-28
[1.1.49] - 2020-05-28
[1.1.48] - 2020-05-23
Typescript_strip
- general: Handle types used only in casts (#794) (f117fed)
[1.1.46] - 2020-05-21
Resolver
- general: Handle body of arrow functions correctly (#790) (5cc3efa)
[1.1.45] - 2020-05-19
[1.1.44] - 2020-05-18
[1.1.42] - 2020-05-09
Dce
- general: Separate phase for dropping imports (#764) (ddc5ace)
[1.1.41] - 2020-05-05
[1.1.40] - 2020-04-30
[1.1.39] - 2020-04-10
[1.1.38] - 2020-04-05
[1.1.37] - 2020-03-28
[1.1.36] - 2020-03-26
[1.1.35] - 2020-03-13
[1.1.34] - 2020-03-09
[1.1.33] - 2020-03-05
[1.1.32] - 2020-03-04
[1.1.31] - 2020-03-01
[1.1.30] - 2020-02-29
[1.1.29] - 2020-02-25
Resolver
- general: Handle hoisting correctly (#689) (363b835)
[1.1.28] - 2020-02-22
[1.1.27] - 2020-02-20
[1.1.26] - 2020-02-19
Resolver
- general: Handle method property correctly (#679) (f79223e)
[1.1.25] - 2020-02-17
[1.1.24] - 2020-02-15
[1.1.23] - 2020-02-13
[1.1.22] - 2020-02-13
[1.1.21] - 2020-02-11
[1.1.19] - 2020-02-07
[1.1.18] - 2020-02-06
[1.1.17] - 2020-01-30
[1.1.16] - 2020-01-24
Block_scoping
- general: Handle variable infection (#610) (480015d)
[1.1.15] - 2020-01-24
Hygiene
- general: Fix handling of special identifiers (#603) (9be9ea2)
[1.1.14] - 2020-01-23
Bug Fixes
- general: Fix as_bool treating bitor like bitand (#596)
(08ce8d0)
Hygiene
- general: Handle use-use conflict (#599) (8ecbe14)
Regenerator
- general: Allow nested finally block (#601) (20e37ea)
[1.1.13] - 2020-01-17
Resolver
- general: Handle methods correctly (#579) (b7f8282)
[1.1.12] - 2020-01-08
Dce
- general: Preserve nested if statement (#565) (3e0f4a5)
[1.1.11] - 2020-01-02
[1.1.10] - 2019-12-28
[1.1.9] - 2019-12-25
[1.1.8] - 2019-12-24
[1.1.7] - 2019-12-21
[1.1.6] - 2019-12-14
Bug Fixes
- general: Fixup! Add a test for #503 (5076249)
Parser
- general: Respect jsc.target (#507) (332061f)
[1.1.5] - 2019-12-11
[1.1.4] - 2019-12-09
[1.1.2] - 2019-12-02
[1.1.1] - 2019-12-01
[1.1.0] - 2019-11-30
Bug Fixes
- general: Fixup! Don't omit empty values while serializing (41c6941)
[1.0.54] - 2019-11-24
[1.0.53] - 2019-11-23
Resolver
- general: Handle arrow expression correctly (#462) (fa941b3)
[1.0.52] - 2019-11-20
Resolver
- general: Handle hoisting (#455) (2106860)
[1.0.50] - 2019-11-18
Parser
- general: Error recovery (#449) (d074063)
[1.0.49] - 2019-11-15
[1.0.48] - 2019-11-10
Bug Fixes
- general: Fix typo (d73de6c)- general: Fix typo (06d2be4)- general: Fix links and use sudo (9ec8856)- general: Fix tests (92c7def)- general: Fixup! fix tests (59f11a8)- general: Fix
It's not rust code.. (f8ea0bd)- general: Fix parser tests (dc8e178)- general: Fix link (ed6ba04)- general: Fix swc_ecma_codegen (fd79f4e)- general: Fix a link in README.md (d4ef56e)- general: Fix a bug (90135ed)- general: Fix test imports for latest nightly (#355)
(6f97012)- general: Fix lints
(fbbafc5)- general: Fix this
in async generator (#425)
swc_ecma_transforms:
- Don't delete test file when an execution test fails
- fix #400 (3a637d4)- general: Fixup! Bump versions (2add7a0)
Miscellaneous Tasks
- general: Cleanup for docs; no email from travis (056a11d)
Simplify
- general:
left.rhs * right
is only safe when operators are the same (07bf194)
Es2015
- general: :destructuring pass (#312) (b4a391b)
Readme
- general: Fix npm install command (#89) (946a32a)
Swc_ecma_ast
- general: - Split class member / property into separate types (a46804a)
Swc_ecma_transforms
- general: - remove this parameter from typescript::strip pass (fixes #236) (4fddea0)