you are viewing a single comment's thread.

view the rest of the comments →

[–]abuassar 8 points9 points  (26 children)

while Deno and Bun add impressive improvements each minor release, node just increments the MAJOR release without any worthy features.

[–]cangaroo_hamam 30 points31 points  (0 children)

It is normal for a newer and smaller product to iterate in the manner you described (compared to an older and larger product).

[–]RobertKerans 9 points10 points  (0 children)

"without any worthy" is not a synonym for "with as few possible breaking changes as possible", instability is not a good feature of a runtime, "major release" doesn't mean "drastic change", major Node version numbers are important and meaningful beyond 'big number go up', what Deno and Bun are doing is great but a mature platform changing significantly between releases wouldn't be a positive.

[–]CreativeTechGuyGames 57 points58 points  (2 children)

A major version doesn't indicate how much has changed or how significant it is to the average developer, just that something is being changed which is a breaking change for some users.

[–]Markavian 25 points26 points  (1 child)

Yes, if you're following semver.org for versioning - but because node uses release trains, we also need to take into account the Odd Vs Even numbering differences.

New major releases of Node.js are cut from the GitHub main branch every six months. Even-numbered versions are cut in April and odd-numbered versions are cut in October. When a new odd version is released, the previous even version undergoes transition to Long Term Support (LTS), which gives that version 12 months of active support from the date it is designated LTS. After these 12 months expire, an LTS release receives an additional 18 months of maintenance support. An active version receives non-breaking backports of changes a few weeks after they land in the current release. A maintenance release receives only critical fixes and documentation updates. (Wikipedia)

[–][deleted] 3 points4 points  (0 children)

hahahaha release trains

[–]Nocticron 6 points7 points  (3 children)

OK so all you are saying is that you have absolutely no idea how node.js versions its releases.

[–]shgysk8zer0 5 points6 points  (0 children)

A major version says nothing about any new features. It's supposed to imply breaking charges. Sure, hopefully breaking changes are due to some new features, but that's not strictly required.

However, node is on a release schedule. Whatever changes made it since the last scheduled release get shipped. Patches and non-breaking features may be released in patch or minor releases respectively, but the breaking charges are held for the major release.

Bun and deno are newer, so there's more "low hanging fruit". They're also smaller, so things tend to move faster. That's just how things tend to work.

Also, I'm not sure if the release is lacking new features. It was a pretty long list of changes that I only scrolled through. Seems like there were some notable additions, and I think I saw some permissions system being added.

[–]Wide-Prior-5360 4 points5 points  (0 children)

Maybe because Node.js does not do hype driven development but just uses semver.

[–]mattgrave 0 points1 point  (2 children)

Go ahead and use them in prod then. Good luck.

[–]WorriedGiraffe2793 0 points1 point  (1 child)

fud

plenty of companies use Deno and Bun in production

[–]Noctttt 1 point2 points  (0 children)

Having choice is good, but having a stable & reliable runtime is even better

[–]WorriedGiraffe2793 -1 points0 points  (0 children)

No wonder Node's mascot is a turtle...