
On 10 February 2012 14:00, Henning Thielemann
On Fri, 10 Feb 2012, Duncan Coutts wrote:
Would you mind giving me a breif explanation of the "compiling multiple local packages in the right order" feature? I'd like to understand what is missing in cabal-install in this respect.
Currently with cabal-install you can say:
cabal install ./a ./b ./c
and it will install the packages in those directories in the right order. (It is also possible to list other install targets including local and remote tarballs, and of course packages from hackage).
I believe that the first version of cabal-sort is older than this cabal-install feature.
Ah yes, looks like we developed it concurrently. cabal-install 0.10.2 came out in March 2011 and cabal-sort 0.0.1 in May.
Nonetheless, cabal-sort can be used for other purposes, too. E.g. you can use plain Cabal installation, when 'cabal install' does not work due to problems in constraint solving. You can upload packages in topologically sorted order to Hackage, such that building on Hackage works correctly. Is this also done by cabal-install's upload command?
No it's not, it's an interesting point. In practice with the current builder you'd be very unlucky to hit the exact time when it kicks off builds (only a few times a day). With the new server it's likely to be more of an issue since that will allow lots of builder clients.
You can also use cabal-sort for stepping into package directories and do some manual updates before installing.
However, I will add references to the new cabal-install features in the documentation of cabal-sort.
Cheers. I wonder if you have any suggestions for UI changes/improvements for cabal-install for working with related sets of local packages (something it's fairly weak on at the moment). Are there things in cabal-sort you think we should just lift directly into cabal-install or variations etc? Duncan