堆栈阴影依赖
Stack shadowed dependencies
我将一个项目从 cabal new-build 转换为 stack。虽然它适用于大多数机器,但在一台机器上我遇到了阴影依赖问题:
Building library for PSS-0.2.0.0..
<command line>: cannot satisfy -package-id conduit-extra-1.3.0-
IqE5lCHhGFAGyZP27mhAWv:
conduit-extra-1.3.0-IqE5lCHhGFAGyZP27mhAWv is unusable due to
shadowed dependencies:
streaming-commons-0.1.19-2BxOAPRD0RODtVLE2OYQW2
(use -v for more information)
据我所知,这个问题应该已经在堆栈中修复了,但是在这个安装上它仍然发生。
堆栈版本:
Version 1.6.5, Git revision 24ab0d6ff07f28276e082c3ce74dfdeb1a2ca9e9
(5514 commits) x86_64 hpack-0.20.0
Cabal 与堆栈本身一起安装,版本:
> which cabal
/home/oswald/.local/bin/cabal
> cabal --version
cabal-install version 2.0.0.1
compiled using version 2.0.1.1 of the Cabal library
使用系统自带的ghc(ghc 8.2.2)和lts-11.4。它在 openSuSE LEAP 42.3 上工作,有趣的是它在 SLES 11 上工作最好(它很旧,但我遇到的问题最少。GHC 必须在那里手动编译)。发生这种情况的系统是 Ubuntu Studio 14.04。其他系统使用相同的堆栈和 cabal 版本并且没有问题。
有人知道这里发生了什么吗?
我认为这是一个 ghc 8.2+ 问题,所以您可能更愿意暂时留在 8.0.2 上以避免它。
(我认为 Fedora 28 和 NixOS 都有补丁。)
有关详细信息,请参阅 https://github.com/haskell/cabal/issues/4728。
我将一个项目从 cabal new-build 转换为 stack。虽然它适用于大多数机器,但在一台机器上我遇到了阴影依赖问题:
Building library for PSS-0.2.0.0..
<command line>: cannot satisfy -package-id conduit-extra-1.3.0-
IqE5lCHhGFAGyZP27mhAWv:
conduit-extra-1.3.0-IqE5lCHhGFAGyZP27mhAWv is unusable due to
shadowed dependencies:
streaming-commons-0.1.19-2BxOAPRD0RODtVLE2OYQW2
(use -v for more information)
据我所知,这个问题应该已经在堆栈中修复了,但是在这个安装上它仍然发生。
堆栈版本:
Version 1.6.5, Git revision 24ab0d6ff07f28276e082c3ce74dfdeb1a2ca9e9
(5514 commits) x86_64 hpack-0.20.0
Cabal 与堆栈本身一起安装,版本:
> which cabal
/home/oswald/.local/bin/cabal
> cabal --version
cabal-install version 2.0.0.1
compiled using version 2.0.1.1 of the Cabal library
使用系统自带的ghc(ghc 8.2.2)和lts-11.4。它在 openSuSE LEAP 42.3 上工作,有趣的是它在 SLES 11 上工作最好(它很旧,但我遇到的问题最少。GHC 必须在那里手动编译)。发生这种情况的系统是 Ubuntu Studio 14.04。其他系统使用相同的堆栈和 cabal 版本并且没有问题。
有人知道这里发生了什么吗?
我认为这是一个 ghc 8.2+ 问题,所以您可能更愿意暂时留在 8.0.2 上以避免它。 (我认为 Fedora 28 和 NixOS 都有补丁。)
有关详细信息,请参阅 https://github.com/haskell/cabal/issues/4728。