notbugAs an Amazon Associate I earn from qualifying purchases.
Want a good read? Try FreeBSD Mastery: Jails (IT Mastery Book 15)
Want a good monitor light? See my photosAll times are UTC
Ukraine
Port details
py-crosshair-tool Analyze Python code for correctness using symbolic execution
0.0.74 develnew! on this many watch lists=0 search for ports that depend on this port Find issues related to this port Report an issue related to this port View this port on Repology. pkg-fallout Package not present on quarterly.This port was created during this quarter. It will be in the next quarterly branch but not the current one.
Maintainer: sunpoet@FreeBSD.org search for ports maintained by this maintainer
Port Added: 2024-10-14 05:30:14
Last Update: 2024-10-14 04:45:08
Commit Hash: d8f05e1
Also Listed In: python
License: MIT
WWW:
https://github.com/pschanely/CrossHair
Description:
CrossHair is an analysis tool for Python that blurs the line between testing and type systems. If you have a function with type annotations and add a contract in a supported syntax, CrossHair will attempt to find counterexamples for you. CrossHair works by repeatedly calling your functions with symbolic inputs. It uses an SMT solver (a kind of theorem prover) to explore viable execution paths and find counterexamples for you. This is not a new idea; a Python approach was first described in this paper. However, to my knowledge, CrossHair is the most complete implementation: it can use symbolic reasoning for the built-in types, user-defined classes, and much of the standard library.
Homepage    cgit ¦ Codeberg ¦ GitHub ¦ GitLab ¦ SVNWeb - no subversion history for this port

Manual pages:
FreshPorts has no man page information for this port.
pkg-plist: as obtained via: make generate-plist
There is no configure plist information for this port.
Dependency lines:
  • ${PYTHON_PKGNAMEPREFIX}crosshair-tool>0:devel/py-crosshair-tool@${PY_FLAVOR}
To install the port:
cd /usr/ports/devel/py-crosshair-tool/ && make install clean
To add the package, run one of these commands:
  • pkg install devel/py-crosshair-tool
  • pkg install py311-crosshair-tool
NOTE: If this package has multiple flavors (see below), then use one of them instead of the name specified above.
NOTE: This is a Python port. Instead of py311-crosshair-tool listed in the above command, you can pick from the names under the Packages section.
PKGNAME: py311-crosshair-tool
Package flavors (<flavor>: <package>)
  • py311: py311-crosshair-tool
distinfo:
TIMESTAMP = 1728632222 SHA256 (crosshair-tool-0.0.74.tar.gz) = 519be9cc21388686aa1181c3df6b10e58d5f3167eda88d77342d2ccb353eb32d SIZE (crosshair-tool-0.0.74.tar.gz) = 447341

Packages (timestamps in pop-ups are UTC):
py311-crosshair-tool
ABIaarch64amd64armv6armv7i386powerpcpowerpc64powerpc64le
FreeBSD:13:latest----0.0.74---
FreeBSD:13:quarterly--------
FreeBSD:14:latest-0.0.74--0.0.74---
FreeBSD:14:quarterly--------
FreeBSD:15:latest-0.0.74n/a-n/a---
Dependencies
NOTE: FreshPorts displays only information on required and default dependencies. Optional dependencies are not covered.
Build dependencies:
  1. py311-setuptools>=0 : devel/py-setuptools@py311
  2. py311-wheel>=0 : devel/py-wheel@py311
  3. python3.11 : lang/python311
  4. py311-build>=0 : devel/py-build@py311
  5. py311-installer>=0 : devel/py-installer@py311
Test dependencies:
  1. python3.11 : lang/python311
Runtime dependencies:
  1. py311-importlib-metadata>=4.0.0 : devel/py-importlib-metadata@py311
  2. py311-packaging>=0 : devel/py-packaging@py311
  3. py311-pygls>=1.0.0 : devel/py-pygls@py311
  4. py311-typeshed-client>=2.0.5 : devel/py-typeshed-client@py311
  5. py311-typing-extensions>=3.10.0 : devel/py-typing-extensions@py311
  6. py311-typing-inspect>=0.7.1 : devel/py-typing-inspect@py311
  7. py311-z3-solver>=4.13.0.0 : math/py-z3-solver@py311
  8. python3.11 : lang/python311
This port is required by:
for Run
  1. devel/py-hypothesis-crosshair

Configuration Options:
No options to configure
Options name:
devel_py-crosshair-tool
USES:
python
FreshPorts was unable to extract/find any pkg message
Master Sites:
Expand this list (2 items)
Collapse this list.
  1. https://files.pythonhosted.org/packages/source/c/crosshair-tool/
  2. https://pypi.org/packages/source/c/crosshair-tool/
Collapse this list.

Number of commits found: 1

Commit History - (may be incomplete: for full details, see links to repositories near top of page)
CommitCreditsLog message
0.0.74
14 Oct 2024 04:45:08
commit hash: d8f05e1eab204fa83d38addc6efb95d87fac1a1dcommit hash: d8f05e1eab204fa83d38addc6efb95d87fac1a1dcommit hash: d8f05e1eab204fa83d38addc6efb95d87fac1a1dcommit hash: d8f05e1eab204fa83d38addc6efb95d87fac1a1d files touched by this commit
Po-Chuan Hsieh (sunpoet) search for other commits by this committer
devel/py-crosshair-tool: Add py-crosshair-tool 0.0.74

CrossHair is an analysis tool for Python that blurs the line between testing and
type systems.

If you have a function with type annotations and add a contract in a supported
syntax, CrossHair will attempt to find counterexamples for you.

CrossHair works by repeatedly calling your functions with symbolic inputs. It
uses an SMT solver (a kind of theorem prover) to explore viable execution paths
and find counterexamples for you. This is not a new idea; a Python approach was
first described in this paper. However, to my knowledge, CrossHair is the most
complete implementation: it can use symbolic reasoning for the built-in types,
user-defined classes, and much of the standard library.

Number of commits found: 1