Besides several versions of CRuby, httpx
tests also against the most popular alternative implementations of Ruby, jruby
and truffleruby
. There are a few considerations and workarounds to consider when using httpx
under these implementations, so this page aims at documenting useful guidelines and tips.
As JRuby
doesn’t run C-extensions, some of the plugins are unusable, as they don’t provide the needed Java extensions:
compression/brotli
(uses the brotli gem, C-extensions based)proxy/ssh
(uses net-ssh-gateway, hangs under JRuby)jruby-openssl introduced ALPN negotiation starting with 0.12.2
, which enables HTTP/2 in the sames conditions as when using CRuby (In lower versions, HTTP/1.1 will be used).
Since v0.12.0 , httpx
also supports truffleruby
, starting with v20.3. Some of its functionality is still limited (some compression modes are still not 100%, and socks4 proxy still has some issues), so make sure you follow the latest truffleruby CI jobs to track progress. httpx
is aiming at providing full support for truffleruby starting with the v21.1 .
Next: FAQ