ergo-rest

Crates.ioergo-rest
lib.rsergo-rest
version0.13.0
sourcesrc
created_at2022-03-08 15:33:40.870687
updated_at2024-08-09 15:01:23.247197
descriptionErgo node REST API library
homepage
repositoryhttps://github.com/ergoplatform/sigma-rust
max_upload_size
id546394
size225,373
Kamal Ahmad (SethDusek)

documentation

README

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.

Commit count: 3245

cargo fmt