-
Notifications
You must be signed in to change notification settings - Fork 500
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore: bump oxc to v0.21.0 #1656
Conversation
✅ Deploy Preview for rolldown-rs canceled.
|
crates/rolldown/tests/fixtures/deconflict/wrapped_esm_default_function/artifacts.snap
Show resolved
Hide resolved
crates/rolldown/tests/fixtures/deconflict/decl_nested_assign_pattern/artifacts.snap
Show resolved
Hide resolved
Benchmarks Rust
|
crates/rolldown/tests/fixtures/cjs_compat/reexport_commonjs/artifacts.snap
Show resolved
Hide resolved
crates/rolldown/tests/esbuild/loader/auto_detect_mime_type_from_extension/artifacts.snap
Show resolved
Hide resolved
CodSpeed Performance ReportMerging #1656 will improve performances by 6.1%Comparing Summary
Benchmarks breakdown
|
crates/rolldown/tests/esbuild/splitting/dynamic_and_not_dynamic_es6_into_es6/artifacts.snap
Show resolved
Hide resolved
c()?.foo(x); | ||
d().foo?.(x); | ||
e()?.foo?.(x); | ||
(a()).foo; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
bad case.
crates/rolldown/tests/esbuild/dce/disable_tree_shaking/artifacts.snap
Outdated
Show resolved
Hide resolved
Overall it looks good except some bad cases in |
The node tests are difficult to find out why it fails, and I'm wondering why we don't print out the |
Looks like tests on vitest are all passed. It's just one failed in rollup tests: https://github.com/rolldown/rolldown/actions/runs/9985933904/job/27597619752?pr=1656. |
Please see https://github.com/rolldown/rolldown/actions/runs/9985756953/job/27597155926 |
Run
This one needs to be investigate. I'll take look now. |
I already fixed it. 51701d3 |
I found the cause of the failed rollup test. Not sure how to describle it. |
Could you tell me if it is caused by |
let o = {
f() {
assert.ok(this !== o);
}
};
(1, o.f)();
(1, o.f)``;
(true && o.f)();
(true && o.f)``;
(true ? o.f : false)();
(true ? o.f : false)``; is bundled to let o = {f() {
assert.ok(this !== o);
}};
(1, o.f)();
(1, o.f)``;
o.f();
o.f``;
o.f();
o.f``;
is not the same as
We used
to simplify expressions. I guess this will cause
become
which is still
. But this PR oxc finally printed to
which is wrong. Not sure if we should fix it in the See the output of esbuld
|
This is the main branch output let o = {f() {
assert.ok(this !== o);
}};
(1, o.f)();
(1, o.f)``;
(true && o.f)();
(true && o.f)``;
(true ? o.f : false)();
(true ? o.f : false)``; So it seems we passed this rollup test because we didn't support simplify these expressions before. So they keep the semantics. |
This is a classic one. Esbuild has the issue before. evanw/esbuild#2610 |
From the description, it looks like the bug comes from
Haha, The issue author is also you. Let's fix it in the next patch |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!
Description
The changelog is here. Most of the snapshots changed due to
codegen
printing double quotes by default.Also, in this version, we have aligned the ts ast scope with TypeScript. Many ignored ts tests may have been resolved.