aio-libs
aiohttp
BlogDocsChangelog

Add Client Middleware Support

#9732Merged
Comparing
client_middleware
(
ab1aac2
) with
master
(
e5d1240
)
CodSpeed Performance Gauge
0%
Untouched
59
Ignored
7

Benchmarks

Passed

test_resolve_dynamic_resource_url_with_many_dynamic_routes_with_common_prefix[pyloop]
tests/test_benchmarks_web_urldispatcher.py
CodSpeed Performance Gauge
+2%
246.9 ms242.1 ms
test_resolve_root_route_with_many_fixed_routes[pyloop]
tests/test_benchmarks_web_urldispatcher.py
CodSpeed Performance Gauge
+1%
890.9 µs880.7 µs
test_client_request_update_cookies[pyloop]
tests/test_benchmarks_client_request.py
CodSpeed Performance Gauge
+1%
167.9 µs166.3 µs
test_resolve_gitapi_root[pyloop]
tests/test_benchmarks_web_urldispatcher.py
CodSpeed Performance Gauge
+1%
2 ms2 ms
test_load_cookies_into_temp_cookiejar
tests/test_benchmarks_cookiejar.py
CodSpeed Performance Gauge
+1%
198.6 µs197.1 µs
test_one_thousand_large_round_trip_websocket_text_messages[pyloop]
tests/test_benchmarks_client_ws.py
CodSpeed Performance Gauge
0%
21.7 ms21.6 ms
test_simple_web_response
tests/test_benchmarks_web_response.py
CodSpeed Performance Gauge
0%
451.8 µs449.9 µs
test_send_one_hundred_websocket_text_messages_with_mask[pyloop]
tests/test_benchmarks_http_websocket.py
CodSpeed Performance Gauge
0%
796.3 µs793.6 µs
test_resolve_dynamic_resource_url_with_many_static_routes[pyloop]
tests/test_benchmarks_web_urldispatcher.py
CodSpeed Performance Gauge
0%
3.6 ms3.6 ms
test_send_one_hundred_websocket_compressed_messages[zlib_ng.zlib_ng-pyloop]
tests/test_benchmarks_http_websocket.py
CodSpeed Performance Gauge
0%
2.1 ms2.1 ms
test_one_thousand_round_trip_websocket_binary_messages[pyloop-small]
tests/test_benchmarks_client_ws.py
CodSpeed Performance Gauge
0%
16.3 ms16.3 ms
test_web_response_with_headers
tests/test_benchmarks_web_response.py
CodSpeed Performance Gauge
0%
685.4 µs684.2 µs
test_resolve_dynamic_resource_url_with_many_dynamic_routes[pyloop]
tests/test_benchmarks_web_urldispatcher.py
CodSpeed Performance Gauge
0%
3.6 ms3.5 ms
test_serialize_headers
tests/test_benchmarks_http_writer.py
CodSpeed Performance Gauge
0%
858 µs856.9 µs
test_resolve_single_fixed_url_with_many_routes[pyloop]
tests/test_benchmarks_web_urldispatcher.py
CodSpeed Performance Gauge
0%
888.2 µs887.5 µs
test_send_one_hundred_websocket_compressed_messages[zlib-pyloop]
tests/test_benchmarks_http_websocket.py
CodSpeed Performance Gauge
0%
3.1 ms3.1 ms
test_resolve_root_route[pyloop]
tests/test_benchmarks_web_urldispatcher.py
CodSpeed Performance Gauge
0%
881.4 µs880.7 µs
test_read_one_hundred_websocket_text_messages[pyloop]
tests/test_benchmarks_http_websocket.py
CodSpeed Performance Gauge
0%
207.3 µs207.2 µs
test_get_request_with_251308_compressed_chunked_payload[zlib-pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
0%
426.7 ms426.7 ms
test_client_receive_large_websocket_compressed_messages[zlib-pyloop]
tests/test_benchmarks_client_ws.py
CodSpeed Performance Gauge
0%
50.3 ms50.3 ms
test_resolve_gitapi[pyloop]
tests/test_benchmarks_web_urldispatcher.py
CodSpeed Performance Gauge
0%
291.9 ms291.9 ms
test_read_large_binary_websocket_messages[pyloop]
tests/test_benchmarks_http_websocket.py
CodSpeed Performance Gauge
0%
9 ms9 ms
test_resolve_multiple_fixed_url_with_many_routes[pyloop]
tests/test_benchmarks_web_urldispatcher.py
CodSpeed Performance Gauge
0%
2.2 ms2.2 ms
test_web_response_with_text_body
tests/test_benchmarks_web_response.py
CodSpeed Performance Gauge
0%
664.1 µs664.3 µs
test_web_response_with_bytes_body
tests/test_benchmarks_web_response.py
CodSpeed Performance Gauge
0%
547.7 µs548 µs
test_client_send_large_websocket_compressed_messages[zlib-pyloop]
tests/test_benchmarks_client_ws.py
CodSpeed Performance Gauge
0%
50.4 ms50.4 ms
test_get_request_with_251308_compressed_chunked_payload[isal.isal_zlib-pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
0%
69.8 ms69.8 ms
test_one_thousand_round_trip_websocket_binary_messages[pyloop-large]
tests/test_benchmarks_client_ws.py
CodSpeed Performance Gauge
0%
110.4 ms110.5 ms
test_one_thousand_round_trip_websocket_text_messages[pyloop]
tests/test_benchmarks_client_ws.py
CodSpeed Performance Gauge
0%
16.7 ms16.7 ms
test_create_client_request_with_cookies[pyloop]
tests/test_benchmarks_client_request.py
CodSpeed Performance Gauge
0%
127.4 µs127.6 µs
test_send_one_hundred_large_websocket_text_messages[pyloop]
tests/test_benchmarks_http_websocket.py
CodSpeed Performance Gauge
0%
543.4 µs544.5 µs
test_send_one_hundred_websocket_compressed_messages[isal.isal_zlib-pyloop]
tests/test_benchmarks_http_websocket.py
CodSpeed Performance Gauge
0%
4.7 ms4.7 ms
test_get_request_with_251308_compressed_chunked_payload[zlib_ng.zlib_ng-pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
0%
234.7 ms235.2 ms
test_ten_streamed_responses_iter_chunked_4096[pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
0%
27.9 ms28 ms
test_simple_web_stream_response
tests/test_benchmarks_web_response.py
CodSpeed Performance Gauge
0%
246.8 µs247.4 µs
test_send_one_hundred_websocket_text_messages[pyloop]
tests/test_benchmarks_http_websocket.py
CodSpeed Performance Gauge
0%
558.8 µs560.6 µs
test_ten_streamed_responses_iter_chunked_65536[pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
0%
22.9 ms22.9 ms
test_resolve_gitapi_subapps[pyloop]
tests/test_benchmarks_web_urldispatcher.py
CodSpeed Performance Gauge
0%
294.3 ms295.5 ms
test_resolve_static_root_route[pyloop]
tests/test_benchmarks_web_urldispatcher.py
CodSpeed Performance Gauge
0%
976.8 µs980.8 µs
test_one_hundred_get_requests_with_512kib_content_length_payload[pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
0%
164.3 ms165 ms
test_resolve_prefix_resources_many_prefix_many_plain[pyloop]
tests/test_benchmarks_web_urldispatcher.py
CodSpeed Performance Gauge
0%
4.6 ms4.6 ms
test_ten_streamed_responses_iter_chunks[pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
-1%
16 ms16.1 ms
test_simple_web_file_response[pyloop]
tests/test_benchmarks_web_fileresponse.py
CodSpeed Performance Gauge
-1%
77.8 ms78.6 ms
test_resolve_multiple_level_fixed_url_with_many_routes[pyloop]
tests/test_benchmarks_web_urldispatcher.py
CodSpeed Performance Gauge
-1%
8.5 ms8.6 ms
test_simple_web_file_sendfile_fallback_response[pyloop]
tests/test_benchmarks_web_fileresponse.py
CodSpeed Performance Gauge
-1%
83.5 ms84.5 ms
test_one_hundred_simple_get_requests_no_session[pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
-1%
83.7 ms84.7 ms
test_simple_web_file_response_not_modified[pyloop]
tests/test_benchmarks_web_fileresponse.py
CodSpeed Performance Gauge
-1%
54.7 ms55.4 ms
test_one_hundred_json_post_requests[pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
-2%
38.2 ms38.9 ms
test_one_hundred_get_requests_with_30000_chunked_payload[pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
-2%
40.3 ms41 ms
test_one_hundred_get_requests_with_30000_content_length_payload[pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
-2%
38.9 ms39.6 ms
test_ten_web_middlewares[pyloop]
tests/test_benchmarks_web_middleware.py
CodSpeed Performance Gauge
-2%
34.8 ms35.5 ms
test_one_hundred_simple_post_requests[pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
-2%
36.4 ms37.1 ms
test_one_hundred_get_requests_with_1024_chunked_payload[pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
-2%
35.2 ms35.9 ms
test_one_hundred_simple_get_requests_alternating_clients[pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
-2%
32.8 ms33.5 ms
test_one_hundred_get_requests_with_1024_content_length_payload[pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
-2%
34.7 ms35.4 ms
test_one_hundred_simple_get_requests_multiple_methods_route[pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
-2%
31.9 ms32.5 ms
test_one_hundred_simple_get_requests[pyloop]
tests/test_benchmarks_client.py
CodSpeed Performance Gauge
-2%
32.1 ms32.8 ms
test_send_client_request_one_hundred[pyloop]
tests/test_benchmarks_client_request.py
CodSpeed Performance Gauge
-2%
2.4 ms2.5 ms
test_create_client_request_with_headers[pyloop]
tests/test_benchmarks_client_request.py
CodSpeed Performance Gauge
-4%
68.7 µs71.3 µs

Ignored

test_one_hundred_get_requests_iter_chunks_on_512kib_chunked_payload[pyloop]
tests/test_benchmarks_client.py
Ignored
CodSpeed Performance Gauge
+20%
130.6 ms108.8 ms
test_one_hundred_get_requests_with_512kib_chunked_payload[pyloop]
tests/test_benchmarks_client.py
Ignored
CodSpeed Performance Gauge
-1%
166 ms166.8 ms
test_ten_streamed_responses_iter_any[pyloop]
tests/test_benchmarks_client.py
Ignored
CodSpeed Performance Gauge
-1%
21.5 ms21.6 ms
test_client_send_large_websocket_compressed_messages[zlib_ng.zlib_ng-pyloop]
tests/test_benchmarks_client_ws.py
Ignored
CodSpeed Performance Gauge
-2%
29.9 ms30.5 ms
test_client_send_large_websocket_compressed_messages[isal.isal_zlib-pyloop]
tests/test_benchmarks_client_ws.py
Ignored
CodSpeed Performance Gauge
0%
19.9 ms19.9 ms
test_client_receive_large_websocket_compressed_messages[zlib_ng.zlib_ng-pyloop]
tests/test_benchmarks_client_ws.py
Ignored
CodSpeed Performance Gauge
+4%
31.6 ms30.4 ms
test_client_receive_large_websocket_compressed_messages[isal.isal_zlib-pyloop]
tests/test_benchmarks_client_ws.py
Ignored
CodSpeed Performance Gauge
0%
19.9 ms19.9 ms

Commits

Click on a commit to change the comparison range
Base
master
e5d1240
+0.2%
Client middleware PoC
2603139
11 months ago
by bdraco
-0.45%
fix refactorig error
cf808f6
5 months ago
by bdraco
+0.12%
fix type
6d887ed
5 months ago
by bdraco
-0.01%
preen
b84e4d8
5 months ago
by bdraco
-0.28%
Update docs/client_advanced.rst
392f3e7
5 months ago
by bdraco
+0.24%
cleanup
2db4321
5 months ago
by bdraco
-0.18%
cleanup
85c33c6
5 months ago
by bdraco
+0.16%
noreturn
56c750c
5 months ago
by bdraco
-0.05%
noreturn
e48f570
5 months ago
by bdraco
+0.2%
one more
fc3b57b
5 months ago
by bdraco
-0.32%
docs
9f6a840
5 months ago
by bdraco
-0.14%
make sure we can block connections
6c222d6
5 months ago
by bdraco
+0.06%
typing
f4b4608
5 months ago
by bdraco
-0.06%
cleanup
ff2be43
5 months ago
by bdraco
-0.01%
more cover
6bf3b31
5 months ago
by bdraco
+0.1%
ssrf example
fd13fa8
5 months ago
by bdraco
+0.06%
mypy
384e991
5 months ago
by bdraco
-0.03%
lint
f86281f
5 months ago
by bdraco
+0.08%
cleanup
e034e28
5 months ago
by bdraco
-0.11%
fix test
db30bd7
5 months ago
by bdraco
+0.01%
format
ae575e1
5 months ago
by bdraco
-0.06%
reduce scope of retry
6c633b5
5 months ago
by bdraco
+0.01%
lint
555169d
5 months ago
by bdraco
+0.06%
lint
384a942
5 months ago
by bdraco
+0.12%
Merge branch 'master' into client_middleware
8217840
5 months ago
by bdraco
+0.35%
Use request.session
4417d9c
5 months ago
by Dreamsorcerer
+0.02%
Fixup
de1f5fc
5 months ago
by Dreamsorcerer
-0.17%
Fix mock
16237eb
5 months ago
by Dreamsorcerer
-0.43%
add warning about infinite recursion
351d767
5 months ago
by bdraco
-0.03%
Merge remote-tracking branch 'upstream/client_middleware' into client_middleware
733c672
5 months ago
by bdraco
+0.07%
docs
ab1aac2
5 months ago
by bdraco
© 2025 CodSpeed Technology
Home Terms Privacy Docs