SHOWING: First 60
let reveal_address = recipient();
let (_commit_tx, reveal_tx, _private_key, _) = Batch {
satpoint,
parent_info: None,
inscriptions: vec![inscription],
destinations: vec![reveal_address],
commit_fee_rate: FeeRate::try_from(1.0).unwrap(),
reveal_fee_rate: FeeRate::try_from(1.0).unwrap(),
no_limit: true,
reinscribe: false,
postage: TransactionBuilder::TARGET_POSTAGE,
mode: Mode::SharedOutput,
..Default::default()
}
.create_batch_inscription_transactions(
BTreeMap::new(),
Chain::Mainnet,
BTreeSet::new(),
utxos.into_iter().collect(),
[commit_address, change(1)],
)
.unwrap();
assert!(reveal_tx.size() >= MAX_STANDARD_TX_WEIGHT as usize);
}
#[test]
fn cbor_and_json_metadata_flags_conflict() {
assert_regex_match!(
Arguments::try_parse_from([
"ord",
"wallet",
"inscribe",
"--cbor-metadata",
"foo",
"--json-metadata",
"bar",
"--file",#45,008,378text };
let unsigned_transaction = TransactionBuilder::new(
satpoint,
inscriptions,
unspent_outputs,
locked_outputs,
address.clone(),
change,
self.fee_rate,
postage,
)
.build_transaction()?;
let signed_tx = client
.sign_raw_transaction_with_wallet(&unsigned_transaction, None, None)?
.hex;
let txid = client.send_raw_transaction(&signed_tx)?;
Ok(Box::new(Output { transaction: txid }))
}
fn lock_inscriptions(
client: &Client,
inscriptions: BTreeMap<SatPoint, InscriptionId>,
unspent_outputs: BTreeMap<bitcoin::OutPoint, bitcoin::Amount>,
) -> Result {
let all_inscription_outputs = inscriptions
.keys()
.map(|satpoint| satpoint.outpoint)
.collect::<HashSet<OutPoint>>();
let wallet_inscription_outputs = unspent_outputs
.keys()
.filter(|utxo| all_inscription_outputs.contains(utxo))
.cloned()
.collect::<Vec<OutPoint>>();
if !client.lock_unspent(&wallet_inscription_outputs)? {#45,008,360text
save-ord-dev-state domain="ordinals-dev.com":
$EDITOR ./deploy/save-ord-dev-state
scp ./deploy/save-ord-dev-state root@{{domain}}:~
ssh root@{{domain}} "./save-ord-dev-state"
log unit="ord" domain="ordinals.net":
ssh root@{{domain}} 'journalctl -fu {{unit}}'
test-deploy:
ssh-keygen -f ~/.ssh/known_hosts -R 192.168.56.4
vagrant up
ssh-keyscan 192.168.56.4 >> ~/.ssh/known_hosts
rsync -avz \
--delete \
--exclude .git \
--exclude target \
--exclude .vagrant \
--exclude index.redb \
. [email protected]:ord
ssh [email protected] 'cd ord && ./deploy/setup'
time-tests:
cargo +nightly test -- -Z unstable-options --report-time
profile-tests:
cargo +nightly test -- -Z unstable-options --report-time \
| sed -n 's/^test \(.*\) ... ok <\(.*\)s>/\2 \1/p' | sort -n \
| tee test-times.txt
fuzz:
#!/usr/bin/env bash
set -euxo pipefail
cd fuzz
while true; do
cargo +nightly fuzz run transaction-builder -- -max_total_time=60
cargo +nightly fuzz run runestone-decipher -- -max_total_time=60
#45,007,826text assert_eq!(
Runestone::decipher(&Transaction {
input: Vec::new(),
output: vec![TxOut {
script_pubkey: script::Builder::new()
.push_opcode(opcodes::all::OP_RETURN)
.push_slice(b"RUNE_TEST")
.push_slice::<&PushBytes>(varint::encode(2).as_slice().try_into().unwrap())
.push_slice::<&PushBytes>(varint::encode(4).as_slice().try_into().unwrap())
.push_slice::<&PushBytes>(varint::encode(1).as_slice().try_into().unwrap())
.push_slice::<&PushBytes>(varint::encode(5).as_slice().try_into().unwrap())
.push_slice::<&PushBytes>(varint::encode(0).as_slice().try_into().unwrap())
.push_slice::<&PushBytes>(varint::encode(1).as_slice().try_into().unwrap())
.push_slice::<&PushBytes>(varint::encode(2).as_slice().try_into().unwrap())
.push_slice::<&PushBytes>(varint::encode(3).as_slice().try_into().unwrap())
.into_script(),
value: 0
}],
lock_time: locktime::absolute::LockTime::ZERO,
#44,999,115textagostinelli 7485
conglutinin 7485
culverhouse 7485
nonsentient 7485
kleptocracy 7486
fitzharding 7487
gillenwater 7488
lichchhavis 7489
gemological 7490
nonparanoid 7491
corkscrewed 7496
dunelmensis 7497
mammillated 7497
ausgenommen 7501
concentrica 7501
capricornia 7503
excystation 7503
mangasarian 7503
neighboured 7503
avanguardia 7504
badenweiler 7504
broadleaves 7505
floxuridine 7505
institucion 7505
banyarwanda 7506
competentes 7507
biathanatos 7510
disziplinen 7511
azoospermic 7512
hottempered 7512
lampholders 7512
boringhieri 7514
diacetylene 7514
antecedente 7517
flunisolide 7517
neddermeyer 7519
benzylidene 7520
curvirostra 7521
angetroffen 7523
herengracht 7524
dittography 7527
disguisings 7528
micromixing 7528
macerations 7534
dranesville 7535
conversible 7537
homegardens 7538
nonreferred 7538
bradycardic 7540
lectureroom 7541
homogametic 7545
areopagites 7546
fluosilicic 7546
geophysique 7546
mertensiana 7546
hesperiidae 7547
confabulate 7549
freetraders 7549
headmanship 7550
bauernfeind 7552
contredanse 7554
#44,996,769textdmt-mint.nat#44,239,479tapdmt-mint.nat#44,239,477tapdmt-mint.nat#44,239,475tapdmt-mint.nat#44,239,474tapdmt-mint.nat#44,239,437tapdmt-mint.nat#44,239,360tapdmt-mint.nat#44,239,221tapdmt-mint.nat#44,239,219tapdmt-mint.nat#44,239,216tapdmt-mint.nat#44,239,161tapdmt-mint.nat#44,230,258tapdmt-mint.nat#44,230,254tapdmt-mint.nat#44,230,242tapdmt-mint.nat#44,230,236tapdmt-mint.nat#44,230,231tapdmt-mint.nat#44,230,230tapdmt-mint.nat#44,230,227tapdmt-mint.nat#44,230,189tapdmt-mint.nat#44,230,187tapdmt-mint.nat#44,230,165tapdmt-mint.nat#44,230,163tapdmt-mint.nat#44,230,157tapdmt-mint.nat#44,230,144tapdmt-mint.nat#44,230,130tapdmt-mint.nat#44,230,123tapdmt-mint.nat#44,230,121tapdmt-mint.nat#44,230,118tapdmt-mint.nat#44,230,106tapdmt-mint.nat#44,230,102tapdmt-mint.nat#44,230,085tapdmt-mint.nat#44,230,080tapdmt-mint.nat#44,230,039tapdmt-mint.nat#44,230,036tapdmt-mint.nat#44,230,034tapdmt-mint.nat#44,230,019tap