Skip to content

Commit

Permalink
fix(es/modules): Resolve jsc.paths for export alls (#6170)
Browse files Browse the repository at this point in the history
  • Loading branch information
magic-akari committed Oct 16, 2022
1 parent c3ba51f commit 82cca67
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 0 deletions.
13 changes: 13 additions & 0 deletions crates/swc_ecma_transforms_module/src/rewriter.rs
Expand Up @@ -69,4 +69,17 @@ where
src.value = new;
}
}

fn visit_mut_export_all(&mut self, n: &mut ExportAll) {
let mut src = &mut n.src;

let new = self
.resolver
.resolve_import(&self.base, &src.value)
.with_context(|| format!("failed to resolve import `{}`", src.value))
.unwrap();

src.raw = None;
src.value = new;
}
}
@@ -0,0 +1,3 @@
import "@/a.js";
export {} from "@/a.js";
export * from "@/a.js";
@@ -0,0 +1,5 @@
{
"@/*": [
"./src/*"
]
}
@@ -0,0 +1,3 @@
import "./src/a.js";
export { } from "./src/a.js";
export * from "./src/a.js";

1 comment on commit 82cca67

@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: 82cca67 Previous: 083924c Ratio
es/full/minify/libraries/antd 1819097867 ns/iter (± 37344745) 1790770835 ns/iter (± 15758529) 1.02
es/full/minify/libraries/d3 397193444 ns/iter (± 12798452) 377965173 ns/iter (± 7018534) 1.05
es/full/minify/libraries/echarts 1518957566 ns/iter (± 28281709) 1491904052 ns/iter (± 18897846) 1.02
es/full/minify/libraries/jquery 100496595 ns/iter (± 1669211) 96999478 ns/iter (± 2302479) 1.04
es/full/minify/libraries/lodash 119676625 ns/iter (± 6779050) 109870488 ns/iter (± 3407399) 1.09
es/full/minify/libraries/moment 63734401 ns/iter (± 8934155) 56398296 ns/iter (± 1209064) 1.13
es/full/minify/libraries/react 20815871 ns/iter (± 1445749) 19221308 ns/iter (± 115850) 1.08
es/full/minify/libraries/terser 357477904 ns/iter (± 24143377) 295334183 ns/iter (± 4411147) 1.21
es/full/minify/libraries/three 579280498 ns/iter (± 13803513) 544078083 ns/iter (± 13934891) 1.06
es/full/minify/libraries/typescript 3601685385 ns/iter (± 153898336) 3310862525 ns/iter (± 23611752) 1.09
es/full/minify/libraries/victory 855462664 ns/iter (± 44499913) 789108258 ns/iter (± 12448924) 1.08
es/full/minify/libraries/vue 157871522 ns/iter (± 10208121) 139771623 ns/iter (± 3068755) 1.13
es/full/codegen/es3 35131 ns/iter (± 2654) 33313 ns/iter (± 477) 1.05
es/full/codegen/es5 34766 ns/iter (± 3059) 33287 ns/iter (± 897) 1.04
es/full/codegen/es2015 35096 ns/iter (± 3144) 33371 ns/iter (± 991) 1.05
es/full/codegen/es2016 35200 ns/iter (± 4656) 33343 ns/iter (± 1266) 1.06
es/full/codegen/es2017 36730 ns/iter (± 4139) 33368 ns/iter (± 540) 1.10
es/full/codegen/es2018 34810 ns/iter (± 1482) 33334 ns/iter (± 391) 1.04
es/full/codegen/es2019 34616 ns/iter (± 1596) 33313 ns/iter (± 494) 1.04
es/full/codegen/es2020 34336 ns/iter (± 996) 33348 ns/iter (± 790) 1.03
es/full/all/es3 225673847 ns/iter (± 17130887) 187130219 ns/iter (± 6279505) 1.21
es/full/all/es5 216276535 ns/iter (± 24263741) 177214513 ns/iter (± 5472205) 1.22
es/full/all/es2015 171771493 ns/iter (± 12140166) 142400567 ns/iter (± 3855748) 1.21
es/full/all/es2016 169670272 ns/iter (± 20609163) 142229148 ns/iter (± 4434544) 1.19
es/full/all/es2017 171750205 ns/iter (± 17649897) 140613525 ns/iter (± 3614730) 1.22
es/full/all/es2018 169998586 ns/iter (± 17997768) 139373130 ns/iter (± 3499268) 1.22
es/full/all/es2019 166531455 ns/iter (± 20714911) 138686407 ns/iter (± 4745211) 1.20
es/full/all/es2020 159488626 ns/iter (± 20810338) 134024385 ns/iter (± 3484483) 1.19
es/full/parser 739606 ns/iter (± 32777) 713356 ns/iter (± 17055) 1.04
es/full/base/fixer 27431 ns/iter (± 1548) 26178 ns/iter (± 1063) 1.05
es/full/base/resolver_and_hygiene 97994 ns/iter (± 5242) 92578 ns/iter (± 4175) 1.06
serialization of ast node 209 ns/iter (± 83) 208 ns/iter (± 2) 1.00
serialization of serde 213 ns/iter (± 9) 209 ns/iter (± 2) 1.02

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

Please sign in to comment.