Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 31 additions & 10 deletions .github/workflows/build_wheels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,28 +6,32 @@ on:
env:
BUILD_TYPE: Release
MIN_CIBUILDWHEEL_VERSION: 2.16.2
PYTHON_VERSION: 3.x

jobs:
build_sdist:
name: Source distribution
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
name: Install Python
with:
python-version: '3.x'
python-version: ${{ env.PYTHON_VERSION }}

- name: Install build package
run: python -m pip install build --user

- name: Build sdist
run: python -m build --sdist --outdir dist

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: sdist
path: dist/*.tar.gz
compression-level: 0 # contents are already compressed


build_wheels:
name: ${{ matrix.config.name }}
Expand Down Expand Up @@ -69,16 +73,16 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Set up Python 3.x
uses: actions/setup-python@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.x'
python-version: ${{ env.PYTHON_VERSION }}

- name: Set up QEMU for linux/arm64 builds
if: runner.os == 'Linux' && matrix.config.use-qemu == true
uses: docker/setup-qemu-action@v2
uses: docker/setup-qemu-action@v3
with:
platforms: arm64

Expand All @@ -88,8 +92,25 @@ jobs:
- name: Build wheels
run: python -m cibuildwheel --output-dir dist
env:
CIBW_ENVIRONMENT_MACOS: CMAKE_OSX_ARCHITECTURES=${{ matrix.config.cibw-arch == 'macosx_x86_64' && 'x86_64' || matrix.config.cibw-arch == 'macosx_arm64' && 'arm64' || '' }}
CIBW_BUILD: "*-${{ matrix.config.cibw-arch }}"
MACOSX_DEPLOYMENT_TARGET: "10.14" # min supporting c++17

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: wheels-${{ matrix.config.os }}-${{ matrix.config.cibw-arch }}
path: ./dist/*.whl
compression-level: 0 # contents are already compressed


aggregate_artifacts:
name: Aggregate artifacts
runs-on: ubuntu-latest
needs: [build_sdist, build_wheels]
steps:
- name: Merge Artifacts
uses: actions/upload-artifact/merge@v4
with:
name: python_wheels
compression-level: 0
delete-merged: true
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,9 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Set up Python 3.x
uses: actions/setup-python@v4
uses: actions/setup-python@v5
# 3.x uses the latest minor version of python3. This may break briefly when there is a new version
# but dependent libraries (e.g. numpy) have not yet released a compatible update.
# May need to enable version pinning (e.g. 3.10) temporarily at times.
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/sphinx.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Install Python
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Install Datasketches and Sphinx
Expand Down
3 changes: 0 additions & 3 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,3 @@ before-build = "yum remove -y cmake"

[tool.cibuildwheel.macos]
archs = ["x86_64", "arm64"]

# Minimum version for proper C++17 support on MacOS
environment = { MACOSX_DEPLOYMENT_TARGET = "10.14" }
2 changes: 1 addition & 1 deletion version.cfg.in
Original file line number Diff line number Diff line change
@@ -1 +1 @@
5.0.0
5.0.1