Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci: upgrade to using macos-13 #1607

Closed
wants to merge 1 commit into from

Conversation

dscho
Copy link
Member

@dscho dscho commented Nov 2, 2023

GitHub announced in April that the macos-13 pool is available, so let's switch. This might also stave off CI failures we experience over in GitGitGadget (e.g. here) and in Git for Windows (e.g. here) where occasionally macos-12-xl runners seem to be co-opted to cope with macos-12 workload (and the former don't have Python2 in their PATH).

In April, GitHub announced that the `macos-13` pool is available:
https://github.blog/changelog/2023-04-24-github-actions-macos-13-is-now-available/.
It is only a matter of time until the `macos-12` pool is going away,
therefore we should switch now, without pressure of a looming deadline.

Since the `macos-13` runners no longer include Python2, we also drop
specifically testing with Python2 and switch uniformly to Python3, see
https://github.com/actions/runner-images/blob/HEAD/images/macos/macos-13-Readme.md
for details about the software available on the `macos-13` pool's
runners.

Also, on macOS 13, Homebrew seems to install a `gcc@9` package that no
longer comes with a regular `unistd.h` (there seems only to be a
`ssp/unistd.h`), and hence builds would fail with:

    In file included from base85.c:1:
    git-compat-util.h:223:10: fatal error: unistd.h: No such file or directory
      223 | #include <unistd.h>
          |          ^~~~~~~~~~
    compilation terminated.

The reason why we install GCC v9.x explicitly is historical, and back in
the days it was because it was the _newest_ version available via
Homebrew: 176441b (ci: build Git with GCC 9 in the 'osx-gcc' build
job, 2019-11-27).

To reinstate the spirit of that commit _and_ to fix that build failure,
let's switch to the now-newest GCC version: v13.x.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
@dscho dscho self-assigned this Nov 2, 2023
@dscho
Copy link
Member Author

dscho commented Nov 3, 2023

/submit

Copy link

gitgitgadget bot commented Nov 3, 2023

Submitted as pull.1607.git.1698996455218.gitgitgadget@gmail.com

To fetch this version into FETCH_HEAD:

git fetch https://github.com/gitgitgadget/git/ pr-1607/dscho/switch-ci-to-macos-13-v1

To fetch this version to local tag pr-1607/dscho/switch-ci-to-macos-13-v1:

git fetch --no-tags https://github.com/gitgitgadget/git/ tag pr-1607/dscho/switch-ci-to-macos-13-v1

Copy link

gitgitgadget bot commented Nov 3, 2023

On the Git mailing list, Junio C Hamano wrote (reply to this):

"Johannes Schindelin via GitGitGadget" <gitgitgadget@gmail.com>
writes:

> From: Johannes Schindelin <johannes.schindelin@gmx.de>
>
> In April, GitHub announced that the `macos-13` pool is available:
> https://github.blog/changelog/2023-04-24-github-actions-macos-13-is-now-available/.
> It is only a matter of time until the `macos-12` pool is going away,
> therefore we should switch now, without pressure of a looming deadline.
> ...
> To reinstate the spirit of that commit _and_ to fix that build failure,
> let's switch to the now-newest GCC version: v13.x.

Thank you very much for a well reasoned patch that is very timely.
I am tempted to fast-track this one down from 'seen' to 'maint'
before we tag -rc1.

Will queue.

Copy link

gitgitgadget bot commented Nov 3, 2023

This branch is now known as js/ci-use-macos-13.

Copy link

gitgitgadget bot commented Nov 3, 2023

This patch series was integrated into seen via git@669175b.

@gitgitgadget gitgitgadget bot added the seen label Nov 3, 2023
Copy link

gitgitgadget bot commented Nov 4, 2023

This patch series was integrated into seen via git@319fb56.

dscho added a commit to microsoft/git that referenced this pull request Nov 5, 2023
This patch works around intermittent problems with the `osx-clang` job.
It is slated to be integrated into v2.43.0-rc1, therefore it is safe to
take it early into microsoft/git. For details, see
gitgitgadget#1607.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Copy link

gitgitgadget bot commented Nov 6, 2023

This patch series was integrated into seen via git@c65fbde.

Copy link

gitgitgadget bot commented Nov 6, 2023

This patch series was integrated into next via git@f740634.

@gitgitgadget gitgitgadget bot added the next label Nov 6, 2023
Copy link

gitgitgadget bot commented Nov 6, 2023

There was a status update in the "New Topics" section about the branch js/ci-use-macos-13 on the Git mailing list:

Replace macos-12 used at GitHub CI with macos-13.

Will merge to 'master'.
source: <pull.1607.git.1698996455218.gitgitgadget@gmail.com>

Copy link

gitgitgadget bot commented Nov 7, 2023

This patch series was integrated into seen via git@bdc80c7.

Copy link

gitgitgadget bot commented Nov 8, 2023

This patch series was integrated into seen via git@234037d.

Copy link

gitgitgadget bot commented Nov 8, 2023

This patch series was integrated into master via git@234037d.

Copy link

gitgitgadget bot commented Nov 8, 2023

This patch series was integrated into next via git@234037d.

@gitgitgadget gitgitgadget bot added the master label Nov 8, 2023
@gitgitgadget gitgitgadget bot closed this Nov 8, 2023
Copy link

gitgitgadget bot commented Nov 8, 2023

Closed via 234037d.

@dscho dscho deleted the switch-ci-to-macos-13 branch November 8, 2023 09:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant