adapters install rustls ring provider before reqwest client; tui keyring deps to workspace; doc fixes
Some checks failed
CI / Check / Test (push) Has been cancelled
CI / Check / Test (pull_request) Has been cancelled

This commit is contained in:
2026-10-26 05:24:25 +01:00
parent f76559356a
commit a270632e87
16 changed files with 55 additions and 8 deletions

View File

@@ -8,5 +8,6 @@ config = { workspace = true }
anyhow = { workspace = true }
async-trait = { workspace = true }
reqwest = { workspace = true }
rustls = { workspace = true, features = ["ring", "std"] }
serde = { workspace = true, features = ["derive"] }
domain = { workspace = true }

View File

@@ -16,6 +16,8 @@ pub(crate) struct OmdbProvider {
impl OmdbProvider {
pub(crate) fn new(api_key: String) -> Self {
// reqwest is built with rustls-no-provider; install ring so this works without bootstrap.
let _ = rustls::crypto::ring::default_provider().install_default();
Self {
client: reqwest::Client::new(),
api_key,

View File

@@ -15,6 +15,8 @@ pub(crate) struct TmdbProvider {
impl TmdbProvider {
pub(crate) fn new(api_key: String) -> Self {
// reqwest is built with rustls-no-provider; install ring so this works without bootstrap.
let _ = rustls::crypto::ring::default_provider().install_default();
Self {
client: reqwest::Client::new(),
api_key,

View File

@@ -0,0 +1,6 @@
//! Fresh test binary, no bootstrap: constructing the client must not panic
//! for lack of a rustls CryptoProvider.
#[test]
fn omdb_client_builds_without_bootstrap() {
let _ = metadata::MetadataClientImpl::new_omdb("key".into());
}

View File

@@ -0,0 +1,6 @@
//! Fresh test binary, no bootstrap: constructing the client must not panic
//! for lack of a rustls CryptoProvider.
#[test]
fn tmdb_client_builds_without_bootstrap() {
let _ = metadata::MetadataClientImpl::new_tmdb("key".into());
}