allow bytestring-0.11, fgl-5.8, hspec-2.10#53
Conversation
|
(You could even just drop the upperbound completely.) |
|
A Hackage revision would be really helpful |
|
Could we have a Hackage revision, please? |
|
Ping :) |
|
ping from me too :) |
This contains a variety of minor changes needed to make `saw` and its supporting libraries compile with GHC 9.2: * One place in `heapster-saw` matches on a GADT using a `let` binding, which no longer typechecks in GHC 9.2. While somewhat mysterious, using `let` bindings to match on GADTs is fragile anyway, so I opted to simply replace this with a monadic `do` match, which does not exhibit the same fragility. * GHC now includes `-Wincomplete-uni-patterns` in `-Wall` as of 9.2, so much of this patch is dedicated to silencing these sorts of warnings, usually by adding explicit fall-through cases for partial pattern matches. * GHC now inclues `-Wnoncanonical-monad-instances` in `-Wall` as of 9.2, so I had to refactor some `Applicative`/`Monad` instances to fix these warnings. * GHC 9.2 now defines `readBin` in `Numeric`, which clashes with a function of the same name in `SAWScript.Lexer`. Using explicit imports avoids this. * GHC's pattern-match coverage checker is smarter in 9.2 (see [here](https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.2?version_id=63085dd8a5b56370571bda428848e7098765f7f8#improved-pattern-match-coverage-checker)), so I had to use `EmptyCase` to silence some of the new `-Wincomplete-patterns` warnings that were uncovered in `heapster-saw`. This is still a draft because: * [ ] There are various `-Wincomplete-uni-patterns` warnings in `saw` and `heapster-saw` that I have not yet had time to address. (See also a `TODO RGS` in `exe:saw` that should be fixed.) * [ ] I am temporarily including an `allow-newer` section in the `cabal.project` file to allow `graphviz` (a `verif-viewer` dependency) to build with GHC 9.2. See ivan-m/graphviz#53. Once that is merged upstream, we can remove this hack.
|
As a Hackage trustee I made the appropriate revision: https://hackage.haskell.org/package/graphviz-2999.20.1.0/revisions/ |
|
Just noting that graphviz is back in Stackage Nightly now |
This contains a variety of minor changes needed to make `saw` and its supporting libraries compile with GHC 9.2: * One place in `heapster-saw` matches on a GADT using a `let` binding, which no longer typechecks in GHC 9.2. While somewhat mysterious, using `let` bindings to match on GADTs is fragile anyway, so I opted to simply replace this with a monadic `do` match, which does not exhibit the same fragility. * GHC now includes `-Wincomplete-uni-patterns` in `-Wall` as of 9.2, so much of this patch is dedicated to silencing these sorts of warnings, usually by adding explicit fall-through cases for partial pattern matches. * GHC now inclues `-Wnoncanonical-monad-instances` in `-Wall` as of 9.2, so I had to refactor some `Applicative`/`Monad` instances to fix these warnings. * GHC 9.2 now defines `readBin` in `Numeric`, which clashes with a function of the same name in `SAWScript.Lexer`. Using explicit imports avoids this. * GHC's pattern-match coverage checker is smarter in 9.2 (see [here](https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.2?version_id=63085dd8a5b56370571bda428848e7098765f7f8#improved-pattern-match-coverage-checker)), so I had to use `EmptyCase` to silence some of the new `-Wincomplete-patterns` warnings that were uncovered in `heapster-saw`. This is still a draft because: * [ ] There are various `-Wincomplete-uni-patterns` warnings in `saw` and `heapster-saw` that I have not yet had time to address. (See also a `TODO RGS` in `exe:saw` that should be fixed.) * [ ] I am temporarily including an `allow-newer` section in the `cabal.project` file to allow `graphviz` (a `verif-viewer` dependency) to build with GHC 9.2. See ivan-m/graphviz#53. Once that is merged upstream, we can remove this hack. [ci skip]
bytestring-0.11bytestring-0.11, fgl-5.8, hspec-2.10
|
@Bodigrim @hackage-trustees I've now also included updates to upper bounds for |
|
@byorgey done in https://hackage.haskell.org/package/graphviz-2999.20.1.0/revisions/, but honestly this is not sustainable in a long term. If the package is unmaintained, please initiate a takeover. |
|
@Bodigrim thanks! And you're right of course. I'm not really interested in maintaining it personally, just trying to prod the ecosystem along a bit. But anyone else reading this who wants to try maintaining it, go for it! |
|
And one more revision: https://hackage.haskell.org/package/graphviz-2999.20.1.0/revisions/ |
|
I would happily maintain this package, although I would probably just keep it building and review PRs. |
|
@Daniel-Diaz great! See the process here: https://wiki.haskell.org/Taking_over_a_package |
Thank you. I will first try to contact him through his e-mail to see if I can be granted contributor access. |
Seems to work fine (including the test suite) with no changes.
bytestringis necessary to getgraphvizto build withbase-4.16(GHC 9.2), becausebytestring-0.10does not allowbase-4.16and is unlikely to be updated.fglandhspecare needed to work withbase-4.17(GHC 9.4).