HoneyryderChuck
ddabe52946
Merge branch 'new-cops-enable' into 'master'
...
New cops enable
See merge request honeyryderchuck/httpx!164
2021-09-04 14:36:06 +00:00
HoneyryderChuck
c96c79537a
disabling cops that don't bring benefit
2021-09-04 15:25:14 +01:00
HoneyryderChuck
d350bebe81
integrating .sum and .filter_map + backports
2021-09-04 15:25:14 +01:00
HoneyryderChuck
0575c87dec
added example blocks to class_eval defs
2021-09-03 12:52:26 +01:00
HoneyryderChuck
c95e926886
auto-corrected the easy ones first
2021-09-03 12:24:18 +01:00
HoneyryderChuck
21a18652c6
enable new cops
2021-09-02 14:22:08 +01:00
HoneyryderChuck
d58a28d46f
added missing info to release docs
v0.17.0
2021-08-31 17:16:46 +01:00
HoneyryderChuck
134cb90c2f
Merge branch 'limit-rubocop' into 'master'
...
only run rubocop for latest ruby
See merge request honeyryderchuck/httpx!163
2021-08-31 16:12:06 +00:00
HoneyryderChuck
1a0962615b
only run rubocop for latest ruby
...
the rubocop configs have grown a bit unwieldy as more ruby versions are
deprecated by mainline. Given that rubocop is not a requisite for older
rubies (provided code works), let's keep linting consistency towards
more modern conventions
2021-08-31 16:58:38 +01:00
HoneyryderChuck
b836d79c55
bump version to 0.17.0
2021-08-31 16:47:40 +01:00
HoneyryderChuck
b13e265bd4
Merge branch 'openssl-rbs' into 'master'
...
more rbs + improvements
See merge request honeyryderchuck/httpx!162
2021-08-31 13:26:43 +00:00
HoneyryderChuck
cdcbf14675
few sig changes (more assertive)
2021-08-31 13:50:29 +01:00
HoneyryderChuck
74dfb18ed3
few extra changes to appease the type checker
2021-08-31 13:50:29 +01:00
HoneyryderChuck
b92829d025
do not needlessly forward method used only once
2021-08-31 13:50:29 +01:00
HoneyryderChuck
b9339a12ae
targeting rbs with openssl
2021-08-31 13:50:29 +01:00
HoneyryderChuck
82953f7fe6
Merge branch 'drop_response_body_finalizer' into 'master'
...
Remove response body finalizer
See merge request honeyryderchuck/httpx!161
2021-08-30 17:28:57 +00:00
ojab
aa3be21c89
Remove response body finalizer
...
it's unnecessary, see discussion in
https://gitlab.com/honeyryderchuck/httpx/-/merge_requests/159
2021-08-30 14:07:36 +00:00
HoneyryderChuck
f18da78832
Merge branch 'blog' into 'master'
...
post
See merge request honeyryderchuck/httpx!160
2021-08-30 09:13:40 +00:00
HoneyryderChuck
d4a05a281f
enable tests and coverage in blog branch
2021-08-27 12:34:20 +01:00
HoneyryderChuck
84f5c04412
blog post: tensorflow-serving in ruby
2021-08-27 12:32:07 +01:00
HoneyryderChuck
a5a2f0d8f8
blog: added support for meta keywords, changed a bit of the HTML header
2021-08-27 12:32:07 +01:00
HoneyryderChuck
a4649d90a7
Merge branch 'fix-iproute' into 'master'
...
innstallig iproute2, as it's no longer part of distro
See merge request honeyryderchuck/httpx!158
2021-08-17 16:10:01 +00:00
HoneyryderChuck
2cb3c395a8
innstallig iproute2, as it's no longer part of distro
2021-08-17 16:58:42 +01:00
HoneyryderChuck
e435dd0534
prevent multiple declarations of the host header
2021-08-17 14:09:21 +01:00
HoneyryderChuck
6a69f1cc84
Merge branch 'issue-132' into 'master'
...
Response decoders
Closes #132
See merge request honeyryderchuck/httpx!157
2021-08-10 15:36:43 +00:00
HoneyryderChuck
f520785572
added content-type filtering to decoders
2021-08-10 13:50:34 +01:00
HoneyryderChuck
c7f177adbb
added regexp extensions where using match?
2021-08-10 11:25:36 +01:00
HoneyryderChuck
2a5c429dbd
improvement in Session#request, one of the main APIs
2021-08-10 11:10:45 +01:00
HoneyryderChuck
8ded86cec6
improving sigs for new components
2021-08-10 11:10:45 +01:00
HoneyryderChuck
e19041aaad
no ned to call Kernel directly (at least, not anymore)
2021-08-10 11:10:45 +01:00
HoneyryderChuck
c4f5362156
making responses coercable to string
2021-08-10 11:10:45 +01:00
HoneyryderChuck
20db082db2
changing proc to lambda (just because of rbs)
2021-08-10 11:10:45 +01:00
HoneyryderChuck
802c47a037
multipart decoding: fail if no boundary found in header
2021-08-10 11:10:45 +01:00
HoneyryderChuck
e1ee8c69dc
proxy: fixing proxy resolve error filtering to also work with system resolver
2021-08-10 11:10:45 +01:00
HoneyryderChuck
6b61b8ccdb
fixing signatures
...
also adding some checks on code, in order for steep to stop complaining
about potential nil returns.
2021-08-10 10:28:58 +01:00
HoneyryderChuck
556c94a575
added multipart decooder, which overtakes on Response#form for multipart payloads
2021-08-09 15:54:25 +01:00
HoneyryderChuck
f2d3c1f09b
added Response#form (supports only x-www-urlencoded for now)
2021-08-09 15:54:25 +01:00
HoneyryderChuck
a85828d0d5
added Response#json
2021-08-09 15:54:24 +01:00
HoneyryderChuck
e5a120111c
added tests for json and form (also multipart) decoders
2021-08-09 15:54:24 +01:00
HoneyryderChuck
c9de63d4cd
bumped version to 0.16.1
2021-08-09 15:54:16 +01:00
HoneyryderChuck
eed79d0de3
Merge branch 'issue-145' into 'master'
...
bugfix: fixed native resolver timeout when dealing with absolute DNS names
Closes #145
See merge request honeyryderchuck/httpx!156
2021-08-09 13:14:05 +00:00
HoneyryderChuck
582447f10e
bugfix: fixed native resolver timeout when dealing with absolute DNS
...
names
DNS answers are decoded using `resolv` internal structures. In this
particular case, we were using `Resolv::DNS::Name#to_s` to infer the
query dns name an answer refers to. This failed, because, as per
documentaation:
```ruby
p Resolv::DNS::Name.create("x.y.z.").to_s #=> "x.y.z"
p Resolv::DNS::Name.create("x.y.z").to_s #=> "x.y.z"
```
this caused issues when marking the DNS resolving as done. As a fix, I
applied the same logic from `Resolv::DNS::Name#inspect`. which correctly
prints absolute names.
Fixes #145
2021-08-09 13:36:49 +01:00
HoneyryderChuck
5eb9afd6e9
Merge branch 'reduce-options-allocations' into 'master'
...
performance improvements
See merge request honeyryderchuck/httpx!155
2021-08-05 22:41:26 +00:00
HoneyryderChuck
f9c17af6f3
save against file handle from system resolve being closed abruptly
2021-08-05 23:29:49 +01:00
HoneyryderChuck
48a2d82c34
http2 connection: removed interests calculation traversing requests
...
the traversal seems unnnecessary, given the subsequent cheaper checks. A
request with a stream will always be writable unless it's done, or is
expecting a 1xx response; however, there'll be drains in place, and
that's a cheaper check.
2021-08-05 22:52:58 +01:00
HoneyryderChuck
59755d7d01
connection: avoid calculating interests when there was nothing that could have changed the result
2021-08-05 22:51:16 +01:00
HoneyryderChuck
63c39a4032
fixed respond_to_missing? sig
2021-08-05 15:03:50 +01:00
HoneyryderChuck
65261217b1
optimization for calculation whether parser is empty
...
This avoids traversing all requests in the parser. this is possible for
HTTP/1.1 because, given that requests are sequentially concluded, one
can get away with checking only first and last request state.
2021-08-05 15:03:49 +01:00
HoneyryderChuck
3d549817cb
optimization on build_request to reduce Options object allocations on
...
multi-request calls
request options already get aggregated in #build_requests. this
optimization removes the Options object rebuild for each request,
thereby sharing the same across concurrent requests.
this is possible because, although #build_request is public, we document
it only with passing hash of options, never an Options object. This
would probably result in errors.
2021-08-05 15:03:49 +01:00
HoneyryderChuck
cc02679b80
Options#to_hash: avoid intermediate array, directly assign to final hash
2021-08-05 15:03:49 +01:00