mirror of
https://codeberg.org/guix/guix.git
synced 2026-01-25 20:15:25 -06:00
gnu: Add python-crosshair.
* gnu/packages/check.scm (python-crosshair): New variable. Change-Id: I7af183df882049c19d562cd15a23f3f3233309a9 Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
This commit is contained in:
parent
0250eed22d
commit
3ffb386e3f
1 changed files with 56 additions and 1 deletions
|
|
@ -47,7 +47,7 @@
|
|||
;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
|
||||
;;; Copyright © 2023 Reza Housseini <reza@housseini.me>
|
||||
;;; Copyright © 2023 Hilton Chain <hako@ultrarare.space>
|
||||
;;; Copyright © 2023 Troy Figiel <troy@troyfigiel.com>
|
||||
;;; Copyright © 2023, 2024 Troy Figiel <troy@troyfigiel.com>
|
||||
;;; Copyright © 2024 Giacomo Leidi <goodoldpaul@autistici.org>
|
||||
;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
|
||||
;;; Copyright © 2024 Navid Afkhami <navid.afkhami@mdc-berlin.de>
|
||||
|
|
@ -2730,6 +2730,61 @@ look and feel of py.test, using a progress bar and showing failures and errors
|
|||
instantly.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-crosshair
|
||||
(package
|
||||
(name "python-crosshair")
|
||||
(version "0.0.76")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "crosshair-tool" version))
|
||||
(sha256
|
||||
(base32 "1yvbhzs7r85gn4d7drl7p7vi1f5cga1xyy3mzxy3fglyf8kxyakh"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
#~(list "--numprocesses" "auto"
|
||||
;; check_examples_test.py contains failing tests that
|
||||
;; show what happens if a counterexample is found.
|
||||
"--ignore=crosshair/examples/check_examples_test.py"
|
||||
"--ignore=crosshair/lsp_server_test.py") ;requires pygls
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-dependencies
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
;; pygls is only used by crosshair/lsp_server.py.
|
||||
(("pygls>=1.0.0") "")
|
||||
;; Tests still pass with typing-inspect==0.6.0
|
||||
;; packaged by Guix.
|
||||
(("typing-inspect>=0.7.1") "typing-inspect>=0.6.0")
|
||||
;; 'sanity-check fails for z3-solver, although it is
|
||||
;; included in 'propagated-inputs.
|
||||
(("z3-solver==4.13.0.0") ""))))
|
||||
(add-before 'check 'set-test-env
|
||||
(lambda _
|
||||
(setenv "PYTHONHASHSEED" "0")))))) ;tests rely on this value
|
||||
(native-inputs
|
||||
(list python-icontract ;optional
|
||||
python-importlib-metadata
|
||||
python-mypy
|
||||
python-numpy
|
||||
python-pytest
|
||||
python-pytest-xdist))
|
||||
(propagated-inputs
|
||||
(list python-typeshed-client
|
||||
python-typing-inspect
|
||||
z3))
|
||||
(home-page "https://crosshair.readthedocs.io")
|
||||
(synopsis "Analysis tool for Python using symbolic execution")
|
||||
(description
|
||||
"@code{crosshair} is an analysis tool for Python that works by repeatedly
|
||||
calling your functions with symbolic inputs. It uses an @acronym{SMT,
|
||||
Satisfiability modulo theories} solver explore viable execution paths and find
|
||||
counterexamples for you.")
|
||||
(license (list license:asl2.0 license:expat license:psfl))))
|
||||
|
||||
(define-public python-hypothesis
|
||||
(package
|
||||
(name "python-hypothesis")
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue