head.hackage: packages failing due to new Functor superclass on Bifunctor
Cause
These failures are caused by https://github.com/haskell/core-libraries-committee/issues/91.
Details
- Problem started: Dec 1 2022
- Example build: https://gitlab.haskell.org/ghc/head.hackage/-/jobs/1254666
- Both packages now trigger GHC-39999, "No instance arising"
Build error for bifunctors:
src/Data/Bifunctor/Sum.hs:111:10: error: [GHC-39999]
• Could not deduce ‘Functor (Sum p q a)’
arising from the superclasses of an instance declaration
from the context: (Bifunctor p, Bifunctor q)
bound by the instance declaration
at src/Data/Bifunctor/Sum.hs:111:10-58
There are instances for similar types:
instance [safe] (Functor f, Functor g) =>
Functor (Data.Functor.Sum.Sum f g)
-- Defined in ‘Data.Functor.Sum’
instance Functor base-4.17.0.0:Data.Semigroup.Internal.Sum
-- Defined in ‘base-4.17.0.0:Data.Semigroup.Internal’
• In the instance declaration for ‘Bifunctor (Sum p q)’
|
111 | instance (Bifunctor p, Bifunctor q) => Bifunctor (Sum p q) where
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Build error for fgl:
Data/Graph/Inductive/Tree.hs:139:10: error: [GHC-39999]
• No instance for ‘Functor (Gr a)’
arising from the superclasses of an instance declaration
• In the instance declaration for ‘Bifunctor Gr’
|
139 | instance Bifunctor Gr where
| ^^^^^^^^^^^^
Consequences
113 other packages in head.hackage depend on bifunctors or fgl, so couldn't be built.