Unverified Commit 2ffd5847 authored by Graham King's avatar Graham King Committed by GitHub
Browse files

chore: Remove native-tls / openssl dependency (#5703)


Signed-off-by: default avatarGraham King <grahamk@nvidia.com>
parent 3d62cc7f
...@@ -3008,15 +3008,6 @@ version = "0.1.5" ...@@ -3008,15 +3008,6 @@ version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2"
[[package]]
name = "foreign-types"
version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
dependencies = [
"foreign-types-shared 0.1.1",
]
[[package]] [[package]]
name = "foreign-types" name = "foreign-types"
version = "0.5.0" version = "0.5.0"
...@@ -3024,7 +3015,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" ...@@ -3024,7 +3015,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965" checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
dependencies = [ dependencies = [
"foreign-types-macros", "foreign-types-macros",
"foreign-types-shared 0.3.1", "foreign-types-shared",
] ]
[[package]] [[package]]
...@@ -3038,12 +3029,6 @@ dependencies = [ ...@@ -3038,12 +3029,6 @@ dependencies = [
"syn 2.0.111", "syn 2.0.111",
] ]
[[package]]
name = "foreign-types-shared"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
[[package]] [[package]]
name = "foreign-types-shared" name = "foreign-types-shared"
version = "0.3.1" version = "0.3.1"
...@@ -3947,22 +3932,6 @@ dependencies = [ ...@@ -3947,22 +3932,6 @@ dependencies = [
"tower-service", "tower-service",
] ]
[[package]]
name = "hyper-tls"
version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0"
dependencies = [
"bytes",
"http-body-util",
"hyper 1.8.1",
"hyper-util",
"native-tls",
"tokio",
"tokio-native-tls",
"tower-service",
]
[[package]] [[package]]
name = "hyper-util" name = "hyper-util"
version = "0.1.18" version = "0.1.18"
...@@ -5111,7 +5080,7 @@ dependencies = [ ...@@ -5111,7 +5080,7 @@ dependencies = [
"bitflags 2.10.0", "bitflags 2.10.0",
"block", "block",
"core-graphics-types", "core-graphics-types",
"foreign-types 0.5.0", "foreign-types",
"log", "log",
"objc", "objc",
"paste", "paste",
...@@ -5126,7 +5095,7 @@ dependencies = [ ...@@ -5126,7 +5095,7 @@ dependencies = [
"bitflags 2.10.0", "bitflags 2.10.0",
"block", "block",
"core-graphics-types", "core-graphics-types",
"foreign-types 0.5.0", "foreign-types",
"log", "log",
"objc", "objc",
"paste", "paste",
...@@ -5567,23 +5536,6 @@ dependencies = [ ...@@ -5567,23 +5536,6 @@ dependencies = [
"typenum", "typenum",
] ]
[[package]]
name = "native-tls"
version = "0.2.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e"
dependencies = [
"libc",
"log",
"openssl",
"openssl-probe",
"openssl-sys",
"schannel",
"security-framework 2.11.1",
"security-framework-sys",
"tempfile",
]
[[package]] [[package]]
name = "ndarray" name = "ndarray"
version = "0.16.1" version = "0.16.1"
...@@ -6282,60 +6234,12 @@ dependencies = [ ...@@ -6282,60 +6234,12 @@ dependencies = [
"thiserror 2.0.17", "thiserror 2.0.17",
] ]
[[package]]
name = "openssl"
version = "0.10.75"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "08838db121398ad17ab8531ce9de97b244589089e290a384c900cb9ff7434328"
dependencies = [
"bitflags 2.10.0",
"cfg-if 1.0.4",
"foreign-types 0.3.2",
"libc",
"once_cell",
"openssl-macros",
"openssl-sys",
]
[[package]]
name = "openssl-macros"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.111",
]
[[package]] [[package]]
name = "openssl-probe" name = "openssl-probe"
version = "0.1.6" version = "0.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e"
[[package]]
name = "openssl-src"
version = "300.5.4+3.5.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a507b3792995dae9b0df8a1c1e3771e8418b7c2d9f0baeba32e6fe8b06c7cb72"
dependencies = [
"cc",
]
[[package]]
name = "openssl-sys"
version = "0.9.111"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "82cab2d520aa75e3c58898289429321eb788c3106963d0dc886ec7a5f4adc321"
dependencies = [
"cc",
"libc",
"openssl-src",
"pkg-config",
"vcpkg",
]
[[package]] [[package]]
name = "opentelemetry" name = "opentelemetry"
version = "0.31.0" version = "0.31.0"
...@@ -7588,13 +7492,11 @@ dependencies = [ ...@@ -7588,13 +7492,11 @@ dependencies = [
"http-body-util", "http-body-util",
"hyper 1.8.1", "hyper 1.8.1",
"hyper-rustls", "hyper-rustls",
"hyper-tls",
"hyper-util", "hyper-util",
"js-sys", "js-sys",
"log", "log",
"mime", "mime",
"mime_guess", "mime_guess",
"native-tls",
"percent-encoding", "percent-encoding",
"pin-project-lite", "pin-project-lite",
"quinn", "quinn",
...@@ -7606,7 +7508,6 @@ dependencies = [ ...@@ -7606,7 +7508,6 @@ dependencies = [
"serde_urlencoded", "serde_urlencoded",
"sync_wrapper 1.0.2", "sync_wrapper 1.0.2",
"tokio", "tokio",
"tokio-native-tls",
"tokio-rustls", "tokio-rustls",
"tokio-util", "tokio-util",
"tower 0.5.2", "tower 0.5.2",
...@@ -9438,16 +9339,6 @@ dependencies = [ ...@@ -9438,16 +9339,6 @@ dependencies = [
"syn 2.0.111", "syn 2.0.111",
] ]
[[package]]
name = "tokio-native-tls"
version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2"
dependencies = [
"native-tls",
"tokio",
]
[[package]] [[package]]
name = "tokio-rayon" name = "tokio-rayon"
version = "2.1.0" version = "2.1.0"
......
...@@ -49,10 +49,7 @@ dynamo-llm = { path = "lib/llm", version = "0.9.0" } ...@@ -49,10 +49,7 @@ dynamo-llm = { path = "lib/llm", version = "0.9.0" }
dynamo-config = { path = "lib/config", version = "0.9.0" } dynamo-config = { path = "lib/config", version = "0.9.0" }
dynamo-tokens = { path = "lib/tokens", version = "0.9.0" } dynamo-tokens = { path = "lib/tokens", version = "0.9.0" }
dynamo-kv-router = { path = "lib/kv-router", version = "0.9.0", features = ["metrics"] } dynamo-kv-router = { path = "lib/kv-router", version = "0.9.0", features = ["metrics"] }
dynamo-async-openai = { path = "lib/async-openai", version = "0.9.0", features = [ dynamo-async-openai = { path = "lib/async-openai", version = "0.9.0", features = ["byot"] }
"byot",
"rustls",
] }
dynamo-parsers = { path = "lib/parsers", version = "0.9.0" } dynamo-parsers = { path = "lib/parsers", version = "0.9.0" }
# External dependencies # External dependencies
...@@ -99,7 +96,8 @@ reqwest = { version = "0.12.24", default-features = false, features = [ ...@@ -99,7 +96,8 @@ reqwest = { version = "0.12.24", default-features = false, features = [
"rustls-tls", "rustls-tls",
] } ] }
rmp-serde = { version = "1" } rmp-serde = { version = "1" }
serde = { version = "1", features = ["derive"] } # "rc" is for async-openai. Allows serializing Rc and Arc. Generally avoid doing that.
serde = { version = "1", features = ["derive", "rc"] }
serde_json = { version = "1" } serde_json = { version = "1" }
strum = { version = "0.27", features = ["derive"] } strum = { version = "0.27", features = ["derive"] }
tempfile = "3" tempfile = "3"
...@@ -108,7 +106,7 @@ tmq = { version = "0.5.0" } ...@@ -108,7 +106,7 @@ tmq = { version = "0.5.0" }
zmq = { version = "0.10" } zmq = { version = "0.10" }
tokio = { version = "1", features = ["full"] } tokio = { version = "1", features = ["full"] }
tokio-stream = { version = "0.1" } tokio-stream = { version = "0.1" }
tokio-util = { version = "0.7", features = ["codec", "net", "rt"] } tokio-util = { version = "0.7", features = ["codec", "net", "rt", "io-util"] }
tower-http = { version = "0.6", features = ["trace"] } tower-http = { version = "0.6", features = ["trace"] }
axum = { version = "=0.8.4", features = ["macros"] } axum = { version = "=0.8.4", features = ["macros"] }
axum-core = { version = "0.5.2" } axum-core = { version = "0.5.2" }
......
...@@ -20,50 +20,38 @@ repository.workspace = true ...@@ -20,50 +20,38 @@ repository.workspace = true
readme.workspace = true readme.workspace = true
[features] [features]
default = ["rustls"]
# Enable rustls for TLS support
rustls = ["reqwest/rustls-tls-native-roots"]
# Enable rustls and webpki-roots
rustls-webpki-roots = ["reqwest/rustls-tls-webpki-roots"]
# Enable native-tls for TLS support
native-tls = ["reqwest/native-tls"]
# Remove dependency on OpenSSL
native-tls-vendored = ["reqwest/native-tls-vendored"]
realtime = ["dep:tokio-tungstenite"] realtime = ["dep:tokio-tungstenite"]
# Bring your own types # Bring your own types
byot = [] byot = []
[dependencies] [dependencies]
futures = { workspace = true }
rand = { workspace = true }
reqwest = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true }
tokio-stream = { workspace = true }
tokio-util = { workspace = true }
tracing = { workspace = true }
url = { workspace = true }
uuid = { workspace = true }
derive_builder = { workspace = true }
bytes = { workspace = true }
eventsource-stream = "0.2.3"
async-openai-macros = "0.1.0" async-openai-macros = "0.1.0"
backoff = { version = "0.4.0", features = ["tokio"] } backoff = { version = "0.4.0", features = ["tokio"] }
base64 = "0.22.1" base64 = "0.22.1"
futures = "0.3.31"
rand = "0.9.0"
reqwest = { version = "0.12.24", features = [
"json",
"stream",
"multipart",
], default-features = false }
reqwest-eventsource = "0.6.0" reqwest-eventsource = "0.6.0"
serde = { version = "1.0.217", features = ["derive", "rc"] }
serde_json = "1.0.135"
thiserror = "2.0.11"
tokio = { version = "1.43.0", features = ["fs", "macros"] }
tokio-stream = "0.1.17"
tokio-util = { version = "0.7.13", features = ["codec", "io-util"] }
tracing = "0.1.41"
url = { workspace = true }
uuid = { workspace = true }
derive_builder = "0.20.2"
secrecy = { version = "0.10.3", features = ["serde"] } secrecy = { version = "0.10.3", features = ["serde"] }
bytes = "1.9.0"
eventsource-stream = "0.2.3"
tokio-tungstenite = { version = "0.26.1", optional = true, default-features = false } tokio-tungstenite = { version = "0.26.1", optional = true, default-features = false }
utoipa = { version = "5.3", features = ["url", "uuid"] } utoipa = { version = "5.3", features = ["url", "uuid"] }
[dev-dependencies] [dev-dependencies]
tokio-test = "0.4.4" tokio-test = "0.4.4"
serde_json = "1.0" serde_json = { workspace = true }
[[test]] [[test]]
name = "bring-your-own-type" name = "bring-your-own-type"
......
...@@ -912,6 +912,7 @@ dependencies = [ ...@@ -912,6 +912,7 @@ dependencies = [
"libc", "libc",
"local-ip-address", "local-ip-address",
"log", "log",
"lru",
"nid", "nid",
"nix", "nix",
"notify", "notify",
...@@ -932,6 +933,7 @@ dependencies = [ ...@@ -932,6 +933,7 @@ dependencies = [
"serde_json", "serde_json",
"socket2 0.5.9", "socket2 0.5.9",
"thiserror 2.0.17", "thiserror 2.0.17",
"tmq",
"tokio", "tokio",
"tokio-rayon", "tokio-rayon",
"tokio-stream", "tokio-stream",
...@@ -945,6 +947,7 @@ dependencies = [ ...@@ -945,6 +947,7 @@ dependencies = [
"uuid", "uuid",
"validator", "validator",
"xxhash-rust", "xxhash-rust",
"zmq",
] ]
[[package]] [[package]]
...@@ -2074,6 +2077,15 @@ version = "0.4.27" ...@@ -2074,6 +2077,15 @@ version = "0.4.27"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94"
[[package]]
name = "lru"
version = "0.12.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38"
dependencies = [
"hashbrown 0.15.2",
]
[[package]] [[package]]
name = "lru-slab" name = "lru-slab"
version = "0.1.2" version = "0.1.2"
...@@ -3791,6 +3803,19 @@ version = "0.1.1" ...@@ -3791,6 +3803,19 @@ version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
[[package]]
name = "tmq"
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3f41ac3a42f65436eed7e1afe80dbe8a982dcac2ea4581bf61bc2d3dcfb19a1"
dependencies = [
"futures",
"log",
"thiserror 1.0.69",
"tokio",
"zmq",
]
[[package]] [[package]]
name = "tokio" name = "tokio"
version = "1.44.2" version = "1.44.2"
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment