Commit Graph

596 Commits

Author SHA1 Message Date
Donny/강동윤
98df64517e
perf(common): Add more methods to Spanned (#4749)
- Lots of code only needs `lo` or `hi`, but they call `span()`, which is inefficient in some cases.
 - This PR only adds a trivial amount of optimization. I may add full optimization in future.
 - This PR improves codegen performance of `ExprOrSpread` and `Option<ExprOrSpread>`.
2022-05-23 09:18:40 +00:00
SWC Bot
286e654c95 chore: Publish crates 2022-05-21 14:17:08 +00:00
magic-akari
ea46eb41e0
fix(es/codegen): Fix numeric literals (#4733) 2022-05-21 14:14:33 +00:00
SWC Bot
7357f72cb9 chore: Publish crates 2022-05-21 11:37:46 +00:00
Donny/강동윤
f1baff4114
fix(es/codegen): Fix numeric literals (#4731) 2022-05-21 20:31:19 +09:00
SWC Bot
4d2f4a826a chore: Publish crates 2022-05-19 07:15:15 +00:00
Kevin Barabash
72fbf692a4
fix(es/codegen): Don't add a newline after an arrow body (#4711) 2022-05-19 07:12:37 +00:00
Donny/강동윤
da49f810db
feat(es): Add check for BytePos::DUMMY (#4675) 2022-05-16 03:29:24 +00:00
SWC Bot
a09bfc22f8 chore: Publish crates 2022-05-15 10:43:11 +00:00
Donny/강동윤
bfb6be7075
doc(es/codegen): Document ascii_only (#4669) 2022-05-15 10:40:41 +00:00
SWC Bot
ead25ee153 chore: Publish crates 2022-05-15 05:09:48 +00:00
Donny/강동윤
eb8508f88c
feat(es/codegen): Implement ascii-only (#4660) 2022-05-15 05:07:21 +00:00
SWC Bot
97808349a2 chore: Publish crates 2022-05-11 16:17:07 +00:00
Donny/강동윤
67942d5731
feat(common): Reserve BytePos(0) for dummy spans (#4616) 2022-05-11 16:14:42 +00:00
Donny/강동윤
2c861bd9e5
feat(es/ast): Improve Id APIs (#4614)
# API Changes

 - `Ident` now has `to_id()`. This method is added to allow removing an import.
2022-05-11 12:02:14 +09:00
SWC Bot
e4ce388632 chore: Publish crates 2022-05-06 04:10:39 +00:00
William Tetlow
e2fde1a9a7
fix(es/parser): Revert #4287 (#4542) 2022-05-06 04:07:00 +00:00
SWC Bot
ee959ee2f6 chore: Publish crates 2022-04-21 13:12:02 +00:00
Donny/강동윤
139ac24c46
fix(es/codegen): Allow non-ascii character in more places (#4394) 2022-04-21 13:09:05 +00:00
OJ Kwon
8419b60430
fix(plugin): Align deps to fix build (#4377) 2022-04-20 08:05:02 +00:00
Donny/강동윤
8309440008
chore(es): Rename benchmarks (#4355) 2022-04-17 18:36:15 +00:00
SWC Bot
29ff9cb29f chore: Publish crates 2022-04-17 12:08:09 +00:00
Donny/강동윤
4953ce466f
fix(es/codegen): Emit decorators before export (#4349) 2022-04-17 12:05:47 +00:00
SWC Bot
4f9b9666d3 chore: Publish crates 2022-04-15 08:02:32 +00:00
Dion
4c9973010a
fix(es/codegen): Fix codegen of arrow expressions (#4306)
Co-authored-by: Donny/강동윤 <kdy1997.dev@gmail.com>
2022-04-15 08:00:04 +00:00
SWC Bot
995b4367cc chore: Publish crates 2022-04-15 07:39:50 +00:00
Donny/강동윤
7599fe7431
fix(es/parser): Enable static blocks by default (#4334) 2022-04-15 07:31:41 +00:00
SWC Bot
279145022d chore: Publish crates 2022-04-13 10:19:53 +00:00
Donny/강동윤
0245e26af5
fix(es/codegen): Fix overflow of numeric literals (#4321) 2022-04-13 10:16:51 +00:00
SWC Bot
fa880634bd chore: Publish crates 2022-04-11 20:05:28 +00:00
magic-akari
d0de5a63a0
feat(es): Support typeof with private fields (#4302) 2022-04-11 20:02:51 +00:00
那里好脏不可以
37a8c90750
chore(*): Typo + fomatting (#4304) 2022-04-11 18:45:58 +00:00
OJ Kwon
fad652f879
chore(plugin): Align version of swc_common to include dummy comment api (#4270) 2022-04-07 07:21:37 +00:00
Alexander Akait
1f0039f2c3
test(es/parser): Add a test for a fixed issue (#4255) 2022-04-06 00:21:13 +09:00
SWC Bot
5eb3d8315a chore: Publish crates 2022-04-05 12:49:22 +00:00
Alexander Akait
f39d3aca4d
feat(es/ast): Add raw to Num (#4245) 2022-04-05 12:46:35 +00:00
SWC Bot
8c4ad410f8 chore: Publish crates 2022-04-05 11:49:50 +00:00
Donny/강동윤
ccd3188c8b
fix(es/codegen): Handle comments on the argument of throw (#4254) 2022-04-05 11:47:18 +00:00
SWC Bot
bef40f8443 chore: Publish crates 2022-04-05 09:14:49 +00:00
Donny/강동윤
8cd903b3b0
fix(es/codegen): Commit ; before a template literal (#4252) 2022-04-05 09:12:23 +00:00
OJ Kwon
4093814895
chore(build): Dedup swc_common (#4247) 2022-04-05 14:28:07 +09:00
Donny/강동윤
1f466e1d2f
chore(ci): Fix benchmark action (#4242) 2022-04-04 20:12:03 +09:00
Donny/강동윤
06d0891e7c
chore(bench): Migrate to criterion (#4237) 2022-04-04 00:56:29 +09:00
SWC Bot
3337777f8c chore: Publish crates 2022-04-02 06:06:39 +00:00
Alexander Akait
e91f271873
feat(es/ast): Add raw to BigInt (#4218) 2022-04-02 06:04:14 +00:00
SWC Bot
6125de9808 chore: Publish crates 2022-03-28 12:20:51 +00:00
Alexander Akait
fcf67c4570
fix(es): Consume surrogate pairs (#4115) 2022-03-28 12:18:06 +00:00
SWC Bot
4cdf4b96e3 chore: Publish crates 2022-03-27 05:34:40 +00:00
RiESAEX
ea0de90137
fix(es/codegen): Emit sourcemap of key-value properties correctly (#4166) 2022-03-27 14:26:53 +09:00
RiESAEX
7a1dcb1b93
fix(es): Make ErrorConfig.filename default to true (#4150) 2022-03-25 05:06:15 +00:00
Donny/강동윤
e6088408bf chore: Publish crates 2022-03-24 12:05:47 +09:00
SWC Bot
dbe21cab68 chore: Publish crates 2022-03-23 21:41:10 +00:00
Alexander Akait
48f3dc8cc4
feat(es/codegen): Compress \t in string literals more (#4131) 2022-03-23 21:37:03 +00:00
magic-akari
bf1924d1a8
feat(es/typescript): Support optional variance annotations (#4008) 2022-03-23 14:36:37 +00:00
SWC Bot
3e32fdcdd2 chore: Publish crates 2022-03-23 12:42:30 +00:00
Alexander Akait
f5a5217506
fix(es/codegen): Fix codegen of template literals (#4124) 2022-03-23 12:39:47 +00:00
SWC Bot
77722c4943 chore: Publish crates 2022-03-22 08:03:01 +00:00
Alexander Akait
634d732803
feat(es/ast): Add raw to Str (#4071) 2022-03-22 07:54:08 +00:00
Donny/강동윤
c6f8742669 feat(es/minifier): Implement more evaluation rules (#4030) 2022-03-21 20:07:59 +09:00
SWC Bot
2e48c9fc24 chore: Publish crates 2022-03-21 05:16:53 +00:00
Donny/강동윤
61f1a37492
fix(es/codegen): Fix codes related to sourcemap (#4106) 2022-03-21 05:14:45 +00:00
Donny/강동윤
9b64a6960f
fix(es/codegen): Emit decorators on class methods (#4103) 2022-03-20 07:53:53 +00:00
SWC Bot
133bfb43d3 chore: Publish crates 2022-03-20 07:13:59 +00:00
Austaras
552f16dba6
fix(es/codegen): Support multiline comments in return stmt (#4102) 2022-03-20 07:11:23 +00:00
Donny/강동윤
f66229822c
fix(es/resolver): Fix handling of decorators (#4084) 2022-03-19 05:32:53 +00:00
SWC Bot
0087627910 chore: Publish crates 2022-03-18 08:29:12 +00:00
Donny/강동윤
22d005e224
fix(es/modules): Fix sourcemap, really (#4074) 2022-03-18 08:26:58 +00:00
SWC Bot
a74d4ca679 chore: Publish crates 2022-03-17 10:29:25 +00:00
Donny/강동윤
9310c39fe9
fix(es/codegen): Fix sourcemap (#4062) 2022-03-17 10:26:58 +00:00
SWC Bot
4d6d766cf8 chore: Publish crates 2022-03-17 05:36:01 +00:00
SWC Bot
fc7ea6afe0 chore: Publish crates 2022-03-16 14:28:00 +00:00
Alexander Akait
bd444c0ceb
fix(es/codegen): Fix codegen of string literals (#4037) 2022-03-16 14:25:26 +00:00
LongYinan
db9b988845
feat(node-swc): Add libc field in Linux platform packages (#4046) 2022-03-16 18:58:24 +09:00
Donny/강동윤
f650ca6bb9
doc(api/rust): Add an example for generating code and sourcemap (#4005) 2022-03-14 03:52:59 +00:00
Donny/강동윤
38c0c0faa6 chore: Publish crates 2022-03-14 04:11:07 +09:00
Donny/강동윤
ddfa490899 chore: Publish crates 2022-03-12 10:00:23 +09:00
LongYinan
1206c84e19
feat(*): Update dependencies (#3964) 2022-03-11 23:00:55 +09:00
SWC Bot
e55c2a9850 chore: Publish crates 2022-03-10 14:32:17 +00:00
Donny/강동윤
e8018c54d4
fix(es/codegen): Fix sourcemap issue caused by reserved BytePos values (#3948) 2022-03-10 14:30:03 +00:00
Austaras
112f428734
feat(es/compat): Add pure comments for class fields keys (#3939) 2022-03-10 07:13:58 +00:00
OJ Kwon
86ea23785d
perf(*): Update tracing to improve performance of disabled spans (#3932) 2022-03-10 03:15:49 +00:00
Austaras
12b8606c99
fix(es/compat/es2015): Fix span handling of arrow and classes (#3921) 2022-03-09 06:51:48 +00:00
SWC Bot
2fdc5f625d chore: Publish crates 2022-03-05 14:52:49 +00:00
SWC Bot
3152da285a chore: Publish crates 2022-03-01 10:58:04 +00:00
Austaras
e1b13eb21a
feat(es/codegen): Optimize output of new expressions without arguments (#3800) 2022-03-01 10:55:49 +00:00
William Tetlow
abc0572557
fix(es/parser) Throw a syntax error for const without initializer in strict mode (#3742)
Co-authored-by: Donny/강동윤 <kdy1997.dev@gmail.com>
2022-02-27 06:25:05 +00:00
SWC Bot
8b08499786 chore: Publish crates 2022-02-26 07:07:24 +00:00
Donny/강동윤
0fd4fd2422
feat(es/codegen): Add sourcemap entry for injected semicolons (#3750) 2022-02-26 07:05:31 +00:00
Donny/강동윤
3d944656bf
refactor(es): Make compilation faster (#3749) 2022-02-26 06:41:14 +00:00
SWC Bot
17e77da5c6 chore: Publish crates 2022-02-25 13:42:23 +00:00
William Tetlow
dba90eae87
fix(es/codegen): Fix escaping of unicodes in es5 (#3636) 2022-02-25 13:15:14 +00:00
OJ Kwon
a454996314
feat(node-swc): Add experimental trace support in @swc/core (#3731) 2022-02-25 04:06:45 +00:00
SWC Bot
0bda2513bd chore: Publish crates 2022-02-24 08:49:47 +00:00
Donny/강동윤
b8b0c920e4
fix(es/codegen): Fix sourcemap of comments (#3723) 2022-02-24 08:47:20 +00:00
Donny/강동윤
8b87bb4870
fix(es/parser): Don't attach comments to ; (#3720) 2022-02-24 07:23:53 +00:00
Donny/강동윤
e35d73adf4
chore(clippy): Improve config (#3691) 2022-02-23 06:07:42 +00:00
SWC Bot
8012056bd8 chore: Publish crates 2022-02-22 08:11:02 +00:00
Donny/강동윤
210f17af8c
build(swc): Remove unused dependencies (#3673) 2022-02-22 08:05:54 +00:00
SWC Bot
e4c674b9cb chore: Publish crates 2022-02-21 13:10:43 +00:00
Donny/강동윤
68a155165b
fix(es/ast): Fix definition of Expr::TsInstantiation (#3657) 2022-02-21 13:03:11 +00:00
SWC Bot
e08a2c2c17 chore: Publish crates 2022-02-21 07:15:09 +00:00
Austaras
2cb66ae075
refactor(es/ast): Change definition of optional chaining expressions (#3645) 2022-02-21 07:12:09 +00:00
SWC Bot
264f1cf8d6 chore: Publish crates 2022-02-20 15:53:48 +00:00
Pig Fang
61e711c912
feat(es/ast): Support TypeScript Instantiation Expression (#3642) 2022-02-20 15:51:31 +00:00
OJ Kwon
ad6f24ad83
build(*): Dedupe once_cell (#3567) 2022-02-15 11:58:44 +09:00
Donny/강동윤
9b76783281
refactor(common): Cleanup & rustfmt (#3495)
swc_common:
 - Merge identical source codes.

swc_css_parser:
 - Deny `clippy::all`.
 - Fix lints.
2022-02-09 06:33:32 +00:00
Donny/강동윤
8bf5cf4d03
chore(es): Fix clippy warnings (#3482) 2022-02-08 19:50:22 +09:00
Donny/강동윤
19e7c70bd7 chore: Publish crates 2022-02-04 13:21:41 +09:00
Donny/강동윤
2ea81db19f chore: Publish crates 2022-02-03 15:36:30 +09:00
Donny/강동윤
b64fcaa69d chore: Publish crates 2022-02-03 15:19:43 +09:00
Donny/강동윤
ea8dfd872c
fix(es/codegen): Fix bugs (#3436)
swc_ecma_codegen:
 - Emit `;` after do-while statemnts. (#3426)
 - Don't emit two dots for minified numeric literals. (#3428)
 - Handle semicolons correctly. (#3420)
2022-02-03 15:19:13 +09:00
Donny/강동윤
6c9b311881 chore: Publish crates 2022-02-03 13:14:20 +09:00
Alexander Akait
e8b64a9871
feat(es/codegen): Improve compression of numbers (#3425) 2022-02-03 13:04:32 +09:00
Donny
27a8bf5104 chore: Publish crates 2022-01-25 14:48:41 +09:00
Yunfei He
fcb7288eb6
feat(es/codegen): Emit comments of Module and Script (#3358) 2022-01-25 14:48:03 +09:00
LongYinan
9608605772
build(node-swc): Fix GLIBC < 2.18 compatible issues and android arm binary loading issue (#3314) 2022-01-20 02:21:24 +00:00
Donny/강동윤
e8670b3383
refactor(es): More fix for clippy (#3280) 2022-01-16 14:33:06 +09:00
Donny/강동윤
15b604b6d6
refactor(*): Fix some clippy warnings (#3257) 2022-01-14 07:20:45 +09:00
Donny/강동윤
978de5943e
chore(ci): Configure clippy (#3250) 2022-01-13 23:06:11 +09:00
Donny
c13bba8401 chore: Publish crates 2022-01-12 18:39:56 +09:00
Donny
852ec783f3 chore: Publish crates 2022-01-10 22:57:17 +09:00
Austaras
f58b50bea7
refactor(es/ast): Change types of member-like expressions (#3178)
swc_ecma_ast:
 - Split `MemberExpr` into `MemberExpr` and `SuperPropExpr`.
 - Use `Box<Expr>` for `MemberExpr.obj`.
 - Use ad-hoc type for `MemberExpr.prop`.
 - Use ad-hoc type for `SuperPropExpr.prop`.
 - Use `Callee` instead of  `ExprOrSpread` for `CallExpr`.
 - Simplify types for meta property expressions.
2022-01-10 13:54:42 +00:00
Donny
6892f27ad7 chore: Publish crates 2022-01-06 20:19:36 +09:00
Donny
781aa79b82 chore: Publish crates 2022-01-04 19:29:50 +09:00
Donny
1e5bc88cd3 chore: Publish crates 2022-01-03 17:45:09 +09:00
Sosuke Suzuki
07c0489575
feat(es/ast): Add ModuleExportName (#3048)
swc_ecma_ast:
 - Allow using string as import/export specifiers.
2022-01-03 08:44:11 +00:00
Donny
cb13512e84 chore: Publish crates 2022-01-03 05:55:39 +09:00
magic-akari
52961804d1
feat(es/codegen): Make the output for empty objects and empty statements pretty (#3171) 2022-01-03 05:54:58 +09:00
Donny/강동윤
194b3e9b67
refactor(*): Use 2021 edition (#3151) 2021-12-30 18:59:18 +09:00
Andreu Botella
2f3ca22ecf
fix(es/parser): Support import assertions in specifier-less imports (#3134) 2021-12-28 14:00:00 +00:00
Donny
ba187c3c6a chore: Publish crates 2021-12-28 20:23:21 +09:00
Andreu Botella
c9adf03338
fix(es): Handle import assertions correctly (#3113)
swc_ecma_codegen:
 - Implement codegen for static import assertions.

swc_ecma_transforms_proposal:
  - `import_assertions`: Support `export`s.

swc:
 - Add `jsc.experimental.keep_import_assertions`.

node-swc:
 - Fix typo.
2021-12-28 11:18:33 +00:00
Donny/강동윤
d482d61b9f
chore(scripts): Use cargo profile instruments instead of cargo instruments (#3086) 2021-12-21 16:09:19 +09:00
Donny
9b36abbe75 chore: Publish crates 2021-12-15 16:22:00 +09:00
Austaras
38955c0c8d
refactor(es/ast): Change type or the key of ClassProp to PropName (#3038) 2021-12-15 16:21:30 +09:00
Donny
f35ec6c612 chore: Publish crates 2021-12-13 09:21:46 +09:00
Donny/강동윤
c415487bb9
fix(es/codegen): Fix sourcemap bug related to multi-line comments (#3023)
swc_ecma_codegen:
 - Compute line starts in multi-line comments.
2021-12-13 09:21:22 +09:00
Donny/강동윤
a3bd6aea54
fix(es/codegen): Fix sourcemap (#3003)
swc_ecma_codegen:
 - Handle source map of multi-line template literals. (Closes #2185, Closes #2362, Closes #2900)
2021-12-10 19:57:39 +09:00
Donny
b1a47ee971 chore: Publish crates 2021-12-07 14:34:44 +09:00
Donny
acc45e7c36 chore: Publish crates 2021-12-05 17:34:04 +09:00
Donny/강동윤
1ea965cecb
fix(es/parser): Drop outdated options (#2974)
swc_ecma_parser:
 - Drop flags in `EsConfig`.
 - Drop flags in `TsConfig`.
 - Drop unused variants from `SyntaxError`.
2021-12-05 17:33:34 +09:00
Donny
529f980693 chore: Publish crates 2021-12-05 15:44:50 +09:00
Donny
86d2cebd37 chore: Publish v1.2.115 2021-12-01 14:20:52 +09:00
Donny/강동윤
6b96a3d8ed
feat: Enable logging of timings (#2833)
swc_timer:
 - Add `Timer`.
 - Add `timer!()`.

node:
 - Enable logging.
2021-11-22 21:01:08 +09:00
Donny/강동윤
665c8e05fc
fix(es): Move TargetEnv to loader from ast (#2719)
swc_ecma_ast:
 - Move `TargetEnv` to `swc_ecma_loader`.

swc_ecma_loader:
 - Drop unused dependencies.
2021-11-11 20:00:46 +09:00
Donny/강동윤
2b2f6955f2
refactor: Flatten ecmascript (#2708) 2021-11-10 19:00:54 +09:00