Version 74 (modified by thoughtpolice, 5 years ago) (diff)


GHC Repositories

This page lists the active repositories relating to GHC. For instructions on actually getting a GHC source tree, see Getting The Sources. For information on using these repositories (via submodules), see the Submodules page. Below is a table summarizing the repositories GHC uses. It lists the upstream location of the repository, and the branch name. All the upstream repositories are either located on or as of right now.

  • Patches for repositories should go to GHC developers. Developers can push to these repositories directly.
  • Patches for repositories should be made into Pull Requests on GitHub. GHC developers have access to the repositories under the haskell organization in particular, and can push directly.
  • As of 14th August 2014, ghc-head is the branch to track for Haddock.

As stated above - GHC tracks the branch listed here for the specific repository. If you're going to base your change on a branch, always do it on this one, and make sure your change is on the specified branch. Then update the submodule.

Repository listing

The GHC source code tracks many related sub-repositories, which are needed for external dependencies during the build, or tools that are included in the build. Not every sub-repository is maintained by us; in fact, the large majority are not maintained by GHC HQ.

As a result of this, in HEAD, essentially every single upstream repository we track is tracked with a git submodule. These submodules are mirrored for us, and we send patches we need to the upstream maintainer. Here are the submodules we use, and where their upstreams point:

Location in tree Upstream repo Upstream GHC branch
utils/hsc2hs master
utils/haddock ghc-head
nofib master
libraries/array master
libraries/binary master
libraries/bytestring master
libraries/Cabal master
libraries/containers master
libraries/deepseq master
libraries/directory master
libraries/filepath master
libraries/haskeline master
libraries/haskell98 master
libraries/haskell2010 master
libraries/hoopl master
libraries/hpc master
libraries/old-locale master
libraries/old-time master
libraries/process master
libraries/terminfo master
libraries/time master
libraries/unix master
libraries/Win32 master
libraries/xhtml master
libraries/random master
libraries/primitive master
libraries/vector master
libraries/dph master
libraries/parallel master
libraries/stm master