Updating submodules

Simon Peyton Jones simonpj at microsoft.com
Tue Jan 6 09:59:44 UTC 2015


Herbert, or anyone,

I'm very confused about the workflow for updating submodules.   I want to update several (to remove redundant constraints from contexts) which are maintained by GHC HQ.  But for libraries/parallel I find:


*         There is no .git/config in libraries/parallel.  (Whereas there is for another submodule, libraries/hoopl.)

*         There is, however, a .git file which points to .git/modules/libraries/parallel

*         In .git/modules/libraries/parallel/config, I see a url of https://git.haskell.org/packages/parallel.git.  But I can't push to this URL.

*         That matches the url in https://ghc.haskell.org/trac/ghc/wiki/Repositories, but contradicts the url in 'packages', which says ssh://git@github.com/haskell/parallel.git

*          I don't understand what URL should be expected for submodules with "-" in the 'upstream url' column of the 'packages' file.   It says "-" means 'this is a submodule', but parallel is certainly a submodule and doesn't have "-".  But so is hoopl, which does have "-".
I tried a minimal change of adding
   pushurl = ssh://git@git.haskell.org/packages/hoopl.git
to .git/modules/libraries/parallel/config.  But when I tried to push I got
simonpj at cam-05-unx:~/code/HEAD-2/libraries/parallel$ git push
Counting objects: 7, done.
Delta compression using up to 32 threads.
Compressing objects: 100% (4/4), done.
Writing objects: 100% (4/4), 410 bytes, done.
Total 4 (delta 3), reused 0 (delta 0)
remote: W refs/heads/master packages/parallel simonpj DENIED by refs/.*
remote: error: hook declined to update refs/heads/master
To ssh://git@git.haskell.org/packages/parallel.git
! [remote rejected] HEAD -> master (hook declined)
error: failed to push some refs to 'ssh://git@git.haskell.org/packages/parallel.git'

So I'm thoroughly stuck. I can't push my main patch until I push the submodule patches.  What do I do?
And would it be possible to update the wiki pages to make this clear?  Especially

*         https://ghc.haskell.org/trac/ghc/wiki/Repositories

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

Thanks
Simon
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20150106/654cd61e/attachment-0001.html>


More information about the ghc-devs mailing list