2337 Commits

Author SHA1 Message Date
Earlopain
9b3691b2bc
Update a bunch of links
Fix 404s, avoid redirects
2023-11-24 13:57:47 +01:00
HoneyryderChuck
1c64a31ac8 bump version to 1.1.5 v1.1.5 2023-11-23 13:44:40 +00:00
HoneyryderChuck
290da6f1fe Merge branch 'github-23' into 'master'
ignore 103 early hints responses

See merge request os85/httpx!308
2023-11-22 23:45:55 +00:00
HoneyryderChuck
ea46cb08a4 Merge branch 'rb2p7' into 'master'
Allow pattern matching for Ruby 2.7

See merge request os85/httpx!307
2023-11-22 23:45:26 +00:00
HoneyryderChuck
8ec98064a1 ignore 103 early hints responses
these are interesting for browsers, but I can't seem to find a use-case for an http client. it was also breaks under HTTP/2, where the final response would have the 103 headers and the 200 response body
2023-11-22 23:30:38 +00:00
Brian Koh
b8f0d0fbcd Allow pattern matching for Ruby 2.7 2023-11-22 23:14:50 +08:00
HoneyryderChuck
911a27b20a Merge branch 'issue-280' into 'master'
stream plugin: fix #each_line not yielding last chunk

Closes #281, #282, and #280

See merge request os85/httpx!306
2023-11-22 11:29:58 +00:00
HoneyryderChuck
a586dd0d44 disabling runtime type-checking for webmock and ddtrace tests
the pattern used to override the session class doesn't seem to be supported by rbs runtime type checking code
2023-11-22 11:15:25 +00:00
HoneyryderChuck
79756e4ac4 small cleanup in type definitions and webmock testing 2023-11-22 11:07:54 +00:00
HoneyryderChuck
354bba3179 making grpc code more shape-friendly 2023-11-21 10:21:44 +00:00
HoneyryderChuck
b0dfe68ebe stream plugin: do not cache intermediate responses
this had the effect of storing redirect responses and using them solely for inferences on the each chunk block, instead of the final response

Closes #282
2023-11-21 10:21:13 +00:00
HoneyryderChuck
fa513a9ac9 stream plugin: fix #each loop when used with webmock
when response would be called inside the #each block, the webmock trigger would inject the body before attaching the response object to the request, thereby retriggering #each in a loop

Closes #281
2023-11-21 10:08:29 +00:00
HoneyryderChuck
716e98af5b stream plugin: fix #each_line not yielding last chunk
the last line of the payload wasn't being yielded unless the last character of the payload was a newliine. this was overlooked for a time due to stream plugin being built for text/event-stream mime type, which follows that rule, as per what the tests cover.
2023-11-20 22:38:47 +00:00
HoneyryderChuck
6437b4b5fb bump version to 1.1.4 v1.1.4 2023-11-20 10:16:04 +00:00
HoneyryderChuck
ce5c2c2f21 Merge branch 'master' of gitlab.com:os85/httpx 2023-11-20 10:09:53 +00:00
HoneyryderChuck
4eb1ccb532 Merge branch 'issue-278' into 'master'
stream plugin fix: do not preempt request

Closes #278

See merge request os85/httpx!304
2023-11-20 10:03:48 +00:00
HoneyryderChuck
b0e1e2e837 datadog: use Gem::Version for comparisons 2023-11-20 10:02:43 +00:00
HoneyryderChuck
ee66b7e5cc stream plugin fix: do not preempt request
while stream requests are lazy, they were being nonetheless enqueued, before any function would be called. this was not great behaviour, as they could perhaps never been called, it also interfered with how other plugins inferred finished responses, such as the webmock adapter and follow_redirects. Another flaw in the grpc plugin was fixed as a result, given that bidirectional streams were actually being buffered
2023-11-19 23:58:27 +00:00
HoneyryderChuck
b82e57c281 ad test for integration of webmock with follow_redirects and stream plugins 2023-11-19 22:43:30 +00:00
HoneyryderChuck
02c1917004 Merge branch 'fix-auth-plugin-links' into 'master'
Fix auth plugins wiki links

See merge request os85/httpx!303
2023-11-19 22:36:44 +00:00
Earlopain
20164c647b
Fix auth plugins wiki links 2023-11-18 18:36:52 +01:00
HoneyryderChuck
95681aa86e bump version to 1.1.3 v1.1.3 2023-11-17 23:58:30 +00:00
HoneyryderChuck
b6611ec321 bugfix: protect all find-connection-and-send-request calls from early-resolve errors
httpx uses throw/catch in order to save from so-called early resolve errors, i.e. errors which may happen before the name resolution process is either early-complete or setup, such as when there are no nameservers (internet turned off), and the requests were piped into the connection, which means they're outside of the 'on_error' callback reach. there errors were only covered on the initial send flow, i.e. in other situations when new connections may have to be established ad may early-fail, the throw would not be caught, and would reach user code
2023-11-17 23:38:39 +00:00
HoneyryderChuck
9636e58bec Merge branch 'issue-277' into 'master'
fix usage of IPv6 in urls in systems with IPv6 set up but no outer connectivity

Closes #277

See merge request os85/httpx!302
2023-11-17 17:16:21 +00:00
HoneyryderChuck
ca602ed936 fix usage of IPv6 in urls in systems with IPv6 set up but no outer connectivity
the name resolution code was making the usage of IPs dependent on the existence of a DNS resolver, but there are situations where users use the IP directly, and in such a case, when IPv4-only DNS is possible **but** IPv6 loopback/link-local is available, one should still provide support for it
2023-11-17 16:58:53 +00:00
HoneyryderChuck
fb6b5d0887 Merge branch 'add-rubocop-md' into 'master'
Add rubocop-md to check ruby code blocks

See merge request os85/httpx!301
2023-11-17 16:50:37 +00:00
HoneyryderChuck
5faf8fa050 Merge branch 'issue-273' into 'master'
remove authorization header when redirecting to different-origin urls

Closes #273

See merge request os85/httpx!300
2023-11-17 15:25:16 +00:00
HoneyryderChuck
ffb24f71c6 remove authorization header when redirecting to different-origin urls
this is an old vuln fixed in curl (https://github.com/advisories/GHSA-7xmh-mw7w-rr97), which has been fixed for a long time, where credentials via authorization header would be resent on all follow location requests; this limits it to same-origin redirects; an option, "auth_to_other_origins", can be used to keep original behaviour
2023-11-17 15:16:52 +00:00
HoneyryderChuck
a9ecbec6f1 Merge branch 'issue-271' into 'master'
fix: stream + follow_redirects plugins working now

Closes #271

See merge request os85/httpx!299
2023-11-17 15:06:37 +00:00
Earlopain
5f8bc74f0b
Add rubocop-md to check ruby code blocks 2023-11-17 09:33:05 +01:00
HoneyryderChuck
8b80f15ee7 bugfix: allow stream responses to decode compressed content as well 2023-11-16 17:00:26 +00:00
HoneyryderChuck
0d24204b83 Merge branch 'remove-mutex_m' into 'master'
Remove dependency on mutex_m

Closes #274

See merge request os85/httpx!298
2023-11-16 12:38:22 +00:00
Earlopain
ac21f563de Remove dependency on mutex_m 2023-11-16 12:38:22 +00:00
HoneyryderChuck
55c71e2b80 remove unreachable code (@response never set) 2023-11-16 11:29:34 +00:00
HoneyryderChuck
c150bd1341 fix: stream + follow_redirects plugins working now
stream responses weren't following redirects when both plugins were
loaded. This was due to the stream callback object not being passed
across the redirect chain.
2023-11-16 11:29:34 +00:00
HoneyryderChuck
7345c19d5d pass project name to wiki layout 2023-11-14 23:20:38 +00:00
HoneyryderChuck
801e0aa907 remove versioning for 0.x from the readme 2023-11-14 14:20:48 +00:00
HoneyryderChuck
0910c2749b bumped version to 1.1.2 v1.1.2 2023-11-14 13:40:04 +00:00
HoneyryderChuck
300cb83ab8 Merge branch 'issue-265' into 'master'
fix super call in sentry adapter

Closes #265

See merge request os85/httpx!294
2023-11-12 15:56:34 +00:00
HoneyryderChuck
ca6fa4605b sentry: do not propagate trace when sdk options are not set correctly 2023-11-12 15:42:26 +00:00
HoneyryderChuck
1bebb179ce load httpx sentry patch for tests 2023-11-12 15:31:38 +00:00
HoneyryderChuck
8632da0a22 name sentry patch 2023-11-12 12:06:42 +00:00
HoneyryderChuck
a864db0182 CI: support recent localstack health payloadd change 2023-11-12 11:31:45 +00:00
HoneyryderChuck
fcf41b990e fix super call in sentry adapter 2023-11-10 18:28:55 +00:00
HoneyryderChuck
4c01dd0b9b do not force to close a connection which has been closed already 2023-11-06 23:34:10 +00:00
HoneyryderChuck
bea2c4d5c6 eden connections should only reset to idle once they are picked up 2023-11-06 23:33:55 +00:00
HoneyryderChuck
f442e81414 bump version to 1.1.1 v1.1.1 2023-11-06 17:17:05 +00:00
HoneyryderChuck
18f2bea9b0 Merge branch 'issue-261' into 'master'
reset timer baseline interval when adding new timers

Closes #261

See merge request os85/httpx!290
2023-11-06 16:36:53 +00:00
HoneyryderChuck
f6bee9e6e4 Merge branch 'issue-257' into 'master'
DNS retries to native resolver

Closes #257

See merge request os85/httpx!293
2023-11-06 12:03:52 +00:00
HoneyryderChuck
d9a52ec795 readding DNS retries to native resolver
when they fail once, the whole thing crumbles, which breaks rate limit strategies from some known software

Fixes #257
2023-11-06 09:56:40 +00:00