summaryrefslogtreecommitdiff
path: root/dev-ruby
diff options
context:
space:
mode:
Diffstat (limited to 'dev-ruby')
-rw-r--r--dev-ruby/actioncable/Manifest1
-rw-r--r--dev-ruby/actioncable/actioncable-8.0.4.ebuild57
-rw-r--r--dev-ruby/actionmailbox/Manifest1
-rw-r--r--dev-ruby/actionmailbox/actionmailbox-8.0.4.ebuild63
-rw-r--r--dev-ruby/actionmailer/Manifest1
-rw-r--r--dev-ruby/actionmailer/actionmailer-8.0.4.ebuild51
-rw-r--r--dev-ruby/actionpack/Manifest1
-rw-r--r--dev-ruby/actionpack/actionpack-8.0.4.ebuild82
-rw-r--r--dev-ruby/actiontext/Manifest1
-rw-r--r--dev-ruby/actiontext/actiontext-8.0.4.ebuild70
-rw-r--r--dev-ruby/actionview/Manifest1
-rw-r--r--dev-ruby/actionview/actionview-8.0.4.ebuild77
-rw-r--r--dev-ruby/activejob/Manifest1
-rw-r--r--dev-ruby/activejob/activejob-8.0.4.ebuild49
-rw-r--r--dev-ruby/activemodel/Manifest1
-rw-r--r--dev-ruby/activemodel/activemodel-8.0.4.ebuild43
-rw-r--r--dev-ruby/activerecord/Manifest1
-rw-r--r--dev-ruby/activerecord/activerecord-8.0.4.ebuild99
-rw-r--r--dev-ruby/activestorage/Manifest1
-rw-r--r--dev-ruby/activestorage/activestorage-8.0.4.ebuild82
-rw-r--r--dev-ruby/activesupport/Manifest1
-rw-r--r--dev-ruby/activesupport/activesupport-8.0.4.ebuild89
-rw-r--r--dev-ruby/charlock_holmes/charlock_holmes-0.7.9.ebuild4
-rw-r--r--dev-ruby/dry-core/dry-core-1.1.0.ebuild2
-rw-r--r--dev-ruby/dry-struct/dry-struct-1.8.0.ebuild2
-rw-r--r--dev-ruby/dry-types/dry-types-1.8.2.ebuild2
-rw-r--r--dev-ruby/google-protobuf/Manifest1
-rw-r--r--dev-ruby/google-protobuf/google-protobuf-4.33.0.ebuild47
-rw-r--r--dev-ruby/irb/Manifest1
-rw-r--r--dev-ruby/irb/irb-1.15.3.ebuild66
-rw-r--r--dev-ruby/nokogiri/nokogiri-1.18.10.ebuild4
-rw-r--r--dev-ruby/nokogiri/nokogiri-1.18.7-r1.ebuild4
-rw-r--r--dev-ruby/nokogiri/nokogiri-1.18.8-r1.ebuild4
-rw-r--r--dev-ruby/nokogiri/nokogiri-1.18.9.ebuild4
-rw-r--r--dev-ruby/pg/pg-1.5.9.ebuild2
-rw-r--r--dev-ruby/power_assert/Manifest1
-rw-r--r--dev-ruby/power_assert/power_assert-3.0.0.ebuild38
-rw-r--r--dev-ruby/rails/Manifest1
-rw-r--r--dev-ruby/rails/rails-8.0.4.ebuild37
-rw-r--r--dev-ruby/railties/Manifest1
-rw-r--r--dev-ruby/railties/railties-7.1.6-r1.ebuild75
-rw-r--r--dev-ruby/railties/railties-7.2.3-r1.ebuild75
-rw-r--r--dev-ruby/railties/railties-8.0.4.ebuild75
-rw-r--r--dev-ruby/rake/rake-13.3.0.ebuild2
-rw-r--r--dev-ruby/rdoc/rdoc-6.15.1.ebuild1
-rw-r--r--dev-ruby/repl_type_completor/Manifest3
-rw-r--r--dev-ruby/repl_type_completor/repl_type_completor-0.1.12.ebuild (renamed from dev-ruby/repl_type_completor/repl_type_completor-0.1.10.ebuild)3
-rw-r--r--dev-ruby/repl_type_completor/repl_type_completor-0.1.9.ebuild35
-rw-r--r--dev-ruby/rubyzip/Manifest3
-rw-r--r--dev-ruby/rubyzip/rubyzip-3.1.0.ebuild60
-rw-r--r--dev-ruby/rubyzip/rubyzip-3.2.2.ebuild (renamed from dev-ruby/rubyzip/rubyzip-3.0.2.ebuild)0
-rw-r--r--dev-ruby/test-unit/Manifest1
-rw-r--r--dev-ruby/test-unit/test-unit-3.7.1.ebuild42
-rw-r--r--dev-ruby/uri/Manifest2
-rw-r--r--dev-ruby/uri/uri-1.1.0.ebuild29
-rw-r--r--dev-ruby/uri/uri-1.1.1.ebuild29
56 files changed, 1314 insertions, 115 deletions
diff --git a/dev-ruby/actioncable/Manifest b/dev-ruby/actioncable/Manifest
index 0c6399348141..0f2b19182643 100644
--- a/dev-ruby/actioncable/Manifest
+++ b/dev-ruby/actioncable/Manifest
@@ -6,4 +6,5 @@ DIST rails-7.2.2.2.tgz 11190891 BLAKE2B c881c8b40f655332fd4f449b3f2450aa64f6ebd5
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.2.1.tgz 11888790 BLAKE2B e6f22b5c9c9ec230416734657be6814cf8b76c92fbb1abe753cdef12f1762de0d8e44b858f676bb5ac4bb990f38f0994f832dab725d754da1d4b3b2f276f28a9 SHA512 3b7568bc7ab1b2f60fdc59c2ed3490e8af2eb65ee881157e2f5e738278071dd35404a299a39eb3048c6dcb4e79cae35bdf4ab5b93ff7542d13a6277d52b005e1
DIST rails-8.0.3.tgz 11900652 BLAKE2B 31516ea571c8b4109d0b48e39da153c94e1abb66907a1e51ea1120232cf43bb629608559a6ab175fb0fef8b50394a5084267798e71b46d5fcd8c992e81e6948e SHA512 b043e29e7635a936fb0da8890dd90b35e7eff642c05795deab644fc3c647102f79dfb5531e75332a3e132626af2de8d59c396f1a03266c8aed8f600cce57a6ee
+DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
DIST rails-8.1.0.tgz 13015834 BLAKE2B a22b27d605a0a0c54238aa1e86fc76aeed8acda7f118876e84a4ed0158e7c9ce18daf300a6e7e58c5087af78b069030852c55eae117073b5465f213542680cac SHA512 3eb79050afae2c6cb7329e0ee431103a8ccf358ae6e293434b59742964271fd58685ba7f04baf21b8733033d5ad99b9b6167f53822e921ea3ac73820b7e5fb1b
diff --git a/dev-ruby/actioncable/actioncable-8.0.4.ebuild b/dev-ruby/actioncable/actioncable-8.0.4.ebuild
new file mode 100644
index 000000000000..c549e1ac366b
--- /dev/null
+++ b/dev-ruby/actioncable/actioncable-8.0.4.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_TASK_TEST="-Ilib test"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Integrated WebSockets for Rails"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}:*
+ ~dev-ruby/activesupport-${PV}:*
+ dev-ruby/nio4r:2
+ >=dev-ruby/websocket-driver-0.6.1:*
+ >=dev-ruby/zeitwerk-2.6:2
+"
+
+ruby_add_bdepend "
+ test? (
+ || ( dev-ruby/rack:3.1 dev-ruby/rack:3.0 dev-ruby/rack:2.2 )
+ >=dev-ruby/railties-4.2.0
+ dev-ruby/activerecord:$(ver_cut 1-2)
+ dev-ruby/test-unit:2
+ dev-ruby/mocha
+ >=dev-ruby/pg-1.1:1
+ www-servers/puma
+ )"
+
+all_ruby_prepare() {
+ # Avoid tests for unpackaged dependencies: websocket-client-simple
+ rm -f test/client_test.rb || die
+
+ # Avoid tests for dependencies that require additional setup or network
+ rm -f test/javascript_package_test.rb test/subscription_adapter/redis_test.rb || die
+}
diff --git a/dev-ruby/actionmailbox/Manifest b/dev-ruby/actionmailbox/Manifest
index 0c6399348141..0f2b19182643 100644
--- a/dev-ruby/actionmailbox/Manifest
+++ b/dev-ruby/actionmailbox/Manifest
@@ -6,4 +6,5 @@ DIST rails-7.2.2.2.tgz 11190891 BLAKE2B c881c8b40f655332fd4f449b3f2450aa64f6ebd5
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.2.1.tgz 11888790 BLAKE2B e6f22b5c9c9ec230416734657be6814cf8b76c92fbb1abe753cdef12f1762de0d8e44b858f676bb5ac4bb990f38f0994f832dab725d754da1d4b3b2f276f28a9 SHA512 3b7568bc7ab1b2f60fdc59c2ed3490e8af2eb65ee881157e2f5e738278071dd35404a299a39eb3048c6dcb4e79cae35bdf4ab5b93ff7542d13a6277d52b005e1
DIST rails-8.0.3.tgz 11900652 BLAKE2B 31516ea571c8b4109d0b48e39da153c94e1abb66907a1e51ea1120232cf43bb629608559a6ab175fb0fef8b50394a5084267798e71b46d5fcd8c992e81e6948e SHA512 b043e29e7635a936fb0da8890dd90b35e7eff642c05795deab644fc3c647102f79dfb5531e75332a3e132626af2de8d59c396f1a03266c8aed8f600cce57a6ee
+DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
DIST rails-8.1.0.tgz 13015834 BLAKE2B a22b27d605a0a0c54238aa1e86fc76aeed8acda7f118876e84a4ed0158e7c9ce18daf300a6e7e58c5087af78b069030852c55eae117073b5465f213542680cac SHA512 3eb79050afae2c6cb7329e0ee431103a8ccf358ae6e293434b59742964271fd58685ba7f04baf21b8733033d5ad99b9b6167f53822e921ea3ac73820b7e5fb1b
diff --git a/dev-ruby/actionmailbox/actionmailbox-8.0.4.ebuild b/dev-ruby/actionmailbox/actionmailbox-8.0.4.ebuild
new file mode 100644
index 000000000000..fd96a611abe8
--- /dev/null
+++ b/dev-ruby/actionmailbox/actionmailbox-8.0.4.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="actionmailbox.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRAINSTALL="app config db"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Framework for designing email-service layers"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activejob-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/activestorage-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/mail-2.8.0:*
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ dev-ruby/minitest:5
+ dev-ruby/mocha
+ dev-ruby/propshaft
+ dev-ruby/rexml
+ dev-ruby/sqlite3
+ dev-ruby/webmock
+ dev-ruby/rails
+)"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webdrivers\|webrick\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|capybara\|webpacker\|bootsnap\|dalli\|connection_pool\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\|httpclient\|prism\|solid\|kamal\|thruster\|releaser\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/group :\(cable\|doc\|job\|lint\|mdl\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+ sed -i -e '/byebug/ s:^:#:' test/test_helper.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actionmailer/Manifest b/dev-ruby/actionmailer/Manifest
index 0c6399348141..0f2b19182643 100644
--- a/dev-ruby/actionmailer/Manifest
+++ b/dev-ruby/actionmailer/Manifest
@@ -6,4 +6,5 @@ DIST rails-7.2.2.2.tgz 11190891 BLAKE2B c881c8b40f655332fd4f449b3f2450aa64f6ebd5
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.2.1.tgz 11888790 BLAKE2B e6f22b5c9c9ec230416734657be6814cf8b76c92fbb1abe753cdef12f1762de0d8e44b858f676bb5ac4bb990f38f0994f832dab725d754da1d4b3b2f276f28a9 SHA512 3b7568bc7ab1b2f60fdc59c2ed3490e8af2eb65ee881157e2f5e738278071dd35404a299a39eb3048c6dcb4e79cae35bdf4ab5b93ff7542d13a6277d52b005e1
DIST rails-8.0.3.tgz 11900652 BLAKE2B 31516ea571c8b4109d0b48e39da153c94e1abb66907a1e51ea1120232cf43bb629608559a6ab175fb0fef8b50394a5084267798e71b46d5fcd8c992e81e6948e SHA512 b043e29e7635a936fb0da8890dd90b35e7eff642c05795deab644fc3c647102f79dfb5531e75332a3e132626af2de8d59c396f1a03266c8aed8f600cce57a6ee
+DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
DIST rails-8.1.0.tgz 13015834 BLAKE2B a22b27d605a0a0c54238aa1e86fc76aeed8acda7f118876e84a4ed0158e7c9ce18daf300a6e7e58c5087af78b069030852c55eae117073b5465f213542680cac SHA512 3eb79050afae2c6cb7329e0ee431103a8ccf358ae6e293434b59742964271fd58685ba7f04baf21b8733033d5ad99b9b6167f53822e921ea3ac73820b7e5fb1b
diff --git a/dev-ruby/actionmailer/actionmailer-8.0.4.ebuild b/dev-ruby/actionmailer/actionmailer-8.0.4.ebuild
new file mode 100644
index 000000000000..d7be786648f6
--- /dev/null
+++ b/dev-ruby/actionmailer/actionmailer-8.0.4.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Framework for designing email-service layers"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activejob-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/mail-2.8.0
+ >=dev-ruby/rails-dom-testing-2.2:2"
+
+ruby_add_bdepend "test? (
+ dev-ruby/mocha
+)"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
+ sed -e '/\/load_paths/d' \
+ -e '3igem "actionpack", "~> 8.0.0"; gem "activejob", "~> 8.0.0"' \
+ -i test/abstract_unit.rb || die "Unable to remove load paths"
+
+ # Avoid a test failing only on attachment ordering, since this is a
+ # security release.
+ sed -e '/adding inline attachments while rendering mail works/askip "gentoo: fails on ordering"' \
+ -i test/base_test.rb || die
+}
diff --git a/dev-ruby/actionpack/Manifest b/dev-ruby/actionpack/Manifest
index 0c6399348141..0f2b19182643 100644
--- a/dev-ruby/actionpack/Manifest
+++ b/dev-ruby/actionpack/Manifest
@@ -6,4 +6,5 @@ DIST rails-7.2.2.2.tgz 11190891 BLAKE2B c881c8b40f655332fd4f449b3f2450aa64f6ebd5
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.2.1.tgz 11888790 BLAKE2B e6f22b5c9c9ec230416734657be6814cf8b76c92fbb1abe753cdef12f1762de0d8e44b858f676bb5ac4bb990f38f0994f832dab725d754da1d4b3b2f276f28a9 SHA512 3b7568bc7ab1b2f60fdc59c2ed3490e8af2eb65ee881157e2f5e738278071dd35404a299a39eb3048c6dcb4e79cae35bdf4ab5b93ff7542d13a6277d52b005e1
DIST rails-8.0.3.tgz 11900652 BLAKE2B 31516ea571c8b4109d0b48e39da153c94e1abb66907a1e51ea1120232cf43bb629608559a6ab175fb0fef8b50394a5084267798e71b46d5fcd8c992e81e6948e SHA512 b043e29e7635a936fb0da8890dd90b35e7eff642c05795deab644fc3c647102f79dfb5531e75332a3e132626af2de8d59c396f1a03266c8aed8f600cce57a6ee
+DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
DIST rails-8.1.0.tgz 13015834 BLAKE2B a22b27d605a0a0c54238aa1e86fc76aeed8acda7f118876e84a4ed0158e7c9ce18daf300a6e7e58c5087af78b069030852c55eae117073b5465f213542680cac SHA512 3eb79050afae2c6cb7329e0ee431103a8ccf358ae6e293434b59742964271fd58685ba7f04baf21b8733033d5ad99b9b6167f53822e921ea3ac73820b7e5fb1b
diff --git a/dev-ruby/actionpack/actionpack-8.0.4.ebuild b/dev-ruby/actionpack/actionpack-8.0.4.ebuild
new file mode 100644
index 000000000000..ce915b09dac8
--- /dev/null
+++ b/dev-ruby/actionpack/actionpack-8.0.4.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Eases web-request routing, handling, and response"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/nokogiri-1.8.5
+ || ( dev-ruby/rack:3.1 dev-ruby/rack:3.0 >=dev-ruby/rack-2.2.4:2.2 )
+ >=dev-ruby/rack-session-1.0.1
+ >=dev-ruby/rack-test-0.6.3:*
+ >=dev-ruby/rails-dom-testing-2.2:2
+ >=dev-ruby/rails-html-sanitizer-1.6:1
+ >=dev-ruby/useragent-0.16:0
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ dev-ruby/bundler
+ >=dev-ruby/capybara-3.26
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/rack-cache-1.2:1.2
+ dev-ruby/selenium-webdriver:4
+ www-servers/puma
+ dev-ruby/minitest:5
+ )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\)/ s:^:#:" \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Fix errors loading rack/session with rack 3.0 and use correct rails version.
+ sed -e '2igem "rack-session"; gem "railties", "~> 8.0.0"; gem "activemodel", "~> 8.0.0"' \
+ -i test/abstract_unit.rb || die
+
+ # Use different timezone notation, this changed at some point due to an external dependency changing.
+ sed -e 's/-0000/GMT/' \
+ -i test/dispatch/response_test.rb test/dispatch/cookies_test.rb test/dispatch/session/cookie_store_test.rb || die
+
+ # Avoid tests that fail with a fixed cgi.rb version
+ sed -e '/test_session_store_with_all_domains/askip "Fails with fixed cgi.rb"' \
+ -i test/dispatch/session/cookie_store_test.rb || die
+
+ # Avoid tests failing with rails-dom-testing 2.3 (fixed upstream)
+ sed -e '/test_preserves_order_when_reading_from_cache_plus_rendering/askip "Fails with rails-dom-testing 2.3"' \
+ -i test/controller/caching_test.rb || die
+
+ # Avoid tests requiring chrome
+ sed -e '/DrivenBySeleniumWith/,/^end/ s:^:#:' \
+ -i test/abstract_unit.rb || die
+ rm -f test/dispatch/system_testing/{driver,screenshot_helper,system_test_case}_test.rb || die
+}
diff --git a/dev-ruby/actiontext/Manifest b/dev-ruby/actiontext/Manifest
index 0c6399348141..0f2b19182643 100644
--- a/dev-ruby/actiontext/Manifest
+++ b/dev-ruby/actiontext/Manifest
@@ -6,4 +6,5 @@ DIST rails-7.2.2.2.tgz 11190891 BLAKE2B c881c8b40f655332fd4f449b3f2450aa64f6ebd5
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.2.1.tgz 11888790 BLAKE2B e6f22b5c9c9ec230416734657be6814cf8b76c92fbb1abe753cdef12f1762de0d8e44b858f676bb5ac4bb990f38f0994f832dab725d754da1d4b3b2f276f28a9 SHA512 3b7568bc7ab1b2f60fdc59c2ed3490e8af2eb65ee881157e2f5e738278071dd35404a299a39eb3048c6dcb4e79cae35bdf4ab5b93ff7542d13a6277d52b005e1
DIST rails-8.0.3.tgz 11900652 BLAKE2B 31516ea571c8b4109d0b48e39da153c94e1abb66907a1e51ea1120232cf43bb629608559a6ab175fb0fef8b50394a5084267798e71b46d5fcd8c992e81e6948e SHA512 b043e29e7635a936fb0da8890dd90b35e7eff642c05795deab644fc3c647102f79dfb5531e75332a3e132626af2de8d59c396f1a03266c8aed8f600cce57a6ee
+DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
DIST rails-8.1.0.tgz 13015834 BLAKE2B a22b27d605a0a0c54238aa1e86fc76aeed8acda7f118876e84a4ed0158e7c9ce18daf300a6e7e58c5087af78b069030852c55eae117073b5465f213542680cac SHA512 3eb79050afae2c6cb7329e0ee431103a8ccf358ae6e293434b59742964271fd58685ba7f04baf21b8733033d5ad99b9b6167f53822e921ea3ac73820b7e5fb1b
diff --git a/dev-ruby/actiontext/actiontext-8.0.4.ebuild b/dev-ruby/actiontext/actiontext-8.0.4.ebuild
new file mode 100644
index 000000000000..62f5a28e1b3d
--- /dev/null
+++ b/dev-ruby/actiontext/actiontext-8.0.4.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="actiontext.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRAINSTALL="app db package.json"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Edit and display rich text in Rails applications"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/activestorage-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/globalid-0.6.0
+ >=dev-ruby/nokogiri-1.8.5
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ >=dev-ruby/importmap-rails-1.2.3
+ dev-ruby/minitest:5
+ dev-ruby/mocha
+ dev-ruby/propshaft
+ >=dev-ruby/sqlite3-1.4.0
+)"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webpacker\|webrick\|webmock\|webdrivers\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|bootsnap\|capybara\|dalli\|connection_pool\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\|httpclient\|prism\|solid\|kamal\|thruster\|releaser\)/ s:^:#:" \
+ -e '/stimulus-rails/,/cssbundling-rails/ s:^:#:' \
+ -e '/tailwindcss-rails/,/dartsass-rails/ s:^:#:' \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :\(cable\|doc\|lint\|mdl\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Avoid failing test depending on yarn
+ rm -f test/javascript_package_test.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die
+}
+
+each_ruby_test() {
+ export SEED="2"
+ each_fakegem_test
+}
diff --git a/dev-ruby/actionview/Manifest b/dev-ruby/actionview/Manifest
index 0c6399348141..0f2b19182643 100644
--- a/dev-ruby/actionview/Manifest
+++ b/dev-ruby/actionview/Manifest
@@ -6,4 +6,5 @@ DIST rails-7.2.2.2.tgz 11190891 BLAKE2B c881c8b40f655332fd4f449b3f2450aa64f6ebd5
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.2.1.tgz 11888790 BLAKE2B e6f22b5c9c9ec230416734657be6814cf8b76c92fbb1abe753cdef12f1762de0d8e44b858f676bb5ac4bb990f38f0994f832dab725d754da1d4b3b2f276f28a9 SHA512 3b7568bc7ab1b2f60fdc59c2ed3490e8af2eb65ee881157e2f5e738278071dd35404a299a39eb3048c6dcb4e79cae35bdf4ab5b93ff7542d13a6277d52b005e1
DIST rails-8.0.3.tgz 11900652 BLAKE2B 31516ea571c8b4109d0b48e39da153c94e1abb66907a1e51ea1120232cf43bb629608559a6ab175fb0fef8b50394a5084267798e71b46d5fcd8c992e81e6948e SHA512 b043e29e7635a936fb0da8890dd90b35e7eff642c05795deab644fc3c647102f79dfb5531e75332a3e132626af2de8d59c396f1a03266c8aed8f600cce57a6ee
+DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
DIST rails-8.1.0.tgz 13015834 BLAKE2B a22b27d605a0a0c54238aa1e86fc76aeed8acda7f118876e84a4ed0158e7c9ce18daf300a6e7e58c5087af78b069030852c55eae117073b5465f213542680cac SHA512 3eb79050afae2c6cb7329e0ee431103a8ccf358ae6e293434b59742964271fd58685ba7f04baf21b8733033d5ad99b9b6167f53822e921ea3ac73820b7e5fb1b
diff --git a/dev-ruby/actionview/actionview-8.0.4.ebuild b/dev-ruby/actionview/actionview-8.0.4.ebuild
new file mode 100644
index 000000000000..a0c9dd5ba886
--- /dev/null
+++ b/dev-ruby/actionview/actionview-8.0.4.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple, battle-tested conventions and helpers for building web pages"
+HOMEPAGE="https://github.com/rails/rails/"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:*
+ >=dev-ruby/erubi-1.11:0
+ >=dev-ruby/rails-dom-testing-2.2:2
+ >=dev-ruby/rails-html-sanitizer-1.6:1
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/capybara
+ dev-ruby/mocha
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/railties-${PV}
+ dev-ruby/prism
+ dev-ruby/sqlite3
+ dev-ruby/minitest:5
+ )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|rack-cache\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|mime-types\|minitest\|sprockets\|stackprof\)/ s:^:#:" \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Fix loading of activerecord integration tests. This avoids loading
+ # activerecord twice and thus redefining constants leading to
+ # failures. Bug #719342
+ sed -e '/abstract_unit/arequire "active_record" ; require "active_record/fixtures"' \
+ -e '/defined/ s/FixtureSet/ActiveRecord::FixtureSet/' \
+ -i test/active_record_unit.rb || die
+
+ sed -e '3irequire "ostruct"; gem "actionpack", "~> 8.0.0"; gem "activerecord", "~> 8.0.0"; gem "railties", "~> 8.0.0"' \
+ -i test/abstract_unit.rb || die
+
+ # Avoid test failing on capitalization difference
+ sed -e '/test_raise_arg_overrides_raise_config_option/askip "Capitalization difference"' \
+ -i test/template/translation_helper_test.rb || die
+
+ # Remove tests that are coupled to the Sanitizer (already removed upstream)
+ sed -e '/test_sanitized_allowed_\(tags_class_method\|attributes_class_method\)/askip "Removed upstream"' \
+ -i test/template/sanitize_helper_test.rb || die
+}
diff --git a/dev-ruby/activejob/Manifest b/dev-ruby/activejob/Manifest
index 0c6399348141..0f2b19182643 100644
--- a/dev-ruby/activejob/Manifest
+++ b/dev-ruby/activejob/Manifest
@@ -6,4 +6,5 @@ DIST rails-7.2.2.2.tgz 11190891 BLAKE2B c881c8b40f655332fd4f449b3f2450aa64f6ebd5
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.2.1.tgz 11888790 BLAKE2B e6f22b5c9c9ec230416734657be6814cf8b76c92fbb1abe753cdef12f1762de0d8e44b858f676bb5ac4bb990f38f0994f832dab725d754da1d4b3b2f276f28a9 SHA512 3b7568bc7ab1b2f60fdc59c2ed3490e8af2eb65ee881157e2f5e738278071dd35404a299a39eb3048c6dcb4e79cae35bdf4ab5b93ff7542d13a6277d52b005e1
DIST rails-8.0.3.tgz 11900652 BLAKE2B 31516ea571c8b4109d0b48e39da153c94e1abb66907a1e51ea1120232cf43bb629608559a6ab175fb0fef8b50394a5084267798e71b46d5fcd8c992e81e6948e SHA512 b043e29e7635a936fb0da8890dd90b35e7eff642c05795deab644fc3c647102f79dfb5531e75332a3e132626af2de8d59c396f1a03266c8aed8f600cce57a6ee
+DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
DIST rails-8.1.0.tgz 13015834 BLAKE2B a22b27d605a0a0c54238aa1e86fc76aeed8acda7f118876e84a4ed0158e7c9ce18daf300a6e7e58c5087af78b069030852c55eae117073b5465f213542680cac SHA512 3eb79050afae2c6cb7329e0ee431103a8ccf358ae6e293434b59742964271fd58685ba7f04baf21b8733033d5ad99b9b6167f53822e921ea3ac73820b7e5fb1b
diff --git a/dev-ruby/activejob/activejob-8.0.4.ebuild b/dev-ruby/activejob/activejob-8.0.4.ebuild
new file mode 100644
index 000000000000..c18ce5deab00
--- /dev/null
+++ b/dev-ruby/activejob/activejob-8.0.4.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Job framework with pluggable queues"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/globalid-0.3.6
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ dev-ruby/zeitwerk
+ )"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ sed -i -e '/load_paths/d' test/helper.rb || die "Unable to remove load paths"
+
+ # Remove all currently unpackaged queues.
+ sed -i -e 's/que queue_classic resque sidekiq sneakers sucker_punch backburner//' \
+ -e 's/delayed_job//' Rakefile || die
+ sed -i -e '/SneakersAdapter/ s:^:#:' test/cases/exceptions_test.rb || die
+ rm -f test/cases/delayed_job_adapter_test.rb || die
+}
diff --git a/dev-ruby/activemodel/Manifest b/dev-ruby/activemodel/Manifest
index 0c6399348141..0f2b19182643 100644
--- a/dev-ruby/activemodel/Manifest
+++ b/dev-ruby/activemodel/Manifest
@@ -6,4 +6,5 @@ DIST rails-7.2.2.2.tgz 11190891 BLAKE2B c881c8b40f655332fd4f449b3f2450aa64f6ebd5
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.2.1.tgz 11888790 BLAKE2B e6f22b5c9c9ec230416734657be6814cf8b76c92fbb1abe753cdef12f1762de0d8e44b858f676bb5ac4bb990f38f0994f832dab725d754da1d4b3b2f276f28a9 SHA512 3b7568bc7ab1b2f60fdc59c2ed3490e8af2eb65ee881157e2f5e738278071dd35404a299a39eb3048c6dcb4e79cae35bdf4ab5b93ff7542d13a6277d52b005e1
DIST rails-8.0.3.tgz 11900652 BLAKE2B 31516ea571c8b4109d0b48e39da153c94e1abb66907a1e51ea1120232cf43bb629608559a6ab175fb0fef8b50394a5084267798e71b46d5fcd8c992e81e6948e SHA512 b043e29e7635a936fb0da8890dd90b35e7eff642c05795deab644fc3c647102f79dfb5531e75332a3e132626af2de8d59c396f1a03266c8aed8f600cce57a6ee
+DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
DIST rails-8.1.0.tgz 13015834 BLAKE2B a22b27d605a0a0c54238aa1e86fc76aeed8acda7f118876e84a4ed0158e7c9ce18daf300a6e7e58c5087af78b069030852c55eae117073b5465f213542680cac SHA512 3eb79050afae2c6cb7329e0ee431103a8ccf358ae6e293434b59742964271fd58685ba7f04baf21b8733033d5ad99b9b6167f53822e921ea3ac73820b7e5fb1b
diff --git a/dev-ruby/activemodel/activemodel-8.0.4.ebuild b/dev-ruby/activemodel/activemodel-8.0.4.ebuild
new file mode 100644
index 000000000000..e203c418da1e
--- /dev/null
+++ b/dev-ruby/activemodel/activemodel-8.0.4.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Toolkit for building modeling frameworks like Active Record and Active Resource"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}:*
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/railties-${PV}
+ dev-ruby/test-unit:2
+ dev-ruby/mocha
+ >=dev-ruby/bcrypt-ruby-3.1.7
+ dev-ruby/minitest:5
+ )"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ sed -i -e '/load_paths/d' test/cases/helper.rb || die "Unable to remove load paths"
+}
diff --git a/dev-ruby/activerecord/Manifest b/dev-ruby/activerecord/Manifest
index 0c6399348141..0f2b19182643 100644
--- a/dev-ruby/activerecord/Manifest
+++ b/dev-ruby/activerecord/Manifest
@@ -6,4 +6,5 @@ DIST rails-7.2.2.2.tgz 11190891 BLAKE2B c881c8b40f655332fd4f449b3f2450aa64f6ebd5
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.2.1.tgz 11888790 BLAKE2B e6f22b5c9c9ec230416734657be6814cf8b76c92fbb1abe753cdef12f1762de0d8e44b858f676bb5ac4bb990f38f0994f832dab725d754da1d4b3b2f276f28a9 SHA512 3b7568bc7ab1b2f60fdc59c2ed3490e8af2eb65ee881157e2f5e738278071dd35404a299a39eb3048c6dcb4e79cae35bdf4ab5b93ff7542d13a6277d52b005e1
DIST rails-8.0.3.tgz 11900652 BLAKE2B 31516ea571c8b4109d0b48e39da153c94e1abb66907a1e51ea1120232cf43bb629608559a6ab175fb0fef8b50394a5084267798e71b46d5fcd8c992e81e6948e SHA512 b043e29e7635a936fb0da8890dd90b35e7eff642c05795deab644fc3c647102f79dfb5531e75332a3e132626af2de8d59c396f1a03266c8aed8f600cce57a6ee
+DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
DIST rails-8.1.0.tgz 13015834 BLAKE2B a22b27d605a0a0c54238aa1e86fc76aeed8acda7f118876e84a4ed0158e7c9ce18daf300a6e7e58c5087af78b069030852c55eae117073b5465f213542680cac SHA512 3eb79050afae2c6cb7329e0ee431103a8ccf358ae6e293434b59742964271fd58685ba7f04baf21b8733033d5ad99b9b6167f53822e921ea3ac73820b7e5fb1b
diff --git a/dev-ruby/activerecord/activerecord-8.0.4.ebuild b/dev-ruby/activerecord/activerecord-8.0.4.ebuild
new file mode 100644
index 000000000000..c0021b6f7437
--- /dev/null
+++ b/dev-ruby/activerecord/activerecord-8.0.4.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+# this is not null so that the dependencies will actually be filled
+RUBY_FAKEGEM_TASK_TEST="test"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="activerecord.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Implements the ActiveRecord pattern (Fowler, PoEAA) for ORM"
+HOMEPAGE="https://github.com/rails/rails/"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+IUSE="mysql postgres sqlite"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "~dev-ruby/activesupport-${PV}
+ ~dev-ruby/activemodel-${PV}
+ >=dev-ruby/timeout-0.4.0
+ sqlite? ( >=dev-ruby/sqlite3-2.1 )
+ mysql? ( dev-ruby/mysql2:0.5 )
+ postgres? ( >=dev-ruby/pg-1.1:1 )"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/benchmark-ips
+ dev-ruby/bundler
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activejob-${PV}
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/sqlite3-1.4.0
+ dev-ruby/mocha
+ dev-ruby/minitest:5
+ )"
+
+DEPEND+=" test? ( >=dev-db/sqlite-3.12.1 )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ rm ../Gemfile.lock || die
+ sed -e "/\(uglifier\|system_timer\|sdoc\|w3c_validators\|pg\|jquery-rails\|execjs\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|minitest\|sprockets\|stackprof\)/ s:^:#:" \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :doc/,/^end/ s:^:#:' \
+ -i ../Gemfile || die
+ sed -i -e '/rack-ssl/d' -e 's/~> 3.4/>= 3.4/' ../railties/railties.gemspec || die
+ sed -e '/bcrypt/ s/3.0.0/3.0/' \
+ -i ../Gemfile || die
+ sed -i -e '/byebug/ s:^:#:' test/cases/base_prevent_writes_test.rb || die
+
+ # Add back json in the Gemfile because we dropped some dependencies
+ # earlier that implicitly required it.
+ sed -i -e '$agem "json"' ../Gemfile || die
+
+ sed -e '3igem "activemodel", "~> 8.0.0"; gem "actionpack", "~> 8.0.0"; gem "activejob", "~> 8.0.0"' \
+ -i test/cases/helper.rb || die
+
+ # Avoid single tests using mysql or postgres dependencies.
+ rm test/cases/invalid_connection_test.rb || die
+ sed -e '/test_switching_connections_with_database_url/askip "postgres"' \
+ -i test/cases/connection_adapters/connection_handlers_multi_db_test.rb || die
+
+ # Avoid failing test that makes bad assumptions on database state.
+ sed -i -e '/test_do_not_call_callbacks_for_delete_all/,/^ end/ s:^:#:' \
+ test/cases/associations/has_many_associations_test.rb
+
+ # Avoid test failing to bind limit length in favor of security release
+ sed -i -e '/test_too_many_binds/askip "Fails on Gentoo"' test/cases/bind_parameter_test.rb || die
+
+ # Avoid test requiring specific locales
+ sed -i -e '/test_unicode_input_casting/askip "Requires specific locales"' test/cases/binary_test.rb || die
+
+ # Avoid test not compatible with new sqlite versions
+ sed -e '/test_strict_strings_by_default/askip "Fails with newer sqlite"' \
+ -i test/cases/adapters/sqlite3/sqlite3_adapter_test.rb || die
+
+ # Avoid tests requiring a full Rails setup
+ rm -f test/cases/adapters/sqlite3/dbconsole_test.rb || die
+}
+
+each_ruby_test() {
+ if use sqlite; then
+ ${RUBY} -S rake test_sqlite3 || die "sqlite3 tests failed"
+ fi
+}
diff --git a/dev-ruby/activestorage/Manifest b/dev-ruby/activestorage/Manifest
index 0c6399348141..0f2b19182643 100644
--- a/dev-ruby/activestorage/Manifest
+++ b/dev-ruby/activestorage/Manifest
@@ -6,4 +6,5 @@ DIST rails-7.2.2.2.tgz 11190891 BLAKE2B c881c8b40f655332fd4f449b3f2450aa64f6ebd5
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.2.1.tgz 11888790 BLAKE2B e6f22b5c9c9ec230416734657be6814cf8b76c92fbb1abe753cdef12f1762de0d8e44b858f676bb5ac4bb990f38f0994f832dab725d754da1d4b3b2f276f28a9 SHA512 3b7568bc7ab1b2f60fdc59c2ed3490e8af2eb65ee881157e2f5e738278071dd35404a299a39eb3048c6dcb4e79cae35bdf4ab5b93ff7542d13a6277d52b005e1
DIST rails-8.0.3.tgz 11900652 BLAKE2B 31516ea571c8b4109d0b48e39da153c94e1abb66907a1e51ea1120232cf43bb629608559a6ab175fb0fef8b50394a5084267798e71b46d5fcd8c992e81e6948e SHA512 b043e29e7635a936fb0da8890dd90b35e7eff642c05795deab644fc3c647102f79dfb5531e75332a3e132626af2de8d59c396f1a03266c8aed8f600cce57a6ee
+DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
DIST rails-8.1.0.tgz 13015834 BLAKE2B a22b27d605a0a0c54238aa1e86fc76aeed8acda7f118876e84a4ed0158e7c9ce18daf300a6e7e58c5087af78b069030852c55eae117073b5465f213542680cac SHA512 3eb79050afae2c6cb7329e0ee431103a8ccf358ae6e293434b59742964271fd58685ba7f04baf21b8733033d5ad99b9b6167f53822e921ea3ac73820b7e5fb1b
diff --git a/dev-ruby/activestorage/activestorage-8.0.4.ebuild b/dev-ruby/activestorage/activestorage-8.0.4.ebuild
new file mode 100644
index 000000000000..4f63bbe6a3e0
--- /dev/null
+++ b/dev-ruby/activestorage/activestorage-8.0.4.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="activestorage.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app config db"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Attach cloud and local files in Rails applications"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+DEPEND+=" test? ( >=app-text/mupdf-1.23.7 media-gfx/imagemagick[jpeg,png,tiff] media-video/ffmpeg app-text/poppler[utils] ) "
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}:*
+ ~dev-ruby/activejob-${PV}:*
+ ~dev-ruby/activerecord-${PV}:*
+ ~dev-ruby/activesupport-${PV}:*
+ dev-ruby/marcel:1.0
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/image_processing-1.2:0
+ dev-ruby/minitest:5
+ dev-ruby/mini_magick
+ dev-ruby/mocha
+ dev-ruby/rake
+ dev-ruby/sprockets-rails
+ >=dev-ruby/sqlite3-1.6.6
+ )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|bcrypt\|uglifier\|aws-sdk-s3\|aws-sdk-sns\|google-cloud-storage\|azure-storage\|blade\|bootsnap\|hiredis\|qunit-selenium\|chromedriver-helper\|rb-inotify\|libxml-ruby\|sass-rails\|capybara\|rack-cache\|selenium\|dalli\|listen\|connection_pool\|mysql2\|webdrivers\|webpacker\|rexml\|webmock\|webrick\|propshaft\|sprockets-export\|rack-test\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\|httpclient\|prism\|solid\|kamal\|thruster\|releaser\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/group :\(cable\|doc\|job\|lint\|mdl\|rubocop\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Use mini_magick since vips is not packaged on Gentoo
+ sed -i -e '/mini_magick/aActiveStorage.variant_processor = :mini_magick' test/test_helper.rb || die
+ # Avoid vips-specific tests
+ sed -e '/\(resized and monochrome variation of JPEG blob\|monochrome with default variant_processor\|disabled variation of JPEG blob\)/askip "No vips support"' \
+ -i test/models/variant_test.rb || die
+
+ # Avoid test where different ffmpeg versions apply different rounding for the duration.
+ sed -i -e '/1.022000/ s:^:#:' test/analyzer/video_analyzer_test.rb || die
+
+ # Avoid failing test depending on yarn
+ rm -f test/javascript_package_test.rb || die
+
+ # Avoid unimportant asset configuration. This most likely fails due
+ # to some kind of dependency issue.
+ rm -f test/dummy/config/initializers/assets.rb || die
+
+ # Avoid test failing due to missing (and unpackaged) AzureStorage service.
+ sed -e '/azure service is deprecated/askip "Not packaged in Gentoo."' \
+ -i test/service/configurator_test.rb || die
+}
diff --git a/dev-ruby/activesupport/Manifest b/dev-ruby/activesupport/Manifest
index 0c6399348141..0f2b19182643 100644
--- a/dev-ruby/activesupport/Manifest
+++ b/dev-ruby/activesupport/Manifest
@@ -6,4 +6,5 @@ DIST rails-7.2.2.2.tgz 11190891 BLAKE2B c881c8b40f655332fd4f449b3f2450aa64f6ebd5
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.2.1.tgz 11888790 BLAKE2B e6f22b5c9c9ec230416734657be6814cf8b76c92fbb1abe753cdef12f1762de0d8e44b858f676bb5ac4bb990f38f0994f832dab725d754da1d4b3b2f276f28a9 SHA512 3b7568bc7ab1b2f60fdc59c2ed3490e8af2eb65ee881157e2f5e738278071dd35404a299a39eb3048c6dcb4e79cae35bdf4ab5b93ff7542d13a6277d52b005e1
DIST rails-8.0.3.tgz 11900652 BLAKE2B 31516ea571c8b4109d0b48e39da153c94e1abb66907a1e51ea1120232cf43bb629608559a6ab175fb0fef8b50394a5084267798e71b46d5fcd8c992e81e6948e SHA512 b043e29e7635a936fb0da8890dd90b35e7eff642c05795deab644fc3c647102f79dfb5531e75332a3e132626af2de8d59c396f1a03266c8aed8f600cce57a6ee
+DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
DIST rails-8.1.0.tgz 13015834 BLAKE2B a22b27d605a0a0c54238aa1e86fc76aeed8acda7f118876e84a4ed0158e7c9ce18daf300a6e7e58c5087af78b069030852c55eae117073b5465f213542680cac SHA512 3eb79050afae2c6cb7329e0ee431103a8ccf358ae6e293434b59742964271fd58685ba7f04baf21b8733033d5ad99b9b6167f53822e921ea3ac73820b7e5fb1b
diff --git a/dev-ruby/activesupport/activesupport-8.0.4.ebuild b/dev-ruby/activesupport/activesupport-8.0.4.ebuild
new file mode 100644
index 000000000000..83c5e6eb518e
--- /dev/null
+++ b/dev-ruby/activesupport/activesupport-8.0.4.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="activesupport.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Utility Classes and Extension to the Standard Library"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+msgpack test"
+REQUIRED_USE="test? ( msgpack )"
+
+PATCHES=( "${FILESDIR}/${PN}-7.1.1-backport-pr50097.patch" )
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ dev-ruby/base64
+ >=dev-ruby/benchmark-0.3
+ dev-ruby/bigdecimal
+ >=dev-ruby/concurrent-ruby-1.3.1:1
+ >=dev-ruby/connection_pool-2.2.5
+ dev-ruby/drb
+ >=dev-ruby/i18n-1.6:1
+ >=dev-ruby/logger-1.4.2
+ >=dev-ruby/minitest-5.1
+ >=dev-ruby/securerandom-0.3
+ >=dev-ruby/tzinfo-2.0.5:2
+ >=dev-ruby/uri-0.13.1
+ msgpack? ( >=dev-ruby/msgpack-1.7.0 )
+"
+
+# memcache-client, nokogiri, builder, and redis are not strictly needed,
+# but there are tests using this code.
+ruby_add_bdepend "test? (
+ >=dev-ruby/dalli-3.0.1
+ >=dev-ruby/nokogiri-1.8.1
+ >=dev-ruby/builder-3.1.0
+ >=dev-ruby/listen-3.3:3
+ || ( dev-ruby/rack:3.1 dev-ruby/rack:3.0 )
+ dev-ruby/rexml
+ dev-ruby/mocha
+ >dev-ruby/minitest-5.15.0:*
+ )"
+
+all_ruby_prepare() {
+ # Set the secure permissions that tests expect.
+ chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
+
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -i -e "/\(system_timer\|execjs\|jquery-rails\|journey\|ruby-prof\|stackprof\|benchmark-ips\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|bcrypt\|uglifier\|minitest\|sprockets\|stackprof\|rack-cache\|sqlite\|libxml-ruby\|bootsnap\|webmock\|capybara\|sass-rails\|selenium-webdriver\|webpacker\|webrick\|propshaft\|rack-test\|terser\|cgi\|net-smtp\|net-imap\|net-pop\|digest\|matrix\|web-console\|error_highlight\|jbuilder\|httpclient\|prism\|useragent\|solid\|kamal\|thruster\|aws-sdk\|launchy\|releaser\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/^group :test/,/^end/ s:^:#:' \
+ -e '/^\s*group :\(db\|doc\|rubocop\|job\|cable\|lint\|mdl\|storage\|ujs\|test\|view\) do/,/^\s*end/ s:^:#:' \
+ -e 's/gemspec/gemspec path: "activesupport"/' \
+ -e '5igem "builder"' ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Avoid test that depends on timezone
+ sed -i -e '/test_implicit_coercion/,/^ end/ s:^:#:' test/core_ext/duration_test.rb || die
+
+ # Avoid tests that seem to trigger race conditions.
+ rm -f test/evented_file_update_checker_test.rb || die
+
+ # Avoid test that generates filename that is too long
+ sed -i -e '/test_filename_max_size/askip "gentoo"' test/cache/stores/file_store_test.rb || die
+
+ # Avoid tests requiring a live redis running
+ rm -f test/cache/stores/redis_cache_store_test.rb || die
+ sed -i -e '/cache_stores:redis/ s:^:#:' Rakefile || die
+ sed -i -e '/test_redis_cache_store/askip "lacking keywords"' test/cache/cache_store_setting_test.rb || die
+
+ # Avoid test where the result varies with specific ruby releases.
+ rm -f test/core_ext/object/duplicable_test.rb || die
+}
diff --git a/dev-ruby/charlock_holmes/charlock_holmes-0.7.9.ebuild b/dev-ruby/charlock_holmes/charlock_holmes-0.7.9.ebuild
index 5f30ad7f49bd..a3dcfa3a3e13 100644
--- a/dev-ruby/charlock_holmes/charlock_holmes-0.7.9.ebuild
+++ b/dev-ruby/charlock_holmes/charlock_holmes-0.7.9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -26,7 +26,7 @@ ruby_add_bdepend "test? (
dev-ruby/minitest )"
CDEPEND="dev-libs/icu:=
- sys-libs/zlib"
+ virtual/zlib:="
DEPEND+=" ${CDEPEND}"
RDEPEND+=" ${CDEPEND}"
diff --git a/dev-ruby/dry-core/dry-core-1.1.0.ebuild b/dev-ruby/dry-core/dry-core-1.1.0.ebuild
index 4240e69ca263..3f3ad26c7774 100644
--- a/dev-ruby/dry-core/dry-core-1.1.0.ebuild
+++ b/dev-ruby/dry-core/dry-core-1.1.0.ebuild
@@ -21,7 +21,7 @@ SRC_URI="https://github.com/dry-rb/dry-core/archive/v${PV}.tar.gz -> ${P}.tar.gz
LICENSE="MIT"
SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64 ~arm64 ~hppa ppc ppc64 ~sparc ~x86"
+KEYWORDS="amd64 ~arm64 ~hppa ppc ppc64 ~sparc ~x86"
ruby_add_rdepend "
dev-ruby/concurrent-ruby:1
diff --git a/dev-ruby/dry-struct/dry-struct-1.8.0.ebuild b/dev-ruby/dry-struct/dry-struct-1.8.0.ebuild
index 806a38829c97..588cf1988378 100644
--- a/dev-ruby/dry-struct/dry-struct-1.8.0.ebuild
+++ b/dev-ruby/dry-struct/dry-struct-1.8.0.ebuild
@@ -21,7 +21,7 @@ SRC_URI="https://github.com/dry-rb/dry-struct/archive/v${PV}.tar.gz -> ${P}.tar.
LICENSE="MIT"
SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64 ~arm64 ~hppa ppc ppc64 ~sparc ~x86"
+KEYWORDS="amd64 ~arm64 ~hppa ppc ppc64 ~sparc ~x86"
IUSE="test"
ruby_add_rdepend "
diff --git a/dev-ruby/dry-types/dry-types-1.8.2.ebuild b/dev-ruby/dry-types/dry-types-1.8.2.ebuild
index 8d667d6b8ace..e35387fadfd9 100644
--- a/dev-ruby/dry-types/dry-types-1.8.2.ebuild
+++ b/dev-ruby/dry-types/dry-types-1.8.2.ebuild
@@ -20,7 +20,7 @@ SRC_URI="https://github.com/dry-rb/dry-types/archive/v${PV}.tar.gz -> ${P}.tar.g
LICENSE="MIT"
SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64 ~arm64 ~hppa ppc ppc64 ~sparc ~x86"
+KEYWORDS="amd64 ~arm64 ~hppa ppc ppc64 ~sparc ~x86"
IUSE="test"
ruby_add_rdepend "
diff --git a/dev-ruby/google-protobuf/Manifest b/dev-ruby/google-protobuf/Manifest
index f535d8d53b58..23e8f705b5b4 100644
--- a/dev-ruby/google-protobuf/Manifest
+++ b/dev-ruby/google-protobuf/Manifest
@@ -5,3 +5,4 @@ DIST protobuf-29.5.tar.gz 9338935 BLAKE2B cfffcab9e240047c1759f8304b0c2f553bf73c
DIST protobuf-30.2.tar.gz 9506934 BLAKE2B 3a7d6bfa38500b16b1ce52b244fd9448fe7be2933a77224a1423a67e3ae3155846c0974ee1b6c579f6050f60b7784ace21b149b3cbdff2ef1e6bf954acbb1b51 SHA512 555d1b18d175eeaf17f3879f124d33080f490367840d35b34bfc4e4a5b383bf6a1d09f1570acb6af9c53ac4940a14572d46423b6e3dd0c712e7802c986fb6be6
DIST protobuf-31.1.tar.gz 9583956 BLAKE2B cd15fc6d25bee71681602cf97c19dc04de9900594b0c0648decf418bdcc0cf787315b2238c18cb0b1eaf7b163ddbbfb7853cc5cff635b4841fcb8b20d94825fd SHA512 5bf730e37183defcb29cf4831128f536ad8bcdce2b2b46b297d95f3de4a037b9ff3b6c57df66a039256dcefd828ba9d43c32b01a7a82aa5c881a9ae12cadb643
DIST protobuf-32.1.tar.gz 9676391 BLAKE2B f6c1faa260ecb57c0a1a5d4be7d56e431cac9e325a02b86d9eecd0318a0964618063db218a4720fcb1121614016f112ba00880a5b743a5c34f19f79ea4420735 SHA512 e7f8fe01912ba30cc7ce101beac1cfbd089bcb57b159a57d4d90cabd1b29d978ad322f0607e1b955617f035a6b68d4e7bc940fa4afa67d255a21f513a2c62172
+DIST protobuf-33.0.tar.gz 6872665 BLAKE2B 5d456c000117b590dea5b7e721a8b8d00d9e7067ba2156f082e4959a17fcf8d4f2e306f90335aad97e1a94dfd2491544d67cb29670f0022034fde574140a8066 SHA512 2956270a81631895ab6ed8c3c2a22b353a461b0827ee17a1c569b24374307a8e2525a06db6728140bff759a40e47a1d2a291cfb34293b364fe279f10468f3cb9
diff --git a/dev-ruby/google-protobuf/google-protobuf-4.33.0.ebuild b/dev-ruby/google-protobuf/google-protobuf-4.33.0.ebuild
new file mode 100644
index 000000000000..d8b4b7942825
--- /dev/null
+++ b/dev-ruby/google-protobuf/google-protobuf-4.33.0.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/google/protobuf_c/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/google
+
+inherit ruby-fakegem
+
+PROTOBUF_PV="$(ver_cut 2-)"
+
+DESCRIPTION="Protocol Buffers are Google's data interchange format"
+HOMEPAGE="https://protobuf.dev/"
+SRC_URI="
+ https://github.com/protocolbuffers/protobuf/releases/download/v${PROTOBUF_PV}/${PN##google-}-${PROTOBUF_PV}.tar.gz
+"
+RUBY_S="protobuf-${PROTOBUF_PV}/ruby"
+
+LICENSE="BSD"
+SLOT="0/$(ver_cut 1-3)"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+
+DEPEND=">=dev-libs/protobuf-${PROTOBUF_PV}"
+
+ruby_add_bdepend "test? ( dev-ruby/json dev-ruby/test-unit )"
+
+all_ruby_prepare() {
+ sed -e '/extensiontask/ s:^:#:' \
+ -e '/ExtensionTask/,/^ end/ s:^:#:' \
+ -e 's:../src/protoc:protoc:' \
+ -e 's/:compile,//' \
+ -e '/:test/ s/:build,//' \
+ -i Rakefile || die
+}
+
+each_ruby_prepare() {
+ ${RUBY} -S rake genproto || die
+ ${RUBY} -S rake copy_third_party || die
+}
diff --git a/dev-ruby/irb/Manifest b/dev-ruby/irb/Manifest
index 8452afc59177..774b09829dd2 100644
--- a/dev-ruby/irb/Manifest
+++ b/dev-ruby/irb/Manifest
@@ -1,2 +1,3 @@
DIST irb-1.13.2.tar.gz 139168 BLAKE2B 7dee24a02ad251e92c667c09a14af1e630bcd514c76290d146182c149cc083a394317ab7a1c46b6e0c34b84983e318d3e59b4ae74c63a17ce03d2677183135e0 SHA512 7d1e4c67ee5b43d37869ad37ec4cf356efe62d51f8a2205144c9d02a1157d23223a1453fef9016d85786c98445f11ff905eafef2f3dcdcf3432df75476076b57
DIST irb-1.15.2.tar.gz 145749 BLAKE2B 7ebc102316071365acc06954929595280adf3dec8100b76fc284e2d50f43b028e2710caf2162cb3674dd6e904cac14f23eed868b6c5f82387d344b6e85eee32f SHA512 e2972df67295db285664ba1211eddce3943c617ee53e0c1a4b21156b2c3aae9e700337b7463d98b7d56477f08f0a721768e4789bd4d69a56bfb1b57595546b93
+DIST irb-1.15.3.tar.gz 147585 BLAKE2B 5c7dfa563732688e073daa170ef58af333169c7065d0ee54d0f27ff2c287af4e4b0c793c2304408fa3f14924bfe3277482bc2a4ce77792a4161c8c4f16d0d7e8 SHA512 e24a61d2a58f6ea33a24e5b4dfc622c7f44716ae33e74e591282bb5228aeb344184fa9aadce7fb8f81337f72b88a99409575b8b5a7831c23b350db1d151a691f
diff --git a/dev-ruby/irb/irb-1.15.3.ebuild b/dev-ruby/irb/irb-1.15.3.ebuild
new file mode 100644
index 000000000000..03544e3f0e3e
--- /dev/null
+++ b/dev-ruby/irb/irb-1.15.3.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_BINDIR="exe"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="irb.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Interactive Ruby command-line tool for REPL (Read Eval Print Loop)"
+HOMEPAGE="https://github.com/ruby/irb"
+SRC_URI="https://github.com/ruby/irb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+# Ensure a new enough eselect-ruby is present to avoid clobbering the
+# irb bin and man page.
+ruby_add_rdepend "
+ >=dev-ruby/pp-0.6.0
+ >=dev-ruby/rdoc-4.0.0
+ >=dev-ruby/reline-0.4.2
+ !<app-eselect/eselect-ruby-20231008
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ dev-ruby/debug
+ dev-ruby/test-unit
+ dev-ruby/test-unit-ruby-core
+ )"
+
+all_ruby_prepare() {
+ sed -e 's:_relative ":"./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Skip test requiring specific character set
+ sed -e '/test_raise_exception_with_different_encoding_containing_invalid_byte_sequence/aomit "charset"' \
+ -i test/irb/test_raise_exception.rb || die
+
+ # Skip tests that require the unpackaged tracer gem
+ sed -e '/test_use_tracer_enabled_when_gem_is_available/aomit "Requires tracer gem"' \
+ -i test/irb/test_tracer.rb || die
+
+ # Skip tests confused by our test path
+ sed -e '/test_backtrace_filtering/aomit "Fails due to unexpected paths"' \
+ -i test/irb/test_irb.rb || die
+}
+
+each_ruby_test() {
+ RUBYLIB=lib ${RUBY} -S rake test || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ doman man/irb.1
+}
diff --git a/dev-ruby/nokogiri/nokogiri-1.18.10.ebuild b/dev-ruby/nokogiri/nokogiri-1.18.10.ebuild
index 7fb576fcd2d8..b2f1a9eaa6ac 100644
--- a/dev-ruby/nokogiri/nokogiri-1.18.10.ebuild
+++ b/dev-ruby/nokogiri/nokogiri-1.18.10.ebuild
@@ -25,12 +25,12 @@ IUSE="test"
RDEPEND="
>=dev-libs/libxml2-2.13.9:=
>=dev-libs/libxslt-1.1.43
- >=sys-libs/zlib-1.3.1
+ >=virtual/zlib-1.3.1:=
virtual/libiconv"
DEPEND="
>=dev-libs/libxml2-2.13.9:=
>=dev-libs/libxslt-1.1.43
- >=sys-libs/zlib-1.3.1
+ >=virtual/zlib-1.3.1:=
virtual/libiconv"
ruby_add_rdepend ">=dev-ruby/racc-1.4:0"
diff --git a/dev-ruby/nokogiri/nokogiri-1.18.7-r1.ebuild b/dev-ruby/nokogiri/nokogiri-1.18.7-r1.ebuild
index 5bcb6121da67..d92258f6a1a9 100644
--- a/dev-ruby/nokogiri/nokogiri-1.18.7-r1.ebuild
+++ b/dev-ruby/nokogiri/nokogiri-1.18.7-r1.ebuild
@@ -25,12 +25,12 @@ IUSE="test"
RDEPEND="
>=dev-libs/libxml2-2.13.7:=
>=dev-libs/libxslt-1.1.43
- >=sys-libs/zlib-1.3.1
+ >=virtual/zlib-1.3.1:=
virtual/libiconv"
DEPEND="
>=dev-libs/libxml2-2.13.7:=
>=dev-libs/libxslt-1.1.43
- >=sys-libs/zlib-1.3.1
+ >=virtual/zlib-1.3.1:=
virtual/libiconv"
ruby_add_rdepend ">=dev-ruby/racc-1.4:0"
diff --git a/dev-ruby/nokogiri/nokogiri-1.18.8-r1.ebuild b/dev-ruby/nokogiri/nokogiri-1.18.8-r1.ebuild
index 39dab4d05093..898b0d870daa 100644
--- a/dev-ruby/nokogiri/nokogiri-1.18.8-r1.ebuild
+++ b/dev-ruby/nokogiri/nokogiri-1.18.8-r1.ebuild
@@ -25,12 +25,12 @@ IUSE="test"
RDEPEND="
>=dev-libs/libxml2-2.13.5:=
>=dev-libs/libxslt-1.1.43
- >=sys-libs/zlib-1.3.1
+ >=virtual/zlib-1.3.1:=
virtual/libiconv"
DEPEND="
>=dev-libs/libxml2-2.13.5:=
>=dev-libs/libxslt-1.1.43
- >=sys-libs/zlib-1.3.1
+ >=virtual/zlib-1.3.1:=
virtual/libiconv"
ruby_add_rdepend ">=dev-ruby/racc-1.4:0"
diff --git a/dev-ruby/nokogiri/nokogiri-1.18.9.ebuild b/dev-ruby/nokogiri/nokogiri-1.18.9.ebuild
index aaf53e6775be..92c8ca80784a 100644
--- a/dev-ruby/nokogiri/nokogiri-1.18.9.ebuild
+++ b/dev-ruby/nokogiri/nokogiri-1.18.9.ebuild
@@ -25,12 +25,12 @@ IUSE="test"
RDEPEND="
>=dev-libs/libxml2-2.13.8:=
>=dev-libs/libxslt-1.1.43
- >=sys-libs/zlib-1.3.1
+ >=virtual/zlib-1.3.1:=
virtual/libiconv"
DEPEND="
>=dev-libs/libxml2-2.13.8:=
>=dev-libs/libxslt-1.1.43
- >=sys-libs/zlib-1.3.1
+ >=virtual/zlib-1.3.1:=
virtual/libiconv"
ruby_add_rdepend ">=dev-ruby/racc-1.4:0"
diff --git a/dev-ruby/pg/pg-1.5.9.ebuild b/dev-ruby/pg/pg-1.5.9.ebuild
index 8b66d0d02120..5a1be8fb9378 100644
--- a/dev-ruby/pg/pg-1.5.9.ebuild
+++ b/dev-ruby/pg/pg-1.5.9.ebuild
@@ -20,7 +20,7 @@ RUBY_S="ruby-${P}"
LICENSE="|| ( BSD-2 Ruby-BSD )"
SLOT="1"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="test"
RDEPEND="dev-db/postgresql:*"
diff --git a/dev-ruby/power_assert/Manifest b/dev-ruby/power_assert/Manifest
index 26045b4b294a..3f438912c4cc 100644
--- a/dev-ruby/power_assert/Manifest
+++ b/dev-ruby/power_assert/Manifest
@@ -1 +1,2 @@
DIST power_assert-2.0.5.tar.gz 17392 BLAKE2B 74c568fa02a2310ca97ccd85d86d04e6b08265900f4fff20180844e8e28d5adc0bfee807442132a237c95c361527cec85c2fa1b5b19411da31b346d7a8bcc1c4 SHA512 52033582b00a1006b05b7ab608c467a0b19cc404de4df291ced26e20109670c9ad33a402ff47a615593581bba3d47fc7f2510aac21832fe19a641e961ff71fb6
+DIST power_assert-3.0.0.tar.gz 16207 BLAKE2B ff64ad83c750761b271d51e0bacef240ba772aec4abfa3d031191109881af106b53b0750c472be7cfa5473428e5da9b43e97a5560c6b6189fea2384cb82265b0 SHA512 bcb02c1a1748b8724fa12dac36dc7f205456fe410e2496ba04de756f636107ade6ca7a1d2339fa94f96f676947e781d4b18033e40e0ccdaabc0261d3e1ad9b54
diff --git a/dev-ruby/power_assert/power_assert-3.0.0.ebuild b/dev-ruby/power_assert/power_assert-3.0.0.ebuild
new file mode 100644
index 000000000000..956cff1383da
--- /dev/null
+++ b/dev-ruby/power_assert/power_assert-3.0.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="power_assert.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Shows each value of variables and method calls in the expression"
+HOMEPAGE="https://github.com/ruby/power_assert"
+SRC_URI="https://github.com/ruby/power_assert/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="|| ( Ruby BSD-2 )"
+
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile test/test_helper.rb || die
+ sed -i -e '1igem "test-unit"' \
+ -e '/byebug/ s:^:#:' test/test_helper.rb || die
+
+ # Avoid git dependency
+ sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid circular dependency on pry when bootstrapping ruby
+ sed -i -e '/pry/ s:^:#:' -e '/test_colorized_pp/,/^ end/ s:^:#:' test/block_test.rb || die
+}
diff --git a/dev-ruby/rails/Manifest b/dev-ruby/rails/Manifest
index 05eeceece383..5c91f74be992 100644
--- a/dev-ruby/rails/Manifest
+++ b/dev-ruby/rails/Manifest
@@ -6,4 +6,5 @@ DIST rails-7.2.2.2.gem 7168 BLAKE2B d2c9bc72acad33f12463d6dbc4d4285b6f393e9e039e
DIST rails-7.2.3.gem 7168 BLAKE2B 36a4cc668b7a82ef327572058b4ccdeb80cf526c4cfc8362dc44dd876083c6115d4988405e995772ea7012667d80d31f15abd159ea422a29d9d426f1fc43a786 SHA512 50fd3724d5f0efb38b70ac6cdf60913f7e143b5b12dab2ea70626fec09333063916a2b97be31d67696315165adbb5fd7cff63a888de008610113ac75c43f817f
DIST rails-8.0.2.1.gem 7168 BLAKE2B 031da958c81b47d686a04be183a11f3d216887e6af9cb454e86ba8ead923e750b0b7ad974c1a18aa8102109d66de3ffe6c8b9b7971d975eeecd957fa0e271757 SHA512 8a90c80fd7deac938ff65ff334f3dff32f4d944a8f1baa68a65de8cd1a2c4b58b0469ffc405d0288704009a0f8215875d70f0775b21ca2ab4bb627538de2ef8b
DIST rails-8.0.3.gem 7168 BLAKE2B c27ed3ec5b4782a45330e14fd3720638a5cd261c73bc426915256749cdeed1697311eb47b2a0165e4c95da5dff5c1318e61729987329c67ae9158ed2042e5926 SHA512 05e5c3715b7d09aa934a51d27da578ac649e74c6904dba7b6d1fb22b611bea7c543d4d7bc1d03a7ab3b71b457cdb3d666247592ab963c54bf75b9483e8501a30
+DIST rails-8.0.4.gem 7168 BLAKE2B 4c20d45afad6a2ffe24601f80596053dc9daf886d7cc7b21c21681031bafdb0c2cae94fff1ae86f712dc2c4092349012d4bcf773d40a4773730ed89754d1749f SHA512 820448ad7c2e63d384983512bafa0e48cc87da997351308f12b95e3e9160cd8b3ffce941fdf1d7a898b31e7ec635aa9dc01c77f7c309216a314fea20660dc278
DIST rails-8.1.0.gem 7168 BLAKE2B ccbc2b041c28b1e9b42f315adcb6b546954b8966fac19552c114e727e4d0e4664d4fe7d15dfdeb579f31e07fba5496b6c7ab599f60fcbf94df80fa4645d10bc4 SHA512 0bf206c8b4aae65a7f718f6494458f983a63a665de7a842cc5e785b7fe2c46a87175c3ea565f201d35bce90b1725364594991c3f00b4341e9dfe09fe200fb98b
diff --git a/dev-ruby/rails/rails-8.0.4.ebuild b/dev-ruby/rails/rails-8.0.4.ebuild
new file mode 100644
index 000000000000..ebfbe36d876d
--- /dev/null
+++ b/dev-ruby/rails/rails-8.0.4.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="ruby on rails is a web-application and persistence framework"
+HOMEPAGE="https://rubyonrails.org"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+ruby_add_rdepend "
+ ~dev-ruby/actioncable-${PV}
+ ~dev-ruby/actionmailbox-${PV}
+ ~dev-ruby/actionmailer-${PV}
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/actiontext-${PV}
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activejob-${PV}
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/activestorage-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/bundler-1.15.0:*
+ ~dev-ruby/railties-${PV}
+"
diff --git a/dev-ruby/railties/Manifest b/dev-ruby/railties/Manifest
index 0c6399348141..0f2b19182643 100644
--- a/dev-ruby/railties/Manifest
+++ b/dev-ruby/railties/Manifest
@@ -6,4 +6,5 @@ DIST rails-7.2.2.2.tgz 11190891 BLAKE2B c881c8b40f655332fd4f449b3f2450aa64f6ebd5
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.2.1.tgz 11888790 BLAKE2B e6f22b5c9c9ec230416734657be6814cf8b76c92fbb1abe753cdef12f1762de0d8e44b858f676bb5ac4bb990f38f0994f832dab725d754da1d4b3b2f276f28a9 SHA512 3b7568bc7ab1b2f60fdc59c2ed3490e8af2eb65ee881157e2f5e738278071dd35404a299a39eb3048c6dcb4e79cae35bdf4ab5b93ff7542d13a6277d52b005e1
DIST rails-8.0.3.tgz 11900652 BLAKE2B 31516ea571c8b4109d0b48e39da153c94e1abb66907a1e51ea1120232cf43bb629608559a6ab175fb0fef8b50394a5084267798e71b46d5fcd8c992e81e6948e SHA512 b043e29e7635a936fb0da8890dd90b35e7eff642c05795deab644fc3c647102f79dfb5531e75332a3e132626af2de8d59c396f1a03266c8aed8f600cce57a6ee
+DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
DIST rails-8.1.0.tgz 13015834 BLAKE2B a22b27d605a0a0c54238aa1e86fc76aeed8acda7f118876e84a4ed0158e7c9ce18daf300a6e7e58c5087af78b069030852c55eae117073b5465f213542680cac SHA512 3eb79050afae2c6cb7329e0ee431103a8ccf358ae6e293434b59742964271fd58685ba7f04baf21b8733033d5ad99b9b6167f53822e921ea3ac73820b7e5fb1b
diff --git a/dev-ruby/railties/railties-7.1.6-r1.ebuild b/dev-ruby/railties/railties-7.1.6-r1.ebuild
new file mode 100644
index 000000000000..6852b2f0e17f
--- /dev/null
+++ b/dev-ruby/railties/railties-7.1.6-r1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_TASK_TEST="test:regular"
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
+
+RUBY_FAKEGEM_BINDIR="exe"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tools for creating, working with, and running Rails applications"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+# The test suite has many failures, most likely due to a mismatch in
+# exact dependencies or environment specifics. Needs further
+# investigation.
+RESTRICT="test"
+
+RDEPEND=">=app-eselect/eselect-rails-0.27"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activesupport-${PV}
+ dev-ruby/irb
+ >=dev-ruby/rackup-1.0.0
+ >=dev-ruby/rake-12.2
+ >=dev-ruby/thor-1.2.2:1
+ >=dev-ruby/tsort-0.2
+ >=dev-ruby/zeitwerk-2.6:2
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/actionview-${PV}
+ dev-ruby/mocha
+ )"
+
+all_ruby_prepare() {
+ rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
+ sed -i -e '/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths"
+ sed -i -e '1igem "minitest", "~>4.0"' test/abstract_unit.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ ruby_fakegem_binwrapper rails rails-${PV}
+}
+
+pkg_postinst() {
+ elog "To select between slots of rails, use:"
+ elog "\teselect rails"
+
+ eselect rails update
+}
+
+pkg_postrm() {
+ eselect rails update
+}
diff --git a/dev-ruby/railties/railties-7.2.3-r1.ebuild b/dev-ruby/railties/railties-7.2.3-r1.ebuild
new file mode 100644
index 000000000000..26312562cdad
--- /dev/null
+++ b/dev-ruby/railties/railties-7.2.3-r1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_TASK_TEST="test:regular"
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
+
+RUBY_FAKEGEM_BINDIR="exe"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tools for creating, working with, and running Rails applications"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+# The test suite has many failures, most likely due to a mismatch in
+# exact dependencies or environment specifics. Needs further
+# investigation.
+RESTRICT="test"
+
+RDEPEND=">=app-eselect/eselect-rails-0.28"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activesupport-${PV}
+ dev-ruby/irb
+ >=dev-ruby/rackup-1.0.0
+ >=dev-ruby/rake-12.2
+ >=dev-ruby/thor-1.2.2:1
+ >=dev-ruby/tsort-0.2
+ >=dev-ruby/zeitwerk-2.6:2
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/actionview-${PV}
+ dev-ruby/mocha
+ )"
+
+all_ruby_prepare() {
+ rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
+ sed -i -e '/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths"
+ sed -i -e '1igem "minitest", "~>4.0"' test/abstract_unit.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ ruby_fakegem_binwrapper rails rails-${PV}
+}
+
+pkg_postinst() {
+ elog "To select between slots of rails, use:"
+ elog "\teselect rails"
+
+ eselect rails update
+}
+
+pkg_postrm() {
+ eselect rails update
+}
diff --git a/dev-ruby/railties/railties-8.0.4.ebuild b/dev-ruby/railties/railties-8.0.4.ebuild
new file mode 100644
index 000000000000..222fdf18b8db
--- /dev/null
+++ b/dev-ruby/railties/railties-8.0.4.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_TASK_TEST="test:regular"
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
+
+RUBY_FAKEGEM_BINDIR="exe"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tools for creating, working with, and running Rails applications"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+# The test suite has many failures, most likely due to a mismatch in
+# exact dependencies or environment specifics. Needs further
+# investigation.
+RESTRICT="test"
+
+RDEPEND=">=app-eselect/eselect-rails-0.29"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/irb-1.13:0
+ >=dev-ruby/rackup-1.0.0
+ >=dev-ruby/rake-12.2
+ >=dev-ruby/thor-1.2.2:1
+ >=dev-ruby/tsort-0.2
+ >=dev-ruby/zeitwerk-2.6:2
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/actionview-${PV}
+ dev-ruby/mocha
+ )"
+
+all_ruby_prepare() {
+ rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
+ sed -i -e '/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths"
+ sed -i -e '1igem "minitest", "~>4.0"' test/abstract_unit.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ ruby_fakegem_binwrapper rails rails-${PV}
+}
+
+pkg_postinst() {
+ elog "To select between slots of rails, use:"
+ elog "\teselect rails"
+
+ eselect rails update
+}
+
+pkg_postrm() {
+ eselect rails update
+}
diff --git a/dev-ruby/rake/rake-13.3.0.ebuild b/dev-ruby/rake/rake-13.3.0.ebuild
index b5b0127116df..b565011a57a2 100644
--- a/dev-ruby/rake/rake-13.3.0.ebuild
+++ b/dev-ruby/rake/rake-13.3.0.ebuild
@@ -22,7 +22,7 @@ SRC_URI="https://github.com/ruby/rake/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="doc"
BDEPEND="app-alternatives/gzip"
diff --git a/dev-ruby/rdoc/rdoc-6.15.1.ebuild b/dev-ruby/rdoc/rdoc-6.15.1.ebuild
index 2e6de35c77de..f03b67a77962 100644
--- a/dev-ruby/rdoc/rdoc-6.15.1.ebuild
+++ b/dev-ruby/rdoc/rdoc-6.15.1.ebuild
@@ -51,6 +51,7 @@ all_ruby_prepare() {
# Avoid unneeded dependency on bundler, bug 603696
sed -e '/bundler/ s:^:#:' \
-e 's/Bundler::GemHelper.gemspec.full_name/"rdoc"/' \
+ -e "/require 'rubocop'/,/])/ s:^:#:" \
-i Rakefile || die
# Skip rubygems tests since the rubygems test case code is no longer installed by rubygems.
diff --git a/dev-ruby/repl_type_completor/Manifest b/dev-ruby/repl_type_completor/Manifest
index 050207a0ef48..92198d2ed055 100644
--- a/dev-ruby/repl_type_completor/Manifest
+++ b/dev-ruby/repl_type_completor/Manifest
@@ -1,3 +1,2 @@
-DIST repl_type_completor-0.1.10.tar.gz 32645 BLAKE2B dae2a9fef40482a1db7ed77f19612a7db95b9471f1b83a89a7ba7d4aa90130c9c9c3e983d9f7714ad9e3f21ec7e09028a862e4ce0d7690606788044e10b794e7 SHA512 8d90b4f8d17a4b38543ea0d8d19bb19414006f308ee262f2002d6cfa15f9297bdd130f4507061474220b3af59494dfd0173ea650105a8df2cdf1507f5f0c1178
DIST repl_type_completor-0.1.11.tar.gz 33500 BLAKE2B 88ed128ce5284d1d8c4d4f2eb5c1fd0511960b90c64c80d983a73c155185a6727143d35bd7e2d92b7066d332bbeb92a99494c20a835441c326a597660d4a3f9b SHA512 380e5d45024c80ad616446a194f75760da843fbcd8344adc15e368d666c468f76531875639dcb779fc97367c7904c586ea55ecb020c9beba746073880733b70f
-DIST repl_type_completor-0.1.9.tar.gz 32275 BLAKE2B aecec4bed189fd1907f7ac50d787b87cc2e9ee22f0042d2888cfbc565e55a231725ed26c2fb5a5776ea7a427ba07def468d3bc6d7ab45576dd7486b3a889bb51 SHA512 c3c88a4127fc37614c8e651b81cbc0636684f2feddd1032f2e4a060b7a6b341d758f64afcb14e8cbfe59306caeba528fb97343cba424d4612f23e095d5486a9e
+DIST repl_type_completor-0.1.12.tar.gz 34705 BLAKE2B 06fb1346429551742ac883b4c287a18d879b0e8eaae6b0318492da824df6c57485b382f22f1f1d596de9827839945590bb62ddff26d969ed74051f82a35812ce SHA512 ffc835412dd3e8b4600f964d386896cad66d45ca28dda259331165ad4f9d54d27be2e69231f2784e9b1e70f755d6010d8cd07b9fd21875ca0c592cd410468a5d
diff --git a/dev-ruby/repl_type_completor/repl_type_completor-0.1.10.ebuild b/dev-ruby/repl_type_completor/repl_type_completor-0.1.12.ebuild
index ea5efa083e4f..219e7859643b 100644
--- a/dev-ruby/repl_type_completor/repl_type_completor-0.1.10.ebuild
+++ b/dev-ruby/repl_type_completor/repl_type_completor-0.1.12.ebuild
@@ -2,7 +2,8 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-USE_RUBY="ruby31 ruby32 ruby33 ruby34"
+
+USE_RUBY="ruby32 ruby33 ruby34"
RUBY_FAKEGEM_BINWRAP=""
RUBY_FAKEGEM_EXTRADOC="README.md"
diff --git a/dev-ruby/repl_type_completor/repl_type_completor-0.1.9.ebuild b/dev-ruby/repl_type_completor/repl_type_completor-0.1.9.ebuild
deleted file mode 100644
index be1f5ac1ad83..000000000000
--- a/dev-ruby/repl_type_completor/repl_type_completor-0.1.9.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-USE_RUBY="ruby31 ruby32 ruby33 ruby34"
-
-RUBY_FAKEGEM_BINWRAP=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_GEMSPEC="repl_type_completor.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Type based completion for REPL"
-HOMEPAGE="https://github.com/ruby/repl_type_completor"
-SRC_URI="https://github.com/ruby/repl_type_completor/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
-
-IUSE="test"
-
-ruby_add_rdepend "
- dev-ruby/prism:1
- <dev-ruby/rbs-4
-"
-
-ruby_add_bdepend "test? ( >=dev-ruby/irb-1.10.0 =dev-ruby/rake-13* dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
-
-all_ruby_prepare() {
- sed -e 's/__dir__/"."/' \
- -e 's:_relative ": "./:' \
- -e 's/git ls-files -z/find * -print0/' \
- -i ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/rubyzip/Manifest b/dev-ruby/rubyzip/Manifest
index 5504249e3eeb..53f2e95627be 100644
--- a/dev-ruby/rubyzip/Manifest
+++ b/dev-ruby/rubyzip/Manifest
@@ -1,6 +1,5 @@
DIST rubyzip-2.4.1-git.tgz 230194 BLAKE2B 506ed57bfa2bc97787c5d18295f024045f418857b221cf7270af2ce4eacde9e92ad9c1c165f3c697980000f87951028bf839771566088380c4d56d3171a25c05 SHA512 10799311ce960a909ae5cca20e6bd0db810d701e30cbfd557d7845ca1934b572561f913b49f6879db12fc98722b8b3b12f3c548305106838922bfa08a4bed122
-DIST rubyzip-3.0.2-git.tgz 944064 BLAKE2B f965ceeefa3e1f03e72e7dc64bacf143350c245625308ec8c7f29194d8bad238d19426377f5c39c6698a52ca21afb4b34a2f7b7453faca75cc8543d4cf8368b8 SHA512 926a235448d54a27692c1e13314dd2ed16ef8b269cfa965aa66152b175a56d11ecef8e4a584d5e38250814b0bcf6ee67a9be0405585dd9445219d7fd91c8b5fe
-DIST rubyzip-3.1.0-git.tgz 1069585 BLAKE2B cd26f082aaf4c7af9749df7f51990e21c5bbc922224ac0f682b8efde037998ad663380a13164f1c0ba01368dc3f7abd8d3b30f0bc08f79166322f595a867afbf SHA512 4430ae3c41b920c05ad165def3db2aa51943355883926b66430ee3c610229db83bac00247536c761d2769b1b43cef694bffbbd457ad93f5b3c3c06c1278e0b03
DIST rubyzip-3.1.1-git.tgz 1070421 BLAKE2B ed1527adffb6d8f7392e3dac3ab82b0fc5e25ceecf4a70cbc2d052c5bc0e033ecfe174d3f40317429f347b2cbc69bb0792ab59c23080e166257936003e537e2a SHA512 ff69c517e1bc06e71baff5ca60046764ebb0e241d01ce76edff93bfd44a59b8aa388f0028792b78a8989ddba70eadf2422e6598da9c7a8c87d0adf26037e4ea5
DIST rubyzip-3.2.0-git.tgz 1072392 BLAKE2B 1d1fc763a895abe158e7ac1f558b1e5827e4b5c6a2a5a0906cf1c011a46285a65474a01a50cab952319ec90be7a7fa5281abdcb3a5c9ec63b460e038b69c22b5 SHA512 3d98cbd24be64d89d6227039353058f98c95221fc511f1e49cad85fbf57da5f6fcd5d38d80b2cfaec3e392531bb8635d1a593c4e794c170f4fa4f3f4f311a399
DIST rubyzip-3.2.1-git.tgz 1072295 BLAKE2B 86e70b8391f5bc57a21cb0e44386d26c086a583c056f8fa96ce567741285cb24128e6047706e06e56d612302e23c009ea016a076adc3499df8eba080bd64747b SHA512 fb08a1540bb5faa655cb6eb9786da4c4d31bb218917077d0e28399747543a2a709ba8f1a10c7185d93fa5793e1f6826aa1c55978af573ac0c0e52bbf8e67b205
+DIST rubyzip-3.2.2-git.tgz 1072564 BLAKE2B c537755e6b9842877712c55fe1da817b758f8fb8aefafc133a939792bede0b2f3fff25aea809afaee16b254bcb1a165eb8db70ae591739a9def7d97b645675dc SHA512 6b972f92670e249f3b625530816bad2e6ef6e00557239b06cf35ff57d0d8dde3fadcb5919872c5273030e5809171c440244b564480e5d8b534eef0296f70330e
diff --git a/dev-ruby/rubyzip/rubyzip-3.1.0.ebuild b/dev-ruby/rubyzip/rubyzip-3.1.0.ebuild
deleted file mode 100644
index 1fa7e1fc8f28..000000000000
--- a/dev-ruby/rubyzip/rubyzip-3.1.0.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-USE_RUBY="ruby32 ruby33 ruby34"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="rubyzip.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A ruby library for reading and writing zip files"
-HOMEPAGE="https://github.com/rubyzip/rubyzip"
-# Tests are not included in the gem.
-SRC_URI="https://github.com/rubyzip/rubyzip/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-LICENSE="Ruby-BSD"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="test"
-
-DEPEND="test? ( app-arch/zip )"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc samples/*
-}
-
-all_ruby_prepare() {
- # Avoid dependencies on simplecov and coveralls
- sed -i -e '/simplecov/ s:^:#:' test/test_helper.rb || die
-
- # Avoid dependency on bundler
- sed -e '/bundler/ s:^:#: ; /rubocop/I s:^:#:' \
- -e '2irequire "zip/version"' \
- -i Rakefile || die
-
- # Fix hardcoded path to /tmp
- sed -i -e "s:/tmp/:${T}/:g" test/entry_test.rb || die
-
- # Add missing requires
- sed -i -e '1irequire "forwardable"; require "pathname"' test/input_stream_test.rb || die
- sed -e '2irequire "zip/version"' \
- -i test/constants_test.rb || die
-
- # Fix broken test that uses native endian
- sed -i -e '/pack/ s/LLS/VVv/' test/file_extract_test.rb || die
-
- sed -e "s:_relative ': './:" \
- -i ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/rubyzip/rubyzip-3.0.2.ebuild b/dev-ruby/rubyzip/rubyzip-3.2.2.ebuild
index 1fa7e1fc8f28..1fa7e1fc8f28 100644
--- a/dev-ruby/rubyzip/rubyzip-3.0.2.ebuild
+++ b/dev-ruby/rubyzip/rubyzip-3.2.2.ebuild
diff --git a/dev-ruby/test-unit/Manifest b/dev-ruby/test-unit/Manifest
index 50d835a5580f..46dae99574f9 100644
--- a/dev-ruby/test-unit/Manifest
+++ b/dev-ruby/test-unit/Manifest
@@ -2,3 +2,4 @@ DIST test-unit-3.6.7.tar.gz 169506 BLAKE2B 3ed8eb7acb0889f108d6a4df1497c38a62b5d
DIST test-unit-3.6.8.tar.gz 169141 BLAKE2B 74639f9ffab7a90d93601e51029f3cf6e9140d13158f7a010946e1104d2b69928c139fcabea03228eefa74b927f320add74df39fa707a1372b7698d21a378474 SHA512 e53a441441b6447eb47a5629ab2d463ef346428ed88bf1fa65a3215ca8f9960c12ad8be1ef9f56943653797be6dbab685d7410d63890b94cf22ec4f54a827d35
DIST test-unit-3.6.9.tar.gz 169456 BLAKE2B 09c44a96f5837f4c6acc1a1d3b75faf2eb1a621408e2361ae1c287633edcf8fa548a920d308db446aed00cff31a95de80148b469afc77a536edd9f5f1148e607 SHA512 54a0341a76cc1415e866dc08aeafee20e4e2b70862c67583c6d8cd931787b2986bc125955c1bf9b175f8a0a1dca7d94990b4add2f4fc56a4e8e314296099c779
DIST test-unit-3.7.0.tar.gz 169473 BLAKE2B 0e808ee0722f4d744ecf17e19f85c65cc118118e61035f50be6229cbd01abc313faecf3ad3ee75937590bcc359e9a9e9f154b128c10f57650002bc5691e4fac3 SHA512 169ee16872dfedf40b5fdf1c0948ce34723d5f777fbb48dcd55195a72045734ef811dd586167c4a2b431e183b8a92fc2e507ebd9d6dc8e46ff2cce23100cbf3b
+DIST test-unit-3.7.1.tar.gz 169683 BLAKE2B c9ccad490bbdbc92060790a6b4d4e63ce38694570c90b24f00e8e31058c5898e508d877444b610764df6dbc5bda6d7c73f4f658266e264e4ecc9e779d3dd560c SHA512 1c33fd3772e0020ba4964bc7e3567446e141845139e84c81521dfda18e8f2ff7f64c7b7ae52f57b0567c4c556d12ccbbb9df2893ba734df0ca15fcc76e40959d
diff --git a/dev-ruby/test-unit/test-unit-3.7.1.ebuild b/dev-ruby/test-unit/test-unit-3.7.1.ebuild
new file mode 100644
index 000000000000..198c954d1995
--- /dev/null
+++ b/dev-ruby/test-unit/test-unit-3.7.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_EXTRADOC="README.md doc-install/text/*.md"
+
+RUBY_FAKEGEM_GEMSPEC="test-unit.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An xUnit family unit testing framework for Ruby"
+HOMEPAGE="https://rubygems.org/gems/test-unit"
+SRC_URI="https://github.com/test-unit/test-unit/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( Ruby-BSD BSD-2 ) PSF-2"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend "dev-ruby/power_assert"
+
+ruby_add_bdepend "test? ( dev-ruby/bigdecimal dev-ruby/csv )"
+
+all_ruby_prepare() {
+ mv doc doc-install || die "moving doc directory out of the way failed"
+
+ sed -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} test/run.rb || die "testsuite failed"
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ newbin "${FILESDIR}"/testrb-3 testrb-2
+}
diff --git a/dev-ruby/uri/Manifest b/dev-ruby/uri/Manifest
index 2cc0402b00aa..5bb01b17ca6c 100644
--- a/dev-ruby/uri/Manifest
+++ b/dev-ruby/uri/Manifest
@@ -1 +1,3 @@
DIST uri-1.0.4.tar.gz 48748 BLAKE2B 89c19d2523dd82760c27e8f13cf073e719b63ee3d644c6729ff96da1db04a81ea2004f2dedafab9f1f6eb260c9c87d9ae8f7eab44e6746d10ec40fab5a0a662e SHA512 5d472bc5c36b6bd57bcb31621904468c42f0fa68acfeb98370d17c178f649ae1618828070cff95b8b02ecfd6b73bf8d3106009689e121ee688d8cf9832c583f1
+DIST uri-1.1.0.tar.gz 50123 BLAKE2B 870704d28a66215aa3afb86f20a84ad5ea3b5d1ee8d4ad7f7c73f6ad3f1f6a9cfe4613423a0eac71b99a0bce989db3cc07ff2bc48edbe337792d83868d2a3f84 SHA512 08d79f9eeecc3faa44bfdff47a76bc5017e5841712d34a97bf5a48e584c5fce911c50dade9dba264ff508bab4e0c754867ee1cfc9ca0808e12c26e6bb1e7329d
+DIST uri-1.1.1.tar.gz 50120 BLAKE2B f6fe68349aade30d3faf9a01d4a0b25b94596d400d9de537beb037a75f6f472b506e7d72b57d9af4c430d4f6cdaa5eb9be7805532b4f17a8cbd26bf579adc19f SHA512 dab3e5fc174f8658f74682a7573e4ccf71b1770fc7309f0d4101b9fc876222c47a637841c5ea9be0be14641348187bf4447ade607627dae5179f36ece505526d
diff --git a/dev-ruby/uri/uri-1.1.0.ebuild b/dev-ruby/uri/uri-1.1.0.ebuild
new file mode 100644
index 000000000000..1635c4b38dbc
--- /dev/null
+++ b/dev-ruby/uri/uri-1.1.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="uri.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="URI is a module providing classes to handle Uniform Resource Identifiers"
+HOMEPAGE="https://github.com/ruby/uri"
+SRC_URI="https://github.com/ruby/uri/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/uri/uri-1.1.1.ebuild b/dev-ruby/uri/uri-1.1.1.ebuild
new file mode 100644
index 000000000000..1635c4b38dbc
--- /dev/null
+++ b/dev-ruby/uri/uri-1.1.1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="uri.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="URI is a module providing classes to handle Uniform Resource Identifiers"
+HOMEPAGE="https://github.com/ruby/uri"
+SRC_URI="https://github.com/ruby/uri/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}