This project is mirrored from https://github.com/haskell/Cabal.
Pull mirroring updated .
- 22 Aug, 2009 3 commits
-
-
Duncan Coutts authored
Most TODOs related to the new InstalledPackageId stuff.
-
Duncan Coutts authored
We have to set the installedPackageId if it's missing. There's no need for this to depend on the version of ghc which is nice since this module is not supposed to be ghc specific.
-
Duncan Coutts authored
The old one was always too generic and it now contrasts better with the new installedPackageId field.
-
- 06 Aug, 2009 10 commits
-
-
Simon Marlow authored
When registering, choose the InstalledPackageId. - When registering inplace, use "foo-1.0-inplace" - If this isn't GHC, just use "foo-1.0-installed" - When installing a package with GHC, call Distribution.Simple.GHC.libAbiHash to get the hash, and use "foo-1.0-<hash>".
-
Simon Marlow authored
Follow changes in Distribution.Simple.LocalBuildInfo (installedPkgs is now an InstalledPackageIndex).
-
Simon Marlow authored
Distribution.Simple.Configure: follow changes to PackageIndex and INstalledPackageInfo.
-
Simon Marlow authored
Add libAbiHash, which extracts a String representing a hash of the ABI of a built library. It can fail if the library has not yet been built.
-
Simon Marlow authored
Follow changes to Distribution.Simple.LocalBuildInfo.componentPackageDeps.
-
Simon Marlow authored
Distribution.Simple.LocalBuildInfo: - the LocalBuildInfo record contains an index of the installed packages; this has changed from PackageIndex InstalledPackageInfo to InstalledPackageIndex. - ComponentLocalBuildInfo stores the "external package dependencies" of the component, which was componentPackageDeps :: [PackageId] and is now componentInstalledPackageDeps :: [InstalledPackageId] - we now export componentPackageDeps :: LocalBuildInfo -> [PackageId] (since to get the PackageId for an InstalledPackageId, you need to look it up in the InstalledPackageIndex, which is in the LocalBuildInfo) - similarly, previously externalPackageDeps :: LocalBuildInfo -> [PackageId] is now externalPackageDeps :: LocalBuildInfo -> [InstalledPackageId]
-
Simon Marlow authored
This part adds the InstalledPackageIndex type to Distribution.Simple.PackageIndex. Now that packages have a unique identifier within a package database, it makes sense to use this as the key for looking up installed packages, so InstalledPackageIndex is a mapping from InstalledPackageId to InstalledPackageInfo. Distribution.Simple.PackageIndex still supports other kinds of package mappings: PackageIndex is a mapping from PackageName. All the functions in the section "Special Queries" now work on InstalledPackageIndex rather than PackageFixedDeps pkg => PackageIndex pkg: topologicalOrder, reverseTopologicalOrder, dependencyInconsistencies, dependencyCycles, brokenPackages, dependencyClosure, reverseDependencyClosure dependencyGraph
-
Simon Marlow authored
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.
-
Simon Marlow authored
NOTE: the patch has been split into 9 pieces for easy reviewing, the individual pieces won't build on their own. Part 1 does the following: Distribution.Package: - define the InstalledPackageId type as a newtype of String Distribution.InstalledPackageInfo: - add an installedPackageId field to InstalledPackageInfo - change the type of the depends field from [PackageIdentifier] to [InstalledPackageId] The idea behind this change is to add a way to uniquely identify installed packages, letting us decouple the identity of an installed package instance from its package name and version. The benefits of this are - We get to detect when a package is broken because its dependencies have been recompiled, or because it is being used with a different package than it was compiled against. - We have the possibility of having multiple instances of a given <package>-<version> installed at the same time. In the future this might be used for "ways". It might also be useful during the process of upgrading/recompiling packages.
-
Simon Marlow authored
-
- 12 Aug, 2009 1 commit
-
-
Duncan Coutts authored
The key point is that we do not complain for packages that do not depend on base at all (like ghc-prim).
-
- 11 Aug, 2009 1 commit
-
-
Ian Lynagh authored
-
- 27 Jul, 2009 2 commits
-
-
Duncan Coutts authored
Though I'm not at all sure I like the _ <- bind idiom.
-
Duncan Coutts authored
We capture (and discard) the program output because we do not want it printed to the console. We do not currently have a specific variant for redirecting the output to /dev/null so we simply use the variant that captures the output. rolling back: Fri Jul 10 22:04:45 BST 2009 Ian Lynagh <igloo@earth.li> * Don't ask for the output of running ld, as we ignore it anyway M ./Distribution/Simple/GHC.hs -2 +2 M ./Distribution/Simple/LHC.hs -2 +2 Fri Jul 10 22:08:02 BST 2009 Ian Lynagh <igloo@earth.li> * Don't use the Stdout variant of rawSystemProgramConf to call gcc We ignore the output anyway M ./Distribution/Simple/Configure.hs -2 +3
-
- 26 Jul, 2009 1 commit
-
-
Ian Lynagh authored
-
- 23 Jul, 2009 1 commit
-
-
Ian Lynagh authored
-
- 10 Jul, 2009 4 commits
-
-
Ian Lynagh authored
-
Ian Lynagh authored
We ignore the output anyway
-
Ian Lynagh authored
-
Ian Lynagh authored
-
- 07 Jul, 2009 3 commits
-
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Duncan Coutts authored
-
- 05 Jul, 2009 3 commits
-
-
Duncan Coutts authored
Take a set of templates rather than file paths.
-
Duncan Coutts authored
This does the mutual substituition of the installation directory templates into each other.
-
Ian Lynagh authored
The --verbose flag is now called --verbosity
-
- 25 Jun, 2009 1 commit
-
-
Ian Lynagh authored
-
- 05 Jul, 2009 1 commit
-
-
Duncan Coutts authored
Existing Setup scripts use it so we can't change it. Fixes #563.
-
- 26 Jun, 2009 1 commit
-
-
Simon Marlow authored
the layout changed in the new GHC build system
-
- 25 Jun, 2009 1 commit
-
-
Simon Marlow authored
rather than low-level System.Posix.Internals operations which are about to go away.
-
- 22 Jun, 2009 1 commit
-
-
Simon Marlow authored
-
- 12 Jun, 2009 1 commit
-
-
Simon Marlow authored
-
- 14 Jun, 2009 2 commits
-
-
Duncan Coutts authored
-
Duncan Coutts authored
-
- 10 Jun, 2009 3 commits
-
-
Brent Yorgey authored
-
Ross Paterson authored
-
Ross Paterson authored
-