I am trying to build the lambdabot package, but I am encountering issues due to outdated dependency versions. The build process fails because several dependencies have versions that are too old and are not compatible with the current Haskell ecosystem.
What can I do to resolve this issue? Are there any recommended steps or best practices for updating the dependencies or working around this problem?
Looking at the current CI configuration, it is tested with GHC 8.2 through 8.10, though recent commits to the master branch result in CI failures.
To test, I cloned the repo, checked out the latest tagged release, configured the GHC version, and built all packages. All packages built successfully.
The .cabal files indicate compatibility with up to GHC 9.6, but I get dependency issues when testing with 9.6.5, as well as 9.4.8. Testing with 9.2.8, all projects built successfully.
As a workaround, might you be able to simply use GHC 9.2.8 to build it?
It also builds fine with --allow-newer. This works, for example:
cabal build -w ghc-9.6 all --allow-newer
(Relatedly, a reminder: keeping bounds up to date is the highest leverage tasks a Haskell maintainer can perform. It’s boring though. So I volunteer to become a comaintainer of any Haskell package for the special purpose of keeping bounds up-to-date.)
Yes, that sounds like a great idea. A PR to simply bump dependency bounds to the latest working versions would be really useful. Feel free to tag me (@tomjaguarpaw on GitHub) and I can help out too.