HoneyryderChuck
e1d305b4d9
adding expect and compression plugins by default to the aws_sigv4 plugin
...
It's expected that this endpoint will be used i most cases for file
uploads, so both plugins will be important to improve throughput and
auth-fail-fast scenarios
2021-02-03 12:52:55 +00:00
HoneyryderChuck
d93de82639
do not assume that kwargs work as hash merges in older rubies
2021-02-03 12:52:22 +00:00
HoneyryderChuck
2875e81d16
testing against patched openssl version (and sending all artifacts to coverage job in CI)
2021-02-02 19:42:43 +00:00
HoneyryderChuck
5e31836ac2
changing the API so that a credentials object can be passed to sigv4
...
this allows the aws-sdk plugin to pass a wrapped Aws::Credentials
downstream, which provides the username/password vars. this is
important, as some of the strategies, such as the web identity token,
also revalidate these parameters.
2021-02-02 18:33:24 +00:00
HoneyryderChuck
ae1060157a
changing the name of the plugin to aws_sdk_authentication, removing depenndency on s3 gem (only aws-sdk-core)
2021-02-02 18:33:24 +00:00
HoneyryderChuck
463dad46cb
added the aws signature on top of the aws-sigv4 plugin, with support for using aws-sdk-core ready-made config
2021-02-02 18:33:24 +00:00
HoneyryderChuck
755b895b08
added initial aws sigv4 functional test
2021-02-02 18:33:24 +00:00
HoneyryderChuck
c588614c2c
adding localstack to mimmick local aws cloud
2021-02-02 18:33:24 +00:00
HoneyryderChuck
48051d37c0
adding initial implementation of sigv4 request signing, which passed the aws-sdk-sigv4 tests
2021-02-02 18:33:24 +00:00
HoneyryderChuck
db036aaefa
protocol: passing protocol specific headers as a request callback
2021-02-02 18:33:24 +00:00
HoneyryderChuck
f415d1b66b
added tests for aws sigv4
2021-02-02 18:33:24 +00:00
HoneyryderChuck
a1942d5a6a
Merge branch 'issue-100' into 'master'
...
FFI-base TLS stack for JRuby to enable HTTP/2
Closes #100
See merge request honeyryderchuck/httpx!117
2021-02-02 17:55:49 +00:00
HoneyryderChuck
550fc82b1a
adding coverage innfo of ruby 3
2021-02-02 17:33:41 +00:00
HoneyryderChuck
6d3312bffe
group ci tasks by name
2021-02-02 15:49:25 +00:00
HoneyryderChuck
e334bf891b
as per https://github.com/msgpack/msgpack-ruby/issues/205 , restrict 1.4 to ruby >= 2.4
2021-02-02 15:40:22 +00:00
HoneyryderChuck
17dc61402b
removing rubocop's pin to master (a bugfix has been released)
2021-02-02 15:28:07 +00:00
HoneyryderChuck
fa81dcbb73
ci: change dependencies to needs
2021-02-02 15:05:49 +00:00
HoneyryderChuck
065bfc48dc
do not rely on deflater being initialized at this point
2021-01-31 16:19:49 +00:00
HoneyryderChuck
838f9a3e11
added ruby-tls license to the ffi-based files
2021-01-31 16:07:42 +00:00
HoneyryderChuck
58a1991f10
ignore the ffi-tls stack from coverage
...
Given that it was based on ruby-tls, there's a lot of server-specific
code paths which will never be covered. So it's not going to be dealt
with, until it has to.
2021-01-31 15:57:54 +00:00
HoneyryderChuck
2866b78572
error message for sni is actually different, and I'm not sure how wasn't this being skipped
2021-01-31 15:51:34 +00:00
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