[Haskell-cafe] [ANN] cabal-clean (new tool)

Emily Pillmore emilypi at cohomolo.gy
Fri Sep 24 18:24:53 UTC 2021


If this solves a particular use-case and doesn't involve a ton of code, I'd gladly accept a port and hide it behind a flag in cabal-install

On Fri, Sep 24, 2021 at 11:53 AM, amindfv--- < haskell-cafe at haskell.org > wrote:

> 
> 
> 
> This seems like a useful tool, but the naming might be confusing:
> "cabal-install" generally means "cabal install" but "cabal-clean" and
> "cabal clean" have similar goals but behave differently.
> 
> 
> 
> Tom
> 
> 
> 
> On Fri, Sep 24, 2021 at 07:09:49PM +0200, Andreas Abel wrote:
> 
> 
>> 
>> 
>> === Wondering where your disk space goes with too many Haskell projects
>> compiled with too many GHC versions? ===
>> 
>> 
>> 
>> https:/ / hackage. haskell. org/ package/ cabal-clean (
>> https://hackage.haskell.org/package/cabal-clean )
>> https:/ / github. com/ andreasabel/ cabal-clean (
>> https://github.com/andreasabel/cabal-clean )
>> 
>> 
>> 
>> `cabal-clean` is a small executable that removes outdated cabal build
>> artifacts from `dist-newstyle`.
>> 
>> 
>> 
>> A build tree is considered outdated if there is one with either
>> 
>> 
>> 
>> - a newer version of the package you are building, or
>> - a newer minor version of the GHC compiler.
>> 
>> 
>> 
>> In contrast to `cabal clean`, the tool `cabal-clean` retains the latest
>> build trees for each GHC major version. Thus, it is geared towards
>> multi-GHC development.
>> 
>> 
>> 
>> Example: (self-applied to cabal-clean's build directory)
>> 
>> 
>> 
>> --- 3.7M ghc-8.8.4 /cabal-clean-0.1.20210815
>> --- 3.5M ghc-8.10.6/cabal-clean-0.1.20210815
>> --- 3.7M ghc-9.0.1 /cabal-clean-0.1.20210815
>> --- 3.5M ghc-8.10.6/cabal-clean-0.1.20210924
>> +++ 3.6M ghc-8.10.7/cabal-clean-0.1.20210924
>> +++ 3.7M ghc-9.0.1 /cabal-clean-0.1.20210924
>> 
>> 
>> 
>> The directories prefixed with --- will be deleted, the ones with +++
>> retained.
>> 
>> 
>> 
>> Disclaimers:
>> 
>> 
>> 
>> 1. cabal-clean does not check whether deletion will cause dangling
>> references like broken symlinks etc. (Could happen if you created a
>> symlink to an executable that resides in one of the deleted build
>> directories.)
>> 
>> 
>> 
>> 2. cabal-clean does not read nor utilize information from the .cabal file.
>> 
>> 
>> 
>> 
>> 3. Calls `du` ("disk usage"), so, might not work on Windows.
>> 
>> 
>> 
>> Enjoy,
>> Andreas
>> _______________________________________________
>> Haskell-Cafe mailing list
>> To (un)subscribe, modify options or view archives go to: http:/ / mail. haskell.
>> org/ cgi-bin/ mailman/ listinfo/ haskell-cafe (
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe ) Only
>> members subscribed via the mailman list are allowed to post.
>> 
>> 
> 
> 
> 
> _______________________________________________
> Haskell-Cafe mailing list
> To (un)subscribe, modify options or view archives go to: http:/ / mail. haskell.
> org/ cgi-bin/ mailman/ listinfo/ haskell-cafe (
> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe ) Only
> members subscribed via the mailman list are allowed to post.
> 
> 
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20210924/1248b845/attachment.html>


More information about the Haskell-Cafe mailing list