-
Notifications
You must be signed in to change notification settings - Fork 39
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
Suported Python versions duration? #409
Comments
We try to be very liberal with That said, we offer AppImage that people on GNU/Linux can use, and the reana-client-go might be available in the next months too (basically only So if the Yadage version upgrade is desired, then we can certainly work on that, and bump the Python version minimal dependency, since we have offer other means for people with old systems to keep things still working. BTW, we should also look at the cluster side whether some Yadage internals used by REANA might have changed in order to estimate any necessary changes for the reana-workflow-engine-yadage component. I assume that the new Yadage version runs well all the past Yadage workflow specs? |
I definitley understand the motivation here and applaud the commitmnent to supporting users that the REANA team provides. Trying to support as many possible Python versions as possible while also placing upper bounds on dependencies though means that dependencies that take an alternative approach of intentionally dropping EOL Pythons to provide better support for supported Python versions (and then going back and making patch releases for the EOL Python series of releases as necessary) can't get any new releases in without breaking the EOL Python versions. To be fully clear, the new Line 35 in 0fa088a
and
Good point. This should be checked. The good news is that basically the only change between |
Good, so if Yadage 20 and 21 are pretty much nicely compatible internally, then we could do something like:
Would this address what you are looking for? I can test locally whether this would work fine, both client-wise and cluster-wise. P.S. Note that I'd like to keep some upper pins for Yadage dependencies in order to the respect the semantic versioning; the detailed pins are there only because it happened that a past minor upgrade broke stuff. However, if you plan to keep the backwards compatibility for any future Yadage 21.x minor release, then the above setup would give enough freedom already, since it would automatically trust and install any latest Yadage 21 minor release there is on PyPI. And when you make a new major Yadage 22 release one day, with possible breaking changes, we would explicitly test for any incompatible internals that r-w-e-yadage might be using inside REANA, and allow the new version only when everything works well. WDYT? |
I tried the above approach and unfortunately the Yadage 0.21.0 does not work on the server-side; I'm seeing publisher-related problems:
This is exactly the same problem as in reanahub/reana-workflow-engine-yadage#222 which apparently depends on yadage/yadage#116 which is still open? So we may need to stick to using Yadage 0.20.1 on the server-side until this is fully investigated... |
Hello. The CWL reference runner also dropped support for Python 3.6 & Python 3.7 this year. Would you accept a PR to enable a later version of |
@matthewfeickert @mr-c We plan to start dropping support for both Python 3.6 and 3.7 as part of working on the forthcoming REANA release series (0.95). @matthewfeickert I hope it is OK to drop support for 3.7 also on the client side? @mr-c Once we have done that, we could look into upgrading the |
@tiborsimko That's great! I've been trying to keep RECAST following the Python EOL schedule and only supporting Pythons that are not EOL. Most ATLAS users are on Python 3.8 or Python 3.9 at the oldest (most are working on Python 3.10+). $ eol python
┌───────┬────────────┬─────────┬────────────────┬────────────┬────────────┐
│ cycle │ release │ latest │ latest release │ support │ eol │
├───────┼────────────┼─────────┼────────────────┼────────────┼────────────┤
│ 3.12 │ 2023-10-02 │ 3.12.2 │ 2024-02-06 │ 2025-04-02 │ 2028-10-31 │
│ 3.11 │ 2022-10-24 │ 3.11.8 │ 2024-02-06 │ 2024-04-01 │ 2027-10-31 │
│ 3.10 │ 2021-10-04 │ 3.10.14 │ 2024-03-19 │ 2023-04-05 │ 2026-10-31 │
│ 3.9 │ 2020-10-05 │ 3.9.19 │ 2024-03-19 │ 2022-05-17 │ 2025-10-31 │
│ 3.8 │ 2019-10-14 │ 3.8.19 │ 2024-03-19 │ 2021-05-03 │ 2024-10-31 │
│ 3.7 │ 2018-06-26 │ 3.7.17 │ 2023-06-05 │ 2020-06-27 │ 2023-06-27 │
│ 3.6 │ 2016-12-22 │ 3.6.15 │ 2021-09-03 │ 2018-12-24 │ 2021-12-23 │
│ 3.5 │ 2015-09-12 │ 3.5.10 │ 2020-09-05 │ False │ 2020-09-30 │
│ 3.4 │ 2014-03-15 │ 3.4.10 │ 2019-03-18 │ False │ 2019-03-18 │
│ 3.3 │ 2012-09-29 │ 3.3.7 │ 2017-09-19 │ False │ 2017-09-29 │
│ 3.2 │ 2011-02-20 │ 3.2.6 │ 2014-10-12 │ False │ 2016-02-20 │
│ 3.1 │ 2009-06-26 │ 3.1.5 │ 2012-04-06 │ False │ 2012-04-09 │
│ 3.0 │ 2008-12-03 │ 3.0.1 │ 2009-02-12 │ False │ 2009-06-27 │
│ 2.7 │ 2010-07-03 │ 2.7.18 │ 2020-04-19 │ False │ 2020-01-01 │
│ 2.6 │ 2008-10-01 │ 2.6.9 │ 2013-10-29 │ False │ 2013-10-29 │
└───────┴────────────┴─────────┴────────────────┴────────────┴────────────┘ |
👋 Hi. I'd like to bump the
yadage
versionreana-commons/setup.py
Line 35 in 0fa088a
to
v0.21.0
so that it enforces a new lower bound onpacktivity
that properly handlesjqlang
v1.6
andv1.7
(c.f. yadage/yadage#132). However,yadage
v0.21.0
is Python 3.8+ now that Python 3.7 is officially EOL, butreana-commons
still supports Python 3.6reana-commons/setup.py
Line 95 in 0fa088a
reana-commons/.github/workflows/ci.yml
Lines 119 to 120 in 0fa088a
I think from discussions in the past that
reana
tries to support EOL Python for some time given operations requirements (maybe I have this wrong?), but do you have a projected timeline on when a dependency with arequires-python
of>=3.8
could be used?The text was updated successfully, but these errors were encountered: