有没有办法在某些包中有Haddock错误的情况下构建一个lokal Hoogle DB。例如,在lokal Hoogle DB构建期间,是否有解决方法将这些包从Haddock子任务中排除?
举个具体的例子:
$ stack hoogle
No Hoogle database yet. Automatically building haddocks and hoogle database (use --no-setup to disable) ...
classy-prelude-yesod-1.5.0: configure
classy-prelude-yesod-1.5.0: build
classy-prelude-yesod-1.5.0: haddock
Progress 1/2
-- While building package classy-prelude-yesod-1.5.0 using:
/Users/nrm/.stack/setup-exe-cache/x86_64-osx/Cabal-simple_mPHDZzAJ_2.4.0.1_ghc-8.6.4 --builddir=.stack-work/dist/x86_64-osx/Cabal-2.4.0.1 haddock --html --hoogle --html-location=../$pkg-$version/ --haddock-option=--hyperlinked-source --haddock-option=--quickjump
Process exited with code: ExitFailure 1
Logs have been written to: /Users/nrm/Sources/mdpm/projects/Yapper/.stack-work/logs/classy-prelude-yesod-1.5.0.log
Configuring classy-prelude-yesod-1.5.0...
Preprocessing library for classy-prelude-yesod-1.5.0..
Building library for classy-prelude-yesod-1.5.0..
[1 of 2] Compiling ClassyPrelude.Yesod ( src/ClassyPrelude/Yesod.hs, .stack-work/dist/x86_64-osx/Cabal-2.4.0.1/build/ClassyPrelude/Yesod.o )
[2 of 2] Compiling Paths_classy_prelude_yesod ( .stack-work/dist/x86_64-osx/Cabal-2.4.0.1/build/autogen/Paths_classy_prelude_yesod.hs, .stack-work/dist/x86_64-osx/Cabal-2.4.0.1/build/Paths_classy_prelude_yesod.o )
Preprocessing library for classy-prelude-yesod-1.5.0..
Running Haddock on library for classy-prelude-yesod-1.5.0..
Haddock coverage:
haddock: internal error: internal: extractDecl
CallStack (from HasCallStack):
error, called at utils/haddock/haddock-api/src/Haddock/Interface/Create.hs:1116:12 in main:Haddock.Interface.Create发布于 2019-04-03 03:10:32
stack hoogle大概是stack haddock周围的帮手,然后是hoogle generate --local。如果您只能为工作的项目生成Haddock输出,那么您可以手动执行hoogle generate --local。但是,我不知道有什么方法可以将stack haddock限制为只有一个子集,所以它可能并不实用。
另一种方法是使用hoogle generate <list of dependencies>,它将使用远程文档而不是本地文档,因此将跳过运行Haddock。
https://stackoverflow.com/questions/55479788
复制相似问题