diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 465d6b0796..f750d15096 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -93,7 +93,9 @@ jobs: # typename T = lib::type_pack_element_t, # (3) Disable PyPy (manylinux image: yum repo issues) # https://github.com/pypa/manylinux/issues/899 - CIBW_SKIP: "*-win32 *-manylinux_i686 pp*-manylinux*" + # (4) musllinux: requires alternative to "yum" in library_builders.sh + # (5) CPython 3.10: requires 0.14.4+ (https://github.com/openPMD/openPMD-api/pull/1139) + CIBW_SKIP: "*-win32 *-manylinux_i686 pp*-manylinux* *-musllinux_* cp310-*" CIBW_ARCHS: "${{ matrix.arch }}" CIBW_PROJECT_REQUIRES_PYTHON: ">=3.6" # Install dependencies diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000000..50b60cdebf --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,40 @@ +# To use: +# +# pre-commit run -a +# +# Or: +# +# pre-commit install # (runs every time you commit in git) +# +# To update this file: +# +# pre-commit autoupdate +# +# See https://pre-commit.com for more information + +# See https://pre-commit.com/hooks.html for more hooks +repos: +- repo: https://github.com/pre-commit/pre-commit-hooks + rev: v2.4.0 + hooks: + - id: trailing-whitespace + args: [--markdown-linebreak-ext=md] + - id: end-of-file-fixer + - id: mixed-line-ending + - id: check-json + - id: check-toml + - id: check-yaml + - id: check-added-large-files +# - id: fix-encoding-pragma +# exclude: ^noxfile.py$ + +#- repo: https://github.com/asottile/pyupgrade +# rev: v2.29.0 +# hooks: +# - id: pyupgrade + +# Changes tabs to spaces +- repo: https://github.com/Lucas-C/pre-commit-hooks + rev: v1.1.10 + hooks: + - id: remove-tabs diff --git a/.travis.yml b/.travis.yml index 1b1fcb85f7..0cd684bb3e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -26,33 +26,46 @@ jobs: dist: focal env: - CIBW_BUILD="*_aarch64" - - CIBW_SKIP="cp38-* cp39-* pp36-* pp37-*" + - CIBW_SKIP="cp38-* cp39-* pp36-* pp37-* cp310-* *-musllinux_*" - services: docker arch: arm64 dist: focal env: - CIBW_BUILD="*_aarch64" - - CIBW_SKIP="cp36-* cp37-* pp36-* pp37-*" + - CIBW_SKIP="cp36-* cp37-* pp36-* pp37-* cp310-* *-musllinux_*" - services: docker arch: arm64 dist: focal env: - CIBW_BUILD="*_aarch64" - - CIBW_SKIP="cp38-* cp39-* cp36-* cp37-*" + - CIBW_SKIP="cp38-* cp39-* cp36-* cp37-* cp310-* *-musllinux_*" # perform a linux PPC64LE build - services: docker arch: ppc64le dist: focal env: - - CIBW_BUILD="*_ppc64le" - - CIBW_SKIP="cp38-* cp39-*" + - CIBW_BUILD="cp36-manylinux_ppc64le" - services: docker arch: ppc64le dist: focal env: - - CIBW_BUILD="*_ppc64le" - - CIBW_SKIP="cp36-* cp37-*" + - CIBW_BUILD="cp37-manylinux_ppc64le" + - services: docker + arch: ppc64le + dist: focal + env: + - CIBW_BUILD="cp38-manylinux_ppc64le" + - services: docker + arch: ppc64le + dist: focal + env: + - CIBW_BUILD="cp39-manylinux_ppc64le" +# - services: docker +# arch: ppc64le +# dist: focal +# env: +# - CIBW_BUILD="cp310-manylinux_ppc64le" # perform a linux S390X build # blocked by https://github.com/GTkorvo/dill/issues/15 @@ -71,7 +84,7 @@ jobs: install: - git clone --branch ${OPENPMD_GIT_REF} --depth 1 https://github.com/openPMD/openPMD-api.git src - cp library_builders.sh src/.github/ - - python3 -m pip install cibuildwheel==2.0.1 + - python3 -m pip install git+https://github.com/ax3l/cibuildwheel.git@fix-ppc64leNetworkTravis # twine & cryptography: see # https://github.com/scikit-build/cmake-python-distributions/blob/4730aeee240917303f293dffc89a8d8d5a4787c4/requirements-deploy.txt # https://github.com/pyca/cryptography/issues/6086 diff --git a/library_builders.bat b/library_builders.bat index 1ac68d6a23..039ecfab70 100644 --- a/library_builders.bat +++ b/library_builders.bat @@ -127,7 +127,7 @@ exit /b 0 -DBUILD_TESTING=OFF ^ -DBUILD_UTILITIES=OFF ^ -DZFP_WITH_OPENMP=OFF - + if errorlevel 1 exit 1 cmake --build build-zfp --parallel %CPU_COUNT%