Skip to content

Merge pull request #295 from t20100/add-blosc2-plugins #528

Merge pull request #295 from t20100/add-blosc2-plugins

Merge pull request #295 from t20100/add-blosc2-plugins #528

Workflow file for this run

# This is a basic workflow to help you get started with Actions
name: CI
# Controls when the action will run.
on:
# Triggers the workflow on push or pull request events but only for the main branch
push:
branches: [ main ]
pull_request:
branches: [ main ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
name: "Python ${{ matrix.python-version }} on ${{ matrix.os }} ${{ matrix.name-suffix }}"
runs-on: ${{ matrix.os }}
strategy:
# do not cancel tests after first fail
fail-fast: false
matrix:
include:
- name-suffix: "bdist_wheel-h5py_2.8.0"
os: ubuntu-latest
python-version: '3.7'
BUILD_COMMAND: bdist_wheel
H5PY_OLDER_VERSION: 2.8.0
- name-suffix: "sdist-h5py_2.10.0"
os: ubuntu-latest
python-version: '3.8'
BUILD_COMMAND: sdist
H5PY_OLDER_VERSION: 2.10.0
NUMPY_OLDER_VERSION: 1.23.5
- name-suffix: "bdist_wheel-h5py_3.8.0"
os: ubuntu-latest
python-version: '3.10.8'
BUILD_COMMAND: bdist_wheel
H5PY_OLDER_VERSION: 3.8.0
- name-suffix: "bdist_wheel-h5py_2.10.0"
os: macos-latest
python-version: '3.7.16'
BUILD_COMMAND: bdist_wheel
H5PY_OLDER_VERSION: 2.10.0
env:
MACOSX_DEPLOYMENT_TARGET: 10.15
- name-suffix: "bdist_wheel-h5py_3.8.0"
os: macos-latest
python-version: '3.10.8'
BUILD_COMMAND: bdist_wheel
H5PY_OLDER_VERSION: 3.8.0
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4
with:
fetch-depth: 0
# Runs a single command using the runners shell
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
# Display the python version
- name: Display Python version
run:
python -c "import sys; print(sys.version)"
- name: Upgrade distribution modules
run: |
python -m pip install --upgrade pip
pip install --upgrade setuptools
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
- name: Install build dependencies
run: |
pip install --upgrade wheel
pip install --upgrade numpy
- name: Install h5py for tests
run: |
pip install --pre h5py
- name: Generate source package or wheel
run: |
python setup.py ${{ matrix.BUILD_COMMAND }}
ls dist
- name: Install from source package
run: |
pip install --pre "$(ls dist/hdf5plugin-*)[test]" --only-binary blosc2 || pip install --pre dist/hdf5plugin-*
- name: Print python info
run: |
python ./ci/info_platform.py
pip list
- name: Run the tests with latest h5py
run:
python test/test.py
- name: Run the tests with oldest available wheel of h5py
run: |
if [ -n "${{ matrix.NUMPY_OLDER_VERSION }}" ]; then
pip install --upgrade numpy==${{ matrix.NUMPY_OLDER_VERSION }};
fi
pip install --upgrade h5py==${{ matrix.H5PY_OLDER_VERSION }}
pip list
python test/test.py
build_wheels_macos:
name: Build ARM64 wheels on macos-11
runs-on: macos-11
steps:
- uses: actions/checkout@v2
- name: Build wheels
uses: pypa/[email protected]
env:
CIBW_BUILD: cp39-macosx_*
CIBW_ARCHS_MACOS: arm64
HDF5PLUGIN_SSE2: False
HDF5PLUGIN_SSSE3: False
HDF5PLUGIN_AVX2: False
HDF5PLUGIN_AVX512: False
HDF5PLUGIN_NATIVE: False