rust-bitcoin-unsafe-fast/io
merge-script 1d1fcb0c52
Merge rust-bitcoin/rust-bitcoin#3861: io: Add traits
426f585a47 api: Run just check-api (Tobin C. Harding)
6cf90132bc io: Add traits (Tobin C. Harding)

Pull request description:

  So that our `io` crate is not surprising it seems we should generally, unless there is a good reason not to, follow `std::io`.

  Copy the derived trait implementations from `std::io` for `Cursor`, and `Sink`. `Take` is correct already, just `Debug`.

  Done while investigating C-COMMON-TRAITS

ACKs for top commit:
  apoelstra:
    ACK 426f585a479ca20b7c3390c589b836f8726b9b03; successfully ran local tests

Tree-SHA512: 0fdacfa0295c36e9ee2bdffd5e649b923f48eeff7baa3afc99fda0836ae30b794610a176c0e76341a268c712baab51139355976c23913a0744692cd1e38a4d11
2025-01-10 16:06:21 +00:00
..
contrib CI: Remove shebang from non-executable scripts 2024-05-31 10:10:00 +10:00
src Merge rust-bitcoin/rust-bitcoin#3861: io: Add traits 2025-01-10 16:06:21 +00:00
tests units: Refactor Send/Sync api test 2025-01-08 14:52:42 +11:00
CHANGELOG.md Bump version of bitcoin-io to 0.2.0 2024-10-02 09:47:10 +10:00
Cargo.toml Bump version of bitcoin-io to 0.2.0 2024-10-02 09:47:10 +10:00
README.md Change all occurrences of "IO" to "I/O" 2025-01-07 12:37:47 +00:00

README.md

Rust-Bitcoin I/O Library

The std::io module is not exposed in no-std Rust so building no-std applications which require reading and writing objects via standard traits is not generally possible. Thus, this library exists to export a minimal version of std::io's traits which we use in rust-bitcoin so that we can support no-std applications.

These traits are not one-for-one drop-ins, but are as close as possible while still implementing std::io's traits without unnecessary complexity.