SHOWING: First 60
use super::*;
#[derive(Debug, PartialEq, Serialize, Deserialize)]
pub struct Output {
pub supply: u64,
pub first: u64,
pub last: u64,
pub last_mined_in_block: u32,
}
pub(crate) fn run() -> SubcommandResult {
let mut last = 0;
loop {
if Height(last + 1).subsidy() == 0 {
break;
}
last += 1;
}
Ok(Box::new(Output {
supply: Sat::SUPPLY,
first: 0,
last: Sat::SUPPLY - 1,
last_mined_in_block: last,
}))
}
#45,004,192text }
.store(),
buffer.as_slice(),
)?;
}
// increment entries with burned runes
for (id, amount) in burned {
let id = RuneId::try_from(id).unwrap().store();
let mut entry = RuneEntry::load(self.id_to_entry.get(id)?.unwrap().value());
entry.burned += amount;
self.id_to_entry.insert(id, entry.store())?;
}
Ok(())
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn claim_from_id() {
assert_eq!(claim(1), None);
assert_eq!(claim(1 | CLAIM_BIT), Some(1));
}
}
#45,004,167text <circle r="0.7" stroke="#d00505" stroke-width="0.3"/>.*
</svg>
"##,
);
}
}
#45,004,085text CommandBuilder::new("subsidy 6930000")
.expected_stderr("error: block 6930000 has no subsidy\n")
.expected_exit_code(1)
.run_and_extract_stdout();
}
#45,004,073text }
Index::increment_statistic(&wtx, Statistic::Commits, 1)?;
wtx.commit()?;
let wtx = index.begin_write()?;
log::debug!("creating savepoint at height {}", height);
wtx.persistent_savepoint()?;
Index::increment_statistic(&wtx, Statistic::Commits, 1)?;
wtx.commit()?;
}
Ok(())
}
}
#45,003,970textuse super::*;
#[test]
fn version_flag_prints_version() {
CommandBuilder::new("--version")
.stdout_regex("ord .*\n")
.run_and_extract_stdout();
}
#45,003,272text assert_eq!(output[0].end, 1);
assert_eq!(output[0].count, 1);
rpc_server.mine_blocks(10);
let output = CommandBuilder::new(format!(
"--index {} index info --transactions",
index_path.display()
))
.rpc_server(&rpc_server)
.run_and_deserialize_output::<Vec<TransactionsOutput>>();
assert_eq!(output[1].start, 1);
assert_eq!(output[1].end, 11);
assert_eq!(output[1].count, 10);
}
#45,001,675textminnesinger 20106
kantorovich 20111
carburetion 20119
greasepaint 20129
catachresis 20132
economywide 20133
ecuatoriana 20146
aphasiology 20150
centralizes 20151
euphausiids 20156
greenlander 20173
donnithorne 20180
amercements 20183
lactococcus 20192
jamaicensis 20202
attachement 20209
atelectatic 20222
monocentric 20235
consulships 20237
kampfgruppe 20254
milligramme 20257
baumgardner 20269
cyclobutane 20283
fyodorovich 20283
ectoplasmic 20286
grangemouth 20290
hinchcliffe 20294
derailments 20296
hasselquist 20298
autogestion 20299
clusterings 20299
kinetoplast 20301
marginalism 20303
clackmannan 20305
isselbacher 20316
deodorizing 20329
cabinetwork 20332
congruently 20335
gnotobiotic 20335
ergebnissen 20336
nonpunitive 20340
applanation 20352
godchildren 20357
desaturated 20375
inalterable 20384
gortchakoff 20392
amenorrheic 20396
nudibranchs 20397
calendaring 20414
laryngismus 20415
cataloguers 20444
dyssynergia 20444
intermeshed 20444
neurologica 20447
negligences 20450
idiomorphic 20465
brantingham 20467
#45,001,674text internal: None,
range: None,
next: None,
})
.collect(),
})
}
fn load_wallet(&self, wallet: String) -> Result<LoadWalletResult, jsonrpc_core::Error> {
if self.state().wallets.contains(&wallet) {
self.state().loaded_wallets.insert(wallet.clone());
Ok(LoadWalletResult {
name: wallet,
warning: None,
})
} else {
Err(Self::not_found())
}
}
fn list_wallets(&self) -> Result<Vec<String>, jsonrpc_core::Error> {
Ok(
self
.state()
.loaded_wallets
.clone()
.into_iter()
.collect::<Vec<String>>(),
)
}
}
#45,001,668textmsgid "Platform"
msgstr "平台"
#: src/guides/reindexing.md:15
msgid "Value"
msgstr ""
#: src/guides/reindexing.md:17
msgid "Linux"
msgstr ""
#: src/guides/reindexing.md:17
msgid "`$XDG_DATA_HOME`/ord or `$HOME`/.local/share/ord"
msgstr ""
#: src/guides/reindexing.md:17
msgid "/home/alice/.local/share/ord"
msgstr ""
#: src/guides/reindexing.md:18
msgid "macOS"
msgstr ""
#: src/guides/reindexing.md:18
msgid "`$HOME`/Library/Application Support/ord"
msgstr ""
#: src/guides/reindexing.md:18
msgid "/Users/Alice/Library/Application Support/ord"
msgstr ""
#: src/guides/reindexing.md:19
msgid "Windows"
msgstr ""
#: src/guides/reindexing.md:19
msgid "`{FOLDERID_RoamingAppData}`\\\\ord"
msgstr ""
#: src/guides/reindexing.md:19
msgid "C:\\Users\\Alice\\AppData\\Roaming\\ord"
msgstr ""
#: src/guides/reindexing.md:21
msgid ""
"So to delete the database and reindex on MacOS you would have to run the "
"following commands in the terminal:"
msgstr "因此,要在 MacOS 上删除数据库并重新索引,您必须在终端中执行以下命令:"
#: src/guides/reindexing.md:24
#45,001,667textmsgstr ""
"确保你可以通过 `bitcoin-cli -getinfo` 来访问`bitcoind` ,并且它已经完全同步 "
#: src/guides/inscriptions.md:104
msgid ""
"If `bitcoin-cli -getinfo` returns `Could not connect to the server`, "
"`bitcoind` is not running."
msgstr ""
"假如 `bitcoin-cli -getinfo` 返回的是 `Could not connect to the server`, "
"这可能是`bitcoind` 没有运行"
#: src/guides/inscriptions.md:107
msgid ""
"Make sure `rpcuser`, `rpcpassword`, or `rpcauth` are _NOT_ set in your "
"`bitcoin.conf` file. `ord` requires using cookie authentication. Make sure "
"there is a file `.cookie` in your bitcoin data directory."
msgstr ""
"确保 `rpcuser`, `rpcpassword`, 或者 `rpcauth` _没有_ 在你的 "
"`bitcoin.conf` 文件里进行设置。 `ord` 需要使用 cookie 认证。因此需要确保 "
"你的bitcoin data的文件夹里有 `.cookie`文件。"
#: src/guides/inscriptions.md:111
msgid ""
"If `bitcoin-cli -getinfo` returns `Could not locate RPC credentials`, then "
"you must specify the cookie file location. If you are using a custom data "
"directory (specifying the `datadir` option), then you must specify the "
"cookie location like `bitcoin-cli -rpccookiefile=<your_bitcoin_datadir>/."
#45,001,327textVagrant.configure("2") do |config|
config.vm.box = "debian/bullseye64"
config.vm.provider "virtualbox" do |v|
v.memory = 1024 * 4
end
config.vm.network "private_network", ip: "192.168.56.4"
config.vm.provision "shell" do |s|
s.inline = ""
Dir.glob("#{Dir.home}/.ssh/*.pub").each do |path|
key = File.read(path).strip
s.inline << "echo '#{key}' >> /root/.ssh/authorized_keys\n"
end
end
end
#45,001,229textpub(crate) struct PreviewUnknownHtml;
#[derive(boilerplate::Boilerplate)]
pub(crate) struct PreviewVideoHtml {
pub(crate) inscription_id: InscriptionId,
}
#45,001,109textmsgid "Creating Inscriptions"
msgstr "创建铭文"
#: src/guides/inscriptions.md:218
msgid "To create an inscription with the contents of `FILE`, run:"
msgstr "以`FILE`的内容创建一个铭文,需要运行:"
#: src/guides/inscriptions.md:220
msgid ""
"```\n"
"ord wallet inscribe --fee-rate FEE_RATE FILE\n"
"```"
msgstr ""
#: src/guides/inscriptions.md:224
msgid ""
"Ord will output two transactions IDs, one for the commit transaction, and "
"one for the reveal transaction, and the inscription ID. Inscription IDs are "
"of the form `TXIDiN`, where `TXID` is the transaction ID of the reveal "
"transaction, and `N` is the index of the inscription in the reveal "
"transaction."
msgstr ""
"Ord会输出两个交易ID,一个是commit交易,一个是reveal交易,还有铭文ID。铭文 ID "
"的格式为`TXIDiN`,其中`TXID` 是揭示交易的交易 ID,`N` 是揭示交易中铭文的索"
"引。"
#: src/guides/inscriptions.md:229
msgid ""
"The commit transaction commits to a tapscript containing the content of the "
"inscription, and the reveal transaction spends from that tapscript, "
"revealing the content on chain and inscribing it on the first sat of the "
#45,000,995textOrdinal Bounty 3
================
Criteria
--------
Ordinal bounty 3 has two parts, both of which are based on *ordinal names*.
Ordinal names are a modified base-26 encoding of ordinal numbers. To avoid
locking short names inside the unspendable genesis block coinbase reward,
ordinal names get *shorter* as the ordinal number gets *longer*. The name of
sat 0, the first sat to be mined is `nvtdijuwxlp` and the name of sat
2,099,999,997,689,999, the last sat to be mined, is `a`.
The bounty is open for submissions until block 840000—the first block after the
fourth halvening. Submissions included in block 840000 or later will not be
considered.
Both parts use [frequency.tsv](frequency.tsv), a list of words and the number
of times they occur in the [Google Books Ngram
dataset](http://storage.googleapis.com/books/ngrams/books/datasetsv2.html).
filtered to only include the names of sats which will have been mined by the
end of the submission period, that appear at least 5000 times in the corpus.
`frequency.tsv` is a file of tab-separated values. The first column is the
#45,000,796text