haskell cabal可以警告依赖项中未使用的包吗?

1sbrub3j  于 2023-04-21  发布在  其他
关注(0)|答案(4)|浏览(146)

对于给定的cabal项目,如何检索未使用的依赖包?
cabal install过程中,如果在项目依赖项中提到了一个包,但没有使用它,那么有没有一种方法可以得到类似警告的东西,以便将其从依赖项中删除?

sg24os4d

sg24os4d1#

我认为程序packunused是你正在寻找的。

xytpbqjk

xytpbqjk2#

有一些选项:

  • 对于GHC 8.6及更早版本,Weeder version 1 by Neil Mitchell可以查找未使用的依赖项。
  • 对于GHC 8.10及更高版本,当GHC在包数据库中看到不必要的包时,会发出警告(使用GHC选项-Wunused-packages)。 由于Cabal准备了包数据库,因此任何不必要的包都是未使用的依赖项。

不幸的是,GHC 8.8被排除在外。

P.S. 最近发布了一个名为prune-juice的程序,该程序也适用于GHC 8.8。

hgb9j2n6

hgb9j2n63#

cabal-progdeps列出了cabal项目构建后的依赖项。
你可以通过在你的项目中添加一个未使用的来检查它们是否都被使用了。
它需要与cabal-install中使用的Cabal库版本相同,否则它会在解析dist/setup-config时出错。

相关问题