Change PackageFixedDeps to use installed IDs
Take advantage in cabal-install of the new HasInstalledPackageId/PackagedInstall split in Cabal. The graph traversal functions in cabal-install, previously redundant, are now back in use. Their types match the ones in Cabal, with only the difference in the PackageInstalled (Cabal) versus PackageFixedDeps (cabal-install) type class. The only PackageInstalled instance left in Cabal is for InstalledPackage, which is a thin wrapper around InstalledPackageInfo; with these refactorings in place, InstalledPackage is there only to support the TopDown solver. The fact that we won't have PackageInstalled instances anymore for PlanPackage and co means that we are forced to call the correct graph traversal functions (from cabal-install, rather than from Cabal).
Showing
- cabal-install/Distribution/Client/Install.hs 11 additions, 9 deletionscabal-install/Distribution/Client/Install.hs
- cabal-install/Distribution/Client/InstallPlan.hs 15 additions, 22 deletionscabal-install/Distribution/Client/InstallPlan.hs
- cabal-install/Distribution/Client/PackageIndex.hs 20 additions, 2 deletionscabal-install/Distribution/Client/PackageIndex.hs
- cabal-install/Distribution/Client/PlanIndex.hs 126 additions, 97 deletionscabal-install/Distribution/Client/PlanIndex.hs
- cabal-install/Distribution/Client/Types.hs 6 additions, 21 deletionscabal-install/Distribution/Client/Types.hs
Loading
Please register or sign in to comment