Merge #16525: Dump transaction version as an unsigned integer in RPC/TxToUniv

e80259f197 Additionally treat Tx.nVersion as unsigned in joinpsbts (Matt Corallo)
970de70bdd Dump transaction version as an unsigned integer in RPC/TxToUniv (Matt Corallo)

Pull request description:

  Consensus-wise we already treat it as an unsigned integer (the
  only rules around it are in CSV/locktime handling), but changing
  the underlying data type means touching consensus code for a
  simple cleanup change, which isn't really worth it.

  See-also, https://github.com/rust-bitcoin/rust-bitcoin/pull/299

ACKs for top commit:
  sipa:
    ACK e80259f197
  practicalswift:
    ACK e80259f197
  ajtowns:
    ACK e80259f197 code review -- checked all other uses of tx.nVersion treat it as unsigned (except for policy.cpp:IsStandard anyway), so looks good.
  naumenkogs:
    ACK e80259f

Tree-SHA512: 6760a2c77e24e9e1f79a336ca925f9bbca3a827ce02003c71d7f214b82ed3dea13fa7d9f87df9b9445cd58dff8b44a15571d821c876f22f8e5a372a014c9976b
This commit is contained in:
Wladimir J. van der Laan
2020-07-16 21:33:13 +02:00
4 changed files with 18 additions and 6 deletions

View File

@@ -0,0 +1,9 @@
RPC changes
-----------
Exposed transaction version numbers are now treated as unsigned 32-bit integers
instead of signed 32-bit integers. This matches their treatment in consensus
logic. Versions greater than 2 continue to be non-standard (matching previous
behavior of smaller than 1 or greater than 2 being non-standard). Note that
this includes the joinpsbt command, which combines partially-signed
transactions by selecting the highest version number.