Fix the logic of daily tests to ensure both variations of numpy are run #2136
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.
Daily tests, and specifically
daily-test-build-numpy.yml
, are a way to test TileDB-Py against different versions of numpy. Historically, the workflow checks TileDB-Py with the oldest and newest supported numpy versions.It turns out that the logic is not working as intended. As shown in the latest scheduled workflow, it appears that
ci3
, which usesdaily-test-build-numpy.yml
, only runs once for each Python version and operating system combination. There is no numpy dimension. This was discovered after #2127, which could have been prevented.It seems we have used the configuration expansion described here: https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#example-expanding-configurations. In practice, this adds an additional variable named
numpy-version
with just one of the specified values, but not all of them. I guess the selected one depends on the order of presence in the yaml file.This PR resolves the issue and includes all the variations we want to check in the strategy matrix making use of the exclude syntax, the only way I can think of without having to explicitly set every combination.
I know that the combinations are a lot and I'm, of course, open to reduce them, even if this workflow runs once per day.
Latest scheduled workflow: https://github.com/TileDB-Inc/TileDB-Py/actions/runs/12645542541
Workflow of this branch: https://github.com/TileDB-Inc/TileDB-Py/actions/runs/12657985171
[sc-61402]