summaryrefslogtreecommitdiff
path: root/pkgs/development/python-modules/sanic/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/python-modules/sanic/default.nix')
-rw-r--r--pkgs/development/python-modules/sanic/default.nix75
1 files changed, 21 insertions, 54 deletions
diff --git a/pkgs/development/python-modules/sanic/default.nix b/pkgs/development/python-modules/sanic/default.nix
index ff76e2c56313..2158b96daa40 100644
--- a/pkgs/development/python-modules/sanic/default.nix
+++ b/pkgs/development/python-modules/sanic/default.nix
@@ -24,32 +24,23 @@
buildPythonPackage rec {
pname = "sanic";
- version = "21.12.1";
+ version = "22.3.2";
format = "setuptools";
- disabled = pythonOlder "3.7" ||
- pythonAtLeast "3.10"; # see GHSA-7p79-6x2v-5h88
+ disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "sanic-org";
repo = pname;
rev = "v${version}";
- sha256 = "0jyl23q7b7fyqzan97qflkqcvmfpzbxbzv0qgygxasrzh80zx67g";
+ hash = "sha256-4zdPp3X22dfZ5YlW3G5/OqeUxrt+NiFO9dk2XjEKXEg=";
};
postPatch = ''
# Loosen dependency requirements.
substituteInPlace setup.py \
--replace "pytest==6.2.5" "pytest" \
- --replace "gunicorn==20.0.4" "gunicorn" \
- --replace "multidict>=5.0,<6.0" "multidict"
-
- sed '/pytest-sanic/d' setup.py
-
- # Patch a request headers test to allow brotli encoding
- # (we build httpx with brotli support, upstream doesn't).
- substituteInPlace tests/test_headers.py \
- --replace "deflate\r\n" "deflate, br\r\n"
+ --replace "gunicorn==20.0.4" "gunicorn"
'';
propagatedBuildInputs = [
@@ -66,8 +57,6 @@ buildPythonPackage rec {
beautifulsoup4
gunicorn
pytest-asyncio
- pytest-benchmark
- pytest-sugar
pytestCheckHook
sanic-testing
uvicorn
@@ -95,49 +84,27 @@ buildPythonPackage rec {
];
disabledTests = [
- # Lack of uvloop setup through fixtures
- "test_create_asyncio_server"
- "test_listeners_triggered_async"
- "test_tls_options"
- # Tests are flaky
- "test_keep_alive_client_timeout"
- "test_check_timeouts_request_timeout"
- "test_check_timeouts_response_timeout"
- "test_reloader_live"
- "test_zero_downtime"
- # Not working from 21.9.1
- "test_create_server_main"
- "test_create_server_main_convenience"
- "test_debug"
+ # Fails to parse cmdline arguments
+ "test_dev"
"test_auto_reload"
- "test_no_exceptions_when_cancel_pending_request"
- "test_ipv6_address_is_not_wrapped"
- # Failure of the redirect tests seems to be related to httpx>0.20.0
- "test_redirect"
- "test_chained_redirect"
- "test_unix_connection"
- # These appear to be very sensitive to output of commands
- "test_access_logs"
- "test_auto_reload"
- "test_host_port"
- "test_no_exceptions_when_cancel_pending_request"
- "test_num_workers"
- "test_server_run"
- "test_version"
- # Sensitive comparison of raw HTTP header fails
- "test_raw_headers"
- # noisy_exceptions sometimes missing from sanic stdout
- "test_noisy_exceptions"
- ] ++ lib.optionals (stdenv.hostPlatform.system == "aarch64-linux") [
- # test fail on aarch64
- "test_tls_wrong_options"
- "test_cookie_expires"
- "test_gunicorn_worker"
- "test_gunicorn_worker_no_logs"
- "test_gunicorn_worker_with_logs"
+ # OSError: foo
+ "test_bad_headers"
+ "test_create_server_trigger_events"
+ "test_json_body_requests"
+ "test_missing_startup_raises_exception"
+ "test_no_body_requests"
+ "test_oserror_warning"
+ "test_running_multiple_offset_warning"
+ "test_streaming_body_requests"
+ "test_trigger_before_events_create_server"
+ "test_keep_alive_connection_context"
+ # Racy tests
+ "test_keep_alive_client_timeout"
];
disabledTestPaths = [
+ # We are not interested in benchmarks
+ "benchmark/"
# unable to create async loop
"test_app.py"
"test_asgi.py"