如何防止我的库的使用者安装我的devDependencies?

问题描述

我有一个带有peerDependency的图书馆。为了能够使用该库,我还将其列为devDependency

{
  "peerDependencies": {
    "foo": "^3.0 || ^4.0"
  },"devDependency": {
    "foo": "^4.0"
  }
}

我收到消费者的报告说,即使他们安装了foo@^3.0,但我的软件包仍在提取foo@^4.0,所以现在他们的项目同时包含3和4。

我的假设是,由于foo是在对等体上声明的,因此不会为消费者项目安装它,但事实并非如此。

我们已经考虑过在消费者项目上添加--prod标志,但这意味着我们需要强迫它们使用它:“为了使用我们的库,您需要使用--prod或risk安装混合使用这两种软件包”,我不确定这是最好的方法

我缺少什么,有没有办法让我的库不提取消费者运行安装时在peerDependenceis上声明的devDependencies?

如果有帮助,我们将pnpm用作包管理器

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)