
On Thu, Apr 1, 2010 at 6:13 PM, Rogan Creswick
On Thu, Apr 1, 2010 at 3:52 PM, Thomas Tuegel
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