<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/ci, branch v2.25.0</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://www.git.shady.money/git/atom?h=v2.25.0</id>
<link rel='self' href='https://www.git.shady.money/git/atom?h=v2.25.0'/>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/'/>
<updated>2019-12-06T23:09:21Z</updated>
<entry>
<title>Merge branch 'sg/osx-force-gcc-9'</title>
<updated>2019-12-06T23:09:21Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2019-12-06T23:09:21Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=ef3ce7c4b9f5ed7a13a0efcc576df855c4fd3d0f'/>
<id>urn:sha1:ef3ce7c4b9f5ed7a13a0efcc576df855c4fd3d0f</id>
<content type='text'>
TravisCI update.

* sg/osx-force-gcc-9:
  ci: build Git with GCC 9 in the 'osx-gcc' build job
</content>
</entry>
<entry>
<title>Merge branch 'sg/test-bool-env'</title>
<updated>2019-12-05T20:52:48Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2019-12-05T20:52:48Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=e0f9ec90278ec989ac7840a69f42a414f0db23f5'/>
<id>urn:sha1:e0f9ec90278ec989ac7840a69f42a414f0db23f5</id>
<content type='text'>
Recently we have declared that GIT_TEST_* variables take the
usual boolean values (it used to be that some used "non-empty
means true" and taking GIT_TEST_VAR=YesPlease as true); make
sure we notice and fail when non-bool strings are given to
these variables.

* sg/test-bool-env:
  t5608-clone-2gb.sh: turn GIT_TEST_CLONE_2GB into a bool
  tests: add 'test_bool_env' to catch non-bool GIT_TEST_* values
</content>
</entry>
<entry>
<title>Merge branch 'jc/azure-ci-osx-fix-fix'</title>
<updated>2019-12-05T20:52:44Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2019-12-05T20:52:44Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=7fd7a8ab29af952c8f6097ce8f22203a9d28d61a'/>
<id>urn:sha1:7fd7a8ab29af952c8f6097ce8f22203a9d28d61a</id>
<content type='text'>
CI jobs for macOS has been made less chatty when updating perforce
package used during testing.

* jc/azure-ci-osx-fix-fix:
  ci(osx): update homebrew-cask repository with less noise
</content>
</entry>
<entry>
<title>ci: build Git with GCC 9 in the 'osx-gcc' build job</title>
<updated>2019-11-29T21:18:48Z</updated>
<author>
<name>SZEDER Gábor</name>
<email>szeder.dev@gmail.com</email>
</author>
<published>2019-11-27T16:24:16Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=176441bfb58d8833640300d8db67ef8d7eee56ca'/>
<id>urn:sha1:176441bfb58d8833640300d8db67ef8d7eee56ca</id>
<content type='text'>
Our 'osx-gcc' build job on Travis CI relied on GCC 8 being installed
(but not linked) in the image we use [1].  Alas, since the last update
of this image a few days ago this is not the case anymore, and now it
contains GCC 9 (installed and linked) instead of GCC 8.  The results
are failed 'osx-gcc' jobs, because they can't find the 'gcc-8' command
[2].

Let's move on to use GCC 9, with hopefully better error reporting and
improved -Wfoo flags and what not.  On Travis CI this has the benefit
that we can spare a few seconds while installing dependencies, because
it already comes pre-installed, at least for now.  The Azure Pipelines
OSX image doesn't include GCC, so we have to install it ourselves
anyway, and then we might as well install the newer version.

In a vain attempt I tried to future-proof this a bit:

  - Install 'gcc@9' specifically, so we'll still get what we want even
    after GCC 10 comes out, and the "plain" 'gcc' package starts to
    refer to 'gcc@10'.

  - Run both 'brew install gcc@9' and 'brew link gcc@9'.  If 'gcc@9'
    is already installed and linked, then both commands are noop and
    exit with success.  But as we saw in the past, sometimes the image
    contains the expected GCC package installed but not linked, so
    maybe it will happen again in the future as well.  In that case
    'brew install' is still a noop, and instructs the user to run
    'brew link' instead, so that's what we'll do.  And if 'gcc@9' is
    not installed, then 'brew install' will install it, and the
    subsequent 'brew link' becomes a noop.

An additional benefit of this patch is that from now on we won't
unnecessarily install GCC and its dependencies in the 'osx-clang' jobs
on Azure Pipelines.

[1] 7d4733c501 (ci: fix GCC install in the Travis CI GCC OSX job,
    2019-10-24)
[2] https://travis-ci.org/git/git/jobs/615442297#L333

Signed-off-by: SZEDER Gábor &lt;szeder.dev@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>t5608-clone-2gb.sh: turn GIT_TEST_CLONE_2GB into a bool</title>
<updated>2019-11-23T02:16:10Z</updated>
<author>
<name>SZEDER Gábor</name>
<email>szeder.dev@gmail.com</email>
</author>
<published>2019-11-22T13:14:37Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=a85efb598565718a06e560eb3f1ca038f6f3cd39'/>
<id>urn:sha1:a85efb598565718a06e560eb3f1ca038f6f3cd39</id>
<content type='text'>
The GIT_TEST_CLONE_2GB environment variable is only ever checked with
'test -z' in 't5608-clone-2gb.sh', so any non-empty value is
interpreted as "yes, run these expensive tests", even
'GIT_TEST_CLONE_2GB=NoThanks'.

Similar GIT_TEST_* environment variables have already been turned into
bools in 3b072c577b (tests: replace test_tristate with "git
env--helper", 2019-06-21), so let's turn GIT_TEST_CLONE_2GB into a
bool as well, to follow suit.

Our CI builds set GIT_TEST_CLONE_2GB=YesPlease, so adjust them
accordingly, thus removing the last 'YesPlease' from our CI scripts.

Signed-off-by: SZEDER Gábor &lt;szeder.dev@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>ci(osx): update homebrew-cask repository with less noise</title>
<updated>2019-11-20T02:55:46Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2019-11-20T01:18:39Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=0dbc4a0edfe6356ddba0e19a733e5f3e2d407aaa'/>
<id>urn:sha1:0dbc4a0edfe6356ddba0e19a733e5f3e2d407aaa</id>
<content type='text'>
The OSX CI build procedure updates the homebrew-cask repository
before attempting to install perforce again, after seeing an
installation failure.  This involves a "git pull" that by default
computes and outputs diffstat, which would only grow as the time
goes by and the repository cast in stone in the CI build image
becomes more and more stale relative to the upstream repository in
the outside world.

Suppress the diffstat to both save cycles to generate it, and strain
on the eyeballs to skip it.

Reported-by: SZEDER Gábor &lt;szeder.dev@gmail.com&gt;
Helped-by: Johannes Schindelin &lt;johannes.schindelin@gmx.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'sg/ci-osx-gcc8-fix'</title>
<updated>2019-10-24T04:34:03Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2019-10-24T04:34:03Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=04b1f4f768bc36cc074a311b9c5e339a9fce160a'/>
<id>urn:sha1:04b1f4f768bc36cc074a311b9c5e339a9fce160a</id>
<content type='text'>
CI build fix.

* sg/ci-osx-gcc8-fix:
  ci: fix GCC install in the Travis CI GCC OSX job
</content>
</entry>
<entry>
<title>ci: fix GCC install in the Travis CI GCC OSX job</title>
<updated>2019-10-24T02:31:07Z</updated>
<author>
<name>SZEDER Gábor</name>
<email>szeder.dev@gmail.com</email>
</author>
<published>2019-10-24T00:20:40Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=7d4733c5019c9dab78583cb1a17a9d83370c2b89'/>
<id>urn:sha1:7d4733c5019c9dab78583cb1a17a9d83370c2b89</id>
<content type='text'>
A few days ago Travis CI updated their existing OSX images, including
the Homebrew database in the xcode10.1 OSX image that we use.  Since
then installing dependencies in the 'osx-gcc' job fails when it tries
to link gcc@8:

  + brew link gcc@8
  Error: No such keg: /usr/local/Cellar/gcc@8

GCC8 is still installed but not linked to '/usr/local' in the updated
image, as it was before this update, but now we have to link it by
running 'brew link gcc'.  So let's do that then, and fall back to
linking gcc@8 if it doesn't, just to be sure.

Our builds on Azure Pipelines are unaffected by this issue.  The OSX
image over there doesn't contain the gcc@8 package, so we have to
'brew install' it, which already takes care of linking it to
'/usr/local'.  After that the 'brew link gcc' command added by this
patch fails, but the ||-chained fallback 'brew link gcc@8' command
succeeds with an "already linked" warning.

Signed-off-by: SZEDER Gábor &lt;szeder.dev@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>ci(osx): use new location of the `perforce` cask</title>
<updated>2019-10-23T02:46:41Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>johannes.schindelin@gmx.de</email>
</author>
<published>2019-10-23T00:19:38Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=0eb3671ed96f74b79e54a1101746882bafe50070'/>
<id>urn:sha1:0eb3671ed96f74b79e54a1101746882bafe50070</id>
<content type='text'>
The Azure Pipelines builds are failing for macOS due to a change in the
location of the perforce cask. The command outputs the following error:

    + brew install caskroom/cask/perforce
    Error: caskroom/cask was moved. Tap homebrew/cask-cask instead.

So let's try to call `brew cask install perforce` first (which is what
that error message suggests, in a most round-about way).

Prior to 672f51cb we used to install the 'perforce' package with 'brew
install perforce' (note: no 'cask' in there). The justification for
672f51cb was that the command 'brew install perforce' simply stopped
working, after Homebrew folks decided that it's better to move the
'perforce' package to a "cask". Their justification for this move was
that 'brew install perforce' "can fail due to a checksum mismatch ...",
and casks can be installed without checksum verification. And indeed,
both 'brew cask install perforce' and 'brew install
caskroom/cask/perforce' printed something along the lines of:

  ==&gt; No checksum defined for Cask perforce, skipping verification

It is unclear why 672f51cb used 'brew install caskroom/cask/perforce'
instead of 'brew cask install perforce'. It appears (by running both
commands on old Travis CI macOS images) that both commands worked all
the same already back then.

In any case, as the error message at the top of this commit message
shows, 'brew install caskroom/cask/perforce' has stopped working
recently, but 'brew cask install perforce' still does, so let's use
that.

CI servers are typically fresh virtual machines, but not always. To
accommodate for that, let's try harder if `brew cask install perforce`
fails, by specifically pulling the latest `master` of the
`homebrew-cask` repository.

This will still fail, of course, when `homebrew-cask` falls behind
Perforce's release schedule. But once it is updated, we can now simply
re-run the failed jobs and they will pick up that update.

As for updating `homebrew-cask`: the beginnings of automating this in
https://dev.azure.com/gitgitgadget/git/_build?definitionId=11&amp;_a=summary
will be finished once the next Perforce upgrade comes around.

Helped-by: SZEDER Gábor &lt;szeder.dev@gmail.com&gt;
Signed-off-by: Johannes Schindelin &lt;johannes.schindelin@gmx.de&gt;
Signed-off-by: Derrick Stolee &lt;dstolee@microsoft.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'dl/honor-cflags-in-hdr-check'</title>
<updated>2019-10-07T02:33:02Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2019-10-07T02:33:02Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=9728ab488ad2fc5e17daba69cbc80ff514f70da8'/>
<id>urn:sha1:9728ab488ad2fc5e17daba69cbc80ff514f70da8</id>
<content type='text'>
Dev support.

* dl/honor-cflags-in-hdr-check:
  ci: run `hdr-check` as part of the `Static Analysis` job
  Makefile: emulate compile in $(HCO) target better
  pack-bitmap.h: remove magic number
  promisor-remote.h: include missing header
  apply.h: include missing header
</content>
</entry>
</feed>
