Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

stack haddock --no-strip & stack build --profile --no-strip fail to create build plan #4195

Open
aspiwack opened this issue Jul 31, 2018 · 5 comments

Comments

@aspiwack
Copy link
Contributor

General summary/comments

Passing --no-strip (or collectively --no-library-stripping --no-executable-stripping) to stack haddock or stack --profile fails to compute build plan (pretty much as if no resolver was passed).

It interferes with adding

build:
  library-stripping: false
  executable-stripping: false

to the stack.yaml.

Steps to reproduce

  1. $ stack new foo && cd foo
  2. $ stack haddock --no-strip (or $ stack build --profile --no-strip)

Expected

Success

Actual

Error: While constructing the build plan, the following exceptions were encountered:

In the dependencies for test-0.1.0.0:
    base must match >=4.7 && <5, but the stack configuration has no specified version  (latest matching version is 4.11.1.0)
needed since test is a build target.

Some different approaches to resolving this:

  * Consider trying 'stack solver', which uses the cabal-install solver to attempt to find some working build configuration.
    This can be convenient when dealing with many complicated constraint errors, but results may be unpredictable.

  * Recommended action: try adding the following to your extra-deps in /home/lc33092/temp/test/stack.yaml:

- base-4.11.1.0

Verbose output

Version 1.7.1, Git revision 681c800873816c022739ca7ed14755e85a579565 (5807 commits) x86_64 hpack-0.28.2
2018-07-31 11:57:44.791796: [debug] Checking for project config at: /home/lc33092/temp/test/stack.yaml
@(src/Stack/Config.hs:850:9)
2018-07-31 11:57:44.792016: [debug] Loading project config file stack.yaml
@(src/Stack/Config.hs:876:13)
2018-07-31 11:57:44.793395: [debug] Decoding build plan from: /home/lc33092/.stack/build-plan/lts-12.4.yaml
@(src/Stack/Snapshot.hs:164:5)
2018-07-31 11:57:44.793501: [debug] Trying to decode /home/lc33092/.stack/build-plan-cache/lts-12.4.cache
@(src/Stack/Snapshot.hs:156:32)
2018-07-31 11:57:44.802531: [debug] Success decoding /home/lc33092/.stack/build-plan-cache/lts-12.4.cache
@(src/Stack/Snapshot.hs:156:32)
2018-07-31 11:57:44.803127: [debug] Run process: /sbin/ldconfig -p
@(src/Stack/Setup.hs:580:22)
2018-07-31 11:57:44.804896: [debug] Process finished in 2ms: /sbin/ldconfig -p
@(src/Stack/Setup.hs:580:22)
2018-07-31 11:57:44.805980: [debug] Found shared library libtinfo.so.5 in 'ldconfig -p' output
@(src/Stack/Setup.hs:589:29)
2018-07-31 11:57:44.806585: [debug] Did not find shared library libtinfo.so.6
@(src/Stack/Setup.hs:603:38)
2018-07-31 11:57:44.806737: [debug] Did not find shared library libncursesw.so.6
@(src/Stack/Setup.hs:603:38)
2018-07-31 11:57:44.806808: [debug] Found shared library libgmp.so.10 in 'ldconfig -p' output
@(src/Stack/Setup.hs:589:29)
2018-07-31 11:57:44.806892: [debug] Did not find shared library libgmp.so.3
@(src/Stack/Setup.hs:603:38)
2018-07-31 11:57:44.806936: [debug] Potential GHC builds: standard
@(src/Stack/Setup.hs:632:9)
2018-07-31 11:57:44.806996: [debug] Found already installed GHC builds: standard
@(src/Stack/Setup.hs:458:13)
2018-07-31 11:57:44.807752: [debug] Getting global package database location
@(src/Stack/GhcPkg.hs:47:5)
2018-07-31 11:57:44.807885: [debug] Run process: /home/lc33092/.stack/programs/x86_64-linux/ghc-8.4.3/bin/ghc-pkg --no-user-package-db list --global
@(src/Stack/GhcPkg.hs:76:10)
2018-07-31 11:57:44.808336: [debug] Getting Cabal package version
@(src/Stack/GhcPkg.hs:180:5)
2018-07-31 11:57:44.818723: [debug] Asking GHC for its version
@(src/Stack/Setup/Installed.hs:98:13)
2018-07-31 11:57:44.818906: [debug] Run process: /home/lc33092/.stack/programs/x86_64-linux/ghc-8.4.3/bin/ghc --numeric-version
@(src/Stack/Setup/Installed.hs:99:19)
2018-07-31 11:57:44.829540: [debug] Run process: /home/lc33092/.stack/programs/x86_64-linux/ghc-8.4.3/bin/ghc-pkg --no-user-package-db field --simple-output Cabal version
@(src/Stack/GhcPkg.hs:76:10)
2018-07-31 11:57:44.841525: [debug] Process finished in 34ms: /home/lc33092/.stack/programs/x86_64-linux/ghc-8.4.3/bin/ghc-pkg --no-user-package-db list --global
@(src/Stack/GhcPkg.hs:76:10)
2018-07-31 11:57:44.882717: [debug] Process finished in 42ms: /home/lc33092/.stack/programs/x86_64-linux/ghc-8.4.3/bin/ghc-pkg --no-user-package-db field --simple-output Cabal version
@(src/Stack/GhcPkg.hs:76:10)
2018-07-31 11:57:44.937987: [debug] Process finished in 119ms: /home/lc33092/.stack/programs/x86_64-linux/ghc-8.4.3/bin/ghc --numeric-version
@(src/Stack/Setup/Installed.hs:99:19)
2018-07-31 11:57:44.938149: [debug] GHC version is: ghc-8.4.3
@(src/Stack/Setup/Installed.hs:102:13)
2018-07-31 11:57:44.938235: [debug] Resolving package entries
@(src/Stack/Setup.hs:256:5)
2018-07-31 11:57:44.938341: [debug] Trying to decode /home/lc33092/.stack/loaded-snapshot-cache/x86_64-linux/ghc-8.4.3/lts-12.4.cache
@(src/Stack/Snapshot.hs:384:9)
2018-07-31 11:57:45.034496: [debug] Success decoding /home/lc33092/.stack/loaded-snapshot-cache/x86_64-linux/ghc-8.4.3/lts-12.4.cache
@(src/Stack/Snapshot.hs:384:9)
2018-07-31 11:57:45.052479: [debug] Starting to execute command inside EnvConfig
@(src/Stack/Runners.hs:171:18)
2018-07-31 11:57:45.052640: [debug] Parsing the targets
@(src/Stack/Build/Target.hs:460:3)
2018-07-31 11:57:45.052769: [debug] Running hpack on /home/lc33092/temp/test/package.yaml
@(src/Stack/Package.hs:1390:9)
2018-07-31 11:57:45.061053: [debug] hpack output unchanged in /home/lc33092/temp/test/test.cabal
@(src/Stack/Package.hs:1407:46)
2018-07-31 11:57:45.103963: [debug] Start: getPackageFiles /home/lc33092/temp/test/test.cabal
@(src/Stack/Package.hs:332:21)
2018-07-31 11:57:45.107802: [debug] Finished in 4ms: getPackageFiles /home/lc33092/temp/test/test.cabal
@(src/Stack/Package.hs:332:21)
2018-07-31 11:57:45.109404: [debug] Finding out which packages are already installed
@(src/Stack/Build/Installed.hs:57:5)
2018-07-31 11:57:45.109603: [debug] Trying to decode /home/lc33092/temp/test/.stack-work/installed-cache.bin
@(src/Stack/PackageDump.hs:105:12)
2018-07-31 11:57:45.109756: [debug] Success decoding /home/lc33092/temp/test/.stack-work/installed-cache.bin
@(src/Stack/PackageDump.hs:105:12)
2018-07-31 11:57:45.109884: [debug] Run process: /home/lc33092/.stack/programs/x86_64-linux/ghc-8.4.3/bin/ghc-pkg --global --no-user-package-db dump --expand-pkgroot
@(src/Stack/Prelude.hs:117:3)
2018-07-31 11:57:45.595270: [debug] Process finished in 485ms: /home/lc33092/.stack/programs/x86_64-linux/ghc-8.4.3/bin/ghc-pkg --global --no-user-package-db dump --expand-pkgroot
@(src/Stack/Prelude.hs:117:3)
2018-07-31 11:57:45.595569: [debug] Ignoring package parsec due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.595732: [debug] Ignoring package integer-gmp due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.655702: [debug] Ignoring package Cabal due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.656070: [debug] Ignoring package bytestring due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.656388: [debug] Ignoring package containers due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.656508: [debug] Ignoring package pretty due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.658270: [debug] Ignoring package ghc due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.662892: [debug] Ignoring package array due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.663091: [debug] Ignoring package ghc-boot due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.663468: [debug] Ignoring package text due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.663564: [debug] Ignoring package ghc-compact due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.663666: [debug] Ignoring package filepath due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.664001: [debug] Ignoring package transformers due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.664291: [debug] Ignoring package time due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.664431: [debug] Ignoring package directory due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.664579: [debug] Ignoring package stm due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.664743: [debug] Ignoring package xhtml due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.664888: [debug] Ignoring package ghci due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.664972: [debug] Ignoring package hpc due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.665066: [debug] Ignoring package binary due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.665275: [debug] Ignoring package mtl due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.665429: [debug] Ignoring package ghc-prim due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.665510: [debug] Ignoring package ghc-boot-th due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.665818: [debug] Ignoring package unix due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.665924: [debug] Ignoring package process due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.666037: [debug] Ignoring package template-haskell due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.666286: [debug] Ignoring package deepseq due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.667948: [debug] Ignoring package base due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.670739: [debug] Ignoring package terminfo due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.671013: [debug] Ignoring package haskeline due to it needing debugging symbols.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.671127: [debug] Run process: /home/lc33092/.stack/programs/x86_64-linux/ghc-8.4.3/bin/ghc-pkg --user --no-user-package-db --package-db /home/lc33092/.stack/snapshots/x86_64-linux/lts-12.4/8.4.3/pkgdb dump --expand-pkgroot
@(src/Stack/Prelude.hs:117:3)
2018-07-31 11:57:45.727495: [debug] Process finished in 56ms: /home/lc33092/.stack/programs/x86_64-linux/ghc-8.4.3/bin/ghc-pkg --user --no-user-package-db --package-db /home/lc33092/.stack/snapshots/x86_64-linux/lts-12.4/8.4.3/pkgdb dump --expand-pkgroot
@(src/Stack/Prelude.hs:117:3)
2018-07-31 11:57:45.727698: [debug] Run process: /home/lc33092/.stack/programs/x86_64-linux/ghc-8.4.3/bin/ghc-pkg --user --no-user-package-db --package-db /home/lc33092/temp/test/.stack-work/install/x86_64-linux/lts-12.4/8.4.3/pkgdb dump --expand-pkgroot
@(src/Stack/Prelude.hs:117:3)
2018-07-31 11:57:45.814071: [debug] Process finished in 86ms: /home/lc33092/.stack/programs/x86_64-linux/ghc-8.4.3/bin/ghc-pkg --user --no-user-package-db --package-db /home/lc33092/temp/test/.stack-work/install/x86_64-linux/lts-12.4/8.4.3/pkgdb dump --expand-pkgroot
@(src/Stack/Prelude.hs:117:3)
2018-07-31 11:57:45.814237: [debug] Ignoring package test, from (InstalledTo Local,"/home/lc33092/temp/test/.stack-work/install/x86_64-linux/lts-12.4/8.4.3/pkgdb/"), due to it needing haddocks.
@(src/Stack/Build/Installed.hs:185:5)
2018-07-31 11:57:45.814323: [debug] Encoding /home/lc33092/temp/test/.stack-work/installed-cache.bin
@(src/Stack/PackageDump.hs:111:34)
2018-07-31 11:57:45.814587: [debug] Finished writing /home/lc33092/temp/test/.stack-work/installed-cache.bin
@(src/Stack/PackageDump.hs:111:34)
2018-07-31 11:57:45.815030: [debug] Constructing the build plan
@(src/Stack/Build/ConstructPlan.hs:186:5)
2018-07-31 11:57:45.815378: [debug] Trying to decode /home/lc33092/.stack/indices/Hackage/01-index.cache
@(src/Stack/PackageIndex.hs:407:23)
2018-07-31 11:57:46.162437: [debug] Success decoding /home/lc33092/.stack/indices/Hackage/01-index.cache
@(src/Stack/PackageIndex.hs:407:23)
2018-07-31 11:57:46.162658: [warn] 
Error: While constructing the build plan, the following exceptions were encountered:

In the dependencies for test-0.1.0.0:
    base must match >=4.7 && <5, but the stack configuration has no specified version  (latest matching version is 4.11.1.0)
needed since test is a build target.

Some different approaches to resolving this:

  * Consider trying 'stack solver', which uses the cabal-install solver to attempt to find some working build configuration.
    This can be convenient when dealing with many complicated constraint errors, but results may be unpredictable.

  * Recommended action: try adding the following to your extra-deps in /home/lc33092/temp/test/stack.yaml:

- base-4.11.1.0

Stack version

$ stack --version
Version 1.7.1, Git revision 681c800873816c022739ca7ed14755e85a579565 (5807 commits) x86_64 hpack-0.28.2

Method of installation

  • stack upgrade
@mihaimaruseac
Copy link
Contributor

Reproduced it on my end with the latest from master.

@i-am-the-slime
Copy link

Is there a workaround to this? Something like feeding all .hs files manually to haddock?

@igrep
Copy link
Contributor

igrep commented Mar 14, 2019

I experienced a very similar issue with just stack haddock (without --no-strip option) since upgrading GHC into ver. 8.6.3 or ver. 8.6.4 (I tried with LTS-13.12 and LTS-13.11).
Should I file a separate issue?

My stack:

> stack --version
Version 1.9.1, Git revision f9d0042c141660e1d38f797e1d426be4a99b2a3c (6168 commits) x86_64 hpack-0.31.0

@mihaimaruseac
Copy link
Contributor

@igrep I think you should, or at least add the error message

@aspiwack
Copy link
Contributor Author

For the records: I worked around this by adding --no-haddock-deps to the invocation. The trade off is that the produced doc doesn't have links to, say, types in the dependencies.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants