コード例 #1
0
ファイル: index.js プロジェクト: nichoth/mynosql
exports.init = function (db, dir, cb) {
  if(Array.isArray(dir)) dir = dir[0]
  pull(
    glob(join(dir || join(__dirname, '..'), '**/package.json')),
    pfs.readFile(JSON.parse),
    pull.map(function (pkg) {
      process.stderr.write('.')
      return {key: hash(pkg), value: pkg, type: 'put'}
    }),
    pl.write(db, function (err) {
      cb(err)
    })
  )
}
コード例 #2
0
module.exports = function (cacheDir) {

  cacheDir = cacheDir || '~/.npm'
  
  return pull(
    glob(path.join(cacheDir, '*', '.cache.json')),
    pfs.readFile(),
    pull.map(function (data) {
      try { return JSON.parse(data) } catch (_) { }
    }),
    pull.filter(Boolean),
    pull.flatMap(function (pkg) {
      var depns = []
      var versions = pkg.versions
      for(var version in versions) {
        var tests = versions[version].scripts
        tests = !!(tests && tests.test)
        var deps = versions[version].dependencies
        for(var m in deps)
          depns.push([
            m, deps[m], pkg.name, version,
            {
              shasum: versions[version].dist.shasum,
              dev: false,
              tests: tests
            }
          ])
        var deps = versions[version].devDependencies
        for(var m in deps)
          depns.push([
            m, deps[m], pkg.name,
            version, 
            {
              shasum: versions[version].dist.shasum,
              dev: true,
              tests: tests
            }
          ])
      }
      return depns
    })
  )

}