
#697: Add "cabal install --only-dependencies" flag ---------------------------------+------------------------------------------ Reporter: igloo | Owner: Type: enhancement | Status: new Priority: normal | Milestone: Component: cabal-install tool | Version: HEAD Severity: major | Keywords: Difficulty: unknown | Ghcversion: Platform: | ---------------------------------+------------------------------------------ Comment(by duncan): It should not be too hard to add a flag to cabal install that builds just the dependencies of the given packages. I was thinking about it the other day. It ought to be relatively straightforward. It would involve modifying the install plan before running it. The only question is what behavior we want when one target depends directly or indirectly on another. The use case is presumably to install all dependencies so that local versions can be configured and built. Here are two scenarios: {{{ packageA -> packageB -> packageC cabal install --only-dependencies packageA packageB cabal install --only-dependencies packageA packageC }}} In the first scenario it is clear that we should just install `packageC`. The user can then configure and install the other two. However in the second case we have an intermediate dependency `packageB`. We would normally want to install this, but that would require that we also install `packageC` which is one of the ones we do not want to install, since the user wants to do that themselves. So one option is to fail in this case, the other is to install `packageB` and `packageC`. Is it obvious which we should do? Do people need both behaviours in different circumstances? -- Ticket URL: http://hackage.haskell.org/trac/hackage/ticket/697#comment:1 Hackage http://haskell.org/cabal/ Hackage: Cabal and related projects