smol-rs / async-lock

Async synchronization primitives
Apache License 2.0
249 stars 28 forks source link

Replace async-channel with flume #83

Closed notgull closed 5 months ago

notgull commented 5 months ago

This commit replaces async-channel in some tests with flume. It appears that async-channel doesn't work under MIRI but flume does, so we can work around this for now by replacing it with flume.

cc https://github.com/smol-rs/async-channel/issues/85

notgull commented 5 months ago

I can't emulate the MIRI failure here on my machine unless I run it inside of a Docker container with only three CPUs.

taiki-e commented 5 months ago

We got another Miri error today...

https://github.com/smol-rs/async-lock/actions/runs/8769497281/job/24065046417#step:4:219

---- src/once_cell.rs - once_cell::OnceCell<T>::wait_blocking (line 309) stdout ----
Test executable failed (exit status: 1).

stderr:
error: deadlock: the evaluated program deadlocked
  |
  = note: the evaluated program deadlocked
  = note: (no span available)
  = note: BACKTRACE on thread `unnamed-1`:
error: doctest failed, to rerun pass `--doc`