{"record":{"id":"8ae27a988479d79c","repo":"tinyhumansai/openhuman","slug":"reqwest-0-12-tls-client-must-be-available","errorCode":null,"errorMessage":"reqwest 0.12 TLS client must be available","messagePattern":"reqwest 0\\.12 TLS client must be available","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/core/sentry_transport.rs","lineNumber":45,"sourceCode":"        let mut builder = reqwest::blocking::Client::builder();\n        if options.accept_invalid_certs {\n            builder = builder.danger_accept_invalid_certs(true);\n        }\n        if let Some(url) = options.http_proxy.as_ref() {\n            match reqwest::Proxy::http(url.as_ref()) {\n                Ok(proxy) => builder = builder.proxy(proxy),\n                Err(error) => sentry_debug!(\"invalid HTTP proxy: {error:?}\"),\n            }\n        }\n        if let Some(url) = options.https_proxy.as_ref() {\n            match reqwest::Proxy::https(url.as_ref()) {\n                Ok(proxy) => builder = builder.proxy(proxy),\n                Err(error) => sentry_debug!(\"invalid HTTPS proxy: {error:?}\"),\n            }\n        }\n        let client = builder\n            .build()\n            .expect(\"reqwest 0.12 TLS client must be available\");\n        let dsn = options\n            .dsn\n            .as_ref()\n            .expect(\"Sentry transport requires a DSN\");\n        let auth = dsn.to_auth(Some(&options.user_agent)).to_string();\n        let url = dsn.envelope_api_url().to_string();\n        let (sender, receiver) = mpsc::sync_channel(30);\n        let shutdown = Arc::new(AtomicBool::new(false));\n        let worker_shutdown = shutdown.clone();\n\n        let handle = std::thread::Builder::new()\n            .name(\"sentry-transport\".into())\n            .spawn(move || {\n                let mut rate_limiter = RateLimiter::new();\n                for task in receiver {\n                    if worker_shutdown.load(Ordering::SeqCst) {\n                        return;\n                    }","sourceCodeStart":27,"sourceCodeEnd":63,"githubUrl":"https://github.com/tinyhumansai/openhuman/blob/749120085864ce16e0f273c7b86fac7740b39c5b/src/core/sentry_transport.rs#L27-L63","documentation":"Panic payload on reqwest::blocking::Client::builder().build() in the Sentry HTTP transport: after applying invalid-cert acceptance and HTTP/HTTPS proxy options, the blocking client (reqwest 0.12) failed to construct — typically a TLS backend initialization failure or an unusable proxy configuration. The transport cannot ship events without it, so the process panics at setup.","triggerScenarios":"Thrown at src/core/sentry_transport.rs:45 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check the proxy URLs in the Sentry transport options for validity (scheme, host, port)","Verify TLS backend availability for the platform build (rustls/native-tls feature set)","Fall back to the default (no-curl, no-proxy) transport if a custom transport cannot be built"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"749120085864ce16e0f273c7b86fac7740b39c5b","analyzedAt":"2026-08-17T21:21:45.363Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}