ato*_*3ls 5 javascript node.js npm
假设我有以下 Nodejs 脚本:
let ls = require('npm-remote-ls').ls
let config = require('npm-remote-ls').config
config({development:false,optional:true})
ls('node-gyp','9.3.1',console.log)
Run Code Online (Sandbox Code Playgroud)
它记录:
{
'node-gyp@9.3.1': {
'env-paths@2.2.1': {},
'graceful-fs@4.2.11': {},
'npmlog@6.0.2': {
'are-we-there-yet@3.0.1': [Object],
'set-blocking@2.0.0': {},
'console-control-strings@1.1.0': {},
'gauge@4.0.4': [Object]
},
'rimraf@3.0.2': { 'glob@7.2.3': {} },
'glob@7.2.3': {
'fs.realpath@1.0.0': {},
'inflight@1.0.6': [Object],
'inherits@2.0.4': {},
'path-is-absolute@1.0.1': {},
'minimatch@3.1.2': [Object],
'once@1.4.0': [Object]
},
'semver@7.5.1': { 'lru-cache@6.0.0': [Object] },
'make-fetch-happen@10.2.1': {
'agentkeepalive@4.3.0': [Object],
'http-cache-semantics@4.1.1': {},
'cacache@16.1.3': [Object],
'http-proxy-agent@5.0.0': [Object],
'https-proxy-agent@5.0.1': [Object],
'is-lambda@1.0.1': {},
'minipass-collect@1.0.2': [Object],
'lru-cache@7.18.3': {},
'minipass@3.3.6': [Object],
'minipass-flush@1.0.5': [Object],
'minipass-pipeline@1.2.4': [Object],
'promise-retry@2.0.1': [Object],
'socks-proxy-agent@7.0.0': [Object],
'ssri@9.0.1': [Object],
'minipass-fetch@2.1.2': [Object],
'negotiator@0.6.3': {}
},
'which@2.0.2': { 'isexe@2.0.0': {} },
'tar@6.1.15': {
'fs-minipass@2.1.0': [Object],
'minipass@5.0.0': {},
'minizlib@2.1.2': [Object],
'mkdirp@1.0.4': {},
'yallist@4.0.0': {},
'chownr@2.0.0': {}
},
'nopt@6.0.0': { 'abbrev@1.1.1': {} }
}
}
Run Code Online (Sandbox Code Playgroud)
node-gyp 的 package.json包含在"exponential-backoff": "^3.1.1",该dependencies字段中,因此我希望在上面的输出中看到它;但我不是。
为什么我没有exponential-backoff列在 npm-remote-ls 的输出中?如何调整脚本以获得完整的依赖项列表?或者是否有另一种更简单的方法来获取完整的依赖项列表?
版本9.3.1没有exponential-backoff依赖性,这就是它不显示的原因。请参阅此处的 9.3.1package.json版本。
如果您更改为它的latest版本,则10.0.1它是一个依赖项。
ls('node-gyp','latest',console.log)
Run Code Online (Sandbox Code Playgroud)
然后"exponential-backoff": "^3.1.1"就是:
{
'node-gyp@10.0.1': {
'semver@7.5.4': { 'lru-cache@6.0.0': [Object] },
'nopt@7.2.0': { 'abbrev@2.0.0': {} },
'which@4.0.0': { 'isexe@3.1.1': {} },
'proc-log@3.0.0': {},
'tar@6.2.0': {
'fs-minipass@2.1.0': [Object],
'minipass@5.0.0': {},
'mkdirp@1.0.4': {},
'minizlib@2.1.2': [Object],
'chownr@2.0.0': {},
'yallist@4.0.0': {}
},
'graceful-fs@4.2.11': {},
'make-fetch-happen@13.0.0': {
'cacache@18.0.0': [Object],
'minipass-fetch@3.0.4': [Object],
'minipass@7.0.4': {},
'minipass-flush@1.0.5': [Object],
'minipass-pipeline@1.2.4': [Object],
'negotiator@0.6.3': {},
'promise-retry@2.0.1': [Object],
'ssri@10.0.5': [Object],
'http-cache-semantics@4.1.1': {},
'is-lambda@1.0.1': {},
'@npmcli/agent@2.2.0': [Object]
},
'glob@10.3.10': {
'foreground-child@3.1.1': [Object],
'minimatch@9.0.3': [Object],
'minipass@7.0.4': {},
'jackspeak@2.3.6': [Object],
'path-scurry@1.10.1': [Object]
},
'env-paths@2.2.1': {},
'exponential-backoff@3.1.1': {}
}
}
Run Code Online (Sandbox Code Playgroud)
看起来它是在 9.4.0版本中引入的,因此您可能正在查看版本之间的 git 提交。
| 归档时间: |
|
| 查看次数: |
180 次 |
| 最近记录: |