Hi everyone,
Today, the migration of the Haddock documentation generation program to live in the GHC repository has been finalised, with great help from @bgamari.
Why ?
Until now, Haddock was living in two places:
- On GitHub, where some tickets and PRs were merged, with changes that were ideally not “GHC-specific”
- On GitLab, and in particular on the
ghc-head
branch, which welcomed GHC-specific patches, and was synchronised with the GitHub repo.
The GitLab repository was then used by GHC as a git submodule, whose synchronisation also had to happen manually.
As most of the changes brought to Haddock are in fact GHC-specific, it made little sense to keep Haddock on GitHub, or even on GitLab with manual synchronisation steps.
This was bringing much confusion, as people would open tickets on GitHub regarding patches that would have been integrated on GitLab.
I am glad to say that this state of absolute madness is now over.
What do we get out of this?
The centralisation of Haddock, a tool that is heavily dependent on GHC’s internals, is going to reduce the feedback cycle for developers. This will improve the quality of each releases, and lower the administrative burden on contributors.
Won’t this prevent new people from contributing?
We indeed lose the network effects of GitHub, it is true, but I am quite happy to say that the GitLab administrators are more reactive than ever when it comes to activate new accounts.
For those who can attend, events like ZuriHac, MuniHac, and local Haskell meetups are also the opportunity for people to create their accounts on GitLab and start contributing.
For those who cannot, sending an email to ghc-devs ought to be enough.
So, welcome Haddock to the GHC repo! We will have great adventures together, and documentation will be a source of pride in our community and culture.
Cheers,
Hécate.