标签: package-lock.json

package-lock.json中的"require:true"是什么

我们的团队刚刚更新到npm @ 5.将package-lock.json在Windows和Mac(某些依赖关系是可选的,所以它们不会安装在Windows,但他们在Mac上),因此,无论机器,我们会产生同node_modules结构之间的统一.那很好,然后每个团队成员都经历了以下步骤:

  1. rm -rf node_modules
  2. git pull
  3. npm install

对于所有团队成员来说,这实际上是完美的,除了一个package-lock.json在之后进行了修改的团队成员npm install.修改后的一条线就是删除了"requires": true.

所以我看到:

{
  ...
  "version": "0.0.1",
  "lockfileVersion": 1,
  "requires": true,
  "dependencies": {
  ...
}
Run Code Online (Sandbox Code Playgroud)

但他看到:

{
  ...
  "version": "0.0.1",
  "lockfileVersion": 1,
  "dependencies": {
  ...
}
Run Code Online (Sandbox Code Playgroud)

有人知道为什么requires: true可能会从package-lock.json某些机器上的文件中删除,而不是其他机器上的文件?此外,对这个属性做什么的一点解释也不会有害.:)

提前致谢!

node.js npm npm-install package-lock.json

9
推荐指数
1
解决办法
3128
查看次数

如何在 package-lock.json 中增加传递依赖

我的项目取决于analytics-node哪个依赖于axios: "^0.16.2".

我们已被标记为npm audit存在axios漏洞,但已在0.18.1.

但是,analytics-node没有依赖于0.18.1或更高版本的候选版本(只有测试版)。

我们已经尝试过:

  • npm audit fix,
  • npm update axios --depth 2,
  • npm install axios@0.18.1

我最困惑的部分是,既然版本应该兼容,为什么 npm 不允许我们覆盖analytics-node版本。axios

npm package-lock.json

9
推荐指数
1
解决办法
5605
查看次数

更新NPM包的传递依赖性

我们公司有一些Web应用程序,这些应用程序依赖于一长串内部创建和托管的npm包(我们使用JFrog Artifactory),每个包都有自己的依赖项(等等).每当修复错误或在低级别包中实现功能时,当前进程需要开发人员检查他们的更改,等待CICD构建完成并测试运行,更新父包,并冲洗/重复所有链的方式(这可能是一个非常漫长的过程).

这可能不是一个独特的情况,但它会极大地影响我们的生产力,并鼓励单片程序包开发限制更新程序包的数量,而不是正确的代码分离.

我只能想到两个解决方案:

1)更新Web应用程序以直接在package.json中使用传递依赖项.然而,这打破了"封装",因为Web应用程序不应该知道直接依赖关系如何管理其作业.如果直接依赖性稍后使用某些其他传递依赖性,则不应该将Web应用程序引用到现在不相关的包.

2)修改Web应用程序的package-lock.json以指向新版本的传递依赖项.然而,这似乎只是临时工作,因为合并冲突或直接依赖的新安装往往会恢复这些更改.

我意识到答案可能是优化构建/发布过程,减少痛苦和手动,但我希望其他人可能遇到了不同的解决方案.

仅供参考 - 默认情况下,所有依赖项都以"〜"作为版本前缀安装.

artifactory npm package.json package-lock.json

8
推荐指数
1
解决办法
984
查看次数

Caret range和package-lock.json:如何用它们获得最新的非破坏版本?

我得到的是什么package-lock.json,但我不明白添加此文件后插入符号范围如何工作?

假设我有一个package(my-module),我希望拥有所有新的非破坏版本,而无需手动指定新版本.我安装了最新版本,这是package.json文件中的结果:

"my-module": "^4.1.1"

但是package-lock.json也正在更新修复my-moduleto 的版本4.1.1.

下次出现新版本my-module:4.1.2.跑步npm i不会把它安装在该版本package-lock.json被固定在旧版本.

如何npm imy-module不创建新package-lock.json文件的情况下下载最新的非破坏版本?这个文件是否因使用插入符号范围而无效?

javascript npm package-lock.json

8
推荐指数
1
解决办法
1180
查看次数

如何确定哪些依赖项依赖于我的 node_modules 中的特定包?

Github 最近推出了一项功能,可以通知您package-lock.json. 我想解决这些问题,但此处列出的大多数软件包都是我的依赖项的依赖项,因此不清楚需要package.json升级哪个顶级(在我的 中列出)软件包才能解决该问题。

我意识到我可以进入 my package-lock.json,找到包,跟踪它,直到找到 my 中的包package.json,但是当我有几十个包需要更新时,这似乎不必要地乏味。编写一个脚本来实现自动化也不会太难,但在我进行这项工作之前,我希望有一个现有的工具或(理想情况下)npm 函数可以简单地给我答案。

因此,假设我不可能是第一个想要这样做的人,我的问题是:如何确定我中的哪个包package.json导致我中列出了另一个特定的包,package-lock.json而无需手动通过包锁并追踪每个包裹?

node.js npm node-modules package.json package-lock.json

8
推荐指数
1
解决办法
2193
查看次数

如果我更改节点版本并执行 npm install,package-lock.json 中的包版本是否会更改?

假设,我npm install这样做,然后我更改节点版本,然后再次这样做npm install,安装的软件包会package-lock.json改变吗node_modules?(假设同时 npm 注册表上的软件包没有更新)

javascript node.js npm npm-install package-lock.json

8
推荐指数
1
解决办法
755
查看次数

是否有工具可以验证/检查 package.json 和 package-lock.json 是否一致?

有时人们会更改package.json并忘记运行npm i哪个将更新package-lock.json,或者package.jsonpackage-lock.json其他方式不同步。这是一个不在这里讨论/质疑的假设。我正在寻找一种可以帮助检测此类情况的工具。

您知道可以进行健全性检查的 npm 功能或第三方工具吗package-lock.json?例如,它应该解决所有传递依赖项,并检查锁定文件中是否提到了它们,并且其版本在正确的 semver 范围内。npm i它应该告诉您为了更新锁定文件而运行是否有意义,或者是否会为您提供(考虑传递性)npm ci中定义的所有所需的依赖项。package.json

我认为这npm --loglevel verbose install --dry-run将是一个合理的候选者,但它的输出没有提到package-lock.json如果它在没有--dry-run. 当然,一种选择是运行npm i然后git diff package-lock.json(或类似的),但这很脏。

node.js npm package.json package-lock.json

8
推荐指数
1
解决办法
8527
查看次数

如何更新 package-lock.json 中的依赖项

我第一次收到来自 GitHub 的关于我的一些项目依赖项的潜在安全问题(标签:high-severity)的通知。这是示例消息:

在 package-lock.json 中发现的 url-parse 漏洞

这是建议的解决方案:

将 url-parse 升级到 1.4.3 或更高版本。例如:

"dependencies": {
  "url-parse": ">=1.4.3"
}
Run Code Online (Sandbox Code Playgroud)

或者…

"devDependencies": {
  "url-parse": ">=1.4.3"
}
Run Code Online (Sandbox Code Playgroud)

现在,我所做的只是npm outdated -g --depth=0根据官方文档在我的终端中运行并执行npm -g update命令来简单地检查任何过时的包(我也尝试使用 来定位依赖项本身npm update url-parse)。一些软件包已成功更新,但似乎没有找到导致问题的软件包。我是否应该通过添加建议的代码行来手动更新它:"url-parse": ">=1.4.3"

最后,我应该在多大程度上关注此类警报?

谢谢!

security dependencies github package-lock.json

7
推荐指数
2
解决办法
4617
查看次数

运行“npm ci”返回“无法从 find-cache-dir 访问 pkg-dir”

我正在尝试运行这个命令:

npm ci

它返回这个错误:

npm ERR! pkg-dir not accessible from find-cache-dir

我在这里缺少什么?

npm node-modules package-lock.json

7
推荐指数
1
解决办法
1589
查看次数

将我的 npm 从版本 6 升级到版本 7(节点版本为 10)后,我无法为某些项目安装依赖项

我曾节点版本10安装在我的系统,从版本6升级我的NPM至7版本我不能安装依赖后,和我得到的错误,所以我只好我的节点降级到6,(包括npm cinpm i不及格)我正在测试的项目是这样的:

https://github.com/Giveth/feathers-giveth

错误是这样的:

npm ERR! code 128
npm ERR! git dep preparation failed
npm ERR! command /Users/username/.nvm/versions/node/v10.23.0/bin/node /Users/username/.nvm/versions/node/v10.23.0/lib/node_modules/npm/bin/npm-cli.js install --force --cache=/Users/username/.npm/_cacache --prefer-offline=false --prefer-online=false --offline=false --no-progress --no-save --no-audit
npm ERR! npm WARN using --force Recommended protections disabled.
npm ERR! npm ERR! code 128
npm ERR! npm ERR! command failed
npm ERR! npm ERR! command git clone --mirror -q ssh://git@github.com/gulpjs/gulp.git /Users/renjer/.npm/_cacache/_cacache/tmp/git-clone-dfb83c15/.git
npm ERR! npm ERR! fatal: destination path '/Users/username/.npm/_cacache/_cacache/tmp/git-clone-dfb83c15/.git' already exists and is not an empty …
Run Code Online (Sandbox Code Playgroud)

node.js npm package.json package-lock.json

7
推荐指数
1
解决办法
434
查看次数