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

Ruby 2.3 support #3479

50 of 58 tasks
headius opened this issue Nov 20, 2015 · 1 comment
50 of 58 tasks

Ruby 2.3 support #3479

headius opened this issue Nov 20, 2015 · 1 comment


Copy link

headius commented Nov 20, 2015

Here's the living checklist of changes needed to support Ruby 2.3.

These changes will go on the 2.3 branch at and then we will merge to master when we're ready to release 2.3 support in JRuby

Pull requests should be made against the ruby-2.3 branch please!

This list is currently based on

Language changes

Core classes updates (outstanding ones only)

Core classes compatibility issues (excluding feature bug fixes)

Stdlib updates (outstanding ones only)

Only items relevant to JRuby

  • Update .rb parts of stdlib to 2.3 (delay until 2.3.0 final, probably) 66570f0
  • Bundle did_you_mean gem Bundle did_you_mean gem #3480
  • Socket
    • Socket#connect_nonblock, Socket#accept_nonblock,
      TCPServer#accept_nonblock, UNIXServer#accept_nonblock,
      BasicSocket#recv_nonblock, BasicSocket#recvmsg_nonblock,
      BasicSocket#sendmsg_nonblock all support exception: false to return
      :wait_readable or :wait_writable symbols instead of raising
      IO::WaitReadable or IO::WaitWritable exceptions (b27a2b0)
    • BasicSocket#recv and BasicSocket#recv_nonblock allow an output
      String buffer argument like IO#read and IO#read_nonblock to reduce
      GC overhead
  • OpenSSL
    • OpenSSL::SSL::SSLSocket#accept_nonblock and
      OpenSSL::SSL::SSLSocket#connect_nonblock supports exception: false.
    • update OpenSSL's .rb parts to match changes in 2.3
    • test & update jruby-openssl to be >= 0.9.13 (to incorporate above updates)
  • Pathname
  • io/wait
    • IO#wait_readable no longer checks FIONREAD, it may be used for
      non-bytestream IO such as listen sockets. (975dcc7 and 64638d0)
  • timeout
    • Object#timeout is now warned as deprecated when called. (a042a39)

Stdlib compatibility issues (excluding feature bug fixes)

Only items relevant to JRuby

@headius headius added this to the JRuby milestone Nov 20, 2015
headius added a commit that referenced this issue Dec 12, 2015
MRI 2.3 optimizes Proc#call to not allocate a stack frame and not
show up in backtraces. In JRuby, we already did not allocate a
frame, so all that was needed was to omit the call from backtrace.


For #3479.
Copy link
Member Author

headius commented Apr 20, 2016

We have completed everything we're likely to finish from this list for 9.1. I've filed #3816 for remaining and late-breaking items from MRI's final 2.3.0 NEWS file.

@headius headius closed this as completed Apr 20, 2016
mkristian pushed a commit to mkristian/jar-dependencies that referenced this issue Oct 24, 2017
The save navigation operator (&.) is supported since Ruby v2.3.0
(JRuby v9.1.0.0, see jruby/jruby#3479).
So these autocorrection would fail for lower versions, like,
which is e.g. used by Travis CI.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet

No branches or pull requests

1 participant