summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorLinus Färnstrand <linus@mullvad.net>2023-07-13 16:21:27 +0200
committerLinus Färnstrand <linus@mullvad.net>2024-01-04 18:06:21 +0100
commit6c7cabdd1492399618f0ecc8840b3c3dddfaeb3e (patch)
tree1850a137237d86b32acedaa612dd01c7b17b680f
parentd081fab3bd95b306b432fce38c926db37f7d68b6 (diff)
downloadmullvadvpn-6c7cabdd1492399618f0ecc8840b3c3dddfaeb3e.tar.xz
mullvadvpn-6c7cabdd1492399618f0ecc8840b3c3dddfaeb3e.zip
Add workspace level lints
-rw-r--r--Cargo.toml6
-rw-r--r--android/translations-converter/Cargo.toml3
-rw-r--r--android/translations-converter/src/main.rs2
-rw-r--r--ios/MullvadREST/Transport/Shadowsocks/shadowsocks-proxy/Cargo.toml3
-rw-r--r--ios/TunnelObfuscation/tunnel-obfuscator-proxy/Cargo.toml3
-rw-r--r--mullvad-api/Cargo.toml3
-rw-r--r--mullvad-api/src/lib.rs2
-rw-r--r--mullvad-cli/Cargo.toml2
-rw-r--r--mullvad-cli/src/main.rs2
-rw-r--r--mullvad-daemon/Cargo.toml3
-rw-r--r--mullvad-daemon/src/lib.rs1
-rw-r--r--mullvad-daemon/src/main.rs2
-rw-r--r--mullvad-exclude/Cargo.toml3
-rw-r--r--mullvad-fs/Cargo.toml3
-rw-r--r--mullvad-jni/Cargo.toml3
-rw-r--r--mullvad-jni/src/lib.rs1
-rw-r--r--mullvad-management-interface/Cargo.toml3
-rw-r--r--mullvad-nsis/Cargo.toml3
-rw-r--r--mullvad-paths/Cargo.toml3
-rw-r--r--mullvad-paths/src/lib.rs2
-rw-r--r--mullvad-problem-report/Cargo.toml3
-rw-r--r--mullvad-problem-report/src/lib.rs2
-rw-r--r--mullvad-problem-report/src/main.rs2
-rw-r--r--mullvad-relay-selector/Cargo.toml3
-rw-r--r--mullvad-setup/Cargo.toml3
-rw-r--r--mullvad-types/Cargo.toml3
-rw-r--r--mullvad-types/src/lib.rs2
-rw-r--r--mullvad-version/Cargo.toml3
-rw-r--r--talpid-core/Cargo.toml3
-rw-r--r--talpid-core/src/lib.rs1
-rw-r--r--talpid-dbus/Cargo.toml3
-rw-r--r--talpid-dbus/src/network_manager.rs2
-rw-r--r--talpid-openvpn-plugin/Cargo.toml3
-rw-r--r--talpid-openvpn-plugin/src/lib.rs2
-rw-r--r--talpid-openvpn/Cargo.toml2
-rw-r--r--talpid-openvpn/src/lib.rs1
-rw-r--r--talpid-platform-metadata/Cargo.toml3
-rw-r--r--talpid-routing/Cargo.toml2
-rw-r--r--talpid-routing/src/lib.rs1
-rw-r--r--talpid-time/Cargo.toml3
-rw-r--r--talpid-tunnel-config-client/Cargo.toml3
-rw-r--r--talpid-tunnel-config-client/src/classic_mceliece.rs2
-rw-r--r--talpid-tunnel/Cargo.toml3
-rw-r--r--talpid-types/Cargo.toml3
-rw-r--r--talpid-types/src/lib.rs2
-rw-r--r--talpid-windows/Cargo.toml3
-rw-r--r--talpid-windows/src/lib.rs1
-rw-r--r--talpid-wireguard/Cargo.toml2
-rw-r--r--talpid-wireguard/src/lib.rs1
-rw-r--r--tunnel-obfuscation/Cargo.toml3
50 files changed, 94 insertions, 29 deletions
diff --git a/Cargo.toml b/Cargo.toml
index 00a797d3c2..d5db47a22a 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -40,6 +40,12 @@ members = [
"tunnel-obfuscation",
]
+[workspace.lints.rust]
+rust_2018_idioms = "deny"
+
+[workspace.lints.clippy]
+unused_async = "deny"
+
[workspace.dependencies]
tokio = { version = "1.8" }
# Tonic and related crates
diff --git a/android/translations-converter/Cargo.toml b/android/translations-converter/Cargo.toml
index 1c3b89e1d8..ee6cd4989f 100644
--- a/android/translations-converter/Cargo.toml
+++ b/android/translations-converter/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[dependencies]
err-derive = { workspace = true }
htmlize = { version = "1.0.2", features = ["unescape"] }
diff --git a/android/translations-converter/src/main.rs b/android/translations-converter/src/main.rs
index 118c66d425..afb760f899 100644
--- a/android/translations-converter/src/main.rs
+++ b/android/translations-converter/src/main.rs
@@ -31,8 +31,6 @@
//! most cases, it is important to keep in mind that this is just a helper tool and manual steps are
//! likely to be needed from time to time.
-#![deny(rust_2018_idioms)]
-
mod android;
mod gettext;
mod normalize;
diff --git a/ios/MullvadREST/Transport/Shadowsocks/shadowsocks-proxy/Cargo.toml b/ios/MullvadREST/Transport/Shadowsocks/shadowsocks-proxy/Cargo.toml
index d4f4623c8b..1247e3200a 100644
--- a/ios/MullvadREST/Transport/Shadowsocks/shadowsocks-proxy/Cargo.toml
+++ b/ios/MullvadREST/Transport/Shadowsocks/shadowsocks-proxy/Cargo.toml
@@ -7,6 +7,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[lib]
crate-type = [ "rlib", "staticlib" ]
bench = false
diff --git a/ios/TunnelObfuscation/tunnel-obfuscator-proxy/Cargo.toml b/ios/TunnelObfuscation/tunnel-obfuscator-proxy/Cargo.toml
index 3608261d22..0eb3980e73 100644
--- a/ios/TunnelObfuscation/tunnel-obfuscator-proxy/Cargo.toml
+++ b/ios/TunnelObfuscation/tunnel-obfuscator-proxy/Cargo.toml
@@ -7,6 +7,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[lib]
crate-type = [ "rlib", "staticlib" ]
bench = false
diff --git a/mullvad-api/Cargo.toml b/mullvad-api/Cargo.toml
index 90ad8ac22d..9ff57b3fd2 100644
--- a/mullvad-api/Cargo.toml
+++ b/mullvad-api/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[features]
# Allow the API server to use to be configured via MULLVAD_API_HOST and MULLVAD_API_ADDR.
api-override = []
diff --git a/mullvad-api/src/lib.rs b/mullvad-api/src/lib.rs
index d9c3d9e21b..e66896a1b0 100644
--- a/mullvad-api/src/lib.rs
+++ b/mullvad-api/src/lib.rs
@@ -1,5 +1,3 @@
-#![deny(rust_2018_idioms)]
-
#[cfg(target_os = "android")]
use futures::channel::mpsc;
use futures::Stream;
diff --git a/mullvad-cli/Cargo.toml b/mullvad-cli/Cargo.toml
index 60ef5faddf..8e310dce3b 100644
--- a/mullvad-cli/Cargo.toml
+++ b/mullvad-cli/Cargo.toml
@@ -8,6 +8,8 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
[[bin]]
name = "mullvad"
diff --git a/mullvad-cli/src/main.rs b/mullvad-cli/src/main.rs
index 83bd283892..270d3c293e 100644
--- a/mullvad-cli/src/main.rs
+++ b/mullvad-cli/src/main.rs
@@ -1,5 +1,3 @@
-#![deny(rust_2018_idioms)]
-
#[cfg(all(unix, not(target_os = "android")))]
use anyhow::anyhow;
use anyhow::Result;
diff --git a/mullvad-daemon/Cargo.toml b/mullvad-daemon/Cargo.toml
index 352db7d9f9..7391b268f8 100644
--- a/mullvad-daemon/Cargo.toml
+++ b/mullvad-daemon/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[features]
# Allow the API server to use to be configured
api-override = ["mullvad-api/api-override"]
diff --git a/mullvad-daemon/src/lib.rs b/mullvad-daemon/src/lib.rs
index b429366492..f365496baf 100644
--- a/mullvad-daemon/src/lib.rs
+++ b/mullvad-daemon/src/lib.rs
@@ -1,4 +1,3 @@
-#![deny(rust_2018_idioms)]
#![recursion_limit = "512"]
mod access_method;
diff --git a/mullvad-daemon/src/main.rs b/mullvad-daemon/src/main.rs
index 12dacfad4b..80f15bb755 100644
--- a/mullvad-daemon/src/main.rs
+++ b/mullvad-daemon/src/main.rs
@@ -1,5 +1,3 @@
-#![deny(rust_2018_idioms)]
-
use mullvad_daemon::{
logging,
management_interface::{ManagementInterfaceEventBroadcaster, ManagementInterfaceServer},
diff --git a/mullvad-exclude/Cargo.toml b/mullvad-exclude/Cargo.toml
index 830a9924ff..b641fd281b 100644
--- a/mullvad-exclude/Cargo.toml
+++ b/mullvad-exclude/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[target.'cfg(target_os = "linux")'.dependencies]
nix = "0.23"
err-derive = { workspace = true }
diff --git a/mullvad-fs/Cargo.toml b/mullvad-fs/Cargo.toml
index 76fbd3d7d4..e0d43888c6 100644
--- a/mullvad-fs/Cargo.toml
+++ b/mullvad-fs/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[dependencies]
log = { workspace = true }
tokio = { workspace = true, features = ["fs", "rt"] }
diff --git a/mullvad-jni/Cargo.toml b/mullvad-jni/Cargo.toml
index 0571a50cad..6ed3ddcadf 100644
--- a/mullvad-jni/Cargo.toml
+++ b/mullvad-jni/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[features]
# Allow the API server to use to be configured
api-override = ["mullvad-api/api-override"]
diff --git a/mullvad-jni/src/lib.rs b/mullvad-jni/src/lib.rs
index 8c51157896..a1c0e7bf59 100644
--- a/mullvad-jni/src/lib.rs
+++ b/mullvad-jni/src/lib.rs
@@ -1,5 +1,4 @@
#![cfg(target_os = "android")]
-#![deny(rust_2018_idioms)]
mod classes;
mod daemon_interface;
diff --git a/mullvad-management-interface/Cargo.toml b/mullvad-management-interface/Cargo.toml
index dc70a47905..b83298779e 100644
--- a/mullvad-management-interface/Cargo.toml
+++ b/mullvad-management-interface/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[dependencies]
chrono = { workspace = true }
err-derive = { workspace = true }
diff --git a/mullvad-nsis/Cargo.toml b/mullvad-nsis/Cargo.toml
index 7bf430b208..dd6b2aa8bc 100644
--- a/mullvad-nsis/Cargo.toml
+++ b/mullvad-nsis/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[lib]
crate_type = ["staticlib"]
diff --git a/mullvad-paths/Cargo.toml b/mullvad-paths/Cargo.toml
index cacd8526a2..df8a66635a 100644
--- a/mullvad-paths/Cargo.toml
+++ b/mullvad-paths/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[dependencies]
err-derive = { workspace = true }
diff --git a/mullvad-paths/src/lib.rs b/mullvad-paths/src/lib.rs
index cdbad6bc7b..4fe401016b 100644
--- a/mullvad-paths/src/lib.rs
+++ b/mullvad-paths/src/lib.rs
@@ -1,5 +1,3 @@
-#![deny(rust_2018_idioms)]
-
#[cfg(not(target_os = "windows"))]
use std::fs;
use std::{io, path::PathBuf};
diff --git a/mullvad-problem-report/Cargo.toml b/mullvad-problem-report/Cargo.toml
index 9001b4a181..d5b19d3703 100644
--- a/mullvad-problem-report/Cargo.toml
+++ b/mullvad-problem-report/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[dependencies]
dirs = "5.0.1"
err-derive = { workspace = true }
diff --git a/mullvad-problem-report/src/lib.rs b/mullvad-problem-report/src/lib.rs
index 10c2ec1b96..707b1d4e8b 100644
--- a/mullvad-problem-report/src/lib.rs
+++ b/mullvad-problem-report/src/lib.rs
@@ -1,5 +1,3 @@
-#![deny(rust_2018_idioms)]
-
use mullvad_api::proxy::ApiConnectionMode;
use once_cell::sync::Lazy;
use regex::Regex;
diff --git a/mullvad-problem-report/src/main.rs b/mullvad-problem-report/src/main.rs
index 50a2e0ce18..ee1bfc7c6a 100644
--- a/mullvad-problem-report/src/main.rs
+++ b/mullvad-problem-report/src/main.rs
@@ -1,5 +1,3 @@
-#![deny(rust_2018_idioms)]
-
use clap::Parser;
use mullvad_problem_report::{collect_report, Error};
use std::{
diff --git a/mullvad-relay-selector/Cargo.toml b/mullvad-relay-selector/Cargo.toml
index aa954ba610..7cf25034bc 100644
--- a/mullvad-relay-selector/Cargo.toml
+++ b/mullvad-relay-selector/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[dependencies]
chrono = { workspace = true }
err-derive = { workspace = true }
diff --git a/mullvad-setup/Cargo.toml b/mullvad-setup/Cargo.toml
index 22fc63b54f..bc13c3e593 100644
--- a/mullvad-setup/Cargo.toml
+++ b/mullvad-setup/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[[bin]]
name = "mullvad-setup"
path = "src/main.rs"
diff --git a/mullvad-types/Cargo.toml b/mullvad-types/Cargo.toml
index 1bc311c666..68e036e5f7 100644
--- a/mullvad-types/Cargo.toml
+++ b/mullvad-types/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[dependencies]
chrono = { workspace = true, features = ["clock", "serde"] }
err-derive = { workspace = true }
diff --git a/mullvad-types/src/lib.rs b/mullvad-types/src/lib.rs
index 8aefaeb400..8b8bd35fc4 100644
--- a/mullvad-types/src/lib.rs
+++ b/mullvad-types/src/lib.rs
@@ -1,5 +1,3 @@
-#![deny(rust_2018_idioms)]
-
pub mod access_method;
pub mod account;
pub mod auth_failed;
diff --git a/mullvad-version/Cargo.toml b/mullvad-version/Cargo.toml
index 87a1b5df68..229b858f5f 100644
--- a/mullvad-version/Cargo.toml
+++ b/mullvad-version/Cargo.toml
@@ -13,6 +13,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[target.'cfg(not(target_os="android"))'.dependencies]
regex = "1.6.0"
diff --git a/talpid-core/Cargo.toml b/talpid-core/Cargo.toml
index 4a7d74e763..b7ff565293 100644
--- a/talpid-core/Cargo.toml
+++ b/talpid-core/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[dependencies]
err-derive = { workspace = true }
futures = "0.3.15"
diff --git a/talpid-core/src/lib.rs b/talpid-core/src/lib.rs
index cc908bbfbe..d0b6a98b38 100644
--- a/talpid-core/src/lib.rs
+++ b/talpid-core/src/lib.rs
@@ -1,7 +1,6 @@
//! The core components of the talpidaemon VPN client.
#![deny(missing_docs)]
-#![deny(rust_2018_idioms)]
#![recursion_limit = "1024"]
/// Misc FFI utilities.
diff --git a/talpid-dbus/Cargo.toml b/talpid-dbus/Cargo.toml
index 60ab88f973..346f154a95 100644
--- a/talpid-dbus/Cargo.toml
+++ b/talpid-dbus/Cargo.toml
@@ -7,6 +7,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[target.'cfg(target_os = "linux")'.dependencies]
dbus = "0.9"
err-derive = { workspace = true }
diff --git a/talpid-dbus/src/network_manager.rs b/talpid-dbus/src/network_manager.rs
index ba614f0563..7cddb33981 100644
--- a/talpid-dbus/src/network_manager.rs
+++ b/talpid-dbus/src/network_manager.rs
@@ -454,7 +454,7 @@ impl NetworkManager {
let device = self.as_path(&device_path);
// Get the last applied connection
- let (mut settings, version_id): (NetworkSettings, u64) =
+ let (mut settings, version_id): (NetworkSettings<'_>, u64) =
device.method_call(NM_DEVICE, "GetAppliedConnection", (0u32,))?;
// Keep changed routes.
diff --git a/talpid-openvpn-plugin/Cargo.toml b/talpid-openvpn-plugin/Cargo.toml
index 39315775ba..2dc6506c03 100644
--- a/talpid-openvpn-plugin/Cargo.toml
+++ b/talpid-openvpn-plugin/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[lib]
crate-type = ["cdylib"]
diff --git a/talpid-openvpn-plugin/src/lib.rs b/talpid-openvpn-plugin/src/lib.rs
index 0f9bb914a6..f35a9a5d07 100644
--- a/talpid-openvpn-plugin/src/lib.rs
+++ b/talpid-openvpn-plugin/src/lib.rs
@@ -1,5 +1,3 @@
-#![deny(rust_2018_idioms)]
-
use openvpn_plugin::{openvpn_plugin, EventResult, EventType};
use std::{collections::HashMap, ffi::CString, io, sync::Mutex};
use talpid_types::ErrorExt;
diff --git a/talpid-openvpn/Cargo.toml b/talpid-openvpn/Cargo.toml
index a348ea7486..2dfa62d321 100644
--- a/talpid-openvpn/Cargo.toml
+++ b/talpid-openvpn/Cargo.toml
@@ -8,6 +8,8 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
[dependencies]
async-trait = "0.1"
diff --git a/talpid-openvpn/src/lib.rs b/talpid-openvpn/src/lib.rs
index a0c4651d13..47d1bc675a 100644
--- a/talpid-openvpn/src/lib.rs
+++ b/talpid-openvpn/src/lib.rs
@@ -1,7 +1,6 @@
//! Manage OpenVPN tunnels.
#![deny(missing_docs)]
-#![deny(rust_2018_idioms)]
use crate::proxy::ProxyMonitor;
#[cfg(windows)]
diff --git a/talpid-platform-metadata/Cargo.toml b/talpid-platform-metadata/Cargo.toml
index eca5b7b6e3..168bb2e0ba 100644
--- a/talpid-platform-metadata/Cargo.toml
+++ b/talpid-platform-metadata/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[target.'cfg(target_os = "linux")'.dependencies]
rs-release = "0.1.7"
diff --git a/talpid-routing/Cargo.toml b/talpid-routing/Cargo.toml
index 31545fe705..1844377bbd 100644
--- a/talpid-routing/Cargo.toml
+++ b/talpid-routing/Cargo.toml
@@ -8,6 +8,8 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
[dependencies]
err-derive = { workspace = true }
diff --git a/talpid-routing/src/lib.rs b/talpid-routing/src/lib.rs
index f1bf28d1a2..7bb337b127 100644
--- a/talpid-routing/src/lib.rs
+++ b/talpid-routing/src/lib.rs
@@ -1,7 +1,6 @@
//! Manage routing tables on various platforms.
#![deny(missing_docs)]
-#![deny(rust_2018_idioms)]
use ipnetwork::IpNetwork;
use std::{fmt, net::IpAddr};
diff --git a/talpid-time/Cargo.toml b/talpid-time/Cargo.toml
index 7bd49722ec..fc0effe6b9 100644
--- a/talpid-time/Cargo.toml
+++ b/talpid-time/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[dependencies]
tokio = { workspace = true, features = ["time"] }
libc = "0.2"
diff --git a/talpid-tunnel-config-client/Cargo.toml b/talpid-tunnel-config-client/Cargo.toml
index aed783edae..46a96828c6 100644
--- a/talpid-tunnel-config-client/Cargo.toml
+++ b/talpid-tunnel-config-client/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[dependencies]
log = { workspace = true }
rand = "0.8"
diff --git a/talpid-tunnel-config-client/src/classic_mceliece.rs b/talpid-tunnel-config-client/src/classic_mceliece.rs
index 780566958d..a2d5dc0be2 100644
--- a/talpid-tunnel-config-client/src/classic_mceliece.rs
+++ b/talpid-tunnel-config-client/src/classic_mceliece.rs
@@ -27,7 +27,7 @@ pub async fn generate_keys() -> (PublicKey<'static>, SecretKey<'static>) {
}
pub fn decapsulate(
- secret: &SecretKey,
+ secret: &SecretKey<'_>,
ciphertext_slice: &[u8],
) -> Result<SharedSecret<'static>, super::Error> {
let ciphertext_array =
diff --git a/talpid-tunnel/Cargo.toml b/talpid-tunnel/Cargo.toml
index cf022f9936..e6cda3ac99 100644
--- a/talpid-tunnel/Cargo.toml
+++ b/talpid-tunnel/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[dependencies]
err-derive = { workspace = true }
cfg-if = "1.0"
diff --git a/talpid-types/Cargo.toml b/talpid-types/Cargo.toml
index a65dbe589b..0b3905774d 100644
--- a/talpid-types/Cargo.toml
+++ b/talpid-types/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[dependencies]
serde = { version = "1.0", features = ["derive"] }
ipnetwork = "0.16"
diff --git a/talpid-types/src/lib.rs b/talpid-types/src/lib.rs
index ee2c6d172a..34581f074a 100644
--- a/talpid-types/src/lib.rs
+++ b/talpid-types/src/lib.rs
@@ -1,5 +1,3 @@
-#![deny(rust_2018_idioms)]
-
#[cfg(target_os = "android")]
pub mod android;
pub mod net;
diff --git a/talpid-windows/Cargo.toml b/talpid-windows/Cargo.toml
index 0a8489879f..15bb5824dc 100644
--- a/talpid-windows/Cargo.toml
+++ b/talpid-windows/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[target.'cfg(windows)'.dependencies]
err-derive = { workspace = true }
socket2 = { version = "0.5.3" }
diff --git a/talpid-windows/src/lib.rs b/talpid-windows/src/lib.rs
index 755f6b2e30..53fa172ee0 100644
--- a/talpid-windows/src/lib.rs
+++ b/talpid-windows/src/lib.rs
@@ -1,7 +1,6 @@
//! Interface with low-level Windows-specific bits.
#![deny(missing_docs)]
-#![deny(rust_2018_idioms)]
#![cfg(windows)]
/// I/O
diff --git a/talpid-wireguard/Cargo.toml b/talpid-wireguard/Cargo.toml
index f9a446a700..f50383d92b 100644
--- a/talpid-wireguard/Cargo.toml
+++ b/talpid-wireguard/Cargo.toml
@@ -8,6 +8,8 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
[dependencies]
err-derive = { workspace = true }
diff --git a/talpid-wireguard/src/lib.rs b/talpid-wireguard/src/lib.rs
index 27f7b3d9a5..63f24ccb4f 100644
--- a/talpid-wireguard/src/lib.rs
+++ b/talpid-wireguard/src/lib.rs
@@ -1,7 +1,6 @@
//! Manage WireGuard tunnels.
#![deny(missing_docs)]
-#![deny(rust_2018_idioms)]
use self::config::Config;
use futures::future::{abortable, AbortHandle as FutureAbortHandle, BoxFuture, Future};
diff --git a/tunnel-obfuscation/Cargo.toml b/tunnel-obfuscation/Cargo.toml
index fc279fd973..2a7bc8fdc3 100644
--- a/tunnel-obfuscation/Cargo.toml
+++ b/tunnel-obfuscation/Cargo.toml
@@ -8,6 +8,9 @@ license.workspace = true
edition.workspace = true
publish.workspace = true
+[lints]
+workspace = true
+
[dependencies]
async-trait = "0.1"
err-derive = { workspace = true }