강동윤
57112fc42b
Improve transforms ( #1035 )
...
swc_ecma_transforms:
- Fix `this` in optional chaining expression. (https://github.com/Brooooooklyn/swc-node/issues/62 )
- Optimize typescript stripper
- Optimize fixer
2020-09-06 19:47:15 +09:00
강동윤
eb2162cbd2
Fix stack overflow ( #1032 )
...
swc_ecma_codegen:
- Fix codegen of large binary expressions.
swc_ecma_parser:
- Fix stack overflow while parsing large binary expressions.
swc_ecma_transforms:
- typescrip::strip: Fix stack overflow while handling large binary operations.
- hygiene: Fix stack overflow by migrating it to `VisitMut`.
- hygiene: Improve performance.
- fixer: Fix stack overflow by migrating it to `VisitMut`.
- resolver: Migrate to `VisitMut`.
2020-09-06 15:09:02 +09:00
강동윤
6524802ae5
fixer: Handle binary expression in callee of new ( #1030 )
2020-09-04 17:31:02 +09:00
강동윤
108b22c0d6
Fix block scoping ( #1029 )
...
swc_ecma_transforms
- block_scoping: Handle this (#1021 )
- block_scoping: Handle variable mutation in for loops (#1022 )
2020-09-04 16:46:59 +09:00
강동윤
3d63798c9e
Handle dynamic imports in non-es6 modules ( #1028 )
2020-09-04 16:18:57 +09:00
강동윤
8a01e2b7b6
Fix spack ( #1016 )
...
swc_ecma_transforms:
- Add tests for #898
- dce preserves `export * from 'foo';`
swc_bundler:
- Fix some concurrency bugs
- Run dce only once
- Handle `export * from 'foo'`
- Handle namespace imports with computed key
- Add some unit tests for `plan`
- Handle export default decl
- Handle simple coomon dependencies properly
2020-09-03 22:45:42 +09:00
강동윤
a2960810ac
Add BigInt literal type ( #1020 )
2020-09-03 10:50:13 +09:00
강동윤
578d64a398
Support jsx pragma ( #1015 )
...
swc_ecma_transforms
- Support jsx pragma (#107 , #838 )
2020-08-30 20:32:45 +09:00
LongYinan
b443a1e372
Test Reflect.metadata existed before use it ( #1011 )
...
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2020-08-30 13:30:50 +09:00
강동윤
99981f70c7
Add customizable api ( #1006 )
2020-08-27 20:35:28 +09:00
강동윤
b25ccc006c
Improve performance ( #993 )
2020-08-26 20:50:18 +09:00
강동윤
0a83809b2a
Improve type resolver ( #994 )
2020-08-24 18:48:54 +09:00
강동윤
e3faea25b6
Improve performance of swc ( #992 )
...
swc_ecma_parser:
- Make macros uses match instead of `PartialEq`
swc_ecma_codegen:
- Move panic condition
2020-08-24 10:42:12 +09:00
강동윤
53338fc0c3
Resolver for types ( #979 )
...
swc_ecma_transforms:
- Add ts_resolver
2020-08-21 16:25:09 +09:00
강동윤
3262052e33
Improve performance and reduce binary size ( #973 )
...
spack:
- Optimize resolver
swc_bunder:
- Parallize merging of reexports
- Remove useless `clone`s
swc_ecma_utils:
- Migrate DropSpan to VisitMut
swc_ecma_transforms:
- Migrate simple transforms to VisitMut
- Ignore types to reduce binary size
- Hide actual types so that we can optimize it in future without breaking change
swc_visit:
- Apply transforms for vector in-place
- Apply transforms for box in-place
2020-08-19 01:29:49 +09:00
Bartek Iwańczuk
7a13aabeb7
remove codegen::Handlers ( #974 )
2020-08-17 21:09:12 +09:00
강동윤
28398280f7
Improve spack ( #972 )
...
swd_bundler:
- Handle reexports
spack:
- Do not transform files from node_modules
2020-08-17 15:04:08 +09:00
강동윤
01aeec39ca
hygiene: No ref-ref conflict ( #963 )
...
swc_ecma_transforms:
- Allow referencing global idents even when it's injected (Closes #962 )
2020-08-14 15:08:36 +09:00
강동윤
7204b104a7
Decorators on parameter properties ( #961 )
...
swc_ecma_transforms:
- Support parameter decorators on properties without a value (#960 )
2020-08-13 23:13:21 +09:00
강동윤
a62af5f38f
Allow optional constructor property parameters ( #959 )
...
swc_ecma_transforms:
- Handle optional constructor property parameters properly (#958 )
2020-08-13 11:47:33 +09:00
강동윤
2fedf32747
swc_bundler ( #943 )
...
swc_bundler:
- Splitted from spack
swc_ecma_parser:
- Fix unexpected eof problem which occurs if log level is trace
swc_ecma_transforms:
- Fix bugs of dce pass
spack:
- Support cyclic dependencies
2020-08-12 22:18:47 +09:00
LongYinan
4ab3c58f6a
Strip TypeScript class properties without value assigned ( #956 )
...
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2020-08-11 01:58:45 +09:00
LongYinan
dde9defbe4
Fix typescript strip in class properties pass ( #954 )
...
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2020-08-10 20:33:25 +09:00
강동윤
e1f5d681e3
Fix typescript class properties pass ( #951 )
2020-08-10 01:22:15 +09:00
강동윤
1315d58059
Fix bugs ( #949 )
...
swc_ecma_parser:
- Allow `in` in class properties (#944 )
- Make `delete` with optional chaining valid (#947 )
swc_ecma_transforms:
- Add a `typescript_class_properties` pass (#930 )
2020-08-09 16:45:00 +09:00
LongYinan
26f49099aa
Fix metadata emitted in parameters decorator ( #948 )
2020-08-09 14:18:15 +09:00
LongYinan
f92516867f
Fix parameters decorator metadata ( #946 )
...
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2020-08-08 11:34:26 +09:00
강동윤
951d52ec55
Fix target, target ( #945 )
2020-08-08 01:30:15 +09:00
강동윤
0989e73a99
Metadata for typescript decorator ( #939 )
...
swc_ecma_transforms:
- Allow emitting decorator metadata (#666 , #919 )
swc:
- change order of passes to allow decorator using type informations
2020-08-06 21:23:34 +09:00
강동윤
969fe6ec32
Spack ( #937 )
...
spack:
- Always inline `NODE_ENV` before analyzing imports
- implements conditional requires (#884 )
2020-08-06 14:55:16 +09:00
강동윤
42554d1194
Fix fixer ( #933 )
...
swc_ecma_transforms:
- fixer: Preserve paren around computed constructor (#931 )
2020-08-04 12:15:38 +09:00
강동윤
2de59759de
Reduce size ( #928 )
...
Reduce binary size and make some dependencies optional for deno
2020-08-04 01:33:23 +09:00
강동윤
d2b8916f9f
Fix more typescript bugs ( #924 )
...
swc_ecma_parser:
- Fix parsing of binding identifier `await`
swc_ecma_transforms:
- More tests for typescript::strip
- Handle export declare class properly
- Remove declared variables
- Fix enums in if statement
- Fix sequence expression in class member key
- Fix await in extend-clause
- Fix optional array pattern
- Fix optional object pattern
2020-08-02 15:06:22 +09:00
강동윤
db0a56514d
Remove TsIndexSignature from typescript::strip ( #922 )
2020-08-01 21:32:11 +09:00
강동윤
0ac55ae68b
Improve ux for rust users ( #909 )
...
testing:
- Remove dependency on relative_path
swc_common:
- Span's byte positions are now self-contained and `GLOBALS` is not required while parsing.
- Changed `Comments` into a trait.
- Provide single-threaded implementation of `Comments`
- Cargo feature `tty-emiiter` (To remove tty related stuffs )
- Cargo feature `sourcemap` (To remove sourcemap for web assets)
- Removed dependency on dashmap
swc_ecma_parser:
- No duplicated comments.
- Removed dependency on once_cell and regex
- Add a test suite to visualize and test span of nodes.
swc_ecma_utils:
- Removed dependency on parser
swc:
- Remove dependency on derive_more and path-clean
- Add multi-threaded implementation of `Comments`
swc_ecmascript:
- A new crate contains `ast`, `codegen`, `parser`, `utils`, `visit`.
2020-07-31 18:49:07 +09:00
Bartek Iwańczuk
9cb32cbb75
fix: readonly is not stripped from private prop ( #916 )
...
swc_ecma_codegen:
- Fix printing logic of literals and template literals
- Fix printing of hex
swc_ecma_parser:
- Track raw string correctly
swc_ecma_transforms:
- typescript: Handle class properties (readonly)
- typescript: Handle enums inside function
Co-authored-by: 강동윤 <kdy1997.dev@gmail.com>
2020-07-30 22:40:43 +09:00
강동윤
de1f967d32
Store span of ?. in an optional chaining expression ( #907 )
...
Add OptChainExpr.question_dot_token
2020-07-28 02:15:04 +09:00
강동윤
891092caf2
Fix typescript stripper ( #905 )
...
swc_ecma_codegen:
- Fix codegen of optional catch parameters (#904 )
swc_ecma_transforms:
- Fix for nested catch clause
2020-07-28 00:55:28 +09:00
강동윤
ea885df521
Fix bugs ( #901 )
...
swc_ecma_parser:
- Accept `export type * from '../typings'` (#896 )
swc_ecma_transforms:
- Ensure that swc does not duplicate classes (#879 )
2020-07-27 20:21:52 +09:00
강동윤
53b09aa356
Fix decorators ( #899 )
...
swc_ecma_transforms:
- typescript::strip: Preserve a class property if it has decorators
- decorators::legacy: Implement parameter decorator.
2020-07-26 17:07:24 +09:00
강동윤
a1d33d023a
Improve ux using swc as a rust library ( #893 )
...
swc_ecma_parser:
- Improve parser's error reporting story
- Replace `Session`, `Handler`, `Emitter` with Parser.take_errors()
- Expose `Error`
- Remove useless lifetime parameters
2020-07-25 20:26:04 +09:00
강동윤
c7a5d5fef9
Fix class hygiene issue related to class properties ( #892 )
...
swc_ecma_transforms:
- fixed hygiene bug of class_properties pass
2020-07-24 22:02:29 +09:00
강동윤
9b8bfb2455
Use stable rustc ( #886 )
2020-07-24 02:18:22 +09:00
강동윤
c0917839a5
Add empty to class member ( #875 )
2020-07-05 20:10:33 +09:00
강동윤
f500e9528c
Parser for TypeScript 4.0 ( #867 )
...
- Allow rest in non-last elements in tuple type
- Allow labelled ts type element in tuple type
- More operators
2020-06-29 16:23:33 +09:00
강동윤
fe260a02e2
ES2020 ( #855 )
...
Adapt es2020. API is not changed, but config for merged proposals are now noop.
2020-06-20 15:09:57 +09:00
강동윤
92ce023171
Handle catch parameters in regenerator ( #854 )
2020-06-18 23:11:06 +09:00
강동윤
ff440157a0
Fix regenerator ( #851 )
...
swc_ecma_transforms:
- Fix regenerator scoping issue.
2020-06-18 17:04:49 +09:00
강동윤
66d42adf7e
spack: modules ( #848 )
...
spack:
- Better es6 module detection
- Recursive merging
- Support for common js modules
- Support for node js core modules
- Inject helpers
swc_ecma_transforms:
- Fix dce
2020-06-17 23:48:34 +09:00
강동윤
31020e46d8
spack: enhancement ( #845 )
...
- Handle modules (via swcrc)
- swc.bundle([conf1, conf2])
- Correct chunking
2020-06-15 23:28:15 +09:00