fix: disable windows signal handling for now
Diff
Cargo.toml | 6 ++++--
src/signals.rs | 20 +++++++++++++++++---
2 files changed, 21 insertions(+), 5 deletions(-)
@@ -49,12 +49,14 @@ tokio-rustls = { version = "0.22" }
tokio-util = { version = "0.6", features = ["io"] }
tracing = "0.1"
tracing-subscriber = "0.2"
signal-hook = { version = "0.3.4", features = ["extended-siginfo"] }
signal-hook-tokio = { version = "0.3", features = ["futures-v0_3"], default-features = false }
[target.'cfg(all(target_env = "musl", target_pointer_width = "64"))'.dependencies.jemallocator]
version = "0.3"
[target.'cfg(not(windows))'.dependencies]
signal-hook = { version = "0.3.4", features = ["extended-siginfo"] }
signal-hook-tokio = { version = "0.3", features = ["futures-v0_3"], default-features = false }
[dev-dependencies]
bytes = "1.0"
@@ -1,14 +1,24 @@
use futures_util::stream::StreamExt;
use signal_hook::consts::signal::*;
use signal_hook_tokio::Signals;
#[cfg(not(windows))]
use {futures_util::stream::StreamExt, signal_hook::consts::signal::*, signal_hook_tokio::Signals};
#[cfg(windows)]
type Signals = futures_util::stream::Empty<()>;
use crate::Result;
#[cfg(not(windows))]
pub fn create_signals() -> Result<Signals> {
Ok(Signals::new(&[SIGHUP, SIGTERM, SIGINT, SIGQUIT])?)
}
#[cfg(windows)]
pub fn create_signals() -> Result<Signals> {
Ok(futures_util::stream::empty())
}
#[cfg(not(windows))]
pub async fn wait_for_signals(signals: Signals) {
let mut signals = signals.fuse();
@@ -26,3 +36,7 @@ pub async fn wait_for_signals(signals: Signals) {
}
}
}
#[cfg(windows)]
pub async fn wait_for_signals(signals: Signals) {}