New patches in /srv/darcs/git-mirrors/Cabal

Ian Lynagh igloo at earth.li
Thu Jun 23 12:23:24 CEST 2011


New patches in /srv/darcs/git-mirrors/Cabal

commit eb7194360baca9677eb45044e13e6a2cf9de942a
Author: Jens Petersen <juhp at community.haskell.org>
Date:   Thu May 19 02:16:58 2011 +0000

    Add a dash separator for pid in createTempDirectory and openBinaryTempFile too

commit 3316812d7e774c053870097d480772b54c25e9b1
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sat Jun 18 19:07:48 2011 +0000

    Update changelog for 1.10.2.0

commit 1383c2d59d8a100ea9319125e21bc311e74a17da
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Jun 19 12:23:02 2011 +0000

    Add a short top-level README

commit b7d3821f3a814fa6b9779a2ed8dbbae2a494496b
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Jun 19 12:22:16 2011 +0000

    Move the Cabal library into a subdir
    At the top level we now have cabal/ and cabal-install/

commit 61e5677d2bd8fe2a9608ccc90adca5e73e69b0d1
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sat May 21 22:52:03 2011 +0000

    cabal init: various UI tweaks and changes to the generated .cabal files
    - Add a default "(none)" option for license and category. There are now no
      questions with no default except for the lib/exe question. For throwaway
      packages user can just keep hitting enter and get something sensible.
    - Prune the list of suggested licenses (remove unversioned GPL, LGPL)
    - Don't include extra-source-files or build-tools when they would be empty
    - Improve the wording of the generated documentation for lib/exe fields

commit ab788cadda6443c40b53e0d5b96aba777d0b80b1
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Tue May 17 00:31:27 2011 +0000

    Adjust the initial comment in cabal files generated by cabal init
    Use slightly longer lines and a somewhat more terse comment.
    Also use a new shorter and hopefully stable URL for the user guide.

commit 74d0d2eaa61e29b9a03149bcdcabc609281f8c26
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Tue May 17 00:23:02 2011 +0000

    Adjust the cabal init interactive prompt string

commit a8b0d852a5f1087765c9a004e465531e66e0ba88
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Tue May 17 00:20:50 2011 +0000

    Add a cabal init question about whether to generate comments
    Users will typically only want this the first time they use cabal init.

commit 40e46437b33d3ce9f254ff4be1cb3046c4318b68
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Mon May 16 08:34:29 2011 +0000

    Generate lower case field names in cabal init

commit 8ce7696eebf76f9a9950763e9cec257f7ead82c8
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun May 15 16:38:22 2011 +0000

    Fix formatting of cabal init BSD copyright declaration

commit 895e9373be9dd0a2de5f3869fc8e3570564d1316
Author: Ben Millwood <haskell at benmachine.co.uk>
Date:   Sat Apr 30 11:17:30 2011 +0000

    Correct spelling surpress -> suppress

commit dceb8d4d99e484e5872872520a21fca143a46afa
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Tue May 3 14:49:32 2011 +0000

    Fix bug where contraints where lost for case insensitive package matches
    E.g. cabal install cabal-1.8.0.6 would actually install the latest version
    instead, because when 'cabal' got corrected to 'Cabal' the associated
    constraint 'cabal == 1.8.0.6' was not converted to 'Cabal == 1.8.0.6'.

commit 704a7c89f48eda8f21f1bb2863662c4cf9c6e56b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Apr 18 21:14:36 2011 +0000

    Distinguish the various impossible errors in the solver
    Will make tracking down problems easier in future.

commit 80686328e520564839a723ad1ac91e79a032d874
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Apr 18 21:12:11 2011 +0000

    Fix a case in the new solver pruning pass
    It is actually possible for pruning to eliminate required packages
    because it's possible for it to propagate all the way up to one of
    the initial targets.

commit d4f63012bfa09c15f1ca9bc7aba373aeb3dac419
Author: Thomas Tuegel <ttuegel at gmail.com>
Date:   Mon Apr 18 11:05:29 2011 +0000

    Install phase pulls in test suite dependencies when necessary.

commit b62799ef89d18bbeaabe9a745311a4eca39536f3
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Thu Apr 14 20:52:40 2011 +0000

    Add command line support for installed, source and flag constraints
    e.g. --constraint='foo source'
         --constraint='baz installed'
         --constraint='bar +this -that'

commit 315e505ffbaa42eaa5c1e295b23b4149082d564e
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Thu Apr 14 20:47:29 2011 +0000

    Change the use of the InstalledConstraint type and enhance solver logging
    Now log when things get excluded due to installed and source constraints.

commit a4c6a4e0e061c61c179a5c99ed5f8a7aab25083e
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Tue Mar 29 09:57:10 2011 +0000

    Add support for source constraints to the solver

commit e5edf1e9808b960bd1d4aeaeb14781660fbe217d
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Mar 27 23:52:54 2011 +0000

    Rename the constructors of PackageConstraint to be more consistent

commit 68d92699e5536eb86ddfaa02f818b52230640768
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Mar 27 22:37:43 2011 +0000

    Remove a module dependency to avoid cyclic imports

commit d04e4542cdc0d0d6925c59db76f54a918c6ccf88
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Mar 27 18:02:52 2011 +0000

    Tweak to conflict constraint error message

commit 45f97282206e3a403316f27e4122e8d41f7fac7e
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Mar 27 18:02:06 2011 +0000

    Log package exclusions due to top level constraints

commit c368eb5106bad46ddd39f49bee5e92a959626a28
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Mar 27 17:57:33 2011 +0000

    Prune impossible packages as a solver pre-pass
    There are many packages that can never be successfully configured
    and by pruning them early we reduce the number of choices for the
    solver later (which is good since the solver does no backtracking
    when it makes bad choices). This relies on two recent features:
    1. we can now express constraints that exclude a particular source
    package and 2. that we can exclude packages without needing to know
    whether or not they will ever be needed.

commit a3024a9bf14447074e16b64f505673920755eeac
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Mar 27 16:40:48 2011 +0000

    Distinguish installed constraint error messages

commit 3c8564279024c11e411f79ed5ecbe5b4faba9b02
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Mar 27 15:37:49 2011 +0000

    Eliminate TaggedDependency type from solver code

commit 7185c2549f323f1509134c2dd1af3c3c5399a368
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Mar 27 14:57:56 2011 +0000

    Update the solver to use the new target tracking
    The constraint set ADT now needs to be told which targets we are
    interested in, rather than assuming anything we constrain might
    be a target.

commit 07c3e7c46d81d46be1a1dc7f4edfac6d48ddb388
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sat Mar 26 17:16:58 2011 +0000

    Generalise the constraint set ADT in a couple ways
    We now track target packages and only require constraints on those
    targets to be satisfiable. This allows us to overconstrain packages
    that we do not care about, which is useful for excluding broken
    packages.
    We also now have a more general way of specifying constraints.
    Previously constraints were specified as the conjunction of a version
    range predicate and an optional installed constraint. This form made
    it impossible to express constraints such as "exclude this source
    package". Constraints for a package name are now specified simply by
    a function predicate on the package version and installed/source state.

commit 333857b9df98ff952081bbab55803d69f915939c
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Mar 27 13:42:32 2011 +0000

    Eliminate local definition of utility

commit 59ba79f4f8de83d8e7b8d050725f1818586a1932
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Mar 27 13:32:12 2011 +0000

    Cosmetic: use PackageId rather than PackageIdentifier

commit 2c02def16a1ad3e2508779238b7166d5e0211803
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Fri Mar 4 22:16:05 2011 +0000

    Change the terminology used in source code for available/source packages
    Rather than 'available' packages, the source now refers consistently to
    'source' packages. This is a bit clearer.

commit 80d6828b04e418221dfa538530d4b8313b0e04c6
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Mar 8 19:23:23 2011 +0000

    TAG 0.10.0

commit b240aecf7d06599161579462ab224dc47e83947d
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Tue Mar 15 22:47:21 2011 +0000

    Fix username prompting for cabal upload
    Fixes ticket #810

commit 231351146f057cd7f8604b45d6bf38254cb99624
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Fri Mar 4 23:39:56 2011 +0000

    Unbreak the world target
    I'd accidentally left out the world target from the parsing phase
    of the new user target handling system, so cabal install world did
    not work. Now added to the target parser.

commit 93cb29a05116aecd624873b15a833ae79c6a525f
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Fri Mar 4 22:13:07 2011 +0000

    Fix silly bug in cabal configure. Ticket #805.
    I made a mistake during the recent refactoring work and was using
    the dependency planner in the wrong way. The planner was being
    given the available source packages and duely picking them to
    satisfy dependencies, but for configure we're supposed to assume
    that all dependencies are installed already.

commit 7b66584c87c1afb4ec52378aed60b2010d160259
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 27 17:55:35 2011 +0000

    In bootstrap script, do Cabal before other deps
    So that the others can use the new Cabal for their Setup.hs

commit fcbf61293f57b81d9648a7fe58638800b8da10a7
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 27 14:53:02 2011 +0000

    Add source-repository this entry

commit 748d62bfcb20cc50e105e3b5fa6fb00a7bde7649
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 27 14:52:45 2011 +0000

    Bump version to 0.10.0

commit 6190b944c04de7bc8ce198bbfc2f611eab721af2
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 27 17:54:55 2011 +0000

    Require Cabal >= 1.10.1
    It contains an important bug fix for some platforms, notably OSX

commit 1b2fefbdf6fc7b7810725faa8ea8676256904c97
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 27 16:58:12 2011 +0000

    Update dependencies in bootstrap script
    Works with ghc-6.12 and ghc-7.0

commit 423019e34745f5b0eb7855acf038afc40e9653e2
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 27 16:57:13 2011 +0000

    Minor tweaks to bootstrap script
    When using curl, fail better on HTTP errors.
    Also remove some dead code.

commit 30a36269d3367b2e514c5998b48364aeaf8f8c08
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 27 15:26:37 2011 +0000

    Only look at global packages when doing ./bootstrap.sh --global
    Should fix ticket #796

commit c756defe6ef43fa01b370e8c1e541acb7a44b251
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 27 15:24:23 2011 +0000

    Add support for BSD fetch to bootstrap script
    On FreeBSD fetch is installed by default, unlike wget or curl.

commit f7f3f3dc38c8f2ec0d160191fe7312ef25cded4b
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 27 17:52:40 2011 +0000

    Add missing module to other-modules

commit 3e9a4bfbcd84a74d1f131caca5a74aad70c2ce4d
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 27 17:05:53 2011 +0000

    Update versions in README

commit f592c0be5ddbf8bef003d8a7b78905b53bec9de5
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 27 15:16:28 2011 +0000

    Update changelog for 0.10.0 release

commit 49e001c5c8aaca4bc9d96513c7a17580d0d2e187
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 27 14:52:22 2011 +0000

    Update copyright date

commit 8e824e6f037991b28313e1b14ea34343c0423c88
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Feb 27 12:50:08 2011 +0000

    Partial fix for handling multiple installed instances of same package version
    Previously when multiple instances of the same package are installed,
    e.g. in global and user dbs, we would often end up selecting the wrong
    instance. Now we select the user one consistently which will solve the
    problem in most (but not all) cases.

commit 6749ea36a867197c15945952391e12fba165760e
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Mon Feb 14 02:43:54 2011 +0000

    Bump version to 0.9.6

commit 7ed3088d9b2d4f080f809aaecca7ca74e3a97aac
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 23:41:15 2011 +0000

    Adjust the amount of output for the -v verbosity level in a few places
    For several commands, including install the -v verbosity level had
    far too much useless internall stuff in it. Reduced the amount of
    output from configuring the compiler, getting installed package and
    the dependency planner. The extra detail is still available via -v3.

commit c01f4bfe8c3e7f1dd2713a08b5f62432a6c1dc87
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 23:00:16 2011 +0000

    Remove UnresolvedDependency type

commit d9690b94b9c8b52987092ec7d40e6f8e27baf057
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 23:00:02 2011 +0000

    Remove code related to the dep resolver that is now redundant

commit c12fb4b607eb682104f7088849296b9a1b8dd2c5
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 22:50:41 2011 +0000

    Remove now-unused utilities from World module
    No longer needed now that the world target is handled via UserTarget.

commit aa9e7a91bc7cbe49cffb41df7c62cd4805d3dfb1
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 22:49:55 2011 +0000

    Use the new modular dep resolver interface in the various commands
    Also minor tweak to InstallPlan.remove

commit 468946e23ef6240c8bc7d778f1cd4736b090b9cd
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 20:08:24 2011 +0000

    Insert a separate fetch stage to the install process
    Helps to clarify things now that different kinds of packages
    are fetched in different ways.

commit 068de9c410360c326a3ba906af4d5d3feaa270f4
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 20:01:09 2011 +0000

    Tweak implementation of fetchRepoTarball

commit 248842bcaa056c889a4b5ba34899236c3d205092
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 19:50:09 2011 +0000

    New interface to the dep resolver that allows modular policy construction
    Allows shorter and clearer code for the various ways the resolver is used.

commit 856c936cab7a663cce813d3a0a133e075f0a55fa
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 19:46:27 2011 +0000

    Partial rewrite of cabal list and info commands
    The new user target system requires a change in how cabal info works.
    Instead of just giving package names and looking them up in the
    available package index, we can now specify names with versions or
    version constraints which means we want the info to be about that
    version in particular. We now list many installed and available
    versions and mark which ones are preferred or not. Also fix a bug
    for packages that are only installed, not available.

commit 56072979144077d120c01bd2f3d02440868f0cf5
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 19:41:50 2011 +0000

    Add a new module for handling user targets
    This will allow us to increase the range of targets that cabal
    commands can support. The new ones are local directory targets,
    local cabal files, local tarballs and remote tarballs by URL.
    Also a better way of doing the special "world" target.

commit 2ed616908f849ac01d250b9f39f49e4c28499dbe
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 19:40:34 2011 +0000

    Add a fetchPackage utility
    Works for any package identified by PackageLocation
    rather than just for repo packages.

commit 0a18b860f578e868eec96e0c8220b0b5ee69f168
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 19:39:11 2011 +0000

    Add a few more Tar Entries utilities

commit 4808755c6ebd58ce4f655a565d571b8c26ba6805
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 19:32:18 2011 +0000

    Add a local path and type param to PackageLocation
    So we can now use PackageLocation FilePath or Maybe FilePath to
    describe what we know about the fetch status of package tarballs.

commit c45743af3e0bf0d91165d1ec70ccaed94b8e2b3a
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 18:50:06 2011 +0000

    Separate WorldPkgInfo type from UnresolvedDependency type
    Currently just a renamed copy of UnresolvedDependency but called
    WorldPkgInfo and defined in the World module. This is in preparation
    to remove all other uses of the UnresolvedDependency type.

commit 21a2fde976c3347b6465eafd7377cce43894bcf1
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 18:35:29 2011 +0000

    Rename AvailablePackageSource to PackageLocation
    And remove import list for Types module, just import it all

commit d1c88428f368cd0f6ccf925277b8b5918cb538a8
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 18:34:46 2011 +0000

    Split out a FetchUtils module
    And rename fetchPackage function to the more accurate fetchRepoTarball

commit a246841cf7c4c00ca2429d2a9fc8431f5faf0007
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 16:51:51 2011 +0000

    Remove unnecessary Maybe from LocalUnpackedPackage dir filepath
    We can just use "." instead of Nothing

commit 12782f1cb7382f636fc4e41f3b3344999a749ebf
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Jan 23 19:37:06 2011 +0000

    Change the interface of the two package index search functions
    Move the ambiguity checking to the only use site
    Both normal and substring search now return [(PackageName, [pkg])]

commit f2e337fa6f03ed8de9c3f84fd6ab6fbe5ea64f5d
Author: Vo Minh Thu <noteed at gmail.com>
Date:   Mon Nov 8 18:49:27 2010 +0000

    cabal report uses the correct URIs and authenticates with username and passwords flags

commit 2f92e540fcaccb74e7d58daa6e4079d31d0ae056
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Feb 13 17:19:56 2011 +0000

    Change position of --only-dependencies in --help listing
    Move it next to the --upgrade-dependencies flag

commit 1b7d3a5fc1633169c467408890394a738557a2f8
Author: josh.hoyt <josh.hoyt at galois.com>
Date:   Wed Jun 30 21:37:36 2010 +0000

    Add an --only-dependencies flag to "install" (see ticket #697)
    
    This flag installs only the dependencies of the packages that were
    explicitly mentioned on the command line. This is useful for using
    cabal-install in development environments, where the developer needs
    the dependencies to build the package in development, but does not yet
    want to install the package itself.

commit 37b638da11cbd2c6acece581c325f57036b3afdd
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Sun Jan 23 20:21:00 2011 +0000

    Change my email address

commit bbb363881b08011195a904110dcd4faf25fc7730
Author: Jens Petersen <petersen at haskell.org>
Date:   Sat Jan 22 13:53:39 2011 +0000

    fix a comment typo of 'according'

commit 70ea3c21a203d6b90ee5fad2c52cae6ab1d0b778
Author: Duncan Coutts <duncan at community.haskell.org>
Date:   Mon Jan 17 14:49:00 2011 +0000

    Preserve executable permissions on unpack

commit 7f6df0a790249c429309781806fb5aa40f50a515
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Nov 23 17:46:41 2010 +0000

    Fix time version regexp in bootstrap script
    Sigh, having to use shell script and regexps...

commit 7251aaad4a900b16871ca0dce762324ed74fca8a
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Nov 23 17:43:28 2010 +0000

    Bump upper bounds on core packages for ghc-7

commit 724ff994b2720368956393254f86356ffcec788c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Nov 23 17:31:24 2010 +0000

    Increase default HTTP package version in bootstrap script

commit d91f477178e9cadf4e1fe24ba02893f83e54c5f5
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Nov 23 17:25:16 2010 +0000

    Update dependencies in the boostrap.sh script

commit 0fdc26a3e3d0dc25cef3eb96a6fbb0acc6e3e36c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Nov 23 17:09:57 2010 +0000

    Bump time package dependency for ghc-7

commit 38bd5efb2d6bffd638e0f94eeb16a6abab4ff1c1
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Oct 27 09:50:34 2010 +0000

    Add an extra note about the http proxy decompression issue

commit ae8fb083aacf3cdd24fd362b241c5dea87cf02f2
Author: Dmitry Astapov <dastapov at gmail.com>
Date:   Tue Oct 26 21:26:06 2010 +0000

    Use "maybeDecompress" to handle broken proxies that transparenty decompress network streams. Closes #622, #686. Cabal update could fail in some cases, see http://trac.haskell.org/http/ticket/109283

commit d2e60eb23827b188a3a558db247d0096825f0f66
Author: Dmitry Astapov <dastapov at gmail.com>
Date:   Tue Oct 26 20:23:43 2010 +0000

    Added GZipUtils to handle .tar files with the same code as .tar.gz

commit 5f178967c013c66839a18bc6205091afbbb671e0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Oct 16 19:28:16 2010 +0000

    Update to use Cabal-1.10.x

commit 803de0578a4f9e6840997f8d1358d1493a6fad6b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Sep 1 21:03:51 2010 +0000

    Add a TODO about fetch --constraint flags

commit ea28e251038709cf36bb88861d4364de438a6b37
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 10 20:41:58 2010 +0000

    Simplify the bash command completion
    Fixes #741. Patch contributed by Jan Braun <janbraun at gmx.net>

commit 4ae50a3d95e5205152bcf26308d4f098c864ab26
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jun 14 21:35:36 2010 +0000

    Do not add lower case .hs files as modules in cabal init
    There's still something wrong with the recursive dir traversal.
    It fails in some large cases.

commit aa4ce35253897ed8d35421375e9e5481922f808e
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 31 13:03:06 2010 +0000

    Disable cabal upgrade and add cabal install --upgrade-dependencies
    cabal upgrade now gives an error message telling people to use install
    or, if they know what they're doing, install --upgrade-dependencies

commit edfa7672588df9d48d0fcc30db2357d4acc0d19b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 31 12:14:22 2010 +0000

    Bump version to 0.9.2

commit dfc473ae87352eade3db4d553b5da62c1f8ba6ca
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri May 28 20:03:26 2010 +0000

    Minor tweaks in haddock code

commit b0e99f9e7950830cc1035f3f608878e98896e10b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri May 28 01:15:23 2010 +0000

    Use new simplistic package resolver for cabal unpack

commit a538b1e79eeb88254f7ffec0fe85591b2db9d397
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri May 28 00:35:08 2010 +0000

    Add cabal fetch --no-deps and --dry-run flags
    Allows fetching one or more packages but without fetching their
    dependencies and thus not requiring that a consistent install plan
    can be found. On the other hand --no-deps means that there is no
    guarantee that the fetched packages can actually be installed.

commit e4a26cc7d4a628fceaa5aea947235b238fbae8ee
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue May 18 12:55:09 2010 +0000

    Use the simplistic available package resolver in cabal fetch
    Not yet connected up to the user interface.

commit 3056bfadb96fa2e400abab49da4eec20f91793f5
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue May 18 12:53:57 2010 +0000

    Add a simplistic resolver for available packages that ignores dependencies
    Suitable for cabal fetch/unpack but not for installation.

commit 3729ca23a7ccf226eb1662cb4205f8784d40eecd
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 17 11:16:24 2010 +0000

    Rearrange dependency resolver code slightly

commit 54d12234eba5b2d59db01acb088211c6df7a72f1
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 17 11:13:36 2010 +0000

    In fetch code, move dep resolution into separate function

commit d7962bac9024cab5c105ee583ddcd1b72cec7936
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue May 11 03:09:41 2010 +0000

    Add initial internal support for more kinds of available package
    Previously only named packages from a remote package archive, or
    the unpacked package in the current directory. Now also add unpacked
    packages in particular directories, local tarballs and remote tarballs.
    No support in the user interface or dep planning yet.

commit f90f21203098e8ee7c966057bd51dca8380dc701
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Jan 17 11:38:49 2010 +0000

    Use non-Char8 ByteString.readFile for reading 00-index.tar.gz
    Was showing up on windows as an error decompressing after cabal update.
    Thanks to Tamar Christina for reporting and helping track down the bug.

commit f395a5a89506c18e997680ca5617030fb886eedc
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 10 05:48:24 2010 +0000

    Remove redundant dry-run support from world file code

commit bf7fb0d46a1731d7d6948ee682c504d0b03498ce
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 10 03:40:13 2010 +0000

    Bump version to 0.9.1
    New world file feature

commit 076dde2da0edb983fa7f344ac5dc060f92af29ae
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 10 03:30:51 2010 +0000

    Workaround for 'cabal install world' problem with empty world file
    The current dep resolver does not like an empty set of targets
    along with a non-empty set of constraints.

commit a80c168e6b995c974f9dedbc4e7381bb2a5a13f8
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 10 03:28:48 2010 +0000

    Update a coupld copyright and maintainer notes

commit 0789d4179fd874aaee21ef7770b26ca5a4273aa4
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 10 03:27:56 2010 +0000

    A bunch of TODOs for the Install module

commit f806b14ff9e0b113afe8aa322a24bbf24b71d250
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 10 03:27:36 2010 +0000

    Misc minor tweaks in Main

commit 2628f71e0d655031629df86a30792c12cd163092
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 10 03:24:57 2010 +0000

    Update world file entries ignoring version constraints
    Otherwise it is easy to add impossible constraints to the world file.
    cabal install 'foo > 1' && cabal install 'foo < 1'
    Would give us a world file with both constraints.

commit dc50b54e553ac547b9290ac40c373965d6e2a0d0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 10 03:21:21 2010 +0000

    Rearrange the code for the world file feature
    Better better organisation of concerns for it to be in the Install
    module rather than in Main which is mostly concerned with command
    line handling.

commit 9b6c8bb220629f002c212c9d0e85325a881b0631
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 10 03:13:28 2010 +0000

    Add plumbing in install code for global flags and target list

commit c21c97e98f219e80194faa2ae2183346d9029617
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Apr 27 01:13:18 2010 +0000

    Make the logs dir a proper config item and pass it to the install code

commit 70c3eff68f6b2df9870d2d3f06c9ab3667ba27fd
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Apr 26 00:51:10 2010 +0000

    Rearrange installation code to make it a bit clearer

commit 1dd404c9dc8200d39af4d3aca62fc8ffc7f5248b
Author: Peter Robinson <thaldyron at gmail.com>
Date:   Tue Nov 3 20:29:27 2009 +0000

    Updated patch for world-file support
    Update 2: now uses writeFileAtomic from Cabal
    This is a new patch for Ticket #199; it adds the "--one-shot" option.
    A world file entry contains the package-name, package-version, and
    user flags (if any).
    For example, the file entry generated by
    # cabal install stm-io-hooks --flags="-debug"
    looks like this:
    # stm-io-hooks -any --flags="-debug"
    To rebuild/upgrade the packages in world (e.g. when updating the compiler)
    use
    cabal install world
    Installing package 'foo' without adding it to the world file:
    # cabal install foo --one-shot

commit dba12574d6317007fd7a1e4f65bda4bfc6942416
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Apr 1 16:51:25 2010 +0000

    Import installDirsOptions from Cabal lib

commit 6169c65b23265688f57cd2389cf77639ef4ec49e
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Mar 20 21:53:31 2010 +0000

    Cope with intra-package deps when constructing install plans

commit 6e7732f76467d08d9e1914b51df13d92f4ca6a7f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jan 14 03:35:01 2010 +0000

    Don't generate #! lines in Setup.hs files in cabal init
    We don't want to encourage multiple ways of invoking Setup
    The one true (cross-platform) way is: runghc Setup

commit 9bcda2a429ef85e3b62d8c75cac5fd46f9772f7f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jan 13 19:19:13 2010 +0000

    Fix the display of the license in "cabal list" output

commit 46cedfeec6d4e632d52c75237fcfdf7ed07cd41d
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Dec 29 21:20:20 2009 +0000

    Adjust to the change in the type of getInstalledPackages
    It used to return Maybe, now it always gives us a PackageIndex.
    This depends on an API change in Cabal-1.9.x.

commit 1a2aa6b491be9baf5055465c9621eae00864d594
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Dec 22 13:25:26 2009 +0000

    Display the exception for failed downloads
    Not great but better than nothing.

commit 915897cbf6894dc8b29599cd2494f5155424427c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Dec 22 13:09:59 2009 +0000

    Remove now-unused compat module

commit 4c55f6990eb9c59157dcc84e1dd788cf1e4be9ae
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 28 16:54:11 2009 +0000

    Change the default config on Windows to per-user installs
    Slightly experimental. We should look out for unexpected consequences.

commit 8839045d97aadcb8bb40420b00b1a3c0c7483d45
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Dec 22 09:51:52 2009 +0000

    Move downloadURI to HttpUtils module
    And use exceptions rather than return codes.

commit 08fcf2f682a56cbc1eaa4411531bc5a451267fe7
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Dec 22 07:58:21 2009 +0000

    Fix a couple more ghc-6.12 -Wall warnings

commit 32d5da2ff009873bb52a8ba38d62d733e3c4abdf
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Dec 22 08:05:37 2009 +0000

    Fix cabal sdist --snapshot

commit 8b5bdbad9dc9668d5c2155dee4847922198d5a0a
Author: Sergei Trofimovich <slyfox at community.haskell.org>
Date:   Sun Dec 20 22:01:05 2009 +0000

    Distribution/Client/InstallSymlink.hs: explicitely import 'catch' and friend tom System.IO

commit 036b7431194b0e0286d0715f39af96c1806acbdb
Author: Sergei Trofimovich <slyfox at community.haskell.org>
Date:   Sun Dec 20 21:55:08 2009 +0000

    Distribution/Client/Install.hs: removed unused 'compilerTemplateEnv' from import

commit 620e02a21dd82ffac65ab345ba02ce01a69cc4e1
Author: Sergei Trofimovich <slyfox at community.haskell.org>
Date:   Sun Dec 20 21:45:45 2009 +0000

    Distribution/Client/Unpack.hs: removed redundant import

commit 87edfa83905b77d7a48eed278e1ab482846e6b17
Author: Sergei Trofimovich <slyfox at community.haskell.org>
Date:   Sun Dec 20 21:44:48 2009 +0000

    Distribution/Client/Setup.hs: suppress warning (unused variable)

commit de64c486fbb13660e614af661a1cb6debae689a3
Author: Sergei Trofimovich <slyfox at community.haskell.org>
Date:   Sun Dec 20 21:37:57 2009 +0000

    Distribution/Client/Haddock.hs: removed redundant instances

commit ec6f5156c797617702f461b7e5cce59199b75786
Author: Sergei Trofimovich <slyfox at community.haskell.org>
Date:   Sun Dec 20 21:33:50 2009 +0000

    Distribution/Client/BuildReports/Anonymous.hs: removed unused import of BuildResult

commit 23ceebd4a415b6d9c9b1b44ebe5fb1ce94baab9d
Author: Sergei Trofimovich <slyfox at community.haskell.org>
Date:   Sun Dec 20 21:19:40 2009 +0000

    Distribution/Client/IndexUtils.hs: fixed warning on -Wall (unused result)

commit 4da87c0587c553a38f2bb97d707846911aa653d8
Author: Sergei Trofimovich <slyfox at community.haskell.org>
Date:   Sun Dec 20 21:17:17 2009 +0000

    Distribution/Client/SrcDist.hs: fixed warning on -Wall (unused result)

commit 2bc80f8fd2b23d6b7310f4c4aac04396675a1411
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 21 14:07:52 2009 +0000

    Fix fromFlag error in upgrade
    Use the missing defaultInstallFlags.

commit f94148e389279837f7b958764f03f3d9f60389d9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Dec 19 03:44:51 2009 +0000

    Reorder commands in cabal --help output

commit 1facd9015bc1348e69d4e844b4cf64d9b451cb7f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Dec 19 03:10:17 2009 +0000

    Use the standard form of copyright statement in BSD3 license template
    See http://www.opensource.org/licenses/bsd-license.php

commit 5813efcc32e6a9b51f7babd35e9dd86333a4706d
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Dec 19 03:08:55 2009 +0000

    Remove stability feature from cabal init
    The stability field in .cabal files is deprecated since it's mostly useless.

commit a6e6754d4c89b771dad947baf7e9f682bd7e2da0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Dec 19 03:07:47 2009 +0000

    Make the cabal init command line flag names follow the normal convention
    Using hyphens rather than upper case.

commit 398ac673d94007ab197096452fed8deae322cbe8
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Dec 18 23:25:01 2009 +0000

    Fix reporting of installed program versions in cabal list
    We do not know if programs are installed or not so report
    unknown rather than saying it is not installed.

commit 8fab6dfaa04d2d046dab026be8000ababc7d773d
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Dec 18 17:34:59 2009 +0000

    Update the README

commit dfdfe7efee85f272fb2d2551a1ead192aeb1858d
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Dec 18 17:22:45 2009 +0000

    Bump head to new dev version 0.9.x

commit 21da098a2954eaad37c788d62b189a8372dd85ef
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Dec 18 17:16:42 2009 +0000

    Update various .cabal bits

commit b239c9bf59aeff0cb90ed34def5a96fc79472c42
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Dec 18 16:52:34 2009 +0000

    Update the bootstrap script to work with ghc-6.12
    We can no longer expect mtl, network and parsec to be installed.

commit ca7389eea53d4a77dbe821b35fc22ee16ac923f8
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Dec 18 16:52:21 2009 +0000

    Update the changelog for 0.8

commit 221ce6c41ba7d3f7af6fa41f7979d63db13832fb
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Dec 18 16:51:19 2009 +0000

    Fix combination of --global --package-db when compiling Setup.hs scripts
    The order of the package db stack is important.

commit f99f4e9f47c64a67cc25cad0c039f0b3de0f909c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Nov 23 06:37:34 2009 +0000

    Allow numeric fields in tar headers that use binary format
    This is an old non-standard extension that some tar tools still use.

commit 2fbd5fc799e630c2cf061af248b192a5f7d1d5d0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Nov 22 08:04:46 2009 +0000

    Create all parent directories of extraced files
    Previously only created the immediate parent directory.
    No rely more heavily on the file security check to make
    sure we are not writing files outside of the target area.

commit 77095eaaa2be95b8883b745da46d91ef22f0abd0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Nov 22 08:02:55 2009 +0000

    Ignore PAX entries when checking for tarbombs
    When checking for tarbombs, ignore PAX entry types 'g' and 'x'.
    These do not get extracted so their names do not matter.

commit d7a3b3d4fb2496addac7cf60dd845e187d35b522
Author: Sergei Trofimovich <slyfox at community.haskell.org>
Date:   Fri Nov 13 16:58:33 2009 +0000

    fixed 'cabal sdist'

commit b9d5ca15a75a0a1b6b0398c9d195fd718f3d951f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Nov 10 11:37:35 2009 +0000

    Build with ghc-6.6

commit 6232e0fb1a2ebed118ac5770ff1d67461e968973
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Nov 10 11:24:15 2009 +0000

    Fix base 4 exceptions in #ifdef WIN32 code section

commit 27d763d3b48289b1dbd02b14ba7327123fa5142d
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Nov 4 14:26:58 2009 +0000

    Add a couple checks to "cabal unpack" and improve the messages

commit a52316abea1c6c4b4d9c2c51a2d60097d519d41b
Author: Robin Green <greenrd at greenrd.org>
Date:   Mon Nov 2 07:34:14 2009 +0000

    Fix bootstrap (#599)

commit b92490f73c4efc71a8f0c6841094524d4b9b30bb
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Nov 2 15:05:28 2009 +0000

    Switch to using some Utils from the Cabal lib
    Remove local copies. Also fixes a bug recently introduced
    in the writeFileAtomic function, spotted by Peter Robinson.

commit 0f8fae8914b68b3d9bc69cad41a510f70c3914e4
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Oct 28 16:38:49 2009 +0000

    Parly fix building with ghc-6.6
    The new cabal init stuff needs some work.

commit 7d038a2d51303f8b04fdf1d1b6a19bab016831e7
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Oct 28 16:37:19 2009 +0000

    Fix building with ghc-6.12

commit c671acf44715d757f523f05d3473c9cb721fb4fb
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Oct 28 16:33:52 2009 +0000

    Fix building with ghc-6.8

commit 17a0af74b66a63c0cc6226850ca9f1a16b056894
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Oct 28 16:31:48 2009 +0000

    Allow building with base 4

commit 979c5ba50ef03770652d0093e0b5934426be9bae
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Oct 28 13:35:27 2009 +0000

    Bump version number a bit

commit ca80484a82048dad3965609b71adcd931ffd325a
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Oct 28 13:35:13 2009 +0000

    Update list of modules (so sdist works)

commit 52fac63fcb82eb7f035c08b7dc3742615853dc16
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Oct 28 13:20:37 2009 +0000

    Update new cabal init code for the recent package id changes

commit 9012afb5ce22ee183442cc985a5a406874f79f5f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Oct 22 12:39:46 2009 +0000

    Initial go at converting to the new Cabal-1.8 installed package system
    It works by ignoring the possibility that there could be multiple
    installed packages sharing the same source package Id. We just pick
    the "top most" one which is usually ok. We make no attempt to check
    that we are using consistent installed packages.

commit dab70d55e792cb4a0eb1bd388e9c63c1576064ee
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 18 17:32:33 2009 +0000

    Update for changes to finalizePackageDescription

commit a36f016defd6e15a565d010465ee28b496223515
Author: Brent Yorgey <byorgey at cis.upenn.edu>
Date:   Sun Oct 11 16:56:44 2009 +0000

    add 'init' subcommand for initializing project cabalisation

commit e8b2ad08018ee17e43c1fa7a4a7e01bb37aa9a15
Author: benedikt.huber <benedikt.huber at gmail.com>
Date:   Wed Sep 2 16:03:32 2009 +0000

    Collecting some heuristics for creating an initial cabal file

commit 942f661751658c2192f85ba456e78709140b83c1
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Oct 20 21:23:19 2009 +0000

    Apply suggestion for bootstrap failure message
    ghc ticket #3602

commit 1c6a57f553b2b00574e8875ef75f75f59dc1aa0c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Aug 29 00:49:59 2009 +0000

    Fix calculation of paths in check for bindir symlink overwriting
    We were doing it wrong, but Linux realpath() C function was letting
    us get away with it. The Solaris realpath() is stricter.
    The new implementation is also simpler, relying on the fact that
    the canonicalizePath function will resolve symlinks.

commit 38b377de8060c61115ebd0f0d7bc39fcfa480bd3
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jul 7 09:59:44 2009 +0000

    Require Cabal lib version 1.7.3
    Needs recent api changes.

commit 268f3d5a32aa4231f7189276a97a36893054e8f6
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jul 7 01:30:30 2009 +0000

    Make the documentation toggle determine if we make the haddock index
    Previously the --haddock-index=template flag controled both the
    template used and whether it's used at all. When no path was set
    then it was not used. The problem with that is that since we are
    not enabling this feature by default then the default is blank.
    That is the default config file would look like:
    -- haddock-index:
    which doesn't help anyone discover what it means or what a
    sensible setting would be. By having a separate toggle to
    enable/disable we can have a default for the index file which
    makes it easy to discover in the config file:
    -- documentation: False
    -- doc-index-file: $datadir/doc/index.html
    All the user has to do is uncomment the first line and use True.

commit 3dfdd5f51094ec4ee8426c0c07732a4e08190b86
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jul 7 00:51:49 2009 +0000

    Be less noisy about warning about packages with missing docs

commit 2546b40c1973634f84f8afe42b25490dd8ef5bfd
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jul 7 00:48:36 2009 +0000

    Use defaultInstallFlags as the defaults

commit ddd9adc7e5a4014d3cf9d22d8bbc63eaab876668
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jul 7 00:37:22 2009 +0000

    Move regenerateHaddockIndex more out-of-line in the Install module
    Also update the code somewhat following the changes in
    the Cabal API for path templates and substitutions.

commit 30cb371a73b7bf64eb29f4f76327c7908da65871
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Jul 4 17:06:02 2009 +0000

    Use $pkgroot/package/$pkgid.tar.gz as tarball URL

commit b23d68277202f5475baf5aff4e1ea6424d75f4ae
Author: Andrea Vezzosi <sanzhiyan at gmail.com>
Date:   Sun Jun 7 17:05:12 2009 +0000

    #516, maintains a per-user index of haddock docs
    If the haddock-index flag is set it keeps an index
    of the haddock documentation of the packages in
    the global and user databases

commit 61069dbc93cbf7604f53959677d6c53a36f1978e
Author: Dino Morelli <dino at ui3.info>
Date:   Sat Jun 13 15:09:58 2009 +0000

    Now supporting explicit --user or --global switches in bootstrap.sh with usage feedback for bad args
    This change was adapted from work submitted to the cabal-devel mailing list by Jason Dusek.

commit 9a9b519c368ceb0ebd63b52efef4abc5f13f6301
Author: Brent Yorgey <byorgey at cis.upenn.edu>
Date:   Thu Jun 11 17:12:33 2009 +0000

    add message to 'package not found' error advising to run 'cabal update'. (#497)

commit 730410ec0b30c0a4fd3a80dd158bff32d7da7522
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jun 5 02:34:41 2009 +0000

    Fix sdist
    Fix handling of base dir in tar file creation.

commit 0ce74deb9676f316d1c4085f5232e3012960a2ea
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jun 4 18:05:00 2009 +0000

    Fix use of deprecated version constructors

commit 50dfcc87da04af13503a96d398cd350ed7c82615
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jun 4 17:57:26 2009 +0000

    Only report preferred new versions of cabal-install are available
    That is, use the "preferred-versions" mechanism when deciding
    whether there is a new version available. This would allow us to
    upload a new version without everyone immediately being told to
    get it and try it out.

commit a6fe50118ff20d86d892b6e8ec96948894cd3ad8
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jun 4 12:48:36 2009 +0000

    Make cabal upload/check print out the error messages reported by the server
    The code to do it was already there but we were checking for the
    mime type text/plain using just (==) when in fact the server reports
      text/plain; charset="ISO-8859-1"
    so we have to parse the field a bit better (still a bit of a hack).

commit 77b9655c59a90cf719f772d44bff14db155ab802
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jun 3 10:23:12 2009 +0000

    Require latest Cabal lib version

commit 4c96ce141955720280631c7c47c001378fcf6769
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jun 3 10:22:54 2009 +0000

    Improve formatting of cabal check output

commit 851beab58e0119a91d7cbbe2d7442ceed1c233cf
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jun 3 10:16:23 2009 +0000

    Only apply preferences to base if its version is unbounded above
    Fixes ticket #485. This means that for constraints like:
        build-depends: base >= 3 && < 5
    we will pick version 4. However we will continue to apply the
    version 3 preference for things like:
        build-depends: base >= 3
    Where there is no upper bound on the version. Note that we now
    also ignore preferences for base given on the command line.
    We should implement #483 to split prefs from shims.

commit 96abc7dfe6cd06d54715c82e18fcd25fcb16e46c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Mar 21 15:46:23 2009 +0000

    Improve the parse error message for package name/deps
    Make it clear that it's the specification of the package name that
    is at fault rather than the package to which the name refers.

commit 211e55005dead8efa6d9c7afc7896b6599edcc18
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Mar 8 14:29:25 2009 +0000

    Debian in their wisdom decided to build network against parsec 3.
    So checking for parsec 2 fails. We don't strictly need parsec, it's
    just a dependency of network, so remove the check.

commit 988f1309257422d5e4e18c46c9c58977700b95ea
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun May 31 19:13:46 2009 +0000

    Simplify version ranges before printing in error messages
    Part of ticket #369

commit c07e5b1503320bff352585fb76991058c0321e14
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun May 31 19:03:18 2009 +0000

    Use new top handler, should get better error messages

commit 6da4cdb1ca4c8c86e6d28d6a8326d566e81b8a83
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun May 31 19:02:39 2009 +0000

    Fix uses of deprecated stuff

commit 0091be1d661d2e353c2114166712f6bd507e4ff9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun May 31 18:43:36 2009 +0000

    New development branch, version 0.7
    Update to development version of Cabal

commit 986c3986e50d989c4d19489b4e56a19e9fc2c440
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Mar 18 09:17:30 2009 +0000

    Solaris 9 /bin/sh doesn't like the ! syntax in bootstrap.sh

commit 6f036e5dc146ed3e1cfaeddffbbaccccfacd9056
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Mar 15 12:54:07 2009 +0000

    Clarify the instructions in the README and bootstrap.sh
    Addresses the complaint in ticket #523.

commit 130cccde742b1880ab5d426611fb207f548d301c
Author: Paolo Losi <paolo.losi at gmail.com>
Date:   Mon Feb 23 00:52:51 2009 +0000

    Select Configuration file via env var CABAL_CONFIG.

commit 22403326cd0e06f047c7f1bbbe0cc300da5312d3
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Mar 1 17:49:49 2009 +0000

    Update tar code based on new tar package

commit 6c86989f12962db3886e7adcbf3f399347d14c77
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Feb 21 15:46:05 2009 +0000

    Actually does compile with unix-1.0 that comes with ghc-6.6
    ghc-6.6.1 came with unix-2.1

commit 451c757bbb57c2fe166252049d37bc2b229b617c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Feb 19 13:07:20 2009 +0000

    TAG 0.6.2

commit 34c5f1caad003afd8ec7f51f88086a2bf5b155c4
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Feb 19 13:07:05 2009 +0000

    Update the README

commit 6638d7a139994c94607cf53eb8ebeaf3df59110c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Feb 18 23:52:06 2009 +0000

    Add missing other-modules

commit 142a0fef937dbd2c2c33725d065cb0ab5141d5d4
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Feb 18 23:46:50 2009 +0000

    Add extra assertion into the top down dep planner

commit f75ca539af95fec3a71e8b8aad5ec5fbc36cc9a2
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Feb 18 23:10:16 2009 +0000

    Bump version to 0.6.2

commit 384908c451053c22580ac1fecb4aa7802c8ac095
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Feb 18 23:09:18 2009 +0000

    Update changelog for 0.6.2 release

commit 4f27b18d40e3eb18c0a72b360d0cda7bcd2f5dc8
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Feb 18 22:39:43 2009 +0000

    Tweaks to the bootstrap script
    Update Cabal lib version to 1.6.0.2
    Implement a couple shell script coding style recommendations.

commit 91adfee1d8722f84b6453a0afba951ff0533ee87
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Feb 18 22:17:52 2009 +0000

    Disable the upgrade command for now.

commit 040956358da23a525b4cd3a526735da40c71c566
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Feb 16 18:14:24 2009 +0000

    Add warnings in the case that no remote servers have been specified
    It's not strictly an error but it can be rather confusing.

commit dfc4e481d73d7ac940e96a1bbe67cfb2cd492664
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Feb 15 19:08:17 2009 +0000

    Put an explanation of the config file format at the top in comments.

commit f81f2e288acf4f44cff51f126984c349789056c3
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Feb 15 19:07:27 2009 +0000

    Change the field order in the initial config file.
    Also update the name of one excluded field.

commit 084de42bc8c07a352de9df11a8c0b3b4f9341b93
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Feb 15 19:05:24 2009 +0000

    Put the default logging and reporting setting in the initial config file.

commit 0a6fdc8293f6a3720a889d29752ed13d4f02c693
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Feb 15 19:02:54 2009 +0000

    Complete the implementation of --build-summary=TEMPLATE
    Actually respect the new flag. It's actually a list of template files
    and all specified files get written to. This allows us to specify
    a default build log file and also have the user write to extra ones.
    The summary file template can contain $pkgid $compiler etc.

commit c4f89337b717a3193168fb40410800fe896c394b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Feb 15 18:58:00 2009 +0000

    Rearrange user interface for build logging
    The new options (as described in ticket #501) are:
      --build-summary=TEMPLATE
      --build-log=TEMPLATE
      --remote-build-reporting=LEVEL
      where LELVEL `elem` [none,anonymous,detailed]

commit 3a3dcd83c376c58047c4446febc3108afc86e77d
Author: Ganesh Sittampalam <ganesh.sittampalam at credit-suisse.com>
Date:   Tue Feb 10 23:07:36 2009 +0000

    always check environment variables for HTTP proxy first

commit 6a628b395a1b0192a9959ca8f97ae4ccf97e1c8c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Feb 9 21:18:44 2009 +0000

    Improve the cabal update notice

commit 43528c20fd6de28a3036c798311fa88920bdb01a
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Feb 9 20:12:28 2009 +0000

    Don't report that packages are cached at the default verbosity level
    It's just not that useful. Report it at -v verobisty level, and
    change the text and formatting.

commit 852ce0443cfb2c558794f5862897173de19335de
Author: Andrea Vezzosi <sanzhiyan at gmail.com>
Date:   Sun Feb 8 16:52:40 2009 +0000

    Fix #490, unpack now gives a proper error message.

commit 8b68cfb158721c2705cb6671398ea2b0952e6b46
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Feb 2 01:22:55 2009 +0000

    Use the new withTempDirectory function
    In particular it means that install will unpack packages into
    different temp dirs on each invocation which means that running
    install on the same package for different compilers at the same
    time should not clash. This is quite useful for testing.

commit 597ea1f595ee5e8c8a928edcae83934a7064f099
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Feb 2 01:19:17 2009 +0000

    Add compat withTempDirectory function
    This is already in Cabal HEAD but we cannot use that yet

commit 7c31311f155571432337f33609b1ad199e1c92f2
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Feb 1 22:50:21 2009 +0000

    Add homepage and bug-reports fields to .cabal file

commit faefedc2f389e4a97d03ce14230cc7ec9708bb57
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jan 26 01:24:12 2009 +0000

    Remove the prefernece and cabal lib version flags from the InstallFlags
    They are now in the ConfigExFlags instead.

commit f8e4fa1140b7badab9fc5beb816d514feb9a976c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jan 26 01:19:42 2009 +0000

    Change the install and configure modules to use the extended config flags

commit 8e3d326a86b3eabde15b54db7e71670d1c8e35ae
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jan 26 01:09:18 2009 +0000

    Add ConfigExFlags into the configure, install and upgrade commands
    Not yet passed all the way through.

commit 8f5f2c5248ea12aed97bab67767ae2608d62deca
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jan 26 01:01:32 2009 +0000

    Add ConfigExFlags and related command
    This is for configure flags that we use in the configure command in the
    cabal command line tool that are not present in runghc Setup configure
    command line interface. These are flags that we are moving from the
    install command, so that we can also use them for the configure command.
    Initially it's just the flags for specifying package version preferences
    and  the cabal library version. We'll add constraints later.

commit 8101e22c9aae5b50557a7334489d351f2906ffa5
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jan 26 00:39:51 2009 +0000

    Remove unnecessary qualified use of ConfigFlags

commit 1fbbcba6eebd51a8ecd408064c3b37783c3b67be
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Jan 25 17:09:51 2009 +0000

    Make configure use the dependency resolver
    This means it makes smarter decisions and also decions that are more
    consistent with those taken by the install command.

commit 315f8b4fa82211b1341d5cfdbaa290b87203ae2f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 23 16:07:00 2009 +0000

    Update HTTP dep in the bootstrap script

commit ce6fa414cc1b3a721497a2822cc93f4f76e6e35d
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 23 16:05:50 2009 +0000

    Improve error message when ghc or ghc-pkg are mismatched or not found

commit c3237effed02993b9636513221570a41baa05068
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 23 16:04:43 2009 +0000

    Don't use grep -e, solaris does not like it

commit a7494fbb73979e51de3f5b14961d0ee332c901cb
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 23 00:48:10 2009 +0000

    Fix some FIXMEs and do some TODOs in the list command
    Now properly prints if the haddock docs are installed and if the
    tarball is cached. It did print them before but it was lying.

commit 9956d4fcae8c9502f03e4dee3ef616005a0d4779
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jan 19 02:52:02 2009 +0000

    Add initial implementation of cabal info
    It provides more detailed information on a particular package.
    Still a few TODOs. Fixes #361, #449 and #456.

commit c946b7b39b3ee1c856350578bec24c57807c74c4
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 16 17:59:00 2009 +0000

    Only print the config file location for the global --help

commit ce6c73685cd14dd83a21976cf6f3fdbaeefc62fa
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 16 13:56:46 2009 +0000

    Update to using HTTP-4000.x
    This should fix a long-standing bug with http proxies (ticket #352)
    It should also make downloads faster, or at least use less memory.

commit 4a951329d57a9df7f9795c3cdb3c4541d3cd938d
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 16 00:28:51 2009 +0000

    Parse compiler field from old config files correctly
    Really old versions of cabal-install generated a default config
    containing "compiler: GHC". Sadly the new way we generate the
    config file parser from the command line parser means we end up
    with a case-sensitive parser as it only matches the exact
    command line flags. So we hack it and add in a traditional
    parser for that field only. Really the command line and config
    file infrastructure needs rewriting again. Sigh.

commit 31eb3a6240843152e9ce0419b1428bc4ce789080
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 16 00:14:21 2009 +0000

    Improve the printing of config file field parse error messages

commit f45516f5e8c1eb80c0990142bb3cc90ce924b492
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 16 00:13:21 2009 +0000

    Read install dirs correctly from old-style .cabal/config files
    Should fix ticket #365

commit 3e41464cd838e362b1a964aef2c42144f915c7ea
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 16 00:05:41 2009 +0000

    Note in the README that zlib needs the zlib C lib package

commit 027f19bce23eebe0fd25d5f37e205d4e38ebad53
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jan 15 11:32:27 2009 +0000

    Traditional /bin/sh portability fixes for bootstrap.sh

commit b0b7d91fe72e44d376e9d8e886437f42cabb7a83
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jan 15 11:06:12 2009 +0000

    More improvments to the bootstrap.sh script

commit f19a0f41c9c8de7568f2a64f3066136dc86c18bf
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jan 15 10:22:10 2009 +0000

    Rewrite the bootstrap.sh script
    Hopefully more useful and more robust. In particular it does not
    download and install packages where suitable versions are already
    installed. It also checks for deps.

commit af47510e62b4cbaa1981accecc59dda71b9a658f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jan 14 14:35:40 2009 +0000

    Don't add installed constraints system packages that are not installed
    In particular fixes a problem (ticket #439) where we required the
    installed version of ghc-prim with compilers that do not have that
    package such as ghc-6.8 and older, hugs, nhc, lhc etc.

commit 4fde618896b9da8f5b97a6fdd2825a1d3bf09816
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jan 14 13:32:20 2009 +0000

    cabal update now reports if a newer version of cabal-install is available

commit 8f5bc37d0c33ec794a62de4e95b9fb99aeca6afb
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jan 14 12:48:27 2009 +0000

    Warn if a package index from a remote repo is 15 days or older
    For example it will print:
    Warning: The package list for 'hackage.haskell.org' is 16 days old.
    Run 'cabal update' to get the latest list of available packages.

commit 5f7a224d7fd28cf9219600b5e99a9a045b81b72d
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jan 14 00:35:49 2009 +0000

    Don't display the category in cabal list output
    It is probably not sufficiently useful to justify the space it takes.

commit c5eb9e0f43ea7ea1ee3ea8025933473df1065859
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jan 14 00:33:29 2009 +0000

    In cabal list, always display available and installed versions
    Previously we omitted the line if it was not installed, or was
    not available. However that confused people because it was not
    obvious that it would list both. Now it shows something like:
     * foo
           Latest version available: 1.0
           Latest version installed: [ Not installed ]

commit 7e71bec8505b9bf3a046ee132b375ebf10a2efcd
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jan 13 19:22:15 2009 +0000

    Print the location of the config file in the global --help
    Ticket #413

commit c8a8e59705925c937e9f1380eca83a1089385a78
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jan 13 19:20:58 2009 +0000

    Improve the cabal --help output
    Put the general info message at the top and make the explanation of
    installing a hackage package somewhat clearer.

commit a86be43fcfc926a866c63bfb6f00dc3a9d97a878
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jan 13 16:14:26 2009 +0000

    Display examples in cabal install --help
    Examples:
      cabal install                     Package in the current directory
      cabal install foo                 Package from the hackage server
      cabal install foo-1.0             Specific version of a package
      cabal install 'foo < 2'           Constrained package version

commit 579d7541582790bcb2ab8a8571835e63af07685e
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jan 13 14:26:04 2009 +0000

    Print a newline after entering upload password
    So we end up with:
      Hackage password:
      Uploading test.tar.gz...
    rather than:
      Hackage password: Uploading test.tar.gz...

commit 7eed0593caf3e52deb73fa6b8cf1fa303e0bffa6
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Dec 21 18:47:55 2008 +0000

    Respect the --package-db flag when compiling Setup.hs
    Fixes ticket #394.

commit 3143edfa4b3aa8eb131058da02fd3096b2153705
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Dec 19 21:59:22 2008 +0000

    Use a more precise package substitution test in improvePlan
    This is where we take a valid plan and we "improve" it by swapping
    installed packages for available packages wherever possible. This
    change is to the condition we use in deciding if it is safe to use
    the installed package in place of a reinstall. Previously we checked
    that the dependencies of the installed version were exactly the same
    as the dependencies we were planning to reinstall with. That was
    valid but rather conservative. It caused problems in some situations
    where the installed package did not exactly match the available
    package (eg when using development versions of a package or of ghc).
    What we do now is test if the extra constraints implied by selecting
    the installed version are consistent with the existing set of
    constraints. This involves threading the constraint set around. In
    theory this should even cope with adding additional packages to the
    plan as a result of selecting an installed package.

commit c63ba9f85d062abacaa25bdb7cd7cec498585fcd
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Dec 19 19:37:40 2008 +0000

    Use installed constraints instead of hiding versions of the base package
    We want to stop cabal-install from accidentally trying to upgrade
    the base package since this doesn't work in most cases. We used to
    achieve that by deleting the base package from the available package
    index. We now do it by leaving the package index as is and instead
    adding a constraint that we pick only an installed version of base.
    This is a nicer hack and has the potential to give better error
    messages.

commit 772f86f1df8f71212979595cf0ccbb8f31bdb79b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Dec 19 19:23:09 2008 +0000

    Extend the invariant on the Constraints ADT
    It now carries around the original version of the database
    purely so that it can do a much more extensive consistency
    check. Packages are never gained or lost, just transfered
    between pots in various slightly tricky ways.

commit 436558c19ac9b8c82e87c151911bb0bde35adfc9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Dec 19 18:23:28 2008 +0000

    Fix constraint set handling for installed constraints
    A rather subtle bug. The code was actually correct but the transitionsTo
    assertion was not accounting for a transition between the case where
    a package's available version had been excluded and then the whole thing
    got excluded by a version constraint. It counted one side as a loss
    without a corresponding gain on the other side.

commit 4d2908c4af4bf42c4ee198623e315fe08d13c44b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Dec 18 21:38:49 2008 +0000

    Add a install/upgrade --preference='foo < 2' flag
    This behaves just like the preferred-versions file in the hackage index
    but it can be specified on the command line or in a config file.

commit 85af264568164e310cdc6b9da3bde1deaecbc9d8
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Dec 18 20:49:17 2008 +0000

    Generalise the way preferences are specified to the resolver
    We still provide a default global policy, but now we give a
    list of per-package preferences which can be on the version
    or installed state. Later preferences override earlier ones.

commit 53d23ede38c8fbe64be9a543b56297babbe38d62
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Dec 18 16:55:41 2008 +0000

    Workaround for a url parsing bug that breaks http proxies that need auth
    Diagnosis and patch from Valery V. Vorotyntsev.

commit b5895075daf068832576082b0f96d4f053c301eb
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Dec 16 23:50:32 2008 +0000

    Implement cabal install --constraint=
    Connect up the existing user interface with the new dep resolver api.

commit 8e9715ee40deeeb3b81647f1b24ad8eb8e43005d
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Dec 16 23:34:46 2008 +0000

    Have the dep resolver take constraints and targets separately

commit fef45569284e9a6e019507da8e1330c413c30849
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 15 22:45:38 2008 +0000

    Add PackageInstalledConstraint to the PackageConstraint type
    This should be useful for things like preventing upgrading
    the base package for ghc.

commit b54dc1341d08d102b6eb25f0f037f7b876567282
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 15 22:43:24 2008 +0000

    A bit more renaming in the top down resolver

commit 6fb17420f8643bf15006868b1893c0ffa8b6e9d9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 15 22:17:28 2008 +0000

    Take preferences into account in the bogus resolver

commit 80ce52ccb26badb12341ebaa68b41855f23b3305
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 15 22:10:34 2008 +0000

    Mostly renaming and trivial refactoring

commit fcd7b8f8bc352a9035a33ad97f2c21e170ab5875
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 15 21:56:34 2008 +0000

    Change the dep resolver interface to pass constraints separately from targets
    This lets us specify constraints for packages that are not targets.

commit 3274c90b666579947df94d2709edfbd84e5daa09
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 15 20:48:36 2008 +0000

    Rename and rearrange the PackagePreferences type

commit 73fa01b7ac7d12dda67051ef35608ed2874d7da5
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 15 20:36:17 2008 +0000

    Don't re-export PackageName from Distribution.Client.Dependency
    It used to be a type alias.

commit 475a1f03e0db8ec8ea22aec6eae28d0203d83eba
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 15 20:28:56 2008 +0000

    Use the Platform type rather than passing around the OS and Arch separately

commit 8367e5c146b26226bea0436ea1448da3874adfe7
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Dec 10 22:47:13 2008 +0000

    Bump version to 0.6.1

commit 0fea026bf4f15cf92069ed990e441cc885d63b39
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Dec 10 22:36:33 2008 +0000

    Tidy up the unpack code
    Also fix a bug for tar files that contain entries for files
    without preceding entries for the directories they are in.

commit cd3b3495257b621abe064dcd72326bc66c73ba7b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Dec 10 22:32:42 2008 +0000

    Clean up the code in Main
    Make the names more regular and set up the various flags
    in a more regular way.

commit 858f1c86fc1034fb769a1cdf63be9e49069d67b5
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Dec 10 22:31:06 2008 +0000

    Use (\_ -> []) instead of mempty to avoid funky Monoid instance
    This would let us build with ghc-6.4 or nhc if it were not for other issues.

commit d7ffe52f16cd17db9581f95a4ef8f8bf507c8ddf
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Dec 3 00:54:49 2008 +0000

    Fix warning aobut -fffi in OPTIONS pragma

commit fc187bc756d0df5a7c1d803af204d0f12415f1f7
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Dec 3 00:44:27 2008 +0000

    Mention where files get downloaded to at verbosity level verbose

commit 248382f6aad15d35f1571a3124e8ab77ce430c1f
Author: Andrea Vezzosi <sanzhiyan at gmail.com>
Date:   Thu Nov 13 18:59:23 2008 +0000

    Implement 'cabal unpack' command as in #390

commit a5e463dee6da4a1c0d58a5d021fdec7a9cb10604
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Nov 22 16:35:27 2008 +0000

    Remove use of tabs

commit 84fb938feb7a591cf481290ec97337c44218f561
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Nov 22 16:31:51 2008 +0000

    Put explicit lower bound on version of base
    It does not build with ghc-6.4.2, missing Functor instance for Either.

commit 4eebb48b149774716827c10c23182669a00dce2a
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Nov 22 16:30:26 2008 +0000

    Use a more general fix for "cabal install base"
    It's not specific to LHC. Normally we prevent upgrading of base
    since it's unlikely to work and would normally be accidental.
    However when the user explicitly asks to upgrade base then we
    let them do that and they can keep the pieces when it breaks.

commit 40a1711ca9c1245721e346155a519dd096adb00e
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Nov 22 15:43:09 2008 +0000

    Warn about use of tabs

commit 435a1a2b7c0a1a0b6695e76377ccc15d02e22cfe
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Sep 3 23:03:34 2008 +0000

    Only send the base file name when uploading tarballs
    The server should ignore the dir part anyway but there's no
    need to send it in the first place.

commit 5c280937ecb1974ca6fd44b9dcc51d31d7571355
Author: Lemmih <lemmih at gmail.com>
Date:   Fri Nov 21 03:43:38 2008 +0000

    Slightly better lhc support.

commit cab89bc69b6347f1bba53a9bf219148c97e2dfea
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Oct 11 19:54:20 2008 +0000

    TAG 0.6.0

commit ad826125a8aa9b3140740bd1774fdc8bbe450463
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Oct 11 19:53:14 2008 +0000

    Bump version to 0.6.0

commit ff8feff019a297ff353dff2ce90eec6854fc613d
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Oct 11 18:59:19 2008 +0000

    Improve the README, better install instructions
    And slightly better intro guide to the main commands.

commit ac40e009c42938079b2275ac60249b8f42dc3c39
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Oct 11 18:49:37 2008 +0000

    Bump versions of deps in the bootstrap script

commit dbfe4e35c3caae2488155726b724e97f090d8464
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Oct 11 18:48:25 2008 +0000

    Add Eq for a couple types in the anon build reports

commit 721dae898d98ca2888fe0073a5a7671803c803c0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Oct 11 18:48:05 2008 +0000

    Drop silly export

commit a4ce7271591cc9615b1ef33e045737bb1ae3e0f2
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Oct 10 23:48:36 2008 +0000

    Apparnetly builds with unix-2.0 which is what came with ghc-6.6

commit 51e6ab5cb4ce4b959c82071e4de618073a75ba02
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Oct 10 23:45:58 2008 +0000

    Fix the -i dir for compiling Setup.hs when it's the current dir
    map "" to "."

commit f88c61e5695a0024a751a37fa0052e606580b2be
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Oct 10 07:01:05 2008 +0000

    Tidy up the preferred-versions file parser

commit 44dd1757a121d98a2c3f275568049666951447f1
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Oct 10 06:58:54 2008 +0000

    Bump version number and dependencies

commit a039130b5584b7c643ba367a321ef1526c309ebf
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Oct 7 23:07:01 2008 +0000

    Relax deps to build with ghc-6.10

commit a73eb4fc56aeefd3e59e58f1610dbe3701584245
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Oct 7 23:06:35 2008 +0000

    Handle build reports with missing logs better

commit cd00bf27940e413e61a7c531b3ec92a0fd2d8865
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Oct 7 23:04:18 2008 +0000

    Add DownloadFailed as a possible failure for installation
    Should now be caught during installing a bunch of packages
    and not cause immediate overall failure. It should instead
    be treated like any other package build failure and be
    reported at the end and only affect other dependent builds.

commit 73523d73b19af7fa11eeea9a5ecea130c24450c9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Oct 7 21:36:30 2008 +0000

    Fix search paths for compiling Setup.hs scrips
    and in particular for bootstrapping the Cabal lib.

commit a6ca8e6746037031507eb0c0aee6094c313748e9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Oct 7 06:29:30 2008 +0000

    Fix selecting paired packages
    Previously when we selected base 4 (and as a consequence
    slected base 3 too) we didn't properly trace the dependencies
    of base 3 so if nothing actually required base 3 then we ended
    up with base 3 in the solution but not with syb which it
    depends on. Consequently the solution was invalid.
    Now we select the paired package properly (hopefully).

commit a8d9e97862059c15ad115707216fe6e5da615b49
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Oct 6 05:51:29 2008 +0000

    Take preferred versions into account in dependency planning
    This means we can now globally prefer base 3 rather than 4.
    However we need to be slightly careful or we end up deciding
    to do silly things like rebuild haskell98 against base 3.
    That would happen because the h98 package doesn't constrain
    the choice to one or the other and we would prefer base 3.
    So we have to add that we really prefer whatever it uses
    currently (if any).

commit b24931f2031c8d889e1f8f1239e5777b5b48a487
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Oct 6 04:27:58 2008 +0000

    Pass the package suggested version constraints through to the resolver
    Not used yet.

commit 36c785af0b62d60cec5ac1446702d00c4e2f82ce
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Oct 6 04:06:16 2008 +0000

    Fix selection of paired packages

commit 9fbb2ab16a455792d221b43060f4d36636fbaea8
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Oct 6 03:02:59 2008 +0000

    Read preferred versions from the package index
    From a file named 'preferred-versions' in the 00-index.tar.gz
    If there are several they are combined. Contents is like:
    base < 4
    one suggested version constraint per line.

commit b21f541498c6b7ff69bd530dbab219d43627b8f2
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 5 20:27:47 2008 +0000

    Refactor and update the hackage index reading code

commit 0cc0bc2920f35a84f6a2d1dc38d60b366ad66a76
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 5 07:55:56 2008 +0000

    Print more details about what is to be installed with -v
    Reports if installs are new or reinstalls and for reinstalls
    prints what dependencies have changed.

commit 6d4bc5e59be3cec62688a0a575e30b83875b3cef
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 5 05:38:21 2008 +0000

    When finalising paired packages, cope with there being multiple choices
    For ordinary packages we selected a single version which means
     we added an equality constraint. As a consequence we used to
    assume there was only one version left when finalising. For
    paired packages there may be two versions left if the package
    did not directly constrain the choice to just one. If there is
    more than one version remaining then we have to pick between
    them. At the moment we still pick the highest version, but
    later we can take a global preference or polciy into account.

commit 6c2e2598d1c17eb9cd74e5ffcaf3751634875e81
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 5 05:38:04 2008 +0000

    When selecting paired packages, select both.

commit d9e161d5f7f5340663e8c3aa30a34601eeab6d92
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 5 05:19:19 2008 +0000

    Handle constraints on paired packages
    The trick is that when applying constraints to paired
    packages, the constraint has to exclude both packages at
    once. We exclude the pair together or not at all. If it
    would only exclude one then we discard the constraint.

commit 4d7da1728e221c364d804d86ea99c6f2a025ebff
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 5 01:31:41 2008 +0000

    Add the notion of paired packages to the Constraints ADT
    Packages like base-3 and base-4 are paired. This means they are
    supposed to be treated equivalently in some contexts. Paired
    packages are installed packages with the same name where one
    version depends on the other.

commit 275e91a16640a654bd4847bf659cd6e3f1ee68f8
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 5 01:27:41 2008 +0000

    Make InstalledPackage an instance of PackageFixedDeps

commit d091f116dfa0770a285e2a75696be69b540f8552
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 5 00:14:00 2008 +0000

    Add the glue code to actully report excluded packages
    Now displayed in the output of install --dry-run -v

commit ac1cb65985ac0a08f529d5cb5aa6f488e84b8ff9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Oct 4 23:50:06 2008 +0000

    Have Constraints.constrain report the excluded packages
    Each time we apply a constraint we can end up excluding some
    extra package. Report that list of packages because it is
    quite interesting information to get insight into what the
    resolver is actually doing.

commit 4185b983903b4c83d4183f4bcb10240c1ff0744b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Oct 4 23:44:21 2008 +0000

    Separate the construction of the exclusion list from its use
    Previously directly inserted packages into the excluded package
    list. Now we generate a list of them and then add them. We want
    the list of newly excluded packages separately because it is
    interesting information to report to the user when -v is on.

commit fe336ffd7d381fbb8310a9fc413e4b1783949b2f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Oct 4 23:25:55 2008 +0000

    Generalise the logging of selected and discarded packages
    Allow for selecting several packages in one go.
    Currently when we select a package we only list the over versions
    of the same package that that excludes, and not the other packages
    we exclude by applying the dependency constraints of the selected
    package. In future we would like to do that so we now report the
    package name of discards not just the version. Though we do group
    by the package name to avoid too much repition.

commit bf2f100596d7db413c9a3a3a15abeeee8954c340
Author: Andrea Vezzosi <sanzhiyan at gmail.com>
Date:   Thu Sep 25 18:14:41 2008 +0000

    Fix infinite loop in the TopDown dependency resolver
    The loop occurred only if a package depended on another one
    with the same name, e.g. base-3.0.3.0 <- base-4.0.0.0

commit e9b9afff07ebe103d16164114b4b8292de7ed109
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Sep 26 21:48:28 2008 +0000

    small improvements to bootstrap
    patch sent in by brian0, ticket #357

commit 269b60314164bcdb38ad9744652eaccc165b434c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Aug 31 22:52:43 2008 +0000

    Update to the development version of the Cabal lib
    The branch of cabal-install that tracks Cabal-1.4 now lives at
    http://darcs.haskell.org/cabal-branches/cabal-install-0.5/

commit 101d2e0a0921f8d1e1a83ab78dfaeddf8838c80b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 26 23:34:00 2008 +0000

    Allow use of curl in bootstrap.sh
    Patch from jsnx. Fixes ticket #343. Also, use "cd blah; cd .."
    instead of "pushd blah; popd" as some shells lack pushd/popd

commit df5c258d3ec86c44f36bdea6a992a2844ab9b595
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 26 23:28:51 2008 +0000

    Relax version constraint on unix package
    Allows building with ghc-6.6.1

commit 7d270a91af18ae52b713f2ffdb31b3aae9683247
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 26 23:26:06 2008 +0000

    Use mplus not mappend for combining tar filename checks
    mappend would join the error messages in the case that both
    checks failed. Also the monoid instance was new in base 3.

commit 4d4e6e5aa28b740f42cc4c6f15e61bc217aefd14
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 26 21:42:38 2008 +0000

    TAG 0.5.2

commit 2324167796bb78891f7f72fc5344448d70f407fb
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 26 21:09:23 2008 +0000

    Fix up the bootstrap.sh and include it in the tarball

commit ed91eda7fc919b7c33a3156f46d18f07c8578a92
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 26 20:58:49 2008 +0000

    Fix haddock syntax

commit ffc4eb0b8eddc2542c38ad7affe8a887d4b8e7e4
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 26 20:43:48 2008 +0000

    Add release date of 0.5.2

commit 92bb315f5de61924655fafaa5547626f65943004
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 26 20:38:27 2008 +0000

    Adjust config defaults again
    Hopefully a bit clearer now and also means we pass the right
    flags to Setup that were compiled with older versions of Cabal.

commit 8d31448f9f45a0b15acd75308af426e61eb30015
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Aug 24 20:25:56 2008 +0000

    Use the right options when compiling external Setup prog
    So the cabal version constraint is actually passed in.
    This got lost in a previous refactoring.

commit 9d698365c980219e04ae71bef7b7b18b85dfdfb4
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Aug 24 20:02:44 2008 +0000

    Be less strict in requirements of upgrade
    Require current or later version, rather than strictly later
    verison. There may be dependencies that cannot be upgraded.

commit d1855b10769fa043371b74f7cdd8a51cf39e842c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Aug 24 18:05:01 2008 +0000

    Use updated tar code
    Much more robust. Correctly detects trucated archives.

commit 4d200cc00d569a38bfe34369d757059c55f32635
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 22 23:17:39 2008 +0000

    Improve the HTTP error message slightly and note some TODOs

commit 08bd3b0479856933019462858be1690ac0267405
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 22 23:00:33 2008 +0000

    Decompress the repo index atomically.
    So if decompression fails (eg if the index is corrupt) then
    the decompressed file does not get (partially) written.

commit c42b5505af27a32164a752520e2e85ad2740debc
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 22 22:59:16 2008 +0000

    Improve the error handling and error message for missing repo index files

commit fd57e0831354e7f04df2a2cc30f0c0c34dcf05bd
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 22 22:49:19 2008 +0000

    Remove old unused modules and supporting util code

commit e8ee02b7c7ce5a48d25582a533edcb72492d9dc9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 22 22:19:26 2008 +0000

    Don't override config with install defaults

commit 1536e139dbdbef6745bd10da2ce49dd001247140
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 22 18:54:30 2008 +0000

    Exclude various fields from the config file
    Excluded fields that make sense as command line flags but do
    not make sense to use every time by saving in the config file.

commit 95b9ea2dee918e7b11cd319c5833be15674b6a1d
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 22 18:17:01 2008 +0000

    add bootstrap shell script
    At the request of Bjorn.

commit d12d2757c393d5026a6cacc2602ad895a1bd2510
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 22 16:57:50 2008 +0000

    Actually use the saved install flags when installing

commit 9cd3fe1368c950a376359778f596276a6d4a5952
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 22 16:12:02 2008 +0000

    Add changelog
    I can only trace the history back to the 0.3 era.

commit 86d3149dce88e69874451701dc161d3e2874e8d0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 22 12:10:03 2008 +0000

    Add symlink-bindir flag to install/upgrade command
    Was previously only available in the config file.

commit 53f961a44b4c87a5e0d6c76da47d167f52f4e191
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 22 12:00:59 2008 +0000

    Add sections for user/global install-dirs to the config file
    So it looks like:
    install-dirs user
      prefix: /home/username/.cabal
      ...
    Rather than using user-prefix, global-prefix, etc etc for each
    field. The old field names are still recognised but not added
    into the initial config file.

commit 337ba43bfe0a6234d3d44a6603b9132cded6aff0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 22 01:57:02 2008 +0000

    Add back separate user and global sets of install dirs
    The user install setting selects between the two sets of dirs.
    At the moment it's just the "user-" and "global-" prefixed field
    names to support existing config files.

commit 425795f42b0e6a597e70da7c51cc976bf310790a
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Aug 21 21:05:55 2008 +0000

    Rearrange config settings and global command line settings
    The intention here is to have the config file content and parser
    be derivied from the command line types and flags. Now instead
    of having a saved config type that contains additional
    information to that kept in command line parameters we now put
    all the information in the command line settings type and make
    the saved config just the aggregation of the settings for
    various key commands like configure, install, upload. There's
    also an extended GlobalFlags type with the things like repos,
    cache dir etc. When we generate the initial config file we put
    in commented out versions of all (non-deprecated) valid fields,
    along with their default values. The aim is to make the config
    file self-documenting.

commit f3b54e031e73505a359e0f12f8e1d22bd5cdcbf2
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 15 14:27:35 2008 +0000

    allow tilde in hackage server URIs
    report and fix from Nicolas Frisby <nicolas.frisby at gmail.com>
    (code had changed slightly so the original patch didn't apply cleanly)

commit beb52aaf431ff40c312939c42ca6aa158438889b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Aug 14 18:53:04 2008 +0000

    Always print the message about nothing to install
    Not just if the user specified -v or --dry-run. Otherwise
    it's rather confusing. Also clarify that the reason there
    is nothing to install is because the latest versions are
    installed already. Also mention the --reinstall flag:
      Resolving dependencies...
      No packages to be installed. All the requested packages
      are already installed. If you want to reinstall anyway
      then use the --reinstall flag.

commit 18570f7389b6a05feab2dfd3c68db7413381a767
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Aug 14 18:48:37 2008 +0000

    Only look for detailed build reports if we were generating them

commit e2a9e1c433f4bf6c6e77d603e68d66e88677a99e
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Aug 14 18:34:45 2008 +0000

    Add cabal install --reinstall flag
    to force reinstall of package where we have the exact same
    version already installed. Ordinarily we would say that
    there is nothing to do as the exact same package version
    is already installed. There are some cases where you might
    want to do this, eg to rebuild with different compiler
    options, or adding/removing components (since we do not
    track those indifidually yet, eg docs, profiling libs).

commit 5ba6715cde26eecc4a763ab730a64563afc4f534
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Aug 14 18:02:01 2008 +0000

    Fetch packages even if they happen to already be installed
    Though obviously not if they have already been fetched.
    This lets people study the source for core packages that
    came with their compiler say, so they did not get have the
    sources downloaded via cabal-install. Fixes ticket #297.

commit 7459bcb511e186fa3cb97ed6747bd7cdd977c017
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 12 22:27:10 2008 +0000

    Don't fail if we don't sync with the child
    It just means we leave a temp file around in the bin dir.

commit 9746b0a1ad456383023237078006db754386ec12
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 12 21:51:38 2008 +0000

    Allow cabal-install to re-install itself on Windows
    This is a fairly heavyweight solution, but then it's quite
    a nasty problem. What we do is when we notice that we're
    about to install something in place of our own .exe file,
    we move our exe file out of the way (but in the same dir).
    Then after we've installed the new exe we call it and ask
    it to delete the old file (so we do not litter the bin dir
    with lots of old versions). That requires synchronising
    between the old and new programs and for the new program
    to understand a command to do the syncing and deleting of
    the old program. Lots of Win32 FFI imports. :-(
    On the plus side it seems to work and is transparent to
    the user and the rest of cabal-install. In particular the
    actual file-installation code (which is burried deep
    within Cabal) does not need to know about the special case
    of installing over our own exe file.

commit 5c0037d4775428f5c8c811237f27d632d0e9cbe6
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 12 21:31:31 2008 +0000

    Clean up some warnings

commit e1fa8c9ceaa3d201b61b3cdddb9ac65a88ada2d2
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 12 21:30:30 2008 +0000

    Add missing module to other-modules

commit 077db05c20b08833edeb4bcfc6ad45d286f1b120
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 12 21:29:41 2008 +0000

    Fix building on Windows
    I hateses #ifdefs

commit 1fe6681ab3dc2d33bfef7a6ff55a13cee03f6ced
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 12 16:21:43 2008 +0000

    Regig install pipeline, pass the PackageDescription
    Rather than the GenericPackageDescription.

commit a8b1ffac81c62ce1f5e90ffe4c72712e2fa8c1ae
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 12 16:11:53 2008 +0000

    Use a more specific type in one place in SetupWrapper
    It doesn't need access to the whole Packagedescription,
    it only needs the the PackageIdentifier.

commit 748f9658fb8cdf61107c2e7420a9c4d20a67d6ae
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Aug 10 21:17:05 2008 +0000

    Remove most warnings from BuildReports.Upload module

commit 02c343872feee40970b204eae6799b5deefbf6bd
Author: Lemmih <lemmih at gmail.com>
Date:   Sun Aug 10 10:36:07 2008 +0000

    Print upload error messages if they are in text/plain.

commit 2370af158a0cdae8f8ccd168fe8ed0919c2a1d09
Author: Lemmih <lemmih at gmail.com>
Date:   Sun Aug 10 00:04:46 2008 +0000

    Support legacy download and upload urls.

commit e36e930299c8fcc1d1da98d8af288ab040893b74
Author: Lemmih <lemmih at gmail.com>
Date:   Fri Aug 8 15:32:44 2008 +0000

    silly types.

commit 9ac7565147045480f951df839f45014b76fd0c73
Author: Lemmih <lemmih at gmail.com>
Date:   Fri Aug 8 15:32:27 2008 +0000

    Use correct uri to /buildreports

commit 1d0dcc125b4f3d72f45f9018443d6eb58e711926
Author: Lemmih <lemmih at gmail.com>
Date:   Fri Aug 8 15:26:12 2008 +0000

    Only look at .log files.

commit 621dcffbb5161def8f868066abd39d9831d8ba24
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 8 15:19:57 2008 +0000

    Fix the urls for the new hackage server

commit eeffa8a8adf14ec84663f7fa5dc05ab564153a72
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 8 15:19:23 2008 +0000

    Create the logs dir

commit e6dd889c715ec305301d4b9b24524a9084121061
Author: Lemmih <lemmih at gmail.com>
Date:   Fri Aug 8 15:07:37 2008 +0000

    First stab at uploading the detailed logs.

commit 29306b1d3e57bef4cf2df99cc532795d6cd7637a
Author: Lemmih <lemmih at gmail.com>
Date:   Fri Aug 8 15:07:06 2008 +0000

    Store detailed build logs.

commit 7fd50064530b431daeee2b9f6d84f3ca0df2e432
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 8 15:06:17 2008 +0000

    Add verbosity flag to report command

commit bee47af829cfdd66af9acdc9667ca321a70146cb
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 8 14:58:29 2008 +0000

    Add command line UI for 'report' action.

commit 41d28fe060e00600a3c1328739d4830a35b69bd8
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 8 12:54:01 2008 +0000

    Implement --build-reports flag

commit 1a5d988127aecf3f2fae28d2ce8036ce0325cf6a
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 8 12:39:20 2008 +0000

    Add --build-reports install flag

commit 6cb3902b456debaba1b36a994da510894937c1d9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Aug 8 12:38:21 2008 +0000

    Add defaultLogsDir util and use it for storing build reports

commit 27703e1a060db0f0dff6d64dc0e2697047ce0d56
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Aug 7 22:14:35 2008 +0000

    Fix BuildReport parser

commit 2f102aaf234370a25fb8cdd150f4bd100f19b44a
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Aug 7 22:14:24 2008 +0000

    Fix up other-modules list

commit 7931daa7d3c4adc8d4659dde3da045e60d1dc958
Author: Lemmih <lemmih at gmail.com>
Date:   Thu Aug 7 19:03:11 2008 +0000

    Simple upload support for build reports.

commit 621eed423c24a567a3d4a5f2d736e0f5f3363d04
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Aug 7 18:39:45 2008 +0000

    Rearrange the BuildReport code

commit 1a247ede83dc0141fa9222e3e6cffc4cc99fa8c7
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Aug 6 17:58:34 2008 +0000

    Add --enable/disable-documentation flag.
    This addresses most of ticket #206.

commit 30372d3ac973c605396528cc2f86cb81fdb204c5
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Aug 6 17:57:56 2008 +0000

    Ignore local files when compiling Setup.hs

commit ad51a33081200d162646ca5cdf852a500accb057
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Aug 6 14:26:56 2008 +0000

    Rearrange the symlinking code slightly
    Will make it easier to create the bin dir, if that's what we want to do.

commit 40933750f54140d97809fab93f435c7bc497476e
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 5 18:05:06 2008 +0000

    Initial support for building haddock docs
    No flag to turn it on/off yet.

commit 0aad501b28f0ccb2e75eaec082427fe15c511405
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Aug 5 17:36:32 2008 +0000

    Refactor BuildResult type and related types
    Split BuildResult into Either BuildFailure BuildSuccess
    Make BuildSuccess contain info for docs and tests.
    Make PlanPackage use BuildSuccess and BuildFailure directly
    rather than being parameterised by any build result type.
    This has a knock on effect on lots of other types which
    were parameterised just because PlanPackage was.

commit fe83377db6af24489a92eab80d9fc918e0315670
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Aug 6 13:30:41 2008 +0000

    Don't require config file fields to have "" for empty values
    And make the parsing slightly nicer.

commit b9d02eef7614e0d9c546c85d0f6f93ab6c0ee802
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Aug 6 12:53:18 2008 +0000

    Use a local copy of the new parseFields from Cabal lib
    We can remove the local copy once we switch to the next
    Cabal version. In the mean time, the code is at least sane
    and consistent between libs.

commit f4d81b2729c8667ea489e5f2f11e453e52f7ba24
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Aug 6 01:11:14 2008 +0000

    Remove showFields
    use the pre-existing ppFields

commit 6373fd350f62fb5882d6b6f0d9b5a34eaca295bb
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Aug 6 00:44:49 2008 +0000

    Shrink the size of the ParseUtils module
    Really it should be eleminated entirely.

commit 834409c10a7afe70b97a17abfe8d986520ed8858
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Aug 3 00:20:45 2008 +0000

    Use the given working dir when preparing to call setup
    I introduced a subtle bug with paths when I stopped using inDir
    outside of setupWrapper. It was using the current dir to find
    Setup.hs rather than the target dir. That ofen works because
    there's a Setup.hs in the local dir. I think it's now fixed to
    always use paths relative to workingDir. As before, it invokes
    the setup binary giving it the new working dir.

commit 37e54d6554d9f12e11c2bccf4eedbd86553e0ea6
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Aug 2 18:07:50 2008 +0000

    Add a LocalRepo kind of Repo and refactor the Fetch code
    This is the groundwork needed to support local repositories,
    that is ones acessable via the local filesystem and without
    a corresponding download cache. They use the same format/layout
    as the download cache of a remote repo.

commit b0ff24f454ace1acaa16e667c618e7b915422367
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Aug 2 13:39:22 2008 +0000

    Warn about symlinks that could not be created

commit 12e03e0a2f8ecb4cbd3f426b43f414f51c1d2f51
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Aug 2 13:38:55 2008 +0000

    Fix generating haddock docs

commit f13688045b007a891ac13c04d0e3e35f19849cb0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Aug 2 03:07:23 2008 +0000

    Bump minor version number

commit 665cfbb18c1c414e27ed15ed23588950f037b2f3
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Aug 2 02:57:30 2008 +0000

    Add a symlink-bindir field to the config file
    and link it up with the symlink feature code.

commit ae2627567494dbbd5c711b9fb427adeb35d18c8f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Aug 2 02:56:54 2008 +0000

    Add feature to symlink binaries into another dir
    This covers the major part of ticket #289.

commit a80deadf3aa411876a9818de9df61df15562c74d
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Aug 2 01:42:26 2008 +0000

    Pass dist dir and verbosity flags to build and install phases

commit 85a1f5f23a220db399fa789de1f0a6eefd7efb34
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Aug 2 01:41:07 2008 +0000

    Fix changing working dir when calling external setup but not logging
    Now uses a single code path for both modes.

commit 97878b88f8cc9db155bc3725f426386036101810
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Aug 2 01:39:57 2008 +0000

    Remove the unused module Distribution.Client.Clean

commit 0d5ef35bead75ef8363d7e1ac028a49c4ae75518
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jul 30 18:33:44 2008 +0000

    Add install --log-builds flag
    Eg can use cabal install foo --log-builds='$pkgid-$compiler.log'
    and the build log for each package will written to a separate
    file. If an existing file is given then the log is appended.
    This or something like it should help in future with build
    reporting of the non-anonymous kind.

commit 19b6c6e2652b13fae67860304a6a3966fab19e99
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jul 30 18:33:09 2008 +0000

    Make the upgrade command take all the install command flags

commit 27136eb58b6fb3b24bdd6d77d4f4e3ed432001df
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jul 30 14:31:49 2008 +0000

    When launching setup in another dir we must use an adjusted path
    The path to the binary we're running must be accessable from
    that other directory. The fix is to use currentDir </> setup

commit 1bf24e5891e1d46c197d2030625213742b2571b9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jul 30 13:20:04 2008 +0000

    Use the setupWrapper useWorkingDir feature in Install
    Rather than calling inDir directly.

commit 43b4bba3bf3701283326dba04234afd256f04e50
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jul 30 13:16:55 2008 +0000

    Use the external setup method when logging the output
    For the internal method, change to the right working dir if necessary.

commit 8de4b97f39ccb23c1172379c7fc9b0e613f666b5
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jul 30 12:55:55 2008 +0000

    Move the install command options so they're not toplevel decls
    Except for optionDryRun which is shared with another command.

commit c4668fd4bcd29af7825b0ff13d7156bbfe667b7f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jul 30 12:48:51 2008 +0000

    Add support to SetupWrapper for logging setup output to a handle
    or for using a diiferent initial working directory. We already
    need to use a different working dir and this would allow us to
    spawn multiple setup processes for parallel builds each with
    their own working dir. Also, we want to be able to capture the
    output of builds. At the moment our internal logging framework
    is not capable of redirecting, but if we launch a process we
    redirect its output to a file. This should be useful for build
    reporting where we want logs for each individual package.

commit 054e2d846aa254e083bd252feeba1fac300cc1c4
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jul 30 09:54:33 2008 +0000

    Move modules under Distribution.Client
    And tidy some imports slightly

commit 578e52e4db75ca6081b016815f2474fcfe2e0a82
Author: gwern0 <gwern0 at gmail.com>
Date:   Fri Jul 25 22:37:40 2008 +0000

    cabal-install.cabal: fix build-from-sdist failure

commit 24b83c1bc9a2bb73d501abf8ad90ed16efa963cc
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jun 23 11:33:15 2008 +0000

    Fix for when user supplies incorrect upload username/passwd
    Should now return a proper error rather than an internal
    error from the HTTP library.

commit f26c83b299a80746f84501272bdb395f15ca4cfc
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jun 19 23:33:41 2008 +0000

    Add initial build logging, based on reporting code

commit 310baff32022338fbf8303f5e7cc4854d4b23d22
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jun 18 20:17:37 2008 +0000

    Fix the upload command message about the location of the config file

commit 7e7ae05223e7488a54576440c618261235717629
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 17 15:40:34 2008 +0000

    TAG 0.5.1

commit 86e1ce8129c603c98752fea976630f6ff1812dd9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 17 15:40:00 2008 +0000

    Bump the version to 0.5.1

commit 39527b19ca4f1a29ca8514ec3f28c8c63b704509
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jun 16 22:38:47 2008 +0000

    Default to global installs on Windows
    User installs by default elsewhere. Note that this default only
    affects new config files. Existing windows users will need to
    change their config file or delete it and let it be re-created.

commit b3247338ab98f5bed71b5fae997d107bf1dd3c9f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jun 16 17:55:11 2008 +0000

    Overhaul the bogus dependency resolver so it works again
    The bogusResolver is used for compilers like hugs and nhc98 where
    we do not know what packages are already installed. We do it by
    altering the descriptions of the packages we're going to install
    to remove all of their dependencies. Doing this gives us a valid
    install plan. We rely on hope to minimise the difference between
    this install plan and reality.

commit 28d36a4e39ccc68572a5abeb3a949c41bc7d1bb0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jun 16 17:32:53 2008 +0000

    Use standard thisPackageVersion rather than inlined definition

commit 1b524a31b475aa2d75e8bdecce11e9860f4d2317
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jun 16 17:12:55 2008 +0000

    Move getAvailablePackages into IndexUtils module

commit 7a230b03bb557a0dbf0502d9906660aad014ed24
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jun 16 17:03:12 2008 +0000

    Try and pick up the http proxy on windows correctly
    Takes account of the ProxyEnabled reg key
    Allow proxy uris that lack the http:// uri schema.
    This should really be moved into the HTTP package.

commit 3f8efb30a0ad09a9477256309ee4d545b67cf593
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jun 13 18:54:21 2008 +0000

    The update command doesn't take any extra args

commit 476cd151fe0361c01648549b1c69a128243849d7
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jun 12 19:29:43 2008 +0000

    TAG 0.5.0

commit 0f396fbe805627232c05feccd3a7976dbae24811
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jun 12 19:07:18 2008 +0000

    Bump the version to 0.5.0

commit fcdb4cb9819d81e795c799eebfb53cc983302512
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jun 12 19:07:02 2008 +0000

    Include the bash-completion code in the tarball

commit 40ab50493cc329d878d6d61c9b1356b982a9839b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jun 12 18:11:22 2008 +0000

    Update to minor change in Cabal-1.4 and fix a warning.

commit 58ab0156c256d29a8beace83cbd85f34d91ad294
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jun 12 17:50:40 2008 +0000

    Put upper bounds on all the build-depends

commit 8ff54e151a431e85e517d63800ad0f61dfb62bb7
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 10 23:52:12 2008 +0000

    Take the the flag assignment into account in the resolver
    so it now actually works to say: $ cabal install foo -fbar

commit e7532b64cbb1aadacb0abac636188dbc2dc3c75e
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 10 23:50:24 2008 +0000

    Put the configurations flags into each UnresolvedDependency
    We don't actually have per-package flags yet. All -f flags
    on the install/upgrade command line apply to every paclage.

commit 017fbe964358033b93c25fc60087e79b0311a041
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 10 23:46:54 2008 +0000

    Put the build client it into the build reports

commit b5b52c97a2b7e95053b70f6cdefab81b50d2d8ca
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 10 17:10:33 2008 +0000

    Fix printing of flags in build reports

commit cad9eef590f4c98468ddf9f15d21b0ec74e5ab10
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 10 01:40:11 2008 +0000

    Put build-reports into per-server dirs
    Don't bother putting the server url into each report
    since we do not want to upload that information anyway.

commit 1dc9333f065cb47016c659702c485122b4dfda22
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 10 01:37:04 2008 +0000

    Fix parsing of build reports
    and add a function to parse a whole logfile of reports

commit 7ade4788466c0aafca67790dba640e461f96e907
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jun 9 20:07:56 2008 +0000

    Use a readable external formar for build reports

commit f5eb465528c8682d1406b3fc001a311c962304a4
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Jun 8 13:12:27 2008 +0000

    Include the hackage server in the build report
    This is so that we remember which server to send the reports to.
    This is pretty important if you're using a private as well as a
    public hackage server.

commit 2633c1d92b9a0b4aea5356518b151b87c2b0d8c7
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Jun 8 12:45:22 2008 +0000

    Use proper URI type rather than String

commit 8ef80b068df1065293fc46e90a5833e05122637f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Jun 8 12:17:54 2008 +0000

    First cut at generating build reports

commit 6ff6770d3aac7ce2c2c458b9fbc4361622b7bd40
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Jun 7 18:26:00 2008 +0000

    Use a smarter preference when picking a Cabal lib to build Setup.hs
    Instead of just using the latest version we use the best version
    according to the following preferences in priority order:
    - the same version as cabal-install was itself built with
    - the same major version number as cabal-install was built with
    - a stable version of Cabal (even second digit of major number)
    - the latest version

commit f87717186d367fc062f1cfd0c5089e348e0c5736
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Jun 7 14:39:13 2008 +0000

    Only inspect the needed parts of the installed and available indexes
    The available package index is loaded lazily so if we can avoid
    forcing all the packages then we can save a huge amount of slow text
    parsing. So select out the maximal subset of the index that we could
    ever need based on the names of the packages we want to install. For
    the common case of installing just one or two packages this cuts
    down the number of packages we look at by a couple orders of
    magnitude. This does not help with the installed index which is read
    strictly, though most people do not (yet) have hundreds of installed
    packages, so that's less of an immediate problem.

commit aafe4d8397907e143ef3870f20f5e8a0bdca7c33
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jun 6 16:57:46 2008 +0000

    TAG 0.4.9

commit 454bc804ab46fadaf384033a3c21e50f5c0772e3
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jun 6 16:57:04 2008 +0000

    Add Hackage.Reporting to other-modules

commit 0ced8840a501ee30661f25fce69be48b835c5ac4
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jun 6 15:57:46 2008 +0000

    Bump version number

commit b6beacf8c56f152f11cf37271ebacb14dd7d32c5
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jun 6 15:49:39 2008 +0000

    Bring the reporting module slightly closer to reality

commit 28df78adc2df6233c0ad9ed12cc5fc3ffbe149a7
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jun 6 15:28:40 2008 +0000

    trivial doc improvement and unused name fix

commit 271155182a84631ace53abe03549a70df038b8fd
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jun 6 14:39:18 2008 +0000

    Fix haddock markup

commit beda7389be33fcacce03b16ca9cf835fd9faa708
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jun 6 13:55:46 2008 +0000

    Adapt to changes in Cabal library 1.4 branch

commit e044acec1fd5e12853ee25b15092fdc34eb70fd8
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jun 6 09:25:03 2008 +0000

    Filter the configure flags based on the Cabal lib version
    Allows us to use cabal-install to build packages where we build the
    Setup.hs script using an older version of the Cabal library.
    This is important for packages that claim to need an older version
    and it's also pretty useful for testing.

commit 1d8048f14b71ca1c4e569dff32b91b7b6c7948e9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jun 6 00:32:15 2008 +0000

    Rearrange setup wrapper to know the cabal lib version
    It is important to know which version of the Cabal lib the setup
    script has been built with because it affects what flags we can pass
    to it. So we now store the version in dist/setup/setup.version.
    If the version number changes then we rebuild the setup binary.

commit d3fb6354b46ec8a5e1ad824f92b938a419f4ca32
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jun 5 00:36:56 2008 +0000

    When marking failed reverse deps, don't include the package itself
    Otherwise we end up saying packages failed because they depend
    on themselves which failed to install, which is silly.

commit f824e4d222b52f8615cb530ca3be205926951702
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jun 4 12:52:17 2008 +0000

    Fix for marking reverse deps of failed packages
    The reverse deps may have already failed due to depending on another
    failed package. So do not assume all reverse deps are in the
    configured state. If they are in the failed state then ignore them.

commit 6eefbd53583d39ef004a48a782864ceacb642302
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jun 4 10:10:10 2008 +0000

    Failed packages can still depend on configured packages
    This is because a package can depend on several packages and if one
    of the deps fail then it fails but it still depend on the others
    that did not fail. This fixes an assertion failure in larger builds.

commit 33dfd03b5f968fd661de4965a3f3f0c25252e245
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Jun 4 10:00:33 2008 +0000

    Turn on assertion checking even in -O builds
    Although it is expensive, we want to catch problems early.

commit a9b6fdf0772a7ae61bd99c4b5189fba19371581c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 3 18:07:33 2008 +0000

    Update synopsis and description

commit a3f86209cb100ce5528a094f54da2fb9bef8ffce
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 3 17:20:06 2008 +0000

    Update copyright dates and holders in LICENSE file

commit 1f4108074c83522db5f25fedefb877c860814630
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 3 17:18:43 2008 +0000

    Remove obsolete TODO

commit 42b3d336f4b59fb316e635c00bcd6e5fa8345193
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 3 17:17:21 2008 +0000

    Update the README file

commit 36f9a625b6bd897546fa2f3f0c98820545bed065
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 3 17:16:46 2008 +0000

    Check the InstallPlan invariant on updates and not on reads

commit 0862a12e04af907d4f0f3ce63001eabf54bdbc70
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 3 15:18:44 2008 +0000

    Don't include the default repo when loading the config file
    So we don't end up downloading the index from hackage twice.

commit bb319b9c8e2128aa24ef0a168b7939e014c8700e
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 3 00:50:57 2008 +0000

    TAG 0.4.8

commit 80a0a93b7853f3cd73863fa4cd8b4490acfc8522
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 3 00:47:02 2008 +0000

    Bump version number to help with bug reports
    The new resolver is a significant change in behavior so it's
    useful to know when people report problems.

commit ba0df2174114387ce62aa0884008978bfa78ff7f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 3 00:45:55 2008 +0000

    Switch the defaultResolver to the new topDownResolver
    Time for wider testing.

commit 3a3d947ee85cc952b9b9d4fb08bbcc789b5ba4f8
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jun 3 00:23:37 2008 +0000

    Make the 'upgrade' command take optional deps
    Up to now 'upgrade' took no args and tried to upgrade all installed
    packages to the latest versions. It retains that mode but also has
    a new mode rather like 'cabal install'. The difference is that with
    $ cabal install foo
    it means install latest version of foo but otherwise prefer the
    installed versions of deps of foo, while
    $ cabal upgrade foo
    means install the latest version of foo and also the latest
    versions of all the dependencies of foo.

commit 33f60d7340b5fd1a2f895183c263926d3c718a3f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jun 2 18:32:43 2008 +0000

    Make use of the package version preference in the top-down resolver

commit 947a0a76a798237037e448e6b4c035079155afd5
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jun 2 18:24:10 2008 +0000

    Change the DependencyResolver type to take a per-package version pref
    And add a few global package version pref policies and use them in
    ordinary install and upgrade. For install we use a policy that says
    that we prefer the latest version of a package that we specifically
    request and prefer the installed version of any other package. For
    upgrade we simple always prefer the latest version. One can imageine
    other policies where we prefer the latest version for only some
    interesting subset of packages and installed otherwise.
    No resolvers actually make use of this preference yet.

commit a391894a7302d408355144d65d45f59fcb83a9cf
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jun 2 16:39:44 2008 +0000

    Fix improvePlan so the index is updated incrementally
    It's important since later packages can depend on earlier ones having
    been changed from configured to pre-existing. That is afterall the
    whole point of considering them in reverse toplogical order.
    Also, remove duplicates in the dependencies list of installed
    packages since ghc-pkg does not currently prevent duplicates in (eg
    multiple depends on the same version of base). See ghc bug #2230.

commit fca64b4d1f86bef3ee5ada065eafd786e95ab952
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jun 2 11:18:16 2008 +0000

    Support top level dependency version constraints
    and error messages for when they're unsatisfiable or conflict

commit 476a4fb182d4ec20ffc6c9988d67853504f4a67c
Author: Andrea Vezzosi <sanzhiyan at gmail.com>
Date:   Mon Jun 2 05:25:36 2008 +0000

    Fix bug in passing the verbosity value when re-executing cabal
    It was passing the value as another argument, distinct from the flag.

commit 90718c6aa2996de3d1269f5647aea05c75d130a0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jun 2 00:00:18 2008 +0000

    Implement plan improvement
    The idea is to improve the plan by swapping a configured package for
    an equivalent installed one. For a particular package the condition
    is that the package be in a configured state, that a the same version
    be already installed with the exact same dependencies and all the
    packages in the plan that it depends on are in the installed state.

commit 1f2f0123f1068ec03ebbb8d15b426212aaa4d0d0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri May 30 18:44:37 2008 +0000

    As a heuristic, use topological order for the order of package choices
    The general case in exploring the state space is that we have a set of
    choices (package names) and for each choice we have a number of
    versions of that package we could pick. If there's only one version of
    a package then we make that choice first. Otherwise we have to pick
    some package and select one of the available versions. The question is
    which package should we make a choice for first? Previously we picked
    completely arbitrarily. Surprisingly this actually works pretty well.
    An improvement is to pick packages in topological order. This works
    better because it allows dependencies from earlier choices to
    constrain our later choices.

commit 214fafb90569d3d47b0bbeb81ae2c12b217acf05
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri May 30 17:03:06 2008 +0000

    Rearrange and tidy bits of the topdown resolver

commit 41195c6335c9d986cb585607f476d29e35b49ccc
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri May 30 17:01:02 2008 +0000

    Switch install to use resolveDependenciesWithProgress
    And show progress messages at verbosity level 2.

commit 4516396b3ba3c4a40f36a7038bf69f23f17e657d
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri May 30 16:54:45 2008 +0000

    Add resolveDependenciesWithProgress
    nd clean up header info

commit 47bca0b4ffc4e09cc2627e2bb9f2acd8cf1b995e
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu May 29 20:48:49 2008 +0000

    Switch DependencyResolver to return Progress and String errors
    rather than Either and structured error type [Dependency]. The reason
    we cannot use that as a structured error type any more is because
    missing dependencies is not the only failure reason. There are
    several reasons, several of which are pretty complex. For now we'll
    have to do with a human readable message. Perhaps we may be able to
    find a common structured type that the different dep resolvers can
    all agree on. I'm not hopeful however as error reporting seems to be
    closely tied to the dep resolution approach.

commit 1d36ea02d0418ce982f4cc7218972a6489cd7107
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu May 29 20:47:14 2008 +0000

    Use thisPackageVersion and notThisPackageVersion from Distribution.Package
    rather than the local definitions

commit 08f97668fbfed506abe8523d0f58cae5ade68679
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu May 29 10:45:02 2008 +0000

    Bump version and depend on the latest Cabal from the 1.4 branch

commit 6eae3ed6893f1fdf43ca212595275bbe22ada17a
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed May 28 21:58:04 2008 +0000

    First version of the top-down package dependency resolver
    This is a new dependency resolver that produces valid install plans.
    It works in polynomial time however because the search space is
    exponential in size it is not guaranteed to find a solution even if
    one exists. It works by generating and then exploring the search
    space represented as a lazy tree. It uses constraints to prune
    choices and heuristics when guesses are necessary. Currently it can
    generate install plans for 99% of the packages on hackage. The
    remaining 6 packages should be doable with two extra tricks.
    It is not finished and is not yet usable in practice.

commit 41a8d7a45bcdf228889b6af5d47c393d481e0649
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed May 28 21:50:49 2008 +0000

    Move common dependency resolver types into shared module

commit 57f3ff4342bb3677822b5f156e745a2442f032c0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed May 21 15:37:00 2008 +0000

    Hide any available base and ghc-prim packages from the dep resolver
    Previously if the base package was available on hackage then the dep
    resolver might try to upgrade it. Unfortunately that's almost
    certainly technically impossible at the moment. So now since the dep
    resolver does not see these available packages it cannot pick them.
    This should fix ticket #174.

commit cc0bd5a92608e864ff2661c0ff5ab33adc0b7dec
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed May 21 15:36:48 2008 +0000

    Remove the silly failing resolver demo

commit df0ab6e84af8008c65f5d018b13e93d1163f56cb
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri May 16 00:29:00 2008 +0000

    Update for renamed PackageIndex.delete (now .deletePackageId)

commit d5144ae164221d56a1d0965075d85c9aaf81a852
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 12 00:54:44 2008 +0000

    Update for distPref changes

commit 63bc12b3e6cdf6016e323f8b3f8432d19b29613c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat May 10 18:59:20 2008 +0000

    Move the upgrade action into the Install module
    It shares most code anyway.
    Also fixes ticket #260 becuase we use the right entry point now.

commit 2ac033e1f46171199d687d5597bbc2b513b72e22
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat May 10 12:23:21 2008 +0000

    Pull the planners out of install and pass them as parameters

commit d169bcc5df201544084cac3b2b275462ea987784
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat May 10 12:21:41 2008 +0000

    Move printing of build failures into a separate function

commit 8e5bb7e0aa0ff9e72a31d2e879e133b165368db1
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat May 10 11:40:10 2008 +0000

    Move dryRun out of the misc options

commit 8b856c028060b1390995d1c12109a16141d068ce
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat May 10 01:28:16 2008 +0000

    Rewrite getUpgradableDeps so it's simpler and linear time
    Also change so that instead of giving the available package with
    the highest version number (where that is higher than the installed
    package) it gives us a dependency on a version of the package that
    is strictly greater than the one installed. This is more flexible
    since when resolving we do not necessarily have to pick the very
    latest version if that turns out not to be possible.

commit b34005e9c9fdc230fccf07823e5a25b7ce13f81c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri May 9 16:58:00 2008 +0000

    Put the check back in for hideBrokenPackages

commit 975ffd094fd7dbddad6fd1d5ac59c4deef11e9a3
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri May 9 16:55:09 2008 +0000

    Split the two resolvers out of the Dependency module
    It's clearer what is the generic stuff and what is specific to the
    current resolver. So it should be a bit easier to swap in new ones.

commit c01440e64eda77bc77c9b7419979ffc98d3786bf
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri May 9 15:20:07 2008 +0000

    Swap Either args so it's Either Error Ok
    Which seems to be the normal convention.

commit c5647dd8f2a382b2b949a3f91e85fac4bde2910a
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri May 9 15:15:14 2008 +0000

    Make the existing dep resolvers to use the DependencyResolver interface
    That is the standard naive dep resolver and the bogus one that has to
    make up a plan assuming that all dependencies are installed.

commit 0ef06600ad03abf6346adca88a6c925d695fbdf9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri May 9 14:28:07 2008 +0000

    Change the result type of DependencyResolver
    and add a wrapper that makes InstallPlans

commit 21ac47f18382639a534a7967ef17d22ce070f018
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri May 9 11:41:53 2008 +0000

    Change InstallPlan.done and .next into .ready that returns a list
    So kind of like uncons style rather than null and head.
    It returns all the ready ones by lazily so it's no extra expense.
    It'll allow parallel installations since all ready packages are
    independent of each other. Also update callers.

commit 0cf7faba64bb989d97aacd024fb41c64fa1c800e
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu May 8 09:26:49 2008 +0000

    Restructure the package installing code
    Previously each layer called the next layer down and therefore the
    top layer had to take all of the params that the bottom layer needed
    even though they were mostly or wholly unmodified on the way down.
    Now each layer takes the next layer as a parameter so we do not need
    to take the params that are not used directly by the current layer.
    The overall stack is then built by applying each layer to the next.

commit 47fc7590456d46628688be96ef88deec5899f733
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed May 7 18:21:58 2008 +0000

    executeInstallPlan now takes an installer instead of calling installPkg
    Four of the executeInstallPlan param were just passed through directly
    to installPkg so this decouples them a bit.

commit dbd6dd6bba57c3daf62a79c5bae422e1dc1f64bd
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed May 7 18:17:33 2008 +0000

    Tidy planLocalPackage and planRepoPackages a bit more

commit 2b60eb6328728e8f360c76e86dbeb042545a1122
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed May 7 18:01:08 2008 +0000

    Refactor installLocalPackage and installRepoPackages
    They share most code so pull the first and last bits out into the
    top level install function. They now need 2 and 3 fewer params
    respectively, which is a good sign. Rename them because they're
    generating plans now rather than doing the installation directly.

commit 79cbe77e47e290ccba9136d9b47eb5419be6849f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed May 7 15:57:25 2008 +0000

    Move ConfiguredPackage type into Types module
    It's not actually specific to the InstallPlan.

commit 5dea03b8bf69c2874eb4cda30959c16bf0b9d3e5
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed May 7 00:21:03 2008 +0000

    Hide broken installed packages when resolving dependencies
    Stops us from choosing them which would always end up with an
    invalid installation plan.

commit f3fe4bbe07496767c9d2199e16329a703163c7f5
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed May 7 00:18:51 2008 +0000

    Add an info message when resolving dependencies
    It can take a while, especially with debug checks turned on.

commit 0e65aa80fb311cb561da93dacea24a1904a818b6
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed May 7 00:13:02 2008 +0000

    Reimplement InstallPlan.failed as it was completely wrong
    It was finding all the dependencies of the failed package and
    marking them as failed. But of course what we have to do is find
    all the packages that depend on the failed package (the reverse
    dependencies) and mark them as failed. We use the reverse
    dependency Graph that we saved in the InstallPlan.

commit 0702b8e8578ba5f9485ec13ce293a4340eb4be55
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed May 7 00:10:06 2008 +0000

    Add lookupConfiguredPackage helper function to InstallPlan
    Simplifies implementation of completed and failed

commit cafd72953e7c52867dc9cb690ebcea970b736c9b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed May 7 00:06:26 2008 +0000

    Add a dependency graph to the InstallPlan
    Uses Data.Graph and annoyingly we also need to keep functions
    around for mapping between Graph.Vertex <-> PackageIdentifier

commit 180b4c34392b088b3a42d52bbd4b1cffc1747a61
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed May 7 00:02:09 2008 +0000

    Check that InstallPlan dependencies respect a state relation
    For example it's not allowed for installed packages to depend
    on configured packages.

commit adf8e866d0f25d093624910fe4541fb6be74b196
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue May 6 23:59:05 2008 +0000

    Minor improvements to InstallPlan documentation and error reporting

commit 05ff5b51e6116a2031a55d8e1e9ec105b13081b7
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue May 6 13:32:36 2008 +0000

    Hide the installed instance when installing the local package.
    Otherwise the dependency resolver may decide to pick the installed
    instance of the package but we really do want to install the local
    version. So to remove that choice from the dep resolver we just
    delete it from the installed package index.

commit 0a49da1f18f44395d5ffbe8f7b11fb6d0be8e415
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue May 6 13:30:22 2008 +0000

    Add more info and debug messages at key parts of the install process
    If we're in verbose mode then always print what we're going to
    install, not just when the user specifies --dry-run.

commit f7c2ea7d602ad2fe29a4c2374219a26163cdd0d1
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 5 09:17:43 2008 +0000

    Switch from DepGraph to InstallPlan
    The dependency resolver has had to be extended in a slightly hacky
    way to gather the extra information needed by an install plan. In
    particular it requires the flags to use to configure each package,
    the actual versions of dependencies to use and all of the
    installed packages and their closure of dependencies.
    However the current resolver is fairly naive and so can be easily
    persuaded into producing an invalid install plan, in which case
    you'll get a detailed list of reasons as to why it is invalid.

commit 5f1d555f4b5e5639103a6f9cad0dfe9ecb33aa29
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon May 5 09:05:13 2008 +0000

    Packages are only invalid if they have more than zero problems.

commit 817cec37df99663e92333a93861b64c29ecfbf32
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun May 4 20:18:57 2008 +0000

    Improve InstallPlan error checking and reporting
    Instead of just reporting that a plan is invalid, produce a
    detailed list of reasons why it is invalid.
    This should be useful for people debugging dependency resolvers.
    Also rename the complete property to closed, since the property
    is about the set being closed under the dependency relation.
    Also re-use the PackageIndex functions for checking the validity
    conditions rather than re-implementing the checks locally.

commit 3f66bfe27fb36309438e26e3515619d57eec1c67
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun May 4 20:17:42 2008 +0000

    Use the mergeBy from the Utils module

commit aa02f9f8709127f329bae02457e0b3480e5e6264
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun May 4 19:45:30 2008 +0000

    Add new utils, duplicates, duplicatesBy and mergeBy

commit b57680d67d87debc55b0570e18b9d789c29e075e
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun May 4 19:37:22 2008 +0000

    Update for flipped order of args for PackageIndex.insert

commit d001c23fe9ba9347e0d13c03497da9a3484b9c6f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu May 1 21:44:56 2008 +0000

    Don't echo when prompting for the hackage upload password.
    Fixes ticket #268. And use newtypes for the username and password,
    just to be more sure we're not mixing them up with other strings.

commit b17fa17aae7620bc29f2d2f750ec879ddfec0907
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Apr 30 19:33:51 2008 +0000

    Remove the resolveDependenciesLocal, implement it via resolveDependencies
    The local variant was for the case that we were starting from a package
    description rather than a dependency to a named package. In the local
    case we not only need to resolve the dependencies of the package but also
    to find a flag assignment for the local package. This case crops up in
    the resolver normally when we try to satisfy a dependency, we have to
    pick a flag assignment for the dependency and resolve its dependencies.
    It is annoying to have both entry points, especially as we want the
    resolver to be plugable. So instead we define the local package as an
    available package, then by resolving a single dependency on exactly the
    name and version of the local package then we can get an install plan for
    the local package. It also requires generalising installPkg to deal with
    the local case.

commit 8edc4b8bed5908d32d4381d59521cd21053922b1
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Apr 30 18:09:22 2008 +0000

    Generalise and rename PkgInfo to include local packages
    Renamed to AvailablePackage since that what it is really.
    Now instead of just representing packages from a remote hackage repo
    it includes an alternative for a local unpacked package. In future
    we should add more alternatives, eg for other local packages (ie not
    just the one that's unpacked in the current dir) and for remote
    packages in source control like darcs, git etc.

commit b03ecbb8190814cf40fc61dc2a29755ff7101aff
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Apr 30 11:50:21 2008 +0000

    Convert the Install module to use the new SetupWrapper
    And refactor slightly to batch some of the misc parameters
    together in a record rather than passing them all separately.

commit e564412db978a3f945e15d138b6cb0c7f800a2aa
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Apr 30 11:47:09 2008 +0000

    Add a new --cabal-lib-version flag to the install command
    It's used to select which version of the Cabal lib to use when
    configuring, building and installing packages. It's mainly so that
    we can use cabal-install to help us test that packages build ok with
    both old and new versions of the Cabal library. In particular we'd
    like to check every package on hackage to make sure that new Cabal
    versions are not breaking packages that worked with older versions.

commit f896c7d8631e54640760382965baaefb0e872191
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Apr 30 11:46:04 2008 +0000

    Convert Main to use the new SetupWrapper module

commit f4fce201c690c447eec5e42c7859da95e4e37d98
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Apr 30 11:44:48 2008 +0000

    Fix setupWrapper bug, when no compiler was configured

commit 5525b375abb55eddc4d975b9a69db9ca1b7d096d
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Apr 30 10:34:12 2008 +0000

    Add replacement SetupWrapper module
    Clearer code and a wider interface to give more control.

commit 4e04cb1e13183fe2c2e6847d9390ff01b2794ed6
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Apr 30 08:52:01 2008 +0000

    Simplify the way we derive configure, install and upgrade commands
    so we do not accidentally inherit the default flags for the underlying
    configure command when we in fact want the empty flags. I am beginning
    to suspect that having any defaults at all was a mistake.

commit 884647842808d131e40b33680fb69e0600af0fcf
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Apr 30 08:49:38 2008 +0000

    Make the default SavedConfig contain empty rather than default ConfigFlags
    We do not want to pass a load of default command line flags. We only want
    to pass flags where we're overriding the defaults.
    Also it's because old Cabal versions do not understand new flags.

commit 98f3126412317fc95ecebaeac3065bc0e4c8b023
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Apr 24 22:41:59 2008 +0000

    Rearange install plan checking code
    Make it usable for callers that want to check
    properties before constructing an InstallPlan.

commit ce9ee324f38eefe3b9213b673c163dc48110d978
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Apr 23 15:38:17 2008 +0000

    Update for checkPackage change

commit 80e418a312e935c82eb32148bcfa311df1e22d53
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Apr 20 19:15:43 2008 +0000

    Update for FlagAssignment changes

commit dd9754b10baa87e0e82b4c7b38a2bc2c1a4b8db0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Apr 14 17:19:14 2008 +0000

    Add new InstallPlan type
    This is joint work with Kolmodin.
    An InstallPlan records what we want to install and records the outcome
    of installing packages. It has a fairly strict internal invariant which
    should guarantee that each package can be configured sucessfully.

commit 978fcecefe654909f757a8ebd00cf7e54bf8ed23
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Apr 14 14:34:57 2008 +0000

    Simplify install --only implementation
    The install --only doesn't do any planning or build
    reporting so make it completely separate so we do
    not have to make up fake build plans or results.

commit 424dd5de24a6d0289b360a1c12959d5e09ba91bd
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Apr 14 00:04:19 2008 +0000

    Change resolveDependencies to take OS and Arch as parameters
    Rather than using global 'constants' for the current os and arch.

commit b7c11300751ad2c9a1ec4d06096277ac7574ff75
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Apr 13 23:41:19 2008 +0000

    Make ResolvedDependency an internal detail of dependency calculation
    Externally we currently use a DepGraph, though we'll move to a InstallPlan.
    This is a step towards making it easier to swap in different package
    dependency resolution algorithms. Because we're hiding ResolvedDependency
    we have to disable the extended Hackage.Info stuff for the moment.

commit b5b74f1a99647c60c148b769c7de0a989030a600
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Apr 13 22:39:40 2008 +0000

    Relax version constraint on HTTP, seems to work with 3001.1

commit dacf0f8a5131bfb72dea3ba4f555a224036bc3da
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Apr 13 22:39:10 2008 +0000

    Update for change to finalizePackageDescription

commit ea714c257b484437f0f552d13c17a58a79211b2e
Author:  <unknown>
Date:   Sat Apr 12 23:40:57 2008 +0000

    Half-done build reporting stuff

commit 5ff29ba7d63e9a66a58845df9fa54090738b11dc
Author: Spencer Janssen <sjanssen at cse.unl.edu>
Date:   Sun Mar 30 19:37:10 2008 +0000

    Add missing modules in other-modules, fixes sdist

commit 28faa224440a3c3fa9348e2bf0fb5a8bc1c6af53
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Mar 29 19:56:01 2008 +0000

    TAG 0.4.6

commit 339db1916f887d5b6968545fbb4d6dc50e688534
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Mar 29 19:45:49 2008 +0000

    Bump version number and depend on the latest Cabal lib

commit 08c95d2db1b92085808d700cad77d475b2e97adb
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Mar 29 19:44:26 2008 +0000

    Use new showPWarning for warnings in parsing the config file

commit d975689ca78b5d38981a9ad2cb31495386a005b8
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Mar 27 05:34:54 2008 +0000

    Update to recent Cabal lib changes

commit e3602d2aba032acd253c4a1f84926f734ba2f69a
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Mar 25 02:32:24 2008 +0000

    Use the new Text class all over
    Mostly just changing showVersion, showPackageId to display instead

commit 80625d6a11c0fc16efd90e6320f170cd9df6870a
Author: Andrea Vezzosi <sanzhiyan at gmail.com>
Date:   Thu Mar 20 15:13:22 2008 +0000

    fix small bug in Hackage.Tar
    The baseDir was passed instead of the full path.

commit 528ca41d79f00c1ab500cf760aa7ded4beb5e60a
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Mar 19 22:17:47 2008 +0000

    Bump version and require latest Cabal lib version

commit eae4f812ed829cefe2dd286a6f9f83b51cb1bec4
Author: Pepe Iborra <mnislaih at gmail.com>
Date:   Wed Mar 19 17:50:52 2008 +0000

    #223 part2: Support all the configure options in the config file
    
    This patch takes advantage of the new OptionField structure in Distribution.Simple.Command
    to provide support for all the configure command line options in the .cabal/config file.
    This has a global effect on all the packages managed by cabal-install.
    
    The ticket also mentions support for per-package sections in the config file. This patch
    does not take care of that.

commit 2a7ab8fa5d4d95e7495971c13e32b3267adee58b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Mar 19 17:07:53 2008 +0000

    Record and report the exceptions that cause build failure
    When installing a bunch of package we have to catch exceptions since
    we carry on building other packages that did not depend on the
    failing package. We were recording what phase the failure was in but
    not the actual exception. We now record that too and print it along
    with the more general explanation of what package failed and in
    which phase. It's not perfect, eg when a package fails to compile we
    end up printing that the exception was "ExitFailure 1" which is not
    very useful.

commit 05b558366e026a75d4ad8ecdf03c10f74d0428ab
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Mar 19 01:52:43 2008 +0000

    Simplify the tar code a bit more
    We always know the base path for construction or extraction so don't
    bother using Maybe FilePath. Also use GZip qualified.

commit eff0432023351a61107706163eb84ae1b689b155
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Mar 19 01:39:36 2008 +0000

    Use relative paths when makeing tar.gz rather than changing current dir
    The current directory is a global variable, we should not mutate it.
    So instead, pass a base and relative path when generating tar entries.
    Also change sanitizePath to be pure and use FilePath.Poisx.

commit 8f4133c03f1dd976933319fe601daa13202ab39b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Mar 19 00:09:19 2008 +0000

    Minor changes to the tar packing code
    Use lazy bytestring when packing tar entry headers rather than strict and
    then making a single chunk lazy bytestring later. The lazy bytestring pack
    will only generate a single chunk for a String that short (<4k).
    Use openBinaryFile rather than openFile + hSetBinaryMode.
    Add a haddock module header with copyright note.

commit 69746457c124ea637eaac2b416289662fdb3437e
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Mar 19 00:06:33 2008 +0000

    Refactor the SrcDist code in a similar way as in the Cabal lib

commit 36aff74284c3c8be4c5877d7eac306a438405de3
Author: Andrea Vezzosi <sanzhiyan at gmail.com>
Date:   Tue Mar 18 17:44:23 2008 +0000

    fix imports, because Dependency has moved in Cabal

commit 79592b25d7a1bba44504c1183638e8ffb95f2224
Author: Andrea Vezzosi <sanzhiyan at gmail.com>
Date:   Tue Mar 18 17:30:47 2008 +0000

    FIX #40, now cabal sdist creates the archive using Hackage.Tar
    we don't call setup sdist anymore but we use functions from Distribution.Simple.SrcDist

commit 974e2f32bd3e1f217e9c108e4a2f0ae9fdae0f04
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Mar 12 13:53:35 2008 +0000

    Parse filepaths in the config file the same way as in .cabal files
    That is, allow quoted and unquoted paths.

commit 4e0f459a12b0fb4bfe14819747446b750727c16b
Author: Andrea Vezzosi <sanzhiyan at gmail.com>
Date:   Thu Mar 6 16:08:16 2008 +0000

    Implement CLI flag --root-cmd for 'cabal install' as in #202
    It also adds the internal flag --only so we can avoid building a setup when build-type == Simple.

commit 549ac04ec3594461679833577e6c63281ae2ce4d
Author: Brent Yorgey <byorgey at gmail.com>
Date:   Fri Mar 7 19:21:59 2008 +0000

    List.hs: fix synopsis paragraph wrapping

commit 0745ffd6d87de6a93a85ca8c33332713776b5a99
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Mar 10 23:36:09 2008 +0000

    Adapt to using the bundled ReadP
    +1 for using the same version of the ReadP lib everywhere,
    previously we would only have noticed this type error with nhc98.

commit 20a18311124172c06fd1a941891288e921078c44
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Mar 10 23:33:46 2008 +0000

    Make the 'upload' command more self explanatory
    It tells you what to do if you don't supply any args, rather than doing
    nothing and it check for simple mistakes and gives helpful error messages.

commit b8cd7026813f281caca775af76638cc0783a4234
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Mar 6 11:48:34 2008 +0000

    Use new buildOS and buildArch

commit be7bd4e2bdedfa59fad24e0b421e988f43f57073
Author: Brent Yorgey <byorgey at gmail.com>
Date:   Wed Mar 5 19:34:07 2008 +0000

    Hackage/List.hs: reflow paragraphs when displaying synopsis/description.

commit 1f619120acb3a8c011c146d376b4da7ff02f5b36
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Mar 5 15:26:41 2008 +0000

    Attempt to make things work using hugs, assume everything is installed

commit 9ff167dc9f1a20320837a17cc35c0b00082db10c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Mar 3 23:24:08 2008 +0000

    Instead of Setup.lhs use .hs like everyone else does

commit ba90354bca1ada8b6a8d1ae7c4aaa41e8f1c91cd
Author: Brent Yorgey <byorgey at gmail.com>
Date:   Tue Mar 4 21:17:07 2008 +0000

    Hackage/List.hs: port showPackageInfo to pretty-printing combinators, improve display of packages with multi-line synopses

commit 034425fc9e43f26dd50705abdeaf7ead09fd61a0
Author: Lennart Kolmodin <kolmodin at gentoo.org>
Date:   Tue Mar 4 19:42:55 2008 +0000

    Fix defect when unpacking tar files containing links
    There were two issues;
      * Unpacking links that point to files not yet unpacked
      * Used the link target as absolute path, but it's relative
    This patch addresses both issues, which is ticket #246.
    There may still be errors if a link refer to another link which has not
    been unpacked yet.

commit e8f4a0b36f3708abda3e675fa2760650afde07d9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Mar 3 21:39:31 2008 +0000

    Update for recent Cabal lib api and behaviour changes
    Depend on latest Cabal lib version and bump our own version due to recent
    feature additions and removal of the 'info' command.

commit ec20f4c7e1e442b4a9dc4b771f3b5ee28b66f66f
Author: Lennart Kolmodin <kolmodin at gentoo.org>
Date:   Mon Mar 3 18:32:31 2008 +0000

    CLI completion: Add completion of packages
    Add completion of packages to the commands install, list, upgrade and fetch.
    Only complete packages if the user is not trying to complete a flag.
    Complete with package-versions if the package name ends with a dash,
    otherwise just complete with the package names.

commit 4cf7f6f05e65143b5d699adbd2ff7bd1b983cecf
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Mar 3 16:41:54 2008 +0000

    Fix fromFlag bug and use default flags for list command

commit 51c9ee0f4e026b1ebb2e00db0560841bb095bf84
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Mar 3 14:00:07 2008 +0000

    Fix savedConfigToConfigFlags so the command line overrides the config
    "cabal configure --global" was incorrectly passing the user prefix to setup.

commit c865622ac9ee715fb90c21a1b4f804b1773b4fed
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Mar 3 01:03:46 2008 +0000

    In 'list', also include packages that are only installed and not available
    Previously we took the available packages and did an inner join with the
    installed packages so we missed out packages like base which are installed
    by not available. Now we get the selected installed and available package
    sets and do a full outer join using a sort and merge operation.
    Also use a proper data type to hold the info we print about each package.

commit 967701838e80b51a4c25930a0ecb78452a3794de
Author: Lennart Kolmodin <kolmodin at gentoo.org>
Date:   Sun Mar 2 19:56:39 2008 +0000

    Remove shortopt -I for --installed

commit 70e293ed82a23a24b9469bec2de915048510b4b6
Author: Lennart Kolmodin <kolmodin at gentoo.org>
Date:   Sun Mar 2 19:54:37 2008 +0000

    Implement 'cabal list --simple-output'
    Provides a output format that is easier to pass on to unix tools and other
    scripting tools. Also works together with --installed.

commit 1f84596c9eec9ea5f35fcd0b379450284e0c1aec
Author: Lennart Kolmodin <kolmodin at gentoo.org>
Date:   Sat Mar 1 22:27:04 2008 +0000

    Implement --installed to 'cabal list'
    Adding --installed to 'cabal list' will make it print only packages that are
    installed.

commit a3ef213becadef303b5cba4c8332749730a46865
Author: Lennart Kolmodin <kolmodin at gentoo.org>
Date:   Sat Mar 1 20:21:17 2008 +0000

    Improve 'cabal list'
    Make the output of 'cabal list' prettier.
    $ cabal list xmonad
     * xmonad
          Latest version available: 0.6
          Latest installed version: 0.6
          Homepage: http://xmonad.org
          Category: System
          Synopsis: A tiling window manager
          License:  BSD3
     * xmonad-contrib ...[snip]
    Very much like the gentoo tools eix and esearch.
    This targets part of ticket #235. It still does not show packages that are
    installed but not available.

commit 4035fdecee8aa8824d2fb9b5292e3765b2eba2d0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Feb 29 14:03:00 2008 +0000

    Remove 'info' command, make --dry-run cover that feature
    In -v mode info produced a detailed tree explaining the dependency
    resolution. That feature has been moved into 'install --dry-run -v'.

commit db70834bcf5ce6b95c4ce41ff616c607bb956567
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Feb 29 11:07:10 2008 +0000

    Add --dry-run to upgrade, replacing existing info message
    Also adjust the default for --dry-run to be false rather than empty.

commit f3adbe39b60a180c5f02ab7610af55b7f6ec13c1
Author: Lennart Kolmodin <kolmodin at gentoo.org>
Date:   Thu Feb 28 19:50:34 2008 +0000

    Implement --dry-run for 'cabal install'

commit 9278fef9c15ef010b7a197a32e4c473d1b356945
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Feb 28 10:59:14 2008 +0000

    Revert to ordinary read/writeFile for the config file

commit 14f38c083f4a2d7534068cc57a4f117155cfba7b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Feb 27 02:17:06 2008 +0000

    Take nub by package id when making a dep graph
    and give more detailed error messages for internal error conditions.
    Fixes a problem where installing a set of packages where several depended
    on the same package would give us a ResolvedDependency list containing
    multiple copies of that package. The DepGraph was expecting unique packages.
    Resolving package deps and generating install plans needs more thought
    and better specified invariants.

commit 08685618e1ba33f9d7cb3c2c4f50f46eb94f6e00
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Feb 25 13:33:57 2008 +0000

    Read package descriptions from the index as UTF8

commit 6608ed4540cd1f7cc5ee6ed875be0eb438b9a6d0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Feb 24 18:00:38 2008 +0000

    Convert to using readTextFile as appropriate
    Added readBinaryFile for on use (uploading .tar.gz files)
    Remove readURI as it was not being used.

commit a86cc506a8e822e404457b896a12d9d0a571b3b9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Feb 23 18:43:26 2008 +0000

    Depend on latest Cabal lib

commit f609f37e155960d7b18b06d034dcf8221fa8d848
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Feb 23 18:41:30 2008 +0000

    Print output as UTF8

commit bd548169d790714348901791bf7a94b0496e264a
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Feb 22 00:27:48 2008 +0000

    Handle unpacking failures slightly more gracefully
    And note problem #246 about unpacking tar files with links

commit e2c71887bbce2c3092619c534b65132b6204e5da
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Feb 22 23:57:59 2008 +0000

    Update for Package and various utils having moved modules
    Several of the general util functions in Hackage.Utils are now in the main
    Cabal lib in Distribution.Simple.Utils so we use those.
    The Package class moved into Distribution.Package.
    Use the packageId class function in more places.

commit b90550293a333342c1bbda4424a5a8e82898df08
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Feb 22 00:03:23 2008 +0000

    Use exitFailure rather than exitWith (ExitFailure 1)
    and instead of exitWith ExitSuccess just return through main rather than
    throwing an exception

commit 6d9556c1bfc3b5280510429818cba33f8cd17067
Author: Lennart Kolmodin <kolmodin at gentoo.org>
Date:   Thu Feb 21 21:32:01 2008 +0000

    Make the qa check return an exit code reporting the status

commit 65106dbae6769a75f120f7979417e6c4575ab068
Author: Lennart Kolmodin <kolmodin at gentoo.org>
Date:   Thu Feb 21 21:31:26 2008 +0000

    When a package seems ok, say so

commit 9f4633d85daa2753fa9ea87ea619abba1e9d0a1b
Author: Lennart Kolmodin <kolmodin at gentoo.org>
Date:   Thu Feb 21 21:30:41 2008 +0000

    Fix typo

commit 9e7343920d72658d5a9b99e56ea5fdf251f1e963
Author: Lennart Kolmodin <kolmodin at gentoo.org>
Date:   Thu Feb 21 20:48:20 2008 +0000

    Naive implementation of 'cabal check'
    A naive implementation of 'cabal check'.
    It will list the errors and warnings as implemented by Cabal, yielding them
    in groups of severity. Currently ignores verbosity levels, no additional
    arguments are understood. This addresses ticket #211.

commit fdcb52088dd9b29eea591c2c3fcc2b094115d118
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Feb 21 20:49:22 2008 +0000

    Make the install code collect some detail on the reasons for package failure
    Then print out at the end why packages failed. This is a step closer to
    producing detailed build reports.

commit a0ceaf96dbb5f902bd5ad4fbdf6c71e6f97a88e5
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Feb 21 20:47:56 2008 +0000

    Make ResolvedPackage an instance of Package and PackageFixedDeps
    And use that to simplify the code slightly. Also add an assertion into
    removeFailed, that the first returned result is the failed package itself,
    since we'll rely on this in the install code.

commit 21f1a245c5ff670459a8646aba66487a9ed6e568
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Feb 20 21:28:48 2008 +0000

    Replace RepoIndex type with PackageIndex PkgInfo
    and adapt to the minor finalisePackageDescription change

commit 64e4bc88724ce2d76fa60fc31791395a079a662f
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Feb 20 11:06:37 2008 +0000

    Use a dependency graph rather than a list when installing packages
    This allows us to figure out what to do when installing a single package
    fails. Instead of just carrying on as if nothing had happened and then
    failing several other packages which depended on the one that failed
    initially we can cut those dependent packages out as soon as the first one
    fails and if there is anything left that did not depend on the failed
    package then we can try and carry on.

commit 0f6afb78f6f4a6182593af63d56f421b7a6fdb05
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Feb 15 13:11:42 2008 +0000

    Update to Cabal lib api changes
    The InstalledPackageIndex replaces our Hackage.LocalIndex module

commit e5283749404b32829527a79d3dc98e3c24924509
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Feb 13 19:33:46 2008 +0000

    Use setupMessage for consistency in downloading message

commit 5c7dc5da8f7c73bfb4699451bc6daad946ecd881
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Feb 13 19:33:25 2008 +0000

    -Wall clean

commit 9d062c4b9973aea175d01b52d2e036e0e8cec100
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Feb 11 01:21:51 2008 +0000

    Bump version and required Cabal version
    Due to recent Cabal api changes

commit 4a735ba0f67c9f1264af2459c53ceceba9e5bc6b
Author: phigley <phigley at gmail.com>
Date:   Sun Feb 10 07:07:30 2008 +0000

    Fixed imports to correspond to the latest arrangement of Distribution.PackageDescription.

commit 492af203e71afd553723878bf7eb095a42dcd7d4
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Jan 20 14:47:54 2008 +0000

    Rename ResolvedPackage to ResolvedDependency

commit 7a5ebb14b1a0f6aedd44f51d1ffdfdc1e82ab7a2
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Jan 19 17:03:58 2008 +0000

    Make the configure command take the defaults from the config file
    Just like the install command has always done. This makes them consistent.
    So by default that means cabal configure uses --user --prefix=$HOME/.cabal

commit d215f3d3b57f9d1d0dc03697ccd1b5190700d859
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Jan 19 17:02:54 2008 +0000

    Note in the README than the unix package is not a dependency

commit 758e990e1e68f4c1d27ef6b347dba677715320b1
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Jan 19 17:01:55 2008 +0000

    Fix a warning.
    All the other warnings are instances of ghc bug #1148.

commit 1d7b077397d19a7cef46cf5d967bb9a339ac76c9
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Jan 19 15:52:19 2008 +0000

    Fix "cabal list" with no package specified

commit a858a72b2e96ee6e717b14a3dfb39b7c921df3ec
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 18 23:00:04 2008 +0000

    Treat package names given on the command line case insenitively
    Implements feature request #167.

commit 6f36cccf5130a3950ed8fbd356040eedc9858aca
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 18 22:55:45 2008 +0000

    Add IndexUtils with functions to disambiguate packaage names
    To allow us to implement case-insensitivity in package names given on the
    command line. We lookup in the package index for packages with the same name
    case-insensitively. If there is no exact match exact case-sensitively and
    there are more than one packages matching case-insensitively then it aborts
    with a message listing the matches. This should not often happen since within
    any single HackageDB server, we can check that packages names are unique
    case-insensitively but it's possible to get ambiguities if cabal-install has
    been configured to use multiple repos.

commit 1b2210df6caa292376ed4a5c8194c631cc1e982a
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 18 22:13:09 2008 +0000

    Remove unused listInstalledPackages, replaced by LocalIndex.read

commit 58693e1a4e681f49fb48e3426be74ccf46c9725c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 18 22:07:03 2008 +0000

    Change Dependency module to use the LocalIndex ADT
    The whole Dependency module is pure now, no IO since it takes the indexes
    as arguments, rather than the many more args required to do the IO to load
    up the indexes. Much nicer. Also update all callers.

commit 570d34458ccf33a016e45fd0039b4767fe39ffe4
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 18 22:00:13 2008 +0000

    Update copyright and docs for RepoIndex
    Added my copyright as I've almost completely rewritten the module.

commit 816bb4d838548be17c954973a06caaccf2d704c2
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 18 21:59:53 2008 +0000

    Add Hackage.LocalIndex module as an index of installed packages
    Very much like the RepoIndex module but only holds package ids at the moment
     rather that full InstalledPackageInfo records that we'd really prefer.

commit 84d76b4d8640feb052157c9bca0bc6c10b5a0001
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 18 21:51:32 2008 +0000

    Rename Hackage.Index -> Hackage.RepoIndex
    In preperation to add Hackage.LocalIndex module

commit 65a47a0effc340fe6e87987513a50ce3c21fdd14
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 18 21:42:36 2008 +0000

    Trivial change to utils

commit 0c09bd51782547b94e6e024d213542d2a1308fbf
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jan 17 20:05:39 2008 +0000

    Disable a particularly slow invariant check

commit 422011a8c52f744a4d569d827128b427885904ec
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jan 17 20:04:39 2008 +0000

    Move package substring searching into the Index module and use it in List
    Not much faster but rather cleaner.

commit 9131e0e9180b55e56c08f13e52fc57009718ee72
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jan 17 17:58:54 2008 +0000

    Make a proper RepoIndex ADT
    This represents the collection of packages from a remote repo.
    It encodes the policies on how we find packages when we have multiple repos.
    The policy is encoded in the repo merge operation and in the various kinds of
    lookup functions.

commit 75750a2b38350f751eb4d6d47e4eeb5d3df9d1d8
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jan 17 17:57:09 2008 +0000

    Add Utils module, tidy imports

commit 0ebfa15ffd6f903b9bab83fbd8e3b7efe4d3f2e6
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jan 17 17:30:17 2008 +0000

    Split ParseUtils module out of Utils module

commit aceed3618ec549571342024a717e614d18c13519
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jan 15 20:02:58 2008 +0000

    Have command line args override saved config not the other way around
    Fixes setting the --prefix from the command line which was previously being
    ignored in favour of the default prefix from the config file.

commit e3cf3c7c9ae749eab9d2b5e1cecb3d02ab771aed
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jan 15 16:03:47 2008 +0000

    Set the useragent string to be "cabal-install/$version"
    eg, currently it is "cabal-install/0.4.2"

commit 52056f2f008681919a4d3e9e6bc2ab9b73486f75
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jan 15 16:02:33 2008 +0000

    Don't verbosely display the http conversation chatter by default
    Though do display it at deafening verbosity level.

commit 05faf40e5d91b274a3296d0bdd9d6ea7860698cc
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jan 15 15:10:33 2008 +0000

    Use proxy port number rather than ignoring it

commit 2719b27911b0c83abd12fcd7d7ba2cd9d679f1c0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jan 15 15:09:33 2008 +0000

    Refactor proxy handling yet again
    This time to better handle parsing and warning about invalid proxy uris

commit 9a9d354631a2546eb4a27cbfca47bdab2248b506
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jan 15 15:08:38 2008 +0000

    Remove unused var

commit 8cf4603db14f7f22a37615ae0dc6e924fefbbc05
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Jan 15 15:07:25 2008 +0000

    Use commandDefaultFlags = mempty rather than commandAddActionWithEmptyFlags
    Simpler and simplifies the Command api in the Cabal lib

commit 68cb2017a9596f82e69811d7d7c57a2a38c0ac51
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jan 14 14:34:56 2008 +0000

    Fix compilation on windows
    Silly #ifdefs making things harder to test.

commit f494648195a8a906d85b9c880b6fd8660e64474e
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jan 14 14:23:01 2008 +0000

    After refactoring the http proxy code we don't need the unix package
    Which was just being used for an exception-free version of getEnv but we
    have to cope with exceptions anyway for the Win32 registry.

commit 7b20bfc0967515b52b340bb85b101eccc0e4124b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Jan 14 14:13:13 2008 +0000

    Set the user install flag when restoring saved config

commit ef8ed297be281e2e15477d01a3daa951b1a140cc
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Jan 13 20:16:27 2008 +0000

    Allow finding the proxy to fail without failing overall
    On windows, if looking up the info in the registry failed then we failed
    overall. Now we just don't use the proxy. Also refactored a bit.

commit c1a4a8973673c0161e184bcfd7235d9ca51f4d6a
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Jan 11 02:56:34 2008 +0000

    Fix getting verbosity flags

commit ba9616b1cb86d01f36ddd75059c37851e9cbf8ca
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jan 10 20:37:11 2008 +0000

    Depend on latest development version of Cabal lib

commit 96ad1d114170704493b829b01ca7bf67688d9cbe
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jan 10 18:01:37 2008 +0000

    Remove redundant code an re-enable accidentally disabled code

commit 69e77fc74dc3a6ff0593f1481f179b25ac94a560
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Jan 10 17:56:34 2008 +0000

    Significantly refactor configuration handling
    ConfigFlags is not used in any of the modules that do the real work, instead
    we just pass in the necessary information. Renamed ConfigFlags to SavedConfig
    and moved it's definition into the Config module. Also change what information
    is kept in the Repo type so that it knows the local path too. A PkgInfo now
    also knows which Repo it is from.

commit cc2f67f98fbc246f010516c71722d5c3432e0a2b
Author: <jim at sdf-eu.org>
Date:   Fri Dec 21 20:15:00 2007 +0000

    Added support for users behind proxy servers, reading system settings from the env var on unix or registry on windows

commit e4b86e603b697ce010bec583f22b4dc1f8bdd345
Author: ijones <ijones at syntaxpolice.org>
Date:   Mon Dec 31 21:39:53 2007 +0000

    Added upgrade command
    cabal upgrade installs the latest version of any currently installed
    package.

commit 1c8139d8a77c9add8ee05434ed3ae5f9efe9c0b6
Author: ijones <ijones at syntaxpolice.org>
Date:   Mon Dec 31 21:03:03 2007 +0000

    improved error handling for multiple installs
    When installing multiple packages, don't quit just after the first
    error, but rather collect the list of packages that failed to install
    continue installing whatever packages we can, and provide an error
    message at the end.

commit 05e0dc6260b79d13f00a8db63d3b2edcc21cbbdd
Author: Lennart Kolmodin <kolmodin at gentoo.org>
Date:   Wed Dec 19 21:57:47 2007 +0000

    Initial attempt at command line completion

commit 5096e74180fa52681fe8505a9a535952b77e3903
Author: bjorn <bjorn at bringert.net>
Date:   Tue Dec 18 11:12:20 2007 +0000

    Added dependency on random. Needed by Hackage.Upload.

commit 9076143a0fddaaf36cd0e7251b5441bdeb73247e
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Dec 18 00:47:24 2007 +0000

    Improve 'cabal info pkg' message when there is nothing to install
      "All requested packages already installed. Nothing to do."
    rather than:
      "These packages would be installed:\n"
    followed by ... nothing.

commit ef899c7b17003b265f95ade2a2e686c48e017b4c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Dec 18 00:46:04 2007 +0000

    Make logging and verboisty a bit more consistent
    Use the Distribution.Simple.Utils functions and eliminate use of printf

commit 94b5d602c70d98f0bddc9fc7e0e0a531afe23f84
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 17 23:49:34 2007 +0000

    Don't append '.' to filename in message. Make config file end in a new line.

commit b8e9e9396d147971e708d4282688ddb8e1b5f8a1
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 17 23:46:49 2007 +0000

    Get the saved hackage username and password from the config file
    rather than from the old ~/.cabal-upload/auth file.
    Now uses ~/.cabal/config with:
    hackage-username:
    hackage-password:

commit e4cb2f2452e376e5ef276b965b88fb242cd27516
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 17 22:42:27 2007 +0000

    Add Bjorn Bringert to authors and copyright list
    Since much recent cabal-install work is his and he wrote cabal-upload which
    was just integrated.

commit ef840af8ab033407b7f9c198e30cfcbc6443936c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 17 22:39:13 2007 +0000

    Remove unnecessary use of a type alias

commit f18e9bdd78893ef6665d7dae2e4b8deede35e88c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 17 22:37:48 2007 +0000

    Initial integration of upload feature
    It still uses it's own config file, but now uses the same command line stuff

commit 530091ecd4ca6a3fcdb9c28c75b66b25e79e8ea0
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 17 22:36:20 2007 +0000

    Fix usage message, swap program and sub-command names

commit 2557bc2dcbaa6fb6fda7feb42c326f41a94b47d5
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 17 21:11:41 2007 +0000

    Remove redundant parameters

commit dde5acdb9527a349851ed16e9e92f15d6d46cb9b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 17 21:06:21 2007 +0000

    Add the cabal-setup commands: configure, build etc
    So we now have the complete set of commands in one tool.
    This uses the new Command infrastructure to do two way conversion between
    flags as strings and as a structured parsed form.

commit 29d74a31466d1fd6ddcf142541256209887f82ab
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 17 20:58:13 2007 +0000

    Add Upload module direct copy of cabal-upload

commit 55d95fa57a9139684ad58f8f037734377273cdd4
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 17 19:00:35 2007 +0000

    Add a verbosity flag to the info list update and fetch commands

commit d757ac766c39d1120921292146fccd312b559157
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 17 18:59:12 2007 +0000

    Add command listing support
    first step to shell command line completion

commit fc7a5ca9cec0f4ba1d0b44350469b1f8a2cbf810
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 17 18:58:11 2007 +0000

    installCommand only ever needs to use defaultProgramConfiguration
    So don't bother making it a parameter

commit 4d67cdd33215c8c17ac4e96a4933ecc7c2fa0064
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Dec 17 18:56:05 2007 +0000

    Add in more global help text like that of Setup.hs

commit 19688b490c0e8ad997493dca8e345812790ba89b
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sat Dec 15 19:46:03 2007 +0000

    Replace command line handling
    Use the new cabal command line handling infrastructure. Use proper flag types
    rather than strings.
    Drop support for per-package command line flags as it was generally agreed to
    be confusing.

commit 24a5fcda55114ede81d5fc68cb64e94818db65e3
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Oct 22 22:21:15 2007 +0000

    Read/write binary files using ByteString without .Char8 modules
    ByteString.Char8 treats files as text files, which are really different
    on windows. We were getting CRLF translation in Windows which was messing
    everything up, like saving & reading the index file.
    So now only use BS.Char8 where necessary.

commit 8f92f3b9fdc9325b9191e5f0f987db713eb1b396
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 21 17:49:54 2007 +0000

    Remove old non-existant copyright file from extra-source-files
    We only have one LICENCE file

commit 615c273bc6c0854c8446a0f4488f6bef4cac3783
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 21 14:38:56 2007 +0000

    TAG 0.4.0

commit fbdea0985714364354081def14266887e97bfb27
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 21 13:36:33 2007 +0000

    Bump version to 0.4.0

commit de4fb03a0604641949d489b50543a7d186e90fd1
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 21 13:36:22 2007 +0000

    Update description

commit 68d3da7bf722a29c15fa07b7bee69bd5fe7864ea
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Oct 17 23:06:53 2007 +0000

    Fix handling of unadorned package names
    ie make "cabal install xmonad" work ;-)
    We were parsing unqalified package names as a dependency upon a specific but
    empty version. That is treating "foo" as a dependency like "foo==".
    We now treat unadroned package names as deps on any version.

commit d1bb3665dd0c767de1e49080f5358a36ed777970
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Oct 17 22:55:38 2007 +0000

    It builds with HTTP-3001 as well.

commit b4197d743e273441c283f00bb91339abe16e5909
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Oct 17 22:55:07 2007 +0000

    Pass on the compiler to use when building a package

commit fe0003d9c836bbe31aad4edd2f8f63647432e951
Author: bjorn <bjorn at bringert.net>
Date:   Wed Oct 17 21:15:14 2007 +0000

    Added explicit Cabal imports to Utils.

commit 7216fb76586a9d3e8c4cd57dde64b12d39200500
Author: bjorn <bjorn at bringert.net>
Date:   Wed Oct 17 21:11:26 2007 +0000

    Parse command line arguments as either Dependency or PackageIDentifier, to allow e.g. 'cabal install binary-0.3'.

commit 9e90e150a415250be6d398ca1ff03add0d146660
Author: bjorn <bjorn at bringert.net>
Date:   Wed Oct 17 19:08:48 2007 +0000

    Fixed error message when some depedencies couldn't be resolved. Before it used show on Dependency, not showDependency.
    Using fail here produces things like:
    cabal: user error (Unresolved dependencies: containers -any, array -any, bytestring >=0.9)
    It would be nice to get rid of the "user error" here.

commit df8ed61ddf18996e4c828bb86b25c62471f3adc3
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Oct 17 00:45:01 2007 +0000

    Portability fixes to allow building with ghc-6.4 and ghc-6.6

commit bd4e16210b3caab67a36447bbb2cbac2c9c5b62c
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Oct 17 00:44:40 2007 +0000

    Clean up redundant imports

commit 9bf22f8fdda525a3f3d64a0897930228cfe36f06
Author: Duncan Coutts <duncan at haskell.org>
Date:   Wed Oct 17 00:43:09 2007 +0000

    Make package searches ~100x faster but less featurefull
    Instead of parsing every .cabal file in the package list (which is very slow)
    We now just get the package name and version and do a case-insensitive
    substring search on the package name. The output format remains unchanged.
    So we no longer search inside package descriptions.

commit ff6bf5d9c77e9c03a468e85bdcc339d293e55535
Author: Duncan Coutts <duncan at haskell.org>
Date:   Tue Oct 16 00:46:06 2007 +0000

    Parse multiple repo urls listed in the .cabal/config correctly
    The url part cannot contain any chars, since then we allow spaces and ',' and
    thus break parsing of following repos.

commit 223230b4ddd5e6bce47f130db6c2c68d398261d0
Author: bjorn <bjorn at bringert.net>
Date:   Tue Oct 16 21:54:39 2007 +0000

    Moved the local package index reading to a new module, Hackage.Index.

commit 943a2253674ebaf57fc258afe715bb132a5f8b30
Author: bjorn <bjorn at bringert.net>
Date:   Tue Oct 16 15:35:25 2007 +0000

    The ConfigFlags now contain two different sets of install dirs, one for global and one for user installs.
    This simplifies the install dirs handling a lot, and allows the user to specify both user and global install dirs in the config file, and chose installation type on the command line.
    We now ignore the config file and command-line compiler flavor when choosing install directories, since that
    is so messy. This might break installs with Hugs, but that requires testing.
    The old code didn't work when the compiler was specified on the command-line anyway.

commit ffc953b59da9c4713e8e88d7d1f965f156bba18e
Author: bjorn <bjorn at bringert.net>
Date:   Tue Oct 16 11:23:06 2007 +0000

    Removed mtl and unix dependencies, they don't seem to be required.

commit 0ce34bd400bf578af451b3ac9e9f70fd34293b73
Author: bjorn <bjorn at bringert.net>
Date:   Tue Oct 16 09:10:22 2007 +0000

    Set preifx to the global default when the config file says to do a global install. This still doesn't work if --global is given on the command line. Print the complete config if verbosity >= verbose. Don't save prefix to the config file, since that means we will use the user default even for global installs.

commit fb91c35e33743855f97ac2636399aeba7f25d9aa
Author: bjorn <bjorn at bringert.net>
Date:   Tue Oct 16 09:09:57 2007 +0000

    Added deriving Show to all the types in Hackage.Types, useful for debugging.

commit 547f93b610bc736c0cc9bb5e176b4a23647f84ee
Author: bjorn <bjorn at bringert.net>
Date:   Tue Oct 16 08:58:33 2007 +0000

    Changed zlib dependency to 0.3 to be able to compile using 6.6 and deps from hackage.

commit 73d7296ff8a59793772e1ad803af91342c554f28
Author: bjorn <bjorn at bringert.net>
Date:   Tue Oct 16 08:57:35 2007 +0000

    Change Cabal dep to >=1.2 now that the required patches are in the 1.2 branch. This should really be >= 1.2.1, but the version number of the 1.2 has not been bumped yet.

commit b71ee1ce5eac8a7efa4a5cf268042cecc011b319
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 14 18:51:04 2007 +0000

    Add an extra space when displaying package version lists
    eg: "xmonad [0.1, 0.2, 0.3]" rather than "xmonad [0.1,0.2,0.3]"
    it's just a tad easier to read.

commit 7fa5e2a7e36eab6b954328f127ff05ba335e9092
Author: Duncan Coutts <duncan at haskell.org>
Date:   Sun Oct 14 17:10:35 2007 +0000

    Improve the error message we get when missing the package index file

commit 95c12e573d42ca80110b3186baa16d1133614529
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Oct 12 11:22:37 2007 +0000

    Remove the bundled deps as they're totally out of date

commit 5fb9cd39be5f86619634faafe64d4f1d11045841
Author: Duncan Coutts <duncan at haskell.org>
Date:   Fri Oct 12 11:20:52 2007 +0000

    Don't report errors on cleaning when it's already clean
    We now ignore file not found errors when deleting the packages dir.
    Otherwise when we clean and then clean again we get an exception since
    the directory we're trying to delete has already been deleted.

commit 6f519d7e9bdfd260fc8acbc6fce8a04de1319f2b
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 13 22:22:38 2007 +0000

    Don't say "Nothing to do" when installing the dependencies of a local package.

commit c8116e9eab66c41d8887f5b502290c1af5868a9e
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 13 21:56:59 2007 +0000

    Pass -vN rather that --verbose=N to SetupWrapper, since older versions required --verbosity rather that --verbose.

commit 4ba199e0e2dce77765a2fe2106c799b0cc9c5676
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 13 14:35:02 2007 +0000

    More verbosity fixes.

commit 33ea60e80aff2fbd6866ea304f83e5afc85c684b
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 13 14:29:19 2007 +0000

    Verbosity fixes.

commit 652fc8e3ec3ebd48fb8a27aae288073d525b1d39
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 13 14:00:29 2007 +0000

    'cabal install' without argument now installs all the dependencies of the package in the current directory, and then configures, builds and installs it.

commit 8c38e5abdb5884bb104519f55ed137aad8c20164
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 13 12:58:01 2007 +0000

    cabal list now only shows one line per package, with a list of verions.

commit ecc958059854f83666738fb2a85a16c6ebe1539d
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 13 12:34:12 2007 +0000

    Use --with-compiler and --with-hc-pkg.

commit 53c2a4cd2a431c96b9d93e5c7b93cb2db80b86fb
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 13 12:01:15 2007 +0000

    Call findCompiler in Main for the commands that need it.

commit 417275037fad61cbd16e0100d68795aeffd3129d
Author: bjorn <bjorn at bringert.net>
Date:   Mon Oct 8 21:18:36 2007 +0000

    Changed configurations to make it build with ghc 6.8 and ghc 6.6. I haven't tested 6.6.1, but it should work.

commit bf72cc9d44915cc2fa882feb98cf3ca65a58bfe2
Author: bjorn <bjorn at bringert.net>
Date:   Mon Oct 8 20:44:52 2007 +0000

    Ok, I see. zlib >= 0.4 is needed since 0.3 wont install with ghc 6.8.

commit 67fefc0244ed03e7557f911b6fd2af0375938f91
Author: bjorn <bjorn at bringert.net>
Date:   Mon Oct 8 20:12:51 2007 +0000

    Changed finalization to say that all installed and available packages can be used to resolve dependencies. This is overly optimistic, since some of the available packages may not be installable because of missing deps. We probably need to look at the entire dependency graph.

commit 7ded699b6403e1f8e3343667b7039ac23be4636d
Author: bjorn <bjorn at bringert.net>
Date:   Mon Oct 8 20:08:32 2007 +0000

    Handle -fflag options.

commit f02064d4c0b665b11c39e744f0a89e364b252f7b
Author: bjorn <bjorn at bringert.net>
Date:   Mon Oct 8 20:05:32 2007 +0000

    Changed zlib >= 0.4 to zlib >= 0.3. 0.3 works fine for me, and 0.4 is not on hackage yet.

commit 0186d1e1e129301cc62ec8c113da1f04c6092da3
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 21:25:38 2007 +0000

    Rewrote the package dependency analysis code.
    It is now about half as much code, and uses fewer and simpler
    functions and data types. The external interface is now much smaller,
    which meant that I had to change quite a bit of other code.
    I orignally wrote this in parallel with dons' clean-up changes,
    and had to merge by hand since darcs went into mad exponential conflict mode.
    I hope I didn't revert too many of dons' changes.

commit c4ed6f2d37f8e55e6d40b537f7f1cd73e5d91944
Author: Don Stewart <dons at galois.com>
Date:   Sun Oct 7 16:13:02 2007 +0000

    -Wall police

commit 070b110913abd95ec6974ababb2b9dc6ac8fb993
Author: Don Stewart <dons at galois.com>
Date:   Sun Oct 7 15:50:13 2007 +0000

    polish

commit 68759b73b9b2e1efac533c1880797fb212945c9a
Author: Don Stewart <dons at galois.com>
Date:   Sun Oct 7 15:43:09 2007 +0000

    Flatten cabal install namespace!

commit 44b01d0c2d9a0c3b1fd1f2c5fb9c96a889114c50
Author: Don Stewart <dons at galois.com>
Date:   Sun Oct 7 15:34:07 2007 +0000

    move directory hierarchy up one level

commit d6cbc941c8643ecf9091a3f6d298f2a5c2fbfe8a
Author: Don Stewart <dons at galois.com>
Date:   Sun Oct 7 15:30:00 2007 +0000

    move tests under tests

commit c0eaf8eb9625f8aa2c35c84825a496fa49d09086
Author: Don Stewart <dons at galois.com>
Date:   Sun Oct 7 15:26:44 2007 +0000

    portable Setup.lhs

commit 85298362c38535e9ff667e91f5384cc6b81ec8ba
Author: Don Stewart <dons at galois.com>
Date:   Sun Oct 7 15:24:35 2007 +0000

    updated license / readme

commit 9de6bfc6792f16e594bfd309cdbfc229592a3761
Author: Don Stewart <dons at galois.com>
Date:   Sun Oct 7 15:09:24 2007 +0000

    Update to cabal configurations. (Due to broken base numbering though, we can't write a version that works with 6.6 :(

commit 181c3e6f522c330f3e898b2e8caeb192276a310f
Author: Don Stewart <dons at galois.com>
Date:   Sun Oct 7 15:09:01 2007 +0000

    Use Cabal.* namespace, not CabalInstall.* (since its the 'cabal' executable in the end)

commit a64f68843f04e0c6a795f179d5ff50f0987bb9ba
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 13:16:48 2007 +0000

    Oops, I removed the filtering out of already installed packages from resolveDependencies.

commit 86871970d9982c2bea47832e7f9ecf11bbf32000
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 13:13:49 2007 +0000

    Some refactoring of the Dependency module.

commit 0f959a1f76c1b3f3619ada12c07c5c712b604049
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 13:04:36 2007 +0000

    Removed the build-dep command. It has been been broken since we started to use configurations, and should be subsumed by the planned cabal-setup integration.

commit c39a0f9ca36eae4f3db46448cb9d431f5c2ffb9e
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 13:01:12 2007 +0000

    Don't export finalizePackage.

commit b8d7b60a75e2e43de29641e27b57c1596d9a4d4e
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 12:58:40 2007 +0000

    Move listInstalledPackages to Config.

commit 182c165dd439186248b3405fbaab273e6d16df76
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 12:54:57 2007 +0000

    Check that there is a sanely named .cabal file after unpacking a code tarball.

commit 080b210d9611204c0661a5dfda1f04148c8ab93a
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 12:45:49 2007 +0000

    Make resolveDependenciesAux pure.

commit 7e5135df9b6e008854fd21181ee93c420ffa14ce
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 12:35:22 2007 +0000

    resolveDependencies does not need a list of installed packages as argument.

commit 53fc7ec42c2218452678bad015365e4a30b5f35d
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 12:13:50 2007 +0000

    Set prefix to .cabal by default.

commit 03783edd87b91aeb2ef79ff823b1ab352407e854
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 12:13:33 2007 +0000

    Renamed executable to 'cabal'.

commit 36abbcb2ee9da8b9eb15e999e9e0ef214a19650e
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 11:57:44 2007 +0000

    Only configure the compiler once per command.

commit 77aace39592d3990259814a6236f01dec0379ba5
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 10:26:31 2007 +0000

    Some -Wall policing.

commit 163267f50f2b075702977c85050069d5b1f4512f
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 10:12:49 2007 +0000

    Some minor refactoring.n

commit 2e1365beb490f105eefe7fe496697ca48d9b2f8a
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 10:06:16 2007 +0000

    Removed old bit-rotted commented-out getReverseDeps.

commit c5528f2f62379390bdfda46a65f5c8f67ef60716
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 10:04:11 2007 +0000

    Removed some fixed FIXMEs.

commit 38189542de8b4b09b99a4eb6914d691eb8cc3641
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 10:02:58 2007 +0000

    Replace zlib use by compression.

commit de2fbfaad95046135d6a218c38782c8dc69e7a14
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 10:01:13 2007 +0000

    Create .cabal directory before writing .cabal/config

commit 68d342f0258fcf193d0f68a65bad1919f6e23585
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 09:47:03 2007 +0000

    Added config file fields for all the install dir templates.

commit 45e894c1e6024194b5f66bfe79fccae6da7d5eac
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 09:34:10 2007 +0000

    Added cachedir field to config file.

commit ac968b6b1c5fe03202c6752de0293c1b77fa36da
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 09:31:21 2007 +0000

    user-install field in config file.

commit e16f93c1eb373e4bbe96cb803978aa5fef3cc9fc
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 09:04:30 2007 +0000

    Actually write some fields to the config file.

commit 56b5e9bf3bbbf5aac6b3e5860e1aaed698c290fd
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 09:04:09 2007 +0000

    Use default configuration if we can't parse the config file.

commit dd7c820521ba44b1973f854fe47eb918781204f3
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 08:56:48 2007 +0000

    Added TODO file.

commit 3656fd032744945f0c7b79c5b669bb00fd568017
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 08:46:18 2007 +0000

    Untabify the rest of the code.

commit 73196a0b2d49c7080a161d8cef5eae666b616653
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 08:44:00 2007 +0000

    Dummy config file writer.

commit 3d119533a184c8fb5ecc9e19d0f2914d1c200fbe
Author: bjorn <bjorn at bringert.net>
Date:   Sun Oct 7 07:10:43 2007 +0000

    Updated README. It's rather incomplete.

commit 40a921a442ef9f31f2385e62380443e121f52c54
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 6 23:20:17 2007 +0000

    Get rid of OutputGen.

commit e2601c7c877bf9682a1e4ee6b1db02650e594c2d
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 6 22:55:46 2007 +0000

    Some detabification.

commit a10ae8e35a57a97d3fe8010e99b657336ed8e777
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 6 22:53:04 2007 +0000

    Added a config file. Removed the old serv.list file. Added dinstall directory command line arguments.

commit b204fbeb8c8a27a160f647e0cb0cb428443d338a
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 6 15:48:47 2007 +0000

    Use our native Haskell tar implementation to extract code from tarballs. We now don't use an external tar program for anything.

commit 88707c73870457e9d5e4e9096a782188312db1dc
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 6 15:31:22 2007 +0000

    Added extraction to the simple TAR implementation.

commit 39dd439122441e95d72129af3300276b54364707
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 6 10:25:25 2007 +0000

    Remove the unused configRunHc.

commit 765f35586cc500d5059cbc28af3f7eab0f88983d
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 6 10:12:46 2007 +0000

    Removed the unused configPkgListDir.

commit 8f70afee9246ec641fc0897ac0a118b60901363d
Author: Lemmih <lemmih at gmail.com>
Date:   Sat Oct 6 09:33:13 2007 +0000

    Sensible defaults in case of missing or erroneous server lists.

commit 15434ac04c22e9378e8e59e28eea7adab1f108b3
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 6 10:01:57 2007 +0000

    Remove unused TarUtils import from Update.

commit cbbc616299c92bb1647bf0b0c255006d61f1364f
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 6 09:16:15 2007 +0000

    Fix dependency parsing from the command line. Before it accepted partial parses, which for example made "cgi=3" parse as "cgi".

commit f19bec1b11aa71a14feb59ea46b5c3f35054dc8d
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 6 08:38:29 2007 +0000

    Compile with -Wall. There are tons of warnings.

commit 98126f70a3ae5cbfc5c44f935cf687878a7a216a
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 6 08:37:57 2007 +0000

    s/parseDescription/parsePackageDescription/.

commit 3d273905dff96e52962dfc2c3aa9d9e08b753f7e
Author: bjorn <bjorn at bringert.net>
Date:   Sat Oct 6 06:35:35 2007 +0000

    Store downloaded source code tarballs under the repo directory.
    This required changing the PkgInfo type from an alias for GenericPackageDescription
    to a record with a Repo and a GenericPackageDescription.
    ResolvedPackage and ResolvedDependency also had to be changed to
    keep a Repo rather than a tarball URL.

commit 11163c47e26fd38d2769b3fdb7629ad6fe4231d4
Author: bjorn <bjorn at bringert.net>
Date:   Fri Oct 5 15:54:41 2007 +0000

    Use the package-url field in the GenericPackageDescription to record the tarball url for each package.

commit 7cced19931f56c0d06b2572bad6e328eb67d3fa6
Author: bjorn <bjorn at bringert.net>
Date:   Fri Oct 5 15:38:24 2007 +0000

    Use the ungzipped 00-index.tar as the local package info cache.
    This adds a dependency on zlib, to unzip the downloaded 00-index.tar.gz.
    Once unzipped, a small pure haskell tar reader is used to read
    the index contents.
    Servers in the server list now have names which are used
    as local cache directory names.
    The --with-server command line flag has been removed since it
    did not allow specifying a server name.

commit c85a6f50126f9299cc441f52fcd4710fafc843ea
Author: bjorn <bjorn at bringert.net>
Date:   Fri Oct 5 10:55:10 2007 +0000

    Change Cabal dependency to Cabal>=1.3.

commit 541efac5c93c1826453d972c874f39eed89f836a
Author: bjorn <bjorn at bringert.net>
Date:   Fri Oct 5 10:51:42 2007 +0000

    Attempts to use --flags options to set configurations flags when finalizing packages.

commit d63c4745c31a6c28f31f5da8c1870405affae8ed
Author: bjorn <bjorn at bringert.net>
Date:   Thu Oct 4 21:55:16 2007 +0000

    Store GenericPackageDescriptions, and finalize when resolving dependencies.
    This is very untested, but should make cabal-install able to resolve
    dependencies again after the move to Cabal 1.2.0. The package descriptions
    are stored in a very hacky format atm the moment.

commit 0762e16512beaa6a85b70d30519bbacf2566cd62
Author: bjorn <bjorn at bringert.net>
Date:   Thu Oct 4 18:09:50 2007 +0000

    Refactoring: change getLatestPkg to work on PkgInfo, and use it in getDependency.

commit 8f3cc663be9ce7acdfc1107b3e95f9eca4804a3e
Author: bjorn <bjorn at bringert.net>
Date:   Thu Oct 4 17:50:47 2007 +0000

    Refactor getBuildDeps and redefine flattenDepList in terms of it.

commit 5fbb362ee4e897850626b9b856d16ca5adbecf8e
Author: bjorn <bjorn at bringert.net>
Date:   Thu Oct 4 16:25:38 2007 +0000

    Refactor flattenDepList.

commit 136b8166577610ee3f96088cd41f15e55a4fba7c
Author: bjorn <bjorn at bringert.net>
Date:   Thu Oct 4 16:13:53 2007 +0000

    Refactoring: add Dependency.isInstalled and use it.

commit ad217231ed6e57b55c7e2a74215aa2c467bb7503
Author: bjorn <bjorn at bringert.net>
Date:   Thu Oct 4 14:44:21 2007 +0000

    Refactoring: add listInstalledPackages, and use that everywhere instead of getInstalledPackages with lots of arguments that all come from ConfigFlags.

commit 28813aca2a2c8ce359dd6db758a651c8d89298e9
Author: bjorn <bjorn at bringert.net>
Date:   Thu Oct 4 14:05:21 2007 +0000

    Refactor getDependency to make it easier to understand.

commit e5ce97a1b03efa48ec13c5ce7de410b1239ec9ed
Author: bjorn <bjorn at bringert.net>
Date:   Wed Oct 3 21:01:23 2007 +0000

    Changed Cabal dep from >=1.1.7 to >=1.2.0, since 1.1.7 was just the development version.

commit bd50927406451de01739c64a0fc3b735a9aa26ee
Author: Duncan Coutts <duncan at haskell.org>
Date:   Mon Sep 17 03:31:18 2007 +0000

    Fix LICENSE and remove duplicate copyright file
    Lemmih, Paolo Martini are the primary authors of cabal-install but were
    missing from the list in LICENCE.

commit e9ec08c5d42a1b0054ded3778ba0dadb673729b5
Author: Duncan Coutts <duncan at haskell.org>
Date:   Thu Sep 6 23:22:55 2007 +0000

    Fixups for recent cabal api changes

commit 397985f7c93c4ab74953b2502dd09f21d2e8f26a
Author: Duncan Coutts <duncan.coutts at worc.ox.ac.uk>
Date:   Tue Aug 28 17:25:28 2007 +0000

    make it build with cabal-1.1.7
    But it does not work yet as it need to be updated to take configurations into
    account. At the moment it thinks no packages have any dependencies since
    it does not finalise the configuration for the package.

commit 494f451c904b64d2413a07d8c46a96ef26a67b81
Author: Spencer Janssen <sjanssen at cse.unl.edu>
Date:   Tue Jul 10 18:13:42 2007 +0000

    Add modules to cabal-setup.cabal: this makes Setup sdist work

commit af358a62fcf9d2117ffb26eeb05b3c3993fd8797
Author: Pepe Iborra <mnislaih at gmail.com>
Date:   Mon May 21 09:44:21 2007 +0000

    Be more verbose in Update

commit 7fb7bb6211a841a1ef0c51e747f2547aa4707283
Author: Pepe Iborra <mnislaih at gmail.com>
Date:   Mon May 21 09:42:12 2007 +0000

    Unbreak package retrieval on Windows
    
    Fixes a bug in my previous filepath patch

commit a20fb831d1b7ebd901f091db346ad803c060d635
Author: Pepe Iborra <mnislaih at gmail.com>
Date:   Sun May 20 20:21:37 2007 +0000

    Be more robust when dealing with external tar

commit 0de68ce60b1fb3ed00a8d029c7583ef82fd1cc25
Author: Pepe Iborra <mnislaih at gmail.com>
Date:   Sun May 20 17:37:52 2007 +0000

    Upgraded to Distribution.Verbosity

commit c76548409209cb2b3c8eafe7ec3d90e879a18efa
Author: bjorn <bjorn at bringert.net>
Date:   Sun May 20 22:16:11 2007 +0000

    Follow directory layout of HackageDB data also when calculating URLs to download from, not just the local paths.

commit fc00ce418ff7af87c036620b0139a9a64b6074b9
Author: bjorn <bjorn at bringert.net>
Date:   Sun May 20 21:56:35 2007 +0000

    Print download URL with -v, to allow debugging download errors.

commit 07b903adf0515e06eff20f61dc3b06ad04d7b472
Author: bringert <bringert at cs.chalmers.se>
Date:   Sun May 20 21:31:29 2007 +0000

    Changed HTTP version dep to HTTP >= 3000.0 && < 3000.1

commit c73351d4e7b74faf80e0a9e9fd6cca3438b1a4be
Author: Pepe Iborra <mnislaih at gmail.com>
Date:   Tue May 8 08:52:42 2007 +0000

    Add missing import

commit 860c3fc1c1b0ae6f0d9997b9f5df94d300b2bed4
Author: Ross Paterson <ross at soi.city.ac.uk>
Date:   Sun May 6 15:20:13 2007 +0000

    follow change of directory layout of the HackageDB data

commit f5ce9b62545dc1ea8da62cd5ff5b5ad7e93e9f44
Author: Duncan Coutts <duncan.coutts at worc.ox.ac.uk>
Date:   Fri May 4 10:46:52 2007 +0000

    Use user installs by default
    So it "Just Works"tm without needing extra options or sudo fiddling.
    If you care you can still do sudo fiddling and --global-install

commit eb7174c29424c506e1be79ebf9edcee46eb68bbb
Author: Duncan Coutts <duncan.coutts at worc.ox.ac.uk>
Date:   Fri May 4 10:46:40 2007 +0000

    Fix dep on HTTP package

commit 8a8baf9126b0033c61edd1cfc1ed190f43903961
Author: Duncan Coutts <duncan.coutts at worc.ox.ac.uk>
Date:   Thu May 3 19:41:08 2007 +0000

    Remove the Makefile and the redundant install instructions
    We can now install purely using cabal, no Makefile needed.
    The install instrcutions previously said to install the data
    file manually, but cabal does that for us now.

commit 8ffbb30a68e623f9c1b8cae1c0b7d18df2a07f0f
Author: Duncan Coutts <duncan.coutts at worc.ox.ac.uk>
Date:   Thu May 3 19:40:46 2007 +0000

    Use the new hackage package archive url

commit 7fe7c74372d6dfa74895495bf84c757195b96409
Author: Duncan Coutts <duncan.coutts at worc.ox.ac.uk>
Date:   Thu May 3 19:37:42 2007 +0000

    Change various things in our own .cabal file
    Fix the license, it's BSD3 not BSD4 (I double checked with Issac)
    Have cabal install the serv.list for us as a data file.
    Add HTTP and filepath as dependencies, rather than bundling them.

commit 7da0fba29d475b1e13dd1ac7c187ac1be6436204
Author: Duncan Coutts <duncan.coutts at worc.ox.ac.uk>
Date:   Thu May 3 19:36:00 2007 +0000

    Add message when creating the package config files.
    Enabled at -v2

commit a1318f38bd46dd9aa7f2e6c9b8d7534ce8fd53f2
Author: Duncan Coutts <duncan.coutts at worc.ox.ac.uk>
Date:   Thu May 3 19:34:49 2007 +0000

    Be less verbose when parsing all the package's .cabal files
    So that at ordinary -v1 we do not get lots of silly warnings for outdated
    .cabal files, like warnings about hs-src-dir vs hs-src-dirs.

commit c0cea6ea7c90eab7be25114cf93da5d7836241c9
Author: Duncan Coutts <duncan.coutts at worc.ox.ac.uk>
Date:   Thu May 3 19:33:48 2007 +0000

    Make the -v flag mean -v2 like cabal does, not -v3
    This is relevant since we pass on this default verbosity when we call cabal,
    so it's much better if they match up.

commit e6ad7fc59742e1f4128655838a57e2ec75fc92c5
Author: Duncan Coutts <duncan.coutts at worc.ox.ac.uk>
Date:   Thu May 3 19:23:03 2007 +0000

    Tweak where the default config lives and where we keep the package list
    This should make it all "Just Work"tm. We no longer need a Makefile
    to do the installation. The point is, don't bother trying to use
    /etc/cabal-install/srve.list as the global list. That's hard to do
    because it involves installing that file, and we only want to do that
    for global installs, so it's even more complex. Instead we should just
    use cabal's facility to install data files. That way it ends up in
    /usr/local/share/cabal-install-x.y/
    or somewhere similar for a user install. But either way, cabal handles it.
    The per-user config sill overrides this one, so it's still possible to edit
    the list even if /usr/local/share/ is read-only. Also, we always use
    $HOME/.cabal-install/ for the per-user config and package cache.
    The one downside is that if an admin wants to use /etc/ and /var rather
    than /root/.cabal-install/ then this is a tad harder. But the point is
    at the moment it'll at least work for most people without fiddling,
    including windows users.

commit 7b88ccad869635eecdd96beb2eba4dbf13463cec
Author: Duncan Coutts <duncan.coutts at worc.ox.ac.uk>
Date:   Thu May 3 16:22:24 2007 +0000

    Get the version from the cabal-generated paths module

commit f2c901019e9828f82fc91cd126bc466de3e36c5c
Author: Duncan Coutts <duncan.coutts at worc.ox.ac.uk>
Date:   Thu May 3 16:21:17 2007 +0000

    List packages in name and version order (case-insensitively)

commit 9313446435f7265e402d5c1214f3ec8854aad938
Author: Duncan Coutts <duncan.coutts at worc.ox.ac.uk>
Date:   Thu May 3 16:20:33 2007 +0000

    Fix default verbosity

commit 6a9192f6f3099aa2d32ed88dccbff76ed27d7094
Author: Pepe Iborra <mnislaih at gmail.com>
Date:   Thu May 3 14:33:52 2007 +0000

    Upgraded to filepath & first steps towards Windows compatibility

commit 4e572d32cbd537e53354159e0b4f0a55a1a23871
Author: bjorn <bjorn at bringert.net>
Date:   Sun Apr 22 11:52:15 2007 +0000

    Print ... after Downloading message.

commit a0a6e481985c4951e08494faa6da80c007e0d179
Author: bjorn <bjorn at bringert.net>
Date:   Sun Apr 22 11:43:58 2007 +0000

    Don't print Downloading 'package.tar.gz' twice.

commit 9def94cdcca136910afed2942ea0df1e626d418e
Author: bringert <bringert at cs.chalmers.se>
Date:   Tue Apr 10 16:59:54 2007 +0000

    Fixed path to LICENSE file in .cabal file.

commit fdd4f1d19503b99d168873b7b3705b5b783f11ad
Author: bjorn <bjorn at bringert.net>
Date:   Mon Apr 9 17:04:09 2007 +0000

    build-dep can now build the dependencies specified in a local .cabal file.
    This is useful when you want to build a development version of something whose dependencies are available in Hackage.

commit f7b4206da01b390a18a2ea148611d1acf9642306
Author: bjorn <bjorn at bringert.net>
Date:   Mon Apr 9 15:46:54 2007 +0000

    Removed one level of indirection in the command-line options parsing.
    Before, getOpt would return a list of Flag, which had a one-to-one correspondence with functions TempFlags -> TempFlags. This made it uneccessarily difficult and error-prone to add new flags. I removed the Flag type and replaced the values with TempFlags -> TempFlags functions. This should have the side effect of making the tar path flag work, since it was not interpreted before.

commit c95f5735069f200eefccda1ef1df6d7dcd6899f7
Author: Ganesh Sittampalam <ganesh at earth.li>
Date:   Sun Jun 19 06:45:49 2011 +0000

    clone LICENSE and copyright into cabal-install/

commit 1ba83069ce21273953760080b09c2c2b368b0667
Author: Ganesh Sittampalam <ganesh at earth.li>
Date:   Sat Jun 18 12:47:48 2011 +0000

    Rollback removal of cabal-install

commit 27ac93a4b0290f70d80d56998cb96106fba82de0
Author: Ganesh Sittampalam <ganesh at earth.li>
Date:   Sat Jun 18 12:47:28 2011 +0000

    TAG cabal-fork



More information about the Cvs-ghc mailing list