rust-bitcoin-unsafe-fast/hashes/src
Andrew Poelstra 1ceac90bf6
Merge rust-bitcoin/rust-bitcoin#2565: Removes txid prefix in transaction IDs
56132f59d5     Remove the `:#` formatting for `hex_fmt_impl` macro (448 OG)

Pull request description:

  This commit attempts to solve #2505  by ensuring that formatting is not forced using the `:#` in the hex macro code generating in macro rule `hex_fmt_impl` in the hashes/utils.rs file.

  The write! macro forces all formatting to add the prefix `0x` by adding an alternate by (#) default

  ```rust
  impl<$($gen: $gent),*> $crate::_export::_core::fmt::Debug for $ty<$($gen),*> {
              #[inline]
              fn fmt(&self, f: &mut $crate::_export::_core::fmt::Formatter) -> $crate::_export::_core::fmt::Result {
                  write!(f, "{:#}", self) // <-- This is where the formatting is being forced.
              }
          }
  ```

  By removing this formatting, the `:#` must be specified by the user in order for a prefix to be added.

  ```rust
  let outpoint = bitcoin::OutPoint::default();
      println!("{:?}", &outpoint);
      println!("{:#?}", &outpoint);
      println!("{:#}", &outpoint);
      println!("{:x}", &outpoint.txid);
      // `{:#}` must be specified to pretty print with a prefix
      println!("{:#}", &outpoint.txid);
      dbg!(&outpoint);
      dbg!(&outpoint.txid);
  ```

  The PR also adds testcase for this when running `cargo test` .

ACKs for top commit:
  tcharding:
    ACK 56132f59d5
  apoelstra:
    ACK 56132f59d5

Tree-SHA512: 9e4fc9f30ab0b3cf2651d3c09f7f01d8245ac8ea7ae3a82bb4efd19f25c77662bf279020a31fa61b37587cc0c74284696c56045c59f1ba63b2dd42a210d98ebc
2024-03-13 17:28:09 +00:00
..
cmp.rs hashes: Introduce SPDX license identifiers 2023-05-01 09:26:36 +10:00
hash160.rs hashes: Remove default features from schemars dep 2023-11-20 15:18:33 +11:00
hmac.rs hashes: fix typos 2024-01-18 14:06:32 +08:00
impls.rs Inline io module in io crate root 2023-11-28 14:17:14 +11:00
internal_macros.rs Upgrade hex dependency 2024-03-10 10:35:01 +11:00
lib.rs Merge rust-bitcoin/rust-bitcoin#2538: Add support for SHA384 2024-03-13 17:10:21 +00:00
ripemd160.rs Fix new nightly warnings/errors 2024-02-21 14:13:49 +11:00
serde_macros.rs Use full path in all macro usage of Result 2024-01-18 13:20:19 +00:00
sha1.rs Fix new nightly warnings/errors 2024-02-21 14:13:49 +11:00
sha256.rs hashes: Remove unnecessary feature guard from test 2024-03-10 10:35:02 +11:00
sha256d.rs hashes: Add fmt roundtrip tests 2024-03-10 10:35:01 +11:00
sha256t.rs Fix typos 2024-01-05 23:10:52 +08:00
sha384.rs Add support for SHA-384 2024-03-12 13:56:58 +00:00
sha512.rs Add support for SHA-384 2024-03-12 13:56:58 +00:00
sha512_256.rs Fix typos 2024-01-05 23:10:52 +08:00
siphash24.rs Make constructors const 2024-02-24 06:04:41 +11:00
util.rs Merge rust-bitcoin/rust-bitcoin#2565: Removes txid prefix in transaction IDs 2024-03-13 17:28:09 +00:00