[Haskell] ANN: cabal-install-1.16.0 (and Cabal-

Johan Tibell johan.tibell at gmail.com
Wed Oct 3 20:19:21 CEST 2012

(Please redirect follow-ups to haskell-cafe at haskell.org or
cabal-devel at haskell.org)

On the behalf of the many contributors to cabal, I'm proud to present
cabal-install-1.16.0. This release contains almost a year worth of
patches. Highlights include:

 * Parallel installs (cabal install -j)
 * Several improvements to the dependency solver.
 * Lots of bugfixes

We're also simultaneously releasing Cabal-, which address a few bugs.

To install:

    cabal update
    cabal install cabal-install-1.16.0 Cabal-

Complete list of changes in cabal-install-1.16.0:

* Bump cabal-install version number to 1.16.0
* Extend the unpack command for the .cabal file updating
* On install, update the .cabal file with the one from the index
* Make compatible with `network-2.4` API
* Update ZLIB_VER in bootstrap.sh for ghc-7.6 compatibility
* cabal-install.cabal: add Distribution.Client.JobControl and
* Adapt bootstrap.sh to ghc-7.6 changes
* Move comment that was missed in a refactoring
* cabal-install: Adapt for GHC 7.6
* Ensure that the cabal-install logfile gets closed
* Make cabal-install build with Cabal-1.16.
* Initialise the 'jobs' config file setting with the current number of
CPU cores.
* Update version bounds for directory.
* Update bootstrap.sh to match platform 2012.2.0.0
* Relax dependency on containers.
* Bump versions.
* Better output for parallel install.
* Fix warnings.
* Remove 'tryCachedSetupExecutable'.
* Redundant import.
* Use a lock instead of 'JobControl 1'.
* Comments, cosmetic changes.
* Implement the setup executable cache.
* Add the missing JobControl module
* Fix missing import after merge of par build patches
* Fix impl of PackageIndex.allPackagesByName
* Drop the "ghc-options: -rtsopts" on cabal-install. We do not need it.
* Parallelise the install command This is based on Mikhail Glushenkov's patches.
* InstallPlan: Add a Processing package state.
* Add a '-j' flag for the 'install' command.
* Add -threaded and -rtsopts to cabal-install's ghc-options.
* Fix typos.
* Fix warnings.
* 80-col violation.
* Spelling.
* Fix warnings.
* Extended a comment.
* Force the log for the error to be printed in parallel with the complete trace.
* Remove goal choice nodes after reordering is completed.
* Make modular solver handle manual flags properly.
* Store manual flag info in search tree.
* Maintain info about manual flags in modular solver.
* Fix cabal-install build.
* Merge pull request #6 from pcapriotti/master
* Adapt to change in GHC package db flags.
* Merge pull request #1 from iustin/master
* Add support for Apache 2.0 license to cabal-install
* Handle test and bench stanzas without dependencies properly in modular solver.
* Updated repo location in cabal files.
* last-minute README changes
* updated copyright year for Duncan
* updated changelog
* added deepseq to bootstrap.sh
* handling the solver options properly in config file
* handling the "optimization" option properly in config file
* Update cabal-install bootstrap.sh
* treat packages that are unknown no longer as an "internal error" in
modular solver
* minor wording change when printing install plans
* no longer pre-filter broken packages for modular solver
* for empty install plans, print the packages that are installed
* make the reinstall check less noisy
* disable line-wrapping for solver debug output
* adding a solver flag for shadowing of installed packages
* adding the possibility for index-disabled packages
* choose default solver based on compiler version
* Added a comment
* Use the new --package-db flag stuff in cabal-install
* head cabal-install requires head Cabal
* Fix ticket #731
* Add brief description of PVP to cabal init generated .cabal files
* Bump versions to 1.15 and 0.15 This is the head branch, the 1.14.x
and 0.14.x are in the 1.14 branch.
* init: guess at filling in deps in the build-depends: field
* init: see whether source directory 'src' exists.
* init: improve prompt: enclose y/n in parens
* init: improve prompt: 'homepage' field is not for repos.
* bootstrap with --global should still respect $PREFIX
* Update cabal-install boostrap.sh package versions
* Fix 'cabal configure --enable-{tests,benchmarks}'. 'cabal configure'
was not adding optional stanza constraints when checking dependencies,
causing '--enable-{tests,benchmarks}' to be silently ignored.
* added missing error message
* Don't try to run test suites where none exist.
* Fixed non-exhaustive pattern matches with new InstallOutcome.
* Automatically run test suites when invoked with 'cabal install
--enable-tests'. Do not install if tests fail.
* make test and bench available as user constraints
* let --reinstall imply --force-reinstalls for targets
* stanza support in modular solver
* show optional stanzas when printing install plans
* Added a missing case.
* Enable tests and benchmarks in cabal-install without modifications
to the Cabal library.
* Don't build benchmarks, even if installing benchmark dependencies.
* Update types in modular dependency solver to compile with new
test/benchmark dependency constraints.
* Handle test and benchmark dependencies through the resolver properly.
* updating dependencies in bootstrap.sh
* fix compilation with ghc-7.4
* Added a comment.
* removing trailing whitespace
* removing datatype contexts
* Now require mtl-2

Complete list of changes in Cabal-

* Bump Cabal version number to
* Fix failing test
* Do not pass -XHaskell98 to older compilers (fixes #1016)
* don't test --disable-library-vanilla for now
* Fix logic for building dynamic executables with TemplateHaskell
* Fix the logic for building profiled executables with TemplateHaskell.
* add test for non-vanilla profiling and dynamic builds with Template Haskell
* Build Setup executables without HPC. Fixes #1012.
* Make 'viewAsFieldDescr' a total function.

  Johan & Bryan

More information about the Haskell mailing list