问题标签 [yarn-v2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
239 浏览

jestjs - 使用 Yarn 2 时如何修补 jest-rutime?

我正在尝试按照此存储库中的说明来修补 Jest。

补丁开玩笑

建议使用patch-package但我发现在使用 Yarn 2 时可以使用yarn patch 。

我设法修补了 jest-runtime,但似乎 Jest 似乎不需要jest-runtime在它的包中,所以我不知道它是从哪里来的,将它用作声明修补文件的参考。

开玩笑的 package.json

我知道如果 Jest 是需要修补的,我可以这样声明:

package.json

我尝试使用相同的逻辑来包含以下要包含的代码,jest-runtime但它不起作用。

如何声明这个修补的 jest-runtime 以便 Jest 可以使用它?

0 投票
0 回答
128 浏览

node.js - 在节点脚本中按顺序运行一组纱线命令

我想按顺序使用纱线命令并在节点脚本中运行它,在中间步骤中,并根据需要将其与 js 混合。例如

以上是否可以在节点 js 或任何其他可用于节点项目的脚本中实现?

0 投票
1 回答
125 浏览

javascript - 纱线 v2 中的 CommitLint

那里。我正在尝试使用 yarn 2 在我的项目中设置 CommitLint 和 husky,但是当我提交时,我遇到了这个问题。有没有什么办法解决这一问题?我尝试使用以下 3 个命令:

  • npx --no-install commitlint --edit "$1"
  • yarn --no-install commitlint --edit "$1"
  • yarn run --no-install commitlint --edit "$1"

我正在使用带有 Node 14 LTS 的 Mac OS X 10.11.6。我的仓库在GitLab上(必须绕过 commitlint 检查)

使用 npx
使用 yarn
使用 yarn run

0 投票
1 回答
498 浏览

intellij-idea - 如何使用 yarn 2 (berry) 设置工作区存储库

经过几个小时的文档和教程后,我仍然没有让我的项目运行。

如何将核心包添加到 lambda 包中?

示例存储库:https ://github.com/benkeil/yarn-berry-workspaces

yarn workspace lambda add core他向 lambda 包添加依赖项后,但 IntelliJ 说它找不到该模块。

而且我无法启动它:src/index.ts:1:21 - error TS2307: Cannot find module 'core' or its corresponding type declarations.

0 投票
0 回答
143 浏览

gitlab - Yarn v2 Workspace 从注册表 gitlab 解析依赖项

我正在尝试使用 yarn v2 工作区创建一个 monorepo,然后我想在 gitlab 包注册表中发布每个包,以避免在注册表中已经存在相同版本的情况下每次构建包。我的项目示例在 gitlab 上是公开的:https ://gitlab.com/p.nopleggio/monorepov3

使用此配置一切正常,这两行在.gitlab-ci.yml

所有包都是在注册表中构建和发布的,所以没关系。

但现在我试图在工作空间内只构建更改的包,而不仅仅是所有包。所以我只是为了了解如何在注册表中维护这个包@monorepov3/common@1.0.1并以这种方式编辑 .gitlab-ci.yml :

所以我试图只构建 @monorepov3/backoffice-app包,我想从注册表中检索@monorepov3/common依赖@monorepov3/backoffice-app项,但是当构建命令启动不起作用时,因为没有在@monorepov3/common本地找到并且没有在注册表中查找。

谁能告诉我如何实现这一目标?如何使用注册表中的包构建 ci/cd 管道中的依赖项?

另一个问题是如何只构建已更改的包?

0 投票
1 回答
221 浏览

mocha.js - 为什么 Mocha 不与 Yarn Berry 合作?

我正在尝试使用 mocha 进行一个非常简单的测试(没有配置文件,没有其他标志,只有mocha,yarn2testee.js文件),但它总是给我0 passing. 地狱,它甚至不会运行任何文件!

我正在使用的工具:

  • 摩卡9.0.2
  • 纱线浆果 2.4.2

Yarn 2 不支持 mocha 吗?我应该使用其他东西吗?我总是将 mocha 用于我的所有测试文件,如果确实如此,也许是时候迁移了。

注意:我尝试使用纱线 1,它完美无缺。此外,Mocha 找到了该testee.js文件,否则它会给我not found错误而不是0 passing

0 投票
1 回答
241 浏览

yarnpkg - Yarn 为特定项目文件夹安装本地和远程包时遇到 404 错误

我在安装软件包时遇到以下消息:

本地包使用yarn add ../my-package或远程包(使用测试yarn add lodash)都会发生这种情况。

当我在同一台计算机上的另一个项目中时,包安装得很好。这可能是什么原因造成的?

0 投票
0 回答
30 浏览

node.js - npm/yarn/yarn2/pnpm 首先获取 package.json 以解析“os”字段吗?

package.json 中有os字段

那么,是否 npm/yarn/yarn2/pnpm 先获取依赖的 pacakge.json,然后解析“os”字段(如果存在),只有在 os 匹配时才下载源代码?

或者,他们只是一次下载所有内容(package.json+source)吗?

上下文 我打算发布一个包,其中包含一些特定于操作系统的代码(由 go 编译)。所以我有 3 个已编译的二进制文件(适用于 windows、linux、macOS)。然而,它们中的每一个都有很大的尺寸。因此,我想避免天真地将它们全部包含在一个包中。因此,我正在考虑将它们分开,如@foo/win32, @foo/linux, @foo/darwin。然后让一个名为的包foo依赖于所有这些。最终,用户安装npm install foo而不关心他们的操作系统。这种分离会避免安装不必要的依赖吗?例如,当npm install foo在 linux 上时,我希望 npm 不安装@foo/win32@foo/darwin在引擎盖下。

谢谢。

0 投票
1 回答
32 浏览

typescript - “4.3.5-pnpify”和“4.3.5-sdks”有什么区别吗?

我跑之后

打字稿工作区版本已更改

4.3.5-pnpify

4.3.5-sdks

当我跑的时候

它不起作用,因为它已被弃用。

我的纱线版本是 2.4.1

打字稿版本之间有什么重要区别吗?

谢谢。

0 投票
0 回答
73 浏览

docker - 从github拉包时打包失败(退出代码127)

我在 docker hub 上构建时遇到问题,当我手动构建时,它构建得很好,但是当我在 docker hub 上触发构建时,我得到打包包失败(退出代码 127)。

我正在尝试使用 yarn2 从 github 拉包