mirror of
https://github.com/ElementsProject/elements.git
synced 2026-08-16 13:01:19 +02:00
Merge pull request #1361 from psgreco/elem-23.2.3-rc1
Prepare 23.2.3 rc1
This commit is contained in:
commit
d75c2324f1
11 changed files with 67 additions and 25 deletions
|
|
@ -1,8 +1,8 @@
|
|||
AC_PREREQ([2.69])
|
||||
define(_CLIENT_VERSION_MAJOR, 23)
|
||||
define(_CLIENT_VERSION_MINOR, 2)
|
||||
define(_CLIENT_VERSION_BUILD, 2)
|
||||
define(_CLIENT_VERSION_RC, 0)
|
||||
define(_CLIENT_VERSION_BUILD, 3)
|
||||
define(_CLIENT_VERSION_RC, 1)
|
||||
define(_CLIENT_VERSION_IS_RELEASE, true)
|
||||
define(_COPYRIGHT_YEAR, 2024)
|
||||
define(_COPYRIGHT_HOLDERS,[The %s developers])
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3.
|
||||
.TH ELEMENTS-CLI "1" "July 2024" "elements-cli v23.2.2" "User Commands"
|
||||
.TH ELEMENTS-CLI "1" "August 2024" "elements-cli v23.2.3" "User Commands"
|
||||
.SH NAME
|
||||
elements-cli \- manual page for elements-cli v23.2.2
|
||||
elements-cli \- manual page for elements-cli v23.2.3
|
||||
.SH SYNOPSIS
|
||||
.B elements-cli
|
||||
[\fI\,options\/\fR] \fI\,<command> \/\fR[\fI\,params\/\fR] \fI\,Send command to Elements Core\/\fR
|
||||
|
|
@ -15,7 +15,7 @@ elements-cli \- manual page for elements-cli v23.2.2
|
|||
.B elements-cli
|
||||
[\fI\,options\/\fR] \fI\,help <command> Get help for a command\/\fR
|
||||
.SH DESCRIPTION
|
||||
Elements Core RPC client version v23.2.2
|
||||
Elements Core RPC client version v23.2.3
|
||||
.SH OPTIONS
|
||||
.HP
|
||||
\-?
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3.
|
||||
.TH ELEMENTS-QT "1" "July 2024" "elements-qt v23.2.2" "User Commands"
|
||||
.TH ELEMENTS-QT "1" "August 2024" "elements-qt v23.2.3" "User Commands"
|
||||
.SH NAME
|
||||
elements-qt \- manual page for elements-qt v23.2.2
|
||||
elements-qt \- manual page for elements-qt v23.2.3
|
||||
.SH SYNOPSIS
|
||||
.B elements-qt
|
||||
[\fI\,command-line options\/\fR]
|
||||
.SH DESCRIPTION
|
||||
Elements Core version v23.2.2
|
||||
Elements Core version v23.2.3
|
||||
.SH OPTIONS
|
||||
.HP
|
||||
\-?
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3.
|
||||
.TH ELEMENTS-TX "1" "July 2024" "elements-tx v23.2.2" "User Commands"
|
||||
.TH ELEMENTS-TX "1" "August 2024" "elements-tx v23.2.3" "User Commands"
|
||||
.SH NAME
|
||||
elements-tx \- manual page for elements-tx v23.2.2
|
||||
elements-tx \- manual page for elements-tx v23.2.3
|
||||
.SH SYNOPSIS
|
||||
.B elements-tx
|
||||
[\fI\,options\/\fR] \fI\,<hex-tx> \/\fR[\fI\,commands\/\fR] \fI\,Update hex-encoded Elements transaction\/\fR
|
||||
|
|
@ -9,7 +9,7 @@ elements-tx \- manual page for elements-tx v23.2.2
|
|||
.B elements-tx
|
||||
[\fI\,options\/\fR] \fI\,-create \/\fR[\fI\,commands\/\fR] \fI\,Create hex-encoded Elements transaction\/\fR
|
||||
.SH DESCRIPTION
|
||||
Elements Core elements\-tx utility version v23.2.2
|
||||
Elements Core elements\-tx utility version v23.2.3
|
||||
.SH OPTIONS
|
||||
.HP
|
||||
\-?
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3.
|
||||
.TH ELEMENTS-UTIL "1" "July 2024" "elements-util v23.2.2" "User Commands"
|
||||
.TH ELEMENTS-UTIL "1" "August 2024" "elements-util v23.2.3" "User Commands"
|
||||
.SH NAME
|
||||
elements-util \- manual page for elements-util v23.2.2
|
||||
elements-util \- manual page for elements-util v23.2.3
|
||||
.SH SYNOPSIS
|
||||
.B bitcoin-util
|
||||
[\fI\,options\/\fR] [\fI\,commands\/\fR] \fI\,Do stuff\/\fR
|
||||
.SH DESCRIPTION
|
||||
Elements Core bitcoin\-util utility version v23.2.2
|
||||
Elements Core bitcoin\-util utility version v23.2.3
|
||||
.SH OPTIONS
|
||||
.HP
|
||||
\-?
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3.
|
||||
.TH ELEMENTS-WALLET "1" "July 2024" "elements-wallet v23.2.2" "User Commands"
|
||||
.TH ELEMENTS-WALLET "1" "August 2024" "elements-wallet v23.2.3" "User Commands"
|
||||
.SH NAME
|
||||
elements-wallet \- manual page for elements-wallet v23.2.2
|
||||
elements-wallet \- manual page for elements-wallet v23.2.3
|
||||
.SH DESCRIPTION
|
||||
Elements Core elements\-wallet version v23.2.2
|
||||
Elements Core elements\-wallet version v23.2.3
|
||||
.PP
|
||||
elements\-wallet is an offline tool for creating and interacting with Elements Core wallet files.
|
||||
By default elements\-wallet will act on wallets in the default mainnet wallet directory in the datadir.
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3.
|
||||
.TH ELEMENTSD "1" "July 2024" "elementsd v23.2.2" "User Commands"
|
||||
.TH ELEMENTSD "1" "August 2024" "elementsd v23.2.3" "User Commands"
|
||||
.SH NAME
|
||||
elementsd \- manual page for elementsd v23.2.2
|
||||
elementsd \- manual page for elementsd v23.2.3
|
||||
.SH SYNOPSIS
|
||||
.B elementsd
|
||||
[\fI\,options\/\fR] \fI\,Start Elements Core\/\fR
|
||||
.SH DESCRIPTION
|
||||
Elements Core version v23.2.2
|
||||
Elements Core version v23.2.3
|
||||
.SH OPTIONS
|
||||
.HP
|
||||
\-?
|
||||
|
|
|
|||
|
|
@ -895,8 +895,8 @@ protected:
|
|||
const CScript default_script(CScript() << OP_TRUE);
|
||||
consensus.fedpegScript = StrHexToScriptWithDefault(args.GetArg("-fedpegscript", ""), default_script);
|
||||
consensus.start_p2wsh_script = args.GetIntArg("-con_start_p2wsh_script", consensus.start_p2wsh_script);
|
||||
create_discount_ct = args.GetBoolArg("-creatediscountct", false);
|
||||
accept_discount_ct = args.GetBoolArg("-acceptdiscountct", false) || create_discount_ct;
|
||||
create_discount_ct = args.GetBoolArg("-creatediscountct", create_discount_ct);
|
||||
accept_discount_ct = args.GetBoolArg("-acceptdiscountct", accept_discount_ct) || create_discount_ct;
|
||||
|
||||
// Calculate pegged Bitcoin asset
|
||||
std::vector<unsigned char> commit = CommitToArguments(consensus, strNetworkID);
|
||||
|
|
@ -974,6 +974,8 @@ public:
|
|||
consensus.vDeployments[Consensus::DEPLOYMENT_DYNA_FED].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT;
|
||||
consensus.vDeployments[Consensus::DEPLOYMENT_DYNA_FED].min_activation_height = 0; // No activation delay
|
||||
|
||||
create_discount_ct = false;
|
||||
accept_discount_ct = false;
|
||||
UpdateFromArgs(args);
|
||||
SetGenesisBlock();
|
||||
consensus.hashGenesisBlock = genesis.GetHash();
|
||||
|
|
@ -1017,6 +1019,8 @@ public:
|
|||
|
||||
default_magic_str = "410EDD62";
|
||||
default_signblockscript = "51210217e403ddb181872c32a0cd468c710040b2f53d8cac69f18dad07985ee37e9a7151ae";
|
||||
create_discount_ct = false;
|
||||
accept_discount_ct = true;
|
||||
UpdateFromArgs(args);
|
||||
multi_data_permitted = true;
|
||||
SetGenesisBlock();
|
||||
|
|
|
|||
|
|
@ -441,15 +441,23 @@ void BlockAssembler::addPackageTxs(int& nPackagesSelected, int& nDescendantsUpda
|
|||
uint64_t packageSize = iter->GetSizeWithAncestors();
|
||||
CAmount packageFees = iter->GetModFeesWithAncestors();
|
||||
int64_t packageSigOpsCost = iter->GetSigOpCostWithAncestors();
|
||||
uint64_t discountSize = iter->GetDiscountSizeWithAncestors();
|
||||
if (fUsingModified) {
|
||||
packageSize = modit->nSizeWithAncestors;
|
||||
packageFees = modit->nModFeesWithAncestors;
|
||||
packageSigOpsCost = modit->nSigOpCostWithAncestors;
|
||||
discountSize = modit->discountSizeWithAncestors;
|
||||
}
|
||||
|
||||
if (packageFees < blockMinFeeRate.GetFee(packageSize)) {
|
||||
// Everything else we might consider has a lower fee rate
|
||||
return;
|
||||
if (Params().GetAcceptDiscountCT()) {
|
||||
if (packageFees < blockMinFeeRate.GetFee(discountSize)) {
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
// Everything else we might consider has a lower fee rate
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (!TestPackage(packageSize, packageSigOpsCost)) {
|
||||
|
|
|
|||
|
|
@ -850,7 +850,7 @@ static UniValue createrawpegin(const JSONRPCRequest& request, T_tx_ref& txBTCRef
|
|||
|
||||
// Estimate fee for transaction, decrement fee output(including witness data)
|
||||
unsigned int nBytes = GetVirtualTransactionSize(CTransaction(mtx)) +
|
||||
(1+1+72+1+33/WITNESS_SCALE_FACTOR);
|
||||
(1+1+72+1+33)/WITNESS_SCALE_FACTOR;
|
||||
CCoinControl coin_control;
|
||||
FeeCalculation feeCalc;
|
||||
CAmount nFeeNeeded = GetMinimumFee(*pwallet, nBytes, coin_control, &feeCalc);
|
||||
|
|
|
|||
|
|
@ -19,6 +19,9 @@ class CTTest(BitcoinTestFramework):
|
|||
"-con_connect_genesis_outputs=1",
|
||||
"-initialfreecoins=2100000000000000",
|
||||
"-txindex=1",
|
||||
"-minrelaytxfee=0.00000100",
|
||||
"-blockmintxfee=0.00000100",
|
||||
"-fallbackfee=0.00000100",
|
||||
]
|
||||
self.extra_args = [
|
||||
# node 0 does not accept nor create discounted CTs
|
||||
|
|
@ -154,6 +157,33 @@ class CTTest(BitcoinTestFramework):
|
|||
tx = node0.getrawtransaction(txid, True)
|
||||
assert_equal(tx['vsize'], 2575)
|
||||
|
||||
# check liquidv1 min feerate
|
||||
feerate = 0.1
|
||||
self.log.info(f"Send confidential (discounted) tx to node 1 at {feerate} sats/vb")
|
||||
addr = node1.getnewaddress()
|
||||
info = node1.getaddressinfo(addr)
|
||||
txid = node2.sendtoaddress(info['confidential'], 1.0, "", "", False, None, None, None, None, None, None, feerate)
|
||||
self.sync_mempools([node1, node2])
|
||||
assert_equal(node0.getrawmempool(), [])
|
||||
self.generate(node2, 1, sync_fun=self.sync_blocks)
|
||||
for node in [node2, node1]:
|
||||
tx = node.gettransaction(txid, True, True)
|
||||
assert_equal(tx["confirmations"], 1)
|
||||
decoded = tx['decoded']
|
||||
vin = decoded['vin']
|
||||
vout = decoded['vout']
|
||||
assert_equal(len(vin), 2)
|
||||
assert_equal(len(vout), 3)
|
||||
if 'bitcoin' in decoded['fee']:
|
||||
assert_equal(decoded['fee']['bitcoin'], Decimal('-0.00000041'))
|
||||
else:
|
||||
assert_equal(decoded['fee'][bitcoin], Decimal('0.00000041'))
|
||||
assert_equal(decoded['vsize'], 2575)
|
||||
assert_equal(decoded['discountvsize'], 410)
|
||||
# node0 only has vsize
|
||||
tx = node0.getrawtransaction(txid, True)
|
||||
assert_equal(tx['vsize'], 2575)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
CTTest().main()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue