-
-
Notifications
You must be signed in to change notification settings - Fork 2k
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
Add Python 3.13 classifier #8748
Conversation
I don't think the tests are going to pass though so will probably hold off on adding this into 3.10.5 and once uvloop does their release we can likely do 3.10.6 with this backported |
Codecov ReportAll modified and coverable lines are covered by tests ✅
✅ All tests successful. No failed tests found. Additional details and impacted files@@ Coverage Diff @@
## master #8748 +/- ##
=======================================
Coverage 98.41% 98.41%
=======================================
Files 107 107
Lines 34828 34828
Branches 4132 4132
=======================================
Hits 34277 34277
Misses 380 380
Partials 171 171
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
@bdraco I was also thinking that we need to start looking into 3.13t compat here and in the deps too.. |
I'm working on getting 3.10.5 with cibuildwheel updated to v2.20.0 so we get 3.13 wheels out and uvloop can update. Once they release than we will hopefully see green on the CI and can do 3.10.6 with the classifier. |
Yeah, so we're just waiting on uvloop, who are actually waiting on us. So, this'll get wheels out to unblock uvloop, then they'll unblock us. |
3.13 wheels seem to be building ok https://github.com/aio-libs/aiohttp/actions/runs/10459267569/job/28963810550 |
We have 3.13 wheels now 🍾 |
I think we usually only started uploading wheels after the final release of CPython. Should we yank them once it's out and republish? Or publish wheels into the same release with different build numbers? @Dreamsorcerer why does uvloop wait for us to work on free-threading? |
cibuildwheel starts building wheels by default once a python version reaches RC since thats the cut off for binary compatibility https://github.com/pypa/cibuildwheel/releases/tag/v2.20.0
|
Yeah, I know. Just not sure how safe it is. |
I've published wheels for lots of other projects when RC is out and never had an issue, but that's only my experience. |
We've always just let the release process build wheels as it wants. We just don't declare support until the CI passes (which for 3.11/12 was over a year...). uvloop uses aiohttp for their tests. So, if we don't publish wheels until our CI passes, and they do the same, then neither of us will ever have a working release. |
uv loop released 0.21.0beta1 https://github.com/MagicStack/uvloop/releases/tag/v0.21.0beta1 |
Yeah, I'm hoping for a stable release next week, so we can just leave it to Dependabot. If doesn't happen next week, we'll have to bump ourselves. |
Backport to 3.10: 💚 backport PR created✅ Backport PR branch: Backported as #9280 🤖 @patchback |
(cherry picked from commit 2816002)
Backport to 3.11: 💚 backport PR created✅ Backport PR branch: Backported as #9281 🤖 @patchback |
(cherry picked from commit 2816002)
@bdraco @Dreamsorcerer Should the .PHONY: test-3.9-no-extensions test
test-3.9-no-extensions:
$(call run_tests_in_docker,3.9,y)
test-3.9:
$(call run_tests_in_docker,3.9,n)
test-3.10-no-extensions:
$(call run_tests_in_docker,3.10,y)
test-3.10:
$(call run_tests_in_docker,3.10,n)
+test-3.11-no-extensions:
+ $(call run_tests_in_docker,3.11,y)
+test-3.11:
+ $(call run_tests_in_docker,3.11,n)
+test-3.12-no-extensions:
+ $(call run_tests_in_docker,3.12,y)
+test-3.12:
+ $(call run_tests_in_docker,3.12,n)
+test-3.13-no-extensions:
+ $(call run_tests_in_docker,3.13,y)
+test-3.13:
+ $(call run_tests_in_docker,3.13,n) |
Probably, I never use those make commands. If nobody's noticed them missing, then seems like nobody else uses them either. So, maybe they can just be removed... |
What do these changes do?
Add Python 3.13 classifier like #8259
#8740 will start shipping wheels for 3.13
We need to wait for 3.10.5 to be published with 3.13 wheels so uvloop can update and we can get a clean CI run, than we can do a 3.10.6 with this PR
Are there changes in behavior for the user?
no
Is it a substantial burden for the maintainers to support this?
no