Skip to content
This repository
  • 1,288 commits
  • 171 files changed
  • 15 contributors
This comparison is big! We're only showing the most recent 250 commits
Sep 03, 2008
Duncan Coutts dcoutts 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.
Oct 07, 2008
Duncan Coutts dcoutts Handle build reports with missing logs better f5c0f67
Duncan Coutts dcoutts Relax deps to build with ghc-6.10 3d46f74
Oct 10, 2008
Duncan Coutts dcoutts Bump version number and dependencies 06cb3a9
Duncan Coutts dcoutts Tidy up the preferred-versions file parser 38e211f
Duncan Coutts dcoutts Fix the -i dir for compiling Setup.hs when it's the current dir
map "" to "."
Duncan Coutts dcoutts Apparnetly builds with unix-2.0 which is what came with ghc-6.6 95cbdae
Oct 11, 2008
Duncan Coutts dcoutts Drop silly export cd3bf01
Duncan Coutts dcoutts Add Eq for a couple types in the anon build reports 7cd72c6
Duncan Coutts dcoutts Bump versions of deps in the bootstrap script e21c4b7
Duncan Coutts dcoutts Improve the README, better install instructions
And slightly better intro guide to the main commands.
Duncan Coutts dcoutts Bump version to 0.6.0 c82e0c0
Duncan Coutts dcoutts TAG 0.6.0 89b4bfe
Nov 13, 2008
Andrea Vezzosi Saizan Implement 'cabal unpack' command as in #390 66e6089
Nov 21, 2008
Lemmih Slightly better lhc support. 2747296
Nov 22, 2008
Duncan Coutts dcoutts Warn about use of tabs 1eb3ada
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Put explicit lower bound on version of base
It does not build with ghc-6.4.2, missing Functor instance for Either.
Duncan Coutts dcoutts Remove use of tabs b9f6739
Dec 03, 2008
Duncan Coutts dcoutts Mention where files get downloaded to at verbosity level verbose 810c5b3
Duncan Coutts dcoutts Fix warning aobut -fffi in OPTIONS pragma 9e7e292
Dec 10, 2008
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Clean up the code in Main
Make the names more regular and set up the various flags
in a more regular way.
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Bump version to 0.6.1 05f4d8e
Dec 15, 2008
Duncan Coutts dcoutts Use the Platform type rather than passing around the OS and Arch sepa…
Duncan Coutts dcoutts Don't re-export PackageName from Distribution.Client.Dependency
It used to be a type alias.
Duncan Coutts dcoutts Rename and rearrange the PackagePreferences type 619d1ce
Duncan Coutts dcoutts Change the dep resolver interface to pass constraints separately from…
… targets

This lets us specify constraints for packages that are not targets.
Duncan Coutts dcoutts Mostly renaming and trivial refactoring 570c87c
Duncan Coutts dcoutts Take preferences into account in the bogus resolver 11d038e
Duncan Coutts dcoutts A bit more renaming in the top down resolver addacf8
Duncan Coutts dcoutts Add PackageInstalledConstraint to the PackageConstraint type
This should be useful for things like preventing upgrading
the base package for ghc.
Dec 16, 2008
Duncan Coutts dcoutts Have the dep resolver take constraints and targets separately 92128c5
Duncan Coutts dcoutts Implement cabal install --constraint=
Connect up the existing user interface with the new dep resolver api.
Dec 18, 2008
Duncan Coutts dcoutts Workaround for a url parsing bug that breaks http proxies that need auth
Diagnosis and patch from Valery V. Vorotyntsev.
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts 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.
Dec 19, 2008
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts 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
Duncan Coutts dcoutts 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.
Dec 21, 2008
Duncan Coutts dcoutts Respect the --package-db flag when compiling Setup.hs
Fixes ticket #394.
Jan 13, 2009
Duncan Coutts dcoutts 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...
Duncan Coutts dcoutts Display examples in cabal install --help
  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
Duncan Coutts dcoutts Improve the cabal --help output
Put the general info message at the top and make the explanation of
installing a hackage package somewhat clearer.
Duncan Coutts dcoutts Print the location of the config file in the global --help
Ticket #413
Jan 14, 2009
Duncan Coutts dcoutts 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 ]
Duncan Coutts dcoutts Don't display the category in cabal list output
It is probably not sufficiently useful to justify the space it takes.
Duncan Coutts dcoutts Warn if a package index from a remote repo is 15 days or older
For example it will print:
Warning: The package list for '' is 16 days old.
Run 'cabal update' to get the latest list of available packages.
Duncan Coutts dcoutts cabal update now reports if a newer version of cabal-install is avail…
Duncan Coutts dcoutts 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.
Jan 15, 2009
Duncan Coutts dcoutts Rewrite the 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.
Duncan Coutts dcoutts More improvments to the script cf58605
Duncan Coutts dcoutts Traditional /bin/sh portability fixes for 4a7a69b
Jan 16, 2009
Duncan Coutts dcoutts Note in the README that zlib needs the zlib C lib package a5caf11
Duncan Coutts dcoutts Read install dirs correctly from old-style .cabal/config files
Should fix ticket #365
Duncan Coutts dcoutts Improve the printing of config file field parse error messages 28a73ea
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Only print the config file location for the global --help 3f74ca8
Jan 19, 2009
Duncan Coutts dcoutts Add initial implementation of cabal info
It provides more detailed information on a particular package.
Still a few TODOs. Fixes #361, #449 and #456.
Jan 23, 2009
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Don't use grep -e, solaris does not like it 09223ed
Duncan Coutts dcoutts Improve error message when ghc or ghc-pkg are mismatched or not found 55128b4
Duncan Coutts dcoutts Update HTTP dep in the bootstrap script bd98e51
Jan 25, 2009
Duncan Coutts dcoutts 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.
Jan 26, 2009
Duncan Coutts dcoutts Remove unnecessary qualified use of ConfigFlags 2e219f9
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Add ConfigExFlags into the configure, install and upgrade commands
Not yet passed all the way through.
Duncan Coutts dcoutts Change the install and configure modules to use the extended config f…
Duncan Coutts dcoutts Remove the prefernece and cabal lib version flags from the InstallFlags
They are now in the ConfigExFlags instead.
Feb 01, 2009
Duncan Coutts dcoutts Add homepage and bug-reports fields to .cabal file c7d431e
Feb 02, 2009
Duncan Coutts dcoutts Add compat withTempDirectory function
This is already in Cabal HEAD but we cannot use that yet
Duncan Coutts dcoutts 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.
Feb 08, 2009
Andrea Vezzosi Saizan Fix #490, unpack now gives a proper error message. 1a16976
Feb 09, 2009
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Improve the cabal update notice eec0fc9
Feb 10, 2009
Ganesh Sittampalam always check environment variables for HTTP proxy first dea2d6d
Feb 15, 2009
Duncan Coutts dcoutts Rearrange user interface for build logging
The new options (as described in ticket #501) are:
  where LELVEL `elem` [none,anonymous,detailed]
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Put the default logging and reporting setting in the initial config f…
Duncan Coutts dcoutts Change the field order in the initial config file.
Also update the name of one excluded field.
Duncan Coutts dcoutts Put an explanation of the config file format at the top in comments. 9e53148
Feb 16, 2009
Duncan Coutts dcoutts Add warnings in the case that no remote servers have been specified
It's not strictly an error but it can be rather confusing.
Feb 18, 2009
Duncan Coutts dcoutts Disable the upgrade command for now. 5169a28
Duncan Coutts dcoutts Tweaks to the bootstrap script
Update Cabal lib version to
Implement a couple shell script coding style recommendations.
Duncan Coutts dcoutts Update changelog for 0.6.2 release 323d56e
Duncan Coutts dcoutts Bump version to 0.6.2 fc17cd5
Duncan Coutts dcoutts Add extra assertion into the top down dep planner efaba54
Duncan Coutts dcoutts Add missing other-modules e997ee4
Feb 19, 2009
Duncan Coutts dcoutts Update the README d2af878
Feb 21, 2009
Duncan Coutts dcoutts Actually does compile with unix-1.0 that comes with ghc-6.6
ghc-6.6.1 came with unix-2.1
Feb 23, 2009
Paolo Losi paolo-losi Select Configuration file via env var CABAL_CONFIG. 55815d6
Mar 01, 2009
Duncan Coutts dcoutts Update tar code based on new tar package 0dd090f
Mar 08, 2009
Duncan Coutts dcoutts 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.
Mar 15, 2009
Duncan Coutts dcoutts Clarify the instructions in the README and
Addresses the complaint in ticket #523.
Mar 18, 2009
Duncan Coutts dcoutts Solaris 9 /bin/sh doesn't like the ! syntax in 6c790c1
Mar 21, 2009
Duncan Coutts dcoutts 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.
May 31, 2009
Duncan Coutts dcoutts New development branch, version 0.7
Update to development version of Cabal
Duncan Coutts dcoutts Fix uses of deprecated stuff 76ba5c5
Duncan Coutts dcoutts Use new top handler, should get better error messages 8c58d1b
Duncan Coutts dcoutts Simplify version ranges before printing in error messages
Part of ticket #369
Jun 03, 2009
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Improve formatting of cabal check output 57e11f2
Duncan Coutts dcoutts Require latest Cabal lib version 4e19db4
Jun 04, 2009
Duncan Coutts dcoutts Make cabal upload/check print out the error messages reported by the …

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).
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Fix use of deprecated version constructors 8d52103
Jun 05, 2009
Duncan Coutts dcoutts Fix sdist
Fix handling of base dir in tar file creation.
Jun 07, 2009
Andrea Vezzosi Saizan #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
Jun 11, 2009
Brent Yorgey byorgey add message to 'package not found' error advising to run 'cabal updat…
…e'. (#497)
Jun 13, 2009
Dino Morelli dino- Now supporting explicit --user or --global switches in w…
…ith usage feedback for bad args

This change was adapted from work submitted to the cabal-devel mailing list by Jason Dusek.
Jul 04, 2009
Duncan Coutts dcoutts Use $pkgroot/package/$pkgid.tar.gz as tarball URL ccbe66b
Jul 07, 2009
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Use defaultInstallFlags as the defaults 5feb57e
Duncan Coutts dcoutts Be less noisy about warning about packages with missing docs 359b614
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Require Cabal lib version 1.7.3
Needs recent api changes.
Aug 29, 2009
Duncan Coutts dcoutts 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.
Sep 02, 2009
Benedikt Huber visq Collecting some heuristics for creating an initial cabal file fe475a1
Oct 11, 2009
Brent Yorgey byorgey add 'init' subcommand for initializing project cabalisation efad933
Oct 18, 2009
Duncan Coutts dcoutts Update for changes to finalizePackageDescription d7e23bf
Oct 20, 2009
Duncan Coutts dcoutts Apply suggestion for bootstrap failure message
ghc ticket #3602
Oct 22, 2009
Duncan Coutts dcoutts 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.
Oct 28, 2009
Duncan Coutts dcoutts Update new cabal init code for the recent package id changes 5b30e4c
Duncan Coutts dcoutts Update list of modules (so sdist works) 94cda43
Duncan Coutts dcoutts Bump version number a bit 5a1982a
Duncan Coutts dcoutts Allow building with base 4 e843153
Duncan Coutts dcoutts Fix building with ghc-6.8 f2677b8
Duncan Coutts dcoutts Fix building with ghc-6.12 0cb68c3
Duncan Coutts dcoutts Parly fix building with ghc-6.6
The new cabal init stuff needs some work.
Nov 02, 2009
Duncan Coutts dcoutts 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.
Robin Green greenrd Fix bootstrap (#599) eaa3277
Nov 03, 2009
thaldyron thaldyron 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)
cabal install world
Installing package 'foo' without adding it to the world file:
# cabal install foo --one-shot
Nov 04, 2009
Duncan Coutts dcoutts Add a couple checks to "cabal unpack" and improve the messages 4bd6bd1
Nov 10, 2009
Duncan Coutts dcoutts Fix base 4 exceptions in #ifdef WIN32 code section dafe9a0
Duncan Coutts dcoutts Build with ghc-6.6 a10b734
Nov 13, 2009
Sergei Trofimovich trofi fixed 'cabal sdist' 4756017
Nov 22, 2009
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts 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.
Nov 23, 2009
Duncan Coutts dcoutts Allow numeric fields in tar headers that use binary format
This is an old non-standard extension that some tar tools still use.
Dec 18, 2009
Duncan Coutts dcoutts Fix combination of --global --package-db when compiling Setup.hs scripts
The order of the package db stack is important.
Duncan Coutts dcoutts Update the changelog for 0.8 935c8f1
Duncan Coutts dcoutts Update the bootstrap script to work with ghc-6.12
We can no longer expect mtl, network and parsec to be installed.
Duncan Coutts dcoutts Update various .cabal bits 66f530c
Duncan Coutts dcoutts Bump head to new dev version 0.9.x aa97b24
Duncan Coutts dcoutts Update the README 51fec72
Duncan Coutts dcoutts 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.
Dec 19, 2009
Duncan Coutts dcoutts Make the cabal init command line flag names follow the normal convention
Using hyphens rather than upper case.
Duncan Coutts dcoutts Remove stability feature from cabal init
The stability field in .cabal files is deprecated since it's mostly useless.
Duncan Coutts dcoutts Use the standard form of copyright statement in BSD3 license template 3457022
Duncan Coutts dcoutts Reorder commands in cabal --help output 3d49842
Dec 20, 2009
Sergei Trofimovich trofi Distribution/Client/SrcDist.hs: fixed warning on -Wall (unused result) 5754222
Sergei Trofimovich trofi Distribution/Client/IndexUtils.hs: fixed warning on -Wall (unused res…
Sergei Trofimovich trofi Distribution/Client/BuildReports/Anonymous.hs: removed unused import …
…of BuildResult
Sergei Trofimovich trofi Distribution/Client/Haddock.hs: removed redundant instances 15885d6
Sergei Trofimovich trofi Distribution/Client/Setup.hs: suppress warning (unused variable) fe62ace
Sergei Trofimovich trofi Distribution/Client/Unpack.hs: removed redundant import b4218fb
Sergei Trofimovich trofi Distribution/Client/Install.hs: removed unused 'compilerTemplateEnv' …
…from import
Sergei Trofimovich trofi Distribution/Client/InstallSymlink.hs: explicitely import 'catch' and…
… friend tom System.IO
Dec 21, 2009
Duncan Coutts dcoutts Fix fromFlag error in upgrade
Use the missing defaultInstallFlags.
Dec 22, 2009
Duncan Coutts dcoutts Fix cabal sdist --snapshot 3163d8c
Duncan Coutts dcoutts Fix a couple more ghc-6.12 -Wall warnings 295141e
Duncan Coutts dcoutts Move downloadURI to HttpUtils module
And use exceptions rather than return codes.
Duncan Coutts dcoutts Remove now-unused compat module ab31f7a
Duncan Coutts dcoutts Display the exception for failed downloads
Not great but better than nothing.
Dec 28, 2009
Duncan Coutts dcoutts Change the default config on Windows to per-user installs
Slightly experimental. We should look out for unexpected consequences.
Dec 29, 2009
Duncan Coutts dcoutts 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.
Jan 13, 2010
Duncan Coutts dcoutts Fix the display of the license in "cabal list" output cd3a51a
Jan 14, 2010
Duncan Coutts dcoutts 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
Jan 17, 2010
Duncan Coutts dcoutts 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.
Mar 20, 2010
Duncan Coutts dcoutts Cope with intra-package deps when constructing install plans ebb58d2
Apr 01, 2010
Duncan Coutts dcoutts Import installDirsOptions from Cabal lib 5b393b1
Apr 26, 2010
Duncan Coutts dcoutts Rearrange installation code to make it a bit clearer 2dfd62e
Apr 27, 2010
Duncan Coutts dcoutts Make the logs dir a proper config item and pass it to the install code 5263ff8
May 10, 2010
Duncan Coutts dcoutts Add plumbing in install code for global flags and target list 01ce7a7
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Misc minor tweaks in Main 21c341b
Duncan Coutts dcoutts A bunch of TODOs for the Install module 203f4f1
Duncan Coutts dcoutts Update a coupld copyright and maintainer notes 385ca41
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Bump version to 0.9.1
New world file feature
Duncan Coutts dcoutts Remove redundant dry-run support from world file code 0077f6a
May 11, 2010
Duncan Coutts dcoutts 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.
May 17, 2010
Duncan Coutts dcoutts In fetch code, move dep resolution into separate function e2b093f
Duncan Coutts dcoutts Rearrange dependency resolver code slightly 12a52f2
May 18, 2010
Duncan Coutts dcoutts Add a simplistic resolver for available packages that ignores depende…

Suitable for cabal fetch/unpack but not for installation.
Duncan Coutts dcoutts Use the simplistic available package resolver in cabal fetch
Not yet connected up to the user interface.
May 28, 2010
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Use new simplistic package resolver for cabal unpack 3c442af
Duncan Coutts dcoutts Minor tweaks in haddock code 559bfa2
May 31, 2010
Duncan Coutts dcoutts Bump version to 0.9.2 bc73fbb
Duncan Coutts dcoutts 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
Jun 14, 2010
Duncan Coutts dcoutts 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.
Jun 30, 2010
josh.hoyt 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.
Sep 01, 2010
Duncan Coutts dcoutts Add a TODO about fetch --constraint flags db4cd92
Oct 10, 2010
Duncan Coutts dcoutts Simplify the bash command completion
Fixes #741. Patch contributed by Jan Braun <>
Oct 16, 2010
Duncan Coutts dcoutts Update to use Cabal-1.10.x 1f400d3
Oct 26, 2010
Dmitry Astapov adept Added GZipUtils to handle .tar files with the same code as .tar.gz 008ac19
Dmitry Astapov adept Use "maybeDecompress" to handle broken proxies that transparenty deco…
…mpress network streams. Closes #622, #686. Cabal update could fail in some cases, see
Oct 27, 2010
Duncan Coutts dcoutts Add an extra note about the http proxy decompression issue 1d97e08
Nov 08, 2010
Vo Minh Thu noteed cabal report uses the correct URIs and authenticates with username an…
…d passwords flags
Nov 23, 2010
Duncan Coutts dcoutts Bump time package dependency for ghc-7 91b4176
Duncan Coutts dcoutts Update dependencies in the script a79250d
Duncan Coutts dcoutts Increase default HTTP package version in bootstrap script e40a5f5
Duncan Coutts dcoutts Bump upper bounds on core packages for ghc-7 7da714a
Duncan Coutts dcoutts Fix time version regexp in bootstrap script
Sigh, having to use shell script and regexps...
Jan 17, 2011
Duncan Coutts dcoutts Preserve executable permissions on unpack d4acff4
Jan 22, 2011
Jens Petersen juhp fix a comment typo of 'according' f2ca192
Jan 23, 2011
Duncan Coutts dcoutts Change my email address f65ff5b
Duncan Coutts dcoutts 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])]
Feb 13, 2011
Duncan Coutts dcoutts Change position of --only-dependencies in --help listing
Move it next to the --upgrade-dependencies flag
Duncan Coutts dcoutts Remove unnecessary Maybe from LocalUnpackedPackage dir filepath
We can just use "." instead of Nothing
Duncan Coutts dcoutts Split out a FetchUtils module
And rename fetchPackage function to the more accurate fetchRepoTarball
Duncan Coutts dcoutts Rename AvailablePackageSource to PackageLocation
And remove import list for Types module, just import it all
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Add a few more Tar Entries utilities 80b77b5
Duncan Coutts dcoutts Add a fetchPackage utility
Works for any package identified by PackageLocation
rather than just for repo packages.
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts New interface to the dep resolver that allows modular policy construc…

Allows shorter and clearer code for the various ways the resolver is used.
Duncan Coutts dcoutts Tweak implementation of fetchRepoTarball f218fb6
Duncan Coutts dcoutts Insert a separate fetch stage to the install process
Helps to clarify things now that different kinds of packages
are fetched in different ways.
Duncan Coutts dcoutts Use the new modular dep resolver interface in the various commands
Also minor tweak to InstallPlan.remove
Duncan Coutts dcoutts Remove now-unused utilities from World module
No longer needed now that the world target is handled via UserTarget.
Duncan Coutts dcoutts Remove code related to the dep resolver that is now redundant 1c8c9fb
Duncan Coutts dcoutts Remove UnresolvedDependency type a511651
Duncan Coutts dcoutts 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.
Feb 14, 2011
Duncan Coutts dcoutts Bump version to 0.9.6 6f7662a
Feb 27, 2011
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts Update copyright date 2cbe524
Duncan Coutts dcoutts Update changelog for 0.10.0 release 4a091e6
Duncan Coutts dcoutts Update versions in README 98dbf0d
Duncan Coutts dcoutts Add missing module to other-modules 518c042
Duncan Coutts dcoutts Add support for BSD fetch to bootstrap script
On FreeBSD fetch is installed by default, unlike wget or curl.
Duncan Coutts dcoutts Only look at global packages when doing ./ --global
Should fix ticket #796
Duncan Coutts dcoutts Minor tweaks to bootstrap script
When using curl, fail better on HTTP errors.
Also remove some dead code.
Duncan Coutts dcoutts Update dependencies in bootstrap script
Works with ghc-6.12 and ghc-7.0
Duncan Coutts dcoutts Require Cabal >= 1.10.1
It contains an important bug fix for some platforms, notably OSX
Duncan Coutts dcoutts Bump version to 0.10.0 afe70c7
Duncan Coutts dcoutts Add source-repository this entry 7f3276e
Duncan Coutts dcoutts In bootstrap script, do Cabal before other deps
So that the others can use the new Cabal for their Setup.hs
Mar 04, 2011
Duncan Coutts dcoutts 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.
Duncan Coutts dcoutts 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.
Mar 08, 2011
Duncan Coutts dcoutts TAG 0.10.0 ce92f54
Duncan Coutts dcoutts Bump to 0.10.2
Release with these fixes needed for the HP release
Mar 15, 2011
Duncan Coutts dcoutts Fix username prompting for cabal upload
Fixes ticket #810