Skip to content

feat/verification enum - #84

Open
aagbotemi wants to merge 2 commits into
rust-bitcoin:masterfrom
aagbotemi:feat/verification-enum
Open

aagbotemi wants to merge 2 commits into
rust-bitcoin:masterfrom
aagbotemi:feat/verification-enum

Conversation

@aagbotemi

Copy link
Copy Markdown
Contributor

Summary

BIP-322 defines three validator outputs: valid at time T and age S, inconclusive, and invalid. Two of those lived in Verification while the third was reported as Err, so the spec's own state machine was split across a Rust idiom. Verification now carries all three.

Changes

  • Added Invalid(Error) variant to Verification.
  • Added a Box around TransactionExtract's source.
  • Removed #[allow(clippy::result_large_err)] from every function.

Notes for reviewers

Invalid carries the full Error, which means Verification can no longer derive Clone, Copy, PartialEq or Eq. Error implements none of them, and bitcoin::io::Error can't.

Closes #83
Closes #58

@aagbotemi
aagbotemi force-pushed the feat/verification-enum branch from 9d90e6b to 9447c48 Compare September 29, 2026 17:14

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Verification return value should be just the enum Verification Remove the #[allow(clippy::result_large_err)]

1 participant