-
-
Notifications
You must be signed in to change notification settings - Fork 367
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
[RFC] Drop support for older Python versions (2.7 and 3.5) #654
Comments
Per
Date range: 2020-05-01 - 2020-05-31 |
I'm afraid 2.7 support is one of our main advantages over dataclasses and I don't want to leave those users in the rain (I'd have to lie if I said, that I have zero Python 2.7 apps in prod). We've made this statement so we won't reverse course anytime soon: https://www.attrs.org/en/stable/python-2.html I hope that our hand is gonna get forced sooner than later. That said, I'm intend to make the new |
Given the above, is there any value in keeping this open? |
I guess not. We should open a fresh one once our hand is forced. |
Date range: 2021-04-01 - 2021-04-30 |
It's probably worth noting that the total volume of downloads between the June 2020 numbers and the April 2021 numbers more than doubled, with most of the volume going to 3.6+. In absolute terms, Python 2.7 download volume dropped by about 35%, even though it's now only 4% of the total downloads. Or, put another way, with 2M downloads/month, attrs-on-python2 is approximately as popular as I don't really need Python 2.7 support myself nor do I especially like providing it, but just thought it was worth noting that these are not small volumes. |
What I do not understand is why we have to support py27 in new feature releases? Why can’t we declare the current (or an upcoming) major versions as last version supporting 2.7 and only provide bug fixes for it? |
That's what we more or less do. The credo is that if it's hard/complicated in Python 2, don't bother. If it's trivial, why not? I'm sure there's grateful people out there for it. I draw the line when CI becomes a pain and/or Tidelift goes to 0 (I'm constantly at $50.77 which is just barely above minimal payout). |
I propose that we end support for Python 2.7 and Python 3.5.
Python 2.7 is already EOL and the last patch for 3.5 will be released this July (if I interpret the PEP correctly).
According to pypistats.org, the share of py27 is approx. 11% and declining. Py35 has approx. 7%.
Setting py36 as minimum version would allow us to use these features:
These features would in turn allow us to:
auto_attribs=True
the default (and deprecate this kwarg altogether) ([RFC] Inconvenient defaults? #487)This would require a new major release. The next one will be v20 which is, as chance would have it, a nice round number. ;-)
The text was updated successfully, but these errors were encountered: