Permalink
Commits on Aug 26, 2008
  1. Fix haddock syntax

    dcoutts committed Aug 26, 2008
  2. Add release date of 0.5.2

    dcoutts committed Aug 26, 2008
  3. 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.
    dcoutts committed Aug 26, 2008
Commits on Aug 24, 2008
  1. 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.
    dcoutts committed Aug 24, 2008
  2. 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.
    dcoutts committed Aug 24, 2008
  3. Use updated tar code

    Much more robust. Correctly detects trucated archives.
    dcoutts committed Aug 24, 2008
Commits on Aug 22, 2008
  1. Decompress the repo index atomically.

    So if decompression fails (eg if the index is corrupt) then
    the decompressed file does not get (partially) written.
    dcoutts committed Aug 22, 2008
  2. 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.
    dcoutts committed Aug 22, 2008
  3. add bootstrap shell script

    At the request of Bjorn.
    dcoutts committed Aug 22, 2008
  4. Add changelog

    I can only trace the history back to the 0.3 era.
    dcoutts committed Aug 22, 2008
  5. Add symlink-bindir flag to install/upgrade command

    Was previously only available in the config file.
    dcoutts committed Aug 22, 2008
  6. 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.
    dcoutts committed Aug 22, 2008
  7. 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.
    dcoutts committed Aug 22, 2008
Commits on Aug 21, 2008
  1. 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.
    dcoutts committed Aug 21, 2008
Commits on Aug 15, 2008
  1. allow tilde in hackage server URIs

    report and fix from Nicolas Frisby <nicolas.frisby@gmail.com>
    (code had changed slightly so the original patch didn't apply cleanly)
    dcoutts committed Aug 15, 2008
Commits on Aug 14, 2008
  1. 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.
    dcoutts committed Aug 14, 2008
  2. 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).
    dcoutts committed Aug 14, 2008
  3. 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.
    dcoutts committed Aug 14, 2008
Commits on Aug 12, 2008
  1. Don't fail if we don't sync with the child

    It just means we leave a temp file around in the bin dir.
    dcoutts committed Aug 12, 2008
  2. 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.
    dcoutts committed Aug 12, 2008
  3. Clean up some warnings

    dcoutts committed Aug 12, 2008
  4. Fix building on Windows

    I hateses #ifdefs
    dcoutts committed Aug 12, 2008
  5. Regig install pipeline, pass the PackageDescription

    Rather than the GenericPackageDescription.
    dcoutts committed Aug 12, 2008
  6. 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.
    dcoutts committed Aug 12, 2008
Commits on Aug 10, 2008