|
| 1 | +--- |
| 2 | +layout: post |
| 3 | +title: JRuby 9.4.2.0 Released |
| 4 | +--- |
| 5 | + |
| 6 | +The JRuby community is pleased to announce the release of JRuby 9.4.2.0. |
| 7 | + |
| 8 | +* Homepage: [https://www.jruby.org/](https://www.jruby.org/) |
| 9 | +* Download: [https://www.jruby.org/download](https://www.jruby.org/download) |
| 10 | + |
| 11 | +JRuby 9.4.x targets Ruby 3.1 compatibility. |
| 12 | + |
| 13 | +Thank you to our contributors this release, you help keep JRuby moving forward! [@k77ch7], [@andsel] |
| 14 | + |
| 15 | +Ruby Compatibility |
| 16 | +------------------ |
| 17 | + |
| 18 | +* ```__callee__``` now properly returns the name under which a method was called, which will be the new name in the case of aliased methods. [#2305], [#7702] |
| 19 | +* More use cases for keyword arguments have been fixed to behave correctly and avoid extraneous warnings. [#7637], [#7645], [#7657], [#7658], [#7670], [#7672], [#7686] |
| 20 | +* Array#pack now supports more cases, passing nearly all specs. [#7663] |
| 21 | +* Compatibility with CRuby's command-line arguments has been improved. [#7678], [#7680], [#7681], [#7681], [#7683], [#7684] |
| 22 | + |
| 23 | +Standard Library |
| 24 | +---------------- |
| 25 | + |
| 26 | +* irb is updated to 1.4.2. [#7690], [#7691] |
| 27 | +* open-uri is updated to 0.3.0. [#7701] |
| 28 | +* io-wait is updated to 0.3.0. [#7701] |
| 29 | +* stringio is updated to 3.0.5. [#7701] |
| 30 | +* strscan is updated to 3.0.6. [#7701] |
| 31 | +* open3 is switched to using the gem at 0.1.2. [#7701] |
| 32 | + |
| 33 | +Platform Support |
| 34 | +---------------- |
| 35 | + |
| 36 | +* Exception backtraces now default to color output when the controlling terminal is a TTY. Disable using `-Xbacktrace.color=false` or equivalent in .jrubyrc. [#7693] |
| 37 | + |
| 38 | +Performance |
| 39 | +----------- |
| 40 | + |
| 41 | +* String#split has been optimized to skip regular expression use for simple split expressions. Simple ASCII strings also split faster. [#7629] |
| 42 | + |
| 43 | +54 Github Issues resolved for 9.4.2.0 |
| 44 | +------------------------------------- |
| 45 | + |
| 46 | +- [#2305 - ```__callee__``` behaves differently from MRI](https://github.com/jruby/jruby/issues/2305) |
| 47 | +- [#7477 - `Integer#chr(encoding: Encoding::UTF_8)` raises a different `RangeError` exception message than on CRuby](https://github.com/jruby/jruby/issues/7477) |
| 48 | +- [#7480 - Cannot call `SubClass#initialize_copy` with an object created from the super class](https://github.com/jruby/jruby/issues/7480) |
| 49 | +- [#7615 - opt != for fixnum in JIT/indy](https://github.com/jruby/jruby/pull/7615) |
| 50 | +- [#7629 - Split opts](https://github.com/jruby/jruby/pull/7629) |
| 51 | +- [#7637 - 9.4.1.0: Wrong number of arguments with kwargs when subclassing a java class ](https://github.com/jruby/jruby/issues/7637) |
| 52 | +- [#7639 - Typing @ into irb in 9.4.1.0 crashes it](https://github.com/jruby/jruby/issues/7639) |
| 53 | +- [#7641 - "Port already in use" errors when configuring remote JMX in 9.4](https://github.com/jruby/jruby/issues/7641) |
| 54 | +- [#7642 - [9.4.1.0] ArrayIndexOutOfBoundsException](https://github.com/jruby/jruby/issues/7642) |
| 55 | +- [#7643 - Use SmartBinder to set up struct calls](https://github.com/jruby/jruby/pull/7643) |
| 56 | +- [#7645 - Fixes #7637. Arity error with kwargs when subclassing a java class](https://github.com/jruby/jruby/pull/7645) |
| 57 | +- [#7650 - BigDecimal arithmetic regression [jruby-9.4]](https://github.com/jruby/jruby/issues/7650) |
| 58 | +- [#7652 - Fix Float#to_d of bigdecimal/util](https://github.com/jruby/jruby/pull/7652) |
| 59 | +- [#7653 - Fix Struct#values_at when passed an integer Range argument for edge cases](https://github.com/jruby/jruby/pull/7653) |
| 60 | +- [#7655 - JIT coverage fixes](https://github.com/jruby/jruby/pull/7655) |
| 61 | +- [#7656 - Regression: Class variables in top level methods broken compared to MRI & 9.3](https://github.com/jruby/jruby/issues/7656) |
| 62 | +- [#7657 - Pattern matching unexpectedly raises "duplicated key name" error](https://github.com/jruby/jruby/issues/7657) |
| 63 | +- [#7658 - remove deplicated key name error](https://github.com/jruby/jruby/pull/7658) |
| 64 | +- [#7659 - Fix for #7656.](https://github.com/jruby/jruby/pull/7659) |
| 65 | +- [#7662 - END blocks had regressed and was calling same block >1](https://github.com/jruby/jruby/pull/7662) |
| 66 | +- [#7663 - Array#pack unknown directive warns](https://github.com/jruby/jruby/pull/7663) |
| 67 | +- [#7664 - All these work?](https://github.com/jruby/jruby/pull/7664) |
| 68 | +- [#7665 - Arity errors for 'call' things in Signal#trap](https://github.com/jruby/jruby/pull/7665) |
| 69 | +- [#7666 - Array#new size boundary error not tripping](https://github.com/jruby/jruby/pull/7666) |
| 70 | +- [#7667 - Kernel#respond_to? return wrong error string but right error.](https://github.com/jruby/jruby/pull/7667) |
| 71 | +- [#7668 - Array#to_s/inspect should be same method](https://github.com/jruby/jruby/pull/7668) |
| 72 | +- [#7669 - Proc#inspect with &:foo should print that out in str](https://github.com/jruby/jruby/pull/7669) |
| 73 | +- [#7670 - Probably method_missing is not handling keyword arguments properly [jruby-9.4.1.0]](https://github.com/jruby/jruby/issues/7670) |
| 74 | +- [#7671 - Binding local_variables makes sure they are lvars](https://github.com/jruby/jruby/pull/7671) |
| 75 | +- [#7672 - jruby-9.4.1.0 issues warning about duplicated keys](https://github.com/jruby/jruby/issues/7672) |
| 76 | +- [#7674 - Fix #7672. warning about duplicated keys](https://github.com/jruby/jruby/pull/7674) |
| 77 | +- [#7675 - JIT loses line numbers in some warnings?](https://github.com/jruby/jruby/issues/7675) |
| 78 | +- [#7678 - Add --encoding command line option.](https://github.com/jruby/jruby/pull/7678) |
| 79 | +- [#7679 - Spec sweep](https://github.com/jruby/jruby/pull/7679) |
| 80 | +- [#7680 - disabling RUBYOPT processing was not hooked up.](https://github.com/jruby/jruby/pull/7680) |
| 81 | +- [#7681 - Frozen string debugging off by one.](https://github.com/jruby/jruby/pull/7681) |
| 82 | +- [#7682 - The -p command line should use print and not puts.](https://github.com/jruby/jruby/pull/7682) |
| 83 | +- [#7683 - All -I provided relative paths shold be made absolute](https://github.com/jruby/jruby/pull/7683) |
| 84 | +- [#7684 - Fixed windowsJ encoding and do not set on invalid K values](https://github.com/jruby/jruby/pull/7684) |
| 85 | +- [#7685 - Add a warn form that takes a callback](https://github.com/jruby/jruby/pull/7685) |
| 86 | +- [#7686 - Fix #7670. Coverage data goes off the rails.](https://github.com/jruby/jruby/pull/7686) |
| 87 | +- [#7687 - Passing specs](https://github.com/jruby/jruby/pull/7687) |
| 88 | +- [#7690 - Update `irb` to version `1.4.2+`](https://github.com/jruby/jruby/issues/7690) |
| 89 | +- [#7691 - Updates irb to 1.4.2](https://github.com/jruby/jruby/pull/7691) |
| 90 | +- [#7693 - Enable color if console is a tty](https://github.com/jruby/jruby/pull/7693) |
| 91 | +- [#7694 - Mimic CRuby's range error logic for chr](https://github.com/jruby/jruby/pull/7694) |
| 92 | +- [#7696 - Make coderange set on strings created from some IO ops](https://github.com/jruby/jruby/pull/7696) |
| 93 | +- [#7700 - Define real error methods to avoid callee](https://github.com/jruby/jruby/pull/7700) |
| 94 | +- [#7701 - Update gems](https://github.com/jruby/jruby/pull/7701) |
| 95 | +- [#7702 - Encode new and old name in aliased calls](https://github.com/jruby/jruby/pull/7702) |
| 96 | +- [#7708 - Enumerator.new takes at most one arg](https://github.com/jruby/jruby/issues/7708) |
| 97 | +- [#7709 - Eliminate 2- and 3-arity paths for Enumerator#initialize](https://github.com/jruby/jruby/pull/7709) |
| 98 | +- [#7715 - We were quoting symbols in inspect we shouldnt have](https://github.com/jruby/jruby/pull/7715) |
| 99 | +- [#7716 - Add infra to support Ruby 3.1 pattern error messages.](https://github.com/jruby/jruby/pull/7716) |
| 100 | + |
| 101 | +[@k77ch7]:https://github.com/k77ch7 |
| 102 | +[@andsel]:https://github.com/andsel |
| 103 | +[#2305]:https://github.com/jruby/jruby/issues/2305 |
| 104 | +[#7477]:https://github.com/jruby/jruby/issues/7477 |
| 105 | +[#7480]:https://github.com/jruby/jruby/issues/7480 |
| 106 | +[#7615]:https://github.com/jruby/jruby/pull/7615 |
| 107 | +[#7629]:https://github.com/jruby/jruby/pull/7629 |
| 108 | +[#7637]:https://github.com/jruby/jruby/issues/7637 |
| 109 | +[#7639]:https://github.com/jruby/jruby/issues/7639 |
| 110 | +[#7641]:https://github.com/jruby/jruby/issues/7641 |
| 111 | +[#7642]:https://github.com/jruby/jruby/issues/7642 |
| 112 | +[#7643]:https://github.com/jruby/jruby/pull/7643 |
| 113 | +[#7645]:https://github.com/jruby/jruby/pull/7645 |
| 114 | +[#7650]:https://github.com/jruby/jruby/issues/7650 |
| 115 | +[#7652]:https://github.com/jruby/jruby/pull/7652 |
| 116 | +[#7653]:https://github.com/jruby/jruby/pull/7653 |
| 117 | +[#7655]:https://github.com/jruby/jruby/pull/7655 |
| 118 | +[#7656]:https://github.com/jruby/jruby/issues/7656 |
| 119 | +[#7657]:https://github.com/jruby/jruby/issues/7657 |
| 120 | +[#7658]:https://github.com/jruby/jruby/pull/7658 |
| 121 | +[#7659]:https://github.com/jruby/jruby/pull/7659 |
| 122 | +[#7662]:https://github.com/jruby/jruby/pull/7662 |
| 123 | +[#7663]:https://github.com/jruby/jruby/pull/7663 |
| 124 | +[#7664]:https://github.com/jruby/jruby/pull/7664 |
| 125 | +[#7665]:https://github.com/jruby/jruby/pull/7665 |
| 126 | +[#7666]:https://github.com/jruby/jruby/pull/7666 |
| 127 | +[#7667]:https://github.com/jruby/jruby/pull/7667 |
| 128 | +[#7668]:https://github.com/jruby/jruby/pull/7668 |
| 129 | +[#7669]:https://github.com/jruby/jruby/pull/7669 |
| 130 | +[#7670]:https://github.com/jruby/jruby/issues/7670 |
| 131 | +[#7671]:https://github.com/jruby/jruby/pull/7671 |
| 132 | +[#7672]:https://github.com/jruby/jruby/issues/7672 |
| 133 | +[#7674]:https://github.com/jruby/jruby/pull/7674 |
| 134 | +[#7675]:https://github.com/jruby/jruby/issues/7675 |
| 135 | +[#7678]:https://github.com/jruby/jruby/pull/7678 |
| 136 | +[#7679]:https://github.com/jruby/jruby/pull/7679 |
| 137 | +[#7680]:https://github.com/jruby/jruby/pull/7680 |
| 138 | +[#7681]:https://github.com/jruby/jruby/pull/7681 |
| 139 | +[#7682]:https://github.com/jruby/jruby/pull/7682 |
| 140 | +[#7683]:https://github.com/jruby/jruby/pull/7683 |
| 141 | +[#7684]:https://github.com/jruby/jruby/pull/7684 |
| 142 | +[#7685]:https://github.com/jruby/jruby/pull/7685 |
| 143 | +[#7686]:https://github.com/jruby/jruby/pull/7686 |
| 144 | +[#7687]:https://github.com/jruby/jruby/pull/7687 |
| 145 | +[#7690]:https://github.com/jruby/jruby/issues/7690 |
| 146 | +[#7691]:https://github.com/jruby/jruby/pull/7691 |
| 147 | +[#7693]:https://github.com/jruby/jruby/pull/7693 |
| 148 | +[#7694]:https://github.com/jruby/jruby/pull/7694 |
| 149 | +[#7696]:https://github.com/jruby/jruby/pull/7696 |
| 150 | +[#7700]:https://github.com/jruby/jruby/pull/7700 |
| 151 | +[#7701]:https://github.com/jruby/jruby/pull/7701 |
| 152 | +[#7702]:https://github.com/jruby/jruby/pull/7702 |
| 153 | +[#7708]:https://github.com/jruby/jruby/issues/7708 |
| 154 | +[#7709]:https://github.com/jruby/jruby/pull/7709 |
| 155 | +[#7715]:https://github.com/jruby/jruby/pull/7715 |
| 156 | +[#7716]:https://github.com/jruby/jruby/pull/7716 |
0 commit comments