diff options
| author | Nguyễn Gia Phong <cnx@loang.net> | 2026-01-19 21:27:08 +0900 |
|---|---|---|
| committer | Andreas Enge <andreas@enge.fr> | 2026-02-07 12:28:32 +0100 |
| commit | 81df280103e692725a3983689f1a7a622d31dfc2 (patch) | |
| tree | df128f1eea74be4799dacf6dc7fa7f42b06c3546 /gnu/packages/python-check.scm | |
| parent | b984aaab6028ac298cb08e3ea51f1823ad8210b4 (diff) | |
gnu: Add python-blockbuster.
* gnu/packages/python-check.scm (python-blockbuster): Add variable.
Change-Id: I7cbdea1d62f700d75d92b8fd98929dc716e038e0
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Diffstat (limited to 'gnu/packages/python-check.scm')
| -rw-r--r-- | gnu/packages/python-check.scm | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm index 4d1b3605ea9..04a7a3bc36a 100644 --- a/gnu/packages/python-check.scm +++ b/gnu/packages/python-check.scm @@ -481,6 +481,42 @@ all the files it generates a report.") written in pure Python.") (license license:expat))) +(define-public python-blockbuster + (package + (name "python-blockbuster") + (version "1.5.26") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/cbornet/blockbuster") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "16ycwblivp6d7s78sxq97f9xb4vxcjfr5srxhpkpssv770lp37fs")))) + (build-system pyproject-build-system) + ;; test_ssl_socket wants to connects to the Internet. + (arguments (list #:test-flags #~'("-k" "not test_ssl_socket"))) + (native-inputs (list python-hatchling + python-pytest + python-pytest-asyncio + python-requests)) + (propagated-inputs (list python-forbiddenfruit)) + (home-page "https://github.com/cbornet/blockbuster") + (synopsis "Utility to detect blocking calls in Python async event loop") + (description + "Blockbuster is a Python package designed to detect and prevent +blocking calls within an asynchronous event loop. It is particularly useful +when executing tests to ensure that your asynchronous code +does not inadvertently call blocking operations, +which can lead to performance bottlenecks and unpredictable behavior. + +It does this by wrapping common blocking functions +and raising an exception when they are called within an asynchronous context. +Note that Blockbuster currently only detects @code{asyncio} event loops +and is tested only with CPython.") + (license license:asl2.0))) + (define-public python-codacy-coverage (package (name "python-codacy-coverage") |
