Skip to content

Master fails to bootstrap with ghc-9.0

There are three issues preventing this currently:

  • hadrian requires a hashable version not in the current index state. We can simple bump the index state to fix this.
  • The QuickCheck bounds are too restrictive. We can fix this by simply bumping them as well.
  • alex versions pre-3.2.6 fail to build: https://github.com/simonmar/alex/issues/179 which the current bounds require.
  • alex-3.2.6 should work for master based on #19099 (comment 328864) so we can fix this by bumping bounds.
  • The build then fails on building Cabal-3.0.2. Again we can bump bounds to allow for Cabal-3.4
  • The build then fails on building hadrian itself.
src\Hadrian\Haskell\Cabal\Type.hs:28:36: error:
    Ambiguous occurrence `PackageName'
    It could refer to
       either `Distribution.PackageDescription.PackageName',
              imported from `Distribution.PackageDescription' at src\Hadrian\Haskell\Cabal\Type.hs:15:1-38
              (and originally defined in `Distribution.Types.PackageName')
           or `Hadrian.Package.PackageName',
              imported from `Hadrian.Package' at src\Hadrian\Haskell\Cabal\Type.hs:18:1-22
              (and originally defined at src\Hadrian\Package.hs:35:1-25)
   |
28 |     { name                      :: PackageName
   |                                    ^^^^^^^^^^^

src\Hadrian\Haskell\Cabal\Type.hs:41:30: error:
    Ambiguous occurrence `PackageName'
    It could refer to
       either `Distribution.PackageDescription.PackageName',
              imported from `Distribution.PackageDescription' at src\Hadrian\Haskell\Cabal\Type.hs:15:1-38
              (and originally defined in `Distribution.Types.PackageName')
           or `Hadrian.Package.PackageName',
              imported from `Hadrian.Package' at src\Hadrian\Haskell\Cabal\Type.hs:18:1-22
              (and originally defined at src\Hadrian\Package.hs:35:1-25)
   |
41 |     { dependencies       :: [PackageName]
   |                              ^^^^^^^^^^^

Which seems fixable.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information