-
-
Notifications
You must be signed in to change notification settings - Fork 13
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(draft): switch to Rolldown #11
Conversation
commit:
|
would not recommend using extensionless imports. why switch to rolldown now, is it solving an issue you have with rollup? |
let me preface by saying that this pr isn't a guarantee or commitment that we'll be adding rolldown. we're just exploring to see if we can get it to work and if it's a good fit
i very much agree, i'm just trying to get things to work atm. i'm also not in a rush in converting every import path to using a
a few reasons:
|
Amazing! Just tried this out locally, and it's indeed much faster. But at least for me the timing is not as good as on your end. I'm going down from about 8 seconds to 1.6 seconds, while spending about 850ms on I find it interesting that there are so drastic differences between build times. Looks like ci is also taking a bit longer than a second. Are your times potentially based on Edit: Not sure if im blind, but it really is not printing the package name / directory it's currently working on. Couldnt find an issue in their repo either. |
for me it goes from 4s to 0.9s for An alternative could be to allow local installation in devDependencies so it profits from shared deps. |
however i have some reservations against using rolldown to build sv while it is still under rapid prerelease development. Unless we have tests that ensure the output is always correct and we don't accidentally release a version of sv that is broken due to a change in rolldown, this would be very risky |
I clearly have the slowest computer 😆 Mine went from 16.6s to 3.7s. Though a majority of that was from:
Perhaps we could just dynamically import that script rather than creating a child process? |
ah yeah, the original times were based off the
in both cases, i excluded the
calling it directly would definitely be ideal, though we'll need to hoist up edit: or we could expose the scripts by adding a new export condition to the |
this PR is starting to have too many conflicts to handle, which is fine. in the future, if/when we decide to switch to Rolldown, it'll be nice to have this as a reference |
Happen to saw this PR. Happy to share some updates and thoughts.
This is supported in nightly version.
This is solved too. We now polyfill
We have a builtin plugin to do it. But not sure if it fits this use case.
Yeah. Watcher is supported.
Yeah. This is a very legit worry. We have done some process to ensure correctness, such as that rolldown is currently built by itself for every commit and run all tests. We are planning a 1.0.0 beta release this month and certainly we would have a ecosystem CI to run before publishing any new version. The ecosystem CI will clone the repo that uses rolldown, run the build command and test command. Not intend to pushing anything. But if you decide to switched to rolldown, we surely will add this repo as a part of ecosystem CI. |
This PR replaces Rollup for Rolldown. Currently a WIP, but it's in a functional state (locally).
Notes
.js
extensions to reference a TS file. Using a.ts
extension seems to work instead, but for now, I just removed all extensionsrequire
calls into ESM imports at this time (tracking: [Feature Request]: Support transforming CJSrequire
calls into ESM imports rolldown/rolldown#2041)TODO
dedent
into malformed code (it's being externalized for now)ast-manipulation
andast-tooling
directly intocore