2022-09-16 01:52:57 +00:00
|
|
|
[package]
|
|
|
|
name = "schemars"
|
|
|
|
version = "0.1.0"
|
|
|
|
authors = ["Jeremy Rubin <j@rubin.io>"]
|
2023-11-14 22:14:56 +00:00
|
|
|
edition = "2021"
|
2022-09-16 01:52:57 +00:00
|
|
|
|
|
|
|
# Prevent this from interfering with workspaces
|
|
|
|
[workspace]
|
|
|
|
members = ["."]
|
|
|
|
|
|
|
|
[dependencies.bitcoin_hashes]
|
|
|
|
path = "../.."
|
|
|
|
features = ['schemars', 'serde']
|
|
|
|
|
|
|
|
[dependencies]
|
2023-03-06 22:39:20 +00:00
|
|
|
jsonschema-valid = "0.4.0"
|
2022-09-16 01:52:57 +00:00
|
|
|
serde = { version = "1.0", default-features = false}
|
2023-03-06 22:39:20 +00:00
|
|
|
schemars = "0.8.3"
|
2022-09-16 01:52:57 +00:00
|
|
|
serde_test = "1.0"
|
|
|
|
serde_json = "1.0"
|
2023-06-27 23:25:21 +00:00
|
|
|
|
|
|
|
[patch.crates-io.bitcoin-internals]
|
|
|
|
path = "../../../internals"
|
Add a `bitcoin_io` crate
In order to support standard (de)serialization of structs, the
`rust-bitcoin` ecosystem uses the standard `std::io::{Read,Write}`
traits. This works great for environments with `std`, however sadly
the `std::io` module has not yet been added to the `core` crate.
Thus, in `no-std`, the `rust-bitcoin` ecosystem has historically
used the `core2` crate to provide copies of the `std::io` module
without any major dependencies. Sadly, its one dependency,
`memchr`, recently broke our MSRV.
Worse, because we didn't want to take on any excess dependencies
for `std` builds, `rust-bitcoin` has had to have
mutually-exclusive `std` and `no-std` builds. This breaks general
assumptions about how features work in Rust, causing substantial
pain for applications far downstream of `rust-bitcoin` crates.
Here, we add a new `bitcoin_io` crate, making it an unconditional
dependency and using its `io` module in the in-repository crates
in place of `std::io` and `core2::io`. As it is not substantial
additional code, the `hashes` io implementations are no longer
feature-gated.
This doesn't actually accomplish anything on its own, only adding
the new crate which still depends on `core2`.
2023-10-04 05:51:26 +00:00
|
|
|
|
|
|
|
[patch.crates-io.bitcoin-io]
|
|
|
|
path = "../../../io"
|
2023-08-08 08:47:05 +00:00
|
|
|
|
|
|
|
[patch.crates-io.bitcoin-units]
|
|
|
|
path = "../../../units"
|