3.5.0-preview1
Pre-release
Pre-release
What's Changed
- Feature #20884: reserve "Ruby" toplevel module for Ruby language - Ruby - Ruby Issue Tracking System
- Bug #20981: rb_undefine_finalizer is missing - Ruby - Ruby Issue Tracking System
- Bug #20982: Inconsistency between Hash#inspect and ENV.inspect in Ruby 3.4 - Ruby - Ruby Issue Tracking System
- Bug #20986: Bug in Prism parser with
?\C- Ruby - Ruby Issue Tracking System - Bug #20989: Segmentation fault in Ripper when lexing
/#{"\xcd"}/- Ruby - Ruby Issue Tracking System - Bug #20990: Ripper.tokenize splits
"\C-\あ"into tokens with invalid byte sequence - Ruby - Ruby Issue Tracking System - Bug #20988: String literal that includes
\C-\M-with\111wrongly parsed - Ruby - Ruby Issue Tracking System - Bug #20992:
eval(ascii_encoded_code)raises EncodingError when multibyte local variable exists - Ruby - Ruby Issue Tracking System - Bug #20995: exception escapes block given to IO.popen("-") in child process - Ruby - Ruby Issue Tracking System
- Remove and stop syncing IRB documentation by st0012 · Pull Request #12416
- Bug #20504: Interpolated string literal in regexp encoding handling - Ruby - Ruby Issue Tracking System
- Bug #21004: Memory leak with
new_locations_lambda_body- Ruby - Ruby Issue Tracking System - Sync IRB to 3e6c12b by st0012 · Pull Request #12486
- [DOC] Tweaks for Hash.new by BurdetteLamar · Pull Request #12503
- Bug #21003: unexpected warning about ignored block - Ruby - Ruby Issue Tracking System
- Bug #21002: Please include license information of turbo_tests - Ruby - Ruby Issue Tracking System
- Launchable: Exit 0 not to stop CI pipeline by ono-max · Pull Request #12449
- Bug #21001: unexpected nil result from proc with ensure and next - Ruby - Ruby Issue Tracking System
- Bug #21006:
defined?((receiver).method)raises Stack consistency error - Ruby - Ruby Issue Tracking System - Bug #21008: Array#sum, Enumerator#sum, Numeric subclass - Ruby - Ruby Issue Tracking System
- Bug #21014: Prism doesn't set node_id on iseqs correctly - Ruby - Ruby Issue Tracking System
- Bug #21011: Constant massign segfaults in parse.y with shareable_constant_value: experimental_everything - Ruby - Ruby Issue Tracking System
- Bug #21017:
--with-parser=parse.yconfigure option does not work - Ruby - Ruby Issue Tracking System - Bug #21012: Compiling
a['a','b'],=1with parse.y fails - Ruby - Ruby Issue Tracking System - Bug #20997: YJIT panic assertion
left == rightfailed: leave instruction expects stack size 1, but was: 2 - Ruby - Ruby Issue Tracking System - [DOC] Show
NONEwithinMeasurenamespace by havenwood · Pull Request #12274 - Bug #21018: Show invalid command line option more properly - Ruby - Ruby Issue Tracking System
- Feature #6012: Proc#source_location also return the column - Ruby - Ruby Issue Tracking System
- [DOC] Use Hash inspect without hash-rocket in Hash documentation by p8 · Pull Request #12540
- Bug #20489: Ractor behavior strange in ruby master - Ruby - Ruby Issue Tracking System
- Misc #21025: What's the default encoding of
String.new? - Ruby - Ruby Issue Tracking System - Bug #21024: Ruby including generates compilation warning with GCC 15, header is deprecated in C++17, - Ruby - Ruby Issue Tracking System
- Bug #21010: Endless method definition of
[]=is SyntaxError in parse.y but allowed in Prism - Ruby - Ruby Issue Tracking System - Bug #21027:
not()receiver should benil- Ruby - Ruby Issue Tracking System - Bug #21030: Bug: #step with RangeActiveSupport::Duration behavior broken on Ruby 3.4.1 - Ruby - Ruby Issue Tracking System
- Bug #20974: Required and optional anonymous parameter show differently in Proc#parameters - Ruby - Ruby Issue Tracking System
- Bug #20972: OpenSSL Memory Usage - Ruby - Ruby Issue Tracking System
- Bug #20955: Subtle differences with Proc#parameters for anonymous parameters - Ruby - Ruby Issue Tracking System
- Bug #21031: Incompatibility with prism and parse.y when eval'ing unnamed forwarding variables - Ruby - Ruby Issue Tracking System
- Bug #21038: Preserve
errnoinrb_fiber_scheduler_unblock- Ruby - Ruby Issue Tracking System - Bug #21044: Prism maximum recursion depth is 1_000, parse.y is 10_000 - Ruby - Ruby Issue Tracking System
- Bug #21043: Prism defined? has slight deviations from parse.y - Ruby - Ruby Issue Tracking System
- Bug #21085: [BUG] Stack consistency error with -ne - Ruby - Ruby Issue Tracking System
- Bug #21048: [Prism] rescue in modifier form with condition behaves differently - Ruby - Ruby Issue Tracking System
- Launchable: Enable PTS observation mode by ono-max · Pull Request #12617
- Prefer
uname -noverhostname. by ioquatix · Pull Request #12647 - Add fallback for
hostnameifunameisn't available. by ioquatix · Pull Request #12655 - Bug #21021: "try to mark T_NONE object" with 3.4.1 - Ruby - Ruby Issue Tracking System
- Launchable: Use Zero Input Subsetting by ono-max · Pull Request #12650
- [DOC] Fix wrong call-seq format by tompng · Pull Request #12662
- Ensure that memory is not freed before calling
free_fast_fallback_getaddrinfo_*by shioimm · Pull Request #12661 - Feature #20470: Extract Ruby's Garbage Collector - Ruby - Ruby Issue Tracking System
- Bug #21092: error building ruby 3.4.1 on cygwin/msys2 - Ruby - Ruby Issue Tracking System
- Bug #21099: TestGc#test_gc_stress_at_startup assertion failure - Ruby - Ruby Issue Tracking System
- Feature #19521: Support for
Module#name=andClass#name=. - Ruby - Ruby Issue Tracking System - Bug #21103: Binding problem with delegate methods - Ruby - Ruby Issue Tracking System
- Bug #21106: The last iteration of the rb_ary_shuffle_bang function is useless - Ruby - Ruby Issue Tracking System
- Add sleep to PTY tests to stabilize flaky failures by ono-max · Pull Request #12691
- Bug #21088: TCPSocket.new raises Socket::ResolutionError instead of Errno::ECONNREFUSED for hosts defined in /etc/hosts - Ruby - Ruby Issue Tracking System
- Move out from quarantine a Marshal.dump spec for Float by andrykonchin · Pull Request #12692
- Bug #21112: Typo in error message when an incorrect key is used with WeakKeyMap - Ruby - Ruby Issue Tracking System
- Launchable: Fix broken links by passing GITHUB_SERVER_URL by ono-max · Pull Request #12704
- Simplified to find gemspecs for bundled gems by hsbt · Pull Request #12709
- Launchable: Add a workflow name as a flavor by ono-max · Pull Request #12720
- [DOC] Tweaks for Hash#clear by BurdetteLamar · Pull Request #12727
- [DOC] Tweaks for Hash#assoc by BurdetteLamar · Pull Request #12726
- [DOC] Adds section "Hash Inclusion" by BurdetteLamar · Pull Request #12634
- Feature #21116: Extract RJIT as a third-party gem - Ruby - Ruby Issue Tracking System
- Bug #21114: Prism hangs up while parsing deeply nested
def- Ruby - Ruby Issue Tracking System - Bug #21117: Inconsistent behaviour between "_1" and "it" variables - Ruby - Ruby Issue Tracking System
- Bug #21127: Thread deadlock does not display backtraces - Ruby - Ruby Issue Tracking System
- Bug #21137: Compound assignment operator with "it" parsed differently between parse.y and prism - Ruby - Ruby Issue Tracking System
- [DOC] Tweaks for Hash#[]= by BurdetteLamar · Pull Request #12695
- Bug #21128: dir.c defines O_CLOEXEC before it is defined by the system. - Ruby - Ruby Issue Tracking System
- [DOC] Tweaks for Hash#compact! by BurdetteLamar · Pull Request #12756
- Bug #21145: Prism accepts newlines in-between curly unicode escape - Ruby - Ruby Issue Tracking System
- Bug #20965:
itvsbinding.local_variables- Ruby - Ruby Issue Tracking System - Tweak: Add prefix to non-static function names by shioimm · Pull Request #12764
- Launchable: Remove unused file names by ono-max · Pull Request #12782
- Bug #21131: IO.copy_stream: yielded string changes value when duped - Ruby - Ruby Issue Tracking System
- Bug #21144: Win32: Use Windows time zone ID as the time zone name if TZ is not set - Ruby - Ruby Issue Tracking System
- Bug #21150: Segfault in MacOS libunwind (c backtrace info) when called from a ractor - Ruby - Ruby Issue Tracking System
- Bug #21153: ::Foo ||= p 1 should parse - Ruby - Ruby Issue Tracking System
- Bug #17507: Regexp capture groups ignored sometimes in some multithreaded environments (possible race condition) - Ruby - Ruby Issue Tracking System
- Prefer
0.000001over0.000001ffor timeout calculations. by ioquatix · Pull Request #12803 - Launchable: Fix
launchable record sessioncommand failures by ono-max · Pull Request #12810 - Bug #21159:
Module#set_temporary_nameshould freeze given name - Ruby - Ruby Issue Tracking System - [Misc #20661] Stop retrying tests in
make test-allcommand by default by ono-max · Pull Request #11271 - Increase timeout in TestParallel testing to reduce flaky failures by ono-max · Pull Request #12822
- Bug #21161: Crash when locale is set to Turkish tr_TR.UTF-8 - Ruby - Ruby Issue Tracking System
- Increase timeouts in Compilations actions to reduce intermittent failures by ono-max · Pull Request #12827
- Bug #20682: Slave PTY output is lost after a child process exits in macOS - Ruby - Ruby Issue Tracking System
- Bug #21165: 引数なしで起動するとSegmentatino Fault - Ruby - Ruby Issue Tracking System
- Allow YJIT
mem-sizeandcall-thresholdto be set at runtime viaYJIT.enable()by annichai-stripe · Pull Request #12505 - Bug #21172: Race condition in
register_fstring- Ruby - Ruby Issue Tracking System - Bug #21170: Corrupted Hash (bad VALUE and missing entry) when -1 returned from .hash - Ruby - Ruby Issue Tracking System
- Fix flaky failure in TestSetTraceFunc#test_tracepoint_disable by ono-max · Pull Request #12854
- Launchable: Send stdout and stderr by ono-max · Pull Request #12785
- YJIT: Rename get_temp_regs2() back to get_temp_regs() by k0kubun · Pull Request #12866
- Bug #21173: RUBY_FREE_AT_EXIT does not work when error in -r - Ruby - Ruby Issue Tracking System
- Bug #21163: Inconsistencies in Kernel.Float compared to other number parsing methods - Ruby - Ruby Issue Tracking System
- Bug #21174: Range#max called with an argument on a beginless Integer Range raises RangeError - Ruby - Ruby Issue Tracking System
- [DOC] Tweaks for Hash#merge by BurdetteLamar · Pull Request #12825
- Bug #21179: Introduction Happy Eyeballs Version 2 broke
Socket.tcpfrom secondary Ractors - Ruby - Ruby Issue Tracking System - [DOC] Tweaks for Hash#reject by BurdetteLamar · Pull Request #12876
- Bug #21177: Sometimes Ruby can create and delete long paths on Windows, but cannot traverse them - Ruby - Ruby Issue Tracking System
- [DOC] Tweaks for Hash#select by BurdetteLamar · Pull Request #12903
- [DOC] Tweaks for Hash#select! by BurdetteLamar · Pull Request #12904
- Launchable: Disable request retries when a timeout exception occurs by ono-max · Pull Request #12877
- Bug #19841: Marshal.dump stack overflow with recursive Time - Ruby - Ruby Issue Tracking System
- Bug #21180: SEGV while marking
imemo_env->iseq- Ruby - Ruby Issue Tracking System - Feature #20971: Deprecate
rb_path_check- Ruby - Ruby Issue Tracking System - [DOC] Tweaks for Hash#to_h by BurdetteLamar · Pull Request #12918
- Bug #21141:
Time#utc?does not work with a timezone object - Ruby - Ruby Issue Tracking System - Bug #21185: Range#overlap? is not commutative with doubly-unbounded range argument. - Ruby - Ruby Issue Tracking System
- Avoid pinning
storage_headiniseq_mark_and_moveby eileencodes · Pull Request #12880 - Bug #21186: Inconsistent parsing of ?あand 0 - Ruby - Ruby Issue Tracking System
- Allow arguments to be passed through Binding#irb by QWYNG · Pull Request #12796
- Feature #20702: Add
Array#fetch_values- Ruby - Ruby Issue Tracking System - Feature #19908: Update to Unicode 15.1 - Ruby - Ruby Issue Tracking System
- Bug #21094: Module#set_temporary_name does not affect a name of a nested module - Ruby - Ruby Issue Tracking System
- Bug #21029: Prism behavior for
defined? (;x)differs - Ruby - Ruby Issue Tracking System - Bug #21026:
def __FILE__.a; endshould be a syntax error - Ruby - Ruby Issue Tracking System - Bug #21193: Inherited callback returns
nilforObject.const_source_location- Ruby - Ruby Issue Tracking System - Bug #20934:
UnboundMethod#bind_callmay cause "double free or corruption" with Ractor - Ruby - Ruby Issue Tracking System - Bug #21196: Ruby 3.4 ignores visibility when passing arguments using
...- Ruby - Ruby Issue Tracking System - Fix test - wording changed. by ioquatix · Pull Request #12963
- Bug #21195: Crash when using IO#timeout - Ruby - Ruby Issue Tracking System
- Add test for RbConfig Ractor safety by mohamedhafez · Pull Request #11762
- Launchable: Fix CI scripts by adding backslashes by ono-max · Pull Request #12974
- [DOC] Doc for Hash#transform_keys! by BurdetteLamar · Pull Request #12942
- Bug #19372: Proc objects are not traversed for shareable check during Ractor.make_shareable(prok) - Ruby - Ruby Issue Tracking System
- Skip TestThreadInstrumentation#test_sleeping_inside_ractor on ModGC w… by ono-max · Pull Request #12996
- Feature #21109: Want to clarify how $/ is handled in Ractor - Ruby - Ruby Issue Tracking System
- Feature #21047: Change
*nilto not callnil.to_a, for consistency with**nil- Ruby - Ruby Issue Tracking System - Feature #20757: Make rb_tracearg_(parameters|eval_script|instruction_sequence) public C-API - Ruby - Ruby Issue Tracking System
- Bug #21202: Ripper wrongly concats separate tstring_content within nested unterminated heredoc - Ruby - Ruby Issue Tracking System
- Bug #21197: Prism does not accept newline after defined? keyword - Ruby - Ruby Issue Tracking System
- Bug #17506: Ractor isolation broken by ThreadGroup - Ruby - Ruby Issue Tracking System
- Bug #20271: Issue with moving embedded string across ractors - Ruby - Ruby Issue Tracking System
- [DOC] Tweaks for docs about contributing by BurdetteLamar · Pull Request #13012
- Bug #21203: TestGc#test_gc_parameter_init_slots is flaky results - Ruby - Ruby Issue Tracking System
- Bug #21211: Incomplete Backtrace for Socket Errors in Ruby 3.4+ - Ruby - Ruby Issue Tracking System
- Fix the if condition to skip test_ractor.rb correctly by ono-max · Pull Request #13067
- Bug #21217: Integer.sqrt produces wrong results even on input <= 1e18 - Ruby - Ruby Issue Tracking System
- Bug #21214: VmRSS consumption increase in Ruby 3.4.2 vs Ruby 3.3.6 - Ruby - Ruby Issue Tracking System
- Fix lldb debug scripts by eileencodes · Pull Request #13048
- Bug #21220: Memory corruption in update_line_coverage() [write at index -1] - Ruby - Ruby Issue Tracking System
- Fix typos
finised->finishedby haruna-tsujita · Pull Request #13104 - Feature #20877: Introduce (public) debug assertion for holding the GVL. - Ruby - Ruby Issue Tracking System
- Introduce
enum rb_io_mode. by ioquatix · Pull Request #7894 - Bug #21152: Enumerator's #size returned by Range#reverse_each raises an exception for endless Range - Ruby - Ruby Issue Tracking System
- Prefer
th->ecfor stack base/size. by ioquatix · Pull Request #13101 - Only test on known good platforms. by ioquatix · Pull Request #13123
Note: This list is automatically generated by tool/gen-github-release.rb. Because of this, some commits may be missing.