问题标签 [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.
jestjs - 使用 Yarn 2 时如何修补 jest-rutime?
我正在尝试按照此存储库中的说明来修补 Jest。
建议使用patch-package但我发现在使用 Yarn 2 时可以使用yarn patch 。
我设法修补了 jest-runtime,但似乎 Jest 似乎不需要jest-runtime
在它的包中,所以我不知道它是从哪里来的,将它用作声明修补文件的参考。
我知道如果 Jest 是需要修补的,我可以这样声明:
package.json
我尝试使用相同的逻辑来包含以下要包含的代码,jest-runtime
但它不起作用。
如何声明这个修补的 jest-runtime 以便 Jest 可以使用它?
node.js - 在节点脚本中按顺序运行一组纱线命令
我想按顺序使用纱线命令并在节点脚本中运行它,在中间步骤中,并根据需要将其与 js 混合。例如
以上是否可以在节点 js 或任何其他可用于节点项目的脚本中实现?
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 检查)
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.
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 管道中的依赖项?
另一个问题是如何只构建已更改的包?
mocha.js - 为什么 Mocha 不与 Yarn Berry 合作?
我正在尝试使用 mocha 进行一个非常简单的测试(没有配置文件,没有其他标志,只有mocha
,yarn2
和testee.js
文件),但它总是给我0 passing
. 地狱,它甚至不会运行任何文件!
我正在使用的工具:
- 摩卡9.0.2
- 纱线浆果 2.4.2
Yarn 2 不支持 mocha 吗?我应该使用其他东西吗?我总是将 mocha 用于我的所有测试文件,如果确实如此,也许是时候迁移了。
注意:我尝试使用纱线 1,它完美无缺。此外,Mocha 找到了该testee.js
文件,否则它会给我not found
错误而不是0 passing
yarnpkg - Yarn 为特定项目文件夹安装本地和远程包时遇到 404 错误
我在安装软件包时遇到以下消息:
本地包使用yarn add ../my-package
或远程包(使用测试yarn add lodash
)都会发生这种情况。
当我在同一台计算机上的另一个项目中时,包安装得很好。这可能是什么原因造成的?
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
在引擎盖下。
谢谢。
typescript - “4.3.5-pnpify”和“4.3.5-sdks”有什么区别吗?
我跑之后
打字稿工作区版本已更改
从
4.3.5-pnpify
到
4.3.5-sdks
当我跑的时候
它不起作用,因为它已被弃用。
我的纱线版本是 2.4.1
打字稿版本之间有什么重要区别吗?
谢谢。
docker - 从github拉包时打包失败(退出代码127)
我在 docker hub 上构建时遇到问题,当我手动构建时,它构建得很好,但是当我在 docker hub 上触发构建时,我得到打包包失败(退出代码 127)。
我正在尝试使用 yarn2 从 github 拉包