e728a32672
613: Rust stable support r=Dirbaio a=Dirbaio This PR adds (limited) stable Rust support! The drawbacks are: - No `#[embassy::task]`, `#[embassy::main]`. (requires `type_alias_impl_trait`). You have to manually allocate the tasks somewhere they'll live forever. See [example](https://github.com/embassy-rs/embassy/blob/master/examples/nrf/src/bin/raw_spawn.rs) - No async trait impls (requires GATs). Note that the full API surface of HALs is still available through inherent methods: #552 #581 - Some stuff is not constructible in const (requires `const_fn_trait_bound`), although there's an (ugly) workaround for the generic `Mutex`. So it's not that bad in the end, it's fully usable for shipping production-ready firmwares. We'll still recommend nightly as the default, until GATs and `type_alias_impl_trait` are stable. Co-authored-by: Dario Nieuwenhuis <dirbaio@dirbaio.net> |
||
---|---|---|
.. | ||
boot | ||
nrf | ||
rp | ||
std | ||
stm32f0 | ||
stm32f1 | ||
stm32f3 | ||
stm32f4 | ||
stm32f7 | ||
stm32g0 | ||
stm32g4 | ||
stm32h7 | ||
stm32l0 | ||
stm32l1 | ||
stm32l4 | ||
stm32u5 | ||
stm32wb55 | ||
stm32wl55 | ||
wasm |