Version 1.6-0 of hackage-db is deprecated.
The latest version of hackage-db is 2.1.3-0.

hackage-db

Version 1.6 revision 0 uploaded by PeterSimons.

Package meta

Synopsis
provide access to the Hackage database via Data.Map
Description

This module provides simple access to the Hackage database by means of Data.Map. Suppose you wanted to implement a utility that queries the set of available versions for a given package, the following program would do the trick:

import qualified Distribution.Hackage.DB as DB
import Distribution.Text ( display )
import System.Environment ( getArgs )

main :: IO ()
main = do
  pkgs <- getArgs
  db <- DB.readHackage
  let getVersions name = maybe [] DB.keys (DB.lookup name db)
  mapM_ (putStrLn . unwords . map display . getVersions) pkgs

When run, it would produce the following output:

./a.out containers deepseq cabal-install
0.1.0.0 0.1.0.1 0.2.0.0 0.2.0.1 0.3.0.0 0.4.0.0
1.0.0.0 1.1.0.0 1.1.0.1 1.1.0.2
0.4.0 0.5.0 0.5.1 0.5.2 0.6.0 0.6.2 0.6.4 0.8.0 0.8.2 0.10.0 0.10.2

Note that once the database has been parsed, it can be accessed quickly, but the inital cost of reading 00-index.tar is fairly high.

Author
Peter Simons <simons@cryp.to>
Bug reports
n/a
Category
Distribution
Copyright
Peter Simons
Homepage
http://github.com/peti/hackage-db
Maintainer
Peter Simons <simons@cryp.to>
Package URL
n/a
Stability
n/a

Components