--- a/Cargo.toml
+++ b/Cargo.toml
@@ -50,18 +50,13 @@
 repository = "neonmoe/minreq"
 
 [features]
-https = ["https-rustls"]
+https = ["https-rustls-probe"]
 https-bundled = ["openssl/vendored"]
 https-bundled-probe = [
     "https-bundled",
     "openssl-probe",
 ]
 https-native = ["native-tls"]
-https-rustls = [
-    "rustls",
-    "webpki-roots",
-    "rustls-webpki",
-]
 https-rustls-probe = [
     "rustls",
     "rustls-native-certs",
@@ -128,10 +123,6 @@
 version = "0.6.1"
 optional = true
 
-[dependencies.rustls-webpki]
-version = "0.101.0"
-optional = true
-
 [dependencies.serde]
 version = "1.0.101"
 optional = true
@@ -144,10 +135,6 @@
 version = "2.1.0"
 optional = true
 
-[dependencies.webpki-roots]
-version = "0.25.2"
-optional = true
-
 [dev-dependencies.chrono]
 version = "0.4.0"
 
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -238,10 +238,6 @@
 extern crate native_tls;
 #[cfg(feature = "openssl-probe")]
 extern crate openssl_probe;
-#[cfg(feature = "webpki-roots")]
-extern crate webpki;
-#[cfg(feature = "webpki-roots")]
-extern crate webpki_roots;
 
 #[cfg(feature = "json-using-serde")]
 extern crate serde;
--- a/src/connection.rs
+++ b/src/connection.rs
@@ -15,8 +15,6 @@
 #[cfg(feature = "rustls")]
 use std::sync::Arc;
 use std::time::{Duration, Instant};
-#[cfg(feature = "rustls-webpki")]
-use webpki_roots::TLS_SERVER_ROOTS;
 
 #[cfg(feature = "rustls")]
 static CONFIG: std::sync::LazyLock<Arc<ClientConfig>> = std::sync::LazyLock::new(|| {
@@ -32,16 +30,6 @@
         }
     }
 
-    #[cfg(feature = "rustls-webpki")]
-    #[allow(deprecated)] // Need to use add_server_trust_anchors to compile with rustls 0.21.1
-    root_certificates.add_server_trust_anchors(TLS_SERVER_ROOTS.iter().map(|ta| {
-        rustls::OwnedTrustAnchor::from_subject_spki_name_constraints(
-            ta.subject,
-            ta.spki,
-            ta.name_constraints,
-        )
-    }));
-
     let config = ClientConfig::builder()
         .with_safe_defaults()
         .with_root_certificates(root_certificates)
