如何成功lockingmonorepo中的节点模块依赖关系?

我正在开发一个开源项目,目前正在使用lerna来帮助pipe理包含多个包的单个存储库。 到目前为止,这么好,除了时不时的事情打破,因为我们目前没有收缩任何东西。 我一直在试图做一些monorepo版本的shrinkwrapping,这样我们就不会受到所有依赖关系的支配(在发布的过程中,每次出错的频率都是惊人的!),但却遇到了一些困难,想知道我是否在正确的轨道上。

我最初希望能够使用我从以前的项目中熟悉的npm shrinkwrap。 不幸的是, lerna似乎不支持拆封 。

Bscheme是利用纱线,经过一些初步的困难后,切换到使用纱线工作区后似乎会好yarn install --frozen-lockfile至less我认为yarn install --frozen-lockfile正在做我想要的。

不幸的是,除了依赖locking之外,纱线似乎不能帮助所有的npm和lena工作,但是lena和纱线工作空间似乎导致了解决模块的问题(甚至是在同样的目录中解决这个问题)。

也许切换到纱线无论如何是矫枉过正,所以我开始怀疑是否更新版本的npm和package-lock.json是一个更好的主意。 不幸的是,这似乎需要一些与lerna的工作,在这一点上,我开始怀疑有多lesslerna是真的添加。 也许放弃lerna会有所帮助?

所以, tl; dr ,有没有人有一个好方法locking模块依赖关系monorepo?