Commit Graph
173 Commits
Author SHA1 Message Date
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Earle Lowe
452cbf890d build(deps): bump ruff from 0.14.6 to 0.14.13 (#20439)
* build(deps): bump ruff from 0.14.6 to 0.14.13

Bumps [ruff](https://github.com/astral-sh/ruff) from 0.14.6 to 0.14.13.
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](https://github.com/astral-sh/ruff/compare/0.14.6...0.14.13)

---
updated-dependencies:
- dependency-name: ruff
  dependency-version: 0.14.13
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* ruff fixes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Earle Lowe <e.lowe@chia.net>
2026-02-10 11:01:17 -08:00
Arvid NorbergandGitHub 507a2b858d update the fast FullBlock parser (#20458)
* update the fast FullBlock parser (that just skips fields) to support the new serialization of RewardChainBlock

* add test and shard the test, to enable it running in parallel

* disable expensive tests on MacOS Intel

* document some aspects of the full_blocks_utils test
2026-02-10 11:00:57 -08:00
Arvid NorbergandGitHub 8f8d27aca4 push out testnet11 soft fork activation height by 8 days (40000 blocks) (#20445) 2026-01-28 09:52:56 -08:00
Arvid NorbergandGitHub b7b3638fcc bump chia_rs to 0.35.1 (#20393) 2026-01-09 12:07:51 -08:00
Earle LoweandGitHub 05094c27c9 context manager for BlockTools (#20326)
* context manager for BlockTools

* Missed one usage and fixed up Self import

* Ignore cleanup errors in tempdir cleanup for BlockTools

* Remove debug prints

* Fixed up sync blocktools and use @contextmanager

* Address review comments

* Add return type

* Empty commit for github

* Strange github things

* adjust order of finding ports
2025-12-15 09:49:12 -08:00
Earle LoweandGitHub b6c777ec3b Add context handler features to MempoolManager (#20343)
* Add context handler features to MempoolManager

* No need to manually shut_down mempoolmanager

* Fix up issues with ordering in full node

* Fix dumb programmer issues

* Fix up some bugbot issues

* Move timing to inside context manager

* fix wrong indent
2025-12-15 09:48:34 -08:00
Arvid NorbergandGitHub 426590feaf bump chia_rs and update uses of RewardChainBlock and SubEpochSummary (#20304) 2025-12-03 10:27:55 -08:00
8315f62ae6 Import check_time_locks() and CoinRecord (#19848)
* initial commit

* fix int to bool map

* another int bool map

* cast error to Err class

* cast to Err in a couple other places

* remaining couple

* ruff

* inline coinstore bool

* typing fixes

* import directly from rust and remove legacy file

* fix lingering ref to coinrecord

* another outdated import

* ruff

* typping fix

* minor simplifications

* Fix test

* fix import merge

* address comments

* undo coin_store change

---------

Co-authored-by: Arvid Norberg <arvid@libtorrent.org>
Co-authored-by: Matt <quexington@gmail.com>
2025-11-26 12:48:42 -08:00
Matt HauffandGitHub 40db4635a8 [LABS-245] Enable PEP604 Ruff rules (#20269)
* Enable PEP604 Ruff rules

* Fix harcoded signature in test

* Hack CLVMStreamable test with note to fast follow
2025-11-18 12:34:00 -08:00
Arvid NorbergandGitHub 38d2d9f2d0 make sure to pass in the correct previous transaction block height (#20237)
* make sure to pass in the correct previous transaction block height to get_flags_for_height_and_constants()

* review comments
2025-11-14 16:29:51 -06:00
Arvid NorbergandGitHub 5664516dda Bump chia rs 0.34.0 (#20226)
bump chia_rs to 0.34.0
2025-11-10 17:02:10 -07:00
Matt HauffandGitHub fcdb8e4925 Manual fixes for upcoming Ruff pyupgrade push (#20213)
* Manual fixes

* Revert back to variable in type expression

* Fix streamable to handle UnionType
2025-11-03 09:16:42 -07:00
Arvid NorbergandGitHub 742a81a79f filelock for test- plots and blocks (#20193)
* introduce file lock for creating the test-plots in tests. This avoids having every process in pytest-xdist create the same plots, clobbering each other

* add lockfile to the test fixtures that generate the test blockchains. These are quite expensive to generate, we don't want every pytest-xdist process to have to do it

* improve error message when the plot manager has an unexpected number of plots, in the simulator

* review comments: use FileLock instead of custom made
2025-10-24 15:54:59 -07:00
Arvid NorbergandGitHub 3da5434382 fix serialization of partial-proofs (#20188)
* fix serialization of partial-proofs (list[uint64]) to bytes, for use as key in dictionary

* improve tests for partial-proof serialization
2025-10-23 08:59:05 -07:00
Arvid NorbergandGitHub 794cce7826 PoS2-prover (#20159)
* bump chia_rs to 0.31.0

* integrate new pos2 API from chia_rs into V2Prover

* fixup test_harvester_api mocking of Prover

* review-comments: rename get_quality() to get_string() on Quality protocol

* reivew comments

* fixup bump chia_rs

* restore quality string to bytes32
2025-10-22 15:40:25 -07:00
Earle LoweandGitHub 3a549ad1de Skip slow test for FullBlock parser (#20183)
* Skip slow test for FullBlock parser

Skip slow test for FullBlock parser due to limited usefulness.

* shorten line

* format fix
2025-10-22 08:52:29 -07:00
Earle LoweandGitHub 86cb746f4a Increase job timeout from 60 to 90 seconds (#20167) 2025-10-22 08:51:05 -07:00
e947dd14c7 [LABS-244] Remove python 3.9 support (#20099)
* initial changes

* poetry fix

* Address ruff

* Install scripts issues

* Experiment a little bit

* Okay now try for rocky linux and use 3.12 instead

* Remove the now unused thing

* Use dnf for consistency

* Simplify installations

* Still need git

* relock poetry with 2.2.0

* relock poetry with 2.2.0

* try `git checkout main poetry.lock && .penv/bin/poetry lock` on altendky's system

---------

Co-authored-by: Kyle Altendorf <sda@fstab.net>
2025-10-14 07:19:52 -07:00
Almog De PazandGitHub 6bd9360f5e Farmer solver networking (#20019)
* farmer connects to solver

* default solver peer

* configure solver peer

* solver trusted peers

* minor fixes

* connect to solver cli

* fix and rename fixture

* pr fixes

* load new service config if missing

* fix failling test

* fix test
2025-09-29 09:39:10 -07:00
Arvid NorbergandGitHub c1d15dfda3 Simplify rate limit numbers (#19991)
* remove unused default_settings in rate limits

* simplify rate_limit_numbers by flattening the structure. just map message type -> rate limits

* review comments
2025-09-11 08:54:17 -07:00
Arvid NorbergandGitHub f17dedd5be bump chia_rs dependency (#20023) 2025-09-05 06:31:21 -07:00
Amine Khaldi a662d559e2 Merge commit 'ecb54a5874681326b9ba0d0f33e68c8d718c8639' into checkpoint/main_from_release_2.5.6_ecb54a5874681326b9ba0d0f33e68c8d718c8639 2025-08-29 20:46:54 +01:00
ecb54a5874 support previous harvester protocol (#19994)
* support previous harvester protocol

* Update chia/protocols/harvester_protocol.py

Co-authored-by: Amine Khaldi <amine.khaldi@reactos.org>

---------

Co-authored-by: Amine Khaldi <amine.khaldi@reactos.org>
2025-08-28 12:25:38 -07:00
52cd1086a7 [CHIA-3593] New solver service (#19938)
* add solver service

* lint

* wire service evrywhear

* prover protocol and v2Prover

* format name

* format

* refactor filename

* tests/raise unimplemented

* add get_filename_str to mock

* rename methods

* rename

* refactor

* improve coverage

* test from bytes

* harvester and farmer v2 support

* solver service, api, rpc

* clenup, add config to tests

* pre-commit

* remove mocks from test

* aync solver, fixtures, tests

* naming

* remove redundant farmer message

* solver fixtures and tests

* change quality_string to quality_chain

* fix service tests, cleanup

* name change, fix comments

* lint

* rename to partial proof

* network protocol test, use ThreadPoolExecutor

* naming and types

* check filter for both plot versions

* update network protocol tests

* more pr comments addressed

* fix rename

* fix network formatting error

* change to Assertion errors

* add todo

* remove strength from SolverInfo

* more pr comments, fix test to catch assertion

* revert strength

* test and comments

* rename to partial proof

---------

Co-authored-by: Arvid Norberg <arvid@libtorrent.org>
2025-08-22 15:26:09 -07:00
Arvid NorbergandGitHub 18fd65d13b pass along plot format version from ProverProtocol into ProofOfSpace (#19930)
pass along plot format version from ProverProtocol into ProofOfSpace objects
2025-08-14 12:31:07 -07:00
Arvid NorbergandGitHub 81c1025eeb Bump chia rs 0.29 (#19953)
### Purpose:

Bump the chia_rs dependency and adjust interactions according to changes
to its API. Specifically,
https://github.com/Chia-Network/chia_rs/pull/1213 .

`validate_clvm_and_signature()` takes flags instead of height.
`SpendConditions` has a `fingerprint` field.
2025-08-13 09:22:11 -07:00
Matt HauffandGitHub a803dc0fa6 [CHIA-3633] August 2025 pass of Ruff linting rules (#19929)
* Enable Ruff `PLR1704` (`redefined-argument-from-local`)

* Enable Ruff `PLR5501` (`collapsible-else-if`)

* Enable Ruff `PLW2901` (`redefined-loop-name`)

* bad change

* Enable Ruff `RUF043` (`pytest-raises-ambiguous-pattern`)

* Enable Ruff `RUF046` (`unnecessary-cast-to-int`)

* Enable Ruff `RUF052` (`used-dummy-variable`)

* Remove unused ignore `UP006`

* One mis-signaled regex

* Comments by @altendky

* bad change, my bad
2025-08-11 14:39:12 -07:00
Richard KissandGitHub 4e6038ba3b Simplify dependencies wrt chia.server (#19895)
Remove some dependencies in `chia.server`.
2025-08-06 12:03:47 -07:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Kyle Altendorf
4857c6f5a8 build(deps): bump mypy from 1.15.0 to 1.17.0 (#19821)
* build(deps): bump mypy from 1.15.0 to 1.17.0

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 1.17.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* handle mypy commentary

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Kyle Altendorf <sda@fstab.net>
2025-08-01 09:17:06 -07:00
Kyle AltendorfandGitHub 8bba60158d use now allowed randbytes and other helpers (#19838) 2025-07-21 08:55:55 -07:00
matt-o-howandGitHub 9f8ba79ac8 Use chia_rs in API instead of clvm (#19803)
* initial commit

* fix precommit errors

* test passing

* ruff

* remove SpendInfo and mempool_check_conditions

* no need to call it _rust now

* fix mempool test

* fix precommit errors

* fix test generator tools

* add comment about impending chia_rs fix
2025-07-15 08:34:45 -07:00
Richard KissandGitHub 7cee2b2b61 ruff issues (#19787) 2025-07-14 08:52:42 -05:00
Richard KissandGitHub d01758f9c8 BlockHeightMapProtocol (#19798) 2025-07-11 19:38:14 -05:00
Arvid NorbergandGitHub dac837e799 bump chia_rs (#19802) 2025-07-10 16:12:29 -05:00
Amine KhaldiandGitHub c609d0bba1 CHIA-2900 Fast forward mempool optimization (#19713)
Fast forward mempool optimization.
2025-07-09 20:49:45 -05:00
Arvid NorbergandGitHub 0864c34d5b [CHIA-3205] unify test constants on the ones used by BlockTools (#19768)
unify test constants on the ones used by BlockTools
2025-07-02 14:19:04 -07:00
a125e7b690 Create CoinStoreProtocol to remove a dependencies on chia.full_node from chia.consensus (#19741)
* `CoinStoreProtocol`

* Remove `.get_all_coins`

* Apply suggestions from code review

Uses `...` instead of values.

Co-authored-by: Kyle Altendorf <sda@fstab.net>

* Add `.is_empty` to protocol

* Improve test fixture stuff

---------

Co-authored-by: Kyle Altendorf <sda@fstab.net>
2025-06-30 16:05:40 -07:00
Arvid NorbergandGitHub 9d8c170b1a Fix plot size override (#19771)
* fix testnet11 plot size override as the constant has changed name

* correct overrides when starting the harvester as well

* update
2025-06-27 11:29:07 -07:00
Amine KhaldiandGitHub 91e4c16d25 CHIA-3207 Pass coin IDs from Blockchain's _reconsider_peak to CoinStore's new_block to avoid recomputing them (#19749)
Pass coin IDs from Blockchain's _reconsider_peak to CoinStore's new_block to avoid recomputing them.
2025-06-26 16:29:25 -07:00
Arvid NorbergandGitHub 8a874623ec compute plot filter on the harvester (#19765)
compute plot filter on the harvester instead of passing it in the NewSignagePointHarvester protocol message. With v2 plots the plot filter will differ, so it depends on which plot we find a proof in
2025-06-26 11:16:06 -07:00
matt-o-howandGitHub 80d38200a3 Migrate away from clvm imports (#19730)
* migrate casts to wallet util

* reset mempool_check_conditions

* ruff to re-order imports

* reset full_node_rpc_api

* add tests for casts

* ruff and type

* move to util to avoid consensus depending on wallet

* ruff again

* add a deterministic seed for random
2025-06-26 10:18:04 -07:00
Arvid NorbergandGitHub 5d8b3c8ca7 bump chia_rs to 0.26.0 (#19746)
* bump chia_rs to 0.26.0

* review comments

* more review comments

* fix lockfile
2025-06-26 10:17:50 -07:00
Amine KhaldiandGitHub 257ba70f89 CHIA-3217 Simplify SpendSim's farm_block (#19760)
Simplify SpendSim's farm_block.
2025-06-26 10:17:12 -07:00
Amine KhaldiandGitHub 83a85b8942 CHIA-3173 Leverage CoinStore's new_block in SpendSim's farm_block instead of custom coin store manipulation (#19729)
Leverage CoinStore's new_block in SpendSim's farm_block instead of custom coin store manipulation.
2025-06-23 09:11:01 -07:00
Richard KissandGitHub 3e30f67405 Refactor BlockHeightMap Creation to Decouple It from Blockchain (#19711)
Create `BlockHeightMap` outside of `Blockchain` so `chia.consensus`
doesn't have to depend on a specific storage mechanism.
2025-06-17 11:53:26 -07:00
Kyle AltendorfandGitHub 32ca9c0804 by service not layer (#19715)
* by service not layer

* monkey patch fixup
2025-06-16 14:31:51 -07:00
Amine KhaldiandGitHub ab61a0dc86 CHIA-3050 Extract _add_coin_records out of CoinStore and simplify it (#19686)
Turn CoinStore's _add_coin_records into a freeform add_coin_records_to_db.
2025-06-12 11:13:31 -07:00
Kyle AltendorfandGitHub f054d339a1 unignore some ruff s rules (#19703) 2025-06-12 11:12:54 -07:00
6050235bdb [CHIA-3043] Add (hopefully) non-controversial ruff rules (#19684)
* Add (hopefully) non-controversial ruff rules

* mypy-exclusions.txt

* PIE

* Fix pre-commit?

* PYI

* RSE

* S + ignores

* Whitespace fix

* Re-add build-init-files.py

* Add comment about security ignores

* Update mypy-exclusions.txt

Co-authored-by: Kyle Altendorf <sda@fstab.net>

* Fix the executable status of build-init-files.py

* Set executable bit for tools/run_block.py and readd shebang

* Fix new errors

---------

Co-authored-by: Kyle Altendorf <sda@fstab.net>
2025-06-11 08:36:08 -07:00
9289a05f12 New pos format (#19616)
* bump chia_rs

* update db_graftroot test

* refactor new pos format

* fix merge

* fix import

* fix missing param in test

* merge fixes/review fixes

* test prev_tx_block

* ermove double line

* # TODO: todo_v2_plots

* fix conftests monkeypatch

* fix spelling

* remove redundant merge code

* move prev_tx test

* add not impemented test to proof of space v2

* merge duplication fix

* fix typo, raise dont assert

* bump protocol, phase out test

* integer math

* add overflow case to test

---------

Co-authored-by: Arvid Norberg <arvid@libtorrent.org>
2025-06-10 11:27:17 -07:00