Releases
0.2.0 (WIP)
- Many functions are asynchronous
- To make create an
async main function you can use the attribute #[libtock::main] - To retrieve the value of an asynchronous
value, use value.await - This is only possible within an
async fn, so either- Make the caller
fn of .await an async fn - Not recommended: Use
core::executor::block_on(value) to retrieve the value
syscalls::yieldk_for is no longer available- Yielding manually is discouraged as it conflicts with Rust's safety guarantees. If you need to wait for a condition, use
futures::wait_until and .await.
syscalls::yieldk has become unsafe for the same reason- Commands are no longer
unsafe - The low-level syscalls have been moved to
syscalls::rawsyscalls::subscribe_ptr becomes syscalls::raw::subscribesyscalls::allow_ptr becomes syscalls::raw::allow
- Targets without support for atomics can be built
- Most API functions, including
main(), return a Result<T, TockError> - The timer now supports to be used simultaneously. To make this safe,
TimerDriver is now a singleton.
a8bb4fa9be504517d5533511fd8e607ea61f1750 (0.1.0)
- First and highly experimental
libtock-rs API