[Hackage] #880: Honour both --only-dependencies and --reinstall for cabal install command.

#880: Honour both --only-dependencies and --reinstall for cabal install command. ---------------------------------+------------------------------------------ Reporter: lndbrg | Owner: Type: defect | Status: new Priority: normal | Milestone: Component: cabal-install tool | Version: 1.10.1.0 Severity: normal | Keywords: Difficulty: easy (<4 hours) | Ghcversion: Platform: | ---------------------------------+------------------------------------------ Cabal should be able to reinstall all dependencies of a package easily. Steps to Reproduce: 1. Break your cabal install somehow, keeping the database of the installed packages. For example remove the ~/.cabal folder. 2. Try to install a program with a dependency that you installed before via cabal (and resided in ~/.cabal) 3. Get error message about missing files/broken package. 4. Try to reinstall the dependencies of the program you want to reinstall: cabal install foo --reinstall --only-dependencies Expected results: all dependencies of foo is reinstalled. Actual result: Resolving dependencies... No packages to be installed. All the requested packages are already installed. If you want to reinstall anyway then use the --reinstall flag. -- Ticket URL: http://hackage.haskell.org/trac/hackage/ticket/880 Hackage http://haskell.org/cabal/ Hackage: Cabal and related projects

#880: Honour both --only-dependencies and --reinstall for cabal install command. ---------------------------------+------------------------------------------ Reporter: lndbrg | Owner: Type: defect | Status: closed Priority: normal | Milestone: Component: cabal-install tool | Version: 1.10.1.0 Severity: normal | Resolution: wontfix Keywords: | Difficulty: easy (<4 hours) Ghcversion: | Platform: ---------------------------------+------------------------------------------ Changes (by duncan): * status: new => closed * resolution: => wontfix Comment: Unfortunately it doesn't really make sense to talk about reinstalling all dependencies of something. Afterall, that includes base etc which either you cannot reinstall or do not want to reinstall. So you don't really mean /all/ dependencies. You mean the broken packages. Now cabal cannot tell when packages are broken due to missing files, only due to missing package dependencies. So the solution to your problem is to unregister the packages that have the missing files. Then `cabal install -only-dependencies` will do the right thing. So for example if you removed your ~/.cabal dir, then you can unregister the same packages by removing the ~/.ghc directory. Perhaps the proper solution here is for cabal to notice when packages are broken due to missing files. That will have to wait 'til cabal does better package management (tracking files for uninstall). -- Ticket URL: http://hackage.haskell.org/trac/hackage/ticket/880#comment:1 Hackage http://haskell.org/cabal/ Hackage: Cabal and related projects

#880: Honour both --only-dependencies and --reinstall for cabal install command. ---------------------------------+------------------------------------------ Reporter: lndbrg | Owner: Type: defect | Status: closed Priority: normal | Milestone: Component: cabal-install tool | Version: 1.10.1.0 Severity: normal | Resolution: wontfix Keywords: | Difficulty: easy (<4 hours) Ghcversion: | Platform: ---------------------------------+------------------------------------------ Comment(by elga): * [http://www.releve-identite-operateur.fr/rio-simyo.html simyo] -- Ticket URL: http://hackage.haskell.org/trac/hackage/ticket/880#comment:2 Hackage http://haskell.org/cabal/ Hackage: Cabal and related projects
participants (1)
-
Hackage