On Thu, Apr 1, 2010 at 6:13 PM, Rogan Creswick
<creswick@gmail.com> wrote:
> At this point, the package author need only run:
>
> $ ./Setup configure
> $ ./Setup build
> $ ./Setup test
My general feeling has been that Setup is being discouraged in favor
of using 'cabal <foo>', but I don't have any solid evidence for that
(and I could very well be wrong!). They do do slightly different
things, so I think it's wise to figure out which idiom is most likely
to be used and work with that.
I haven't figured out how it's possible, but I'm convinced that ./Setup configure vs. cabal configure can lead to a different set of dependencies being selected. This can lead to diamond dependency problems. (I'm convinced this happen on at least one machine I know of.)
What I don't understand is how it's possible for the discrepancy to happen. It's as if ./Setup and cabal-install use different algorithms for dependency resolution, but as I understand it, both should be using the Cabal library for that. My only other thought is that perhaps ./Setup uses a different version of the Cabal library than what cabal-install uses.
Perhaps Duncan can comment on this.
Jason