[Hackage] #902: cabal install --enable-tests --only-dependencies fails to come up with a complete install plan

#902: cabal install --enable-tests --only-dependencies fails to come up with a complete install plan ---------------------------------+------------------------------------------ Reporter: tibbe | Owner: ttuegel Type: defect | Status: new Priority: normal | Milestone: Component: cabal-install tool | Version: 1.8.0.6 Severity: normal | Keywords: Difficulty: unknown | Ghcversion: Platform: | ---------------------------------+------------------------------------------ Something is wrong with how test suite dependencies are included in the install plan: {{{ $ git clone https://github.com/tibbe/hashable.git $ cd hashable $ cabal install --enable-tests --only-dependencies Resolving dependencies... Configuring deepseq-1.2.0.1... Preprocessing library deepseq-1.2.0.1... Building deepseq-1.2.0.1... [1 of 1] Compiling Control.DeepSeq ( Control/DeepSeq.hs, dist/build/Control/DeepSeq.o ) Registering deepseq-1.2.0.1... Installing library in /Users/tibbe/.cabal/lib/deepseq-1.2.0.1/ghc-7.0.4 Registering deepseq-1.2.0.1... Configuring text-0.11.1.9... cabal: At least the following dependencies are missing: HUnit ==1.2.*, QuickCheck ==2.4.*, test-framework ==0.4.*, test-framework-hunit ==0.2.*, test-framework-quickcheck2 ==0.2.* cabal: Error: some packages failed to install: text-0.11.1.9 failed during the configure step. The exception was: ExitFailure 1 }}} -- Ticket URL: http://hackage.haskell.org/trac/hackage/ticket/902 Hackage http://haskell.org/cabal/ Hackage: Cabal and related projects

#902: cabal install --enable-tests --only-dependencies fails to come up with a complete install plan ---------------------------------+------------------------------------------ Reporter: tibbe | Owner: ttuegel Type: defect | Status: new Priority: normal | Milestone: Component: cabal-install tool | Version: 1.8.0.6 Severity: normal | Keywords: Difficulty: unknown | Ghcversion: Platform: | ---------------------------------+------------------------------------------ Comment(by kosmikus): I can see how this is broken at the moment. It has nothing to do with --only-dependencies, as far as I can see. There's a function in {{{Distribution.Client.Install}}} that enables tests for command-line targets. However, that function only applies to targets of constructor {{{SpecificSourcePackage}}}. Now if you type {{{cabal install}}} in the current directory, the current directory is turned into a {{{SpecificSourcePackage}}}. However, if you type {{{cabal install foo}}}, then `foo' is ''not''. Dependencies aren't usually targets at all. On the other hand, if you say {{{--enable-tests}}}, then ''all'' packages are configured with tests enabled. So the solver sees a situation where most package won't have tests enabled, but the builder will assume they're all enabled. So it looks like it should go wrong more often than not. -- Ticket URL: http://hackage.haskell.org/trac/hackage/ticket/902#comment:1 Hackage http://haskell.org/cabal/ Hackage: Cabal and related projects

#902: cabal install --enable-tests --only-dependencies fails to come up with a complete install plan ---------------------------------+------------------------------------------ Reporter: tibbe | Owner: ttuegel Type: defect | Status: closed Priority: normal | Milestone: cabal-install-0.14 Component: cabal-install tool | Version: 1.8.0.6 Severity: normal | Resolution: fixed Keywords: | Difficulty: unknown Ghcversion: | Platform: ---------------------------------+------------------------------------------ Changes (by kosmikus): * status: new => closed * resolution: => fixed * milestone: => cabal-install-0.14 Comment: I think this is fixed now. Please open again if there are remaining problems. -- Ticket URL: http://hackage.haskell.org/trac/hackage/ticket/902#comment:2 Hackage http://haskell.org/cabal/ Hackage: Cabal and related projects
participants (1)
-
Hackage