agnostic-lite 0.5.3

`agnostic-lite` is a Sans-I/O abstraction layer for any async runtime.
Documentation
agnostic-lite-0.5.3 has been yanked.

agnostic-lite is a Sans-I/O abstraction layer for any async runtime.

In order to make it trivial for others to build implementations of any async runtime, this crate provides a sans-I/O implementation.

In addition, this crate is not only no_std, but also alloc-free. This means that it can be used in environments where alloc is not available, such as embedded systems. It also has no unsafe code.

Introduction

agnostic-lite is a Sans-I/O abstraction layer for any async runtime.

In order to make it trivial for others to build implementations of any async runtime, this crate provides a sans-I/O implementation.

In addition, this crate is not only no_std, but also alloc-free. This means that it can be used in environments where alloc is not available, such as embedded systems. It also has no unsafe code.

agnostic-lite splits the big Runtime trait in agnostic in multiple small traits:

  • AsyncSpawner: trait for spawning tasks
  • AsyncLocalSpawner: trait for spawning local tasks
  • AsyncSleep: trait for sleep functionality
  • AsyncInterval: trait for interval functionality
  • AsyncTimeout: trait for timeout functionality

Builtin supports runtimes:

  • tokio
  • async-std
  • smol
  • wasm-bindgen-futures

Installation

[dependencies]
agnostic-lite = "0.5"

License

agnostic-lite is under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE, LICENSE-MIT for details.

Copyright (c) 2025 Al Liu.