Open JeremyRubin opened 1 year ago
Is the issue having deps that are managed by Cargo? I ask because hypothetically if Dhall was the right model (not asserting it is here), it could be reimplemented within rust-bitcoin. If it isn't but we want something similarly sophisticated we could end up with a significant amount of hand-rolled code in rust-bitcoin that "has nothing to do with" rust-bitcoin.
you'd have to ask e.g. @apoelstra about what is acceptable in rust-bitcoin land / what design goals should be.
Vendoring deps might help, but Dhall has a lot of deps, including things like parser generators, which would need to be reviewed as well. https://crates.io/crates/dhall/0.12.0/dependencies
we'd like to replace JSONSchema with something simpler and "application specific" that can go into rust-bitcoin (that means no deps not already in rust-bitcoin). There can be a function from our spec -> JsonSchema too, for compatibility. DHall is not an option because it has a bunch of deps.