3.0.0
This milestone focuses on the rewrite of the application. We're moving from TypeScript to Golang for many reasons.
Performance
The typescript version is extremely slow in its executable format. It takes on average 3.5 seconds for the code execution to even get to our code. That is unacceptable.
Aside from the startup concerns, Typescript isn't multi-threa…
This milestone focuses on the rewrite of the application. We're moving from TypeScript to Golang for many reasons.
Performance
The typescript version is extremely slow in its executable format. It takes on average 3.5 seconds for the code execution to even get to our code. That is unacceptable.
Aside from the startup concerns, Typescript isn't multi-threaded which means that we can't reliably speed up the work when you're trying to download/check/verify multiple mods
Distribution
Packaging nodejs (typescript) applications into executables for all platforms has never been simple and it doesn't seem like it's getting better any time soon. The library that we used to provide the packages has been deprecated without any meaningful alternatives. Sure, Node is introducing something that might work in a few years time but that doesn't help us now.
Why go?
Simply put, Golang solves both of the problems above
Any fixes for 3.0?
Yes! The current typescript version is little more than a proof of concept and it was built by guessing what the expected features would be like. With that experience, building the golang version is much more directed and set up in a way that can enable better and faster feature development.
Where's the code?
It's here in the go
branch.
When?
Yes.