Docs build failure
On commit 785008c1:
Short error
Error, file does not exist and no rule available:
libraries/template-haskell/template-haskell.cabal
Full error
% ./hadrian/build.stack.sh -j --flavour=quickest docs
| Run Sphinx LatexMode: utils/haddock/doc => /tmp/extra-dir-6398838421693
| Run Sphinx HtmlMode: utils/haddock/doc => _build/docs/html/Haddock
| Run Sphinx ManMode: docs/users_guide => /tmp/extra-dir-6398838421694
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "terminfo", pkgPath = "libraries/terminfo"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "binary", pkgPath = "libraries/binary"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "process", pkgPath = "libraries/process"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "parsec", pkgPath = "libraries/parsec"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "transformers", pkgPath = "libraries/transformers"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "deepseq", pkgPath = "libraries/deepseq"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "hpc", pkgPath = "libraries/hpc"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "directory", pkgPath = "libraries/directory"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "mtl", pkgPath = "libraries/mtl"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "filepath", pkgPath = "libraries/filepath"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "unix", pkgPath = "libraries/unix"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "ghc-prim", pkgPath = "libraries/ghc-prim"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "Cabal", pkgPath = "libraries/Cabal/Cabal"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "exceptions", pkgPath = "libraries/exceptions"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "haskeline", pkgPath = "libraries/haskeline"})))
# cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "stm", pkgPath = "libraries/stm"})))
Traceback (most recent call last):
File "/usr/bin/sphinx-build", line 15, in <module>
sys.exit(main(sys.argv))
File "/usr/lib/python2.7/dist-packages/sphinx/__init__.py", line 71, in main
return build_main(argv)
File "/usr/lib/python2.7/dist-packages/sphinx/__init__.py", line 82, in build_main
from sphinx import cmdline
File "/usr/lib/python2.7/dist-packages/sphinx/cmdline.py", line 24, in <module>
from sphinx.application import Sphinx
File "/usr/lib/python2.7/dist-packages/sphinx/application.py", line 30, in <module>
from sphinx.config import Config
File "/usr/lib/python2.7/dist-packages/sphinx/config.py", line 24, in <module>
from sphinx.util.pycompat import execfile_, NoneType
File "/usr/lib/python2.7/dist-packages/sphinx/util/pycompat.py", line 48, in <module>
Traceback (most recent call last):
File "/usr/bin/sphinx-build", line 15, in <module>
sys.exit(main(sys.argv))
File "/usr/lib/python2.7/dist-packages/sphinx/__init__.py", line 71, in main
sys_encoding = __import__('locale').getpreferredencoding()
File "/usr/lib/python2.7/locale.py", line 619, in getpreferredencoding
return build_main(argv)
File "/usr/lib/python2.7/dist-packages/sphinx/__init__.py", line 82, in build_main
from sphinx import cmdline
File "/usr/lib/python2.7/dist-packages/sphinx/cmdline.py", line 24, in <module>
from sphinx.application import Sphinx
File "/usr/lib/python2.7/dist-packages/sphinx/application.py", line 30, in <module>
from sphinx.config import Config
File "/usr/lib/python2.7/dist-packages/sphinx/config.py", line 22, in <module>
from sphinx.util.i18n import format_date
File "/usr/lib/python2.7/dist-packages/sphinx/util/i18n.py", line 34, in <module>
LocaleFileInfoBase = namedtuple('CatalogInfo', 'base_dir,domain,charset')
File "/usr/lib/python2.7/collections.py", line 376, in namedtuple
result = nl_langinfo(CODESET)
KeyboardInterrupt
for index, name in enumerate(field_names))
KeyboardInterrupt
Traceback (most recent call last):
File "/usr/bin/sphinx-build", line 15, in <module>
sys.exit(main(sys.argv))
File "/usr/lib/python2.7/dist-packages/sphinx/__init__.py", line 71, in main
return build_main(argv)
File "/usr/lib/python2.7/dist-packages/sphinx/__init__.py", line 82, in build_main
from sphinx import cmdline
File "/usr/lib/python2.7/dist-packages/sphinx/cmdline.py", line 24, in <module>
from sphinx.application import Sphinx
File "/usr/lib/python2.7/dist-packages/sphinx/application.py", line 38, in <module>
from sphinx.registry import SphinxComponentRegistry
File "/usr/lib/python2.7/dist-packages/sphinx/registry.py", line 15, in <module>
from pkg_resources import iter_entry_points
File "/home/niklas/.local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 41, in <module>
import inspect
File "/usr/lib/python2.7/inspect.py", line 37, in <module>
import dis
File "/usr/lib/python2.7/dis.py", line 6, in <module>
from opcode import *
File "/usr/lib/python2.7/opcode.py", line 5, in <module>
"""
KeyboardInterrupt
Error when running Shake build system:
at want, called at src/Main.hs:89:30 in main:Main
* Depends on: docs
at need, called at src/Rules/Documentation.hs:112:9 in main:Rules.Documentation
* Depends on: _build/docs/html/index.html
at need, called at src/Rules/Documentation.hs:160:9 in main:Rules.Documentation
* Depends on: _build/docs/html/libraries/index.html
at need, called at src/Rules/Documentation.hs:194:9 in main:Rules.Documentation
* Depends on: _build/docs/html/libraries/exceptions/exceptions.haddock
at apply1, called at src/Development/Shake/Internal/Rules/Oracle.hs:159:32 in shake-0.18.3-K6N2eLzVtai6jtZeWAmEIo:Development.Shake.Internal.Rules.Oracle
* Depends on: OracleQ (ContextDataKey (Context {stage = Stage1, package = Package {pkgType = Library, pkgName = "exceptions", pkgPath = "libraries/exceptions"}, way = v}))
at need, called at src/Hadrian/Oracles/Cabal/Rules.hs:53:9 in main:Hadrian.Oracles.Cabal.Rules
* Depends on: _build/stage1/libraries/exceptions/setup-config
at apply1, called at src/Development/Shake/Internal/Rules/Oracle.hs:159:32 in shake-0.18.3-K6N2eLzVtai6jtZeWAmEIo:Development.Shake.Internal.Rules.Oracle
* Depends on: OracleQ (PackageDataKey (Package {pkgType = Library, pkgName = "template-haskell", pkgPath = "libraries/template-haskell"}))
at need, called at src/Hadrian/Oracles/Cabal/Rules.hs:41:9 in main:Hadrian.Oracles.Cabal.Rules
* Depends on: libraries/template-haskell/template-haskell.cabal
at error, called at src/Development/Shake/Internal/Rules/File.hs:179:58 in shake-0.18.3-K6N2eLzVtai6jtZeWAmEIo:Development.Shake.Internal.Rules.File
* Raised the exception:
Error, file does not exist and no rule available:
libraries/template-haskell/template-haskell.cabal
Problem
Building the docs
target seems to assume the presence of
libraries/template-haskell/template-haskell.cabal
but there is only
libraries/template-haskell/template-haskell.cabal.in
so it seems that the build system doesn't know that it has to build that cabal file first.