Become compatible to GHC 9.6
Joshua Moerman sent me some commits to make copar compatible to newer ghc versions. He wrote:
Also, I have managed to use copar with the most recent GHC. It requires some changes to the code. And I think it would be nice to incorporate some of them already with older versions of GHC:
- Eq will become a superclass of Eq1 (with qualified constraints, GHC 9.6). Similar for Show1. So to be forward-compatible, some instances have to be added. Patch: https://git.cs.ou.nl/joshua.moerman/copar/-/commit/17c54b5c9b5f681f3e65ab9515fd4bb40958687b
- ST will no longer have a MonadFail instance (GHC 9.4). I have removed some pattern-matches in do-notation. They have been replaced with non-exhaustive pattern matches. Patch: https://git.cs.ou.nl/joshua.moerman/copar/-/commit/8dd4528a98fc0f387885a2a3d406c90bdec878ad
(Some other changes were necessary, like updating some dependencies. I did not do that in a principled manner.)
I propose to simply merge those commits (via git cherry-pick
).