Ruby 2.4 support #4293
Closed
Ruby 2.4 support #4293
Labels
Milestone
Comments
This was referenced Nov 14, 2016
Which of these should be implemented in ruby? |
Merged
@ianks Any that make sense! Obviously some things, like potential Hash optimizations, would have to be in Java, but many of these features would be just fine in Ruby. See https://github.com/jruby/jruby/tree/master/core/src/main/ruby/jruby/kernel. |
Merged
Closed
Note that for |
headius
added a commit
that referenced
this issue
Jun 26, 2017
headius
added a commit
that referenced
this issue
Jun 26, 2017
headius
added a commit
that referenced
this issue
Jun 26, 2017
headius
added a commit
that referenced
this issue
Jun 26, 2017
headius
added a commit
that referenced
this issue
Jun 26, 2017
headius
added a commit
that referenced
this issue
Jun 26, 2017
headius
added a commit
that referenced
this issue
Jun 26, 2017
headius
added a commit
that referenced
this issue
Jun 26, 2017
This is a partial impl since we do not have the actual original call type available when the exception is created.
headius
added a commit
that referenced
this issue
Jun 26, 2017
headius
added a commit
that referenced
this issue
Jun 26, 2017
headius
added a commit
that referenced
this issue
Jun 27, 2017
* coerceBin should not recursion check * RubyFixnum's old override of quo is deleted For #4293.
This was referenced Jul 7, 2017
This was referenced Jul 31, 2017
headius
added a commit
that referenced
this issue
Aug 28, 2017
Unless there are late-breaking additions, I think this is what we're settling on for 2.4 support in the initial JRuby 9.2 release. We'll continue to track missing 2.4 features at #4687 and related issues. |
headius
added a commit
that referenced
this issue
Oct 18, 2017
headius
added a commit
that referenced
this issue
Oct 18, 2017
headius
added a commit
that referenced
this issue
Oct 18, 2017
* coerceBin should not recursion check * RubyFixnum's old override of quo is deleted For #4293.
headius
added a commit
that referenced
this issue
Oct 18, 2017
headius
added a commit
that referenced
this issue
Oct 18, 2017
Closed
Closed
This was referenced Apr 16, 2018
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This bug will track all NEWS items new in Ruby 2.4. 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.
NOTE: Pull requests should be done against the
ruby-2.4
branch.Language changes
Multiple assignment in conditional expression is now allowed. Feature #10617
Refinements is enabled at method by Symbol#to_proc. Feature #9451
Refinements is enabled with Kernel#send and BasicObject#__send__. Feature #11476
Rescue modifier now applicable to method arguments. Feature #12686
Toplevel return is now allowed. Feature #4840
Core classes updates (outstanding ones only)
Array
Array#max and Array#min. Feature #12172
Array#sum Feature #12217
Array#concat Feature #12333
Array#pack now takes optional argument
buffer:
to reuse an already-allocated buffer. Feature #12217Comparable
Dir
Enumerable
Enumerator::Lazy
File
Float
Float#ceil, Float#floor, and Float#truncate now take an optional digits, as well as Float#round. Feature #12245
Float#round now takes an optional keyword argument, half option, and
the default behavior is round-up. Bug #12548 Bug #12958
half option can be one of :even, :up, and :down. Feature #12953
Hash
Integer
Integer#ceil, Integer#floor, and Integer#truncate now take an optional digits, as well as Integer#round. Feature #12245
Fixnum and Bignum are unified into Integer Feature #12005
Integer#digits for extracting columns of place-value notation Feature #12447
Integer#round now takes an optional keyword argument, half option, and
the default behavior is round-up. Bug #12548 Bug #12958
half option can be one of :even, :up, and :down. Feature #12953
IO
Kernel
MatchData
Module
Numeric
Process
Rational
the default behavior is round-up. Bug #12548 Bug #12958
half option can be one of :even, :up, and :down. Feature #12953
Regexp
Regexp/String: Updated Unicode version from 8.0.0 to 9.0.0 Feature #12513
String
String#upcase, String#downcase, String#capitalize, String#swapcase and their bang variants work for all of Unicode, and are no longer limited to ASCII. Supported encodings are UTF-8, UTF-16BE/LE, UTF-32BE/LE, and ISO-8859-1~16. Variations are available with options. See the documentation of String#downcase for details. Feature #10085
String.new(capacity: size) Feature #12024
String#concat, String#prepend Feature #12333 Now takes multiple arguments.
String#unpack1 Feature #12752
String#match? Feature #12898
String#each_line, String#lines now takes an optional keyword argument, chomp flag. Feature #12553
String#concat, String#prepend now take multiple arguments Feature #12333
String#casecmp? Feature #12786
StringIO
Symbol
Symbol#match now returns MatchData. Bug #11991
Symbol#upcase, Symbol#downcase, Symbol#capitalize, and Symbol#swapcase now work for all of Unicode. See the documentation of String#downcase for details. Feature #10085
Symbol#match? Feature #12898
Symbol#casecmp? Feature #12786
Thread
TracePoint
Warning
Stdlib updates (only items that need specific attention in JRuby)
pathname
Readline
Compatibility issues (excluding feature bug fixes)
Array#sum and Enumerable#sum are implemented. Feature #12217
Fixnum and Bignum are unified into Integer Feature #12005
String/Symbol#upcase/downcase/swapcase/capitalize(!) now work for all of Unicode, not only for ASCII. Feature #10085
TRUE / FALSE / NIL These constants are now obsoleted. Feature #12574
Stdlib compatibility issues (excluding feature bug fixes)
DateTime
Psych
RDoc
RubyGems
Time
thread
Zlib
Implementation improvements
In some condition,
[x, y].max
and[x, y].min
are optimized so that a temporal array is not created. The concrete condition is an implementation detail: currently, the array literal must have no splat, must have at least one expression but literal, the length must be <= 0x100, and Array#max and min must not be redefined. It will work in most casual and real-life use case where it is written with intent toMath.max(x, y)
.Thread deadlock detection now shows their backtrace and dependency. Feature #8214
st_table (st.c) internal data structure is improved. Feature #12142
Rational is extensively optimized. Feature #12484
The text was updated successfully, but these errors were encountered: