Releases: ruby/ruby
3.3.10
What's Changed
- Backport GH-13617 for s390x by hsbt · Pull Request #13757
- Bug #21402: ruby2_keywords affects methods/procs with post arguments - Ruby - Ruby Issue Tracking System
- Bug #21546:
prefixin ruby.pc is wrong when--enable-load-relative- Ruby - Ruby Issue Tracking System - Bug #21567: Crash when $LOADED_FEATURES is modified during require - Ruby - Ruby Issue Tracking System
- Bug #21561: Wrong encoding for File.dirname result on Windows - Ruby - Ruby Issue Tracking System
- Bug #21611: Ruby 3.4.6 can't be built with GCC 15.2.1 - Ruby - Ruby Issue Tracking System
- Bug #21569: [armv7, musl] SIGBUS in ibf_load_object_float due to unaligned VFP double load when reading IBF - Ruby - Ruby Issue Tracking System
- Bug #21342: Segfault: invalid keeping_mutexes when using Mutex in Thread then Fiber after GC - Ruby - Ruby Issue Tracking System
- Bug #21610: Use ec->interrupt_mask to prevent interrupts. - Ruby - Ruby Issue Tracking System
- Backport post_push.yml workflow to ruby_3_3 by k0kubun · Pull Request #14770
- Backport fetch_changesets to ruby_3_3 by k0kubun · Pull Request #14773
- Bug #21629: Ruby-3.4.7 prints -Wdefault-const-init-field-unsafe warnings on clang / llvm 21 - Ruby - Ruby Issue Tracking System
- post_push.yml: Backport commit-mail to ruby_3_3 by k0kubun · Pull Request #14782
- Bug #21568: Requiring core libraries when already requiring multiple user defined libraries with the same name can error - Ruby - Ruby Issue Tracking System
- Bug #21638: Ractor-local
$DEBUGis not marked - Ruby - Ruby Issue Tracking System
Note: This list is automatically generated by tool/gen-github-release.rb. Because of this, some commits may be missing.
Full Changelog
3.4.7
What's Changed
- Merge URI-1.0.4 for Ruby 3.4 by hsbt · Pull Request #14757
- Bug #21313:
itin rescue/ensure on prism - Ruby - Ruby Issue Tracking System - [3.4] compile.c: Handle anonymous variables in
outer_variable_cmpby byroot · Pull Request #13493 - Bug #21610: Use ec->interrupt_mask to prevent interrupts. - Ruby - Ruby Issue Tracking System
- Bug #21611: Ruby 3.4.6 can't be built with GCC 15.2.1 - Ruby - Ruby Issue Tracking System
- Bug #21342: Segfault: invalid keeping_mutexes when using Mutex in Thread then Fiber after GC - Ruby - Ruby Issue Tracking System
- Bug #21569: [armv7, musl] SIGBUS in ibf_load_object_float due to unaligned VFP double load when reading IBF - Ruby - Ruby Issue Tracking System
- Bug #21568: Requiring core libraries when already requiring multiple user defined libraries with the same name can error - Ruby - Ruby Issue Tracking System
Note: This list is automatically generated by tool/gen-github-release.rb. Because of this, some commits may be missing.
Full Changelog
3.4.6
What's Changed
- Bug #21514: Rust deprecation warning building ruby-3.4.5/yjit/src/codegen.rs - Ruby - Ruby Issue Tracking System
- Bug #21259: The Prism compiler wrongly creates a line number of zero - Ruby - Ruby Issue Tracking System
- Bug #21188: PRISM does not end reading from tty with ^D twice - Ruby - Ruby Issue Tracking System
- Bug #21546:
prefixin ruby.pc is wrong when--enable-load-relative- Ruby - Ruby Issue Tracking System - Bug #21402: ruby2_keywords affects methods/procs with post arguments - Ruby - Ruby Issue Tracking System
- Bug #19417: Regexp \p{Word} and [[:word:]] do not match Unicode Other_Number character - Ruby - Ruby Issue Tracking System
- Bug #21535:
NoMethodErrorbecomesNameErrorwhen using...delegation and method call indirection - Ruby - Ruby Issue Tracking System - YJIT: Add more information to an assert message by k0kubun · Pull Request #14481
- Bug #21567: Crash when $LOADED_FEATURES is modified during require - Ruby - Ruby Issue Tracking System
- Bug #21561: Wrong encoding for File.dirname result on Windows - Ruby - Ruby Issue Tracking System
- Bump Prism version to 1.5.1 by k0kubun · Pull Request #14549
Note: This list is automatically generated by tool/gen-github-release.rb. Because of this, some commits may be missing.
Full Changelog
3.3.9
What's Changed
- Bug #21286: Windows - MSYS2 just updated to GCC 15.1.0, builds failing - Ruby - Ruby Issue Tracking System
- Bug #21220: Memory corruption in update_line_coverage() [write at index -1] - Ruby - Ruby Issue Tracking System
- Bug #21331: heap-use-after-free caused by rehash during transform_values! - Ruby - Ruby Issue Tracking System
- Bug #21327: Windows builds seem broken after clock_gettime changes? - Ruby - Ruby Issue Tracking System
- Bug #21344: Segment Fault Caused by no Backported Patches - Ruby - Ruby Issue Tracking System
- Bug #21257: YJIT can generate infinite loop when OOM - Ruby - Ruby Issue Tracking System
- Bug #21333: heap-use-after-free caused by rehash during update - Ruby - Ruby Issue Tracking System
- Bug #21357: Crash in Hash#merge! with ruby-dev in rubocop-rspec test suite - Ruby - Ruby Issue Tracking System
- Bug #21310: YJIT optimization causes incorrect is_a? method evaluation - Ruby - Ruby Issue Tracking System
- Bug #21354: Symbol#to_proc is not ractor safe - Ruby - Ruby Issue Tracking System
- Bug #21340: Bump autoconf version to properly handle C23 bool/stdbool defines - Ruby - Ruby Issue Tracking System
- Bug #21283: Some tests of TestMkmfConvertible is failing with VS2022 17.14.0 preview 4.0 - Ruby - Ruby Issue Tracking System
- Bug #21255: Can't build Ruby with Windows SDK 10.0.26100 - Ruby - Ruby Issue Tracking System
- Bug #21380: Use-After-Free in String#split with In-Block String Modification - Ruby - Ruby Issue Tracking System
- Bug #21440: Cannot create instances of frozen Data subclasses - Ruby - Ruby Issue Tracking System
- Bug #21437: Date#hash may return different values for equal dates with large years - Ruby - Ruby Issue Tracking System
- Bug #21441: SEGV during thread cleanup if profiler calls thread_profiles_frames at wrong time - Ruby - Ruby Issue Tracking System
- Bug #21438: use-after-free when resizing exivars - Ruby - Ruby Issue Tracking System
- Bug #20009: Marshal.load raises exception when load dumped class include non-ASCII - Ruby - Ruby Issue Tracking System
- Bug #21448: Random.urandom may fail to fall back to reading /dev/urandom on Linux < 3.17 - Ruby - Ruby Issue Tracking System
- Bug #21497: building issue when using gcc15, because C23 is default - Ruby - Ruby Issue Tracking System
- Fix bigand_int edgecase returning false by tompng · Pull Request #13987
Note: This list is automatically generated by tool/gen-github-release.rb. Because of this, some commits may be missing.
Full Changelog
3.2.9
This release includes the following security fixes:
- CVE-2025-24294: Possible Denial of Service in resolv gem
- CVE-2025-43857: DoS vulnerability in net-imap
and the following fixes for build issues:
- GCC 15.1
- Visual Studio 2022 Version 17.14
What's Changed
- Bug #21286: Windows - MSYS2 just updated to GCC 15.1.0, builds failing - Ruby - Ruby Issue Tracking System
- Bug #21255: Can't build Ruby with Windows SDK 10.0.26100 - Ruby - Ruby Issue Tracking System
Note: This list is automatically generated by tool/gen-github-release.rb. Because of this, some commits may be missing.
Full Changelog
3.4.5
What's Changed
- Bug #21340: Bump autoconf version to properly handle C23 bool/stdbool defines - Ruby - Ruby Issue Tracking System
- Sync lockfile from rubygems/rubygems by deivid-rodriguez · Pull Request #13472
- Bug #21438: use-after-free when resizing exivars - Ruby - Ruby Issue Tracking System
- Ensure that memory is not freed before calling
free_fast_fallback_getaddrinfo_*by shioimm · Pull Request #12661 - Fix
heap-use-after-freeinfree_fast_fallback_getaddrinfo_entryby shioimm · Pull Request #13231 - Bug #21441: SEGV during thread cleanup if profiler calls thread_profiles_frames at wrong time - Ruby - Ruby Issue Tracking System
- Bug #21255: Can't build Ruby with Windows SDK 10.0.26100 - Ruby - Ruby Issue Tracking System
- Backport GH-13617 for s390x by hsbt · Pull Request #13757
- Bump up resolv-0.6.2 for Ruby 3.4 by hsbt · Pull Request #13818
- Bug #21197: Prism does not accept newline after defined? keyword - Ruby - Ruby Issue Tracking System
- Bug #21333: heap-use-after-free caused by rehash during update - Ruby - Ruby Issue Tracking System
- Bug #21357: Crash in Hash#merge! with ruby-dev in rubocop-rspec test suite - Ruby - Ruby Issue Tracking System
- Bug #21383: Prism leaks memory with invalid yield - Ruby - Ruby Issue Tracking System
- Bug #21394: Memory leak in Prism's RubyVM::InstructionSequence.new - Ruby - Ruby Issue Tracking System
- Bug #21099: TestGc#test_gc_stress_at_startup assertion failure - Ruby - Ruby Issue Tracking System
- Bug #21395: Please backport caa6ba1a46afa1bc696adc5fe91ee992f9570c89 - Ruby - Ruby Issue Tracking System
- Bug #21439: Crash with PM_SPLAT_NODE compiler error (Prism) - Ruby - Ruby Issue Tracking System
- Bug #21354: Symbol#to_proc is not ractor safe - Ruby - Ruby Issue Tracking System
- Bug #20009: Marshal.load raises exception when load dumped class include non-ASCII - Ruby - Ruby Issue Tracking System
- Bug #21380: Use-After-Free in String#split with In-Block String Modification - Ruby - Ruby Issue Tracking System
- Bug #21447: Fix handling of PM_CONSTANT_PATH_NODE node in keyword arguments with ARGS_SPLAT - Ruby - Ruby Issue Tracking System
- Bug #21448: Random.urandom may fail to fall back to reading /dev/urandom on Linux < 3.17 - Ruby - Ruby Issue Tracking System
- Bug #21440: Cannot create instances of frozen Data subclasses - Ruby - Ruby Issue Tracking System
- Bug #21437: Date#hash may return different values for equal dates with large years - Ruby - Ruby Issue Tracking System
- Bug #21497: building issue when using gcc15, because C23 is default - Ruby - Ruby Issue Tracking System
- Bug #21500: Backport gcc 15 support - Ruby - Ruby Issue Tracking System
Note: This list is automatically generated by tool/gen-github-release.rb. Because of this, some commits may be missing.
Full Changelog
3.4.4
What's Changed
- YJIT: Split the block on optimized getlocal/setlocal by k0kubun · Pull Request #13331
- Bug #21257: YJIT can generate infinite loop when OOM - Ruby - Ruby Issue Tracking System
- Bug #21286: Windows - MSYS2 just updated to GCC 15.1.0, builds failing - Ruby - Ruby Issue Tracking System
- Bug #21327: Windows builds seem broken after clock_gettime changes? - Ruby - Ruby Issue Tracking System
- Bug #21331: heap-use-after-free caused by rehash during transform_values! - Ruby - Ruby Issue Tracking System
- Bug #21289: Fix C level backtraces for USE_ELF - Ruby - Ruby Issue Tracking System
Note: This list is automatically generated by tool/gen-github-release.rb. Because of this, some commits may be missing.
Full Changelog
3.4.3
What's Changed
- Bug #21145: Prism accepts newlines in-between curly unicode escape - Ruby - Ruby Issue Tracking System
- Bug #21153: ::Foo ||= p 1 should parse - Ruby - Ruby Issue Tracking System
- Bug #21030: Bug: #step with
Range<ActiveSupport::Duration>behavior broken on Ruby 3.4.1 - Ruby - Ruby Issue Tracking System - Bug #21131: IO.copy_stream: yielded string changes value when duped - Ruby - Ruby Issue Tracking System
- Feature #19521: Support for
Module#name=andClass#name=. - Ruby - Ruby Issue Tracking System - Bug #21159:
Module#set_temporary_nameshould freeze given name - Ruby - Ruby Issue Tracking System - Bug #21161: Crash when locale is set to Turkish tr_TR.UTF-8 - 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 #21170: Corrupted Hash (bad VALUE and missing entry) when -1 returned from .hash - Ruby - Ruby Issue Tracking System
- Bug #21172: Race condition in
register_fstring- Ruby - Ruby Issue Tracking System - Bug #21163: Inconsistencies in Kernel.Float compared to other number parsing methods - Ruby - Ruby Issue Tracking System
- Bug #21173: RUBY_FREE_AT_EXIT does not work when error in -r - Ruby - Ruby Issue Tracking System
- Bug #21179: Introduction Happy Eyeballs Version 2 broke
Socket.tcpfrom secondary Ractors - Ruby - Ruby Issue Tracking System - 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 - Bug #21186: Inconsistent parsing of ?あand 0 - 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 #21195: Crash when using IO#timeout - Ruby - Ruby Issue Tracking System
- Bug #21196: Ruby 3.4 ignores visibility when passing arguments using
...- Ruby - Ruby Issue Tracking System - Bug #21141:
Time#utc?does not work with a timezone object - Ruby - Ruby Issue Tracking System - Bug #21211: Incomplete Backtrace for Socket Errors in Ruby 3.4+ - Ruby - Ruby Issue Tracking System
- Bug #21197: Prism does not accept newline after defined? keyword - Ruby - Ruby Issue Tracking System
- Bug #21183: Ractor error with Prism::VERSION - Ruby - Ruby Issue Tracking System
- Bug #21217: Integer.sqrt produces wrong results even on input <= 1e18 - Ruby - Ruby Issue Tracking System
- Bug #21220: Memory corruption in update_line_coverage() [write at index -1] - Ruby - Ruby Issue Tracking System
Note: This list is automatically generated by tool/gen-github-release.rb. Because of this, some commits may be missing.
Full Changelog
3.3.8
What's Changed
- Bump net-imap to 0.4.19 for Ruby 3.3 (CVE-2025-25186) by nevans · Pull Request #12732
- Bug #21170: Corrupted Hash (bad VALUE and missing entry) when -1 returned from .hash - Ruby - Ruby Issue Tracking System
- Bug #20951: Confusing handling of timezone object's
#utc_to_localresults - Ruby - Ruby Issue Tracking System - Bug #21046: Backport: TLS fix for ARM64 - Ruby - Ruby Issue Tracking System
- Bug #21032:
Module#autoload?is slow when$LOAD_PATHcontains a relative path - Ruby - Ruby Issue Tracking System - Bug #21095: Prefer
uname -noverhostnamein tests. - Ruby - Ruby Issue Tracking System - Bug #21112: Typo in error message when an incorrect key is used with WeakKeyMap - Ruby - Ruby Issue Tracking System
- Bug #21092: error building ruby 3.4.1 on cygwin/msys2 - Ruby - Ruby Issue Tracking System
- Bug #21159:
Module#set_temporary_nameshould freeze given name - Ruby - Ruby Issue Tracking System - Bug #21172: Race condition in
register_fstring- 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 #21180: SEGV while marking
imemo_env->iseq- Ruby - Ruby Issue Tracking System - Bug #21131: IO.copy_stream: yielded string changes value when duped - Ruby - Ruby Issue Tracking System
- Bug #19841: Marshal.dump stack overflow with recursive Time - Ruby - Ruby Issue Tracking System
- Bug #21186: Inconsistent parsing of ?あand 0 - 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 #21195: Crash when using IO#timeout - Ruby - Ruby Issue Tracking System
- Bug #20984: ENV.inspect is not encoding aware - Ruby - Ruby Issue Tracking System
- Bug #21027:
not()receiver should benil- Ruby - Ruby Issue Tracking System - Bug #21217: Integer.sqrt produces wrong results even on input <= 1e18 - Ruby - Ruby Issue Tracking System
- Bug #21141:
Time#utc?does not work with a timezone object - Ruby - Ruby Issue Tracking System
Note: This list is automatically generated by tool/gen-github-release.rb. Because of this, some commits may be missing.
Full Changelog
3.2.8
Security fixes
What's Changed
- Bug #21092: error building ruby 3.4.1 on cygwin/msys2 - Ruby - Ruby Issue Tracking System
- Bug #21170: Corrupted Hash (bad VALUE and missing entry) when -1 returned from .hash - 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 #18257: rb_mRubyVMFrozenCore is broken by GC run - Ruby - Ruby Issue Tracking System
- Bug #21032:
Module#autoload?is slow when$LOAD_PATHcontains a relative path - Ruby - Ruby Issue Tracking System - Bug #21131: IO.copy_stream: yielded string changes value when duped - Ruby - Ruby Issue Tracking System
- Bug #19584: Crash in rb_gc_register_address - Ruby - Ruby Issue Tracking System
- Bug #21180: SEGV while marking
imemo_env->iseq- Ruby - Ruby Issue Tracking System - Bug #20025: Parsing identifiers/constants is case-folding dependent - Ruby - Ruby Issue Tracking System
- Bug #19426: Endless
Range#stepof object with#succmethod does not work - Ruby - Ruby Issue Tracking System
Note: This list is automatically generated by tool/gen-github-release.rb. Because of this, some commits may be missing.