강동윤
ad23a58fed
feature: Macro for fixture testing ( #1226 )
...
testing_macros:
- Add `#[fixture]` for easier fixture testing
2020-11-22 18:14:22 +09:00
강동윤
578d64a398
Support jsx pragma ( #1015 )
...
swc_ecma_transforms
- Support jsx pragma (#107 , #838 )
2020-08-30 20:32:45 +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
강동윤
fcef201695
spack: super-fast bundler ( #825 )
...
Version is alpha as it's not complete
2020-06-13 23:09:45 +09:00
강동윤
65f2faa339
Reduce stack usage ( #776 )
2020-05-17 18:50:52 +09:00
강동윤
36aeac8639
Coverage ( #670 )
...
Add a script to calculate coverage
2020-02-16 21:06:25 +09:00
강동윤
64ed0bd801
Validate sourcemap ( #669 )
2020-02-16 16:51:42 +09:00
강동윤
05be89c198
Smaller runtime ( #631 )
...
Replace babel-runtime with regenerator-runtime
2020-02-07 11:19:23 +09:00
강동윤
44e73f5659
Coverage ( #629 )
...
Enable code coverage
2020-02-06 19:36:35 +09:00
강동윤
8e476d8a83
Make parser work identically in release mode ( #577 )
...
swc_ecma_parser:
- parser behaves identically on debug mode and release mode
swc:
- run all tests on travis ci
- use nvm on travis ci
swc_ecma_transforms:
- make async_to_generator understand hoisting
2020-01-17 18:44:51 +09:00
kdy1
15e5d9ce79
Chores ( #563 )
...
- updated README.md (open collective)
- fixed travis
2020-01-04 08:54:34 +00:00
강동윤
78daec2c14
Re-enable travis to make bors work ( #562 )
2020-01-04 15:58:21 +09:00
강동윤
c0cc2185ea
Fix ci ( #561 )
...
- line endings are normalized
- switched to github actions from travis to check forked branches
2020-01-04 13:33:25 +09:00
강동윤
6fa85b646f
preset-env ( #537 )
...
swc_ecma_preset_env:
- can inject polyfills automatically
- can apply transforms automatically
swc:
- added env config to .swcrc
2019-12-28 11:25:54 +09:00
강동윤
ac3f69acd0
Split tests to reduce compile time ( #530 )
2019-12-24 22:53:48 +09:00
강동윤
51d21af031
Fix #516
2019-12-19 13:08:52 +09:00
강동윤
332061f44d
Parser: respect jsc.target ( #507 )
...
swc:
- make parser respect `jsc.target`.
2019-12-14 18:51:08 +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
강동윤
a9d255c174
slack
2019-10-18 18:35:40 +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
강동윤
ba0c7c908c
Improve swc_ecma_trnasforms ( #127 )
...
# swc_ecma_ast
- Add PrivateName to Expr
# swc_ecma_parser
- Fix parsing of private name
# swc_ecma_transforms
## Hygiene
- It correctly tracks `BindingIdentifer` / `IdentifierReference`
- Preserve `IdentiferReference` if it conflicts with a `BindingIdentifier`
## Block scoping
- It correctly tracks `BindingIdentifer` / `IdentifierReference`
## Fixer
- It removes useless parens.
- It removes useless `IdentiferReference`s in comma expressions.
## Classes properties
- public prooperty
- private property
## Class decorators
- implemented
2019-01-29 23:56:16 +09:00
강동윤
ea610c6ded
Typescript & parser for decorators
...
swc_atoms:
- add some atoms
swc_ecma_ast:
- ast nodes for typescript
- `ClassMethod` -> `Method`, `ClassMethodKind` -> `MethodKind`
- private class method / class property
- use separate type for tagged template literals
- add `declare` field to `Decl`s
- make function body optional
swc_ecma_parser:
- rename Type to TokenContext
- support decorators
Note: error reporting for invalid decorator is not implemented yet
- merge `Config` into `Syntax`
- Use DiagnosticBuilder for error type
This is to make backtracking cheaper.
swc_ecma_transforms:
- add `strip` pass
2019-01-07 19:43:47 +09:00
강동윤
ab7d46c5bc
Es2015 ( #80 )
...
swc_common:
- implement VisitWith for &T and [T]
swc_ecma_ast:
- fix codegen of `===`
swc_ecma_parser:
- fix parsing of array pattern
swc_ecma_transforms:
- implement es2015::destructuring
- implement es2015::computed_properties
- implement es2015::duplicate_keys
- implement es2015::parameters
- fix `InjectHelper` pass
Note that getters / setters in class are not supported yet
- Run execution tests via jest
- ignore es2016::exponentation tests
2018-11-28 12:24:08 +09:00
강동윤
8b992d6401
improve travis' caching ( #75 )
2018-11-22 17:28:23 +09:00
강동윤
4e21eb160d
travis: don't cache docs
2018-11-17 18:01:29 +09:00
강동윤
67daa279d8
Use rustdoc repository for rustdoc
2018-11-16 21:17:36 +09:00
강동윤
7b56b0bc74
Improve codegen ( #57 )
...
* travis: make it faster
* better codegen
* Move enable_comments field to config
2018-11-15 21:43:04 +09:00
강동윤
5cf15cb40f
Fix tests by updating references ( #53 )
2018-11-14 21:36:37 +09:00
강동윤
56a6429fad
Documentation ( #48 )
...
Use own repository for rustdoc.
2018-11-10 19:00:26 +09:00
강동윤
bbd9ec9eb9
travis: fix doc upload ( #47 )
2018-11-10 18:15:15 +09:00
강동윤
9d7af34aab
Initial release ( #45 )
...
common:
- rename `Folder` to `Fold`
- folder.then()
- impl Fold for Box<F>
- impl Fold<T> for &mut F where F: Fold<T>
transforms:
- make Simplifier private
- organize compat
codegen:
- use `Mark` to avoid deoptimization
swc:
- upgrade rayon and use global thread pool instead
2018-11-10 17:44:35 +09:00
강동윤
eb2a2a7f15
Fix tests and lints ( #44 )
...
- Temporarilly ignored comment codegen tests.
- Split Simplify into SimplifyExpr and SimplifyStmt
- fix lints
2018-11-05 13:12:52 +09:00
강동윤
9843be331b
Disable coverage temporarily.
2018-03-02 15:10:08 +09:00
강동윤
8370b78ee0
Enable backtrace and disable incr-comp.
2018-03-01 14:16:47 +09:00
강동윤
056a11dd06
chores: cleanup for docs; no email from travis
2018-01-27 15:14:53 +09:00
강동윤
92c7defc2e
fix tests
2018-01-27 11:31:45 +09:00
강동윤
5ff4e759e5
enable travis for master to update docs
2018-01-16 11:54:42 +09:00
강동윤
1f5db00585
Don't build pull requests.
2018-01-15 11:00:02 +09:00
강동윤
1a440157fc
ignore coverage of test files
2018-01-14 19:33:57 +09:00
강동윤
e50636535c
provide --all to cargo tarpaulin
2018-01-14 19:22:53 +09:00
강동윤
9ec8856136
fix links and use sudo
2018-01-14 19:04:32 +09:00
강동윤
2700ca7c86
Add bors to prevent misktake.
...
And move reporisotry to swc-project organization.
2018-01-14 14:44:32 +09:00
강동윤
d73de6c5d8
fix typo
2018-01-13 21:23:46 +09:00
강동윤
a2dd670798
Use RUSTCFLAGS for --cfg procmacro2_semver_exempt
2018-01-13 21:20:17 +09:00
강동윤
ed6714f7fc
Drop travis-cargo
2018-01-13 21:04:15 +09:00
강동윤
3b02b27d62
groundwork for docs
...
Ignore two tests. See #8 .
Add code coverage and travis to readme.
2018-01-13 20:42:52 +09:00
강동윤
e949c40517
ECMAScript parser ( #1 )
...
- Parser and lexer for lastest ecma spec https://tc39.github.io/ecma262
- Lexer is currently very inefficient
- Use https://github.com/tc39/test262-parser-tests/ for testing.
- Implement proc-macro based ast folder and assert_eq_ignore_span! based on it.
- Some utilities for proc macro at /macros/common
2018-01-12 16:53:06 +09:00
강동윤
7e2ef3b518
Add .travis.yml
2017-12-23 10:05:19 +09:00