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.78 devel 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-11-21 13:38:05
Commit Hash: 1826e7e
Also Listed In: python
License: MIT
WWW:
https://crosshair.readthedocs.io/en/latest/
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.
HomepageHomepage    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 = 1731679230 SHA256 (crosshair-tool-0.0.78.tar.gz) = 27d6863d4a3f287b1674d36071b0af1b75a42535871083478b8affdf8c03fb8a SIZE (crosshair-tool-0.0.78.tar.gz) = 446672

Packages (timestamps in pop-ups are UTC):
py311-crosshair-tool
ABIaarch64amd64armv6armv7i386powerpcpowerpc64powerpc64le
FreeBSD:13:latest0.0.780.0.78-0.0.780.0.78---
FreeBSD:13:quarterly--------
FreeBSD:14:latest0.0.780.0.78-0.0.780.0.78---
FreeBSD:14:quarterly--------
FreeBSD:15:latest0.0.780.0.78n/a0.0.78n/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
  2. devel/py-hypothesis-crosshair

Configuration Options:
No options to configure
Options name:
devel_py-crosshair-tool
USES:
python:3.9+
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: 4

Commit History - (may be incomplete: for full details, see links to repositories near top of page)
CommitCreditsLog message
0.0.78
21 Nov 2024 13:38:05
commit hash: 1826e7e18ddf5f48d6004e9566fe28880d117c13commit hash: 1826e7e18ddf5f48d6004e9566fe28880d117c13commit hash: 1826e7e18ddf5f48d6004e9566fe28880d117c13commit hash: 1826e7e18ddf5f48d6004e9566fe28880d117c13 files touched by this commit
Po-Chuan Hsieh (sunpoet) search for other commits by this committer
devel/py-crosshair-tool: Update to 0.0.78

Changes:	https://github.com/pschanely/CrossHair/releases
		https://crosshair.readthedocs.io/en/latest/changelog.html
0.0.76
26 Oct 2024 02:01:52
commit hash: 12a1e1e1d394706419eece9ecdb1386460928ea9commit hash: 12a1e1e1d394706419eece9ecdb1386460928ea9commit hash: 12a1e1e1d394706419eece9ecdb1386460928ea9commit hash: 12a1e1e1d394706419eece9ecdb1386460928ea9 files touched by this commit
Po-Chuan Hsieh (sunpoet) search for other commits by this committer
devel/py-crosshair-tool: Update to 0.0.76

Changes:	https://github.com/pschanely/CrossHair/releases
		https://crosshair.readthedocs.io/en/latest/changelog.html
0.0.75
25 Oct 2024 15:56:43
commit hash: 58c75be23e557cce77b492f11d86bf719d1baa44commit hash: 58c75be23e557cce77b492f11d86bf719d1baa44commit hash: 58c75be23e557cce77b492f11d86bf719d1baa44commit hash: 58c75be23e557cce77b492f11d86bf719d1baa44 files touched by this commit
Po-Chuan Hsieh (sunpoet) search for other commits by this committer
devel/py-crosshair-tool: Update to 0.0.75

- Update WWW

Changes:	https://github.com/pschanely/CrossHair/releases
		https://crosshair.readthedocs.io/en/latest/changelog.html
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: 4