-
Notifications
You must be signed in to change notification settings - Fork 20
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
Pin max versions of all major dependencies for future compatibility #462
Conversation
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.
Great, this should make things more stable in the longer term. But is there an easy way to test whether or not a newer version that specifies exist? Apart from checking each module individually...
Should we have an environment file with no max version pinned, to be run as tests occasionally?
Arf, segmentation faults are not nice... Is it related to this PR only?
Found the cause, |
Actually, I realized that the parsing of versions such as |
Made a mistake, mirroring the xDEM change in #458 instead. Doesn't change much, it's independent from the changes here. |
Looks like it's a dependency problem upstream from testing packages... |
Pinning max major version only for future compatibility when they release a new version, we shouldn't have to update the max versions very often (and when we do, our functionalities will very likely require updating too because of breaking changes of major versions, so it's beneficial in any case! 😄 ).
Fixing
pytest
to7.*
to avoid errors frompytest
extension packages (lazy fixtures).EDIT: The change below is done in #458
Also mirroring the script update in xDEM to parse package versions in CI to avoid failure in Windows and be more flexible in the future.
Reminder of the original reason we have to do all this: Unfortunately the Python version cannot be pinned easily when building a conda cached environment in CI from the command line options (and having a cache save us up to 15min of build time on Mac/Windows, so we keep that for sure!). To circumvent the issue, we need to re-create a temporary YAML file that pins the python version (previously done by parsing the YAML argument into command line, but failed on Windows for symbols such as
<
that we need to pin max versions).Resolves #426