Changes between Version 22 and Version 23 of Commentary/GSoCMultipleInstances
- Timestamp:
- 06/19/12 05:11:52 (11 months ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Commentary/GSoCMultipleInstances
v22 v23 2 2 == Introduction == 3 3 4 Cabal and GHC do not support multiple instances of the same package version installed at the same time. If a second instance of a package version is installed it is overwritten on the file system as well as in the PackageDB. This causes packages that depended upon the overwritten instance to break. The idea is to never overwrite an installed package. As already discussed in [http://hackage.haskell.org/trac/ghc/wiki/Commentary/Packages/MultiInstances] (this wiki entry)the following changes need to be made:4 Cabal and GHC do not support multiple instances of the same package version installed at the same time. If a second instance of a package version is installed it is overwritten on the file system as well as in the PackageDB. This causes packages that depended upon the overwritten instance to break. The idea is to never overwrite an installed package. As already discussed in [http://hackage.haskell.org/trac/ghc/wiki/Commentary/Packages/MultiInstances] the following changes need to be made: 5 5 6 * Cabal should install packages to a different location7 * ghc-pkg should a dd instances to the PackageDB instead of overwriting them8 * ghc --make and ghci should shadow the additional instances according to some rule of thumb6 * Cabal should install packages to a location that does not just depend on name and version, 7 * ghc-pkg should always add instances to the PackageDB and never overwrite them, 8 * ghc --make, ghci, and the configure phase of Cabal should select suitable instances according to some rule of thumb (similar to the current resolution technique), 9 9 * cabal-install should still find an InstallPlan 10 * some form of garbage collection should be invented10 * some form of garbage collection should be offered to have a chance to reduce the amount of installed packages 11 11 12 12 == Changing the Install Location ==
