标签: yarnpkg

获取 YN0028 此安装将修改锁定文件,这是明确禁止的。使用yarn berry和heroku

我使用yarn berry 和heroku 并不断收到错误:

\n
       \xe2\x9e\xa4 YN0028: \xe2\x94\x82 The lockfile would have been modified by this install, which is explicitly forbidden.\n
Run Code Online (Sandbox Code Playgroud)\n

这表明我的锁定文件不包含我列出的所有依赖项。在纱线文档中,它说这可以通过运行轻松解决yarn install新的锁定文件并将其推送到 git 可以轻松解决这个问题。不过我已经尝试过这个,尝试使用新的node_modules等,但没有成功。

\n

有其他人使用yarn berry + heroku遇到过这个问题吗?

\n

我的存储库是使用工作区的单一存储库。

\n

heroku yarnpkg heroku-ci

37
推荐指数
2
解决办法
3万
查看次数

如何强制Yarn重新安装包?

我的项目有一个依赖项,我有时从包服务器获取,有时从我的机器上的本地副本获取.因此,我经常需要在Yarn开关中查找依赖项.此外,我经常更改依赖项的本地副本,并且需要查看我的主项目中反映的更改.因此,我需要一种方法来告诉Yarn继续查看依赖项的相同位置,但重新安装依赖项,跳过缓存并直接从其当前源获取它,即使版本号没有更改.(有时我想尝试对依赖项进行小的更改,每次更新版本号很快就会变得烦人.)

我该怎么办?

我尝试了以下,但没有一个工作:

yarn remove dependency
yarn add file:/dependency
Run Code Online (Sandbox Code Playgroud)

继续使用以前版本的依赖项.

yarn remove dependency
yarn cache clear
yarn add file:/dependency
yarn install --force
Run Code Online (Sandbox Code Playgroud)

还继续使用以前版本的依赖项.

yarn remove dependency
rm -rf node_modules/
yarn cache clear
yarn add file:/dependency
yarn install --force
Run Code Online (Sandbox Code Playgroud)

仍然继续使用以前版本的依赖项.

如何确保Yarn使用我的依赖项的最新版本?

node.js yarnpkg

36
推荐指数
6
解决办法
4万
查看次数

如何在WebStorm 2016.2.3中使用Yarn而不是npm创建运行配置

我曾经通过WebStorm与npm合作.我通常只是在右上角添加一个基于npm的运行配置,就像这里描述的那样.

我最近尝试过纱线,我试图做类似的事情,比如npm,但我找不到选项.有没有办法做到这一点?或者我只需要等待JetBrains的更新?

webstorm yarnpkg

35
推荐指数
1
解决办法
2万
查看次数

窗户上的纱线慢了5倍

当我添加一个新的包到现有的安装yarn install已经运行时,它仅需5分钟,添加一个新的依赖,这是因为如果我只是做慢yarn installnode_modules那里.

这是正常的吗?

我在Windows 10 x64上使用Yarn 0.17.9.我确实让Windows Defender忽略了我的项目目录和yarn全局缓存目录.

编辑:这是我做的一些基准测试结果.基于它们,似乎纱线添加实际上要快30-40%,真正的问题只是纱线在Windows上慢了500%

编辑2:我已确认尚未为项目和纱线缓存目录启用索引.但现在我已将纱线从0.16.1升级到0.17.9,并且Windows的速度提高了35-50%!但它仍然比Linux慢350-400%.我更新了基准测试.

对于Windows性能问题似乎存在Github问题:https://github.com/yarnpkg/yarn/issues/990

基准:

-

Windows - 纱线安装(缓存):

Done in 172.29s.
Run Code Online (Sandbox Code Playgroud)

Ubuntu - 纱线安装(缓存):

yarn install  48,75s user 11,32s system 117% cpu 51,161 total
Run Code Online (Sandbox Code Playgroud)

-

Windows - 纱线添加lodash:

Done in 143.11s.
Run Code Online (Sandbox Code Playgroud)

Ubuntu - 纱线添加lodash:

yarn add lodash  33,42s user 5,72s system 108% cpu 36,203 total
Run Code Online (Sandbox Code Playgroud)

-

仅供参考,Ubuntu基准测试在NTFS驱动器上的同一文件夹上运行.

用于基准测试的项目:https://github.com/amcsi/szeremi

javascript windows yarnpkg

35
推荐指数
2
解决办法
3824
查看次数

如何使用纱线搜索包裹?

如何搜索纱线包装?我想有在包的名称以及在描述搜索词结果的列表(类似于各种工具的工作原理类似npm search,apropos,apt-cache search).

我试过了yarn info <pkg>,但这给了一堆json数据,仅限于那个包.

使用yarn help和duckduckgo是教育,但仍然没有回答如何做到这一点.

package-managers yarnpkg

35
推荐指数
4
解决办法
2万
查看次数

如何让 create-react-app 使用 npm 而不是 yarn?

我有点急于根据使用 yarn 的教程创建一个 React 应用程序。现在我要从头开始重新创建应用程序,因为我对 reactstrap 库不满意,我想切换到 react-bootstrap。

我已经重新安装了节点。但是,当我运行 create-react-app 时,它说使用“​​yarn”而不是“npm”,如下所示:

  yarn start
    Starts the development server.

  yarn build
    Bundles the app into static files for production.

  yarn test
    Starts the test runner.

  yarn eject
    Removes this tool and copies build dependencies, configuration files
    and scripts into the app directory. If you do this, you can’t go back!

We suggest that you begin by typing:

  cd react-test
  yarn start
Run Code Online (Sandbox Code Playgroud)

我想使用 npm,因为它似乎使用更广泛,并且有更多基于它的示例。我是被纱线卡住了,还是可以继续使用 npm?

npm reactjs yarnpkg

35
推荐指数
2
解决办法
1万
查看次数

yarn.lock和npm的package-lock有什么区别?

我不小心npm install在一个使用Yarn的项目中运行,并注意到npm创建了一个package-lock.json文件.

我知道Yarn的受欢迎程度部分是因为它使用了一个锁定文件来产生比npm更可靠和确定性的依赖安装,而npm只有一段时间只有一个残缺的收缩包装功能,但现在我不知道该怎么做这个npm lockfile业务以及是否有任何令人信服的继续使用纱线.

因此,在纱线与收缩包裹的StackOverflow上先前Q和A的精神中,我问以下问题:

  • 在可靠性方面,两个包管理器之间是否存在实质性差异?
  • 如果没有,除了"更多表情符号"之外,还有任何令人信服的理由继续使用Yarn吗?

node.js npm yarnpkg

34
推荐指数
1
解决办法
6189
查看次数

Yarn - 如何将 package.json 中的每个依赖项更新到最新版本?

我有一个已弃用依赖项的 React 应用程序。为了使其工作,我必须将依赖项更新为较新(但稳定)的版本。

根据这个 stakoverflow线程,要将 package.json 中的依赖项更新到最新版本,npm-check-updates是 npm 的最佳选择。但是,我使用纱线进行包管理。纱线中是否有相当于 npm-check-updates 的东西。因此,我使用单个包管理器来管理我的依赖项。

node.js npm reactjs yarnpkg

33
推荐指数
8
解决办法
2万
查看次数

npm 中已弃用 punycode - 我应该用什么替换它?

punycode在我的 Angular 项目中使用 npm 模块。VsCode 告诉我它已被弃用,并且https://nodejs.org/api/punycode.html#punycode_punycode 确认:

Node.js 中捆绑的 punycode 模块版本已被弃用。在 Node.js 的未来主要版本中,该模块将被删除。当前依赖 punycode 模块的用户应改用用户区提供的 Punycode.js 模块。

建议切换到“用户提供的”模块。那是什么?

有一个指向https://github.com/mathiasbynens/punycode.js的链接,我尝试将其包含在我的 package.json 中而不是“punycode”中,但出现了相同的错误。

punycode node.js npm yarnpkg angular

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

brew,yarn和npm有什么区别?

我正在使用react-native我在全球安装的软件包npm.现在它在执行init命令后的第一行说.下列:

Installing react-native from npm...
Consider installing yarn to make this faster: https://yarnpkg.com
Run Code Online (Sandbox Code Playgroud)

所以我正在检查那个网站,它看起来很有趣,但我不知道它会是什么.起初,我认为我需要brew安装yarn,所以我可以安装纱线npm.但现在我认为这yarn是一个替代品npm.这是正确的陈述吗?

为什么我要拥有这么多包管理器?

我知道像AtomVisual Studio Code这样的软件有自己的包管理器很有用.但是对于开发,我没有看到有人想要使用四个不同的包管理器的原因(brew用于'主要软件',yarn用于npm包,npm用于后端模块和bower用于前端库).如何解决这个包管理器森林?

homebrew package-managers npm bower yarnpkg

32
推荐指数
3
解决办法
2万
查看次数