summaryrefslogtreecommitdiff
path: root/dev-ruby
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-08-06 03:04:49 -0500
committerroot <root@alpha.trunkmasters.com>2026-08-06 03:04:49 -0500
commit09db256d16c907238beb9d50761d320ac661c08e (patch)
tree0ae26608def179909de81ba98a6b902274e69d6d /dev-ruby
parentff03324f0b5c30484659977ecb3a56e73f5856a5 (diff)
downloadbaldeagleos-repo-09db256d16c907238beb9d50761d320ac661c08e.tar.gz
baldeagleos-repo-09db256d16c907238beb9d50761d320ac661c08e.tar.xz
baldeagleos-repo-09db256d16c907238beb9d50761d320ac661c08e.zip
Adding metadata
Diffstat (limited to 'dev-ruby')
-rw-r--r--dev-ruby/actioncable/Manifest4
-rw-r--r--dev-ruby/actioncable/actioncable-7.2.3.2.ebuild (renamed from dev-ruby/actioncable/actioncable-8.1.1.ebuild)57
-rw-r--r--dev-ruby/actioncable/actioncable-8.0.5.1.ebuild72
-rw-r--r--dev-ruby/actioncable/actioncable-8.1.3.1.ebuild72
-rw-r--r--dev-ruby/actioncable/metadata.xml4
-rw-r--r--dev-ruby/actionmailbox/Manifest4
-rw-r--r--dev-ruby/actionmailbox/actionmailbox-7.2.3.2.ebuild64
-rw-r--r--dev-ruby/actionmailbox/actionmailbox-8.0.5.1.ebuild66
-rw-r--r--dev-ruby/actionmailbox/actionmailbox-8.1.1.ebuild62
-rw-r--r--dev-ruby/actionmailbox/actionmailbox-8.1.3.1.ebuild66
-rw-r--r--dev-ruby/actionmailbox/metadata.xml4
-rw-r--r--dev-ruby/actionmailer/Manifest4
-rw-r--r--dev-ruby/actionmailer/actionmailer-7.2.3.2.ebuild (renamed from dev-ruby/actionmailer/actionmailer-8.1.1.ebuild)50
-rw-r--r--dev-ruby/actionmailer/actionmailer-8.0.5.1.ebuild59
-rw-r--r--dev-ruby/actionmailer/actionmailer-8.1.3.1.ebuild59
-rw-r--r--dev-ruby/actionmailer/metadata.xml4
-rw-r--r--dev-ruby/actionpack/Manifest4
-rw-r--r--dev-ruby/actionpack/actionpack-7.2.3.2.ebuild (renamed from dev-ruby/actionpack/actionpack-8.1.1.ebuild)69
-rw-r--r--dev-ruby/actionpack/actionpack-8.0.5.1.ebuild91
-rw-r--r--dev-ruby/actionpack/actionpack-8.1.3.1.ebuild91
-rw-r--r--dev-ruby/actionpack/metadata.xml2
-rw-r--r--dev-ruby/actiontext/Manifest4
-rw-r--r--dev-ruby/actiontext/actiontext-7.2.3.2.ebuild72
-rw-r--r--dev-ruby/actiontext/actiontext-8.0.5.1.ebuild74
-rw-r--r--dev-ruby/actiontext/actiontext-8.1.1.ebuild70
-rw-r--r--dev-ruby/actiontext/actiontext-8.1.3.1.ebuild75
-rw-r--r--dev-ruby/actiontext/metadata.xml4
-rw-r--r--dev-ruby/actionview/Manifest4
-rw-r--r--dev-ruby/actionview/actionview-7.2.3.2.ebuild (renamed from dev-ruby/actionview/actionview-8.1.1.ebuild)56
-rw-r--r--dev-ruby/actionview/actionview-8.0.5.1.ebuild71
-rw-r--r--dev-ruby/actionview/actionview-8.1.3.1.ebuild71
-rw-r--r--dev-ruby/actionview/metadata.xml2
-rw-r--r--dev-ruby/activejob/Manifest4
-rw-r--r--dev-ruby/activejob/activejob-7.2.3.2.ebuild (renamed from dev-ruby/activejob/activejob-8.1.1.ebuild)49
-rw-r--r--dev-ruby/activejob/activejob-8.0.5.1.ebuild60
-rw-r--r--dev-ruby/activejob/activejob-8.1.3.1.ebuild60
-rw-r--r--dev-ruby/activejob/metadata.xml4
-rw-r--r--dev-ruby/activemodel/Manifest4
-rw-r--r--dev-ruby/activemodel/activemodel-7.2.3.2.ebuild (renamed from dev-ruby/activemodel/activemodel-8.1.1.ebuild)42
-rw-r--r--dev-ruby/activemodel/activemodel-8.0.5.1.ebuild57
-rw-r--r--dev-ruby/activemodel/activemodel-8.1.3.1.ebuild57
-rw-r--r--dev-ruby/activemodel/metadata.xml4
-rw-r--r--dev-ruby/activerecord/Manifest4
-rw-r--r--dev-ruby/activerecord/activerecord-7.2.3.2.ebuild93
-rw-r--r--dev-ruby/activerecord/activerecord-8.0.5.1.ebuild92
-rw-r--r--dev-ruby/activerecord/activerecord-8.1.1.ebuild96
-rw-r--r--dev-ruby/activerecord/activerecord-8.1.3.1.ebuild92
-rw-r--r--dev-ruby/activerecord/metadata.xml2
-rw-r--r--dev-ruby/activestorage/Manifest4
-rw-r--r--dev-ruby/activestorage/activestorage-7.2.3.2.ebuild89
-rw-r--r--dev-ruby/activestorage/activestorage-8.0.5.1.ebuild87
-rw-r--r--dev-ruby/activestorage/activestorage-8.1.1.ebuild86
-rw-r--r--dev-ruby/activestorage/activestorage-8.1.3.1.ebuild84
-rw-r--r--dev-ruby/activestorage/metadata.xml2
-rw-r--r--dev-ruby/activesupport/Manifest4
-rw-r--r--dev-ruby/activesupport/activesupport-7.2.3.2.ebuild84
-rw-r--r--dev-ruby/activesupport/activesupport-8.0.5.1.ebuild90
-rw-r--r--dev-ruby/activesupport/activesupport-8.1.1.ebuild91
-rw-r--r--dev-ruby/activesupport/activesupport-8.1.3.1.ebuild90
-rw-r--r--dev-ruby/activesupport/metadata.xml4
-rw-r--r--dev-ruby/bootsnap/Manifest1
-rw-r--r--dev-ruby/bootsnap/bootsnap-1.24.6.ebuild51
-rw-r--r--dev-ruby/bootsnap/metadata.xml12
-rw-r--r--dev-ruby/jbuilder/Manifest1
-rw-r--r--dev-ruby/jbuilder/jbuilder-2.15.1.ebuild75
-rw-r--r--dev-ruby/minitest-retry/Manifest1
-rw-r--r--dev-ruby/minitest-retry/metadata.xml12
-rw-r--r--dev-ruby/minitest-retry/minitest-retry-0.3.1.ebuild38
-rw-r--r--dev-ruby/propshaft/Manifest1
-rw-r--r--dev-ruby/propshaft/metadata.xml3
-rw-r--r--dev-ruby/propshaft/propshaft-1.3.2.ebuild40
-rw-r--r--dev-ruby/rails/Manifest4
-rw-r--r--dev-ruby/rails/metadata.xml2
-rw-r--r--dev-ruby/rails/rails-7.2.3.2.ebuild (renamed from dev-ruby/rails/rails-8.1.1.ebuild)6
-rw-r--r--dev-ruby/rails/rails-8.0.5.1.ebuild37
-rw-r--r--dev-ruby/rails/rails-8.1.3.1.ebuild37
-rw-r--r--dev-ruby/railties/Manifest4
-rw-r--r--dev-ruby/railties/metadata.xml4
-rw-r--r--dev-ruby/railties/railties-7.2.3.2.ebuild368
-rw-r--r--dev-ruby/railties/railties-8.0.5.1.ebuild349
-rw-r--r--dev-ruby/railties/railties-8.1.1.ebuild75
-rw-r--r--dev-ruby/railties/railties-8.1.3.1.ebuild349
-rw-r--r--dev-ruby/ruby-vips/Manifest1
-rw-r--r--dev-ruby/ruby-vips/metadata.xml13
-rw-r--r--dev-ruby/ruby-vips/ruby-vips-2.3.0.ebuild43
-rw-r--r--dev-ruby/sqlite3/Manifest1
-rw-r--r--dev-ruby/sqlite3/sqlite3-2.9.5.ebuild66
-rw-r--r--dev-ruby/web-console/web-console-4.2.1.ebuild4
88 files changed, 3818 insertions, 626 deletions
diff --git a/dev-ruby/actioncable/Manifest b/dev-ruby/actioncable/Manifest
index c8645b46085b..a51dc04c63e4 100644
--- a/dev-ruby/actioncable/Manifest
+++ b/dev-ruby/actioncable/Manifest
@@ -1,6 +1,8 @@
DIST rails-7.1.5.1.tgz 10953261 BLAKE2B a2fc77cba86d2c9bd4171e7fbd280d41a0c3e9fbf2f11fecfa399bc0f378ddbf963acac4ea8f77610c22304b5424400ee5f616f46ad7e18a8a274e6522dcd00e SHA512 3616569ab53fd26586682fe67501e3c72f13a91454765db5f5eb1f3c039e7d2cdef7a62f4179b37d0449fab970c5ec859a77feb307274799a48c95ca1d229307
DIST rails-7.1.6.tgz 10960488 BLAKE2B 3f5d4c164110c2169a1ccd3ccf03914195b868fb07c8ce99addd7c97bf1210f3eb3c330a2a040b946aa07366d6c29b1a07c86d264964312ae0fc292c79921d53 SHA512 67c7b6520a160c6d5f769368d10f38df53301f39fad19b6b6a34edf0590bbe894047d4aec1bbf8bdef0e720128d966b275c9600e9e717c163d4b13a207af90f6
+DIST rails-7.2.3.2.tgz 11231997 BLAKE2B 488ce3d59f80fde4682adca42bcb9a207747496ba6a6c0360ede5988573c0fd79d7e6c6742813df98149b505fb78a59203c83a32c76e7bc0bcc8e0a00c7c7a51 SHA512 61f6e6d5c178a8b73409de4d85dc3054d41d8d89293db4ba0e6a80b7278735ab7793522589f0fe414f7955163a01bdd89606cfcb9c04e46f0d5c39445f3aec92
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
-DIST rails-8.1.1.tgz 13019384 BLAKE2B 292c15166fa346a069bc1cbdd4c288722d474e53c3582f59d25ce16b7382122b9693981e6da24f64a57b7c80e07d64cbfa2769916daa8279dfe7b4924b301152 SHA512 4dcd8ef416eae2af8911801df1c0f4502cd625710df688bd8de3d4d4120fdddcdc38630982e8d4296d99a6113a52445e3d255228b17e7f6c625fd08b80e20150
+DIST rails-8.0.5.1.tgz 11920723 BLAKE2B 559554e12348cc5b12e9f8276786251e6f7b98c28967a88028c881d18c894f09765c5b1433e7e25c7dff75d4a45c11aa0924657fc66c1a986197843f110e769a SHA512 c433faf181b1dcd21286d98217765e2c735033b1ff9add941015bd9366cb89dcf749c92947e291e644e8df891bfb620aeeb096af93358c7db32abf58bb98d0aa
DIST rails-8.1.2.tgz 13031832 BLAKE2B 85bde01384698e7556d53339435b94f884a0c385adafd5dbcda9183e4d6899f0817805426c35b464d4a98a7f91753936450c00fe06f5460e43a0439e79ef5694 SHA512 b46e6d728bdfa846eeaaf10cdda0b680760665f9f003bbad01b40ab3c4356115aadd7bd7d394297f294e3122852e9505acbe8e9cc3606cf2ef136600ae38b473
+DIST rails-8.1.3.1.tgz 13043572 BLAKE2B d2d1d0af5de2fec54e6ebb8f25db665a130f3ef7a7b38e169b7f7e047c164446fefe3eb751f5ad28dd81529d5db67ae6de9a41c5a51d7835e7454fdd747a8a18 SHA512 bf13225334706c092199e49e42f2d71dda9d33cbd57f4ff1c6069d38cd857c503cb54c7f3d4778cefa4cce9479104dbd7d893752913a28af71333daf7872d422
diff --git a/dev-ruby/actioncable/actioncable-8.1.1.ebuild b/dev-ruby/actioncable/actioncable-7.2.3.2.ebuild
index ec241645d869..f0443de48c9d 100644
--- a/dev-ruby/actioncable/actioncable-8.1.1.ebuild
+++ b/dev-ruby/actioncable/actioncable-7.2.3.2.ebuild
@@ -1,33 +1,28 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 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_BINWRAP=""
RUBY_FAKEGEM_DOCDIR=""
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
RUBY_FAKEGEM_EXTRAINSTALL="app"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC=""
-RUBY_FAKEGEM_BINWRAP=""
-RUBY_FAKEGEM_TASK_TEST="-Ilib test"
-
-inherit ruby-fakegem
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
-IUSE="test"
-
-RUBY_S="rails-${PV}/${PN}"
+KEYWORDS="~amd64 ~arm64 ~x86"
ruby_add_rdepend "
~dev-ruby/actionpack-${PV}:*
@@ -39,19 +34,37 @@ ruby_add_rdepend "
ruby_add_bdepend "
test? (
- || ( dev-ruby/rack:3.2 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
- )"
+ dev-ruby/bundler
+ dev-ruby/minitest:5
+ >=www-servers/puma-5.0.3:*
+ )
+"
all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 5.0"
+
+ gem "puma", ">= 5.0.3"
+ EOF
+ rm ../Gemfile.lock || die
+
# 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
+ rm -f test/javascript_package_test.rb \
+ test/subscription_adapter/postgresql_test.rb \
+ test/subscription_adapter/redis_test.rb || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
}
diff --git a/dev-ruby/actioncable/actioncable-8.0.5.1.ebuild b/dev-ruby/actioncable/actioncable-8.0.5.1.ebuild
new file mode 100644
index 000000000000..6aca25f4b7b1
--- /dev/null
+++ b/dev-ruby/actioncable/actioncable-8.0.5.1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC=""
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+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/bundler
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ >=www-servers/puma-5.0.3:*
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "puma", ">= 5.0.3"
+ EOF
+ rm ../Gemfile.lock || die
+
+ # 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/postgresql_test.rb \
+ test/subscription_adapter/redis_test.rb || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/actioncable/actioncable-8.1.3.1.ebuild b/dev-ruby/actioncable/actioncable-8.1.3.1.ebuild
new file mode 100644
index 000000000000..6aca25f4b7b1
--- /dev/null
+++ b/dev-ruby/actioncable/actioncable-8.1.3.1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC=""
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+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/bundler
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ >=www-servers/puma-5.0.3:*
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "puma", ">= 5.0.3"
+ EOF
+ rm ../Gemfile.lock || die
+
+ # 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/postgresql_test.rb \
+ test/subscription_adapter/redis_test.rb || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/actioncable/metadata.xml b/dev-ruby/actioncable/metadata.xml
index c685ebad7e3a..68b9b19535fc 100644
--- a/dev-ruby/actioncable/metadata.xml
+++ b/dev-ruby/actioncable/metadata.xml
@@ -5,5 +5,9 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+ <upstream>
+ <doc>https://api.rubyonrails.org/</doc>
+ <remote-id type="rubygems">actioncable</remote-id>
+ </upstream>
<origin>baldeagleos-repo</origin>
</pkgmetadata>
diff --git a/dev-ruby/actionmailbox/Manifest b/dev-ruby/actionmailbox/Manifest
index c8645b46085b..a51dc04c63e4 100644
--- a/dev-ruby/actionmailbox/Manifest
+++ b/dev-ruby/actionmailbox/Manifest
@@ -1,6 +1,8 @@
DIST rails-7.1.5.1.tgz 10953261 BLAKE2B a2fc77cba86d2c9bd4171e7fbd280d41a0c3e9fbf2f11fecfa399bc0f378ddbf963acac4ea8f77610c22304b5424400ee5f616f46ad7e18a8a274e6522dcd00e SHA512 3616569ab53fd26586682fe67501e3c72f13a91454765db5f5eb1f3c039e7d2cdef7a62f4179b37d0449fab970c5ec859a77feb307274799a48c95ca1d229307
DIST rails-7.1.6.tgz 10960488 BLAKE2B 3f5d4c164110c2169a1ccd3ccf03914195b868fb07c8ce99addd7c97bf1210f3eb3c330a2a040b946aa07366d6c29b1a07c86d264964312ae0fc292c79921d53 SHA512 67c7b6520a160c6d5f769368d10f38df53301f39fad19b6b6a34edf0590bbe894047d4aec1bbf8bdef0e720128d966b275c9600e9e717c163d4b13a207af90f6
+DIST rails-7.2.3.2.tgz 11231997 BLAKE2B 488ce3d59f80fde4682adca42bcb9a207747496ba6a6c0360ede5988573c0fd79d7e6c6742813df98149b505fb78a59203c83a32c76e7bc0bcc8e0a00c7c7a51 SHA512 61f6e6d5c178a8b73409de4d85dc3054d41d8d89293db4ba0e6a80b7278735ab7793522589f0fe414f7955163a01bdd89606cfcb9c04e46f0d5c39445f3aec92
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
-DIST rails-8.1.1.tgz 13019384 BLAKE2B 292c15166fa346a069bc1cbdd4c288722d474e53c3582f59d25ce16b7382122b9693981e6da24f64a57b7c80e07d64cbfa2769916daa8279dfe7b4924b301152 SHA512 4dcd8ef416eae2af8911801df1c0f4502cd625710df688bd8de3d4d4120fdddcdc38630982e8d4296d99a6113a52445e3d255228b17e7f6c625fd08b80e20150
+DIST rails-8.0.5.1.tgz 11920723 BLAKE2B 559554e12348cc5b12e9f8276786251e6f7b98c28967a88028c881d18c894f09765c5b1433e7e25c7dff75d4a45c11aa0924657fc66c1a986197843f110e769a SHA512 c433faf181b1dcd21286d98217765e2c735033b1ff9add941015bd9366cb89dcf749c92947e291e644e8df891bfb620aeeb096af93358c7db32abf58bb98d0aa
DIST rails-8.1.2.tgz 13031832 BLAKE2B 85bde01384698e7556d53339435b94f884a0c385adafd5dbcda9183e4d6899f0817805426c35b464d4a98a7f91753936450c00fe06f5460e43a0439e79ef5694 SHA512 b46e6d728bdfa846eeaaf10cdda0b680760665f9f003bbad01b40ab3c4356115aadd7bd7d394297f294e3122852e9505acbe8e9cc3606cf2ef136600ae38b473
+DIST rails-8.1.3.1.tgz 13043572 BLAKE2B d2d1d0af5de2fec54e6ebb8f25db665a130f3ef7a7b38e169b7f7e047c164446fefe3eb751f5ad28dd81529d5db67ae6de9a41c5a51d7835e7454fdd747a8a18 SHA512 bf13225334706c092199e49e42f2d71dda9d33cbd57f4ff1c6069d38cd857c503cb54c7f3d4778cefa4cce9479104dbd7d893752913a28af71333daf7872d422
diff --git a/dev-ruby/actionmailbox/actionmailbox-7.2.3.2.ebuild b/dev-ruby/actionmailbox/actionmailbox-7.2.3.2.ebuild
new file mode 100644
index 000000000000..eef74364d7f8
--- /dev/null
+++ b/dev-ruby/actionmailbox/actionmailbox-7.2.3.2.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2026 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="CHANGELOG.md README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="app config db"
+RUBY_FAKEGEM_GEMSPEC="actionmailbox.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+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/propshaft-0.1.7
+ >=dev-ruby/sqlite3-1.6.6
+ dev-ruby/webmock
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 5.0"
+
+ gem "propshaft", ">= 0.1.7"
+ gem "sqlite3", ">= 1.6.6"
+ gem "webmock"
+ EOF
+ rm ../Gemfile.lock || die
+}
+
+each_ruby_prepare() {
+ sed -e 's:ruby:'${RUBY}':' -i test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actionmailbox/actionmailbox-8.0.5.1.ebuild b/dev-ruby/actionmailbox/actionmailbox-8.0.5.1.ebuild
new file mode 100644
index 000000000000..8bafd5b15dcd
--- /dev/null
+++ b/dev-ruby/actionmailbox/actionmailbox-8.0.5.1.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="app config db"
+RUBY_FAKEGEM_GEMSPEC="actionmailbox.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+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:6
+ dev-ruby/minitest-mock
+ >=dev-ruby/propshaft-0.1.7
+ >=dev-ruby/sqlite3-2.1
+ dev-ruby/webmock
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "propshaft", ">= 0.1.7"
+ gem "sqlite3", ">= 2.1"
+ gem "webmock"
+ EOF
+ rm ../Gemfile.lock || die
+}
+
+each_ruby_prepare() {
+ sed -e 's:ruby:'${RUBY}':' -i test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actionmailbox/actionmailbox-8.1.1.ebuild b/dev-ruby/actionmailbox/actionmailbox-8.1.1.ebuild
deleted file mode 100644
index 10a4f3f04122..000000000000
--- a/dev-ruby/actionmailbox/actionmailbox-8.1.1.ebuild
+++ /dev/null
@@ -1,62 +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="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-2.1
- 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:^:#:' \
- -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/actionmailbox/actionmailbox-8.1.3.1.ebuild b/dev-ruby/actionmailbox/actionmailbox-8.1.3.1.ebuild
new file mode 100644
index 000000000000..8bafd5b15dcd
--- /dev/null
+++ b/dev-ruby/actionmailbox/actionmailbox-8.1.3.1.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="app config db"
+RUBY_FAKEGEM_GEMSPEC="actionmailbox.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+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:6
+ dev-ruby/minitest-mock
+ >=dev-ruby/propshaft-0.1.7
+ >=dev-ruby/sqlite3-2.1
+ dev-ruby/webmock
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "propshaft", ">= 0.1.7"
+ gem "sqlite3", ">= 2.1"
+ gem "webmock"
+ EOF
+ rm ../Gemfile.lock || die
+}
+
+each_ruby_prepare() {
+ sed -e 's:ruby:'${RUBY}':' -i test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actionmailbox/metadata.xml b/dev-ruby/actionmailbox/metadata.xml
index c685ebad7e3a..31fd26342a2b 100644
--- a/dev-ruby/actionmailbox/metadata.xml
+++ b/dev-ruby/actionmailbox/metadata.xml
@@ -5,5 +5,9 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+ <upstream>
+ <doc>https://api.rubyonrails.org/</doc>
+ <remote-id type="rubygems">actionmailbox</remote-id>
+ </upstream>
<origin>baldeagleos-repo</origin>
</pkgmetadata>
diff --git a/dev-ruby/actionmailer/Manifest b/dev-ruby/actionmailer/Manifest
index c8645b46085b..a51dc04c63e4 100644
--- a/dev-ruby/actionmailer/Manifest
+++ b/dev-ruby/actionmailer/Manifest
@@ -1,6 +1,8 @@
DIST rails-7.1.5.1.tgz 10953261 BLAKE2B a2fc77cba86d2c9bd4171e7fbd280d41a0c3e9fbf2f11fecfa399bc0f378ddbf963acac4ea8f77610c22304b5424400ee5f616f46ad7e18a8a274e6522dcd00e SHA512 3616569ab53fd26586682fe67501e3c72f13a91454765db5f5eb1f3c039e7d2cdef7a62f4179b37d0449fab970c5ec859a77feb307274799a48c95ca1d229307
DIST rails-7.1.6.tgz 10960488 BLAKE2B 3f5d4c164110c2169a1ccd3ccf03914195b868fb07c8ce99addd7c97bf1210f3eb3c330a2a040b946aa07366d6c29b1a07c86d264964312ae0fc292c79921d53 SHA512 67c7b6520a160c6d5f769368d10f38df53301f39fad19b6b6a34edf0590bbe894047d4aec1bbf8bdef0e720128d966b275c9600e9e717c163d4b13a207af90f6
+DIST rails-7.2.3.2.tgz 11231997 BLAKE2B 488ce3d59f80fde4682adca42bcb9a207747496ba6a6c0360ede5988573c0fd79d7e6c6742813df98149b505fb78a59203c83a32c76e7bc0bcc8e0a00c7c7a51 SHA512 61f6e6d5c178a8b73409de4d85dc3054d41d8d89293db4ba0e6a80b7278735ab7793522589f0fe414f7955163a01bdd89606cfcb9c04e46f0d5c39445f3aec92
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
-DIST rails-8.1.1.tgz 13019384 BLAKE2B 292c15166fa346a069bc1cbdd4c288722d474e53c3582f59d25ce16b7382122b9693981e6da24f64a57b7c80e07d64cbfa2769916daa8279dfe7b4924b301152 SHA512 4dcd8ef416eae2af8911801df1c0f4502cd625710df688bd8de3d4d4120fdddcdc38630982e8d4296d99a6113a52445e3d255228b17e7f6c625fd08b80e20150
+DIST rails-8.0.5.1.tgz 11920723 BLAKE2B 559554e12348cc5b12e9f8276786251e6f7b98c28967a88028c881d18c894f09765c5b1433e7e25c7dff75d4a45c11aa0924657fc66c1a986197843f110e769a SHA512 c433faf181b1dcd21286d98217765e2c735033b1ff9add941015bd9366cb89dcf749c92947e291e644e8df891bfb620aeeb096af93358c7db32abf58bb98d0aa
DIST rails-8.1.2.tgz 13031832 BLAKE2B 85bde01384698e7556d53339435b94f884a0c385adafd5dbcda9183e4d6899f0817805426c35b464d4a98a7f91753936450c00fe06f5460e43a0439e79ef5694 SHA512 b46e6d728bdfa846eeaaf10cdda0b680760665f9f003bbad01b40ab3c4356115aadd7bd7d394297f294e3122852e9505acbe8e9cc3606cf2ef136600ae38b473
+DIST rails-8.1.3.1.tgz 13043572 BLAKE2B d2d1d0af5de2fec54e6ebb8f25db665a130f3ef7a7b38e169b7f7e047c164446fefe3eb751f5ad28dd81529d5db67ae6de9a41c5a51d7835e7454fdd747a8a18 SHA512 bf13225334706c092199e49e42f2d71dda9d33cbd57f4ff1c6069d38cd857c503cb54c7f3d4778cefa4cce9479104dbd7d893752913a28af71333daf7872d422
diff --git a/dev-ruby/actionmailer/actionmailer-8.1.1.ebuild b/dev-ruby/actionmailer/actionmailer-7.2.3.2.ebuild
index 5848c0883880..1d01f7580991 100644
--- a/dev-ruby/actionmailer/actionmailer-8.1.1.ebuild
+++ b/dev-ruby/actionmailer/actionmailer-7.2.3.2.ebuild
@@ -1,29 +1,26 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 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_BINWRAP=""
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
-IUSE="test"
-
-RUBY_S="rails-${PV}/${PN}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
ruby_add_rdepend "
~dev-ruby/actionpack-${PV}
@@ -33,19 +30,28 @@ ruby_add_rdepend "
>=dev-ruby/mail-2.8.0
>=dev-ruby/rails-dom-testing-2.2:2"
-ruby_add_bdepend "test? (
- dev-ruby/mocha
-)"
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ dev-ruby/minitest:5
+ )
+"
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.1.0"; gem "activejob", "~> 8.1.0"' \
- -i test/abstract_unit.rb || die "Unable to remove load paths"
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 5.0"
+ EOF
+ rm ../Gemfile.lock || die
+}
- # 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
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
}
diff --git a/dev-ruby/actionmailer/actionmailer-8.0.5.1.ebuild b/dev-ruby/actionmailer/actionmailer-8.0.5.1.ebuild
new file mode 100644
index 000000000000..4f864c384a5f
--- /dev/null
+++ b/dev-ruby/actionmailer/actionmailer-8.0.5.1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+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/bundler
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+ EOF
+ rm ../Gemfile.lock || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/actionmailer/actionmailer-8.1.3.1.ebuild b/dev-ruby/actionmailer/actionmailer-8.1.3.1.ebuild
new file mode 100644
index 000000000000..4f864c384a5f
--- /dev/null
+++ b/dev-ruby/actionmailer/actionmailer-8.1.3.1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+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/bundler
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+ EOF
+ rm ../Gemfile.lock || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/actionmailer/metadata.xml b/dev-ruby/actionmailer/metadata.xml
index c685ebad7e3a..0c0873a6611c 100644
--- a/dev-ruby/actionmailer/metadata.xml
+++ b/dev-ruby/actionmailer/metadata.xml
@@ -5,5 +5,9 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+ <upstream>
+ <doc>https://api.rubyonrails.org/</doc>
+ <remote-id type="rubygems">actionmailer</remote-id>
+ </upstream>
<origin>baldeagleos-repo</origin>
</pkgmetadata>
diff --git a/dev-ruby/actionpack/Manifest b/dev-ruby/actionpack/Manifest
index c8645b46085b..a51dc04c63e4 100644
--- a/dev-ruby/actionpack/Manifest
+++ b/dev-ruby/actionpack/Manifest
@@ -1,6 +1,8 @@
DIST rails-7.1.5.1.tgz 10953261 BLAKE2B a2fc77cba86d2c9bd4171e7fbd280d41a0c3e9fbf2f11fecfa399bc0f378ddbf963acac4ea8f77610c22304b5424400ee5f616f46ad7e18a8a274e6522dcd00e SHA512 3616569ab53fd26586682fe67501e3c72f13a91454765db5f5eb1f3c039e7d2cdef7a62f4179b37d0449fab970c5ec859a77feb307274799a48c95ca1d229307
DIST rails-7.1.6.tgz 10960488 BLAKE2B 3f5d4c164110c2169a1ccd3ccf03914195b868fb07c8ce99addd7c97bf1210f3eb3c330a2a040b946aa07366d6c29b1a07c86d264964312ae0fc292c79921d53 SHA512 67c7b6520a160c6d5f769368d10f38df53301f39fad19b6b6a34edf0590bbe894047d4aec1bbf8bdef0e720128d966b275c9600e9e717c163d4b13a207af90f6
+DIST rails-7.2.3.2.tgz 11231997 BLAKE2B 488ce3d59f80fde4682adca42bcb9a207747496ba6a6c0360ede5988573c0fd79d7e6c6742813df98149b505fb78a59203c83a32c76e7bc0bcc8e0a00c7c7a51 SHA512 61f6e6d5c178a8b73409de4d85dc3054d41d8d89293db4ba0e6a80b7278735ab7793522589f0fe414f7955163a01bdd89606cfcb9c04e46f0d5c39445f3aec92
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
-DIST rails-8.1.1.tgz 13019384 BLAKE2B 292c15166fa346a069bc1cbdd4c288722d474e53c3582f59d25ce16b7382122b9693981e6da24f64a57b7c80e07d64cbfa2769916daa8279dfe7b4924b301152 SHA512 4dcd8ef416eae2af8911801df1c0f4502cd625710df688bd8de3d4d4120fdddcdc38630982e8d4296d99a6113a52445e3d255228b17e7f6c625fd08b80e20150
+DIST rails-8.0.5.1.tgz 11920723 BLAKE2B 559554e12348cc5b12e9f8276786251e6f7b98c28967a88028c881d18c894f09765c5b1433e7e25c7dff75d4a45c11aa0924657fc66c1a986197843f110e769a SHA512 c433faf181b1dcd21286d98217765e2c735033b1ff9add941015bd9366cb89dcf749c92947e291e644e8df891bfb620aeeb096af93358c7db32abf58bb98d0aa
DIST rails-8.1.2.tgz 13031832 BLAKE2B 85bde01384698e7556d53339435b94f884a0c385adafd5dbcda9183e4d6899f0817805426c35b464d4a98a7f91753936450c00fe06f5460e43a0439e79ef5694 SHA512 b46e6d728bdfa846eeaaf10cdda0b680760665f9f003bbad01b40ab3c4356115aadd7bd7d394297f294e3122852e9505acbe8e9cc3606cf2ef136600ae38b473
+DIST rails-8.1.3.1.tgz 13043572 BLAKE2B d2d1d0af5de2fec54e6ebb8f25db665a130f3ef7a7b38e169b7f7e047c164446fefe3eb751f5ad28dd81529d5db67ae6de9a41c5a51d7835e7454fdd747a8a18 SHA512 bf13225334706c092199e49e42f2d71dda9d33cbd57f4ff1c6069d38cd857c503cb54c7f3d4778cefa4cce9479104dbd7d893752913a28af71333daf7872d422
diff --git a/dev-ruby/actionpack/actionpack-8.1.1.ebuild b/dev-ruby/actionpack/actionpack-7.2.3.2.ebuild
index 7b2e65631a93..a4d75f5336c5 100644
--- a/dev-ruby/actionpack/actionpack-8.1.1.ebuild
+++ b/dev-ruby/actionpack/actionpack-7.2.3.2.ebuild
@@ -1,36 +1,34 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 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_BINWRAP=""
RUBY_FAKEGEM_DOCDIR="doc"
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86"
-IUSE="test"
-
-RUBY_S="rails-${PV}/${PN}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
ruby_add_rdepend "
~dev-ruby/actionview-${PV}
~dev-ruby/activesupport-${PV}
>=dev-ruby/nokogiri-1.8.5
- || ( dev-ruby/rack:3.2 dev-ruby/rack:3.1 dev-ruby/rack:3.0 >=dev-ruby/rack-2.2.4:2.2 )
+ dev-ruby/racc
+ >=dev-ruby/rack-2.2.4:*
>=dev-ruby/rack-session-1.0.1
>=dev-ruby/rack-test-0.6.3:*
>=dev-ruby/rails-dom-testing-2.2:2
@@ -40,29 +38,37 @@ ruby_add_rdepend "
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/capybara-3.39
+ dev-ruby/launchy
dev-ruby/minitest:5
- )"
+ >=dev-ruby/msgpack-1.7.0
+ >=dev-ruby/rack-cache-1.2:1.2
+ >=dev-ruby/selenium-webdriver-4.20.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 -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
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
- # Fix errors loading rack/session with rack 3.0 and missing OpenStruct
- sed -i -e '2igem "rack-session"; require "ostruct"' test/abstract_unit.rb || die
+ gem "minitest", "~> 5.0"
+
+ gem "capybara", ">= 3.39"
+ gem "launchy"
+ gem "msgpack", ">= 1.7.0"
+ gem "rack-cache", "~> 1.2"
+ gem "selenium-webdriver", ">= 4.20.0"
+ EOF
+ rm ../Gemfile.lock || die
# Avoid tests failing with rails-dom-testing 2.3 (fixed upstream)
+ # https://github.com/rails/rails/issues/55093 (Still failing??)
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
@@ -71,3 +77,14 @@ all_ruby_prepare() {
-i test/abstract_unit.rb || die
rm -f test/dispatch/system_testing/{driver,screenshot_helper,system_test_case}_test.rb || die
}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ case ${TEST_VERBOSE} in
+ 1|yes|true)
+ local -x TESTOPTS="${TESTOPTS} --verbose"
+ ;;
+ esac
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/actionpack/actionpack-8.0.5.1.ebuild b/dev-ruby/actionpack/actionpack-8.0.5.1.ebuild
new file mode 100644
index 000000000000..8ee941ee6b68
--- /dev/null
+++ b/dev-ruby/actionpack/actionpack-8.0.5.1.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/nokogiri-1.8.5
+ >=dev-ruby/rack-2.2.4:*
+ >=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/bundler
+ ~dev-ruby/activemodel-${PV}
+ >=dev-ruby/capybara-3.39
+ dev-ruby/launchy
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ >=dev-ruby/msgpack-1.7.0
+ >=dev-ruby/rack-cache-1.2:1.2
+ >=dev-ruby/selenium-webdriver-4.20.0
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "capybara", ">= 3.39"
+ gem "launchy"
+ gem "msgpack", ">= 1.7.0"
+ gem "rack-cache", "~> 1.2"
+ gem "selenium-webdriver", ">= 4.20.0"
+ EOF
+ rm ../Gemfile.lock || die
+
+ # Avoid tests failing with rails-dom-testing 2.3 (fixed upstream)
+ # https://github.com/rails/rails/issues/55093 (Still failing??)
+ 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
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ case ${TEST_VERBOSE} in
+ 1|yes|true)
+ local -x TESTOPTS="${TESTOPTS} --verbose"
+ ;;
+ esac
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/actionpack/actionpack-8.1.3.1.ebuild b/dev-ruby/actionpack/actionpack-8.1.3.1.ebuild
new file mode 100644
index 000000000000..8ee941ee6b68
--- /dev/null
+++ b/dev-ruby/actionpack/actionpack-8.1.3.1.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/nokogiri-1.8.5
+ >=dev-ruby/rack-2.2.4:*
+ >=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/bundler
+ ~dev-ruby/activemodel-${PV}
+ >=dev-ruby/capybara-3.39
+ dev-ruby/launchy
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ >=dev-ruby/msgpack-1.7.0
+ >=dev-ruby/rack-cache-1.2:1.2
+ >=dev-ruby/selenium-webdriver-4.20.0
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "capybara", ">= 3.39"
+ gem "launchy"
+ gem "msgpack", ">= 1.7.0"
+ gem "rack-cache", "~> 1.2"
+ gem "selenium-webdriver", ">= 4.20.0"
+ EOF
+ rm ../Gemfile.lock || die
+
+ # Avoid tests failing with rails-dom-testing 2.3 (fixed upstream)
+ # https://github.com/rails/rails/issues/55093 (Still failing??)
+ 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
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ case ${TEST_VERBOSE} in
+ 1|yes|true)
+ local -x TESTOPTS="${TESTOPTS} --verbose"
+ ;;
+ esac
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/actionpack/metadata.xml b/dev-ruby/actionpack/metadata.xml
index f2bbe7f32616..7d87c2c1e7ec 100644
--- a/dev-ruby/actionpack/metadata.xml
+++ b/dev-ruby/actionpack/metadata.xml
@@ -6,6 +6,8 @@
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
+ <doc>https://api.rubyonrails.org/</doc>
+ <remote-id type="rubygems">actionpack</remote-id>
<remote-id type="cpe">cpe:/a:rubyonrails:actionpack</remote-id>
</upstream>
<origin>baldeagleos-repo</origin>
diff --git a/dev-ruby/actiontext/Manifest b/dev-ruby/actiontext/Manifest
index c8645b46085b..a51dc04c63e4 100644
--- a/dev-ruby/actiontext/Manifest
+++ b/dev-ruby/actiontext/Manifest
@@ -1,6 +1,8 @@
DIST rails-7.1.5.1.tgz 10953261 BLAKE2B a2fc77cba86d2c9bd4171e7fbd280d41a0c3e9fbf2f11fecfa399bc0f378ddbf963acac4ea8f77610c22304b5424400ee5f616f46ad7e18a8a274e6522dcd00e SHA512 3616569ab53fd26586682fe67501e3c72f13a91454765db5f5eb1f3c039e7d2cdef7a62f4179b37d0449fab970c5ec859a77feb307274799a48c95ca1d229307
DIST rails-7.1.6.tgz 10960488 BLAKE2B 3f5d4c164110c2169a1ccd3ccf03914195b868fb07c8ce99addd7c97bf1210f3eb3c330a2a040b946aa07366d6c29b1a07c86d264964312ae0fc292c79921d53 SHA512 67c7b6520a160c6d5f769368d10f38df53301f39fad19b6b6a34edf0590bbe894047d4aec1bbf8bdef0e720128d966b275c9600e9e717c163d4b13a207af90f6
+DIST rails-7.2.3.2.tgz 11231997 BLAKE2B 488ce3d59f80fde4682adca42bcb9a207747496ba6a6c0360ede5988573c0fd79d7e6c6742813df98149b505fb78a59203c83a32c76e7bc0bcc8e0a00c7c7a51 SHA512 61f6e6d5c178a8b73409de4d85dc3054d41d8d89293db4ba0e6a80b7278735ab7793522589f0fe414f7955163a01bdd89606cfcb9c04e46f0d5c39445f3aec92
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
-DIST rails-8.1.1.tgz 13019384 BLAKE2B 292c15166fa346a069bc1cbdd4c288722d474e53c3582f59d25ce16b7382122b9693981e6da24f64a57b7c80e07d64cbfa2769916daa8279dfe7b4924b301152 SHA512 4dcd8ef416eae2af8911801df1c0f4502cd625710df688bd8de3d4d4120fdddcdc38630982e8d4296d99a6113a52445e3d255228b17e7f6c625fd08b80e20150
+DIST rails-8.0.5.1.tgz 11920723 BLAKE2B 559554e12348cc5b12e9f8276786251e6f7b98c28967a88028c881d18c894f09765c5b1433e7e25c7dff75d4a45c11aa0924657fc66c1a986197843f110e769a SHA512 c433faf181b1dcd21286d98217765e2c735033b1ff9add941015bd9366cb89dcf749c92947e291e644e8df891bfb620aeeb096af93358c7db32abf58bb98d0aa
DIST rails-8.1.2.tgz 13031832 BLAKE2B 85bde01384698e7556d53339435b94f884a0c385adafd5dbcda9183e4d6899f0817805426c35b464d4a98a7f91753936450c00fe06f5460e43a0439e79ef5694 SHA512 b46e6d728bdfa846eeaaf10cdda0b680760665f9f003bbad01b40ab3c4356115aadd7bd7d394297f294e3122852e9505acbe8e9cc3606cf2ef136600ae38b473
+DIST rails-8.1.3.1.tgz 13043572 BLAKE2B d2d1d0af5de2fec54e6ebb8f25db665a130f3ef7a7b38e169b7f7e047c164446fefe3eb751f5ad28dd81529d5db67ae6de9a41c5a51d7835e7454fdd747a8a18 SHA512 bf13225334706c092199e49e42f2d71dda9d33cbd57f4ff1c6069d38cd857c503cb54c7f3d4778cefa4cce9479104dbd7d893752913a28af71333daf7872d422
diff --git a/dev-ruby/actiontext/actiontext-7.2.3.2.ebuild b/dev-ruby/actiontext/actiontext-7.2.3.2.ebuild
new file mode 100644
index 000000000000..04bf4bc1a9f2
--- /dev/null
+++ b/dev-ruby/actiontext/actiontext-7.2.3.2.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2026 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="CHANGELOG.md README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="app db package.json"
+RUBY_FAKEGEM_GEMSPEC="actiontext.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+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/propshaft-0.1.7
+ >=dev-ruby/sqlite3-1.6.6
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 5.0"
+
+ gem "importmap-rails", ">= 1.2.3"
+ gem "propshaft", ">= 0.1.7"
+ gem "sqlite3", ">= 1.6.6"
+ EOF
+ 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() {
+ local -x SEED="2"
+ each_fakegem_test
+}
diff --git a/dev-ruby/actiontext/actiontext-8.0.5.1.ebuild b/dev-ruby/actiontext/actiontext-8.0.5.1.ebuild
new file mode 100644
index 000000000000..ed6690a8b30e
--- /dev/null
+++ b/dev-ruby/actiontext/actiontext-8.0.5.1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="app db package.json"
+RUBY_FAKEGEM_GEMSPEC="actiontext.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+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:6
+ dev-ruby/minitest-mock
+ >=dev-ruby/propshaft-0.1.7
+ >=dev-ruby/sqlite3-2.1
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "importmap-rails", ">= 1.2.3"
+ gem "propshaft", ">= 0.1.7"
+ gem "sqlite3", ">= 2.1"
+ EOF
+ 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() {
+ local -x SEED="2"
+ each_fakegem_test
+}
diff --git a/dev-ruby/actiontext/actiontext-8.1.1.ebuild b/dev-ruby/actiontext/actiontext-8.1.1.ebuild
deleted file mode 100644
index 8c7b539a2872..000000000000
--- a/dev-ruby/actiontext/actiontext-8.1.1.ebuild
+++ /dev/null
@@ -1,70 +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="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/action_text-trix-2.1.15:2
- ~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-2.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.
- 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:^:#:' \
- -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/actiontext/actiontext-8.1.3.1.ebuild b/dev-ruby/actiontext/actiontext-8.1.3.1.ebuild
new file mode 100644
index 000000000000..c6c0c293051f
--- /dev/null
+++ b/dev-ruby/actiontext/actiontext-8.1.3.1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="app db package.json"
+RUBY_FAKEGEM_GEMSPEC="actiontext.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ >=dev-ruby/action_text-trix-2.1.15:2
+ ~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:6
+ dev-ruby/minitest-mock
+ >=dev-ruby/propshaft-0.1.7
+ >=dev-ruby/sqlite3-2.1
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "importmap-rails", ">= 1.2.3"
+ gem "propshaft", ">= 0.1.7"
+ gem "sqlite3", ">= 2.1"
+ EOF
+ 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() {
+ local -x SEED="2"
+ each_fakegem_test
+}
diff --git a/dev-ruby/actiontext/metadata.xml b/dev-ruby/actiontext/metadata.xml
index c685ebad7e3a..c548028b9b69 100644
--- a/dev-ruby/actiontext/metadata.xml
+++ b/dev-ruby/actiontext/metadata.xml
@@ -5,5 +5,9 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+ <upstream>
+ <doc>https://api.rubyonrails.org/</doc>
+ <remote-id type="rubygems">actiontext</remote-id>
+ </upstream>
<origin>baldeagleos-repo</origin>
</pkgmetadata>
diff --git a/dev-ruby/actionview/Manifest b/dev-ruby/actionview/Manifest
index c8645b46085b..a51dc04c63e4 100644
--- a/dev-ruby/actionview/Manifest
+++ b/dev-ruby/actionview/Manifest
@@ -1,6 +1,8 @@
DIST rails-7.1.5.1.tgz 10953261 BLAKE2B a2fc77cba86d2c9bd4171e7fbd280d41a0c3e9fbf2f11fecfa399bc0f378ddbf963acac4ea8f77610c22304b5424400ee5f616f46ad7e18a8a274e6522dcd00e SHA512 3616569ab53fd26586682fe67501e3c72f13a91454765db5f5eb1f3c039e7d2cdef7a62f4179b37d0449fab970c5ec859a77feb307274799a48c95ca1d229307
DIST rails-7.1.6.tgz 10960488 BLAKE2B 3f5d4c164110c2169a1ccd3ccf03914195b868fb07c8ce99addd7c97bf1210f3eb3c330a2a040b946aa07366d6c29b1a07c86d264964312ae0fc292c79921d53 SHA512 67c7b6520a160c6d5f769368d10f38df53301f39fad19b6b6a34edf0590bbe894047d4aec1bbf8bdef0e720128d966b275c9600e9e717c163d4b13a207af90f6
+DIST rails-7.2.3.2.tgz 11231997 BLAKE2B 488ce3d59f80fde4682adca42bcb9a207747496ba6a6c0360ede5988573c0fd79d7e6c6742813df98149b505fb78a59203c83a32c76e7bc0bcc8e0a00c7c7a51 SHA512 61f6e6d5c178a8b73409de4d85dc3054d41d8d89293db4ba0e6a80b7278735ab7793522589f0fe414f7955163a01bdd89606cfcb9c04e46f0d5c39445f3aec92
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
-DIST rails-8.1.1.tgz 13019384 BLAKE2B 292c15166fa346a069bc1cbdd4c288722d474e53c3582f59d25ce16b7382122b9693981e6da24f64a57b7c80e07d64cbfa2769916daa8279dfe7b4924b301152 SHA512 4dcd8ef416eae2af8911801df1c0f4502cd625710df688bd8de3d4d4120fdddcdc38630982e8d4296d99a6113a52445e3d255228b17e7f6c625fd08b80e20150
+DIST rails-8.0.5.1.tgz 11920723 BLAKE2B 559554e12348cc5b12e9f8276786251e6f7b98c28967a88028c881d18c894f09765c5b1433e7e25c7dff75d4a45c11aa0924657fc66c1a986197843f110e769a SHA512 c433faf181b1dcd21286d98217765e2c735033b1ff9add941015bd9366cb89dcf749c92947e291e644e8df891bfb620aeeb096af93358c7db32abf58bb98d0aa
DIST rails-8.1.2.tgz 13031832 BLAKE2B 85bde01384698e7556d53339435b94f884a0c385adafd5dbcda9183e4d6899f0817805426c35b464d4a98a7f91753936450c00fe06f5460e43a0439e79ef5694 SHA512 b46e6d728bdfa846eeaaf10cdda0b680760665f9f003bbad01b40ab3c4356115aadd7bd7d394297f294e3122852e9505acbe8e9cc3606cf2ef136600ae38b473
+DIST rails-8.1.3.1.tgz 13043572 BLAKE2B d2d1d0af5de2fec54e6ebb8f25db665a130f3ef7a7b38e169b7f7e047c164446fefe3eb751f5ad28dd81529d5db67ae6de9a41c5a51d7835e7454fdd747a8a18 SHA512 bf13225334706c092199e49e42f2d71dda9d33cbd57f4ff1c6069d38cd857c503cb54c7f3d4778cefa4cce9479104dbd7d893752913a28af71333daf7872d422
diff --git a/dev-ruby/actionview/actionview-8.1.1.ebuild b/dev-ruby/actionview/actionview-7.2.3.2.ebuild
index 202dcb96d93f..0a1ceb213e93 100644
--- a/dev-ruby/actionview/actionview-8.1.1.ebuild
+++ b/dev-ruby/actionview/actionview-7.2.3.2.ebuild
@@ -1,32 +1,28 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 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_BINWRAP=""
RUBY_FAKEGEM_DOCDIR="doc"
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
RUBY_FAKEGEM_EXTRAINSTALL="app"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86"
-IUSE="test"
-
-RUBY_S="rails-${PV}/${PN}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
ruby_add_rdepend "
~dev-ruby/activesupport-${PV}
@@ -38,22 +34,36 @@ ruby_add_rdepend "
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/capybara-3.39
dev-ruby/minitest:5
- )"
+ >=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 -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
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 5.0"
+
+ gem "actionpack", "${PV}"
+ gem "activemodel", "${PV}"
+ gem "activerecord", "${PV}"
+ gem "capybara", ">= 3.39"
+ gem "sqlite3", ">= 1.6.6"
+ EOF
rm ../Gemfile.lock || die
}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/actionview/actionview-8.0.5.1.ebuild b/dev-ruby/actionview/actionview-8.0.5.1.ebuild
new file mode 100644
index 000000000000..a9f81f59c864
--- /dev/null
+++ b/dev-ruby/actionview/actionview-8.0.5.1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+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/actionpack-${PV}
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/activerecord-${PV}
+ >=dev-ruby/capybara-3.39
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ >=dev-ruby/sqlite3-2.1
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "actionpack", "${PV}"
+ gem "activemodel", "${PV}"
+ gem "activerecord", "${PV}"
+ gem "capybara", ">= 3.39"
+ gem "sqlite3", ">= 2.1"
+ EOF
+ rm ../Gemfile.lock || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/actionview/actionview-8.1.3.1.ebuild b/dev-ruby/actionview/actionview-8.1.3.1.ebuild
new file mode 100644
index 000000000000..a9f81f59c864
--- /dev/null
+++ b/dev-ruby/actionview/actionview-8.1.3.1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+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/actionpack-${PV}
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/activerecord-${PV}
+ >=dev-ruby/capybara-3.39
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ >=dev-ruby/sqlite3-2.1
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "actionpack", "${PV}"
+ gem "activemodel", "${PV}"
+ gem "activerecord", "${PV}"
+ gem "capybara", ">= 3.39"
+ gem "sqlite3", ">= 2.1"
+ EOF
+ rm ../Gemfile.lock || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/actionview/metadata.xml b/dev-ruby/actionview/metadata.xml
index 81eee6fb3d7c..52f354b7db28 100644
--- a/dev-ruby/actionview/metadata.xml
+++ b/dev-ruby/actionview/metadata.xml
@@ -6,6 +6,8 @@
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
+ <doc>https://api.rubyonrails.org/</doc>
+ <remote-id type="rubygems">actionview</remote-id>
<remote-id type="cpe">cpe:/a:rubyonrails:actionview</remote-id>
</upstream>
<origin>baldeagleos-repo</origin>
diff --git a/dev-ruby/activejob/Manifest b/dev-ruby/activejob/Manifest
index c8645b46085b..a51dc04c63e4 100644
--- a/dev-ruby/activejob/Manifest
+++ b/dev-ruby/activejob/Manifest
@@ -1,6 +1,8 @@
DIST rails-7.1.5.1.tgz 10953261 BLAKE2B a2fc77cba86d2c9bd4171e7fbd280d41a0c3e9fbf2f11fecfa399bc0f378ddbf963acac4ea8f77610c22304b5424400ee5f616f46ad7e18a8a274e6522dcd00e SHA512 3616569ab53fd26586682fe67501e3c72f13a91454765db5f5eb1f3c039e7d2cdef7a62f4179b37d0449fab970c5ec859a77feb307274799a48c95ca1d229307
DIST rails-7.1.6.tgz 10960488 BLAKE2B 3f5d4c164110c2169a1ccd3ccf03914195b868fb07c8ce99addd7c97bf1210f3eb3c330a2a040b946aa07366d6c29b1a07c86d264964312ae0fc292c79921d53 SHA512 67c7b6520a160c6d5f769368d10f38df53301f39fad19b6b6a34edf0590bbe894047d4aec1bbf8bdef0e720128d966b275c9600e9e717c163d4b13a207af90f6
+DIST rails-7.2.3.2.tgz 11231997 BLAKE2B 488ce3d59f80fde4682adca42bcb9a207747496ba6a6c0360ede5988573c0fd79d7e6c6742813df98149b505fb78a59203c83a32c76e7bc0bcc8e0a00c7c7a51 SHA512 61f6e6d5c178a8b73409de4d85dc3054d41d8d89293db4ba0e6a80b7278735ab7793522589f0fe414f7955163a01bdd89606cfcb9c04e46f0d5c39445f3aec92
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
-DIST rails-8.1.1.tgz 13019384 BLAKE2B 292c15166fa346a069bc1cbdd4c288722d474e53c3582f59d25ce16b7382122b9693981e6da24f64a57b7c80e07d64cbfa2769916daa8279dfe7b4924b301152 SHA512 4dcd8ef416eae2af8911801df1c0f4502cd625710df688bd8de3d4d4120fdddcdc38630982e8d4296d99a6113a52445e3d255228b17e7f6c625fd08b80e20150
+DIST rails-8.0.5.1.tgz 11920723 BLAKE2B 559554e12348cc5b12e9f8276786251e6f7b98c28967a88028c881d18c894f09765c5b1433e7e25c7dff75d4a45c11aa0924657fc66c1a986197843f110e769a SHA512 c433faf181b1dcd21286d98217765e2c735033b1ff9add941015bd9366cb89dcf749c92947e291e644e8df891bfb620aeeb096af93358c7db32abf58bb98d0aa
DIST rails-8.1.2.tgz 13031832 BLAKE2B 85bde01384698e7556d53339435b94f884a0c385adafd5dbcda9183e4d6899f0817805426c35b464d4a98a7f91753936450c00fe06f5460e43a0439e79ef5694 SHA512 b46e6d728bdfa846eeaaf10cdda0b680760665f9f003bbad01b40ab3c4356115aadd7bd7d394297f294e3122852e9505acbe8e9cc3606cf2ef136600ae38b473
+DIST rails-8.1.3.1.tgz 13043572 BLAKE2B d2d1d0af5de2fec54e6ebb8f25db665a130f3ef7a7b38e169b7f7e047c164446fefe3eb751f5ad28dd81529d5db67ae6de9a41c5a51d7835e7454fdd747a8a18 SHA512 bf13225334706c092199e49e42f2d71dda9d33cbd57f4ff1c6069d38cd857c503cb54c7f3d4778cefa4cce9479104dbd7d893752913a28af71333daf7872d422
diff --git a/dev-ruby/activejob/activejob-8.1.1.ebuild b/dev-ruby/activejob/activejob-7.2.3.2.ebuild
index c18ce5deab00..2980e32e32bc 100644
--- a/dev-ruby/activejob/activejob-8.1.1.ebuild
+++ b/dev-ruby/activejob/activejob-7.2.3.2.ebuild
@@ -1,30 +1,27 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 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_BINWRAP=""
RUBY_FAKEGEM_DOCDIR=""
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC=""
-inherit ruby-fakegem
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86"
-IUSE="test"
-
-RUBY_S="rails-${PV}/${PN}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86"
ruby_add_rdepend "
~dev-ruby/activesupport-${PV}
@@ -33,17 +30,29 @@ ruby_add_rdepend "
ruby_add_bdepend "
test? (
- dev-ruby/mocha
- dev-ruby/zeitwerk
- )"
+ dev-ruby/bundler
+ dev-ruby/minitest:5
+ )
+"
all_ruby_prepare() {
- # Set test environment to our hand.
- sed -i -e '/load_paths/d' test/helper.rb || die "Unable to remove load paths"
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 5.0"
+ EOF
+ rm ../Gemfile.lock || die
+
+ # Unpackaged
+ sed -e '/SneakersAdapter/ s:^:#:' -i test/cases/exceptions_test.rb || die
+}
- # 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
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake test:test
}
diff --git a/dev-ruby/activejob/activejob-8.0.5.1.ebuild b/dev-ruby/activejob/activejob-8.0.5.1.ebuild
new file mode 100644
index 000000000000..afa540dcf5f7
--- /dev/null
+++ b/dev-ruby/activejob/activejob-8.0.5.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC=""
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/globalid-0.3.6
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+ EOF
+ rm ../Gemfile.lock || die
+
+ # Unpackaged
+ sed -e '/SneakersAdapter/ s:^:#:' -i test/cases/exceptions_test.rb || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake test:test
+}
diff --git a/dev-ruby/activejob/activejob-8.1.3.1.ebuild b/dev-ruby/activejob/activejob-8.1.3.1.ebuild
new file mode 100644
index 000000000000..afa540dcf5f7
--- /dev/null
+++ b/dev-ruby/activejob/activejob-8.1.3.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC=""
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/globalid-0.3.6
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+ EOF
+ rm ../Gemfile.lock || die
+
+ # Unpackaged
+ sed -e '/SneakersAdapter/ s:^:#:' -i test/cases/exceptions_test.rb || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake test:test
+}
diff --git a/dev-ruby/activejob/metadata.xml b/dev-ruby/activejob/metadata.xml
index c685ebad7e3a..379746dd4824 100644
--- a/dev-ruby/activejob/metadata.xml
+++ b/dev-ruby/activejob/metadata.xml
@@ -5,5 +5,9 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+ <upstream>
+ <doc>https://api.rubyonrails.org/</doc>
+ <remote-id type="rubygems">activejob</remote-id>
+ </upstream>
<origin>baldeagleos-repo</origin>
</pkgmetadata>
diff --git a/dev-ruby/activemodel/Manifest b/dev-ruby/activemodel/Manifest
index c8645b46085b..a51dc04c63e4 100644
--- a/dev-ruby/activemodel/Manifest
+++ b/dev-ruby/activemodel/Manifest
@@ -1,6 +1,8 @@
DIST rails-7.1.5.1.tgz 10953261 BLAKE2B a2fc77cba86d2c9bd4171e7fbd280d41a0c3e9fbf2f11fecfa399bc0f378ddbf963acac4ea8f77610c22304b5424400ee5f616f46ad7e18a8a274e6522dcd00e SHA512 3616569ab53fd26586682fe67501e3c72f13a91454765db5f5eb1f3c039e7d2cdef7a62f4179b37d0449fab970c5ec859a77feb307274799a48c95ca1d229307
DIST rails-7.1.6.tgz 10960488 BLAKE2B 3f5d4c164110c2169a1ccd3ccf03914195b868fb07c8ce99addd7c97bf1210f3eb3c330a2a040b946aa07366d6c29b1a07c86d264964312ae0fc292c79921d53 SHA512 67c7b6520a160c6d5f769368d10f38df53301f39fad19b6b6a34edf0590bbe894047d4aec1bbf8bdef0e720128d966b275c9600e9e717c163d4b13a207af90f6
+DIST rails-7.2.3.2.tgz 11231997 BLAKE2B 488ce3d59f80fde4682adca42bcb9a207747496ba6a6c0360ede5988573c0fd79d7e6c6742813df98149b505fb78a59203c83a32c76e7bc0bcc8e0a00c7c7a51 SHA512 61f6e6d5c178a8b73409de4d85dc3054d41d8d89293db4ba0e6a80b7278735ab7793522589f0fe414f7955163a01bdd89606cfcb9c04e46f0d5c39445f3aec92
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
-DIST rails-8.1.1.tgz 13019384 BLAKE2B 292c15166fa346a069bc1cbdd4c288722d474e53c3582f59d25ce16b7382122b9693981e6da24f64a57b7c80e07d64cbfa2769916daa8279dfe7b4924b301152 SHA512 4dcd8ef416eae2af8911801df1c0f4502cd625710df688bd8de3d4d4120fdddcdc38630982e8d4296d99a6113a52445e3d255228b17e7f6c625fd08b80e20150
+DIST rails-8.0.5.1.tgz 11920723 BLAKE2B 559554e12348cc5b12e9f8276786251e6f7b98c28967a88028c881d18c894f09765c5b1433e7e25c7dff75d4a45c11aa0924657fc66c1a986197843f110e769a SHA512 c433faf181b1dcd21286d98217765e2c735033b1ff9add941015bd9366cb89dcf749c92947e291e644e8df891bfb620aeeb096af93358c7db32abf58bb98d0aa
DIST rails-8.1.2.tgz 13031832 BLAKE2B 85bde01384698e7556d53339435b94f884a0c385adafd5dbcda9183e4d6899f0817805426c35b464d4a98a7f91753936450c00fe06f5460e43a0439e79ef5694 SHA512 b46e6d728bdfa846eeaaf10cdda0b680760665f9f003bbad01b40ab3c4356115aadd7bd7d394297f294e3122852e9505acbe8e9cc3606cf2ef136600ae38b473
+DIST rails-8.1.3.1.tgz 13043572 BLAKE2B d2d1d0af5de2fec54e6ebb8f25db665a130f3ef7a7b38e169b7f7e047c164446fefe3eb751f5ad28dd81529d5db67ae6de9a41c5a51d7835e7454fdd747a8a18 SHA512 bf13225334706c092199e49e42f2d71dda9d33cbd57f4ff1c6069d38cd857c503cb54c7f3d4778cefa4cce9479104dbd7d893752913a28af71333daf7872d422
diff --git a/dev-ruby/activemodel/activemodel-8.1.1.ebuild b/dev-ruby/activemodel/activemodel-7.2.3.2.ebuild
index e203c418da1e..ec4636b1d4d4 100644
--- a/dev-ruby/activemodel/activemodel-8.1.1.ebuild
+++ b/dev-ruby/activemodel/activemodel-7.2.3.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -6,23 +6,20 @@ 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
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86"
-IUSE="test"
-
-RUBY_S="rails-${PV}/${PN}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86"
ruby_add_rdepend "
~dev-ruby/activesupport-${PV}:*
@@ -30,14 +27,29 @@ ruby_add_rdepend "
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/bcrypt-ruby-3.1.11
+ dev-ruby/bundler
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"
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 5.0"
+
+ gem "bcrypt", "~> 3.1.11"
+ EOF
+ rm ../Gemfile.lock || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
}
diff --git a/dev-ruby/activemodel/activemodel-8.0.5.1.ebuild b/dev-ruby/activemodel/activemodel-8.0.5.1.ebuild
new file mode 100644
index 000000000000..cca9b0c7898d
--- /dev/null
+++ b/dev-ruby/activemodel/activemodel-8.0.5.1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}:*
+"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/bcrypt-ruby-3.1.11
+ dev-ruby/bundler
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "bcrypt", "~> 3.1.11"
+ EOF
+ rm ../Gemfile.lock || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/activemodel/activemodel-8.1.3.1.ebuild b/dev-ruby/activemodel/activemodel-8.1.3.1.ebuild
new file mode 100644
index 000000000000..cca9b0c7898d
--- /dev/null
+++ b/dev-ruby/activemodel/activemodel-8.1.3.1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}:*
+"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/bcrypt-ruby-3.1.11
+ dev-ruby/bundler
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "bcrypt", "~> 3.1.11"
+ EOF
+ rm ../Gemfile.lock || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/activemodel/metadata.xml b/dev-ruby/activemodel/metadata.xml
index c685ebad7e3a..df86fda1bf45 100644
--- a/dev-ruby/activemodel/metadata.xml
+++ b/dev-ruby/activemodel/metadata.xml
@@ -5,5 +5,9 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+ <upstream>
+ <doc>https://api.rubyonrails.org/</doc>
+ <remote-id type="rubygems">activemodel</remote-id>
+ </upstream>
<origin>baldeagleos-repo</origin>
</pkgmetadata>
diff --git a/dev-ruby/activerecord/Manifest b/dev-ruby/activerecord/Manifest
index c8645b46085b..a51dc04c63e4 100644
--- a/dev-ruby/activerecord/Manifest
+++ b/dev-ruby/activerecord/Manifest
@@ -1,6 +1,8 @@
DIST rails-7.1.5.1.tgz 10953261 BLAKE2B a2fc77cba86d2c9bd4171e7fbd280d41a0c3e9fbf2f11fecfa399bc0f378ddbf963acac4ea8f77610c22304b5424400ee5f616f46ad7e18a8a274e6522dcd00e SHA512 3616569ab53fd26586682fe67501e3c72f13a91454765db5f5eb1f3c039e7d2cdef7a62f4179b37d0449fab970c5ec859a77feb307274799a48c95ca1d229307
DIST rails-7.1.6.tgz 10960488 BLAKE2B 3f5d4c164110c2169a1ccd3ccf03914195b868fb07c8ce99addd7c97bf1210f3eb3c330a2a040b946aa07366d6c29b1a07c86d264964312ae0fc292c79921d53 SHA512 67c7b6520a160c6d5f769368d10f38df53301f39fad19b6b6a34edf0590bbe894047d4aec1bbf8bdef0e720128d966b275c9600e9e717c163d4b13a207af90f6
+DIST rails-7.2.3.2.tgz 11231997 BLAKE2B 488ce3d59f80fde4682adca42bcb9a207747496ba6a6c0360ede5988573c0fd79d7e6c6742813df98149b505fb78a59203c83a32c76e7bc0bcc8e0a00c7c7a51 SHA512 61f6e6d5c178a8b73409de4d85dc3054d41d8d89293db4ba0e6a80b7278735ab7793522589f0fe414f7955163a01bdd89606cfcb9c04e46f0d5c39445f3aec92
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
-DIST rails-8.1.1.tgz 13019384 BLAKE2B 292c15166fa346a069bc1cbdd4c288722d474e53c3582f59d25ce16b7382122b9693981e6da24f64a57b7c80e07d64cbfa2769916daa8279dfe7b4924b301152 SHA512 4dcd8ef416eae2af8911801df1c0f4502cd625710df688bd8de3d4d4120fdddcdc38630982e8d4296d99a6113a52445e3d255228b17e7f6c625fd08b80e20150
+DIST rails-8.0.5.1.tgz 11920723 BLAKE2B 559554e12348cc5b12e9f8276786251e6f7b98c28967a88028c881d18c894f09765c5b1433e7e25c7dff75d4a45c11aa0924657fc66c1a986197843f110e769a SHA512 c433faf181b1dcd21286d98217765e2c735033b1ff9add941015bd9366cb89dcf749c92947e291e644e8df891bfb620aeeb096af93358c7db32abf58bb98d0aa
DIST rails-8.1.2.tgz 13031832 BLAKE2B 85bde01384698e7556d53339435b94f884a0c385adafd5dbcda9183e4d6899f0817805426c35b464d4a98a7f91753936450c00fe06f5460e43a0439e79ef5694 SHA512 b46e6d728bdfa846eeaaf10cdda0b680760665f9f003bbad01b40ab3c4356115aadd7bd7d394297f294e3122852e9505acbe8e9cc3606cf2ef136600ae38b473
+DIST rails-8.1.3.1.tgz 13043572 BLAKE2B d2d1d0af5de2fec54e6ebb8f25db665a130f3ef7a7b38e169b7f7e047c164446fefe3eb751f5ad28dd81529d5db67ae6de9a41c5a51d7835e7454fdd747a8a18 SHA512 bf13225334706c092199e49e42f2d71dda9d33cbd57f4ff1c6069d38cd857c503cb54c7f3d4778cefa4cce9479104dbd7d893752913a28af71333daf7872d422
diff --git a/dev-ruby/activerecord/activerecord-7.2.3.2.ebuild b/dev-ruby/activerecord/activerecord-7.2.3.2.ebuild
new file mode 100644
index 000000000000..53b60f3c88c5
--- /dev/null
+++ b/dev-ruby/activerecord/activerecord-7.2.3.2.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2026 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="CHANGELOG.md README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="activerecord.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+
+IUSE="mysql postgres sqlite"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ ~dev-ruby/activemodel-${PV}
+ >=dev-ruby/timeout-0.4.0
+ mysql? ( dev-ruby/mysql2:0.5 )
+ postgres? ( >=dev-ruby/pg-1.1:1 )
+ sqlite? ( >=dev-ruby/sqlite3-1.6.6 )
+"
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/bcrypt-ruby-3.1.11
+ dev-ruby/bundler
+ dev-ruby/minitest:5
+ >=dev-ruby/msgpack-1.7.0
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 5.0"
+
+ gem "bcrypt", "~> 3.1.11"
+ gem "msgpack", ">= 1.7.0"
+
+ $(usev mysql 'gem "mysql2", "~> 0.5"')
+ $(usev postgres 'gem "pg", "~> 1.3"')
+ $(usev sqlite 'gem "sqlite3", ">= 1.6.6"')
+ EOF
+ rm ../Gemfile.lock || 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 tests requiring a full Rails setup
+ rm -f test/cases/adapters/sqlite3/dbconsole_test.rb || die
+
+ # Flaky with background system load
+ sed -e '/test_checkout_fairness/,/^ end/ s:^:#:' \
+ -i test/cases/connection_pool_test.rb || die
+ sed -e '/"authenticate_by takes the same amount of time regardless of whether record is found"/,/^ end/ s:^:#:' \
+ -i test/cases/secure_password_test.rb || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+
+ # TODO: needs running mysql instance
+ #if use mysql; then
+ # edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake test:mysql2
+ #fi
+ # TODO: needs running postgres instance
+ #if use postgres; then
+ # edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake test:postgresql
+ #fi
+ if use sqlite; then
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake test:sqlite3
+ fi
+}
diff --git a/dev-ruby/activerecord/activerecord-8.0.5.1.ebuild b/dev-ruby/activerecord/activerecord-8.0.5.1.ebuild
new file mode 100644
index 000000000000..2931be536584
--- /dev/null
+++ b/dev-ruby/activerecord/activerecord-8.0.5.1.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="activerecord.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+
+IUSE="mysql postgres sqlite"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ ~dev-ruby/activemodel-${PV}
+ >=dev-ruby/timeout-0.4.0
+ mysql? ( dev-ruby/mysql2:0.5 )
+ postgres? ( >=dev-ruby/pg-1.1:1 )
+ sqlite? ( >=dev-ruby/sqlite3-2.1 )
+"
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/bcrypt-ruby-3.1.11
+ dev-ruby/bundler
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ >=dev-ruby/msgpack-1.7.0
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "bcrypt", "~> 3.1.11"
+ gem "msgpack", ">= 1.7.0"
+
+ $(usev mysql 'gem "mysql2", "~> 0.5"')
+ $(usev postgres 'gem "pg", "~> 1.3"')
+ $(usev sqlite 'gem "sqlite3", ">= 2.1"')
+ EOF
+ rm ../Gemfile.lock || 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
+
+ # Flaky with background system load
+ sed -e '/test_checkout_fairness/,/^ end/ s:^:#:' \
+ -i test/cases/connection_pool_test.rb || die
+ sed -e '/"authenticate_by takes the same amount of time regardless of whether record is found"/,/^ end/ s:^:#:' \
+ -i test/cases/secure_password_test.rb || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+
+ # TODO: needs running mysql instance
+ #if use mysql; then
+ # edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake test:mysql2
+ #fi
+ # TODO: needs running postgres instance
+ #if use postgres; then
+ # edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake test:postgresql
+ #fi
+ if use sqlite; then
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake test:sqlite3
+ fi
+}
diff --git a/dev-ruby/activerecord/activerecord-8.1.1.ebuild b/dev-ruby/activerecord/activerecord-8.1.1.ebuild
deleted file mode 100644
index d86e85eeb48c..000000000000
--- a/dev-ruby/activerecord/activerecord-8.1.1.ebuild
+++ /dev/null
@@ -1,96 +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"
-
-# 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-2.1
- 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
-
- # 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/activerecord/activerecord-8.1.3.1.ebuild b/dev-ruby/activerecord/activerecord-8.1.3.1.ebuild
new file mode 100644
index 000000000000..2931be536584
--- /dev/null
+++ b/dev-ruby/activerecord/activerecord-8.1.3.1.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="activerecord.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+
+IUSE="mysql postgres sqlite"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ ~dev-ruby/activemodel-${PV}
+ >=dev-ruby/timeout-0.4.0
+ mysql? ( dev-ruby/mysql2:0.5 )
+ postgres? ( >=dev-ruby/pg-1.1:1 )
+ sqlite? ( >=dev-ruby/sqlite3-2.1 )
+"
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/bcrypt-ruby-3.1.11
+ dev-ruby/bundler
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ >=dev-ruby/msgpack-1.7.0
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "bcrypt", "~> 3.1.11"
+ gem "msgpack", ">= 1.7.0"
+
+ $(usev mysql 'gem "mysql2", "~> 0.5"')
+ $(usev postgres 'gem "pg", "~> 1.3"')
+ $(usev sqlite 'gem "sqlite3", ">= 2.1"')
+ EOF
+ rm ../Gemfile.lock || 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
+
+ # Flaky with background system load
+ sed -e '/test_checkout_fairness/,/^ end/ s:^:#:' \
+ -i test/cases/connection_pool_test.rb || die
+ sed -e '/"authenticate_by takes the same amount of time regardless of whether record is found"/,/^ end/ s:^:#:' \
+ -i test/cases/secure_password_test.rb || die
+}
+
+each_ruby_test() {
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+
+ # TODO: needs running mysql instance
+ #if use mysql; then
+ # edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake test:mysql2
+ #fi
+ # TODO: needs running postgres instance
+ #if use postgres; then
+ # edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake test:postgresql
+ #fi
+ if use sqlite; then
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake test:sqlite3
+ fi
+}
diff --git a/dev-ruby/activerecord/metadata.xml b/dev-ruby/activerecord/metadata.xml
index ba926a37345b..91ce2054df55 100644
--- a/dev-ruby/activerecord/metadata.xml
+++ b/dev-ruby/activerecord/metadata.xml
@@ -6,6 +6,8 @@
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
+ <doc>https://api.rubyonrails.org/</doc>
+ <remote-id type="rubygems">activerecord</remote-id>
<remote-id type="cpe">cpe:/a:activerecord_project:activerecord</remote-id>
</upstream>
<origin>baldeagleos-repo</origin>
diff --git a/dev-ruby/activestorage/Manifest b/dev-ruby/activestorage/Manifest
index c8645b46085b..a51dc04c63e4 100644
--- a/dev-ruby/activestorage/Manifest
+++ b/dev-ruby/activestorage/Manifest
@@ -1,6 +1,8 @@
DIST rails-7.1.5.1.tgz 10953261 BLAKE2B a2fc77cba86d2c9bd4171e7fbd280d41a0c3e9fbf2f11fecfa399bc0f378ddbf963acac4ea8f77610c22304b5424400ee5f616f46ad7e18a8a274e6522dcd00e SHA512 3616569ab53fd26586682fe67501e3c72f13a91454765db5f5eb1f3c039e7d2cdef7a62f4179b37d0449fab970c5ec859a77feb307274799a48c95ca1d229307
DIST rails-7.1.6.tgz 10960488 BLAKE2B 3f5d4c164110c2169a1ccd3ccf03914195b868fb07c8ce99addd7c97bf1210f3eb3c330a2a040b946aa07366d6c29b1a07c86d264964312ae0fc292c79921d53 SHA512 67c7b6520a160c6d5f769368d10f38df53301f39fad19b6b6a34edf0590bbe894047d4aec1bbf8bdef0e720128d966b275c9600e9e717c163d4b13a207af90f6
+DIST rails-7.2.3.2.tgz 11231997 BLAKE2B 488ce3d59f80fde4682adca42bcb9a207747496ba6a6c0360ede5988573c0fd79d7e6c6742813df98149b505fb78a59203c83a32c76e7bc0bcc8e0a00c7c7a51 SHA512 61f6e6d5c178a8b73409de4d85dc3054d41d8d89293db4ba0e6a80b7278735ab7793522589f0fe414f7955163a01bdd89606cfcb9c04e46f0d5c39445f3aec92
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
-DIST rails-8.1.1.tgz 13019384 BLAKE2B 292c15166fa346a069bc1cbdd4c288722d474e53c3582f59d25ce16b7382122b9693981e6da24f64a57b7c80e07d64cbfa2769916daa8279dfe7b4924b301152 SHA512 4dcd8ef416eae2af8911801df1c0f4502cd625710df688bd8de3d4d4120fdddcdc38630982e8d4296d99a6113a52445e3d255228b17e7f6c625fd08b80e20150
+DIST rails-8.0.5.1.tgz 11920723 BLAKE2B 559554e12348cc5b12e9f8276786251e6f7b98c28967a88028c881d18c894f09765c5b1433e7e25c7dff75d4a45c11aa0924657fc66c1a986197843f110e769a SHA512 c433faf181b1dcd21286d98217765e2c735033b1ff9add941015bd9366cb89dcf749c92947e291e644e8df891bfb620aeeb096af93358c7db32abf58bb98d0aa
DIST rails-8.1.2.tgz 13031832 BLAKE2B 85bde01384698e7556d53339435b94f884a0c385adafd5dbcda9183e4d6899f0817805426c35b464d4a98a7f91753936450c00fe06f5460e43a0439e79ef5694 SHA512 b46e6d728bdfa846eeaaf10cdda0b680760665f9f003bbad01b40ab3c4356115aadd7bd7d394297f294e3122852e9505acbe8e9cc3606cf2ef136600ae38b473
+DIST rails-8.1.3.1.tgz 13043572 BLAKE2B d2d1d0af5de2fec54e6ebb8f25db665a130f3ef7a7b38e169b7f7e047c164446fefe3eb751f5ad28dd81529d5db67ae6de9a41c5a51d7835e7454fdd747a8a18 SHA512 bf13225334706c092199e49e42f2d71dda9d33cbd57f4ff1c6069d38cd857c503cb54c7f3d4778cefa4cce9479104dbd7d893752913a28af71333daf7872d422
diff --git a/dev-ruby/activestorage/activestorage-7.2.3.2.ebuild b/dev-ruby/activestorage/activestorage-7.2.3.2.ebuild
new file mode 100644
index 000000000000..b63f1b6a4784
--- /dev/null
+++ b/dev-ruby/activestorage/activestorage-7.2.3.2.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2026 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_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="app config db"
+RUBY_FAKEGEM_GEMSPEC="activestorage.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC=""
+
+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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+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/bundler
+ >=dev-ruby/image_processing-1.2:0
+ dev-ruby/mini_magick
+ dev-ruby/minitest:5
+ >=dev-ruby/ruby-vips-2.3
+ >=dev-ruby/sprockets-rails-2.0.0
+ >=dev-ruby/sqlite3-1.6.6
+ dev-ruby/webmock
+ )
+"
+BDEPEND+="
+ test? (
+ >=app-text/mupdf-1.23.7
+ app-text/poppler[utils]
+ media-gfx/imagemagick[jpeg,png,tiff]
+ media-libs/vips[imagemagick]
+ media-video/ffmpeg
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 5.0"
+
+ gem "image_processing", "~> 1.2"
+ gem "mini_magick"
+ gem "ruby-vips"
+ gem "sprockets-rails", ">= 2.0.0"
+ gem "sqlite3", ">= 1.6.6"
+ gem "webmock"
+ EOF
+ rm ../Gemfile.lock || die
+
+ # Avoid failing test depending on yarn
+ rm -f test/javascript_package_test.rb || die
+
+ # Needs vips[gif] that isn't hooked up
+ sed -e '/"optimized variation of GIF blob"/,/^ end/ s:^:#:' \
+ -e '/"thumbnail variation of extensionless GIF blob processed with VIPS"/,/^ end/ s:^:#:' \
+ -i test/models/variant_test.rb || die
+
+ # Avoid test where different ffmpeg versions apply different rounding for the duration.
+ sed -e '/0.914286/ s:^:#:' \
+ -i test/analyzer/audio_analyzer_test.rb || die
+
+ # Unpackaged azure-storage-blob
+ rm test/service/configurator_test.rb || die
+}
diff --git a/dev-ruby/activestorage/activestorage-8.0.5.1.ebuild b/dev-ruby/activestorage/activestorage-8.0.5.1.ebuild
new file mode 100644
index 000000000000..403933620f79
--- /dev/null
+++ b/dev-ruby/activestorage/activestorage-8.0.5.1.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="app config db"
+RUBY_FAKEGEM_GEMSPEC="activestorage.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC=""
+
+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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+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/bundler
+ >=dev-ruby/image_processing-1.2:0
+ dev-ruby/mini_magick
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ >=dev-ruby/ruby-vips-2.3
+ >=dev-ruby/sprockets-rails-2.0.0
+ >=dev-ruby/sqlite3-2.1
+ dev-ruby/webmock
+ )
+"
+BDEPEND+="
+ test? (
+ >=app-text/mupdf-1.23.7
+ app-text/poppler[utils]
+ media-gfx/imagemagick[jpeg,png,tiff]
+ media-libs/vips[imagemagick]
+ media-video/ffmpeg
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "image_processing", "~> 1.2"
+ gem "mini_magick"
+ gem "ruby-vips"
+ gem "sprockets-rails", ">= 2.0.0"
+ gem "sqlite3", ">= 2.1"
+ gem "webmock"
+ EOF
+ rm ../Gemfile.lock || die
+
+ # Avoid failing test depending on yarn
+ rm -f test/javascript_package_test.rb || die
+
+ # Needs vips[gif] that isn't hooked up
+ sed -e '/"optimized variation of GIF blob"/,/^ end/ s:^:#:' \
+ -e '/"thumbnail variation of extensionless GIF blob processed with VIPS"/,/^ end/ s:^:#:' \
+ -i test/models/variant_test.rb || die
+
+ # Unpackaged azure-storage-blob
+ rm test/service/configurator_test.rb || die
+}
diff --git a/dev-ruby/activestorage/activestorage-8.1.1.ebuild b/dev-ruby/activestorage/activestorage-8.1.1.ebuild
deleted file mode 100644
index 018326ad5ac5..000000000000
--- a/dev-ruby/activestorage/activestorage-8.1.1.ebuild
+++ /dev/null
@@ -1,86 +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=""
-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-2.1.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\|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:^:#:' \
- -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
- sed -e '/analyzing with ruby-vips unavailable/askip "No vips support"' \
- -i test/analyzer/image_analyzer/image_magick_test.rb || die
- rm -f test/analyzer/image_analyzer/vips_test.rb || die
- sed -e '/Rails.application.configure/aconfig.active_storage.variant_processor = :mini_magick' \
- -i test/dummy/config/environments/*.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/activestorage/activestorage-8.1.3.1.ebuild b/dev-ruby/activestorage/activestorage-8.1.3.1.ebuild
new file mode 100644
index 000000000000..2444ebb433e3
--- /dev/null
+++ b/dev-ruby/activestorage/activestorage-8.1.3.1.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="app config db"
+RUBY_FAKEGEM_GEMSPEC="activestorage.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC=""
+
+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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+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/bundler
+ >=dev-ruby/image_processing-1.2:0
+ dev-ruby/mini_magick
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ >=dev-ruby/ruby-vips-2.3
+ >=dev-ruby/sprockets-rails-2.0.0
+ >=dev-ruby/sqlite3-2.1
+ dev-ruby/webmock
+ )
+"
+BDEPEND+="
+ test? (
+ >=app-text/mupdf-1.23.7
+ app-text/poppler[utils]
+ media-gfx/imagemagick[jpeg,png,tiff]
+ media-libs/vips[imagemagick]
+ media-video/ffmpeg
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "image_processing", "~> 1.2"
+ gem "mini_magick"
+ gem "ruby-vips"
+ gem "sprockets-rails", ">= 2.0.0"
+ gem "sqlite3", ">= 2.1"
+ gem "webmock"
+ EOF
+ rm ../Gemfile.lock || die
+
+ # Avoid failing test depending on yarn
+ rm -f test/javascript_package_test.rb || die
+
+ # Needs vips[gif] that isn't hooked up
+ sed -e '/"optimized variation of GIF blob"/,/^ end/ s:^:#:' \
+ -e '/"thumbnail variation of extensionless GIF blob processed with VIPS"/,/^ end/ s:^:#:' \
+ -i test/models/variant_test.rb || die
+}
diff --git a/dev-ruby/activestorage/metadata.xml b/dev-ruby/activestorage/metadata.xml
index 6654f54fbfd2..3dd74298a19b 100644
--- a/dev-ruby/activestorage/metadata.xml
+++ b/dev-ruby/activestorage/metadata.xml
@@ -6,6 +6,8 @@
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
+ <doc>https://api.rubyonrails.org/</doc>
+ <remote-id type="rubygems">activestorage</remote-id>
<remote-id type="cpe">cpe:/a:rubyonrails:active_storage</remote-id>
</upstream>
<origin>baldeagleos-repo</origin>
diff --git a/dev-ruby/activesupport/Manifest b/dev-ruby/activesupport/Manifest
index c8645b46085b..a51dc04c63e4 100644
--- a/dev-ruby/activesupport/Manifest
+++ b/dev-ruby/activesupport/Manifest
@@ -1,6 +1,8 @@
DIST rails-7.1.5.1.tgz 10953261 BLAKE2B a2fc77cba86d2c9bd4171e7fbd280d41a0c3e9fbf2f11fecfa399bc0f378ddbf963acac4ea8f77610c22304b5424400ee5f616f46ad7e18a8a274e6522dcd00e SHA512 3616569ab53fd26586682fe67501e3c72f13a91454765db5f5eb1f3c039e7d2cdef7a62f4179b37d0449fab970c5ec859a77feb307274799a48c95ca1d229307
DIST rails-7.1.6.tgz 10960488 BLAKE2B 3f5d4c164110c2169a1ccd3ccf03914195b868fb07c8ce99addd7c97bf1210f3eb3c330a2a040b946aa07366d6c29b1a07c86d264964312ae0fc292c79921d53 SHA512 67c7b6520a160c6d5f769368d10f38df53301f39fad19b6b6a34edf0590bbe894047d4aec1bbf8bdef0e720128d966b275c9600e9e717c163d4b13a207af90f6
+DIST rails-7.2.3.2.tgz 11231997 BLAKE2B 488ce3d59f80fde4682adca42bcb9a207747496ba6a6c0360ede5988573c0fd79d7e6c6742813df98149b505fb78a59203c83a32c76e7bc0bcc8e0a00c7c7a51 SHA512 61f6e6d5c178a8b73409de4d85dc3054d41d8d89293db4ba0e6a80b7278735ab7793522589f0fe414f7955163a01bdd89606cfcb9c04e46f0d5c39445f3aec92
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
-DIST rails-8.1.1.tgz 13019384 BLAKE2B 292c15166fa346a069bc1cbdd4c288722d474e53c3582f59d25ce16b7382122b9693981e6da24f64a57b7c80e07d64cbfa2769916daa8279dfe7b4924b301152 SHA512 4dcd8ef416eae2af8911801df1c0f4502cd625710df688bd8de3d4d4120fdddcdc38630982e8d4296d99a6113a52445e3d255228b17e7f6c625fd08b80e20150
+DIST rails-8.0.5.1.tgz 11920723 BLAKE2B 559554e12348cc5b12e9f8276786251e6f7b98c28967a88028c881d18c894f09765c5b1433e7e25c7dff75d4a45c11aa0924657fc66c1a986197843f110e769a SHA512 c433faf181b1dcd21286d98217765e2c735033b1ff9add941015bd9366cb89dcf749c92947e291e644e8df891bfb620aeeb096af93358c7db32abf58bb98d0aa
DIST rails-8.1.2.tgz 13031832 BLAKE2B 85bde01384698e7556d53339435b94f884a0c385adafd5dbcda9183e4d6899f0817805426c35b464d4a98a7f91753936450c00fe06f5460e43a0439e79ef5694 SHA512 b46e6d728bdfa846eeaaf10cdda0b680760665f9f003bbad01b40ab3c4356115aadd7bd7d394297f294e3122852e9505acbe8e9cc3606cf2ef136600ae38b473
+DIST rails-8.1.3.1.tgz 13043572 BLAKE2B d2d1d0af5de2fec54e6ebb8f25db665a130f3ef7a7b38e169b7f7e047c164446fefe3eb751f5ad28dd81529d5db67ae6de9a41c5a51d7835e7454fdd747a8a18 SHA512 bf13225334706c092199e49e42f2d71dda9d33cbd57f4ff1c6069d38cd857c503cb54c7f3d4778cefa4cce9479104dbd7d893752913a28af71333daf7872d422
diff --git a/dev-ruby/activesupport/activesupport-7.2.3.2.ebuild b/dev-ruby/activesupport/activesupport-7.2.3.2.ebuild
new file mode 100644
index 000000000000..1bfb60121371
--- /dev/null
+++ b/dev-ruby/activesupport/activesupport-7.2.3.2.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2026 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="CHANGELOG.md README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="activesupport.gemspec"
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+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 )"
+
+ruby_add_rdepend "
+ dev-ruby/base64
+ dev-ruby/bigdecimal
+ >=dev-ruby/concurrent-ruby-1.0.2:1
+ >=dev-ruby/connection_pool-2.2.5
+ dev-ruby/drb
+ >=dev-ruby/i18n-1.6:1
+ >=dev-ruby/minitest-5.1:*
+ >=dev-ruby/tzinfo-2.0:2
+ msgpack? ( >=dev-ruby/msgpack-1.7.0 )
+"
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ <dev-ruby/dalli-5:*
+ >=dev-ruby/dalli-3.0.1:*
+ >=dev-ruby/listen-3.3:3
+ dev-ruby/minitest:5
+ dev-ruby/rexml
+ )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-7.1.1-backport-pr50097.patch" )
+
+all_ruby_prepare() {
+ # Set the secure permissions that tests expect.
+ chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
+
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 5.0"
+
+ gem "dalli", ">= 3.0.1", "< 5"
+ gem "listen", "~> 3.3"
+ gem "msgpack", ">= 1.7.0"
+ gem "rexml"
+ EOF
+ rm ../Gemfile.lock || die
+
+ # Avoid tests requiring a live redis running
+ rm -f test/cache/stores/redis_cache_store_test.rb || die
+ sed -e '/cache_stores:redis/ s:^:#:' -i Rakefile || die
+ sed -e '/test_redis_cache_store/askip "lacking keywords"' -i test/cache/cache_store_setting_test.rb || die
+}
+
+each_ruby_test() {
+ # Allow the minitest rails plugin to be found.
+ local -x RUBYLIB=../railties/lib
+
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/activesupport/activesupport-8.0.5.1.ebuild b/dev-ruby/activesupport/activesupport-8.0.5.1.ebuild
new file mode 100644
index 000000000000..1f417b2d43ea
--- /dev/null
+++ b/dev-ruby/activesupport/activesupport-8.0.5.1.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="activesupport.gemspec"
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+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 )"
+
+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:2
+ >=dev-ruby/uri-0.13.1
+ msgpack? ( >=dev-ruby/msgpack-1.7.0 )
+"
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ <dev-ruby/dalli-5:*
+ >=dev-ruby/dalli-3.0.1:*
+ >=dev-ruby/listen-3.3:3
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ dev-ruby/rexml
+ )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-7.1.1-backport-pr50097.patch" )
+
+all_ruby_prepare() {
+ # Set the secure permissions that tests expect.
+ chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
+
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "dalli", ">= 3.0.1", "< 5"
+ gem "listen", "~> 3.3"
+ gem "msgpack", ">= 1.7.0"
+ gem "rexml"
+ EOF
+ rm ../Gemfile.lock || die
+
+ # Avoid tests requiring a live redis running
+ rm -f test/cache/stores/redis_cache_store_test.rb || die
+ sed -e '/cache_stores:redis/ s:^:#:' -i Rakefile || die
+ sed -e '/test_redis_cache_store/askip "lacking keywords"' -i test/cache/cache_store_setting_test.rb || die
+}
+
+each_ruby_test() {
+ # Allow the minitest rails plugin to be found.
+ local -x RUBYLIB=../railties/lib
+
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/activesupport/activesupport-8.1.1.ebuild b/dev-ruby/activesupport/activesupport-8.1.1.ebuild
deleted file mode 100644
index aa63d2531e92..000000000000
--- a/dev-ruby/activesupport/activesupport-8.1.1.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2026 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/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/json
- >=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-5
- >=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:5
- )"
-
-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 '/gem "dalli",/ s/$/, "< 5"/' \
- -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/activesupport/activesupport-8.1.3.1.ebuild b/dev-ruby/activesupport/activesupport-8.1.3.1.ebuild
new file mode 100644
index 000000000000..f2c0955c1a04
--- /dev/null
+++ b/dev-ruby/activesupport/activesupport-8.1.3.1.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="activesupport.gemspec"
+
+inherit edo 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"
+RUBY_S="rails-${PV}/${PN}"
+
+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 )"
+
+ruby_add_rdepend "
+ dev-ruby/base64
+ 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/json
+ >=dev-ruby/logger-1.4.2
+ >=dev-ruby/minitest-5.1:*
+ >=dev-ruby/securerandom-0.3
+ >=dev-ruby/tzinfo-2.0:2
+ >=dev-ruby/uri-0.13.1
+ msgpack? ( >=dev-ruby/msgpack-1.7.0 )
+"
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ <dev-ruby/dalli-5:*
+ >=dev-ruby/dalli-3.0.1:*
+ >=dev-ruby/listen-3.3:3
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ dev-ruby/rexml
+ )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-7.1.1-backport-pr50097.patch" )
+
+all_ruby_prepare() {
+ # Set the secure permissions that tests expect.
+ chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
+
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+
+ gem "dalli", ">= 3.0.1", "< 5"
+ gem "listen", "~> 3.3"
+ gem "msgpack", ">= 1.7.0"
+ gem "rexml"
+ EOF
+ rm ../Gemfile.lock || die
+
+ # Avoid tests requiring a live redis running
+ rm -f test/cache/stores/redis_cache_store_test.rb || die
+ sed -e '/cache_stores:redis/ s:^:#:' -i Rakefile || die
+ sed -e '/test_redis_cache_store/askip "lacking keywords"' -i test/cache/cache_store_setting_test.rb || die
+}
+
+each_ruby_test() {
+ # Allow the minitest rails plugin to be found.
+ local -x RUBYLIB=../railties/lib
+
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ edo ${RUBY} -S bundle exec ${RUBY} --disable=did_you_mean -S rake
+}
diff --git a/dev-ruby/activesupport/metadata.xml b/dev-ruby/activesupport/metadata.xml
index 65d09a3f01a4..b8c0d05166dd 100644
--- a/dev-ruby/activesupport/metadata.xml
+++ b/dev-ruby/activesupport/metadata.xml
@@ -8,5 +8,9 @@
<use>
<flag name="msgpack">Support ActiveSupport::MessagePack module</flag>
</use>
+ <upstream>
+ <doc>https://api.rubyonrails.org/</doc>
+ <remote-id type="rubygems">activesupport</remote-id>
+ </upstream>
<origin>baldeagleos-repo</origin>
</pkgmetadata>
diff --git a/dev-ruby/bootsnap/Manifest b/dev-ruby/bootsnap/Manifest
new file mode 100644
index 000000000000..d18b7828b3c6
--- /dev/null
+++ b/dev-ruby/bootsnap/Manifest
@@ -0,0 +1 @@
+DIST bootsnap-1.24.6.tar.gz 62596 BLAKE2B 640166df882820558fd778acb18589f0f10542879fcf869336814cf6a1c45068ac03884ecbecd7a5c26f30906e3ac8b07884651f8ba9a807a043256a86459dd9 SHA512 af38f19ee5a7cea7b0a433ac79a2c78a46ae698b5c3851c9c6e85da7be4d04ef60dbc739bf668aa5de15b45e0503f0f684924ca01a0abca713a908a06b949ed2
diff --git a/dev-ruby/bootsnap/bootsnap-1.24.6.ebuild b/dev-ruby/bootsnap/bootsnap-1.24.6.ebuild
new file mode 100644
index 000000000000..6afc77ffda9a
--- /dev/null
+++ b/dev-ruby/bootsnap/bootsnap-1.24.6.ebuild
@@ -0,0 +1,51 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_GEMSPEC="bootsnap.gemspec"
+
+RUBY_FAKEGEM_BINDIR="exe"
+
+RUBY_FAKEGEM_EXTENSIONS=( ext/bootsnap/extconf.rb )
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/bootsnap"
+
+RUBY_FAKEGEM_TASK_TEST="test"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit edo ruby-fakegem
+
+DESCRIPTION="Boot large ruby/rails apps faster"
+HOMEPAGE="https://github.com/rails/bootsnap"
+SRC_URI="https://github.com/rails/bootsnap/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+ruby_add_rdepend "
+ >=dev-ruby/msgpack-1.2
+"
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ dev-ruby/minitest:5
+ >=dev-ruby/mocha-3
+ )
+"
+
+all_ruby_prepare() {
+ sed -e 's:`git ls-files -z \(.*\)`:`find \1 -print0`:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -e '/rubocop/ s:^:#:' \
+ -e '/rake-compiler/ s:^:#:' \
+ -i Gemfile || die
+
+ sed -e '/rake\/extensiontask/ s:^:#:' \
+ -e '/Rake::ExtensionTask/,/^end/ s:^:#:' \
+ -i Rakefile || die
+}
diff --git a/dev-ruby/bootsnap/metadata.xml b/dev-ruby/bootsnap/metadata.xml
new file mode 100644
index 000000000000..b634086cf294
--- /dev/null
+++ b/dev-ruby/bootsnap/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="rubygems">bootsnap</remote-id>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ruby/jbuilder/Manifest b/dev-ruby/jbuilder/Manifest
index 7c16229ea474..b5766a9ae66e 100644
--- a/dev-ruby/jbuilder/Manifest
+++ b/dev-ruby/jbuilder/Manifest
@@ -1,3 +1,4 @@
DIST jbuilder-2.13.0.gem 28672 BLAKE2B 44f2c93524fc6263407d6851835dada03dca285fe7b71795b9fd0aaab27786044418e59102f0a046b0cf7dfcd6040128edebe1a53db16bdad67637e1f0aa24aa SHA512 0738879152e1b54df2ccb37f39ec8d9dc82eb5838c6af297ec15dbbb38a4781053f1022e864fbc080b4f1de7c9c356869c44f096e771175b887967e89258639a
DIST jbuilder-2.14.0.gem 28672 BLAKE2B c8036ea763c671d2443a013e3fde1c0e864c452fb3126be8838e2d2cf87205865570d0c796ab7560d3f0d0ef0d257bd9b66a6b8f3c6a95f1354974d25db57c2a SHA512 dead580e9f993b860c19e57c3b1e34e81cab05921c8b808213c6e3b182df0787be27be0ab860e5232d30480abad9d5e0c4e3644a4b45f6de3fda6d2150957210
DIST jbuilder-2.14.1.gem 28672 BLAKE2B 9ce8b5603549960bd3bbd51686b2da31510a7e9ea051f8af257f1f2fc047c35fb32651b8a252cc02e590e1c3bca15d09f4d0f44cb4036413d7e2a47d99883a31 SHA512 ae9235244789f9ad52db5d394936d6bf838c4f9ef19c28d62dd154fae95d211514aa1ae3900532a754ded62a30405429adf5aa70315b8fd8c01252083a7c2118
+DIST jbuilder-2.15.1.gem 29184 BLAKE2B 7aded506df4d4e59b3cccbf6e096c1b5b03a5b9156817e4a6b9c41a46258d01396713dd8e749bc257254dbcb3624eea0d18197b51ad6575fcff1d8ba11cfd1b9 SHA512 81b54c472c393440d0f62b7392b414744f758d0aca07ef326ca36c65efa39c167c97350dd7427bc3998f519b63fc71cca9079e70b353fcb3d7b0bfc8095af61b
diff --git a/dev-ruby/jbuilder/jbuilder-2.15.1.ebuild b/dev-ruby/jbuilder/jbuilder-2.15.1.ebuild
new file mode 100644
index 000000000000..812c5ecd77fe
--- /dev/null
+++ b/dev-ruby/jbuilder/jbuilder-2.15.1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_TASK_TEST="CI=true test"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Create JSON structures via a Builder-style DSL"
+HOMEPAGE="https://github.com/rails/jbuilder"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64"
+
+SUPPORTED_RAILS=( 8.1 8.0 7.2 )
+RAILS_DEPENDENCIES="dev-ruby/activesupport dev-ruby/actionview"
+RAILS_TEST_DEPENDENCIES="${RAILS_DEPENDENCIES} dev-ruby/rails"
+
+rails_dep() {
+ local deps="${1}"
+ local rails dep
+ dep_string="|| ( "
+ for rails in ${SUPPORTED_RAILS[@]}; do
+ dep_string+=" ("
+ for dep in ${deps}; do
+ dep_string+=" ${dep}:${rails}"
+ done
+ dep_string+=" )"
+ done
+ dep_string+=" )"
+ echo "${dep_string}"
+}
+ruby_add_rdepend "$(rails_dep "${RAILS_DEPENDENCIES}")"
+ruby_add_bdepend "test? ( $(rails_dep "${RAILS_TEST_DEPENDENCIES}") )"
+unset rails_dep
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ dev-ruby/mocha:*
+)"
+
+all_ruby_prepare() {
+ # avoid appraisal dependency
+ sed -e '/appraisal/ s:^:#:' \
+ -i Gemfile gemfiles/*.gemfile || die
+}
+
+each_ruby_test() {
+ rails_satisfied_deps() {
+ local rails="${1}"
+ local found=0
+ local dep
+ for dep in ${RAILS_TEST_DEPENDENCIES}; do
+ if ! has_version -b "${dep}:${rails}"; then
+ found=1
+ break
+ fi
+ done
+ return ${found}
+ }
+ local rails
+ for rails in ${SUPPORTED_RAILS[@]}; do
+ if rails_satisfied_deps ${rails}; then
+ einfo "Testing rails ${rails} with ${RUBY}"
+ BUNDLE_GEMFILE="gemfiles/rails_${rails/./_}.gemfile" each_fakegem_test
+ fi
+ done
+}
diff --git a/dev-ruby/minitest-retry/Manifest b/dev-ruby/minitest-retry/Manifest
new file mode 100644
index 000000000000..ede7bf74e9d1
--- /dev/null
+++ b/dev-ruby/minitest-retry/Manifest
@@ -0,0 +1 @@
+DIST minitest-retry-0.3.1.tar.gz 7606 BLAKE2B a968bbc1dc733b8cf6461911d0b5e8d048a5e68a9bee1733f30258d4daf5bbaf1c9a1f4c4726b5eb848275c52999f474624251f701de9ba260c0431dd1d013a4 SHA512 57169caa1c9c3df3453752635d29598ce62a4763e238e244aee44a8fcacd67a83bf2c892c2444f90a763a37950d55b992fe9e6ceb626a1b5d68c2490710fc06c
diff --git a/dev-ruby/minitest-retry/metadata.xml b/dev-ruby/minitest-retry/metadata.xml
new file mode 100644
index 000000000000..452cf10e4223
--- /dev/null
+++ b/dev-ruby/minitest-retry/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="rubygems">minitest-retry</remote-id>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ruby/minitest-retry/minitest-retry-0.3.1.ebuild b/dev-ruby/minitest-retry/minitest-retry-0.3.1.ebuild
new file mode 100644
index 000000000000..3f8786d6994b
--- /dev/null
+++ b/dev-ruby/minitest-retry/minitest-retry-0.3.1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_GEMSPEC="minitest-retry.gemspec"
+
+RUBY_FAKEGEM_BINDIR="" # don't install upstreams helper scripts
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Re-run the test when the test fails"
+HOMEPAGE="https://github.com/y-yagi/minitest-retry"
+SRC_URI="https://github.com/y-yagi/minitest-retry/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+ruby_add_rdepend "
+ >=dev-ruby/minitest-5.0:*
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ dev-ruby/debug
+ )
+"
+
+all_ruby_prepare() {
+ sed -e 's:git ls-files -z:find * -print0:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/propshaft/Manifest b/dev-ruby/propshaft/Manifest
index 477d9a92d465..caf439f01441 100644
--- a/dev-ruby/propshaft/Manifest
+++ b/dev-ruby/propshaft/Manifest
@@ -1 +1,2 @@
DIST propshaft-1.3.1-git.tgz 258406 BLAKE2B fe2a7f6fce912b4942b9bb5dc6f7ee1cbbb16e73a5e0f4824efa305267f0766bc907acfc60597737cc7118ace7d6c388fcf49077bbf5869576ec80eaaccd5cd2 SHA512 261327ee61694810bb15e3999d034ab672c15eedc141935aeef2a294debb8ba93a676a48f81ae71c714ac39a9aef5e1f1dc437f3deae170a5439bc9b483e18a1
+DIST propshaft-1.3.2-git.tgz 258707 BLAKE2B 906df62b9171a84b6945d87b5d776336ba0c3ef9ac177e66c7c99c2a97ec6fc502d3a85357fb88ffd3a26770496fffec2513d59c890259c4ae445d0343f3ebdf SHA512 5b643af2db2c4fd669a4380942532bb8024e8fced634fdfc9af1031e9a5cbc7a68a18877dbce32071290d67d45b7c4887fa730da979bb9d294b8788843a19a2a
diff --git a/dev-ruby/propshaft/metadata.xml b/dev-ruby/propshaft/metadata.xml
index c685ebad7e3a..37e5b6d04ca9 100644
--- a/dev-ruby/propshaft/metadata.xml
+++ b/dev-ruby/propshaft/metadata.xml
@@ -5,5 +5,8 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+ <upstream>
+ <remote-id type="rubygems">propshaft</remote-id>
+ </upstream>
<origin>baldeagleos-repo</origin>
</pkgmetadata>
diff --git a/dev-ruby/propshaft/propshaft-1.3.2.ebuild b/dev-ruby/propshaft/propshaft-1.3.2.ebuild
new file mode 100644
index 000000000000..c1156d342e2c
--- /dev/null
+++ b/dev-ruby/propshaft/propshaft-1.3.2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md UPGRADING.md"
+RUBY_FAKEGEM_GEMSPEC="propshaft.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Deliver assets for Rails"
+HOMEPAGE="https://github.com/rails/propshaft"
+SRC_URI="https://github.com/rails/propshaft/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+
+ruby_add_rdepend "
+ >=dev-ruby/actionpack-7.0.0:*
+ >=dev-ruby/activesupport-7.0.0:*
+ dev-ruby/rack:*
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ >=dev-ruby/rails-7.0.1
+)"
+
+all_ruby_prepare() {
+ rm -f Gemfile.lock || die
+ sed -i -e '/debug/ s:^:#:' Gemfile || die
+
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/rails/Manifest b/dev-ruby/rails/Manifest
index eabda346a573..4c5cf3387c89 100644
--- a/dev-ruby/rails/Manifest
+++ b/dev-ruby/rails/Manifest
@@ -1,6 +1,8 @@
DIST rails-7.1.5.1.gem 7168 BLAKE2B 83395ebd97e1fe40cc56601eab92ba7b5dab335dacecb35faa3a4be8ddccb14ee78ef6b9dc3cf9b332da95543f3073bb085cbc44af63cf4b97a466f9e2b5b1e9 SHA512 76b7522ab671d14a2b47b7cdfd0f17bb7a2c4e9d960b2c1e5dc850c840b692bfc4ab620c698839ea7f9edefa3e76ef84604c024bc3f36c6c8b27d322b9b12dac
DIST rails-7.1.6.gem 7168 BLAKE2B 4eb6c0c1ba2c9e62963d5920117cff07b5a3c5bcdbbed72192f5c81e94e6d3808ab46f38b7d69fe67b0ba6e47bcda849b355b4c173b0557ff5c1d8cfa2840e4f SHA512 103f8b7a575061d6744e8b795d8c2400529591f38d966701e377df9d9b529181d17396f78c1cd89981d14483242b2e84beef77a15802b6fa49e20217e2a4d295
+DIST rails-7.2.3.2.gem 7168 BLAKE2B 709581f6c28e80b51fc5785441d88efbddb0e88852974e576f029beb911aa7d0eaf536ea28690cef85dbccec7850b17bb120d85fde9fae113efd56340f557013 SHA512 66580b647f1daf1e99830915ff7277f2e3bcb30b9231dacce34b74462e62eedd69764f87a7575d98ab543b413fb09f3c83f179555678199aac2319646c1cae1d
DIST rails-7.2.3.gem 7168 BLAKE2B 36a4cc668b7a82ef327572058b4ccdeb80cf526c4cfc8362dc44dd876083c6115d4988405e995772ea7012667d80d31f15abd159ea422a29d9d426f1fc43a786 SHA512 50fd3724d5f0efb38b70ac6cdf60913f7e143b5b12dab2ea70626fec09333063916a2b97be31d67696315165adbb5fd7cff63a888de008610113ac75c43f817f
DIST rails-8.0.4.gem 7168 BLAKE2B 4c20d45afad6a2ffe24601f80596053dc9daf886d7cc7b21c21681031bafdb0c2cae94fff1ae86f712dc2c4092349012d4bcf773d40a4773730ed89754d1749f SHA512 820448ad7c2e63d384983512bafa0e48cc87da997351308f12b95e3e9160cd8b3ffce941fdf1d7a898b31e7ec635aa9dc01c77f7c309216a314fea20660dc278
-DIST rails-8.1.1.gem 7168 BLAKE2B db48a53f710640b259ebc451fe2f6779cdfe9ffefdeae964329a5e776a6a3050ba1eaabe06a20f4dd7ec28401cd8b0d6c9bc5580f072949abf4e4d82a50148b4 SHA512 4dbe842c87b4fd61bee7d1085e0ef6c662ee3e34156acc9c243cda4b47098374cf0966fc291168de641b98485dd378ddb2a10aeac204cb1a09cc27a3ad629a34
+DIST rails-8.0.5.1.gem 7168 BLAKE2B 6453115422cfcc47363c335b4906a30c8da3a26ceaf640bdb7c5d0762f344f2b510719fe50b789867013be558bd3b5d6bf6507cd79dbac398b6c0d7b4713506c SHA512 b21fdf55580168e703e3a5039404cff4103a5b2b9878ce4c95f2c05013a220f48e8150da252f66bd2976ab6b5ea7e56ce0f113ae0b26c1917e456bb2a90ed59d
DIST rails-8.1.2.gem 7168 BLAKE2B f6ad5bce12952bb0d8fb41ca52b03955c3bcf3698fc5c31be099585482f85fa9d555768e1fff2ac6cbfb1ded612a793511ac57401003b433fa5ac32a6dda5d04 SHA512 a2221bf27f2a61c427e35914bcc18b6be41b06b7a0dcbb4d64a15fd0ef487b957494fc037ca0000c15bc039d896dcc6ccdd17cfde011622bf24fff91ea1b9558
+DIST rails-8.1.3.1.gem 7168 BLAKE2B f94634f473a905371c7fc0e9e0be6a40b3ca2e3cd081da0a84dcab47e2279e525589dff602c782d5f739bd5622dca5d444b67dc98ce8d2082760b1057ebd5713 SHA512 7ce37d94073fce68f64bda9a4579aeeac90897d64db55f3da4753d8050c2036c0e66ae8fa29d475f3a9d40672eb61bd9b2706da16ad76d17da1cfdc2666c2bc3
diff --git a/dev-ruby/rails/metadata.xml b/dev-ruby/rails/metadata.xml
index 6bf67af0fd50..e201c5ec9712 100644
--- a/dev-ruby/rails/metadata.xml
+++ b/dev-ruby/rails/metadata.xml
@@ -6,6 +6,8 @@
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
+ <doc>https://api.rubyonrails.org/</doc>
+ <remote-id type="rubygems">rails</remote-id>
<remote-id type="cpe">cpe:/a:rubyonrails:rails</remote-id>
</upstream>
<origin>baldeagleos-repo</origin>
diff --git a/dev-ruby/rails/rails-8.1.1.ebuild b/dev-ruby/rails/rails-7.2.3.2.ebuild
index ebfbe36d876d..17b4ae602926 100644
--- a/dev-ruby/rails/rails-8.1.1.ebuild
+++ b/dev-ruby/rails/rails-7.2.3.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -13,12 +13,12 @@ RUBY_FAKEGEM_EXTRADOC="README.md"
inherit ruby-fakegem
-DESCRIPTION="ruby on rails is a web-application and persistence framework"
+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"
+KEYWORDS="~amd64"
ruby_add_rdepend "
~dev-ruby/actioncable-${PV}
diff --git a/dev-ruby/rails/rails-8.0.5.1.ebuild b/dev-ruby/rails/rails-8.0.5.1.ebuild
new file mode 100644
index 000000000000..e067f3e8a5ee
--- /dev/null
+++ b/dev-ruby/rails/rails-8.0.5.1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+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"
+
+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/rails/rails-8.1.3.1.ebuild b/dev-ruby/rails/rails-8.1.3.1.ebuild
new file mode 100644
index 000000000000..e067f3e8a5ee
--- /dev/null
+++ b/dev-ruby/rails/rails-8.1.3.1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+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"
+
+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 c8645b46085b..a51dc04c63e4 100644
--- a/dev-ruby/railties/Manifest
+++ b/dev-ruby/railties/Manifest
@@ -1,6 +1,8 @@
DIST rails-7.1.5.1.tgz 10953261 BLAKE2B a2fc77cba86d2c9bd4171e7fbd280d41a0c3e9fbf2f11fecfa399bc0f378ddbf963acac4ea8f77610c22304b5424400ee5f616f46ad7e18a8a274e6522dcd00e SHA512 3616569ab53fd26586682fe67501e3c72f13a91454765db5f5eb1f3c039e7d2cdef7a62f4179b37d0449fab970c5ec859a77feb307274799a48c95ca1d229307
DIST rails-7.1.6.tgz 10960488 BLAKE2B 3f5d4c164110c2169a1ccd3ccf03914195b868fb07c8ce99addd7c97bf1210f3eb3c330a2a040b946aa07366d6c29b1a07c86d264964312ae0fc292c79921d53 SHA512 67c7b6520a160c6d5f769368d10f38df53301f39fad19b6b6a34edf0590bbe894047d4aec1bbf8bdef0e720128d966b275c9600e9e717c163d4b13a207af90f6
+DIST rails-7.2.3.2.tgz 11231997 BLAKE2B 488ce3d59f80fde4682adca42bcb9a207747496ba6a6c0360ede5988573c0fd79d7e6c6742813df98149b505fb78a59203c83a32c76e7bc0bcc8e0a00c7c7a51 SHA512 61f6e6d5c178a8b73409de4d85dc3054d41d8d89293db4ba0e6a80b7278735ab7793522589f0fe414f7955163a01bdd89606cfcb9c04e46f0d5c39445f3aec92
DIST rails-7.2.3.tgz 11222967 BLAKE2B 408474d7ec82581cd7f3621bae861c23496f38b9cc987575243310bded91d306614d2f7c4e4b46e137f8135a56f69646251825f79f5388c24f53314557d73202 SHA512 7e1aea66cea0a545d82e27f562bd01e0619a4b007a2ee17a9e0ed89fc8883ddc38f581e094ede90dcbe5a497495f6fd0cde2c62a9f5c40d3b82c5b7711a3d48b
DIST rails-8.0.4.tgz 11905714 BLAKE2B 3146be192bd6358018aad6b90e49b3102fcd20203cd7fb00672b75470ce3dca244bb5d2b51661ad0d9123471052b3920c05a33fe450e1109efaa368794bbfd04 SHA512 2b01a0abbe24b6f0ffcec10a3a14c50ab325a247832873363922bd3fa174ddbb26a045b6f8e6cff4fe5124d790990ecf5c256111085e5f64146d8b89734ed71c
-DIST rails-8.1.1.tgz 13019384 BLAKE2B 292c15166fa346a069bc1cbdd4c288722d474e53c3582f59d25ce16b7382122b9693981e6da24f64a57b7c80e07d64cbfa2769916daa8279dfe7b4924b301152 SHA512 4dcd8ef416eae2af8911801df1c0f4502cd625710df688bd8de3d4d4120fdddcdc38630982e8d4296d99a6113a52445e3d255228b17e7f6c625fd08b80e20150
+DIST rails-8.0.5.1.tgz 11920723 BLAKE2B 559554e12348cc5b12e9f8276786251e6f7b98c28967a88028c881d18c894f09765c5b1433e7e25c7dff75d4a45c11aa0924657fc66c1a986197843f110e769a SHA512 c433faf181b1dcd21286d98217765e2c735033b1ff9add941015bd9366cb89dcf749c92947e291e644e8df891bfb620aeeb096af93358c7db32abf58bb98d0aa
DIST rails-8.1.2.tgz 13031832 BLAKE2B 85bde01384698e7556d53339435b94f884a0c385adafd5dbcda9183e4d6899f0817805426c35b464d4a98a7f91753936450c00fe06f5460e43a0439e79ef5694 SHA512 b46e6d728bdfa846eeaaf10cdda0b680760665f9f003bbad01b40ab3c4356115aadd7bd7d394297f294e3122852e9505acbe8e9cc3606cf2ef136600ae38b473
+DIST rails-8.1.3.1.tgz 13043572 BLAKE2B d2d1d0af5de2fec54e6ebb8f25db665a130f3ef7a7b38e169b7f7e047c164446fefe3eb751f5ad28dd81529d5db67ae6de9a41c5a51d7835e7454fdd747a8a18 SHA512 bf13225334706c092199e49e42f2d71dda9d33cbd57f4ff1c6069d38cd857c503cb54c7f3d4778cefa4cce9479104dbd7d893752913a28af71333daf7872d422
diff --git a/dev-ruby/railties/metadata.xml b/dev-ruby/railties/metadata.xml
index c685ebad7e3a..b7affffc0992 100644
--- a/dev-ruby/railties/metadata.xml
+++ b/dev-ruby/railties/metadata.xml
@@ -5,5 +5,9 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+ <upstream>
+ <doc>https://api.rubyonrails.org/</doc>
+ <remote-id type="rubygems">railties</remote-id>
+ </upstream>
<origin>baldeagleos-repo</origin>
</pkgmetadata>
diff --git a/dev-ruby/railties/railties-7.2.3.2.ebuild b/dev-ruby/railties/railties-7.2.3.2.ebuild
new file mode 100644
index 000000000000..6cf1bd722104
--- /dev/null
+++ b/dev-ruby/railties/railties-7.2.3.2.ebuild
@@ -0,0 +1,368 @@
+# Copyright 1999-2026 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:isolated"
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
+
+RUBY_FAKEGEM_BINDIR="exe"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit edo multiprocessing 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+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/zeitwerk-2.6:2
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/actionmailer-${PV}
+ ~dev-ruby/actiontext-${PV}
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activestorage-${PV}
+ >=dev-ruby/bcrypt-ruby-3.1.11
+ >=dev-ruby/bootsnap-1.4.4
+ dev-ruby/bundler
+ >=dev-ruby/capybara-3.39
+ >=dev-ruby/cgi-0.3.6
+ <dev-ruby/connection_pool-3:*
+ <dev-ruby/dalli-5:*
+ >=dev-ruby/dalli-3.0.1:*
+ >=dev-ruby/image_processing-1.2:0
+ >=dev-ruby/importmap-rails-1.2.3
+ dev-ruby/jbuilder
+ >=dev-ruby/listen-3.3:3
+ dev-ruby/minitest:5
+ dev-ruby/minitest-retry
+ >=dev-ruby/mysql2-0.5:0.5
+ >=dev-ruby/propshaft-0.1.7
+ >=dev-ruby/pg-1.3:1
+ >=dev-ruby/rack-cache-1.2:1.2
+ >=dev-ruby/ruby-vips-2.3
+ >=dev-ruby/selenium-webdriver-4.20.0
+ >=dev-ruby/sprockets-rails-2.0.0
+ >=dev-ruby/sqlite3-1.6.6
+ dev-ruby/web-console
+ dev-ruby/webrick
+ >=www-servers/puma-5.0.3
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 5.0"
+ gem "minitest-retry"
+
+ gem "actionmailer", "${PV}"
+ gem "actiontext", "${PV}"
+ gem "actionview", "${PV}"
+ gem "activestorage", "${PV}"
+ gem "bcrypt", "~> 3.1.11", require: false
+ gem "bootsnap", ">= 1.4.4", require: false
+ gem "capybara", ">= 3.39"
+ gem "cgi", ">= 0.3.6"
+ gem "connection_pool", "< 3", require: false
+ gem "dalli", ">= 3.0.1", "< 5"
+ gem "image_processing", "~> 1.2"
+ gem "importmap-rails", ">= 1.2.3"
+ gem "jbuilder", require: false
+ gem "listen", "~> 3.3", require: false
+ gem "mysql2", "~> 0.5"
+ gem "pg", "~> 1.3"
+ gem "propshaft", ">= 0.1.7"
+ gem "puma", ">= 5.0.3", require: false
+ gem "rack-cache", "~> 1.2"
+ gem "ruby-vips", "~> 2.3"
+ gem "selenium-webdriver", ">= 4.20.0"
+ gem "sprockets-rails", ">= 2.0.0", require: false
+ gem "sqlite3", ">= 1.6.6"
+ gem "web-console", require: false
+ gem "webrick", require: false
+ EOF
+ rm ../Gemfile.lock || die
+
+ # noop yarn
+ sed -e 's/yarn/true/' \
+ -i test/isolation/abstract_unit.rb || die
+ sed -e '/test_css_option_with_cssbundling_gem/,/^ end/ s:^:#:' \
+ -e '/test_css_option_with_asset_pipeline_tailwind/,/^ end/ s:^:#:' \
+ -e '/test_css_option_with_asset_pipeline_sass/,/^ end/ s:^:#:' \
+ -i test/generators/app_generator_test.rb || die
+
+ # Avoid rubocop dependency
+ sed -e '/"generators with apply_rubocop_autocorrect_after_generate!"/,/^ end/ s:^:#:' \
+ -e '/"generators with apply_rubocop_autocorrect_after_generate! and pretend"/,/^ end/ s:^:#:' \
+ -i test/application/generators_test.rb || die
+ sed -e '/def test_generated_files_have_no_rubocop_warnings/,/^ end/ s:^:#:' \
+ -i test/generators/shared_generator_tests.rb || die
+
+ # selenium chrome
+ sed -e '/def generate_application_system_test_case_file/,/^ end/ s:^:#:' \
+ -e '/def test_failed_system_test_screenshot_should_be_taken_before_other_teardown/,/^ end/ s:^:#:' \
+ -e '/def test_parallel_testing_when_schema_is_not_up_to_date/,/^ end/ s:^:#:' \
+ -e '/def test_reset_sessions_on_failed_system_test_screenshot/,/^ end/ s:^:#:' \
+ -e '/def test_system_tests_are_not_run_through_rake_test/,/^ end/ s:^:#:' \
+ -e '/def test_system_tests_are_not_run_with_the_default_test_command/,/^ end/ s:^:#:' \
+ -e '/def test_system_tests_are_run_through_rake_test_when_given_in_TEST/,/^ end/ s:^:#:' \
+ -i test/application/test_runner_test.rb || die
+ rm test/application/system_test_case_test.rb || die
+
+ # Unpackaged dependency turbo-rails
+ sed -e '/def test_app_update$/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_create_new_framework_defaults/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_change_app_name_when_app_name_is_hyphenated_name/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_change_config_target_version/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_create_rack_cors/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_action_cable_contents_when_skip_action_cable_is_given/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_active_storage_contents_when_skip_active_record_is_given/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_active_storage_contents_when_skip_active_storage_is_given/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_assets_initializer_when_asset_pipeline_is_not_used/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_assets_initializer_when_sprockets_and_propshaft_are_not_used/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_bootsnap_contents_when_skip_bootsnap_is_given/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_manifest_config_when_propshaft_is_used/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_remove_rack_cors_if_already_present/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_propshaft/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_generates_public_folders/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_action_mailbox/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_action_text/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_active_job/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_brakeman/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_bundler_audit/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_rubocop/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_system_test/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_test/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_thruster/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_supports_pretend/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_supports_skip/,/^ end/ s:^:#:' \
+ -e '/def test_application_name_is_detected_if_it_exists_and_app_folder_renamed/,/^ end/ s:^:#:' \
+ -e '/def test_ci_workflow_does_not_include_db_test_prepare_when_skip_active_record_is_given/,/^ end/ s:^:#:' \
+ -e '/def test_hotwire/,/^ end/ s:^:#:' \
+ -i test/generators/app_generator_test.rb || die
+
+ # Avoid breaking network sandbox
+ rm test/application/active_job_adapter_test.rb || die
+ sed -e '/def test_ensure_that_migration_tasks_work_with_mountable_option/,/^ end/ s:^:#:' \
+ -e '/def test_plugin_passes_generated_test/,/^ end/ s:^:#:' \
+ -i test/generators/plugin_generator_test.rb || die
+
+ # Needs running db
+ sed -e '/test "db:create works when schema cache exists and database does not exist" do/,/^ end/ s:^:#:' \
+ -e '/test "db:drop failure because bad permissions"/,/^ end/ s:^:#:' \
+ -e '/test "db:prepare creates test database if it does not exist" do/,/^ end/ s:^:#:' \
+ -e '/test "db:prepare loads schema when database exists but is empty"/,/^ end/ s:^:#:' \
+ -e '/test "db:schema:cache:dump dumps virtual columns" do/,/^ end/ s:^:#:' \
+ -i test/application/rake/dbs_test.rb || die
+ sed -e '/"default schema generation after migration"/,/^ end/ s:^:#:' \
+ -e '/"migrate with specified VERSION in different formats"/,/^ end/ s:^:#:' \
+ -e '/"migration status after rollback and forward"/,/^ end/ s:^:#:' \
+ -e '/"migration status after rollback and redo without timestamps"/,/^ end/ s:^:#:' \
+ -e '/"migration status after rollback and redo"/,/^ end/ s:^:#:' \
+ -e '/"migration status migrated file is deleted"/,/^ end/ s:^:#:' \
+ -e '/"migration status without timestamps"/,/^ end/ s:^:#:' \
+ -e '/"migration status"/,/^ end/ s:^:#:' \
+ -e '/"migration with 0 version"/,/^ end/ s:^:#:' \
+ -e '/"migration with empty version"/,/^ end/ s:^:#:' \
+ -e '/"migrations with execute run when connections are established from a loaded model"/,/^ end/ s:^:#:' \
+ -e '/"model and migration generator with change syntax"/,/^ end/ s:^:#:' \
+ -e '/"raise error on any move when current migration does not exist"/,/^ end/ s:^:#:' \
+ -e '/"raise error on any move when target migration does not exist"/,/^ end/ s:^:#:' \
+ -e '/"running migrations with given scope"/,/^ end/ s:^:#:' \
+ -e '/"running migrations with not timestamp head migration files"/,/^ end/ s:^:#:' \
+ -e '/"version outputs current version"/,/^ end/ s:^:#:' \
+ -i test/application/rake/migrations_test.rb || die
+ sed -e '/test "db:migrate respects timestamp ordering across databases" do/,/^ end/ s:^:#:' \
+ -e '/test "db:prepare setup the database even if schema does not exist" do/,/^ end/ s:^:#:' \
+ -e '/test "db:prepare setups missing database without clearing existing one" do/,/^ end/ s:^:#:' \
+ -i test/application/rake/multi_dbs_test.rb || die
+ sed -e '/test "task is protected when previous migration was production" do/,/^ end/ s:^:#:' \
+ -i test/application/rake_test.rb || die
+ sed -e '/"database-dependent attribute types are resolved when parallel tests are run in eager load context"/,/^ end/ s:^:#:' \
+ -i test/application/test_test.rb || die
+ sed -e '/test_devcontainer_mariadb_mysql/,/^ end/ s:^:#:' \
+ -e '/test_devcontainer_mariadb/,/^ end/ s:^:#:' \
+ -e '/test_devcontainer_mysql/,/^ end/ s:^:#:' \
+ -i test/generators/app_generator_test.rb || die
+
+ # Unpackaged dependency solid_cable and solid_queue
+ sed -e '/test "generates devcontainer for default app with solid gems" do/,/^ end/ s:^:#:' \
+ -i test/commands/devcontainer_test.rb || die
+ sed -e '/def test_app_update_does_not_generate_public_files/,/^ end/ s:^:#:' \
+ -i test/generators/api_app_generator_test.rb || die
+
+ # Unpackaged dependency kamal
+ sed -e '/test_kamal_deploy_yml_excludes_asset_path_for_api_app/,/^ end/ s:^:#:' \
+ -i test/generators/api_app_generator_test.rb || die
+
+ # Fails due to using system gems
+ sed -e '/"rails routes with expanded option"/,/^ end/ s:^:#:' \
+ -i test/commands/routes_test.rb || die
+
+ # Triggers vendored thor in bundler weirdness
+ sed -e '/test_bin_setup$/,/^ end/ s:^:#:' \
+ -e '/test_bin_setup_output/,/^ end/ s:^:#:' \
+ -i test/application/bin_setup_test.rb || die
+ sed -e '/"load_path is populated before eager loaded models"/,/^ end/ s:^:#:' \
+ -e '/"locale files should be added to the load path"/,/^ end/ s:^:#:' \
+ -i test/application/initializers/i18n_test.rb || die
+ sed -e '/"AC load hooks can be used with metal"/,/^ end/ s:^:#:' \
+ -e '/"constants in app are autoloaded"/,/^ end/ s:^:#:' \
+ -e '/"frameworks aren.t loaded during initialization"/,/^ end/ s:^:#:' \
+ -e '/"models without table do not panic on scope definitions when loaded"/,/^ end/ s:^:#:' \
+ -e '/test_initialize_can_be_called_at_any_time/,/^ end/ s:^:#:' \
+ -i test/application/loading_test.rb || die
+ sed -e '/test_console_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -e '/test_dbconsole_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -e '/test_help_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -e '/test_runner_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -e '/test_server_command_broadcast_logs/,/^ end/ s:^:#:' \
+ -e '/test_server_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -i test/engine/commands_test.rb || die
+ sed -e '/"automatically synchronize test schema"/,/^ end/ s:^:#:' \
+ -i test/engine/test_test.rb || die
+ sed -e '/test_executed_only_once/,/^ end/ s:^:#:' \
+ -e '/test_fail_fast/,/^ end/ s:^:#:' \
+ -e '/test_mix_files_and_line_filters/,/^ end/ s:^:#:' \
+ -e '/test_multiple_line_filters/,/^ end/ s:^:#:' \
+ -e '/test_only_inline_failure_output/,/^ end/ s:^:#:' \
+ -e '/test_output_inline_by_default/,/^ end/ s:^:#:' \
+ -e '/test_raise_error_when_specified_file_does_not_exist/,/^ end/ s:^:#:' \
+ -e '/test_run_default/,/^ end/ s:^:#:' \
+ -e '/test_run_multiple_files/,/^ end/ s:^:#:' \
+ -e '/test_run_single_file/,/^ end/ s:^:#:' \
+ -e '/test_warnings_option/,/^ end/ s:^:#:' \
+ -i test/generators/plugin_test_runner_test.rb || die
+ sed -e '/test_controller_tests_pass_by_default_inside_full_engine/,/^ end/ s:^:#:' \
+ -e '/test_controller_tests_pass_by_default_inside_mountable_engine/,/^ end/ s:^:#:' \
+ -i test/generators/scaffold_controller_generator_test.rb || die
+ sed -e '/test_scaffold_on_invoke_inside_mountable_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_on_revoke_inside_mountable_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_api_full_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_api_mountable_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_full_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_mountable_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_namespaced_mountable_engine/,/^ end/ s:^:#:' \
+ -i test/generators/scaffold_generator_test.rb || die
+ sed -e '/test_run_default/,/^ end/ s:^:#:' \
+ -e '/test_rerun_snippet_is_relative_path/,/^ end/ s:^:#:' \
+ -i test/generators/test_runner_in_engine_test.rb || die
+ sed -e '/"active_storage:install task works within engine"/,/^ end/ s:^:#:' \
+ -e '/"active_storage:update task works within engine"/,/^ end/ s:^:#:' \
+ -e '/"adds its fixtures path to fixture_paths"/,/^ end/ s:^:#:' \
+ -e '/"adds its mailer previews to mailer preview paths"/,/^ end/ s:^:#:' \
+ -e '/"adds its views to view paths"/,/^ end/ s:^:#:' \
+ -e '/"can draw routes in app routes from engines"/,/^ end/ s:^:#:' \
+ -e '/"copying migrations to specific database"/,/^ end/ s:^:#:' \
+ -e '/"copying migrations"/,/^ end/ s:^:#:' \
+ -e '/"don.t reverse default railties order"/,/^ end/ s:^:#:' \
+ -e '/"isolated engine should avoid namespace in names if that.s possible"/,/^ end/ s:^:#:' \
+ -e '/"loading seed data is wrapped by the executor"/,/^ end/ s:^:#:' \
+ -e '/"locales can be nested"/,/^ end/ s:^:#:' \
+ -e '/"mountable engine should copy migrations within engine_path"/,/^ end/ s:^:#:' \
+ -e '/"puts its lib directory on load path"/,/^ end/ s:^:#:' \
+ -e '/"rake environment can be called in the engine"/,/^ end/ s:^:#:' \
+ -e '/"respects the order of railties when installing migrations"/,/^ end/ s:^:#:' \
+ -e '/"skips nonexistent seed data"/,/^ end/ s:^:#:' \
+ -e '/"take ActiveRecord table_name_prefix into consideration when defining table_name_prefix"/,/^ end/ s:^:#:' \
+ -e '/"using namespace more than once on one module should not overwrite railtie_namespace method"/,/^ end/ s:^:#:' \
+ -e '/"when the bootstrap hook runs, autoload paths are set"/,/^ end/ s:^:#:' \
+ -i test/railties/engine_test.rb || die
+ sed -e '/test_controllers_are_correctly_namespaced_when_engine_is_mountable/,/^ end/ s:^:#:' \
+ -e '/test_controllers_are_not_namespaced_when_engine_is_not_mountable/,/^ end/ s:^:#:' \
+ -e '/test_helpers_are_correctly_namespaced_when_engine_is_mountable/,/^ end/ s:^:#:' \
+ -e '/test_helpers_are_not_namespaced_when_engine_is_not_mountable/,/^ end/ s:^:#:' \
+ -e '/test_models_are_correctly_namespaced_when_engine_is_mountable/,/^ end/ s:^:#:' \
+ -e '/test_models_are_not_namespaced_when_engine_is_not_mountable/,/^ end/ s:^:#:' \
+ -e '/test_table_name_prefix_is_correctly_namespaced_when_engine_is_mountable/,/^ end/ s:^:#:' \
+ -i test/railties/generators_test.rb || die
+
+ # Hangs
+ sed -e '/test "routes are loaded before inserting test routes" do/,/^ end/ s:^:#:' \
+ -i test/application/integration_test_case_test.rb || die
+
+ # FIXME:
+ sed -e '/"db:prepare runs seeds once"/,/^ end/ s:^:#:' \
+ -i test/application/rake/multi_dbs_test.rb || die
+ sed -e '/test_not_protected_when_previous_migration_was_not_production/,/^ end/ s:^:#:' \
+ -i test/application/rake_test.rb || die
+ sed -e '/test_can_exclude_files_from_being_tested_via_rake_task_by_setting_DEFAULT_TEST_EXCLUDE_env_var/,/^ end/ s:^:#:' \
+ -e '/test_fail_fast$/,/^ end/ s:^:#:' \
+ -e '/test_fail_fast_in_parallel_with_processes/,/^ end/ s:^:#:' \
+ -e '/test_parallelization_is_disabled_when_number_of_tests_is_below_threshold/,/^ end/ s:^:#:' \
+ -e '/test_pass_TEST_env_on_rake_test/,/^ end/ s:^:#:' \
+ -e '/test_pass_rake_options/,/^ end/ s:^:#:' \
+ -e '/test_rails_db_create_all_restores_db_connection$/,/^ end/ s:^:#:' \
+ -e '/test_rails_db_create_all_restores_db_connection_after_drop/,/^ end/ s:^:#:' \
+ -e '/test_rake_db_and_test_tasks_parses_args_correctly/,/^ end/ s:^:#:' \
+ -e '/test_rake_passes_TESTOPTS_to_minitest/,/^ end/ s:^:#:' \
+ -e '/test_rake_passes_multiple_TESTOPTS_to_minitest/,/^ end/ s:^:#:' \
+ -e '/test_rake_runs_multiple_test_tasks/,/^ end/ s:^:#:' \
+ -e '/test_rake_runs_tests_before_other_tasks_when_specified/,/^ end/ s:^:#:' \
+ -e '/test_reset_sessions_before_rollback_on_system_tests/,/^ end/ s:^:#:' \
+ -i test/application/test_runner_test.rb || die
+ sed -e '/"enable full backtraces on test failures"/,/^ end/ s:^:#:' \
+ -i test/application/test_test.rb || die
+ sed -e '/test "when passing --trace it invokes default" do/,/^ end/ s:^:#:'\
+ -i test/command/help_integration_test.rb || die
+ sed -e '/test_app_update_silence_deprecate_message/,/^ end/ s:^:#:' \
+ -i test/generators/app_generator_test.rb || die
+ #sed -e '/"does not replace backtrace filter when using --backtrace option"/,/^ end/ s:^:#:' \
+ # -i test/minitest/rails_plugin_test.rb || die
+ rm test/minitest/rails_plugin_test.rb || die
+}
+
+each_ruby_test() {
+ # https://github.com/rails/rails/blob/main/guides/source/testing.md#parallel-testing
+ local -x PARALLEL_WORKERS="$(get_makeopts_jobs)"
+
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ # Do not include --disable=did_you_mean, its expected by some tests
+ edo ${RUBY} -S bundle exec ${RUBY} -S rake ${RUBY_FAKEGEM_TASK_TEST} || 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.5.1.ebuild b/dev-ruby/railties/railties-8.0.5.1.ebuild
new file mode 100644
index 000000000000..8ceed843b1d3
--- /dev/null
+++ b/dev-ruby/railties/railties-8.0.5.1.ebuild
@@ -0,0 +1,349 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_TASK_TEST="test:isolated"
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
+
+RUBY_FAKEGEM_BINDIR="exe"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit edo multiprocessing 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+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/actionmailer-${PV}
+ ~dev-ruby/actiontext-${PV}
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activestorage-${PV}
+ >=dev-ruby/bcrypt-ruby-3.1.11
+ >=dev-ruby/bootsnap-1.4.4
+ dev-ruby/bundler
+ >=dev-ruby/capybara-3.39
+ dev-ruby/connection_pool
+ <dev-ruby/dalli-5:*
+ >=dev-ruby/dalli-3.0.1:*
+ >=dev-ruby/image_processing-1.2:0
+ >=dev-ruby/importmap-rails-1.2.3
+ dev-ruby/jbuilder
+ >=dev-ruby/listen-3.3:3
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ dev-ruby/minitest-retry
+ >=dev-ruby/mysql2-0.5:0.5
+ >=dev-ruby/propshaft-0.1.7
+ >=dev-ruby/pg-1.3:1
+ >=dev-ruby/rack-cache-1.2:1.2
+ >=dev-ruby/ruby-vips-2.3
+ >=dev-ruby/selenium-webdriver-4.20.0
+ >=dev-ruby/sprockets-rails-2.0.0
+ >=dev-ruby/sqlite3-2.1
+ dev-ruby/web-console
+ dev-ruby/webrick
+ >=www-servers/puma-5.0.3
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+ gem "minitest-retry"
+
+ gem "actionmailer", "${PV}"
+ gem "actiontext", "${PV}"
+ gem "actionview", "${PV}"
+ gem "activestorage", "${PV}"
+ gem "bcrypt", "~> 3.1.11", require: false
+ gem "bootsnap", ">= 1.4.4", require: false
+ gem "capybara", ">= 3.39"
+ gem "connection_pool", require: false
+ gem "dalli", ">= 3.0.1", "< 5"
+ gem "image_processing", "~> 1.2"
+ gem "importmap-rails", ">= 1.2.3"
+ gem "jbuilder", require: false
+ gem "listen", "~> 3.3", require: false
+ gem "mysql2", "~> 0.5"
+ gem "pg", "~> 1.3"
+ gem "propshaft", ">= 0.1.7"
+ gem "puma", ">= 5.0.3", require: false
+ gem "rack-cache", "~> 1.2"
+ gem "ruby-vips", "~> 2.3"
+ gem "selenium-webdriver", ">= 4.20.0"
+ gem "sprockets-rails", ">= 2.0.0", require: false
+ gem "sqlite3", ">= 2.1"
+ gem "web-console", require: false
+ gem "webrick", require: false
+ EOF
+ rm ../Gemfile.lock || die
+
+ # Avoid rubocop dependency
+ sed -e '/"generators with apply_rubocop_autocorrect_after_generate!"/,/^ end/ s:^:#:' \
+ -e '/"generators with apply_rubocop_autocorrect_after_generate! and pretend"/,/^ end/ s:^:#:' \
+ -i test/application/generators_test.rb || die
+ sed -e '/def test_generated_files_have_no_rubocop_warnings/,/^ end/ s:^:#:' \
+ -i test/generators/shared_generator_tests.rb || die
+
+ # selenium chrome
+ sed -e '/def generate_application_system_test_case_file/,/^ end/ s:^:#:' \
+ -e '/def test_failed_system_test_screenshot_should_be_taken_before_other_teardown/,/^ end/ s:^:#:' \
+ -e '/def test_parallel_testing_when_schema_is_not_up_to_date/,/^ end/ s:^:#:' \
+ -e '/def test_reset_sessions_on_failed_system_test_screenshot/,/^ end/ s:^:#:' \
+ -e '/def test_system_tests_are_not_run_through_rake_test/,/^ end/ s:^:#:' \
+ -e '/def test_system_tests_are_not_run_with_the_default_test_command/,/^ end/ s:^:#:' \
+ -e '/def test_system_tests_are_run_through_rake_test_when_given_in_TEST/,/^ end/ s:^:#:' \
+ -i test/application/test_runner_test.rb || die
+ rm test/application/system_test_case_test.rb || die
+
+ # Unpackaged dependency turbo-rails
+ sed -e '/def test_app_update$/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_change_app_name_when_app_name_is_hyphenated_name/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_change_config_target_version/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_action_cable_contents_when_skip_action_cable_is_given/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_active_storage_contents_when_skip_active_record_is_given/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_active_storage_contents_when_skip_active_storage_is_given/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_assets_initializer_when_asset_pipeline_is_not_used/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_bootsnap_contents_when_skip_bootsnap_is_given/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_remove_rack_cors_if_already_present/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_generates_public_folders/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_action_mailbox/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_action_text/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_active_job/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_brakeman/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_bundler_audit/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_rubocop/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_system_test/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_test/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_thruster/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_supports_pretend/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_supports_skip/,/^ end/ s:^:#:' \
+ -e '/def test_application_name_is_detected_if_it_exists_and_app_folder_renamed/,/^ end/ s:^:#:' \
+ -e '/def test_ci_workflow_does_not_include_db_test_prepare_when_skip_active_record_is_given/,/^ end/ s:^:#:' \
+ -i test/generators/app_generator_test.rb || die
+
+ # Avoid breaking network sandbox
+ rm test/application/active_job_adapter_test.rb || die
+ sed -e '/def test_ensure_that_migration_tasks_work_with_mountable_option/,/^ end/ s:^:#:' \
+ -e '/def test_plugin_passes_generated_test/,/^ end/ s:^:#:' \
+ -i test/generators/plugin_generator_test.rb || die
+
+ # Needs running db
+ sed -e '/test "db:create works when schema cache exists and database does not exist" do/,/^ end/ s:^:#:' \
+ -e '/test "db:drop failure because bad permissions"/,/^ end/ s:^:#:' \
+ -e '/test "db:prepare creates test database if it does not exist" do/,/^ end/ s:^:#:' \
+ -e '/test "db:prepare loads schema when database exists but is empty"/,/^ end/ s:^:#:' \
+ -e '/test "db:schema:cache:dump dumps virtual columns" do/,/^ end/ s:^:#:' \
+ -i test/application/rake/dbs_test.rb || die
+ sed -e '/"default schema generation after migration"/,/^ end/ s:^:#:' \
+ -e '/"migrate with specified VERSION in different formats"/,/^ end/ s:^:#:' \
+ -e '/"migration status after rollback and forward"/,/^ end/ s:^:#:' \
+ -e '/"migration status after rollback and redo without timestamps"/,/^ end/ s:^:#:' \
+ -e '/"migration status after rollback and redo"/,/^ end/ s:^:#:' \
+ -e '/"migration status migrated file is deleted"/,/^ end/ s:^:#:' \
+ -e '/"migration status without timestamps"/,/^ end/ s:^:#:' \
+ -e '/"migration status"/,/^ end/ s:^:#:' \
+ -e '/"migration with 0 version"/,/^ end/ s:^:#:' \
+ -e '/"migration with empty version"/,/^ end/ s:^:#:' \
+ -e '/"migrations with execute run when connections are established from a loaded model"/,/^ end/ s:^:#:' \
+ -e '/"model and migration generator with change syntax"/,/^ end/ s:^:#:' \
+ -e '/"raise error on any move when current migration does not exist"/,/^ end/ s:^:#:' \
+ -e '/"raise error on any move when target migration does not exist"/,/^ end/ s:^:#:' \
+ -e '/"running migrations with given scope"/,/^ end/ s:^:#:' \
+ -e '/"running migrations with not timestamp head migration files"/,/^ end/ s:^:#:' \
+ -e '/"version outputs current version"/,/^ end/ s:^:#:' \
+ -i test/application/rake/migrations_test.rb || die
+ sed -e '/test "db:migrate respects timestamp ordering across databases" do/,/^ end/ s:^:#:' \
+ -e '/test "db:prepare setup the database even if schema does not exist" do/,/^ end/ s:^:#:' \
+ -e '/test "db:prepare setups missing database without clearing existing one" do/,/^ end/ s:^:#:' \
+ -i test/application/rake/multi_dbs_test.rb || die
+ sed -e '/test "task is protected when previous migration was production" do/,/^ end/ s:^:#:' \
+ -i test/application/rake_test.rb || die
+ sed -e '/"database-dependent attribute types are resolved when parallel tests are run in eager load context"/,/^ end/ s:^:#:' \
+ -i test/application/test_test.rb || die
+ sed -e '/test_devcontainer_mariadb_mysql/,/^ end/ s:^:#:' \
+ -e '/test_devcontainer_mysql/,/^ end/ s:^:#:' \
+ -i test/generators/app_generator_test.rb || die
+
+ # Unpackaged dependency solid_cable and solid_queue
+ sed -e '/test "generates devcontainer for default app with solid gems" do/,/^ end/ s:^:#:' \
+ -i test/commands/devcontainer_test.rb || die
+ sed -e '/def test_app_update_does_not_generate_public_files/,/^ end/ s:^:#:' \
+ -i test/generators/api_app_generator_test.rb || die
+
+ # Unpackaged dependency kamal
+ sed -e '/test_kamal_deploy_yml_excludes_asset_path_for_api_app/,/^ end/ s:^:#:' \
+ -i test/generators/api_app_generator_test.rb || die
+
+ # Fails due to using system gems
+ sed -e '/"rails routes with expanded option"/,/^ end/ s:^:#:' \
+ -i test/commands/routes_test.rb || die
+
+ # Triggers vendored thor in bundler weirdness
+ sed -e '/test_bin_setup$/,/^ end/ s:^:#:' \
+ -e '/test_bin_setup_output/,/^ end/ s:^:#:' \
+ -i test/application/bin_setup_test.rb || die
+ sed -e '/"load_path is populated before eager loaded models"/,/^ end/ s:^:#:' \
+ -e '/"locale files should be added to the load path"/,/^ end/ s:^:#:' \
+ -i test/application/initializers/i18n_test.rb || die
+ sed -e '/"AC load hooks can be used with metal"/,/^ end/ s:^:#:' \
+ -e '/"constants in app are autoloaded"/,/^ end/ s:^:#:' \
+ -e '/"frameworks aren.t loaded during initialization"/,/^ end/ s:^:#:' \
+ -e '/"models without table do not panic on scope definitions when loaded"/,/^ end/ s:^:#:' \
+ -e '/test_initialize_can_be_called_at_any_time/,/^ end/ s:^:#:' \
+ -i test/application/loading_test.rb || die
+ sed -e '/test_console_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -e '/test_dbconsole_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -e '/test_help_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -e '/test_runner_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -e '/test_server_command_broadcast_logs/,/^ end/ s:^:#:' \
+ -e '/test_server_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -i test/engine/commands_test.rb || die
+ sed -e '/"automatically synchronize test schema"/,/^ end/ s:^:#:' \
+ -i test/engine/test_test.rb || die
+ sed -e '/test_executed_only_once/,/^ end/ s:^:#:' \
+ -e '/test_fail_fast/,/^ end/ s:^:#:' \
+ -e '/test_mix_files_and_line_filters/,/^ end/ s:^:#:' \
+ -e '/test_multiple_line_filters/,/^ end/ s:^:#:' \
+ -e '/test_only_inline_failure_output/,/^ end/ s:^:#:' \
+ -e '/test_output_inline_by_default/,/^ end/ s:^:#:' \
+ -e '/test_raise_error_when_specified_file_does_not_exist/,/^ end/ s:^:#:' \
+ -e '/test_run_default/,/^ end/ s:^:#:' \
+ -e '/test_run_multiple_files/,/^ end/ s:^:#:' \
+ -e '/test_run_single_file/,/^ end/ s:^:#:' \
+ -e '/test_warnings_option/,/^ end/ s:^:#:' \
+ -i test/generators/plugin_test_runner_test.rb || die
+ sed -e '/test_controller_tests_pass_by_default_inside_full_engine/,/^ end/ s:^:#:' \
+ -e '/test_controller_tests_pass_by_default_inside_mountable_engine/,/^ end/ s:^:#:' \
+ -i test/generators/scaffold_controller_generator_test.rb || die
+ sed -e '/test_scaffold_on_invoke_inside_mountable_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_on_revoke_inside_mountable_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_api_full_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_api_mountable_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_full_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_mountable_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_namespaced_mountable_engine/,/^ end/ s:^:#:' \
+ -i test/generators/scaffold_generator_test.rb || die
+ sed -e '/test_run_default/,/^ end/ s:^:#:' \
+ -e '/test_rerun_snippet_is_relative_path/,/^ end/ s:^:#:' \
+ -i test/generators/test_runner_in_engine_test.rb || die
+ sed -e '/"active_storage:install task works within engine"/,/^ end/ s:^:#:' \
+ -e '/"active_storage:update task works within engine"/,/^ end/ s:^:#:' \
+ -e '/"adds its fixtures path to fixture_paths"/,/^ end/ s:^:#:' \
+ -e '/"adds its mailer previews to mailer preview paths"/,/^ end/ s:^:#:' \
+ -e '/"adds its views to view paths"/,/^ end/ s:^:#:' \
+ -e '/"can draw routes in app routes from engines"/,/^ end/ s:^:#:' \
+ -e '/"copying migrations to specific database"/,/^ end/ s:^:#:' \
+ -e '/"copying migrations"/,/^ end/ s:^:#:' \
+ -e '/"don.t reverse default railties order"/,/^ end/ s:^:#:' \
+ -e '/"isolated engine should avoid namespace in names if that.s possible"/,/^ end/ s:^:#:' \
+ -e '/"loading seed data is wrapped by the executor"/,/^ end/ s:^:#:' \
+ -e '/"locales can be nested"/,/^ end/ s:^:#:' \
+ -e '/"mountable engine should copy migrations within engine_path"/,/^ end/ s:^:#:' \
+ -e '/"puts its lib directory on load path"/,/^ end/ s:^:#:' \
+ -e '/"rake environment can be called in the engine"/,/^ end/ s:^:#:' \
+ -e '/"respects the order of railties when installing migrations"/,/^ end/ s:^:#:' \
+ -e '/"skips nonexistent seed data"/,/^ end/ s:^:#:' \
+ -e '/"take ActiveRecord table_name_prefix into consideration when defining table_name_prefix"/,/^ end/ s:^:#:' \
+ -e '/"using namespace more than once on one module should not overwrite railtie_namespace method"/,/^ end/ s:^:#:' \
+ -e '/"when the bootstrap hook runs, autoload paths are set"/,/^ end/ s:^:#:' \
+ -i test/railties/engine_test.rb || die
+ sed -e '/test_controllers_are_correctly_namespaced_when_engine_is_mountable/,/^ end/ s:^:#:' \
+ -e '/test_controllers_are_not_namespaced_when_engine_is_not_mountable/,/^ end/ s:^:#:' \
+ -e '/test_helpers_are_correctly_namespaced_when_engine_is_mountable/,/^ end/ s:^:#:' \
+ -e '/test_helpers_are_not_namespaced_when_engine_is_not_mountable/,/^ end/ s:^:#:' \
+ -e '/test_models_are_correctly_namespaced_when_engine_is_mountable/,/^ end/ s:^:#:' \
+ -e '/test_models_are_not_namespaced_when_engine_is_not_mountable/,/^ end/ s:^:#:' \
+ -e '/test_table_name_prefix_is_correctly_namespaced_when_engine_is_mountable/,/^ end/ s:^:#:' \
+ -i test/railties/generators_test.rb || die
+
+ # Hangs
+ sed -e '/test "routes are loaded before inserting test routes" do/,/^ end/ s:^:#:' \
+ -i test/application/integration_test_case_test.rb || die
+ sed -e '/test "app lazily loads routes when polymorphic_url is called" do/,/^ end/ s:^:#:' \
+ -i test/engine/lazy_route_set_test.rb || die
+
+ # FIXME:
+ sed -e '/"db:prepare runs seeds once"/,/^ end/ s:^:#:' \
+ -i test/application/rake/multi_dbs_test.rb || die
+ sed -e '/test_not_protected_when_previous_migration_was_not_production/,/^ end/ s:^:#:' \
+ -i test/application/rake_test.rb || die
+ sed -e '/test_can_exclude_files_from_being_tested_via_rake_task_by_setting_DEFAULT_TEST_EXCLUDE_env_var/,/^ end/ s:^:#:' \
+ -e '/test_parallelization_is_disabled_when_number_of_tests_is_below_threshold/,/^ end/ s:^:#:' \
+ -e '/test_pass_TEST_env_on_rake_test/,/^ end/ s:^:#:' \
+ -e '/test_pass_rake_options/,/^ end/ s:^:#:' \
+ -e '/test_rails_db_create_all_restores_db_connection$/,/^ end/ s:^:#:' \
+ -e '/test_rails_db_create_all_restores_db_connection_after_drop/,/^ end/ s:^:#:' \
+ -e '/test_rake_db_and_test_tasks_parses_args_correctly/,/^ end/ s:^:#:' \
+ -e '/test_rake_passes_TESTOPTS_to_minitest/,/^ end/ s:^:#:' \
+ -e '/test_rake_passes_multiple_TESTOPTS_to_minitest/,/^ end/ s:^:#:' \
+ -e '/test_rake_runs_multiple_test_tasks/,/^ end/ s:^:#:' \
+ -e '/test_rake_runs_tests_before_other_tasks_when_specified/,/^ end/ s:^:#:' \
+ -e '/test_reset_sessions_before_rollback_on_system_tests/,/^ end/ s:^:#:' \
+ -i test/application/test_runner_test.rb || die
+ sed -e '/test "when passing --trace it invokes default" do/,/^ end/ s:^:#:'\
+ -i test/command/help_integration_test.rb || die
+ sed -e '/test_app_update_silence_deprecate_message/,/^ end/ s:^:#:' \
+ -i test/generators/app_generator_test.rb || die
+}
+
+each_ruby_test() {
+ # https://github.com/rails/rails/blob/main/guides/source/testing.md#parallel-testing
+ local -x PARALLEL_WORKERS="$(get_makeopts_jobs)"
+
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ # Do not include --disable=did_you_mean, its expected by some tests
+ edo ${RUBY} -S bundle exec ${RUBY} -S rake ${RUBY_FAKEGEM_TASK_TEST} || 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.1.1.ebuild b/dev-ruby/railties/railties-8.1.1.ebuild
deleted file mode 100644
index 222fdf18b8db..000000000000
--- a/dev-ruby/railties/railties-8.1.1.ebuild
+++ /dev/null
@@ -1,75 +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_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/railties/railties-8.1.3.1.ebuild b/dev-ruby/railties/railties-8.1.3.1.ebuild
new file mode 100644
index 000000000000..83a7862a7b17
--- /dev/null
+++ b/dev-ruby/railties/railties-8.1.3.1.ebuild
@@ -0,0 +1,349 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_TASK_TEST="test:isolated"
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
+
+RUBY_FAKEGEM_BINDIR="exe"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit edo multiprocessing 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"
+RUBY_S="rails-${PV}/${PN}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+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/actionmailer-${PV}
+ ~dev-ruby/actiontext-${PV}
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activestorage-${PV}
+ >=dev-ruby/bcrypt-ruby-3.1.11
+ >=dev-ruby/bootsnap-1.4.4
+ dev-ruby/bundler
+ >=dev-ruby/capybara-3.39
+ dev-ruby/connection_pool
+ <dev-ruby/dalli-5:*
+ >=dev-ruby/dalli-3.0.1:*
+ >=dev-ruby/image_processing-1.2:0
+ >=dev-ruby/importmap-rails-1.2.3
+ dev-ruby/jbuilder
+ >=dev-ruby/listen-3.3:3
+ dev-ruby/minitest:6
+ dev-ruby/minitest-mock
+ dev-ruby/minitest-retry
+ >=dev-ruby/mysql2-0.5:0.5
+ >=dev-ruby/propshaft-0.1.7
+ >=dev-ruby/pg-1.3:1
+ >=dev-ruby/rack-cache-1.2:1.2
+ >=dev-ruby/ruby-vips-2.3
+ >=dev-ruby/selenium-webdriver-4.20.0
+ >=dev-ruby/sprockets-rails-2.0.0
+ >=dev-ruby/sqlite3-2.1
+ dev-ruby/web-console
+ dev-ruby/webrick
+ >=www-servers/puma-5.0.3
+ )
+"
+
+all_ruby_prepare() {
+ # Replace Gemfile with something simpler for the test run
+ cat <<-EOF > ../Gemfile || die
+ source "https://rubygems.org"
+ gemspec
+
+ gem "rake"
+
+ gem "minitest", "~> 6.0"
+ gem "minitest-mock"
+ gem "minitest-retry"
+
+ gem "actionmailer", "${PV}"
+ gem "actiontext", "${PV}"
+ gem "actionview", "${PV}"
+ gem "activestorage", "${PV}"
+ gem "bcrypt", "~> 3.1.11", require: false
+ gem "bootsnap", ">= 1.4.4", require: false
+ gem "capybara", ">= 3.39"
+ gem "connection_pool", require: false
+ gem "dalli", ">= 3.0.1", "< 5"
+ gem "image_processing", "~> 1.2"
+ gem "importmap-rails", ">= 1.2.3"
+ gem "jbuilder", require: false
+ gem "listen", "~> 3.3", require: false
+ gem "mysql2", "~> 0.5"
+ gem "pg", "~> 1.3"
+ gem "propshaft", ">= 0.1.7"
+ gem "puma", ">= 5.0.3", require: false
+ gem "rack-cache", "~> 1.2"
+ gem "ruby-vips", "~> 2.3"
+ gem "selenium-webdriver", ">= 4.20.0"
+ gem "sprockets-rails", ">= 2.0.0", require: false
+ gem "sqlite3", ">= 2.1"
+ gem "web-console", require: false
+ gem "webrick", require: false
+ EOF
+ rm ../Gemfile.lock || die
+
+ # Avoid rubocop dependency
+ sed -e '/"generators with apply_rubocop_autocorrect_after_generate!"/,/^ end/ s:^:#:' \
+ -e '/"generators with apply_rubocop_autocorrect_after_generate! and pretend"/,/^ end/ s:^:#:' \
+ -i test/application/generators_test.rb || die
+ sed -e '/def test_generated_files_have_no_rubocop_warnings/,/^ end/ s:^:#:' \
+ -i test/generators/shared_generator_tests.rb || die
+
+ # selenium chrome
+ sed -e '/def generate_application_system_test_case_file/,/^ end/ s:^:#:' \
+ -e '/def test_failed_system_test_screenshot_should_be_taken_before_other_teardown/,/^ end/ s:^:#:' \
+ -e '/def test_parallel_testing_when_schema_is_not_up_to_date/,/^ end/ s:^:#:' \
+ -e '/def test_reset_sessions_on_failed_system_test_screenshot/,/^ end/ s:^:#:' \
+ -e '/def test_system_tests_are_not_run_through_rake_test/,/^ end/ s:^:#:' \
+ -e '/def test_system_tests_are_not_run_with_the_default_test_command/,/^ end/ s:^:#:' \
+ -e '/def test_system_tests_are_run_through_rake_test_when_given_in_TEST/,/^ end/ s:^:#:' \
+ -i test/application/test_runner_test.rb || die
+ rm test/application/system_test_case_test.rb || die
+
+ # Unpackaged dependency turbo-rails
+ sed -e '/def test_app_update$/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_change_app_name_when_app_name_is_hyphenated_name/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_change_config_target_version/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_action_cable_contents_when_skip_action_cable_is_given/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_active_storage_contents_when_skip_active_record_is_given/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_active_storage_contents_when_skip_active_storage_is_given/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_assets_initializer_when_asset_pipeline_is_not_used/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_generate_bootsnap_contents_when_skip_bootsnap_is_given/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_does_not_remove_rack_cors_if_already_present/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_generates_public_folders/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_action_mailbox/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_action_text/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_active_job/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_brakeman/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_bundler_audit/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_rubocop/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_system_test/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_test/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_preserves_skip_thruster/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_supports_pretend/,/^ end/ s:^:#:' \
+ -e '/def test_app_update_supports_skip/,/^ end/ s:^:#:' \
+ -e '/def test_application_name_is_detected_if_it_exists_and_app_folder_renamed/,/^ end/ s:^:#:' \
+ -e '/def test_ci_workflow_does_not_include_db_test_prepare_when_skip_active_record_is_given/,/^ end/ s:^:#:' \
+ -i test/generators/app_generator_test.rb || die
+
+ # Avoid breaking network sandbox
+ rm test/application/active_job_adapter_test.rb || die
+ sed -e '/def test_ensure_that_migration_tasks_work_with_mountable_option/,/^ end/ s:^:#:' \
+ -e '/def test_plugin_passes_generated_test/,/^ end/ s:^:#:' \
+ -i test/generators/plugin_generator_test.rb || die
+
+ # Needs running db
+ sed -e '/test "db:create works when schema cache exists and database does not exist" do/,/^ end/ s:^:#:' \
+ -e '/test "db:prepare creates test database if it does not exist" do/,/^ end/ s:^:#:' \
+ -e '/test "db:schema:cache:dump dumps virtual columns" do/,/^ end/ s:^:#:' \
+ -i test/application/rake/dbs_test.rb || die
+ sed -e '/"default schema generation after migration"/,/^ end/ s:^:#:' \
+ -e '/"migrate with specified VERSION in different formats"/,/^ end/ s:^:#:' \
+ -e '/"migration status after rollback and forward"/,/^ end/ s:^:#:' \
+ -e '/"migration status after rollback and redo without timestamps"/,/^ end/ s:^:#:' \
+ -e '/"migration status after rollback and redo"/,/^ end/ s:^:#:' \
+ -e '/"migration status migrated file is deleted"/,/^ end/ s:^:#:' \
+ -e '/"migration status without timestamps"/,/^ end/ s:^:#:' \
+ -e '/"migration status"/,/^ end/ s:^:#:' \
+ -e '/"migration with 0 version"/,/^ end/ s:^:#:' \
+ -e '/"migration with empty version"/,/^ end/ s:^:#:' \
+ -e '/"migrations with execute run when connections are established from a loaded model"/,/^ end/ s:^:#:' \
+ -e '/"model and migration generator with change syntax"/,/^ end/ s:^:#:' \
+ -e '/"raise error on any move when current migration does not exist"/,/^ end/ s:^:#:' \
+ -e '/"raise error on any move when target migration does not exist"/,/^ end/ s:^:#:' \
+ -e '/"running migrations with given scope"/,/^ end/ s:^:#:' \
+ -e '/"running migrations with not timestamp head migration files"/,/^ end/ s:^:#:' \
+ -e '/"version outputs current version"/,/^ end/ s:^:#:' \
+ -i test/application/rake/migrations_test.rb || die
+ sed -e '/test "db:migrate respects timestamp ordering across databases" do/,/^ end/ s:^:#:' \
+ -e '/test "db:prepare setup the database even if schema does not exist" do/,/^ end/ s:^:#:' \
+ -e '/test "db:prepare setups missing database without clearing existing one" do/,/^ end/ s:^:#:' \
+ -i test/application/rake/multi_dbs_test.rb || die
+ sed -e '/test "task is protected when previous migration was production" do/,/^ end/ s:^:#:' \
+ -i test/application/rake_test.rb || die
+ sed -e '/"database-dependent attribute types are resolved when parallel tests are run in eager load context"/,/^ end/ s:^:#:' \
+ -i test/application/test_test.rb || die
+ sed -e '/test_devcontainer_mariadb_mysql/,/^ end/ s:^:#:' \
+ -e '/test_devcontainer_mysql/,/^ end/ s:^:#:' \
+ -i test/generators/app_generator_test.rb || die
+
+ # Unpackaged dependency solid_cable and solid_queue
+ sed -e '/test "generates devcontainer for default app with solid gems" do/,/^ end/ s:^:#:' \
+ -i test/commands/devcontainer_test.rb || die
+ sed -e '/def test_app_update_does_not_generate_public_files/,/^ end/ s:^:#:' \
+ -i test/generators/api_app_generator_test.rb || die
+
+ # Unpackaged dependency kamal
+ sed -e '/test_kamal_deploy_yml_excludes_asset_path_for_api_app/,/^ end/ s:^:#:' \
+ -i test/generators/api_app_generator_test.rb || die
+
+ # Fails due to using system gems
+ sed -e '/"rails routes with expanded option"/,/^ end/ s:^:#:' \
+ -i test/commands/routes_test.rb || die
+
+ # Triggers vendored thor in bundler weirdness
+ sed -e '/test_bin_setup$/,/^ end/ s:^:#:' \
+ -e '/test_bin_setup_output/,/^ end/ s:^:#:' \
+ -i test/application/bin_setup_test.rb || die
+ sed -e '/"load_path is populated before eager loaded models"/,/^ end/ s:^:#:' \
+ -e '/"locale files should be added to the load path"/,/^ end/ s:^:#:' \
+ -i test/application/initializers/i18n_test.rb || die
+ sed -e '/"AC load hooks can be used with metal"/,/^ end/ s:^:#:' \
+ -e '/"constants in app are autoloaded"/,/^ end/ s:^:#:' \
+ -e '/"frameworks aren.t loaded during initialization"/,/^ end/ s:^:#:' \
+ -e '/"models without table do not panic on scope definitions when loaded"/,/^ end/ s:^:#:' \
+ -e '/test_initialize_can_be_called_at_any_time/,/^ end/ s:^:#:' \
+ -i test/application/loading_test.rb || die
+ sed -e '/test_console_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -e '/test_dbconsole_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -e '/test_help_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -e '/test_runner_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -e '/test_server_command_broadcast_logs/,/^ end/ s:^:#:' \
+ -e '/test_server_command_work_inside_engine/,/^ end/ s:^:#:' \
+ -i test/engine/commands_test.rb || die
+ sed -e '/"automatically synchronize test schema"/,/^ end/ s:^:#:' \
+ -i test/engine/test_test.rb || die
+ sed -e '/test_executed_only_once/,/^ end/ s:^:#:' \
+ -e '/test_fail_fast/,/^ end/ s:^:#:' \
+ -e '/test_mix_files_and_line_filters/,/^ end/ s:^:#:' \
+ -e '/test_multiple_line_filters/,/^ end/ s:^:#:' \
+ -e '/test_only_inline_failure_output/,/^ end/ s:^:#:' \
+ -e '/test_output_inline_by_default/,/^ end/ s:^:#:' \
+ -e '/test_raise_error_when_specified_file_does_not_exist/,/^ end/ s:^:#:' \
+ -e '/test_run_default/,/^ end/ s:^:#:' \
+ -e '/test_run_multiple_files/,/^ end/ s:^:#:' \
+ -e '/test_run_single_file/,/^ end/ s:^:#:' \
+ -e '/test_warnings_option/,/^ end/ s:^:#:' \
+ -i test/generators/plugin_test_runner_test.rb || die
+ sed -e '/test_controller_tests_pass_by_default_inside_full_engine/,/^ end/ s:^:#:' \
+ -e '/test_controller_tests_pass_by_default_inside_mountable_engine/,/^ end/ s:^:#:' \
+ -i test/generators/scaffold_controller_generator_test.rb || die
+ sed -e '/test_scaffold_on_invoke_inside_mountable_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_on_revoke_inside_mountable_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_api_full_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_api_mountable_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_full_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_mountable_engine/,/^ end/ s:^:#:' \
+ -e '/test_scaffold_tests_pass_by_default_inside_namespaced_mountable_engine/,/^ end/ s:^:#:' \
+ -i test/generators/scaffold_generator_test.rb || die
+ sed -e '/test_run_default/,/^ end/ s:^:#:' \
+ -e '/test_rerun_snippet_is_relative_path/,/^ end/ s:^:#:' \
+ -i test/generators/test_runner_in_engine_test.rb || die
+ sed -e '/"active_storage:install task works within engine"/,/^ end/ s:^:#:' \
+ -e '/"active_storage:update task works within engine"/,/^ end/ s:^:#:' \
+ -e '/"adds its fixtures path to fixture_paths"/,/^ end/ s:^:#:' \
+ -e '/"adds its mailer previews to mailer preview paths"/,/^ end/ s:^:#:' \
+ -e '/"adds its views to view paths"/,/^ end/ s:^:#:' \
+ -e '/"can draw routes in app routes from engines"/,/^ end/ s:^:#:' \
+ -e '/"copying migrations to specific database"/,/^ end/ s:^:#:' \
+ -e '/"copying migrations"/,/^ end/ s:^:#:' \
+ -e '/"don.t reverse default railties order"/,/^ end/ s:^:#:' \
+ -e '/"isolated engine should avoid namespace in names if that.s possible"/,/^ end/ s:^:#:' \
+ -e '/"loading seed data is wrapped by the executor"/,/^ end/ s:^:#:' \
+ -e '/"locales can be nested"/,/^ end/ s:^:#:' \
+ -e '/"mountable engine should copy migrations within engine_path"/,/^ end/ s:^:#:' \
+ -e '/"puts its lib directory on load path"/,/^ end/ s:^:#:' \
+ -e '/"rake environment can be called in the engine"/,/^ end/ s:^:#:' \
+ -e '/"respects the order of railties when installing migrations"/,/^ end/ s:^:#:' \
+ -e '/"skips nonexistent seed data"/,/^ end/ s:^:#:' \
+ -e '/"take ActiveRecord table_name_prefix into consideration when defining table_name_prefix"/,/^ end/ s:^:#:' \
+ -e '/"using namespace more than once on one module should not overwrite railtie_namespace method"/,/^ end/ s:^:#:' \
+ -e '/"when the bootstrap hook runs, autoload paths are set"/,/^ end/ s:^:#:' \
+ -i test/railties/engine_test.rb || die
+ sed -e '/test_controllers_are_correctly_namespaced_when_engine_is_mountable/,/^ end/ s:^:#:' \
+ -e '/test_controllers_are_not_namespaced_when_engine_is_not_mountable/,/^ end/ s:^:#:' \
+ -e '/test_helpers_are_correctly_namespaced_when_engine_is_mountable/,/^ end/ s:^:#:' \
+ -e '/test_helpers_are_not_namespaced_when_engine_is_not_mountable/,/^ end/ s:^:#:' \
+ -e '/test_models_are_correctly_namespaced_when_engine_is_mountable/,/^ end/ s:^:#:' \
+ -e '/test_models_are_not_namespaced_when_engine_is_not_mountable/,/^ end/ s:^:#:' \
+ -e '/test_table_name_prefix_is_correctly_namespaced_when_engine_is_mountable/,/^ end/ s:^:#:' \
+ -i test/railties/generators_test.rb || die
+
+ # Hangs
+ sed -e '/test "routes are loaded before inserting test routes" do/,/^ end/ s:^:#:' \
+ -i test/application/integration_test_case_test.rb || die
+ sed -e '/test "app lazily loads routes when polymorphic_url is called" do/,/^ end/ s:^:#:' \
+ -i test/engine/lazy_route_set_test.rb || die
+
+ # FIXME:
+ sed -e '/test_default_transformer_with_gem_no_warning/,/^ end/ s:^:#:' \
+ -i test/application/active_storage/engine_integration_test.rb || die
+ sed -e '/"db:prepare runs seeds once"/,/^ end/ s:^:#:' \
+ -i test/application/rake/multi_dbs_test.rb || die
+ sed -e '/test_not_protected_when_previous_migration_was_not_production/,/^ end/ s:^:#:' \
+ -i test/application/rake_test.rb || die
+ sed -e '/test_can_exclude_files_from_being_tested_via_rake_task_by_setting_DEFAULT_TEST_EXCLUDE_env_var/,/^ end/ s:^:#:' \
+ -e '/test_parallelization_is_disabled_when_number_of_tests_is_below_threshold/,/^ end/ s:^:#:' \
+ -e '/test_pass_TEST_env_on_rake_test/,/^ end/ s:^:#:' \
+ -e '/test_pass_rake_options/,/^ end/ s:^:#:' \
+ -e '/test_rails_db_create_all_restores_db_connection$/,/^ end/ s:^:#:' \
+ -e '/test_rails_db_create_all_restores_db_connection_after_drop/,/^ end/ s:^:#:' \
+ -e '/test_rake_db_and_test_tasks_parses_args_correctly/,/^ end/ s:^:#:' \
+ -e '/test_rake_passes_TESTOPTS_to_minitest/,/^ end/ s:^:#:' \
+ -e '/test_rake_passes_multiple_TESTOPTS_to_minitest/,/^ end/ s:^:#:' \
+ -e '/test_rake_runs_multiple_test_tasks/,/^ end/ s:^:#:' \
+ -e '/test_rake_runs_tests_before_other_tasks_when_specified/,/^ end/ s:^:#:' \
+ -e '/test_reset_sessions_before_rollback_on_system_tests/,/^ end/ s:^:#:' \
+ -i test/application/test_runner_test.rb || die
+ sed -e '/test "when passing --trace it invokes default" do/,/^ end/ s:^:#:'\
+ -i test/command/help_integration_test.rb || die
+ sed -e '/test_app_update_silence_deprecate_message/,/^ end/ s:^:#:' \
+ -i test/generators/app_generator_test.rb || die
+}
+
+each_ruby_test() {
+ # https://github.com/rails/rails/blob/main/guides/source/testing.md#parallel-testing
+ local -x PARALLEL_WORKERS="$(get_makeopts_jobs)"
+
+ local -x BUNDLE_GEMFILE="../Gemfile"
+ local -x MT_NO_PLUGINS=true
+ # Do not include --disable=did_you_mean, its expected by some tests
+ edo ${RUBY} -S bundle exec ${RUBY} -S rake ${RUBY_FAKEGEM_TASK_TEST} || 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/ruby-vips/Manifest b/dev-ruby/ruby-vips/Manifest
new file mode 100644
index 000000000000..55d17fd38b4f
--- /dev/null
+++ b/dev-ruby/ruby-vips/Manifest
@@ -0,0 +1 @@
+DIST ruby-vips-2.3.0.gh.tar.gz 5595101 BLAKE2B bfff3d74d721c74b33f65d6bb3360558f13fbf39eabd1db015727e7b734a886332b71f37383db85055c38750f1769f6b8b3de7f4f0958b6f67fd1fb133ddcb96 SHA512 16337cff8df54adbbb3ffbcda4c08dd75b9d6397b2bf1b885f106dde9dd3e47d63040bfd202c4d32696aa986b4a7c501d6591ba263159533f0059a1009966c65
diff --git a/dev-ruby/ruby-vips/metadata.xml b/dev-ruby/ruby-vips/metadata.xml
new file mode 100644
index 000000000000..8a5649871f72
--- /dev/null
+++ b/dev-ruby/ruby-vips/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <doc>https://www.rubydoc.info/gems/ruby-vips</doc>
+ <remote-id type="rubygems">ruby-vips</remote-id>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ruby/ruby-vips/ruby-vips-2.3.0.ebuild b/dev-ruby/ruby-vips/ruby-vips-2.3.0.ebuild
new file mode 100644
index 000000000000..705e8540832c
--- /dev/null
+++ b/dev-ruby/ruby-vips/ruby-vips-2.3.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_GEMSPEC="ruby-vips.gemspec"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A fast image processing library with low memory needs"
+HOMEPAGE="https://github.com/libvips/ruby-vips"
+SRC_URI="
+ https://github.com/libvips/ruby-vips/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# See 'ffi_lib FFI.library_name("vips", ??)' in lib/vips.rb
+VIPS_ABI="42"
+
+RDEPEND="
+ media-libs/vips:0/${VIPS_ABI}[introspection]
+"
+
+ruby_add_rdepend "
+ >=dev-ruby/ffi-1.12
+ dev-ruby/logger
+"
+
+all_ruby_prepare() {
+ sed -e 's:require_relative ":require "./:' \
+ -e 's:git ls-files -z:find * -print0:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/sqlite3/Manifest b/dev-ruby/sqlite3/Manifest
index 714e027d3d8f..733a2b77c55c 100644
--- a/dev-ruby/sqlite3/Manifest
+++ b/dev-ruby/sqlite3/Manifest
@@ -1,2 +1,3 @@
DIST sqlite3-2.7.3.tar.gz 94800 BLAKE2B 08036a1078818c6e6c5c67d922aa8ebcb05dbd8f2a1789e52af5014e41a39f9c5a9b373e356f99919c2227fc62996e2e87198f6253a102af03076e614f072fa2 SHA512 30015de31653b6dbec699a8245172b2db921c7f2c5c74872f926ceec06226bb43545f3caa89a6cc846761dcd3e291e8d9508cc787a1f520eda036df01f03e30e
DIST sqlite3-2.9.0.tar.gz 95483 BLAKE2B c9fa9b3a5e96366fbbf27697ad21fc6d6155b4735125f7fcd909b7539e7c6772465ac1329bfd3357464027c6a3dcb358aad725de2ab9a9dab72cdfff3ca45347 SHA512 37d0268460e1c6b847c9259bfe75becff09c28d8e9d2e8a2ce7c8bb4848f39700f2c3741bb86e846907dbeb315971188585b0c86f2d04d002ba952882a6bee39
+DIST sqlite3-2.9.5.tar.gz 97674 BLAKE2B 5cc7fc5889c145f3199815affb29f395ad4a438db7e98f35226adf77df41e211f615fad6c0ae5eb94efa7e9ec7e4e0a4c1088ee6b9fb3b95cfc2f87e6a41a7bb SHA512 ce399b1c27f3759aaf45c42beb103e77788a412fb329c91ebd0d386590471d5fa8936db989373f92e6804486fcb7c5a6467d2f43bc97bd1497deb87f32f629d7
diff --git a/dev-ruby/sqlite3/sqlite3-2.9.5.ebuild b/dev-ruby/sqlite3/sqlite3-2.9.5.ebuild
new file mode 100644
index 000000000000..0b506b254fc4
--- /dev/null
+++ b/dev-ruby/sqlite3/sqlite3-2.9.5.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_TASK_DOC="faq"
+RUBY_FAKEGEM_DOCDIR="doc faq"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/sqlite3/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/sqlite3
+RUBY_FAKEGEM_GEMSPEC="sqlite3.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An extension library to access a SQLite database from Ruby"
+HOMEPAGE="https://github.com/sparklemotion/sqlite3-ruby"
+SRC_URI="https://github.com/sparklemotion/sqlite3-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="sqlite3-ruby-${PV}"
+LICENSE="BSD"
+
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+# We track the bundled sqlite version here
+RDEPEND=">=dev-db/sqlite-3.53.2:3"
+DEPEND=">=dev-db/sqlite-3.53.2:3"
+
+ruby_add_bdepend "
+ doc? ( dev-ruby/rdoc )
+ test? ( dev-ruby/minitest:5 )
+"
+
+all_ruby_prepare() {
+ sed -i -e 's/enable_config("system-libraries")/true/' ext/sqlite3/extconf.rb || die
+
+ # Remove the runtime dependency on mini_portile2. We build without
+ # it and it is not a runtime dependency for us.
+ sed -e '/mini_portile2/ s:^:#:' \
+ -e '/WARNING/ s:^:#:' \
+ -e "s/0.0.0/${PV}/" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid a failing spec for reprepares stats. Upstream indicates that
+ # the stats data should not be relied on other than for human
+ # debugging.
+ sed -e '/def test_stat_reprepares/askip "Fails on Gentoo"' \
+ -i test/test_statement.rb || die
+}
+
+all_ruby_compile() {
+ all_fakegem_compile
+
+ if use doc; then
+ rdoc --title "${P} Documentation" -o doc --main README.rdoc lib *.rdoc ext/*/*.c || die
+ rm -f doc/js/*.gz || die
+ fi
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/web-console/web-console-4.2.1.ebuild b/dev-ruby/web-console/web-console-4.2.1.ebuild
index b40ef7d1eab9..f9537b6dfdc0 100644
--- a/dev-ruby/web-console/web-console-4.2.1.ebuild
+++ b/dev-ruby/web-console/web-console-4.2.1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-USE_RUBY="ruby32 ruby33 ruby34"
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.markdown README.markdown"