SHOWING: First 60
#73,917,686text#73,917,685text#73,917,684text#73,917,683texttransfer100.pizza#71,205,776brc-20#66,867,813textminting-claim#66,031,396orc-20#64,422,415 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,160,313text thread::spawn(|| server.run(options, index, ord_server_handle).unwrap());
}
while index.statistic(crate::index::Statistic::Commits) == 0 {
thread::sleep(Duration::from_millis(25));
}
let client = reqwest::blocking::Client::builder()
.redirect(reqwest::redirect::Policy::none())
.build()
.unwrap();
for i in 0.. {
match client.get(format!("http://127.0.0.1:{port}/status")).send() {
Ok(_) => break,
Err(err) => {
if i == 400 {
panic!("server failed to start: {err}");
}
}
}
thread::sleep(Duration::from_millis(25));
}
Self {
bitcoin_rpc_server,
index,
ord_server_handle,
tempdir,
url,
}
}
fn get(&self, path: impl AsRef<str>) -> reqwest::blocking::Response {
if let Err(error) = self.index.update() {
log::error!("{error}");
}
reqwest::blocking::get(self.join_url(path.as_ref())).unwrap()
#44,990,735text
let port = TcpListener::bind("127.0.0.1:0")
.unwrap()
.local_addr()
.unwrap()
.port();
let url = Url::parse(&format!("http://127.0.0.1:{port}")).unwrap();
let config_args = match config {
Some(config) => {
let config_path = tempdir.path().join("ord.yaml");
fs::write(&config_path, config).unwrap();
format!("--config {}", config_path.display())
}
None => "".to_string(),
};
let (options, server) = parse_server_args(&format!(
"ord --rpc-url {} --cookie-file {} --data-dir {} {config_args} {} server --http-port {} --address 127.0.0.1 {}",
bitcoin_rpc_server.url(),
cookiefile.to_str().unwrap(),
tempdir.path().to_str().unwrap(),
ord_args.join(" "),
port,
server_args.join(" "),
));
let index = Arc::new(Index::open(&options).unwrap());
let ord_server_handle = Handle::new();
{
let index = index.clone();
let ord_server_handle = ord_server_handle.clone();
#44,990,152text let acme_cache = if let Some(acme_cache) = acme_cache {
acme_cache.clone()
} else {
options.data_dir()?.join("acme-cache")
};
Ok(acme_cache)
}
fn acme_domains(&self) -> Result<Vec<String>> {
if !self.acme_domain.is_empty() {
Ok(self.acme_domain.clone())
} else {
Ok(vec![System::new()
.host_name()
.ok_or(anyhow!("no hostname found"))?])
}
}
fn http_port(&self) -> Option<u16> {
if self.http || self.http_port.is_some() || (self.https_port.is_none() && !self.https) {
Some(self.http_port.unwrap_or(80))
} else {
None
}
}
fn https_port(&self) -> Option<u16> {
if self.https || self.https_port.is_some() {
Some(self.https_port.unwrap_or(443))
} else {
None
}
}
fn acceptor(&self, options: &Options) -> Result<AxumAcceptor> {
let config = AcmeConfig::new(self.acme_domains()?)
.contact(&self.acme_contact)
.cache_option(Some(DirCache::new(Self::acme_cache(
self.acme_cache.as_ref(),#44,990,148text timestamp: Timestamp::Now,
active: Some(false),
range: None,
next_index: None,
internal: Some(false),
label: Some("commit tx recovery key".to_string()),
})?;
for result in response {
if !result.success {
return Err(anyhow!("commit tx recovery key import failed"));
}
}
Ok(())
}
fn build_reveal_transaction(
control_block: &ControlBlock,
fee_rate: FeeRate,
inputs: Vec<OutPoint>,
commit_input_index: usize,
outputs: Vec<TxOut>,
script: &Script,
) -> (Transaction, Amount) {
let reveal_tx = Transaction {
input: inputs
.iter()
.map(|outpoint| TxIn {
previous_output: *outpoint,
script_sig: script::Builder::new().into_script(),
witness: Witness::new(),
sequence: Sequence::ENABLE_RBF_NO_LOCKTIME,
})
.collect(),
output: outputs,
lock_time: LockTime::ZERO,
version: 1,
};
let fee = {
let mut reveal_tx = reveal_tx.clone();
#44,988,810textdmt-mint.nat#44,254,794tapdmt-mint.nat#44,254,792tap