Skip to content

Upgrading Github Action runners to ubuntu24.04 #1728

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

Open
wants to merge 34 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
ae4e98c
Upgrading Github Action runners to ubuntu24.04
runora95 May 7, 2025
b7eca64
Merge branch 'main' into sc-90738-update-ubuntu-runners24
runora95 May 8, 2025
184966d
adding --ignore-errors mismatch to check catalyst
runora95 May 8, 2025
244464a
changing flag method
runora95 May 8, 2025
b80c7c2
added env:
runora95 May 8, 2025
c1d0be6
Merge branch 'main' into sc-90738-update-ubuntu-runners24
runora95 May 8, 2025
a957040
added debug stuff
runora95 May 8, 2025
b935717
checking versions
runora95 May 8, 2025
3030dca
checking versions
runora95 May 8, 2025
45fb33f
ubuntu22
runora95 May 8, 2025
4190a46
adding gcc-11 g++-1
runora95 May 8, 2025
88b9e68
Merge branch 'main' into sc-90738-update-ubuntu-runners24
runora95 May 8, 2025
3aa6f38
changed gcc g++
runora95 May 8, 2025
a1437b0
apt uninstall gcc g++
runora95 May 8, 2025
e64ee8c
gcc11
runora95 May 9, 2025
d69a351
hard coding c compiler
runora95 May 9, 2025
0e18420
changing gcc-11 installation
runora95 May 9, 2025
c610cd0
added which gcc
runora95 May 9, 2025
5248b7c
changing order of installs
runora95 May 9, 2025
2efe45b
changing variable names
runora95 May 9, 2025
49e7087
checking llvm build
runora95 May 9, 2025
1bb638a
changed compiler to new matrix style
runora95 May 9, 2025
92a5d1b
changing c compilers again
runora95 May 9, 2025
c99e992
changing c compilers again
runora95 May 9, 2025
b090928
fixed typo
runora95 May 9, 2025
9d86188
changing c compilers again
runora95 May 9, 2025
c26a665
running install deps
runora95 May 9, 2025
3ca2bbb
Merge branch 'main' into sc-90738-update-ubuntu-runners24
runora95 May 9, 2025
493e955
Merge branch 'main' into sc-90738-update-ubuntu-runners24
runora95 May 12, 2025
a66f6e7
adding python version
runora95 May 12, 2025
a090c03
adding find package to cmake
runora95 May 12, 2025
d5d50d0
removed py version
runora95 May 12, 2025
a825126
find_package(Python3 REQUIRED COMPONENTS Development NumPy)
runora95 May 12, 2025
95258ff
Merge branch 'main' into sc-90738-update-ubuntu-runners24
runora95 May 12, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/build-nightly-release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ on:
jobs:
setup:
name: Setup the release
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Checkout Catalyst repo
uses: actions/checkout@v4
Expand Down Expand Up @@ -56,7 +56,7 @@ jobs:
name: Prepare & Upload wheels to TestPyPI
if: ${{ !failure() && !cancelled() }} # needed in case linux-aarch is skipped
needs: [linux-x86, macos-arm, linux-aarch]
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
id-token: write # IMPORTANT: mandatory for trusted publishing

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/build-wheel-linux-arm64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ jobs:
container_img: ["manylinux_2_28_aarch64"]

name: Build Dependencies (Python ${{ matrix.python_version }})
runs-on: ubuntu-22.04-arm
runs-on: ubuntu-24.04-arm
container: quay.io/pypa/${{ matrix.container_img }}

if: needs.check_if_wheel_build_required.outputs.build-wheels == 'true'
Expand Down Expand Up @@ -241,7 +241,7 @@ jobs:
container_img: ["manylinux_2_28_aarch64"]

name: Build Wheels (Python ${{ matrix.python_version }})
runs-on: ubuntu-22.04-arm
runs-on: ubuntu-24.04-arm
container: quay.io/pypa/${{ matrix.container_img }}

steps:
Expand Down Expand Up @@ -405,7 +405,7 @@ jobs:

# To check all wheels for supported python3 versions
name: Test Wheels (Python ${{ matrix.python_version }}) on Linux Arm
runs-on: ubuntu-22.04-arm
runs-on: ubuntu-24.04-arm

steps:
- name: Checkout Catalyst repo
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-wheel-linux-x86_64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ jobs:
name: Determine runner type to use
uses: ./.github/workflows/determine-workflow-runner.yml
with:
default_runner: ubuntu-22.04
default_runner: ubuntu-24.04

check_if_wheel_build_required:
if: github.event.pull_request.draft == false
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/changelog-reminder.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ name: Changelog Reminder
jobs:
remind:
name: Changelog Reminder
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@master
- name: Changelog Reminder
Expand Down
66 changes: 44 additions & 22 deletions .github/workflows/check-catalyst.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
name: Determine runner type to use
uses: ./.github/workflows/determine-workflow-runner.yml
with:
default_runner: ubuntu-22.04
default_runner: ubuntu-24.04

constants:
name: "Set build matrix"
Expand All @@ -48,6 +48,17 @@ jobs:
sudo apt-get update
sudo apt-get -y -q install ninja-build make cmake clang libomp-dev
python3 -m pip install nanobind pybind11
sudo apt-get remove -y gcc g++
sudo apt-get install -y gcc-11 g++-11
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 10
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 10

- name: Which gcc
run: |
gcc --version
g++ --version
which gcc
which g++

- name: Get Cached LLVM Source
id: cache-llvm-source
Expand All @@ -68,17 +79,17 @@ jobs:
- name: Build Catalyst-Runtime
run: |
COMPILER_LAUNCHER="" \
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler.{0}', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler.{0}', matrix.compiler)] }}) \
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler_gcc', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler_gxx', matrix.compiler)] }}) \
RT_BUILD_DIR="$(pwd)/runtime-build" \
LLVM_DIR="$(pwd)/mlir/llvm-project" \
ENABLE_ASAN=OFF \
ENABLE_OQD=ON \
make runtime

COMPILER_LAUNCHER="" \
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler.{0}', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler.{0}', matrix.compiler)] }}) \
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler_gcc', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler_gxx', matrix.compiler)] }}) \
RT_BUILD_DIR="$(pwd)/runtime-build" \
OQC_BUILD_DIR="$(pwd)/oqc-build" \
LLVM_DIR="$(pwd)/mlir/llvm-project" \
Expand Down Expand Up @@ -141,22 +152,22 @@ jobs:
key: ${{ runner.os }}-llvm-${{ needs.constants.outputs.llvm_version }}-ci-build-${{ matrix.compiler }}

- name: Install Deps
if: steps.cache-llvm-build.outputs.cache-hit != 'true'
# if: steps.cache-llvm-build.outputs.cache-hit != 'true'
run: |
sudo apt-get update
sudo apt-get install -y python3 python3-pip cmake ninja-build clang lld
python3 --version | grep ${{ needs.constants.outputs.primary_python_version }}
# python3 --version | grep ${{ needs.constants.outputs.primary_python_version }}
python3 -m pip install numpy pybind11

- name: Build LLVM
if: steps.cache-llvm-build.outputs.cache-hit != 'true'
# if: steps.cache-llvm-build.outputs.cache-hit != 'true'
# Note: Disable instrumentation for the mlir runtime support library,
# as user programs aren't instrumented.
run: |
# echo 'target_compile_options(mlir_c_runner_utils PRIVATE "-fno-sanitize=all")' \
# >> mlir/llvm-project/mlir/lib/ExecutionEngine/CMakeLists.txt
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler.{0}', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler.{0}', matrix.compiler)] }}) \
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler_gcc', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler_gxx', matrix.compiler)] }}) \
LLVM_BUILD_DIR="$(pwd)/llvm-build" \
COMPILER_LAUNCHER="" \
make llvm
Expand Down Expand Up @@ -224,8 +235,8 @@ jobs:
- name: Build MHLO Dialect
if: steps.cache-mhlo.outputs.cache-hit != 'true'
run: |
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler.{0}', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler.{0}', matrix.compiler)] }}) \
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler_gcc', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler_gxx', matrix.compiler)] }}) \
LLVM_BUILD_DIR="$(pwd)/llvm-build" \
MHLO_BUILD_DIR="$(pwd)/mhlo-build" \
COMPILER_LAUNCHER="" \
Expand Down Expand Up @@ -294,8 +305,8 @@ jobs:
- name: Build Enzyme
if: steps.cache-enzyme-build.outputs.cache-hit != 'true'
run: |
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler.{0}', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler.{0}', matrix.compiler)] }}) \
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler_gcc', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler_gxx', matrix.compiler)] }}) \
LLVM_BUILD_DIR="$(pwd)/llvm-build" \
ENZYME_BUILD_DIR="$(pwd)/enzyme-build" \
COMPILER_LAUNCHER="" \
Expand All @@ -305,6 +316,8 @@ jobs:
name: Quantum Dialects Build
needs: [constants, llvm, mhlo, enzyme, determine_runner]
runs-on: ${{ needs.determine_runner.outputs.runner_group }}
env:
ACTIONS_STEP_DEBUG: true
strategy:
matrix:
compiler: ${{ fromJson(needs.constants.outputs.compilers) }}
Expand Down Expand Up @@ -383,8 +396,8 @@ jobs:
- name: Build MLIR Dialects
run: |
CCACHE_DIR="$(pwd)/.ccache" \
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler.{0}', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler.{0}', matrix.compiler)] }}) \
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler_gcc', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler_gxx', matrix.compiler)] }}) \
LLVM_BUILD_DIR="$(pwd)/llvm-build" \
MHLO_BUILD_DIR="$(pwd)/mhlo-build" \
ENZYME_BUILD_DIR="$(pwd)/enzyme-build" \
Expand All @@ -394,8 +407,8 @@ jobs:
- name: Build Standalone Plugin
run: |
CCACHE_DIR="$(pwd)/.ccache" \
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler.{0}', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler.{0}', matrix.compiler)] }}) \
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler_gcc', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler_gxx', matrix.compiler)] }}) \
LLVM_BUILD_DIR="$(pwd)/llvm-build" \
MLIR_DIR="$(pwd)/llvm-build/lib/cmake/mlir" \
make plugin
Expand Down Expand Up @@ -635,8 +648,8 @@ jobs:

- name: Build Runtime test suite for OQC device
run: |
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler.{0}', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler.{0}', matrix.compiler)] }}) \
C_COMPILER=$(which ${{ needs.constants.outputs[format('c_compiler_gcc', matrix.compiler)] }}) \
CXX_COMPILER=$(which ${{ needs.constants.outputs[format('cxx_compiler_gxx', matrix.compiler)] }}) \
RT_BUILD_DIR="$(pwd)/runtime-build" \
make test-oqc

Expand All @@ -654,6 +667,10 @@ jobs:
sudo apt-get update
sudo apt-get -y -q install cmake ninja-build lcov
python3 -m pip install nanobind pybind11
sudo apt-get remove -y gcc g++
sudo apt-get install -y gcc-11 g++-11
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 10
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 10

- name: Install additional dependencies for OpenQasm device
run: |
Expand All @@ -675,11 +692,16 @@ jobs:
repository: llvm/llvm-project
ref: ${{ needs.constants.outputs.llvm_version }}
path: mlir/llvm-project

- name: Which gcc
run: |
gcc --version
g++ --version

- name: Run the main runtime test suite for coverage
run: |
C_COMPILER=$(which gcc) \
CXX_COMPILER=$(which g++) \
C_COMPILER="/usr/bin/gcc-11" \
CXX_COMPILER=/usr/bin/g++-11 \
COMPILER_LAUNCHER="" \
ENABLE_OQD=ON \
LLVM_DIR="$(pwd)/mlir/llvm-project" \
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/check-for-wheel-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,42 +9,42 @@

jobs:
check_if_required:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04

steps:
- name: Build is triggered from Pull Request
id: is_pr
run: echo "is_pr=${{ github.event_name == 'pull_request' }}" >> $GITHUB_OUTPUT

- name: Pull Request Build needs Wheel Builds to pass
id: needs_wheel_builds
if: steps.is_pr.outputs.is_pr == 'true'
run: echo "needs_wheel_builds=${{ contains(github.event.pull_request.labels.*.name, 'reviewer:require-wheels') }}" >> $GITHUB_OUTPUT

# If the trigger for this workflow (on pull_request) is a labelling event, then only build the wheels if the
# label being added is `author:build-wheels`. If the pull_request event is not a labelling event (eg: new commit is pushed)
# then build wheels as long as the `author:build-wheels` label is present
- name: Build Wheels for Pull Request
id: build_wheels
if: steps.is_pr.outputs.is_pr == 'true'
run: |
echo "build_wheels=${{
(github.event.action != 'labeled' && contains(github.event.pull_request.labels.*.name, 'author:build-wheels')) ||
github.event.label.name == 'author:build-wheels'
}}" >> $GITHUB_OUTPUT

# If a pr has the `reviewer:require-wheels` label, that means that the Workflows which build wheels need to successfully run against it
# However, the PR does not have the `author:build-wheels` label, meaning it is not ready for the wheel workflows to run against it yet.
# In that condition, this step will fail, causing the entire workflow to fail.
# And since this job is required to pass on all jobs, it will cause the merging of the pull request to be blocked.
- name: Fail for Pull Request that needs wheels built but does not have build-wheels label
if: steps.is_pr.outputs.is_pr == 'true' && steps.needs_wheel_builds.outputs.needs_wheel_builds == 'true' && steps.build_wheels.outputs.build_wheels == 'false'
run: |
echo ::error title=Failing for Pull Request that needs wheel builds with build-wheels label missing::This pull request requires the wheels to build successfully against it. Add the `author:build-wheels` label. && exit 1

outputs:
build-wheels: >-
${{
steps.is_pr.outputs.is_pr == 'false' ||
steps.build_wheels.outputs.build_wheels == 'true'
}}

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {}
4 changes: 2 additions & 2 deletions .github/workflows/check-formatting.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ concurrency:
jobs:
format-python:
name: Python Formatting & Linting
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04

steps:
- name: Install dependencies
Expand All @@ -31,7 +31,7 @@ jobs:

format-cpp:
name: C++ Formatting
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04

steps:
- name: Checkout code
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/check-jax-release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ concurrency:
jobs:
check-jax:
name: Build/Test Catalyst against JAX
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/check-pl-compat.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
check-config:
name: Build Configuration
needs: [constants]
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04

steps:
- name: Checkout Catalyst repo
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/constants.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,13 @@ on:
compilers:
description: "List of compilers to test Catalyst builds with."
value: ${{ jobs.set-constants.outputs.compilers }}
c_compiler.gcc:
c_compiler_gcc:
value: gcc
c_compiler.clang:
c_compiler_clang:
value: clang
cxx_compiler.gcc:
cxx_compiler_gxx:
value: g++
cxx_compiler.clang:
cxx_compiler_clang:
value: clang++

jobs:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/determine-workflow-runner.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
(
github.event_name == 'pull_request'
&& contains(github.event.pull_request.labels.*.name, 'urgent')
) && 'pl-4-core-large-runner' || 'ubuntu-22.04'
) && 'pl-4-core-large-runner' || 'ubuntu-24.04'
}}

outputs:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/notify-failed-jobs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,14 @@

jobs:
on-failure:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
if: github.event.workflow_run.conclusion == 'failure' || github.event.workflow_run.conclusion == 'timed_out'
steps:
- uses: ravsamhq/notify-slack-action@v2
with:
status: ${{ github.event.workflow_run.conclusion }}
notification_title: " ${{github.event.workflow_run.name}} - ${{github.event.workflow_run.conclusion}} on ${{github.event.workflow_run.head_branch}} - <${{github.server_url}}/${{github.repository}}/actions/runs/${{github.event.workflow_run.id}}|View Failure>"
message_format: ":fire: *${{github.event.workflow_run.name}}* ${{github.event.workflow_run.conclusion}} in <${{github.server_url}}/${{github.repository}}/tree/${{github.event.workflow_run.head_branch}}|${{github.repository}}>"
footer: "Linked Repo <${{github.server_url}}/${{github.repository}}|${{github.repository}}> | <${{github.server_url}}/${{github.repository}}/actions/runs/${{github.event.workflow_run.id}}|View Failure>"
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_NOTIFICATIONS_WEBHOOK_URL }}

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {}
2 changes: 1 addition & 1 deletion .github/workflows/rc_sync.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,67 +19,67 @@
# This workflow contains a single job to sync the main branch with changes from the rc
sync:
# The type of runner that the job will run on
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04

# Steps represent a sequence of tasks that will be executed as part of the job
steps:

# Checks-out the Catalyst repository
- uses: actions/checkout@v4
with:
fetch-depth: 0

# Import Numpy/Pybind11 because it is imported in setup.py
- name: Install Numpy and Pybind11
run: |
python -m pip install --upgrade pip
pip install numpy pybind11

# Check for the existence of an rc branch for the current Catalyst version
- name: Check for rc branch
run: |
VERSION=$(python setup.py --version)
IFS=. read MAJ MIN PAT <<< "${VERSION%.dev[0-9]*}"
RC_BRANCH="v${MAJ}.$((MIN-1)).${PAT}-rc"
if git ls-remote --exit-code origin "refs/heads/$RC_BRANCH"; then
echo "branch_exists=true" >> $GITHUB_ENV
echo "rc_branch=$RC_BRANCH" >> $GITHUB_ENV
else
echo "branch_exists=false" >> $GITHUB_ENV
fi
echo "new_changes=false" >> $GITHUB_ENV

# Create a new branch at from the current rc to be used in the PR
- name: Create temp branch
if: ${{ env.branch_exists == 'true' }}
run: |
git fetch
git checkout "${{ env.rc_branch }}"
BRANCH="rc_$(date +'%Y-%m-%d-%H-%M-%S')"
echo "tmp_branch=$BRANCH" >> $GITHUB_ENV
git checkout -b "$BRANCH"
# Exclude some files known to be divergent during the release process from the PR
git checkout origin/main -- frontend/catalyst/_version.py
git checkout origin/main -- doc/dev/release_notes.rst
git config user.name "GitHub Actions Bot"
git config user.email "<>"
git commit -m "exclude files from pr"
# check for new changes on the rc branch only, based on the diff between main and rc
if ! git diff origin/main HEAD --quiet -- $(git diff --name-only origin/main...HEAD); then
echo "new_changes=true" >> $GITHUB_ENV
git push --set-upstream origin "$BRANCH"
fi

# Create PR to main
- name: Create pull request
if: ${{ env.new_changes == 'true' }}
uses: repo-sync/pull-request@v2
with:
source_branch: "${{ env.tmp_branch }}"
destination_branch: "main"
github_token: "${{ secrets.GITHUB_TOKEN }}"
pr_title: "Daily rc sync to main"
pr_body: "Automatic sync from the release candidate to main during a feature freeze."
pr_allow_empty: false
pr_draft: false
pr_reviewer: "dime10,mehrdad2m"

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}
2 changes: 1 addition & 1 deletion .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ formats:

# Optionally set the build image
build:
os: ubuntu-22.04
os: ubuntu-24.04
tools:
python: "3.10"
apt_packages:
Expand Down
3 changes: 3 additions & 0 deletions mlir/cmake/modules/CatalystConfig.cmake.in
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@

# MLIR is needed for this setup to be usable.
find_package(MLIR REQUIRED CONFIG)
find_package(Python3 COMPONENTS Interpreter Development)
find_package(Python3 COMPONENTS Interpreter Development.Module REQUIRED)
find_package(Python3 REQUIRED COMPONENTS Development NumPy)

# Set variables needed by dependent projects.
set(CATALYST_BUILD_LIBRARY_DIR "@CATALYST_LIB_DIR@")
Expand Down
Loading