Notice hls
will rebuild your project. Hence, if you add a dependency is very likely that hls
will download and build that dependency and all transitive dependencies too, which might take a while. The amount of time depends on external factors. For example, if you have download that dependency before (for example, in other project) it should be faster, but still not super fast, also, if you change your compiler version in the middle of a project development, then you (cabal
or hls
) must re-download and re-build every dependency.
What I mean is that taking 60 seconds to be responsive after modifying the cabal file can be very regular behaviour, so don’t overthink it too much. Btw, the hie.yaml
can be a simple
cradle:
cabal:
for regular projects, but it is ok to use gen-hie
too. The cabal.project
file is meant to be use when you have more than one package and fine grained control over the build parameters… which I don’t think is your case