Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 1 addition & 1 deletion .github/workflows/cibuildwheel-impl/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ runs:
using: "composite"
steps:
- name: Build wheel
uses: pypa/cibuildwheel@v3.0.1
uses: pypa/cibuildwheel@v3.4.1
env:
CIBW_BUILD: ${{ inputs.build-tag }}

Expand Down
35 changes: 29 additions & 6 deletions .github/workflows/python_wheel_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@
on:
workflow_dispatch:
inputs:
branch:
description: 'The branch for which the Python wheel has to be generated'
ref:
description: 'The git ref to build the wheel from (branch, tag, or commit SHA).'
type: string
required: true
default: "master"
default: ''
schedule:
- cron: '01 1 * * *'
pull_request:
Expand All @@ -28,10 +28,12 @@
strategy:
fail-fast: false
matrix:
target: [cp310-manylinux_x86_64, cp311-manylinux_x86_64, cp312-manylinux_x86_64, cp313-manylinux_x86_64]
target: [cp310-manylinux_x86_64, cp311-manylinux_x86_64, cp312-manylinux_x86_64, cp313-manylinux_x86_64, cp314-manylinux_x86_64]
name: ${{ matrix.target }}
steps:
- uses: actions/checkout@v6
with:
ref: ${{ github.event.inputs.ref }}
- uses: ./.github/workflows/cibuildwheel-impl
with:
build-tag: ${{ matrix.target }}
Expand All @@ -42,11 +44,12 @@
strategy:
fail-fast: false
matrix:
python-version: ["3.10", "3.11", "3.12", "3.13"]
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
name: test-wheel-cp${{ matrix.python-version }}
steps:
- uses: actions/checkout@v6

with:
ref: ${{ github.event.inputs.ref }}
- name: Download produced wheels
uses: actions/download-artifact@v4
with:
Expand All @@ -59,7 +62,7 @@
python-version: ${{ matrix.python-version }}

- name: Install produced wheel
run: |

Check failure on line 65 in .github/workflows/python_wheel_build.yml

View workflow job for this annotation

GitHub Actions / lint-action-files

shellcheck reported issue in this script: SC2012:info:3:9: Use find instead of ls to better handle non-alphanumeric filenames
ls -R wheels
PY_VER=$(python -c "import sys; print(f'cp{sys.version_info.major}{sys.version_info.minor}')")
WHEEL=$(ls wheels/*${PY_VER}*.whl | head -n 1)
Expand Down Expand Up @@ -92,7 +95,7 @@
uses: actions/setup-python@v5

- name: Create PEP503-compliant wheel registry
run: |

Check failure on line 98 in .github/workflows/python_wheel_build.yml

View workflow job for this annotation

GitHub Actions / lint-action-files

shellcheck reported issue in this script: SC2035:info:2:4: Use ./*glob* or -- *glob* so names with dashes won't become options
mkdir -p wheelhouse
mv *.whl wheelhouse
python -m pip install --upgrade pip
Expand Down Expand Up @@ -121,3 +124,23 @@
kinit -p ${{ secrets.KRB5USER }}@${{ secrets.KRB5REALM }} -kt ${KT_FILE_NAME}
echo +++ Running the copy
xrdcp --parallel ${NFILES} -rf wheelhouse/* ${EOS_ENDPOINT}/${EOS_PATH}/

publish-to-pypi:
if: github.event_name == 'workflow_dispatch'
needs: build-wheels
runs-on: ubuntu-latest
name: >-
Publish Python distribution to PyPI
environment:
name: pypi
url: https://pypi.org/p/root
permissions:
id-token: write
steps:
- name: Download produced wheels
uses: actions/download-artifact@v4
with:
merge-multiple: true
path: dist/
- name: Publish distribution to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
6 changes: 3 additions & 3 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@ requires = ["cmake", "setuptools<72", "wheel", "numpy"]

[project]
name = "ROOT"
version = "0.1a9"
requires-python = ">=3.9"
version = "0.1a12"
requires-python = ">=3.10"
maintainers = [
{name = "Vincenzo Eduardo Padulano", email = "vincenzo.eduardo.padulano@cern.ch"}
]
description = "An open-source data analysis framework used by high energy physics and others."
description = "Analyzing petabytes of data, scientifically."
readme = "README.md"
license = {file = "LICENSE"}
dependencies = [
Expand Down
Loading