Skip to content

update [net] libraries#6699

Closed
ahorek wants to merge 3 commits intojruby:masterfrom
ahorek:netupdate
Closed

update [net] libraries#6699
ahorek wants to merge 3 commits intojruby:masterfrom
ahorek:netupdate

Conversation

@ahorek
Copy link
Contributor

@ahorek ahorek commented Jun 2, 2021

refs #6523

  • get rid of Timeout.timeout
  • update to latest versions, there were many improvements since the last update

there're two main issues that prevent gemification

1/ missing OpenSSL APIs, mostly SNI support, see
jruby/jruby-openssl#112 jruby/jruby-openssl#103 jruby/jruby-openssl#202
this should be really implemented, but it's skipped for now.

2/ https://github.com/ruby/digest
is a hard dependency and the gem has no JRuby version

@ahorek ahorek force-pushed the netupdate branch 3 times, most recently from 03ef478 to 0eed5d9 Compare June 3, 2021 20:21
@ahorek ahorek changed the title WIP: net libraries update [net] libraries Jun 3, 2021
@headius
Copy link
Member

headius commented Jun 4, 2021

We will need to address those gems for 9.4 but this is okay for now. Ruby 2.6 does not use those libraries as gems anyway. Could you open a few issues on jruby and those libraries to get the process moving?

@headius headius added this to the JRuby 9.3.0.0 milestone Jun 4, 2021
@headius
Copy link
Member

headius commented Jun 4, 2021

Have these changes been merged into Ruby 2.6? We generally try to match their standard library exactly and not go beyond it.

@ahorek
Copy link
Contributor Author

ahorek commented Jun 5, 2021

changes like ruby/net-smtp#4 ruby/net-smtp#21 were already merged, but they weren't backported to 2.6.

here's a ruby ticket that tracks the promotion to bundled gems https://bugs.ruby-lang.org/issues/17873

not go beyond it.

I have to admit there's a compatibility concern here, even if I didn't found any issue that could break puma or something like that. We should probably wait with this until JRuby 9.4, but the good part is we know what works, what's missing, and what needs to be done to make this happen.

Could you open a few issues on JRuby and those libraries to get the process moving?

there are already open issues
1/ jOpenSSL APIs, jruby/jruby-openssl#112
2/ Digest, ruby/digest#20
3/ SSLSocket#session=, and there's also this change 12082fd

and release all gems (I think it won't happen before the Ruby 3.1 release, but maybe Ruby maintainers will be willing to do so sooner)

I'm really looking forward to finally address http://blog.headius.com/2008/02/ruby-threadraise-threadkill-timeoutrb.html after 13 years :)

@headius
Copy link
Member

headius commented Jun 7, 2021

Agreed on all points, thanks for the links to the key open issues. We will get 9.2.18 out today, then wrap up 9.3 by end of month, and then start the heavy lifting to bring 9.4 in line with Ruby 3.0 including these troublesome gems.

@headius headius modified the milestones: JRuby 9.3.0.0, JRuby 9.4.0.0 Jun 7, 2021
@headius
Copy link
Member

headius commented Sep 2, 2021

There is a mild update of net libraries in #6802, to align them with Ruby 2.6.8.

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

Successfully merging this pull request may close these issues.

2 participants