HEADS-UP: Git submodule conversion imminent

Herbert Valerio Riedel hvriedel at gmail.com
Wed Jun 25 08:46:06 UTC 2014


It's done!

After pulling the latest ghc.git commit (and assuming you have made sure
you have no unpushed data laying around in the repos listed below)
you'll have to either run

 - git submodule update --init

*or*

 - ./sync-all get

   (a mere "./sync-all pull" will just call "git submodule update" w/o
    the "--init" option)


After that, a 'git submodule status' (for ghc.git @ db19c665e) should look like

 a0088d1da0e171849ddb47a46c869856037a01d1 libffi-tarballs (ghc-7.8.1-release)
 597ed8f613db327cfab958aa64da6c0f9e1ee291 libraries/Cabal (Cabal-1.20.0.0-release-1-g597ed8f)
 c51e81a43cd5e9540453bd5ca6da8992245a4774 libraries/Win32 (Win32-2.3.0.2-release)
 26ff04744117b0ad8233a1a2b5635fa1277b88d9 libraries/array (array-0.5.0.0-release)
 2647d42f19bedae46c020fc3af029073f5690d5b libraries/binary (binary-0.7.1.0-release-2-g2647d42)
 6ad8c0d27bcff28c80684a29b57d7a8dbf00caca libraries/bytestring (bytestring-0.10.4.0-release)
 e84c5d2145415cb0beacce0909a551ae5e28d396 libraries/containers (containers-0.5.5.1-release-11-ge84c5d2)
 3a9c431e4c89ca506aae8e80867cfcde8c099724 libraries/deepseq (deepseq-1.3.0.2-release-1-g3a9c431)
 0c64d5420e54bb871f0407a4ec3155c6be600756 libraries/directory (directory-1.2.1.0-release)
 3ebad521cd1e3b5573d97b483305ca465a9cba69 libraries/dph (2009-06-25-1145-g3ebad52)
 486373cb6bc3de8bf7f0b8532558c5fff32df20a libraries/filepath (filepath-1.3.0.2-release)
 5579fc2a2949a143ec8946b9bc9dd2ba957bf091 libraries/haskeline (0.7.1.2-2-g5579fc2)
 c0c87ad53e377aa00f4897bc729c261459b6048a libraries/haskell2010 (haskell2010-1.1.2.0-release-1-gc0c87ad)
 cc6bbbf2bf4eaea57062043cbb6e7c5d6c2f42a9 libraries/haskell98 (haskell98-2.0.0.3-release-1-gcc6bbbf)
 a2e34db038b737365c4126f69b1a32eae84dae6b libraries/hoopl (hoopl-3.10.0.1-release-1-ga2e34db)
 d6ac0c532f12d30af778eeb285da9031bb06fddb libraries/hpc (hpc-0.6.0.1-release-1-gd6ac0c5)
 7e7f6722895af36ca4e2f60f2fdfdc056b70db0b libraries/old-locale (old-locale-1.0.0.6-release)
 89017411036b24875393e4fd6ca8ef92fc181ad2 libraries/old-time (old-time-1.1.0.2-release)
 03da43303ed05ace65cb24cee1dbc1766c694233 libraries/parallel (parallel-3.2.0.4-release)
 110b105c491387a73dd37b4f86a686ed131767b2 libraries/pretty (pretty-1.1.1.1-release)
 be63ee15d961dc1b08bc8853b9ff97708551ef36 libraries/primitive (primitive-0.5.2.1-release)
 b39e340bb1fa887842e99db9824906858515cdf7 libraries/process (process-1.2.0.0-release-3-gb39e340)
 180aa65507d5b7c63d9f438ff908774bafc88d0d libraries/random (random-1.0.1.1-release-4-g180aa65)
 52c3028aff127fd957cdaf1ec7605fc533a59961 libraries/stm (stm-2.4.3-release-1-g52c3028)
 1ce8379744179e5c7f8d88049aaed4d3be52e323 libraries/terminfo (0.4.0.0)
 adafac26307cffab0be20c126385ab161c259237 libraries/time (time-1.4.2-release)
 5df683cd87cb0ed13f915f73b83a7673e18aa294 libraries/transformers (0_4_0_0)
 cdc3ae7b087ac7451298a5b87fe2548fb74c2fdc libraries/unix (unix-2.7.0.1-release-6-gcdc3ae7)
 a6049abce040713e9a5f175887cf70d12b9057c6 libraries/vector (vector-0.10.9.1-release-1-ga6049ab)
 fb9e0bbb69e15873682a9f25d39652099a3ccac1 libraries/xhtml (3000.2.1)
 d98f7038d1111e515db9cc27d5d3bbe237e6e14f nofib (2009-06-25-218-gd98f703)
 5412c262f403e52be45d607b34eb3a5806ea2a76 utils/haddock (haddock-2.15-start-57-g5412c26)
 4a0f67704d89712f8493a0c7eccffa9243d6ef09 utils/hsc2hs (2009-06-25-78-g4a0f677)

N.B.: The very first character in each line is a single whitespace. If
there's a '-' or '+' your submodule are not in the commit state recorded
in ghc.git (a '-' specifically means the submodule is not initialized
properly)


For further information, please read the current documentation at

  https://ghc.haskell.org/trac/ghc/wiki/WorkingConventions/Git/Submodules

and let me know what all needs to improved.


On 2014-06-25 at 09:47:04 +0200, Herbert Valerio Riedel wrote:

[...]

> This will be similiar to the conversion of haddock.git into a proper
> submodule of which you read up in
>
>  * <http://permalink.gmane.org/gmane.comp.lang.haskell.ghc.devel/4049>
>  * <http://permalink.gmane.org/gmane.comp.lang.haskell.ghc.devel/4072>
>  * <http://permalink.gmane.org/gmane.comp.lang.haskell.ghc.devel/4077>
>
> List of packages converted into proper submodules:
>
>  * libffi-tarballs             libffi-tarballs.git
>  * utils/hsc2hs                hsc2hs.git
>  * libraries/array             packages/array.git
>  * libraries/deepseq           packages/deepseq.git
>  * libraries/directory         packages/directory.git
>  * libraries/filepath          packages/filepath.git
>  * libraries/haskell98         packages/haskell98.git
>  * libraries/haskell2010       packages/haskell2010.git
>  * libraries/hoopl             packages/hoopl.git
>  * libraries/hpc               packages/hpc.git
>  * libraries/old-locale        packages/old-locale.git
>  * libraries/old-time          packages/old-time.git
>  * libraries/process           packages/process.git
>  * libraries/unix              packages/unix.git
>  * nofib                       nofib.git
>  * libraries/parallel          packages/parallel.git
>  * libraries/stm               packages/stm.git
>  * libraries/dph               packages/dph.git
>
>
> Ideally, you won't have any outstanding changes in those repos (hint,
> hint!) to make the transition for your GHC clones easier. I'll follow up
> with more specific instructions as soon as I've pushed the changes.

[...]


More information about the ghc-devs mailing list