-
-
Notifications
You must be signed in to change notification settings - Fork 508
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
Drop Python 3.6 & support Python 3.10 #936
Conversation
Also fix a few places that were missed when adding 3.9.
e7475f2
to
b185609
Compare
26c2176
to
08d8011
Compare
@aaugustin Hi! I just seen this, sorry for my lack/delayed of reaction. Is it really needed the drop of 3.6 support? EL7 have python 3.6.8 and, while most if not all CERN experiments have their own software stacks, everything is still based on EL7 (and there is no newer python in softwarecollections ). Thank you! |
I understand your concern. My take is the following: if you're using a Python released on Dec 23rd, 2016 and EOL on Dec 23rd, 2021, then it should be OK to use a websockets released on May 1st, 2021 and EOL some time in 2021 or maybe 2022. (Since I don't do support branches, each websockets release is EOL as soon as the next release is out.) Existing versions aren't going away. websockets tries to maintain backwards compatibility over 5 years, which means I barely started removing backwards compatibility for changes that happened in the first years of the library. I also support 5 years old Python versions. That's a pretty strong commitment as far as open source projects maintained by a single person in their free time go. Support multiple Python versions in websockets has adds mental overhead to remember what constraints there are on the newer and older Python versions. I don't find it reasonable to support more than 4 Python versions at a time. Given that Python does deprecations over two releases, that's two (overlapping) deprecations periods, and asyncio still changes quite a bit. That said, if there was a significant bug in 9.0.1, then I'd probably make a branch to fix it and avoid stranding Python 3.6 users on websockets 8.x. This situation hasn't come up when I dropped 3.3, 3.4, and 3.5. |
@aaugustin Thanks a lot for info! My only concern was for bugs that we might hit and could not be applied on the old versions (but given that everything worked so well so far, and the data-path that we use within websockets will not change, i doubt that unexpected things will arise.. but well, in engineering anything that can go wrong, it will :) ). |
Thanks for the feedback on 9.0.1 :-) Since I don't even use this project myself (just maintaining it for fun) I'm always shooting in the dark when I make new releases! |
@aaugustin well, you could do like some other projects and just announce a RC tag with a RC release before the final tag (well, actually do a release branch then announce the rc tag and release, then after testing and fixes on that branch (as well as in master) you do the tag and forget about it ... but of course is a matter of preference and available time as this requires a little bit of management) |
Fix #916.