{"record":{"id":"90e61402f382cb27","repo":"ruby/rubygems","slug":"ruby-net-http-failed-unfortunately-this-ruby-ca","errorCode":null,"errorMessage":"Ruby net/http: failed\n\nUnfortunately, this Ruby can't connect to #{host}.\n\n#{Explanation.explain_net_http_error(error, host, tls_version)}","messagePattern":"Ruby net/http: failed\n\nUnfortunately, this Ruby can't connect to #(.+?)\\.\n\n#(.+?)","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"lib/bundler/cli/doctor/ssl.rb","lineNumber":112,"sourceCode":"      Bundler.ui.warn(\"RubyGems:      failed     (#{Explanation.explain_bundler_or_rubygems_error(error)})\")\n\n      false\n    end\n\n    def net_http_connection_successful?\n      ::Gem::Net::HTTP.new(uri.host, uri.port).tap do |http|\n        http.use_ssl = true\n        http.min_version = tls_version\n        http.max_version = tls_version\n        http.verify_mode = verify_mode\n      end.start\n\n      Bundler.ui.info(\"Ruby net/http: success\")\n      warn_on_unsupported_tls12\n\n      true\n    rescue StandardError => error\n      Bundler.ui.warn(<<~MSG)\n        Ruby net/http: failed\n\n        Unfortunately, this Ruby can't connect to #{host}.\n\n        #{Explanation.explain_net_http_error(error, host, tls_version)}\n      MSG\n\n      false\n    end\n\n    def warn_on_unsupported_tls12\n      ctx = OpenSSL::SSL::SSLContext.new\n      supported = true\n\n      if ctx.respond_to?(:min_version=)\n        begin\n          ctx.min_version = ctx.max_version = OpenSSL::SSL::TLS1_2_VERSION\n        rescue OpenSSL::SSL::SSLError, NameError","sourceCodeStart":94,"sourceCodeEnd":130,"githubUrl":"https://github.com/ruby/rubygems/blob/86cbb817a38ce8477b181c17467a703ded3f2be8/lib/bundler/cli/doctor/ssl.rb#L94-L130","documentation":"Error \"Ruby net/http: failed\n\nUnfortunately, this Ruby can't connect to #{host}.\n\n#{Explanation.explain_net_http_error(error, host, tls_version)}\" thrown in ruby/rubygems.","triggerScenarios":"Thrown at lib/bundler/cli/doctor/ssl.rb:112 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Follow the printed explanation: usually update CA certificates and/or upgrade OpenSSL for the required TLS version"],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"86cbb817a38ce8477b181c17467a703ded3f2be8","analyzedAt":"2026-08-23T06:27:48.159Z","schemaVersion":2},"datasetVersion":"2026-08-23T08:06:27.607Z"}