diff --git a/doc/release_notes/1_1_0.md b/doc/release_notes/1_1_0.md new file mode 100644 index 00000000..99d7b475 --- /dev/null +++ b/doc/release_notes/1_1_0.md @@ -0,0 +1,32 @@ +# 1.1.0 + +## Features + +A function, `#peer_address`, was added to the response object, which returns the IP (either a string or an `IPAddr` object) from the socket used to get the response from. + +```ruby +response = HTTPX.get("https://example.com") +response.peer_address #=> # +``` + +error responses will also expose an IP address via `#peer_address` as long a connection happened before the error. + +## Improvements + +* A performance regression involving the new default timeouts has been fixed, which could cause significant overhead in "multiple requests in sequence" scenarios, and was clearly visible in benchmarks. + * this regression will still be seen in jruby due to a bug, which fix will be released in jruby 9.4.5.0. +* HTTP/1.1 connections are now set to handle as many requests as they can by default (instead of the past default of max 200, at which point they'd be recycled). +* tolerate the inexistence of `openssl` in the installed ruby, like `net-http` does. +* `on_connection_opened` and `on_connection_closed` will yield the `OpenSSL::SSL::SSLSocket` instance for `https` backed origins (instead of always the `Socket` instance). + +## Bugfixes + +* when using the `:native` resolver (default option), a default of 1 for ndots is set, for systems which do not set one. +* replaced usage of `Float::INFINITY` with `nil` for timeout defaults, as the former can't be used in IO wait functions. +* `faraday` adapter timeout setup now maps to `:read_timeout` and `:write_timeout` options from `httpx`. +* fixed HTTP/1.1 connection recycling on number of max requests exhausted. +* `response.json` will now work when "content-type" header is set to "application/hal+json". + +## Chore + +* when using the `:cookies` plugin, a warning message to install the idnx message will only be emitted if the cookie domain is an IDN (this message was being shown all the time since v1 release). \ No newline at end of file diff --git a/lib/httpx/version.rb b/lib/httpx/version.rb index 6edfea0a..45aa64ad 100644 --- a/lib/httpx/version.rb +++ b/lib/httpx/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module HTTPX - VERSION = "1.0.2" + VERSION = "1.1.0" end