Home | History | Annotate | Download | only in okhttp
      1 Change Log
      2 ==========
      3 
      4 ## Version 1.5.3
      5 
      6 _2014-03-29_
      7 
      8  * Fix bug where the Content-Length header was not always dropped when
      9    following a redirect from a POST to a GET.
     10  * Implement basic support for `Thread.interrupt()`. OkHttp now checks
     11    for an interruption before doing a blocking call. If it is interrupted,
     12    it throws an `InterruptedIOException`.
     13 
     14 ## Version 1.5.2
     15 
     16 _2014-03-17_
     17 
     18  * Fix bug where deleting a file that was absent from the `HttpResponseCache`
     19    caused an IOException.
     20  * Fix bug in HTTP/2 where our HPACK decoder wasn't emitting entries in
     21    certain eviction scenarios, leading to dropped response headers.
     22 
     23 ## Version 1.5.1
     24 
     25 _2014-03-11_
     26 
     27  * Fix 1.5.0 regression where connections should not have been recycled.
     28  * Fix 1.5.0 regression where transparent Gzip was broken by attempting to
     29    recover from another I/O failure.
     30  * Fix problems where spdy/3.1 headers may not have been compressed properly.
     31  * Fix problems with spdy/3.1 and http/2 where the wrong window size was being
     32    used.
     33  * Fix 1.5.0 regression where conditional cache responses could corrupt the
     34    connection pool.
     35 
     36 
     37 ## Version 1.5.0
     38 
     39 _2014-03-07_
     40 
     41 
     42 ##### OkHttp no longer uses the default SSL context.
     43 
     44 Applications that want to use the global SSL context with OkHttp should configure their
     45 OkHttpClient instances with the following:
     46 
     47 ```java
     48 okHttpClient.setSslSocketFactory(HttpsURLConnection.getDefaultSSLSocketFactory());
     49 ```
     50 
     51 A simpler solution is to avoid the shared default SSL socket factory. Instead, if you
     52 need to customize SSL, do so for your specific OkHttpClient instance only.
     53 
     54 ##### Synthetic headers have changed
     55 
     56 Previously OkHttp added a synthetic response header, `OkHttp-Selected-Transport`. It
     57 has been replaced with a new synthetic header, `OkHttp-Selected-Protocol`.
     58 
     59 ##### Changes
     60 
     61  * New: Support for `HTTP-draft-09/2.0`.
     62  * New: Support for `spdy/3.1`. Dropped support for `spdy/3`.
     63  * New: Use ALPN on Android platforms that support it (4.4+)
     64  * New: CacheControl model and parser.
     65  * New: Protocol selection in MockWebServer.
     66  * Fix: Route selection shouldn't use TLS modes that we know will fail.
     67  * Fix: Cache SPDY responses even if the response body is closed prematurely.
     68  * Fix: Use strict timeouts when aborting a download.
     69  * Fix: Support Shoutcast HTTP responses like `ICY 200 OK`.
     70  * Fix: Don't unzip if there isn't a response body.
     71  * Fix: Don't leak gzip streams on redirects.
     72  * Fix: Don't do DNS lookups on invalid hosts.
     73  * Fix: Exhaust the underlying stream when reading gzip streams.
     74  * Fix: Support the `PATCH` method.
     75  * Fix: Support request bodies on `DELETE` method.
     76  * Fix: Drop the `okhttp-protocols` module.
     77  * Internal: Replaced internal byte array buffers with pooled buffers ("OkBuffer").
     78 
     79 
     80 ## Version 1.3.0
     81 
     82 _2014-01-11_
     83 
     84  * New: Support for "PATCH" HTTP method in client and MockWebServer.
     85  * Fix: Drop `Content-Length` header when redirected from POST to GET.
     86  * Fix: Correctly read cached header entries with malformed header names.
     87  * Fix: Do not directly support any authentication schemes other than "Basic".
     88  * Fix: Respect read timeouts on recycled connections.
     89  * Fix: Transmit multiple cookie values as a single header with delimiter.
     90  * Fix: Ensure `null` is never returned from a connection's `getHeaderFields()`.
     91  * Fix: Persist proper `Content-Encoding` header to cache for GZip responses.
     92  * Fix: Eliminate rare race condition in SPDY streams that would prevent connection reuse.
     93  * Fix: Change HTTP date formats to UTC to conform to RFC2616 section 3.3.
     94  * Fix: Support SPDY header blocks with trailing bytes.
     95  * Fix: Allow `;` as separator for `Cache-Control` header.
     96  * Fix: Correct bug where HTTPS POST requests were always automatically buffered.
     97  * Fix: Honor read timeout when parsing SPDY headers.
     98 
     99 
    100 ## Version 1.2.1
    101 
    102 _2013-08-23_
    103 
    104  * Resolve issue with 'jar-with-dependencies' artifact creation.
    105  * Fix: Support empty SPDY header values.
    106 
    107 
    108 ## Version 1.2.0
    109 
    110 _2013-08-11_
    111 
    112  *  New APIs on OkHttpClient to set default timeouts for connect and read.
    113  *  Fix bug when caching SPDY responses.
    114  *  Fix a bug with SPDY plus half-closed streams. (thanks kwuollett)
    115  *  Fix a bug in `Content-Length` reporting for gzipped streams in the Apache
    116     HTTP client adapter. (thanks kwuollett)
    117  *  Work around the Alcatel `getByInetAddress` bug (thanks k.kocel)
    118  *  Be more aggressive about testing pooled sockets before reuse. (thanks
    119     warpspin)
    120  *  Include `Content-Type` and `Content-Encoding` in the Apache HTTP client
    121     adapter. (thanks kwuollett)
    122  *  Add a media type class to OkHttp.
    123  *  Change custom header prefix:
    124 
    125     ```
    126     X-Android-Sent-Millis is now OkHttp-Sent-Millis
    127     X-Android-Received-Millis is now OkHttp-Received-Millis
    128     X-Android-Response-Source is now OkHttp-Response-Source
    129     X-Android-Selected-Transport is now OkHttp-Selected-Transport
    130     ```
    131  *  Improve cache invalidation for POST-like requests.
    132  *  Bring MockWebServer into OkHttp and teach it SPDY.
    133 
    134 
    135 ## Version 1.1.1
    136 
    137 _2013-06-23_
    138 
    139  * Fix: ClassCastException when caching responses that were redirected from
    140    HTTP to HTTPS.
    141 
    142 
    143 ## Version 1.1.0
    144 
    145 _2013-06-15_
    146 
    147  * Fix: Connection reuse was broken for most HTTPS connections due to a bug in
    148    the way the hostname verifier was selected.
    149  * Fix: Locking bug in SpdyConnection.
    150  * Fix: Ignore null header values (for compatibility with HttpURLConnection).
    151  * Add URLStreamHandlerFactory support so that `URL.openConnection()` uses
    152    OkHttp.
    153  * Expose the transport ("http/1.1", "spdy/3", etc.) via magic request headers.
    154    Use `X-Android-Transports` to write the preferred transports and
    155    `X-Android-Selected-Transport` to read the negotiated transport.
    156 
    157 
    158 ## Version 1.0.2
    159 
    160 _2013-05-11_
    161 
    162  * Fix: Remove use of Java 6-only APIs.
    163  * Fix: Properly handle exceptions from `NetworkInterface` when querying MTU.
    164  * Fix: Ensure MTU has a reasonable default and upper-bound.
    165 
    166 
    167 ## Version 1.0.1
    168 
    169 _2013-05-06_
    170 
    171  * Correct casing of SSL in method names (`getSslSocketFactory`/`setSslSocketFactory`).
    172 
    173 
    174 ## Version 1.0.0
    175 
    176 _2013-05-06_
    177 
    178 Initial release.
    179 
    180