chia-puzzles

Crates.iochia-puzzles
lib.rschia-puzzles
version
sourcesrc
created_at2024-05-14 21:14:44.658549
updated_at2024-12-23 18:18:05.324168
descriptionChia primitives needed for building wallets.
homepagehttps://github.com/Chia-Network/chia_puzzles
repositoryhttps://github.com/Chia-Network/chia_puzzles
max_upload_size
id1240313
Cargo.toml error:TOML parse error at line 18, column 1 | 18 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include`
size0
(ChiaAutomation)

documentation

README

Chia Puzzles

This is a collection of the standard Chia puzzles. These are the puzzles which are deployed on chain and therefore cannot change.

This repository tracks the source code, the compiled hex, and a hash of the compiled hex to ensure continuity.

All puzzles are kept in the puzzles folder as both a .clsp and .clsp.hex file.

The Python and Rust bindings are created by running generate_chialisp_constants.py

Adding Bindings for a New Puzzle

  1. Add the .clsp and .clsp.hex files into the programs folder.
  2. Add the puzzle name, path, and shatree hash into the list in generate_chialisp_constants.py.
  3. Run generate_chialisp_constants.py.
  4. Commit your changes, including to the outputted programs.py and programs.rs.

Testing

This project is managed with poetry for Python and cargo for Rust.

To run the Python tests:

python -m venv venv

pip install poetry
. ./venv/bin/activate
poetry install
pytest chia_puzzles_py/tests

If you're on Windows activate the venv with . venv\Scripts\activate instead

To run the Rust tests:

cargo test --all
Commit count: 111

cargo fmt