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

Unimplemented Ruby 2.5 Features #5118

Closed
6 of 12 tasks
headius opened this issue Mar 27, 2018 · 3 comments
Closed
6 of 12 tasks

Unimplemented Ruby 2.5 Features #5118

headius opened this issue Mar 27, 2018 · 3 comments
Milestone

Comments

@headius
Copy link
Member

headius commented Mar 27, 2018

This bug tracks the remaining items from CRuby 2.5's NEWS file that we have not yet implemented in JRuby.

This issue will track Ruby 2.5 support for JRuby. This will be released in JRuby 9.3.0.0 or JRuby 10.

As with previous releases, we will base our checklist on MRI's NEWS file: https://github.com/ruby/ruby/blob/trunk/NEWS
This bug will track all NEWS items new in Ruby 2.5. This list is based off https://github.com/ruby/ruby/blob/trunk/NEWS.

Only changes relevant to JRuby are listed here. MRI-specific internal changes and features are not included.

Language changes

Core classes updates (outstanding ones only)

File

  • :newline option to File.open implies text mode now. Bug #13350

IO

Process

  • Precision of Process.times is improved if getrusage(2) exists. Feature #11952

Range

  • Range#initialize no longer rescue exceptions when comparing begin and
    end with #<=> and raise a "bad value for range" ArgumentError
    but instead let the exception from the #<=> call go through.
    Feature #7688

Regexp

Compatibility issues (excluding feature bug fixes)

BasicSocket

  • BasicSocket#read_nonblock and BasicSocket#write_nonblock no longer sets the O_NONBLOCK file description flag as side effect (on Linux only) Feature #13362

Implementation improvements

(Probably not JRuby-relevant.)

  • This might not be a "user visible feature change" but) Hash class's
    hash function is now SipHash13. Feature #13017
  • SecureRandom now prefers OS-provided sources than OpenSSL. Bug #9569
  • Mutex rewritten to be smaller and faster Feature #13517
  • Performance of block passing using block parameters is improved by lazy Proc allocation Feature #14045
  • Dynamic instrumentation for TracePoint hooks instead of using "trace" instruction to avoid overhead Feature #14104

Miscellaneous changes

@headius headius added this to the JRuby 9.2.0.0 milestone Mar 27, 2018
@headius
Copy link
Member Author

headius commented Mar 27, 2018

Marking for 9.2 optimistically, but some parts of this will obviously slip.

@headius
Copy link
Member Author

headius commented Mar 27, 2018

Link #4876, #4875

@headius headius mentioned this issue Mar 27, 2018
15 tasks
headius added a commit that referenced this issue Mar 30, 2018
:newline option to File.open implies text mode now. (Part of #5118)
@enebo enebo modified the milestones: JRuby 9.2.0.0, JRuby 9.2.1.0 May 24, 2018
@headius headius modified the milestones: JRuby 9.2.1.0, JRuby 9.2.2.0 Oct 26, 2018
@enebo enebo modified the milestones: JRuby 9.2.5.0, JRuby 9.2.6.0 Dec 6, 2018
@enebo enebo modified the milestones: JRuby 9.2.6.0, JRuby 9.2.7.0 Dec 19, 2018
@enebo enebo modified the milestones: JRuby 9.2.7.0, JRuby 9.2.8.0 Jan 9, 2019
@headius headius modified the milestones: JRuby 9.2.8.0, JRuby 9.3.0.0 Aug 6, 2019
@headius headius modified the milestones: JRuby 9.3.0.0, Non-Release Aug 6, 2019
@headius
Copy link
Member Author

headius commented Aug 6, 2019

Most of these were done, and others are not relevant or very low priority.

#5510 covers backward traces. Additional formatting will come along with that.

#5816 covers the missing pread and pwrite.

#5817 covers the missing :newline keyword for File.open.

The nonblock changes are not relevant to JRuby on JDK since we can't specify MSG_DONTWAIT.

Process.times resolution is limited to what the JDK provides us; calling down to native would moot the purpose of calling a more accurate API.

@headius headius closed this as completed Aug 6, 2019
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

2 participants