teksilo-async-std 0.19.0
“async-std reactor integration for Teksilo's main-thread async executor (teksilo-async).”
Basename is uppercase README.mdContains an unbounded block loop
SHA-256d4598d80b9f924e448347b32d8df6e6bee0b709b8b4dfd78e0dd210c8654726c
MaleculeMd(Pa₃)
Evidence
1// SPDX-License-Identifier: MPL-2.0
2// SPDX-FileCopyrightText: 2026 FernTech
3
4//! Validates async-std integration headlessly: an `async_std::task::sleep`
5//! awaited on the main-thread executor must resolve via async-std's global
6//! reactor — with NO runtime-context guard around the tick.
7
8use std::time::{Duration, Instant};
9
10use teksilo_async::AsyncRuntimeHandle;
11use teksilo_core::Signal;
12
13#[test]
14fn executor_awaits_an_async_std_timer() {
15 let rt = AsyncRuntimeHandle::new();
⋯8 lines
24
25 let start = Instant::now();
26 while !done.get() {
27 rt.tick(); // no enter-guard — async-std's reactor is global
28 if start.elapsed() > Duration::from_secs(5) {
29 panic!("async_std::task::sleep never resolved on the main-thread executor");
30 }
31 std::thread::sleep(Duration::from_millis(2));
32 }
33 assert!(done.get());
34}
1# SPDX-License-Identifier: MPL-2.0
2# SPDX-FileCopyrightText: 2026 FernTech
3
⋯7 lines
11repository.workspace = true
12homepage.workspace = true
13description = "async-std reactor integration for Teksilo's main-thread async executor (teksilo-async)."
14documentation = "https://docs.rs/teksilo-async-std"
15keywords = ["async-std", "async", "reactor", "executor", "gui"]
⋯4 lines
20teksilo-app = { workspace = true }
21teksilo-async = { workspace = true }
22# Kept local — the runtime choice must not leak to other teksilo crates.
23async-std = "1"
24
25[package.metadata.docs.rs]
26all-features = true
No evidence locations were recorded for this file. Raw result