Skip to content

Versioning for ghc-experimental

@sheaf pointed out on !13245 (comment 585144) that it isn't clear what the versioning story for ghc-experimental should be. Is this documented somewhere?

I think (hope) it's common ground that:

  • ghc-experimental needs to comply with PVP.
  • A new GHC minor release should be able to make a major API change to ghc-experimental (e.g. because a bugfix forces a breaking change to some API).
  • GHC 9.10.1 shipped with ghc-internal-0.1.0.0.

Therefore, either ghc-experimental should be versioned following GHC's version (like ghc-internal), or its super-major version should be bumped on each major GHC series. The latter seems to be the current default, and avoids the implication that every minor GHC release will bump the ghc-experimental version. Thus GHC 9.12.1 should ship with ghc-internal-1.0.0.0 so that a subsequent GHC 9.10.x can ship with ghc-internal-0.2.0.0. Is that the plan?

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