diff options
author | Sébastien Lerique <sl@eauchat.org> | 2021-10-15 11:40:29 +0900 |
---|---|---|
committer | Lars-Dominik Braun <lars@6xq.net> | 2021-10-18 09:02:41 +0200 |
commit | 6ff3c33a0ee40afecc523809edeaa23ede9b2d74 (patch) | |
tree | c1fbe891c75059a36a87b1542e9eedc8e4935dd5 | |
parent | e769ff429bd0217f39208736f9638c1fe9e9c981 (diff) | |
download | guix-6ff3c33a0ee40afecc523809edeaa23ede9b2d74.tar.gz |
gnu: Add python-janus.
* gnu/packages/python-xyz.scm (python-janus): New variable. Signed-off-by: Lars-Dominik Braun <lars@6xq.net>
-rw-r--r-- | gnu/packages/python-xyz.scm | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 49aeb08afe..a99df74d47 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -230,6 +230,45 @@ #:use-module (srfi srfi-1) #:use-module (srfi srfi-26)) +(define-public python-janus + (package + (name "python-janus") + (version "0.6.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "janus" version)) + (sha256 + (base32 "030xvl2vghi5ispfalhvch1rl6i2jsy5bf1dgjafa7vifppy04j7")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? inputs outputs #:allow-other-keys) + (when tests? + (add-installed-pythonpath inputs outputs) + (invoke "pytest" "--cov=janus" "--cov=tests"))))))) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-pytest-cov" ,python-pytest-cov) + ("python-pytest-asyncio" ,python-pytest-asyncio))) + (home-page "https://github.com/aio-libs/janus/") + (synopsis + "Sync-async queue to interoperate between asyncio tasks and classic threads") + (description + "Mixed sync-async queue, supposed to be used for communicating between +classic synchronous (threaded) code and asynchronous (in terms of +@url{https://docs.python.org/3/library/asyncio.html,asyncio}) one. Like +@url{https://en.wikipedia.org/wiki/Janus,Janus god} the queue object from the +library has two faces: synchronous and asynchronous interface. Synchronous is +fully compatible with +@url{https://docs.python.org/3/library/queue.html,standard queue}, +asynchronous one follows +@url{https://docs.python.org/3/library/asyncio-queue.html,asyncio queue +design}.") + (license license:asl2.0))) + (define-public python-ueberzug (package (name "python-ueberzug") |