[Haskell-cafe] Version constraints and cabal.config files
Michael Snoyman
michael at snoyman.com
Wed Mar 25 14:51:22 UTC 2015
On Wed, Mar 25, 2015 at 4:30 PM Anthony Cowley <acowley at seas.upenn.edu>
wrote:
> On Wed, Mar 25, 2015 at 10:24 AM, Michael Snoyman <michael at snoyman.com>
> wrote:
> >
> >
> > On Wed, Mar 25, 2015 at 4:17 PM Anthony Cowley <acowley at seas.upenn.edu>
> > wrote:
> >>
> >> The suggestion to use "cabal install --dependencies-only ..." instead
> >> of "cabal freeze" in that issue is really nicely presented. "cabal
> >> freeze" is close to the right thing, but it's just not as fully
> >> featured as "cabal install" (e.g. taking flags).
> >>
> >> As for Stackage, I think it would be helpful to cache the full build
> >> plans computed for each package in Stackage. This is most of the work
> >> my Nix tooling currently does, so it would be a big time saver.
> >>
> >>
> >
> > By "full build plans," do you mean the dist/setup-config file, or
> something
> > else? That file would be problematic since it's Cabal-library-version
> > specific IIRC. If you're looking for the full listing of deep
> dependencies
> > and versions, we can extract that from the .yaml file using the
> technique I
> > mentioned earlier.
> >
> > Michael
>
> Yes, I meant the full listing of deep dependencies.
>
>
>
I've put together a Gist with an executable that does what I described:
https://gist.github.com/snoyberg/5b244331533fcb614523
You give it three arguments on the command line:
* LTS version, e.g. 1.14
* Name of package being checked
* true == only include dependencies of the library and executable, anything
else == include test and benchmark dependencies as well
If that's useful, I can package that up and put it on Hackage.
Michael
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20150325/21919fdb/attachment.html>
More information about the Haskell-Cafe
mailing list