Closed inoa-jboliveira closed 3 months ago
I think checking against sys.version_info[0]
seems reasonable, not sure about sys.version_info[1]
. What do you think @AlexWaygood ?
I think sys.version_info[1]
would only be relevant when PEP 2026 gets accepted, which makes the number "3" useless.
Also ruff only runs in Python 3 code.
I imagine in a few years people saying: "this thing runs only on python 28 or 29" instead of 3.28 and 3.29
For a litmus test, you can check how often this is used on github repos. There several usages together with [0] and also by itself.
https://github.com/search?q=sys.version_info%5B1%5D+language%3Apython&type=code
I would prefer waiting with sys.version_info[1]
until a PEP makes python 3 officially the final major version.
Cool, thank you!
I found there was some leftover py2k code in a project that UP rules would not catch because it just matches sys.version_info as a tuple. If you just check for the 1st element, which is kinda common in the old days, it will not show an error.
UP036
It would be helpful if both options were found. I believe this is only relevant for python 2 since python 4 is no longer going to exist, but python 3 will be the forever version with the 2nd number being the de facto python version.
If so, this rule could also catch these cases.
In time: Ruff 0.6.1