Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Drop Python 3.6 and 3.7 support #4294

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

Closed
pekkaklarck opened this issue Apr 1, 2022 · 2 comments
Closed

Drop Python 3.6 and 3.7 support #4294

pekkaklarck opened this issue Apr 1, 2022 · 2 comments

Comments

@pekkaklarck
Copy link
Member

Python 3.6 reached end-of-life in December 2021. We don't yet have concrete estimation when RF 6.0 will be released, or even when the development starts, but my guesstimate is that it will happen earliest in early 2023. Supporting Python version that itself hasn't been supported for over a year doesn't make much sense for us at that point.

At the time of this writing, April 2022, about 15% of Robot Framework downloads still use Python 3.6, but I expect that number to decline pretty fast in the future. It could be that some Linux distributions still support Python 3.6 and have it as the default Python version, but even with them installing a newer Python ought to be pretty easy.

A concrete benefit of dropping Python 3.6 is that it allows us to use datetime.fromisoformat that would help with #4258. Other Python 3.7 features that would likely be useful are dataclasses and importlib.resources.

@pekkaklarck pekkaklarck added this to the v6.0 milestone Apr 1, 2022
pekkaklarck added a commit that referenced this issue Jan 6, 2023
GitHub Actions doesn't anymore support Python 3.6 on latest Ubuntu and
I doubt its well supported on Windows either. Easier to just remove it
from there than running it on some older Ubuntu version. We can just
run tests with it locally now and then until we drop Python 3.6
support ourselves (#4294).
@pekkaklarck pekkaklarck changed the title Drop Python 3.6 support Drop Python 3.6 and 3.7 support Feb 3, 2023
@pekkaklarck
Copy link
Member Author

pekkaklarck commented Feb 3, 2023

Python 3.7 will reach its end-of-life in June 2023 and it's clear RF 7.0 won't be released before that. We can thus remove support of both Python 3.6 and Python 3.7 in RF 7.0.

The main reason we have supported Python 3.6 quite long after its end-of-life in December 2021 is that it is the default Python version in RHEL 8 that is supported until May 2029. RHEL 9 uses Python 3.9 by default and with newer RHEL versions upgrading Python ought to be easier as well. It's unlikely that other long-term support Linux distributions would use Python 3.7 by default and removing its support as soon as it's not officially supported ought to be fine.

@pekkaklarck
Copy link
Member Author

Commit b092961 made Python 3.8 the minimum version and removed code supporting older versions. Some compatibility code may have been left behind, but it can be removed when encountered.

The main thing that hasn't been done is updating documentation. I have already updated the User Guide locally, but we also need to update README.rst and INSTALL.rst. A problem with them is that changes would be visible on the GitHub project pages immediately and RF 7 isn't actually available until at the end of the year. Probably best to leave them as they are now and update them when we the first release candidate is out. That means we cannot close this issue until that either.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant