Changelog of @haskell/Cabal 1.4.0.0

--change-log--

1.5.x (current development version)

1.4.0.0 Duncan Coutts duncan@haskell.org June 2008 * Rewritten command line handling support * Command line completion with bash * Better support for Haddock 2 * Improved support for nhc98 * Removed support for ghc-6.2 * Haddock markup in .lhs files now supported * Default colour scheme for highlighted source code * Default prefix for --user installs is now $HOME/.cabal * All .cabal files are treaded as UTF-8 and must be valid * Many checks added for common mistakes * New --package-db= option for specific package databases * Many internal changes to support cabal-install * Stricter parsing for version strings, eg dissalows "1.05" * Improved user guide introduction * Programatica support removed * New options --program-prefix/suffix allows eg versioned programs * Support packages that use .hs-boot files * Fix sdist for Main modules that require preprocessing * New configure -O flag with optimisation level 0--2 * Provide access to "x-" extension fields through the Cabal api * Added check for broken installed packages * Added warning about using inconsistent versions of dependencies * Strip binary executable files by default with an option to disable * New options to add site-specific include and library search paths * Lift the restriction that libraries must have exposed-modules * Many bugs fixed. * Many internal structural improvements and code cleanups

1.2.4.0 Duncan Coutts duncan@haskell.org June 2008 * Released with GHC 6.8.3 * Backported several fixes and minor improvements from Cabal-1.4 * Use a default colour scheme for sources with hscolour >=1.9 * Support --hyperlink-source for Haddock >= 2.0 * Fix for running in a non-writable directory * Add OSX -framework arguments when linking executables * Updates to the user guide * Allow build-tools names to include + and _ * Export autoconfUserHooks and simpleUserHooks * Export ccLdOptionsBuildInfo for Setup.hs scripts * Export unionBuildInfo and make BuildInfo an instance of Monoid * Fix to allow the 'main-is' module to use a pre-processor

1.2.3.0 Duncan Coutts duncan@haskell.org Nov 2007 * Released with GHC 6.8.2 * Includes full list of GHC language extensions * Fix infamous "dist/conftest.c" bug * Fix configure --interfacedir= * Find ld.exe on Windows correctly * Export PreProcessor constructor and mkSimplePreProcessor * Fix minor bug in unlit code * Fix some markup in the haddock docs

1.2.2.0 Duncan Coutts duncan@haskell.org Nov 2007 * Released with GHC 6.8.1 * Support haddock-2.0 * Support building DSOs with GHC * Require reconfiguring if the .cabal file has changed * Fix os(windows) configuration test * Fix building documentation * Fix building packages on Solaris * Other minor bug fixes

1.2.1 Duncan Coutts duncan@haskell.org Oct 2007 * To be included in GHC 6.8.1 * New field "cpp-options" used when preprocessing Haskell modules * Fixes for hsc2hs when using ghc * C source code gets compiled with -O2 by default * OS aliases, to allow os(windows) rather than requiring os(mingw32) * Fix cleaning of 'stub' files * Fix cabal-setup, command line ui that replaces "runhaskell Setup.hs" * Build docs even when dependent packages docs are missing * Allow the --html-dir to be specified at configure time * Fix building with ghc-6.2 * Other minor bug fixes and build fixes

1.2.0 Duncan Coutts duncan.coutts@worc.ox.ac.uk Sept 2007 * To be included in GHC 6.8.x * New configurations feature * Can make haddock docs link to hilighted sources (with hscolour) * New flag to allow linking to haddock docs on the web * Supports pkg-config * New field "build-tools" for tool dependencies * Improved c2hs support * Preprocessor output no longer clutters source dirs * Seperate "includes" and "install-includes" fields * Makefile command to generate makefiles for building libs with GHC * New --docdir configure flag * Generic --with-prog --prog-args configure flags * Better default installation paths on Windows * Install paths can be specified relative to each other * License files now installed * Initial support for NHC (incomplete) * Consistent treatment of verbosity * Reduced verbosity of configure step by default * Improved helpfulness of output messages * Help output now clearer and fits in 80 columns * New setup register --gen-pkg-config flag for distros * Major internal refactoring, hooks api has changed * Dozens of bug fixes

1.1.6.2 Duncan Coutts duncan.coutts@worc.ox.ac.uk May 2007 * Released with GHC 6.6.1 * Handle windows text file encoding for .cabal files * Fix compiling a executable for profiling that uses Template Haskell * Other minor bug fixes and user guide clarifications

1.1.6.1 Duncan Coutts duncan.coutts@worc.ox.ac.uk Oct 2006 * fix unlit code * fix escaping in register.sh

1.1.6 Duncan Coutts duncan.coutts@worc.ox.ac.uk Oct 2006 * Released with GHC 6.6 * Added support for hoogle * Allow profiling and normal builds of libs to be chosen indepentantly * Default installation directories on Win32 changed * Register haddock docs with ghc-pkg * Get haddock to make hyperlinks to dependent package docs * Added BangPatterns language extension * Various bug fixes

1.1.4 Duncan Coutts duncan.coutts@worc.ox.ac.uk May 2006 * Released with GHC 6.4.2 * Better support for packages that need to install header files * cabal-setup added, but not installed by default yet * Implemented "setup register --inplace" * Have packages exposed by default with ghc-6.2 * It is no longer necessary to run 'configure' before 'clean' or 'sdist' * Added support for ghc's -split-objs * Initial support for JHC * Ignore extension fields in .cabal files (fields begining with "x-") * Some changes to command hooks API to improve consistency * Hugs support improvements * Added GeneralisedNewtypeDeriving language extension * Added cabal-version field * Support hidden modules with haddock * Internal code refactoring * More bug fixes

1.1.3 Isaac Jones ijones@syntaxpolice.org Sept 2005 * WARNING: Interfaces not documented in the user's guide may change in future releases. * Move building of GHCi .o libs to the build phase rather than register phase. (from Duncan Coutts) * Use .tar.gz for source package extension * Uses GHC instead of cpphs if the latter is not available * Added experimental "command hooks" which completely override the default behavior of a command. * Some bugfixes

1.1.1 Isaac Jones ijones@syntaxpolice.org July 2005 * WARNING: Interfaces not documented in the user's guide may change in future releases. * Handles recursive modules for GHC 6.2 and GHC 6.4. * Added "setup test" command (Used with UserHook) * implemented handling of _stub.{c,h,o} files * Added support for profiling * Changed install prefix of libraries (pref/pkgname-version to prefix/pkgname-version/compname-version) * Added pattern guards as a language extension * Moved some functionality to Language.Haskell.Extension * Register / unregister .bat files for windows * Exposed more of the API * Added support for the hide-all-packages flag in GHC > 6.4 * Several bug fixes

1.0 Isaac Jones ijones@syntaxpolice.org March 11 2005 * Released with GHC 6.4, Hugs March 2005, and nhc98 1.18 * Some sanity checking

0.5 Isaac Jones ijones@syntaxpolice.org Wed Feb 19 2005 * WARNING: this is a pre-release and the interfaces are still likely to change until we reach a 1.0 release. * Hooks interfaces changed * Added preprocessors to user hooks * No more executable-modules or hidden-modules. Use "other-modules" instead. * Certain fields moved into BuildInfo, much refactoring * extra-libs -> extra-libraries * Added --gen-script to configure and unconfigure. * modules-ghc (etc) now ghc-modules (etc) * added new fields including "synopsis" * Lots of bug fixes * spaces can sometimes be used instead of commas * A user manual has appeared (Thanks, ross!) * for ghc 6.4, configures versionsed depends properly * more features to ./setup haddock

0.4 Isaac Jones ijones@syntaxpolice.org Sun Jan 16 2005

* Much thanks to all the awesome fptools hackers who have been
working hard to build the Haskell Cabal!

* Interface Changes:

** WARNING: this is a pre-release and the interfaces are still
likely to change until we reach a 1.0 release.

** Instead of Package.description, you should name your
description files <something>.cabal.  In particular, we suggest
that you name it <packagename>.cabal, but this is not enforced
(yet).  Multiple .cabal files in the same directory is an error,
at least for now.

** ./setup install --install-prefix is gone.  Use ./setup copy
--copy-prefix instead.

** The "Modules" field is gone.  Use "hidden-modules",
"exposed-modules", and "executable-modules".

** Build-depends is now a package-only field, and can't go into
executable stanzas.  Build-depends is a package-to-package
relationship.

** Some new fields.  Use the Source.

* New Features

** Cabal is now included as a package in the CVS version of
fptools.  That means it'll be released as "-package Cabal" in
future versions of the compilers, and if you are a bleeding-edge
user, you can grab it from the CVS repository with the compilers.

** Hugs compatibility and NHC98 compatibility should both be
improved.

** Hooks Interface / Autoconf compatibility: Most of the hooks
interface is hidden for now, because it's not finalized.  I have
exposed only "defaultMainWithHooks" and "defaultUserHooks".  This
allows you to use a ./configure script to preprocess
"foo.buildinfo", which gets merged with "foo.cabal".  In future
releases, we'll expose UserHooks, but we're definitely going to
change the interface to those.  The interface to the two functions
I've exposed should stay the same, though.

** ./setup haddock is a baby feature which pre-processes the
source code with hscpp and runs haddock on it.  This is brand new
and hardly tested, so you get to knock it around and see what you
think.

** Some commands now actually implement verbosity.

** The preprocessors have been tested a bit more, and seem to work
OK.  Please give feedback if you use these.

0.3 Isaac Jones ijones@syntaxpolice.org Sun Jan 16 2005 * Unstable snapshot release * From now on, stable releases are even.

0.2 Isaac Jones ijones@syntaxpolice.org

* Adds more HUGS support and preprocessor support.