This repository defines the interface for the Urbit runtime's IO subsystem along with default implementations for that interface. The IO subsystem consists of a collection of IO drivers, one driver per type of IO. For more information, consult the documentation (see below).
Ensure you have an up-to-date Rust toolchain installed on your machine. If you need Rust installation instructions, head to rust-lang.org.
To build, run:
$ cargo build --release
If you want a debug build, run:
$ cargo build
To build and run the test suite, run:
$ cargo test
The test suite includes integration tests, which execute the binary defined by
src/main.rs
in a subprocess. Logging output from the binary when executed as a
subprocess is captured in <test_fn_name>.<test_file_name>.log
. For example,
the logging output from the binary when running the send_request()
test in
tests/http_client_tests.rs
ends up in send_request.http_client_tests.log
.
To build and view the documentation, run:
$ cargo doc --open