Skip to content

Conversation

@michaeltryby
Copy link
Collaborator

This pull request updates the build and test workflows for the project to improve compatibility with newer Python versions and macOS, streamline artifact naming, and adjust architecture support. The most significant changes include updating GitHub Actions versions, expanding Python and architecture coverage, and setting the macOS deployment target for builds and tests.

Workflow and Compatibility Updates:

  • Upgraded GitHub Actions for checkout and Python setup to use actions/checkout@v5 and actions/setup-python@v5 for improved reliability and future compatibility.
  • Added support for Python 3.13 in the build matrix for both native and cross-platform wheel builds, and removed Python 3.8 from builds to align with current supported versions. [1] [2]
  • Expanded macOS wheel builds to include both x86_64 and arm64 architectures, improving support for Apple Silicon.
  • Set MACOSX_DEPLOYMENT_TARGET to "11.0" in both wheel build and unit test workflows to ensure compatibility with newer macOS environments. [1] [2]

Artifact and Build Process Improvements:

  • Standardized artifact naming for wheel uploads to include OS and Python version, making it easier to identify and retrieve build outputs. [1] [2] [3]
  • Removed explicit setting of CMAKE_OSX_DEPLOYMENT_TARGET in the macOS build configuration in setup.py, relying on environment variables instead for consistency across workflows.

Remove unnecessary echo command for PWD.
Removed step to get wheel filename and set a static name for the uploaded artifact.
Remove deployment target specification for macOS in setup.py.
Set MACOSX_DEPLOYMENT_TARGET environment variable for building wheel.
@michaeltryby michaeltryby self-assigned this Sep 1, 2025
@michaeltryby
Copy link
Collaborator Author

Work flow status: build wheels

@karosc
Copy link
Member

karosc commented Sep 1, 2025

@michaeltryby, the wheel is failing for cp313 on windows. I'm not sure why, the error is a complex one, but my first suggesting would be to update the test requirements so we don't build numpy from source for testing.

This should work

pytest == 8.4.1
numpy  == 2.0.2; python_version < "3.10"
numpy  == 2.2.6; python_version == "3.10.*"
numpy  == 2.3.2; python_version >= "3.11"
aenum  == 3.1.11

@michaeltryby
Copy link
Collaborator Author

Thanks @karosc that fixed the build!

@michaeltryby michaeltryby merged commit 7fab378 into dev Sep 1, 2025
27 checks passed
@michaeltryby michaeltryby deleted the dev-wheel-build branch September 1, 2025 15:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants