summaryrefslogtreecommitdiff
path: root/dev-ruby
diff options
context:
space:
mode:
Diffstat (limited to 'dev-ruby')
-rw-r--r--dev-ruby/bundler/Manifest1
-rw-r--r--dev-ruby/bundler/bundler-2.4.3.ebuild30
-rw-r--r--dev-ruby/curb/Manifest1
-rw-r--r--dev-ruby/curb/curb-0.9.11-r1.ebuild45
-rw-r--r--dev-ruby/gettext_i18n_rails/Manifest1
-rw-r--r--dev-ruby/gettext_i18n_rails/gettext_i18n_rails-1.10.0.ebuild38
-rw-r--r--dev-ruby/git/Manifest1
-rw-r--r--dev-ruby/git/git-1.13.0-r1.ebuild (renamed from dev-ruby/git/git-1.11.0.ebuild)10
-rw-r--r--dev-ruby/maxitest/Manifest1
-rw-r--r--dev-ruby/maxitest/maxitest-4.4.0.ebuild51
-rw-r--r--dev-ruby/parser/Manifest1
-rw-r--r--dev-ruby/parser/parser-3.2.0.0.ebuild43
-rw-r--r--dev-ruby/rack-protection/Manifest4
-rw-r--r--dev-ruby/rack-protection/rack-protection-2.2.0.ebuild24
-rw-r--r--dev-ruby/rack-protection/rack-protection-2.2.1.ebuild24
-rw-r--r--dev-ruby/rack-protection/rack-protection-3.0.5.ebuild (renamed from dev-ruby/rack-protection/rack-protection-2.2.2.ebuild)2
-rw-r--r--dev-ruby/rack/Manifest1
-rw-r--r--dev-ruby/rack/rack-3.0.3.ebuild45
-rw-r--r--dev-ruby/rbs/Manifest1
-rw-r--r--dev-ruby/rbs/rbs-2.8.3.ebuild49
-rw-r--r--dev-ruby/rdoc/Manifest1
-rw-r--r--dev-ruby/rdoc/rdoc-6.5.0.ebuild98
-rw-r--r--dev-ruby/rspec-expectations/Manifest1
-rw-r--r--dev-ruby/rspec-expectations/rspec-expectations-3.12.2.ebuild47
-rw-r--r--dev-ruby/rspec-mocks/Manifest1
-rw-r--r--dev-ruby/rspec-mocks/rspec-mocks-3.12.2.ebuild50
-rw-r--r--dev-ruby/rubygems/Manifest1
-rw-r--r--dev-ruby/rubygems/rubygems-3.4.3.ebuild113
-rw-r--r--dev-ruby/sinatra/Manifest3
-rw-r--r--dev-ruby/sinatra/metadata.xml4
-rw-r--r--dev-ruby/sinatra/sinatra-2.2.0-r1.ebuild34
-rw-r--r--dev-ruby/sinatra/sinatra-3.0.5.ebuild (renamed from dev-ruby/sinatra/sinatra-2.2.2.ebuild)10
-rw-r--r--dev-ruby/sus/Manifest1
-rw-r--r--dev-ruby/sus/sus-0.16.0.ebuild32
-rw-r--r--dev-ruby/unicode-display_width/Manifest1
-rw-r--r--dev-ruby/unicode-display_width/metadata.xml4
-rw-r--r--dev-ruby/unicode-display_width/unicode-display_width-2.4.2.ebuild29
37 files changed, 657 insertions, 146 deletions
diff --git a/dev-ruby/bundler/Manifest b/dev-ruby/bundler/Manifest
index d5b554c42db2..ed1adfcaba06 100644
--- a/dev-ruby/bundler/Manifest
+++ b/dev-ruby/bundler/Manifest
@@ -8,3 +8,4 @@ DIST bundler-2.2.33.gem 401920 BLAKE2B bfdb62c86449683d479f735ff6d65d33576ff03f1
DIST bundler-2.3.26.gem 411648 BLAKE2B 5ea0ff86e0e09bf0466e4bb21502a13519515f312b3df62024f0d293a51237eb30a5b3c349fb867e9b8dbf0e50ede5bc12b14c5cc6014a717d55534bf46d18f5 SHA512 03c6310c63ec4d313d48ecb15e784ae9cb2d2cb2cefc75752bbb7c018eeec45d534259646d525e486cd746ee8c179312c167338875e13f826994617622d2330d
DIST bundler-2.3.8.gem 403968 BLAKE2B 80640d5032034be0511762c60832c85c65b7b97397eca49d2bc35977a85625104477606abd6d8b286dd4697906a5d97076cac30f7ab58f45b258ba1e637bbc2c SHA512 e04bc9762135bdab7eb70bde4f21289375b7ea9bee795775dc614f31a6f145a5406396dbc638bdac778ac7c39d60c953e5ba38376b8bc72e7a8cfd1c40b25585
DIST bundler-2.4.1.gem 408576 BLAKE2B 8bd574023dfdffa9ab02b4a0f86c922cf3c8bbcebee3b9ad77b9eba748a81219f8fbccb3eac667922e7dc23f73212e9f42f04eae6ee99b1869ab40537365e8f2 SHA512 244cf923838c9e2001fae5533df66457953d93943fc9a2c587a1d36b1aec3385a7cd50680bd0fe14e8abb2dc11b11a8636a1e1c0d36847c24080f63edfe8b1f5
+DIST bundler-2.4.3.gem 409088 BLAKE2B df6991e9f4ef80899ac691d7a0ece268980bda7497482b207eba8e5e0f957fbc7b06f11755932f527d80ed199e79292b1a720a06f80b38d95685a4e6f2316e27 SHA512 a232c40656d05031b39390c72ae71596618e87d92cf86f1db45d75993ff8cb0625fef8055540ef14a8179211bdf17804028468c568e261d3dd43c0a5405ed4bf
diff --git a/dev-ruby/bundler/bundler-2.4.3.ebuild b/dev-ruby/bundler/bundler-2.4.3.ebuild
new file mode 100644
index 000000000000..1ac24d655f96
--- /dev/null
+++ b/dev-ruby/bundler/bundler-2.4.3.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31"
+
+# The specs require a number of gems to be installed in a temporary
+# directory, but this requires network access. They also don't work
+# when run with a path that contains "-".
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+# No documentation task
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
+
+RUBY_FAKEGEM_BINDIR="exe"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An easy way to vendor gem dependencies"
+HOMEPAGE="https://github.com/carlhuda/bundler"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend virtual/rubygems
+
+RDEPEND+=" dev-vcs/git"
diff --git a/dev-ruby/curb/Manifest b/dev-ruby/curb/Manifest
index 227c66d9ebd4..e8c285d3a555 100644
--- a/dev-ruby/curb/Manifest
+++ b/dev-ruby/curb/Manifest
@@ -1,3 +1,2 @@
-DIST curb-0.9.11.gem 88576 BLAKE2B 1656a17070151ddd1bd63c3e23885d36d8e2b133b19e00347892363a9a20c88baa10932ceb5273733b18847d8d19dc403aa4b7f36fbd80c8dde126ae46743796 SHA512 000ee2054a5866de09042dfc5894330900e401aa94a0fe8bb133fe9c661f7899992adff0585e5ed3725d3564cd9819d76653655f3539faaa61ca6acabe3a8602
DIST curb-1.0.1.gem 90624 BLAKE2B b54404e0ea81ccb2ea03e262abce247ca4e0db1a5208cfecd57a6c0e423c36b282cdaef7db9bd3fe70d3fdb8cfa60c6085be04ff78daac71e83b63fe25bfef06 SHA512 78eeef1b3a778c64517243a25ff82889cb4703589d27f08cff6e84d39a806610a80bb749c51ddba93a82e02a18797978b55ebc4643948caa8900e76d343f4bc6
DIST curb-1.0.3.gem 91648 BLAKE2B 8f819a5411c92e353cee4e1ef87c65bed67783606fcfe238a736ca5110b790d942e1cce6079508b854ab8b22e0079e8240e3d417f9e9ec6c2bef39878321ab55 SHA512 6273acd74121e3a4e42f7cb89eff4bad9511c7cafdf5e046773ec988c816003531877f6e5e756fab73296cedfa4599693014b6b65e9a9001a6e3c4875f53b73e
diff --git a/dev-ruby/curb/curb-0.9.11-r1.ebuild b/dev-ruby/curb/curb-0.9.11-r1.ebuild
deleted file mode 100644
index 884ae6906585..000000000000
--- a/dev-ruby/curb/curb-0.9.11-r1.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby26 ruby27 ruby30"
-
-RUBY_FAKEGEM_RECIPE_TEST="rake"
-
-RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby-language bindings for libcurl"
-HOMEPAGE="https://github.com/taf2/curb"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="amd64"
-IUSE=""
-
-DEPEND+=" net-misc/curl[ssl] test? ( net-misc/curl )"
-RDEPEND+=" net-misc/curl[ssl]"
-
-all_ruby_prepare() {
- # fix tests when localhost is also ::1
- sed -i -e 's|localhost:|127.0.0.1:|g' tests/*.rb || die
-
- # avoid tests making outside network connections
- rm tests/bug_postfields_crash.rb || die
- sed -e '/test_easy_http_verbs_must_respond_to_str/,/^ end/ s:^:#:' \
- -i tests/tc_curl_easy.rb || die
- sed -e '/test_connection_keepalive/aomit "network connection needed"' \
- -i tests/tc_curl_multi.rb || die
-
- # Fix test that expects wrong output
- sed -i -e 's/200 OK /200 OK/' tests/tc_curl_easy.rb || die
-
- # avoid failing tests where failure condition seems weird, no
- # upstream travis so not clear if the test is indeed broken.
- sed -i -e '/test_multi_easy_http/,/^ end/ s:^:#:' tests/tc_curl_multi.rb || die
-
- # avoid test requiring ntlm support on curl which is no longer available in gentoo
- sed -i -e '/test_username_password/aomit "ntlm support in curl needed"' -i tests/tc_curl_easy.rb || die
-}
diff --git a/dev-ruby/gettext_i18n_rails/Manifest b/dev-ruby/gettext_i18n_rails/Manifest
index 7505a39333c9..38e551ebc6ca 100644
--- a/dev-ruby/gettext_i18n_rails/Manifest
+++ b/dev-ruby/gettext_i18n_rails/Manifest
@@ -1,2 +1,3 @@
+DIST gettext_i18n_rails-1.10.0.tar.gz 21434 BLAKE2B 7b754b482c527593589f43b2547b5ed418db09bce255ba8e65523c7bf46c5402953990dc5941b06af8745a25c7840358e4beabaf1a2aec295a7763484bce8818 SHA512 0016dee43253fbf1fb712d74a1fb85c28d9d23b62af2ab16dfd4837f38749e4be8901b578b6a1e6ecbcf7476114e15873b4c073c5c0bdd7417e1d78515a3e4ff
DIST gettext_i18n_rails-1.8.1.tar.gz 21942 BLAKE2B 7925bfad0e1033fd363ca2c376594ba8ca6a7f5c1da940c680acae53e4b3902d7c07828b6023ed208f559af1b9ded7933ffae6b7385e066c0494aa16cc728256 SHA512 711c15620a23c070f47d4846f48b74564bfc23d27e9757936b432c1b3c534121d4cf58101fe533bc58b7d3e33e899134b92cd119e2cd2cd3eb39f54e93e394e0
DIST gettext_i18n_rails-1.9.0.tar.gz 21389 BLAKE2B 12c98c76f6e782d35957a168d71ba0ac6cbfa492954716366fc9c41cef1ee7cd733f4e352bff0c28c9ae873445729a30c572053eca423cfc272b4639e474a36d SHA512 dd271828120a4f430adf2d2f63d3c7c294d4b236d665b1e64599ba0c3e40114afcab0cd485fd2388e5747c4edb40d12de69e08464b36b160e216326bd112c232
diff --git a/dev-ruby/gettext_i18n_rails/gettext_i18n_rails-1.10.0.ebuild b/dev-ruby/gettext_i18n_rails/gettext_i18n_rails-1.10.0.ebuild
new file mode 100644
index 000000000000..8f6d8c4ddf2f
--- /dev/null
+++ b/dev-ruby/gettext_i18n_rails/gettext_i18n_rails-1.10.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30"
+
+RUBY_FAKEGEM_EXTRADOC="Readme.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="gettext_i18n_rails.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="FastGettext / Rails integration"
+HOMEPAGE="https://github.com/grosser/gettext_i18n_rails"
+SRC_URI="https://github.com/grosser/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/rails:6.1 dev-ruby/activerecord:6.1[sqlite] dev-ruby/temple )"
+ruby_add_rdepend ">=dev-ruby/fast_gettext-0.9.0:*"
+
+all_ruby_prepare() {
+ rm Gemfile Gemfile.lock || die
+
+ sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Remove specs for slim and hamlet, template engines we don't package.
+ rm spec/gettext_i18n_rails/slim_parser_spec.rb spec/gettext_i18n_rails/haml_parser_spec.rb || die
+
+ # Test against specific Rails version
+ sed -e '1igem "rails", "~>6.1.0"' -i spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/git/Manifest b/dev-ruby/git/Manifest
index 1a1aa4409eaf..7d0654281fce 100644
--- a/dev-ruby/git/Manifest
+++ b/dev-ruby/git/Manifest
@@ -1,3 +1,2 @@
-DIST git-1.11.0.tar.gz 214161 BLAKE2B 69471f89fddf18bf31d74e318141046395281ba64de1f91fd49cb866508dca9cf7c568c113ed7d7e928bf1d7dfdb0e130a193d4069b87155a4dbc046d6dd6ce9 SHA512 a71da8890622b6ad5a341908e968040ef6c00e2f9edd0bfee1a0c1e9f110cc12b9c01015605b0fb902fdf04fab6011adfbffcf5e8f853c550bff7c263d2e6bd6
DIST git-1.12.0.tar.gz 218472 BLAKE2B f5e0465fd2f0f2f1eb1584da6757c012cf80457a15e61b9a974707c8f026f34940d86b25fdd708b9fa6071fc35e8e65c6c87bc83b94bb0daec61ef015a03184c SHA512 9967bf6c9f00e29442495fb24abfd1ea3b6ad0068829e9d86727d41ecf07be0b8fbdc6d05b3c245a23223b4e35e87e984e7a60a5883839e6de45f8bdac406b0d
DIST git-1.13.0.tar.gz 219424 BLAKE2B 38d1821c59cbb743c50655e9426d77f76e77dda614a711b7d2185ed7f4caa853383ba85ecf05237da403061d002527c38a5c6e06cf5e6d482ac76bac49a0db56 SHA512 7920de37a3df67b743e91fb317bd0cba746d2343dfb77036398fc124d00eede7b9ade5dd2af5f26d65f1f24006608a29fca55d5be8a00557caaa31acd0b274d4
diff --git a/dev-ruby/git/git-1.11.0.ebuild b/dev-ruby/git/git-1.13.0-r1.ebuild
index 583ba08c7881..d9cbcab1b2db 100644
--- a/dev-ruby/git/git-1.11.0.ebuild
+++ b/dev-ruby/git/git-1.13.0-r1.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-USE_RUBY="ruby26 ruby27 ruby30 ruby31"
+USE_RUBY="ruby27 ruby30 ruby31"
RUBY_FAKEGEM_BINWRAP=""
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
@@ -18,13 +18,13 @@ RUBY_S="ruby-git-${PV}"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 ~ppc ~ppc64 ~x86"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
IUSE="test"
DEPEND+="test? ( >=dev-vcs/git-1.6.0.0 app-arch/tar )"
RDEPEND+=">=dev-vcs/git-1.6.0.0"
-ruby_add_rdepend ">=dev-ruby/rchardet-1.8:1"
+ruby_add_rdepend ">=dev-ruby/addressable-2.8:0 >=dev-ruby/rchardet-1.8:1"
ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/minitar dev-ruby/test-unit:2 )"
@@ -33,6 +33,8 @@ all_ruby_prepare() {
sed -i -e "s:/tmp:${TMPDIR}:" tests/units/test_archive.rb tests/test_helper.rb || die
sed -i -e 's/__dir__/"."/' -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e 's/1.12.0/'${PV}'/' lib/git/version.rb || die
}
each_ruby_test() {
diff --git a/dev-ruby/maxitest/Manifest b/dev-ruby/maxitest/Manifest
index e4e73cbd61f4..e35382ac970e 100644
--- a/dev-ruby/maxitest/Manifest
+++ b/dev-ruby/maxitest/Manifest
@@ -1,2 +1,3 @@
DIST maxitest-3.7.0.tar.gz 62716 BLAKE2B 9919702c3b6c701edf6a5de8c1054547edaeeda518a7b7bae3f419cba9f92f535ec7870ece080fb472d7635243afec4aeed4a27fd839874aa40d63d6ce4ecab8 SHA512 4843f9d405a40177622e9892d1e5fffe297ae03cfef68b73ce3ee966cc3a36e126a9f5a5018b898465f5ad40f8d4fc1e6bf53f5c76b376efeff669b57dd1e8aa
DIST maxitest-4.3.0.tar.gz 62596 BLAKE2B ddfa98aa4b4e1e0c85100ed6b703e8b76f5a251913e34de03f8cacdc0eb3a60014945786c1f60d81163d8c690f1cf37689fdc05b15a53b63b08247842f736176 SHA512 b81cc37bbd1ed5c149c4d541591fcec46e1e1fc74fc20205cf33745de4fad7fc302e8120b79d17e39412d7133b8d57fee064e1a36380efbde9bdd22f7bbc05b7
+DIST maxitest-4.4.0.tar.gz 62749 BLAKE2B 0545da95ff3bf6c61a330f041b7944f7ef7dfdb00267d28273b8a0bf8914647a0c34e32a826acc89fe2f2d9a1ac2cc610ca968cef273a6a6e7d64db68c6583cf SHA512 37b6a8c9a992fd54c605c0b26a490ddfd8b06e00e9686a41e6170d81c047b6b255ad337f315d8c5d4176e8acba19e2a51061a402bba7dd3d528e14d20e2d24c4
diff --git a/dev-ruby/maxitest/maxitest-4.4.0.ebuild b/dev-ruby/maxitest/maxitest-4.4.0.ebuild
new file mode 100644
index 000000000000..b0ac344fdff3
--- /dev/null
+++ b/dev-ruby/maxitest/maxitest-4.4.0.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31"
+
+RUBY_FAKEGEM_EXTRADOC="Readme.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Minitest + all the features you always wanted"
+HOMEPAGE="https://github.com/grosser/maxitest"
+SRC_URI="https://github.com/grosser/maxitest/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+ruby_add_rdepend "<dev-ruby/minitest-5.18:5"
+
+ruby_add_bdepend "test? ( dev-ruby/bundler )"
+
+all_ruby_prepare() {
+ rm -f Gemfile.lock || die
+ # Remove developer-only gems from the gemspec and avoid git issues
+ sed -i -e '/wwtd/ s:^:#:' \
+ -e 's/git ls-files/find */' \
+ ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/\(byebug\|bump\)/ s:^:#:' Gemfile || die
+
+ sed -e '/shows short backtraces/askip "fails on ruby27"' \
+ -e '/fails when not used/askip "fails with newer maxitest by design"' \
+ -e '/shows version/askip "fails due to missing require for version"' \
+ -i spec/maxitest_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Use the correct target
+ sed -i -e '/sh/ s:ruby:'${RUBY}':' \
+ -e '/sh/ s:mtest:'${RUBY}' -S mtest:' \
+ spec/maxitest_spec.rb || die
+}
+
+each_ruby_test() {
+ PATH="${S}/bin:${PATH}" RUBYLIB="${S}/lib" RSPEC_VERSION=3 ruby-ng_rspec spec
+}
diff --git a/dev-ruby/parser/Manifest b/dev-ruby/parser/Manifest
index fc48ced33150..4bfb09b47dd1 100644
--- a/dev-ruby/parser/Manifest
+++ b/dev-ruby/parser/Manifest
@@ -2,3 +2,4 @@ DIST parser-3.1.1.0.tar.gz 299759 BLAKE2B c4fdf278c1ae90529de414d9cda2770524f051
DIST parser-3.1.2.0.tar.gz 299753 BLAKE2B b5c991ab0834ed5e5b7107935500659828a6f804d9231462dc8a658346bab3959ac56b514045c25af4adb84af3f0cdd9615c9aafb2325ab24a04c0c5617ca732 SHA512 d8becf7e5b633c0a1ddfe8aac98c2f89d6b713cbabd2877a4eac36b0fd4935bd1a05990c100bcf58f04ad78218af0a5f79dbb83bf369708750c8834598286cfa
DIST parser-3.1.2.1.tar.gz 299885 BLAKE2B 2fe56279be003825a25e6fdfc99dbb13b93dc167f7da3fe636da368bc10a6506afd7510bf3d7c55122321de1cd0bf46afce2ee0ff0a9d914e507c0333225e5ea SHA512 9bbaae6436f41668621fdb1f45dd2a30ea5485dca19b0024a19e8be0684c4a961e914040e3b53f725f06c98822392cfef87113332124272f895bb571e56cc961
DIST parser-3.1.3.0.tar.gz 301000 BLAKE2B 3b7984966643d983e8606ba4de13a08de9130aa58b5adebdc9cfb273e00e700086f99f8a678ccb6db1ac70dac2da429dbfa1b45661c4f9764b676beae5c64633 SHA512 23ef12043706ba810ade3ac94f376082d5b45db8b451634d469a26f834890e7a82a9669132df4654aef4cb7650f0e13d2f33aad489ebbbb76ab547cb9e64f498
+DIST parser-3.2.0.0.tar.gz 302043 BLAKE2B 8a02ca62560fc976fbe62d02ecf24713248a9f522e1cc9daa1deaa153d900628dce4f59c7791cc61652199358addca1432403a3f3849b0ef8f9495639282697d SHA512 58b9011c22af76f5eccf7035dd53da705ddc952c6185ebbb48c33c5486b5852ba8a543093f8c1f2a2c7aea8e78407c04a9dc49abf43edb27c460cf8b038338cf
diff --git a/dev-ruby/parser/parser-3.2.0.0.ebuild b/dev-ruby/parser/parser-3.2.0.0.ebuild
new file mode 100644
index 000000000000..1831dac09aaf
--- /dev/null
+++ b/dev-ruby/parser/parser-3.2.0.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_TASK_TEST="test"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_VERSION="${PV/_pre/.pre.}"
+
+RUBY_FAKEGEM_GEMSPEC="parser.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A production-ready Ruby parser written in pure Ruby"
+HOMEPAGE="https://github.com/whitequark/parser"
+SRC_URI="https://github.com/whitequark/parser/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~sparc"
+IUSE=""
+
+DEPEND+=" =dev-util/ragel-6*"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/minitest:5
+ dev-ruby/racc )
+ dev-ruby/cliver
+"
+ruby_add_rdepend "=dev-ruby/ast-2.4* >=dev-ruby/ast-2.4.1"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile || die
+ sed -i -e '/simplecov/ s:^:#:' test/helper.rb || die
+}
+
+each_ruby_compile() {
+ ${RUBY} -S rake generate || die
+}
diff --git a/dev-ruby/rack-protection/Manifest b/dev-ruby/rack-protection/Manifest
index a67be12c4287..2952e95eb2e3 100644
--- a/dev-ruby/rack-protection/Manifest
+++ b/dev-ruby/rack-protection/Manifest
@@ -1,7 +1,5 @@
-DIST rack-protection-2.2.0.gem 17408 BLAKE2B d9d5d8e2473b6354dd61cfc338a05932a2c60aa12544399cb0b9b74c717d6fa48bdec638381582be0a13f845f0c69583275f412458a20198894b5eddc7b53358 SHA512 06d6c2026e3e93131a2405bbaa8a514ddde48607979828b9fc41309dbdfff2b7c8cac48a6981e76b5dda554f0cbdc7c6ff5f44b8925fce1cb9b7de0a16380ca4
-DIST rack-protection-2.2.1.gem 17408 BLAKE2B 21ecf95a27ab08b2e89369cfaffff43192c2ca5bb74afe7a91041e5fb9f2479a625ca2fcc59fc2f3eb208f17a3456dffd14095d25f8a0ed331972f6f987dace6 SHA512 595dc7ff7deb63130f966a12849750900319356f29948e9cca1e1aebe168bad77de624dd280a1b804ad6a2d44daedfcb352777ca724e9fde2a5de02ead472734
-DIST rack-protection-2.2.2.gem 17408 BLAKE2B d67384374afa29712742531bff0cca78be96f80dd316d4e5929cb2751152bc0d73f8ede4430aa50a2e114b872845f11ca8debe93eaa1a7a63e05daae697c2e7d SHA512 6bc7694daebcc2fb585b303aa059e82db94c142a82d0e951e0dd99388074449c989d41c3aa05882a150776e28d0394f78d0b063e564e7eda7aea14d496eef0fb
DIST rack-protection-2.2.3.gem 17920 BLAKE2B 7a66cf4d5de68acd3ef4c7db2485657ce226e3101660f4f15bb3a8ab937785211055e49d676cf73cf52d4896e787d8f78a62099549a4ff846b5963c4247b5dd3 SHA512 ce41e1e61016090125557d8211b65b0fc9d545fac6c42f64fb3f48ac0fea56689e17acf7aca6cd82137ba7384c559ac47ac9995f57068f3f216ae61b7fe8953d
DIST rack-protection-3.0.1.gem 20480 BLAKE2B 102fff6298dbbb766313687b6f3653c60d055c654922e108c0e5eab1364858adf83a800c66f0800ef8a48997884e4b0c16ad1a70c2d00d657fdbcdb929c18bbc SHA512 730cb4fa67e86ee79043e706c4a011f1f4fad8902d27ed25a14e03c7acf7644db9e8685bb6248d9511d32d55a1f13eb548cd9471958b69bf88c4c371fcc1a8df
DIST rack-protection-3.0.2.gem 20480 BLAKE2B 95c951c6995ac4e69bb6aca85ff0c8a86793466db84e149ef6d287fb479fe49bc3708d0bc71ca656c4bb79b069d3b01139fab04756bc68051eda90db29f506a4 SHA512 54603e8ba22f1b359e5ffe82a3ee99a31a26e5dedd1e46edd4591ca416a1f241dc37ce2b6da25262a9cf9027b0e8687bd23c6dcbea0197131ca33088cbfd0280
DIST rack-protection-3.0.4.gem 20480 BLAKE2B a71d86a123cdf392632c3193cccf8fc5635ca076039eecc40fd0aa050624e909d63c578727ca1e4bf13736fb844b8d3114ce34a6729b57b600715cab7ec25c1f SHA512 b898c66dcac38219c43b1a6ce3a2952ca35e44f81b604f00dbff43938b5493df4c9a654ae221f01675f8f4b8aaf90f31b435a648f46f70789ac78a0c4a0c4f12
+DIST rack-protection-3.0.5.gem 20480 BLAKE2B 1fa11760c6ddac58234ffe2e6d783c985e29b5e2bd10ea21b0782f7824b5930351c8e32c9401b6276ef028adcd8b25ca4458333d8008a554c413f54315ff8809 SHA512 4ed0ee9e8fe08532ff7f2905251af110f3fff0e419da5be50ae3e5a90906e43c39cf8edc219fcfe3e27a72591500c040afcc9552da875773375b170fb91aa9ff
diff --git a/dev-ruby/rack-protection/rack-protection-2.2.0.ebuild b/dev-ruby/rack-protection/rack-protection-2.2.0.ebuild
deleted file mode 100644
index 13db1f3f6e1f..000000000000
--- a/dev-ruby/rack-protection/rack-protection-2.2.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-USE_RUBY="ruby26 ruby27 ruby30 ruby31"
-
-# There are no specs in the gem and the source cannot be downloaded separately.
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="This gem protects against typical web attacks"
-HOMEPAGE="https://github.com/rkh/rack-protection"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/rack:*"
-
-# ruby_add_bdepend "test? ( dev-ruby/rack-test )"
diff --git a/dev-ruby/rack-protection/rack-protection-2.2.1.ebuild b/dev-ruby/rack-protection/rack-protection-2.2.1.ebuild
deleted file mode 100644
index d31bdbd997d7..000000000000
--- a/dev-ruby/rack-protection/rack-protection-2.2.1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-USE_RUBY="ruby27 ruby30 ruby31"
-
-# There are no specs in the gem and the source cannot be downloaded separately.
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="This gem protects against typical web attacks"
-HOMEPAGE="https://github.com/rkh/rack-protection"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/rack:*"
-
-# ruby_add_bdepend "test? ( dev-ruby/rack-test )"
diff --git a/dev-ruby/rack-protection/rack-protection-2.2.2.ebuild b/dev-ruby/rack-protection/rack-protection-3.0.5.ebuild
index d31bdbd997d7..c1fe98e42fca 100644
--- a/dev-ruby/rack-protection/rack-protection-2.2.2.ebuild
+++ b/dev-ruby/rack-protection/rack-protection-3.0.5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-ruby/rack/Manifest b/dev-ruby/rack/Manifest
index 43d291b1b638..9e36830dbf0a 100644
--- a/dev-ruby/rack/Manifest
+++ b/dev-ruby/rack/Manifest
@@ -1,2 +1,3 @@
DIST rack-2.2.4.tar.gz 278632 BLAKE2B 2d12a9c1e239590a4aedea5f3bb4c171b6032255658688a151e665aa1cb33dee17754c7b2736f8f1725c70b8344f5f6664cace8c4d4cb4e9f6f2ee1c7a3117c0 SHA512 aef54a06efce54d58e600829bbf550162bf68fe710b61b2b81022b2a8581819fb575e03992f493f11ed5f3391349f21cd142f6acc5b6017ec4c8e21cb17e4874
DIST rack-2.2.5.tar.gz 278648 BLAKE2B 8778364969506e8fdb152c5f88ab4b0b07c8764bf2cff9aee82ab6ca9958669038100816804215a09947a15b8ce06597c9204d4f2b34218178c14dfc8298ac48 SHA512 bc0e33d7bab700e2a5ad05aa1089d261b3f78a6c456ff14def57645df853915057ae9d42fb5ecd72989737a2882dcbdefe7af4939020efdde1ada38a4cf274e2
+DIST rack-3.0.3.tar.gz 786619 BLAKE2B 471c76e05dc52809e1cd95463ffe7fd2b9bbb0f0d97783d5cbea728cad1cf8272b7045f7329aec6efc9d3881c87b1e3a6e3eb376de015eb6e1188c37668531c1 SHA512 9b5860c62191df983a76aacc0c765d6275aff6d0d146fe0f2f1361e9ad6b76115ba0cbb94682bf9bdede8170e086b67018d362044099c91ea3dc015944d1b444
diff --git a/dev-ruby/rack/rack-3.0.3.ebuild b/dev-ruby/rack/rack-3.0.3.ebuild
new file mode 100644
index 000000000000..7aee70d2e0f0
--- /dev/null
+++ b/dev-ruby/rack/rack-3.0.3.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md SECURITY.md SPEC.rdoc UPGRADE-GUIDE.md"
+
+RUBY_FAKEGEM_GEMSPEC="rack.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A modular Ruby webserver interface"
+HOMEPAGE="https://github.com/rack/rack"
+SRC_URI="https://github.com/rack/rack/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "virtual/ruby-ssl"
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitest:5
+ dev-ruby/minitest-global_expectations
+ dev-ruby/webrick
+)"
+
+# The gem has automagic dependencies over mongrel, ruby-openid,
+# memcache-client, thin, mongrel and camping; not sure if we should
+# make them dependencies at all.
+
+all_ruby_prepare() {
+ # The build system tries to generate the ChangeLog from git. Create
+ # an empty file to avoid a needless dependency on git.
+ touch ChangeLog || die
+
+ sed -i -e "s:require_relative ':require './:" rack.gemspec || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e "require 'test/gemloader.rb'; Dir['test/spec_*.rb'].each{|f| require f}" || die
+}
diff --git a/dev-ruby/rbs/Manifest b/dev-ruby/rbs/Manifest
index 7661d332935c..c56d2242d978 100644
--- a/dev-ruby/rbs/Manifest
+++ b/dev-ruby/rbs/Manifest
@@ -3,3 +3,4 @@ DIST rbs-2.3.2.tar.gz 977459 BLAKE2B d33984c03a962f4d72989b5b665e7e256f8928e86fa
DIST rbs-2.5.1.tar.gz 983686 BLAKE2B d0feb4f173e2d1dd76d93309279fc75f9ed992ead2c144d69905e6acd139c709535ae29d78e85787f082821734a6448446e746791922e4322c55dc446a38ec06 SHA512 079778ad36db8f096e33d04a460b03d03c6b3616a2066e40a3aa06615d51265d8bfa7669a31463ce46bbcb16dc74ed8a24ba280b46c24f25b2327f5c8a8ae891
DIST rbs-2.8.0.tar.gz 1065757 BLAKE2B 136ba929d0b61c6b2625b49574ec45a28aa1de77a1a63d74bf5747ff4c88968ce28116472a97310e10846dec404dc2a4ccebb51c90f14f5713f3b1d21f18c9c6 SHA512 3a04026112bffef03a3e65c5d539ead7de353b4af279da6f4a7def854fe6c7f95d291663ab18bab678228ae4b26e87aec89fc1ed961ebc4cf83f38ef726ad407
DIST rbs-2.8.2.tar.gz 1069304 BLAKE2B a05cdd12767ed47cb90a64ab9803523dfa11a2295ebf2be4f9087918bc74ef75a46e3ec95a78c6c272e65b7d0485db0697edc8c4e586f7ae2b4608cde638969e SHA512 02666374fa8a93f421916f62b6a101e602c5dc8996169b1fd618618ab76afb11bba0891aac3f48f70af080f5d73ede264728f93799b3a330cae3a43b9cab1cb4
+DIST rbs-2.8.3.tar.gz 1069360 BLAKE2B 7151346fadcfdb2e246dbd32c440c4e5fbfe0f6dbed67a100460b451f87432a5811d63269b612949b720d0a3234818e46d1e1f614886e92e0b75cb5814c3e24f SHA512 4e6ec348945171868752ff62704e2a64ced4a11288a96c03e837e508df235c0cf85f99469952a7b052662ee7bc16e0942aaa2bc448381d95d5603fefdacf6839
diff --git a/dev-ruby/rbs/rbs-2.8.3.ebuild b/dev-ruby/rbs/rbs-2.8.3.ebuild
new file mode 100644
index 000000000000..c90ff55f9e70
--- /dev/null
+++ b/dev-ruby/rbs/rbs-2.8.3.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_BINDIR="exe"
+
+RUBY_FAKEGEM_EXTRAINSTALL="core schema sig stdlib"
+RUBY_FAKEGEM_EXTENSIONS=(ext/rbs_extension/extconf.rb)
+
+RUBY_FAKEGEM_GEMSPEC="rbs.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The language for type signatures for Ruby and standard library definitions"
+HOMEPAGE="https://github.com/ruby/rbs"
+SRC_URI="https://github.com/ruby/rbs/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( Ruby-BSD BSD-2 )"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/rdoc dev-ruby/test-unit )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # We compile the extension directly
+ sed -i -e '/extensiontask/I s:^:#:' Rakefile || die
+
+ # Avoid JSON schema validation tests due to a large dependency stack
+ # that would be needed.
+ rm -f test/rbs/schema_test.rb || die
+
+ # Avoid setup tests since they require a lot of development dependencies.
+ rm -f test/rbs/test/runtime_test_test.rb || die
+
+ # Avoid tests requiring a network connection
+ rm -f test/rbs/collection/installer_test.rb test/rbs/collection/collections_test.rb \
+ test/rbs/collection/config_test.rb test/rbs/collection/sources/git_test.rb || die
+ sed -i -e '/def test_collection_/aomit "Requires network"' test/rbs/cli_test.rb || die
+ sed -i -e '/def test_loading_from_rbs_collection/aomit "Requires network"' test/rbs/environment_loader_test.rb || die
+
+ sed -i -e '/def test_paths/aomit "Different paths in Gentoo test environment"' test/rbs/cli_test.rb || die
+}
diff --git a/dev-ruby/rdoc/Manifest b/dev-ruby/rdoc/Manifest
index 03b5ca48f03d..5573cc3d03be 100644
--- a/dev-ruby/rdoc/Manifest
+++ b/dev-ruby/rdoc/Manifest
@@ -1,3 +1,4 @@
DIST rdoc-6.3.2.tar.gz 675963 BLAKE2B 1ac931ddf0af700f2460e415a6e8c505c9a3c0f2d65b5c25928285144181d925747dad0224f014abdc1680df9130df74ba82750a2cb1d02b042c0bcd63d22e6a SHA512 1bd8eaa6c1e5cc40492b1d6e461d831cfc05bf368c982f3266b63ea4984c10de40523f9e2106b1beebd96933a2006cb81c3daa26ee0196d99d1ed6da5b72a78f
DIST rdoc-6.3.3.tar.gz 675961 BLAKE2B 200d57c4b104cb3ba894ef56fd72b4f6b2228dc2c5fd7a53035a7e03834e0e9aa283ee2b07dc7dbbfaf123bc9d96ef302f47a24b71a6d735872960ecd65d9cb3 SHA512 e4e4083fea67184c435b59866fc8e8c29c740d716f8be279d18a625c1eadddd41d449de30ddcc3af1aa0507320c0910800d5a0032540b626c5b2ea83d3b123f2
DIST rdoc-6.4.0.tar.gz 755741 BLAKE2B d2519dc0dac3fac32ef7cac8c87dba1a679f0b09dc5858e91899d6d28195cf584fe3eba802bafad400ae26c5ddcb65eaec32e101f9e047f80cecd1616a386ed3 SHA512 6c6a89245ac77abdeedee70327f97f8a9b8bb596c14848a95487ff19039864dd7a5c0f5b501fe2e7b187c671cfb205c1500359c7c203beb89211addaf3ac34f7
+DIST rdoc-6.5.0.tar.gz 762645 BLAKE2B cecade491f0d18b2c50ec710cb27a28b6cb946f321503e0508e8d4802e93033a78867346eb1d68ca56884ea0d68d51d6fdb92eb61fa63034a01332e8b572dbcf SHA512 10382e66ca778f85f236614fe071b2b0d598065d3aab8f5a89cb0839da7713b5e16a66e3f7a2bff2e2125d26a42f088a86c6d339dc36479a943bb7023c1cad0c
diff --git a/dev-ruby/rdoc/rdoc-6.5.0.ebuild b/dev-ruby/rdoc/rdoc-6.5.0.ebuild
new file mode 100644
index 000000000000..a6dbbb09a981
--- /dev/null
+++ b/dev-ruby/rdoc/rdoc-6.5.0.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc RI.rdoc TODO.rdoc"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_BINDIR="exe"
+
+RUBY_FAKEGEM_GEMSPEC="rdoc.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An extended version of the RDoc library from Ruby 1.8"
+HOMEPAGE="https://github.com/ruby/rdoc/"
+SRC_URI="https://github.com/ruby/rdoc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( GPL-2 Ruby-BSD )"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+SLOT="0"
+IUSE="doc"
+
+RDEPEND+=">=app-eselect/eselect-ruby-20181225"
+
+ruby_add_rdepend "
+ >=dev-ruby/psych-4.0.0
+"
+
+ruby_add_bdepend "
+ >=dev-ruby/kpeg-1.1.0-r1
+ >dev-ruby/racc-1.4.10
+ dev-ruby/rake
+ test? (
+ dev-ruby/bundler
+ >=dev-ruby/minitest-5.8:5
+ )"
+
+all_ruby_prepare() {
+ # Other packages also have use for a nonexistent directory, bug 321059
+ sed -i -e 's#/nonexistent#/nonexistent_rdoc_tests#g' test/rdoc/test_rdoc*.rb || die
+
+ # Avoid unneeded dependency on bundler, bug 603696
+ sed -i -e '/bundler/ s:^:#:' \
+ -e 's/Bundler::GemHelper.gemspec.full_name/"rdoc"/' \
+ -e '/rubocop\/rake/ s:^:#:' \
+ -e '/RuboCop/,/end/ s:^:#:' Rakefile || die
+
+ # Skip rubygems tests since the rubygems test case code is no longer installed by rubygems.
+ sed -i -e '/^task/ s/, :rubygems_test//' Rakefile || die
+
+ # Remove test that is depending on the locale, which we can't garantuee.
+ sed -i -e '/def test_encode_with/,/^ end/ s:^:#:' test/rdoc/test_rdoc_options.rb || die
+
+ # Remove test depending on FEATURES=userpriv, bug 361959
+ sed -i -e '/def test_check_files/,/^ end/ s:^:#:' test/rdoc/test_rdoc_options.rb || die
+
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_compile() {
+ all_fakegem_compile
+
+ if use doc ; then
+ ruby -S exe/rdoc --force-output || die
+ rm -f doc/js/*.gz || die
+ fi
+}
+
+each_ruby_compile() {
+ ${RUBY} -S rake generate || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ for bin in rdoc ri; do
+ ruby_fakegem_binwrapper $bin /usr/bin/$bin-2
+
+ for version in $(ruby_get_use_implementations); do
+ version=`echo ${version} | cut -c 5-`
+ if use ruby_targets_ruby${version}; then
+ ruby_fakegem_binwrapper $bin /usr/bin/${bin}${version}
+ sed -i -e "1s/env ruby/ruby${version}/" \
+ "${ED}/usr/bin/${bin}${version}" || die
+ fi
+ done
+ done
+}
+
+pkg_postinst() {
+ if [[ ! -n $(readlink "${ROOT}"/usr/bin/rdoc) ]] ; then
+ eselect ruby set $(eselect --brief --colour=no ruby show | head -n1)
+ fi
+}
diff --git a/dev-ruby/rspec-expectations/Manifest b/dev-ruby/rspec-expectations/Manifest
index 5fe4002ff6f8..9da6216d2d36 100644
--- a/dev-ruby/rspec-expectations/Manifest
+++ b/dev-ruby/rspec-expectations/Manifest
@@ -5,3 +5,4 @@ DIST rspec-expectations-3.11.0-git.tgz 214878 BLAKE2B f830a0a31fb0e7cd6639e711e4
DIST rspec-expectations-3.11.1-git.tgz 217396 BLAKE2B b9660b22f0b23a5436d98ffe2b21b58c947765ab5cf7d245bf265faead46a5326fc403ad55ee2fcd72d96c8c29fc996715ecc74c9521ec4ca34daa9d5bc0f819 SHA512 1941056eb2f2205f583f335993e25030b433cb0463992d74d5c568c7bbab4313fc6e7e14ada5147064b14d6da49326e3c3cb342408cfe9b38d350c9470e5cdf9
DIST rspec-expectations-3.12.0-git.tgz 217524 BLAKE2B f9638e2e5c83020818b2de4c06074b7d70f02655a50d598ecfcd8c79e1abb2ec351c5b7aed1ec0ea84fde140fc1a04349a6f2edbffda7cb697135ac0b5788b0c SHA512 51a80b5d45e8ca61a829f2130c60433999c6d5c60343d25f737bdb9d6864e89a156b29b549250f7c4248d5ba7a0cef11eb28e55d3023274051eb11f2d0361c83
DIST rspec-expectations-3.12.1-git.tgz 218331 BLAKE2B 9a8604bef9d0118fc3ce5c56f3c53597bf5f4a2eb6a85977fb73ba43e585fc430c3a658ed6ca5b2b9c7fce7e11add81303734bac4bafc8331b221eef8eca4a8a SHA512 a0412cbf55d6cc3c0671abb3cb64bbc9473496aeb8adaa0fa5ae35f0036635adf5f894db0a9150002e7a69cffd1bf2b0c952672890197559be5c54bd2b508b64
+DIST rspec-expectations-3.12.2-git.tgz 218501 BLAKE2B 9b4dffb018d11c6d2bea399a7c1c3ebea157f83231d50e641998e0cb77e85e65c097a5d21e6989ce4c123df00137146b409fa2af102691867195fe42f1e11735 SHA512 6695959bcb185654e7ae96eaf112263ab49cf89f32781ab2b445e11e5d04b070295c9fa051ed6f4925b7cce78fb233490ad12618ac8f54d24a328ae3a6788859
diff --git a/dev-ruby/rspec-expectations/rspec-expectations-3.12.2.ebuild b/dev-ruby/rspec-expectations/rspec-expectations-3.12.2.ebuild
new file mode 100644
index 000000000000..147583e75d53
--- /dev/null
+++ b/dev-ruby/rspec-expectations/rspec-expectations-3.12.2.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
+HOMEPAGE="https://github.com/rspec/rspec-expectations"
+SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+SUBVERSION="$(ver_cut 1-2)"
+
+ruby_add_rdepend ">=dev-ruby/diff-lcs-1.2.0 =dev-ruby/diff-lcs-1*
+ =dev-ruby/rspec-support-${SUBVERSION}*"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/rspec-mocks-3.2.0:3
+ >=dev-ruby/rspec-support-3.5.0:3
+ )"
+
+all_ruby_prepare() {
+ # Don't set up bundler: it doesn't understand our setup.
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+
+ # Remove the Gemfile to avoid running through 'bundle exec'
+ rm -f Gemfile || die
+
+ # fix up the gemspecs
+ sed -i \
+ -e '/git ls/d' \
+ -e '/add_development_dependency/d' \
+ "${RUBY_FAKEGEM_GEMSPEC}" || die
+}
diff --git a/dev-ruby/rspec-mocks/Manifest b/dev-ruby/rspec-mocks/Manifest
index a530b0d3c80b..bec242733e0a 100644
--- a/dev-ruby/rspec-mocks/Manifest
+++ b/dev-ruby/rspec-mocks/Manifest
@@ -6,3 +6,4 @@ DIST rspec-mocks-3.11.1-git.tgz 198650 BLAKE2B bdf06f0614bb7b6c4eb6a0ff0af84d4f6
DIST rspec-mocks-3.11.2-git.tgz 202347 BLAKE2B 7db89badf2cd3a9bdb590260dfced05cc72ccb7b2a8f600969f17c2df0523ee602f728aef257e88876f5c3b283645cf7f3243bd6de67c5bd26d3d74d0349593a SHA512 a1053cb9604b01de99f79b18fea2c4b3818d950e83da642a8b3aa9dbdb397429f51d95efa84a603770d4db94a25758c1cef15ce1ba77a4c952e9ef5f43a21e4d
DIST rspec-mocks-3.12.0-git.tgz 202794 BLAKE2B 053c4b1504a369376cfef8411fd97304e56cd83be1b89296e4bf5b260af8ef89f8aff85a095bac5b8244b38020725ddd087d93774b49b422d37344b142a4badc SHA512 f292d4ab82e7da2badff596fba91a26499821565b13b4004571efdcd8b559cc4996c3d6e092c429b8ee2962d0898c79b54eec7fd6c7835d414e1ff0258bdd3f8
DIST rspec-mocks-3.12.1-git.tgz 203924 BLAKE2B d8b954046e2c4e7e4a949469733b44f4d71eef13642f4a65a25bc97322dacc75e6a32c07077b6dff6a71e66bae36469dd28bd641e9c5508bd9f333d30ff655e5 SHA512 983358f1acaaaeb12e77ff3d1863878382f9e0d413ac0f25d11e7f7f50251de17d3a9ad4ac25dae5568bdc4b9b0af716196ee409c035f9fd90b13d2ab769cd18
+DIST rspec-mocks-3.12.2-git.tgz 204751 BLAKE2B bcbb8d6df6b1bf3b58e43e72c25b792f91f00467520cb1b366883e8ad54b7a380b287ae9e6f453de78603423f099ed0d4b3759338f5a4a91ea9c42c16439c4eb SHA512 ae1cdafe53d7c3258bce4cd0bec10a9b91886f2b71736e028350ea212999b88b9fb2e3554f1db040bf8e66cfb2d0139c305aa219e01c8db998b75283da327d3a
diff --git a/dev-ruby/rspec-mocks/rspec-mocks-3.12.2.ebuild b/dev-ruby/rspec-mocks/rspec-mocks-3.12.2.ebuild
new file mode 100644
index 000000000000..078bb0e70328
--- /dev/null
+++ b/dev-ruby/rspec-mocks/rspec-mocks-3.12.2.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+#RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rspec-mocks.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
+HOMEPAGE="https://github.com/rspec/rspec-mocks"
+SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+SUBVERSION="$(ver_cut 1-2)"
+
+ruby_add_rdepend "=dev-ruby/rspec-support-${SUBVERSION}*
+ >=dev-ruby/diff-lcs-1.2.0 =dev-ruby/diff-lcs-1*"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/rspec-core-3.12.0:3
+ >=dev-ruby/rspec-expectations-2.99.0:3
+ )"
+
+all_ruby_prepare() {
+ # Don't set up bundler: it doesn't understand our setup.
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+
+ # Remove the Gemfile to avoid running through 'bundle exec'
+ rm Gemfile || die
+
+ # Remove .rspec options to avoid dependency on newer rspec when
+ # bootstrapping.
+ rm .rspec || die
+
+ sed -i -e '1irequire "spec_helper"' spec/rspec/mocks/any_instance_spec.rb || die
+
+ sed -i -e 's/git ls-files --/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/rubygems/Manifest b/dev-ruby/rubygems/Manifest
index 3cc5bfca9996..93e5b5015ebe 100644
--- a/dev-ruby/rubygems/Manifest
+++ b/dev-ruby/rubygems/Manifest
@@ -5,3 +5,4 @@ DIST rubygems-3.2.33.tar.gz 12131881 BLAKE2B 6ec9321d808df2ee1bbde7f9889471bb7db
DIST rubygems-3.3.26.tar.gz 12995476 BLAKE2B c06400d263f64ee988781b49628eebde2b78b5c3cdf3796fe5e1ce5891cb0b41b5e50313293afc72c9b278ab00415b91a862f4245107c63e8eedb9904a5d33e2 SHA512 5aad9f6f0f7187d7d3f2a77ceb50b4b293290dc2e83fb55654c8fdf8e222568d40ef0c64d603ae2ff0db39e7a39ee89ec3c48bb102d434637145863881851086
DIST rubygems-3.3.8.tar.gz 12928096 BLAKE2B f09f7da32db03b9240515cbc114b94fdec0e7d9da6c4ac1ca297f76989be154da3dd6dbf4701e295d01dac957fbd4429ea39eee3ee66bc4fb6d4e6194ccec96a SHA512 bc5719204ac81d9a70df0c8affd99c6e45835f3aa140c9d262d34bee879a7b932a0b5069453e949054e9f3feeab7d376f1a02e1aeaed167b30bf59fe57d0af40
DIST rubygems-3.4.1.tar.gz 12999634 BLAKE2B 019364e3abd3b12f2a37b08a8d32546cd002c47653a4cdd4e06d8605010dcfcbf3f82f2d375c6bd51a8f1b462b624cefb85932c075b965d5038c26d6079de261 SHA512 2183f7d6ab914c47c02b53cafa6f39845986e4b38713d320402b98f0f0926dbbd957ef11c00b4fbe8f6c9985a1a5d9f551b2df9d47f00c389026e373dbd6f6ed
+DIST rubygems-3.4.3.tar.gz 15002575 BLAKE2B be8dfb7233754e0ef9147eab1c64d363c38de5a6c296087a193b801c9fa1a12d2a21d7b3b01360f53a30caa6815b3bcdf3d14ecd19ac19dfd2e88115526b5a97 SHA512 7f3907b6ab8f001bd856c2b25b71c5ec32b21b2b5fa16ba369e3108c44698712ac3f5ace430554a4b15dc0adef2d87fa41bffa03dcd01f524fe8bbd80de9807b
diff --git a/dev-ruby/rubygems/rubygems-3.4.3.ebuild b/dev-ruby/rubygems/rubygems-3.4.3.ebuild
new file mode 100644
index 000000000000..b1c1f69fed82
--- /dev/null
+++ b/dev-ruby/rubygems/rubygems-3.4.3.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby26 ruby27 ruby30 ruby31"
+
+inherit ruby-ng prefix
+
+DESCRIPTION="Centralized Ruby extension management system"
+HOMEPAGE="https://rubygems.org/"
+LICENSE="|| ( Ruby MIT )"
+
+SRC_URI="https://github.com/rubygems/rubygems/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+SLOT="0"
+IUSE="server test"
+RESTRICT="!test? ( test )"
+
+PDEPEND="server? ( =dev-ruby/builder-3* )"
+
+ruby_add_depend "virtual/ruby-ssl"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/json
+ dev-ruby/minitest:5
+ dev-ruby/rake
+ dev-ruby/rdoc
+ dev-ruby/webrick
+ )"
+
+all_ruby_prepare() {
+ # Remove unpackaged automatiek from Rakefile which stops it from working
+ sed -i -e '/automatiek/ s:^:#:' -e '/Automatiek/,/^end/ s:^:#:' Rakefile || die
+
+ mkdir -p lib/rubygems/defaults || die
+ cp "${FILESDIR}/gentoo-defaults-5.rb" lib/rubygems/defaults/operating_system.rb || die
+
+ eprefixify lib/rubygems/defaults/operating_system.rb
+
+ # Disable broken tests when changing default values:
+ sed -i -e '/test_default_path/,/^ end/ s:^:#:' test/rubygems/test_gem.rb || die
+ sed -i -e '/test_initialize_\(path_with_defaults\|regexp_path_separator\)/aomit "gentoo"' test/rubygems/test_gem_path_support.rb || die
+ # Avoid test that won't work as json is also installed as plain ruby code
+ sed -i -e '/test_realworld_\(\|upgraded_\)default_gem/aomit "gentoo"' test/rubygems/test_require.rb || die
+
+ # Avoid test that requires additional utility scripts
+ rm -f test/test_changelog_generator.rb || die
+
+ # Avoid tests that require a network connection (for crates.io)
+ rm -f test/rubygems/test_gem_ext_cargo_builder.rb || die
+
+ # Update manifest after changing files to avoid a test failure
+ if use test; then
+ rake update_manifest || die
+ fi
+}
+
+each_ruby_compile() {
+ # Not really a build but...
+ sed -i -e 's:#!.*:#!'"${RUBY}"':' bin/gem
+}
+
+each_ruby_test() {
+ # Unset RUBYOPT to avoid interferences, bug #158455 et. al.
+ #unset RUBYOPT
+
+ if [[ "${EUID}" -ne "0" ]]; then
+ RUBYLIB="$(pwd)/lib${RUBYLIB+:${RUBYLIB}}" ${RUBY} --disable-gems -I.:lib:test:bundler/lib \
+ -e 'require "rubygems"; gem "minitest", "~>5.0"; Dir["test/**/test_*.rb"].each { |tu| require tu }' || die "tests failed"
+ else
+ ewarn "The userpriv feature must be enabled to run tests, bug 408951."
+ eerror "Testsuite will not be run."
+ fi
+}
+
+each_ruby_install() {
+ # Unset RUBYOPT to avoid interferences, bug #158455 et. al.
+ unset RUBYOPT
+ export RUBYLIB="$(pwd)/lib${RUBYLIB+:${RUBYLIB}}"
+
+ pushd lib &>/dev/null
+ doruby -r *
+ popd &>/dev/null
+
+ local sld=$(ruby_rbconfig_value 'sitelibdir')
+ insinto "${sld#${EPREFIX}}" # bug #320813
+ newins "${FILESDIR}/auto_gem.rb.ruby19" auto_gem.rb
+
+ newbin bin/gem $(basename ${RUBY} | sed -e 's:ruby:gem:')
+}
+
+all_ruby_install() {
+ dodoc CHANGELOG.md README.md
+
+ if use server; then
+ newinitd "${FILESDIR}/init.d-gem_server2" gem_server
+ newconfd "${FILESDIR}/conf.d-gem_server" gem_server
+ fi
+}
+
+pkg_postinst() {
+ if [[ ! -n $(readlink "${ROOT}"/usr/bin/gem) ]] ; then
+ eselect ruby set $(eselect --brief --colour=no ruby show | head -n1)
+ fi
+
+ ewarn
+ ewarn "To switch between available Ruby profiles, execute as root:"
+ ewarn "\teselect ruby set ruby(25|26|...)"
+ ewarn
+}
diff --git a/dev-ruby/sinatra/Manifest b/dev-ruby/sinatra/Manifest
index 0d1dc498a121..7d173e8191f3 100644
--- a/dev-ruby/sinatra/Manifest
+++ b/dev-ruby/sinatra/Manifest
@@ -1,5 +1,4 @@
-DIST sinatra-2.2.0.tar.gz 513752 BLAKE2B e407b9241cab27e326c0a2d4d83593e292de902b6ed19a12f17b0cd114230b0d10f1ffaa8f8b8237d17b547c7e012c57456af357019b228f3d7a88847220cf33 SHA512 be9432a8efa93578accc836cd0fecca128e56989d8596f1b3d33d2d956e90acd80244b98473fff2adae13ed4a1e933c41e73c80755a6f3418a65cdf33c011145
-DIST sinatra-2.2.2.tar.gz 513056 BLAKE2B 80904850ce577131ecc6c28917772cda6ab606ff1b4a71b733cde98d56e2906bb0dc5b65c83465e65686571e8752ec7935d89734e7d2e45c544fe14a2c8046d4 SHA512 e69a36738a7c1095968a343113ddba414ff685e941a8b55575e4b2ffa5a8e7394d874966d5532643cdfec997ac4c825c293185f6688c715006e37159eedd2be8
DIST sinatra-2.2.3.tar.gz 513333 BLAKE2B 925b3188cb3f63d58a1078845bf58c6684e176527f29bdb0507e2185613b35930345ef1143319b3bd53170846cc67c8e8ce92b036e39ad03fee0f4f361a2aeaf SHA512 666b7a7fec67b4976ec10a704f1e98f9e815cad887ecaaf5bdee6cb0b5f4e29d99ef806865bc5b8e61d2aedea5b343c14f342d03515f0f6c68de3dc905fe77a1
DIST sinatra-3.0.2.tar.gz 265824 BLAKE2B 87739d8863dd9959b8c3530b19a3f52de31636fcdd77fe1558930749498c73ec4cf0ddf998a9f6029c46842656059f8bd76d1781beb277608ccf265577561447 SHA512 57094e00ca8280401ed76f5c52dded82d42a4a81290a9a990f464ac43abbf350e8325b8f60505bfd005b6c7d92283a3f7a9345c0ccbf227530a8c3cb93c0af38
DIST sinatra-3.0.4.tar.gz 266263 BLAKE2B d338fde60ab57f08d5df8afe240b1ed5cb1cde351b3f57b9700a7019e317cc16fc1a41148c1a75e97ff22844e8555b8fc1723c9d12818406fe28d1399fba9506 SHA512 b0581806261df57d8aa392b920a8998ecec311b1f82ab5ac7093c77ba5044eb9f5029a4d7266db05aa791ab30397fa304295a964b3ec3b58a2c0d13e3abb6328
+DIST sinatra-3.0.5.tar.gz 266205 BLAKE2B 16e0631ed49e62610c7bc1e43f03f21f57ee968b0f3ac98b599748e9572cc0bfc9121dc8731a0dcc9dd1bce04837373f93f198bff56c0de9f50932711b4040e8 SHA512 9ec41c3f0c4e4faaa181fddb2fe3262796a29e93fc07349422ca20dc845632c127c3e82e67f16ca19d2b2bcd43ad48fdca918d70b6747d8a2088ce1c84fd8eb2
diff --git a/dev-ruby/sinatra/metadata.xml b/dev-ruby/sinatra/metadata.xml
index 246d194b7ec0..101bd3f22974 100644
--- a/dev-ruby/sinatra/metadata.xml
+++ b/dev-ruby/sinatra/metadata.xml
@@ -5,6 +5,8 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
-
+ <upstream>
+ <remote-id type="rubygems">sinatra</remote-id>
+ </upstream>
<origin>gentoo-staging</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-ruby/sinatra/sinatra-2.2.0-r1.ebuild b/dev-ruby/sinatra/sinatra-2.2.0-r1.ebuild
deleted file mode 100644
index 6e3d3a72f8de..000000000000
--- a/dev-ruby/sinatra/sinatra-2.2.0-r1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-USE_RUBY="ruby27 ruby30"
-
-RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true test:core"
-
-RUBY_FAKEGEM_EXTRADOC="README.md AUTHORS.md CHANGELOG.md"
-
-RUBY_FAKEGEM_GEMSPEC="sinatra.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A DSL for quickly creating web applications in Ruby with minimal effort"
-HOMEPAGE="http://www.sinatrarb.com/"
-SRC_URI="https://github.com/sinatra/sinatra/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/mustermann:1
- dev-ruby/rack:2.2
- ~dev-ruby/rack-protection-${PV}
- dev-ruby/tilt:2"
-ruby_add_bdepend "test? ( >=dev-ruby/rack-test-0.5.6 dev-ruby/erubis dev-ruby/builder <dev-ruby/activesupport-7 )"
-ruby_add_bdepend "doc? ( dev-ruby/yard )"
-
-all_ruby_prepare() {
- sed -i -e '/active_support\/core_ext\/hash/igem "activesupport", "<7"' test/helper.rb || die
-}
diff --git a/dev-ruby/sinatra/sinatra-2.2.2.ebuild b/dev-ruby/sinatra/sinatra-3.0.5.ebuild
index b196d368b135..affc012e8456 100644
--- a/dev-ruby/sinatra/sinatra-2.2.2.ebuild
+++ b/dev-ruby/sinatra/sinatra-3.0.5.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-USE_RUBY="ruby27 ruby30"
+USE_RUBY="ruby27 ruby30 ruby31"
RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true test:core"
@@ -17,13 +17,13 @@ HOMEPAGE="http://www.sinatrarb.com/"
SRC_URI="https://github.com/sinatra/sinatra/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
-SLOT="2"
+SLOT="$(ver_cut 1)"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
IUSE=""
ruby_add_rdepend "
- dev-ruby/mustermann:2
- dev-ruby/rack:2.2
+ dev-ruby/mustermann:3
+ >=dev-ruby/rack-2.2.4:2.2
~dev-ruby/rack-protection-${PV}
dev-ruby/tilt:2"
ruby_add_bdepend "test? ( >=dev-ruby/rack-test-0.5.6 dev-ruby/erubis dev-ruby/builder <dev-ruby/activesupport-7 )"
diff --git a/dev-ruby/sus/Manifest b/dev-ruby/sus/Manifest
index d5eef8b848e3..89ce779eee10 100644
--- a/dev-ruby/sus/Manifest
+++ b/dev-ruby/sus/Manifest
@@ -3,3 +3,4 @@ DIST sus-0.14.0.tar.gz 24207 BLAKE2B 1132e6fdf7c842ec8835613b647c837a1f5ec46c197
DIST sus-0.15.0.tar.gz 25434 BLAKE2B 538ac7b81f7dcc74143e42a7b3fb5e12243b6a36228ac09cdf31549a9a666601d9e155fdd6ef079772b525e6993e07a12230ef87064d99b6ec5ddc643e9128cc SHA512 0110b08af0a94595764a9085e23d9d4b3ac1dec0b16e3c672b11520c7155d6b147890d53d25f00302812d22f95cb3ee7fc5563eae2476d8c99b7cc30aaadbc9e
DIST sus-0.15.1.tar.gz 25680 BLAKE2B 4350023a6c2ae1c77687d0ebb66a31cd7a4d90cf955eabdca44be2282984aa3740e2f489844d7e30f448ba92cda6c949992cad1ed246c48db01c5b08ec058ad9 SHA512 f962f7f921144cca25faeb53be34a892501fdc1a2bd83dc64be7640232d1faa82b4d28c046af3440f7e142ea0fba525e1087b466952988e017ff469897dc01e4
DIST sus-0.15.2.tar.gz 25676 BLAKE2B 3cc99d849674b87c8ac919dc176d48cfc184de9ed302f33a40a3f171430e9cc0ad9624c29f95053e7a8bd0ab7b2741bd6a09c7a77707a9ef83a265b09a095b4d SHA512 0f2e0f3640cce798564c53ffb2cc93996eda28af3b49d4f0d89327be960ef68e8aee5b0e906cfbadca0582bf5b363633314fd7d2eabf7ebf4782fe2aed095394
+DIST sus-0.16.0.tar.gz 26123 BLAKE2B 829e2ec74e60eb41809d85e9f74e1c8697d7803c6f26dd5da18f705fb0b35f85d8efb976eb858e07647db2137a1e864181346b69d2dd054d81289a6bd43cca2c SHA512 cd787e63b202df8b501c5d71198b9cfa23085b7e6ad7d9d9a4d023e4fab3a6c103d89390293f9940d14c023ea224b33b5ec728b67988aee8279cf248e20547cf
diff --git a/dev-ruby/sus/sus-0.16.0.ebuild b/dev-ruby/sus/sus-0.16.0.ebuild
new file mode 100644
index 000000000000..46c6a8c0fd05
--- /dev/null
+++ b/dev-ruby/sus/sus-0.16.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A fast and scalable test runner"
+HOMEPAGE="https://github.com/ioquatix/sus"
+SRC_URI="https://github.com/ioquatix/sus/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Remove the sus configuration which enabled coverage checks.
+ # Its dependency is not packaged.
+ rm -f config/sus.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} bin/sus-parallel || die
+}
diff --git a/dev-ruby/unicode-display_width/Manifest b/dev-ruby/unicode-display_width/Manifest
index aec3f0ec8152..017755ac5e27 100644
--- a/dev-ruby/unicode-display_width/Manifest
+++ b/dev-ruby/unicode-display_width/Manifest
@@ -2,3 +2,4 @@ DIST unicode-display_width-1.7.0.tar.gz 10822 BLAKE2B c3db387b9d61ba4ea9d5559824
DIST unicode-display_width-2.1.0.tar.gz 11981 BLAKE2B b8e70183b1df9f17bd719e1193c3c2ade5d9186772e4246b618d882eda997a0c22ee0179778f7b8580e32ec89461453144d57d198075f0d400ea52f3679ff7dc SHA512 f8fb1375ba0e88a41633d4aca4628198c5ee55f318a7f0055c9178b39f55818ec892f6e455021cf5050dbd1d748a102b319b1d8b9921ed1ba54a1d106d7911aa
DIST unicode-display_width-2.2.0.tar.gz 12077 BLAKE2B f7b26d41e3b70122ddccbfdd44d83550bdab7b59b6801881814f33e50544d9d68ad59f34b58d9e961aaf9e2c709dfc83da8040cb03667e1293958cb23cf987c2 SHA512 85b7b9ed1e82b7865f32ad61208013cf89bcc5df05ac59ca2315545b759ee8da968409cbe89e7e7f30b03e209e811584ece2e99d33ae35413f9b6c318fff7064
DIST unicode-display_width-2.3.0.tar.gz 12130 BLAKE2B 8a29aa0227e9bc63a8484d9a4f836dd4fccd3515206627e31f820cdef49167c406c67a3c9bae9c75b5e1c25675e1da02015f7eedc09ff413ffcd3e96704ae664 SHA512 82f52512f8338e310e501fd1892cbaf9c8e5b49a8bd191e9fafde72ca1ab5503ddfa81c3633b4ef6bc9e57d805f2792ddb5c6c63948022097feeb9bd7030beec
+DIST unicode-display_width-2.4.2.tar.gz 13096 BLAKE2B 89f7f8ded131a6c049242ede8822475c2629e2377a6b06ca59b1264c1c18981039c95c0aea8a24c00488b8f5c48aed3cc1b5672785eb36bbcf3cee1af8c2cc53 SHA512 c0815c19821855fed2d3205a6cae2059e0338fb27148f55281c910b54d5b0be2d34ba4bf990ba1c328c454f7ec8dbc0c69427550f2d62d1ac4ce5174b53b8ff3
diff --git a/dev-ruby/unicode-display_width/metadata.xml b/dev-ruby/unicode-display_width/metadata.xml
index 246d194b7ec0..71526c999f27 100644
--- a/dev-ruby/unicode-display_width/metadata.xml
+++ b/dev-ruby/unicode-display_width/metadata.xml
@@ -5,6 +5,8 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
-
+ <upstream>
+ <remote-id type="rubygems">unicode-display_width</remote-id>
+ </upstream>
<origin>gentoo-staging</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-ruby/unicode-display_width/unicode-display_width-2.4.2.ebuild b/dev-ruby/unicode-display_width/unicode-display_width-2.4.2.ebuild
new file mode 100644
index 000000000000..0be3be30a89d
--- /dev/null
+++ b/dev-ruby/unicode-display_width/unicode-display_width-2.4.2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+RUBY_FAKEGEM_GEMSPEC="unicode-display_width.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Adds String#display_width to get the display size using EastAsianWidth.txt"
+HOMEPAGE="https://github.com/janlelis/unicode-display_width"
+SRC_URI="https://github.com/janlelis/unicode-display_width/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm64"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+all_ruby_prepare() {
+ # Avoid experimental emoji support for now
+ sed -e '/\[emoji\]/,/^ end/ s:^:#:' \
+ -e '/Config object based API/,/^end/ s:^:#:' \
+ -i spec/display_width_spec.rb || die
+}