Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

revisit compatibility with gemified net/http #249

Open
kares opened this issue Feb 10, 2022 · 1 comment
Open

revisit compatibility with gemified net/http #249

kares opened this issue Feb 10, 2022 · 1 comment

Comments

@kares
Copy link
Member

kares commented Feb 10, 2022

JRuby had a few modification to net/http in stdlib to work-around APIs JOSSL does not provide (e.g. session_new_cb=)
as well as some custom Java specific features (using the JVM system proxy).

ATM, once a gem-ifiied net/http is installed further gem install starts failing with the relevant errors e.g.

OpenSSL::SSL::SSLContext#session_cache_mode= has no effect under JRuby
ERROR:  While executing gem ... (NoMethodError)
    undefined method `session_new_cb=' for #<OpenSSL::SSL::SSLContext:0x1782896>
Did you mean?  session_id_context=

We could provide dummy APIs (such as session_new_cb=) even if they would do nothing as long as net/http does not rely on them as "mission critical" and they do not interfere with TLS security.

Upstream case (for JRuby 9.4): jruby/jruby#7088

headius added a commit that referenced this issue Apr 7, 2022
These are called by at least the default net-http gem, so we need
these methods to be present. I am not sure how much functionality
they need to have; in CRuby, they are just bound as attr readers/
writers.

See #249 and jruby/jruby#7088
@kares
Copy link
Member Author

kares commented Apr 11, 2022

for the record a net/http patch has been posted that handles JRuby compatibility: ruby/net-http#52

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant