Releases: hatchboxio/precompiled-ruby
Release list
4.0.6-3
Ruby 4.0.6 portable binaries
Released by Ruby: 2026-07-14
What's Changed
- Bug #22070:
Thread.each_caller_location(1, 1)segfaults when called from a cfunc - Ruby - Ruby Issue Tracking System - Bug #22075: heap-use-after-free in
rb_vm_ci_lookupunder parallel Ractors - Ruby - Ruby Issue Tracking System - Bug #22076: defined? returns nil for protected methods defined in a module even when callable - Ruby - Ruby Issue Tracking System
- Bug #22072: [BUG] should have cvar cache entry - Ruby - Ruby Issue Tracking System
- Bug #22074: YJIT misaligns locals when there are > 256 local variables - Ruby - Ruby Issue Tracking System
- Bug #22064: GC compaction breaks compare-by-identity sets - Ruby - Ruby Issue Tracking System
- Bug #22084: invokesuper from define_method in Ractor can call wrong super method or crash - Ruby - Ruby Issue Tracking System
- Bug #22092:
Array#sumtakes slow path, does not perform compensated summation of Float elements when init argument is a Float - Ruby - Ruby Issue Tracking System - Bug #14635: Float#round(n) returns a wrong result when n is big - Ruby - Ruby Issue Tracking System
- Bug #22079: Float#ceil gives incorrect result - Ruby - Ruby Issue Tracking System
- Bug #22096: Freeing a mutex locked by a fiber inside fiber scheduler can crash - Ruby - Ruby Issue Tracking System
- Bug #21996: Crash when modifying instance variables during inspect or Marshal dump - Ruby - Ruby Issue Tracking System
- Bug #22101: ASAN heap-use-after-free in rb_data_free after TypedData dfree frees dynamic rb_data_type_t - Ruby - Ruby Issue Tracking System
- Bug #22103: Constant-folded /o regexp crashes with dupstring of a Regexp - Ruby - Ruby Issue Tracking System
- Bug #21991:
$!stays as the first exception in Ruby Box - Ruby - Ruby Issue Tracking System - Feature #21881: Split the root box into the (newer) root box and the master of copied user boxes - Ruby - Ruby Issue Tracking System
- Bug #22120: Segfault caused by ar_find_entry_hint() not checking for conversion to st_table - Ruby - Ruby Issue Tracking System
- Bug #22129: error_highlight raises NotImplementedError for ArgumentErrors that get wrapped - Ruby - Ruby Issue Tracking System
- Bug #21864: Inconsistencies in type coercion error messages for integers - Ruby - Ruby Issue Tracking System
- Bug #21882: IO::Buffer#locked leaves the buffer locked when the block raises - Ruby - Ruby Issue Tracking System
- Bug #22127: parse.y regexp crash on invalid encoding - Ruby - Ruby Issue Tracking System
- Bug #22126: Stack underflow for partial DCE and loops - Ruby - Ruby Issue Tracking System
- Bug #22124: void value missed in parse.y - Ruby - Ruby Issue Tracking System
- Bug #22104: Segfault in PRISM while Bootsnap compiles aws-sdk client_api.rb - Ruby - Ruby Issue Tracking System
- Bug #21685: Unnecessary context-switching, especially bad on multi-core machines. - Ruby - Ruby Issue Tracking System
- Bug #22099: Keyword-only method silently accepts a positional argument - Ruby - Ruby Issue Tracking System
- Bug #22183: parse.y interpolation inside lambda literal - Ruby - Ruby Issue Tracking System
- Bug #22181: SEGV in branch peephole optimization due to label/insn struct aliasing - Ruby - Ruby Issue Tracking System
- Bug #22133: Ruby's default SIGINT handling ignores
Thread.handle_interruptmasking. - Ruby - Ruby Issue Tracking System - Bug #22189:
Enumerator::Lazy#to_enumdoes not accept method names as strings - Ruby - Ruby Issue Tracking System - Bug #22191:
Signal.trap(:EXIT)exception only shown ifat_exitalso raises - 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
Build revision: 4.0.6-3
Build fingerprint: v1-7b359cc0f9f143e67d455fdbcd7a02162ee71a41bef9f415a0edbe2a6576ee8f
4.0.6-2
Ruby 4.0.6 portable binaries
Released by Ruby: 2026-07-14
What's Changed
- Bug #22070:
Thread.each_caller_location(1, 1)segfaults when called from a cfunc - Ruby - Ruby Issue Tracking System - Bug #22075: heap-use-after-free in
rb_vm_ci_lookupunder parallel Ractors - Ruby - Ruby Issue Tracking System - Bug #22076: defined? returns nil for protected methods defined in a module even when callable - Ruby - Ruby Issue Tracking System
- Bug #22072: [BUG] should have cvar cache entry - Ruby - Ruby Issue Tracking System
- Bug #22074: YJIT misaligns locals when there are > 256 local variables - Ruby - Ruby Issue Tracking System
- Bug #22064: GC compaction breaks compare-by-identity sets - Ruby - Ruby Issue Tracking System
- Bug #22084: invokesuper from define_method in Ractor can call wrong super method or crash - Ruby - Ruby Issue Tracking System
- Bug #22092:
Array#sumtakes slow path, does not perform compensated summation of Float elements when init argument is a Float - Ruby - Ruby Issue Tracking System - Bug #14635: Float#round(n) returns a wrong result when n is big - Ruby - Ruby Issue Tracking System
- Bug #22079: Float#ceil gives incorrect result - Ruby - Ruby Issue Tracking System
- Bug #22096: Freeing a mutex locked by a fiber inside fiber scheduler can crash - Ruby - Ruby Issue Tracking System
- Bug #21996: Crash when modifying instance variables during inspect or Marshal dump - Ruby - Ruby Issue Tracking System
- Bug #22101: ASAN heap-use-after-free in rb_data_free after TypedData dfree frees dynamic rb_data_type_t - Ruby - Ruby Issue Tracking System
- Bug #22103: Constant-folded /o regexp crashes with dupstring of a Regexp - Ruby - Ruby Issue Tracking System
- Bug #21991:
$!stays as the first exception in Ruby Box - Ruby - Ruby Issue Tracking System - Feature #21881: Split the root box into the (newer) root box and the master of copied user boxes - Ruby - Ruby Issue Tracking System
- Bug #22120: Segfault caused by ar_find_entry_hint() not checking for conversion to st_table - Ruby - Ruby Issue Tracking System
- Bug #22129: error_highlight raises NotImplementedError for ArgumentErrors that get wrapped - Ruby - Ruby Issue Tracking System
- Bug #21864: Inconsistencies in type coercion error messages for integers - Ruby - Ruby Issue Tracking System
- Bug #21882: IO::Buffer#locked leaves the buffer locked when the block raises - Ruby - Ruby Issue Tracking System
- Bug #22127: parse.y regexp crash on invalid encoding - Ruby - Ruby Issue Tracking System
- Bug #22126: Stack underflow for partial DCE and loops - Ruby - Ruby Issue Tracking System
- Bug #22124: void value missed in parse.y - Ruby - Ruby Issue Tracking System
- Bug #22104: Segfault in PRISM while Bootsnap compiles aws-sdk client_api.rb - Ruby - Ruby Issue Tracking System
- Bug #21685: Unnecessary context-switching, especially bad on multi-core machines. - Ruby - Ruby Issue Tracking System
- Bug #22099: Keyword-only method silently accepts a positional argument - Ruby - Ruby Issue Tracking System
- Bug #22183: parse.y interpolation inside lambda literal - Ruby - Ruby Issue Tracking System
- Bug #22181: SEGV in branch peephole optimization due to label/insn struct aliasing - Ruby - Ruby Issue Tracking System
- Bug #22133: Ruby's default SIGINT handling ignores
Thread.handle_interruptmasking. - Ruby - Ruby Issue Tracking System - Bug #22189:
Enumerator::Lazy#to_enumdoes not accept method names as strings - Ruby - Ruby Issue Tracking System - Bug #22191:
Signal.trap(:EXIT)exception only shown ifat_exitalso raises - 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
Build revision: 4.0.6-2
4.0.6
Ruby 4.0.6 portable binaries
Released by Ruby: 2026-07-14
What's Changed
- Bug #22070:
Thread.each_caller_location(1, 1)segfaults when called from a cfunc - Ruby - Ruby Issue Tracking System - Bug #22075: heap-use-after-free in
rb_vm_ci_lookupunder parallel Ractors - Ruby - Ruby Issue Tracking System - Bug #22076: defined? returns nil for protected methods defined in a module even when callable - Ruby - Ruby Issue Tracking System
- Bug #22072: [BUG] should have cvar cache entry - Ruby - Ruby Issue Tracking System
- Bug #22074: YJIT misaligns locals when there are > 256 local variables - Ruby - Ruby Issue Tracking System
- Bug #22064: GC compaction breaks compare-by-identity sets - Ruby - Ruby Issue Tracking System
- Bug #22084: invokesuper from define_method in Ractor can call wrong super method or crash - Ruby - Ruby Issue Tracking System
- Bug #22092:
Array#sumtakes slow path, does not perform compensated summation of Float elements when init argument is a Float - Ruby - Ruby Issue Tracking System - Bug #14635: Float#round(n) returns a wrong result when n is big - Ruby - Ruby Issue Tracking System
- Bug #22079: Float#ceil gives incorrect result - Ruby - Ruby Issue Tracking System
- Bug #22096: Freeing a mutex locked by a fiber inside fiber scheduler can crash - Ruby - Ruby Issue Tracking System
- Bug #21996: Crash when modifying instance variables during inspect or Marshal dump - Ruby - Ruby Issue Tracking System
- Bug #22101: ASAN heap-use-after-free in rb_data_free after TypedData dfree frees dynamic rb_data_type_t - Ruby - Ruby Issue Tracking System
- Bug #22103: Constant-folded /o regexp crashes with dupstring of a Regexp - Ruby - Ruby Issue Tracking System
- Bug #21991:
$!stays as the first exception in Ruby Box - Ruby - Ruby Issue Tracking System - Feature #21881: Split the root box into the (newer) root box and the master of copied user boxes - Ruby - Ruby Issue Tracking System
- Bug #22120: Segfault caused by ar_find_entry_hint() not checking for conversion to st_table - Ruby - Ruby Issue Tracking System
- Bug #22129: error_highlight raises NotImplementedError for ArgumentErrors that get wrapped - Ruby - Ruby Issue Tracking System
- Bug #21864: Inconsistencies in type coercion error messages for integers - Ruby - Ruby Issue Tracking System
- Bug #21882: IO::Buffer#locked leaves the buffer locked when the block raises - Ruby - Ruby Issue Tracking System
- Bug #22127: parse.y regexp crash on invalid encoding - Ruby - Ruby Issue Tracking System
- Bug #22126: Stack underflow for partial DCE and loops - Ruby - Ruby Issue Tracking System
- Bug #22124: void value missed in parse.y - Ruby - Ruby Issue Tracking System
- Bug #22104: Segfault in PRISM while Bootsnap compiles aws-sdk client_api.rb - Ruby - Ruby Issue Tracking System
- Bug #21685: Unnecessary context-switching, especially bad on multi-core machines. - Ruby - Ruby Issue Tracking System
- Bug #22099: Keyword-only method silently accepts a positional argument - Ruby - Ruby Issue Tracking System
- Bug #22183: parse.y interpolation inside lambda literal - Ruby - Ruby Issue Tracking System
- Bug #22181: SEGV in branch peephole optimization due to label/insn struct aliasing - Ruby - Ruby Issue Tracking System
- Bug #22133: Ruby's default SIGINT handling ignores
Thread.handle_interruptmasking. - Ruby - Ruby Issue Tracking System - Bug #22189:
Enumerator::Lazy#to_enumdoes not accept method names as strings - Ruby - Ruby Issue Tracking System - Bug #22191:
Signal.trap(:EXIT)exception only shown ifat_exitalso raises - 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
Build revision: 4.0.6-3
Build fingerprint: v1-7b359cc0f9f143e67d455fdbcd7a02162ee71a41bef9f415a0edbe2a6576ee8f
4.0.5-3
Ruby 4.0.5 portable binaries
Released by Ruby: 2026-05-20
What's Changed
- CVE-2026-46727: Use-after-free in pthread-based getaddrinfo timeout handler
- Bug #22065:
make rdocfails withinvalid byte sequence in US-ASCIIon Ruby 4.0.4 under C locale - 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
Build revision: 4.0.5-3
Build fingerprint: v1-293f07d6cf65f3592fb65d165b5ff7d766bfd45e1da951e479e71843b1a273e9
4.0.5-2
Ruby 4.0.5 portable binaries
Released by Ruby: 2026-05-20
What's Changed
- CVE-2026-46727: Use-after-free in pthread-based getaddrinfo timeout handler
- Bug #22065:
make rdocfails withinvalid byte sequence in US-ASCIIon Ruby 4.0.4 under C locale - 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
Build revision: 4.0.5-2
4.0.5
Ruby 4.0.5 portable binaries
Released by Ruby: 2026-05-20
What's Changed
- CVE-2026-46727: Use-after-free in pthread-based getaddrinfo timeout handler
- Bug #22065:
make rdocfails withinvalid byte sequence in US-ASCIIon Ruby 4.0.4 under C locale - 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
Build revision: 4.0.5-3
Build fingerprint: v1-293f07d6cf65f3592fb65d165b5ff7d766bfd45e1da951e479e71843b1a273e9
4.0.4-4
Ruby 4.0.4 portable binaries
Released by Ruby: 2026-05-11
What's Changed
- Bug #21955:
Fiber#transfer: machine stack not released when fiber terminates, causingFiberError: can't set a guard page- Ruby - Ruby Issue Tracking System - Bug #21964: Fiber stack acquire can expand unnecessarily - Ruby - Ruby Issue Tracking System
- Bug #21971: Fix regexp performance regression for patterns starting with s/k - Ruby - Ruby Issue Tracking System
- Bug #21961: Marshal.load freeze option fail to freeze linked strings - Ruby - Ruby Issue Tracking System
- Bug #21959: rb_internal_thread_event_hooks_rw_lock is not reinitialized after fork causing deadlocks - Ruby - Ruby Issue Tracking System
- Bug #21954: NoMethodError instead of Gem::LoadError on gem activation problem in Ruby 4.0.2 - Ruby - Ruby Issue Tracking System
- Bug #21844: Inconsistent ArgumentError message for Data::define.new - Ruby - Ruby Issue Tracking System
- Bug #21992: Defining BasicObject#initialize causes segmentation fault - Ruby - Ruby Issue Tracking System
- Bug #22018: ISeq created via
RubyVM::InstructionSequence.compiledon't support coverage - Ruby - Ruby Issue Tracking System - Bug #21985: RubyVM::AST negative numbers do not include - in location - Ruby - Ruby Issue Tracking System
- Bug #21986: RubyVM::AST incorrect location for literals followed by modifier
if- Ruby - Ruby Issue Tracking System - Bug #21933: Ruby::Box: named capture local variable can become nil after non-matching lines - Ruby - Ruby Issue Tracking System
- Bug #21940: Ruby::Box:
$_returns stale value due to gvar_tbl caching - Ruby - Ruby Issue Tracking System - Bug #22004: parse.y doesn't executes loop body with
while true || truecondition - Ruby - Ruby Issue Tracking System - Bug #21952: Ruby::Box double free at process exit when
fiddle/importis required in multiple boxes - Ruby - Ruby Issue Tracking System - Bug #22003: .bundle extensions not built when doing out-of-source build - Ruby - Ruby Issue Tracking System
- Bug #22002: argument stack underflow (-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
Build revision: 4.0.4-4
Build fingerprint: v1-ffdde8ff6d4432c191b047dc75ec2ab3f0a73635831848804969e30577bc1bc8
4.0.4-3
Ruby 4.0.4 portable binaries
Released by Ruby: 2026-05-11
What's Changed
- Bug #21955:
Fiber#transfer: machine stack not released when fiber terminates, causingFiberError: can't set a guard page- Ruby - Ruby Issue Tracking System - Bug #21964: Fiber stack acquire can expand unnecessarily - Ruby - Ruby Issue Tracking System
- Bug #21971: Fix regexp performance regression for patterns starting with s/k - Ruby - Ruby Issue Tracking System
- Bug #21961: Marshal.load freeze option fail to freeze linked strings - Ruby - Ruby Issue Tracking System
- Bug #21959: rb_internal_thread_event_hooks_rw_lock is not reinitialized after fork causing deadlocks - Ruby - Ruby Issue Tracking System
- Bug #21954: NoMethodError instead of Gem::LoadError on gem activation problem in Ruby 4.0.2 - Ruby - Ruby Issue Tracking System
- Bug #21844: Inconsistent ArgumentError message for Data::define.new - Ruby - Ruby Issue Tracking System
- Bug #21992: Defining BasicObject#initialize causes segmentation fault - Ruby - Ruby Issue Tracking System
- Bug #22018: ISeq created via
RubyVM::InstructionSequence.compiledon't support coverage - Ruby - Ruby Issue Tracking System - Bug #21985: RubyVM::AST negative numbers do not include - in location - Ruby - Ruby Issue Tracking System
- Bug #21986: RubyVM::AST incorrect location for literals followed by modifier
if- Ruby - Ruby Issue Tracking System - Bug #21933: Ruby::Box: named capture local variable can become nil after non-matching lines - Ruby - Ruby Issue Tracking System
- Bug #21940: Ruby::Box:
$_returns stale value due to gvar_tbl caching - Ruby - Ruby Issue Tracking System - Bug #22004: parse.y doesn't executes loop body with
while true || truecondition - Ruby - Ruby Issue Tracking System - Bug #21952: Ruby::Box double free at process exit when
fiddle/importis required in multiple boxes - Ruby - Ruby Issue Tracking System - Bug #22003: .bundle extensions not built when doing out-of-source build - Ruby - Ruby Issue Tracking System
- Bug #22002: argument stack underflow (-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
Build revision: 4.0.4-3
4.0.4
Ruby 4.0.4 portable binaries
Released by Ruby: 2026-05-11
What's Changed
- Bug #21955:
Fiber#transfer: machine stack not released when fiber terminates, causingFiberError: can't set a guard page- Ruby - Ruby Issue Tracking System - Bug #21964: Fiber stack acquire can expand unnecessarily - Ruby - Ruby Issue Tracking System
- Bug #21971: Fix regexp performance regression for patterns starting with s/k - Ruby - Ruby Issue Tracking System
- Bug #21961: Marshal.load freeze option fail to freeze linked strings - Ruby - Ruby Issue Tracking System
- Bug #21959: rb_internal_thread_event_hooks_rw_lock is not reinitialized after fork causing deadlocks - Ruby - Ruby Issue Tracking System
- Bug #21954: NoMethodError instead of Gem::LoadError on gem activation problem in Ruby 4.0.2 - Ruby - Ruby Issue Tracking System
- Bug #21844: Inconsistent ArgumentError message for Data::define.new - Ruby - Ruby Issue Tracking System
- Bug #21992: Defining BasicObject#initialize causes segmentation fault - Ruby - Ruby Issue Tracking System
- Bug #22018: ISeq created via
RubyVM::InstructionSequence.compiledon't support coverage - Ruby - Ruby Issue Tracking System - Bug #21985: RubyVM::AST negative numbers do not include - in location - Ruby - Ruby Issue Tracking System
- Bug #21986: RubyVM::AST incorrect location for literals followed by modifier
if- Ruby - Ruby Issue Tracking System - Bug #21933: Ruby::Box: named capture local variable can become nil after non-matching lines - Ruby - Ruby Issue Tracking System
- Bug #21940: Ruby::Box:
$_returns stale value due to gvar_tbl caching - Ruby - Ruby Issue Tracking System - Bug #22004: parse.y doesn't executes loop body with
while true || truecondition - Ruby - Ruby Issue Tracking System - Bug #21952: Ruby::Box double free at process exit when
fiddle/importis required in multiple boxes - Ruby - Ruby Issue Tracking System - Bug #22003: .bundle extensions not built when doing out-of-source build - Ruby - Ruby Issue Tracking System
- Bug #22002: argument stack underflow (-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
Build revision: 4.0.4-4
Build fingerprint: v1-ffdde8ff6d4432c191b047dc75ec2ab3f0a73635831848804969e30577bc1bc8
4.0.3-5
Ruby 4.0.3 portable binaries
Released by Ruby: 2026-04-21
What's Changed
Full Changelog
Build revision: 4.0.3-5
Build fingerprint: v1-52f82a469661e5cbd2ca8d15dbccc5561c7e9308a3c642575338ddb4db6036e9