Skip to content

Merge pull request #11 from MaxBo/feature/numpy2.0 #27

Merge pull request #11 from MaxBo/feature/numpy2.0

Merge pull request #11 from MaxBo/feature/numpy2.0 #27

Workflow file for this run

name: Build Cythonarrays for Linux
on:
pull_request:
branches:
- master
push:
branches:
- master
tags:
- v[0-9].[0-9]+.[0-9]+
jobs:
build-linux:
runs-on: ubuntu-latest
strategy:
max-parallel: 5
matrix:
python-version: [3.9, '3.10', '3.11', '3.12']
steps:
- uses: actions/checkout@v4
- name: Setup base conda for Python 3.11
uses: s-weigand/setup-conda@v1
with:
update-conda: true
python-version: 3.11
conda-channels: MaxBo, conda-forge, defaults
- name: Install dependencies and set channels
run: |
conda install conda-build conda-verify anaconda-client twine readme_renderer
conda create -q -n test-environment python=${{ matrix.python-version }} numpy pytest-cov build
- name: Build wheel and run tests for cythonarrays
run: |
(
eval "$($CONDA_EXE shell.bash activate test-environment)"
which python
cd cythonarrays
pip install -r requirements.txt
pip install .
python -m pytest --pyargs cythonarrays
python -m build -n .
echo "### All tests with pip passed! :rocket:" >> $GITHUB_STEP_SUMMARY
)
- name: Create Docs
if: ${{ matrix.python-version == '3.12' }}
run: |
eval "$($CONDA_EXE shell.bash activate test-environment)"
which python
cd cythonarrays
pip install sphinx sphinxcontrib-napoleon sphinx-autodoc-typehints 'mistune<2' m2r2 'docutils<0.20' pytest
sphinx-apidoc -f --separate -o docs_rst/cythonarrays src/cythonarrays
sphinx-build docs_rst ../docs
- name: Build and test cythonarrays
run: |
export TMPDIR=${{ runner.TEMP }}
export CONDA_BLD_PATH=$TMPDIR
conda build --python ${{ matrix.python-version }} cythonarrays/conda.recipe
- name: Deploy Docs to gh-pages
if: ${{ matrix.python-version == '3.12' && github.ref == 'refs/heads/master' }}
uses: JamesIves/github-pages-deploy-action@v4
with:
branch: gh-pages # The branch the action should deploy to.
folder: docs # The folder the action should deploy.
- name: Upload files for cythonarrays
env:
ANACONDA_TOKEN: ${{ secrets.ANACONDA_GITHUBACTION_TOKEN }}
ANACONDA_USERNAME: MaxBo
CONDA_BLD_PATH: ${{ runner.TEMP }}
run: |
/usr/share/miniconda/bin/conda shell.bash activate test-environment
export PATH=$HOME/.local/bin:$PATH
anaconda -t $ANACONDA_TOKEN upload --skip-existing --user $ANACONDA_USERNAME $CONDA_BLD_PATH/linux-64/cythonarrays-*.tar.bz2