So, for one of our projects, we've moved to having a bunch of npm modules on an internal registry for various sub-parts of our projects and we're running into some trouble that seems like it would generally be an issue. Our primary package.json has a bunch of explicit version number dependencies (3rd party modules that we don't want changing out from under us unknowingly), and a bunch of ~version dependencies (mostly for internal packages which are updated daily).
So, the problem is, now after every "git pull", we need to do an "npm update" to get all of the related module changes, but "npm update" is really slow, as it appears to re-download and re-install *every* package, not just those that have updated versions available. "npm install" is fast (and is what we were used to doing), and that updates all of the packages for which we explicitly bumped the version number, but doesn't update packages with the ~version number dependencies that have had a new version published recently. I saw there's an "npm outdated" command which, very quickly, tells us exactly which packages would actually need to get updated, but I cannot find any npm command that will just update what needs to be updated without spending lots of time re-downloading/building/etc all of our "static" dependencies. I did put together this, uh, simple command to do what we need efficiently, but it seems like there should be a better way (within npm)! npm outdated --parseable | cut -f 2-3 -d : | grep -ve "^\(.*\):\\1$" | cut -f 1 -d @ | xargs npm update -- Job board: http://jobs.nodejs.org/ New group rules: https://gist.github.com/othiym23/9886289#file-moderation-policy-md Old group rules: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/nodejs/71d4d5fb-61e6-4d72-9f84-2a09258293a7%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
