Use upstream net-http-persistent
, connection_pool
(un-vendored)
#345
+22
−1,686
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
net-http-persistent
andconnection_pool
were vendored, and have gotten very out-of-date. This resets to use the upstream gems.connection-pool
is upgraded from 2.2.0 to 2.4+:net-http-persistent
is upgraded from 3.0.0 (forked) to 4.0.2+:connection-pool
2.4One change to the vendored fork was reimplemented: upstream does not support timeout kwarg for .new, nor does
connection_pool
expose an accessor for itstimeout
. So this code reaches into the pool and sets the@timeout
ivar directly.Additionally, all of the exceptions which
net-http
handles (inNet::HTTP#transport_request
) are added toRESCUED_EXCEPTIONS
. Net::HTTP uses these to determine whether the socket should be closed (and whether idempotent requests should be retried).Additionally, other changes were made so CI would pass: