It also doesn’t understand how to get packages from a git source.
From a release engineering perspective, this drives me batty.
It also doesn’t understand how to get packages from a git source.
From a release engineering perspective, this drives me batty.
In the npm-style dependency managers, generally speaking, you don’t really get dependency conflicts unless it’s a large overarching peer dependency or something like global singleton e.g. a GPU driver. Regardless of your thoughts on npm or having a massive number of tiny dependencies, you can’t deny npm dragged the dependency management field into the 21st century and forced it to scale.
for good reason. I strongly disagree that what you say is a good thing. you are describing a failure of the javascript ecosystem as a whole where pulling in a package for some trivial(leftpad) task is seen as a good thing and that having incompatible versions of them being able to be installed at the same time is a good thing instead of an indictment on the system. I stand by my statement that they have made the wrong decision at ever step.
The only problem I can really think of is working through issues when two gems require different irreconcilable versions of a library, and that's more of a fundamental ruby issue / design choice than a problem with bundler itself.
We had to pin our bundler to a specific version and it caused all sorts of issues when installing gems.
What you and I describe is not a bundler or npm problem so much that the software we are working on requires an outdated version of ruby and nodejs.
I agree with the the other comment though — npm has more problems even when with the latest version. Like Nodejs, it is flawed by design.
It makes the pretty heavy assumption that a developer will always be able to bugfix the version differences.
Not sure what you mean.
...or with `npm i git+ssh:...`, and npm will git clone it locally, as long as it has a `package.json`
You can install a certain commit, or even from a Gist!