Commit Graph

472 Commits

Author SHA1 Message Date
강동윤
1a48efa4e4
ES3 (#498)
* Add a test for #496
 - Better error message for TS1056
 - Allow using dynamic import with es3 target
2019-12-11 13:35:15 +09:00
Nurbol Alpysbayev
79128a1d1e Typo (#497) 2019-12-11 07:09:45 +09:00
Nurbol Alpysbayev
2f4ce50d06 Fix the Wasm blocker for Parser (#495) 2019-12-11 00:02:39 +09:00
강동윤
30869dc340 Fix template_literal in a script 2019-12-10 11:57:22 +09:00
강동윤
ef45401a18 Update tests 2019-12-10 10:50:37 +09:00
강동윤
cd486288b7 Bump version 2019-12-10 07:23:27 +09:00
강동윤
ae6de87abb
Add more tests (#489) 2019-12-09 21:02:51 +09:00
강동윤
69e768e6bd
Fix codegen of typescript enum (#488)
swc_ecma_trnsnofrms
 - Handle export enum
2019-12-04 10:08:17 +09:00
강동윤
b4e93f2b53
Handle catch clause properly (#484)
swc_ecma_transforms
 - Fix #483
2019-12-03 11:50:33 +09:00
강동윤
b3a2ee8e9b
Fix bugs (#482)
swc_ecma_parser:
 - fix lexing of numbers like 9.09

swc_ecma_transforms:
 - jsx_text_to_str
 - use fxhash instead of ahash for exports
2019-12-02 20:19:15 +09:00
강동윤
bc19ee274b Update parser test references 2019-12-02 17:12:53 +09:00
Zimon Dai
ec086a1dab use 2018 edition syntax (#479) 2019-12-02 17:10:05 +09:00
강동윤
776e014a11
Fix tests (#478) 2019-12-01 18:11:59 +09:00
강동윤
153cf36168
Jsonify large pure object literals (#477)
swc_ecma_transforms:
 - add `jsonify` transform
2019-12-01 17:32:44 +09:00
강동윤
3f2477196c Fix typescript enum 2019-12-01 11:27:28 +09:00
강동윤
265eb9e30c
Improve performance of serialization and deserialization (#475) 2019-11-30 14:49:18 +09:00
강동윤
51558c6c36
Final groundwork for plugin (#474)
swc:
 - add serialization tests

ast_node:
 - handle `*` tag properly

swc_ecma_ast:
 - update serialization of ExprOrSpread
2019-11-30 11:12:34 +09:00
강동윤
a7a8a4a2e4
Plugin (#473)
swc_common:
 - apply patch from rust-lang/rust#59693

swc:
 - use &Options instead of Options
 - configures commons::CM
 - exposes `handler`
2019-11-29 23:46:06 +09:00
강동윤
41c6941dc5 fixup! Don't omit empty values while serializing 2019-11-28 17:53:03 +09:00
강동윤
95a59338d3 Don't omit empty values while serializing 2019-11-28 17:49:51 +09:00
강동윤
5532e628b2 Don't run cargo clippy on push 2019-11-28 13:38:11 +09:00
강동윤
747a07f566 Update submodules 2019-11-26 20:42:41 +09:00
강동윤
b81200b1db Update references 2019-11-26 11:31:16 +09:00
강동윤
8c7005d7ab
More testing (#469)
swc:
 - Move tests from node-swc to swc
 - Add integration tests (webpack, rxjs, angular-core)
 - Support `exclude`
 
swc_ecma_transforms:
 - More span validation
 - classes:
    - Strip `TsIndexSignature`

swc_ecma_parser:
 - Fix span of member expression
 - Fix span of binary expression
 - Fix span of unary expression
2019-11-26 10:08:48 +09:00
강동윤
fc9880e4f4 Bump parser's version 2019-11-24 14:42:08 +09:00
강동윤
b46c4ec300
Update dependencies (#464) 2019-11-24 14:17:27 +09:00
강동윤
7d4168f415
Parser performance (#463)
- Update string_cache from 0.7 to 0.8
 - Update unicode_xid from 0.1 to 0.2

swc_ecma_parser:
 - Add benchmarks for lexer
2019-11-23 23:03:19 +09:00
강동윤
fa941b3ea3
resolver: Handle arrow expression correctly (#462)
swc_ecma_transforms:
 - resolver: Handle arrow expression correctly (#462)
2019-11-23 19:14:52 +09:00
강동윤
8ec7a69572
Parser performance (#459)
- codegen-units = 1 for benchmarks

swc_ecma_parser:
 - Add a benchmark for typescript lexer
 - Remove dynamic dispatch in lexer
 - Improve performance of typescript
2019-11-23 13:03:29 +09:00
강동윤
4a80790d73 Add benchmark for typescript parser 2019-11-22 21:13:14 +09:00
강동윤
107c35fb41
Fix renaming bug related to import (#457)
- Fix renaming bug related to import (#456)
- Add tests for common_js / umd / amd
2019-11-20 21:32:42 +09:00
강동윤
210686011d
Resolver: Handle hoisting (#455)
swc_ecma_transforms:
 - resolver: Handle variable hoisting
 - resolver: Handle function hoisting
2019-11-19 19:10:15 +09:00
강동윤
3474c61a48
Fix codegen and parsing of template literal (#453)
- Fix codegen and parsing of template literal (#450)
2019-11-18 19:54:24 +09:00
강동윤
d50ab99ef0
Fix #451 (#452)
swc_ecma_parser:
 - Fix parser of eval and arguments

swc_ecma_transforms:
 - Improve fixer (#451)
2019-11-18 18:19:25 +09:00
강동윤
d074063867
Parser: Error recovery (#449)
Implement some error recovery logic to parser
2019-11-17 18:36:47 +09:00
Jasper De Sutter
716bfe05b2 Cleanup (#448)
- cargo fix
- update all crates to 2018 edition
2019-11-17 13:21:53 +09:00
강동윤
bc4a2976e5
Validate spans (#447)
- Add span validator to swc_ecma_transforms
2019-11-16 23:49:32 +09:00
강동윤
350f609afd
Allow accessing same constant from static property and constructor (#445)
Fix #443.
2019-11-15 18:36:43 +09:00
강동윤
37b80dfd08
Optional chaining for typescript (#444)
Implement typescript 3.7's optional chaining
2019-11-15 14:34:48 +09:00
강동윤
96aa4796ea Fix #441 2019-11-15 14:23:39 +09:00
강동윤
25523f45bd Remove unsafe 2019-11-13 20:00:21 +09:00
강동윤
d64d125996
Bugfixes (#440)
* Allow running swc on babel's output (#438)
* Print comments correctly (#439)
2019-11-10 18:21:28 +09:00
강동윤
076957661d Fix a test 2019-11-10 15:23:40 +09:00
강동윤
264dcf0d7b Fix #439 2019-11-10 13:21:44 +09:00
강동윤
167008de6f
Expose tokenizer (#437)
swc_common:
 - Added input::Input

swc_ecma_parser:
 - Made lexer public
 - Make input type of parser generic
 - Added example of using lexer
2019-11-06 13:14:44 +09:00
강동윤
ae3326cd9d
Compiler apis & .swcrc improvement (#434)
- Expose high-level compiler apis (#431)
 - Support multiple entries in .swcrc (#414)
2019-10-25 10:11:24 +09:00
강동윤
2add7a08ef fixup! Bump versions 2019-10-23 22:22:54 +09:00
강동윤
4a41140854 Bump versions 2019-10-23 22:20:00 +09:00
강동윤
7f5d3a4db1 Fix parsing of single untyped param in IIFE
Closes #433
2019-10-23 20:53:28 +09:00
강동윤
2e5c81ee8e Fix parsing readonly array and tests
Closes #432
2019-10-23 20:20:17 +09:00
강동윤
34c3a0ece9 Fix lints 2019-10-19 12:47:25 +09:00
강동윤
01b1cc1a5e Update rustfmt 2019-10-19 12:21:56 +09:00
dependabot[bot]
2ca5aa5766 Bump js-yaml from 3.12.0 to 3.13.1 in /ecmascript/transforms (#426)
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.12.0 to 3.13.1.
- [Release notes](https://github.com/nodeca/js-yaml/releases)
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/3.12.0...3.13.1)

Signed-off-by: dependabot[bot] <support@github.com>
2019-10-05 14:14:38 +09:00
dependabot[bot]
451f5938c9 Bump mixin-deep from 1.3.1 to 1.3.2 in /ecmascript/transforms (#428)
Bumps [mixin-deep](https://github.com/jonschlinkert/mixin-deep) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/jonschlinkert/mixin-deep/releases)
- [Commits](https://github.com/jonschlinkert/mixin-deep/compare/1.3.1...1.3.2)

Signed-off-by: dependabot[bot] <support@github.com>
2019-10-05 14:14:26 +09:00
dependabot[bot]
2c9f2e1f68 Bump handlebars from 4.0.12 to 4.4.0 in /ecmascript/transforms (#429)
Bumps [handlebars](https://github.com/wycats/handlebars.js) from 4.0.12 to 4.4.0.
- [Release notes](https://github.com/wycats/handlebars.js/releases)
- [Changelog](https://github.com/wycats/handlebars.js/blob/v4.4.0/release-notes.md)
- [Commits](https://github.com/wycats/handlebars.js/compare/v4.0.12...v4.4.0)

Signed-off-by: dependabot[bot] <support@github.com>
2019-10-05 14:14:13 +09:00
dependabot[bot]
09e911bec8 Bump lodash from 4.17.11 to 4.17.15 in /ecmascript/transforms (#427)
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.11 to 4.17.15.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.11...4.17.15)

Signed-off-by: dependabot[bot] <support@github.com>
2019-10-05 14:13:59 +09:00
강동윤
9f1fca55ff Update rustc toolchain to nightly-2019-09-30 2019-10-02 13:53:56 +09:00
강동윤
3a637d4229
fix this in async generator (#425)
swc_ecma_transforms:
 - Don't delete test file when an execution test fails
 - fix #400
2019-10-01 23:42:05 +09:00
강동윤
d7d22c2d5e
Optional try catch binding (#422)
swc_ecma_parser:
 - Add test for optional try catch binding
 
swc_ecma_transforms:
 - Implement optional catch binding (#411)
2019-09-22 19:31:32 +09:00
강동윤
febe34e280 Publish swc_ecma_transforms 2019-09-22 17:55:35 +09:00
강동윤
2bd4475c5d Fix codegen tests 2019-09-20 23:39:19 +09:00
강동윤
61a1367974 Fix #410 2019-09-20 23:35:45 +09:00
강동윤
c20176820e Fix #415 2019-09-20 23:07:24 +09:00
강동윤
4f8220329f publish 2019-09-20 13:41:11 +09:00
강동윤
eefdaaaa2f
Fold expressions in module item (#420)
* Fix #413
2019-09-20 13:20:37 +09:00
강동윤
c7abda95d4
typescript const assertion (#419)
Fixes #401.
2019-09-18 22:54:12 +09:00
강동윤
bf70946546 Fix #417
process.env['X'] is now supported
2019-09-18 16:15:13 +09:00
강동윤
5a47c7a15c Fix 1 - (1 - 1) (#418) 2019-09-18 16:05:36 +09:00
강동윤
7715c2626b
Issues (#404, #406, #407) (#408)
swc_ecma_transforms:
 - fix mis-referencing caused by destructuring (#404)
 - fix invalid code generated by comment on arrow functions (#406)
 - fix string concatation of template literal (#407)
 - hygiene: fix rewriting of object pattern
 - fix test module to prevent SIGILL
 - fix module import order (using IndexMap)
2019-09-18 14:40:22 +09:00
강동윤
a1c2538338 hashbrown & comment revamp 2019-06-25 09:41:58 +09:00
강동윤
54cf8fbb96
Fix (#398)
swc_ecma_transforms:
 - Fix resolver (#396)
 - Add tests for #395
2019-06-16 10:22:15 +09:00
강동윤
0e1991f62d
Fix bugs (#394)
- Add a test case for #392
 - Add tests for #389
 - Fix #388
 - Fix #387 
 - Add tests for #392

swc_ecma_parser:
 - Make non-last rest paramters in object pattern error
 - `...` must be followed by an identifier
2019-06-03 21:54:09 +09:00
Erik Desjardins
07bf194e61 Simplify: left.rhs * right is only safe when operators are the same 2019-05-16 14:10:06 -04:00
강동윤
b5bbbc0cd6 publish atoms 2019-05-02 16:06:42 +09:00
강동윤
0b4f06027d Version 2019-05-02 16:02:45 +09:00
강동윤
aa06bb7cc9 Bump version 2019-05-02 15:52:39 +09:00
강동윤
ed64a60cb3 Publish ast / codegen /transforms 2019-05-02 15:50:21 +09:00
강동윤
2951546f77 Fix sourcemap.
Closes #349
2019-05-01 19:18:48 +09:00
강동윤
786117c16c Fix #382 2019-04-30 22:32:06 +09:00
강동윤
b4dde98c09
Fix #380 (#381)
swc_ecma_parser:
 - fix parsing of dot after dynamic imports (#380)
 - fix parsing of dynamic imports on top level
2019-04-29 23:36:30 +09:00
강동윤
0d52148dcd
Bugfixes (#375)
swc_ecma_transforms:
 - fix hygiene for decorators (#367)
 - add test for react with common js module (#351)

swc_ecma_parser:
  - add test for string escape problem (#350)
2019-04-28 14:58:52 +09:00
강동윤
b44da9dbe4
Fix #369, #370 (#373)
swc_common:
 - don't emit `loc` for dummy spans

swc_ecma_transforms:
 - prevent hygiene from changing key in object pattern (#369)
 - fix module tests (iteration order of FxHashSet is changed)

swc_ecma_parser:
 - fix parsing of arrow function (#370)
2019-04-27 16:28:34 +09:00
강동윤
d40600fd46 Make span not optional 2019-04-26 20:33:34 +09:00
강동윤
b329d34632 Fix codegen of async method property 2019-04-26 18:01:36 +09:00
강동윤
0ffd075588 Strip bodyless functions.
Closes #357.
2019-04-11 21:20:50 +09:00
강동윤
9e333a153c Fix #366 2019-04-11 21:11:21 +09:00
강동윤
ca220342e0 Fix #365 2019-04-11 21:04:06 +09:00
강동윤
56be56acea Fix lints 2019-04-11 21:01:29 +09:00
Erik Desjardins
3cc2e3315d Don't emit octal escape for null character followed by digit 2019-04-09 19:37:43 -04:00
bors[bot]
48b2607b28 Merge #362
362: Fix #358 r=kdy1 a=kdy1

Fix #358

Co-authored-by: 강동윤 <kdy1@outlook.kr>
2019-04-07 14:10:29 +00:00
강동윤
fe451d5809 Fix #360 and update rustc 2019-04-05 12:19:18 +09:00
강동윤
adcc5954ee Fix #358 2019-03-25 12:11:15 +09:00
Michael Stewart
6f97012821 fix test imports for latest nightly (#355) 2019-03-23 13:18:55 +09:00
寧靜
84973890e7 Update util.rs (#352)
swc_ecma_parser:
 - handle unicode_xid properly
2019-03-19 21:51:12 +09:00
강동윤
5114dc9e95
Extract resolver pass (#344) 2019-03-14 15:54:33 +09:00
강동윤
8674a1dae9
Chores (#341)
- add tests for #340.
 - add backer
2019-03-12 17:24:51 +09:00
강동윤
13bf89d08c
Fix bugs (#339)
swc_ecma_parser:
 - fix parsing of type query (#338)
 - fix parsing of `in` in a let / const declaration (#337)

swc_ecma_transforms:
 - string literal is computed (#336)
 - modules: handle imports in lhs of assignment correctly (#335)
2019-03-11 20:33:15 +09:00
강동윤
2025f20e8c
Handle imported stuffs in shorthand property. (#333)
swc_ecma_transforms:
 - handle imported stuffs in shorthand property (#332)
2019-03-10 22:17:08 +09:00
강동윤
a40518f667
v1.0.36 (#330)
swc_ecma_parser
 - decorator_before_export is true for typescript. (#325)
 - fix parsing of dynamic imports. (#328)
 - fix parsing of conditional expression. (#327)
2019-03-09 09:07:15 +09:00
강동윤
248a53ce7c
Make deserialization faster (#324)
swc_ecma_ast:
 - make deserialization faster
2019-03-08 11:36:23 +09:00
강동윤
dd5f17463e
hygiene now handles class name correctly (#323) 2019-03-07 22:42:16 +09:00
강동윤
a311f42acf
Bugs (#321)
swc_ecma_parser:
 - add a test to ensure that \r\n is lexed correctly (#316)

swc_ecma_transforms:
 - destructuring pass now handle variable exports correctly (#317)
 - es2017::async_to_generator now handles module items. Fix #319.
 - prevent hygiene pass from de-exporting class and funcrion (#315)
2019-03-07 15:48:45 +09:00
강동윤
ed100700f1
Make deserialization fast (#314)
swc_ecma_ast:
  - add deserialization benchmark

ast_node:
 - #[ast_node] on enum now implements faster deserialization
2019-03-05 23:16:45 +09:00
강동윤
b4a391b3a7
es2015::destructuring pass (#312)
swc_ecma_transforms:
 - es2015::destructuring pass now uses computed member if necessary. (#311)
2019-03-05 17:44:47 +09:00
강동윤
5f16412273
Fix class properties pass (#310)
swc_ecma_transforms:
  - Class properties pass handle nested scope correctly (#308)
2019-03-03 17:01:23 +09:00
강동윤
b5d3b9a7c7
Initialize var to undefined in loops (#306)
swc_ecma_transforms:
 - block_scoping: initialize var to undefined if it's declared in a loop (#305)
2019-03-02 16:19:19 +09:00
강동윤
5dc4ba181d
Improve fixer (#304)
swc_ecma_transforms:
 - fixer: handle member exprssion correctly
 - fixer: handle binary expression correctly
 - fixer: handle conditional expression correctly
 - fixer: handle unary expression correctly
2019-03-01 22:50:43 +09:00
강동윤
1a0f1108a1
Bugs (#303)
swc_ecma_transforms:
 - report error if jsx namespace is used (#301)
2019-03-01 18:18:57 +09:00
강동윤
a2144bbbf5 Handle escapes in jsx attributes. Fix #299. 2019-03-01 16:31:26 +09:00
강동윤
99e34ddbbd
Fix #295 (#298)
swc_ecma_transforms:
 - hygiene::operator now handles export correctly (#295)
 - make function hoisting respect directives
2019-03-01 14:02:33 +09:00
강동윤
21f3f792d1
Fixes (#294)
swc_ecma_transforms:
  - block_scoped_fn: don't fold self-modifing functions. (#288).
  - fixer: fix assignment in conditional expression (#293)
  - make resolver work with self modifying function (#292)
2019-02-28 23:07:31 +09:00
강동윤
f49fbea2af Update referenes 2019-02-28 19:30:58 +09:00
강동윤
a46804ab48 swc_ecma_ast:
- Split class member / property into separate types
2019-02-28 19:25:38 +09:00
강동윤
8c1b773eec
Bug fixes (#289)
swc_ecma_transforms:
 - fix assignment expression in callee position (#286)
 - don't name funtion if function's body reference function name (#288)
2019-02-28 16:30:56 +09:00
강동윤
cdf4a09e65
Fixes (#283)
swc_ecma_transforms:
 - Remove State / Clone
 - Fix hygiene bug of labels (#281)
 - Fix sequence expression in unary expression (#282)
2019-02-27 22:40:19 +09:00
강동윤
892b4f01cd FIx #280 2019-02-27 18:56:12 +09:00
강동윤
ae91b724b7 Fix helpers 2019-02-27 18:46:34 +09:00
강동윤
74dc5582f1 Don't inject @swc/helpers if nothing is used 2019-02-27 18:31:30 +09:00
강동윤
1e38d2e124 Handle sourcemap correctly 2019-02-27 17:44:11 +09:00
강동윤
a5bc5c1490
Publish (again) (#279)
- swc_ecma_codegen@0.6.1
 - swc_ecma_codegen_macros@0.3.0
 - swc_ecma_parser@0.9.1
 - swc_ecma_parser_macros@0.3.0
2019-02-27 10:48:02 +09:00
강동윤
10cb9a4b21
Publish (#278)
- swc_macros_common@0.2.0
 - ast_node@0.4.1
 - string_enum @0.2.0 
 - swc_ecma_ast@0.8.0
 - swc_ecma_parser_macros@0.3.0
 - swc_ecma_codegen_macros@0.3.0
 - swc_ecma_parser@0.9.1
 - swc_ecma_parser@0.6.1
2019-02-27 10:42:22 +09:00
강동윤
1b28766c26
Improve comment api (#277)
swc_ecma_parser:
 - parser now take comments by reference
2019-02-26 13:56:58 +09:00
강동윤
a75dbdf2f2 Update references 2019-02-25 19:47:53 +09:00
강동윤
b6a4d1548a FIx 2019-02-25 19:14:23 +09:00
강동윤
27cd169522 More works for ast node serialization 2019-02-25 19:07:20 +09:00
강동윤
3e2750ba5e Make const_module pass parse expressions itself 2019-02-25 12:42:23 +09:00
강동윤
906d6a0625 Fix codegen of yield, break, continue. Fixes #275. 2019-02-25 11:42:50 +09:00
강동윤
dff2cb8f75
Implement deserialize for ast nodes (#274)
string_enum:
 - #[derive(StringEnum)] now derives `Deserialize`

swc_ecma_ast:
 - implement deserialize for ast nodes.
 - change ast to make it serialized / deserialized correctly

swc_ecma_parser:
 - jsx, test262, typescript tests now verify serialization and deserialization of module
2019-02-24 14:12:04 +09:00
강동윤
78f4b25480
Bug Fixes (#273)
swc_ecma_transforms:
 - fix spread pass (#270)
 - add babel's fixture tests for spreads
 - change order of passes (#271)
 - handle updates of private class fields (#272)
2019-02-23 21:56:12 +09:00
강동윤
7dcb2e34af Add test for #269. 2019-02-22 15:55:04 +09:00
강동윤
a785ecc960
Add const_modules pass (#268)
swc_ecma_transforms:
 - use fxhash for inline_globals pass
 - handle member expression in inlne_globals pass
 - add const_modules pass
2019-02-22 15:42:27 +09:00
강동윤
c1de0a5c86
Improve codegen of binary expression which contains unary expression. (#267)
swc_ecma_codegen:
 - improve codegen of binary expression which contains unary expression (#266)
2019-02-22 12:04:41 +09:00
강동윤
8f932c374e Fix visibillity 2019-02-21 22:29:06 +09:00
강동윤
07e2cffb43
Fixes (#265)
swc_ecma_parsr:
 - fix parsing of invalid utf8 characters (#261)
 - fix parsing of function body (#257)
 - fix parsing of  () => (x = true) (#259)

swc_ecma_transforms:
 - fix default arguments in arrow expression (#254)
 - fix assignment pattern in array pattern (#260)
 - make amd / umd configurable. (#262)
2019-02-21 22:21:48 +09:00
강동윤
e9b06c5de2
Improve fixer (#263)
swc_ecma_transforms:
 - fixer does not breaks cast to boolean (#252)
 - fixer does not break conditional expression with comma expressions (#255)
2019-02-21 14:49:13 +09:00
강동윤
162dee5518
Fix bugs (#251)
swc_ecma_transforms:
 - don't convert typeof to _typeof if not necessary (#250)
 - fix imports of `@swc/helpers` (#248).
2019-02-20 20:02:22 +09:00
강동윤
601f0feb14 Hoist functions in block scoped function pass.
Fix #245.
2019-02-20 12:10:28 +09:00
강동윤
76ce98b685
Implement serialize for ast nodes (#244)
swc_common:
 - implement Serialize / Deserialize for span

swc_ecma_parser:
 - use json instead of {:#?} while testing
 - update test references
2019-02-20 11:35:41 +09:00
강동윤
7d5316463d
Fixes (#241)
swc_ecma_transforms:
 - handle constructor from object_rest_spread pass (#239)
 - typescript::strip pass now removes signature-only constructor

swc_ecma_parser:
 - fix parsing of do while statement (#242)

swc_ecma_codegen:
 - fix codegen of do while statement (#242)
2019-02-19 15:20:02 +09:00
강동윤
4fddea0bbd swc_ecma_transforms:
- remove this parameter from typescript::strip pass (fixes #236)
2019-02-19 14:30:26 +09:00
강동윤
4dc10d849e
Fixes (#237)
swc_ecma_transforms:
 - handle pattern correctly in coomon_js pass (#235)
 - fix object rest in arrow expression (#233)
2019-02-19 12:52:03 +09:00
Nate Mara
6fd789aa34 Remove dbg! macro call (#232) 2019-02-19 10:34:12 +09:00
강동윤
aa8940c1b0 Fix #226.
Now parser works correctly when either
exportDefaultFrom and exportNamespace is enabled
2019-02-18 23:43:53 +09:00
강동윤
4917bbaf44 Fix test 2019-02-18 22:34:32 +09:00
강동윤
3252988e6a Update fixer.
Fixes #231.
2019-02-18 22:31:50 +09:00
강동윤
59f6a6ffb6 Handle react fragment in top level.
Fixes #229.
2019-02-18 18:08:40 +09:00
강동윤
1368a4a281 Fix #227 2019-02-18 15:05:58 +09:00
강동윤
2b7240c595
Support export * as Foo from 'foo'; (#228)
swc_ecma_parser:
 - support `export * as Foo from 'foo';` (Fix #226)

swc_ecma_transforms:
 - support `export * as Foo from 'foo';` (Fix #226)
2019-02-18 14:01:56 +09:00
강동윤
523307a5da FIx #225 2019-02-18 12:19:40 +09:00
강동윤
d8f9101b30 Fix #227 2019-02-18 11:15:04 +09:00
강동윤
3fc360d870 Make sourcemap optional 2019-02-17 23:25:35 +09:00
강동윤
a00d281704 Make Optional pass 2019-02-17 17:52:48 +09:00
강동윤
e419d7d378
Cache react config (#224)
swc_ecma_transforms:
 - global codemap / parser session for config parsing
 - cache parsing result of react pass
 - InjectHelpers pass does not require source map
2019-02-17 17:11:21 +09:00
강동윤
bbfcca8f2b
External helpers (#223)
swc_ecma_transforms
 - support extenal helpers (#155)
2019-02-17 13:48:18 +09:00
강동윤
33ab0db712
Fix travis (#222)
swc_common:
 - ignore copied doctests

swc_ecma_transforms:
 - fox some tests
2019-02-16 18:58:29 +09:00
강동윤
046788cf78 Add option to disable module analyzer 2019-02-16 14:27:24 +09:00
강동윤
1a1889f437
Fix bugs (#221)
swc_ecmascript_parser:
 - fix parsing of `export default from 'src';`

swc_ecmascript:
 - add a pass which allows injecting helpers before the module pass
2019-02-16 14:18:22 +09:00
강동윤
9108ba7bb7 Don't inline process.env.x if x is not registered as global.
Fix #215.
2019-02-15 14:06:16 +09:00
강동윤
ad49de35b3
Handle foo && yield bar (#218)
Fix #216.
2019-02-15 13:58:10 +09:00
강동윤
1d865b9979
Strip type-only imports (#217)
swc_ecma_transforms:
 - strip type-only imports (#179)
2019-02-15 12:14:28 +09:00
강동윤
34fff56462 Add a test for #211.
Closes #211.
2019-02-14 21:17:01 +09:00
강동윤
9bd7a9c484
Perfect fixer (#212)
swc_ecma_transforms:
 - test fixer using test262
 - make fixer perfect
2019-02-14 21:12:05 +09:00
강동윤
b76c4f26e6 Fix #210. 2019-02-14 17:46:22 +09:00
강동윤
e20998d69b FIx #209 2019-02-14 16:06:54 +09:00
강동윤
631eff9e8c
Bugfixes (#208)
swc_ecma_codegen:
 - fix codegen of shebang (#177)
 - add test for #197.

swc_ecma_transforms:
 - fix object rest spread pass (#162)
2019-02-14 13:24:01 +09:00
강동윤
b27829825e
Fix Bugs (#205)
swc_ecma_codegen:
 - escape characters (#204)

swc_ecma_parser:
 - fix parsing of `<!--`

swc_ecma_transforms:
 - promote VarCollector to crate-level utility
 - fix es3::member_expr_lits (#206)
 - fix es2015::duplicate_keys pass (#203)
 - improve fixer (paren for assignment) (#201)
 - improve fixer (arrow expression) (#207)
 - make typescript pass strip out type-only exports (#196)
2019-02-14 11:03:06 +09:00
강동윤
c1a3cc53c1
React jsx / improve fixer (#202)
swc_ecma_parser:
 - fix parsing of jsx

swc_ecma_transforms:
 - fix fixer (#199)
2019-02-13 19:12:00 +09:00
강동윤
c647cf1bc0
Fix bugs (#193)
swc_ecma_parser:
 - fix lexer
 - better error reporting for jsx reference test

swc_ecma_codegen:
 - Update references
2019-02-13 16:03:38 +09:00
강동윤
fedfea4e09 Fix #190 2019-02-13 14:24:44 +09:00
강동윤
a13e6a09b5
Fix #185 (#187)
swc_ecma_transforms:
 - handle imports correctly (in rhs of assignment)
2019-02-13 12:32:12 +09:00
강동윤
74858c3b66
Fix #167 (#186) 2019-02-13 11:56:45 +09:00
강동윤
bf128d295f Add test for #182.
Closes #182.
2019-02-13 11:33:28 +09:00
강동윤
2d062432a8
Shebang & small improvement for object rest spread (#184)
swc_ecma_ast:
 - handle shebang

swc_ecma_codegen:
 - handle shebang

swc_ecma_parser:
 - handle shebang

swc_ecma_transforms:
 - fix arrow expression used with object rest spread
2019-02-13 11:08:21 +09:00
강동윤
f797019b79
Use strict (#183)
swc_ecma_parser:
- fix parsing of use strict without semicolon.

swc_ecma_transforms:
 - emit helpers after use strict.
2019-02-13 08:44:54 +09:00
강동윤
fc661f24f0
Bugfixes (#182)
swc_ecma_ast:
 - rename ast to be consistent
2019-02-13 08:18:19 +09:00
강동윤
cc36bbe3ad Add tests for #169. 2019-02-12 22:18:14 +09:00
강동윤
bd219688ac
Typescript bugs (#170)
swc_ecma_parser:
 - fix parsing of cond expression (Closes #158)
 - fix parsing of function signature (Closes #159)
2019-02-12 22:05:46 +09:00
강동윤
227423d5f6
Export default from & fix codegen of imports (#168)
swc_ecma_ast:
 - Support `export v from 'foo';`

swc_ecma_parser:
 - Support `export v from 'foo';`

swc_ecma_codegen:
 - Fix codegen of side-effect imports
2019-02-12 15:30:11 +09:00
강동윤
45e78e40d4
Amd & Correct named exports (#165) 2019-02-12 11:41:08 +09:00
강동윤
a0c6b4458e
Revert "Amd & Fix for exports (#164)" (#166)
This reverts commit 8c5c7b55b7.
2019-02-12 11:40:36 +09:00
강동윤
8c5c7b55b7
Amd & Fix for exports (#164)
swc_ecma_transforms:
 - correctly tracks exported names.
 - Implement amd

Fix #162
2019-02-12 11:23:19 +09:00
Nate Mara
42f94a3f24 Remove HERE eprintln (#161) 2019-02-12 06:24:12 +09:00
강동윤
d98219cd42 Reduce vtable size of Pass. 2019-02-11 19:11:14 +09:00
강동윤
7fe2245a3d
Cleanup (#152)
- replace Lrc with std::sync::Arc
swc_common:
 - make swc_common::sync private
 - improve MoveMap

swc_ecma_codegen:
 - fix codegen of import.

swc_ecma_transforms:
 - properly detect valid identifier.

swc_ecma_parser:
 - Fix parsing of cond expr inside paren.
2019-02-11 11:39:20 +09:00
Adrian Adamiak
c2142bc225 Remove a leftover (#149)
Remove unused variable from colors.js
2019-02-11 09:40:53 +09:00
nateroling
5afed275f1 Typo correction (#150)
Fix a couple comment typos.
2019-02-11 09:40:28 +09:00
강동윤
ab4f619257
Fix tests (#142) 2019-02-10 20:49:29 +09:00
강동윤
605019280f Fix parsing of import expression 2019-02-10 14:33:21 +09:00
강동윤
b1bf99c67c improve error messages 2019-02-10 12:26:27 +09:00
강동윤
3b8d36dc58 Parse dynamic imports 2019-02-10 12:07:40 +09:00
강동윤
654f55b658 Closes #137, Closes #138 2019-02-09 12:19:20 +09:00
강동윤
7482836d5e Support typescript constructor parameter property 2019-02-08 18:13:32 +09:00
강동윤
e1b83e594f Merge branch 'master' of ssh://github.com/swc-project/swc 2019-02-08 13:29:31 +09:00
강동윤
2c9fe1a555 Comments 2019-02-08 13:28:49 +09:00
강동윤
43d633b44d
Handle comments and improve codegen (#136)
swc_ecma_codegen:
 - Improve codegen
 - Handle comments

swc_ecma_parser:
 - Handle comments
2019-02-08 13:00:58 +09:00
강동윤
b516c19133
Update dependencies (#135) 2019-02-07 00:05:25 +09:00
강동윤
cc83b863ec Threading support 2019-02-06 12:09:42 +09:00
강동윤
17ed32a73c Fix common_js::lazy 2019-02-05 15:47:17 +09:00
강동윤
c5e18e06d1 Use objekt::Clone 2019-02-05 15:24:30 +09:00
강동윤
ea013a1e12 Export module configs 2019-02-05 14:33:29 +09:00