Skip to content
This repository has been archived by the owner on Jul 9, 2019. It is now read-only.

Use cabal install --enable-tests --dependencies-only --dry-run instead of cabal freeze? #52

Closed
danclien opened this issue Mar 5, 2015 · 8 comments

Comments

@danclien
Copy link

danclien commented Mar 5, 2015

Doing cabal install --enable-tests --dependencies-only --dry-run in a clean sandbox gives similar results to using cabal freeze. This would help resolve/avoid the following issues:

I grabbed the output of both on one of our internal projects, and the output can be seen here. Output from cabal freeze was altered using sed to make differences easier to notice.

Major differences:

  • cabal freeze includes packages included with GHC. e.g. The ones listed in /app/ghc/lib/ghc-7.8.4/package.conf.d
  • cabal freeze has a cleaner, more consistent output format
    • cabal install --enable-tests --dry-run indicated when there a newer version
    • e.g. blaze-builder-0.3.3.4 (latest: 0.4.0.1)
@mietek
Copy link
Owner

mietek commented Mar 5, 2015

Thank you. This is a model feature request. Much appreciated.

@mietek
Copy link
Owner

mietek commented Mar 5, 2015

Getting rid of cabal freeze would also avoid haskell/cabal#1908, which is still an issue for cabal-install versions prior to 1.22.0.0, and requires a workaround.

@danclien danclien changed the title Use cabal install --enable-tests --dry-run instead of cabal freeze? Use cabal install --enable-tests --dependencies-only --dry-run instead of cabal freeze? Mar 5, 2015
@mietek
Copy link
Owner

mietek commented Mar 14, 2015

Another benefit is, the GHC version would not be automatically over-constrained.

Currently, since cabal freeze includes a version constraint for the base package, the GHC version is constrained down to the point release; e.g. base-4.7.0.2 constrains GHC to 7.8.4, and not just 7.8.

As a consequence, declaring HALCYON_GHC_VERSION in a magic file should be allowed.

@mietek
Copy link
Owner

mietek commented Mar 22, 2015

Replacing cabal freeze would also allow using cabal-install versions prior to 1.20.0.0.

@thorinii
Copy link

What's needed to do this? Are we waiting for an update to cabal, or is it parsing a different format, or...?

@mietek
Copy link
Owner

mietek commented Mar 25, 2015

@thorinii: In a word, time — to design, and to implement.

@mietek
Copy link
Owner

mietek commented Mar 25, 2015

Perhaps it’d be worth to consider supporting separate sets of version constraints for different GHC versions. Perhaps even separate .halcyon/$GHC_VERSION directories.

@mietek
Copy link
Owner

mietek commented Feb 14, 2019

I’m sorry. This project is no longer maintained.

@mietek mietek closed this as completed Feb 14, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants