david icon indicating copy to clipboard operation
david copied to clipboard

Use npm-registry-client instead of npm

Open indexzero opened this issue 11 years ago • 3 comments

Since you're only using npm.commands.view it would be better to just use something like:

var RegClient = require('npm-registry-client')
var client = new RegClient(config)

client.get("npm", "latest", 1000, function (er, data, raw, res) {
  // error is an error if there was a problem.
  // data is the parsed data object
  // raw is the json string
  // res is the response from couch
})

npm-registry-client is the library depended on by npm to fetch things from the registry. Why is this better?

  1. Reduces dependencies: As a library about dependencies this should be self-explanatory :-D
  2. More configurable: If I wanted to use david to check against two different registries I am currently limited by what is on disk in .npmrc when you call npm.load

I would make a PR for this if you're interested.

indexzero avatar Nov 20 '13 01:11 indexzero

Absolutely - that would be incredible

alanshaw avatar Nov 20 '13 09:11 alanshaw

@indexzero if you don't have time, I'll totally do this as I'm looking to use this internally :)

davglass avatar Mar 11 '14 03:03 davglass

@davglass totally. We're not leaning as hard on this anymore. Using https://github.com/3rd-eden/shrinkwrap mostly now.

... keep up the great work tho @alanshaw!

indexzero avatar Mar 21 '14 07:03 indexzero