*** This log is abridged to its last 1000 lines: tests/test_uri_converters.py::test_int_converter_malformed[123\n] PASSED [ 86%] tests/test_uri_converters.py::test_int_converter_malformed[123\r] PASSED [ 86%] tests/test_uri_converters.py::test_int_converter_malformed[123\x0b] PASSED [ 86%] tests/test_uri_converters.py::test_int_converter_malformed[123\x0c] PASSED [ 86%] tests/test_uri_converters.py::test_int_converter_malformed[ 123] PASSED [ 86%] tests/test_uri_converters.py::test_int_converter_malformed[\t123] PASSED [ 86%] tests/test_uri_converters.py::test_int_converter_malformed[\n123] PASSED [ 86%] tests/test_uri_converters.py::test_int_converter_malformed[\r123] PASSED [ 86%] tests/test_uri_converters.py::test_int_converter_malformed[\x0b123] PASSED [ 86%] tests/test_uri_converters.py::test_int_converter_malformed[\x0c123] PASSED [ 86%] tests/test_uri_converters.py::test_int_converter_invalid_config[0] PASSED [ 86%] tests/test_uri_converters.py::test_int_converter_invalid_config[-1] PASSED [ 86%] tests/test_uri_converters.py::test_int_converter_invalid_config[-10] PASSED [ 86%] tests/test_uri_converters.py::test_float_converter[123-None-None-123.0] PASSED [ 86%] tests/test_uri_converters.py::test_float_converter[01-None-None-1.0] PASSED [ 86%] tests/test_uri_converters.py::test_float_converter[001-None-None-1.0] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[0-None-None-0.0] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[00-None-None-0.0] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[1-None-None-1.0] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[12-2-None-12.0] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[1-1-1-1.0] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[12-1-20-12.0] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[12-2-10-None] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[1-2-13-None] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[-1-2-13-None] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[-1--2-10--1.0] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[1.4-1-10-1.4] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[inf-1-100-None] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[-inf-1-1000-None] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[nan-1-1000-None] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[1.5e100-0-1-None] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[0.5e1-0-10-5.0] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[-1.6e1--50-50--16.0] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[1.5e2-0-500-150] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter[-1.6e10--17000000000.0-10000000000.0--16000000000.0] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_non_finite_allowed[nan] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_non_finite_allowed[NaN] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_non_finite_allowed[NAN] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_non_finite_allowed[nAn] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_non_finite_allowed[-inf] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_non_finite_allowed[inf] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_non_finite_allowed[-INF] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_non_finite_allowed[INF] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_non_finite_disallowed[None] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_non_finite_disallowed[True] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_malformed[0x0F] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_malformed[something] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_malformed[] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_malformed[ ] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_malformed[123 ] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_malformed[123\t] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_malformed[123\n] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_malformed[123\r] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_malformed[123\x0b] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_malformed[123\x0c] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_malformed[ 123] PASSED [ 87%] tests/test_uri_converters.py::test_float_converter_malformed[\t123] PASSED [ 88%] tests/test_uri_converters.py::test_float_converter_malformed[\n123] PASSED [ 88%] tests/test_uri_converters.py::test_float_converter_malformed[\r123] PASSED [ 88%] tests/test_uri_converters.py::test_float_converter_malformed[\x0b123] PASSED [ 88%] tests/test_uri_converters.py::test_float_converter_malformed[\x0c123] PASSED [ 88%] tests/test_uri_converters.py::test_datetime_converter[07-03-17-%m-%d-%y-expected0] PASSED [ 88%] tests/test_uri_converters.py::test_datetime_converter[07-03-17 -%m-%d-%y -expected1] PASSED [ 88%] tests/test_uri_converters.py::test_datetime_converter[2017-07-03T14:30:01Z-%Y-%m-%dT%H:%M:%SZ-expected2] PASSED [ 88%] tests/test_uri_converters.py::test_datetime_converter[2017-07-03T14:30:01-%Y-%m-%dT%H:%M:%S-expected3] PASSED [ 88%] tests/test_uri_converters.py::test_datetime_converter[2017_19-%Y_%H-expected4] PASSED [ 88%] tests/test_uri_converters.py::test_datetime_converter[2017-07-03T14:30:01-%Y-%m-%dT%H:%M:%SZ-None] PASSED [ 88%] tests/test_uri_converters.py::test_datetime_converter[07-03-17 -%m-%d-%y-None] PASSED [ 88%] tests/test_uri_converters.py::test_datetime_converter[ 07-03-17-%m-%d-%y-None] PASSED [ 88%] tests/test_uri_converters.py::test_datetime_converter[07 -03-17-%m-%d-%y-None] PASSED [ 88%] tests/test_uri_converters.py::test_datetime_converter_default_format PASSED [ 88%] tests/test_uri_converters.py::test_uuid_converter[uuid_1] PASSED [ 88%] tests/test_uri_converters.py::test_uuid_converter[uuid_2] PASSED [ 88%] tests/test_uri_converters.py::test_uuid_converter[uuid_3] PASSED [ 88%] tests/test_uri_converters.py::test_uuid_converter[uuid_4] PASSED [ 88%] tests/test_uri_converters.py::test_uuid_converter[uuid_5] PASSED [ 88%] tests/test_uri_converters.py::test_uuid_converter[uuid_6] PASSED [ 88%] tests/test_uri_converters.py::test_uuid_converter[uuid_7] PASSED [ 88%] tests/test_uri_converters.py::test_uuid_converter[uuid_8] PASSED [ 88%] tests/test_uri_converters.py::test_uuid_converter[uuid_9] PASSED [ 88%] tests/test_uri_converters.py::test_uuid_converter[uuid_10] PASSED [ 88%] tests/test_uri_converters.py::test_uuid_converter[uuid_11] PASSED [ 88%] tests/test_uri_converters.py::test_uuid_converter[uuid_12] PASSED [ 88%] tests/test_uri_templates.py::test_root_path[asgi] PASSED [ 88%] tests/test_uri_templates.py::test_root_path[wsgi] PASSED [ 88%] tests/test_uri_templates.py::test_no_vars[asgi] PASSED [ 88%] tests/test_uri_templates.py::test_no_vars[wsgi] PASSED [ 88%] tests/test_uri_templates.py::test_special_chars[asgi] PASSED [ 88%] tests/test_uri_templates.py::test_special_chars[wsgi] PASSED [ 88%] tests/test_uri_templates.py::test_single[asgi-id] PASSED [ 88%] tests/test_uri_templates.py::test_single[asgi-id123] PASSED [ 88%] tests/test_uri_templates.py::test_single[asgi-widget_id] PASSED [ 88%] tests/test_uri_templates.py::test_single[wsgi-id] PASSED [ 88%] tests/test_uri_templates.py::test_single[wsgi-id123] PASSED [ 88%] tests/test_uri_templates.py::test_single[wsgi-widget_id] PASSED [ 88%] tests/test_uri_templates.py::test_single_path_segment[asgi] PASSED [ 88%] tests/test_uri_templates.py::test_single_path_segment[wsgi] PASSED [ 88%] tests/test_uri_templates.py::test_int_converter[asgi-/{id:int}] PASSED [ 89%] tests/test_uri_templates.py::test_int_converter[asgi-/{id:int(3)}] PASSED [ 89%] tests/test_uri_templates.py::test_int_converter[asgi-/{id:int(min=123)}] PASSED [ 89%] tests/test_uri_templates.py::test_int_converter[asgi-/{id:int(min=123, max=123)}] PASSED [ 89%] tests/test_uri_templates.py::test_int_converter[wsgi-/{id:int}] PASSED [ 89%] tests/test_uri_templates.py::test_int_converter[wsgi-/{id:int(3)}] PASSED [ 89%] tests/test_uri_templates.py::test_int_converter[wsgi-/{id:int(min=123)}] PASSED [ 89%] tests/test_uri_templates.py::test_int_converter[wsgi-/{id:int(min=123, max=123)}] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[asgi-/{id:float}-2] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[asgi-/{id:float}-2.1] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[asgi-/{id:float}-1.9] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[asgi-/{id:float(1)}-2] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[asgi-/{id:float(1)}-2.1] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[asgi-/{id:float(1)}-1.9] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[asgi-/{id:float(min=1.9)}-2] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[asgi-/{id:float(min=1.9)}-2.1] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[asgi-/{id:float(min=1.9)}-1.9] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[asgi-/{id:float(min=1.8, max=3)}-2] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[asgi-/{id:float(min=1.8, max=3)}-2.1] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[asgi-/{id:float(min=1.8, max=3)}-1.9] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[wsgi-/{id:float}-2] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[wsgi-/{id:float}-2.1] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[wsgi-/{id:float}-1.9] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[wsgi-/{id:float(1)}-2] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[wsgi-/{id:float(1)}-2.1] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[wsgi-/{id:float(1)}-1.9] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[wsgi-/{id:float(min=1.9)}-2] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[wsgi-/{id:float(min=1.9)}-2.1] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[wsgi-/{id:float(min=1.9)}-1.9] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[wsgi-/{id:float(min=1.8, max=3)}-2] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[wsgi-/{id:float(min=1.8, max=3)}-2.1] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter[wsgi-/{id:float(min=1.8, max=3)}-1.9] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter_non_finite_allowed[asgi-nan] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter_non_finite_allowed[asgi--inf] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter_non_finite_allowed[asgi-inf] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter_non_finite_allowed[wsgi-nan] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter_non_finite_allowed[wsgi--inf] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter_non_finite_allowed[wsgi-inf] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter_non_finite_disallowed[asgi] PASSED [ 89%] tests/test_uri_templates.py::test_float_converter_non_finite_disallowed[wsgi] PASSED [ 89%] tests/test_uri_templates.py::test_int_converter_rejections[asgi-/{id:int(2)}] PASSED [ 90%] tests/test_uri_templates.py::test_int_converter_rejections[asgi-/{id:int(min=124)}] PASSED [ 90%] tests/test_uri_templates.py::test_int_converter_rejections[asgi-/{id:int(num_digits=3, max=100)}] PASSED [ 90%] tests/test_uri_templates.py::test_int_converter_rejections[wsgi-/{id:int(2)}] PASSED [ 90%] tests/test_uri_templates.py::test_int_converter_rejections[wsgi-/{id:int(min=124)}] PASSED [ 90%] tests/test_uri_templates.py::test_int_converter_rejections[wsgi-/{id:int(num_digits=3, max=100)}] PASSED [ 90%] tests/test_uri_templates.py::test_datetime_converter[asgi-/{start_year:int}-to-{timestamp:dt}-/1961-to-1969-07-21T02:56:00Z-dt_expected0] PASSED [ 90%] tests/test_uri_templates.py::test_datetime_converter[asgi-/{start_year:int}-to-{timestamp:dt("%Y-%m-%d")}-/1961-to-1969-07-21-dt_expected1] PASSED [ 90%] tests/test_uri_templates.py::test_datetime_converter[asgi-/{start_year:int}/{timestamp:dt("%Y-%m-%d %H:%M")}-/1961/1969-07-21 14:30-dt_expected2] PASSED [ 90%] tests/test_uri_templates.py::test_datetime_converter[asgi-/{start_year:int}-to-{timestamp:dt("%Y-%m")}-/1961-to-1969-07-21-None] PASSED [ 90%] tests/test_uri_templates.py::test_datetime_converter[wsgi-/{start_year:int}-to-{timestamp:dt}-/1961-to-1969-07-21T02:56:00Z-dt_expected0] PASSED [ 90%] tests/test_uri_templates.py::test_datetime_converter[wsgi-/{start_year:int}-to-{timestamp:dt("%Y-%m-%d")}-/1961-to-1969-07-21-dt_expected1] PASSED [ 90%] tests/test_uri_templates.py::test_datetime_converter[wsgi-/{start_year:int}/{timestamp:dt("%Y-%m-%d %H:%M")}-/1961/1969-07-21 14:30-dt_expected2] PASSED [ 90%] tests/test_uri_templates.py::test_datetime_converter[wsgi-/{start_year:int}-to-{timestamp:dt("%Y-%m")}-/1961-to-1969-07-21-None] PASSED [ 90%] tests/test_uri_templates.py::test_uuid_converter[asgi-uuid_converter_1] PASSED [ 90%] tests/test_uri_templates.py::test_uuid_converter[asgi-uuid_converter_2] PASSED [ 90%] tests/test_uri_templates.py::test_uuid_converter[asgi-uuid_converter_3] PASSED [ 90%] tests/test_uri_templates.py::test_uuid_converter[asgi-uuid_converter_4] PASSED [ 90%] tests/test_uri_templates.py::test_uuid_converter[asgi-uuid_converter_5] PASSED [ 90%] tests/test_uri_templates.py::test_uuid_converter[asgi-uuid_converter_6] PASSED [ 90%] tests/test_uri_templates.py::test_uuid_converter[wsgi-uuid_converter_1] PASSED [ 90%] tests/test_uri_templates.py::test_uuid_converter[wsgi-uuid_converter_2] PASSED [ 90%] tests/test_uri_templates.py::test_uuid_converter[wsgi-uuid_converter_3] PASSED [ 90%] tests/test_uri_templates.py::test_uuid_converter[wsgi-uuid_converter_4] PASSED [ 90%] tests/test_uri_templates.py::test_uuid_converter[wsgi-uuid_converter_5] PASSED [ 90%] tests/test_uri_templates.py::test_uuid_converter[wsgi-uuid_converter_6] PASSED [ 90%] tests/test_uri_templates.py::test_uuid_converter_complex_segment[asgi] PASSED [ 90%] tests/test_uri_templates.py::test_uuid_converter_complex_segment[wsgi] PASSED [ 90%] tests/test_uri_templates.py::test_converter_custom[asgi-/{food:spam}-/something-expected0] PASSED [ 90%] tests/test_uri_templates.py::test_converter_custom[asgi-/{food:spam(")")}:{food_too:spam("()")}-/bacon:eggs-expected1] PASSED [ 90%] tests/test_uri_templates.py::test_converter_custom[asgi-/({food:spam()}){food_too:spam("()")}-/(bacon)eggs-expected2] PASSED [ 90%] tests/test_uri_templates.py::test_converter_custom[wsgi-/{food:spam}-/something-expected0] PASSED [ 90%] tests/test_uri_templates.py::test_converter_custom[wsgi-/{food:spam(")")}:{food_too:spam("()")}-/bacon:eggs-expected1] PASSED [ 90%] tests/test_uri_templates.py::test_converter_custom[wsgi-/({food:spam()}){food_too:spam("()")}-/(bacon)eggs-expected2] PASSED [ 90%] tests/test_uri_templates.py::test_single_trailing_slash[asgi] PASSED [ 90%] tests/test_uri_templates.py::test_single_trailing_slash[wsgi] PASSED [ 90%] tests/test_uri_templates.py::test_multiple[asgi] PASSED [ 90%] tests/test_uri_templates.py::test_multiple[wsgi] PASSED [ 90%] tests/test_uri_templates.py::test_empty_path_component[asgi-//] PASSED [ 90%] tests/test_uri_templates.py::test_empty_path_component[asgi-//begin] PASSED [ 90%] tests/test_uri_templates.py::test_empty_path_component[asgi-/end//] PASSED [ 90%] tests/test_uri_templates.py::test_empty_path_component[asgi-/in//side] PASSED [ 91%] tests/test_uri_templates.py::test_empty_path_component[wsgi-//] PASSED [ 91%] tests/test_uri_templates.py::test_empty_path_component[wsgi-//begin] PASSED [ 91%] tests/test_uri_templates.py::test_empty_path_component[wsgi-/end//] PASSED [ 91%] tests/test_uri_templates.py::test_empty_path_component[wsgi-/in//side] PASSED [ 91%] tests/test_uri_templates.py::test_relative_path[asgi-] PASSED [ 91%] tests/test_uri_templates.py::test_relative_path[asgi-no] PASSED [ 91%] tests/test_uri_templates.py::test_relative_path[asgi-no/leading_slash] PASSED [ 91%] tests/test_uri_templates.py::test_relative_path[wsgi-] PASSED [ 91%] tests/test_uri_templates.py::test_relative_path[wsgi-no] PASSED [ 91%] tests/test_uri_templates.py::test_relative_path[wsgi-no/leading_slash] PASSED [ 91%] tests/test_uri_templates.py::test_same_level_complex_var[asgi-True] PASSED [ 91%] tests/test_uri_templates.py::test_same_level_complex_var[asgi-False] PASSED [ 91%] tests/test_uri_templates.py::test_same_level_complex_var[wsgi-True] PASSED [ 91%] tests/test_uri_templates.py::test_same_level_complex_var[wsgi-False] PASSED [ 91%] tests/test_uri_templates.py::test_adding_suffix_routes[asgi] PASSED [ 91%] tests/test_uri_templates.py::test_adding_suffix_routes[wsgi] PASSED [ 91%] tests/test_uri_templates.py::test_with_and_without_trailing_slash[asgi-True] PASSED [ 91%] tests/test_uri_templates.py::test_with_and_without_trailing_slash[asgi-False] PASSED [ 91%] tests/test_uri_templates.py::test_with_and_without_trailing_slash[wsgi-True] PASSED [ 91%] tests/test_uri_templates.py::test_with_and_without_trailing_slash[wsgi-False] PASSED [ 91%] tests/test_uri_templates.py::test_custom_error_on_suffix_route_not_found[asgi] PASSED [ 91%] tests/test_uri_templates.py::test_custom_error_on_suffix_route_not_found[wsgi] PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_deprecated_decorator PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_http_now PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_dt_to_http PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_http_date_to_dt PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_pack_query_params_none PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_pack_query_params_one PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_pack_query_params_several PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_to_query_str_encoding[params0-True] PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_to_query_str_encoding[params0-False] PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_to_query_str_encoding[params1-True] PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_to_query_str_encoding[params1-False] PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_to_query_str_encoding[params2-True] PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_to_query_str_encoding[params2-False] PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_to_query_str_encoding[params3-True] PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_to_query_str_encoding[params3-False] PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_to_query_str_encoding[params4-True] PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_to_query_str_encoding[params4-False] PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_uri_encode PASSED [ 91%] tests/test_utils.py::TestFalconUtils::test_uri_encode_double PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_encode_value PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode[bytearray] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode[join_list] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_bad_coding[bytearray-ab%2Gcd-ab%2Gcd] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_bad_coding[bytearray-ab%2Fcd: 100% coverage-ab/cd: 100% coverage] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_bad_coding[bytearray-%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s-%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_bad_coding[join_list-ab%2Gcd-ab%2Gcd] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_bad_coding[join_list-ab%2Fcd: 100% coverage-ab/cd: 100% coverage] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_bad_coding[join_list-%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s-%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_bad_unicode[bytearray-+%80- \ufffd] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_bad_unicode[bytearray-+++%FF+++- \ufffd ] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_bad_unicode[bytearray-%fc%83%bf%bf%bf%bf-\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_bad_unicode[bytearray-%ed%ae%80%ed%b0%80-\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_bad_unicode[join_list-+%80- \ufffd] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_bad_unicode[join_list-+++%FF+++- \ufffd ] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_bad_unicode[join_list-%fc%83%bf%bf%bf%bf-\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_bad_unicode[join_list-%ed%ae%80%ed%b0%80-\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_unquote_plus[bytearray] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_uri_decode_unquote_plus[join_list] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_prop_uri_encode_models_stdlib_quote PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_prop_uri_encode_value_models_stdlib_quote_safe_tilde PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_prop_uri_decode_models_stdlib_unquote_plus PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_unquote_string PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[-True-expected0] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[-False-expected1] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[flag1&&&&&flag2&&&-True-expected2] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[flag1&&&&&flag2&&&-False-expected3] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[malformed=%FG%1%Hi%%%a-False-expected4] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[=-False-expected5] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[==-False-expected6] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[%==+==&&&&&&&&&%%==+=&&&&&&%0g%=%=-False-expected7] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[%=&%%=&&%%%=-False-expected8] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[%=&%%=&&%%%=-True-expected9] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[+=&%+=&&%++=-True-expected10] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[=x=&=x=+1=x=&%=x-False-expected11] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[%=+&%=&+%+=&%+&=%&=+%&+==%+&=%&+=+%&=+&%=&%+=&+%+%=&+%&=+=%&+=&%+&%=+&=%&%=+&%+=&=%+&=+%&+%=&+=%-False-expected12] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[%%%\x00%\x00==\x00\x00==-True-expected13] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_query_string_edge_cases[spade=\u2660&spade=\u2660-False-expected14] PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_parse_host PASSED [ 92%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[703-703 Explosion] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[404-404 Not Found] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[404.9-404 Not Found] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[200 OK-200 OK0] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[307 Temporary Redirect-307 Temporary Redirect] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[404 Not Found-404 Not Found] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[123-123 Unknown] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[123 Wow Such Status-123 Wow Such Status0] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[123 Wow Such Status-123 Wow Such Status1] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[200 OK-200 OK1] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[200-200 OK] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[307-307 Temporary Redirect] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[401-401 Unauthorized] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[410-410 Gone] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[429-429 Too Many Requests] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status[500-500 Internal Server Error] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status_value_error[0] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status_value_error[13] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status_value_error[99] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status_value_error[1000] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status_value_error[1337.01] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status_value_error[-99] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status_value_error[-404.3_0] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status_value_error[-404] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status_value_error[-404.3_1] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status_value_error[Successful] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status_value_error[Failed] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_code_to_http_status_value_error[None] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code[505-505_0] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code[712-712_0] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code[712-712_1] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code[404 Not Found-404_0] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code[712 NoSQL-712] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code[404 Not Found-404_1] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code[123 Wow Such Status-123_0] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code[505-505_1] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code[123 Wow Such Status-123_1] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code_neg[0] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code_neg[ ] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code_neg[1] PASSED [ 93%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code_neg[12] PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code_neg[99] PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code_neg[catsup] PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code_neg[2] PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_http_status_to_code_neg[5.2] PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_etag_dumps_to_header_format PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_etag_strong_vs_weak_comparison PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_secure_filename[.-_] PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_secure_filename[..-_.] PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_secure_filename[hello.txt-hello.txt] PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_secure_filename[\u0104\u017euolai \u017ealiuos.jpeg-A_z_uolai_z_aliuos.jpeg] PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_secure_filename[/etc/shadow-_etc_shadow] PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_secure_filename[. \u2b05 a dot-____a_dot] PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_secure_filename[C:\\Windows\\kernel32.dll-C__Windows_kernel32.dll] PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_secure_filename_empty_value PASSED [ 94%] tests/test_utils.py::TestFalconUtils::test_misc_isascii PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-https-CONNECT] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-https-DELETE] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-https-GET] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-https-HEAD] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-https-OPTIONS] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-https-PATCH] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-https-POST] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-https-PUT] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-https-TRACE] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-http-CONNECT] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-http-DELETE] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-http-GET] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-http-HEAD] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-http-OPTIONS] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-http-PATCH] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-http-POST] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-http-PUT] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[asgi-http-TRACE] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[wsgi-https-CONNECT] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[wsgi-https-DELETE] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[wsgi-https-GET] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[wsgi-https-HEAD] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[wsgi-https-OPTIONS] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[wsgi-https-PATCH] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[wsgi-https-POST] PASSED [ 94%] tests/test_utils.py::test_simulate_request_protocol[wsgi-https-PUT] PASSED [ 95%] tests/test_utils.py::test_simulate_request_protocol[wsgi-https-TRACE] PASSED [ 95%] tests/test_utils.py::test_simulate_request_protocol[wsgi-http-CONNECT] PASSED [ 95%] tests/test_utils.py::test_simulate_request_protocol[wsgi-http-DELETE] PASSED [ 95%] tests/test_utils.py::test_simulate_request_protocol[wsgi-http-GET] PASSED [ 95%] tests/test_utils.py::test_simulate_request_protocol[wsgi-http-HEAD] PASSED [ 95%] tests/test_utils.py::test_simulate_request_protocol[wsgi-http-OPTIONS] PASSED [ 95%] tests/test_utils.py::test_simulate_request_protocol[wsgi-http-PATCH] PASSED [ 95%] tests/test_utils.py::test_simulate_request_protocol[wsgi-http-POST] PASSED [ 95%] tests/test_utils.py::test_simulate_request_protocol[wsgi-http-PUT] PASSED [ 95%] tests/test_utils.py::test_simulate_request_protocol[wsgi-http-TRACE] PASSED [ 95%] tests/test_utils.py::test_simulate_free_functions[asgi-simulate_get] PASSED [ 95%] tests/test_utils.py::test_simulate_free_functions[asgi-simulate_head] PASSED [ 95%] tests/test_utils.py::test_simulate_free_functions[asgi-simulate_post] PASSED [ 95%] tests/test_utils.py::test_simulate_free_functions[asgi-simulate_put] PASSED [ 95%] tests/test_utils.py::test_simulate_free_functions[asgi-simulate_options] PASSED [ 95%] tests/test_utils.py::test_simulate_free_functions[asgi-simulate_patch] PASSED [ 95%] tests/test_utils.py::test_simulate_free_functions[asgi-simulate_delete] PASSED [ 95%] tests/test_utils.py::test_simulate_free_functions[wsgi-simulate_get] PASSED [ 95%] tests/test_utils.py::test_simulate_free_functions[wsgi-simulate_head] PASSED [ 95%] tests/test_utils.py::test_simulate_free_functions[wsgi-simulate_post] PASSED [ 95%] tests/test_utils.py::test_simulate_free_functions[wsgi-simulate_put] PASSED [ 95%] tests/test_utils.py::test_simulate_free_functions[wsgi-simulate_options] PASSED [ 95%] tests/test_utils.py::test_simulate_free_functions[wsgi-simulate_patch] PASSED [ 95%] tests/test_utils.py::test_simulate_free_functions[wsgi-simulate_delete] PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_path_escape_chars_in_create_environ PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_no_prefix_allowed_for_query_strings_in_create_environ PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_plus_in_path_in_create_environ PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_none_header_value_in_create_environ PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_decode_empty_result[asgi] PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_decode_empty_result[wsgi] PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_httpnow_alias_for_backwards_compat PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_default_headers[asgi] PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_default_headers[wsgi] PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_default_headers_with_override[asgi] PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_default_headers_with_override[wsgi] PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_status[asgi] PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_status[wsgi] PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[asgi-d\xff\xff\x00-simulate_get] PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[asgi-d\xff\xff\x00-simulate_post] PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[asgi-quick fox jumps over the lazy dog-simulate_get] PASSED [ 95%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[asgi-quick fox jumps over the lazy dog-simulate_post] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[asgi-{"hello": "WORLD!"}-simulate_get] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[asgi-{"hello": "WORLD!"}-simulate_post] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[asgi-Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praese-simulate_get] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[asgi-Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praese-simulate_post] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[asgi-{"hello": "WORLD!", "greetings": "fellow traveller"}-simulate_get] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[asgi-{"hello": "WORLD!", "greetings": "fellow traveller"}-simulate_post] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[asgi-\xe9\xe8-simulate_get] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[asgi-\xe9\xe8-simulate_post] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[wsgi-d\xff\xff\x00-simulate_get] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[wsgi-d\xff\xff\x00-simulate_post] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[wsgi-quick fox jumps over the lazy dog-simulate_get] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[wsgi-quick fox jumps over the lazy dog-simulate_post] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[wsgi-{"hello": "WORLD!"}-simulate_get] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[wsgi-{"hello": "WORLD!"}-simulate_post] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[wsgi-Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praese-simulate_get] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[wsgi-Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praese-simulate_post] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[wsgi-{"hello": "WORLD!", "greetings": "fellow traveller"}-simulate_get] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[wsgi-{"hello": "WORLD!", "greetings": "fellow traveller"}-simulate_post] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[wsgi-\xe9\xe8-simulate_get] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_result_when_body_varies[wsgi-\xe9\xe8-simulate_post] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_without_content_type_header[asgi] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_repr_without_content_type_header[wsgi] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_wsgi_iterable_not_closeable PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_path_must_start_with_slash[asgi] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_path_must_start_with_slash[wsgi] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_cached_text_in_result[asgi] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_cached_text_in_result[wsgi] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_simple_resource_body_json_xor[SimpleTestResource] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_simple_resource_body_json_xor[SimpleTestResourceAsync] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_query_string[asgi] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_query_string[wsgi] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_query_string_no_question[asgi] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_query_string_no_question[wsgi] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_query_string_in_path[asgi] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_query_string_in_path[wsgi] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[asgi-16.0625] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[asgi-123456789] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[asgi-True] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[asgi-] PASSED [ 96%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[asgi-I am a \u1d0a\ua731\u1d0f\u0274 string.] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[asgi-document5] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[asgi-document6] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[asgi-document7] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[wsgi-16.0625] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[wsgi-123456789] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[wsgi-True] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[wsgi-] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[wsgi-I am a \u1d0a\ua731\u1d0f\u0274 string.] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[wsgi-document5] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[wsgi-document6] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_json_body[wsgi-document7] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_remote_addr[asgi-None] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_remote_addr[asgi-127.0.0.1] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_remote_addr[asgi-8.8.8.8] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_remote_addr[asgi-104.24.101.85] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_remote_addr[asgi-2606:4700:30::6818:6455] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_remote_addr[wsgi-None] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_remote_addr[wsgi-127.0.0.1] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_remote_addr[wsgi-8.8.8.8] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_remote_addr[wsgi-104.24.101.85] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_remote_addr[wsgi-2606:4700:30::6818:6455] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_hostname[asgi] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_hostname[wsgi] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_with_environ_extras[extras0-expected_headers0] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_with_environ_extras[extras1-expected_headers1] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_override_method_with_extras[asgi] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_override_method_with_extras[wsgi] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_content_type[application/json] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_content_type[application/json; charset=UTF-8] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_content_type[application/yaml] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_content_type_extra_handler[asgi-application/json] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_content_type_extra_handler[asgi-application/json; charset=UTF-8] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_content_type_extra_handler[asgi-application/yaml] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_content_type_extra_handler[asgi-application/msgpack] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_content_type_extra_handler[asgi-application/x-www-form-urlencoded] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_content_type_extra_handler[wsgi-application/json] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_content_type_extra_handler[wsgi-application/json; charset=UTF-8] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_content_type_extra_handler[wsgi-application/yaml] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_content_type_extra_handler[wsgi-application/msgpack] PASSED [ 97%] tests/test_utils.py::TestFalconTestingUtils::test_simulate_content_type_extra_handler[wsgi-application/x-www-form-urlencoded] PASSED [ 97%] tests/test_utils.py::TestNoApiClass::test_something PASSED [ 98%] tests/test_utils.py::TestSetupApi::test_something PASSED [ 98%] tests/test_utils.py::test_get_argnames PASSED [ 98%] tests/test_utils.py::TestContextType::test_attributes[CustomContextType] PASSED [ 98%] tests/test_utils.py::TestContextType::test_attributes[Context] PASSED [ 98%] tests/test_utils.py::TestContextType::test_items_from_attributes[CustomContextType] PASSED [ 98%] tests/test_utils.py::TestContextType::test_items_from_attributes[Context] PASSED [ 98%] tests/test_utils.py::TestContextType::test_attributes_from_items[CustomContextType] PASSED [ 98%] tests/test_utils.py::TestContextType::test_attributes_from_items[Context] PASSED [ 98%] tests/test_utils.py::TestContextType::test_dict_interface[CustomContextType-CustomContextType] PASSED [ 98%] tests/test_utils.py::TestContextType::test_dict_interface[Context-Context] PASSED [ 98%] tests/test_utils.py::TestContextType::test_keys_and_values[CustomContextType] PASSED [ 98%] tests/test_utils.py::TestContextType::test_keys_and_values[Context] PASSED [ 98%] tests/test_utils.py::TestDeprecatedArgs::test_method PASSED [ 98%] tests/test_utils.py::TestDeprecatedArgs::test_function PASSED [ 98%] tests/test_utils.py::test_TimezoneGMT PASSED [ 98%] tests/test_validators.py::test_req_schema_validation_success[asgi] SKIPPED (jsonschema dependency not found) [ 98%] tests/test_validators.py::test_req_schema_validation_success[wsgi] SKIPPED (jsonschema dependency not found) [ 98%] tests/test_validators.py::test_req_schema_validation_failure[asgi-HTTPBadRequest] SKIPPED (jsonschema dependency not found) [ 98%] tests/test_validators.py::test_req_schema_validation_failure[asgi-MediaValidationError] SKIPPED (jsonschema dependency not found) [ 98%] tests/test_validators.py::test_req_schema_validation_failure[wsgi-HTTPBadRequest] SKIPPED (jsonschema dependency not found) [ 98%] tests/test_validators.py::test_req_schema_validation_failure[wsgi-MediaValidationError] SKIPPED (jsonschema dependency not found) [ 98%] tests/test_validators.py::test_resp_schema_validation_success[asgi] SKIPPED (jsonschema dependency not found) [ 98%] tests/test_validators.py::test_resp_schema_validation_success[wsgi] SKIPPED (jsonschema dependency not found) [ 98%] tests/test_validators.py::test_resp_schema_validation_failure[asgi] SKIPPED (jsonschema dependency not found) [ 98%] tests/test_validators.py::test_resp_schema_validation_failure[wsgi] SKIPPED (jsonschema dependency not found) [ 98%] tests/test_validators.py::test_both_schemas_validation_success[asgi] SKIPPED (jsonschema dependency not found) [ 98%] tests/test_validators.py::test_both_schemas_validation_success[wsgi] SKIPPED (jsonschema dependency not found) [ 98%] tests/test_validators.py::test_both_schemas_validation_failure[asgi] SKIPPED (jsonschema dependency not found) [ 98%] tests/test_validators.py::test_both_schemas_validation_failure[wsgi] SKIPPED (jsonschema dependency not found) [ 98%] tests/test_wsgi.py::TestWSGIServer::test_get ERROR [ 98%] tests/test_wsgi.py::TestWSGIServer::test_get_file ERROR [ 98%] tests/test_wsgi.py::TestWSGIServer::test_put ERROR [ 98%] tests/test_wsgi.py::TestWSGIServer::test_head_405 ERROR [ 98%] tests/test_wsgi.py::TestWSGIServer::test_post ERROR [ 98%] tests/test_wsgi.py::TestWSGIServer::test_post_invalid_content_length ERROR [ 98%] tests/test_wsgi.py::TestWSGIServer::test_post_read_bounded_stream ERROR [ 98%] tests/test_wsgi.py::TestWSGIServer::test_post_read_bounded_stream_no_body ERROR [ 98%] tests/test_wsgi_errors.py::TestWSGIError::test_responder_logged_bytestring PASSED [ 98%] tests/test_wsgi_interface.py::TestWSGIInterface::test_srmock PASSED [ 98%] tests/test_wsgi_interface.py::TestWSGIInterface::test_pep3333 PASSED [ 98%] tests/test_wsgi_servers.py::TestWSGIServer::test_get[gunicorn] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_get[meinheld] SKIPPED (meinheld not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_get[uvicorn] SKIPPED (uvicorn not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_get[uwsgi] SKIPPED (uwsgi executable is not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_get[waitress] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_get_deprecated[gunicorn] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_get_deprecated[meinheld] SKIPPED (meinheld not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_get_deprecated[uvicorn] SKIPPED (uvicorn not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_get_deprecated[uwsgi] SKIPPED (uwsgi executable is not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_get_deprecated[waitress] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_post_multipart_form[gunicorn] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_post_multipart_form[meinheld] SKIPPED (meinheld not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_post_multipart_form[uvicorn] SKIPPED (uvicorn not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_post_multipart_form[uwsgi] SKIPPED (uwsgi executable is not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_post_multipart_form[waitress] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file[gunicorn] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file[meinheld] SKIPPED (meinheld not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file[uvicorn] SKIPPED (uvicorn not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file[uwsgi] SKIPPED (uwsgi executable is not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file[waitress] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[gunicorn-7--hashlib] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[gunicorn-2-6-port] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[gunicorn-32-38-random] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[gunicorn--47-The content of this comment is part of a test.\n] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[meinheld-7--hashlib] SKIPPED (meinheld not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[meinheld-2-6-port] SKIPPED (meinheld not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[meinheld-32-38-random] SKIPPED (meinheld not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[meinheld--47-The content of this comment is part of a test.\n] SKIPPED (meinheld not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[uvicorn-7--hashlib] SKIPPED (uvicorn not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[uvicorn-2-6-port] SKIPPED (uvicorn not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[uvicorn-32-38-random] SKIPPED (uvicorn not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[uvicorn--47-The content of this comment is part of a test.\n] SKIPPED (uvicorn not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[uwsgi-7--hashlib] SKIPPED (uwsgi executable is not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[uwsgi-2-6-port] SKIPPED (uwsgi executable is not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[uwsgi-32-38-random] SKIPPED (uwsgi executable is not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[uwsgi--47-The content of this comment is part of a test.\n] SKIPPED (uwsgi executable is not installed) [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[waitress-7--hashlib] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[waitress-2-6-port] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[waitress-32-38-random] PASSED [ 99%] tests/test_wsgi_servers.py::TestWSGIServer::test_static_file_byte_range[waitress--47-The content of this comment is part of a test.\n] PASSED [ 99%] tests/test_wsgiref_inputwrapper_with_size.py::TestWsgiRefInputWrapper::test_resources_can_read_request_stream_during_tests PASSED [100%] =================================================================================================================================================== ERRORS =================================================================================================================================================== _________________________________________________________________________________________________________________________________ ERROR at setup of TestWSGIServer.test_get __________________________________________________________________________________________________________________________________ requests_lite = @pytest.fixture(scope='module') def _setup_wsgi_server(requests_lite): > stop_event = multiprocessing.Event() tests/test_wsgi.py:112: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/multiprocessing/context.py:93: in Event return Event(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:331: in __init__ self._cond = ctx.Condition(ctx.Lock()) /usr/lib/python3.12/multiprocessing/context.py:68: in Lock return Lock(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:169: in __init__ SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 1, value = 1, maxvalue = 1 def __init__(self, kind, value, maxvalue, *, ctx): if ctx is None: ctx = context._default_context.get_context() self._is_fork_ctx = ctx.get_start_method() == 'fork' unlink_now = sys.platform == 'win32' or self._is_fork_ctx for i in range(100): try: > sl = self._semlock = _multiprocessing.SemLock( kind, value, maxvalue, self._make_name(), unlink_now) E PermissionError: [Errno 13] Permission denied /usr/lib/python3.12/multiprocessing/synchronize.py:57: PermissionError _______________________________________________________________________________________________________________________________ ERROR at setup of TestWSGIServer.test_get_file _______________________________________________________________________________________________________________________________ requests_lite = @pytest.fixture(scope='module') def _setup_wsgi_server(requests_lite): > stop_event = multiprocessing.Event() tests/test_wsgi.py:112: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/multiprocessing/context.py:93: in Event return Event(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:331: in __init__ self._cond = ctx.Condition(ctx.Lock()) /usr/lib/python3.12/multiprocessing/context.py:68: in Lock return Lock(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:169: in __init__ SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 1, value = 1, maxvalue = 1 def __init__(self, kind, value, maxvalue, *, ctx): if ctx is None: ctx = context._default_context.get_context() self._is_fork_ctx = ctx.get_start_method() == 'fork' unlink_now = sys.platform == 'win32' or self._is_fork_ctx for i in range(100): try: > sl = self._semlock = _multiprocessing.SemLock( kind, value, maxvalue, self._make_name(), unlink_now) E PermissionError: [Errno 13] Permission denied /usr/lib/python3.12/multiprocessing/synchronize.py:57: PermissionError _________________________________________________________________________________________________________________________________ ERROR at setup of TestWSGIServer.test_put __________________________________________________________________________________________________________________________________ requests_lite = @pytest.fixture(scope='module') def _setup_wsgi_server(requests_lite): > stop_event = multiprocessing.Event() tests/test_wsgi.py:112: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/multiprocessing/context.py:93: in Event return Event(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:331: in __init__ self._cond = ctx.Condition(ctx.Lock()) /usr/lib/python3.12/multiprocessing/context.py:68: in Lock return Lock(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:169: in __init__ SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 1, value = 1, maxvalue = 1 def __init__(self, kind, value, maxvalue, *, ctx): if ctx is None: ctx = context._default_context.get_context() self._is_fork_ctx = ctx.get_start_method() == 'fork' unlink_now = sys.platform == 'win32' or self._is_fork_ctx for i in range(100): try: > sl = self._semlock = _multiprocessing.SemLock( kind, value, maxvalue, self._make_name(), unlink_now) E PermissionError: [Errno 13] Permission denied /usr/lib/python3.12/multiprocessing/synchronize.py:57: PermissionError _______________________________________________________________________________________________________________________________ ERROR at setup of TestWSGIServer.test_head_405 _______________________________________________________________________________________________________________________________ requests_lite = @pytest.fixture(scope='module') def _setup_wsgi_server(requests_lite): > stop_event = multiprocessing.Event() tests/test_wsgi.py:112: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/multiprocessing/context.py:93: in Event return Event(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:331: in __init__ self._cond = ctx.Condition(ctx.Lock()) /usr/lib/python3.12/multiprocessing/context.py:68: in Lock return Lock(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:169: in __init__ SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 1, value = 1, maxvalue = 1 def __init__(self, kind, value, maxvalue, *, ctx): if ctx is None: ctx = context._default_context.get_context() self._is_fork_ctx = ctx.get_start_method() == 'fork' unlink_now = sys.platform == 'win32' or self._is_fork_ctx for i in range(100): try: > sl = self._semlock = _multiprocessing.SemLock( kind, value, maxvalue, self._make_name(), unlink_now) E PermissionError: [Errno 13] Permission denied /usr/lib/python3.12/multiprocessing/synchronize.py:57: PermissionError _________________________________________________________________________________________________________________________________ ERROR at setup of TestWSGIServer.test_post _________________________________________________________________________________________________________________________________ requests_lite = @pytest.fixture(scope='module') def _setup_wsgi_server(requests_lite): > stop_event = multiprocessing.Event() tests/test_wsgi.py:112: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/multiprocessing/context.py:93: in Event return Event(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:331: in __init__ self._cond = ctx.Condition(ctx.Lock()) /usr/lib/python3.12/multiprocessing/context.py:68: in Lock return Lock(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:169: in __init__ SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 1, value = 1, maxvalue = 1 def __init__(self, kind, value, maxvalue, *, ctx): if ctx is None: ctx = context._default_context.get_context() self._is_fork_ctx = ctx.get_start_method() == 'fork' unlink_now = sys.platform == 'win32' or self._is_fork_ctx for i in range(100): try: > sl = self._semlock = _multiprocessing.SemLock( kind, value, maxvalue, self._make_name(), unlink_now) E PermissionError: [Errno 13] Permission denied /usr/lib/python3.12/multiprocessing/synchronize.py:57: PermissionError _____________________________________________________________________________________________________________________ ERROR at setup of TestWSGIServer.test_post_invalid_content_length ______________________________________________________________________________________________________________________ requests_lite = @pytest.fixture(scope='module') def _setup_wsgi_server(requests_lite): > stop_event = multiprocessing.Event() tests/test_wsgi.py:112: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/multiprocessing/context.py:93: in Event return Event(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:331: in __init__ self._cond = ctx.Condition(ctx.Lock()) /usr/lib/python3.12/multiprocessing/context.py:68: in Lock return Lock(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:169: in __init__ SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 1, value = 1, maxvalue = 1 def __init__(self, kind, value, maxvalue, *, ctx): if ctx is None: ctx = context._default_context.get_context() self._is_fork_ctx = ctx.get_start_method() == 'fork' unlink_now = sys.platform == 'win32' or self._is_fork_ctx for i in range(100): try: > sl = self._semlock = _multiprocessing.SemLock( kind, value, maxvalue, self._make_name(), unlink_now) E PermissionError: [Errno 13] Permission denied /usr/lib/python3.12/multiprocessing/synchronize.py:57: PermissionError _______________________________________________________________________________________________________________________ ERROR at setup of TestWSGIServer.test_post_read_bounded_stream _______________________________________________________________________________________________________________________ requests_lite = @pytest.fixture(scope='module') def _setup_wsgi_server(requests_lite): > stop_event = multiprocessing.Event() tests/test_wsgi.py:112: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/multiprocessing/context.py:93: in Event return Event(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:331: in __init__ self._cond = ctx.Condition(ctx.Lock()) /usr/lib/python3.12/multiprocessing/context.py:68: in Lock return Lock(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:169: in __init__ SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 1, value = 1, maxvalue = 1 def __init__(self, kind, value, maxvalue, *, ctx): if ctx is None: ctx = context._default_context.get_context() self._is_fork_ctx = ctx.get_start_method() == 'fork' unlink_now = sys.platform == 'win32' or self._is_fork_ctx for i in range(100): try: > sl = self._semlock = _multiprocessing.SemLock( kind, value, maxvalue, self._make_name(), unlink_now) E PermissionError: [Errno 13] Permission denied /usr/lib/python3.12/multiprocessing/synchronize.py:57: PermissionError ___________________________________________________________________________________________________________________ ERROR at setup of TestWSGIServer.test_post_read_bounded_stream_no_body ___________________________________________________________________________________________________________________ requests_lite = @pytest.fixture(scope='module') def _setup_wsgi_server(requests_lite): > stop_event = multiprocessing.Event() tests/test_wsgi.py:112: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.12/multiprocessing/context.py:93: in Event return Event(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:331: in __init__ self._cond = ctx.Condition(ctx.Lock()) /usr/lib/python3.12/multiprocessing/context.py:68: in Lock return Lock(ctx=self.get_context()) /usr/lib/python3.12/multiprocessing/synchronize.py:169: in __init__ SemLock.__init__(self, SEMAPHORE, 1, 1, ctx=ctx) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , kind = 1, value = 1, maxvalue = 1 def __init__(self, kind, value, maxvalue, *, ctx): if ctx is None: ctx = context._default_context.get_context() self._is_fork_ctx = ctx.get_start_method() == 'fork' unlink_now = sys.platform == 'win32' or self._is_fork_ctx for i in range(100): try: > sl = self._semlock = _multiprocessing.SemLock( kind, value, maxvalue, self._make_name(), unlink_now) E PermissionError: [Errno 13] Permission denied /usr/lib/python3.12/multiprocessing/synchronize.py:57: PermissionError ========================================================================================================================================== short test summary info =========================================================================================================================================== ERROR tests/test_wsgi.py::TestWSGIServer::test_get - PermissionError: [Errno 13] Permission denied ERROR tests/test_wsgi.py::TestWSGIServer::test_get_file - PermissionError: [Errno 13] Permission denied ERROR tests/test_wsgi.py::TestWSGIServer::test_put - PermissionError: [Errno 13] Permission denied ERROR tests/test_wsgi.py::TestWSGIServer::test_head_405 - PermissionError: [Errno 13] Permission denied ERROR tests/test_wsgi.py::TestWSGIServer::test_post - PermissionError: [Errno 13] Permission denied ERROR tests/test_wsgi.py::TestWSGIServer::test_post_invalid_content_length - PermissionError: [Errno 13] Permission denied ERROR tests/test_wsgi.py::TestWSGIServer::test_post_read_bounded_stream - PermissionError: [Errno 13] Permission denied ERROR tests/test_wsgi.py::TestWSGIServer::test_post_read_bounded_stream_no_body - PermissionError: [Errno 13] Permission denied ========================================================================================================================== 3679 passed, 383 skipped, 8 errors in 118.47s (0:01:58) =========================================================================================================================== >>> ERROR: py3-falcon: check failed >>> py3-falcon: Uninstalling dependencies... (1/159) Purging .makedepends-py3-falcon (20251012.182458) (2/159) Purging py3-gpep517-pyc (19-r0) (3/159) Purging py3-gpep517 (19-r0) (4/159) Purging py3-installer-pyc (0.7.0-r2) (5/159) Purging py3-installer (0.7.0-r2) (6/159) Purging py3-wheel-pyc (0.46.1-r0) (7/159) Purging py3-wheel (0.46.1-r0) (8/159) Purging python3-dev (3.12.12-r0) (9/159) Purging cython-pyc (3.0.12-r0) (10/159) Purging cython (3.0.12-r0) (11/159) Purging py3-coverage-pyc (7.8.2-r0) (12/159) Purging py3-coverage (7.8.2-r0) (13/159) Purging py3-pyaml-pyc (25.1.0-r0) (14/159) Purging py3-pyaml (25.1.0-r0) (15/159) Purging py3-yaml-pyc (6.0.2-r0) (16/159) Purging py3-yaml (6.0.2-r0) (17/159) Purging py3-pytest-asyncio-pyc (0.25.0-r0) (18/159) Purging py3-pytest-asyncio (0.25.0-r0) (19/159) Purging py3-pytest-pyc (8.3.5-r0) (20/159) Purging py3-pytest (8.3.5-r0) (21/159) Purging py3-iniconfig-pyc (2.1.0-r0) (22/159) Purging py3-iniconfig (2.1.0-r0) (23/159) Purging py3-pluggy-pyc (1.5.0-r0) (24/159) Purging py3-pluggy (1.5.0-r0) (25/159) Purging py3-py-pyc (1.11.0-r4) (26/159) Purging py3-py (1.11.0-r4) (27/159) Purging py3-aiofiles-pyc (24.1.0-r0) (28/159) Purging py3-aiofiles (24.1.0-r0) (29/159) Purging py3-httpx-pyc (0.28.1-r0) (30/159) Purging py3-httpx (0.28.1-r0) (31/159) Purging py3-httpcore-pyc (1.0.9-r0) (32/159) Purging py3-httpcore (1.0.9-r0) (33/159) Purging py3-anyio-pyc (4.3.0-r2) (34/159) Purging py3-anyio (4.3.0-r2) (35/159) Purging py3-h11-pyc (0.14.0-r4) (36/159) Purging py3-h11 (0.14.0-r4) (37/159) Purging py3-sniffio-pyc (1.3.1-r1) (38/159) Purging py3-sniffio (1.3.1-r1) (39/159) Purging py3-curio-pyc (1.6-r2) (40/159) Purging py3-curio (1.6-r2) (41/159) Purging py3-websockets-pyc (15.0.1-r0) (42/159) Purging py3-websockets (15.0.1-r0) (43/159) Purging py3-cbor2-pyc (5.6.5-r0) (44/159) Purging py3-cbor2 (5.6.5-r0) (45/159) Purging py3-msgpack-pyc (1.0.8-r1) (46/159) Purging py3-msgpack (1.0.8-r1) (47/159) Purging py3-mujson-pyc (1.4-r0) (48/159) Purging py3-mujson (1.4-r0) (49/159) Purging py3-ujson (5.10.0-r0) (50/159) Purging py3-rapidjson (1.20-r0) (51/159) Purging py3-orjson-pyc (3.10.18-r0) (52/159) Purging py3-orjson (3.10.18-r0) (53/159) Purging py3-gunicorn-pyc (23.0.0-r0) (54/159) Purging py3-gunicorn (23.0.0-r0) (55/159) Purging py3-daphne-pyc (4.2.1-r0) (56/159) Purging py3-daphne (4.2.1-r0) (57/159) Purging py3-autobahn-pyc (23.6.2-r1) (58/159) Purging py3-autobahn (23.6.2-r1) (59/159) Purging py3-txaio-pyc (23.1.1-r2) (60/159) Purging py3-txaio (23.1.1-r2) (61/159) Purging py3-twisted-pyc (24.11.0-r0) (62/159) Purging py3-twisted (24.11.0-r0) (63/159) Purging py3-zope-interface-pyc (7.2-r0) (64/159) Purging py3-zope-interface (7.2-r0) (65/159) Purging py3-constantly-pyc (23.10.4-r1) (66/159) Purging py3-constantly (23.10.4-r1) (67/159) Purging py3-incremental-pyc (24.7.2-r0) (68/159) Purging py3-incremental (24.7.2-r0) (69/159) Purging py3-automat-pyc (24.8.1-r0) (70/159) Purging py3-automat (24.8.1-r0) (71/159) Purging py3-six-pyc (1.17.0-r0) (72/159) Purging py3-six (1.17.0-r0) (73/159) Purging py3-hyperlink-pyc (21.0.0-r5) (74/159) Purging py3-hyperlink (21.0.0-r5) (75/159) Purging py3-typing-extensions-pyc (4.13.2-r0) (76/159) Purging py3-typing-extensions (4.13.2-r0) (77/159) Purging py3-pyhamcrest-pyc (2.1.0-r1) (78/159) Purging py3-pyhamcrest (2.1.0-r1) (79/159) Purging py3-service_identity-pyc (24.2.0-r0) (80/159) Purging py3-service_identity (24.2.0-r0) (81/159) Purging py3-asn1-modules-pyc (0.4.1-r0) (82/159) Purging py3-asn1-modules (0.4.1-r0) (83/159) Purging py3-asn1-pyc (0.6.1-r0) (84/159) Purging py3-asn1 (0.6.1-r0) (85/159) Purging py3-attrs-pyc (25.3.0-r0) (86/159) Purging py3-attrs (25.3.0-r0) (87/159) Purging py3-cryptography-pyc (44.0.3-r0) (88/159) Purging py3-cryptography (44.0.3-r0) (89/159) Purging py3-pyserial-pyc (3.5-r7) (90/159) Purging py3-pyserial (3.5-r7) (91/159) Purging py3-h2-pyc (4.1.0-r3) (92/159) Purging py3-h2 (4.1.0-r3) (93/159) Purging py3-hyperframe-pyc (6.1.0-r0) (94/159) Purging py3-hyperframe (6.1.0-r0) (95/159) Purging py3-hpack-pyc (4.1.0-r0) (96/159) Purging py3-hpack (4.1.0-r0) (97/159) Purging py3-sphinxcontrib-images-pyc (0.9.4-r4) (98/159) Purging py3-sphinxcontrib-images (0.9.4-r4) (99/159) Purging py3-sphinx-pyc (8.2.3-r1) (100/159) Purging py3-sphinx (8.2.3-r1) (101/159) Purging py3-babel-pyc (2.17.0-r0) (102/159) Purging py3-babel (2.17.0-r0) (103/159) Purging py3-tz-pyc (2025.2-r0) (104/159) Purging py3-tz (2025.2-r0) (105/159) Purging py3-docutils-pyc (0.21.2-r0) (106/159) Purging py3-docutils (0.21.2-r0) (107/159) Purging py3-imagesize-pyc (1.4.1-r4) (108/159) Purging py3-imagesize (1.4.1-r4) (109/159) Purging py3-jinja2-pyc (3.1.6-r0) (110/159) Purging py3-jinja2 (3.1.6-r0) (111/159) Purging py3-markupsafe-pyc (3.0.2-r0) (112/159) Purging py3-markupsafe (3.0.2-r0) (113/159) Purging py3-pygments-pyc (2.19.1-r1) (114/159) Purging py3-pygments (2.19.1-r1) (115/159) Purging py3-requests-pyc (2.32.5-r0) (116/159) Purging py3-requests (2.32.5-r0) (117/159) Purging py3-certifi-pyc (2025.4.26-r0) (118/159) Purging py3-certifi (2025.4.26-r0) (119/159) Purging py3-charset-normalizer-pyc (3.4.2-r0) (120/159) Purging py3-charset-normalizer (3.4.2-r0) (121/159) Purging py3-idna-pyc (3.10-r0) (122/159) Purging py3-idna (3.10-r0) (123/159) Purging py3-urllib3-pyc (1.26.20-r0) (124/159) Purging py3-urllib3 (1.26.20-r0) (125/159) Purging py3-snowballstemmer-pyc (2.2.0-r5) (126/159) Purging py3-snowballstemmer (2.2.0-r5) (127/159) Purging py3-alabaster-pyc (1.0.0-r0) (128/159) Purging py3-alabaster (1.0.0-r0) (129/159) Purging py3-roman-numerals-pyc (3.1.0-r0) (130/159) Purging py3-roman-numerals (3.1.0-r0) (131/159) Purging py3-sphinxcontrib-applehelp-pyc (1.0.4-r3) (132/159) Purging py3-sphinxcontrib-applehelp (1.0.4-r3) (133/159) Purging py3-sphinxcontrib-devhelp-pyc (1.0.5-r2) (134/159) Purging py3-sphinxcontrib-devhelp (1.0.5-r2) (135/159) Purging py3-sphinxcontrib-htmlhelp-pyc (2.0.1-r3) (136/159) Purging py3-sphinxcontrib-htmlhelp (2.0.1-r3) (137/159) Purging py3-sphinxcontrib-jsmath-pyc (1.0.1-r8) (138/159) Purging py3-sphinxcontrib-jsmath (1.0.1-r8) (139/159) Purging py3-sphinxcontrib-serializinghtml-pyc (1.1.9-r2) (140/159) Purging py3-sphinxcontrib-serializinghtml (1.1.9-r2) (141/159) Purging py3-sphinxcontrib-qthelp-pyc (2.0.0-r0) (142/159) Purging py3-sphinxcontrib-qthelp (2.0.0-r0) (143/159) Purging py3-setuptools-pyc (80.9.0-r0) (144/159) Purging py3-setuptools (80.9.0-r0) (145/159) Purging py3-packaging-pyc (25.0-r0) (146/159) Purging py3-packaging (25.0-r0) (147/159) Purging py3-parsing-pyc (3.2.3-r0) (148/159) Purging py3-parsing (3.2.3-r0) (149/159) Purging py3-pynacl-pyc (1.5.0-r6) (150/159) Purging py3-pynacl (1.5.0-r6) (151/159) Purging py3-cffi-pyc (1.17.1-r1) (152/159) Purging py3-cffi (1.17.1-r1) (153/159) Purging py3-cparser-pyc (2.22-r1) (154/159) Purging py3-cparser (2.22-r1) (155/159) Purging py3-asgiref-pyc (3.8.1-r1) (156/159) Purging py3-asgiref (3.8.1-r1) (157/159) Purging py3-waitress-pyc (3.0.2-r0) (158/159) Purging py3-waitress (3.0.2-r0) (159/159) Purging yaml (0.2.5-r2) Executing busybox-1.37.0-r19.trigger OK: 296 MiB in 89 packages