Repository navigation
ci: test Python 3.15 and 3.15t as supported versions - #736
Merged
Merged
Conversation
There was a problem hiding this comment.
Benchmark
Details
| Benchmark suite | Current: b781193 | Previous: e328cdb | Ratio |
|---|---|---|---|
benchmarks/test_guard_by_type.py::test_g16_resolve_by_type |
5151314.453157649 iter/sec (stddev: 8.900244881069114e-9) |
3349954.1307447646 iter/sec (stddev: 1.1395436163351595e-8) |
0.65 |
benchmarks/test_guard_by_type.py::test_g17_resolve_by_type_large_registry |
5162498.147311821 iter/sec (stddev: 5.696571961610013e-9) |
3312132.593417775 iter/sec (stddev: 1.2445847186236911e-8) |
0.64 |
benchmarks/test_guard_cold.py::test_g8_cold_first_resolve |
20751.122489255744 iter/sec (stddev: 0.00004280326044902461) |
14310.01952624115 iter/sec (stddev: 0.00005169171312900758) |
0.69 |
benchmarks/test_guard_cold.py::test_g8b_cold_first_resolve_cached |
17487.231788594574 iter/sec (stddev: 0.00011693817381699793) |
11543.276706087852 iter/sec (stddev: 0.00013668329600242886) |
0.66 |
benchmarks/test_guard_concurrency.py::test_g14_concurrent_cached_hit[1] |
668.894213862163 iter/sec (stddev: 0.00001243249914836506) |
480.20035415942203 iter/sec (stddev: 0.000041777889218064135) |
0.72 |
benchmarks/test_guard_concurrency.py::test_g14_concurrent_cached_hit[2] |
652.8797528471134 iter/sec (stddev: 0.000019999125165216275) |
468.8497794119261 iter/sec (stddev: 0.00004972074226908734) |
0.72 |
benchmarks/test_guard_concurrency.py::test_g14_concurrent_cached_hit[4] |
623.9474447707487 iter/sec (stddev: 0.00003620033578074768) |
444.40131585991736 iter/sec (stddev: 0.000057075542679951606) |
0.71 |
benchmarks/test_guard_concurrency.py::test_g15_concurrent_first_resolve[1] |
19815.12161284567 iter/sec (stddev: 0.000007630583628815147) |
12884.756270161037 iter/sec (stddev: 0.000009400594180562489) |
0.65 |
benchmarks/test_guard_concurrency.py::test_g15_concurrent_first_resolve[2] |
10100.419209492564 iter/sec (stddev: 0.000014752575265063431) |
6451.831779894308 iter/sec (stddev: 0.00002574506947328166) |
0.64 |
benchmarks/test_guard_concurrency.py::test_g15_concurrent_first_resolve[4] |
4874.56148749045 iter/sec (stddev: 0.00002958598862238848) |
3327.5353802251952 iter/sec (stddev: 0.00004075751251091918) |
0.68 |
benchmarks/test_guard_concurrency.py::test_g15b_concurrent_first_resolve_sibling_children[1] |
14476.071174981711 iter/sec (stddev: 0.000009116679264375989) |
10206.606379146002 iter/sec (stddev: 0.000010784268302512774) |
0.71 |
benchmarks/test_guard_concurrency.py::test_g15b_concurrent_first_resolve_sibling_children[2] |
6833.935203698099 iter/sec (stddev: 0.000014655866259778539) |
4255.767211819689 iter/sec (stddev: 0.000020716268249827244) |
0.62 |
benchmarks/test_guard_concurrency.py::test_g15b_concurrent_first_resolve_sibling_children[4] |
3005.422608879252 iter/sec (stddev: 0.00003113063527690822) |
2038.7660490820576 iter/sec (stddev: 0.00004938984564405704) |
0.68 |
benchmarks/test_guard_concurrency.py::test_g15c_worker_pool_floor_control[1] |
50307.50462404221 iter/sec (stddev: 0.0000043844410970127735) |
40641.44391037792 iter/sec (stddev: 0.000005944780803254656) |
0.81 |
benchmarks/test_guard_concurrency.py::test_g15c_worker_pool_floor_control[2] |
20630.069839583233 iter/sec (stddev: 0.000011006590606262544) |
14342.72148138468 iter/sec (stddev: 0.00001729375527282881) |
0.70 |
benchmarks/test_guard_concurrency.py::test_g15c_worker_pool_floor_control[4] |
8433.566268432147 iter/sec (stddev: 0.000022231288577274636) |
5755.052036468175 iter/sec (stddev: 0.00003704727741172385) |
0.68 |
benchmarks/test_guard_lifecycle.py::test_g6_build_child_container |
2124006.0580937658 iter/sec (stddev: 2.4947729593749025e-8) |
1597285.764238152 iter/sec (stddev: 3.333430619631821e-8) |
0.75 |
benchmarks/test_guard_lifecycle.py::test_g6b_build_child_container_auto_scope |
2234381.477954952 iter/sec (stddev: 2.595228094221246e-8) |
1708808.8841611473 iter/sec (stddev: 1.8735266620124955e-8) |
0.76 |
benchmarks/test_guard_lifecycle.py::test_g7_request_lifecycle_batch |
4526.7800458187385 iter/sec (stddev: 0.000013864144958497152) |
3233.528018998844 iter/sec (stddev: 0.000014269058589414899) |
0.71 |
benchmarks/test_guard_lifecycle.py::test_g7c_event_loop_floor_control |
76064.23213181192 iter/sec (stddev: 0.0000010263641632906485) |
54316.547075001225 iter/sec (stddev: 0.0000023132611561410522) |
0.71 |
benchmarks/test_guard_lifecycle.py::test_g7b_request_cycle_sync |
603216.8408015313 iter/sec (stddev: 6.502109306538012e-8) |
426029.0363923076 iter/sec (stddev: 7.578846940622007e-8) |
0.71 |
benchmarks/test_guard_lifecycle.py::test_g13_teardown_at_scale |
93320.14520143608 iter/sec (stddev: 0.0000010165280348384097) |
64015.460546578244 iter/sec (stddev: 0.0000016733397093477113) |
0.69 |
benchmarks/test_guard_lifecycle.py::test_g13b_teardown_at_scale_async_no_finalizers |
844.7732082008033 iter/sec (stddev: 0.0008578582720297479) |
566.909801984178 iter/sec (stddev: 0.0009460974422276269) |
0.67 |
benchmarks/test_guard_resolve.py::test_g1_transient_resolve |
3076411.682635203 iter/sec (stddev: 2.1945740406193313e-8) |
2185030.215969131 iter/sec (stddev: 2.7315720395351753e-8) |
0.71 |
benchmarks/test_guard_resolve.py::test_g2_cached_resolve |
5013606.677845336 iter/sec (stddev: 6.7342680276684896e-9) |
3664668.2009361708 iter/sec (stddev: 8.914597878180114e-9) |
0.73 |
benchmarks/test_guard_resolve.py::test_g3_deep_chain |
1148462.8886563114 iter/sec (stddev: 4.318122419994584e-8) |
793625.6936645809 iter/sec (stddev: 4.2639753743298074e-8) |
0.69 |
benchmarks/test_guard_resolve.py::test_g4_wide_resolve |
607065.9993354299 iter/sec (stddev: 3.9693121205771465e-7) |
481821.2225483881 iter/sec (stddev: 3.892766536946014e-7) |
0.79 |
benchmarks/test_guard_resolve.py::test_g5_cross_scope |
2686256.821320808 iter/sec (stddev: 2.4350942845154723e-8) |
2007958.7452739624 iter/sec (stddev: 2.192103347602309e-8) |
0.75 |
benchmarks/test_guard_resolve.py::test_g9_context_resolve |
2069175.645591579 iter/sec (stddev: 1.20505953812858e-7) |
1385459.5397876373 iter/sec (stddev: 1.33964339193956e-7) |
0.67 |
benchmarks/test_guard_resolve.py::test_g12_override_active_resolve |
1162579.6083599052 iter/sec (stddev: 3.918729924154014e-8) |
839682.9810449105 iter/sec (stddev: 3.2438992076566274e-8) |
0.72 |
benchmarks/test_guard_resolve.py::test_g18_alias_hop |
5033289.674571305 iter/sec (stddev: 4.948257655623387e-9) |
3583069.323816902 iter/sec (stddev: 1.0973201233023321e-8) |
0.71 |
benchmarks/test_guard_validate.py::test_g10_validate_deep_chain |
57936.85022346923 iter/sec (stddev: 0.0000017400754896027158) |
35458.48859963979 iter/sec (stddev: 0.0000030607291575767464) |
0.61 |
benchmarks/test_guard_validate.py::test_g11_validate_wide |
33608.54549696319 iter/sec (stddev: 0.000002249249635316272) |
21545.0858679431 iter/sec (stddev: 0.000004115949781371136) |
0.64 |
This comment was automatically generated by workflow using github-action-benchmark.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
CPython 3.15.0 is out. CI has run 3.15 and 3.15t as allowed-to-fail pre-release jobs, and both pass on main. This makes them regular jobs that gate the build and declares 3.15 support.
Changes
_checks.yml: 3.15 and 3.15t move from the pre-releaseincludelist into the main matrix. Theprereleaseaxis andcontinue-on-errorstay, so the 3.16 alphas can go back intoincludelater.pyproject.toml: add theProgramming Language :: Python :: 3.15classifier. The free-threading classifier stays at2 - Beta.docs/dev/contributing.mdanddocs/introduction/design-decisions.md: list 3.15 and 3.15t among the tested versions.Checklist
just test-ci,just test-docspass locally on 3.15.0 and 3.15.0t (100% coverage)just test-race --count=50passes on 3.15.0t with the GIL disabledjust lint-cipasses