3 ms·
How is this different form any other package tool? PIP authors have python2/3, Julia pkg, ubuntu apt-get, ect. What's special about working with npm?
by tdaltonc 11y ago
How is this different form any other package tool?
PIP authors have python2/3, Julia pkg, ubuntu apt-get, ect. What's special about working with npm?
- devy 11y agoPython community doesn't release new versions nearly as fast. Every major python version release, there is usually a PEP announcing the schedule new version release date far in advance for the community to prepare. To me, Node community just release new versions fast and furious. If the committers won't, then there are people who jump out and fork the project. Of course there are the other extreme of long release cycles like Debian but there are good reasons for that. IMMO, a mature large community of an open source project community should always take the package ecosystem into considering when introducing new versions or breaking changes. PS: I was pretty annoyed that one of the npm package I used a lot `aglio` is broken again on 5.0.0 after I filed a ticket for the compatibly issue with 4.2.1. This ticket has just been closed a few days ago and is only less than two weeks old! https://github.com/danielgtaylor/aglio/issues/183 https://github.com/danielgtaylor/aglio/issues/183
- BinaryIdiot 11y agoSo like my comment said I'm not that concerned about it today but if they are going to make breaking changes every 6 months then I'm worried and for two reasons that kinda separate node / npm apart from other packaging systems. First, JavaScript lacks a standard library that can interact with a system so node.js is essentially the defacto extension of the JavaScript language to work with a system. If you had a change where its standard libraries change every 6 months (plus or minus a few) it wouldn't be fun. Second, npm supports specifying the engine but you need to be able to update all versions due to security concerns, etc. If it's iterating too quickly with breaking changes then people are going to have to keep a branch for every version and update each one when a security fix is required. That's not sustainable. Most people keep a LTS version and a bleeding edge version. Python and other languages iterate but breaking changes in core APIs? Not very frequently.