Change the representation of the package database
authorSimon Marlow <marlowsd@gmail.com>
Thu, 10 Sep 2009 10:27:03 +0000 (10:27 +0000)
committerSimon Marlow <marlowsd@gmail.com>
Thu, 10 Sep 2009 10:27:03 +0000 (10:27 +0000)
commit930421d4ed09e5389e0ef4c5eef36075a6809cc0
treef9f795c8b46a93a99f3a7495f6304f00fa42a2fb
parent5364ea8bd2086d3ce973988d583e3b4585d37b4d
Change the representation of the package database

 - the package DB is a directory containing one file per package
   instance (#723)

 - there is a binary cache of the database (#593, #2089)

 - the binary package is now a boot package

 - there is a new package, bin-package-db, containing the Binary
   instance of InstalledPackageInfo for the binary cache.

Also included in this patch

 - Use colour in 'ghc-pkg list' to indicate broken or hidden packages

   Broken packages are red, hidden packages are

   Colour support comes from the terminfo package, and is only used when
    - not --simple-output
    - stdout is a TTY
    - the terminal type has colour capability

 - Fix the bug that 'ghc-pkg list --user' shows everything as broken
13 files changed:
compiler/ghc.cabal.in
compiler/main/PackageConfig.hs
compiler/main/Packages.lhs
compiler/main/SysTools.lhs
ghc.mk
libraries/bin-package-db/Distribution/InstalledPackageInfo/Binary.hs [new file with mode: 0644]
libraries/bin-package-db/bin-package-db.cabal [new file with mode: 0644]
mk/config.mk.in
packages
utils/ghc-cabal/ghc-cabal.hs
utils/ghc-pkg/Main.hs
utils/ghc-pkg/ghc-pkg.cabal
utils/ghc-pkg/ghc.mk