Subject: [PATCH 26/26] gnu: Add python-sanic.

From: Giacomo Leidi <[email-masked]>
Date: Thu, 11 Jun 2020 17:13:57 +0200

* gnu/packages/python-web.scm (python-sanic): New variable,
(python-httpx-0.11): New variable.
---
 gnu/packages/python-web.scm | 49 +++++++++++++++++++++++++++++++++++++
 1 file changed, 49 insertions(+)

diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index daaf4a8934..b7abe9fc17 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -4234,3 +4234,52 @@ as a Python package.")
     (description "HTTPX is a fully featured HTTP client for Python 3,
 which provides sync and async APIs, and support for both HTTP/1.1 and HTTP/2.")
     (license license:bsd-3)))
+
+;; This is only for python-sanic
+(define-public python-httpx-0.11
+  (package (inherit python-httpx)
+    (version "0.11.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "httpx" version))
+        (sha256
+          (base32
+           "1xrwlgnzm9x0d92s22ypli4cybwwv8idpp8m7naigmzfdrrgnavx"))))
+    (arguments
+     ;; FIXME: Tests can't import rfc3986.
+     `(#:tests? #f))))
+
+(define-public python-sanic
+  (package
+    (name "python-sanic")
+    (version "20.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "sanic" version))
+       (sha256
+        (base32
+         "1zssckzjsa1qi2bxirn0dksszmfhsbrkakvfx3r080sdcph8y1xl"))))
+    (build-system python-build-system)
+    (arguments
+     ;; FIXME: Tests depend on httpcore.
+     `(#:tests? #f))
+    (propagated-inputs
+     `(("python-aiofiles" ,python-aiofiles)
+       ("python-httptools" ,python-httptools)
+       ("python-httpx" ,python-httpx-0.11)
+       ("python-multidict" ,python-multidict)
+       ("python-ujson" ,python-ujson)
+       ("python-uvloop" ,python-uvloop)
+       ("python-websockets" ,python-websockets)))
+    (home-page
+     "https://github.com/huge-success/sanic/")
+    (synopsis
+     "Async Python 3.6+ web server/framework")
+    (description
+     "Sanic is a Python 3.6+ web server and web framework
+that's written to go fast.  It allows the usage of the
+@code{async/await} syntax added in Python 3.5, which makes
+your code non-blocking and speedy.")
+    (license license:expat)))
-- 
2.26.2