-
-
Notifications
You must be signed in to change notification settings - Fork 487
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
BLD: Test editable installations for PyWavelets in CI #702
BLD: Test editable installations for PyWavelets in CI #702
Conversation
Thanks! I'll get your other PR merged first, since there is some overlap. And then you can rebase this on top (CI will also run automatically once you have a PR merged). |
f5f14d1
to
559ef3c
Compare
Thanks! I rebased on top of the changes from the previous PR. The failure is expected, of course. |
1f97532
to
a4996fb
Compare
6a0a43b
to
d06f627
Compare
With Edit: put out a request for review, didn't realise I forgot to do that :) |
From the workflow run: https://github.com/PyWavelets/pywt/actions/runs/8723177022/job/23930800559?pr=702#step:4:446 this line shows that the wheel being built is an editable one, but the wheel does not have the |
Agreed, a single job is fine. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks pretty good, only two minor comments.
This commit performs the following changes: 1. Adds a concurrency key to reduce duplicate runs 2. Moves common environment variables outside of individual jobs and into the workflow context for Linux and macOS 3. Adds an extra option to run an editable installation of PyWavelets under the `--no-build-isolation` flag with all of the build-time dependencies installed beforehand, ignoring previous installations as necessary. The `pytest --pyargs pywt` invocation is used to run the test suite against the editable installation which is similar to the rest of the checks.
Since the mechanism for editable installations was improved in mesonbuild/meson-python#569 and subsequently released in meson-python v0.16.0, this bumps the minimum version for it for use during compilation.
d06f627
to
ae5de42
Compare
Thank you for the review, @rgommers! I have addressed all requested changes and rebased (only because they were minor). Let's hope that CI passes as usual. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM now, in it goes. Thanks @agriyakhetarpal, nice work!
Closes #700. This PR introduces a flag in the Linux matrix setup to run an editable installation of PyWavelets and run the test suite with
pytest
.I can rebase this branch and revisit this PR after mesonbuild/meson-python#569 is merged and
meson-python==0.16.0
is out on PyPI – it shall fix the failing test as noted in #700 (comment).