patch applied (cabal): Add a unuque identifier for installed packages (part 2 of 9)
Thu Aug 6 06:19:06 PDT 2009 Simon Marlow <marlowsd@gmail.com> * Add a unuque identifier for installed packages (part 2 of 9) Ignore-this: f3fba4465373bd4b7397384f08ca189e Note: this patch doesn't build on its own, you also need the rest of the patch series. Compatibility with older GHCs. When reading a package database created by an older version of GHC without installedPackageIds, we have to fake an InstalledPackageId for the internal InstalledPackageInfo. So, when reading in an InstalledPackageInfo from an older GHC, we set the installedPackageId to be the textual representation of the PackageIdentifier: i.e. <package>-<version>. Now, previously the depends field of InstalledPackageInfo was [PackageIdentifier], and is now [InstalledPackageId], so we will read each PackageIdentifier as an InstalledPackageId (a String). The dependencies will still point to the correct package, however, because we have chosen the installedPackageId to be the textual representation of the PackageIdentifier. M ./Distribution/Simple/GHC/IPI641.hs -1 +7 M ./Distribution/Simple/GHC/IPI642.hs -2 +6 M ./Distribution/Simple/Program/HcPkg.hs -3 +20 View patch online: http://darcs.haskell.org/cabal/_darcs/patches/20090806131906-12142-e3ff1a46d...
participants (1)
-
Duncan Coutts