Subject: Re: Travis not looking so good

From: SZEDER Gábor <[email-masked]>
Date: Sat, 29 Jun 2019 19:01:08 +0200

On Thu, Jun 27, 2019 at 09:46:51AM -0700, Junio C Hamano wrote:
> SZEDER Gábor <[email-masked]> writes:
> 
> > However, we've always used the macOS build jobs as "build and test
> > with the latest and greatest", i.e. they install the latest available
> > Perforce and Git-LFS.  To keep up with this tradition we'd need to run
> > 'brew update' and in turn would need to 'brew install gcc'.
> >
> > [1] See e.g. a1ccaedd62 (travis-ci: make the OSX build jobs' 'brew
> >     update' more quiet, 2019-02-02) or
> >
> >     https://public-inbox.org/git/[email-masked]/T/#u
> 
> Is the reason why you did not submit your bonus patch [*1*] in the series at
> 
>   https://public-inbox.org/git/[email-masked]/
> 
> because it goes the opposite way, i.e. "build and test with whatever
> happens to be in the image"?

Basically yes... with the other factor being that when I'm not
particularly happy with any of the possible solutions for an issue,
then it tends to end up on a back burner and forgotten for a while...

> Unless what happens to come in the image at travis-ci.org is
> hopelessly outdated and does not match what normal users run,

We explicitly specify which macOS image we want to use in our builds
on Travis CI, see 2000ac9fbf (travis-ci: switch to Xcode 10.1 macOS
image, 2019-01-17), so it's up to us to change that.

Travis CI's current default macOS image is still Xcode 9.4, as it was
at the time of 2000ac9fbf, and the newest is 10.2, which now comes
with GCC 8.3 properly preinstalled (i.e. no 'brew link gcc@8'
necessary).

> isn't
> it is better to test with "whatever happens to be there" than not to
> test at all due to missing compiler?

Better, sure...  Right?  I'm not sure.

> [Reference]
> 
> *1* ... what I picked up from your branch reproduced here
> 
>   https://public-inbox.org/git/[email-masked]/
> 
> It is missing explanation and sign-off,

And that patch should be split into two, of course: setting
HOMEBREW_NO_AUTO_UPDATE first to fix the build, and then set
HOMEBREW_NO_INSTALL_CLEANUP separately for a bit of additional
speedup.

> but if it lets the build
> jobs run, even in a tad stale environment, it may be worth
> resurrecting until those who want macOS port working can come up
> with a real "with the latest and greatest" alternative.

'brew update && brew install gcc && export CC=gcc-9' will do it...
but then we'll still spend that ~2.5 minutes spent on updating
Homebrew itself, and there's the possibility that Homebrew breaks, and
eventually GCC 10 will be released and we'll need to update that CC
variable.

Anyway, will look into this again later during the weekend.