-
-
Notifications
You must be signed in to change notification settings - Fork 305
Description
Your question:
CFEP-25 introduced python_min
and decided to use that version for testing:
test:
requires:
- python {{ python_min }}
The rationale being:
While noarch: python packages may be incompatible with either newer or older Python versions, we judged that testing against the oldest Python version would catch more issues than the other way around.
With conda-build
, one version had to be chosen to run the tests.
With the v1 recipe format, python import can be tested with different python versions (python_version
accepts a list).
tests:
- python:
python_version:
- ${{ python_min }}.*
- 3.*
I started to use this pattern when converting my recipes to the new format.
But that raised some questions when I submitted a new recipe to staged-recipes.
I believe that testing against the latest python is important and can catch some issues:
- the upstream package might be incompatible and has put an upper-bound -> this has to be reflected in the feedstock
- a dependency might not be compatible - could be not actively maintained or maybe not updated yet on conda-forge -> if it can't be updated, we might have to patch the repodata
Doing a search on conda-forge, it seems that several people started using this pattern: https://github.com/search?q=org%3Aconda-forge+%22-+%24%7B%7B+python_min+%7D%7D%22&type=code
What is the general opinion about testing an upper bound as well?
- Testing on an additional python version isn't a good use of CI time?
- Should this be let to the feedstock maintainer to decide?
- Should it be encouraged?
In any case, it would be good to update the documentation with the community agreement.