Skip to content

Changes for manuscript update. #24

Changes for manuscript update.

Changes for manuscript update. #24

Workflow file for this run

name: Build Weels
concurrency:
group: ${{ github.workflow }}-${{ github.event.number }}-${{ github.event.ref }}
cancel-in-progress: true
on:
push:
branches:
- main
paths-ignore:
- 'docs/**'
- 'notebooks/**'
- 'README.md'
- '.gitignore'
- '.github/workflows/Docs.yml'
- '.github/workflows/Publish.yml'
pull_request:
branches:
- main
paths-ignore:
- 'docs/**'
- 'notebooks/**'
- 'README.md'
- '.gitignore'
- '.github/workflows/Docs.yml'
- '.github/workflows/Publish.yml'
workflow_dispatch:
jobs:
build_sdist:
name: Build sdist
runs-on: ubuntu-20.04
outputs:
SDIST_NAME: ${{ steps.sdist.outputs.SDIST_NAME }}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- uses: actions/setup-python@v4
name: Install python
with:
python-version: 3.9
cache: 'pip'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install twine flake8 Cython
- name: Lint with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
- name: Build sdist
id: sdist
run: |
python setup.py sdist
python ci/export_sdist_name.py
- name: Check README rendering for PyPI
run: twine check dist/*
- name: Upload sdist result
uses: actions/upload-artifact@v3
with:
name: sdist
path: dist/*.tar.gz
if-no-files-found: error
build_wheels:
name: Build wheel for cp${{ matrix.python }}-${{ matrix.platform_id }}-${{ matrix.manylinux_image }}
needs: build_sdist
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- os: windows-latest
python: 39
platform_id: win_amd64
- os: windows-latest
python: 310
platform_id: win_amd64
- os: windows-latest
python: 311
platform_id: win_amd64
# Linux 64 bit manylinux2014
- os: ubuntu-latest
python: 39
platform_id: manylinux_x86_64
manylinux_image: manylinux2014
- os: ubuntu-latest
python: 310
platform_id: manylinux_x86_64
manylinux_image: manylinux2014
- os: ubuntu-latest
python: 311
platform_id: manylinux_x86_64
manylinux_image: manylinux2014
# MacOS x86_64
- os: macos-latest
python: 39
platform_id: macosx_x86_64
- os: macos-latest
python: 310
platform_id: macosx_x86_64
- os: macos-latest
python: 311
platform_id: macosx_x86_64
steps:
- name: Download sdist
uses: actions/download-artifact@v3
with:
name: sdist
path: dist/
- name: Build and Test wheels
uses: pypa/[email protected]
with:
package-dir: dist/${{ needs.build_sdist.outputs.SDIST_NAME }}
output-dir: wheelhouse
env:
CIBW_BUILD: cp${{ matrix.python }}-${{ matrix.platform_id }}
CIBW_ARCHS: all
CIBW_MANYLINUX_X86_64_IMAGE: ${{ matrix.manylinux_image }}
CIBW_MANYLINUX_I686_IMAGE: ${{ matrix.manylinux_image }}
CIBW_TEST_REQUIRES: pytest matplotlib pandas networkx
CIBW_TEST_COMMAND: pytest {package}/flasc/tests
CIBW_BUILD_VERBOSITY: 1
- name: Store artifacts
uses: actions/upload-artifact@v3
with:
name: wheels
path: wheelhouse/*.whl
if-no-files-found: error