<feed xmlns='http://www.w3.org/2005/Atom'>
<title>packages/lang/ruby, branch master</title>
<subtitle>Mirror of packages feed</subtitle>
<id>https://git.openwrt.org/feed/packages/atom?h=master</id>
<link rel='self' href='https://git.openwrt.org/feed/packages/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/'/>
<updated>2026-03-24T07:58:18Z</updated>
<entry>
<title>ruby: update to 4.0.2</title>
<updated>2026-03-24T07:58:18Z</updated>
<author>
<name>Luiz Angelo Daros de Luca</name>
</author>
<published>2026-03-24T01:19:13Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=dae7bbfe6cdbfbc146279f5b8332fe50c7c9b451'/>
<id>urn:sha1:dae7bbfe6cdbfbc146279f5b8332fe50c7c9b451</id>
<content type='text'>
ruby 4.0.2 is a routine update that includes a bugfix in YJIT for
NoMethodError on Puma, along with other bugfixes.

ruby 4.0.1 includes a bugfix for spurious wakeup from Kernel#sleep when
subprocess exits in another thread, along with other bugfixes.

Link: https://www.ruby-lang.org/en/news/2026/03/16/ruby-4-0-2-released/
Changelog: https://github.com/ruby/ruby/releases/tag/v4.0.2
Link: https://www.ruby-lang.org/en/news/2026/01/13/ruby-4-0-1-released/
Changelog: https://github.com/ruby/ruby/releases/tag/v4.0.1
Signed-off-by: Luiz Angelo Daros de Luca &lt;luizluca@gmail.com&gt;
</content>
</entry>
<entry>
<title>ruby: update to 4.0.0</title>
<updated>2025-12-29T19:55:14Z</updated>
<author>
<name>Luiz Angelo Daros de Luca</name>
</author>
<published>2025-12-26T19:59:53Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=da6544f12ae14629db51b7b09ce54bedca661dea'/>
<id>urn:sha1:da6544f12ae14629db51b7b09ce54bedca661dea</id>
<content type='text'>
Ruby 4.0 introduces "Ruby Box" and "ZJIT", and adds many improvements.
- Introduce experimental ZJIT compiler
- Improve YJIT performance and memory usage
- Add experimental Ruby Boxes object layout optimization
- VM and GC performance improvements
- Ractor runtime and scheduling enhancements
- Update language syntax and semantics (*nil behavior, logical operator parsing)
- Add Array#rfind and optimized Array#find
- Improve Binding API and implicit parameter access
- Extend Enumerator.produce with size keyword
- Enhance ArgumentError diagnostics with caller/callee context
- Add Fiber#raise(cause:)
- IO.select accepts Float::INFINITY timeout
- Improve Kernel#inspect extensibility
- Add Math.log1p and Math.expm1
- Promote Pathname and Set to core classes
- Extend Ractor API (join, value, lifecycle helpers)
- Fix endless and infinite Range behavior
- Define new top-level Ruby module
- Update Unicode to 17.0 and extend String strip methods
- Update bundled gems (RubyGems, Bundler, IRB, etc.)

Packaging changes:
- Include license files for all packages
- As ruby set moved into core, ruby-set is gone.
  ruby-setsubclasscompact was added to include the set subclass
  compatible layer
- Added conditional libatomic dependency for libruby
- YJIT and ZJIT are not built when cross-compiling (almost always for
  openwrt, even when archs matches). However, the Makefile is ready for
  both when upstream adds that feature. Config entries are marked as
  BROKEN for now.

Changelog: https://github.com/ruby/ruby/compare/v3_4_0...v4.0.0
Signed-off-by: Luiz Angelo Daros de Luca &lt;luizluca@gmail.com&gt;
</content>
</entry>
<entry>
<title>ruby: update to 3.4.8</title>
<updated>2025-12-18T12:09:10Z</updated>
<author>
<name>Luiz Angelo Daros de Luca</name>
</author>
<published>2025-12-18T02:23:17Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=78c39ff48a4e0cbd6d3598a34b64bcdda4def265'/>
<id>urn:sha1:78c39ff48a4e0cbd6d3598a34b64bcdda4def265</id>
<content type='text'>
This release is a routine update that includes bug fixes.

Changelog: https://github.com/ruby/ruby/releases/tag/v3_4_8
Signed-off-by: Luiz Angelo Daros de Luca &lt;luizluca@gmail.com&gt;
</content>
</entry>
<entry>
<title>ruby: update to 3.4.7</title>
<updated>2025-12-17T10:11:32Z</updated>
<author>
<name>Luiz Angelo Daros de Luca</name>
</author>
<published>2025-12-16T19:33:02Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=82c3465e665831d8400e57bab12811515146176e'/>
<id>urn:sha1:82c3465e665831d8400e57bab12811515146176e</id>
<content type='text'>
This release includes some general fixes and a uri gem security fix:

- CVE-2025-61594: URI Credential Leakage Bypass previous fixes

Changelog: https://github.com/ruby/ruby/releases/tag/v3_4_7
Signed-off-by: Luiz Angelo Daros de Luca &lt;luizluca@gmail.com&gt;
</content>
</entry>
<entry>
<title>ruby: update to 3.4.6</title>
<updated>2025-10-14T11:31:13Z</updated>
<author>
<name>Luiz Angelo Daros de Luca</name>
</author>
<published>2025-10-13T22:34:30Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=89cbbf6f26ad35bdb32e541711728ae22dfb4aca'/>
<id>urn:sha1:89cbbf6f26ad35bdb32e541711728ae22dfb4aca</id>
<content type='text'>
Ruby 3.4.6 is a routine update that includes bug fixes.

Changelog: https://github.com/ruby/ruby/releases/tag/v3_4_6
Signed-off-by: Luiz Angelo Daros de Luca &lt;luizluca@gmail.com&gt;
</content>
</entry>
<entry>
<title>ruby: update to 3.4.5</title>
<updated>2025-09-18T19:17:26Z</updated>
<author>
<name>Luiz Angelo Daros de Luca</name>
</author>
<published>2025-02-08T07:59:08Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=4410c80283c7fb891a64d0b67e0e2ad67e075a84'/>
<id>urn:sha1:4410c80283c7fb891a64d0b67e0e2ad67e075a84</id>
<content type='text'>
Ruby 3.4.0 is a major release that introduces several changes:
- Adds `it` block parameter reference
- Switches default parser to Prism
- Implements Happy Eyeballs Version 2 in the socket library
- Improves YJIT
- Adds Modular GC
- And more (see changelog for full details)

Subsequent minor releases include:
- 3.4.1: fixes version description
- 3.4.2: routine bugfix release
- 3.4.3: routine bugfix release
- 3.4.4: routine bugfix release (Linux-specific)
- 3.4.5: routine bugfix release, adds GCC 15 support

Packaging changes:
- (NEW) ruby-repl_type_completor (packaging the repl_type_completor gem)
- Refreshed package dependencies
- Updated `ruby_missingfiles` (detects unpacked files) to use `apk`
- Refactored `ruby_find_pkgsdeps` (detects inter-package dependencies)
  to use the Ruby parser (Prism) instead of heuristic string matching

Changelog: https://www.ruby-lang.org/en/news/2024/12/25/ruby-3-4-0-released/
Signed-off-by: Luiz Angelo Daros de Luca &lt;luizluca@gmail.com&gt;
</content>
</entry>
<entry>
<title>ruby: update to 3.3.9</title>
<updated>2025-09-01T16:46:45Z</updated>
<author>
<name>Luiz Angelo Daros de Luca</name>
</author>
<published>2025-08-31T21:46:36Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=59880e81a62446b44106d8d3455583e2d414c2c4'/>
<id>urn:sha1:59880e81a62446b44106d8d3455583e2d414c2c4</id>
<content type='text'>
3.3.9 release includes the following security fix of default gems:

- CVE-2025-24294: Possible Denial of Service in resolv gem

And the following fixes for build issues:

- GCC 15.1
- Visual Studio 2022 Version 17.14

3.3.7 and 3.3.8 are routine update that includes minor bug fixes.

Signed-off-by: Luiz Angelo Daros de Luca &lt;luizluca@gmail.com&gt;
</content>
</entry>
<entry>
<title>ruby: update to 3.3.6</title>
<updated>2024-12-03T17:49:08Z</updated>
<author>
<name>Luiz Angelo Daros de Luca</name>
</author>
<published>2024-12-01T18:44:07Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=2b999558db0711124f7b5cf4afa201557352f694'/>
<id>urn:sha1:2b999558db0711124f7b5cf4afa201557352f694</id>
<content type='text'>
Ruby 3.3.6 is a routine update that includes minor bug fixes. It also
stops warning missing default gem dependencies that will be bundled gems
in Ruby 3.5.

Link: https://github.com/ruby/ruby/releases/tag/v3_3_6
Signed-off-by: Luiz Angelo Daros de Luca &lt;luizluca@gmail.com&gt;
</content>
</entry>
<entry>
<title>ruby: include JSON modules in host build</title>
<updated>2024-11-13T22:14:37Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2024-11-09T23:21:50Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=c667ae2efb4ad66d80f2bbc1348eda53a7e2049d'/>
<id>urn:sha1:c667ae2efb4ad66d80f2bbc1348eda53a7e2049d</id>
<content type='text'>
Ruby JSON modules are used to build WebKitGTK.
Include them in the host build.

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
<entry>
<title>ruby: fix yjit for target and host build</title>
<updated>2024-10-26T11:51:33Z</updated>
<author>
<name>Luiz Angelo Daros de Luca</name>
</author>
<published>2024-10-20T03:28:42Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/feed/packages/commit/?id=23f08217ac6c260739c5c811ded4816ac7ea914e'/>
<id>urn:sha1:23f08217ac6c260739c5c811ded4816ac7ea914e</id>
<content type='text'>
Since ruby 3.3.0, yjit was converted into rust code. During build, ruby will try try to use the whatever rustc is available in $PATH, including the one provided by the OS. Variations in that rustc can generate something between a perfect funcional build with yjit enabled and a broken build like this (from github actions):

  2024-10-16T05:06:05.9863422Z linking static-library libruby-static.a
  2024-10-16T05:06:06.0625182Z LLVM ERROR: Invalid encoding
  2024-10-16T05:06:06.1531894Z make[4]: *** [Makefile:318: libruby-static.a] Aborted (core dumped)

Ruby 3.3.5 still only supports yjit for x86_64 and aarch64. Even for those targets, ruby build does not support cross-compiling.

This commit adds rust as a dependency for those supported archs, even when cross-compiling, to let it work when host and target arch matches.

We don't need yjit for host build and we can disable it.

Closes #25151, #25052

Signed-off-by: Luiz Angelo Daros de Luca &lt;luizluca@gmail.com&gt;
</content>
</entry>
</feed>
