well-typed / ghc-events-analyze

BSD 3-Clause "New" or "Revised" License
67 stars 23 forks source link

Fails to install #42

Open asarkar opened 1 year ago

asarkar commented 1 year ago

stack --version Version 2.9.3 aarch64

stack install ghc-events-analyze

Error: [S-4804]
       Stack failed to construct a build plan.

       While constructing the build plan, Stack encountered the following errors:

       In the dependencies for ghc-events-analyze-0.2.8:
           SVGFonts-1.8.0.1 from Stack configuration does not match >=1.7 && <1.8 (latest matching version is 1.7.0.1)
           base-4.16.4.0 from Stack configuration does not match >=4.9 && <4.15 (latest matching version is 4.14.3.0)
           ghc-events-0.18.0 from Stack configuration does not match >=0.13 && <0.14 (latest matching version is 0.13.0)
           hashable-1.4.1.0 from Stack configuration does not match >=1.2 && <1.4 (latest matching version is 1.3.5.0)
           lens-5.1.1 from Stack configuration does not match >=3.10 && <4.20 (latest matching version is 4.19.2)
           optparse-applicative-0.17.0.0 from Stack configuration does not match >=0.11 && <0.17 (latest matching
                                         version is 0.16.1.0)
       needed since ghc-events-analyze is a build target.
edsko commented 1 year ago

This might be due to the necessary dependencies not being available in the stack snapshot? Try cabal, perhaps, to see which dependencies it selects, and then you can selectively add overrides to the stack snapshot. If cabal can't find a build plan, then there really is a dependency issue that might need resolving.

asarkar commented 1 year ago

I tried by specifying the missing packages as extra-deps in stack.yaml, but it that, in turn, produced several more errors, at which point, I stopped. It seems the dependencies need to be updated to catch up the the latest LTS.

edsko commented 1 year ago

I took a quick look. I've relaxed the upper bound on optparse-applicative, which was easy, but the upper bound on SVGFonts is currently necessary; version 1.8 introduces a number of breaking changes that would require changing the code, which I don't have time for at the moment. PR welcome :)