Commit Graph

616 Commits

Author SHA1 Message Date
Austaras
bbe8f3d8fe
fix(es/ast): Revert removal of definite in PrivateProp (#4051) 2022-03-17 05:33:37 +00:00
LongYinan
db9b988845
feat(node-swc): Add libc field in Linux platform packages (#4046) 2022-03-16 18:58:24 +09:00
SWC Bot
0d6fb99384 chore: Publish crates 2022-03-15 16:20:51 +00:00
Austaras
120d2a534e
fix(es/parser): Emit an error for multiple constructors with body (#4031) 2022-03-15 16:18:19 +00:00
Donny/강동윤
e19a60aad4
fix(es/compat): Change pass ordering of es2015 (#4029)
**Description:**

We should apply `regenerator` after `block_scoping` because `regenerator` does not know how to handle `const`s.

**Related issue:**

 - Closes https://github.com/swc-project/swc/issues/3006
2022-03-15 14:17:03 +00:00
SWC Bot
6d5541ccbe chore: Publish crates 2022-03-15 11:00:48 +00:00
Lennart
25e5ccc548
fix(es/parser): Allow building with stable rustc (#4024) 2022-03-15 19:58:29 +09:00
SWC Bot
957a20d383 chore: Publish crates 2022-03-15 05:26:28 +00:00
Sahil mobaidin
f8d6127dd1
fix(es/parser): Report an error if LeftHandSideExpression is invalid (#4001) 2022-03-15 14:24:19 +09:00
Donny/강동윤
ee9a841f33
test(*): Print diagnostics to stderr while testing (#4003)
**Description:**

This will make debugging stack overflow and parser issues easier because it writes to stderrr right away, instead of holding a buffer for it.
2022-03-14 02:06:34 +00:00
Donny/강동윤
38c0c0faa6 chore: Publish crates 2022-03-14 04:11:07 +09:00
Donny/강동윤
40b8a4e596
feat(common): Implement a pretty error reporter (#3946) 2022-03-13 19:07:18 +00:00
Donny/강동윤
ddfa490899 chore: Publish crates 2022-03-12 10:00:23 +09:00
SWC Bot
df7ad95e88 chore: Publish crates 2022-03-11 16:31:05 +00:00
Donny/강동윤
6a6c32203b
chore(es/parser): Add some inline attributes (#3969) 2022-03-11 16:29:05 +00:00
LongYinan
1206c84e19
feat(*): Update dependencies (#3964) 2022-03-11 23:00:55 +09:00
SWC Bot
6e7fe34557 chore: Publish crates 2022-03-11 09:12:58 +00:00
Donny/강동윤
76e646804a
fix(es/parser): Parse if-else chain iteratively (#3961) 2022-03-11 09:10:54 +00:00
OJ Kwon
86ea23785d
perf(*): Update tracing to improve performance of disabled spans (#3932) 2022-03-10 03:15:49 +00:00
SWC Bot
a99b9e6bff chore: Publish crates 2022-03-09 12:55:36 +00:00
Donny/강동윤
4b4aef3270
fix(es/parser): Fix the logic for token contexts (#3926) 2022-03-09 12:53:47 +00:00
SWC Bot
79a9cb4c72 chore: Publish crates 2022-03-09 04:46:20 +00:00
Donny/강동윤
a8ac7e39b0
feat(es/parser): Relax MSRV requirement (#3922) 2022-03-09 04:44:22 +00:00
SWC Bot
4b1b9a7dd3 chore: Publish crates 2022-03-08 07:46:12 +00:00
Austaras
16182d586f
feat(es/parser): Report errors for non-abstract members in an abstract class (#3917) 2022-03-08 07:38:12 +00:00
Donny/강동윤
f3da3499c5
perf(es): Add fast memory deallocator (#3910) 2022-03-07 22:36:06 +00:00
SWC Bot
c6e2abf340 chore: Publish crates 2022-03-07 17:02:10 +00:00
Donny/강동윤
43878137e7
perf(es/parser): Improve performance by adjusting inlining (#3902) 2022-03-07 17:00:25 +00:00
SWC Bot
56773a4cc8 chore: Publish crates 2022-03-06 14:35:19 +00:00
Donny/강동윤
aea59b844c
fix(es/parser): Fix parsing of const in ambient context (#3883) 2022-03-06 14:33:14 +00:00
Donny/강동윤
8d3c9d39f0
test(es): Add tests for fixed issues (#3875)
**Description:**

Adds tests for fixed issues.
This commit modifies one type because the previous type makes transform flaky.

**BREAKING CHANGE:**

To preserve order, the type `swc::Paths` is now `IndexMap` instead of `HashMap`.
2022-03-06 02:27:08 +00:00
SWC Bot
94d9416ca8 chore: Publish crates 2022-03-05 19:54:29 +00:00
magic-akari
f7571630ca
fix(es/parser): Allow await in non-strict mode (#3871) 2022-03-05 19:52:45 +00:00
SWC Bot
2fdc5f625d chore: Publish crates 2022-03-05 14:52:49 +00:00
Austaras
26abc6ba7e
refactor(es/ast): Remove useless fields in private property (#3868) 2022-03-05 23:51:04 +09:00
Donny/강동윤
44262508c6
fix(es/parser): Use unicode id instead of xid (#3867) 2022-03-05 12:24:45 +00:00
SWC Bot
08b20b662b chore: Publish crates 2022-03-01 12:26:46 +00:00
Satish Srinivasan
2aa3b2123f
feat(es/parser): Raise a syntax error on an invalid shorthand assignment (#3734) 2022-03-01 12:24:41 +00:00
SWC Bot
3c2f5dbd6c chore: Publish crates 2022-03-01 11:58:19 +09:00
Donny/강동윤
e3c374b53b
feat(es/quote): Support variables (#3774) 2022-02-28 10:44:06 +00:00
Donny/강동윤
3798436201
chore: Update rustc (#3768) 2022-02-28 16:12:28 +09:00
Donny/강동윤
fe0ddcc54b
feat(es/quote): Implement quasi quoter partially (#3155) 2022-02-27 13:21:38 +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
0062b1bdd1 chore: Publish crates 2022-02-26 06:43:07 +00:00
SWC Bot
2ab150c603 chore: Publish crates 2022-02-26 12:11:27 +09:00
SWC Bot
faeafbecb8 chore: Publish crates 2022-02-26 00:31:21 +00:00
Donny/강동윤
47ccff8a7c
feat(es/parser): Provide more api for reducing binary size (#3747) 2022-02-26 09:29:05 +09:00
SWC Bot
233e5d2a73 chore: Publish crates 2022-02-25 12:52:25 +00:00
William Tetlow
342dccce47
fix(es/parser): Handle trailing comma and bracket after an arrow function in conditional (#3685) 2022-02-25 12:50:04 +00:00
Austaras
05de029cfa
fix(es/compat): Fix handling of private getters and setters (#3695) 2022-02-25 06:08:35 +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
118801e5e0 chore: Publish crates 2022-02-24 13:39:16 +00:00
Donny/강동윤
e21579d84e
perf(es/parser): Reduce usage of generics to reduce binary size (#3726) 2022-02-24 13:36:37 +00:00
SWC Bot
fb561123c7 chore: Publish crates 2022-02-24 07:32:19 +00:00
Donny/강동윤
8b87bb4870
fix(es/parser): Don't attach comments to ; (#3720) 2022-02-24 07:23:53 +00:00
SWC Bot
d0a9295ba2 chore: Publish crates 2022-02-24 04:38:20 +00:00
David Sherret
4318a2e73b
fix(es/parser): Fix the span of an export declaration containing a const enum (#3701) 2022-02-24 04:36:05 +00:00
SWC Bot
6f7c06c9f8 chore: Publish crates 2022-02-23 15:50:44 +00:00
Pig Fang
010fe048c2
fix(es/parser): Fix a typescript instantiation expression followed by EOF (#3699) 2022-02-23 15:48:17 +00:00
SWC Bot
abb3c5942c chore: Publish crates 2022-02-23 14:59:32 +00:00
Pig Fang
d6522f3a37
fix(es/parser): Disallow using reserved words as an expression in typescript (#3697) 2022-02-23 14:57:01 +00:00
SWC Bot
677e483ccb chore: Publish crates 2022-02-23 14:24:53 +00:00
magic-akari
d499b8c14f
fix(es/parser): Allow Expr::TsInstantiation in extends clause (#3696) 2022-02-23 14:20:06 +00:00
Donny/강동윤
e35d73adf4
chore(clippy): Improve config (#3691) 2022-02-23 06:07:42 +00:00
SWC Bot
61d9e329c9 chore: Publish crates 2022-02-23 04:11:14 +00:00
Austaras
6a9d77808b
fix(es/parser): Emit an error for non-last rest element in an object pattern (#3675) 2022-02-23 13:08:46 +09: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
1fd3522e55 chore: Publish crates 2022-02-21 01:54:00 +00:00
Pig Fang
581b63cf36
fix(es/parser): Allow type arguments inside optional chaining (#3653) 2022-02-21 01:51:44 +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
Donny/강동윤
a2f9c88b62
test(es/parser): Add a test for #2417 (#3588) 2022-02-16 12:34:25 +00: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/강동윤
c2a3b0d66c chore: Publish crates 2022-02-09 00:47:41 +09:00
Austaras
26565b1ae9
feat(es/parser): Disallow assignment to optional chaining expressions (#3483) 2022-02-08 12:51:26 +00:00
Donny/강동윤
8bf5cf4d03
chore(es): Fix clippy warnings (#3482) 2022-02-08 19:50:22 +09:00
Donny/강동윤
454d07d973 chore: Publish crates 2022-02-04 20:21:02 +09:00
Donny/강동윤
397a96a1cf
test(es/parser): Fix crlf (#3451) 2022-02-04 20:17:42 +09:00
Donny/강동윤
e5b22cc3d8 chore: Publish crates 2022-02-04 17:54:47 +09:00
Donny/강동윤
5a806c5b81
fix(es/parser): Fix parsing of decorators (#3449)
swc_ecma_parser:
 - Parse decorators using `parse_subscripts`.
2022-02-04 17:54:03 +09:00
Donny/강동윤
8b7c38c80c
test(es): Update tsc test suite (#3448) 2022-02-04 17:08:38 +09:00
Donny/강동윤
19e7c70bd7 chore: Publish crates 2022-02-04 13:21:41 +09:00
RiESAEX
cc185f01cb
feat(es/parser): Add an option to allow super outside of class methods (#3427) 2022-02-04 13:21:16 +09:00
Donny/강동윤
839d0ac480
refactor(es/parser): Flatten tests to make git faster (#3393) 2022-01-28 19:11:30 +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
2ec540da35 chore: Publish crates 2022-01-16 04:22:00 +09:00
RiESAEX
6406b49df2
fix(es/parser): Throw an error when function body has use strict and paramaters is not simple (#3278) 2022-01-16 04:21:02 +09:00
Donny/강동윤
357a350390
refactor(*): Cleanup (#3274) 2022-01-15 16:43:34 +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
a2445e743b chore: Publish crates 2022-01-12 04:46:21 +09:00
David Sherret
105cbc2017
fix(es/parser): Fix span of ComputedPropName (#3234) 2022-01-12 04:45:52 +09:00
Donny
54a0f51876 chore: Publish crates 2022-01-10 23:48:35 +09:00
Sosuke Suzuki
3fb76f64c4
feat(es/parser): Accept strings for import/exports (#3190) 2022-01-10 23:48:04 +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
Sosuke Suzuki
432f877790
feat(es/ast): Use ModuleExportName for ExportNamespaceSpecifier (#3195) 2022-01-06 20:19:11 +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
b1a72315db chore: Publish crates 2022-01-02 12:50:50 +09:00
Donny/강동윤
7a83c0cb57
perf(es/ast/serde): Make deserialization faster (#3160)
ast_node:
 - Improve deserialization of enums.

swc_css_ast:
 - Fix a compilation issue.

swc_ecma_ast:
 - Update `serde`.

swc_ecma_parser:
 - Fix a compilation issue.

swc_estree_ast:
 - Fix serialization.
2022-01-02 12:49:09 +09:00
Donny/강동윤
194b3e9b67
refactor(*): Use 2021 edition (#3151) 2021-12-30 18:59:18 +09:00
Jim Berlage
a4e8e53c19
test(es/parser): Add tests about null escape (#3147) 2021-12-30 08:54:10 +00:00
OJ Kwon
72c963662d
refactor(*): Drop unused dependencies (#3138) 2021-12-29 15:27:51 +09:00
Donny
fc9622f779 chore: Publish crates 2021-12-28 23:33:53 +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/강동윤
d482d61b9f
chore(scripts): Use cargo profile instruments instead of cargo instruments (#3086) 2021-12-21 16:09:19 +09:00
Donny/강동윤
8afb5af517
chore(repo): Make git faster (#3075)
swc_ecma_parser:
 - Flatten parser test suite ported from `tsc`.

swc:
 - Flatten the reference directory for the `tsc` test suite.
2021-12-20 14:05:57 +09:00
Donny
9c62047653 chore: Publish crates 2021-12-19 05:03:01 +09:00
Sosuke Suzuki
f1a28329cb
feat(es/parser): Report an error for export type * from "mod"; (#3064) 2021-12-19 05:02:36 +09:00
Donny
021fe66652 chore: Publish crates 2021-12-19 00:18:47 +09:00
Donny/강동윤
b4d95b44a7
perf(es/parser): Improve performance (#3059)
swc_common:
 - Optimize `StringInput`.

swc_ecma_parser:
 - Optimize `skip_space`.
 - Remove useless `.clone()`.
2021-12-19 00:18:00 +09:00
Donny
188b856694 chore: Publish crates 2021-12-18 23:15:17 +09:00
asterite3
0c813ae453
fix(es/lexer): Fix lexing of numbers with large exponent (#3061)
swc_ecma_parser:
 - Fix lexing of numbers where exponents are large enough to be parsed as `Infinity`. (Closes #3060)
2021-12-18 23:14:36 +09:00
Donny
189b1e286d chore: Publish crates 2021-12-16 19:57:40 +09:00
Donny/강동윤
61e9b5f841
fix(es/lexer): Don't report lexer errors while backtracking (#3051)
swc_ecma_parser:
 - Share backtracking state with the lexer.
 - Don't report lexing errors while backtracking (Closes #2896)
2021-12-16 19:57:19 +09:00
Donny
c658af4365 chore: Publish crates 2021-12-16 15:31:03 +09:00
magic-akari
23a59db9bb
fix(es/parser): Allow assignment assertions in typescript classes (#3047) 2021-12-16 15:30:34 +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
5a173bce3a chore: Publish crates 2021-12-13 11:39:41 +09:00
Donny/강동윤
7236a2213e
refactor(es/parser): Make some verification logic optional (#3024)
swc_ecma_parser:
 - Make dependency on `swc_ecma_visit` optional.
2021-12-13 11:39:17 +09:00
Donny
de95e2a9b9 chore: Publish crates 2021-12-13 05:44:01 +09:00
Sosuke Suzuki
b4c210d1d9
fix(es/parser): Allow trailing comma in dynamic imports if import assertion is enabled (#3018) 2021-12-13 05:42:19 +09:00
Donny
b1a47ee971 chore: Publish crates 2021-12-07 14:34:44 +09:00
Donny/강동윤
e48263b2f3
refactor(visit): Remove &dyn Node from Visit (#2984)
swc_visit_macros:
 - Remove `&dyn Node` from `Visit`.
 - Implement `VisitWith<V>` for `[T]`.
2021-12-07 14:34:16 +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
58159d377c chore: Publish crates 2021-12-05 15:43:04 +09:00
David Sherret
97df4cef80
refactor(es/parser): Remove import_assertions from TsConfig (#2950) 2021-12-05 05:43:41 +00:00
Donny
36db1ed359 chore: Publish crates 2021-12-02 15:55:03 +09:00
RiESAEX
d8c8641e59 fix(es/parser, es/compat): transform tagged template with invalid escape sequence (#2939)
swc_ecma_parser:
 - Preserve more data for invalid escapes in template literals.

swc_ecma_transforms_compat:
 - Fix handling of template literals. (Closes #2674)
2021-12-02 15:49:45 +09:00
Donny
86d2cebd37 chore: Publish v1.2.115 2021-12-01 14:20:52 +09:00
Donny
3d75b9a968 chore: Publish crates 2021-11-29 16:47:27 +09:00
such0624
c186aa443a
fix(es/parser): Fix parser (#2903)
swc_ecma_parser:
 - Fix `skip_ts_parameter_start`. (Closes #2160)
2021-11-29 07:46:14 +00:00
Donny/강동윤
f5af22ef71
chore: Document features (#2890) 2021-11-27 16:55:42 +09:00
Donny
a38889be91 chore: Publish crates 2021-11-26 08:31:11 +09:00
David Sherret
b853d4ac95
feat(es/parser): Implement more error recovery (#2874)
swc_ecma_parser:
 - Recover from unterminated string literals.
2021-11-25 23:12:40 +00:00
Donny/강동윤
28850eef5c
chore: Allow using #[doc(cfg)] (#2871) 2021-11-25 14:16:18 +09:00
Donny
770da5ae9e chore: Publish crates 2021-11-24 15:05:46 +09:00
RiESAEX
cf777c5ba1
fix(es/lexer): Fix lexing of hexadecimal escape sequences (#2838) 2021-11-24 05:26:38 +00: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
46e722559e chore: Publish crates 2021-11-22 01:02:49 +09:00
Donny/강동윤
79ba13cbb5
fix(es/parser): Fix comments of empty modules (#2828)
swc_ecma_parser:
 - Use correct span for storing comments when module is empty.
2021-11-22 01:02:28 +09:00
Donny
a392a4c0fd chore: Publish crates 2021-11-21 23:43:31 +09:00
Donny/강동윤
9525ea178f
fix(es/parser): Fix span of empty modules (#2827)
swc_ecma_parser:
 - Don't use dummy span for empty modules.
2021-11-21 23:42:36 +09:00
Donny
e39748ed4a chore: Publish crates 2021-11-20 15:52:34 +09:00
David Sherret
338b8fd98e
fix(es/parser): Fix span of named export (#2813)
swc_ecma_parser:
- Include semicolon in span of a named export.
2021-11-20 15:52:08 +09:00
Donny
4e8cb5dbfd chore: Publish crates 2021-11-18 15:46:30 +09:00
RiESAEX
1caa61a182
fix(es/parser): Allow static/declare to be optional class property name (#2782) 2021-11-18 06:46:07 +00:00
Donny
7fcbdf20dd chore: Publish crates 2021-11-17 13:50:10 +09:00
Max Graey
1bb2c687c0
refactor(es/parser): Simplify skip_line_comment (#2768) 2021-11-17 13:49:43 +09:00
Donny/강동윤
2462b9941f
refactor: Cleanup (#2749) 2021-11-15 15:24:25 +09:00
Donny
3294a35417 chore: Publish crates 2021-11-12 21:27:00 +09:00
RiESAEX
6e10168207
fix(es/parser): Check for more typescript class names (#2732)
swc_ecma_parser:
 - Check for more invalid typescript class names. (Closes #1218)
2021-11-12 21:26:37 +09:00
Donny
544835a3a5 chore: Publish crates 2021-11-11 23:37:43 +09:00
RiESAEX
11d1fa56c0
fix(es/lexer): Fix handling of jsx escapes (#2723)
swc_ecma_parser:
 - Remove logic for unescaping jsx escapes. (Closes #2162)
2021-11-11 14:37:21 +00: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