jdk17u-dev
jdk17u-dev copied to clipboard
8318039: GHA: Bump macOS and Xcode versions
In GHA, the versions of macOS (note: the version used for build/test, not the target macOS version we compile for) and Xcode are starting to show age. It's time to update to more modern versions.
This change bumps the macOS to 13 (from 11) and Xcode to 14.3.1 (from 12.5.1/11.7). This is a prerequisite change for JDK-8317970 / https://github.com/openjdk/jdk/pull/16155, without which the build SIGSEGVs (presumably some since-fixed issue in Xcode 12.5.1).
Progress
- [x] Change must not contain extraneous whitespace
- [x] Commit message must refer to an issue
- [ ] JDK-8318039 needs maintainer approval
Issue
- JDK-8318039: GHA: Bump macOS and Xcode versions (Enhancement - P4)
Reviewing
Using git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk17u-dev.git pull/2206/head:pull/2206
$ git checkout pull/2206
Update a local copy of the PR:
$ git checkout pull/2206
$ git pull https://git.openjdk.org/jdk17u-dev.git pull/2206/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 2206
View PR using the GUI difftool:
$ git pr show -t 2206
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk17u-dev/pull/2206.diff
Webrev
:wave: Welcome back gdams! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.
This backport pull request has now been updated with issue from the original commit.
⚠️ @gdams This change is now ready for you to apply for maintainer approval. This can be done directly in each associated issue or by using the /approval command.
/approval request backport applies cleanly, affects CI only
@gdams 8318039: The approval request has been created successfully.
Looks like it's failing with sprintf errors. I'll need to backport:
https://bugs.openjdk.org/browse/JDK-8299635 and https://bugs.openjdk.org/browse/JDK-8299378
/approval cancel
@gdams 8318039: The approval request has been cancelled successfully.
@gdams This change now passes all automated pre-integration checks.
ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details.
After integration, the commit message for the final commit will be:
8318039: GHA: Bump macOS and Xcode versions
Reviewed-by: andrew
You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed.
At the time when this comment was updated there had been 2 new commits pushed to the master branch:
- 8d974eacf19b206978910f50a09bf68767ab9765: 8299378: sprintf is deprecated in Xcode 14
- e191f94c7df24f0c4a7d2cbd29fac3abf67dab9e: 8299397: Remove metaprogramming/isFloatingPoint.hpp
Please see this link for an up-to-date comparison between the source branch of this pull request and the master branch.
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details.
➡️ To integrate this PR with the above commit message to the master branch, type /integrate in a new comment.
@gdams This pull request has been inactive for more than 8 weeks and will be automatically closed if another 8 weeks passes without any activity. To avoid this, simply add a new comment to the pull request. Feel free to ask for assistance if you need help with progressing this pull request towards integration!
It would be nice to have this done, as macos-11 seems to have been dropped in GHA
But it seems, quite a few sprintf related backports needs to be done first (not just 2 mentioned higher), see JDK-8296812 and linked issues.. :(
@gdams do you plan to reopen this? Now the MacOS 11 runner is gone, adding this to have some MacOS build which we can then fix with follow-up backports would be better than no build at all.
@gdams do you plan to reopen this? Now the MacOS 11 runner is gone, adding this to have some MacOS build which we can then fix with follow-up backports would be better than no build at all.
yeah it would be good to get this backported. I think the issue was the complexity of the other xcode-related backports that needed to go in first so if people wanted to pick them up I'd encourage them to take a look
The parent pull request that this pull request depends on has now been integrated and the target branch of this pull request has been updated. This means that changes from the dependent pull request can start to show up as belonging to this pull request, which may be confusing for reviewers. To remedy this situation, simply merge the latest changes from the new target branch into this pull request by running commands similar to these in the local repository for your personal fork:
git checkout xcode
git fetch https://git.openjdk.org/jdk17u-dev.git master
git merge FETCH_HEAD
# if there are conflicts, follow the instructions given by git merge
git commit -m "Merge master"
git push
@gdams do you plan to reopen this? Now the MacOS 11 runner is gone, adding this to have some MacOS build which we can then fix with follow-up backports would be better than no build at all.
yeah it would be good to get this backported. I think the issue was the complexity of the other xcode-related backports that needed to go in first so if people wanted to pick them up I'd encourage them to take a look
Thanks. I'll have a look at #2663 but I think this may need to go in first now, because the Mac OS 11 runner is gone (https://github.com/actions/runner-images/issues/9255#issuecomment-2080437770) and this is why the Mac tasks on that PR are still spinning.
@gdams do you plan to reopen this? Now the MacOS 11 runner is gone, adding this to have some MacOS build which we can then fix with follow-up backports would be better than no build at all.
yeah it would be good to get this backported. I think the issue was the complexity of the other xcode-related backports that needed to go in first so if people wanted to pick them up I'd encourage them to take a look
Thanks. I'll have a look at #2663 but I think this may need to go in first now, because the Mac OS 11 runner is gone (actions/runner-images#9255 (comment)) and this is why the Mac tasks on that PR are still spinning.
I'd like to get https://github.com/openjdk/jdk17u-dev/pull/2661 and https://github.com/openjdk/jdk17u-dev/pull/2663 merged first and then I'll propose that we merge this one (with failing builds)
@gnu-andrew I'll kick off the approval request now if you're happy to approve it so we can get the ball rolling
/approval request clean backport, CI-only so low risk. This is required as macos-11 github executors have been deprecated and several PRs are now stuck in a pending state
@gdams 8318039: The approval request has been created successfully.
@gdams do you plan to reopen this? Now the MacOS 11 runner is gone, adding this to have some MacOS build which we can then fix with follow-up backports would be better than no build at all.
yeah it would be good to get this backported. I think the issue was the complexity of the other xcode-related backports that needed to go in first so if people wanted to pick them up I'd encourage them to take a look
Thanks. I'll have a look at #2663 but I think this may need to go in first now, because the Mac OS 11 runner is gone (actions/runner-images#9255 (comment)) and this is why the Mac tasks on that PR are still spinning.
I'd like to get #2661 and #2663 merged first and then I'll propose that we merge this one (with failing builds)
Ok, both approved now. I don't mind the order if these are imminent (and thanks for doing them so quickly). When I looked yesterday, it looked like these fixes might take longer.
/approve yes
@gnu-andrew 8318039: The approval request has been approved.
/integrate
Going to push as commit 7144027dff495b623428bd9cd891c0ed912035a4.
Since your change was applied there have been 2 commits pushed to the master branch:
- 8d974eacf19b206978910f50a09bf68767ab9765: 8299378: sprintf is deprecated in Xcode 14
- e191f94c7df24f0c4a7d2cbd29fac3abf67dab9e: 8299397: Remove metaprogramming/isFloatingPoint.hpp
Your commit was automatically rebased without conflicts.
@gdams Pushed as commit 7144027dff495b623428bd9cd891c0ed912035a4.
:bulb: You may see a message that your pull request was closed with unmerged commits. This can be safely ignored.
@gdams are you planning to also fix this in 11u & 8u?
@gdams are you planning to also fix this in 11u & 8u?
I've been speaking to @vieiro who is tackling 11u - albeit these changes are even more complex than 17u but I'm happy to help where possible.
8u is a much harder one to fix, one thing I'd considered was bumping the CI to macos-12 (which is still in support) and has xcode 13.x installed on it. This would only be pushing the problem down the road for now but would at least get 8u green again. WDYT?
@gdams are you planning to also fix this in 11u & 8u?
I've been speaking to @vieiro who is tackling 11u - albeit these changes are even more complex than 17u but I'm happy to help where possible.
For 11u I don't think we can do the google test upgrade since that would need all the type trait fixes (all the linked issues in JDK-8299386. We will have to find a more minimal solution there.
8u is a much harder one to fix, one thing I'd considered was bumping the CI to macos-12 (which is still in support) and has xcode 13.x installed on it. This would only be pushing the problem down the road for now but would at least get 8u green again. WDYT?
Yes, that sounds about right. That's enough change as it is. We need the lowest risk solution for that one, which means the fewest amount of changes/backports. On the plus side, gtest isn't needed for JDK 8 since it only got introduced in JDK 9 with: https://openjdk.org/jeps/281
For 11u I don't think we can do the google test upgrade since that would need all the type trait fixes (all the linked issues in JDK-8299386. We will have to find a more minimal solution there.
We won't need to do that for 11u as https://bugs.openjdk.org/browse/JDK-8222414 is 13+. It should just be a case of backporting the appropriate sprint removals.
Yes, that sounds about right. That's enough change as it is. We need the lowest risk solution for that one, which means the fewest amount of changes/backports. On the plus side, gtest isn't needed for JDK 8 since it only got introduced in JDK 9 with: https://openjdk.org/jeps/281
I did have a go at building 8u with Xcode 13 on macos-12 but wasn't successful, I'll do some digging and see what needs to be backported