aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Cargo.lock88
-rw-r--r--mumd/Cargo.toml4
-rw-r--r--mumd/src/audio.rs18
-rw-r--r--mumd/src/audio/input.rs2
-rw-r--r--mumd/src/client.rs3
-rw-r--r--mumd/src/main.rs3
-rw-r--r--mumd/src/network.rs15
-rw-r--r--mumd/src/network/tcp.rs4
-rw-r--r--mumd/src/network/udp.rs6
9 files changed, 34 insertions, 109 deletions
diff --git a/Cargo.lock b/Cargo.lock
index f732507..fdf3373 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -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;