406 Commits

Author SHA1 Message Date
HoneyryderChuck
535a30db25 fixing issues around typing 2022-08-13 16:34:02 +01:00
HoneyryderChuck
eb3d3f9048 implementation of the webdav plugin 2022-08-13 15:30:37 +01:00
HoneyryderChuck
c31ded54e1 circuit breaker plugin 2022-08-07 22:24:57 +01:00
HoneyryderChuck
ee49d7452c added tests for read and write timeout 2022-08-06 22:30:46 +01: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
4a0bfa3544 Merge branch 'issue-174' into 'master'
altsvc improvements

Closes #174

See merge request honeyryderchuck/httpx!207
2022-05-25 22:28:18 +00:00
HoneyryderChuck
38152e8dee fix vary header handling to deal with capitalized, test the path
directly in store
2022-05-25 23:15:30 +01:00
HoneyryderChuck
e740a38bad follow_redirects: halt redirection if no location header is present in response 2022-05-25 18:58:11 +01:00
HoneyryderChuck
b6819de30c ennabling cache test again 2022-05-23 23:56:43 +01:00
HoneyryderChuck
889c2f3f79 Merge branch 'issue-189' into 'master'
Support other auth schemes for proxies (digest, ntlm...)

Closes #189

See merge request honeyryderchuck/httpx!204
2022-05-16 22:15:29 +00:00
HoneyryderChuck
0d01f728aa introducing base_path option
This should complement the `:origin` option, in order to provide good
defaults to build REST SDKs around of.

Ex:

```ruby
HTTPX.with(origin: "https://api.this-product.com", base_path: "/v3.1")
```
2022-05-08 17:43:26 +01:00
HoneyryderChuck
c86f4be1a7 reworking auth APIs for a future 1.0 refactoring 2022-05-08 17:23:07 +01:00
HoneyryderChuck
6dcf9f0d75 enabling and adding a test for using proxy digest auth 2022-05-07 16:49:00 +01:00
HoneyryderChuck
e3191f0d6c rubocop lint 2022-05-06 17:58:13 +01:00
HoneyryderChuck
637d2f7600 fix: proxy credentials were not being used
a regression from the 0.19.x series was omitting the proxy credentials
when passed directly as proxy options (instead of being part of the URI).

Closes #188
2022-04-05 22:53:45 +01:00
HoneyryderChuck
5307b33cb6 more timmeout leeway, using Thread.kill instead (truffleruby tests) 2022-03-29 22:55:01 +01:00
HoneyryderChuck
30df921387 limit candidates resolution to the first resolv call, while also adapting the retries logic in the native resolver 2022-03-20 15:44:12 +00:00
HoneyryderChuck
35d9c15f44 bumped version to 0.19.4 2022-03-06 17:22:17 +00:00
HoneyryderChuck
552d0d859c fix truffleruby build 2022-03-06 16:33:35 +00:00
HoneyryderChuck
e9a81d6b16 enabled h2 tests which were blocked for jruby 2022-03-05 17:33:37 +00:00
HoneyryderChuck
8eee10be21 regenerated test certs, keeping ca.crt around this time 2022-03-04 23:43:05 +00:00
HoneyryderChuck
a4a60290ac jruby: add test root certificate via keytool 2022-03-04 23:43:05 +00:00
HoneyryderChuck
fc977a7c83 adding git, because bundler still requires it even if alt-ruby should not download dep 2022-02-01 23:03:59 +00:00
HoneyryderChuck
81d399a324 updated test certs (expired) 2022-02-01 22:54:59 +00:00
HoneyryderChuck
b5b0e89dd1 on Response.response=, check if it's an error before expecting to use Response API; this triggers a second exception which won't be propagated and causes a loop 2022-02-01 22:48:42 +00:00
HoneyryderChuck
06b162b6ea applying a resolver manager to hold the different family type resolvers for the pool. This allows to have multiple resolvers per type, i.e. IPv6 and IPv4 2022-01-16 22:54:56 +02:00
HoneyryderChuck
bfb51cf213 isolate debug log tests 2022-01-16 03:29:46 +02:00
HoneyryderChuck
770fdefc9d added extra test for logging errors 2022-01-16 02:29:48 +02:00
HoneyryderChuck
6369d9af72 fix CI script and assertion helper for headers 2022-01-15 01:38:14 +02:00
HoneyryderChuck
c3d20c6107 assertion helper: explicit string there to chase very rare CI failure 2022-01-12 15:50:44 +02:00
HoneyryderChuck
779171106b refactoring CI test suite
* run linting first (finish fast if code is unaligned), only on ruby 3.1
* run standalone and regression tests only on CRuby
* do not enable rbs if in jit mode (we should not slow down jits)
2022-01-12 15:50:44 +02:00
HoneyryderChuck
317ed07dba added tests for all supported mime type detectors 2022-01-12 15:50:44 +02:00
HoneyryderChuck
b700a4f994 bootstrapping standalone tests, test which need to run in full-isolation mode (own process), where proxy intgration via env var is tested 2022-01-12 01:43:08 +02:00
HoneyryderChuck
d286bf5cc2 improving the env proxy test 2022-01-08 17:47:58 +02:00
HoneyryderChuck
d3b36c5668 added support for HTTP/2 proxy by simplifying the overall http proxy implementation 2022-01-07 12:26:26 +02:00
HoneyryderChuck
f3cff86775 cleaning up state within an http2 connection receiving a goaway, to properly mark it to be close; this will prevent unfinished pending requests to fall in the same connection, resulting in an unrecoverable internal state error 2021-11-19 16:24:50 +00:00
HoneyryderChuck
f31b06c150 improving servlet layer to be able to quickly build an HTTP2 test server 2021-11-17 21:34:16 +00:00
HoneyryderChuck
17d05e987d fixed cond around waiting for localstack to come up again 2021-11-14 02:56:32 +00:00
HoneyryderChuck
34405df522 skipping vary test 2021-10-02 01:21:40 +01:00
HoneyryderChuck
8f00539d6d bigger delta overall for timer-based tests 2021-10-02 00:19:53 +01:00
HoneyryderChuck
911c803d83 added test for vary header handling 2021-10-01 23:38:38 +01:00
HoneyryderChuck
a60fde07d6 added plugin tests, and the plugin body 2021-10-01 23:38:38 +01:00
HoneyryderChuck
a076da6549 disable h2 upgrade test for 2.3 2021-10-01 22:29:41 +01:00
HoneyryderChuck
c2131c8e41 disable ssl verify for nghttp2, letsencrypt expired cert + old openssl, thx 2021-10-01 18:00:34 +01:00
HoneyryderChuck
01efc4405c usinng better base images 2021-09-30 02:27:10 +01:00
HoneyryderChuck
edf7357a5f improved persistent plugin test, in order to test not only the number of connections kept, but the ones actually being used for selecting (connections with no request shouldn't) 2021-09-25 00:44:31 +01:00
HoneyryderChuck
13e865e488 hiding monotonic time funcs under the utils API 2021-09-20 16:16:20 +01:00
HoneyryderChuck
dce5c22fa0 fixing latest rubocopz 2021-09-20 12:37:48 +01:00