Original release notes
This release changes how the receiver's ownership guard identifies a coin, so check_inputs_not_owned now takes a closure over &OutPoint rather than &Script. This is a breaking change for receiver implementations. It also hardens Original PSBT validation, unifies the BIP 77 mailbox derivation, and expands the receiver interface documentation.
Selected Improvements:
API Changes
- Breaking:
check_inputs_not_ownedtakes
&mut impl FnMut(&OutPoint) -> Result<bool, ImplementationError> in place of a closure over &Script. The closure must answer for every outpoint the wallet can sign
ShortIdimplementsFrom<&HpkePublicKey>, giving sender and receiver a
single BIP 77 mailbox derivation instead of two copies of the same hash (#1763)
Bug Fixes
- Harden Original PSBT input validation and the proposal finalization checks
Documentation
- Revise and expand the receiver interface documentation across the v1 and v2
state machines (#1710)
What's Changed
- Update setuptools to 83.0.0 by @benalleng in https://github.com/payjoin/rust-payjoin/pull/1768
- Unify mailbox ShortId derivation by @Jolah1 in https://github.com/payjoin/rust-payjoin/pull/1763
- Expose PjParam::receiver_pubkey() over FFI by @DanGould in https://github.com/payjoin/rust-payjoin/pull/1771
- Add and Revise Receiver Interface Comments by @xstoicunicornx in https://github.com/payjoin/rust-payjoin/pull/1710
- Add comments to FFI interface by @xstoicunicornx in https://github.com/payjoin/rust-payjoin/pull/1653
- Automate crates.io releases by @spacebear21 in https://github.com/payjoin/rust-payjoin/pull/1770
- Add dangould release signing key by @DanGould in https://github.com/payjoin/rust-payjoin/pull/1777
- Add benalleng release signing key by @benalleng in https://github.com/payjoin/rust-payjoin/pull/1778
- Remove output substitution test helper by @lntutor in https://github.com/payjoin/rust-payjoin/pull/1775
- Bump payjoin to version 1.0.0-rc.7 by @spacebear21 in https://github.com/payjoin/rust-payjoin/pull/1782
New Contributors
- @Jolah1 made their first contribution in https://github.com/payjoin/rust-payjoin/pull/1763
- @lntutor made their first contribution in https://github.com/payjoin/rust-payjoin/pull/1775
Full Changelog: https://github.com/payjoin/rust-payjoin/compare/payjoin-cli-1.0.0-rc.1...payjoin-1.0.0-rc.7

