extract tor_async_utils::oneshot into ::oneshot-fused-workaround
Having this in the tor-async-utils
crate prevents us from doing both
of the following without introducing a circular dependency:
- using it in
tor-rtmock
(which we currently do, particularly in tests). - using
tor-rtmock
to test things intor-async-utils
. We don't do this yet, but it is generally sensible to do so. In particular we want to move thestream_peak
module there, which is currently tested withtor-rtmock
.
Moving this into its own crate avoids this circular dependency.