Skip to content

Commit

Permalink
Merge pull request #211 from GeoStat-Framework/CIBW_update
Browse files Browse the repository at this point in the history
CIBW: add support for py3.10 and Apple Silicon; use CIBWv2
  • Loading branch information
MuellerSeb authored Nov 23, 2021
2 parents ce978b8 + c5e8ff1 commit d8941c2
Show file tree
Hide file tree
Showing 4 changed files with 43 additions and 10 deletions.
21 changes: 13 additions & 8 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,24 +46,29 @@ jobs:
python -m isort --check --diff --color .
build_wheels:
name: wheels on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
name: wheels for ${{ matrix.cfg.os }} / ${{ matrix.cfg.arch }}
runs-on: ${{ matrix.cfg.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
cfg:
- { os: ubuntu-latest, arch: x86_64 }
- { os: ubuntu-latest, arch: i686 }
- { os: windows-latest, arch: AMD64 }
- { os: windows-latest, arch: x86 }
- { os: macos-latest, arch: x86_64 }
- { os: macos-latest, arch: arm64 }
- { os: macos-latest, arch: universal2 }

steps:
- uses: actions/checkout@v2
with:
fetch-depth: '0'

- name: Build wheels
uses: pypa/cibuildwheel@v1.11.1.post1
uses: pypa/cibuildwheel@v2.2.2
env:
CIBW_BUILD: cp36-* cp37-* cp38-* cp39-*
CIBW_TEST_EXTRAS: test
CIBW_TEST_COMMAND: pytest -v {project}/tests
CIBW_ARCHS: ${{ matrix.cfg.arch }}
with:
output-dir: dist

Expand All @@ -78,7 +83,7 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
python-version: [3.6, 3.7, 3.8, 3.9]
python-version: ['3.6', '3.7', '3.8', '3.9', '3.10']

steps:
- uses: actions/checkout@v2
Expand Down
7 changes: 5 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,12 @@
All notable changes to **GSTools** will be documented in this file.


## [1.3.4] - Pure Pink ?
## [1.3.4] - Pure Pink - 2021-11

### Enhancements
- add GStools-Core as optional dependency [#215](https://github.com/GeoStat-Framework/GSTools/pull/215)
- provide wheels for Python 3.10 [#211](https://github.com/GeoStat-Framework/GSTools/pull/211)
- provide macOS wheels for Apple Silicon [#211](https://github.com/GeoStat-Framework/GSTools/pull/211)

### Changes
- remove unnecessary `dim` argument in Cython code [#216](https://github.com/GeoStat-Framework/GSTools/issues/216)
Expand Down Expand Up @@ -319,7 +321,8 @@ See: [#197](https://github.com/GeoStat-Framework/GSTools/issues/197)
First release of GSTools.


[Unreleased]: https://github.com/GeoStat-Framework/gstools/compare/v1.3.3...HEAD
[Unreleased]: https://github.com/GeoStat-Framework/gstools/compare/v1.3.4...HEAD
[1.3.4]: https://github.com/GeoStat-Framework/gstools/compare/v1.3.3...v1.3.4
[1.3.3]: https://github.com/GeoStat-Framework/gstools/compare/v1.3.2...v1.3.3
[1.3.2]: https://github.com/GeoStat-Framework/gstools/compare/v1.3.1...v1.3.2
[1.3.1]: https://github.com/GeoStat-Framework/gstools/compare/v1.3.0...v1.3.1
Expand Down
16 changes: 16 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -68,3 +68,19 @@ target-version = [
max-statements = 80
max-attributes = 25
max-public-methods = 75

[tool.cibuildwheel]
# Switch to using build
build-frontend = "build"
# Disable building PyPy wheels on all platforms, 32bit for py3.10 and musllinux builds
skip = "pp* cp310-win32 cp310-manylinux_i686 *-musllinux_*"
# Run the package tests using `pytest`
test-extras = "test"
test-command = "pytest -v {package}/tests"
# Skip trying to test arm64 builds on Intel Macs
test-skip = "*-macosx_arm64 *-macosx_universal2:arm64"

[[tool.cibuildwheel.overrides]]
# use manylinux2014 for py3.10
select = "cp310-*"
manylinux-x86_64-image = "manylinux2014"
9 changes: 9 additions & 0 deletions setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -16,19 +16,28 @@ classifiers =
Intended Audience :: Developers
Intended Audience :: End Users/Desktop
Intended Audience :: Science/Research
Intended Audience :: Education
License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)
Natural Language :: English
Operating System :: Unix
Operating System :: Microsoft
Operating System :: MacOS
Programming Language :: Python
Programming Language :: Python :: 3
Programming Language :: Python :: 3 :: Only
Programming Language :: Python :: 3.6
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9
Programming Language :: Python :: 3.10
Topic :: Scientific/Engineering
Topic :: Scientific/Engineering :: GIS
Topic :: Scientific/Engineering :: Hydrology
Topic :: Scientific/Engineering :: Mathematics
Topic :: Scientific/Engineering :: Physics
Topic :: Utilities
project_urls =
Homepage = https://geostat-framework.org/#gstools
Documentation = https://gstools.readthedocs.io
Source = https://github.com/GeoStat-Framework/GSTools
Tracker = https://github.com/GeoStat-Framework/GSTools/issues
Expand Down

0 comments on commit d8941c2

Please sign in to comment.