You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Verify the published wheel for Python 3.13 is functional (installs and imports).
Non-compliant requirements:
Provide a pre-compiled wheel for Python 3.13 along with other supported versions.
Requires further human verification:
Confirm that the CI artifacts actually include a Python 3.13 wheel for all target platforms beyond Linux and that it is uploaded to the GitHub Release/PyPI.
The install step uses a filename pattern mach_beamform-*.whl while the PyPI smoke test references mach-beamform as the package name. Confirm the artifact naming and distribution name align to avoid test/install failures.
Tests only run on ubuntu-22.04; if wheels are built for multiple platforms, consider adding at least one macOS and Windows smoke import to catch platform-specific issues.
The smoke_test job runs after publishing to PyPI, which means a failing test indicates a broken package is already public. It is recommended to adopt a safer strategy by publishing to TestPyPI first, running tests, and then publishing to the official PyPI registry upon success.
jobs:
test_wheels:
needs: [build_wheels]# ... tests local wheel files ...upload_all:
needs: [test_wheels]if: is_releasesteps:
- name: Publish to PyPIrun: uv publishsmoke_test:
needs: [upload_all]# ... tests by installing from the live PyPI registry ...
After:
jobs:
# ... test_wheels job ...publish_to_testpypi:
needs: [test_wheels]if: is_releasesteps:
- name: Publish to TestPyPI# ... configuration to publish to test.pypi.org ...smoke_test_from_testpypi:
needs: [publish_to_testpypi]# ... tests by installing from TestPyPI ...publish_to_pypi:
needs: [smoke_test_from_testpypi]if: is_releasesteps:
- name: Publish to PyPIrun: uv publish
Suggestion importance[1-10]: 9
__
Why: The suggestion correctly identifies a significant flaw in the release process where the smoke_test job runs after publishing, meaning a broken package could be released, and proposes a much safer industry-standard deployment strategy.
High
Possible issue
✅ Fix wheel installation by selecting versionSuggestion Impact:The pip install command was changed to compute the matrix Python version without dots and install the matching cp-tagged wheel, preventing incompatible wheel installs.
Modify the pip install command to select the correct wheel file corresponding to the Python version in the test matrix, preventing installation failures from incompatible wheels.
Why: The suggestion correctly identifies a critical bug in the test_wheels job where using a broad glob * would cause pip to fail by trying to install wheels for all Python versions, and the proposed fix correctly filters for the specific wheel.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
#51
Introduction
Want to avoid publishing wheels that don't install well
Changes
numpy, due to implicit dependency onnumpypatrick-kidger/jaxtyping#360Behavior
Should run on CI
Review checklist