diff options
| -rw-r--r-- | Cargo.lock | 88 | ||||
| -rw-r--r-- | mumd/Cargo.toml | 4 | ||||
| -rw-r--r-- | mumd/src/audio.rs | 18 | ||||
| -rw-r--r-- | mumd/src/audio/input.rs | 2 | ||||
| -rw-r--r-- | mumd/src/client.rs | 3 | ||||
| -rw-r--r-- | mumd/src/main.rs | 3 | ||||
| -rw-r--r-- | mumd/src/network.rs | 15 | ||||
| -rw-r--r-- | mumd/src/network/tcp.rs | 4 | ||||
| -rw-r--r-- | mumd/src/network/udp.rs | 6 |
9 files changed, 34 insertions, 109 deletions
@@ -657,58 +657,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" [[package]] -name = "futures" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b3b0c040a1fe6529d30b3c5944b280c7f0dcb2930d2c3062bca967b602583d0" -dependencies = [ - "futures-channel", - "futures-core", - "futures-executor", - "futures-io", - "futures-sink", - "futures-task", - "futures-util", -] - -[[package]] name = "futures-channel" -version = "0.3.8" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b7109687aa4e177ef6fe84553af6280ef2778bdb7783ba44c9dc3399110fe64" +checksum = "f2d31b7ec7efab6eefc7c57233bb10b847986139d88cc2f5a02a1ae6871a1846" dependencies = [ "futures-core", - "futures-sink", ] [[package]] name = "futures-core" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "847ce131b72ffb13b6109a221da9ad97a64cbe48feb1028356b836b47b8f1748" - -[[package]] -name = "futures-executor" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4caa2b2b68b880003057c1dd49f1ed937e38f22fcf6c212188a121f08cf40a65" -dependencies = [ - "futures-core", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-io" -version = "0.3.8" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "611834ce18aaa1bd13c4b374f5d653e1027cf99b6b502584ff8c9a64413b30bb" +checksum = "79e5145dde8da7d1b3892dad07a9c98fc04bc39892b1ecc9692cf53e2b780a65" [[package]] name = "futures-macro" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77408a692f1f97bcc61dc001d752e00643408fbc922e4d634c655df50d595556" +checksum = "0f8719ca0e1f3c5e34f3efe4570ef2c0610ca6da85ae7990d472e9cbfba13664" dependencies = [ "proc-macro-hack", "proc-macro2", @@ -718,33 +685,30 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.8" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f878195a49cee50e006b02b93cf7e0a95a38ac7b776b4c4d9cc1207cd20fcb3d" +checksum = "caf5c69029bda2e743fddd0582d1083951d65cc9539aebf8812f36c3491342d6" [[package]] name = "futures-task" -version = "0.3.8" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c554eb5bf48b2426c4771ab68c6b14468b6e76cc90996f528c3338d761a4d0d" +checksum = "13de07eb8ea81ae445aca7b69f5f7bf15d7bf4912d8ca37d6645c77ae8a58d86" dependencies = [ "once_cell", ] [[package]] name = "futures-util" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d304cff4a7b99cfb7986f7d43fbe93d175e72e704a8860787cc95e9ffd85cbd2" +checksum = "036a2107cdeb57f6d7322f1b6c363dad67cd63ca3b7d1b925bdf75bd5d96cda9" dependencies = [ - "futures-channel", "futures-core", - "futures-io", "futures-macro", "futures-sink", "futures-task", - "memchr", - "pin-project", + "pin-project-lite", "pin-utils", "proc-macro-hack", "proc-macro-nested", @@ -1205,7 +1169,7 @@ dependencies = [ "dasp_ring_buffer", "dasp_sample", "dasp_signal", - "futures", + "futures-channel", "futures-util", "hound", "ipc-channel", @@ -1530,26 +1494,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" [[package]] -name = "pin-project" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ccc2237c2c489783abd8c4c80e5450fc0e98644555b1364da68cc29aa151ca7" -dependencies = [ - "pin-project-internal", -] - -[[package]] -name = "pin-project-internal" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8e8d2bf0b23038a4424865103a4df472855692821aab4e4f5c3312d461d9e5f" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] name = "pin-project-lite" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1590,9 +1534,9 @@ checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" [[package]] name = "proc-macro-nested" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eba180dafb9038b050a4c280019bbedf9f2467b61e5d892dcad585bb57aadc5a" +checksum = "bc881b2c22681370c6a780e47af9840ef841837bc98118431d4e1868bd0c1086" [[package]] name = "proc-macro2" diff --git a/mumd/Cargo.toml b/mumd/Cargo.toml index 4f0bc19..0a102c4 100644 --- a/mumd/Cargo.toml +++ b/mumd/Cargo.toml @@ -25,8 +25,8 @@ dasp_signal = "0.11" dasp_frame = "0.11" dasp_sample = "0.11" dasp_ring_buffer = "0.11" -futures = "0.3" -futures-util = "0.3" +futures-util = { version = "0.3", features = ["sink"]} +futures-channel = "0.3.12" hound = "3.4" ipc-channel = "0.14" log = "0.4" diff --git a/mumd/src/audio.rs b/mumd/src/audio.rs index 598dde6..4fc7965 100644 --- a/mumd/src/audio.rs +++ b/mumd/src/audio.rs @@ -10,25 +10,13 @@ use dasp_frame::Frame; use dasp_interpolate::linear::Linear; use dasp_sample::{SignedSample, ToSample, Sample}; use dasp_signal::{self as signal, Signal}; -use futures::Stream; -use futures::stream::StreamExt; -use futures::task::{Context, Poll}; +use futures_util::{StreamExt, stream::Stream}; use log::*; use mumble_protocol::Serverbound; use mumble_protocol::voice::{VoicePacketPayload, VoicePacket}; use mumlib::config::SoundEffect; use opus::Channels; -use std::{ - borrow::Cow, - collections::{hash_map::Entry, HashMap, VecDeque}, - convert::TryFrom, - fmt::Debug, - fs::File, - future::Future, - io::Read, - pin::Pin, - sync::{Arc, Mutex}, -}; +use std::{borrow::Cow, collections::{hash_map::Entry, HashMap, VecDeque}, convert::TryFrom, fmt::Debug, fs::File, future::Future, io::Read, pin::Pin, sync::{Arc, Mutex}, task::{Context, Poll}}; use strum::IntoEnumIterator; use strum_macros::EnumIter; use tokio::sync::watch; @@ -171,7 +159,7 @@ impl Audio { } .unwrap(); - let (sample_sender, sample_receiver) = futures::channel::mpsc::channel(1_000_000); + let (sample_sender, sample_receiver) = futures_channel::mpsc::channel(1_000_000); let (input_volume_sender, input_volume_receiver) = watch::channel::<f32>(input_volume); diff --git a/mumd/src/audio/input.rs b/mumd/src/audio/input.rs index deb0fb8..472c161 100644 --- a/mumd/src/audio/input.rs +++ b/mumd/src/audio/input.rs @@ -3,7 +3,7 @@ use tokio::sync::watch; use log::*; pub fn callback<T: Sample>( - mut input_sender: futures::channel::mpsc::Sender<f32>, + mut input_sender: futures_channel::mpsc::Sender<f32>, input_volume_receiver: watch::Receiver<f32>, ) -> impl FnMut(&[T], &InputCallbackInfo) + Send + 'static { move |data: &[T], _info: &InputCallbackInfo| { diff --git a/mumd/src/client.rs b/mumd/src/client.rs index 222e2a7..84c1ea1 100644 --- a/mumd/src/client.rs +++ b/mumd/src/client.rs @@ -2,12 +2,11 @@ use crate::command; use crate::network::{tcp, udp, ConnectionInfo}; use crate::state::State; -use futures_util::join; use ipc_channel::ipc::IpcSender; use mumble_protocol::{Serverbound, control::ControlPacket, crypt::ClientCryptState}; use mumlib::command::{Command, CommandResponse}; use std::sync::Arc; -use tokio::sync::{mpsc, watch, Mutex}; +use tokio::{join, sync::{mpsc, watch, Mutex}}; pub async fn handle( command_receiver: mpsc::UnboundedReceiver<( diff --git a/mumd/src/main.rs b/mumd/src/main.rs index 67481f9..0526930 100644 --- a/mumd/src/main.rs +++ b/mumd/src/main.rs @@ -5,13 +5,12 @@ mod network; mod notify; mod state; -use futures::join; use ipc_channel::ipc::{self, IpcOneShotServer, IpcSender}; use log::*; use mumlib::command::{Command, CommandResponse}; use mumlib::setup_logger; use std::fs; -use tokio::sync::mpsc; +use tokio::{join, sync::mpsc}; use tokio::task::spawn_blocking; #[tokio::main] diff --git a/mumd/src/network.rs b/mumd/src/network.rs index 6c67b3a..7950dc7 100644 --- a/mumd/src/network.rs +++ b/mumd/src/network.rs @@ -1,15 +1,10 @@ pub mod tcp; pub mod udp; -use futures::Future; -use futures::FutureExt; -use futures::channel::oneshot; -use futures::join; -use futures::pin_mut; -use futures::select; +use futures_util::FutureExt; use log::*; -use std::net::SocketAddr; -use tokio::sync::watch; +use std::{future::Future, net::SocketAddr}; +use tokio::{join, select, sync::{oneshot, watch}}; use crate::state::StatePhase; @@ -58,9 +53,9 @@ async fn run_until<F>( let main_block = async { let rx = rx.fuse(); - pin_mut!(rx); + //pin_mut!(rx); let fut = fut.fuse(); - pin_mut!(fut); + //pin_mut!(fut); select! { _ = fut => (), _ = rx => (), diff --git a/mumd/src/network/tcp.rs b/mumd/src/network/tcp.rs index 3a32b9f..fa2681e 100644 --- a/mumd/src/network/tcp.rs +++ b/mumd/src/network/tcp.rs @@ -2,8 +2,8 @@ use crate::network::ConnectionInfo; use crate::state::{State, StatePhase}; use log::*; -use futures::{FutureExt, SinkExt, Stream, StreamExt}; -use futures_util::stream::{SplitSink, SplitStream}; +use futures_util::{FutureExt, SinkExt, StreamExt}; +use futures_util::stream::{SplitSink, SplitStream, Stream}; use mumble_protocol::control::{msgs, ClientControlCodec, ControlCodec, ControlPacket}; use mumble_protocol::crypt::ClientCryptState; use mumble_protocol::voice::VoicePacket; diff --git a/mumd/src/network/udp.rs b/mumd/src/network/udp.rs index 5f24b51..da92dcb 100644 --- a/mumd/src/network/udp.rs +++ b/mumd/src/network/udp.rs @@ -1,8 +1,8 @@ use crate::network::ConnectionInfo; use crate::state::{State, StatePhase}; -use futures::{join, FutureExt, SinkExt, StreamExt, Stream}; -use futures_util::stream::{SplitSink, SplitStream}; +use futures_util::{FutureExt, SinkExt, StreamExt}; +use futures_util::stream::{SplitSink, SplitStream, Stream}; use log::*; use mumble_protocol::crypt::ClientCryptState; use mumble_protocol::ping::{PingPacket, PongPacket}; @@ -14,7 +14,7 @@ use std::net::{Ipv6Addr, SocketAddr}; use std::rc::Rc; use std::sync::atomic::{AtomicU64, Ordering}; use std::sync::Arc; -use tokio::net::UdpSocket; +use tokio::{join, net::UdpSocket}; use tokio::sync::{mpsc, watch, Mutex}; use tokio::time::{interval, Duration}; use tokio_util::udp::UdpFramed; |
