Commit Graph

1112 Commits

Author SHA1 Message Date
강동윤
5e2db21e47
feat(es/minifier): Implement more rules (#1731)
swc_ecma_codegen:
 - Don't panic while checking if 2 dots are required.

swc_ecma_minifier:
 - Implement some rules related to the option `evaluate`.
 - Implement some rules related to strings.
 - Implement some rules related to numbers.

swc_ecma_transforms_base:
 - `fixer`: Handle `- (1 / 0)`.
 - `fixer`: Handle `(void 0)(0)`.
2021-05-23 15:39:59 +09:00
강동윤
3522fc71e4
feat(es/minifier): Implement more rules (#1730)
swc_ecma_codegen:
 - Fix codegen of `-0.0`.

swc_ecma_transforms_base:
 - `fixer`: Handle tag of tagged template literals.


swc_ecma_minifier:
 - Implement more rules for strings.
 - Implement more rules for teplate literals.
 - Implement more rules for comparisons.
 - Implement more rules for destructuring bindings.
 - Implement more rules for switch statements.
 - Implement more rules for expressions.
2021-05-23 11:19:11 +09:00
강동윤
a518c83485
fix(es): Fix bugs (#1728)
swc_ecma_transforms_compat:
 - `block_scoping`: Ensure that #1462 is fixed. (#1462)
 - `regenerator`: Inject variables at proper level. (#1718)

swc_ecam_transforms_typescript:
 - `strip`: Handle class expressions in arrow expressions correctly. (#1729)
2021-05-22 12:14:00 +09:00
강동윤
d20c1d3089
feat(es/minifier): Implement more rules (#1717)
swc_ecma_minifier:
 - Implement `global-defs` pass.
 - Implement `properties` pass partially.
2021-05-21 15:57:17 +09:00
강동윤
a1341dcdc6
fix(es/transforms/compat): Fix async_to_generator pass. (#1724)
swc_ecma_transforms_compat:
 - `async_to_generator`: Fix async iife. (#1722)
 - `async_to_generator`: Don't apply iife optimization to named function expressions.
 - `async_to_generator`: Remove duplicated works.
 - `async_to_generator`: Support `await for`. (#1721)
 - `async_to_generator`: Support async generators.
2021-05-21 13:13:22 +09:00
LongYinan
c2bd3195e8
fix(node-swc): Fix typescript definitions for react options (#1720) 2021-05-21 10:22:11 +09:00
강동윤
8a2909bc51
fix(es/preset-env): Update core js compat data (#1719)
swc_ecma_preset_env:
 - Update `core-js-compat`. (https://github.com/swc-project/swc/issues/1712#issuecomment-844959483)
2021-05-20 20:46:03 +09:00
강동윤
470c8f4745
fix(es/minifier): Publish (#1716) 2021-05-20 15:09:30 +09:00
강동윤
ded8f2b5e5
fix(es/minifier): Use log instead of stderr (#1715) 2021-05-20 14:23:01 +09:00
강동윤
c6b22c57f8
feat(es/minifier): Implement minifier partially (#1302)
Co-authored-by: Fábio Santos <fabiosantosart@gmail.com>
2021-05-20 13:51:30 +09:00
강동윤
b6589af92b
fix(swc): Fix bugs (#1712)
swc_ecma_preset_env:
 - Update compat data. (#1704)
 - Support `export-namespace-from`.

swc_ecma_transforms_compat:
 - Use proper argument for private field accesses in a private method. (#1711)
2021-05-19 00:55:01 +09:00
강동윤
a0241c88b2
fix(es/transforms/base): Fix resolver (#1710)
swc_ecma_transforms_base:
 - `ts_resolver`: Treat the type parameter of a mapped type as a binding.
2021-05-18 17:47:43 +09:00
강동윤
dee82904f8
fix(es): Fix bugs (#1709)
swc_ecma_transforms_base:
 - `fixer`: Fix regression related to `??` and `||`. (denoland/deno#10668)
2021-05-18 15:34:44 +09:00
강동윤
57d1aaf80f
fix(es): Fix various bugs (#1707)
swc_ecma_codegen:
 - Fix codegen of `\r\n` in template literals when targeting `es2020`. (denoland/deno#10282)

swc_ecma_parser:
 - Support non-identifier getters in typescript. (#1708)

swc_ecma_transforms_typescript:
 - Skip `export {}` if it was not a module. (#1706)
 - Skip `export {}` if the result is module without it. (#1706)
2021-05-17 22:27:59 +09:00
강동윤
8a36435ee1
fix(es/transforsm/compat): Transform private field access in private methods (#1703)
swc_ecma_transforms_compat:
 - `class_properties`: Handle private field accesses in private methods. (#1702)
2021-05-16 16:11:35 +09:00
강동윤
b044d2c6dd
fix(es/transforms/compat): Support private methods (#1700)
swc_ecma_transforms_base:
 - Add some helpers.

swc_ecma_transforms_compat:
 - `class_properties`: Support private methods. (Closes #1694)
2021-05-15 20:35:24 +09:00
강동윤
b4aa1d48e3
fix(es/transform): Fix bugs (#1699)
swc_ecma_transforms_base:
 - Fix bug of `ts_resolver`.

swc_ecma_transforms_typescript:
 - `strip`: Emit `export {}` for type-only modules. (#1698)
 - `strip`: Support scripts.
2021-05-15 16:07:24 +09:00
Pig Fang
1dbc3644a5
feat(es): Support type-only import equals declaration (#1695)
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-05-15 14:26:24 +09:00
강동윤
f0d7a3d064
fix(es/transforms): Fix bugs (#1691)
swc_ecma_transforms_optimization:
 - Don't optimize optional chaining expressions. (#1688)

swc_ecma_transforms_react:
 - Don't panic. (#1683)
2021-05-14 00:11:27 +09:00
강동윤
24bd5ea4a4
fix(es): Fix various bugs (#1680)
swc_ecma_parser:
 - Allow a class member named `declare`. (#1671)

swc_ecma_transforms_optimization:
 - Preserve side effects while inlining array index operations. (#1674)

wasm/web: 
 - Fix ci script. (#1675)
2021-05-11 16:29:29 +00:00
강동윤
2ad0af9e91
fix(es/transforms/compat): Improve performance (#1673)
swc_ecma_transforms_compat:
 - `classes`: Fast-path.
 - `destructuring`: Fast-path.
 - `sticky_regex`: Fast-path.
 - `spread`: Fast-path.
 - `shorthand`: Fast-path.
 - `typeof_symbol`: Fast-path.
 - `block_scoped_functions`: Fast path.
 - `duplicate_keys`: Use fxhash.
 - `instance_of`: Fast path.
 - `reserved_words`: Make string comparison efficient.
2021-05-11 04:53:36 +00:00
강동윤
9381d0dbc2
fix(es/transforms/base): Fix resolver (#1672)
swc_ecma_transforms_base:
 - `resolver`: Handle variables in for in/of loop body correctly.
2021-05-10 20:39:07 +09:00
Pig Fang
b713972493
feat(es/parser): Enforce orders of override and async (#1670)
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-05-10 08:55:22 +00:00
강동윤
de15804b89 Bump version 2021-05-10 17:23:51 +09:00
Pig Fang
50f8048f2a
feat(es/parser): Enforce order of abstract and override (#1668)
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-05-10 17:09:51 +09:00
강동윤
2b918b0c3d
fix(es/transforms/compat): Don't create unnecessary IIFE. (#1669)
swc_ecma_transforms_compat:
 - `class_properties`: Do not create iife if possible. (#1660)
2021-05-10 16:18:31 +09:00
Pig Fang
1548f6d799
feat(es/parser): Allow override in parameter properties (#1667)
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-05-09 22:17:58 +09:00
Pig Fang
4aed9423de
fix(es/parser): Allow using override with static (#1663) 2021-05-09 21:04:42 +09:00
강동윤
9585500476
fix(es/transforms/base): Fix resolver (#1666)
swc_ecma_transforms_base:
 - `resolver`: Handle function declarations in arrow body.
2021-05-09 09:52:29 +00:00
강동윤
aea08fb8c9
fix(es/tranforms/base): resolver: Handle function declarations in ts modules (#1665)
swc_ecma_transforms_base:
 - `resolver`: Handle function names in ts modules correctly.
2021-05-09 16:03:59 +09:00
nuintun
0cdabeb4c0
fix(node-swc): Fixed parseFile (#1654) 2021-05-09 07:03:09 +00:00
강동윤
b0b0709e1a
fix(es): Fix various bugs. (#1664)
swc_ecma_codegen:
 - Emit comments of `BytePos(0)`. (#1657)

swc_ecma_transforms_compat:
 - `classes`: Optimize class expresssions. (#1660)
2021-05-09 14:23:03 +09:00
강동윤
4d013d98ca
fix(ci): Don't run tests on macos (#1659) 2021-05-09 11:51:37 +09:00
강동윤
c3bf517dc9
fix(es/transforms/compat): Fix span for comments in classes transform. (#1658)
swc_ecma_transforms_compat:
 - classes: Fix span for `PURE` comments. (#1657)
2021-05-09 02:26:45 +09:00
Niklas Mischkulnig
f4d0e46cbb
feat(es/transforms/compat): Add pure comment to classes (#1646)
swc_ecma_transforms_compat:
 - Add pure annotations while tranpiling classes.
2021-05-08 15:47:20 +09:00
강동윤
e3bdb97e66 fix(ci): Fix android build 2021-05-08 10:05:39 +09:00
강동윤
f368c5f81c fix(es/transforms/react): Bump version 2021-05-07 22:21:56 +09:00
강동윤
0593ce87c0 Disable android 2021-05-07 21:13:54 +09:00
강동윤
1b1c46b492
fix(es/transforms/compat): Allow keywords in method names. (#1651)
swc_ecma_transforsm_compat:
 - Allow using a keyword as a method name.
2021-05-07 11:27:25 +00:00
vemoo
304b57cdd4
fix(node-swc): Fix definition of JSXOpeningElement (#1608)
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2021-05-06 19:30:14 +09:00
강동윤
82ef06afb8
feat(babel/compat): Improve performance of babelify (#1626)
swc_babel_compat:
 - Optimize.

swc:
 - Improve performance of comment storage.
2021-05-06 14:56:54 +09:00
강동윤
abc24c9256
fix(es/transforms/resolver): Fix setter properties (#1647)
swc_ecma_transorms_base:
 - Handle parameters of a setter property correctly.
2021-05-06 13:56:42 +09:00
강동윤
deec1f67a3
fix(es/transforms/resolver): Fix setter properties (#1645)
swc_ecma_transorms_base:
 - Handle parameters of a setter property correctly.
2021-05-06 03:09:03 +09:00
Niklas Mischkulnig
fe107a1223
fix(es/transforms/react): Change order of passes (#1639) 2021-05-05 14:13:06 +09:00
Luke John
882e2d91b6
fix(wasm-web): Use jq with an explicit temp file (#1637) 2021-05-04 18:31:52 +09:00
강동윤
27a1c30fef
fix(es/transforms/fixer): Handle binary expressions in super class expr (#1636)
swc_ecma_transforms_base:
 - Handle binary expressions in super class expressions. (denoland/deno#10487)
2021-05-04 12:11:40 +09:00
강동윤
2724cefe2c
fix(es/transforms/react): Expose RefreshOptions (#1635)
swc_ecma_transforms_react:
 - Expose `RefreshOptions`. (#1634)
 - Expose `Runtime`.
2021-05-03 19:31:04 +09:00
Niklas Mischkulnig
b6ff4d6f71
fix(es/transforms/optimization): Preserve x instanceof Object (#1630) 2021-05-03 18:12:15 +09:00
강동윤
d10671bbda
fix(swc): Fix various bugs. (#1632)
swc_ecma_transforms_typescript:
 - Fix import analyzer. (denoland/deno#10462)
2021-05-03 13:34:13 +09:00
Daniel Woznicki
d1415f9bf7
feat(node-swc): Babel ast translator (#1465) 2021-05-01 18:09:10 +09:00