HoneyryderChuck
b0b073db5c
replace deprecated Random::DEFAULT with Random
2022-09-06 22:33:59 +01:00
HoneyryderChuck
ca466780e7
fix: protecting tcp connect phase against low-level syscall errors
...
such as network unreachable, which can happen if connectivity is lost
in
the middle of the process.
Fixes #207
2022-09-06 22:25:24 +01:00
HoneyryderChuck
aa825021a8
fixed yml issue
2022-08-29 01:27:37 +01:00
HoneyryderChuck
13a6e2acc2
moar docs
2022-08-29 01:14:37 +01:00
HoneyryderChuck
bb481022fa
doc tweaks
2022-08-16 11:52:21 +01:00
HoneyryderChuck
16a64ba953
bumped version to 0.21.0
v0.21.0
2022-08-14 11:23:41 +01:00
HoneyryderChuck
6815053ca8
Merge branch 'issue-201' into 'master'
...
webdav
Closes #201
See merge request honeyryderchuck/httpx!219
2022-08-14 09:39:40 +00:00
HoneyryderChuck
535a30db25
fixing issues around typing
2022-08-13 16:34:02 +01:00
HoneyryderChuck
c70209db4b
added xml transcoder
...
capabilities to encod/decode xml, expects nokogiri.
2022-08-13 15:42:46 +01:00
HoneyryderChuck
49d6cc4da4
remove http verb checks, strictness does not benefit experimentation
2022-08-13 15:30:37 +01:00
HoneyryderChuck
eb3d3f9048
implementation of the webdav plugin
2022-08-13 15:30:37 +01:00
HoneyryderChuck
f8f62b6710
Merge branch 'issue-204'
2022-08-10 23:12:23 +01:00
HoneyryderChuck
bee57ff1b6
bumped version to 0.20.5
2022-08-10 23:11:18 +01:00
HoneyryderChuck
c580812eb9
show coverage of extensions
2022-08-10 23:03:49 +01:00
HoneyryderChuck
e6502c534e
fixing wrong var name in extension
2022-08-10 23:03:26 +01:00
HoneyryderChuck
2edb00c3d6
Merge branch 'issue-190' into 'master'
...
Circuit breaker plugin
Closes #190
See merge request honeyryderchuck/httpx!214
2022-08-08 21:32:34 +00:00
HoneyryderChuck
99a9e1c138
fix circuit breaker:
...
* circuit break the uri (instead of the whole origin) if the timeout is
only on requests;
* improved cached responses loop;
* organized components into separate files
2022-08-08 22:19:48 +01:00
HoneyryderChuck
8f8febc10e
sig fixes
2022-08-08 22:19:20 +01:00
HoneyryderChuck
3b9cbec8d9
unix socket deprecation message and doc fixes
2022-08-07 22:24:57 +01:00
HoneyryderChuck
c31ded54e1
circuit breaker plugin
2022-08-07 22:24:57 +01:00
HoneyryderChuck
7819079b71
fixes on existing plugin option checks
2022-08-07 22:24:57 +01:00
HoneyryderChuck
daf9fcee1d
Merge branch 'issue-151' into 'master'
...
New http timeouts
Closes #151
See merge request honeyryderchuck/httpx!212
2022-08-07 14:03:39 +00:00
HoneyryderChuck
71cb66e287
added missing options sig
2022-08-07 14:43:29 +01:00
HoneyryderChuck
3f9c165d51
added request_timeout
2022-08-06 23:20:21 +01:00
HoneyryderChuck
c907942c9c
unique domains for altsvc cache tests
2022-08-06 22:30:46 +01:00
HoneyryderChuck
d92de449ef
backporting infinite method
2022-08-06 22:30:46 +01:00
HoneyryderChuck
7ee4c5f6d3
teaching errors how to dump
2022-08-06 22:30:46 +01:00
HoneyryderChuck
452657c805
Added the read_timeout and write_timeout timeouts
...
These are deadline oriented for the request and response, i.e. a write
timeout tracks the full time it takes to write the request, whereas the
read timeout does the same for receiving the response.
For back-compat, they're infinite by default. v1 may change that, and
will have to provide a safe fallback for endless "stream" requests and
responses.
2022-08-06 22:30:46 +01:00
HoneyryderChuck
f4e393af40
Response#finished? and Response.finish!
...
these new functions allow to mark an incomplete response as closed, such
as when a timeout happens. finishing also freezes the response headers.
2022-08-06 22:30:46 +01:00
HoneyryderChuck
ee49d7452c
added tests for read and write timeout
2022-08-06 22:30:46 +01:00
HoneyryderChuck
330866f102
Merge branch 'issue-203' into 'master'
...
Added support for multiple JSON parsers
Closes #203
See merge request honeyryderchuck/httpx!218
2022-08-06 21:29:24 +00:00
HoneyryderChuck
25b949cf66
Added support for multiple JSON parsers
...
When available, httpx will either use `multi_json`, `oj`, or `yajl`,
before it falls back to default `json`.
2022-08-05 22:57:06 +01:00
HoneyryderChuck
12573a16a5
removed support for application/dns-json mime type in the DoH resolver
2022-08-05 22:57:06 +01:00
HoneyryderChuck
6336379837
added support for other json parsers
2022-08-05 22:57:06 +01:00
HoneyryderChuck
b27f51c0f9
Merge branch 'issue-202' into 'master'
...
introducing the :no_proxy option
Closes #202
See merge request honeyryderchuck/httpx!217
2022-08-05 21:56:35 +00:00
HoneyryderChuck
43016795f3
introducing the :no_proxy option
...
can be passed in the `:proxy` option hash, and receives domains, as
strings, which requests should not go through the proxy.
2022-08-05 22:37:52 +01:00
HoneyryderChuck
39beff84ab
added ability to check if request has been proxied
2022-08-04 14:02:44 +01:00
HoneyryderChuck
7c1ed56714
fixing local proxy list
2022-08-04 14:01:47 +01:00
HoneyryderChuck
da0ef24b09
bumped version to 0.24.4
v0.20.4
2022-08-01 22:46:41 +01:00
HoneyryderChuck
8359d6b007
Merge branch 'issue-200' into 'master'
...
response_cache: fixes and improvements
Closes #200
See merge request honeyryderchuck/httpx!216
2022-08-01 17:50:21 +00:00
HoneyryderChuck
e691cbdf5e
Merge branch 'github-issue-5' into 'master'
...
fix for loop on resolution and retry on new connection
See merge request honeyryderchuck/httpx!215
2022-08-01 17:49:45 +00:00
HoneyryderChuck
61c36c4ef9
response cache: caching several instances for the same URL
...
by relying on vary header, this should have the effect of not
overflowinng, and doing what the user wants.
2022-08-01 18:40:21 +01:00
HoneyryderChuck
f48f4e414a
Fixes and improvements on the response_cache plugin
...
The following improvements were done:
* only cacheable status codes are allowed now (200, 203, 300, 301, 410)
* only responses considered fresh are cached; fresh response means:
* no-store directive not present in cache-control
* response hasn’t expired (when s-maxage, max-age or expires are
present)
2022-08-01 17:40:05 +01:00
HoneyryderChuck
122b75a14c
fixing hackernews script
2022-07-31 19:07:41 +01:00
HoneyryderChuck
b0777c61e5
fix for loop on resolution and retry on new connection
...
A certain behaviour was observed, when performing some tests using the
hackernews script, where after a failed request on a non-initiated
connection, a new DNS resolution would be emitted, although the
connection still had other IPs to try on. This led to a cascading
behaviour where the DNS response would fill up the connection with the
same repeated IPs and trigger coalescing, which would loop indefinitely
after emitting the resolve event.
This was fixed by not allowing DNS resolution on already resolved names,
to propagate to connections which already contain the advertised IPs.
This seems to address the github issue 5, which description matches the
observed behaviour.
2022-07-31 19:07:41 +01:00
HoneyryderChuck
32a81f2025
fix: response cache now also takes verb into account when caching
...
The previous strategy was working only with URLs. This strategy would
fall flat if the same url could be used with several HTTP verbs.
2022-07-31 17:03:30 +01:00
HoneyryderChuck
534b3eb91b
bumped version to 0.20.3
v0.20.3
2022-07-03 23:54:45 +01:00
HoneyryderChuck
c10cead33c
Merge branch 'issue-197' into 'master'
...
Doh: initialize the dns resolver, so name candidate calculation actually works...
Closes #197
See merge request honeyryderchuck/httpx!213
2022-07-03 22:53:40 +00:00
HoneyryderChuck
da9993f7e0
another rubocop, anoter linting hel...
2022-07-03 23:42:45 +01:00
HoneyryderChuck
2935724a16
makinng sure the nameserver list is a list
2022-07-03 00:28:15 +01:00