Skip to content

Commit

Permalink
feat(swc_core): Reexport swc_typescript (#9092)
Browse files Browse the repository at this point in the history
  • Loading branch information
kdy1 committed Jun 21, 2024
1 parent 5625bd6 commit a2645e2
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 0 deletions.
1 change: 1 addition & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 4 additions & 0 deletions crates/swc_core/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,9 @@ ecma_plugin_transform = ["common_plugin_transform", "__ecma_plugin_transform"]
# Use `stacker` to avoid stack overflow.
stacker = ["swc_ecma_parser/stacker", "swc_ecma_utils/stacker"]


typescript = ["swc_typescript"]

# Host features to enable plugin `runner` runtime.
# native feature is for the host environment does not have, or cannot access
# to the wasm runtime (i.e cli, or @swc/core node bindings).
Expand Down Expand Up @@ -375,6 +378,7 @@ swc_plugin_macro = { optional = true, version = "0.9.16", path =
swc_plugin_proxy = { optional = true, version = "0.44.0", path = "../swc_plugin_proxy" }
swc_trace_macro = { optional = true, version = "0.1.3", path = "../swc_trace_macro" }
swc_transform_common = { optional = true, version = "0.1.0", path = "../swc_transform_common" }
swc_typescript = { optional = true, version = "0.1.1", path = "../swc_typescript" }
testing = { optional = true, version = "0.36.0", path = "../testing" }
# TODO: eventually swc_plugin_runner needs to remove default features
swc_plugin_runner = { optional = true, version = "0.109.0", path = "../swc_plugin_runner", default-features = false }
Expand Down
6 changes: 6 additions & 0 deletions crates/swc_core/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,12 @@ pub mod transform_common {
pub use swc_transform_common::*;
}

#[cfg(feature = "typescript")]
#[cfg_attr(docsrs, doc(cfg(feature = "typescript")))]
pub mod typescript {
pub use swc_typescript::*;
}

// swc_bundler
#[cfg(feature = "__bundler")]
#[cfg_attr(docsrs, doc(cfg(feature = "__bundler")))]
Expand Down

1 comment on commit a2645e2

@github-actions
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark

Benchmark suite Current: a2645e2 Previous: 5a2c968 Ratio
es/full/bugs-1 274372 ns/iter (± 2689) 294007 ns/iter (± 4662) 0.93
es/full/minify/libraries/antd 1819356012 ns/iter (± 51564054) 1999641574 ns/iter (± 47373344) 0.91
es/full/minify/libraries/d3 347608651 ns/iter (± 3792802) 370415517 ns/iter (± 7159203) 0.94
es/full/minify/libraries/echarts 1536259800 ns/iter (± 22837903) 1707570102 ns/iter (± 21809332) 0.90
es/full/minify/libraries/jquery 103416233 ns/iter (± 732615) 104690008 ns/iter (± 1082518) 0.99
es/full/minify/libraries/lodash 114984289 ns/iter (± 638250) 115258485 ns/iter (± 2053767) 1.00
es/full/minify/libraries/moment 59674954 ns/iter (± 161444) 60436714 ns/iter (± 296776) 0.99
es/full/minify/libraries/react 18396448 ns/iter (± 33950) 18522291 ns/iter (± 74732) 0.99
es/full/minify/libraries/terser 278681060 ns/iter (± 2164500) 285306647 ns/iter (± 2330879) 0.98
es/full/minify/libraries/three 479649193 ns/iter (± 4515078) 516452213 ns/iter (± 16992593) 0.93
es/full/minify/libraries/typescript 3247655750 ns/iter (± 34853670) 3398390657 ns/iter (± 65666499) 0.96
es/full/minify/libraries/victory 767919560 ns/iter (± 8615789) 834692687 ns/iter (± 92163945) 0.92
es/full/minify/libraries/vue 147172646 ns/iter (± 2230565) 145822392 ns/iter (± 1258235) 1.01
es/full/codegen/es3 59563 ns/iter (± 674) 58034 ns/iter (± 150) 1.03
es/full/codegen/es5 59623 ns/iter (± 198) 58479 ns/iter (± 223) 1.02
es/full/codegen/es2015 59628 ns/iter (± 141) 58544 ns/iter (± 396) 1.02
es/full/codegen/es2016 59598 ns/iter (± 207) 58507 ns/iter (± 153) 1.02
es/full/codegen/es2017 60028 ns/iter (± 347) 58542 ns/iter (± 178) 1.03
es/full/codegen/es2018 59626 ns/iter (± 146) 58780 ns/iter (± 2086) 1.01
es/full/codegen/es2019 59965 ns/iter (± 109) 58417 ns/iter (± 321) 1.03
es/full/codegen/es2020 59752 ns/iter (± 135) 58283 ns/iter (± 210) 1.03
es/full/all/es3 161016545 ns/iter (± 750226) 161666588 ns/iter (± 3620159) 1.00
es/full/all/es5 155947029 ns/iter (± 767895) 155507312 ns/iter (± 478232) 1.00
es/full/all/es2015 115955483 ns/iter (± 1267078) 115251148 ns/iter (± 1177664) 1.01
es/full/all/es2016 114828487 ns/iter (± 632529) 114671898 ns/iter (± 1362479) 1.00
es/full/all/es2017 116609489 ns/iter (± 1078500) 114866162 ns/iter (± 1099595) 1.02
es/full/all/es2018 113819612 ns/iter (± 1238766) 111840454 ns/iter (± 2377999) 1.02
es/full/all/es2019 111461737 ns/iter (± 716633) 111106117 ns/iter (± 741202) 1.00
es/full/all/es2020 107481010 ns/iter (± 1123716) 107559951 ns/iter (± 671331) 1.00
es/full/parser 462252 ns/iter (± 2252) 459839 ns/iter (± 3460) 1.01
es/full/base/fixer 15858 ns/iter (± 158) 15477 ns/iter (± 89) 1.02
es/full/base/resolver_and_hygiene 81642 ns/iter (± 355) 81048 ns/iter (± 215) 1.01
serialization of serde 269 ns/iter (± 2) 268 ns/iter (± 9) 1.00
css/minify/libraries/bootstrap 22231252 ns/iter (± 161008) 22303250 ns/iter (± 308984) 1.00
css/visitor/compare/clone 1368900 ns/iter (± 10220) 1387452 ns/iter (± 13790) 0.99
css/visitor/compare/visit_mut_span 1501188 ns/iter (± 15491) 1514345 ns/iter (± 5294) 0.99
css/visitor/compare/visit_mut_span_panic 1508242 ns/iter (± 14984) 1536371 ns/iter (± 30731) 0.98
css/visitor/compare/fold_span 2006483 ns/iter (± 8219) 2021940 ns/iter (± 18448) 0.99
css/visitor/compare/fold_span_panic 2148566 ns/iter (± 4412) 2153013 ns/iter (± 12076) 1.00
css/lexer/bootstrap_5_1_3 3431798 ns/iter (± 89589) 3443608 ns/iter (± 80174) 1.00
css/lexer/foundation_6_7_4 2790602 ns/iter (± 1214) 2786879 ns/iter (± 3593) 1.00
css/lexer/tailwind_3_1_1 534019 ns/iter (± 1485) 533012 ns/iter (± 1673) 1.00
css/parser/bootstrap_5_1_3 16109973 ns/iter (± 229342) 16037168 ns/iter (± 87865) 1.00
css/parser/foundation_6_7_4 12987021 ns/iter (± 65690) 12895008 ns/iter (± 142758) 1.01
css/parser/tailwind_3_1_1 2572441 ns/iter (± 15069) 2538707 ns/iter (± 3138) 1.01
es/codegen/colors 732507 ns/iter (± 401605) 725280 ns/iter (± 396166) 1.01
es/codegen/large 3060132 ns/iter (± 1620687) 3015781 ns/iter (± 1592336) 1.01
es/codegen/with-parser/colors 41272 ns/iter (± 538) 42066 ns/iter (± 678) 0.98
es/codegen/with-parser/large 449446 ns/iter (± 1628) 453873 ns/iter (± 2448) 0.99
es/minify/libraries/antd 1484108622 ns/iter (± 29962883) 1399245017 ns/iter (± 28517569) 1.06
es/minify/libraries/d3 284426007 ns/iter (± 3510652) 281898230 ns/iter (± 7248015) 1.01
es/minify/libraries/echarts 1189545514 ns/iter (± 10885703) 1167041879 ns/iter (± 8967828) 1.02
es/minify/libraries/jquery 82028368 ns/iter (± 290218) 82013657 ns/iter (± 241780) 1.00
es/minify/libraries/lodash 103985924 ns/iter (± 393076) 104059639 ns/iter (± 162251) 1.00
es/minify/libraries/moment 47959836 ns/iter (± 121104) 48145242 ns/iter (± 1026534) 1.00
es/minify/libraries/react 16115924 ns/iter (± 10244) 16132101 ns/iter (± 201835) 1.00
es/minify/libraries/terser 218510559 ns/iter (± 879984) 216484897 ns/iter (± 312541) 1.01
es/minify/libraries/three 370126627 ns/iter (± 5385011) 363985578 ns/iter (± 1335089) 1.02
es/minify/libraries/typescript 2718031924 ns/iter (± 44590258) 2698973642 ns/iter (± 16091848) 1.01
es/minify/libraries/victory 593395178 ns/iter (± 8148586) 569223309 ns/iter (± 4378686) 1.04
es/minify/libraries/vue 120798538 ns/iter (± 250385) 121141962 ns/iter (± 474202) 1.00
es/visitor/compare/clone 1746267 ns/iter (± 8221) 1763769 ns/iter (± 5418) 0.99
es/visitor/compare/visit_mut_span 2065269 ns/iter (± 21243) 2092373 ns/iter (± 5664) 0.99
es/visitor/compare/visit_mut_span_panic 2086387 ns/iter (± 54190) 2094071 ns/iter (± 33582) 1.00
es/visitor/compare/fold_span 2798077 ns/iter (± 4457) 2830671 ns/iter (± 4696) 0.99
es/visitor/compare/fold_span_panic 2821191 ns/iter (± 25591) 2864154 ns/iter (± 47722) 0.98
es/lexer/colors 9063 ns/iter (± 39) 8919 ns/iter (± 29) 1.02
es/lexer/angular 4694525 ns/iter (± 166068) 4701475 ns/iter (± 21798) 1.00
es/lexer/backbone 619163 ns/iter (± 3603) 611689 ns/iter (± 10146) 1.01
es/lexer/jquery 3467489 ns/iter (± 37773) 3428306 ns/iter (± 4146) 1.01
es/lexer/jquery mobile 5139706 ns/iter (± 14773) 5122639 ns/iter (± 26641) 1.00
es/lexer/mootools 2713829 ns/iter (± 3873) 2682915 ns/iter (± 31943) 1.01
es/lexer/underscore 509520 ns/iter (± 1476) 503214 ns/iter (± 661) 1.01
es/lexer/three 15612825 ns/iter (± 28606) 15398573 ns/iter (± 89070) 1.01
es/lexer/yui 2734063 ns/iter (± 7602) 2765592 ns/iter (± 25215) 0.99
es/lexer/cal-com 12564517 ns/iter (± 71554) 12242185 ns/iter (± 15774) 1.03
es/lexer/typescript 86980548 ns/iter (± 759894) 85425509 ns/iter (± 600861) 1.02
es/parser/colors 23657 ns/iter (± 212) 23981 ns/iter (± 997) 0.99
es/parser/angular 12333011 ns/iter (± 68738) 12317893 ns/iter (± 146929) 1.00
es/parser/backbone 1821149 ns/iter (± 10633) 1830397 ns/iter (± 7735) 0.99
es/parser/jquery 10026754 ns/iter (± 204542) 10005916 ns/iter (± 58271) 1.00
es/parser/jquery mobile 15039536 ns/iter (± 92952) 15086278 ns/iter (± 112807) 1.00
es/parser/mootools 7820261 ns/iter (± 30348) 7803909 ns/iter (± 8379) 1.00
es/parser/underscore 1587391 ns/iter (± 3941) 1586913 ns/iter (± 27148) 1.00
es/parser/three 42842613 ns/iter (± 330677) 43729015 ns/iter (± 1637288) 0.98
es/parser/yui 7338027 ns/iter (± 35452) 7338101 ns/iter (± 40654) 1.00
es/parser/cal-com 40731040 ns/iter (± 604449) 39788917 ns/iter (± 938270) 1.02
es/parser/typescript 269297909 ns/iter (± 5540807) 273994664 ns/iter (± 2399946) 0.98
es/preset-env/usage/builtin_type 137417 ns/iter (± 34658) 142164 ns/iter (± 34318) 0.97
es/preset-env/usage/property 16429 ns/iter (± 116) 17020 ns/iter (± 72) 0.97
es/resolver/typescript 103740430 ns/iter (± 2426222) 102532673 ns/iter (± 1872122) 1.01
es/fixer/typescript 82966679 ns/iter (± 3039577) 84308749 ns/iter (± 3778499) 0.98
es/hygiene/typescript 186000771 ns/iter (± 1269621) 183896474 ns/iter (± 3699202) 1.01
es/resolver_with_hygiene/typescript 309212510 ns/iter (± 4322516) 296984617 ns/iter (± 2810198) 1.04
es/visitor/base-perf/module_clone 57707 ns/iter (± 991) 56628 ns/iter (± 829) 1.02
es/visitor/base-perf/fold_empty 60409 ns/iter (± 957) 59480 ns/iter (± 555) 1.02
es/visitor/base-perf/fold_noop_impl_all 60236 ns/iter (± 464) 60254 ns/iter (± 479) 1.00
es/visitor/base-perf/fold_noop_impl_vec 60224 ns/iter (± 811) 60719 ns/iter (± 770) 0.99
es/visitor/base-perf/boxing_boxed_clone 60 ns/iter (± 0) 59 ns/iter (± 0) 1.02
es/visitor/base-perf/boxing_unboxed_clone 47 ns/iter (± 0) 49 ns/iter (± 0) 0.96
es/visitor/base-perf/boxing_boxed 107 ns/iter (± 0) 110 ns/iter (± 0) 0.97
es/visitor/base-perf/boxing_unboxed 81 ns/iter (± 0) 85 ns/iter (± 0) 0.95
es/visitor/base-perf/visit_contains_this 2592 ns/iter (± 25) 2569 ns/iter (± 42) 1.01
es/base/parallel/resolver/typescript 2518579352 ns/iter (± 136832988) 2247526882 ns/iter (± 107218303) 1.12
es/base/parallel/hygiene/typescript 3179579808 ns/iter (± 47604266) 3191943088 ns/iter (± 83244799) 1.00
babelify-only 489289 ns/iter (± 9234) 490894 ns/iter (± 3503) 1.00
parse_and_babelify_angular 41888015 ns/iter (± 2216356) 45247766 ns/iter (± 1059166) 0.93
parse_and_babelify_backbone 4432086 ns/iter (± 159400) 4475074 ns/iter (± 205835) 0.99
parse_and_babelify_jquery 28855048 ns/iter (± 375072) 30226617 ns/iter (± 621587) 0.95
parse_and_babelify_jquery_mobile 51501443 ns/iter (± 792691) 51579976 ns/iter (± 762213) 1.00
parse_and_babelify_mootools 25892231 ns/iter (± 249294) 28681018 ns/iter (± 1564679) 0.90
parse_and_babelify_underscore 3689614 ns/iter (± 13917) 3698731 ns/iter (± 10556) 1.00
parse_and_babelify_yui 25459404 ns/iter (± 1212973) 31056051 ns/iter (± 1798880) 0.82
html/minify/document/css_spec 45912522 ns/iter (± 992806) 44817693 ns/iter (± 56378) 1.02
html/minify/document/github 18295557 ns/iter (± 57323) 18030730 ns/iter (± 38560) 1.01
html/minify/document/stackoverflow 16779630 ns/iter (± 606220) 16745528 ns/iter (± 810092) 1.00
html/minify/document_fragment/css_spec 44616884 ns/iter (± 476742) 43576020 ns/iter (± 55678) 1.02
html/minify/document_fragment/github 17887001 ns/iter (± 62455) 17693615 ns/iter (± 10969) 1.01
html/minify/document_fragment/stackoverflow 16284644 ns/iter (± 112610) 16278896 ns/iter (± 11081) 1.00
html/document/visitor/compare/clone 167296 ns/iter (± 2671) 167507 ns/iter (± 1192) 1.00
html/document/visitor/compare/visit_mut_span 180121 ns/iter (± 1593) 184904 ns/iter (± 1914) 0.97
html/document/visitor/compare/visit_mut_span_panic 188139 ns/iter (± 5966) 188314 ns/iter (± 5953) 1.00
html/document/visitor/compare/fold_span 230225 ns/iter (± 1451) 233119 ns/iter (± 927) 0.99
html/document/visitor/compare/fold_span_panic 281653 ns/iter (± 1474) 284606 ns/iter (± 1411) 0.99
html/document_fragment/visitor/compare/clone 168825 ns/iter (± 1758) 168085 ns/iter (± 1480) 1.00
html/document_fragment/visitor/compare/visit_mut_span 185456 ns/iter (± 896) 182710 ns/iter (± 1999) 1.02
html/document_fragment/visitor/compare/visit_mut_span_panic 188738 ns/iter (± 1255) 187936 ns/iter (± 1346) 1.00
html/document_fragment/visitor/compare/fold_span 232507 ns/iter (± 1484) 234350 ns/iter (± 1142) 0.99
html/document_fragment/visitor/compare/fold_span_panic 281964 ns/iter (± 2001) 283439 ns/iter (± 1282) 0.99
html/lexer/css_2021_spec 13098269 ns/iter (± 90128) 13021757 ns/iter (± 18096) 1.01
html/lexer/github_com_17_05_2022 4999787 ns/iter (± 8758) 5016616 ns/iter (± 6820) 1.00
html/lexer/stackoverflow_com_17_05_2022 4772339 ns/iter (± 34432) 4745055 ns/iter (± 12902) 1.01
html/parser/parser_document/css_2021_spec 26790057 ns/iter (± 212564) 26592585 ns/iter (± 165972) 1.01
html/parser/parser_document/github_com_17_05_2022 8623472 ns/iter (± 23343) 8734472 ns/iter (± 30810) 0.99
html/parser/parser_document/stackoverflow_com_17_05_2022 7551258 ns/iter (± 63146) 7616556 ns/iter (± 9199) 0.99
html/parser/parser_document_fragment/css_2021_spec 26445255 ns/iter (± 256177) 26476268 ns/iter (± 611305) 1.00
html/parser/parser_document_fragment/github_com_17_05_2022 8742487 ns/iter (± 82267) 8645934 ns/iter (± 20727) 1.01
html/parser/parser_document_fragment/stackoverflow_com_17_05_2022 7567303 ns/iter (± 37026) 7561216 ns/iter (± 8984) 1.00

This comment was automatically generated by workflow using github-action-benchmark.

Please sign in to comment.