transfer100.pizza#71,334,915brc-20Inscription #65818523#65,818,523png#64,365,783transfer288,668.biis#63,422,402brc-20transfer208,668.biis#63,239,850brc-20Inscription #50852478#50,852,478htmlInscription #50852477#50,852,477htmlInscription #50852476#50,852,476htmlInscription #50852475#50,852,475htmlInscription #50852474#50,852,474htmlInscription #50852473#50,852,473htmlInscription #50852472#50,852,472htmlInscription #50852471#50,852,471htmlInscription #50852470#50,852,470htmlInscription #50852469#50,852,469htmlInscription #50852467#50,852,467htmlInscription #50852466#50,852,466htmlInscription #50852465#50,852,465htmlInscription #50852464#50,852,464htmlInscription #50852463#50,852,463htmlInscription #50852462#50,852,462htmlInscription #50852461#50,852,461htmlInscription #50852460#50,852,460htmlInscription #50852459#50,852,459htmlInscription #50852458#50,852,458htmltransfer8,840.hxxh#49,682,235brc-20transfer30,000.biis#49,221,692brc-20Inscription #49101949#49,101,949htmltransfer150,000.biis#48,114,901brc-20transfer150,000.biis#47,653,501brc-20transfer200,000.biis#47,008,941brc-20transfer100,000.biis#46,538,036brc-20Inscription #45698204#45,698,204htmlInscription #45698203#45,698,203htmlInscription #45698202#45,698,202htmlInscription #45698201#45,698,201htmlInscription #45698200#45,698,200htmlInscription #45698199#45,698,199htmlInscription #45698198#45,698,198htmlInscription #45698197#45,698,197htmlInscription #45698196#45,698,196htmlInscription #45698195#45,698,195html] [[package]] name = "windows-targets" version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" dependencies = [ "windows_aarch64_gnullvm 0.42.2", "windows_aarch64_msvc 0.42.2", "windows_i686_gnu 0.42.2", "windows_i686_msvc 0.42.2", "windows_x86_64_gnu 0.42.2", "windows_x86_64_gnullvm 0.42.2", "windows_x86_64_msvc 0.42.2", ] [[package]] name = "windows-targets" version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f" dependencies = [ "windows_aarch64_gnullvm 0.48.0", "windows_aarch64_msvc 0.48.0", "windows_i686_gnu 0.48.0", "windows_i686_msvc 0.48.0", "windows_x86_64_gnu 0.48.0", "windows_x86_64_gnullvm 0.48.0", "windows_x86_64_msvc 0.48.0", ] [[package]] name = "windows_aarch64_gnullvm" version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" #45,026,091text vout: 0, }, offset: 0, }, Some(50 * COIN_VALUE), ); context.index.assert_inscription_location( second_inscription_id, SatPoint { outpoint: OutPoint { txid: merged_txid, vout: 0, }, offset: 50 * COIN_VALUE, }, Some(100 * COIN_VALUE), ); } } #[test] fn inscriptions_that_are_sent_to_second_output_are_are_tracked_correctly() { for context in Context::configurations() { context.mine_blocks(1); let txid = context.rpc_server.broadcast_tx(TransactionTemplate { inputs: &[(1, 0, 0, inscription("text/plain", "hello").to_witness())], ..Default::default() }); let inscription_id = InscriptionId { txid, index: 0 }; context.mine_blocks(1); context.index.assert_inscription_location( inscription_id, SatPoint { outpoint: OutPoint { txid, vout: 0 }, offset: 0, }, Some(50 * COIN_VALUE), #44,996,931textchecksum = "cc6dde6e4ed435a4c1ee4e73592f5ba9da2151af10076cc04858746af9352d09" dependencies = [ "proc-macro2", "quote", "syn 2.0.27", ] [[package]] name = "atom_syndication" version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "571832dcff775e26562e8e6930cd483de5587301d40d3a3b85d532b6383e15a7" dependencies = [ "chrono", "derive_builder", "diligent-date-parser", "never", "quick-xml", ] [[package]] name = "atomic-waker" version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1181e1e0d1fce796a03db1ae795d67167da795f9cf4a39c37589e85ef57f26d3" [[package]] name = "autocfg" version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "axum" version = "0.6.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a6a1de45611fdb535bfde7b7de4fd54f4fd2b17b1737c0a59b69bf9b92074b8c" dependencies = [ #44,996,896textthe tests, or in your shell configuration. We also try to follow a TDD (Test-Driven-Development) approach, which means we use tests as a way to get visibility into the code. Tests have to run fast for that reason so that the feedback loop between making a change, running the test and seeing the result is small. To facilitate that we created a mocked Bitcoin Core instance in [test-bitcoincore-rpc](./test-bitcoincore-rpc). Syncing ------- `ord` requires a synced `bitcoind` node with `-txindex` to build the index of satoshi locations. `ord` communicates with `bitcoind` via RPC. If `bitcoind` is run locally by the same user, without additional configuration, `ord` should find it automatically by reading the `.cookie` file from `bitcoind`'s datadir, and connecting using the default RPC port. If `bitcoind` is not on mainnet, is not run by the same user, has a non-default datadir, or a non-default port, you'll need to pass additional flags to `ord`. See `ord --help` for details. `bitcoind` RPC Authentication ----------------------------- #44,996,735text payload: inscription("text/plain;charset=utf-8", [0b10000000]), ..Default::default() },], ); } #[test] fn no_endif() { let script = script::Builder::new() .push_opcode(opcodes::OP_FALSE) .push_opcode(opcodes::all::OP_IF) .push_slice(b"ord") .into_script(); assert_eq!( parse(&[Witness::from_slice(&[script.into_bytes(), Vec::new()])]), Vec::new(), ); } #[test] fn no_op_false() { let script = script::Builder::new() .push_opcode(opcodes::all::OP_IF) .push_slice(b"ord") .push_opcode(opcodes::all::OP_ENDIF) .into_script(); assert_eq!( parse(&[Witness::from_slice(&[script.into_bytes(), Vec::new()])]), Vec::new(), ); } #[test] fn empty_envelope() { assert_eq!(parse(&[envelope(&[])]), Vec::new()); } #[test] fn wrong_protocol_identifier() { assert_eq!(parse(&[envelope(&[b"foo"])]), Vec::new()); } #[test] fn extract_from_transaction() { assert_eq!( parse(&[envelope(&[ #44,996,614text let data_dir = Arguments::try_parse_from(["ord", "--chain", alias, "index", "update"]) .unwrap() .options .data_dir() .unwrap() .display() .to_string(); assert!(data_dir.ends_with(suffix), "{data_dir}"); } check_network_alias("main", "ord"); check_network_alias("mainnet", "ord"); check_network_alias( "regtest", if cfg!(windows) { r"ord\regtest" } else { "ord/regtest" }, ); check_network_alias( "signet", if cfg!(windows) { r"ord\signet" } else { "ord/signet" }, ); check_network_alias( "test", if cfg!(windows) { r"ord\testnet3" } else { "ord/testnet3" }, ); check_network_alias( "testnet", if cfg!(windows) { r"ord\testnet3" } else { "ord/testnet3" }, ); } #[test] fn rpc_server_chain_must_match() { let rpc_server = test_bitcoincore_rpc::builder() #44,995,309text #: src/guides/collecting/sparrow-wallet.md:131 msgid "" "⚠️⚠️ Be very careful sending your inscription particularly if the `offset` " "value is not `0`. It is not recommended to use this method if that is the " "case, as doing so you could accidentally send your inscription to a bitcoin " "miner unless you know what you are doing." msgstr "" "⚠️⚠️ Tenha muito cuidado ao enviar sua inscrição, principalmente se o valor `offset` não for `0`. " "Não é recomendado usar este método se for esse o caso, pois ao fazê-lo você pode enviar acidentalmente " "sua inscrição para um minerador de bitcoin, a menos que saiba o que está fazendo." #: src/guides/collecting/sparrow-wallet.md:133 msgid "Sending your inscription" msgstr "Enviando sua inscrição" #: src/guides/collecting/sparrow-wallet.md:134 msgid "" "To send an inscription navigate to the `UTXOs` tab, and find the UTXO which " "you previously validated contains your inscription." msgstr "" "Para enviar uma inscrição navegue até a aba `UTXOs` e encontre o UTXO que você validou anteriormente que contém sua inscrição." #44,994,737texttransfer1.4931#43,279,096brc-20transfer1.4979#43,279,083brc-20mint1,000.igli#41,525,316brc-20mint1,000.igli#41,525,304brc-20mint1,000.igli#41,525,302brc-20mint1,000.igli#41,525,285brc-20mint1,000.igli#41,525,258brc-20mint1,000.igli#41,525,256brc-20mint1,000.igli#41,525,246brc-20mint1,000.igli#41,525,229brc-20mint1,000.igli#41,525,201brc-20