-
Notifications
You must be signed in to change notification settings - Fork 2.8k
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
minimal Bun build? #2541
Comments
around 50% of the binary size on Linux is libicu which JavaScriptCore needs |
Out of curiosity. Do you believe UTF++ could be an alternative to libicu? In addition to being lightweight, it is about 2x faster than libicu:
|
If it correctly implements the same interface/symbols for functions used by JavaScriptCore then definitely open to trying alternatives |
I apologize, because my research wasn't profound enough and UTF++ probably won't suit Bun's use case. |
Perhaps Bun could provide a trimmed build using something like Nodes https://github.com/nodejs/node/tree/main/tools/icu:
|
There is also ICU4x which might be worth looking into. It is supposed to be modular so it can be used in resource contained environments. https://github.com/unicode-org/icu4x |
Wow, thanks for the suggestion, @jeltz . I read the announcing article of ICU4X, and it seems a good candidate.
|
This comment has been minimized.
This comment has been minimized.
Seems good, hope it gets implemented. |
I wonder how much smaller it is tho. |
What is the problem this feature would solve?
Bun binary big
What is the feature you are proposing to solve the problem?
are there any plans to make Bun itself strippable of features that are unused by some set of scripts?
how much can the binary shrink if it only included JSC and things required for e.g. sqlite3, fs, tcp/http. how small can it be with just stdout support:
console.log("hello world!")
?What alternatives have you considered?
Node.js
Tauri
Neutralinojs
NW.js
Electron
The text was updated successfully, but these errors were encountered: