On Windows, use `TransliterateCodingFailure` for encoding on `stdout`
and `stderr` (unless the current locale encoding is already a Unicode
encoding, in which case do nothing.)
Relaxed error handling requires base >= 4.4; fix build for GHC <= 7.0.4.
Forgot to conditionally omit all the relevant imports in the previous
commit; oops.
Again, fix on GHC 7.0.4, hopefully.
Remove redundant line. (Churn to prod Travis CI.)
Don't freeze non-required installed packages

An InstallPlan contains installed packages in the package database which are
not required to satisfy the dependencies of the user targets. To prevent
including them in the frozen set of constraints, `Freeze.planPackages` uses
`D.C.PackageIndex.dependencyClosure` to try and take the transitive closure of
the package dependencies.

Whilst it is possible for `pruneInstallPlan` to fail, only valid
`InstallPlan`s are passed to it. If a failure does occur, we error.
Rename a function.
Revert "Merge pull request #1758 from dan-t/master"

This reverts commit 3c7a740847e987c0c11750cab97c2859cb43cc27, reversing
changes made to 68d9077c5f091200f87308e032e7c05ff5ea250d.
Revert "-Wall police"

This reverts commit 68d9077c5f091200f87308e032e7c05ff5ea250d.
Revert "Merge branch 'master' of https://github.com/dan-t/cabal"

This reverts commit 0038d05a9d5af1daeae2e160da69f946760813e8, reversing
changes made to c721e85137b4afb7fe879ef365f368d7a23ec43a.
Rename that function again.
Temporarily disable QuickCheck >= 2.7.

It's not supported by latest test-framework. See
https://github.com/haskell/test-framework/issues/2
Skip processing install plan when there is nothing to install

Of course processing an empty install plan doesn't do very much
but did give some slightly confusing messages at higher verbosity
levels.
Bootstrap over HTTPS.
Rewrite documentation for `Distribution.License`.

* Fix copyright field.
* List valid versions for each license.
* Remove descriptions for most licenses; just link to them instead.
* Explain why BSD4 should be avoided.
* State that public domain is not a license.
* Link to user guide.
Eliminate redundant wording.
Merge branch 'license-docs' of https://github.com/ianbollinger/cabal
Fix typo
Add support for 'main-is' to cabal init.

This includes a new flag, --main-is, as well as a new prompt that appears if the user selects the 'Executable' option or uses --is-executable.
Address review comments.