external_requirements.merge(&internal_requirements.unwrap_or_default())?;
let version = match params.version {
- Some(tx_builder::Version(0)) => return Err(CreateTxError::Version0),
- Some(tx_builder::Version(1)) if requirements.csv.is_some() => {
+ Some(transaction::Version(0)) => return Err(CreateTxError::Version0),
+ Some(transaction::Version::ONE) if requirements.csv.is_some() => {
return Err(CreateTxError::Version1Csv)
}
- Some(tx_builder::Version(x)) => x,
- None if requirements.csv.is_some() => 2,
- None => 1,
+ Some(v) => v,
+ None => transaction::Version::TWO,
};
// We use a match here instead of a unwrap_or_else as it's way more readable :)
};
let mut tx = Transaction {
- version: transaction::Version::non_standard(version),
+ version,
lock_time,
input: vec![],
output: vec![],
let params = TxParams {
// TODO: figure out what rbf option should be?
- version: Some(tx_builder::Version(tx.version.0)),
+ version: Some(tx.version),
recipients: tx
.output
.into_iter()
.unwrap();
let address = wallet.peek_address(KeychainKind::External, 0).address;
let tx = Transaction {
- version: transaction::Version::ONE,
+ version: transaction::Version::TWO,
lock_time: absolute::LockTime::ZERO,
input: vec![],
output: vec![TxOut {
use bitcoin::psbt::{self, Psbt};
use bitcoin::script::PushBytes;
use bitcoin::{
- absolute, Amount, FeeRate, OutPoint, ScriptBuf, Sequence, Transaction, TxIn, TxOut, Txid,
- Weight,
+ absolute, transaction::Version, Amount, FeeRate, OutPoint, ScriptBuf, Sequence, Transaction,
+ TxIn, TxOut, Txid, Weight,
};
use rand_core::RngCore;
}
}
-/// Transaction version
-///
-/// Has a default value of `1`
-#[derive(Debug, Ord, PartialOrd, Eq, PartialEq, Hash, Clone, Copy)]
-pub(crate) struct Version(pub(crate) i32);
-
-impl Default for Version {
- fn default() -> Self {
- Version(1)
- }
-}
-
/// Policy regarding the use of change outputs when creating a transaction
#[derive(Default, Debug, Ord, PartialOrd, Eq, PartialEq, Hash, Clone, Copy)]
pub enum ChangeSpendPolicy {
assert_eq!(filtered.len(), 1);
assert_eq!(filtered[0].keychain, KeychainKind::Internal);
}
-
- #[test]
- fn test_default_tx_version_1() {
- let version = Version::default();
- assert_eq!(version.0, 1);
- }
}