1
0
mirror of https://github.com/square/okhttp.git synced 2026-01-14 07:22:20 +03:00
Commit Graph

4528 Commits

Author SHA1 Message Date
Yuri Schimke
3414fe42b7 Close Android test properly in case it passes (#5905)
* Close test properly in case it passes

* Fix
2020-03-29 22:21:49 -04:00
Jesse Wilson
b7a41a9d3a Merge pull request #5913 from pau101/document-close-reason
Document maximum close reason length
2020-03-29 21:11:59 -04:00
Paul Fulham
7e2922e815 Document maximum close reason length 2020-03-29 14:08:06 -07:00
Jesse Wilson
4c1f65d138 Merge pull request #5908 from yschimke/alpnz2
New JDK 8 version for ALPN
2020-03-28 19:00:21 -04:00
Yuri Schimke
4a753e71cc New JDK 8 version for ALPN 2020-03-28 16:53:42 +00:00
Jesse Wilson
cf184f90ff Merge pull request #5903 from square/short-circuit
Short circuit more aggressively when ExchangeFinder has routes.
2020-03-26 12:35:41 -04:00
Dave Roberge
08489df02e Short circuit more aggressively when ExchangeFinder has routes. 2020-03-26 10:00:31 -05:00
Yuri Schimke
e8cfef759f Force cancel all events on client (#5901) 2020-03-26 06:45:34 +00:00
Yuri Schimke
1c061be1c7 Document 4.x requirements (#5897) 2020-03-26 05:40:20 +00:00
Jesse Wilson
ae2734b035 Merge pull request #5888 from square/unhealthy-conn
Give up when ExchangeFinder exhausts all routes.
2020-03-25 18:05:18 -04:00
Yuri Schimke
39dbf4b7d5 Add missing documentation link (#5896)
* Add missing links

* Tweak 3.x to 3.12.x

* Update mkdocs.yml

* Update mkdocs.yml

* Update mkdocs.yml
2020-03-25 18:03:14 -04:00
Yuri Schimke
2ad43db93a Developing docs (#5899) 2020-03-25 18:11:37 +00:00
Dave Roberge
77351112b0 Give up when ExchangeFinder exhausts all routes.
https://github.com/square/okhttp/issues/3308
2020-03-24 19:17:51 -05:00
Yuri Schimke
5a9c5a151c Android comparison of client APIs (#5886) 2020-03-24 22:05:44 +00:00
Yuri Schimke
50677c98e4 JDK 14 and Gradle 6.3 (#5838) 2020-03-24 21:59:04 +00:00
Jesse Wilson
c9bdd75a7d Merge pull request #5891 from square/jwilson.0322.fuck_covid_19
Support 3.12.x through December 31, 2021
2020-03-24 13:28:16 -04:00
Anton Rutkevich
eddaa13197 Make minimum outgoing web socket message compression size configurable (#5890)
* Expose minimum outgoing web socket message compression size option in OkHttpClient.Builder

* Don't refer to implementation class in API doc

* Add non-negative check for webSocketMinimumDeflateSize

* Add tests for webSocketMinimumDeflateSize

* Rename option to minWebSocketMessageToCompress
2020-03-24 13:26:15 -04:00
Jesse Wilson
f94be9ff69 Support 3.12.x through December 31, 2021
Our original expectations were that KitKat devices would age out in
2020. It's been a garbage year and this expectations no longer hold.
We're extending support an extra year.

We continue to support OkHttp 3.12.x because later releases are not
usable on older devices and JVMs.

OkHttp 3.14.x has no such reason to receive support, and we'll stop
updating it on June 30, 2020. Users of OkHttp 3.14.x should upgrade
to the 4.x series. Android apps should accept Kotlin libraries; it's
the platform's future. And JVM apps are less constrained by binary
size. Here's the size of OkHttp + transitive dependencies, and those
of alternatives:

 * OkHttp 4.4: 2.47 MiB including Kotlin stdlib (1.51 MiB)
 * Apache HTTP Client 5.0: 1.78 MiB including slf4j-api (0.04 MiB)
 * Jetty HTTP Client 9.4: 1.19 MiB
2020-03-24 13:24:10 -04:00
Yuri Schimke
55df7f6fc2 More extreme canonical forms in Hostname Verifier (#5892) 2020-03-23 08:53:53 +00:00
Jesse Wilson
f3538d80eb Merge pull request #5877 from square/jwilson.0318.lazy_compression
Don't create inflaters or deflaters until they're needed
2020-03-22 14:00:48 -04:00
Yuri Schimke
d59266778d Verify IPv6 hostnames using canonical form (#5889) 2020-03-22 15:01:27 +00:00
Jesse Wilson
9872d8bf6e Merge pull request #5887 from yschimke/dep_upgrade
Dependency Upgrades
2020-03-21 19:16:54 -04:00
Yuri Schimke
b022927d13 Dependency Upgrades 2020-03-21 14:04:43 +00:00
Jesse Wilson
3a8b044348 Don't create inflaters or deflaters until they're needed
They consume a decent amount of memory and it's possible that
they won't even be used, even if compression is negotiated.

Closes: https://github.com/square/okhttp/issues/5876
2020-03-18 23:11:39 -04:00
Jesse Wilson
5ef2f9fd72 Prepare next development version. 2020-03-17 23:51:30 -04:00
Jesse Wilson
7334150d1d Prepare for release 4.5.0-RC1. parent-4.5.0-RC1 2020-03-17 23:50:52 -04:00
Jesse Wilson
c90b12d78b Merge pull request #5873 from square/jwilson.0315.compare_others
Compare OkHttp vs. other popular HTTP clients
2020-03-17 22:46:46 -04:00
Jesse Wilson
75a3ef97a4 Compare OkHttp vs. other popular HTTP clients 2020-03-17 22:40:50 -04:00
Jesse Wilson
77bbae6d02 Merge pull request #5871 from square/jwilson.0315.websockets
Turn on web socket compression
2020-03-17 21:19:16 -04:00
Yuri Schimke
0ea6ca0faa Allowlist Sample for connecting to Dev servers (#5868) 2020-03-16 09:09:22 +00:00
Jesse Wilson
b17d8f1c39 Turn on web socket compression
Theres a few TODOs outstanding around error cases, and I need to
run integration tests against real-world things. But the core
functionality works.

I used coverage to confirm the context takeover cases are exercised
with and without.
2020-03-15 18:46:40 -04:00
Jesse Wilson
30d206e103 Merge pull request #5869 from square/jwilson.0315.web_sockets_real_
Get compression working in RealWebSocketTest
2020-03-15 14:32:31 -04:00
Jesse Wilson
10d5e69cd1 Get compression working in RealWebSocketTest
The only thing left is to negotiate extensions, including failing the
call if the server returns unexpected extensions.
2020-03-15 10:16:44 -04:00
Jesse Wilson
84a7d0d0ba Merge pull request #5867 from square/jwilson.0314.more_compression_
Hook up compression in WebSocketReader and WebSocketWriter
2020-03-15 09:32:19 -04:00
Jesse Wilson
8703126227 Hook up compression in WebSocketReader and WebSocketWriter
It isn't yet enabled in the calling RealWebSocket, so this is only
visible to tests right now.
2020-03-14 18:44:46 -04:00
Jesse Wilson
97a5e7a9e0 Merge pull request #5862 from yschimke/upgrades
Dependency Upgrades
2020-03-09 22:34:58 -04:00
Jesse Wilson
fb30f56492 Merge pull request #5863 from yschimke/remove_windows
Don't run Windows builds in CircleCI on PRs
2020-03-08 20:30:08 -04:00
Yuri Schimke
5f871f9ea5 Don't run Windows builds in CircleCI on PRs 2020-03-08 14:09:24 +00:00
Jesse Wilson
18b22b3770 Update changelog for 4.4.1 2020-03-08 09:47:18 -04:00
Jesse Wilson
cf2d1520ed Merge pull request #5860 from square/jwilson.0308.too_aggressive
Don't reuse a connection on redirect if certs match but DNS does not
2020-03-08 09:16:56 -04:00
Jesse Wilson
c599a1690f Don't reuse a connection on redirect if certs match but DNS does not
We attempt to minimize connection and reconnection work, but in this case we
were overly aggressive about retaining the same connection. In some deployments
services will share certificates but not DNS addresses; when redirecting
between such services we were incorrectly attempting to reuse the connection.

This would have resulted in 404s and other misdirected requests.

Closes: https://github.com/square/okhttp/issues/5859
2020-03-08 09:09:14 -04:00
Yuri Schimke
605171702f Dependency Upgrades 2020-03-08 12:54:31 +00:00
Jesse Wilson
26b6552931 Merge pull request #5857 from square/masaru.2020-03-07.use-kdoc-in-Dispatcher
Use KDoc in Dispatcher doc
2020-03-08 07:47:00 -04:00
Masaru Nomura
309d284001 Use KDoc in Dispatcher doc 2020-03-07 18:42:04 -05:00
Jesse Wilson
0a0d13a448 Merge pull request #5851 from square/jwilson.0305.dont_split
Rip out WebSocketWriter's message splitting
2020-03-06 23:09:40 -05:00
Yuri Schimke
226b16b387 Allow for users who have disabled certificate checks in dev. (#5835)
* Allow for users who have disabled certificate checks in dev.

* Avoid repeated calls

* typo

* Lock is assumed at this point

* Stay safe

* rework

* spotless

* Fix

* Handle one more case

* Capture the exception

* Add test

* Comment
2020-03-06 22:10:10 -05:00
Yuri Schimke
7d2aa4cb27 Dependency Upgrades (#5847) 2020-03-06 06:47:32 +00:00
Jesse Wilson
f5a320da7a Rip out WebSocketWriter's message splitting
An old version of OkHttp web sockets supported streaming messages,
so a writer could transmit partial bytes of a message without
completing it.

When we promoted Web Sockets as a core feature we dropped support
for streaming a single message. But we still had the mechanism
that implemented it.

This PR removes that mechanism, which should make it easier to
implement compression.
2020-03-05 23:15:32 -05:00
Jesse Wilson
524d344e1a Merge pull request #5848 from square/jwilson.0304.inflater_deflater
Web Socket message inflater and deflater
2020-03-05 14:55:17 -05:00
Anton Rutkevich
be85e82a5b Web Socket message inflater and deflater
Originally contributed via PR #4871. This differs from that contribution
in a few ways:

 - Combined inflater and deflater into one test
 - Always operate on a buffer in-place
 - Support no context takeover in both reading and writing
2020-03-05 00:10:00 -05:00