
Hello ghc-devs, I would like to delete the file sync-all https://ghc.haskell.org/trac/ghc/wiki/Building/SyncAll from the GHC repository. It should not have been necessary to use it for about a year now. To get the sources https://ghc.haskell.org/trac/ghc/wiki/Building/GettingTheSources: git clone --recursive git://git.haskell.org/ghc.git cd ghc git clone git://git.haskell.org/ghc-tarballs.git # Windows only To update an existing tree https://ghc.haskell.org/trac/ghc/wiki/WorkingConventions/Git/Submodules#Upda...: git pull --rebase git submodule update --init To update an existing tree https://ghc.haskell.org/trac/ghc/wiki/WorkingConventions/Git/Submodules#gitp..., without the possibility to forget to run `git submodule update --init`: git config --global alias.pullall '!f(){ git pull --ff-only "$@" && git submodule update --init --recursive; }; f' # Run once git pullall --rebase Please speak up if you want those 1000 lines of buggy Perl a.k.a. sync-all to stay for some reason, or if you have questions about a certain git submodules workflow. The source code (./boot no longer suggests it) and the wiki are already sync-all free, except for a few historical pages. Discussion period: 1 month. Thomas

+1 from me. I only use it for `get` command after changing branches,
and I think I can just as easily do same thing with `git submodule
update --checkout`. (is that right?)
2015-07-21 6:45 GMT-04:00 Thomas Miedema
Hello ghc-devs,
I would like to delete the file sync-all from the GHC repository. It should not have been necessary to use it for about a year now.
To get the sources:
git clone --recursive git://git.haskell.org/ghc.git cd ghc git clone git://git.haskell.org/ghc-tarballs.git # Windows only
To update an existing tree: git pull --rebase
git submodule update --init
To update an existing tree, without the possibility to forget to run `git submodule update --init`: git config --global alias.pullall '!f(){ git pull --ff-only "$@" && git submodule update --init --recursive; }; f' # Run once git pullall --rebase
Please speak up if you want those 1000 lines of buggy Perl a.k.a. sync-all to stay for some reason, or if you have questions about a certain git submodules workflow.
The source code (./boot no longer suggests it) and the wiki are already sync-all free, except for a few historical pages.
Discussion period: 1 month.
Thomas
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

On Tue, Jul 21, 2015 at 6:06 PM, Ömer Sinan Ağacan
+1 from me. I only use it for `get` command after changing branches, and I think I can just as easily do same thing with `git submodule update --checkout`. (is that right?)
That is correct, although `--checkout` is I the default, so just `git submodule update` also works.

Hi Thomas,
2015-07-21 12:45 GMT+02:00 Thomas Miedema
To get the sources:
git clone --recursive git://git.haskell.org/ghc.git cd ghc git clone git://git.haskell.org/ghc-tarballs.git # Windows only
Apparently, that last line is also needed even on non-Windows systems when one wants to make the "sdist" target, at least as I have observed on my builders, e.g. [1]. So I have put together a small patch that aims to fix this -- mind you, I have not tested it on Windows, but theoretically it shall just work: --- a/ghc.mk +++ b/ghc.mk @@ -1183,9 +1183,14 @@ sdist-windows-tarballs: sdist-windows-tarballs-prep sdist-testsuite: sdist-testsuite-prep cd $(SRC_DIST_TESTSUITE_ROOT) && "$(TAR_CMD)" chf - $(SRC_DIST_BASE_NAME) 2> testsuite_log | $(TAR_COMP_CMD) -c > $(TOP)/$(SRC_DIST_TESTSUITE_TARBALL) +SDIST_TARGETS= sdist-ghc sdist-testsuite + +ifeq "$(Windows_Host)" "YES" +SDIST_TARGETS+= sdist-windows-tarballs +endif .PHONY: sdist -sdist : sdist-ghc sdist-windows-tarballs sdist-testsuite +sdist : $(SDIST_TARGETS) sdist-manifest : $(SRC_DIST_GHC_TARBALL) tar tjf $(SRC_DIST_GHC_TARBALL) | sed "s|^ghc-$(ProjectVersion)/||" | sort >sdist-manifest diff --git a/utils/haddock b/utils/haddock Are there any objections to commit this? Thanks, Gábor [1] http://haskell.inf.elte.hu/builders/freebsd-amd64-head/700/15.html

Hi Gábor,
instead of changing `ghc.mk`, please change the builder script to also run `git
clone git://git.haskell.org/ghc-tarballs.git`.
(Edit: while typing this, I saw you just did so)
The benefits are:
* the windows specific part of creating a source distribution also gets
tested
* the release manager can run `make sdist` on any platform, and they'll get
a complete source distribution they can upload
Thomas
On Sun, Jul 26, 2015 at 8:36 PM, Páli Gábor János
Hi Thomas,
2015-07-21 12:45 GMT+02:00 Thomas Miedema
: To get the sources:
git clone --recursive git://git.haskell.org/ghc.git cd ghc git clone git://git.haskell.org/ghc-tarballs.git # Windows only
Apparently, that last line is also needed even on non-Windows systems when one wants to make the "sdist" target, at least as I have observed on my builders, e.g. [1].
So I have put together a small patch that aims to fix this -- mind you, I have not tested it on Windows, but theoretically it shall just work:
--- a/ghc.mk +++ b/ghc.mk @@ -1183,9 +1183,14 @@ sdist-windows-tarballs: sdist-windows-tarballs-prep sdist-testsuite: sdist-testsuite-prep cd $(SRC_DIST_TESTSUITE_ROOT) && "$(TAR_CMD)" chf - $(SRC_DIST_BASE_NAME) 2> testsuite_log | $(TAR_COMP_CMD) -c > $(TOP)/$(SRC_DIST_TESTSUITE_TARBALL)
+SDIST_TARGETS= sdist-ghc sdist-testsuite + +ifeq "$(Windows_Host)" "YES" +SDIST_TARGETS+= sdist-windows-tarballs +endif
.PHONY: sdist -sdist : sdist-ghc sdist-windows-tarballs sdist-testsuite +sdist : $(SDIST_TARGETS)
sdist-manifest : $(SRC_DIST_GHC_TARBALL) tar tjf $(SRC_DIST_GHC_TARBALL) | sed "s|^ghc-$(ProjectVersion)/||" | sort >sdist-manifest diff --git a/utils/haddock b/utils/haddock
Are there any objections to commit this?
Thanks, Gábor
[1] http://haskell.inf.elte.hu/builders/freebsd-amd64-head/700/15.html

sync-all has been deleted
On Tue, Jul 21, 2015 at 12:45 PM, Thomas Miedema
Hello ghc-devs,
I would like to delete the file sync-all https://ghc.haskell.org/trac/ghc/wiki/Building/SyncAll from the GHC repository. It should not have been necessary to use it for about a year now.
Please speak up if you want those 1000 lines of buggy Perl a.k.a. sync-all to stay for some reason, or if you have questions about a certain git submodules workflow.
The source code (./boot no longer suggests it) and the wiki are already sync-all free, except for a few historical pages.
Discussion period: 1 month.
Thomas
participants (3)
-
Páli Gábor János
-
Thomas Miedema
-
Ömer Sinan Ağacan