Reinstalling a package + all its reverse dependencies
Mikhail Glushenkov
the.dead.shall.rise at gmail.com
Fri Nov 16 00:06:09 CET 2012
Hi all,
While working on #1105 ("Rebuild source directories added to the
sandbox"), I encountered a problem: there is no way to reinstall a
bunch of packages + all their reverse dependencies. Right now when you
run sandbox-build it does the following (see the cabal-sandbox branch
in my repo [1]):
cabal install /path/to/add-source-dep-1 ... /path/to/add-source-dep-N
--force-reinstall && cabal build
Unfortunately, this doesn't reinstall the reverse dependencies of
add-source deps, which can obviously break them (hence the need for
--force-reinstall). I tried several option combinations, but nothing
gives me what I want.
To solve this, I propose adding an option
'--only-dependencies-of=TARGET' that would work like
'--only-dependencies', but only remove TARGET from the install plan
(see adjustOnlyDependencies in D.C.Install). This would make it
possible to implement sandbox-build in the following fashion:
cabal install /path/to/add-source-dep-1 ... /path/to/add-source-dep-N
--only-dependencies-of=. && cabal build
Comments?
[1] https://github.com/23Skidoo/cabal/commits/cabal-sandbox
--
() ascii ribbon campaign - against html e-mail
/\ www.asciiribbon.org - against proprietary attachments
More information about the cabal-devel
mailing list