I have developed a little project where I depend on mime-string-0.5 from Hackage. When I try compiling it on a new machine, building mime-string takes an amount of resources that puzzles me:
It takes takes 5 minutes of using 100% CPU, and GHC peaks at using more than 5 GB of memory:
$ cabal v1-update
Config file path source is default config file.
Config file /home/adsj/.cabal/config not found.
Writing default configuration to /home/adsj/.cabal/config
Downloading the latest package list from hackage.haskell.org
$ time cabal v1-install mime-string
Resolving dependencies...
Downloading base64-string-0.2
Downloaded base64-string-0.2
Starting base64-string-0.2
Building base64-string-0.2
Completed base64-string-0.2
Downloading mime-string-0.5
Downloaded mime-string-0.5
Starting mime-string-0.5
Building mime-string-0.5
Completed mime-string-0.5
real 5m18.180s
user 5m13.453s
sys 0m5.547s
$ ghc --version
The Glorious Glasgow Haskell Compilation System, version 8.6.5
$
This on a new laptop (i7-9750H) running Debian unstable.
The library itself is not enormous, SLOCcount says:
SLOC Directory SLOC-by-Language (Sorted)
1484 mime-string-0.5 haskell=1484
Does anyone have some hints on how to start figuring out what is gong on?