Ergo node REST API library
Roadmap:
- Peer management;
- Peer discovery;
- Bindings for Wasm/iOS/Android;
Changelog
See CHANGELOG.md.
Notes on vendored dependencies
This crate vendors two crates as sub-modules: wasm-timer and reqwest. We can't have them as
sub-crates of sigma-rust due to issues around Github releases.
wasm-timer
wasm-timer is a simple fork of the original repo at https://github.com/tomaka/wasm-timer. The
crate has not been updated since August 2020, and has a dependency on an older version of the
parking_lot which breaks our WASM build (details here:
https://github.com/Amanieu/parking_lot/issues/269).
All we've done is update crate dependencies, in particualar bumping parking_lot to version 0.12.
reqwest
This exists as a workaround that gives reqwest the ability to have request timeouts for the
WASM platform (see https://github.com/seanmonstar/reqwest/issues/1135). Currently timeouts are
only implemented in reqwest for non-WASM platforms. However there exists a yet-to-be-merged pull
request (https://github.com/seanmonstar/reqwest/pull/1274) that implements timeouts under WASM.
We vendor the WASM related code of reqwest and apply the above mentioned PR on top.
This allows WASM-based dependendents of this crate to have timeouts for requests. Non-WASM users
have access to the underlying reqwest crate without any modifications.
Contributing
See Contributing guide.