All Versions
Latest Version
Avg Release Cycle
18 days
Latest Release

Changelog History
Page 4

  • v4.1.1 Changes

    September 05, 2019


    • Fix: Don't drop repeated headers when validating cached responses. In our Kotlin upgrade we introduced a regression where we iterated the number of unique header names rather than then number of unique headers. If you're using OkHttp's response cache this may impact you.
  • v4.1.0 Changes

    August 12, 2019


    • OkHttp's new okhttp-brotli module implements Brotli compression. Install the interceptor to enable Brotli compression, which compresses 5-20% smaller than gzip.

      val client = OkHttpClient.Builder()

      This artifact has a dependency on Google's Brotli decoder (95 KiB).

    • New: EventListener.proxySelectStart(), proxySelectEnd() events give visibility into the proxy selection process.

    • New: Response.byteString() reads the entire response into memory as a byte string.

    • New: OkHttpClient.x509TrustManager accessor.

    • New: Permit [new WebSocket response codes][iana_websocket]: 1012 (Service Restart), 1013 (Try Again Later), and 1014 (invalid response from the upstream).

    • New: Build with Kotlin 1.3.41, BouncyCastle 1.62, and Conscrypt 2.2.1.

    • Fix: Recover gracefully when a a coalesced connection immediately goes unhealthy.

    • Fix: Defer the SecurityException when looking up the default proxy selector.

    • Fix: Don't use brackets formatting IPv6 host names in MockWebServer.

    • Fix: Don't permit cache iterators to remove entries that are being written.

  • v4.0.1 Changes

    July 10, 2019


    • Fix: Tolerate null-hostile lists in public API. Lists created with List.of(...) don't like it when you call contains(null) on them!
    • Fix: Retain binary-compatibility in okhttp3.internal.HttpHeaders.hasBody(). Some unscrupulous coders call this and we don't want their users to suffer.
  • v4.0.0 Changes

    June 27, 2019


    🚀 This release upgrades OkHttp to Kotlin. We tried our best to make fast and safe to upgrade from OkHttp 3.x. We wrote an [upgrade guide][upgrading_to_okhttp_4] to help with the migration and a [blog post][okhttp4_blog_post] to explain it.

    • Fix: Target Java 8 bytecode for Java and Kotlin.
  • v4.0.0-RC3 Changes

    June 24, 2019


    • Fix: Retain binary-compatibility in okhttp3.internal.HttpMethod. Naughty third party SDKs import this and we want to ease upgrades for their users.
  • v4.0.0-RC2 Changes

    June 21, 2019


    • New: Require Kotlin 1.3.40.
    • New: Change the Kotlin API from File.toRequestBody() to File.asRequestBody() and BufferedSource.toResponseBody() to BufferedSource.asResponseBody(). If the returned value is a view of what created it, we use as.
    • Fix: Permit response codes of zero for compatibility with OkHttp 3.x.
    • Fix: Change the return type of MockWebServer.takeRequest() to be nullable.
    • Fix: Make Call.clone() public to Kotlin callers.
  • v4.0.0-RC1 Changes

    June 04, 2019


    • First stable preview of OkHttp 4.
  • v4.0.0-alpha02

    May 26, 2019
  • v4.0.0-ALPHA01

    May 09, 2019
  • v3.14.9

    May 17, 2020