在 Yarn 2 (berry) 中审核依赖项的最佳方法?

Jul*_*ate 12 javascript npm typescript npm-audit yarnpkg-v2

我正在寻找一种方式来审计的依赖关系的在纱线2.漏洞纱线1.x中,有可能同是在npm,通过运行yarn audit代替npm audit。但是 Yarn 2 没有这样的命令。根据berry github 上的这个问题,它不会被实现(项目维护者更喜欢通过插件完成)。

我试过运行,npm install --package-lock-only && npm audit但安装在我的一些本地包上阻塞(我使用link:url 类型在 package.json 中列出)。

构建它不会是一个复杂的插件,我很乐意这样做,但它不会像安装一些东西然后继续我的一天那么有趣。我环顾四周,但总是以相同的几个蒸气软件/废弃软件仓库告终。

但我仍然想我只是没有找到它们。或者有一个未记录的技巧可以使它变得容易。因此我的问题:)

PS,是的,我可以link:在运行上面的npm installnpm audit命令时临时删除本地包,但这并不是我想要尝试为 CI 自动化的那种事情。

Ant*_*ton 7

更新(2020 年 10 月 28 日):
Yarn 2 刚刚合并了期待已久的yarn npm audit增强功能。

PR - https://github.com/yarnpkg/berry/pull/1892
文档 - https://yarnpkg.com/cli/npm/audit


我最近正在尝试 Yarn 2,我发现您可以使用@efrem/auditdeps实用程序来做到这一点:

yarn dlx @efrem/auditdeps [--level=(low|moderate|high|critical)] [--production]
Run Code Online (Sandbox Code Playgroud)

输出不如 from 漂亮npm audit,但您可以以 JSON 格式获得更多详细信息,并且可以将其通过管道传输到其他工具或任何自定义重新格式化脚本,以准确获得您想要的内容。