Skip to main content

Crucible Logo

Crucible is a terminal UI application wrapper for forge test built with Textual (💖). It provides an interactive environment to navigate your test tree and the trace output of running a test with full verbosity.

Installation

I recommend using pipx, which installes applications distributed via pypi into their own virtual environment.

$ pipx install forge-crucible

This will install the crucible executable.

Running

To run it just navigate to the root of a foundry project and run:

$ crucible

The app should run the full test suite and output a tree representation:

Example Test Suite view

You can navigate the tree via the arrows or vim-style (recommended 🤓). You can also press CTRL+P to bring up the command pallet where you can fuzzy-find tests to run:

Example Search view

Once you pick a test you will see the trace view:

Example Test Trace view

Disclaimer

This is very alpha software so it might not work. It employs a grammer to parse the forge output. I've tried it on a variety of tests but it could still fail when opening a test. If it happens it will create a /tmp/<test-name>.txt file with the output. Please open an issue and attach the output.

Upcoming features

  • Trace filtering: Have a list of customizable filters that can be toggled to hide trace lines from the output. The current filtering feature just filters console.log, VM.label and VM.addr.
  • Trace search: Jump to trace line by fuzzy searching on the function call or event name.
  • Profile switch: Switch the foundry profile that you're using to run the tests, should automatically detect existing profiles.
  • Custom labling: Ability to do in-app labeling of addresses or bytes32 identifiers.
  • External decoding: Use public resources to decode function calls and events which could come up in fork-tests.

Metadata

Release files for forge-crucible 0.1.23

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for forge-crucible 0.1.23
File Size Uploaded Provenance
forge_crucible-0.1.23.tar.gz 19.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for forge-crucible 0.1.23
File Interpreter ABI Platform
forge_crucible-0.1.23-py3-none-any.whl Python 3 none any Details

Total release size: 44.5 kB

Release files / forge_crucible-0.1.23.tar.gz

Download URL forge_crucible-0.1.23.tar.gz
Size 19.1 kB
Tags Source
SHA-256 checksum
How to use checksums
1293e3fdd7289bd2014ec56cf6832d514dd3d44690b8965d6562a6b6a07d2291
BLAKE2b-256 checksum
How to use checksums
d9bec8cc7b4722eb2b5a901d26c328b617b75a29dce7706d9914701255897f0c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.3 CPython/3.12.6 Darwin/23.5.0

Release files / forge_crucible-0.1.23-py3-none-any.whl

Download URL forge_crucible-0.1.23-py3-none-any.whl
Size 25.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e95666f280ca94fc5613e4423f0846f3480e24a205699687ef83336393addb18
BLAKE2b-256 checksum
How to use checksums
b6a7a70142473db139420eacb705cff7f25f4e7150f5b5dfed6e45e996b67434
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.3 CPython/3.12.6 Darwin/23.5.0

Security for forge-crucible 0.1.23

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page