Ergo node REST API library
### Roadmap:
- Peer management;
- Peer discovery;
- Bindings for Wasm/iOS/Android;
## Changelog
See [CHANGELOG.md](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](../CONTRIBUTING.md) guide.