
On Mar 25, 2015, at 10:51 AM, Michael Snoyman
wrote: On Wed, Mar 25, 2015 at 4:30 PM Anthony Cowley
wrote: On Wed, Mar 25, 2015 at 10:24 AM, Michael Snoyman wrote: On Wed, Mar 25, 2015 at 4:17 PM Anthony Cowley
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
This is very helpfulness, thanks! There is a bootstrapping issue, though, which is, I imagine, why both Miëtek and I have been writing much more bash than we'd like. But perhaps this becomes part of a cabal-install-like bootstrap.sh script to get things going. Anthony