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

update cmake to >= 3.29.2 #9680

Closed
1 of 14 tasks
rursprung opened this issue Apr 12, 2024 · 8 comments
Closed
1 of 14 tasks

update cmake to >= 3.29.2 #9680

rursprung opened this issue Apr 12, 2024 · 8 comments

Comments

@rursprung
Copy link

Tool name

cmake

Tool license

BSD

Add or update?

  • Add
  • Update

Desired version

3.29.2

Approximate size

No response

Brief description of tool

No response

URL for tool's homepage

No response

Provide a basic test case to validate the tool's functionality.

No response

Platforms where you need the tool

  • Azure DevOps
  • GitHub Actions

Runner images where you need the tool

  • Ubuntu 20.04
  • Ubuntu 22.04
  • macOS 11
  • macOS 12
  • macOS 13
  • macOS 13 Arm64
  • macOS 14
  • macOS 14 Arm64
  • Windows Server 2019
  • Windows Server 2022

Can this tool be installed during the build?

No response

Tool installation time in runtime

No response

Are you willing to submit a PR?

No response

@rursprung
Copy link
Author

CMake 3.29.1 - which is currently packaged on the runners - contains a regression which causes a variety of projects to fail building. CMake 3.29.2 reverts this and has been released yesterday. please urgently update CMake on the runner images to >= 3.29.2 so that these projects (and the ones depending on them) build fine with the default CMake and don't need to manually install a specific version.

some background from vcpkg discussions: microsoft/vcpkg#37968 & microsoft/vcpkg#38144 (see esp. the linked original tickets for further information)

@erik-bershel
Copy link
Contributor

Hey @rursprung!

Thank you for arising this issue. It is often only through the efforts of users that we can learn about some updates or problems.

This week's deployment has already ended, we will not start a new one on Friday - this brings more issues and cons than pros. Starting Monday we will begin rolling out new images. Rolling back to the previous image is also not an option in this case - the Ubuntu images contained some major blockers.

Generally task requires no action in terms of updating. On Ubuntu images we always install the latest available release from the Kitware/CMake repository. On Windows images, Cmake is provided as part of the MinGW installation, the latest available package from the Chocolatey repository, and as part of the Visual Studio installation. On macOS Cmake is installed from Homebrew. Cmake is also part of the Android installation on all systems, but the situation there is different and does not overlap with the stated problem. In all cases, we cannot speed up the availability of more recent Cmake in the repository.

I will keep this issue open for better user awareness until the end of the day.

@kklobe
Copy link

kklobe commented Apr 12, 2024

for anyone needing a quick fix, this CMake runner action can help: https://github.com/marketplace/actions/actions-setup-cmake

I just added

      - name: Setup CMake
        uses: jwlawson/actions-setup-cmake@v2
        with:
          cmake-version: '3.29.2'

to our runner script and it worked great.

jjerphan added a commit to man-group/ArcticDB that referenced this issue Apr 12, 2024
@erik-bershel
Copy link
Contributor

There is an alternative method, seems a bit faster:

jobs:
  test:
    strategy:
      matrix:
        os: [ macos-14, macos-13, macos-12, windows-2019, windows-2022, ubuntu-20.04, ubuntu-22.04 ]
    runs-on: ${{ matrix.os }}
    steps:
    - uses: lukka/get-cmake@latest
      with:
        cmakeVersion: "3.29.2" 

Result:

Screenshot 2024-04-12 at 17 43 50

Using previous:

jobs:
  test:
    strategy:
      matrix:
        os: [ macos-14, macos-13, macos-12, windows-2019, windows-2022, ubuntu-20.04, ubuntu-22.04 ]
    runs-on: ${{ matrix.os }}
    steps:
    - uses: jwlawson/actions-setup-cmake@v2
       with:
         cmake-version: '3.29.2'

I've got next:

Screenshot 2024-04-12 at 17 46 52

@jjerphan
Copy link

Hello @erik-bershel,

Thank you for your work on the runner image. I am afraid the sporadic silent update to the Windows Runner image have been quite distrustful in the past. 😕

I believe being able to choose the version of the Windows runner image to use would greatly be appreciated. Is there a way to request this option?

Thank you.

@erik-bershel
Copy link
Contributor

Hey @jjerphan!

I am afraid the sporadic silent update to the Windows Runner image have been quite distrustful in the past. 😕

It's not so silent and sporadic as you say. Every update starts with publishing config changes in this repo. Unfortunately, no one is interested in these proposed changes until they reach production.

I believe being able to choose the version of the Windows runner image to use would greatly be appreciated. Is there a way to request this option?

This is a highly demanded option, yes. Unfortunately, there is no such opportunity now and I have no information about the possible timing of its implementation or about plans for its implementation in principle. If such an opportunity suddenly arises, we will definitely notify the community.

@jjerphan
Copy link

Thank you for those pieces of information.

For now, I guess the best solution is that users watch releases of the new images to be notified of toolchains' changes and prepare to potential regressions.

@rursprung
Copy link
Author

for anyone still looking at this issue: the new runner images seem to have been promoted a few hours ago and now include CMake 3.29.2, thus resolving the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants