Skip to content
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

bun install support #288

Open
bgalek opened this issue Sep 15, 2023 · 4 comments
Open

bun install support #288

bgalek opened this issue Sep 15, 2023 · 4 comments
Labels

Comments

@bgalek
Copy link

bgalek commented Sep 15, 2023

Hi! How about supporting bun?
Bun install makes our application download dependencies 80% faster, it would be cool if we could just use it as package manager!

@deepy deepy added the proposal label Sep 17, 2023
@deepy
Copy link
Member

deepy commented Sep 17, 2023

In it's current state adding another runtime is a little difficult, initially we wanted to give good entry points so that users could easily modify the functionality to support having a different runtime or package manager
We never quite got there and had to dismantle some that to properly support the configuration-cache, but if it accepts the same CLI arguments as node and npm adding would be trivial

The only problem is the download mechanism, the way it currently works is that Node is downloaded during the configuration phase which isn't ideal, and adding more work for the configuration phase is not an option
On the other hand, as bun can be installed through npm we can use it through the same mechanism as the others
i.e. when download = true you'd download Node, use bundled npm to install bun, and then bun could be used for the npmInstall task (or an equivalent named one)
And I guess also for things like BunTask, BunxTask, etc

@deepy
Copy link
Member

deepy commented Sep 17, 2023

The downside of that is that initial setup would be a lot slower than if we could just skip downloading Node in the first place
I'm currently swamped with commitments but I'll happily guide you through the process if you want to attempt adding the support

PnpmSetupTask and PnpmInstallTask is a good starting point, if you find that you want to make larger changes in the ExecRunner that's fine and appreciated, but please use a separate PR for that so we can get the initial implementation in place first

@deepy deepy added this to runtimes Sep 17, 2023
@bgalek
Copy link
Author

bgalek commented Sep 17, 2023

Thank you for sharing your opinion! I'll try to hack it on Monday - if I get any results I'll comment! If not - maybe during hacktoberfest someone could contribute! Make sure to add the required hacktoberfest labels! :)

@harrel56 harrel56 mentioned this issue Oct 3, 2023
@deepy
Copy link
Member

deepy commented Oct 23, 2023

Initial support was added in #290, there's some additional work to be done listed in #291

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: No status
Development

No branches or pull requests

2 participants