HoneyryderChuck
63f2026c1a
disabling integrations for jruby
2021-01-31 15:51:34 +00:00
HoneyryderChuck
e253a70270
test bad certs errors with badssl.com instead
2021-01-31 15:51:34 +00:00
HoneyryderChuck
574a478cc8
changing indentation, registering TLS class
2021-01-31 15:51:34 +00:00
HoneyryderChuck
2749763d8c
relaxed constraints on verify callback
2021-01-31 15:51:34 +00:00
HoneyryderChuck
f7600d39d9
installing a 2020 version of openssl
2021-01-31 15:51:34 +00:00
HoneyryderChuck
5cda82cf95
updating jruby docker image
2021-01-31 15:51:34 +00:00
HoneyryderChuck
2ecfde95d8
fixing cerfificate hostname validation callback
2021-01-31 15:51:34 +00:00
HoneyryderChuck
0b7dbb8cfa
alpn refactoring
2021-01-31 15:51:34 +00:00
HoneyryderChuck
87b9a6c49e
moving away from the single-file ruby-tls, breaking down into components
2021-01-31 15:51:34 +00:00
HoneyryderChuck
507e6f6674
exposing certificate verification errors upstream, openssl style
2021-01-31 15:51:34 +00:00
HoneyryderChuck
da21b4a342
updated verify certs callback, inorder only to verify the hostname when dealing with the leaf certificate
2021-01-31 15:51:34 +00:00
HoneyryderChuck
384d273715
new ssl option: :hostname -> the SNI hostname used in the TLS handshake
2021-01-31 15:51:34 +00:00
HoneyryderChuck
c5e3bda2d3
passing io doesn't work for ruby-tls
2021-01-31 15:51:33 +00:00
HoneyryderChuck
f1f85ecfc7
maintaining own fork of ruby-tls
...
The ruby-tls gem hasn't received an update in 3 years, and haven't
actioned on issues that old, which leads me to believe it was abandoned.
Therefore, I now maintain this fork, and this allows me to quickly
identify issues.
The flow within the IO wrapper has been dealt with as well
2021-01-31 15:51:33 +00:00
HoneyryderChuck
61afd85654
install libssl-dev in CI
2021-01-30 23:19:02 +00:00
HoneyryderChuck
f423ea69cb
IO wrapper using the ruby-tls handler
2021-01-30 23:19:02 +00:00
HoneyryderChuck
fd9fc7ccf3
added ruby-tls for jruby
2021-01-30 23:19:02 +00:00
HoneyryderChuck
4aafa782e9
doc was somehow missing
2021-01-30 17:25:46 +00:00
HoneyryderChuck
037a435163
bumped to 0.11.1
v0.11.1
2021-01-30 17:17:16 +00:00
HoneyryderChuck
b63e91b165
forgot that integrations tests do not run in parallel
2021-01-30 16:26:19 +00:00
HoneyryderChuck
7221a61383
fixing jruby CI pipelinne
2021-01-30 16:13:55 +00:00
HoneyryderChuck
0ce0a0f092
Merge branch 'issue-112' into 'master'
...
fixing decompression issue when last DATA frame is empty
Closes #112
See merge request honeyryderchuck/httpx!116
2021-01-30 15:40:56 +00:00
HoneyryderChuck
d645ac8596
added quick fixes to make http tests run with truffleruby, until the patches are released
2021-01-30 15:31:03 +00:00
HoneyryderChuck
5158cce23f
do not install msgpack version which fails to run under ruby 2.1
2021-01-30 15:31:03 +00:00
HoneyryderChuck
738875b5aa
pinning runocop to master branch (there was a bug in the evalwithlocation cop)
2021-01-30 15:31:03 +00:00
HoneyryderChuck
e2b4cc0938
updating test TLS certs
2021-01-30 15:31:03 +00:00
HoneyryderChuck
129bcf1871
fixing decompression issue when last DATA frame is empty
...
An error arose in decompressing a GZIP body from an HTTP/2 response,
where the second-to-last DATA frame actually sent the last meaningful
data chunk, and the server emitted an additional empty frame with
`end_stream` flag.
This error was introduced in the transition to ruby 3 and RBS
refactorings, when the gzip inflater closes automatically once all the
advertised (in "content-length" header) bytes are successfully
decompressed. In the case described above, the empty chunk still dives
into the decompressor and passed to the now closed ZLib::Stream, which
triggeres an exception.
The fix is to halt decompression early in the chain. Response#write
already knows how to deal with empty frames, so the control should be
passed there.
Fixes #112
2021-01-29 18:09:11 +00:00
HoneyryderChuck
1368ed2df7
Merge branch 'fix-formdata' into 'master'
...
Fix formdata
See merge request honeyryderchuck/httpx!115
v0.11.0
2021-01-14 16:15:43 +00:00
HoneyryderChuck
af8539a7a7
multipart form: skip parts where value is nil
2021-01-14 16:07:11 +00:00
HoneyryderChuck
b8745bb3cc
fixed concatenation of formdata parts, which wasn't filling HTTP/2 frames, and was causing miscalculations for buffers
2021-01-14 16:07:11 +00:00
HoneyryderChuck
890111c2f8
quote fields in formdata params for multipart
2021-01-14 16:07:11 +00:00
HoneyryderChuck
644783c642
keep loading http/form_data, mark for deprecation
2021-01-14 16:07:11 +00:00
HoneyryderChuck
654b791314
bumped to 0.11.0
2021-01-14 11:05:06 +00:00
HoneyryderChuck
bebd2bd11e
don't account for #build_requests misusages (private API, we control it)
2021-01-14 00:50:23 +00:00
HoneyryderChuck
b2dff40839
reraise IOError on yield of io, when the error doesn't involve the
...
client io specifically.
This was the case for multipart tests raising IOErrors on upload files
instead of IO, which was causing the loop to break.
2021-01-14 00:37:00 +00:00
HoneyryderChuck
6e0df603db
removed disabling of coverage and needless conditionals
2021-01-14 00:36:44 +00:00
HoneyryderChuck
ed8fcd7892
test covering untested paths of Session#build_requests
2021-01-14 00:35:52 +00:00
HoneyryderChuck
cbfdfed6c4
socks5 test covering failed authenticationn path
2021-01-14 00:35:22 +00:00
HoneyryderChuck
c5512dbbeb
enable push frames in no push test in order to force refusal
2021-01-14 00:34:51 +00:00
HoneyryderChuck
a38724d134
renamed cop for ruby 2.3
2021-01-13 17:05:24 +00:00
HoneyryderChuck
0ffea8d6e4
Merge branch 'issue-99' into 'master'
...
Remove http-form_data, own multipart handler
Closes #99
See merge request honeyryderchuck/httpx!113
2021-01-13 17:00:04 +00:00
HoneyryderChuck
a29961962b
allowing multipart requests to be retried (although, to be fair, user has to push a lot of knobs to do so)
2021-01-13 13:40:05 +00:00
HoneyryderChuck
fd91aca873
closing descriptors as they're flushed by the request.
...
this wasn't as easy due to reliance on Request#bytesize, which was
calling File#size on the closed file descriptors, which raised an
IOError caught by the selector. Caching fixes it, and removes the
recalculations from the hot path as well.
2021-01-13 13:40:05 +00:00
HoneyryderChuck
4987b2d583
disabling old cops
2021-01-13 12:27:13 +00:00
HoneyryderChuck
1691f50af5
fixing usage of Enumerable#sum for older rubies
2021-01-13 12:27:13 +00:00
HoneyryderChuck
7fa283097d
added signatures to new modules
2021-01-13 12:27:13 +00:00
HoneyryderChuck
80f0ddfbc8
adding file tool to the CI
2021-01-13 12:27:13 +00:00
HoneyryderChuck
d39c82cea8
do not close parts (http2 handler failing to write when nit does)
2021-01-13 12:27:13 +00:00
HoneyryderChuck
42297cd38d
simplifying apis, testing pathnames
2021-01-13 12:27:13 +00:00
HoneyryderChuck
478558d4bf
making sure we don't leave file descriptors behind
2021-01-13 00:00:09 +00:00