Skip to content
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

CONTRIBUTING.md should say that Python 3.8 is required #6458

Open
Chovin opened this issue Oct 1, 2024 · 1 comment
Open

CONTRIBUTING.md should say that Python 3.8 is required #6458

Chovin opened this issue Oct 1, 2024 · 1 comment
Labels
Good First Issue Good for beginners to the project. Status: PRs Welcome No one is currently assigned to this issue, but we'd be grateful if anyone made a PR. Type: Enhancement Something meant to enhance existing Red features.

Comments

@Chovin
Copy link

Chovin commented Oct 1, 2024

What component of Red (cog, command, API) would you like to see improvements on?

CONTRIBUTING.md

Describe the enhancement you're suggesting.

Currently CONTRIBUTING.md says that 3.8 or greater is needed, but when running make newenv with Python 3.12 installed, this error appears

python3.8 -m venv --clear .venv
make: python3.8: No such file or directory
make: *** [newenv] Error 1

apparently the CONTRIBUTING.md should be 3.8, not 3.8 or greater: convo

Anything else?

No response

@Chovin Chovin added the Type: Enhancement Something meant to enhance existing Red features. label Oct 1, 2024
@github-actions github-actions bot added the Status: Needs Triage This has not been labeled or discussed for handling yet. label Oct 1, 2024
@Flame442
Copy link
Member

Flame442 commented Oct 24, 2024

apparently the CONTRIBUTING.md should be 3.8, not 3.8 or greater

For the majority of changes, the particular version used will not make a difference, as most changes will work regardless of (supported) version. The main thing we run into sometimes is newer type hinting syntaxes only supported on later versions of Python. Changes you make must work on all supported Python versions, so the most correct answer would be to test on all of them. But that is unrealistic, and the CI logic handles a good chunk of that by running Red on each supported version. It is more likely to mistakenly try to use something from a newer Python version than it is to add something that is too old (if you use the most updated version of docs possible regardless), so developing on the oldest version supported is the safest middleground for ensuring your code will likely work across versions, and is what we would generally recommend.

That being said, it isn't currently following the convention of explicitly defining a range of supported versions, with the range being updated manually as more/different versions are supported. It should either be updated to advise always using 3.8.1, with a condensed explanation why, or provide the full range of supported versions with an explicit greatest version (though, the make logic is hardcoded to 3.8, so that might be less realistic without modifying how that works as well).

@Flame442 Flame442 added Good First Issue Good for beginners to the project. Status: PRs Welcome No one is currently assigned to this issue, but we'd be grateful if anyone made a PR. and removed Status: Needs Triage This has not been labeled or discussed for handling yet. labels Oct 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Good First Issue Good for beginners to the project. Status: PRs Welcome No one is currently assigned to this issue, but we'd be grateful if anyone made a PR. Type: Enhancement Something meant to enhance existing Red features.
Projects
None yet
Development

No branches or pull requests

2 participants