-
-
Notifications
You must be signed in to change notification settings - Fork 60
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
[FEATURE] Investigate bun if it's right for glee #794
Comments
Looks interesting, were you able to create a build using bun, I tried to create a build of glee and it didn't work, do we have to update the codebase to use bun? |
@Souvikns I am trying to see if #795 is feasible I used I used Bun alongside its WebSockets implementation with glee. (doing (almost) all of the things that Glee does, including message payload validation, headers validation, query validation, and other things...) This is what I got: using
|
My only concern is that we won't be using what our users will be using, i.e., npm. So we won't be able to feel the pain they feel and, therefore, we'll not solve it for them. |
bun has its own |
So our users would have to use Bun as well? They could not use npm? |
@fmvilas
No, If we want to use Bun's WebSocket and HTTP server implementation and typescript support, then we have to drop We can still use it as a test runner and a package manager with Node and it will run on Node.js (Which isn't that easy to justify, they are supposed to be super fast though.). I am strongly in favour of going all the way and dropping Node.js. Not sure if it would be a deal breaker for our user. |
First of all, we need to find out this. We need to be pretty sure it won't compromise our users and they could continue with npm, pnpm, etc.
Watch out, we shouldn't be dropping Node.js support because that's what the majority of our users are using. Big majority actually. Probably around 99%. I know you're getting excited about Bun and its results but Oven (the creators of Bun) is a company backed by VCs. That will put a lot of pressure on them to monetize their users and it's not clear how they'll do it so I'd be careful to quickly jump on it. Also, we're an open source project in an open governance community. Don't you think we should try to support the other open source projects (Node.js) whenever possible? I know it's a lot of an opinion but that counts a lot IMHO.
I would not dismiss this point or take it lightly. It's highly important, especially now that we have a DX working group. How are we gonna make sure our users have a great user experience if don't get to experience the same as them? I'm not a maintainer and you guys can decide whatever you want but if you asked me, this should be a big "no" for now. I'd wait a few more years and see where this Bun trend is going to instead of jumping quickly on the bandwagon of the excitement. |
@fmvilas valid points. gonna revisit this idea in a while. 🙇 |
Thanks for reconsidering it, @KhudaDad414 🙏 |
FWIW, my two cents are to tread lightly with Bun still. As @fmvilas highlights its VC backed so there are some risks swimming around in all those proposed performance and DX gains. They may be forced to monetize in a way that makes usage costs prohibitive to "less than enterprise" teams. If they are forced to build a walled-garden to survive and maximize investor returns then it would put this project at risk too and minimizing the market share of who could use Glee. Ultimately, forcing this project to monetize in a way that isn't "open". You still can monetize with sponsorship, professional consulting, and other methods like cloud hosting platforms but I feel like that should be something you can do "for" the community not in spite of it. I am also really excited about Bun and the current intentions of the project ecosystem based on what I've heard and some preliminary testing. But the reality is they have about 10+ yrs of bias towards node.js and big corporations (which adopt changes very slowly) have already committed with large code-bases. I think Bun needs big corp blessings to get swaps in critical mass for it to really take off and usurp nodejs. But, again unless they drop the VC somehow I'm not sure this would really happen in a productive way that benefits the community at large. but i'm no fortune teller so who knows 🤷 |
Why do we need this improvement?
some of the features that bun provides seems to be the tool for glee.
Some reasons that I think bun would be a great choice for us.
How will this change help?
It will help make glee more stable and more developer friendly.
Screenshots
No response
How could it be implemented/designed?
by using bun as a package-manager, runtime and tester.
🚧 Breaking changes
CI/CD pipeline might not work with bun.
👀 Have you checked for similar open issues?
🏢 Have you read the Contributing Guidelines?
Are you willing to work on this issue?
Yes I am willing to submit a PR!
The text was updated successfully, but these errors were encountered: