diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 8b6d454780..7636931091 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -86,6 +86,7 @@ (define-module (gnu packages python-web) #:use-module (gnu packages libevent) #:use-module (gnu packages libffi) #:use-module (gnu packages node) + #:use-module (gnu packages openstack) #:use-module (gnu packages pcre) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) @@ -6389,53 +6390,55 @@ (define-public python-sanic-testing (define-public python-sanic (package (name "python-sanic") - (version "20.12.4") + ;; We provide the latest LTS version of python-sanic. + (version "21.12.1") (source (origin (method url-fetch) (uri (pypi-uri "sanic" version)) (sha256 (base32 - "0axfc151s7nrykzypzciyvkxxrs5ayx8kxv4r620hjb9w3jjhfnp")))) + "0b8mcd1q9qkwcv2qz8nlyaacs0bp7a1l31sdq2m8hhkxykzfq5bg")))) (build-system python-build-system) (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'use-recent-pytest - ;; Allow using recent dependencies. - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "setup.py" - (("pytest==5.2.1") "pytest") - (("multidict>=5.0,<6.0") "multidict") - (("httpx==0\\.15\\.4") "httpx")) - #t)) - (replace 'check - (lambda* (#:key inputs outputs #:allow-other-keys) - (add-installed-pythonpath inputs outputs) - (invoke "pytest" "-vv" "./tests" "-k" - (string-append "not test_zero_downtime " - "and not test_gunicorn_worker " - "and not test_logo_"))))))) + (list + #:phases + #~(modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "pytest" "-vv" "./tests" "-k" + (string-append + ;; PyPi sources lack examples module. + "not test_gunicorn_" + ;; Does not expect brotli and reordered headers. + " and not test_raw_headers" + ;; These look like buggy testcases. + " and not test_zero_downtime" + " and not test_non_default_uvloop_config_raises_warning" + " and not test_listeners_triggered" + " and not test_keep_alive_connection_context" + " and not test_keep_alive_client_timeout")))))))) (propagated-inputs (list python-aiofiles python-httptools - python-httpx python-multidict + python-sanic-routing python-ujson python-uvloop python-websockets)) (native-inputs (list gunicorn + python-bandit python-beautifulsoup4 - python-hstspreload - python-httpcore + python-chardet + python-isort python-pytest - python-pytest-cov python-pytest-benchmark python-pytest-sanic python-pytest-sugar python-pytest-asyncio - python-urllib3 + python-sanic-testing python-uvicorn)) (home-page "https://github.com/sanic-org/sanic/")