summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-ruby')
-rw-r--r--dev-ruby/GeoRuby/GeoRuby-2.5.2-r2.ebuild32
-rw-r--r--dev-ruby/GeoRuby/GeoRuby-2.5.2.ebuild32
-rw-r--r--dev-ruby/GeoRuby/metadata.xml2
-rw-r--r--dev-ruby/abbrev/Manifest1
-rw-r--r--dev-ruby/abbrev/abbrev-0.1.2.ebuild29
-rw-r--r--dev-ruby/abbrev/metadata.xml12
-rw-r--r--dev-ruby/abstract/abstract-1.0.0-r3.ebuild23
-rw-r--r--dev-ruby/abstract/abstract-1.0.0-r5.ebuild23
-rw-r--r--dev-ruby/abstract/metadata.xml2
-rw-r--r--dev-ruby/acme-client/Manifest6
-rw-r--r--dev-ruby/acme-client/acme-client-2.0.14.ebuild41
-rw-r--r--dev-ruby/acme-client/acme-client-2.0.15.ebuild41
-rw-r--r--dev-ruby/acme-client/acme-client-2.0.16.ebuild41
-rw-r--r--dev-ruby/acme-client/acme-client-2.0.17.ebuild41
-rw-r--r--dev-ruby/acme-client/acme-client-2.0.2.ebuild22
-rw-r--r--dev-ruby/acme-client/acme-client-2.0.3.ebuild35
-rw-r--r--dev-ruby/acme-client/metadata.xml5
-rw-r--r--dev-ruby/actioncable/Manifest9
-rw-r--r--dev-ruby/actioncable/actioncable-5.1.7.ebuild45
-rw-r--r--dev-ruby/actioncable/actioncable-5.2.3.ebuild45
-rw-r--r--dev-ruby/actioncable/actioncable-6.0.0.ebuild45
-rw-r--r--dev-ruby/actioncable/actioncable-6.1.7.6.ebuild46
-rw-r--r--dev-ruby/actioncable/actioncable-6.1.7.7.ebuild46
-rw-r--r--dev-ruby/actioncable/actioncable-7.0.8.1.ebuild46
-rw-r--r--dev-ruby/actioncable/actioncable-7.0.8.ebuild46
-rw-r--r--dev-ruby/actioncable/actioncable-7.1.3.2.ebuild47
-rw-r--r--dev-ruby/actioncable/actioncable-7.1.3.ebuild47
-rw-r--r--dev-ruby/actioncable/metadata.xml2
-rw-r--r--dev-ruby/actionmailbox/Manifest6
-rw-r--r--dev-ruby/actionmailbox/actionmailbox-6.1.7.6.ebuild67
-rw-r--r--dev-ruby/actionmailbox/actionmailbox-6.1.7.7.ebuild67
-rw-r--r--dev-ruby/actionmailbox/actionmailbox-7.0.8.1.ebuild65
-rw-r--r--dev-ruby/actionmailbox/actionmailbox-7.0.8.ebuild65
-rw-r--r--dev-ruby/actionmailbox/actionmailbox-7.1.3.2.ebuild65
-rw-r--r--dev-ruby/actionmailbox/actionmailbox-7.1.3.ebuild65
-rw-r--r--dev-ruby/actionmailbox/files/actionmailbox-6.1.7.4-mail28.patch57
-rw-r--r--dev-ruby/actionmailbox/metadata.xml11
-rw-r--r--dev-ruby/actionmailer/Manifest10
-rw-r--r--dev-ruby/actionmailer/actionmailer-4.2.11.1.ebuild48
-rw-r--r--dev-ruby/actionmailer/actionmailer-5.1.7.ebuild46
-rw-r--r--dev-ruby/actionmailer/actionmailer-5.2.3.ebuild46
-rw-r--r--dev-ruby/actionmailer/actionmailer-6.0.0.ebuild46
-rw-r--r--dev-ruby/actionmailer/actionmailer-6.1.7.6.ebuild51
-rw-r--r--dev-ruby/actionmailer/actionmailer-6.1.7.7.ebuild53
-rw-r--r--dev-ruby/actionmailer/actionmailer-7.0.8.1.ebuild49
-rw-r--r--dev-ruby/actionmailer/actionmailer-7.0.8.ebuild47
-rw-r--r--dev-ruby/actionmailer/actionmailer-7.1.3.2.ebuild51
-rw-r--r--dev-ruby/actionmailer/actionmailer-7.1.3.ebuild51
-rw-r--r--dev-ruby/actionmailer/files/actionmailer-6.1.7.4-ruby32-keywords.patch50
-rw-r--r--dev-ruby/actionmailer/metadata.xml2
-rw-r--r--dev-ruby/actionpack-action_caching/Manifest2
-rw-r--r--dev-ruby/actionpack-action_caching/actionpack-action_caching-1.2.0.ebuild32
-rw-r--r--dev-ruby/actionpack-action_caching/actionpack-action_caching-1.2.2-r1.ebuild33
-rw-r--r--dev-ruby/actionpack-action_caching/metadata.xml2
-rw-r--r--dev-ruby/actionpack-xml_parser/Manifest1
-rw-r--r--dev-ruby/actionpack-xml_parser/actionpack-xml_parser-1.0.2.ebuild31
-rw-r--r--dev-ruby/actionpack-xml_parser/actionpack-xml_parser-2.0.1-r3.ebuild38
-rw-r--r--dev-ruby/actionpack-xml_parser/actionpack-xml_parser-2.0.1.ebuild30
-rw-r--r--dev-ruby/actionpack-xml_parser/metadata.xml2
-rw-r--r--dev-ruby/actionpack/Manifest10
-rw-r--r--dev-ruby/actionpack/actionpack-4.2.11.1.ebuild58
-rw-r--r--dev-ruby/actionpack/actionpack-5.1.7.ebuild56
-rw-r--r--dev-ruby/actionpack/actionpack-5.2.3.ebuild55
-rw-r--r--dev-ruby/actionpack/actionpack-6.0.0.ebuild55
-rw-r--r--dev-ruby/actionpack/actionpack-6.1.7.6.ebuild74
-rw-r--r--dev-ruby/actionpack/actionpack-6.1.7.7.ebuild74
-rw-r--r--dev-ruby/actionpack/actionpack-7.0.8.1.ebuild72
-rw-r--r--dev-ruby/actionpack/actionpack-7.0.8.ebuild70
-rw-r--r--dev-ruby/actionpack/actionpack-7.1.3.2.ebuild71
-rw-r--r--dev-ruby/actionpack/actionpack-7.1.3.ebuild71
-rw-r--r--dev-ruby/actionpack/files/actionpack-7.0.4-rack-test-2.patch55
-rw-r--r--dev-ruby/actionpack/metadata.xml2
-rw-r--r--dev-ruby/actiontext/Manifest6
-rw-r--r--dev-ruby/actiontext/actiontext-6.1.7.6.ebuild56
-rw-r--r--dev-ruby/actiontext/actiontext-6.1.7.7.ebuild56
-rw-r--r--dev-ruby/actiontext/actiontext-7.0.8.1.ebuild59
-rw-r--r--dev-ruby/actiontext/actiontext-7.0.8.ebuild59
-rw-r--r--dev-ruby/actiontext/actiontext-7.1.3.2.ebuild64
-rw-r--r--dev-ruby/actiontext/actiontext-7.1.3.ebuild64
-rw-r--r--dev-ruby/actiontext/metadata.xml11
-rw-r--r--dev-ruby/actionview/Manifest10
-rw-r--r--dev-ruby/actionview/actionview-4.2.11.1.ebuild50
-rw-r--r--dev-ruby/actionview/actionview-5.1.7.ebuild57
-rw-r--r--dev-ruby/actionview/actionview-5.2.3.ebuild55
-rw-r--r--dev-ruby/actionview/actionview-6.0.0.ebuild56
-rw-r--r--dev-ruby/actionview/actionview-6.1.7.6.ebuild75
-rw-r--r--dev-ruby/actionview/actionview-6.1.7.7.ebuild75
-rw-r--r--dev-ruby/actionview/actionview-7.0.8.1.ebuild75
-rw-r--r--dev-ruby/actionview/actionview-7.0.8.ebuild75
-rw-r--r--dev-ruby/actionview/actionview-7.1.3.2.ebuild72
-rw-r--r--dev-ruby/actionview/actionview-7.1.3.ebuild72
-rw-r--r--dev-ruby/actionview/metadata.xml2
-rw-r--r--dev-ruby/activejob/Manifest10
-rw-r--r--dev-ruby/activejob/activejob-4.2.11.1.ebuild43
-rw-r--r--dev-ruby/activejob/activejob-5.1.7.ebuild45
-rw-r--r--dev-ruby/activejob/activejob-5.2.3.ebuild46
-rw-r--r--dev-ruby/activejob/activejob-6.0.0.ebuild47
-rw-r--r--dev-ruby/activejob/activejob-6.1.7.6.ebuild47
-rw-r--r--dev-ruby/activejob/activejob-6.1.7.7.ebuild47
-rw-r--r--dev-ruby/activejob/activejob-7.0.8.1.ebuild49
-rw-r--r--dev-ruby/activejob/activejob-7.0.8.ebuild49
-rw-r--r--dev-ruby/activejob/activejob-7.1.3.2.ebuild49
-rw-r--r--dev-ruby/activejob/activejob-7.1.3.ebuild49
-rw-r--r--dev-ruby/activejob/metadata.xml2
-rw-r--r--dev-ruby/activeldap/Manifest5
-rw-r--r--dev-ruby/activeldap/activeldap-4.0.6.ebuild39
-rw-r--r--dev-ruby/activeldap/activeldap-5.2.3.ebuild40
-rw-r--r--dev-ruby/activeldap/activeldap-5.2.4.ebuild40
-rw-r--r--dev-ruby/activeldap/activeldap-6.1.0-r1.ebuild38
-rw-r--r--dev-ruby/activeldap/activeldap-7.0.0.ebuild37
-rw-r--r--dev-ruby/activeldap/metadata.xml2
-rw-r--r--dev-ruby/activemodel-serializers-xml/activemodel-serializers-xml-1.0.2-r2.ebuild42
-rw-r--r--dev-ruby/activemodel-serializers-xml/activemodel-serializers-xml-1.0.2.ebuild37
-rw-r--r--dev-ruby/activemodel-serializers-xml/metadata.xml2
-rw-r--r--dev-ruby/activemodel/Manifest10
-rw-r--r--dev-ruby/activemodel/activemodel-4.2.11.1.ebuild52
-rw-r--r--dev-ruby/activemodel/activemodel-5.1.7.ebuild44
-rw-r--r--dev-ruby/activemodel/activemodel-5.2.3.ebuild44
-rw-r--r--dev-ruby/activemodel/activemodel-6.0.0.ebuild42
-rw-r--r--dev-ruby/activemodel/activemodel-6.1.7.6.ebuild49
-rw-r--r--dev-ruby/activemodel/activemodel-6.1.7.7.ebuild49
-rw-r--r--dev-ruby/activemodel/activemodel-7.0.8.1.ebuild45
-rw-r--r--dev-ruby/activemodel/activemodel-7.0.8.ebuild43
-rw-r--r--dev-ruby/activemodel/activemodel-7.1.3.2.ebuild43
-rw-r--r--dev-ruby/activemodel/activemodel-7.1.3.ebuild43
-rw-r--r--dev-ruby/activemodel/files/activemodel-6.1.7.4-ruby32-keywords.patch27
-rw-r--r--dev-ruby/activemodel/metadata.xml2
-rw-r--r--dev-ruby/activerecord/Manifest10
-rw-r--r--dev-ruby/activerecord/activerecord-4.2.11.1.ebuild74
-rw-r--r--dev-ruby/activerecord/activerecord-5.1.7.ebuild77
-rw-r--r--dev-ruby/activerecord/activerecord-5.2.3.ebuild83
-rw-r--r--dev-ruby/activerecord/activerecord-6.0.0.ebuild84
-rw-r--r--dev-ruby/activerecord/activerecord-6.1.7.6.ebuild95
-rw-r--r--dev-ruby/activerecord/activerecord-6.1.7.7.ebuild99
-rw-r--r--dev-ruby/activerecord/activerecord-7.0.8.1.ebuild97
-rw-r--r--dev-ruby/activerecord/activerecord-7.0.8.ebuild95
-rw-r--r--dev-ruby/activerecord/activerecord-7.1.3.2.ebuild98
-rw-r--r--dev-ruby/activerecord/activerecord-7.1.3.ebuild98
-rw-r--r--dev-ruby/activerecord/files/activerecord-6.1.7.4-ruby32-keywords.patch38
-rw-r--r--dev-ruby/activerecord/metadata.xml2
-rw-r--r--dev-ruby/activestorage/Manifest7
-rw-r--r--dev-ruby/activestorage/activestorage-5.2.3.ebuild58
-rw-r--r--dev-ruby/activestorage/activestorage-6.1.7.6.ebuild62
-rw-r--r--dev-ruby/activestorage/activestorage-6.1.7.7.ebuild69
-rw-r--r--dev-ruby/activestorage/activestorage-7.0.8.1.ebuild72
-rw-r--r--dev-ruby/activestorage/activestorage-7.0.8.ebuild69
-rw-r--r--dev-ruby/activestorage/activestorage-7.1.3.2.ebuild74
-rw-r--r--dev-ruby/activestorage/activestorage-7.1.3.ebuild74
-rw-r--r--dev-ruby/activestorage/metadata.xml2
-rw-r--r--dev-ruby/activesupport/Manifest10
-rw-r--r--dev-ruby/activesupport/activesupport-4.2.11.1.ebuild66
-rw-r--r--dev-ruby/activesupport/activesupport-5.1.7.ebuild67
-rw-r--r--dev-ruby/activesupport/activesupport-5.2.3.ebuild71
-rw-r--r--dev-ruby/activesupport/activesupport-6.0.0.ebuild71
-rw-r--r--dev-ruby/activesupport/activesupport-6.1.7.6.ebuild83
-rw-r--r--dev-ruby/activesupport/activesupport-6.1.7.7.ebuild83
-rw-r--r--dev-ruby/activesupport/activesupport-7.0.8.1.ebuild74
-rw-r--r--dev-ruby/activesupport/activesupport-7.0.8.ebuild74
-rw-r--r--dev-ruby/activesupport/activesupport-7.1.3.2.ebuild82
-rw-r--r--dev-ruby/activesupport/activesupport-7.1.3.ebuild82
-rw-r--r--dev-ruby/activesupport/files/activesupport-6.1.7.3-ruby-thread-noise.patch41
-rw-r--r--dev-ruby/activesupport/files/activesupport-6.1.7.4-bytesplice.patch29
-rw-r--r--dev-ruby/activesupport/files/activesupport-6.1.7.4-class_serial.patch23
-rw-r--r--dev-ruby/activesupport/files/activesupport-7.1.1-backport-pr50097.patch65
-rw-r--r--dev-ruby/activesupport/metadata.xml5
-rw-r--r--dev-ruby/acts_as_list/Manifest4
-rw-r--r--dev-ruby/acts_as_list/acts_as_list-0.9.17.ebuild38
-rw-r--r--dev-ruby/acts_as_list/acts_as_list-0.9.18.ebuild38
-rw-r--r--dev-ruby/acts_as_list/acts_as_list-0.9.19.ebuild38
-rw-r--r--dev-ruby/acts_as_list/acts_as_list-1.1.0.ebuild38
-rw-r--r--dev-ruby/acts_as_list/metadata.xml4
-rw-r--r--dev-ruby/addressable/Manifest5
-rw-r--r--dev-ruby/addressable/addressable-2.5.2.ebuild43
-rw-r--r--dev-ruby/addressable/addressable-2.6.0.ebuild43
-rw-r--r--dev-ruby/addressable/addressable-2.8.4.ebuild42
-rw-r--r--dev-ruby/addressable/addressable-2.8.5.ebuild42
-rw-r--r--dev-ruby/addressable/addressable-2.8.6.ebuild42
-rw-r--r--dev-ruby/addressable/metadata.xml2
-rw-r--r--dev-ruby/ae/ae-1.8.2-r1.ebuild23
-rw-r--r--dev-ruby/ae/ae-1.8.2.ebuild22
-rw-r--r--dev-ruby/ae/metadata.xml5
-rw-r--r--dev-ruby/afm/afm-0.2.2-r2.ebuild26
-rw-r--r--dev-ruby/afm/afm-0.2.2.ebuild26
-rw-r--r--dev-ruby/afm/metadata.xml2
-rw-r--r--dev-ruby/airbrussh/Manifest5
-rw-r--r--dev-ruby/airbrussh/airbrussh-1.3.2.ebuild31
-rw-r--r--dev-ruby/airbrussh/airbrussh-1.3.3.ebuild33
-rw-r--r--dev-ruby/airbrussh/airbrussh-1.5.0.ebuild40
-rw-r--r--dev-ruby/airbrussh/airbrussh-1.5.1.ebuild39
-rw-r--r--dev-ruby/airbrussh/airbrussh-1.5.2.ebuild39
-rw-r--r--dev-ruby/airbrussh/metadata.xml5
-rw-r--r--dev-ruby/allison/Manifest1
-rw-r--r--dev-ruby/allison/allison-2.0.3-r3.ebuild28
-rw-r--r--dev-ruby/allison/metadata.xml8
-rw-r--r--dev-ruby/amatch/Manifest2
-rw-r--r--dev-ruby/amatch/amatch-0.4.0.ebuild43
-rw-r--r--dev-ruby/amatch/amatch-0.4.1.ebuild36
-rw-r--r--dev-ruby/amatch/metadata.xml5
-rw-r--r--dev-ruby/ammeter/Manifest4
-rw-r--r--dev-ruby/ammeter/ammeter-1.1.4-r1.ebuild65
-rw-r--r--dev-ruby/ammeter/ammeter-1.1.5-r1.ebuild59
-rw-r--r--dev-ruby/ammeter/ammeter-1.1.6.ebuild59
-rw-r--r--dev-ruby/ammeter/ammeter-1.1.7.ebuild59
-rw-r--r--dev-ruby/ammeter/metadata.xml2
-rw-r--r--dev-ruby/amq-client/amq-client-1.0.4-r1.ebuild39
-rw-r--r--dev-ruby/amq-client/amq-client-1.0.4.ebuild35
-rw-r--r--dev-ruby/amq-client/metadata.xml2
-rw-r--r--dev-ruby/amq-protocol/Manifest2
-rw-r--r--dev-ruby/amq-protocol/amq-protocol-2.3.0.ebuild27
-rw-r--r--dev-ruby/amq-protocol/amq-protocol-2.3.2-r1.ebuild29
-rw-r--r--dev-ruby/amq-protocol/metadata.xml2
-rw-r--r--dev-ruby/amqp/Manifest1
-rw-r--r--dev-ruby/amqp/amqp-1.8.0.ebuild39
-rw-r--r--dev-ruby/amqp/metadata.xml8
-rw-r--r--dev-ruby/annoy/Manifest1
-rw-r--r--dev-ruby/annoy/annoy-0.5.6-r1.ebuild26
-rw-r--r--dev-ruby/annoy/metadata.xml8
-rw-r--r--dev-ruby/ansi/ansi-1.5.0-r2.ebuild26
-rw-r--r--dev-ruby/ansi/ansi-1.5.0.ebuild22
-rw-r--r--dev-ruby/ansi/metadata.xml5
-rw-r--r--dev-ruby/appraisal/Manifest1
-rw-r--r--dev-ruby/appraisal/appraisal-2.5.0.ebuild38
-rw-r--r--dev-ruby/appraisal/metadata.xml12
-rw-r--r--dev-ruby/archive-tar-minitar/Manifest1
-rw-r--r--dev-ruby/archive-tar-minitar/archive-tar-minitar-0.8.ebuild30
-rw-r--r--dev-ruby/archive-tar-minitar/metadata.xml11
-rw-r--r--dev-ruby/arel-helpers/Manifest4
-rw-r--r--dev-ruby/arel-helpers/arel-helpers-2.10.0.ebuild31
-rw-r--r--dev-ruby/arel-helpers/arel-helpers-2.14.0-r1.ebuild55
-rw-r--r--dev-ruby/arel-helpers/arel-helpers-2.8.0.ebuild32
-rw-r--r--dev-ruby/arel-helpers/arel-helpers-2.9.1.ebuild32
-rw-r--r--dev-ruby/arel-helpers/metadata.xml8
-rw-r--r--dev-ruby/arel/Manifest3
-rw-r--r--dev-ruby/arel/arel-6.0.4.ebuild32
-rw-r--r--dev-ruby/arel/arel-8.0.0.ebuild32
-rw-r--r--dev-ruby/arel/arel-9.0.0.ebuild33
-rw-r--r--dev-ruby/arel/metadata.xml11
-rw-r--r--dev-ruby/ascii85/Manifest3
-rw-r--r--dev-ruby/ascii85/ascii85-1.0.2-r2.ebuild28
-rw-r--r--dev-ruby/ascii85/ascii85-1.0.3.ebuild28
-rw-r--r--dev-ruby/ascii85/ascii85-1.1.0-r1.ebuild27
-rw-r--r--dev-ruby/ascii85/metadata.xml2
-rw-r--r--dev-ruby/asciidoctor-diagram/Manifest8
-rw-r--r--dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.14.ebuild38
-rw-r--r--dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.16.ebuild38
-rw-r--r--dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.17.ebuild38
-rw-r--r--dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.18.ebuild38
-rw-r--r--dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.0.5-r1.ebuild46
-rw-r--r--dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.2.11.ebuild53
-rw-r--r--dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.2.12.ebuild53
-rw-r--r--dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.2.14.ebuild121
-rw-r--r--dev-ruby/asciidoctor-diagram/metadata.xml11
-rw-r--r--dev-ruby/asciidoctor/Manifest7
-rw-r--r--dev-ruby/asciidoctor/asciidoctor-1.5.8.ebuild44
-rw-r--r--dev-ruby/asciidoctor/asciidoctor-2.0.10.ebuild44
-rw-r--r--dev-ruby/asciidoctor/asciidoctor-2.0.18-r1.ebuild56
-rw-r--r--dev-ruby/asciidoctor/asciidoctor-2.0.18.ebuild51
-rw-r--r--dev-ruby/asciidoctor/asciidoctor-2.0.20.ebuild52
-rw-r--r--dev-ruby/asciidoctor/asciidoctor-2.0.22.ebuild60
-rw-r--r--dev-ruby/asciidoctor/asciidoctor-2.0.7.ebuild44
-rw-r--r--dev-ruby/asciidoctor/asciidoctor-2.0.9.ebuild44
-rw-r--r--dev-ruby/asciidoctor/files/asciidoctor-2.0.18-haml-6.patch130
-rw-r--r--dev-ruby/asciidoctor/files/asciidoctor-2.0.18-ruby32.patch29
-rw-r--r--dev-ruby/asciidoctor/metadata.xml2
-rw-r--r--dev-ruby/asciimath/Manifest5
-rw-r--r--dev-ruby/asciimath/asciimath-1.0.4.ebuild22
-rw-r--r--dev-ruby/asciimath/asciimath-1.0.6.ebuild20
-rw-r--r--dev-ruby/asciimath/asciimath-1.0.7.ebuild20
-rw-r--r--dev-ruby/asciimath/asciimath-1.0.8.ebuild20
-rw-r--r--dev-ruby/asciimath/asciimath-2.0.5.ebuild21
-rw-r--r--dev-ruby/asciimath/files/asciimath-1.0.4-backslashes.patch22
-rw-r--r--dev-ruby/asciimath/metadata.xml4
-rw-r--r--dev-ruby/ast/Manifest2
-rw-r--r--dev-ruby/ast/ast-2.4.0.ebuild31
-rw-r--r--dev-ruby/ast/ast-2.4.2-r1.ebuild33
-rw-r--r--dev-ruby/ast/metadata.xml2
-rw-r--r--dev-ruby/astrolabe/Manifest1
-rw-r--r--dev-ruby/astrolabe/astrolabe-1.3.1.ebuild28
-rw-r--r--dev-ruby/astrolabe/metadata.xml11
-rw-r--r--dev-ruby/async-container/Manifest5
-rw-r--r--dev-ruby/async-container/async-container-0.16.12-r1.ebuild42
-rw-r--r--dev-ruby/async-container/async-container-0.16.13.ebuild42
-rw-r--r--dev-ruby/async-container/async-container-0.17.0.ebuild42
-rw-r--r--dev-ruby/async-container/async-container-0.17.1.ebuild42
-rw-r--r--dev-ruby/async-container/async-container-0.18.0.ebuild42
-rw-r--r--dev-ruby/async-container/metadata.xml11
-rw-r--r--dev-ruby/async-io/Manifest5
-rw-r--r--dev-ruby/async-io/async-io-1.37.0.ebuild36
-rw-r--r--dev-ruby/async-io/async-io-1.38.1.ebuild36
-rw-r--r--dev-ruby/async-io/async-io-1.41.0.ebuild37
-rw-r--r--dev-ruby/async-io/async-io-1.42.0.ebuild37
-rw-r--r--dev-ruby/async-io/async-io-1.42.1.ebuild37
-rw-r--r--dev-ruby/async-io/metadata.xml11
-rw-r--r--dev-ruby/async-process/Manifest1
-rw-r--r--dev-ruby/async-process/async-process-1.3.1.ebuild37
-rw-r--r--dev-ruby/async-process/metadata.xml11
-rw-r--r--dev-ruby/async-rspec/Manifest1
-rw-r--r--dev-ruby/async-rspec/async-rspec-1.17.0.ebuild38
-rw-r--r--dev-ruby/async-rspec/metadata.xml11
-rw-r--r--dev-ruby/async/Manifest6
-rw-r--r--dev-ruby/async/async-1.31.0.ebuild44
-rw-r--r--dev-ruby/async/async-2.6.2.ebuild46
-rw-r--r--dev-ruby/async/async-2.6.5.ebuild43
-rw-r--r--dev-ruby/async/async-2.8.0.ebuild43
-rw-r--r--dev-ruby/async/async-2.8.1.ebuild43
-rw-r--r--dev-ruby/async/async-2.8.2.ebuild43
-rw-r--r--dev-ruby/async/files/async-1.31.0-improve-robustness-test.patch49
-rw-r--r--dev-ruby/async/metadata.xml11
-rw-r--r--dev-ruby/async_sinatra/Manifest1
-rw-r--r--dev-ruby/async_sinatra/async_sinatra-1.3.0.ebuild41
-rw-r--r--dev-ruby/async_sinatra/metadata.xml11
-rw-r--r--dev-ruby/atomic/Manifest1
-rw-r--r--dev-ruby/atomic/atomic-1.1.101.ebuild33
-rw-r--r--dev-ruby/atomic/metadata.xml11
-rw-r--r--dev-ruby/autoprefixer-rails/Manifest8
-rw-r--r--dev-ruby/autoprefixer-rails/autoprefixer-rails-10.4.13.0.ebuild42
-rw-r--r--dev-ruby/autoprefixer-rails/autoprefixer-rails-10.4.15.0.ebuild42
-rw-r--r--dev-ruby/autoprefixer-rails/autoprefixer-rails-10.4.16.0.ebuild42
-rw-r--r--dev-ruby/autoprefixer-rails/autoprefixer-rails-7.2.6.ebuild36
-rw-r--r--dev-ruby/autoprefixer-rails/autoprefixer-rails-8.6.5.ebuild36
-rw-r--r--dev-ruby/autoprefixer-rails/autoprefixer-rails-9.5.1.1.ebuild38
-rw-r--r--dev-ruby/autoprefixer-rails/autoprefixer-rails-9.6.1.1.ebuild37
-rw-r--r--dev-ruby/autoprefixer-rails/autoprefixer-rails-9.6.1.ebuild38
-rw-r--r--dev-ruby/autoprefixer-rails/metadata.xml2
-rw-r--r--dev-ruby/aws-eventstream/Manifest3
-rw-r--r--dev-ruby/aws-eventstream/aws-eventstream-1.0.3.ebuild20
-rw-r--r--dev-ruby/aws-eventstream/aws-eventstream-1.2.0.ebuild21
-rw-r--r--dev-ruby/aws-eventstream/aws-eventstream-1.3.0.ebuild21
-rw-r--r--dev-ruby/aws-eventstream/metadata.xml2
-rw-r--r--dev-ruby/aws-partitions/Manifest4
-rw-r--r--dev-ruby/aws-partitions/aws-partitions-1.820.0.ebuild21
-rw-r--r--dev-ruby/aws-partitions/aws-partitions-1.843.0.ebuild21
-rw-r--r--dev-ruby/aws-partitions/aws-partitions-1.863.0.ebuild21
-rw-r--r--dev-ruby/aws-partitions/aws-partitions-1.897.0.ebuild20
-rw-r--r--dev-ruby/aws-partitions/metadata.xml11
-rw-r--r--dev-ruby/aws-s3/Manifest1
-rw-r--r--dev-ruby/aws-s3/aws-s3-0.6.3.ebuild45
-rw-r--r--dev-ruby/aws-s3/files/aws-s3-0.6.3+ruby19.patch29
-rw-r--r--dev-ruby/aws-s3/metadata.xml8
-rw-r--r--dev-ruby/aws-sdk-core/Manifest1
-rw-r--r--dev-ruby/aws-sdk-core/aws-sdk-core-2.11.79.ebuild41
-rw-r--r--dev-ruby/aws-sdk-core/metadata.xml11
-rw-r--r--dev-ruby/aws-sdk-resources/Manifest1
-rw-r--r--dev-ruby/aws-sdk-resources/aws-sdk-resources-2.11.79.ebuild37
-rw-r--r--dev-ruby/aws-sdk-resources/metadata.xml11
-rw-r--r--dev-ruby/aws-sdk/Manifest1
-rw-r--r--dev-ruby/aws-sdk/aws-sdk-2.11.79.ebuild31
-rw-r--r--dev-ruby/aws-sdk/metadata.xml11
-rw-r--r--dev-ruby/aws-sigv4/Manifest4
-rw-r--r--dev-ruby/aws-sigv4/aws-sigv4-1.0.3.ebuild19
-rw-r--r--dev-ruby/aws-sigv4/aws-sigv4-1.1.0.ebuild21
-rw-r--r--dev-ruby/aws-sigv4/aws-sigv4-1.7.0.ebuild23
-rw-r--r--dev-ruby/aws-sigv4/aws-sigv4-1.8.0.ebuild23
-rw-r--r--dev-ruby/aws-sigv4/metadata.xml2
-rw-r--r--dev-ruby/axiom-types/axiom-types-0.1.1-r1.ebuild29
-rw-r--r--dev-ruby/axiom-types/axiom-types-0.1.1.ebuild29
-rw-r--r--dev-ruby/axiom-types/metadata.xml4
-rw-r--r--dev-ruby/backports/Manifest6
-rw-r--r--dev-ruby/backports/backports-3.11.4.ebuild23
-rw-r--r--dev-ruby/backports/backports-3.13.0.ebuild23
-rw-r--r--dev-ruby/backports/backports-3.14.0.ebuild23
-rw-r--r--dev-ruby/backports/backports-3.15.0.ebuild23
-rw-r--r--dev-ruby/backports/backports-3.24.1.ebuild28
-rw-r--r--dev-ruby/backports/backports-3.25.0.ebuild27
-rw-r--r--dev-ruby/backports/metadata.xml2
-rw-r--r--dev-ruby/bacon/bacon-1.2.0-r2.ebuild20
-rw-r--r--dev-ruby/bacon/bacon-1.2.0-r4.ebuild20
-rw-r--r--dev-ruby/bacon/metadata.xml2
-rw-r--r--dev-ruby/barby/Manifest2
-rw-r--r--dev-ruby/barby/barby-0.6.6.ebuild99
-rw-r--r--dev-ruby/barby/barby-0.6.7.ebuild99
-rw-r--r--dev-ruby/barby/barby-0.6.8-r1.ebuild105
-rw-r--r--dev-ruby/barby/barby-0.6.8.ebuild101
-rw-r--r--dev-ruby/barby/metadata.xml2
-rw-r--r--dev-ruby/base32/Manifest2
-rw-r--r--dev-ruby/base32/base32-0.3.2.ebuild26
-rw-r--r--dev-ruby/base32/base32-0.3.4-r1.ebuild26
-rw-r--r--dev-ruby/base32/metadata.xml4
-rw-r--r--dev-ruby/base64/Manifest2
-rw-r--r--dev-ruby/base64/base64-0.1.1.ebuild29
-rw-r--r--dev-ruby/base64/base64-0.2.0.ebuild30
-rw-r--r--dev-ruby/base64/metadata.xml11
-rw-r--r--dev-ruby/bcat/Manifest1
-rw-r--r--dev-ruby/bcat/bcat-0.6.2-r3.ebuild43
-rw-r--r--dev-ruby/bcat/metadata.xml11
-rw-r--r--dev-ruby/bcrypt-ruby/Manifest5
-rw-r--r--dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.11-r1.ebuild59
-rw-r--r--dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.12.ebuild59
-rw-r--r--dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.13.ebuild59
-rw-r--r--dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.19.ebuild29
-rw-r--r--dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.20.ebuild30
-rw-r--r--dev-ruby/bcrypt-ruby/metadata.xml4
-rw-r--r--dev-ruby/bcrypt_pbkdf/Manifest3
-rw-r--r--dev-ruby/bcrypt_pbkdf/bcrypt_pbkdf-1.0.0.ebuild41
-rw-r--r--dev-ruby/bcrypt_pbkdf/bcrypt_pbkdf-1.0.1.ebuild41
-rw-r--r--dev-ruby/bcrypt_pbkdf/bcrypt_pbkdf-1.1.0-r2.ebuild45
-rw-r--r--dev-ruby/bcrypt_pbkdf/metadata.xml2
-rw-r--r--dev-ruby/benchmark-ips/Manifest2
-rw-r--r--dev-ruby/benchmark-ips/benchmark-ips-2.12.0.ebuild30
-rw-r--r--dev-ruby/benchmark-ips/benchmark-ips-2.13.0.ebuild30
-rw-r--r--dev-ruby/benchmark-ips/metadata.xml11
-rw-r--r--dev-ruby/best_in_place/Manifest1
-rw-r--r--dev-ruby/best_in_place/best_in_place-3.1.1.ebuild68
-rw-r--r--dev-ruby/best_in_place/metadata.xml11
-rw-r--r--dev-ruby/bigdecimal/Manifest4
-rw-r--r--dev-ruby/bigdecimal/bigdecimal-3.1.4-r1.ebuild32
-rw-r--r--dev-ruby/bigdecimal/bigdecimal-3.1.5.ebuild32
-rw-r--r--dev-ruby/bigdecimal/bigdecimal-3.1.6.ebuild32
-rw-r--r--dev-ruby/bigdecimal/bigdecimal-3.1.7.ebuild32
-rw-r--r--dev-ruby/bigdecimal/metadata.xml11
-rw-r--r--dev-ruby/bindata/Manifest4
-rw-r--r--dev-ruby/bindata/bindata-2.4.1.ebuild24
-rw-r--r--dev-ruby/bindata/bindata-2.4.15.ebuild21
-rw-r--r--dev-ruby/bindata/bindata-2.4.4.ebuild24
-rw-r--r--dev-ruby/bindata/bindata-2.5.0.ebuild22
-rw-r--r--dev-ruby/bindata/metadata.xml16
-rw-r--r--dev-ruby/bindex/Manifest1
-rw-r--r--dev-ruby/bindex/bindex-0.7.0.ebuild32
-rw-r--r--dev-ruby/bindex/bindex-0.8.1-r2.ebuild31
-rw-r--r--dev-ruby/bindex/bindex-0.8.1.ebuild32
-rw-r--r--dev-ruby/bindex/metadata.xml2
-rw-r--r--dev-ruby/binding_of_caller/Manifest3
-rw-r--r--dev-ruby/binding_of_caller/binding_of_caller-0.8.0.ebuild26
-rw-r--r--dev-ruby/binding_of_caller/binding_of_caller-1.0.0-r2.ebuild30
-rw-r--r--dev-ruby/binding_of_caller/binding_of_caller-1.0.1.ebuild30
-rw-r--r--dev-ruby/binding_of_caller/metadata.xml2
-rw-r--r--dev-ruby/bit-struct/Manifest1
-rw-r--r--dev-ruby/bit-struct/bit-struct-0.16.ebuild19
-rw-r--r--dev-ruby/bit-struct/metadata.xml12
-rw-r--r--dev-ruby/blankslate/blankslate-3.1.3-r2.ebuild25
-rw-r--r--dev-ruby/blankslate/blankslate-3.1.3.ebuild27
-rw-r--r--dev-ruby/blankslate/metadata.xml2
-rw-r--r--dev-ruby/blinkstick/blinkstick-1.0.1_p20150901-r1.ebuild50
-rw-r--r--dev-ruby/blinkstick/blinkstick-1.0.1_p20150901.ebuild50
-rw-r--r--dev-ruby/blinkstick/metadata.xml6
-rw-r--r--dev-ruby/bluecloth/Manifest1
-rw-r--r--dev-ruby/bluecloth/bluecloth-2.2.0-r3.ebuild56
-rw-r--r--dev-ruby/bluecloth/metadata.xml8
-rw-r--r--dev-ruby/bogus/bogus-0.1.6-r1.ebuild34
-rw-r--r--dev-ruby/bogus/bogus-0.1.6.ebuild31
-rw-r--r--dev-ruby/bogus/metadata.xml2
-rw-r--r--dev-ruby/bones/Manifest1
-rw-r--r--dev-ruby/bones/bones-3.8.4-r2.ebuild36
-rw-r--r--dev-ruby/bones/files/bones-3.8.1-builder.patch15
-rw-r--r--dev-ruby/bones/metadata.xml11
-rw-r--r--dev-ruby/bourne/Manifest1
-rw-r--r--dev-ruby/bourne/bourne-1.6.0.ebuild35
-rw-r--r--dev-ruby/bourne/metadata.xml11
-rw-r--r--dev-ruby/brass/brass-1.2.1-r1.ebuild18
-rw-r--r--dev-ruby/brass/brass-1.2.1.ebuild19
-rw-r--r--dev-ruby/brass/metadata.xml5
-rw-r--r--dev-ruby/brotli/Manifest2
-rw-r--r--dev-ruby/brotli/brotli-0.4.0-r2.ebuild38
-rw-r--r--dev-ruby/brotli/brotli-0.5.0.ebuild37
-rw-r--r--dev-ruby/brotli/metadata.xml11
-rw-r--r--dev-ruby/bsearch/bsearch-1.5.0-r2.ebuild28
-rw-r--r--dev-ruby/bsearch/bsearch-1.5.0-r4.ebuild28
-rw-r--r--dev-ruby/bsearch/metadata.xml2
-rw-r--r--dev-ruby/bson/Manifest4
-rw-r--r--dev-ruby/bson/bson-4.15.0.ebuild32
-rw-r--r--dev-ruby/bson/bson-4.4.2.ebuild44
-rw-r--r--dev-ruby/bson/bson-4.5.0.ebuild44
-rw-r--r--dev-ruby/bson/bson-5.0.0.ebuild29
-rw-r--r--dev-ruby/bson/metadata.xml2
-rw-r--r--dev-ruby/buftok/Manifest2
-rw-r--r--dev-ruby/buftok/buftok-0.2.0-r1.ebuild22
-rw-r--r--dev-ruby/buftok/buftok-0.3.0-r1.ebuild24
-rw-r--r--dev-ruby/buftok/metadata.xml2
-rw-r--r--dev-ruby/builder/Manifest2
-rw-r--r--dev-ruby/builder/builder-3.2.3.ebuild32
-rw-r--r--dev-ruby/builder/builder-3.2.4-r1.ebuild36
-rw-r--r--dev-ruby/builder/metadata.xml2
-rw-r--r--dev-ruby/bundler-audit/Manifest3
-rw-r--r--dev-ruby/bundler-audit/bundler-audit-0.6.0.ebuild44
-rw-r--r--dev-ruby/bundler-audit/bundler-audit-0.6.1.ebuild44
-rw-r--r--dev-ruby/bundler-audit/bundler-audit-0.9.1.ebuild38
-rw-r--r--dev-ruby/bundler-audit/metadata.xml2
-rw-r--r--dev-ruby/bundler/Manifest10
-rw-r--r--dev-ruby/bundler/bundler-1.16.1.ebuild33
-rw-r--r--dev-ruby/bundler/bundler-1.16.6.ebuild33
-rw-r--r--dev-ruby/bundler/bundler-1.17.3.ebuild33
-rw-r--r--dev-ruby/bundler/bundler-2.2.33-r1.ebuild30
-rw-r--r--dev-ruby/bundler/bundler-2.3.26.ebuild30
-rw-r--r--dev-ruby/bundler/bundler-2.4.15.ebuild30
-rw-r--r--dev-ruby/bundler/bundler-2.4.19.ebuild30
-rw-r--r--dev-ruby/bundler/bundler-2.4.22.ebuild30
-rw-r--r--dev-ruby/bundler/bundler-2.4.6.ebuild30
-rw-r--r--dev-ruby/bundler/bundler-2.5.3.ebuild30
-rw-r--r--dev-ruby/bundler/metadata.xml4
-rw-r--r--dev-ruby/bunny/Manifest7
-rw-r--r--dev-ruby/bunny/bunny-2.12.1.ebuild33
-rw-r--r--dev-ruby/bunny/bunny-2.13.0.ebuild33
-rw-r--r--dev-ruby/bunny/bunny-2.14.0.ebuild33
-rw-r--r--dev-ruby/bunny/bunny-2.14.1.ebuild33
-rw-r--r--dev-ruby/bunny/bunny-2.14.2.ebuild33
-rw-r--r--dev-ruby/bunny/bunny-2.22.0.ebuild39
-rw-r--r--dev-ruby/bunny/bunny-2.9.2.ebuild33
-rw-r--r--dev-ruby/bunny/metadata.xml2
-rw-r--r--dev-ruby/c21e/Manifest3
-rw-r--r--dev-ruby/c21e/c21e-1.1.8.ebuild20
-rw-r--r--dev-ruby/c21e/c21e-1.1.9.ebuild20
-rw-r--r--dev-ruby/c21e/c21e-1.2.1.ebuild20
-rw-r--r--dev-ruby/c21e/metadata.xml8
-rw-r--r--dev-ruby/calendar_date_select/Manifest1
-rw-r--r--dev-ruby/calendar_date_select/calendar_date_select-2.1.2.ebuild27
-rw-r--r--dev-ruby/calendar_date_select/metadata.xml8
-rw-r--r--dev-ruby/capistrano-stats/Manifest1
-rw-r--r--dev-ruby/capistrano-stats/capistrano-stats-1.1.1.ebuild21
-rw-r--r--dev-ruby/capistrano-stats/metadata.xml12
-rw-r--r--dev-ruby/capistrano/Manifest4
-rw-r--r--dev-ruby/capistrano/capistrano-2.15.5-r2.ebuild48
-rw-r--r--dev-ruby/capistrano/capistrano-2.15.5-r3.ebuild48
-rw-r--r--dev-ruby/capistrano/capistrano-3.11.0.ebuild38
-rw-r--r--dev-ruby/capistrano/capistrano-3.17.3.ebuild38
-rw-r--r--dev-ruby/capistrano/capistrano-3.18.0.ebuild38
-rw-r--r--dev-ruby/capistrano/capistrano-3.18.1.ebuild38
-rw-r--r--dev-ruby/capistrano/files/capistrano-2.15.5-sudo-cleanup.patch5
-rw-r--r--dev-ruby/capistrano/metadata.xml2
-rw-r--r--dev-ruby/capybara/Manifest11
-rw-r--r--dev-ruby/capybara/capybara-2.18.0.ebuild50
-rw-r--r--dev-ruby/capybara/capybara-3.18.0.ebuild61
-rw-r--r--dev-ruby/capybara/capybara-3.23.0.ebuild61
-rw-r--r--dev-ruby/capybara/capybara-3.24.0.ebuild61
-rw-r--r--dev-ruby/capybara/capybara-3.25.0.ebuild61
-rw-r--r--dev-ruby/capybara/capybara-3.26.0.ebuild61
-rw-r--r--dev-ruby/capybara/capybara-3.27.0.ebuild60
-rw-r--r--dev-ruby/capybara/capybara-3.28.0.ebuild60
-rw-r--r--dev-ruby/capybara/capybara-3.39.0-r1.ebuild61
-rw-r--r--dev-ruby/capybara/capybara-3.39.2.ebuild61
-rw-r--r--dev-ruby/capybara/capybara-3.40.0.ebuild61
-rw-r--r--dev-ruby/capybara/metadata.xml4
-rw-r--r--dev-ruby/certificate_authority/Manifest2
-rw-r--r--dev-ruby/certificate_authority/certificate_authority-0.1.6-r2.ebuild29
-rw-r--r--dev-ruby/certificate_authority/certificate_authority-1.1.0.ebuild35
-rw-r--r--dev-ruby/certificate_authority/metadata.xml2
-rw-r--r--dev-ruby/cgi/Manifest3
-rw-r--r--dev-ruby/cgi/cgi-0.3.6-r1.ebuild30
-rw-r--r--dev-ruby/cgi/cgi-0.4.0.ebuild32
-rw-r--r--dev-ruby/cgi/cgi-0.4.1.ebuild33
-rw-r--r--dev-ruby/cgi/metadata.xml11
-rw-r--r--dev-ruby/charlock_holmes/Manifest2
-rw-r--r--dev-ruby/charlock_holmes/charlock_holmes-0.7.6.ebuild49
-rw-r--r--dev-ruby/charlock_holmes/charlock_holmes-0.7.7-r1.ebuild45
-rw-r--r--dev-ruby/charlock_holmes/files/charlock_holmes-0.7.6-gcc5.patch16
-rw-r--r--dev-ruby/charlock_holmes/metadata.xml2
-rw-r--r--dev-ruby/chef-utils/Manifest3
-rw-r--r--dev-ruby/chef-utils/chef-utils-18.3.0.ebuild29
-rw-r--r--dev-ruby/chef-utils/chef-utils-18.4.12.ebuild25
-rw-r--r--dev-ruby/chef-utils/chef-utils-18.4.2.ebuild25
-rw-r--r--dev-ruby/chef-utils/metadata.xml12
-rw-r--r--dev-ruby/childlabor/childlabor-0.0.3-r1.ebuild36
-rw-r--r--dev-ruby/childlabor/childlabor-0.0.3-r2.ebuild41
-rw-r--r--dev-ruby/childlabor/metadata.xml2
-rw-r--r--dev-ruby/childprocess/Manifest5
-rw-r--r--dev-ruby/childprocess/childprocess-0.9.0.ebuild41
-rw-r--r--dev-ruby/childprocess/childprocess-1.0.1-r1.ebuild43
-rw-r--r--dev-ruby/childprocess/childprocess-1.0.1.ebuild42
-rw-r--r--dev-ruby/childprocess/childprocess-2.0.0.ebuild41
-rw-r--r--dev-ruby/childprocess/childprocess-4.1.0.ebuild41
-rw-r--r--dev-ruby/childprocess/childprocess-5.0.0.ebuild41
-rw-r--r--dev-ruby/childprocess/files/childprocess-1.0.1-ruby26-reopen.patch23
-rw-r--r--dev-ruby/childprocess/metadata.xml5
-rw-r--r--dev-ruby/chronic/chronic-0.10.2-r1.ebuild28
-rw-r--r--dev-ruby/chronic/chronic-0.10.2.ebuild26
-rw-r--r--dev-ruby/chronic/metadata.xml2
-rw-r--r--dev-ruby/chunky_png/Manifest3
-rw-r--r--dev-ruby/chunky_png/chunky_png-1.3.10.ebuild33
-rw-r--r--dev-ruby/chunky_png/chunky_png-1.3.11.ebuild33
-rw-r--r--dev-ruby/chunky_png/chunky_png-1.4.0-r1.ebuild39
-rw-r--r--dev-ruby/chunky_png/files/chunky_png-1.4.0-ruby32.patch29
-rw-r--r--dev-ruby/chunky_png/metadata.xml5
-rw-r--r--dev-ruby/cinch/Manifest1
-rw-r--r--dev-ruby/cinch/cinch-2.3.4.ebuild20
-rw-r--r--dev-ruby/cinch/metadata.xml18
-rw-r--r--dev-ruby/classifier-reborn/Manifest1
-rw-r--r--dev-ruby/classifier-reborn/classifier-reborn-2.2.0.ebuild37
-rw-r--r--dev-ruby/classifier-reborn/metadata.xml11
-rw-r--r--dev-ruby/climate_control/Manifest2
-rw-r--r--dev-ruby/climate_control/climate_control-0.2.0.ebuild29
-rw-r--r--dev-ruby/climate_control/climate_control-1.2.0.ebuild29
-rw-r--r--dev-ruby/climate_control/metadata.xml2
-rw-r--r--dev-ruby/cliver/Manifest2
-rw-r--r--dev-ruby/cliver/cliver-0.3.2-r2.ebuild31
-rw-r--r--dev-ruby/cliver/cliver-0.3.2.ebuild19
-rw-r--r--dev-ruby/cliver/metadata.xml14
-rw-r--r--dev-ruby/cmdparse/Manifest3
-rw-r--r--dev-ruby/cmdparse/cmdparse-2.0.6-r1.ebuild26
-rw-r--r--dev-ruby/cmdparse/cmdparse-3.0.4.ebuild22
-rw-r--r--dev-ruby/cmdparse/cmdparse-3.0.7-r1.ebuild20
-rw-r--r--dev-ruby/cmdparse/metadata.xml5
-rw-r--r--dev-ruby/cocaine/Manifest1
-rw-r--r--dev-ruby/cocaine/cocaine-0.6.0.ebuild48
-rw-r--r--dev-ruby/cocaine/metadata.xml8
-rw-r--r--dev-ruby/coderay/Manifest2
-rw-r--r--dev-ruby/coderay/coderay-1.1.2.ebuild39
-rw-r--r--dev-ruby/coderay/coderay-1.1.3-r2.ebuild46
-rw-r--r--dev-ruby/coderay/files/coderay-1.1.3-ruby30.patch51
-rw-r--r--dev-ruby/coderay/metadata.xml2
-rw-r--r--dev-ruby/coercible/Manifest2
-rw-r--r--dev-ruby/coercible/coercible-1.0.0.ebuild24
-rw-r--r--dev-ruby/coercible/coercible-1.0.1.ebuild33
-rw-r--r--dev-ruby/coercible/metadata.xml4
-rw-r--r--dev-ruby/coffee-rails/Manifest1
-rw-r--r--dev-ruby/coffee-rails/coffee-rails-4.2.2-r1.ebuild34
-rw-r--r--dev-ruby/coffee-rails/coffee-rails-5.0.0-r2.ebuild37
-rw-r--r--dev-ruby/coffee-rails/coffee-rails-5.0.0.ebuild36
-rw-r--r--dev-ruby/coffee-rails/metadata.xml2
-rw-r--r--dev-ruby/coffee-script-source/coffee-script-source-1.12.2-r1.ebuild19
-rw-r--r--dev-ruby/coffee-script-source/coffee-script-source-1.12.2-r2.ebuild19
-rw-r--r--dev-ruby/coffee-script-source/coffee-script-source-1.12.2.ebuild19
-rw-r--r--dev-ruby/coffee-script-source/metadata.xml2
-rw-r--r--dev-ruby/coffee-script/coffee-script-2.4.1.ebuild8
-rw-r--r--dev-ruby/coffee-script/metadata.xml2
-rw-r--r--dev-ruby/color/color-1.8-r1.ebuild28
-rw-r--r--dev-ruby/color/color-1.8.ebuild28
-rw-r--r--dev-ruby/color/metadata.xml2
-rw-r--r--dev-ruby/colorator/colorator-1.1.0-r1.ebuild27
-rw-r--r--dev-ruby/colorator/colorator-1.1.0.ebuild26
-rw-r--r--dev-ruby/colorator/metadata.xml2
-rw-r--r--dev-ruby/colored/colored-1.2-r1.ebuild19
-rw-r--r--dev-ruby/colored/colored-1.2.ebuild21
-rw-r--r--dev-ruby/colored/metadata.xml2
-rw-r--r--dev-ruby/colored2/Manifest1
-rw-r--r--dev-ruby/colored2/colored2-3.1.2-r1.ebuild25
-rw-r--r--dev-ruby/colored2/metadata.xml11
-rw-r--r--dev-ruby/colorize/Manifest2
-rw-r--r--dev-ruby/colorize/colorize-0.8.1.ebuild29
-rw-r--r--dev-ruby/colorize/colorize-1.1.0.ebuild27
-rw-r--r--dev-ruby/colorize/metadata.xml2
-rw-r--r--dev-ruby/columnize/columnize-0.9.0-r2.ebuild17
-rw-r--r--dev-ruby/columnize/columnize-0.9.0.ebuild18
-rw-r--r--dev-ruby/columnize/metadata.xml2
-rw-r--r--dev-ruby/combustion/Manifest4
-rw-r--r--dev-ruby/combustion/combustion-1.1.0.ebuild25
-rw-r--r--dev-ruby/combustion/combustion-1.1.1.ebuild24
-rw-r--r--dev-ruby/combustion/combustion-1.3.7-r2.ebuild58
-rw-r--r--dev-ruby/combustion/combustion-1.4.0.ebuild58
-rw-r--r--dev-ruby/combustion/metadata.xml2
-rw-r--r--dev-ruby/commander/Manifest3
-rw-r--r--dev-ruby/commander/commander-4.4.6.ebuild25
-rw-r--r--dev-ruby/commander/commander-4.4.7.ebuild25
-rw-r--r--dev-ruby/commander/commander-4.6.0.ebuild24
-rw-r--r--dev-ruby/commander/metadata.xml5
-rw-r--r--dev-ruby/commonmarker/Manifest1
-rw-r--r--dev-ruby/commonmarker/commonmarker-0.23.10.ebuild41
-rw-r--r--dev-ruby/commonmarker/metadata.xml11
-rw-r--r--dev-ruby/compass-core/Manifest1
-rw-r--r--dev-ruby/compass-core/compass-core-1.0.3-r1.ebuild26
-rw-r--r--dev-ruby/compass-core/metadata.xml12
-rw-r--r--dev-ruby/compass-import-once/Manifest1
-rw-r--r--dev-ruby/compass-import-once/compass-import-once-1.0.5.ebuild32
-rw-r--r--dev-ruby/compass-import-once/metadata.xml12
-rw-r--r--dev-ruby/compass/Manifest1
-rw-r--r--dev-ruby/compass/compass-1.0.3-r1.ebuild42
-rw-r--r--dev-ruby/compass/metadata.xml12
-rw-r--r--dev-ruby/concurrent-ruby/Manifest4
-rw-r--r--dev-ruby/concurrent-ruby/concurrent-ruby-1.0.5.ebuild37
-rw-r--r--dev-ruby/concurrent-ruby/concurrent-ruby-1.1.10.ebuild38
-rw-r--r--dev-ruby/concurrent-ruby/concurrent-ruby-1.2.2.ebuild38
-rw-r--r--dev-ruby/concurrent-ruby/concurrent-ruby-1.2.3.ebuild38
-rw-r--r--dev-ruby/concurrent-ruby/metadata.xml2
-rw-r--r--dev-ruby/connection_pool/Manifest2
-rw-r--r--dev-ruby/connection_pool/connection_pool-2.2.2.ebuild27
-rw-r--r--dev-ruby/connection_pool/connection_pool-2.4.1.ebuild29
-rw-r--r--dev-ruby/connection_pool/metadata.xml2
-rw-r--r--dev-ruby/console/Manifest4
-rw-r--r--dev-ruby/console/console-1.23.2.ebuild36
-rw-r--r--dev-ruby/console/console-1.23.6.ebuild36
-rw-r--r--dev-ruby/console/console-1.23.7.ebuild36
-rw-r--r--dev-ruby/console/console-1.24.0.ebuild36
-rw-r--r--dev-ruby/console/metadata.xml11
-rw-r--r--dev-ruby/contracts/Manifest2
-rw-r--r--dev-ruby/contracts/contracts-0.16.0.ebuild20
-rw-r--r--dev-ruby/contracts/contracts-0.17-r1.ebuild31
-rw-r--r--dev-ruby/contracts/files/contracts-0.17-ruby32.patch120
-rw-r--r--dev-ruby/contracts/metadata.xml2
-rw-r--r--dev-ruby/coolio/Manifest4
-rw-r--r--dev-ruby/coolio/coolio-1.5.3.ebuild57
-rw-r--r--dev-ruby/coolio/coolio-1.5.4.ebuild57
-rw-r--r--dev-ruby/coolio/coolio-1.7.1-r1.ebuild48
-rw-r--r--dev-ruby/coolio/coolio-1.7.1-r2.ebuild52
-rw-r--r--dev-ruby/coolio/coolio-1.8.0.ebuild48
-rw-r--r--dev-ruby/coolio/files/coolio-1.7.1-fix-build-clang16.patch13
-rw-r--r--dev-ruby/coolio/metadata.xml5
-rw-r--r--dev-ruby/countdownlatch/countdownlatch-1.0.0-r1.ebuild26
-rw-r--r--dev-ruby/countdownlatch/countdownlatch-1.0.0-r2.ebuild26
-rw-r--r--dev-ruby/countdownlatch/metadata.xml2
-rw-r--r--dev-ruby/crack/Manifest4
-rw-r--r--dev-ruby/crack/crack-0.4.3-r2.ebuild33
-rw-r--r--dev-ruby/crack/crack-0.4.4-r3.ebuild45
-rw-r--r--dev-ruby/crack/crack-0.4.6.ebuild43
-rw-r--r--dev-ruby/crack/crack-1.0.0.ebuild33
-rw-r--r--dev-ruby/crack/files/crack-0.4.4-psych4.patch30
-rw-r--r--dev-ruby/crack/metadata.xml2
-rw-r--r--dev-ruby/crass/Manifest2
-rw-r--r--dev-ruby/crass/crass-1.0.4.ebuild25
-rw-r--r--dev-ruby/crass/crass-1.0.6-r1.ebuild31
-rw-r--r--dev-ruby/crass/metadata.xml2
-rw-r--r--dev-ruby/creole/creole-0.5.0-r2.ebuild30
-rw-r--r--dev-ruby/creole/creole-0.5.0.ebuild22
-rw-r--r--dev-ruby/creole/metadata.xml2
-rw-r--r--dev-ruby/cri/Manifest5
-rw-r--r--dev-ruby/cri/cri-2.15.11-r1.ebuild35
-rw-r--r--dev-ruby/cri/cri-2.15.5.ebuild32
-rw-r--r--dev-ruby/cri/cri-2.15.6.ebuild32
-rw-r--r--dev-ruby/cri/cri-2.15.7.ebuild32
-rw-r--r--dev-ruby/cri/cri-2.15.9.ebuild32
-rw-r--r--dev-ruby/cri/metadata.xml2
-rw-r--r--dev-ruby/css_parser/Manifest5
-rw-r--r--dev-ruby/css_parser/css_parser-1.16.0.ebuild43
-rw-r--r--dev-ruby/css_parser/css_parser-1.17.0.ebuild43
-rw-r--r--dev-ruby/css_parser/css_parser-1.17.1.ebuild43
-rw-r--r--dev-ruby/css_parser/css_parser-1.6.0.ebuild44
-rw-r--r--dev-ruby/css_parser/css_parser-1.7.0.ebuild44
-rw-r--r--dev-ruby/css_parser/metadata.xml2
-rw-r--r--dev-ruby/csv/Manifest2
-rw-r--r--dev-ruby/csv/csv-3.2.8.ebuild34
-rw-r--r--dev-ruby/csv/csv-3.3.0.ebuild34
-rw-r--r--dev-ruby/csv/metadata.xml11
-rw-r--r--dev-ruby/curb/Manifest3
-rw-r--r--dev-ruby/curb/curb-0.9.10.ebuild47
-rw-r--r--dev-ruby/curb/curb-0.9.9.ebuild47
-rw-r--r--dev-ruby/curb/curb-1.0.5.ebuild48
-rw-r--r--dev-ruby/curb/metadata.xml2
-rw-r--r--dev-ruby/curses/Manifest4
-rw-r--r--dev-ruby/curses/curses-1.2.7.ebuild33
-rw-r--r--dev-ruby/curses/curses-1.3.0.ebuild33
-rw-r--r--dev-ruby/curses/curses-1.3.1.ebuild33
-rw-r--r--dev-ruby/curses/curses-1.4.4.ebuild31
-rw-r--r--dev-ruby/curses/metadata.xml2
-rw-r--r--dev-ruby/d3_rails/Manifest1
-rw-r--r--dev-ruby/d3_rails/d3_rails-4.1.1.ebuild22
-rw-r--r--dev-ruby/d3_rails/metadata.xml11
-rw-r--r--dev-ruby/daemon_controller/Manifest1
-rw-r--r--dev-ruby/daemon_controller/daemon_controller-1.2.0-r1.ebuild26
-rw-r--r--dev-ruby/daemon_controller/metadata.xml11
-rw-r--r--dev-ruby/daemons/Manifest4
-rw-r--r--dev-ruby/daemons/daemons-1.2.6.ebuild34
-rw-r--r--dev-ruby/daemons/daemons-1.3.0.ebuild34
-rw-r--r--dev-ruby/daemons/daemons-1.3.1.ebuild34
-rw-r--r--dev-ruby/daemons/daemons-1.4.1.ebuild33
-rw-r--r--dev-ruby/daemons/metadata.xml2
-rw-r--r--dev-ruby/dalli/Manifest7
-rw-r--r--dev-ruby/dalli/dalli-2.7.10.ebuild50
-rw-r--r--dev-ruby/dalli/dalli-2.7.8-r1.ebuild46
-rw-r--r--dev-ruby/dalli/dalli-2.7.9.ebuild50
-rw-r--r--dev-ruby/dalli/dalli-3.2.5.ebuild43
-rw-r--r--dev-ruby/dalli/dalli-3.2.6.ebuild44
-rw-r--r--dev-ruby/dalli/dalli-3.2.7.ebuild44
-rw-r--r--dev-ruby/dalli/dalli-3.2.8.ebuild44
-rw-r--r--dev-ruby/dalli/metadata.xml2
-rw-r--r--dev-ruby/database_cleaner-active_record/Manifest1
-rw-r--r--dev-ruby/database_cleaner-active_record/database_cleaner-active_record-2.1.0.ebuild28
-rw-r--r--dev-ruby/database_cleaner-active_record/metadata.xml12
-rw-r--r--dev-ruby/database_cleaner-core/Manifest1
-rw-r--r--dev-ruby/database_cleaner-core/database_cleaner-core-2.0.1-r1.ebuild22
-rw-r--r--dev-ruby/database_cleaner-core/metadata.xml11
-rw-r--r--dev-ruby/database_cleaner/Manifest2
-rw-r--r--dev-ruby/database_cleaner/database_cleaner-1.7.0.ebuild24
-rw-r--r--dev-ruby/database_cleaner/database_cleaner-2.0.2.ebuild20
-rw-r--r--dev-ruby/database_cleaner/metadata.xml8
-rw-r--r--dev-ruby/date/Manifest2
-rw-r--r--dev-ruby/date/date-3.3.3.ebuild33
-rw-r--r--dev-ruby/date/date-3.3.4.ebuild33
-rw-r--r--dev-ruby/date/metadata.xml11
-rw-r--r--dev-ruby/date_validator/Manifest2
-rw-r--r--dev-ruby/date_validator/date_validator-0.12.0.ebuild50
-rw-r--r--dev-ruby/date_validator/date_validator-0.9.0.ebuild48
-rw-r--r--dev-ruby/date_validator/metadata.xml2
-rw-r--r--dev-ruby/dbf/Manifest4
-rw-r--r--dev-ruby/dbf/dbf-4.1.2.ebuild22
-rw-r--r--dev-ruby/dbf/dbf-4.2.4.ebuild21
-rw-r--r--dev-ruby/dbf/dbf-4.3.0.ebuild21
-rw-r--r--dev-ruby/dbf/dbf-4.3.2.ebuild20
-rw-r--r--dev-ruby/dbf/metadata.xml2
-rw-r--r--dev-ruby/ddmemoize/Manifest1
-rw-r--r--dev-ruby/ddmemoize/ddmemoize-1.0.0.ebuild31
-rw-r--r--dev-ruby/ddmemoize/metadata.xml11
-rw-r--r--dev-ruby/ddmetrics/Manifest3
-rw-r--r--dev-ruby/ddmetrics/ddmetrics-1.0.0.ebuild29
-rw-r--r--dev-ruby/ddmetrics/ddmetrics-1.0.1.ebuild29
-rw-r--r--dev-ruby/ddmetrics/ddmetrics-1.1.0.ebuild28
-rw-r--r--dev-ruby/ddmetrics/metadata.xml5
-rw-r--r--dev-ruby/ddplugin/Manifest3
-rw-r--r--dev-ruby/ddplugin/ddplugin-1.0.1.ebuild27
-rw-r--r--dev-ruby/ddplugin/ddplugin-1.0.2.ebuild27
-rw-r--r--dev-ruby/ddplugin/ddplugin-1.0.3-r1.ebuild26
-rw-r--r--dev-ruby/ddplugin/metadata.xml2
-rw-r--r--dev-ruby/debug/Manifest2
-rw-r--r--dev-ruby/debug/debug-1.9.1.ebuild38
-rw-r--r--dev-ruby/debug/debug-1.9.2.ebuild38
-rw-r--r--dev-ruby/debug/metadata.xml12
-rw-r--r--dev-ruby/debug_inspector/Manifest3
-rw-r--r--dev-ruby/debug_inspector/debug_inspector-0.0.3.ebuild29
-rw-r--r--dev-ruby/debug_inspector/debug_inspector-1.1.0-r1.ebuild30
-rw-r--r--dev-ruby/debug_inspector/debug_inspector-1.2.0.ebuild30
-rw-r--r--dev-ruby/debug_inspector/metadata.xml2
-rw-r--r--dev-ruby/debugger-linecache/Manifest1
-rw-r--r--dev-ruby/debugger-linecache/debugger-linecache-1.2.0.ebuild25
-rw-r--r--dev-ruby/debugger-linecache/metadata.xml11
-rw-r--r--dev-ruby/deckar01-task_list/Manifest2
-rw-r--r--dev-ruby/deckar01-task_list/deckar01-task_list-2.3.3.ebuild29
-rw-r--r--dev-ruby/deckar01-task_list/deckar01-task_list-2.3.4.ebuild29
-rw-r--r--dev-ruby/deckar01-task_list/metadata.xml11
-rw-r--r--dev-ruby/deep_merge/Manifest2
-rw-r--r--dev-ruby/deep_merge/deep_merge-1.2.1.ebuild23
-rw-r--r--dev-ruby/deep_merge/deep_merge-1.2.2.ebuild23
-rw-r--r--dev-ruby/deep_merge/metadata.xml5
-rw-r--r--dev-ruby/delayer-deferred/Manifest4
-rw-r--r--dev-ruby/delayer-deferred/delayer-deferred-2.0.0.ebuild26
-rw-r--r--dev-ruby/delayer-deferred/delayer-deferred-2.1.0.ebuild26
-rw-r--r--dev-ruby/delayer-deferred/delayer-deferred-2.1.1.ebuild26
-rw-r--r--dev-ruby/delayer-deferred/delayer-deferred-2.2.0-r1.ebuild26
-rw-r--r--dev-ruby/delayer-deferred/metadata.xml5
-rw-r--r--dev-ruby/delayer/Manifest3
-rw-r--r--dev-ruby/delayer/delayer-0.0.2.ebuild22
-rw-r--r--dev-ruby/delayer/delayer-1.0.0.ebuild22
-rw-r--r--dev-ruby/delayer/delayer-1.2.1-r1.ebuild22
-rw-r--r--dev-ruby/delayer/delayer-1.2.1.ebuild22
-rw-r--r--dev-ruby/delayer/metadata.xml3
-rw-r--r--dev-ruby/dep_selector/Manifest1
-rw-r--r--dev-ruby/dep_selector/dep_selector-1.0.5.ebuild45
-rw-r--r--dev-ruby/dep_selector/metadata.xml11
-rw-r--r--dev-ruby/dependor/dependor-1.0.1-r1.ebuild26
-rw-r--r--dev-ruby/dependor/dependor-1.0.1.ebuild25
-rw-r--r--dev-ruby/dependor/metadata.xml2
-rw-r--r--dev-ruby/deprecated/Manifest1
-rw-r--r--dev-ruby/deprecated/deprecated-3.0.1-r2.ebuild25
-rw-r--r--dev-ruby/deprecated/metadata.xml11
-rw-r--r--dev-ruby/descendants_tracker/descendants_tracker-0.0.4-r1.ebuild29
-rw-r--r--dev-ruby/descendants_tracker/descendants_tracker-0.0.4.ebuild30
-rw-r--r--dev-ruby/descendants_tracker/metadata.xml2
-rw-r--r--dev-ruby/did_you_mean/Manifest4
-rw-r--r--dev-ruby/did_you_mean/did_you_mean-1.1.2.ebuild25
-rw-r--r--dev-ruby/did_you_mean/did_you_mean-1.2.1.ebuild22
-rw-r--r--dev-ruby/did_you_mean/did_you_mean-1.3.0.ebuild22
-rw-r--r--dev-ruby/did_you_mean/did_you_mean-1.6.3.ebuild26
-rw-r--r--dev-ruby/did_you_mean/files/did_you_mean-1.6.3-ruby33.patch33
-rw-r--r--dev-ruby/did_you_mean/metadata.xml2
-rw-r--r--dev-ruby/diff-lcs/Manifest3
-rw-r--r--dev-ruby/diff-lcs/diff-lcs-1.3.ebuild20
-rw-r--r--dev-ruby/diff-lcs/diff-lcs-1.5.0.ebuild19
-rw-r--r--dev-ruby/diff-lcs/diff-lcs-1.5.1.ebuild24
-rw-r--r--dev-ruby/diff-lcs/metadata.xml2
-rw-r--r--dev-ruby/digest/Manifest1
-rw-r--r--dev-ruby/digest/digest-3.1.1.ebuild29
-rw-r--r--dev-ruby/digest/metadata.xml11
-rw-r--r--dev-ruby/diva/Manifest4
-rw-r--r--dev-ruby/diva/diva-0.3.2.ebuild25
-rw-r--r--dev-ruby/diva/diva-1.0.0.ebuild24
-rw-r--r--dev-ruby/diva/diva-1.1.1-r1.ebuild33
-rw-r--r--dev-ruby/diva/diva-2.0.1.ebuild33
-rw-r--r--dev-ruby/diva/metadata.xml4
-rw-r--r--dev-ruby/dnsruby/Manifest6
-rw-r--r--dev-ruby/dnsruby/dnsruby-1.61.2.ebuild33
-rw-r--r--dev-ruby/dnsruby/dnsruby-1.61.3.ebuild35
-rw-r--r--dev-ruby/dnsruby/dnsruby-1.70.0.ebuild35
-rw-r--r--dev-ruby/dnsruby/dnsruby-1.71.0.ebuild35
-rw-r--r--dev-ruby/dnsruby/dnsruby-1.72.0.ebuild35
-rw-r--r--dev-ruby/dnsruby/dnsruby-1.72.1.ebuild35
-rw-r--r--dev-ruby/dnsruby/metadata.xml2
-rw-r--r--dev-ruby/docile/Manifest3
-rw-r--r--dev-ruby/docile/docile-1.3.1.ebuild31
-rw-r--r--dev-ruby/docile/docile-1.3.2.ebuild31
-rw-r--r--dev-ruby/docile/docile-1.4.0-r1.ebuild33
-rw-r--r--dev-ruby/docile/metadata.xml14
-rw-r--r--dev-ruby/docker-api/Manifest1
-rw-r--r--dev-ruby/docker-api/docker-api-2.2.0.ebuild38
-rw-r--r--dev-ruby/docker-api/metadata.xml11
-rw-r--r--dev-ruby/domain_name/Manifest3
-rw-r--r--dev-ruby/domain_name/domain_name-0.5.20180417.ebuild46
-rw-r--r--dev-ruby/domain_name/domain_name-0.5.20190701-r2.ebuild50
-rw-r--r--dev-ruby/domain_name/domain_name-0.5.20190701.ebuild46
-rw-r--r--dev-ruby/domain_name/domain_name-0.6.20231109.ebuild44
-rw-r--r--dev-ruby/domain_name/domain_name-0.6.20240107.ebuild43
-rw-r--r--dev-ruby/domain_name/files/domain_name-0.5.20190701-drop-unf.patch126
-rw-r--r--dev-ruby/domain_name/metadata.xml2
-rw-r--r--dev-ruby/dotenv/Manifest3
-rw-r--r--dev-ruby/dotenv/dotenv-2.7.3.ebuild35
-rw-r--r--dev-ruby/dotenv/dotenv-2.7.4.ebuild35
-rw-r--r--dev-ruby/dotenv/dotenv-2.7.5.ebuild34
-rw-r--r--dev-ruby/dotenv/metadata.xml11
-rw-r--r--dev-ruby/drb/Manifest2
-rw-r--r--dev-ruby/drb/drb-2.2.0.ebuild27
-rw-r--r--dev-ruby/drb/drb-2.2.1.ebuild26
-rw-r--r--dev-ruby/drb/metadata.xml11
-rw-r--r--dev-ruby/dry-core/Manifest1
-rw-r--r--dev-ruby/dry-core/dry-core-1.0.1.ebuild35
-rw-r--r--dev-ruby/dry-core/metadata.xml12
-rw-r--r--dev-ruby/dry-inflector/Manifest1
-rw-r--r--dev-ruby/dry-inflector/dry-inflector-1.0.0.ebuild30
-rw-r--r--dev-ruby/dry-inflector/metadata.xml11
-rw-r--r--dev-ruby/dry-logic/Manifest1
-rw-r--r--dev-ruby/dry-logic/dry-logic-1.5.0.ebuild36
-rw-r--r--dev-ruby/dry-logic/metadata.xml11
-rw-r--r--dev-ruby/dry-monads/Manifest1
-rw-r--r--dev-ruby/dry-monads/dry-monads-1.6.0.ebuild35
-rw-r--r--dev-ruby/dry-monads/metadata.xml11
-rw-r--r--dev-ruby/dry-struct/Manifest1
-rw-r--r--dev-ruby/dry-struct/dry-struct-1.6.0.ebuild44
-rw-r--r--dev-ruby/dry-struct/metadata.xml11
-rw-r--r--dev-ruby/dry-types/Manifest1
-rw-r--r--dev-ruby/dry-types/dry-types-1.7.2.ebuild39
-rw-r--r--dev-ruby/dry-types/metadata.xml11
-rw-r--r--dev-ruby/duktape-rb/Manifest1
-rw-r--r--dev-ruby/duktape-rb/duktape-rb-2.7.0.0.ebuild48
-rw-r--r--dev-ruby/duktape-rb/files/duktape-rb-2.3.0.0_use-system-duktape.patch79
-rw-r--r--dev-ruby/duktape-rb/metadata.xml11
-rw-r--r--dev-ruby/dust/dust-0.1.7-r2.ebuild31
-rw-r--r--dev-ruby/dust/dust-0.1.7-r3.ebuild30
-rw-r--r--dev-ruby/dust/metadata.xml2
-rw-r--r--dev-ruby/ecma-re-validator/Manifest3
-rw-r--r--dev-ruby/ecma-re-validator/ecma-re-validator-0.1.2.ebuild26
-rw-r--r--dev-ruby/ecma-re-validator/ecma-re-validator-0.2.0.ebuild26
-rw-r--r--dev-ruby/ecma-re-validator/ecma-re-validator-0.4.0.ebuild25
-rw-r--r--dev-ruby/ecma-re-validator/metadata.xml2
-rw-r--r--dev-ruby/ed25519/Manifest2
-rw-r--r--dev-ruby/ed25519/ed25519-1.2.4.ebuild35
-rw-r--r--dev-ruby/ed25519/ed25519-1.3.0.ebuild29
-rw-r--r--dev-ruby/ed25519/metadata.xml2
-rw-r--r--dev-ruby/elastic-transport/Manifest6
-rw-r--r--dev-ruby/elastic-transport/elastic-transport-8.2.2.ebuild77
-rw-r--r--dev-ruby/elastic-transport/elastic-transport-8.2.3.ebuild77
-rw-r--r--dev-ruby/elastic-transport/elastic-transport-8.2.4.ebuild77
-rw-r--r--dev-ruby/elastic-transport/elastic-transport-8.3.0.ebuild77
-rw-r--r--dev-ruby/elastic-transport/elastic-transport-8.3.1.ebuild77
-rw-r--r--dev-ruby/elastic-transport/elastic-transport-8.3.2.ebuild77
-rw-r--r--dev-ruby/elastic-transport/metadata.xml10
-rw-r--r--dev-ruby/elasticsearch-api/Manifest12
-rw-r--r--dev-ruby/elasticsearch-api/elasticsearch-api-6.1.0.ebuild50
-rw-r--r--dev-ruby/elasticsearch-api/elasticsearch-api-6.3.0.ebuild50
-rw-r--r--dev-ruby/elasticsearch-api/elasticsearch-api-6.3.1.ebuild56
-rw-r--r--dev-ruby/elasticsearch-api/elasticsearch-api-6.8.0.ebuild56
-rw-r--r--dev-ruby/elasticsearch-api/elasticsearch-api-6.8.3.ebuild60
-rw-r--r--dev-ruby/elasticsearch-api/elasticsearch-api-7.17.10.ebuild58
-rw-r--r--dev-ruby/elasticsearch-api/elasticsearch-api-7.17.8.ebuild61
-rw-r--r--dev-ruby/elasticsearch-api/elasticsearch-api-7.17.9.ebuild61
-rw-r--r--dev-ruby/elasticsearch-api/elasticsearch-api-8.10.0.ebuild62
-rw-r--r--dev-ruby/elasticsearch-api/elasticsearch-api-8.12.2.ebuild65
-rw-r--r--dev-ruby/elasticsearch-api/elasticsearch-api-8.13.0.ebuild65
-rw-r--r--dev-ruby/elasticsearch-api/elasticsearch-api-8.9.0.ebuild61
-rw-r--r--dev-ruby/elasticsearch-api/metadata.xml11
-rw-r--r--dev-ruby/elasticsearch-transport/Manifest9
-rw-r--r--dev-ruby/elasticsearch-transport/elasticsearch-transport-6.1.0.ebuild54
-rw-r--r--dev-ruby/elasticsearch-transport/elasticsearch-transport-6.3.0.ebuild54
-rw-r--r--dev-ruby/elasticsearch-transport/elasticsearch-transport-6.3.1.ebuild54
-rw-r--r--dev-ruby/elasticsearch-transport/elasticsearch-transport-6.8.0.ebuild54
-rw-r--r--dev-ruby/elasticsearch-transport/elasticsearch-transport-6.8.3-r1.ebuild54
-rw-r--r--dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.10.ebuild76
-rw-r--r--dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.7.ebuild69
-rw-r--r--dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.8.ebuild69
-rw-r--r--dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.9.ebuild70
-rw-r--r--dev-ruby/elasticsearch-transport/metadata.xml11
-rw-r--r--dev-ruby/elasticsearch/Manifest12
-rw-r--r--dev-ruby/elasticsearch/elasticsearch-6.1.0.ebuild51
-rw-r--r--dev-ruby/elasticsearch/elasticsearch-6.3.0.ebuild51
-rw-r--r--dev-ruby/elasticsearch/elasticsearch-6.3.1.ebuild51
-rw-r--r--dev-ruby/elasticsearch/elasticsearch-6.8.0.ebuild51
-rw-r--r--dev-ruby/elasticsearch/elasticsearch-6.8.3.ebuild51
-rw-r--r--dev-ruby/elasticsearch/elasticsearch-7.17.10.ebuild63
-rw-r--r--dev-ruby/elasticsearch/elasticsearch-7.17.8.ebuild55
-rw-r--r--dev-ruby/elasticsearch/elasticsearch-7.17.9.ebuild55
-rw-r--r--dev-ruby/elasticsearch/elasticsearch-8.10.0.ebuild54
-rw-r--r--dev-ruby/elasticsearch/elasticsearch-8.12.2.ebuild55
-rw-r--r--dev-ruby/elasticsearch/elasticsearch-8.13.0.ebuild55
-rw-r--r--dev-ruby/elasticsearch/elasticsearch-8.9.0.ebuild54
-rw-r--r--dev-ruby/elasticsearch/metadata.xml11
-rw-r--r--dev-ruby/em-websocket/Manifest2
-rw-r--r--dev-ruby/em-websocket/em-websocket-0.5.1.ebuild48
-rw-r--r--dev-ruby/em-websocket/em-websocket-0.5.3-r1.ebuild46
-rw-r--r--dev-ruby/em-websocket/metadata.xml6
-rw-r--r--dev-ruby/equalizer/equalizer-0.0.11-r2.ebuild27
-rw-r--r--dev-ruby/equalizer/equalizer-0.0.11.ebuild27
-rw-r--r--dev-ruby/equalizer/metadata.xml2
-rw-r--r--dev-ruby/equatable/Manifest4
-rw-r--r--dev-ruby/equatable/equatable-0.5.0.ebuild20
-rw-r--r--dev-ruby/equatable/equatable-0.6.0.ebuild24
-rw-r--r--dev-ruby/equatable/equatable-0.6.1.ebuild24
-rw-r--r--dev-ruby/equatable/equatable-0.7.0-r1.ebuild26
-rw-r--r--dev-ruby/equatable/metadata.xml4
-rw-r--r--dev-ruby/erubi/Manifest4
-rw-r--r--dev-ruby/erubi/erubi-1.12.0.ebuild25
-rw-r--r--dev-ruby/erubi/erubi-1.7.0.ebuild23
-rw-r--r--dev-ruby/erubi/erubi-1.7.1.ebuild23
-rw-r--r--dev-ruby/erubi/erubi-1.8.0.ebuild23
-rw-r--r--dev-ruby/erubi/metadata.xml4
-rw-r--r--dev-ruby/erubis/erubis-2.7.0-r2.ebuild39
-rw-r--r--dev-ruby/erubis/erubis-2.7.0-r4.ebuild39
-rw-r--r--dev-ruby/erubis/metadata.xml2
-rw-r--r--dev-ruby/escape_utils/Manifest1
-rw-r--r--dev-ruby/escape_utils/escape_utils-1.2.1.ebuild39
-rw-r--r--dev-ruby/escape_utils/metadata.xml11
-rw-r--r--dev-ruby/ethon/Manifest4
-rw-r--r--dev-ruby/ethon/ethon-0.11.0.ebuild33
-rw-r--r--dev-ruby/ethon/ethon-0.12.0.ebuild33
-rw-r--r--dev-ruby/ethon/ethon-0.15.0.ebuild33
-rw-r--r--dev-ruby/ethon/ethon-0.16.0.ebuild33
-rw-r--r--dev-ruby/ethon/metadata.xml2
-rw-r--r--dev-ruby/evented-spec/evented-spec-0.9.0-r1.ebuild27
-rw-r--r--dev-ruby/evented-spec/evented-spec-0.9.0.ebuild29
-rw-r--r--dev-ruby/evented-spec/metadata.xml2
-rw-r--r--dev-ruby/eventmachine/Manifest1
-rw-r--r--dev-ruby/eventmachine/eventmachine-1.2.7-r4.ebuild87
-rw-r--r--dev-ruby/eventmachine/eventmachine-1.2.7.ebuild92
-rw-r--r--dev-ruby/eventmachine/files/eventmachine-1.2.7-ruby3-process-status.patch94
-rw-r--r--dev-ruby/eventmachine/files/eventmachine-1.2.7-test-processes.patch73
-rw-r--r--dev-ruby/eventmachine/metadata.xml23
-rw-r--r--dev-ruby/excon/Manifest3
-rw-r--r--dev-ruby/excon/excon-0.104.0.ebuild54
-rw-r--r--dev-ruby/excon/excon-0.109.0.ebuild54
-rw-r--r--dev-ruby/excon/excon-0.110.0.ebuild54
-rw-r--r--dev-ruby/excon/metadata.xml15
-rw-r--r--dev-ruby/execjs/Manifest3
-rw-r--r--dev-ruby/execjs/execjs-2.7.0.ebuild40
-rw-r--r--dev-ruby/execjs/execjs-2.8.1-r1.ebuild35
-rw-r--r--dev-ruby/execjs/execjs-2.9.1.ebuild35
-rw-r--r--dev-ruby/execjs/metadata.xml2
-rw-r--r--dev-ruby/exifr/Manifest4
-rw-r--r--dev-ruby/exifr/exifr-1.3.4.ebuild21
-rw-r--r--dev-ruby/exifr/exifr-1.3.5.ebuild25
-rw-r--r--dev-ruby/exifr/exifr-1.3.6.ebuild25
-rw-r--r--dev-ruby/exifr/exifr-1.4.0.ebuild25
-rw-r--r--dev-ruby/exifr/metadata.xml2
-rw-r--r--dev-ruby/expression_parser/Manifest1
-rw-r--r--dev-ruby/expression_parser/expression_parser-0.9.0_p20130518.ebuild24
-rw-r--r--dev-ruby/expression_parser/metadata.xml11
-rw-r--r--dev-ruby/facter/Manifest11
-rw-r--r--dev-ruby/facter/facter-3.13.2-r1.ebuild112
-rw-r--r--dev-ruby/facter/facter-3.14.2.ebuild112
-rw-r--r--dev-ruby/facter/facter-3.14.24.ebuild101
-rw-r--r--dev-ruby/facter/facter-3.14.3.ebuild112
-rw-r--r--dev-ruby/facter/facter-3.9.2-r1.ebuild89
-rw-r--r--dev-ruby/facter/facter-4.4.1.ebuild46
-rw-r--r--dev-ruby/facter/facter-4.4.3-r1.ebuild55
-rw-r--r--dev-ruby/facter/facter-4.5.0.ebuild55
-rw-r--r--dev-ruby/facter/facter-4.5.1.ebuild55
-rw-r--r--dev-ruby/facter/facter-4.5.2.ebuild55
-rw-r--r--dev-ruby/facter/facter-4.7.0.ebuild55
-rw-r--r--dev-ruby/facter/facter-9999.ebuild110
-rw-r--r--dev-ruby/facter/files/00facterdir1
-rw-r--r--dev-ruby/facter/files/facter-3.14.23-gcc12.patch10
-rw-r--r--dev-ruby/facter/files/facter-3.14.6-fix-static-libcpp-hocon.patch9
-rw-r--r--dev-ruby/facter/files/facter-3.14.8-explicit-rspec-2.patch10
-rw-r--r--dev-ruby/facter/files/facter-4.4.3-rspec-gentoo-tweak.patch53
-rw-r--r--dev-ruby/facter/metadata.xml4
-rw-r--r--dev-ruby/factory_girl/Manifest1
-rw-r--r--dev-ruby/factory_girl/factory_girl-4.8.1.ebuild49
-rw-r--r--dev-ruby/factory_girl/metadata.xml11
-rw-r--r--dev-ruby/fake_ftp/Manifest1
-rw-r--r--dev-ruby/fake_ftp/fake_ftp-0.3.0.ebuild22
-rw-r--r--dev-ruby/fake_ftp/metadata.xml11
-rw-r--r--dev-ruby/fakefs/Manifest5
-rw-r--r--dev-ruby/fakefs/fakefs-0.19.2.ebuild43
-rw-r--r--dev-ruby/fakefs/fakefs-0.20.0.ebuild43
-rw-r--r--dev-ruby/fakefs/fakefs-0.20.1.ebuild43
-rw-r--r--dev-ruby/fakefs/fakefs-1.9.0.ebuild46
-rw-r--r--dev-ruby/fakefs/fakefs-2.5.0.ebuild49
-rw-r--r--dev-ruby/fakefs/metadata.xml5
-rw-r--r--dev-ruby/faker/Manifest7
-rw-r--r--dev-ruby/faker/faker-1.9.3.ebuild29
-rw-r--r--dev-ruby/faker/faker-1.9.5-r1.ebuild32
-rw-r--r--dev-ruby/faker/faker-1.9.6.ebuild29
-rw-r--r--dev-ruby/faker/faker-2.23.0-r1.ebuild31
-rw-r--r--dev-ruby/faker/faker-3.2.0.ebuild30
-rw-r--r--dev-ruby/faker/faker-3.2.1.ebuild30
-rw-r--r--dev-ruby/faker/faker-3.2.2.ebuild30
-rw-r--r--dev-ruby/faker/metadata.xml8
-rw-r--r--dev-ruby/fakeweb/Manifest1
-rw-r--r--dev-ruby/fakeweb/fakeweb-1.3.0.20170806.ebuild49
-rw-r--r--dev-ruby/fakeweb/metadata.xml11
-rw-r--r--dev-ruby/faraday-follow_redirects/Manifest1
-rw-r--r--dev-ruby/faraday-follow_redirects/faraday-follow_redirects-0.3.0.ebuild33
-rw-r--r--dev-ruby/faraday-follow_redirects/metadata.xml11
-rw-r--r--dev-ruby/faraday-httpclient/Manifest1
-rw-r--r--dev-ruby/faraday-httpclient/faraday-httpclient-1.0.1.ebuild32
-rw-r--r--dev-ruby/faraday-httpclient/metadata.xml11
-rw-r--r--dev-ruby/faraday-multipart/Manifest1
-rw-r--r--dev-ruby/faraday-multipart/faraday-multipart-1.0.4.ebuild35
-rw-r--r--dev-ruby/faraday-multipart/metadata.xml11
-rw-r--r--dev-ruby/faraday-net_http/Manifest4
-rw-r--r--dev-ruby/faraday-net_http/faraday-net_http-1.0.1.ebuild30
-rw-r--r--dev-ruby/faraday-net_http/faraday-net_http-2.1.0.ebuild30
-rw-r--r--dev-ruby/faraday-net_http/faraday-net_http-3.0.2.ebuild30
-rw-r--r--dev-ruby/faraday-net_http/faraday-net_http-3.1.0.ebuild30
-rw-r--r--dev-ruby/faraday-net_http/metadata.xml11
-rw-r--r--dev-ruby/faraday-net_http_persistent/Manifest2
-rw-r--r--dev-ruby/faraday-net_http_persistent/faraday-net_http_persistent-1.2.0.ebuild38
-rw-r--r--dev-ruby/faraday-net_http_persistent/faraday-net_http_persistent-2.1.0.ebuild39
-rw-r--r--dev-ruby/faraday-net_http_persistent/metadata.xml11
-rw-r--r--dev-ruby/faraday-patron/Manifest1
-rw-r--r--dev-ruby/faraday-patron/faraday-patron-1.0.0.ebuild38
-rw-r--r--dev-ruby/faraday-patron/metadata.xml11
-rw-r--r--dev-ruby/faraday-rack/Manifest1
-rw-r--r--dev-ruby/faraday-rack/faraday-rack-1.0.0.ebuild32
-rw-r--r--dev-ruby/faraday-rack/metadata.xml11
-rw-r--r--dev-ruby/faraday-retry/Manifest2
-rw-r--r--dev-ruby/faraday-retry/faraday-retry-1.0.3.ebuild37
-rw-r--r--dev-ruby/faraday-retry/faraday-retry-2.2.0.ebuild37
-rw-r--r--dev-ruby/faraday-retry/metadata.xml11
-rw-r--r--dev-ruby/faraday/Manifest13
-rw-r--r--dev-ruby/faraday/faraday-0.15.4.ebuild71
-rw-r--r--dev-ruby/faraday/faraday-1.10.3.ebuild111
-rw-r--r--dev-ruby/faraday/faraday-1.3.1.ebuild89
-rw-r--r--dev-ruby/faraday/faraday-1.4.3-r1.ebuild101
-rw-r--r--dev-ruby/faraday/faraday-1.5.1.ebuild102
-rw-r--r--dev-ruby/faraday/faraday-1.6.0.ebuild103
-rw-r--r--dev-ruby/faraday/faraday-1.9.3.ebuild106
-rw-r--r--dev-ruby/faraday/faraday-2.7.10.ebuild61
-rw-r--r--dev-ruby/faraday/faraday-2.7.11.ebuild62
-rw-r--r--dev-ruby/faraday/faraday-2.7.12.ebuild62
-rw-r--r--dev-ruby/faraday/faraday-2.8.0.ebuild62
-rw-r--r--dev-ruby/faraday/faraday-2.8.1.ebuild62
-rw-r--r--dev-ruby/faraday/faraday-2.9.0.ebuild62
-rw-r--r--dev-ruby/faraday/metadata.xml2
-rw-r--r--dev-ruby/faraday_middleware-multi_json/faraday_middleware-multi_json-0.0.6-r1.ebuild35
-rw-r--r--dev-ruby/faraday_middleware-multi_json/faraday_middleware-multi_json-0.0.6-r3.ebuild34
-rw-r--r--dev-ruby/faraday_middleware-multi_json/metadata.xml2
-rw-r--r--dev-ruby/faraday_middleware/Manifest3
-rw-r--r--dev-ruby/faraday_middleware/faraday_middleware-0.12.2.ebuild62
-rw-r--r--dev-ruby/faraday_middleware/faraday_middleware-0.13.1.ebuild66
-rw-r--r--dev-ruby/faraday_middleware/faraday_middleware-1.2.0-r1.ebuild70
-rw-r--r--dev-ruby/faraday_middleware/faraday_middleware-1.2.0.ebuild69
-rw-r--r--dev-ruby/faraday_middleware/metadata.xml5
-rw-r--r--dev-ruby/fast-stemmer/fast-stemmer-1.0.2-r2.ebuild35
-rw-r--r--dev-ruby/fast-stemmer/fast-stemmer-1.0.2-r4.ebuild27
-rw-r--r--dev-ruby/fast-stemmer/metadata.xml2
-rw-r--r--dev-ruby/fast_gettext/Manifest7
-rw-r--r--dev-ruby/fast_gettext/fast_gettext-1.6.0.ebuild55
-rw-r--r--dev-ruby/fast_gettext/fast_gettext-1.7.0.ebuild55
-rw-r--r--dev-ruby/fast_gettext/fast_gettext-1.8.0.ebuild55
-rw-r--r--dev-ruby/fast_gettext/fast_gettext-2.0.0.ebuild57
-rw-r--r--dev-ruby/fast_gettext/fast_gettext-2.0.1.ebuild57
-rw-r--r--dev-ruby/fast_gettext/fast_gettext-2.2.0.ebuild60
-rw-r--r--dev-ruby/fast_gettext/fast_gettext-2.3.0.ebuild52
-rw-r--r--dev-ruby/fast_gettext/metadata.xml2
-rw-r--r--dev-ruby/fast_xs/Manifest1
-rw-r--r--dev-ruby/fast_xs/fast_xs-0.8.0-r2.ebuild46
-rw-r--r--dev-ruby/fast_xs/files/fast_xs-0.8.0+ruby-1.9.patch23
-rw-r--r--dev-ruby/fast_xs/metadata.xml11
-rw-r--r--dev-ruby/fattr/Manifest1
-rw-r--r--dev-ruby/fattr/fattr-2.3.0.ebuild31
-rw-r--r--dev-ruby/fattr/fattr-2.4.0-r1.ebuild30
-rw-r--r--dev-ruby/fattr/fattr-2.4.0.ebuild31
-rw-r--r--dev-ruby/fattr/metadata.xml4
-rw-r--r--dev-ruby/fcgi/Manifest2
-rw-r--r--dev-ruby/fcgi/fcgi-0.9.2.1-r1.ebuild33
-rw-r--r--dev-ruby/fcgi/fcgi-0.9.2.2.ebuild26
-rw-r--r--dev-ruby/fcgi/metadata.xml2
-rw-r--r--dev-ruby/ferret/Manifest1
-rw-r--r--dev-ruby/ferret/ferret-0.11.8.7.ebuild52
-rw-r--r--dev-ruby/ferret/metadata.xml11
-rw-r--r--dev-ruby/ffaker/Manifest6
-rw-r--r--dev-ruby/ffaker/ffaker-2.10.0.ebuild20
-rw-r--r--dev-ruby/ffaker/ffaker-2.11.0.ebuild20
-rw-r--r--dev-ruby/ffaker/ffaker-2.21.0.ebuild23
-rw-r--r--dev-ruby/ffaker/ffaker-2.22.0.ebuild24
-rw-r--r--dev-ruby/ffaker/ffaker-2.23.0.ebuild24
-rw-r--r--dev-ruby/ffaker/ffaker-2.9.0.ebuild20
-rw-r--r--dev-ruby/ffaker/metadata.xml5
-rw-r--r--dev-ruby/ffi-compiler/Manifest2
-rw-r--r--dev-ruby/ffi-compiler/ffi-compiler-1.2.1.ebuild20
-rw-r--r--dev-ruby/ffi-compiler/ffi-compiler-1.3.2.ebuild25
-rw-r--r--dev-ruby/ffi-compiler/metadata.xml11
-rw-r--r--dev-ruby/ffi/Manifest7
-rw-r--r--dev-ruby/ffi/ffi-1.10.0.ebuild64
-rw-r--r--dev-ruby/ffi/ffi-1.11.0.ebuild64
-rw-r--r--dev-ruby/ffi/ffi-1.11.1.ebuild64
-rw-r--r--dev-ruby/ffi/ffi-1.15.5-r1.ebuild71
-rw-r--r--dev-ruby/ffi/ffi-1.15.5-r2.ebuild74
-rw-r--r--dev-ruby/ffi/ffi-1.16.2.ebuild66
-rw-r--r--dev-ruby/ffi/ffi-1.16.3.ebuild66
-rw-r--r--dev-ruby/ffi/ffi-1.9.25.ebuild64
-rw-r--r--dev-ruby/ffi/files/add-types.conf-for-hppa2.0-linux.patch191
-rw-r--r--dev-ruby/ffi/files/backport-pr-962.patch48
-rw-r--r--dev-ruby/ffi/files/fix-regenerate-types-conf.patch23
-rw-r--r--dev-ruby/ffi/files/pr-957-sparc.patch42
-rw-r--r--dev-ruby/ffi/files/use-libffi-closure-allocations-on-hppa.patch21
-rw-r--r--dev-ruby/ffi/metadata.xml2
-rw-r--r--dev-ruby/fiber-annotation/Manifest1
-rw-r--r--dev-ruby/fiber-annotation/fiber-annotation-0.2.0.ebuild28
-rw-r--r--dev-ruby/fiber-annotation/metadata.xml12
-rw-r--r--dev-ruby/fiber-local/Manifest1
-rw-r--r--dev-ruby/fiber-local/fiber-local-1.0.0.ebuild27
-rw-r--r--dev-ruby/fiber-local/metadata.xml11
-rw-r--r--dev-ruby/file-tail/file-tail-1.2.0-r1.ebuild38
-rw-r--r--dev-ruby/file-tail/file-tail-1.2.0.ebuild34
-rw-r--r--dev-ruby/file-tail/metadata.xml2
-rw-r--r--dev-ruby/filesize/filesize-0.2.0-r1.ebuild19
-rw-r--r--dev-ruby/filesize/filesize-0.2.0.ebuild20
-rw-r--r--dev-ruby/filesize/metadata.xml8
-rw-r--r--dev-ruby/fileutils/Manifest2
-rw-r--r--dev-ruby/fileutils/fileutils-1.7.1.ebuild27
-rw-r--r--dev-ruby/fileutils/fileutils-1.7.2.ebuild29
-rw-r--r--dev-ruby/fileutils/metadata.xml11
-rw-r--r--dev-ruby/filigree/Manifest1
-rw-r--r--dev-ruby/filigree/filigree-0.4.1-r1.ebuild22
-rw-r--r--dev-ruby/filigree/metadata.xml11
-rw-r--r--dev-ruby/fivemat/Manifest1
-rw-r--r--dev-ruby/fivemat/fivemat-1.3.7.ebuild21
-rw-r--r--dev-ruby/fivemat/metadata.xml15
-rw-r--r--dev-ruby/flexmock/Manifest1
-rw-r--r--dev-ruby/flexmock/files/flexmock-2.3.6-ruby30-1.patch25
-rw-r--r--dev-ruby/flexmock/files/flexmock-2.3.6-ruby30-2.patch25
-rw-r--r--dev-ruby/flexmock/files/flexmock-2.3.6-ruby30-3.patch23
-rw-r--r--dev-ruby/flexmock/flexmock-2.3.6-r2.ebuild44
-rw-r--r--dev-ruby/flexmock/flexmock-2.3.6.ebuild38
-rw-r--r--dev-ruby/flexmock/flexmock-2.3.8.ebuild44
-rw-r--r--dev-ruby/flexmock/metadata.xml2
-rw-r--r--dev-ruby/flickraw/Manifest2
-rw-r--r--dev-ruby/flickraw/flickraw-0.9.10.ebuild21
-rw-r--r--dev-ruby/flickraw/flickraw-0.9.9.ebuild21
-rw-r--r--dev-ruby/flickraw/metadata.xml11
-rw-r--r--dev-ruby/flog/Manifest2
-rw-r--r--dev-ruby/flog/flog-4.6.2.ebuild29
-rw-r--r--dev-ruby/flog/flog-4.8.0.ebuild28
-rw-r--r--dev-ruby/flog/metadata.xml5
-rw-r--r--dev-ruby/font-awesome-rails/Manifest2
-rw-r--r--dev-ruby/font-awesome-rails/font-awesome-rails-4.7.0.5.ebuild22
-rw-r--r--dev-ruby/font-awesome-rails/font-awesome-rails-4.7.0.8.ebuild21
-rw-r--r--dev-ruby/font-awesome-rails/metadata.xml4
-rw-r--r--dev-ruby/forgery/Manifest2
-rw-r--r--dev-ruby/forgery/forgery-0.7.0.ebuild23
-rw-r--r--dev-ruby/forgery/forgery-0.8.1-r1.ebuild22
-rw-r--r--dev-ruby/forgery/metadata.xml2
-rw-r--r--dev-ruby/forwardable-extended/forwardable-extended-2.6.0-r1.ebuild27
-rw-r--r--dev-ruby/forwardable-extended/forwardable-extended-2.6.0-r2.ebuild26
-rw-r--r--dev-ruby/forwardable-extended/metadata.xml4
-rw-r--r--dev-ruby/forwardable/Manifest1
-rw-r--r--dev-ruby/forwardable/forwardable-1.3.3.ebuild31
-rw-r--r--dev-ruby/forwardable/metadata.xml11
-rw-r--r--dev-ruby/fuubar/Manifest4
-rw-r--r--dev-ruby/fuubar/fuubar-2.3.2.ebuild32
-rw-r--r--dev-ruby/fuubar/fuubar-2.4.0.ebuild32
-rw-r--r--dev-ruby/fuubar/fuubar-2.4.1.ebuild32
-rw-r--r--dev-ruby/fuubar/fuubar-2.5.1-r1.ebuild30
-rw-r--r--dev-ruby/fuubar/metadata.xml4
-rw-r--r--dev-ruby/gettext-setup/Manifest3
-rw-r--r--dev-ruby/gettext-setup/gettext-setup-0.30.ebuild40
-rw-r--r--dev-ruby/gettext-setup/gettext-setup-0.31.ebuild39
-rw-r--r--dev-ruby/gettext-setup/gettext-setup-1.1.0.ebuild42
-rw-r--r--dev-ruby/gettext-setup/metadata.xml2
-rw-r--r--dev-ruby/gettext_i18n_rails/Manifest2
-rw-r--r--dev-ruby/gettext_i18n_rails/gettext_i18n_rails-1.12.0.ebuild46
-rw-r--r--dev-ruby/gettext_i18n_rails/gettext_i18n_rails-1.8.0.ebuild35
-rw-r--r--dev-ruby/gettext_i18n_rails/metadata.xml2
-rw-r--r--dev-ruby/gh/Manifest1
-rw-r--r--dev-ruby/gh/gh-0.15.1-r2.ebuild42
-rw-r--r--dev-ruby/gh/metadata.xml11
-rw-r--r--dev-ruby/gherkin/Manifest1
-rw-r--r--dev-ruby/gherkin/gherkin-5.1.0.ebuild24
-rw-r--r--dev-ruby/gherkin/metadata.xml11
-rw-r--r--dev-ruby/gist/Manifest2
-rw-r--r--dev-ruby/gist/gist-5.0.0.ebuild22
-rw-r--r--dev-ruby/gist/gist-6.0.0-r1.ebuild21
-rw-r--r--dev-ruby/gist/metadata.xml5
-rw-r--r--dev-ruby/git/Manifest5
-rw-r--r--dev-ruby/git/git-1.18.0.ebuild42
-rw-r--r--dev-ruby/git/git-1.19.0.ebuild42
-rw-r--r--dev-ruby/git/git-1.19.1.ebuild42
-rw-r--r--dev-ruby/git/git-1.4.0.ebuild33
-rw-r--r--dev-ruby/git/git-1.5.0.ebuild33
-rw-r--r--dev-ruby/git/metadata.xml5
-rw-r--r--dev-ruby/github_api/Manifest1
-rw-r--r--dev-ruby/github_api/github_api-0.18.2.ebuild30
-rw-r--r--dev-ruby/github_api/metadata.xml11
-rw-r--r--dev-ruby/globalid/Manifest4
-rw-r--r--dev-ruby/globalid/globalid-0.4.1.ebuild26
-rw-r--r--dev-ruby/globalid/globalid-0.4.2.ebuild26
-rw-r--r--dev-ruby/globalid/globalid-1.1.0-r1.ebuild29
-rw-r--r--dev-ruby/globalid/globalid-1.2.1.ebuild27
-rw-r--r--dev-ruby/globalid/metadata.xml2
-rw-r--r--dev-ruby/gnuplot/gnuplot-2.6.2-r2.ebuild34
-rw-r--r--dev-ruby/gnuplot/gnuplot-2.6.2-r3.ebuild34
-rw-r--r--dev-ruby/gnuplot/metadata.xml2
-rw-r--r--dev-ruby/google-protobuf/Manifest6
-rw-r--r--dev-ruby/google-protobuf/google-protobuf-3.21.12.ebuild39
-rw-r--r--dev-ruby/google-protobuf/google-protobuf-3.24.4.ebuild39
-rw-r--r--dev-ruby/google-protobuf/google-protobuf-3.6.1.ebuild37
-rw-r--r--dev-ruby/google-protobuf/google-protobuf-3.8.0.ebuild37
-rw-r--r--dev-ruby/google-protobuf/google-protobuf-3.9.0.ebuild37
-rw-r--r--dev-ruby/google-protobuf/google-protobuf-3.9.1.ebuild36
-rw-r--r--dev-ruby/google-protobuf/metadata.xml5
-rw-r--r--dev-ruby/googleapis-common-protos-types/Manifest1
-rw-r--r--dev-ruby/googleapis-common-protos-types/googleapis-common-protos-types-1.8.0.ebuild22
-rw-r--r--dev-ruby/googleapis-common-protos-types/metadata.xml11
-rw-r--r--dev-ruby/gpgme/Manifest4
-rw-r--r--dev-ruby/gpgme/gpgme-2.0.18.ebuild57
-rw-r--r--dev-ruby/gpgme/gpgme-2.0.22.ebuild55
-rw-r--r--dev-ruby/gpgme/gpgme-2.0.23.ebuild55
-rw-r--r--dev-ruby/gpgme/gpgme-2.0.24.ebuild55
-rw-r--r--dev-ruby/gpgme/metadata.xml2
-rw-r--r--dev-ruby/grpc/Manifest2
-rw-r--r--dev-ruby/grpc/grpc-1.54.0.ebuild31
-rw-r--r--dev-ruby/grpc/grpc-1.59.2.ebuild31
-rw-r--r--dev-ruby/grpc/metadata.xml11
-rw-r--r--dev-ruby/gruff/Manifest4
-rw-r--r--dev-ruby/gruff/gruff-0.22.0.ebuild53
-rw-r--r--dev-ruby/gruff/gruff-0.23.0.ebuild53
-rw-r--r--dev-ruby/gruff/gruff-0.24.0.ebuild53
-rw-r--r--dev-ruby/gruff/gruff-0.7.0-r1.ebuild49
-rw-r--r--dev-ruby/gruff/gruff-0.7.0-r2.ebuild51
-rw-r--r--dev-ruby/gruff/metadata.xml2
-rw-r--r--dev-ruby/haml-rails/Manifest4
-rw-r--r--dev-ruby/haml-rails/haml-rails-1.0.0.ebuild30
-rw-r--r--dev-ruby/haml-rails/haml-rails-2.0.0.ebuild30
-rw-r--r--dev-ruby/haml-rails/haml-rails-2.0.1.ebuild30
-rw-r--r--dev-ruby/haml-rails/haml-rails-2.1.0.ebuild31
-rw-r--r--dev-ruby/haml-rails/metadata.xml6
-rw-r--r--dev-ruby/haml/Manifest9
-rw-r--r--dev-ruby/haml/haml-4.0.7-r3.ebuild41
-rw-r--r--dev-ruby/haml/haml-5.0.4.ebuild57
-rw-r--r--dev-ruby/haml/haml-5.1.0.ebuild57
-rw-r--r--dev-ruby/haml/haml-5.1.1.ebuild57
-rw-r--r--dev-ruby/haml/haml-5.1.2.ebuild57
-rw-r--r--dev-ruby/haml/haml-5.2.2.ebuild53
-rw-r--r--dev-ruby/haml/haml-6.1.1-r1.ebuild59
-rw-r--r--dev-ruby/haml/haml-6.2.3.ebuild61
-rw-r--r--dev-ruby/haml/haml-6.3.0.ebuild61
-rw-r--r--dev-ruby/haml/metadata.xml14
-rw-r--r--dev-ruby/hamster/Manifest1
-rw-r--r--dev-ruby/hamster/hamster-3.0.0-r1.ebuild26
-rw-r--r--dev-ruby/hamster/metadata.xml11
-rw-r--r--dev-ruby/hashdiff/Manifest6
-rw-r--r--dev-ruby/hashdiff/hashdiff-0.3.8.ebuild25
-rw-r--r--dev-ruby/hashdiff/hashdiff-0.3.9.ebuild25
-rw-r--r--dev-ruby/hashdiff/hashdiff-0.4.0.ebuild25
-rw-r--r--dev-ruby/hashdiff/hashdiff-1.0.0.ebuild25
-rw-r--r--dev-ruby/hashdiff/hashdiff-1.0.1.ebuild24
-rw-r--r--dev-ruby/hashdiff/hashdiff-1.1.0.ebuild24
-rw-r--r--dev-ruby/hashdiff/metadata.xml2
-rw-r--r--dev-ruby/hashery/hashery-2.1.2-r1.ebuild30
-rw-r--r--dev-ruby/hashery/hashery-2.1.2.ebuild30
-rw-r--r--dev-ruby/hashery/metadata.xml2
-rw-r--r--dev-ruby/hashicorp-checkpoint/hashicorp-checkpoint-0.1.5-r2.ebuild34
-rw-r--r--dev-ruby/hashicorp-checkpoint/hashicorp-checkpoint-0.1.5-r3.ebuild34
-rw-r--r--dev-ruby/hashicorp-checkpoint/hashicorp-checkpoint-0.1.5.ebuild23
-rw-r--r--dev-ruby/hashicorp-checkpoint/metadata.xml16
-rw-r--r--dev-ruby/hashie/Manifest4
-rw-r--r--dev-ruby/hashie/files/hashie-5.0.0-ruby32-tests.patch71
-rw-r--r--dev-ruby/hashie/hashie-2.1.2-r1.ebuild28
-rw-r--r--dev-ruby/hashie/hashie-3.5.7.ebuild40
-rw-r--r--dev-ruby/hashie/hashie-3.6.0.ebuild40
-rw-r--r--dev-ruby/hashie/hashie-5.0.0.ebuild46
-rw-r--r--dev-ruby/hashie/metadata.xml5
-rw-r--r--dev-ruby/hashr/hashr-2.0.1-r1.ebuild24
-rw-r--r--dev-ruby/hashr/hashr-2.0.1.ebuild25
-rw-r--r--dev-ruby/hashr/metadata.xml2
-rw-r--r--dev-ruby/heredoc_unindent/heredoc_unindent-1.2.0-r2.ebuild27
-rw-r--r--dev-ruby/heredoc_unindent/heredoc_unindent-1.2.0.ebuild28
-rw-r--r--dev-ruby/heredoc_unindent/metadata.xml2
-rw-r--r--dev-ruby/hiera-eyaml-gpg/Manifest3
-rw-r--r--dev-ruby/hiera-eyaml-gpg/hiera-eyaml-gpg-0.7.2.ebuild25
-rw-r--r--dev-ruby/hiera-eyaml-gpg/hiera-eyaml-gpg-0.7.3.ebuild25
-rw-r--r--dev-ruby/hiera-eyaml-gpg/hiera-eyaml-gpg-0.7.4-r1.ebuild25
-rw-r--r--dev-ruby/hiera-eyaml-gpg/metadata.xml4
-rw-r--r--dev-ruby/hiera-eyaml-plaintext/hiera-eyaml-plaintext-0.6-r1.ebuild20
-rw-r--r--dev-ruby/hiera-eyaml-plaintext/hiera-eyaml-plaintext-0.6-r2.ebuild19
-rw-r--r--dev-ruby/hiera-eyaml-plaintext/metadata.xml2
-rw-r--r--dev-ruby/hiera-eyaml/Manifest2
-rw-r--r--dev-ruby/hiera-eyaml/hiera-eyaml-3.0.0.ebuild48
-rw-r--r--dev-ruby/hiera-eyaml/hiera-eyaml-3.4.0.ebuild56
-rw-r--r--dev-ruby/hiera-eyaml/metadata.xml4
-rw-r--r--dev-ruby/hiera/Manifest5
-rw-r--r--dev-ruby/hiera/hiera-3.12.0.ebuild24
-rw-r--r--dev-ruby/hiera/hiera-3.4.3.ebuild25
-rw-r--r--dev-ruby/hiera/hiera-3.4.4.ebuild25
-rw-r--r--dev-ruby/hiera/hiera-3.4.5.ebuild25
-rw-r--r--dev-ruby/hiera/hiera-3.5.0.ebuild25
-rw-r--r--dev-ruby/hiera/metadata.xml27
-rw-r--r--dev-ruby/highline/Manifest5
-rw-r--r--dev-ruby/highline/highline-1.7.8.ebuild41
-rw-r--r--dev-ruby/highline/highline-2.0.1.ebuild34
-rw-r--r--dev-ruby/highline/highline-2.0.2.ebuild34
-rw-r--r--dev-ruby/highline/highline-2.1.0.ebuild34
-rw-r--r--dev-ruby/highline/highline-3.0.1.ebuild36
-rw-r--r--dev-ruby/highline/metadata.xml2
-rw-r--r--dev-ruby/hipchat/Manifest1
-rw-r--r--dev-ruby/hipchat/hipchat-1.6.0.ebuild36
-rw-r--r--dev-ruby/hipchat/metadata.xml11
-rw-r--r--dev-ruby/hiredis/Manifest2
-rw-r--r--dev-ruby/hiredis/files/hiredis-0.6.1-unvendor-hiredis.patch20
-rw-r--r--dev-ruby/hiredis/hiredis-0.6.1.ebuild46
-rw-r--r--dev-ruby/hiredis/hiredis-0.6.3.ebuild46
-rw-r--r--dev-ruby/hiredis/metadata.xml11
-rw-r--r--dev-ruby/histogram/Manifest1
-rw-r--r--dev-ruby/histogram/histogram-0.2.4.1-r1.ebuild25
-rw-r--r--dev-ruby/histogram/metadata.xml11
-rw-r--r--dev-ruby/hitimes/Manifest4
-rw-r--r--dev-ruby/hitimes/hitimes-1.2.6.ebuild35
-rw-r--r--dev-ruby/hitimes/hitimes-1.3.0.ebuild37
-rw-r--r--dev-ruby/hitimes/hitimes-1.3.1.ebuild37
-rw-r--r--dev-ruby/hitimes/hitimes-2.0.0-r1.ebuild27
-rw-r--r--dev-ruby/hitimes/metadata.xml2
-rw-r--r--dev-ruby/hocon/Manifest2
-rw-r--r--dev-ruby/hocon/hocon-1.2.5.ebuild24
-rw-r--r--dev-ruby/hocon/hocon-1.4.0.ebuild24
-rw-r--r--dev-ruby/hocon/metadata.xml5
-rw-r--r--dev-ruby/hoe-seattlerb/Manifest1
-rw-r--r--dev-ruby/hoe-seattlerb/hoe-seattlerb-1.3.5.ebuild26
-rw-r--r--dev-ruby/hoe-seattlerb/metadata.xml11
-rw-r--r--dev-ruby/hoe/Manifest8
-rw-r--r--dev-ruby/hoe/hoe-3.16.0.ebuild48
-rw-r--r--dev-ruby/hoe/hoe-3.17.1.ebuild48
-rw-r--r--dev-ruby/hoe/hoe-3.17.2.ebuild48
-rw-r--r--dev-ruby/hoe/hoe-3.18.0.ebuild48
-rw-r--r--dev-ruby/hoe/hoe-4.0.4.ebuild53
-rw-r--r--dev-ruby/hoe/hoe-4.0.5.ebuild53
-rw-r--r--dev-ruby/hoe/hoe-4.1.0.ebuild53
-rw-r--r--dev-ruby/hoe/hoe-4.2.0.ebuild53
-rw-r--r--dev-ruby/hoe/metadata.xml5
-rw-r--r--dev-ruby/hpricot/Manifest1
-rw-r--r--dev-ruby/hpricot/files/hpricot-0.8.6-fast_xs.patch24
-rw-r--r--dev-ruby/hpricot/hpricot-0.8.6-r5.ebuild61
-rw-r--r--dev-ruby/hpricot/metadata.xml8
-rw-r--r--dev-ruby/html-pipeline/Manifest1
-rw-r--r--dev-ruby/html-pipeline/html-pipeline-2.14.3.ebuild42
-rw-r--r--dev-ruby/html-pipeline/metadata.xml11
-rw-r--r--dev-ruby/html2haml/Manifest2
-rw-r--r--dev-ruby/html2haml/html2haml-2.2.0.ebuild35
-rw-r--r--dev-ruby/html2haml/html2haml-2.3.0.ebuild39
-rw-r--r--dev-ruby/html2haml/metadata.xml2
-rw-r--r--dev-ruby/htmlentities/htmlentities-4.3.4-r1.ebuild24
-rw-r--r--dev-ruby/htmlentities/htmlentities-4.3.4.ebuild25
-rw-r--r--dev-ruby/htmlentities/metadata.xml2
-rw-r--r--dev-ruby/http-accept/Manifest4
-rw-r--r--dev-ruby/http-accept/http-accept-1.7.0-r1.ebuild25
-rw-r--r--dev-ruby/http-accept/http-accept-2.1.0.ebuild24
-rw-r--r--dev-ruby/http-accept/http-accept-2.2.0.ebuild27
-rw-r--r--dev-ruby/http-accept/http-accept-2.2.1.ebuild27
-rw-r--r--dev-ruby/http-accept/metadata.xml2
-rw-r--r--dev-ruby/http-cookie/Manifest2
-rw-r--r--dev-ruby/http-cookie/http-cookie-1.0.3.ebuild29
-rw-r--r--dev-ruby/http-cookie/http-cookie-1.0.5-r1.ebuild30
-rw-r--r--dev-ruby/http-cookie/metadata.xml2
-rw-r--r--dev-ruby/http-form_data/Manifest3
-rw-r--r--dev-ruby/http-form_data/http-form_data-1.0.3.ebuild24
-rw-r--r--dev-ruby/http-form_data/http-form_data-2.1.1.ebuild24
-rw-r--r--dev-ruby/http-form_data/http-form_data-2.3.0-r1.ebuild24
-rw-r--r--dev-ruby/http-form_data/metadata.xml2
-rw-r--r--dev-ruby/http-parser/Manifest1
-rw-r--r--dev-ruby/http-parser/http-parser-1.2.3-r1.ebuild34
-rw-r--r--dev-ruby/http-parser/metadata.xml11
-rw-r--r--dev-ruby/http/Manifest7
-rw-r--r--dev-ruby/http/http-0.9.8-r2.ebuild40
-rw-r--r--dev-ruby/http/http-3.3.0.ebuild43
-rw-r--r--dev-ruby/http/http-4.0.5.ebuild46
-rw-r--r--dev-ruby/http/http-4.1.0.ebuild46
-rw-r--r--dev-ruby/http/http-4.1.1.ebuild46
-rw-r--r--dev-ruby/http/http-5.1.1.ebuild58
-rw-r--r--dev-ruby/http/http-5.2.0.ebuild59
-rw-r--r--dev-ruby/http/metadata.xml4
-rw-r--r--dev-ruby/http_parser_rb/Manifest1
-rw-r--r--dev-ruby/http_parser_rb/http_parser_rb-0.6.0-r1.ebuild31
-rw-r--r--dev-ruby/http_parser_rb/http_parser_rb-0.6.0-r2.ebuild29
-rw-r--r--dev-ruby/http_parser_rb/http_parser_rb-0.8.0.ebuild29
-rw-r--r--dev-ruby/http_parser_rb/metadata.xml3
-rw-r--r--dev-ruby/httparty/Manifest3
-rw-r--r--dev-ruby/httparty/httparty-0.16.4.ebuild52
-rw-r--r--dev-ruby/httparty/httparty-0.17.0.ebuild52
-rw-r--r--dev-ruby/httparty/httparty-0.21.0.ebuild61
-rw-r--r--dev-ruby/httparty/metadata.xml5
-rw-r--r--dev-ruby/httpauth/httpauth-0.2.1-r1.ebuild25
-rw-r--r--dev-ruby/httpauth/httpauth-0.2.1.ebuild25
-rw-r--r--dev-ruby/httpauth/metadata.xml2
-rw-r--r--dev-ruby/httpclient/httpclient-2.8.3-r3.ebuild76
-rw-r--r--dev-ruby/httpclient/httpclient-2.8.3.ebuild64
-rw-r--r--dev-ruby/httpclient/metadata.xml2
-rw-r--r--dev-ruby/i18n/Manifest8
-rw-r--r--dev-ruby/i18n/files/i18n-0.7.0-frozen-classes.patch31
-rw-r--r--dev-ruby/i18n/i18n-0.7.0-r3.ebuild61
-rw-r--r--dev-ruby/i18n/i18n-0.9.5-r1.ebuild56
-rw-r--r--dev-ruby/i18n/i18n-1.0.1-r1.ebuild59
-rw-r--r--dev-ruby/i18n/i18n-1.13.0.ebuild62
-rw-r--r--dev-ruby/i18n/i18n-1.14.1.ebuild67
-rw-r--r--dev-ruby/i18n/i18n-1.14.3.ebuild67
-rw-r--r--dev-ruby/i18n/i18n-1.14.4.ebuild67
-rw-r--r--dev-ruby/i18n/i18n-1.6.0.ebuild59
-rw-r--r--dev-ruby/i18n/metadata.xml4
-rw-r--r--dev-ruby/ice_nine/ice_nine-0.11.2-r1.ebuild22
-rw-r--r--dev-ruby/ice_nine/ice_nine-0.11.2-r2.ebuild28
-rw-r--r--dev-ruby/ice_nine/ice_nine-0.11.2.ebuild22
-rw-r--r--dev-ruby/ice_nine/metadata.xml4
-rw-r--r--dev-ruby/idn-ruby/Manifest2
-rw-r--r--dev-ruby/idn-ruby/idn-ruby-0.1.0.ebuild43
-rw-r--r--dev-ruby/idn-ruby/idn-ruby-0.1.5.ebuild35
-rw-r--r--dev-ruby/idn-ruby/metadata.xml2
-rw-r--r--dev-ruby/image_processing/Manifest1
-rw-r--r--dev-ruby/image_processing/image_processing-1.12.2.ebuild48
-rw-r--r--dev-ruby/image_processing/metadata.xml11
-rw-r--r--dev-ruby/imagesize/imagesize-0.1.1_p20100902-r1.ebuild27
-rw-r--r--dev-ruby/imagesize/imagesize-0.1.1_p20100902-r2.ebuild26
-rw-r--r--dev-ruby/imagesize/metadata.xml2
-rw-r--r--dev-ruby/immutable-ruby/Manifest2
-rw-r--r--dev-ruby/immutable-ruby/immutable-ruby-0.1.0.ebuild33
-rw-r--r--dev-ruby/immutable-ruby/immutable-ruby-0.2.0.ebuild28
-rw-r--r--dev-ruby/immutable-ruby/metadata.xml12
-rw-r--r--dev-ruby/importmap-rails/Manifest2
-rw-r--r--dev-ruby/importmap-rails/importmap-rails-1.2.3.ebuild28
-rw-r--r--dev-ruby/importmap-rails/importmap-rails-2.0.1.ebuild26
-rw-r--r--dev-ruby/importmap-rails/metadata.xml12
-rw-r--r--dev-ruby/inflecto/Manifest1
-rw-r--r--dev-ruby/inflecto/inflecto-0.0.2.ebuild21
-rw-r--r--dev-ruby/inflecto/metadata.xml11
-rw-r--r--dev-ruby/inifile/Manifest1
-rw-r--r--dev-ruby/inifile/inifile-3.0.0.ebuild26
-rw-r--r--dev-ruby/inifile/metadata.xml11
-rw-r--r--dev-ruby/instance_storage/Manifest1
-rw-r--r--dev-ruby/instance_storage/instance_storage-1.0.0-r2.ebuild21
-rw-r--r--dev-ruby/instance_storage/instance_storage-1.0.0.ebuild22
-rw-r--r--dev-ruby/instance_storage/instance_storage-2.0.0-r1.ebuild23
-rw-r--r--dev-ruby/instance_storage/metadata.xml5
-rw-r--r--dev-ruby/instantiator/Manifest1
-rw-r--r--dev-ruby/instantiator/instantiator-0.0.7.ebuild25
-rw-r--r--dev-ruby/instantiator/metadata.xml11
-rw-r--r--dev-ruby/introspection/introspection-0.0.4-r1.ebuild28
-rw-r--r--dev-ruby/introspection/introspection-0.0.4-r2.ebuild28
-rw-r--r--dev-ruby/introspection/introspection-0.0.4.ebuild28
-rw-r--r--dev-ruby/introspection/metadata.xml5
-rw-r--r--dev-ruby/io-console/Manifest1
-rw-r--r--dev-ruby/io-console/io-console-0.7.2.ebuild43
-rw-r--r--dev-ruby/io-console/metadata.xml11
-rw-r--r--dev-ruby/io-event/Manifest7
-rw-r--r--dev-ruby/io-event/io-event-1.1.7.ebuild34
-rw-r--r--dev-ruby/io-event/io-event-1.2.2.ebuild36
-rw-r--r--dev-ruby/io-event/io-event-1.3.2.ebuild36
-rw-r--r--dev-ruby/io-event/io-event-1.3.3.ebuild36
-rw-r--r--dev-ruby/io-event/io-event-1.4.0.ebuild36
-rw-r--r--dev-ruby/io-event/io-event-1.4.4.ebuild36
-rw-r--r--dev-ruby/io-event/io-event-1.5.1.ebuild36
-rw-r--r--dev-ruby/io-event/metadata.xml14
-rw-r--r--dev-ruby/io-wait/Manifest1
-rw-r--r--dev-ruby/io-wait/io-wait-0.2.3.ebuild32
-rw-r--r--dev-ruby/io-wait/metadata.xml11
-rw-r--r--dev-ruby/iobuffer/Manifest1
-rw-r--r--dev-ruby/iobuffer/iobuffer-1.1.2-r3.ebuild40
-rw-r--r--dev-ruby/iobuffer/metadata.xml11
-rw-r--r--dev-ruby/ipaddr/Manifest2
-rw-r--r--dev-ruby/ipaddr/ipaddr-1.2.5.ebuild31
-rw-r--r--dev-ruby/ipaddr/ipaddr-1.2.6.ebuild31
-rw-r--r--dev-ruby/ipaddr/metadata.xml11
-rw-r--r--dev-ruby/irb/Manifest1
-rw-r--r--dev-ruby/irb/irb-1.11.1.ebuild59
-rw-r--r--dev-ruby/irb/metadata.xml11
-rw-r--r--dev-ruby/itextomml/Manifest3
-rw-r--r--dev-ruby/itextomml/itextomml-1.5.8.ebuild34
-rw-r--r--dev-ruby/itextomml/itextomml-1.6.0.ebuild34
-rw-r--r--dev-ruby/itextomml/itextomml-1.6.1.ebuild26
-rw-r--r--dev-ruby/itextomml/metadata.xml2
-rw-r--r--dev-ruby/jbuilder/Manifest2
-rw-r--r--dev-ruby/jbuilder/jbuilder-2.11.5.ebuild30
-rw-r--r--dev-ruby/jbuilder/jbuilder-2.9.1.ebuild26
-rw-r--r--dev-ruby/jbuilder/metadata.xml17
-rw-r--r--dev-ruby/jeweler/Manifest1
-rw-r--r--dev-ruby/jeweler/jeweler-2.3.9.ebuild68
-rw-r--r--dev-ruby/jeweler/metadata.xml8
-rw-r--r--dev-ruby/jmespath/Manifest2
-rw-r--r--dev-ruby/jmespath/jmespath-1.4.0.ebuild27
-rw-r--r--dev-ruby/jmespath/jmespath-1.6.2.ebuild28
-rw-r--r--dev-ruby/jmespath/metadata.xml2
-rw-r--r--dev-ruby/journey/Manifest1
-rw-r--r--dev-ruby/journey/files/journey-1.0.4-fix-tests.patch66
-rw-r--r--dev-ruby/journey/journey-1.0.4-r1.ebuild25
-rw-r--r--dev-ruby/journey/metadata.xml11
-rw-r--r--dev-ruby/jquery-rails/Manifest4
-rw-r--r--dev-ruby/jquery-rails/jquery-rails-3.1.4.ebuild31
-rw-r--r--dev-ruby/jquery-rails/jquery-rails-4.3.3.ebuild34
-rw-r--r--dev-ruby/jquery-rails/jquery-rails-4.3.5.ebuild34
-rw-r--r--dev-ruby/jquery-rails/jquery-rails-4.6.0.ebuild34
-rw-r--r--dev-ruby/jquery-rails/metadata.xml13
-rw-r--r--dev-ruby/jquery-ui-rails/Manifest2
-rw-r--r--dev-ruby/jquery-ui-rails/jquery-ui-rails-5.0.5-r1.ebuild25
-rw-r--r--dev-ruby/jquery-ui-rails/jquery-ui-rails-6.0.1-r1.ebuild25
-rw-r--r--dev-ruby/jquery-ui-rails/jquery-ui-rails-6.0.1-r2.ebuild25
-rw-r--r--dev-ruby/jquery-ui-rails/jquery-ui-rails-7.0.0.ebuild31
-rw-r--r--dev-ruby/jquery-ui-rails/metadata.xml6
-rw-r--r--dev-ruby/jsobfu/jsobfu-0.4.2-r1.ebuild36
-rw-r--r--dev-ruby/jsobfu/jsobfu-0.4.2.ebuild37
-rw-r--r--dev-ruby/jsobfu/metadata.xml2
-rw-r--r--dev-ruby/json/Manifest6
-rw-r--r--dev-ruby/json/files/json-1.8.6-heap-exposure.patch82
-rw-r--r--dev-ruby/json/files/json-2.1.0-ruby26-1.patch20
-rw-r--r--dev-ruby/json/files/json-2.1.0-ruby26-2.patch105
-rw-r--r--dev-ruby/json/files/json-2.1.0-ruby26-3.patch143
-rw-r--r--dev-ruby/json/json-1.8.6-r1.ebuild70
-rw-r--r--dev-ruby/json/json-2.1.0-r1.ebuild79
-rw-r--r--dev-ruby/json/json-2.1.0.ebuild73
-rw-r--r--dev-ruby/json/json-2.2.0.ebuild74
-rw-r--r--dev-ruby/json/json-2.6.3.ebuild46
-rw-r--r--dev-ruby/json/json-2.7.1-r1.ebuild53
-rw-r--r--dev-ruby/json/json-2.7.2.ebuild52
-rw-r--r--dev-ruby/json/metadata.xml2
-rw-r--r--dev-ruby/json_schema/Manifest3
-rw-r--r--dev-ruby/json_schema/json_schema-0.20.6.ebuild25
-rw-r--r--dev-ruby/json_schema/json_schema-0.20.7.ebuild25
-rw-r--r--dev-ruby/json_schema/json_schema-0.21.0.ebuild32
-rw-r--r--dev-ruby/json_schema/metadata.xml17
-rw-r--r--dev-ruby/jwt/Manifest8
-rw-r--r--dev-ruby/jwt/jwt-1.5.6.ebuild29
-rw-r--r--dev-ruby/jwt/jwt-2.1.0.ebuild30
-rw-r--r--dev-ruby/jwt/jwt-2.2.0.ebuild32
-rw-r--r--dev-ruby/jwt/jwt-2.2.1.ebuild32
-rw-r--r--dev-ruby/jwt/jwt-2.7.0.ebuild33
-rw-r--r--dev-ruby/jwt/jwt-2.7.1.ebuild33
-rw-r--r--dev-ruby/jwt/jwt-2.8.0.ebuild33
-rw-r--r--dev-ruby/jwt/jwt-2.8.1.ebuild33
-rw-r--r--dev-ruby/jwt/metadata.xml2
-rw-r--r--dev-ruby/kirbybase/Manifest1
-rw-r--r--dev-ruby/kirbybase/kirbybase-2.6.1-r2.ebuild33
-rw-r--r--dev-ruby/kirbybase/metadata.xml8
-rw-r--r--dev-ruby/kissfft/kissfft-0.0.2-r1.ebuild27
-rw-r--r--dev-ruby/kissfft/kissfft-0.0.2.ebuild32
-rw-r--r--dev-ruby/kissfft/metadata.xml2
-rw-r--r--dev-ruby/kpeg/Manifest2
-rw-r--r--dev-ruby/kpeg/files/kpeg-1.1.0-utf8.patch17
-rw-r--r--dev-ruby/kpeg/kpeg-1.1.0-r1.ebuild25
-rw-r--r--dev-ruby/kpeg/kpeg-1.3.3.ebuild21
-rw-r--r--dev-ruby/kpeg/metadata.xml2
-rw-r--r--dev-ruby/kramdown-parser-gfm/Manifest1
-rw-r--r--dev-ruby/kramdown-parser-gfm/kramdown-parser-gfm-1.1.0-r1.ebuild31
-rw-r--r--dev-ruby/kramdown-parser-gfm/metadata.xml11
-rw-r--r--dev-ruby/kramdown-syntax-coderay/Manifest1
-rw-r--r--dev-ruby/kramdown-syntax-coderay/kramdown-syntax-coderay-1.0.1-r1.ebuild22
-rw-r--r--dev-ruby/kramdown-syntax-coderay/metadata.xml11
-rw-r--r--dev-ruby/kramdown/Manifest2
-rw-r--r--dev-ruby/kramdown/kramdown-1.17.0.ebuild55
-rw-r--r--dev-ruby/kramdown/kramdown-2.4.0-r1.ebuild59
-rw-r--r--dev-ruby/kramdown/metadata.xml5
-rw-r--r--dev-ruby/launchy/Manifest3
-rw-r--r--dev-ruby/launchy/files/launchy-2.4.2-drop-failing-test.patch25
-rw-r--r--dev-ruby/launchy/launchy-2.4.3-r2.ebuild36
-rw-r--r--dev-ruby/launchy/launchy-2.5.2-r1.ebuild35
-rw-r--r--dev-ruby/launchy/launchy-2.5.2.ebuild34
-rw-r--r--dev-ruby/launchy/launchy-3.0.0.ebuild42
-rw-r--r--dev-ruby/launchy/metadata.xml4
-rw-r--r--dev-ruby/lemon/lemon-0.9.1-r1.ebuild30
-rw-r--r--dev-ruby/lemon/lemon-0.9.1.ebuild29
-rw-r--r--dev-ruby/lemon/metadata.xml5
-rw-r--r--dev-ruby/leto/Manifest1
-rw-r--r--dev-ruby/leto/leto-2.1.0.ebuild30
-rw-r--r--dev-ruby/leto/metadata.xml12
-rw-r--r--dev-ruby/letter_opener/Manifest5
-rw-r--r--dev-ruby/letter_opener/letter_opener-1.10.0.ebuild33
-rw-r--r--dev-ruby/letter_opener/letter_opener-1.6.0.ebuild30
-rw-r--r--dev-ruby/letter_opener/letter_opener-1.7.0.ebuild30
-rw-r--r--dev-ruby/letter_opener/letter_opener-1.8.1.ebuild33
-rw-r--r--dev-ruby/letter_opener/letter_opener-1.9.0.ebuild33
-rw-r--r--dev-ruby/letter_opener/metadata.xml2
-rw-r--r--dev-ruby/levenshtein/levenshtein-0.2.2-r2.ebuild33
-rw-r--r--dev-ruby/levenshtein/levenshtein-0.2.2-r3.ebuild26
-rw-r--r--dev-ruby/levenshtein/metadata.xml2
-rw-r--r--dev-ruby/libusb/Manifest2
-rw-r--r--dev-ruby/libusb/libusb-0.6.4-r2.ebuild46
-rw-r--r--dev-ruby/libusb/libusb-0.6.4.ebuild37
-rw-r--r--dev-ruby/libusb/libusb-0.7.0.ebuild46
-rw-r--r--dev-ruby/libusb/libusb-0.7.1.ebuild46
-rw-r--r--dev-ruby/libusb/metadata.xml6
-rw-r--r--dev-ruby/libxml/Manifest1
-rw-r--r--dev-ruby/libxml/libxml-2.9.0.ebuild49
-rw-r--r--dev-ruby/libxml/metadata.xml11
-rw-r--r--dev-ruby/liquid-c/Manifest4
-rw-r--r--dev-ruby/liquid-c/liquid-c-3.0.0.ebuild37
-rw-r--r--dev-ruby/liquid-c/liquid-c-4.0.0.ebuild37
-rw-r--r--dev-ruby/liquid-c/liquid-c-4.1.0.ebuild62
-rw-r--r--dev-ruby/liquid-c/liquid-c-4.2.0.ebuild61
-rw-r--r--dev-ruby/liquid-c/metadata.xml2
-rw-r--r--dev-ruby/liquid/Manifest6
-rw-r--r--dev-ruby/liquid/files/liquid-4.0.3-ruby30.patch23
-rw-r--r--dev-ruby/liquid/liquid-2.6.2.ebuild26
-rw-r--r--dev-ruby/liquid/liquid-3.0.6.ebuild22
-rw-r--r--dev-ruby/liquid/liquid-4.0.1.ebuild30
-rw-r--r--dev-ruby/liquid/liquid-4.0.2.ebuild30
-rw-r--r--dev-ruby/liquid/liquid-4.0.3-r1.ebuild36
-rw-r--r--dev-ruby/liquid/liquid-4.0.3.ebuild30
-rw-r--r--dev-ruby/liquid/liquid-5.4.0.ebuild31
-rw-r--r--dev-ruby/liquid/liquid-5.5.0.ebuild31
-rw-r--r--dev-ruby/liquid/metadata.xml2
-rw-r--r--dev-ruby/listen/Manifest5
-rw-r--r--dev-ruby/listen/files/listen-3.1.5-ruby26.patch33
-rw-r--r--dev-ruby/listen/listen-0.7.3-r2.ebuild33
-rw-r--r--dev-ruby/listen/listen-1.3.1-r4.ebuild35
-rw-r--r--dev-ruby/listen/listen-3.1.5-r3.ebuild49
-rw-r--r--dev-ruby/listen/listen-3.8.0.ebuild47
-rw-r--r--dev-ruby/listen/listen-3.9.0.ebuild47
-rw-r--r--dev-ruby/listen/metadata.xml2
-rw-r--r--dev-ruby/litc/Manifest1
-rw-r--r--dev-ruby/litc/litc-1.0.3-r1.ebuild29
-rw-r--r--dev-ruby/litc/metadata.xml11
-rw-r--r--dev-ruby/little-plugger/little-plugger-1.1.4-r1.ebuild19
-rw-r--r--dev-ruby/little-plugger/little-plugger-1.1.4.ebuild22
-rw-r--r--dev-ruby/little-plugger/metadata.xml2
-rw-r--r--dev-ruby/llhttp-ffi/Manifest2
-rw-r--r--dev-ruby/llhttp-ffi/files/llhttp-ffi-0.5.0-fix-rake-clean.patch18
-rw-r--r--dev-ruby/llhttp-ffi/llhttp-ffi-0.4.0.ebuild43
-rw-r--r--dev-ruby/llhttp-ffi/llhttp-ffi-0.5.0.ebuild51
-rw-r--r--dev-ruby/llhttp-ffi/metadata.xml11
-rw-r--r--dev-ruby/locale/Manifest3
-rw-r--r--dev-ruby/locale/locale-2.1.2-r1.ebuild50
-rw-r--r--dev-ruby/locale/locale-2.1.3-r1.ebuild51
-rw-r--r--dev-ruby/locale/locale-2.1.4.ebuild51
-rw-r--r--dev-ruby/locale/metadata.xml2
-rw-r--r--dev-ruby/localhost/Manifest3
-rw-r--r--dev-ruby/localhost/localhost-1.1.10.ebuild39
-rw-r--r--dev-ruby/localhost/localhost-1.2.0.ebuild39
-rw-r--r--dev-ruby/localhost/localhost-1.3.0.ebuild39
-rw-r--r--dev-ruby/localhost/metadata.xml11
-rw-r--r--dev-ruby/lockfile/lockfile-2.1.3-r1.ebuild19
-rw-r--r--dev-ruby/lockfile/lockfile-2.1.3.ebuild20
-rw-r--r--dev-ruby/lockfile/metadata.xml2
-rw-r--r--dev-ruby/log4r/log4r-1.1.10-r2.ebuild29
-rw-r--r--dev-ruby/log4r/log4r-1.1.10-r3.ebuild28
-rw-r--r--dev-ruby/log4r/metadata.xml2
-rw-r--r--dev-ruby/log_buddy/Manifest1
-rw-r--r--dev-ruby/log_buddy/log_buddy-0.7.0.ebuild29
-rw-r--r--dev-ruby/log_buddy/metadata.xml11
-rw-r--r--dev-ruby/logger/Manifest1
-rw-r--r--dev-ruby/logger/logger-1.6.0.ebuild27
-rw-r--r--dev-ruby/logger/metadata.xml11
-rw-r--r--dev-ruby/logue/Manifest3
-rw-r--r--dev-ruby/logue/logue-1.0.13-r1.ebuild34
-rw-r--r--dev-ruby/logue/logue-1.0.16.ebuild34
-rw-r--r--dev-ruby/logue/logue-1.0.18.ebuild34
-rw-r--r--dev-ruby/logue/metadata.xml11
-rw-r--r--dev-ruby/loofah/Manifest4
-rw-r--r--dev-ruby/loofah/loofah-2.2.3.ebuild34
-rw-r--r--dev-ruby/loofah/loofah-2.21.3.ebuild39
-rw-r--r--dev-ruby/loofah/loofah-2.21.4.ebuild39
-rw-r--r--dev-ruby/loofah/loofah-2.22.0.ebuild39
-rw-r--r--dev-ruby/loofah/metadata.xml2
-rw-r--r--dev-ruby/loquacious/loquacious-1.9.1-r2.ebuild36
-rw-r--r--dev-ruby/loquacious/loquacious-1.9.1-r4.ebuild32
-rw-r--r--dev-ruby/loquacious/metadata.xml2
-rw-r--r--dev-ruby/lumberjack/Manifest2
-rw-r--r--dev-ruby/lumberjack/lumberjack-1.0.13.ebuild21
-rw-r--r--dev-ruby/lumberjack/lumberjack-1.2.10.ebuild27
-rw-r--r--dev-ruby/lumberjack/metadata.xml2
-rw-r--r--dev-ruby/mab/mab-0.0.3-r2.ebuild20
-rw-r--r--dev-ruby/mab/mab-0.0.3.ebuild28
-rw-r--r--dev-ruby/mab/metadata.xml2
-rw-r--r--dev-ruby/magic/magic-0.2.9-r1.ebuild31
-rw-r--r--dev-ruby/magic/magic-0.2.9-r2.ebuild38
-rw-r--r--dev-ruby/magic/metadata.xml2
-rw-r--r--dev-ruby/mail/Manifest3
-rw-r--r--dev-ruby/mail/mail-2.7.0.ebuild32
-rw-r--r--dev-ruby/mail/mail-2.7.1.ebuild32
-rw-r--r--dev-ruby/mail/mail-2.8.1.ebuild39
-rw-r--r--dev-ruby/mail/metadata.xml2
-rw-r--r--dev-ruby/maildir/Manifest2
-rw-r--r--dev-ruby/maildir/maildir-2.2.1-r1.ebuild33
-rw-r--r--dev-ruby/maildir/maildir-2.2.3-r1.ebuild30
-rw-r--r--dev-ruby/maildir/metadata.xml2
-rw-r--r--dev-ruby/marcel/Manifest3
-rw-r--r--dev-ruby/marcel/marcel-0.3.3-r1.ebuild32
-rw-r--r--dev-ruby/marcel/marcel-1.0.2.ebuild34
-rw-r--r--dev-ruby/marcel/marcel-1.0.4.ebuild31
-rw-r--r--dev-ruby/marcel/metadata.xml4
-rw-r--r--dev-ruby/maruku/maruku-0.7.3-r1.ebuild41
-rw-r--r--dev-ruby/maruku/maruku-0.7.3.ebuild42
-rw-r--r--dev-ruby/maruku/metadata.xml2
-rw-r--r--dev-ruby/mash/mash-0.1.1-r2.ebuild20
-rw-r--r--dev-ruby/mash/mash-0.1.1-r3.ebuild24
-rw-r--r--dev-ruby/mash/metadata.xml2
-rw-r--r--dev-ruby/matrix/Manifest1
-rw-r--r--dev-ruby/matrix/matrix-0.4.2.ebuild27
-rw-r--r--dev-ruby/matrix/metadata.xml12
-rw-r--r--dev-ruby/maxitest/Manifest8
-rw-r--r--dev-ruby/maxitest/maxitest-2.8.0.ebuild48
-rw-r--r--dev-ruby/maxitest/maxitest-3.0.1.ebuild48
-rw-r--r--dev-ruby/maxitest/maxitest-3.1.0.ebuild48
-rw-r--r--dev-ruby/maxitest/maxitest-3.2.0.ebuild48
-rw-r--r--dev-ruby/maxitest/maxitest-4.4.1-r1.ebuild51
-rw-r--r--dev-ruby/maxitest/maxitest-5.2.0.ebuild50
-rw-r--r--dev-ruby/maxitest/maxitest-5.3.1.ebuild50
-rw-r--r--dev-ruby/maxitest/maxitest-5.4.0.ebuild52
-rw-r--r--dev-ruby/maxitest/metadata.xml2
-rw-r--r--dev-ruby/mecab-ruby/mecab-ruby-0.996-r1.ebuild39
-rw-r--r--dev-ruby/mecab-ruby/mecab-ruby-0.996-r2.ebuild39
-rw-r--r--dev-ruby/mecab-ruby/metadata.xml2
-rw-r--r--dev-ruby/mechanize/Manifest4
-rw-r--r--dev-ruby/mechanize/files/mechanize-2.9.1-libxml2-1.patch64
-rw-r--r--dev-ruby/mechanize/files/mechanize-2.9.1-libxml2-2.patch34
-rw-r--r--dev-ruby/mechanize/mechanize-2.10.0.ebuild46
-rw-r--r--dev-ruby/mechanize/mechanize-2.7.6.ebuild38
-rw-r--r--dev-ruby/mechanize/mechanize-2.9.1.ebuild50
-rw-r--r--dev-ruby/mechanize/mechanize-2.9.2.ebuild50
-rw-r--r--dev-ruby/mechanize/metadata.xml2
-rw-r--r--dev-ruby/memo_wise/Manifest2
-rw-r--r--dev-ruby/memo_wise/memo_wise-1.7.0.ebuild36
-rw-r--r--dev-ruby/memo_wise/memo_wise-1.8.0.ebuild36
-rw-r--r--dev-ruby/memo_wise/metadata.xml11
-rw-r--r--dev-ruby/memoist/Manifest3
-rw-r--r--dev-ruby/memoist/memoist-0.15.0.ebuild24
-rw-r--r--dev-ruby/memoist/memoist-0.16.0.ebuild24
-rw-r--r--dev-ruby/memoist/memoist-0.16.2-r1.ebuild23
-rw-r--r--dev-ruby/memoist/metadata.xml5
-rw-r--r--dev-ruby/memoizable/memoizable-0.4.2-r1.ebuild28
-rw-r--r--dev-ruby/memoizable/memoizable-0.4.2.ebuild29
-rw-r--r--dev-ruby/memoizable/metadata.xml2
-rw-r--r--dev-ruby/memoize/Manifest1
-rw-r--r--dev-ruby/memoize/memoize-1.3.1-r1.ebuild24
-rw-r--r--dev-ruby/memoize/metadata.xml14
-rw-r--r--dev-ruby/mercenary/Manifest2
-rw-r--r--dev-ruby/mercenary/mercenary-0.3.6.ebuild20
-rw-r--r--dev-ruby/mercenary/mercenary-0.4.0-r1.ebuild19
-rw-r--r--dev-ruby/mercenary/metadata.xml2
-rw-r--r--dev-ruby/metaclass/metaclass-0.0.4-r2.ebuild25
-rw-r--r--dev-ruby/metaclass/metaclass-0.0.4.ebuild23
-rw-r--r--dev-ruby/metaclass/metadata.xml2
-rw-r--r--dev-ruby/metadata.xml3
-rw-r--r--dev-ruby/metaid/Manifest1
-rw-r--r--dev-ruby/metaid/metadata.xml11
-rw-r--r--dev-ruby/metaid/metaid-1.0-r3.ebuild20
-rw-r--r--dev-ruby/metasm/Manifest3
-rw-r--r--dev-ruby/metasm/metadata.xml8
-rw-r--r--dev-ruby/metasm/metasm-1.0.2-r4.ebuild59
-rw-r--r--dev-ruby/metasm/metasm-1.0.4.ebuild35
-rw-r--r--dev-ruby/metasm/metasm-1.0.5-r1.ebuild39
-rw-r--r--dev-ruby/metasploit-concern/Manifest1
-rw-r--r--dev-ruby/metasploit-concern/metadata.xml11
-rw-r--r--dev-ruby/metasploit-concern/metasploit-concern-2.0.5.ebuild26
-rw-r--r--dev-ruby/metasploit-credential/Manifest1
-rw-r--r--dev-ruby/metasploit-credential/metadata.xml11
-rw-r--r--dev-ruby/metasploit-credential/metasploit-credential-2.0.14.ebuild28
-rw-r--r--dev-ruby/metasploit-model/Manifest1
-rw-r--r--dev-ruby/metasploit-model/metadata.xml14
-rw-r--r--dev-ruby/metasploit-model/metasploit-model-2.0.4.ebuild72
-rw-r--r--dev-ruby/metasploit-payloads/Manifest1
-rw-r--r--dev-ruby/metasploit-payloads/metadata.xml12
-rw-r--r--dev-ruby/metasploit-payloads/metasploit-payloads-1.3.53.ebuild44
-rw-r--r--dev-ruby/metasploit_data_models/Manifest1
-rw-r--r--dev-ruby/metasploit_data_models/metadata.xml11
-rw-r--r--dev-ruby/metasploit_data_models/metasploit_data_models-2.0.16.ebuild64
-rw-r--r--dev-ruby/metasploit_payloads-mettle/Manifest1
-rw-r--r--dev-ruby/metasploit_payloads-mettle/metadata.xml12
-rw-r--r--dev-ruby/metasploit_payloads-mettle/metasploit_payloads-mettle-0.4.2.ebuild65
-rw-r--r--dev-ruby/meterpreter_bins/Manifest1
-rw-r--r--dev-ruby/meterpreter_bins/metadata.xml11
-rw-r--r--dev-ruby/meterpreter_bins/meterpreter_bins-0.0.22.ebuild27
-rw-r--r--dev-ruby/method_source/Manifest5
-rw-r--r--dev-ruby/method_source/metadata.xml2
-rw-r--r--dev-ruby/method_source/method_source-0.9.0.ebuild19
-rw-r--r--dev-ruby/method_source/method_source-0.9.1.ebuild19
-rw-r--r--dev-ruby/method_source/method_source-0.9.2.ebuild19
-rw-r--r--dev-ruby/method_source/method_source-1.0.0-r1.ebuild17
-rw-r--r--dev-ruby/method_source/method_source-1.0.0.ebuild18
-rw-r--r--dev-ruby/method_source/method_source-1.1.0.ebuild17
-rw-r--r--dev-ruby/middleware/Manifest1
-rw-r--r--dev-ruby/middleware/metadata.xml11
-rw-r--r--dev-ruby/middleware/middleware-0.1.0-r1.ebuild23
-rw-r--r--dev-ruby/mime-types-data/Manifest6
-rw-r--r--dev-ruby/mime-types-data/metadata.xml2
-rw-r--r--dev-ruby/mime-types-data/mime-types-data-3.2018.0812.ebuild23
-rw-r--r--dev-ruby/mime-types-data/mime-types-data-3.2019.0331.ebuild23
-rw-r--r--dev-ruby/mime-types-data/mime-types-data-3.2023.0218.1.ebuild22
-rw-r--r--dev-ruby/mime-types-data/mime-types-data-3.2023.1205.ebuild22
-rw-r--r--dev-ruby/mime-types-data/mime-types-data-3.2024.0206.ebuild21
-rw-r--r--dev-ruby/mime-types-data/mime-types-data-3.2024.0305.ebuild21
-rw-r--r--dev-ruby/mime-types/Manifest7
-rw-r--r--dev-ruby/mime-types/metadata.xml2
-rw-r--r--dev-ruby/mime-types/mime-types-1.25.1.ebuild30
-rw-r--r--dev-ruby/mime-types/mime-types-2.99.2.ebuild34
-rw-r--r--dev-ruby/mime-types/mime-types-3.2.2.ebuild33
-rw-r--r--dev-ruby/mime-types/mime-types-3.4.1.ebuild32
-rw-r--r--dev-ruby/mime-types/mime-types-3.5.0.ebuild32
-rw-r--r--dev-ruby/mime-types/mime-types-3.5.1.ebuild32
-rw-r--r--dev-ruby/mime-types/mime-types-3.5.2.ebuild31
-rw-r--r--dev-ruby/mimemagic/Manifest4
-rw-r--r--dev-ruby/mimemagic/files/mimemagic-0.3.9-path.rb3
-rw-r--r--dev-ruby/mimemagic/metadata.xml4
-rw-r--r--dev-ruby/mimemagic/mimemagic-0.3.10-r1.ebuild41
-rw-r--r--dev-ruby/mimemagic/mimemagic-0.3.2.ebuild24
-rw-r--r--dev-ruby/mimemagic/mimemagic-0.3.3.ebuild20
-rw-r--r--dev-ruby/mimemagic/mimemagic-0.4.3-r1.ebuild45
-rw-r--r--dev-ruby/mimemagic/mimemagic-0.4.3-r2.ebuild44
-rw-r--r--dev-ruby/mini_magick/Manifest3
-rw-r--r--dev-ruby/mini_magick/metadata.xml2
-rw-r--r--dev-ruby/mini_magick/mini_magick-4.12.0.ebuild62
-rw-r--r--dev-ruby/mini_magick/mini_magick-4.9.3.ebuild59
-rw-r--r--dev-ruby/mini_magick/mini_magick-4.9.4.ebuild59
-rw-r--r--dev-ruby/mini_mime/Manifest4
-rw-r--r--dev-ruby/mini_mime/metadata.xml2
-rw-r--r--dev-ruby/mini_mime/mini_mime-1.0.0.ebuild27
-rw-r--r--dev-ruby/mini_mime/mini_mime-1.0.1.ebuild31
-rw-r--r--dev-ruby/mini_mime/mini_mime-1.0.2.ebuild31
-rw-r--r--dev-ruby/mini_mime/mini_mime-1.1.5.ebuild31
-rw-r--r--dev-ruby/mini_portile2/Manifest3
-rw-r--r--dev-ruby/mini_portile2/metadata.xml11
-rw-r--r--dev-ruby/mini_portile2/mini_portile2-2.8.4.ebuild29
-rw-r--r--dev-ruby/mini_portile2/mini_portile2-2.8.5.ebuild36
-rw-r--r--dev-ruby/mini_portile2/mini_portile2-2.8.6.ebuild36
-rw-r--r--dev-ruby/minispec-metadata/Manifest1
-rw-r--r--dev-ruby/minispec-metadata/metadata.xml11
-rw-r--r--dev-ruby/minispec-metadata/minispec-metadata-3.5.0.ebuild23
-rw-r--r--dev-ruby/minitar/Manifest2
-rw-r--r--dev-ruby/minitar/metadata.xml2
-rw-r--r--dev-ruby/minitar/minitar-0.8.ebuild28
-rw-r--r--dev-ruby/minitar/minitar-0.9-r1.ebuild30
-rw-r--r--dev-ruby/minitest-around/metadata.xml2
-rw-r--r--dev-ruby/minitest-around/minitest-around-0.5.0-r1.ebuild36
-rw-r--r--dev-ruby/minitest-around/minitest-around-0.5.0.ebuild34
-rw-r--r--dev-ruby/minitest-bonus-assertions/metadata.xml2
-rw-r--r--dev-ruby/minitest-bonus-assertions/minitest-bonus-assertions-3.0-r2.ebuild40
-rw-r--r--dev-ruby/minitest-bonus-assertions/minitest-bonus-assertions-3.0.ebuild29
-rw-r--r--dev-ruby/minitest-global_expectations/Manifest1
-rw-r--r--dev-ruby/minitest-global_expectations/metadata.xml11
-rw-r--r--dev-ruby/minitest-global_expectations/minitest-global_expectations-1.0.1-r1.ebuild15
-rw-r--r--dev-ruby/minitest-hooks/Manifest1
-rw-r--r--dev-ruby/minitest-hooks/metadata.xml2
-rw-r--r--dev-ruby/minitest-hooks/minitest-hooks-1.5.0.ebuild8
-rw-r--r--dev-ruby/minitest-hooks/minitest-hooks-1.5.1.ebuild19
-rw-r--r--dev-ruby/minitest-power_assert/Manifest2
-rw-r--r--dev-ruby/minitest-power_assert/metadata.xml2
-rw-r--r--dev-ruby/minitest-power_assert/minitest-power_assert-0.3.0.ebuild34
-rw-r--r--dev-ruby/minitest-power_assert/minitest-power_assert-0.3.1-r1.ebuild27
-rw-r--r--dev-ruby/minitest-pretty_diff/metadata.xml2
-rw-r--r--dev-ruby/minitest-pretty_diff/minitest-pretty_diff-0.1-r2.ebuild20
-rw-r--r--dev-ruby/minitest-pretty_diff/minitest-pretty_diff-0.1.ebuild22
-rw-r--r--dev-ruby/minitest/Manifest10
-rw-r--r--dev-ruby/minitest/metadata.xml5
-rw-r--r--dev-ruby/minitest/minitest-4.7.5-r2.ebuild32
-rw-r--r--dev-ruby/minitest/minitest-5.10.3.ebuild24
-rw-r--r--dev-ruby/minitest/minitest-5.11.3.ebuild24
-rw-r--r--dev-ruby/minitest/minitest-5.15.0-r1.ebuild24
-rw-r--r--dev-ruby/minitest/minitest-5.18.1.ebuild28
-rw-r--r--dev-ruby/minitest/minitest-5.19.0.ebuild28
-rw-r--r--dev-ruby/minitest/minitest-5.20.0.ebuild28
-rw-r--r--dev-ruby/minitest/minitest-5.21.2.ebuild28
-rw-r--r--dev-ruby/minitest/minitest-5.22.2.ebuild28
-rw-r--r--dev-ruby/minitest/minitest-5.22.3.ebuild28
-rw-r--r--dev-ruby/mixlib-config/Manifest1
-rw-r--r--dev-ruby/mixlib-config/metadata.xml12
-rw-r--r--dev-ruby/mixlib-config/mixlib-config-3.0.27.ebuild24
-rw-r--r--dev-ruby/mixlib-shellout/Manifest4
-rw-r--r--dev-ruby/mixlib-shellout/metadata.xml4
-rw-r--r--dev-ruby/mixlib-shellout/mixlib-shellout-2.4.4.ebuild29
-rw-r--r--dev-ruby/mixlib-shellout/mixlib-shellout-3.0.4.ebuild29
-rw-r--r--dev-ruby/mixlib-shellout/mixlib-shellout-3.0.9-r1.ebuild31
-rw-r--r--dev-ruby/mixlib-shellout/mixlib-shellout-3.2.7.ebuild33
-rw-r--r--dev-ruby/mkmf-lite/Manifest1
-rw-r--r--dev-ruby/mkmf-lite/metadata.xml15
-rw-r--r--dev-ruby/mkmf-lite/mkmf-lite-0.6.0.ebuild26
-rw-r--r--dev-ruby/mocha/Manifest10
-rw-r--r--dev-ruby/mocha/files/mocha-1.16.0-ruby32.patch53
-rw-r--r--dev-ruby/mocha/metadata.xml5
-rw-r--r--dev-ruby/mocha/mocha-0.14.0-r1.ebuild35
-rw-r--r--dev-ruby/mocha/mocha-0.14.0.ebuild32
-rw-r--r--dev-ruby/mocha/mocha-1.16.0.ebuild42
-rw-r--r--dev-ruby/mocha/mocha-1.16.1.ebuild42
-rw-r--r--dev-ruby/mocha/mocha-1.4.0.ebuild36
-rw-r--r--dev-ruby/mocha/mocha-1.7.0.ebuild36
-rw-r--r--dev-ruby/mocha/mocha-1.8.0.ebuild36
-rw-r--r--dev-ruby/mocha/mocha-1.9.0.ebuild36
-rw-r--r--dev-ruby/mocha/mocha-2.0.2.ebuild42
-rw-r--r--dev-ruby/mocha/mocha-2.0.4.ebuild35
-rw-r--r--dev-ruby/mocha/mocha-2.1.0.ebuild35
-rw-r--r--dev-ruby/mocha/mocha-2.2.0.ebuild35
-rw-r--r--dev-ruby/moneta/Manifest3
-rw-r--r--dev-ruby/moneta/metadata.xml4
-rw-r--r--dev-ruby/moneta/moneta-1.1.0.ebuild31
-rw-r--r--dev-ruby/moneta/moneta-1.1.1.ebuild31
-rw-r--r--dev-ruby/moneta/moneta-1.6.0.ebuild31
-rw-r--r--dev-ruby/mqtt/Manifest2
-rw-r--r--dev-ruby/mqtt/metadata.xml6
-rw-r--r--dev-ruby/mqtt/mqtt-0.5.0.ebuild26
-rw-r--r--dev-ruby/mqtt/mqtt-0.6.0.ebuild23
-rw-r--r--dev-ruby/msgpack/Manifest6
-rw-r--r--dev-ruby/msgpack/metadata.xml4
-rw-r--r--dev-ruby/msgpack/msgpack-1.2.10.ebuild42
-rw-r--r--dev-ruby/msgpack/msgpack-1.3.0.ebuild42
-rw-r--r--dev-ruby/msgpack/msgpack-1.3.1.ebuild42
-rw-r--r--dev-ruby/msgpack/msgpack-1.6.1.ebuild35
-rw-r--r--dev-ruby/msgpack/msgpack-1.7.1.ebuild36
-rw-r--r--dev-ruby/msgpack/msgpack-1.7.2.ebuild34
-rw-r--r--dev-ruby/multi_json/Manifest2
-rw-r--r--dev-ruby/multi_json/metadata.xml2
-rw-r--r--dev-ruby/multi_json/multi_json-1.13.1.ebuild61
-rw-r--r--dev-ruby/multi_json/multi_json-1.15.0.ebuild71
-rw-r--r--dev-ruby/multi_test/Manifest2
-rw-r--r--dev-ruby/multi_test/metadata.xml5
-rw-r--r--dev-ruby/multi_test/multi_test-0.1.2.ebuild24
-rw-r--r--dev-ruby/multi_test/multi_test-1.1.0.ebuild22
-rw-r--r--dev-ruby/multi_xml/metadata.xml4
-rw-r--r--dev-ruby/multi_xml/multi_xml-0.6.0-r1.ebuild39
-rw-r--r--dev-ruby/multi_xml/multi_xml-0.6.0-r2.ebuild42
-rw-r--r--dev-ruby/multipart-parser/Manifest1
-rw-r--r--dev-ruby/multipart-parser/files/multipart-parser-0.1.1-fix-tests.patch45
-rw-r--r--dev-ruby/multipart-parser/metadata.xml11
-rw-r--r--dev-ruby/multipart-parser/multipart-parser-0.1.1.ebuild23
-rw-r--r--dev-ruby/multipart-post/Manifest5
-rw-r--r--dev-ruby/multipart-post/metadata.xml4
-rw-r--r--dev-ruby/multipart-post/multipart-post-2.0.0-r1.ebuild25
-rw-r--r--dev-ruby/multipart-post/multipart-post-2.1.0.ebuild21
-rw-r--r--dev-ruby/multipart-post/multipart-post-2.1.1.ebuild21
-rw-r--r--dev-ruby/multipart-post/multipart-post-2.3.0.ebuild33
-rw-r--r--dev-ruby/multipart-post/multipart-post-2.4.0.ebuild33
-rw-r--r--dev-ruby/mustache/Manifest3
-rw-r--r--dev-ruby/mustache/files/mustache-1.1.1-test-ordering.patch36
-rw-r--r--dev-ruby/mustache/metadata.xml5
-rw-r--r--dev-ruby/mustache/mustache-1.0.5.ebuild40
-rw-r--r--dev-ruby/mustache/mustache-1.1.0.ebuild40
-rw-r--r--dev-ruby/mustache/mustache-1.1.1-r1.ebuild42
-rw-r--r--dev-ruby/mustermann/Manifest2
-rw-r--r--dev-ruby/mustermann/metadata.xml5
-rw-r--r--dev-ruby/mustermann/mustermann-1.0.3.ebuild22
-rw-r--r--dev-ruby/mustermann/mustermann-3.0.0.ebuild24
-rw-r--r--dev-ruby/mutex_m/Manifest1
-rw-r--r--dev-ruby/mutex_m/metadata.xml12
-rw-r--r--dev-ruby/mutex_m/mutex_m-0.2.0.ebuild25
-rw-r--r--dev-ruby/mysql2/Manifest5
-rw-r--r--dev-ruby/mysql2/metadata.xml2
-rw-r--r--dev-ruby/mysql2/mysql2-0.4.10-r1.ebuild44
-rw-r--r--dev-ruby/mysql2/mysql2-0.4.10.ebuild34
-rw-r--r--dev-ruby/mysql2/mysql2-0.5.1.ebuild34
-rw-r--r--dev-ruby/mysql2/mysql2-0.5.2-r1.ebuild44
-rw-r--r--dev-ruby/mysql2/mysql2-0.5.2.ebuild34
-rw-r--r--dev-ruby/mysql2/mysql2-0.5.5.ebuild139
-rw-r--r--dev-ruby/mysql2/mysql2-0.5.6.ebuild139
-rw-r--r--dev-ruby/nagios/Manifest1
-rw-r--r--dev-ruby/nagios/metadata.xml11
-rw-r--r--dev-ruby/nagios/nagios-0.0.4-r1.ebuild20
-rw-r--r--dev-ruby/nagios_analyzer/Manifest1
-rw-r--r--dev-ruby/nagios_analyzer/metadata.xml11
-rw-r--r--dev-ruby/nagios_analyzer/nagios_analyzer-0.0.5-r1.ebuild20
-rw-r--r--dev-ruby/nanotest/metadata.xml2
-rw-r--r--dev-ruby/nanotest/nanotest-0.9.4.1-r2.ebuild28
-rw-r--r--dev-ruby/nanotest/nanotest-0.9.4.1.ebuild22
-rw-r--r--dev-ruby/narray/metadata.xml2
-rw-r--r--dev-ruby/narray/narray-0.6.1.2-r2.ebuild45
-rw-r--r--dev-ruby/narray/narray-0.6.1.2.ebuild49
-rw-r--r--dev-ruby/naught/metadata.xml2
-rw-r--r--dev-ruby/naught/naught-1.1.0-r1.ebuild24
-rw-r--r--dev-ruby/naught/naught-1.1.0.ebuild24
-rw-r--r--dev-ruby/necromancer/Manifest2
-rw-r--r--dev-ruby/necromancer/metadata.xml4
-rw-r--r--dev-ruby/necromancer/necromancer-0.5.0.ebuild24
-rw-r--r--dev-ruby/necromancer/necromancer-0.7.0-r1.ebuild27
-rw-r--r--dev-ruby/nenv/metadata.xml2
-rw-r--r--dev-ruby/nenv/nenv-0.3.0-r1.ebuild27
-rw-r--r--dev-ruby/nenv/nenv-0.3.0.ebuild24
-rw-r--r--dev-ruby/neovim-ruby-client/Manifest3
-rw-r--r--dev-ruby/neovim-ruby-client/metadata.xml10
-rw-r--r--dev-ruby/neovim-ruby-client/neovim-ruby-client-0.7.1.ebuild20
-rw-r--r--dev-ruby/neovim-ruby-client/neovim-ruby-client-0.8.1.ebuild32
-rw-r--r--dev-ruby/neovim-ruby-client/neovim-ruby-client-0.9.1.ebuild38
-rw-r--r--dev-ruby/net-ftp/Manifest4
-rw-r--r--dev-ruby/net-ftp/metadata.xml11
-rw-r--r--dev-ruby/net-ftp/net-ftp-0.2.0.ebuild32
-rw-r--r--dev-ruby/net-ftp/net-ftp-0.3.0.ebuild32
-rw-r--r--dev-ruby/net-ftp/net-ftp-0.3.3.ebuild32
-rw-r--r--dev-ruby/net-ftp/net-ftp-0.3.4.ebuild31
-rw-r--r--dev-ruby/net-http-digest_auth/metadata.xml2
-rw-r--r--dev-ruby/net-http-digest_auth/net-http-digest_auth-1.4.1-r2.ebuild24
-rw-r--r--dev-ruby/net-http-digest_auth/net-http-digest_auth-1.4.1.ebuild27
-rw-r--r--dev-ruby/net-http-persistent/Manifest4
-rw-r--r--dev-ruby/net-http-persistent/metadata.xml2
-rw-r--r--dev-ruby/net-http-persistent/net-http-persistent-3.0.0.ebuild31
-rw-r--r--dev-ruby/net-http-persistent/net-http-persistent-3.0.1.ebuild31
-rw-r--r--dev-ruby/net-http-persistent/net-http-persistent-3.1.0.ebuild31
-rw-r--r--dev-ruby/net-http-persistent/net-http-persistent-4.0.2.ebuild33
-rw-r--r--dev-ruby/net-http-pipeline/metadata.xml2
-rw-r--r--dev-ruby/net-http-pipeline/net-http-pipeline-1.0.1-r1.ebuild30
-rw-r--r--dev-ruby/net-http-pipeline/net-http-pipeline-1.0.1.ebuild26
-rw-r--r--dev-ruby/net-imap/Manifest2
-rw-r--r--dev-ruby/net-imap/metadata.xml11
-rw-r--r--dev-ruby/net-imap/net-imap-0.3.7.ebuild34
-rw-r--r--dev-ruby/net-imap/net-imap-0.4.10.ebuild39
-rw-r--r--dev-ruby/net-pop/Manifest1
-rw-r--r--dev-ruby/net-pop/metadata.xml11
-rw-r--r--dev-ruby/net-pop/net-pop-0.1.2.ebuild31
-rw-r--r--dev-ruby/net-protocol/Manifest2
-rw-r--r--dev-ruby/net-protocol/metadata.xml11
-rw-r--r--dev-ruby/net-protocol/net-protocol-0.2.1.ebuild31
-rw-r--r--dev-ruby/net-protocol/net-protocol-0.2.2.ebuild33
-rw-r--r--dev-ruby/net-scp/Manifest3
-rw-r--r--dev-ruby/net-scp/files/net-scp-1.2.1-fix-common.path28
-rw-r--r--dev-ruby/net-scp/files/net-scp-1.2.1-fix-download_test.patch21
-rw-r--r--dev-ruby/net-scp/files/net-scp-1.2.1-fix-download_test_2.patch25
-rw-r--r--dev-ruby/net-scp/files/net-scp-1.2.1-fix-download_test_3.patch15
-rw-r--r--dev-ruby/net-scp/files/net-scp-1.2.1-fix-upload_tests.patch14
-rw-r--r--dev-ruby/net-scp/files/net-scp-1.2.1-raise-correct-errors-net-ssh-4.0-compat.patch30
-rw-r--r--dev-ruby/net-scp/files/net-scp-1.2.1-raise-correct-errors.patch80
-rw-r--r--dev-ruby/net-scp/metadata.xml2
-rw-r--r--dev-ruby/net-scp/net-scp-1.2.1-r1.ebuild47
-rw-r--r--dev-ruby/net-scp/net-scp-2.0.0.ebuild44
-rw-r--r--dev-ruby/net-scp/net-scp-4.0.0.ebuild46
-rw-r--r--dev-ruby/net-sftp/Manifest2
-rw-r--r--dev-ruby/net-sftp/files/net-sftp-2.1.2-net-ssh-4.patch42
-rw-r--r--dev-ruby/net-sftp/metadata.xml2
-rw-r--r--dev-ruby/net-sftp/net-sftp-2.1.2-r2.ebuild26
-rw-r--r--dev-ruby/net-sftp/net-sftp-2.1.2-r4.ebuild26
-rw-r--r--dev-ruby/net-sftp/net-sftp-4.0.0.ebuild36
-rw-r--r--dev-ruby/net-smtp/Manifest3
-rw-r--r--dev-ruby/net-smtp/metadata.xml11
-rw-r--r--dev-ruby/net-smtp/net-smtp-0.3.3.ebuild31
-rw-r--r--dev-ruby/net-smtp/net-smtp-0.4.0.ebuild31
-rw-r--r--dev-ruby/net-smtp/net-smtp-0.5.0.ebuild30
-rw-r--r--dev-ruby/net-ssh-gateway/metadata.xml2
-rw-r--r--dev-ruby/net-ssh-gateway/net-ssh-gateway-2.0.0-r2.ebuild33
-rw-r--r--dev-ruby/net-ssh-gateway/net-ssh-gateway-2.0.0.ebuild29
-rw-r--r--dev-ruby/net-ssh/Manifest7
-rw-r--r--dev-ruby/net-ssh/metadata.xml24
-rw-r--r--dev-ruby/net-ssh/net-ssh-4.2.0.ebuild37
-rw-r--r--dev-ruby/net-ssh/net-ssh-5.0.2.ebuild38
-rw-r--r--dev-ruby/net-ssh/net-ssh-5.1.0.ebuild38
-rw-r--r--dev-ruby/net-ssh/net-ssh-5.2.0.ebuild38
-rw-r--r--dev-ruby/net-ssh/net-ssh-7.1.0.ebuild45
-rw-r--r--dev-ruby/net-ssh/net-ssh-7.2.1.ebuild50
-rw-r--r--dev-ruby/net-ssh/net-ssh-7.2.3.ebuild50
-rw-r--r--dev-ruby/net-telnet/Manifest1
-rw-r--r--dev-ruby/net-telnet/metadata.xml2
-rw-r--r--dev-ruby/net-telnet/net-telnet-0.1.1-r1.ebuild30
-rw-r--r--dev-ruby/net-telnet/net-telnet-0.2.0-r1.ebuild32
-rw-r--r--dev-ruby/net-telnet/net-telnet-0.2.0.ebuild30
-rw-r--r--dev-ruby/netrc/metadata.xml5
-rw-r--r--dev-ruby/netrc/netrc-0.11.0-r2.ebuild29
-rw-r--r--dev-ruby/netrc/netrc-0.11.0.ebuild31
-rw-r--r--dev-ruby/network_interface/Manifest2
-rw-r--r--dev-ruby/network_interface/metadata.xml8
-rw-r--r--dev-ruby/network_interface/network_interface-0.0.2-r1.ebuild24
-rw-r--r--dev-ruby/network_interface/network_interface-0.0.2.ebuild36
-rw-r--r--dev-ruby/network_interface/network_interface-0.0.3.ebuild29
-rw-r--r--dev-ruby/network_interface/network_interface-0.0.4.ebuild29
-rw-r--r--dev-ruby/nexpose/Manifest1
-rw-r--r--dev-ruby/nexpose/metadata.xml12
-rw-r--r--dev-ruby/nexpose/nexpose-7.2.1.ebuild36
-rw-r--r--dev-ruby/niceogiri/metadata.xml2
-rw-r--r--dev-ruby/niceogiri/niceogiri-1.1.2-r1.ebuild28
-rw-r--r--dev-ruby/niceogiri/niceogiri-1.1.2.ebuild28
-rw-r--r--dev-ruby/nio4r/Manifest7
-rw-r--r--dev-ruby/nio4r/metadata.xml5
-rw-r--r--dev-ruby/nio4r/nio4r-1.2.1-r1.ebuild38
-rw-r--r--dev-ruby/nio4r/nio4r-2.3.1.ebuild40
-rw-r--r--dev-ruby/nio4r/nio4r-2.4.0.ebuild40
-rw-r--r--dev-ruby/nio4r/nio4r-2.5.9.ebuild35
-rw-r--r--dev-ruby/nio4r/nio4r-2.6.1.ebuild35
-rw-r--r--dev-ruby/nio4r/nio4r-2.7.0.ebuild35
-rw-r--r--dev-ruby/nio4r/nio4r-2.7.1.ebuild34
-rw-r--r--dev-ruby/nokogiri-diff/Manifest1
-rw-r--r--dev-ruby/nokogiri-diff/files/nokogiri-diff-0.2.0-rspec3.patch436
-rw-r--r--dev-ruby/nokogiri-diff/metadata.xml2
-rw-r--r--dev-ruby/nokogiri-diff/nokogiri-diff-0.2.0-r2.ebuild22
-rw-r--r--dev-ruby/nokogiri-diff/nokogiri-diff-0.2.0-r3.ebuild22
-rw-r--r--dev-ruby/nokogiri-diff/nokogiri-diff-0.3.0.ebuild24
-rw-r--r--dev-ruby/nokogiri/Manifest7
-rw-r--r--dev-ruby/nokogiri/metadata.xml2
-rw-r--r--dev-ruby/nokogiri/nokogiri-1.10.4.ebuild91
-rw-r--r--dev-ruby/nokogiri/nokogiri-1.15.3.ebuild95
-rw-r--r--dev-ruby/nokogiri/nokogiri-1.15.5.ebuild95
-rw-r--r--dev-ruby/nokogiri/nokogiri-1.16.2.ebuild96
-rw-r--r--dev-ruby/nokogiri/nokogiri-1.16.3.ebuild96
-rw-r--r--dev-ruby/nokogiri/nokogiri-1.16.4.ebuild96
-rw-r--r--dev-ruby/nokogiri/nokogiri-1.8.4.ebuild93
-rw-r--r--dev-ruby/nokogumbo/Manifest2
-rw-r--r--dev-ruby/nokogumbo/metadata.xml11
-rw-r--r--dev-ruby/nokogumbo/nokogumbo-1.5.0.ebuild44
-rw-r--r--dev-ruby/nokogumbo/nokogumbo-2.0.1.ebuild45
-rw-r--r--dev-ruby/notify/Manifest1
-rw-r--r--dev-ruby/notify/metadata.xml14
-rw-r--r--dev-ruby/notify/notify-0.5.2-r1.ebuild22
-rw-r--r--dev-ruby/ntlm-http/Manifest1
-rw-r--r--dev-ruby/ntlm-http/files/ntlm-http-0.1.1+ruby-1.9.patch24
-rw-r--r--dev-ruby/ntlm-http/metadata.xml8
-rw-r--r--dev-ruby/ntlm-http/ntlm-http-0.1.1-r2.ebuild35
-rw-r--r--dev-ruby/oauth/Manifest2
-rw-r--r--dev-ruby/oauth/metadata.xml4
-rw-r--r--dev-ruby/oauth/oauth-0.5.4.ebuild36
-rw-r--r--dev-ruby/oauth/oauth-0.6.2-r1.ebuild56
-rw-r--r--dev-ruby/oauth2/Manifest3
-rw-r--r--dev-ruby/oauth2/metadata.xml4
-rw-r--r--dev-ruby/oauth2/oauth2-1.4.0-r2.ebuild49
-rw-r--r--dev-ruby/oauth2/oauth2-1.4.1.ebuild49
-rw-r--r--dev-ruby/oauth2/oauth2-1.4.11.ebuild59
-rw-r--r--dev-ruby/octokit/Manifest5
-rw-r--r--dev-ruby/octokit/metadata.xml2
-rw-r--r--dev-ruby/octokit/octokit-4.14.0.ebuild33
-rw-r--r--dev-ruby/octokit/octokit-6.1.1.ebuild42
-rw-r--r--dev-ruby/octokit/octokit-7.2.0.ebuild43
-rw-r--r--dev-ruby/octokit/octokit-8.0.0.ebuild43
-rw-r--r--dev-ruby/octokit/octokit-8.1.0.ebuild43
-rw-r--r--dev-ruby/omniauth/Manifest4
-rw-r--r--dev-ruby/omniauth/metadata.xml4
-rw-r--r--dev-ruby/omniauth/omniauth-1.8.1.ebuild46
-rw-r--r--dev-ruby/omniauth/omniauth-1.9.0.ebuild46
-rw-r--r--dev-ruby/omniauth/omniauth-2.1.1.ebuild48
-rw-r--r--dev-ruby/omniauth/omniauth-2.1.2.ebuild49
-rw-r--r--dev-ruby/open4/metadata.xml2
-rw-r--r--dev-ruby/open4/open4-1.3.4-r1.ebuild38
-rw-r--r--dev-ruby/open4/open4-1.3.4.ebuild35
-rw-r--r--dev-ruby/openssl-ccm/Manifest3
-rw-r--r--dev-ruby/openssl-ccm/metadata.xml8
-rw-r--r--dev-ruby/openssl-ccm/openssl-ccm-1.2.1.ebuild22
-rw-r--r--dev-ruby/openssl-ccm/openssl-ccm-1.2.2.ebuild22
-rw-r--r--dev-ruby/openssl-ccm/openssl-ccm-1.2.3.ebuild20
-rw-r--r--dev-ruby/openssl-cmac/Manifest1
-rw-r--r--dev-ruby/openssl-cmac/metadata.xml12
-rw-r--r--dev-ruby/openssl-cmac/openssl-cmac-2.0.2.ebuild20
-rw-r--r--dev-ruby/openvas-omp/Manifest1
-rw-r--r--dev-ruby/openvas-omp/metadata.xml12
-rw-r--r--dev-ruby/openvas-omp/openvas-omp-0.0.4.ebuild26
-rw-r--r--dev-ruby/optimist/Manifest2
-rw-r--r--dev-ruby/optimist/metadata.xml2
-rw-r--r--dev-ruby/optimist/optimist-3.0.0.ebuild29
-rw-r--r--dev-ruby/optimist/optimist-3.1.0.ebuild29
-rw-r--r--dev-ruby/optionable/metadata.xml2
-rw-r--r--dev-ruby/optionable/optionable-0.2.0-r1.ebuild17
-rw-r--r--dev-ruby/optionable/optionable-0.2.0.ebuild19
-rw-r--r--dev-ruby/org-ruby/Manifest2
-rw-r--r--dev-ruby/org-ruby/files/org-ruby-0.9.12-file-exists.patch36
-rw-r--r--dev-ruby/org-ruby/metadata.xml2
-rw-r--r--dev-ruby/org-ruby/org-ruby-0.9.12.ebuild30
-rw-r--r--dev-ruby/org-ruby/org-ruby-0.9.12_p20200519.ebuild33
-rw-r--r--dev-ruby/origin/Manifest1
-rw-r--r--dev-ruby/origin/metadata.xml11
-rw-r--r--dev-ruby/origin/origin-2.3.1.ebuild35
-rw-r--r--dev-ruby/ox/Manifest6
-rw-r--r--dev-ruby/ox/metadata.xml2
-rw-r--r--dev-ruby/ox/ox-2.10.0.ebuild37
-rw-r--r--dev-ruby/ox/ox-2.10.1.ebuild32
-rw-r--r--dev-ruby/ox/ox-2.11.0.ebuild32
-rw-r--r--dev-ruby/ox/ox-2.14.17.ebuild27
-rw-r--r--dev-ruby/ox/ox-2.14.18.ebuild26
-rw-r--r--dev-ruby/ox/ox-2.9.4.ebuild32
-rw-r--r--dev-ruby/packetfu/Manifest1
-rw-r--r--dev-ruby/packetfu/metadata.xml15
-rw-r--r--dev-ruby/packetfu/packetfu-1.1.13.ebuild54
-rw-r--r--dev-ruby/paint/Manifest4
-rw-r--r--dev-ruby/paint/metadata.xml2
-rw-r--r--dev-ruby/paint/paint-2.0.1.ebuild21
-rw-r--r--dev-ruby/paint/paint-2.0.3.ebuild21
-rw-r--r--dev-ruby/paint/paint-2.1.0.ebuild21
-rw-r--r--dev-ruby/paint/paint-2.3.0-r1.ebuild22
-rw-r--r--dev-ruby/pairing_heap/Manifest2
-rw-r--r--dev-ruby/pairing_heap/metadata.xml14
-rw-r--r--dev-ruby/pairing_heap/pairing_heap-3.0.1-r1.ebuild33
-rw-r--r--dev-ruby/pairing_heap/pairing_heap-3.1.0.ebuild33
-rw-r--r--dev-ruby/parallel/Manifest4
-rw-r--r--dev-ruby/parallel/metadata.xml2
-rw-r--r--dev-ruby/parallel/parallel-1.16.2.ebuild55
-rw-r--r--dev-ruby/parallel/parallel-1.17.0.ebuild55
-rw-r--r--dev-ruby/parallel/parallel-1.23.0.ebuild57
-rw-r--r--dev-ruby/parallel/parallel-1.24.0.ebuild57
-rw-r--r--dev-ruby/paramesan/Manifest2
-rw-r--r--dev-ruby/paramesan/metadata.xml2
-rw-r--r--dev-ruby/paramesan/paramesan-0.1.1.ebuild29
-rw-r--r--dev-ruby/paramesan/paramesan-1.0.1-r1.ebuild28
-rw-r--r--dev-ruby/parser/Manifest8
-rw-r--r--dev-ruby/parser/metadata.xml2
-rw-r--r--dev-ruby/parser/parser-2.5.3.0.ebuild32
-rw-r--r--dev-ruby/parser/parser-2.6.2.0.ebuild32
-rw-r--r--dev-ruby/parser/parser-2.6.2.1.ebuild32
-rw-r--r--dev-ruby/parser/parser-2.6.3.0.ebuild32
-rw-r--r--dev-ruby/parser/parser-3.2.2.4.ebuild41
-rw-r--r--dev-ruby/parser/parser-3.3.0.3.ebuild40
-rw-r--r--dev-ruby/parser/parser-3.3.0.4.ebuild40
-rw-r--r--dev-ruby/parser/parser-3.3.0.5.ebuild40
-rw-r--r--dev-ruby/parslet/Manifest1
-rw-r--r--dev-ruby/parslet/metadata.xml11
-rw-r--r--dev-ruby/parslet/parslet-1.8.2.ebuild27
-rw-r--r--dev-ruby/pastel/Manifest3
-rw-r--r--dev-ruby/pastel/metadata.xml4
-rw-r--r--dev-ruby/pastel/pastel-0.7.2.ebuild29
-rw-r--r--dev-ruby/pastel/pastel-0.7.3.ebuild29
-rw-r--r--dev-ruby/pastel/pastel-0.8.0-r1.ebuild31
-rw-r--r--dev-ruby/pastel/pastel-0.8.0.ebuild31
-rw-r--r--dev-ruby/patch_finder/Manifest1
-rw-r--r--dev-ruby/patch_finder/metadata.xml12
-rw-r--r--dev-ruby/patch_finder/patch_finder-1.0.2.ebuild23
-rw-r--r--dev-ruby/path_expander/Manifest3
-rw-r--r--dev-ruby/path_expander/metadata.xml4
-rw-r--r--dev-ruby/path_expander/path_expander-1.0.3.ebuild30
-rw-r--r--dev-ruby/path_expander/path_expander-1.0.4.ebuild30
-rw-r--r--dev-ruby/path_expander/path_expander-1.1.1.ebuild28
-rw-r--r--dev-ruby/pathutil/files/pathutil-0.16.2-ruby30.patch197
-rw-r--r--dev-ruby/pathutil/files/pathutil-0.16.2-ruby31.patch247
-rw-r--r--dev-ruby/pathutil/metadata.xml6
-rw-r--r--dev-ruby/pathutil/pathutil-0.16.2-r2.ebuild35
-rw-r--r--dev-ruby/pathutil/pathutil-0.16.2.ebuild34
-rw-r--r--dev-ruby/patron/Manifest1
-rw-r--r--dev-ruby/patron/metadata.xml5
-rw-r--r--dev-ruby/patron/patron-0.13.1-r1.ebuild46
-rw-r--r--dev-ruby/patron/patron-0.13.3-r2.ebuild43
-rw-r--r--dev-ruby/patron/patron-0.13.3.ebuild46
-rw-r--r--dev-ruby/pcaprub/Manifest4
-rw-r--r--dev-ruby/pcaprub/metadata.xml3
-rw-r--r--dev-ruby/pcaprub/pcaprub-0.12.4.ebuild33
-rw-r--r--dev-ruby/pcaprub/pcaprub-0.13.0.ebuild33
-rw-r--r--dev-ruby/pcaprub/pcaprub-0.13.1.ebuild65
-rw-r--r--dev-ruby/pcaprub/pcaprub-0.13.2.ebuild68
-rw-r--r--dev-ruby/pdf-core/Manifest4
-rw-r--r--dev-ruby/pdf-core/metadata.xml2
-rw-r--r--dev-ruby/pdf-core/pdf-core-0.10.0.ebuild29
-rw-r--r--dev-ruby/pdf-core/pdf-core-0.7.0.ebuild30
-rw-r--r--dev-ruby/pdf-core/pdf-core-0.8.1.ebuild30
-rw-r--r--dev-ruby/pdf-core/pdf-core-0.9.0-r1.ebuild29
-rw-r--r--dev-ruby/pdf-inspector/metadata.xml2
-rw-r--r--dev-ruby/pdf-inspector/pdf-inspector-1.3.0-r1.ebuild22
-rw-r--r--dev-ruby/pdf-inspector/pdf-inspector-1.3.0.ebuild23
-rw-r--r--dev-ruby/pdf-reader/Manifest4
-rw-r--r--dev-ruby/pdf-reader/metadata.xml2
-rw-r--r--dev-ruby/pdf-reader/pdf-reader-1.4.1-r2.ebuild49
-rw-r--r--dev-ruby/pdf-reader/pdf-reader-1.4.1-r4.ebuild50
-rw-r--r--dev-ruby/pdf-reader/pdf-reader-2.11.0.ebuild46
-rw-r--r--dev-ruby/pdf-reader/pdf-reader-2.12.0.ebuild46
-rw-r--r--dev-ruby/pdf-reader/pdf-reader-2.2.0.ebuild49
-rw-r--r--dev-ruby/pdf-reader/pdf-reader-2.2.1.ebuild48
-rw-r--r--dev-ruby/permutation/metadata.xml2
-rw-r--r--dev-ruby/permutation/permutation-0.1.8-r1.ebuild24
-rw-r--r--dev-ruby/permutation/permutation-0.1.8-r3.ebuild22
-rw-r--r--dev-ruby/pg/Manifest7
-rw-r--r--dev-ruby/pg/files/postgresql10-tests.patch49
-rw-r--r--dev-ruby/pg/metadata.xml4
-rw-r--r--dev-ruby/pg/pg-0.21.0.ebuild57
-rw-r--r--dev-ruby/pg/pg-1.0.0.ebuild55
-rw-r--r--dev-ruby/pg/pg-1.1.4.ebuild55
-rw-r--r--dev-ruby/pg/pg-1.4.6-r1.ebuild64
-rw-r--r--dev-ruby/pg/pg-1.5.4-r1.ebuild64
-rw-r--r--dev-ruby/pg/pg-1.5.5.ebuild64
-rw-r--r--dev-ruby/pg/pg-1.5.6.ebuild64
-rw-r--r--dev-ruby/pg_array_parser/metadata.xml10
-rw-r--r--dev-ruby/pg_array_parser/pg_array_parser-0.0.9-r2.ebuild53
-rw-r--r--dev-ruby/pg_array_parser/pg_array_parser-0.0.9-r3.ebuild37
-rw-r--r--dev-ruby/pkg-config/Manifest6
-rw-r--r--dev-ruby/pkg-config/metadata.xml6
-rw-r--r--dev-ruby/pkg-config/pkg-config-1.2.8.ebuild33
-rw-r--r--dev-ruby/pkg-config/pkg-config-1.3.7.ebuild33
-rw-r--r--dev-ruby/pkg-config/pkg-config-1.3.8.ebuild31
-rw-r--r--dev-ruby/pkg-config/pkg-config-1.5.2.ebuild29
-rw-r--r--dev-ruby/pkg-config/pkg-config-1.5.5.ebuild29
-rw-r--r--dev-ruby/pkg-config/pkg-config-1.5.6.ebuild29
-rw-r--r--dev-ruby/plist/Manifest4
-rw-r--r--dev-ruby/plist/metadata.xml4
-rw-r--r--dev-ruby/plist/plist-3.4.0.ebuild28
-rw-r--r--dev-ruby/plist/plist-3.5.0.ebuild28
-rw-r--r--dev-ruby/plist/plist-3.7.0.ebuild27
-rw-r--r--dev-ruby/plist/plist-3.7.1.ebuild29
-rw-r--r--dev-ruby/pluggaloid/Manifest3
-rw-r--r--dev-ruby/pluggaloid/metadata.xml3
-rw-r--r--dev-ruby/pluggaloid/pluggaloid-1.1.2.ebuild27
-rw-r--r--dev-ruby/pluggaloid/pluggaloid-1.2.0.ebuild27
-rw-r--r--dev-ruby/pluggaloid/pluggaloid-1.7.0-r1.ebuild26
-rw-r--r--dev-ruby/podcast/metadata.xml14
-rw-r--r--dev-ruby/podcast/podcast-0.0.4-r2.ebuild26
-rw-r--r--dev-ruby/podcast/podcast-0.0.4-r3.ebuild25
-rw-r--r--dev-ruby/poltergeist/Manifest1
-rw-r--r--dev-ruby/poltergeist/metadata.xml11
-rw-r--r--dev-ruby/poltergeist/poltergeist-1.14.0.ebuild46
-rw-r--r--dev-ruby/polyglot/metadata.xml17
-rw-r--r--dev-ruby/polyglot/polyglot-0.3.5-r1.ebuild19
-rw-r--r--dev-ruby/polyglot/polyglot-0.3.5.ebuild25
-rw-r--r--dev-ruby/posix-spawn/Manifest1
-rw-r--r--dev-ruby/posix-spawn/files/posix-spawn-0.3.13-x86.patch23
-rw-r--r--dev-ruby/posix-spawn/metadata.xml11
-rw-r--r--dev-ruby/posix-spawn/posix-spawn-0.3.13-r1.ebuild37
-rw-r--r--dev-ruby/posix-spawn/posix-spawn-0.3.13.ebuild32
-rw-r--r--dev-ruby/postgres_ext/Manifest1
-rw-r--r--dev-ruby/postgres_ext/metadata.xml11
-rw-r--r--dev-ruby/postgres_ext/postgres_ext-3.0.1.ebuild53
-rw-r--r--dev-ruby/power_assert/Manifest6
-rw-r--r--dev-ruby/power_assert/metadata.xml4
-rw-r--r--dev-ruby/power_assert/power_assert-1.1.1.ebuild37
-rw-r--r--dev-ruby/power_assert/power_assert-1.1.2.ebuild37
-rw-r--r--dev-ruby/power_assert/power_assert-1.1.3.ebuild37
-rw-r--r--dev-ruby/power_assert/power_assert-1.1.4.ebuild37
-rw-r--r--dev-ruby/power_assert/power_assert-1.1.5.ebuild41
-rw-r--r--dev-ruby/power_assert/power_assert-2.0.3.ebuild41
-rw-r--r--dev-ruby/prawn-table/metadata.xml2
-rw-r--r--dev-ruby/prawn-table/prawn-table-0.2.2-r1.ebuild30
-rw-r--r--dev-ruby/prawn-table/prawn-table-0.2.2-r2.ebuild30
-rw-r--r--dev-ruby/prawn/Manifest3
-rw-r--r--dev-ruby/prawn/metadata.xml2
-rw-r--r--dev-ruby/prawn/prawn-2.2.0.ebuild33
-rw-r--r--dev-ruby/prawn/prawn-2.4.0-r3.ebuild41
-rw-r--r--dev-ruby/prawn/prawn-2.5.0.ebuild41
-rw-r--r--dev-ruby/prime/Manifest1
-rw-r--r--dev-ruby/prime/metadata.xml11
-rw-r--r--dev-ruby/prime/prime-0.1.2-r1.ebuild34
-rw-r--r--dev-ruby/priorityqueue/Manifest1
-rw-r--r--dev-ruby/priorityqueue/metadata.xml11
-rw-r--r--dev-ruby/priorityqueue/priorityqueue-0.1.2.ebuild40
-rw-r--r--dev-ruby/propshaft/Manifest2
-rw-r--r--dev-ruby/propshaft/metadata.xml11
-rw-r--r--dev-ruby/propshaft/propshaft-0.7.0-r1.ebuild38
-rw-r--r--dev-ruby/propshaft/propshaft-0.8.0.ebuild38
-rw-r--r--dev-ruby/protected_attributes/Manifest1
-rw-r--r--dev-ruby/protected_attributes/metadata.xml11
-rw-r--r--dev-ruby/protected_attributes/protected_attributes-1.1.4.ebuild39
-rw-r--r--dev-ruby/pry/Manifest2
-rw-r--r--dev-ruby/pry/metadata.xml2
-rw-r--r--dev-ruby/pry/pry-0.12.2.ebuild45
-rw-r--r--dev-ruby/pry/pry-0.14.2.ebuild45
-rw-r--r--dev-ruby/psych/Manifest6
-rw-r--r--dev-ruby/psych/metadata.xml4
-rw-r--r--dev-ruby/psych/psych-3.0.3.ebuild44
-rw-r--r--dev-ruby/psych/psych-3.1.0.ebuild46
-rw-r--r--dev-ruby/psych/psych-4.0.6.ebuild28
-rw-r--r--dev-ruby/psych/psych-5.1.0.ebuild28
-rw-r--r--dev-ruby/psych/psych-5.1.1.ebuild40
-rw-r--r--dev-ruby/psych/psych-5.1.2.ebuild40
-rw-r--r--dev-ruby/ptools/Manifest1
-rw-r--r--dev-ruby/ptools/metadata.xml15
-rw-r--r--dev-ruby/ptools/ptools-1.5.0.ebuild23
-rw-r--r--dev-ruby/public_suffix/Manifest8
-rw-r--r--dev-ruby/public_suffix/metadata.xml2
-rw-r--r--dev-ruby/public_suffix/public_suffix-3.0.2.ebuild30
-rw-r--r--dev-ruby/public_suffix/public_suffix-3.1.1.ebuild30
-rw-r--r--dev-ruby/public_suffix/public_suffix-4.0.0.ebuild30
-rw-r--r--dev-ruby/public_suffix/public_suffix-4.0.1.ebuild30
-rw-r--r--dev-ruby/public_suffix/public_suffix-4.0.7.ebuild29
-rw-r--r--dev-ruby/public_suffix/public_suffix-5.0.3.ebuild29
-rw-r--r--dev-ruby/public_suffix/public_suffix-5.0.4.ebuild36
-rw-r--r--dev-ruby/public_suffix/public_suffix-5.0.5.ebuild35
-rw-r--r--dev-ruby/pundit/Manifest6
-rw-r--r--dev-ruby/pundit/metadata.xml6
-rw-r--r--dev-ruby/pundit/pundit-1.1.0.ebuild28
-rw-r--r--dev-ruby/pundit/pundit-2.0.0.ebuild28
-rw-r--r--dev-ruby/pundit/pundit-2.0.1.ebuild28
-rw-r--r--dev-ruby/pundit/pundit-2.1.0.ebuild27
-rw-r--r--dev-ruby/pundit/pundit-2.3.0.ebuild30
-rw-r--r--dev-ruby/pundit/pundit-2.3.1.ebuild30
-rw-r--r--dev-ruby/puppet-resource_api/Manifest2
-rw-r--r--dev-ruby/puppet-resource_api/metadata.xml15
-rw-r--r--dev-ruby/puppet-resource_api/puppet-resource_api-1.8.16-r1.ebuild40
-rw-r--r--dev-ruby/puppet-resource_api/puppet-resource_api-1.9.0.ebuild41
-rw-r--r--dev-ruby/puppet_forge/Manifest7
-rw-r--r--dev-ruby/puppet_forge/files/puppet_forge-5.0.1-typhoeus.patch14
-rw-r--r--dev-ruby/puppet_forge/metadata.xml2
-rw-r--r--dev-ruby/puppet_forge/puppet_forge-2.2.9-r1.ebuild45
-rw-r--r--dev-ruby/puppet_forge/puppet_forge-2.3.0.ebuild45
-rw-r--r--dev-ruby/puppet_forge/puppet_forge-3.2.0.ebuild37
-rw-r--r--dev-ruby/puppet_forge/puppet_forge-4.1.0.ebuild38
-rw-r--r--dev-ruby/puppet_forge/puppet_forge-5.0.1-r1.ebuild37
-rw-r--r--dev-ruby/puppet_forge/puppet_forge-5.0.2.ebuild37
-rw-r--r--dev-ruby/puppet_forge/puppet_forge-5.0.3.ebuild36
-rw-r--r--dev-ruby/puppetdb-termini/Manifest7
-rw-r--r--dev-ruby/puppetdb-termini/metadata.xml5
-rw-r--r--dev-ruby/puppetdb-termini/puppetdb-termini-6.3.4.ebuild28
-rw-r--r--dev-ruby/puppetdb-termini/puppetdb-termini-6.4.0.ebuild28
-rw-r--r--dev-ruby/puppetdb-termini/puppetdb-termini-6.5.0.ebuild28
-rw-r--r--dev-ruby/puppetdb-termini/puppetdb-termini-7.13.0.ebuild28
-rw-r--r--dev-ruby/puppetdb-termini/puppetdb-termini-8.2.0.ebuild28
-rw-r--r--dev-ruby/puppetdb-termini/puppetdb-termini-8.4.1.ebuild28
-rw-r--r--dev-ruby/puppetdb-termini/puppetdb-termini-8.5.0.ebuild28
-rw-r--r--dev-ruby/pusher-client/metadata.xml2
-rw-r--r--dev-ruby/pusher-client/pusher-client-0.6.2-r1.ebuild26
-rw-r--r--dev-ruby/pusher-client/pusher-client-0.6.2.ebuild26
-rw-r--r--dev-ruby/pygments_rb/Manifest1
-rw-r--r--dev-ruby/pygments_rb/metadata.xml11
-rw-r--r--dev-ruby/pygments_rb/pygments_rb-1.2.1.ebuild62
-rw-r--r--dev-ruby/qed/metadata.xml5
-rw-r--r--dev-ruby/qed/qed-2.9.2-r1.ebuild30
-rw-r--r--dev-ruby/qed/qed-2.9.2.ebuild28
-rw-r--r--dev-ruby/racc/Manifest5
-rw-r--r--dev-ruby/racc/metadata.xml4
-rw-r--r--dev-ruby/racc/racc-1.4.14.ebuild65
-rw-r--r--dev-ruby/racc/racc-1.6.2.ebuild60
-rw-r--r--dev-ruby/racc/racc-1.7.0.ebuild61
-rw-r--r--dev-ruby/racc/racc-1.7.1.ebuild61
-rw-r--r--dev-ruby/racc/racc-1.7.3.ebuild64
-rw-r--r--dev-ruby/rack-attack/Manifest5
-rw-r--r--dev-ruby/rack-attack/metadata.xml4
-rw-r--r--dev-ruby/rack-attack/rack-attack-5.4.2.ebuild37
-rw-r--r--dev-ruby/rack-attack/rack-attack-6.0.0.ebuild37
-rw-r--r--dev-ruby/rack-attack/rack-attack-6.1.0.ebuild37
-rw-r--r--dev-ruby/rack-attack/rack-attack-6.6.1.ebuild40
-rw-r--r--dev-ruby/rack-attack/rack-attack-6.7.0.ebuild43
-rw-r--r--dev-ruby/rack-cache/Manifest5
-rw-r--r--dev-ruby/rack-cache/metadata.xml4
-rw-r--r--dev-ruby/rack-cache/rack-cache-1.15.0.ebuild41
-rw-r--r--dev-ruby/rack-cache/rack-cache-1.16.0.ebuild41
-rw-r--r--dev-ruby/rack-cache/rack-cache-1.17.0.ebuild41
-rw-r--r--dev-ruby/rack-cache/rack-cache-1.8.0.ebuild40
-rw-r--r--dev-ruby/rack-cache/rack-cache-1.9.0.ebuild40
-rw-r--r--dev-ruby/rack-mount/Manifest1
-rw-r--r--dev-ruby/rack-mount/files/rack-mount-fix-ruby20.patch26
-rw-r--r--dev-ruby/rack-mount/metadata.xml15
-rw-r--r--dev-ruby/rack-mount/rack-mount-0.8.3-r2.ebuild29
-rw-r--r--dev-ruby/rack-openid/metadata.xml2
-rw-r--r--dev-ruby/rack-openid/rack-openid-1.4.2-r1.ebuild35
-rw-r--r--dev-ruby/rack-openid/rack-openid-1.4.2.ebuild33
-rw-r--r--dev-ruby/rack-protection/Manifest7
-rw-r--r--dev-ruby/rack-protection/metadata.xml10
-rw-r--r--dev-ruby/rack-protection/rack-protection-1.5.5.ebuild23
-rw-r--r--dev-ruby/rack-protection/rack-protection-2.0.5.ebuild25
-rw-r--r--dev-ruby/rack-protection/rack-protection-2.0.7.ebuild24
-rw-r--r--dev-ruby/rack-protection/rack-protection-3.0.5.ebuild24
-rw-r--r--dev-ruby/rack-protection/rack-protection-3.0.6.ebuild24
-rw-r--r--dev-ruby/rack-protection/rack-protection-3.1.0.ebuild24
-rw-r--r--dev-ruby/rack-protection/rack-protection-3.2.0.ebuild24
-rw-r--r--dev-ruby/rack-session/Manifest2
-rw-r--r--dev-ruby/rack-session/metadata.xml12
-rw-r--r--dev-ruby/rack-session/rack-session-1.0.1.ebuild32
-rw-r--r--dev-ruby/rack-session/rack-session-2.0.0.ebuild31
-rw-r--r--dev-ruby/rack-ssl/Manifest1
-rw-r--r--dev-ruby/rack-ssl/metadata.xml15
-rw-r--r--dev-ruby/rack-ssl/rack-ssl-1.4.1.ebuild23
-rw-r--r--dev-ruby/rack-test/Manifest4
-rw-r--r--dev-ruby/rack-test/metadata.xml4
-rw-r--r--dev-ruby/rack-test/rack-test-0.6.3.ebuild31
-rw-r--r--dev-ruby/rack-test/rack-test-1.0.0.ebuild37
-rw-r--r--dev-ruby/rack-test/rack-test-1.1.0.ebuild33
-rw-r--r--dev-ruby/rack-test/rack-test-2.1.0.ebuild34
-rw-r--r--dev-ruby/rack/Manifest10
-rw-r--r--dev-ruby/rack/files/rack-1.2.1-gentoo.patch13
-rw-r--r--dev-ruby/rack/files/rack-1.6-rewindable-ruby23.patch38
-rw-r--r--dev-ruby/rack/metadata.xml20
-rw-r--r--dev-ruby/rack/rack-1.6.11.ebuild50
-rw-r--r--dev-ruby/rack/rack-2.0.6.ebuild42
-rw-r--r--dev-ruby/rack/rack-2.0.7.ebuild42
-rw-r--r--dev-ruby/rack/rack-2.2.8.1.ebuild57
-rw-r--r--dev-ruby/rack/rack-2.2.8.ebuild57
-rw-r--r--dev-ruby/rack/rack-2.2.9.ebuild57
-rw-r--r--dev-ruby/rack/rack-3.0.10.ebuild45
-rw-r--r--dev-ruby/rack/rack-3.0.8.ebuild45
-rw-r--r--dev-ruby/rack/rack-3.0.9.1.ebuild45
-rw-r--r--dev-ruby/rack/rack-3.0.9.ebuild45
-rw-r--r--dev-ruby/rackup/Manifest1
-rw-r--r--dev-ruby/rackup/metadata.xml12
-rw-r--r--dev-ruby/rackup/rackup-2.1.0-r1.ebuild40
-rw-r--r--dev-ruby/radius/metadata.xml2
-rw-r--r--dev-ruby/radius/radius-0.7.5-r1.ebuild24
-rw-r--r--dev-ruby/radius/radius-0.7.5.ebuild23
-rw-r--r--dev-ruby/rails-deprecated_sanitizer/Manifest1
-rw-r--r--dev-ruby/rails-deprecated_sanitizer/metadata.xml11
-rw-r--r--dev-ruby/rails-deprecated_sanitizer/rails-deprecated_sanitizer-1.0.3-r2.ebuild26
-rw-r--r--dev-ruby/rails-dom-testing/Manifest4
-rw-r--r--dev-ruby/rails-dom-testing/metadata.xml2
-rw-r--r--dev-ruby/rails-dom-testing/rails-dom-testing-1.0.8-r1.ebuild27
-rw-r--r--dev-ruby/rails-dom-testing/rails-dom-testing-2.0.3.ebuild26
-rw-r--r--dev-ruby/rails-dom-testing/rails-dom-testing-2.1.1.ebuild27
-rw-r--r--dev-ruby/rails-dom-testing/rails-dom-testing-2.2.0.ebuild27
-rw-r--r--dev-ruby/rails-html-sanitizer/Manifest4
-rw-r--r--dev-ruby/rails-html-sanitizer/metadata.xml4
-rw-r--r--dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.0.4.ebuild26
-rw-r--r--dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.2.0.ebuild31
-rw-r--r--dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.5.0.ebuild32
-rw-r--r--dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.6.0.ebuild32
-rw-r--r--dev-ruby/rails/Manifest9
-rw-r--r--dev-ruby/rails/metadata.xml9
-rw-r--r--dev-ruby/rails/rails-4.2.11.1.ebuild44
-rw-r--r--dev-ruby/rails/rails-5.1.7.ebuild44
-rw-r--r--dev-ruby/rails/rails-5.2.3.ebuild45
-rw-r--r--dev-ruby/rails/rails-6.1.7.6.ebuild39
-rw-r--r--dev-ruby/rails/rails-6.1.7.7.ebuild37
-rw-r--r--dev-ruby/rails/rails-7.0.8.1.ebuild36
-rw-r--r--dev-ruby/rails/rails-7.0.8.ebuild38
-rw-r--r--dev-ruby/rails/rails-7.1.3.2.ebuild36
-rw-r--r--dev-ruby/rails/rails-7.1.3.ebuild36
-rw-r--r--dev-ruby/railties/Manifest10
-rw-r--r--dev-ruby/railties/metadata.xml2
-rw-r--r--dev-ruby/railties/railties-4.2.11.1.ebuild71
-rw-r--r--dev-ruby/railties/railties-5.1.7.ebuild71
-rw-r--r--dev-ruby/railties/railties-5.2.3.ebuild71
-rw-r--r--dev-ruby/railties/railties-6.0.0.ebuild71
-rw-r--r--dev-ruby/railties/railties-6.1.7.6.ebuild71
-rw-r--r--dev-ruby/railties/railties-6.1.7.7.ebuild71
-rw-r--r--dev-ruby/railties/railties-7.0.8.1.ebuild72
-rw-r--r--dev-ruby/railties/railties-7.0.8.ebuild72
-rw-r--r--dev-ruby/railties/railties-7.1.3.2.ebuild73
-rw-r--r--dev-ruby/railties/railties-7.1.3.ebuild73
-rw-r--r--dev-ruby/rainbow/Manifest4
-rw-r--r--dev-ruby/rainbow/metadata.xml2
-rw-r--r--dev-ruby/rainbow/rainbow-1.1.4-r1.ebuild21
-rw-r--r--dev-ruby/rainbow/rainbow-2.2.2.ebuild22
-rw-r--r--dev-ruby/rainbow/rainbow-3.0.0.ebuild22
-rw-r--r--dev-ruby/rainbow/rainbow-3.1.1.ebuild22
-rw-r--r--dev-ruby/rake-compiler/Manifest5
-rw-r--r--dev-ruby/rake-compiler/metadata.xml4
-rw-r--r--dev-ruby/rake-compiler/rake-compiler-1.0.7.ebuild49
-rw-r--r--dev-ruby/rake-compiler/rake-compiler-1.2.3.ebuild55
-rw-r--r--dev-ruby/rake-compiler/rake-compiler-1.2.5.ebuild55
-rw-r--r--dev-ruby/rake-compiler/rake-compiler-1.2.6.ebuild55
-rw-r--r--dev-ruby/rake-compiler/rake-compiler-1.2.7.ebuild55
-rw-r--r--dev-ruby/rake-remote_task/Manifest2
-rw-r--r--dev-ruby/rake-remote_task/metadata.xml4
-rw-r--r--dev-ruby/rake-remote_task/rake-remote_task-2.4.3.ebuild26
-rw-r--r--dev-ruby/rake-remote_task/rake-remote_task-2.4.4-r1.ebuild28
-rw-r--r--dev-ruby/rake/Manifest7
-rw-r--r--dev-ruby/rake/metadata.xml2
-rw-r--r--dev-ruby/rake/rake-12.3.1.ebuild56
-rw-r--r--dev-ruby/rake/rake-12.3.2.ebuild52
-rw-r--r--dev-ruby/rake/rake-12.3.3.ebuild52
-rw-r--r--dev-ruby/rake/rake-13.0.6-r2.ebuild61
-rw-r--r--dev-ruby/rake/rake-13.1.0.ebuild61
-rw-r--r--dev-ruby/rake/rake-13.2.0.ebuild61
-rw-r--r--dev-ruby/rake/rake-13.2.1.ebuild61
-rw-r--r--dev-ruby/rantly/Manifest1
-rw-r--r--dev-ruby/rantly/metadata.xml11
-rw-r--r--dev-ruby/rantly/rantly-2.0.0-r1.ebuild25
-rw-r--r--dev-ruby/rash/Manifest1
-rw-r--r--dev-ruby/rash/metadata.xml11
-rw-r--r--dev-ruby/rash/rash-0.4.0-r2.ebuild31
-rw-r--r--dev-ruby/rash_alt/Manifest2
-rw-r--r--dev-ruby/rash_alt/metadata.xml2
-rw-r--r--dev-ruby/rash_alt/rash_alt-0.4.12.ebuild30
-rw-r--r--dev-ruby/rash_alt/rash_alt-0.4.7.ebuild30
-rw-r--r--dev-ruby/rb-gsl/Manifest1
-rw-r--r--dev-ruby/rb-gsl/metadata.xml11
-rw-r--r--dev-ruby/rb-gsl/rb-gsl-2.1.0.2.ebuild47
-rw-r--r--dev-ruby/rb-inotify/Manifest2
-rw-r--r--dev-ruby/rb-inotify/metadata.xml2
-rw-r--r--dev-ruby/rb-inotify/rb-inotify-0.10.0.ebuild35
-rw-r--r--dev-ruby/rb-inotify/rb-inotify-0.10.1-r1.ebuild34
-rw-r--r--dev-ruby/rb-inotify/rb-inotify-0.10.1.ebuild34
-rw-r--r--dev-ruby/rb-readline-r7/Manifest1
-rw-r--r--dev-ruby/rb-readline-r7/metadata.xml12
-rw-r--r--dev-ruby/rb-readline-r7/rb-readline-r7-0.5.2.0.ebuild23
-rw-r--r--dev-ruby/rb-readline/metadata.xml6
-rw-r--r--dev-ruby/rb-readline/rb-readline-0.5.5-r1.ebuild25
-rw-r--r--dev-ruby/rb-readline/rb-readline-0.5.5.ebuild26
-rw-r--r--dev-ruby/rbnacl/Manifest5
-rw-r--r--dev-ruby/rbnacl/files/rbnacl-buffer-size.patch24
-rw-r--r--dev-ruby/rbnacl/metadata.xml4
-rw-r--r--dev-ruby/rbnacl/rbnacl-4.0.2-r1.ebuild34
-rw-r--r--dev-ruby/rbnacl/rbnacl-5.0.0-r1.ebuild34
-rw-r--r--dev-ruby/rbnacl/rbnacl-6.0.1.ebuild32
-rw-r--r--dev-ruby/rbnacl/rbnacl-7.0.0.ebuild32
-rw-r--r--dev-ruby/rbnacl/rbnacl-7.1.1-r1.ebuild31
-rw-r--r--dev-ruby/rbpdf-font/Manifest2
-rw-r--r--dev-ruby/rbpdf-font/metadata.xml2
-rw-r--r--dev-ruby/rbpdf-font/rbpdf-font-1.19.1-r2.ebuild52
-rw-r--r--dev-ruby/rbpdf-font/rbpdf-font-1.19.1.ebuild29
-rw-r--r--dev-ruby/rbpdf/Manifest5
-rw-r--r--dev-ruby/rbpdf/metadata.xml2
-rw-r--r--dev-ruby/rbpdf/rbpdf-1.19.8.ebuild51
-rw-r--r--dev-ruby/rbpdf/rbpdf-1.20.0.ebuild47
-rw-r--r--dev-ruby/rbpdf/rbpdf-1.20.1.ebuild47
-rw-r--r--dev-ruby/rbpdf/rbpdf-1.21.2.ebuild54
-rw-r--r--dev-ruby/rbpdf/rbpdf-1.21.3.ebuild54
-rw-r--r--dev-ruby/rbs/Manifest8
-rw-r--r--dev-ruby/rbs/metadata.xml11
-rw-r--r--dev-ruby/rbs/rbs-2.8.4.ebuild49
-rw-r--r--dev-ruby/rbs/rbs-3.0.4.ebuild49
-rw-r--r--dev-ruby/rbs/rbs-3.1.3.ebuild52
-rw-r--r--dev-ruby/rbs/rbs-3.2.2.ebuild52
-rw-r--r--dev-ruby/rbs/rbs-3.4.0.ebuild54
-rw-r--r--dev-ruby/rbs/rbs-3.4.1.ebuild54
-rw-r--r--dev-ruby/rbs/rbs-3.4.2.ebuild54
-rw-r--r--dev-ruby/rbs/rbs-3.4.4.ebuild54
-rw-r--r--dev-ruby/rbst/Manifest2
-rw-r--r--dev-ruby/rbst/metadata.xml13
-rw-r--r--dev-ruby/rbst/rbst-0.5.1.ebuild51
-rw-r--r--dev-ruby/rbst/rbst-0.6.5-r1.ebuild60
-rw-r--r--dev-ruby/rbtree/Manifest1
-rw-r--r--dev-ruby/rbtree/metadata.xml8
-rw-r--r--dev-ruby/rbtree/rbtree-0.4.6.ebuild25
-rw-r--r--dev-ruby/rcairo/Manifest6
-rw-r--r--dev-ruby/rcairo/metadata.xml5
-rw-r--r--dev-ruby/rcairo/rcairo-1.15.11.ebuild81
-rw-r--r--dev-ruby/rcairo/rcairo-1.16.2.ebuild78
-rw-r--r--dev-ruby/rcairo/rcairo-1.16.4.ebuild81
-rw-r--r--dev-ruby/rcairo/rcairo-1.17.12.ebuild75
-rw-r--r--dev-ruby/rcairo/rcairo-1.17.13.ebuild75
-rw-r--r--dev-ruby/rcairo/rcairo-1.17.8.ebuild75
-rw-r--r--dev-ruby/rchardet/Manifest1
-rw-r--r--dev-ruby/rchardet/metadata.xml11
-rw-r--r--dev-ruby/rchardet/rchardet-1.8.0-r1.ebuild28
-rw-r--r--dev-ruby/rdiscount/Manifest3
-rw-r--r--dev-ruby/rdiscount/metadata.xml5
-rw-r--r--dev-ruby/rdiscount/rdiscount-2.2.0.1.ebuild47
-rw-r--r--dev-ruby/rdiscount/rdiscount-2.2.7.1.ebuild43
-rw-r--r--dev-ruby/rdiscount/rdiscount-2.2.7.3.ebuild43
-rw-r--r--dev-ruby/rdoc/Manifest5
-rw-r--r--dev-ruby/rdoc/metadata.xml4
-rw-r--r--dev-ruby/rdoc/rdoc-5.1.0.ebuild93
-rw-r--r--dev-ruby/rdoc/rdoc-6.1.1.ebuild94
-rw-r--r--dev-ruby/rdoc/rdoc-6.5.0.ebuild98
-rw-r--r--dev-ruby/rdoc/rdoc-6.6.2.ebuild98
-rw-r--r--dev-ruby/rdoc/rdoc-6.6.3.1-r1.ebuild99
-rw-r--r--dev-ruby/rdoc/rdoc-6.6.3.1.ebuild98
-rw-r--r--dev-ruby/rdtool/metadata.xml2
-rw-r--r--dev-ruby/rdtool/rdtool-0.6.38-r2.ebuild39
-rw-r--r--dev-ruby/rdtool/rdtool-0.6.38-r3.ebuild39
-rw-r--r--dev-ruby/recog/Manifest6
-rw-r--r--dev-ruby/recog/metadata.xml16
-rw-r--r--dev-ruby/recog/recog-2.1.31.ebuild39
-rw-r--r--dev-ruby/recog/recog-2.1.46.ebuild39
-rw-r--r--dev-ruby/recog/recog-2.3.2.ebuild38
-rw-r--r--dev-ruby/recog/recog-2.3.23.ebuild37
-rw-r--r--dev-ruby/recog/recog-3.1.4.ebuild30
-rw-r--r--dev-ruby/recog/recog-3.1.5.ebuild30
-rw-r--r--dev-ruby/red-colors/Manifest2
-rw-r--r--dev-ruby/red-colors/metadata.xml11
-rw-r--r--dev-ruby/red-colors/red-colors-0.3.0-r2.ebuild22
-rw-r--r--dev-ruby/red-colors/red-colors-0.4.0.ebuild24
-rw-r--r--dev-ruby/redcarpet/Manifest3
-rw-r--r--dev-ruby/redcarpet/metadata.xml2
-rw-r--r--dev-ruby/redcarpet/redcarpet-3.4.0.ebuild41
-rw-r--r--dev-ruby/redcarpet/redcarpet-3.5.0.ebuild44
-rw-r--r--dev-ruby/redcarpet/redcarpet-3.6.0.ebuild34
-rw-r--r--dev-ruby/redcloth/Manifest2
-rw-r--r--dev-ruby/redcloth/files/redcloth-4.3.2-cve-2023-31606-1.patch22
-rw-r--r--dev-ruby/redcloth/files/redcloth-4.3.2-cve-2023-31606-2.patch22
-rw-r--r--dev-ruby/redcloth/metadata.xml2
-rw-r--r--dev-ruby/redcloth/redcloth-4.3.2-r1.ebuild59
-rw-r--r--dev-ruby/redcloth/redcloth-4.3.2-r5.ebuild57
-rw-r--r--dev-ruby/redcloth/redcloth-4.3.3.ebuild51
-rw-r--r--dev-ruby/redcloth/redcloth-4.3.4.ebuild51
-rw-r--r--dev-ruby/redis/Manifest3
-rw-r--r--dev-ruby/redis/files/redis-3.2.1-local-redis-server.patch68
-rw-r--r--dev-ruby/redis/files/redis-4.0.1-local-redis-server.patch40
-rw-r--r--dev-ruby/redis/files/redis-4.8.0-local-redis-server.patch49
-rw-r--r--dev-ruby/redis/metadata.xml2
-rw-r--r--dev-ruby/redis/redis-3.3.5.ebuild39
-rw-r--r--dev-ruby/redis/redis-4.0.1.ebuild39
-rw-r--r--dev-ruby/redis/redis-4.8.0.ebuild50
-rw-r--r--dev-ruby/ref/metadata.xml2
-rw-r--r--dev-ruby/ref/ref-2.0.0-r1.ebuild26
-rw-r--r--dev-ruby/ref/ref-2.0.0.ebuild27
-rw-r--r--dev-ruby/regexp_parser/Manifest7
-rw-r--r--dev-ruby/regexp_parser/metadata.xml2
-rw-r--r--dev-ruby/regexp_parser/regexp_parser-0.5.0.ebuild38
-rw-r--r--dev-ruby/regexp_parser/regexp_parser-1.4.0.ebuild38
-rw-r--r--dev-ruby/regexp_parser/regexp_parser-1.5.1.ebuild38
-rw-r--r--dev-ruby/regexp_parser/regexp_parser-1.6.0.ebuild38
-rw-r--r--dev-ruby/regexp_parser/regexp_parser-2.8.2.ebuild36
-rw-r--r--dev-ruby/regexp_parser/regexp_parser-2.8.3.ebuild36
-rw-r--r--dev-ruby/regexp_parser/regexp_parser-2.9.0.ebuild35
-rw-r--r--dev-ruby/regexp_property_values/Manifest5
-rw-r--r--dev-ruby/regexp_property_values/metadata.xml5
-rw-r--r--dev-ruby/regexp_property_values/regexp_property_values-0.3.4.ebuild43
-rw-r--r--dev-ruby/regexp_property_values/regexp_property_values-0.3.5.ebuild43
-rw-r--r--dev-ruby/regexp_property_values/regexp_property_values-1.0.0.ebuild43
-rw-r--r--dev-ruby/regexp_property_values/regexp_property_values-1.4.0.ebuild37
-rw-r--r--dev-ruby/regexp_property_values/regexp_property_values-1.5.1.ebuild36
-rw-r--r--dev-ruby/reline/Manifest4
-rw-r--r--dev-ruby/reline/metadata.xml11
-rw-r--r--dev-ruby/reline/reline-0.4.3.ebuild31
-rw-r--r--dev-ruby/reline/reline-0.5.0.ebuild31
-rw-r--r--dev-ruby/reline/reline-0.5.1.ebuild31
-rw-r--r--dev-ruby/reline/reline-0.5.2.ebuild31
-rw-r--r--dev-ruby/request_store/Manifest4
-rw-r--r--dev-ruby/request_store/metadata.xml2
-rw-r--r--dev-ruby/request_store/request_store-1.0.5.ebuild22
-rw-r--r--dev-ruby/request_store/request_store-1.4.1.ebuild24
-rw-r--r--dev-ruby/request_store/request_store-1.5.1.ebuild23
-rw-r--r--dev-ruby/request_store/request_store-1.6.0.ebuild22
-rw-r--r--dev-ruby/rest-client/Manifest2
-rw-r--r--dev-ruby/rest-client/metadata.xml4
-rw-r--r--dev-ruby/rest-client/rest-client-2.0.2.ebuild36
-rw-r--r--dev-ruby/rest-client/rest-client-2.1.0-r1.ebuild44
-rw-r--r--dev-ruby/rex-arch/Manifest1
-rw-r--r--dev-ruby/rex-arch/metadata.xml12
-rw-r--r--dev-ruby/rex-arch/rex-arch-0.1.13.ebuild23
-rw-r--r--dev-ruby/rex-bin_tools/Manifest1
-rw-r--r--dev-ruby/rex-bin_tools/metadata.xml12
-rw-r--r--dev-ruby/rex-bin_tools/rex-bin_tools-0.1.6.ebuild31
-rw-r--r--dev-ruby/rex-core/Manifest1
-rw-r--r--dev-ruby/rex-core/metadata.xml12
-rw-r--r--dev-ruby/rex-core/rex-core-0.1.13.ebuild24
-rw-r--r--dev-ruby/rex-encoder/Manifest1
-rw-r--r--dev-ruby/rex-encoder/metadata.xml12
-rw-r--r--dev-ruby/rex-encoder/rex-encoder-0.1.4.ebuild32
-rw-r--r--dev-ruby/rex-exploitation/Manifest3
-rw-r--r--dev-ruby/rex-exploitation/metadata.xml12
-rw-r--r--dev-ruby/rex-exploitation/rex-exploitation-0.1.19.ebuild31
-rw-r--r--dev-ruby/rex-exploitation/rex-exploitation-0.1.20.ebuild31
-rw-r--r--dev-ruby/rex-exploitation/rex-exploitation-0.1.21.ebuild31
-rw-r--r--dev-ruby/rex-java/Manifest1
-rw-r--r--dev-ruby/rex-java/metadata.xml12
-rw-r--r--dev-ruby/rex-java/rex-java-0.1.5.ebuild21
-rw-r--r--dev-ruby/rex-mime/Manifest1
-rw-r--r--dev-ruby/rex-mime/metadata.xml12
-rw-r--r--dev-ruby/rex-mime/rex-mime-0.1.5.ebuild27
-rw-r--r--dev-ruby/rex-nop/Manifest1
-rw-r--r--dev-ruby/rex-nop/metadata.xml12
-rw-r--r--dev-ruby/rex-nop/rex-nop-0.1.1.ebuild27
-rw-r--r--dev-ruby/rex-ole/Manifest1
-rw-r--r--dev-ruby/rex-ole/metadata.xml12
-rw-r--r--dev-ruby/rex-ole/rex-ole-0.1.6.ebuild23
-rw-r--r--dev-ruby/rex-powershell/Manifest5
-rw-r--r--dev-ruby/rex-powershell/metadata.xml12
-rw-r--r--dev-ruby/rex-powershell/rex-powershell-0.1.77.ebuild24
-rw-r--r--dev-ruby/rex-powershell/rex-powershell-0.1.78.ebuild24
-rw-r--r--dev-ruby/rex-powershell/rex-powershell-0.1.79.ebuild24
-rw-r--r--dev-ruby/rex-powershell/rex-powershell-0.1.80.ebuild24
-rw-r--r--dev-ruby/rex-powershell/rex-powershell-0.1.82.ebuild24
-rw-r--r--dev-ruby/rex-random_identifier/Manifest1
-rw-r--r--dev-ruby/rex-random_identifier/metadata.xml12
-rw-r--r--dev-ruby/rex-random_identifier/rex-random_identifier-0.1.4.ebuild24
-rw-r--r--dev-ruby/rex-registry/Manifest1
-rw-r--r--dev-ruby/rex-registry/metadata.xml12
-rw-r--r--dev-ruby/rex-registry/rex-registry-0.1.3.ebuild22
-rw-r--r--dev-ruby/rex-rop_builder/Manifest1
-rw-r--r--dev-ruby/rex-rop_builder/metadata.xml12
-rw-r--r--dev-ruby/rex-rop_builder/rex-rop_builder-0.1.3.ebuild29
-rw-r--r--dev-ruby/rex-socket/Manifest4
-rw-r--r--dev-ruby/rex-socket/metadata.xml12
-rw-r--r--dev-ruby/rex-socket/rex-socket-0.1.15.ebuild23
-rw-r--r--dev-ruby/rex-socket/rex-socket-0.1.16.ebuild23
-rw-r--r--dev-ruby/rex-socket/rex-socket-0.1.17.ebuild23
-rw-r--r--dev-ruby/rex-socket/rex-socket-0.1.18.ebuild23
-rw-r--r--dev-ruby/rex-sslscan/Manifest1
-rw-r--r--dev-ruby/rex-sslscan/metadata.xml12
-rw-r--r--dev-ruby/rex-sslscan/rex-sslscan-0.1.5.ebuild25
-rw-r--r--dev-ruby/rex-struct2/Manifest1
-rw-r--r--dev-ruby/rex-struct2/metadata.xml12
-rw-r--r--dev-ruby/rex-struct2/rex-struct2-0.1.2.ebuild22
-rw-r--r--dev-ruby/rex-text/Manifest3
-rw-r--r--dev-ruby/rex-text/metadata.xml11
-rw-r--r--dev-ruby/rex-text/rex-text-0.2.20.ebuild23
-rw-r--r--dev-ruby/rex-text/rex-text-0.2.21.ebuild23
-rw-r--r--dev-ruby/rex-text/rex-text-0.2.22.ebuild23
-rw-r--r--dev-ruby/rex-zip/Manifest1
-rw-r--r--dev-ruby/rex-zip/metadata.xml12
-rw-r--r--dev-ruby/rex-zip/rex-zip-0.1.3.ebuild24
-rw-r--r--dev-ruby/rexical/Manifest1
-rw-r--r--dev-ruby/rexical/metadata.xml2
-rw-r--r--dev-ruby/rexical/rexical-1.0.5-r3.ebuild42
-rw-r--r--dev-ruby/rexical/rexical-1.0.7-r1.ebuild42
-rw-r--r--dev-ruby/rexical/rexical-1.0.7.ebuild35
-rw-r--r--dev-ruby/rexml/Manifest1
-rw-r--r--dev-ruby/rexml/metadata.xml11
-rw-r--r--dev-ruby/rexml/rexml-3.2.6.ebuild33
-rw-r--r--dev-ruby/rgen/Manifest2
-rw-r--r--dev-ruby/rgen/metadata.xml11
-rw-r--r--dev-ruby/rgen/rgen-0.8.3.ebuild36
-rw-r--r--dev-ruby/rgen/rgen-0.8.4.ebuild31
-rw-r--r--dev-ruby/rgl/Manifest1
-rw-r--r--dev-ruby/rgl/metadata.xml11
-rw-r--r--dev-ruby/rgl/rgl-0.6.6.ebuild34
-rw-r--r--dev-ruby/riel/Manifest1
-rw-r--r--dev-ruby/riel/metadata.xml11
-rw-r--r--dev-ruby/riel/riel-1.2.0-r2.ebuild23
-rw-r--r--dev-ruby/rinku/Manifest2
-rw-r--r--dev-ruby/rinku/metadata.xml2
-rw-r--r--dev-ruby/rinku/rinku-2.0.4.ebuild31
-rw-r--r--dev-ruby/rinku/rinku-2.0.5.ebuild31
-rw-r--r--dev-ruby/rinku/rinku-2.0.6-r1.ebuild27
-rw-r--r--dev-ruby/rinku/rinku-2.0.6.ebuild31
-rw-r--r--dev-ruby/ritex/metadata.xml2
-rw-r--r--dev-ruby/ritex/ritex-1.0.1-r1.ebuild33
-rw-r--r--dev-ruby/ritex/ritex-1.0.1.ebuild31
-rw-r--r--dev-ruby/rjb/Manifest3
-rw-r--r--dev-ruby/rjb/metadata.xml6
-rw-r--r--dev-ruby/rjb/rjb-1.5.5.ebuild81
-rw-r--r--dev-ruby/rjb/rjb-1.5.7.ebuild81
-rw-r--r--dev-ruby/rjb/rjb-1.6.9.ebuild73
-rw-r--r--dev-ruby/rkelly-remix/metadata.xml6
-rw-r--r--dev-ruby/rkelly-remix/rkelly-remix-0.0.7-r1.ebuild20
-rw-r--r--dev-ruby/rkelly-remix/rkelly-remix-0.0.7.ebuild22
-rw-r--r--dev-ruby/rmagick/Manifest9
-rw-r--r--dev-ruby/rmagick/metadata.xml5
-rw-r--r--dev-ruby/rmagick/rmagick-2.16.0.ebuild70
-rw-r--r--dev-ruby/rmagick/rmagick-3.0.0.ebuild70
-rw-r--r--dev-ruby/rmagick/rmagick-3.1.0.ebuild63
-rw-r--r--dev-ruby/rmagick/rmagick-3.2.0.ebuild64
-rw-r--r--dev-ruby/rmagick/rmagick-4.0.0.ebuild64
-rw-r--r--dev-ruby/rmagick/rmagick-4.3.0.ebuild82
-rw-r--r--dev-ruby/rmagick/rmagick-5.3.0.ebuild82
-rw-r--r--dev-ruby/rmagick/rmagick-5.4.4.ebuild80
-rw-r--r--dev-ruby/rmagick/rmagick-5.5.0.ebuild80
-rw-r--r--dev-ruby/roadie-rails/Manifest4
-rw-r--r--dev-ruby/roadie-rails/metadata.xml4
-rw-r--r--dev-ruby/roadie-rails/roadie-rails-1.2.1.ebuild41
-rw-r--r--dev-ruby/roadie-rails/roadie-rails-1.3.0.ebuild44
-rw-r--r--dev-ruby/roadie-rails/roadie-rails-3.0.0-r1.ebuild59
-rw-r--r--dev-ruby/roadie-rails/roadie-rails-3.1.0.ebuild59
-rw-r--r--dev-ruby/roadie/Manifest5
-rw-r--r--dev-ruby/roadie/metadata.xml4
-rw-r--r--dev-ruby/roadie/roadie-3.4.0.ebuild33
-rw-r--r--dev-ruby/roadie/roadie-3.5.0.ebuild34
-rw-r--r--dev-ruby/roadie/roadie-5.1.0.ebuild34
-rw-r--r--dev-ruby/roadie/roadie-5.2.0.ebuild34
-rw-r--r--dev-ruby/roadie/roadie-5.2.1.ebuild34
-rw-r--r--dev-ruby/robots/metadata.xml6
-rw-r--r--dev-ruby/robots/robots-0.10.1-r2.ebuild22
-rw-r--r--dev-ruby/robots/robots-0.10.1-r3.ebuild21
-rw-r--r--dev-ruby/rotp/Manifest2
-rw-r--r--dev-ruby/rotp/metadata.xml16
-rw-r--r--dev-ruby/rotp/rotp-6.2.2.ebuild36
-rw-r--r--dev-ruby/rotp/rotp-6.3.0.ebuild36
-rw-r--r--dev-ruby/rouge/Manifest9
-rw-r--r--dev-ruby/rouge/metadata.xml5
-rw-r--r--dev-ruby/rouge/rouge-3.30.0-r1.ebuild37
-rw-r--r--dev-ruby/rouge/rouge-3.6.0.ebuild31
-rw-r--r--dev-ruby/rouge/rouge-3.7.0.ebuild31
-rw-r--r--dev-ruby/rouge/rouge-3.8.0.ebuild33
-rw-r--r--dev-ruby/rouge/rouge-3.9.0.ebuild35
-rw-r--r--dev-ruby/rouge/rouge-4.1.2.ebuild36
-rw-r--r--dev-ruby/rouge/rouge-4.1.3.ebuild36
-rw-r--r--dev-ruby/rouge/rouge-4.2.0.ebuild36
-rw-r--r--dev-ruby/rouge/rouge-4.2.1.ebuild36
-rw-r--r--dev-ruby/rqrcode/Manifest2
-rw-r--r--dev-ruby/rqrcode/metadata.xml5
-rw-r--r--dev-ruby/rqrcode/rqrcode-0.10.1.ebuild30
-rw-r--r--dev-ruby/rqrcode/rqrcode-2.2.0.ebuild37
-rw-r--r--dev-ruby/rqrcode_core/Manifest1
-rw-r--r--dev-ruby/rqrcode_core/metadata.xml8
-rw-r--r--dev-ruby/rqrcode_core/rqrcode_core-1.2.0.ebuild32
-rw-r--r--dev-ruby/rr/Manifest2
-rw-r--r--dev-ruby/rr/metadata.xml2
-rw-r--r--dev-ruby/rr/rr-1.2.1.ebuild38
-rw-r--r--dev-ruby/rr/rr-3.1.0.ebuild31
-rw-r--r--dev-ruby/rrdtool-bindings/Manifest5
-rw-r--r--dev-ruby/rrdtool-bindings/metadata.xml27
-rw-r--r--dev-ruby/rrdtool-bindings/rrdtool-bindings-1.6.0.ebuild63
-rw-r--r--dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.0.ebuild60
-rw-r--r--dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.1-r1.ebuild60
-rw-r--r--dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.1.ebuild59
-rw-r--r--dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.2.ebuild60
-rw-r--r--dev-ruby/rrdtool-bindings/rrdtool-bindings-1.8.0.ebuild64
-rw-r--r--dev-ruby/rspec-block_is_expected/Manifest1
-rw-r--r--dev-ruby/rspec-block_is_expected/metadata.xml11
-rw-r--r--dev-ruby/rspec-block_is_expected/rspec-block_is_expected-1.0.5.ebuild23
-rw-r--r--dev-ruby/rspec-collection_matchers/Manifest3
-rw-r--r--dev-ruby/rspec-collection_matchers/metadata.xml2
-rw-r--r--dev-ruby/rspec-collection_matchers/rspec-collection_matchers-1.1.3-r1.ebuild24
-rw-r--r--dev-ruby/rspec-collection_matchers/rspec-collection_matchers-1.2.0.ebuild23
-rw-r--r--dev-ruby/rspec-collection_matchers/rspec-collection_matchers-1.2.1.ebuild23
-rw-r--r--dev-ruby/rspec-core/Manifest6
-rw-r--r--dev-ruby/rspec-core/files/rspec-core-3.8.0-ruby26.patch23
-rw-r--r--dev-ruby/rspec-core/metadata.xml2
-rw-r--r--dev-ruby/rspec-core/rspec-core-2.99.2-r2.ebuild106
-rw-r--r--dev-ruby/rspec-core/rspec-core-3.12.2.ebuild97
-rw-r--r--dev-ruby/rspec-core/rspec-core-3.12.3.ebuild97
-rw-r--r--dev-ruby/rspec-core/rspec-core-3.13.0.ebuild97
-rw-r--r--dev-ruby/rspec-core/rspec-core-3.7.1.ebuild99
-rw-r--r--dev-ruby/rspec-core/rspec-core-3.8.2.ebuild92
-rw-r--r--dev-ruby/rspec-expectations/Manifest6
-rw-r--r--dev-ruby/rspec-expectations/files/rspec-expectations-3.7.0-ruby25.patch33
-rw-r--r--dev-ruby/rspec-expectations/metadata.xml2
-rw-r--r--dev-ruby/rspec-expectations/rspec-expectations-2.99.2.ebuild59
-rw-r--r--dev-ruby/rspec-expectations/rspec-expectations-3.12.3.ebuild50
-rw-r--r--dev-ruby/rspec-expectations/rspec-expectations-3.12.4.ebuild50
-rw-r--r--dev-ruby/rspec-expectations/rspec-expectations-3.13.0.ebuild50
-rw-r--r--dev-ruby/rspec-expectations/rspec-expectations-3.7.0.ebuild49
-rw-r--r--dev-ruby/rspec-expectations/rspec-expectations-3.8.4.ebuild47
-rw-r--r--dev-ruby/rspec-files/Manifest1
-rw-r--r--dev-ruby/rspec-files/metadata.xml11
-rw-r--r--dev-ruby/rspec-files/rspec-files-1.1.3.ebuild29
-rw-r--r--dev-ruby/rspec-its/Manifest1
-rw-r--r--dev-ruby/rspec-its/metadata.xml2
-rw-r--r--dev-ruby/rspec-its/rspec-its-1.2.0-r1.ebuild30
-rw-r--r--dev-ruby/rspec-its/rspec-its-1.3.0-r1.ebuild21
-rw-r--r--dev-ruby/rspec-its/rspec-its-1.3.0.ebuild22
-rw-r--r--dev-ruby/rspec-json_expectations/Manifest1
-rw-r--r--dev-ruby/rspec-json_expectations/metadata.xml2
-rw-r--r--dev-ruby/rspec-json_expectations/rspec-json_expectations-2.1.0.ebuild31
-rw-r--r--dev-ruby/rspec-json_expectations/rspec-json_expectations-2.2.0-r1.ebuild25
-rw-r--r--dev-ruby/rspec-json_expectations/rspec-json_expectations-2.2.0.ebuild27
-rw-r--r--dev-ruby/rspec-memory/Manifest1
-rw-r--r--dev-ruby/rspec-memory/metadata.xml11
-rw-r--r--dev-ruby/rspec-memory/rspec-memory-1.0.4.ebuild30
-rw-r--r--dev-ruby/rspec-mocks/Manifest6
-rw-r--r--dev-ruby/rspec-mocks/files/rspec-mocks-3.7.0-ruby25-1.patch27
-rw-r--r--dev-ruby/rspec-mocks/files/rspec-mocks-3.7.0-ruby25-2.patch38
-rw-r--r--dev-ruby/rspec-mocks/metadata.xml2
-rw-r--r--dev-ruby/rspec-mocks/rspec-mocks-2.99.2.ebuild47
-rw-r--r--dev-ruby/rspec-mocks/rspec-mocks-3.12.6.ebuild54
-rw-r--r--dev-ruby/rspec-mocks/rspec-mocks-3.12.7.ebuild54
-rw-r--r--dev-ruby/rspec-mocks/rspec-mocks-3.13.0.ebuild54
-rw-r--r--dev-ruby/rspec-mocks/rspec-mocks-3.7.0.ebuild48
-rw-r--r--dev-ruby/rspec-mocks/rspec-mocks-3.8.1.ebuild46
-rw-r--r--dev-ruby/rspec-pending_for/Manifest1
-rw-r--r--dev-ruby/rspec-pending_for/metadata.xml11
-rw-r--r--dev-ruby/rspec-pending_for/rspec-pending_for-0.1.16.ebuild31
-rw-r--r--dev-ruby/rspec-rails/Manifest7
-rw-r--r--dev-ruby/rspec-rails/metadata.xml2
-rw-r--r--dev-ruby/rspec-rails/rspec-rails-3.7.2.ebuild54
-rw-r--r--dev-ruby/rspec-rails/rspec-rails-3.8.2.ebuild54
-rw-r--r--dev-ruby/rspec-rails/rspec-rails-5.1.2.ebuild60
-rw-r--r--dev-ruby/rspec-rails/rspec-rails-6.0.3.ebuild59
-rw-r--r--dev-ruby/rspec-rails/rspec-rails-6.0.4.ebuild59
-rw-r--r--dev-ruby/rspec-rails/rspec-rails-6.1.1.ebuild59
-rw-r--r--dev-ruby/rspec-rails/rspec-rails-6.1.2-r1.ebuild60
-rw-r--r--dev-ruby/rspec-retry/Manifest2
-rw-r--r--dev-ruby/rspec-retry/metadata.xml2
-rw-r--r--dev-ruby/rspec-retry/rspec-retry-0.6.1.ebuild25
-rw-r--r--dev-ruby/rspec-retry/rspec-retry-0.6.2.ebuild30
-rw-r--r--dev-ruby/rspec-stubbed_env/Manifest1
-rw-r--r--dev-ruby/rspec-stubbed_env/metadata.xml11
-rw-r--r--dev-ruby/rspec-stubbed_env/rspec-stubbed_env-1.0.1.ebuild29
-rw-r--r--dev-ruby/rspec-support/Manifest6
-rw-r--r--dev-ruby/rspec-support/metadata.xml2
-rw-r--r--dev-ruby/rspec-support/rspec-support-3.12.1.ebuild56
-rw-r--r--dev-ruby/rspec-support/rspec-support-3.12.2.ebuild56
-rw-r--r--dev-ruby/rspec-support/rspec-support-3.13.0.ebuild56
-rw-r--r--dev-ruby/rspec-support/rspec-support-3.13.1.ebuild56
-rw-r--r--dev-ruby/rspec-support/rspec-support-3.7.1.ebuild39
-rw-r--r--dev-ruby/rspec-support/rspec-support-3.8.2.ebuild43
-rw-r--r--dev-ruby/rspec/Manifest5
-rw-r--r--dev-ruby/rspec/metadata.xml2
-rw-r--r--dev-ruby/rspec/rspec-2.99.0.ebuild27
-rw-r--r--dev-ruby/rspec/rspec-3.12.0.ebuild26
-rw-r--r--dev-ruby/rspec/rspec-3.13.0.ebuild25
-rw-r--r--dev-ruby/rspec/rspec-3.7.0.ebuild27
-rw-r--r--dev-ruby/rspec/rspec-3.8.0.ebuild27
-rw-r--r--dev-ruby/rspectacular/Manifest1
-rw-r--r--dev-ruby/rspectacular/metadata.xml2
-rw-r--r--dev-ruby/rspectacular/rspectacular-0.70.7.ebuild23
-rw-r--r--dev-ruby/rspectacular/rspectacular-0.70.8-r2.ebuild28
-rw-r--r--dev-ruby/rspectacular/rspectacular-0.70.8.ebuild22
-rw-r--r--dev-ruby/rss/Manifest2
-rw-r--r--dev-ruby/rss/metadata.xml11
-rw-r--r--dev-ruby/rss/rss-0.2.9-r1.ebuild25
-rw-r--r--dev-ruby/rss/rss-0.3.0.ebuild29
-rw-r--r--dev-ruby/ruby-atk/Manifest3
-rw-r--r--dev-ruby/ruby-atk/metadata.xml5
-rw-r--r--dev-ruby/ruby-atk/ruby-atk-3.3.2.ebuild39
-rw-r--r--dev-ruby/ruby-atk/ruby-atk-3.3.6.ebuild39
-rw-r--r--dev-ruby/ruby-atk/ruby-atk-4.1.2.ebuild16
-rw-r--r--dev-ruby/ruby-augeas/metadata.xml22
-rw-r--r--dev-ruby/ruby-augeas/ruby-augeas-0.5.0-r3.ebuild37
-rw-r--r--dev-ruby/ruby-augeas/ruby-augeas-0.5.0-r5.ebuild25
-rw-r--r--dev-ruby/ruby-beautify/Manifest1
-rw-r--r--dev-ruby/ruby-beautify/metadata.xml11
-rw-r--r--dev-ruby/ruby-beautify/ruby-beautify-0.97.4.ebuild35
-rw-r--r--dev-ruby/ruby-cairo-gobject/Manifest3
-rw-r--r--dev-ruby/ruby-cairo-gobject/metadata.xml5
-rw-r--r--dev-ruby/ruby-cairo-gobject/ruby-cairo-gobject-3.3.2.ebuild36
-rw-r--r--dev-ruby/ruby-cairo-gobject/ruby-cairo-gobject-3.3.6.ebuild36
-rw-r--r--dev-ruby/ruby-cairo-gobject/ruby-cairo-gobject-4.1.2.ebuild18
-rw-r--r--dev-ruby/ruby-clutter-gdk/Manifest2
-rw-r--r--dev-ruby/ruby-clutter-gdk/metadata.xml12
-rw-r--r--dev-ruby/ruby-clutter-gdk/ruby-clutter-gdk-3.3.2.ebuild30
-rw-r--r--dev-ruby/ruby-clutter-gdk/ruby-clutter-gdk-3.3.6.ebuild30
-rw-r--r--dev-ruby/ruby-clutter-gstreamer/Manifest2
-rw-r--r--dev-ruby/ruby-clutter-gstreamer/metadata.xml12
-rw-r--r--dev-ruby/ruby-clutter-gstreamer/ruby-clutter-gstreamer-3.3.2.ebuild46
-rw-r--r--dev-ruby/ruby-clutter-gstreamer/ruby-clutter-gstreamer-3.3.6.ebuild46
-rw-r--r--dev-ruby/ruby-clutter-gtk/Manifest2
-rw-r--r--dev-ruby/ruby-clutter-gtk/metadata.xml12
-rw-r--r--dev-ruby/ruby-clutter-gtk/ruby-clutter-gtk-3.3.2.ebuild48
-rw-r--r--dev-ruby/ruby-clutter-gtk/ruby-clutter-gtk-3.3.6.ebuild48
-rw-r--r--dev-ruby/ruby-clutter/Manifest2
-rw-r--r--dev-ruby/ruby-clutter/metadata.xml12
-rw-r--r--dev-ruby/ruby-clutter/ruby-clutter-3.3.2.ebuild52
-rw-r--r--dev-ruby/ruby-clutter/ruby-clutter-3.3.6.ebuild52
-rw-r--r--dev-ruby/ruby-dict/metadata.xml2
-rw-r--r--dev-ruby/ruby-dict/ruby-dict-0.9.4-r4.ebuild34
-rw-r--r--dev-ruby/ruby-dict/ruby-dict-0.9.4-r5.ebuild38
-rw-r--r--dev-ruby/ruby-elf/Manifest1
-rw-r--r--dev-ruby/ruby-elf/metadata.xml8
-rw-r--r--dev-ruby/ruby-elf/ruby-elf-1.0.8.ebuild68
-rw-r--r--dev-ruby/ruby-feedparser/Manifest2
-rw-r--r--dev-ruby/ruby-feedparser/metadata.xml2
-rw-r--r--dev-ruby/ruby-feedparser/ruby-feedparser-0.11.2.ebuild40
-rw-r--r--dev-ruby/ruby-feedparser/ruby-feedparser-0.9.4.ebuild40
-rw-r--r--dev-ruby/ruby-filemagic/Manifest2
-rw-r--r--dev-ruby/ruby-filemagic/metadata.xml2
-rw-r--r--dev-ruby/ruby-filemagic/ruby-filemagic-0.7.2.ebuild48
-rw-r--r--dev-ruby/ruby-filemagic/ruby-filemagic-0.7.3.ebuild41
-rw-r--r--dev-ruby/ruby-gdk3/Manifest3
-rw-r--r--dev-ruby/ruby-gdk3/metadata.xml5
-rw-r--r--dev-ruby/ruby-gdk3/ruby-gdk3-3.3.2.ebuild45
-rw-r--r--dev-ruby/ruby-gdk3/ruby-gdk3-3.3.6.ebuild45
-rw-r--r--dev-ruby/ruby-gdk3/ruby-gdk3-4.1.2.ebuild21
-rw-r--r--dev-ruby/ruby-gdkpixbuf2/Manifest3
-rw-r--r--dev-ruby/ruby-gdkpixbuf2/metadata.xml5
-rw-r--r--dev-ruby/ruby-gdkpixbuf2/ruby-gdkpixbuf2-3.3.2.ebuild37
-rw-r--r--dev-ruby/ruby-gdkpixbuf2/ruby-gdkpixbuf2-3.3.6.ebuild37
-rw-r--r--dev-ruby/ruby-gdkpixbuf2/ruby-gdkpixbuf2-4.1.2.ebuild20
-rw-r--r--dev-ruby/ruby-gettext/Manifest5
-rw-r--r--dev-ruby/ruby-gettext/metadata.xml5
-rw-r--r--dev-ruby/ruby-gettext/ruby-gettext-3.2.9.ebuild68
-rw-r--r--dev-ruby/ruby-gettext/ruby-gettext-3.4.4.ebuild71
-rw-r--r--dev-ruby/ruby-gettext/ruby-gettext-3.4.6.ebuild71
-rw-r--r--dev-ruby/ruby-gettext/ruby-gettext-3.4.7.ebuild71
-rw-r--r--dev-ruby/ruby-gettext/ruby-gettext-3.4.9.ebuild71
-rw-r--r--dev-ruby/ruby-gio2/Manifest3
-rw-r--r--dev-ruby/ruby-gio2/metadata.xml20
-rw-r--r--dev-ruby/ruby-gio2/ruby-gio2-3.3.2.ebuild33
-rw-r--r--dev-ruby/ruby-gio2/ruby-gio2-3.3.6.ebuild33
-rw-r--r--dev-ruby/ruby-gio2/ruby-gio2-4.1.2.ebuild28
-rw-r--r--dev-ruby/ruby-glib2/Manifest3
-rw-r--r--dev-ruby/ruby-glib2/metadata.xml5
-rw-r--r--dev-ruby/ruby-glib2/ruby-glib2-3.3.2.ebuild31
-rw-r--r--dev-ruby/ruby-glib2/ruby-glib2-3.3.6.ebuild31
-rw-r--r--dev-ruby/ruby-glib2/ruby-glib2-4.1.2.ebuild21
-rw-r--r--dev-ruby/ruby-gnome2/metadata.xml11
-rw-r--r--dev-ruby/ruby-gnome2/ruby-gnome2-3.3.2.ebuild39
-rw-r--r--dev-ruby/ruby-gnome2/ruby-gnome2-3.3.6.ebuild39
-rw-r--r--dev-ruby/ruby-gobject-introspection/Manifest3
-rw-r--r--dev-ruby/ruby-gobject-introspection/metadata.xml5
-rw-r--r--dev-ruby/ruby-gobject-introspection/ruby-gobject-introspection-3.3.2.ebuild36
-rw-r--r--dev-ruby/ruby-gobject-introspection/ruby-gobject-introspection-3.3.6.ebuild36
-rw-r--r--dev-ruby/ruby-gobject-introspection/ruby-gobject-introspection-4.1.2.ebuild18
-rw-r--r--dev-ruby/ruby-gstreamer/Manifest2
-rw-r--r--dev-ruby/ruby-gstreamer/metadata.xml12
-rw-r--r--dev-ruby/ruby-gstreamer/ruby-gstreamer-3.3.2.ebuild36
-rw-r--r--dev-ruby/ruby-gstreamer/ruby-gstreamer-3.3.6.ebuild36
-rw-r--r--dev-ruby/ruby-gtk2/Manifest2
-rw-r--r--dev-ruby/ruby-gtk2/metadata.xml12
-rw-r--r--dev-ruby/ruby-gtk2/ruby-gtk2-3.3.2.ebuild38
-rw-r--r--dev-ruby/ruby-gtk2/ruby-gtk2-3.3.6.ebuild38
-rw-r--r--dev-ruby/ruby-gtk3/Manifest3
-rw-r--r--dev-ruby/ruby-gtk3/files/ruby-gtk3-4.1.2-c99.patch29
-rw-r--r--dev-ruby/ruby-gtk3/metadata.xml5
-rw-r--r--dev-ruby/ruby-gtk3/ruby-gtk3-3.3.2.ebuild41
-rw-r--r--dev-ruby/ruby-gtk3/ruby-gtk3-3.3.6.ebuild41
-rw-r--r--dev-ruby/ruby-gtk3/ruby-gtk3-4.1.2-r1.ebuild34
-rw-r--r--dev-ruby/ruby-gtk3/ruby-gtk3-4.1.2.ebuild30
-rw-r--r--dev-ruby/ruby-gtksourceview/Manifest2
-rw-r--r--dev-ruby/ruby-gtksourceview/metadata.xml12
-rw-r--r--dev-ruby/ruby-gtksourceview/ruby-gtksourceview-3.3.2.ebuild32
-rw-r--r--dev-ruby/ruby-gtksourceview/ruby-gtksourceview-3.3.6.ebuild32
-rw-r--r--dev-ruby/ruby-gtksourceview3/Manifest2
-rw-r--r--dev-ruby/ruby-gtksourceview3/metadata.xml12
-rw-r--r--dev-ruby/ruby-gtksourceview3/ruby-gtksourceview3-3.3.2.ebuild38
-rw-r--r--dev-ruby/ruby-gtksourceview3/ruby-gtksourceview3-3.3.6.ebuild38
-rw-r--r--dev-ruby/ruby-hmac/metadata.xml2
-rw-r--r--dev-ruby/ruby-hmac/ruby-hmac-0.4.0-r1.ebuild21
-rw-r--r--dev-ruby/ruby-hmac/ruby-hmac-0.4.0-r2.ebuild20
-rw-r--r--dev-ruby/ruby-ldap/Manifest1
-rw-r--r--dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-clang16-fix.patch12
-rw-r--r--dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-ruby32.patch24
-rw-r--r--dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-tainted.patch28
-rw-r--r--dev-ruby/ruby-ldap/metadata.xml4
-rw-r--r--dev-ruby/ruby-ldap/ruby-ldap-0.9.19.ebuild41
-rw-r--r--dev-ruby/ruby-ldap/ruby-ldap-0.9.20-r5.ebuild40
-rw-r--r--dev-ruby/ruby-ldap/ruby-ldap-0.9.20.ebuild41
-rw-r--r--dev-ruby/ruby-macho/Manifest4
-rw-r--r--dev-ruby/ruby-macho/metadata.xml6
-rw-r--r--dev-ruby/ruby-macho/ruby-macho-2.1.0.ebuild25
-rw-r--r--dev-ruby/ruby-macho/ruby-macho-2.2.0.ebuild25
-rw-r--r--dev-ruby/ruby-macho/ruby-macho-3.0.0.ebuild23
-rw-r--r--dev-ruby/ruby-macho/ruby-macho-4.0.1.ebuild23
-rw-r--r--dev-ruby/ruby-mp3info/metadata.xml2
-rw-r--r--dev-ruby/ruby-mp3info/ruby-mp3info-0.8.10-r1.ebuild33
-rw-r--r--dev-ruby/ruby-mp3info/ruby-mp3info-0.8.10.ebuild24
-rw-r--r--dev-ruby/ruby-net-ldap/Manifest3
-rw-r--r--dev-ruby/ruby-net-ldap/metadata.xml2
-rw-r--r--dev-ruby/ruby-net-ldap/ruby-net-ldap-0.16.1.ebuild28
-rw-r--r--dev-ruby/ruby-net-ldap/ruby-net-ldap-0.18.0.ebuild33
-rw-r--r--dev-ruby/ruby-net-ldap/ruby-net-ldap-0.19.0.ebuild33
-rw-r--r--dev-ruby/ruby-oci8/Manifest2
-rw-r--r--dev-ruby/ruby-oci8/metadata.xml20
-rw-r--r--dev-ruby/ruby-oci8/ruby-oci8-2.2.5.1.ebuild40
-rw-r--r--dev-ruby/ruby-oci8/ruby-oci8-2.2.7.ebuild40
-rw-r--r--dev-ruby/ruby-odbc/Manifest3
-rw-r--r--dev-ruby/ruby-odbc/metadata.xml2
-rw-r--r--dev-ruby/ruby-odbc/ruby-odbc-0.99999.ebuild61
-rw-r--r--dev-ruby/ruby-odbc/ruby-odbc-0.999991-r1.ebuild46
-rw-r--r--dev-ruby/ruby-odbc/ruby-odbc-0.999992.ebuild46
-rw-r--r--dev-ruby/ruby-oembed/Manifest3
-rw-r--r--dev-ruby/ruby-oembed/metadata.xml4
-rw-r--r--dev-ruby/ruby-oembed/ruby-oembed-0.12.0.ebuild38
-rw-r--r--dev-ruby/ruby-oembed/ruby-oembed-0.16.1.ebuild48
-rw-r--r--dev-ruby/ruby-oembed/ruby-oembed-0.17.0.ebuild41
-rw-r--r--dev-ruby/ruby-ole/Manifest2
-rw-r--r--dev-ruby/ruby-ole/metadata.xml2
-rw-r--r--dev-ruby/ruby-ole/ruby-ole-1.2.12.1.ebuild28
-rw-r--r--dev-ruby/ruby-ole/ruby-ole-1.2.12.2-r1.ebuild28
-rw-r--r--dev-ruby/ruby-ole/ruby-ole-1.2.12.2.ebuild28
-rw-r--r--dev-ruby/ruby-ole/ruby-ole-1.2.13.1.ebuild28
-rw-r--r--dev-ruby/ruby-opengl/metadata.xml2
-rw-r--r--dev-ruby/ruby-opengl/ruby-opengl-0.10.0-r1.ebuild39
-rw-r--r--dev-ruby/ruby-opengl/ruby-opengl-0.10.0.ebuild49
-rw-r--r--dev-ruby/ruby-openid/Manifest2
-rw-r--r--dev-ruby/ruby-openid/metadata.xml2
-rw-r--r--dev-ruby/ruby-openid/ruby-openid-2.7.0.ebuild30
-rw-r--r--dev-ruby/ruby-openid/ruby-openid-2.9.2.ebuild39
-rw-r--r--dev-ruby/ruby-pango/Manifest3
-rw-r--r--dev-ruby/ruby-pango/metadata.xml5
-rw-r--r--dev-ruby/ruby-pango/ruby-pango-3.3.2.ebuild34
-rw-r--r--dev-ruby/ruby-pango/ruby-pango-3.3.6.ebuild34
-rw-r--r--dev-ruby/ruby-pango/ruby-pango-4.1.2.ebuild33
-rw-r--r--dev-ruby/ruby-poppler/Manifest3
-rw-r--r--dev-ruby/ruby-poppler/metadata.xml5
-rw-r--r--dev-ruby/ruby-poppler/ruby-poppler-3.3.2.ebuild43
-rw-r--r--dev-ruby/ruby-poppler/ruby-poppler-3.3.6.ebuild43
-rw-r--r--dev-ruby/ruby-poppler/ruby-poppler-4.1.2.ebuild19
-rw-r--r--dev-ruby/ruby-prof/Manifest3
-rw-r--r--dev-ruby/ruby-prof/metadata.xml2
-rw-r--r--dev-ruby/ruby-prof/ruby-prof-0.18.0.ebuild62
-rw-r--r--dev-ruby/ruby-prof/ruby-prof-1.6.3-r1.ebuild44
-rw-r--r--dev-ruby/ruby-prof/ruby-prof-1.7.0.ebuild44
-rw-r--r--dev-ruby/ruby-progressbar/Manifest4
-rw-r--r--dev-ruby/ruby-progressbar/metadata.xml2
-rw-r--r--dev-ruby/ruby-progressbar/ruby-progressbar-1.10.0.ebuild35
-rw-r--r--dev-ruby/ruby-progressbar/ruby-progressbar-1.10.1.ebuild35
-rw-r--r--dev-ruby/ruby-progressbar/ruby-progressbar-1.13.0-r1.ebuild30
-rw-r--r--dev-ruby/ruby-progressbar/ruby-progressbar-1.13.0.ebuild28
-rw-r--r--dev-ruby/ruby-progressbar/ruby-progressbar-1.4.2-r1.ebuild28
-rw-r--r--dev-ruby/ruby-rc4/metadata.xml2
-rw-r--r--dev-ruby/ruby-rc4/ruby-rc4-0.1.5-r2.ebuild25
-rw-r--r--dev-ruby/ruby-rc4/ruby-rc4-0.1.5-r3.ebuild25
-rw-r--r--dev-ruby/ruby-romkan/metadata.xml2
-rw-r--r--dev-ruby/ruby-romkan/ruby-romkan-0.4-r6.ebuild31
-rw-r--r--dev-ruby/ruby-romkan/ruby-romkan-0.4-r7.ebuild33
-rw-r--r--dev-ruby/ruby-rsvg/Manifest2
-rw-r--r--dev-ruby/ruby-rsvg/metadata.xml12
-rw-r--r--dev-ruby/ruby-rsvg/ruby-rsvg-3.3.2.ebuild49
-rw-r--r--dev-ruby/ruby-rsvg/ruby-rsvg-3.3.6.ebuild49
-rw-r--r--dev-ruby/ruby-sdl/Manifest1
-rw-r--r--dev-ruby/ruby-sdl/metadata.xml16
-rw-r--r--dev-ruby/ruby-sdl/ruby-sdl-2.1.2-r2.ebuild68
-rw-r--r--dev-ruby/ruby-shadow/Manifest2
-rw-r--r--dev-ruby/ruby-shadow/files/ruby-shadow-2.5.1-ruby32-taint.patch54
-rw-r--r--dev-ruby/ruby-shadow/files/ruby-shadow-2.5.1-ruby32.patch31
-rw-r--r--dev-ruby/ruby-shadow/metadata.xml2
-rw-r--r--dev-ruby/ruby-shadow/ruby-shadow-2.5.0.ebuild31
-rw-r--r--dev-ruby/ruby-shadow/ruby-shadow-2.5.1.ebuild32
-rw-r--r--dev-ruby/ruby-shout/files/ruby-shout-2.2.2-errno.patch13
-rw-r--r--dev-ruby/ruby-shout/metadata.xml2
-rw-r--r--dev-ruby/ruby-shout/ruby-shout-2.2.2-r2.ebuild27
-rw-r--r--dev-ruby/ruby-shout/ruby-shout-2.2.2.ebuild38
-rw-r--r--dev-ruby/ruby-termios/Manifest2
-rw-r--r--dev-ruby/ruby-termios/metadata.xml2
-rw-r--r--dev-ruby/ruby-termios/ruby-termios-1.0.2-r1.ebuild32
-rw-r--r--dev-ruby/ruby-termios/ruby-termios-1.1.0-r2.ebuild24
-rw-r--r--dev-ruby/ruby-vte/Manifest2
-rw-r--r--dev-ruby/ruby-vte/metadata.xml12
-rw-r--r--dev-ruby/ruby-vte/ruby-vte-3.3.2.ebuild21
-rw-r--r--dev-ruby/ruby-vte/ruby-vte-3.3.6.ebuild21
-rw-r--r--dev-ruby/ruby-vte3/Manifest2
-rw-r--r--dev-ruby/ruby-vte3/metadata.xml12
-rw-r--r--dev-ruby/ruby-vte3/ruby-vte3-3.3.2.ebuild40
-rw-r--r--dev-ruby/ruby-vte3/ruby-vte3-3.3.6.ebuild40
-rw-r--r--dev-ruby/ruby-webkit2-gtk/Manifest2
-rw-r--r--dev-ruby/ruby-webkit2-gtk/metadata.xml12
-rw-r--r--dev-ruby/ruby-webkit2-gtk/ruby-webkit2-gtk-3.3.2.ebuild45
-rw-r--r--dev-ruby/ruby-webkit2-gtk/ruby-webkit2-gtk-3.3.6.ebuild45
-rw-r--r--dev-ruby/ruby-xslt/Manifest1
-rw-r--r--dev-ruby/ruby-xslt/metadata.xml8
-rw-r--r--dev-ruby/ruby-xslt/ruby-xslt-0.9.10.ebuild46
-rw-r--r--dev-ruby/ruby-yadis/metadata.xml2
-rw-r--r--dev-ruby/ruby-yadis/ruby-yadis-0.3.4-r2.ebuild37
-rw-r--r--dev-ruby/ruby-yadis/ruby-yadis-0.3.4-r3.ebuild36
-rw-r--r--dev-ruby/ruby2_keywords/Manifest1
-rw-r--r--dev-ruby/ruby2_keywords/metadata.xml12
-rw-r--r--dev-ruby/ruby2_keywords/ruby2_keywords-0.0.5-r1.ebuild20
-rw-r--r--dev-ruby/ruby2ruby/Manifest4
-rw-r--r--dev-ruby/ruby2ruby/metadata.xml2
-rw-r--r--dev-ruby/ruby2ruby/ruby2ruby-2.4.2.ebuild33
-rw-r--r--dev-ruby/ruby2ruby/ruby2ruby-2.4.3.ebuild33
-rw-r--r--dev-ruby/ruby2ruby/ruby2ruby-2.4.4.ebuild32
-rw-r--r--dev-ruby/ruby2ruby/ruby2ruby-2.5.0.ebuild32
-rw-r--r--dev-ruby/ruby_dep/Manifest1
-rw-r--r--dev-ruby/ruby_dep/metadata.xml11
-rw-r--r--dev-ruby/ruby_dep/ruby_dep-1.5.0.ebuild19
-rw-r--r--dev-ruby/ruby_engine/Manifest2
-rw-r--r--dev-ruby/ruby_engine/metadata.xml11
-rw-r--r--dev-ruby/ruby_engine/ruby_engine-2.0.0.ebuild18
-rw-r--r--dev-ruby/ruby_engine/ruby_engine-2.0.1.ebuild18
-rw-r--r--dev-ruby/ruby_gntp/Manifest1
-rw-r--r--dev-ruby/ruby_gntp/metadata.xml11
-rw-r--r--dev-ruby/ruby_gntp/ruby_gntp-0.3.4.ebuild29
-rw-r--r--dev-ruby/ruby_parser/Manifest6
-rw-r--r--dev-ruby/ruby_parser/metadata.xml2
-rw-r--r--dev-ruby/ruby_parser/ruby_parser-3.13.1.ebuild38
-rw-r--r--dev-ruby/ruby_parser/ruby_parser-3.19.2.ebuild36
-rw-r--r--dev-ruby/ruby_parser/ruby_parser-3.20.0.ebuild36
-rw-r--r--dev-ruby/ruby_parser/ruby_parser-3.20.1.ebuild36
-rw-r--r--dev-ruby/ruby_parser/ruby_parser-3.20.3.ebuild36
-rw-r--r--dev-ruby/ruby_parser/ruby_parser-3.21.0.ebuild33
-rw-r--r--dev-ruby/ruby_smb/Manifest5
-rw-r--r--dev-ruby/ruby_smb/files/ruby_smb-3.2.5-import-pathname-no-simplecov.patch21
-rw-r--r--dev-ruby/ruby_smb/metadata.xml8
-rw-r--r--dev-ruby/ruby_smb/ruby_smb-1.0.2.ebuild30
-rw-r--r--dev-ruby/ruby_smb/ruby_smb-1.0.3.ebuild30
-rw-r--r--dev-ruby/ruby_smb/ruby_smb-1.0.5.ebuild30
-rw-r--r--dev-ruby/ruby_smb/ruby_smb-1.1.0.ebuild30
-rw-r--r--dev-ruby/ruby_smb/ruby_smb-3.2.5.ebuild46
-rw-r--r--dev-ruby/ruby_version/Manifest1
-rw-r--r--dev-ruby/ruby_version/metadata.xml11
-rw-r--r--dev-ruby/ruby_version/ruby_version-1.0.3.ebuild18
-rw-r--r--dev-ruby/rubygems/Manifest13
-rw-r--r--dev-ruby/rubygems/files/gentoo-defaults-3.rb63
-rw-r--r--dev-ruby/rubygems/files/gentoo-defaults-5.rb49
-rw-r--r--dev-ruby/rubygems/files/gentoo-defaults.rb42
-rw-r--r--dev-ruby/rubygems/metadata.xml19
-rw-r--r--dev-ruby/rubygems/rubygems-2.7.10.ebuild118
-rw-r--r--dev-ruby/rubygems/rubygems-2.7.9.ebuild116
-rw-r--r--dev-ruby/rubygems/rubygems-3.0.3.ebuild120
-rw-r--r--dev-ruby/rubygems/rubygems-3.0.4-r1.ebuild92
-rw-r--r--dev-ruby/rubygems/rubygems-3.0.6.ebuild92
-rw-r--r--dev-ruby/rubygems/rubygems-3.3.26.ebuild113
-rw-r--r--dev-ruby/rubygems/rubygems-3.4.1.ebuild113
-rw-r--r--dev-ruby/rubygems/rubygems-3.4.15.ebuild116
-rw-r--r--dev-ruby/rubygems/rubygems-3.4.19.ebuild116
-rw-r--r--dev-ruby/rubygems/rubygems-3.4.22.ebuild116
-rw-r--r--dev-ruby/rubygems/rubygems-3.4.3.ebuild113
-rw-r--r--dev-ruby/rubygems/rubygems-3.4.6.ebuild113
-rw-r--r--dev-ruby/rubygems/rubygems-3.5.3.ebuild116
-rw-r--r--dev-ruby/rubyntlm/Manifest2
-rw-r--r--dev-ruby/rubyntlm/metadata.xml18
-rw-r--r--dev-ruby/rubyntlm/rubyntlm-0.6.2.ebuild24
-rw-r--r--dev-ruby/rubyntlm/rubyntlm-0.6.3-r1.ebuild22
-rw-r--r--dev-ruby/rubypants/Manifest2
-rw-r--r--dev-ruby/rubypants/metadata.xml2
-rw-r--r--dev-ruby/rubypants/rubypants-0.7.0.ebuild29
-rw-r--r--dev-ruby/rubypants/rubypants-0.7.1-r1.ebuild28
-rw-r--r--dev-ruby/rubytest-cli/metadata.xml5
-rw-r--r--dev-ruby/rubytest-cli/rubytest-cli-0.2.0-r1.ebuild21
-rw-r--r--dev-ruby/rubytest-cli/rubytest-cli-0.2.0.ebuild21
-rw-r--r--dev-ruby/rubytest/metadata.xml5
-rw-r--r--dev-ruby/rubytest/rubytest-0.8.1-r1.ebuild32
-rw-r--r--dev-ruby/rubytest/rubytest-0.8.1.ebuild26
-rw-r--r--dev-ruby/rubytter/metadata.xml20
-rw-r--r--dev-ruby/rubytter/rubytter-1.5.1-r1.ebuild26
-rw-r--r--dev-ruby/rubytter/rubytter-1.5.1-r3.ebuild31
-rw-r--r--dev-ruby/rubyzip/Manifest3
-rw-r--r--dev-ruby/rubyzip/metadata.xml2
-rw-r--r--dev-ruby/rubyzip/rubyzip-1.2.2.ebuild47
-rw-r--r--dev-ruby/rubyzip/rubyzip-1.2.3.ebuild47
-rw-r--r--dev-ruby/rubyzip/rubyzip-2.3.2-r1.ebuild54
-rw-r--r--dev-ruby/safe_yaml/Manifest1
-rw-r--r--dev-ruby/safe_yaml/metadata.xml8
-rw-r--r--dev-ruby/safe_yaml/safe_yaml-1.0.5.ebuild36
-rw-r--r--dev-ruby/sanitize/Manifest3
-rw-r--r--dev-ruby/sanitize/metadata.xml2
-rw-r--r--dev-ruby/sanitize/sanitize-4.6.6.ebuild32
-rw-r--r--dev-ruby/sanitize/sanitize-5.0.0.ebuild32
-rw-r--r--dev-ruby/sanitize/sanitize-6.1.0.ebuild32
-rw-r--r--dev-ruby/sass-listen/Manifest1
-rw-r--r--dev-ruby/sass-listen/files/listen-3.1.5-ruby26.patch33
-rw-r--r--dev-ruby/sass-listen/metadata.xml11
-rw-r--r--dev-ruby/sass-listen/sass-listen-4.0.0.ebuild47
-rw-r--r--dev-ruby/sass-rails/Manifest3
-rw-r--r--dev-ruby/sass-rails/metadata.xml2
-rw-r--r--dev-ruby/sass-rails/sass-rails-5.0.7.ebuild39
-rw-r--r--dev-ruby/sass-rails/sass-rails-5.0.8.ebuild38
-rw-r--r--dev-ruby/sass-rails/sass-rails-5.1.0-r1.ebuild38
-rw-r--r--dev-ruby/sass/Manifest3
-rw-r--r--dev-ruby/sass/files/sass-3.7.4-use-listen-not-sass-listen.patch14
-rw-r--r--dev-ruby/sass/metadata.xml5
-rw-r--r--dev-ruby/sass/sass-3.4.25-r1.ebuild42
-rw-r--r--dev-ruby/sass/sass-3.4.25.ebuild39
-rw-r--r--dev-ruby/sass/sass-3.5.7-r1.ebuild45
-rw-r--r--dev-ruby/sass/sass-3.5.7.ebuild43
-rw-r--r--dev-ruby/sass/sass-3.7.3.ebuild47
-rw-r--r--dev-ruby/sass/sass-3.7.4-r2.ebuild63
-rw-r--r--dev-ruby/sass/sass-3.7.4.ebuild47
-rw-r--r--dev-ruby/sassc-rails/Manifest1
-rw-r--r--dev-ruby/sassc-rails/files/sassc-rails-2.1.2-test-directories.patch73
-rw-r--r--dev-ruby/sassc-rails/files/sassc-rails-2.1.2-test-isolation.patch90
-rw-r--r--dev-ruby/sassc-rails/metadata.xml2
-rw-r--r--dev-ruby/sassc-rails/sassc-rails-2.1.1.ebuild40
-rw-r--r--dev-ruby/sassc-rails/sassc-rails-2.1.2-r3.ebuild50
-rw-r--r--dev-ruby/sassc-rails/sassc-rails-2.1.2.ebuild40
-rw-r--r--dev-ruby/sassc/Manifest2
-rw-r--r--dev-ruby/sassc/metadata.xml2
-rw-r--r--dev-ruby/sassc/sassc-2.0.1-r1.ebuild56
-rw-r--r--dev-ruby/sassc/sassc-2.4.0-r1.ebuild56
-rw-r--r--dev-ruby/sawyer/Manifest2
-rw-r--r--dev-ruby/sawyer/metadata.xml2
-rw-r--r--dev-ruby/sawyer/sawyer-0.8.2.ebuild29
-rw-r--r--dev-ruby/sawyer/sawyer-0.9.2.ebuild29
-rw-r--r--dev-ruby/sdoc/Manifest2
-rw-r--r--dev-ruby/sdoc/metadata.xml6
-rw-r--r--dev-ruby/sdoc/sdoc-1.0.0.ebuild27
-rw-r--r--dev-ruby/sdoc/sdoc-1.1.0-r1.ebuild32
-rw-r--r--dev-ruby/securerandom/Manifest2
-rw-r--r--dev-ruby/securerandom/metadata.xml11
-rw-r--r--dev-ruby/securerandom/securerandom-0.3.0.ebuild27
-rw-r--r--dev-ruby/securerandom/securerandom-0.3.1.ebuild27
-rw-r--r--dev-ruby/seed-fu/metadata.xml2
-rw-r--r--dev-ruby/seed-fu/seed-fu-2.3.9-r1.ebuild35
-rw-r--r--dev-ruby/seed-fu/seed-fu-2.3.9.ebuild33
-rw-r--r--dev-ruby/selenium-webdriver/Manifest13
-rw-r--r--dev-ruby/selenium-webdriver/files/selenium-webdriver-4.13.1-selenium-manager.patch20
-rw-r--r--dev-ruby/selenium-webdriver/metadata.xml4
-rw-r--r--dev-ruby/selenium-webdriver/selenium-webdriver-2.53.4-r1.ebuild38
-rw-r--r--dev-ruby/selenium-webdriver/selenium-webdriver-3.12.0.ebuild33
-rw-r--r--dev-ruby/selenium-webdriver/selenium-webdriver-3.14.1.ebuild33
-rw-r--r--dev-ruby/selenium-webdriver/selenium-webdriver-3.141.5926.ebuild33
-rw-r--r--dev-ruby/selenium-webdriver/selenium-webdriver-3.142.0.ebuild33
-rw-r--r--dev-ruby/selenium-webdriver/selenium-webdriver-3.142.1.ebuild33
-rw-r--r--dev-ruby/selenium-webdriver/selenium-webdriver-3.142.2.ebuild33
-rw-r--r--dev-ruby/selenium-webdriver/selenium-webdriver-3.142.3.ebuild33
-rw-r--r--dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0-r1.ebuild36
-rw-r--r--dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0.ebuild36
-rw-r--r--dev-ruby/selenium-webdriver/selenium-webdriver-4.10.0.ebuild38
-rw-r--r--dev-ruby/selenium-webdriver/selenium-webdriver-4.11.0.ebuild38
-rw-r--r--dev-ruby/selenium-webdriver/selenium-webdriver-4.14.0.ebuild38
-rw-r--r--dev-ruby/selenium-webdriver/selenium-webdriver-4.15.0.ebuild38
-rw-r--r--dev-ruby/semantic_puppet/Manifest3
-rw-r--r--dev-ruby/semantic_puppet/metadata.xml5
-rw-r--r--dev-ruby/semantic_puppet/semantic_puppet-1.0.2.ebuild20
-rw-r--r--dev-ruby/semantic_puppet/semantic_puppet-1.0.4.ebuild19
-rw-r--r--dev-ruby/semantic_puppet/semantic_puppet-1.1.0.ebuild18
-rw-r--r--dev-ruby/semver2/Manifest1
-rw-r--r--dev-ruby/semver2/metadata.xml8
-rw-r--r--dev-ruby/semver2/semver2-3.4.2.ebuild22
-rw-r--r--dev-ruby/sequel/Manifest5
-rw-r--r--dev-ruby/sequel/metadata.xml11
-rw-r--r--dev-ruby/sequel/sequel-5.74.0.ebuild33
-rw-r--r--dev-ruby/sequel/sequel-5.75.0.ebuild33
-rw-r--r--dev-ruby/sequel/sequel-5.76.0.ebuild33
-rw-r--r--dev-ruby/sequel/sequel-5.77.0.ebuild33
-rw-r--r--dev-ruby/sequel/sequel-5.78.0.ebuild33
-rw-r--r--dev-ruby/serialport/Manifest2
-rw-r--r--dev-ruby/serialport/files/serialport-1.3.2-clang16-build-fix.patch13
-rw-r--r--dev-ruby/serialport/metadata.xml13
-rw-r--r--dev-ruby/serialport/serialport-1.3.1.ebuild48
-rw-r--r--dev-ruby/serialport/serialport-1.3.2-r1.ebuild38
-rw-r--r--dev-ruby/serverengine/Manifest5
-rw-r--r--dev-ruby/serverengine/metadata.xml13
-rw-r--r--dev-ruby/serverengine/serverengine-2.0.6.ebuild35
-rw-r--r--dev-ruby/serverengine/serverengine-2.0.7.ebuild35
-rw-r--r--dev-ruby/serverengine/serverengine-2.1.0.ebuild35
-rw-r--r--dev-ruby/serverengine/serverengine-2.1.1.ebuild35
-rw-r--r--dev-ruby/serverengine/serverengine-2.3.2.ebuild38
-rw-r--r--dev-ruby/session/Manifest1
-rw-r--r--dev-ruby/session/metadata.xml8
-rw-r--r--dev-ruby/session/session-3.2.0.ebuild46
-rw-r--r--dev-ruby/set/Manifest2
-rw-r--r--dev-ruby/set/metadata.xml11
-rw-r--r--dev-ruby/set/set-1.0.3.ebuild23
-rw-r--r--dev-ruby/set/set-1.1.0-r1.ebuild29
-rw-r--r--dev-ruby/settingslogic/files/settingslogic-2.0.9-psych-4.patch31
-rw-r--r--dev-ruby/settingslogic/metadata.xml2
-rw-r--r--dev-ruby/settingslogic/settingslogic-2.0.9-r2.ebuild29
-rw-r--r--dev-ruby/settingslogic/settingslogic-2.0.9.ebuild24
-rw-r--r--dev-ruby/sexp_processor/Manifest5
-rw-r--r--dev-ruby/sexp_processor/metadata.xml5
-rw-r--r--dev-ruby/sexp_processor/sexp_processor-4.12.0.ebuild29
-rw-r--r--dev-ruby/sexp_processor/sexp_processor-4.12.1.ebuild29
-rw-r--r--dev-ruby/sexp_processor/sexp_processor-4.16.1.ebuild28
-rw-r--r--dev-ruby/sexp_processor/sexp_processor-4.17.0.ebuild28
-rw-r--r--dev-ruby/sexp_processor/sexp_processor-4.17.1.ebuild28
-rw-r--r--dev-ruby/sfl/Manifest1
-rw-r--r--dev-ruby/sfl/metadata.xml11
-rw-r--r--dev-ruby/sfl/sfl-2.2-r1.ebuild26
-rw-r--r--dev-ruby/shorturl/Manifest1
-rw-r--r--dev-ruby/shorturl/metadata.xml8
-rw-r--r--dev-ruby/shorturl/shorturl-1.0.0-r2.ebuild40
-rw-r--r--dev-ruby/shotgun/Manifest1
-rw-r--r--dev-ruby/shotgun/metadata.xml11
-rw-r--r--dev-ruby/shotgun/shotgun-0.9.2.ebuild36
-rw-r--r--dev-ruby/shoulda-context/Manifest1
-rw-r--r--dev-ruby/shoulda-context/files/shoulda-context-2.0.0-file-exists.patch26
-rw-r--r--dev-ruby/shoulda-context/metadata.xml14
-rw-r--r--dev-ruby/shoulda-context/shoulda-context-1.2.2-r1.ebuild35
-rw-r--r--dev-ruby/shoulda-context/shoulda-context-1.2.2.ebuild36
-rw-r--r--dev-ruby/shoulda-context/shoulda-context-2.0.0-r1.ebuild42
-rw-r--r--dev-ruby/shoulda-context/shoulda-context-2.0.0.ebuild40
-rw-r--r--dev-ruby/shoulda-matchers/Manifest9
-rw-r--r--dev-ruby/shoulda-matchers/metadata.xml6
-rw-r--r--dev-ruby/shoulda-matchers/shoulda-matchers-2.8.0-r1.ebuild24
-rw-r--r--dev-ruby/shoulda-matchers/shoulda-matchers-3.1.3-r2.ebuild23
-rw-r--r--dev-ruby/shoulda-matchers/shoulda-matchers-3.1.3.ebuild24
-rw-r--r--dev-ruby/shoulda-matchers/shoulda-matchers-4.0.1.ebuild33
-rw-r--r--dev-ruby/shoulda-matchers/shoulda-matchers-4.1.0.ebuild34
-rw-r--r--dev-ruby/shoulda-matchers/shoulda-matchers-4.1.1.ebuild34
-rw-r--r--dev-ruby/shoulda-matchers/shoulda-matchers-4.1.2.ebuild32
-rw-r--r--dev-ruby/shoulda-matchers/shoulda-matchers-4.5.1-r1.ebuild31
-rw-r--r--dev-ruby/shoulda-matchers/shoulda-matchers-5.3.0.ebuild48
-rw-r--r--dev-ruby/shoulda-matchers/shoulda-matchers-6.0.0.ebuild48
-rw-r--r--dev-ruby/shoulda-matchers/shoulda-matchers-6.1.0.ebuild48
-rw-r--r--dev-ruby/shoulda/Manifest2
-rw-r--r--dev-ruby/shoulda/metadata.xml2
-rw-r--r--dev-ruby/shoulda/shoulda-2.11.3-r2.ebuild27
-rw-r--r--dev-ruby/shoulda/shoulda-3.6.0-r2.ebuild33
-rw-r--r--dev-ruby/shoulda/shoulda-3.6.0-r3.ebuild33
-rw-r--r--dev-ruby/shoulda/shoulda-3.6.0.ebuild33
-rw-r--r--dev-ruby/shoulda/shoulda-4.0.0.ebuild33
-rw-r--r--dev-ruby/sigar/Manifest1
-rw-r--r--dev-ruby/sigar/metadata.xml8
-rw-r--r--dev-ruby/sigar/sigar-0.7.3.ebuild40
-rw-r--r--dev-ruby/sigdump/Manifest2
-rw-r--r--dev-ruby/sigdump/metadata.xml13
-rw-r--r--dev-ruby/sigdump/sigdump-0.2.4.ebuild20
-rw-r--r--dev-ruby/sigdump/sigdump-0.2.5.ebuild19
-rw-r--r--dev-ruby/simple-rss/metadata.xml13
-rw-r--r--dev-ruby/simple-rss/simple-rss-1.3.3-r1.ebuild31
-rw-r--r--dev-ruby/simple-rss/simple-rss-1.3.3.ebuild31
-rw-r--r--dev-ruby/simple_oauth/metadata.xml2
-rw-r--r--dev-ruby/simple_oauth/simple_oauth-0.3.1-r1.ebuild35
-rw-r--r--dev-ruby/simple_oauth/simple_oauth-0.3.1.ebuild35
-rw-r--r--dev-ruby/simplecov-html/Manifest2
-rw-r--r--dev-ruby/simplecov-html/metadata.xml5
-rw-r--r--dev-ruby/simplecov-html/simplecov-html-0.10.2.ebuild23
-rw-r--r--dev-ruby/simplecov-html/simplecov-html-0.12.3-r1.ebuild23
-rw-r--r--dev-ruby/simplecov/Manifest3
-rw-r--r--dev-ruby/simplecov/files/simplecov-0.22.0-ruby32-gentoo.patch19
-rw-r--r--dev-ruby/simplecov/metadata.xml4
-rw-r--r--dev-ruby/simplecov/simplecov-0.16.1-r1.ebuild48
-rw-r--r--dev-ruby/simplecov/simplecov-0.17.0.ebuild48
-rw-r--r--dev-ruby/simplecov/simplecov-0.22.0.ebuild57
-rw-r--r--dev-ruby/simplecov_json_formatter/Manifest1
-rw-r--r--dev-ruby/simplecov_json_formatter/metadata.xml11
-rw-r--r--dev-ruby/simplecov_json_formatter/simplecov_json_formatter-0.1.4.ebuild22
-rw-r--r--dev-ruby/simpleidn/Manifest1
-rw-r--r--dev-ruby/simpleidn/metadata.xml11
-rw-r--r--dev-ruby/simpleidn/simpleidn-0.2.1-r1.ebuild31
-rw-r--r--dev-ruby/sinatra-partial/Manifest1
-rw-r--r--dev-ruby/sinatra-partial/metadata.xml8
-rw-r--r--dev-ruby/sinatra-partial/sinatra-partial-1.0.1.ebuild28
-rw-r--r--dev-ruby/sinatra/Manifest7
-rw-r--r--dev-ruby/sinatra/metadata.xml14
-rw-r--r--dev-ruby/sinatra/sinatra-1.4.8.ebuild37
-rw-r--r--dev-ruby/sinatra/sinatra-2.0.5.ebuild31
-rw-r--r--dev-ruby/sinatra/sinatra-2.0.7.ebuild30
-rw-r--r--dev-ruby/sinatra/sinatra-3.0.5-r1.ebuild52
-rw-r--r--dev-ruby/sinatra/sinatra-3.0.6.ebuild48
-rw-r--r--dev-ruby/sinatra/sinatra-3.1.0.ebuild48
-rw-r--r--dev-ruby/sinatra/sinatra-3.2.0.ebuild49
-rw-r--r--dev-ruby/singleton/Manifest2
-rw-r--r--dev-ruby/singleton/metadata.xml11
-rw-r--r--dev-ruby/singleton/singleton-0.1.1.ebuild31
-rw-r--r--dev-ruby/singleton/singleton-0.2.0.ebuild31
-rw-r--r--dev-ruby/six/Manifest1
-rw-r--r--dev-ruby/six/metadata.xml11
-rw-r--r--dev-ruby/six/six-0.2.0.ebuild24
-rw-r--r--dev-ruby/slim/Manifest5
-rw-r--r--dev-ruby/slim/metadata.xml5
-rw-r--r--dev-ruby/slim/slim-3.0.9.ebuild50
-rw-r--r--dev-ruby/slim/slim-4.0.1.ebuild50
-rw-r--r--dev-ruby/slim/slim-5.1.1.ebuild76
-rw-r--r--dev-ruby/slim/slim-5.2.0.ebuild70
-rw-r--r--dev-ruby/slim/slim-5.2.1.ebuild70
-rw-r--r--dev-ruby/slop/Manifest3
-rw-r--r--dev-ruby/slop/metadata.xml5
-rw-r--r--dev-ruby/slop/slop-4.10.1.ebuild28
-rw-r--r--dev-ruby/slop/slop-4.6.2.ebuild26
-rw-r--r--dev-ruby/slop/slop-4.7.0.ebuild26
-rw-r--r--dev-ruby/slow_enumerator_tools/metadata.xml2
-rw-r--r--dev-ruby/slow_enumerator_tools/slow_enumerator_tools-1.1.0-r1.ebuild26
-rw-r--r--dev-ruby/slow_enumerator_tools/slow_enumerator_tools-1.1.0.ebuild27
-rw-r--r--dev-ruby/snaky_hash/Manifest1
-rw-r--r--dev-ruby/snaky_hash/metadata.xml11
-rw-r--r--dev-ruby/snaky_hash/snaky_hash-2.0.1.ebuild35
-rw-r--r--dev-ruby/sorted_set/Manifest1
-rw-r--r--dev-ruby/sorted_set/metadata.xml11
-rw-r--r--dev-ruby/sorted_set/sorted_set-1.0.3.ebuild28
-rw-r--r--dev-ruby/source_map/Manifest1
-rw-r--r--dev-ruby/source_map/metadata.xml11
-rw-r--r--dev-ruby/source_map/source_map-3.0.1.ebuild23
-rw-r--r--dev-ruby/sourcemap/metadata.xml2
-rw-r--r--dev-ruby/sourcemap/sourcemap-0.1.1-r1.ebuild23
-rw-r--r--dev-ruby/sourcemap/sourcemap-0.1.1.ebuild23
-rw-r--r--dev-ruby/sparklines/files/sparklines-0.5.2-rmagick4-deprecation.patch20
-rw-r--r--dev-ruby/sparklines/metadata.xml2
-rw-r--r--dev-ruby/sparklines/sparklines-0.5.2-r6.ebuild33
-rw-r--r--dev-ruby/sparklines/sparklines-0.5.2-r8.ebuild38
-rw-r--r--dev-ruby/spork/Manifest1
-rw-r--r--dev-ruby/spork/metadata.xml11
-rw-r--r--dev-ruby/spork/spork-0.9.2-r2.ebuild21
-rw-r--r--dev-ruby/spreadsheet/Manifest4
-rw-r--r--dev-ruby/spreadsheet/metadata.xml3
-rw-r--r--dev-ruby/spreadsheet/spreadsheet-1.1.9.ebuild30
-rw-r--r--dev-ruby/spreadsheet/spreadsheet-1.2.2.ebuild30
-rw-r--r--dev-ruby/spreadsheet/spreadsheet-1.2.4.ebuild30
-rw-r--r--dev-ruby/spreadsheet/spreadsheet-1.3.0.ebuild34
-rw-r--r--dev-ruby/spring/Manifest4
-rw-r--r--dev-ruby/spring/metadata.xml2
-rw-r--r--dev-ruby/spring/spring-2.0.2.ebuild32
-rw-r--r--dev-ruby/spring/spring-2.1.0.ebuild32
-rw-r--r--dev-ruby/spring/spring-4.1.1.ebuild33
-rw-r--r--dev-ruby/spring/spring-4.1.3.ebuild33
-rw-r--r--dev-ruby/sprockets-rails/Manifest2
-rw-r--r--dev-ruby/sprockets-rails/metadata.xml2
-rw-r--r--dev-ruby/sprockets-rails/sprockets-rails-3.2.1.ebuild38
-rw-r--r--dev-ruby/sprockets-rails/sprockets-rails-3.4.2-r2.ebuild43
-rw-r--r--dev-ruby/sprockets/Manifest2
-rw-r--r--dev-ruby/sprockets/files/sprockets-3.7.2-erb-deprecation.patch29
-rw-r--r--dev-ruby/sprockets/files/sprockets-3.7.2-kwargs.patch28
-rw-r--r--dev-ruby/sprockets/files/sprockets-3.7.2-ruby31-host-uri.patch65
-rw-r--r--dev-ruby/sprockets/metadata.xml2
-rw-r--r--dev-ruby/sprockets/sprockets-3.7.2-r3.ebuild70
-rw-r--r--dev-ruby/sprockets/sprockets-3.7.2.ebuild60
-rw-r--r--dev-ruby/sprockets/sprockets-4.2.0-r1.ebuild69
-rw-r--r--dev-ruby/sprockets/sprockets-4.2.1.ebuild69
-rw-r--r--dev-ruby/spy/Manifest3
-rw-r--r--dev-ruby/spy/metadata.xml2
-rw-r--r--dev-ruby/spy/spy-0.4.5.ebuild24
-rw-r--r--dev-ruby/spy/spy-1.0.0.ebuild24
-rw-r--r--dev-ruby/spy/spy-1.0.5.ebuild23
-rw-r--r--dev-ruby/sqlite3/Manifest8
-rw-r--r--dev-ruby/sqlite3/metadata.xml2
-rw-r--r--dev-ruby/sqlite3/sqlite3-1.3.13.ebuild83
-rw-r--r--dev-ruby/sqlite3/sqlite3-1.4.0.ebuild83
-rw-r--r--dev-ruby/sqlite3/sqlite3-1.4.1.ebuild83
-rw-r--r--dev-ruby/sqlite3/sqlite3-1.6.7.ebuild53
-rw-r--r--dev-ruby/sqlite3/sqlite3-1.6.9.ebuild53
-rw-r--r--dev-ruby/sqlite3/sqlite3-1.7.0.ebuild53
-rw-r--r--dev-ruby/sqlite3/sqlite3-1.7.2.ebuild53
-rw-r--r--dev-ruby/sqlite3/sqlite3-1.7.3.ebuild53
-rw-r--r--dev-ruby/sshkey/Manifest2
-rw-r--r--dev-ruby/sshkey/metadata.xml10
-rw-r--r--dev-ruby/sshkey/sshkey-1.9.0.ebuild19
-rw-r--r--dev-ruby/sshkey/sshkey-2.0.0-r1.ebuild15
-rw-r--r--dev-ruby/sshkey/sshkey-2.0.0.ebuild19
-rw-r--r--dev-ruby/sshkey/sshkey-3.0.0.ebuild15
-rw-r--r--dev-ruby/sshkit/Manifest7
-rw-r--r--dev-ruby/sshkit/metadata.xml2
-rw-r--r--dev-ruby/sshkit/sshkit-1.18.2.ebuild42
-rw-r--r--dev-ruby/sshkit/sshkit-1.19.1.ebuild42
-rw-r--r--dev-ruby/sshkit/sshkit-1.20.0.ebuild41
-rw-r--r--dev-ruby/sshkit/sshkit-1.21.5.ebuild42
-rw-r--r--dev-ruby/sshkit/sshkit-1.21.7.ebuild43
-rw-r--r--dev-ruby/sshkit/sshkit-1.22.0.ebuild43
-rw-r--r--dev-ruby/sshkit/sshkit-1.22.1.ebuild44
-rw-r--r--dev-ruby/stamp/metadata.xml2
-rw-r--r--dev-ruby/stamp/stamp-0.6.0-r1.ebuild41
-rw-r--r--dev-ruby/stamp/stamp-0.6.0.ebuild34
-rw-r--r--dev-ruby/state_machine/Manifest1
-rw-r--r--dev-ruby/state_machine/metadata.xml8
-rw-r--r--dev-ruby/state_machine/state_machine-1.2.0.ebuild28
-rw-r--r--dev-ruby/stomp/Manifest2
-rw-r--r--dev-ruby/stomp/files/stomp-1.4.10-rspec-3.12.patch149
-rw-r--r--dev-ruby/stomp/metadata.xml2
-rw-r--r--dev-ruby/stomp/stomp-1.4.10-r1.ebuild30
-rw-r--r--dev-ruby/stomp/stomp-1.4.4.ebuild21
-rw-r--r--dev-ruby/stream/Manifest1
-rw-r--r--dev-ruby/stream/metadata.xml11
-rw-r--r--dev-ruby/stream/stream-0.5.5.ebuild21
-rw-r--r--dev-ruby/stringex/Manifest1
-rw-r--r--dev-ruby/stringex/metadata.xml2
-rw-r--r--dev-ruby/stringex/stringex-2.8.5-r2.ebuild35
-rw-r--r--dev-ruby/stringex/stringex-2.8.5-r3.ebuild36
-rw-r--r--dev-ruby/stringex/stringex-2.8.5.ebuild33
-rw-r--r--dev-ruby/stringex/stringex-2.8.6.ebuild35
-rw-r--r--dev-ruby/stringio/Manifest3
-rw-r--r--dev-ruby/stringio/metadata.xml11
-rw-r--r--dev-ruby/stringio/stringio-3.0.7.ebuild30
-rw-r--r--dev-ruby/stringio/stringio-3.0.9.ebuild30
-rw-r--r--dev-ruby/stringio/stringio-3.1.0.ebuild32
-rw-r--r--dev-ruby/strptime/Manifest2
-rw-r--r--dev-ruby/strptime/metadata.xml5
-rw-r--r--dev-ruby/strptime/strptime-0.2.3.ebuild38
-rw-r--r--dev-ruby/strptime/strptime-0.2.5-r2.ebuild36
-rw-r--r--dev-ruby/strscan/Manifest5
-rw-r--r--dev-ruby/strscan/metadata.xml11
-rw-r--r--dev-ruby/strscan/strscan-3.0.6.ebuild32
-rw-r--r--dev-ruby/strscan/strscan-3.0.7.ebuild32
-rw-r--r--dev-ruby/strscan/strscan-3.0.8.ebuild32
-rw-r--r--dev-ruby/strscan/strscan-3.0.9.ebuild34
-rw-r--r--dev-ruby/strscan/strscan-3.1.0.ebuild34
-rw-r--r--dev-ruby/subexec/Manifest1
-rw-r--r--dev-ruby/subexec/metadata.xml11
-rw-r--r--dev-ruby/subexec/subexec-0.2.3-r1.ebuild32
-rw-r--r--dev-ruby/sus-fixtures-async/Manifest3
-rw-r--r--dev-ruby/sus-fixtures-async/files/sus-fixtures-async-0.1.1-tests-require.patch43
-rw-r--r--dev-ruby/sus-fixtures-async/metadata.xml11
-rw-r--r--dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.1.ebuild37
-rw-r--r--dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.2.ebuild37
-rw-r--r--dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.3.ebuild37
-rw-r--r--dev-ruby/sus/Manifest6
-rw-r--r--dev-ruby/sus/metadata.xml11
-rw-r--r--dev-ruby/sus/sus-0.21.1.ebuild32
-rw-r--r--dev-ruby/sus/sus-0.23.0.ebuild32
-rw-r--r--dev-ruby/sus/sus-0.24.0.ebuild32
-rw-r--r--dev-ruby/sus/sus-0.24.2.ebuild32
-rw-r--r--dev-ruby/sus/sus-0.24.5.ebuild31
-rw-r--r--dev-ruby/sus/sus-0.24.6.ebuild31
-rw-r--r--dev-ruby/sync/Manifest2
-rw-r--r--dev-ruby/sync/metadata.xml11
-rw-r--r--dev-ruby/sync/sync-0.5.0-r1.ebuild28
-rw-r--r--dev-ruby/sync/sync-0.5.0.ebuild26
-rw-r--r--dev-ruby/syntax/metadata.xml2
-rw-r--r--dev-ruby/syntax/syntax-1.2.2.ebuild10
-rw-r--r--dev-ruby/sys-filesystem/Manifest1
-rw-r--r--dev-ruby/sys-filesystem/metadata.xml15
-rw-r--r--dev-ruby/sys-filesystem/sys-filesystem-1.4.4.ebuild30
-rw-r--r--dev-ruby/sys-uname/Manifest1
-rw-r--r--dev-ruby/sys-uname/metadata.xml11
-rw-r--r--dev-ruby/sys-uname/sys-uname-1.2.3.ebuild22
-rw-r--r--dev-ruby/syslogger/Manifest2
-rw-r--r--dev-ruby/syslogger/metadata.xml2
-rw-r--r--dev-ruby/syslogger/syslogger-1.6.5.ebuild29
-rw-r--r--dev-ruby/syslogger/syslogger-1.6.6-r2.ebuild33
-rw-r--r--dev-ruby/systemu/metadata.xml14
-rw-r--r--dev-ruby/systemu/systemu-2.6.5-r1.ebuild25
-rw-r--r--dev-ruby/systemu/systemu-2.6.5.ebuild27
-rw-r--r--dev-ruby/tdiff/Manifest2
-rw-r--r--dev-ruby/tdiff/metadata.xml2
-rw-r--r--dev-ruby/tdiff/tdiff-0.3.3-r1.ebuild21
-rw-r--r--dev-ruby/tdiff/tdiff-0.3.4-r1.ebuild20
-rw-r--r--dev-ruby/tdiff/tdiff-0.3.4.ebuild21
-rw-r--r--dev-ruby/tdiff/tdiff-0.4.0.ebuild19
-rw-r--r--dev-ruby/temple/Manifest4
-rw-r--r--dev-ruby/temple/metadata.xml2
-rw-r--r--dev-ruby/temple/temple-0.10.2.ebuild22
-rw-r--r--dev-ruby/temple/temple-0.10.3.ebuild31
-rw-r--r--dev-ruby/temple/temple-0.8.0.ebuild28
-rw-r--r--dev-ruby/temple/temple-0.8.1.ebuild28
-rw-r--r--dev-ruby/term-ansicolor/Manifest2
-rw-r--r--dev-ruby/term-ansicolor/metadata.xml2
-rw-r--r--dev-ruby/term-ansicolor/term-ansicolor-1.7.1-r1.ebuild33
-rw-r--r--dev-ruby/term-ansicolor/term-ansicolor-1.7.1.ebuild34
-rw-r--r--dev-ruby/term-ansicolor/term-ansicolor-1.7.2.ebuild33
-rw-r--r--dev-ruby/term-ansicolor/term-ansicolor-1.8.0.ebuild33
-rw-r--r--dev-ruby/termcolor/Manifest1
-rw-r--r--dev-ruby/termcolor/metadata.xml11
-rw-r--r--dev-ruby/termcolor/termcolor-1.2.2.ebuild24
-rw-r--r--dev-ruby/terminal-table/Manifest3
-rw-r--r--dev-ruby/terminal-table/metadata.xml11
-rw-r--r--dev-ruby/terminal-table/terminal-table-1.8.0-r4.ebuild32
-rw-r--r--dev-ruby/terminal-table/terminal-table-2.0.0-r1.ebuild33
-rw-r--r--dev-ruby/terminal-table/terminal-table-3.0.2.ebuild32
-rw-r--r--dev-ruby/terrapin/Manifest1
-rw-r--r--dev-ruby/terrapin/metadata.xml8
-rw-r--r--dev-ruby/terrapin/terrapin-0.6.0.ebuild33
-rw-r--r--dev-ruby/test-unit-rr/metadata.xml4
-rw-r--r--dev-ruby/test-unit-rr/test-unit-rr-1.0.5-r2.ebuild27
-rw-r--r--dev-ruby/test-unit-rr/test-unit-rr-1.0.5.ebuild27
-rw-r--r--dev-ruby/test-unit-ruby-core/Manifest1
-rw-r--r--dev-ruby/test-unit-ruby-core/metadata.xml12
-rw-r--r--dev-ruby/test-unit-ruby-core/test-unit-ruby-core-1.0.5.ebuild16
-rw-r--r--dev-ruby/test-unit/Manifest7
-rw-r--r--dev-ruby/test-unit/files/testrb6
-rw-r--r--dev-ruby/test-unit/metadata.xml7
-rw-r--r--dev-ruby/test-unit/test-unit-3.2.7.ebuild34
-rw-r--r--dev-ruby/test-unit/test-unit-3.3.1.ebuild34
-rw-r--r--dev-ruby/test-unit/test-unit-3.3.2.ebuild34
-rw-r--r--dev-ruby/test-unit/test-unit-3.3.3.ebuild34
-rw-r--r--dev-ruby/test-unit/test-unit-3.5.8.ebuild36
-rw-r--r--dev-ruby/test-unit/test-unit-3.6.1.ebuild36
-rw-r--r--dev-ruby/test-unit/test-unit-3.6.2.ebuild36
-rw-r--r--dev-ruby/test_construct/Manifest1
-rw-r--r--dev-ruby/test_construct/metadata.xml2
-rw-r--r--dev-ruby/test_construct/test_construct-2.0.1-r1.ebuild28
-rw-r--r--dev-ruby/test_construct/test_construct-2.0.2-r1.ebuild29
-rw-r--r--dev-ruby/test_construct/test_construct-2.0.2.ebuild28
-rw-r--r--dev-ruby/test_declarative/files/test_declarative-0.0.6-backport-pr24.patch29
-rw-r--r--dev-ruby/test_declarative/metadata.xml2
-rw-r--r--dev-ruby/test_declarative/test_declarative-0.0.6-r1.ebuild41
-rw-r--r--dev-ruby/test_declarative/test_declarative-0.0.6.ebuild37
-rw-r--r--dev-ruby/text-hyphen/Manifest2
-rw-r--r--dev-ruby/text-hyphen/metadata.xml2
-rw-r--r--dev-ruby/text-hyphen/text-hyphen-1.4.1-r2.ebuild29
-rw-r--r--dev-ruby/text-hyphen/text-hyphen-1.5.0.ebuild28
-rw-r--r--dev-ruby/text/metadata.xml2
-rw-r--r--dev-ruby/text/text-1.3.1-r1.ebuild19
-rw-r--r--dev-ruby/text/text-1.3.1.ebuild19
-rw-r--r--dev-ruby/textpow/Manifest1
-rw-r--r--dev-ruby/textpow/metadata.xml11
-rw-r--r--dev-ruby/textpow/textpow-1.4.0.ebuild27
-rw-r--r--dev-ruby/thor/Manifest4
-rw-r--r--dev-ruby/thor/files/thor-1.2.2-no-coverage.patch29
-rw-r--r--dev-ruby/thor/metadata.xml5
-rw-r--r--dev-ruby/thor/thor-0.20.3.ebuild58
-rw-r--r--dev-ruby/thor/thor-1.2.2.ebuild78
-rw-r--r--dev-ruby/thor/thor-1.3.0.ebuild72
-rw-r--r--dev-ruby/thor/thor-1.3.1.ebuild72
-rw-r--r--dev-ruby/thread_order/Manifest1
-rw-r--r--dev-ruby/thread_order/metadata.xml2
-rw-r--r--dev-ruby/thread_order/thread_order-1.1.0.ebuild28
-rw-r--r--dev-ruby/thread_order/thread_order-1.1.1.ebuild8
-rw-r--r--dev-ruby/thread_safe/metadata.xml2
-rw-r--r--dev-ruby/thread_safe/thread_safe-0.3.6-r3.ebuild32
-rw-r--r--dev-ruby/thread_safe/thread_safe-0.3.6.ebuild37
-rw-r--r--dev-ruby/tidy-ext/Manifest1
-rw-r--r--dev-ruby/tidy-ext/files/11CVE-2015-5522.patch34
-rw-r--r--dev-ruby/tidy-ext/metadata.xml11
-rw-r--r--dev-ruby/tidy-ext/tidy-ext-0.1.14-r3.ebuild40
-rw-r--r--dev-ruby/tidy_table/metadata.xml2
-rw-r--r--dev-ruby/tidy_table/tidy_table-0.0.5-r4.ebuild27
-rw-r--r--dev-ruby/tidy_table/tidy_table-0.0.5-r5.ebuild31
-rw-r--r--dev-ruby/tidy_table/tidy_table-0.0.5-r6.ebuild30
-rw-r--r--dev-ruby/tilt/Manifest3
-rw-r--r--dev-ruby/tilt/metadata.xml2
-rw-r--r--dev-ruby/tilt/tilt-2.0.9.ebuild41
-rw-r--r--dev-ruby/tilt/tilt-2.2.0.ebuild41
-rw-r--r--dev-ruby/tilt/tilt-2.3.0.ebuild41
-rw-r--r--dev-ruby/time/Manifest2
-rw-r--r--dev-ruby/time/metadata.xml11
-rw-r--r--dev-ruby/time/time-0.2.2.ebuild33
-rw-r--r--dev-ruby/time/time-0.3.0.ebuild33
-rw-r--r--dev-ruby/timecop/Manifest5
-rw-r--r--dev-ruby/timecop/metadata.xml4
-rw-r--r--dev-ruby/timecop/timecop-0.8.1.ebuild39
-rw-r--r--dev-ruby/timecop/timecop-0.9.1.ebuild39
-rw-r--r--dev-ruby/timecop/timecop-0.9.6.ebuild39
-rw-r--r--dev-ruby/timecop/timecop-0.9.7.ebuild40
-rw-r--r--dev-ruby/timecop/timecop-0.9.8.ebuild40
-rw-r--r--dev-ruby/timeout/Manifest3
-rw-r--r--dev-ruby/timeout/metadata.xml11
-rw-r--r--dev-ruby/timeout/timeout-0.3.2.ebuild27
-rw-r--r--dev-ruby/timeout/timeout-0.4.0.ebuild29
-rw-r--r--dev-ruby/timeout/timeout-0.4.1.ebuild29
-rw-r--r--dev-ruby/timers/Manifest4
-rw-r--r--dev-ruby/timers/files/timers-4.3.5-timers-slow.patch259
-rw-r--r--dev-ruby/timers/metadata.xml5
-rw-r--r--dev-ruby/timers/timers-4.1.2.ebuild29
-rw-r--r--dev-ruby/timers/timers-4.2.0.ebuild31
-rw-r--r--dev-ruby/timers/timers-4.3.0.ebuild31
-rw-r--r--dev-ruby/timers/timers-4.3.5-r1.ebuild33
-rw-r--r--dev-ruby/tins/Manifest6
-rw-r--r--dev-ruby/tins/metadata.xml2
-rw-r--r--dev-ruby/tins/tins-1.20.2.ebuild28
-rw-r--r--dev-ruby/tins/tins-1.20.3.ebuild28
-rw-r--r--dev-ruby/tins/tins-1.21.0.ebuild28
-rw-r--r--dev-ruby/tins/tins-1.21.1.ebuild28
-rw-r--r--dev-ruby/tins/tins-1.32.1.ebuild29
-rw-r--r--dev-ruby/tins/tins-1.33.0.ebuild29
-rw-r--r--dev-ruby/tokyocabinet/metadata.xml2
-rw-r--r--dev-ruby/tokyocabinet/tokyocabinet-1.32.0-r1.ebuild23
-rw-r--r--dev-ruby/tokyocabinet/tokyocabinet-1.32.0.ebuild35
-rw-r--r--dev-ruby/tomlrb/Manifest3
-rw-r--r--dev-ruby/tomlrb/metadata.xml2
-rw-r--r--dev-ruby/tomlrb/tomlrb-1.2.6.ebuild26
-rw-r--r--dev-ruby/tomlrb/tomlrb-1.2.8.ebuild26
-rw-r--r--dev-ruby/tomlrb/tomlrb-2.0.3.ebuild30
-rw-r--r--dev-ruby/totoridipjp/Manifest1
-rw-r--r--dev-ruby/totoridipjp/metadata.xml14
-rw-r--r--dev-ruby/totoridipjp/totoridipjp-0.1.0.ebuild23
-rw-r--r--dev-ruby/transaction-simple/metadata.xml4
-rw-r--r--dev-ruby/transaction-simple/transaction-simple-1.4.0.2-r2.ebuild31
-rw-r--r--dev-ruby/transaction-simple/transaction-simple-1.4.0.2-r3.ebuild30
-rw-r--r--dev-ruby/travis/Manifest2
-rw-r--r--dev-ruby/travis/metadata.xml11
-rw-r--r--dev-ruby/travis/travis-1.8.10.ebuild57
-rw-r--r--dev-ruby/travis/travis-1.8.9-r1.ebuild57
-rw-r--r--dev-ruby/treetop/Manifest2
-rw-r--r--dev-ruby/treetop/metadata.xml2
-rw-r--r--dev-ruby/treetop/treetop-1.6.10.ebuild31
-rw-r--r--dev-ruby/treetop/treetop-1.6.12.ebuild37
-rw-r--r--dev-ruby/trollop/Manifest1
-rw-r--r--dev-ruby/trollop/metadata.xml8
-rw-r--r--dev-ruby/trollop/trollop-2.1.3.ebuild29
-rw-r--r--dev-ruby/ttfunk/Manifest3
-rw-r--r--dev-ruby/ttfunk/metadata.xml2
-rw-r--r--dev-ruby/ttfunk/ttfunk-1.5.1.ebuild25
-rw-r--r--dev-ruby/ttfunk/ttfunk-1.7.0-r1.ebuild26
-rw-r--r--dev-ruby/ttfunk/ttfunk-1.8.0.ebuild28
-rw-r--r--dev-ruby/tty-color/Manifest3
-rw-r--r--dev-ruby/tty-color/metadata.xml4
-rw-r--r--dev-ruby/tty-color/tty-color-0.4.3.ebuild24
-rw-r--r--dev-ruby/tty-color/tty-color-0.5.0.ebuild24
-rw-r--r--dev-ruby/tty-color/tty-color-0.6.0-r1.ebuild30
-rw-r--r--dev-ruby/tty-color/tty-color-0.6.0.ebuild30
-rw-r--r--dev-ruby/tty-command/Manifest2
-rw-r--r--dev-ruby/tty-command/metadata.xml4
-rw-r--r--dev-ruby/tty-command/tty-command-0.10.1-r1.ebuild32
-rw-r--r--dev-ruby/tty-command/tty-command-0.8.2.ebuild31
-rw-r--r--dev-ruby/tty-cursor/Manifest2
-rw-r--r--dev-ruby/tty-cursor/metadata.xml4
-rw-r--r--dev-ruby/tty-cursor/tty-cursor-0.7.0.ebuild24
-rw-r--r--dev-ruby/tty-cursor/tty-cursor-0.7.1-r1.ebuild29
-rw-r--r--dev-ruby/tty-cursor/tty-cursor-0.7.1.ebuild29
-rw-r--r--dev-ruby/tty-editor/Manifest1
-rw-r--r--dev-ruby/tty-editor/metadata.xml11
-rw-r--r--dev-ruby/tty-editor/tty-editor-0.7.0.ebuild31
-rw-r--r--dev-ruby/tty-file/Manifest2
-rw-r--r--dev-ruby/tty-file/metadata.xml4
-rw-r--r--dev-ruby/tty-file/tty-file-0.10.0-r1.ebuild41
-rw-r--r--dev-ruby/tty-file/tty-file-0.7.0.ebuild41
-rw-r--r--dev-ruby/tty-platform/Manifest3
-rw-r--r--dev-ruby/tty-platform/metadata.xml4
-rw-r--r--dev-ruby/tty-platform/tty-platform-0.2.0.ebuild24
-rw-r--r--dev-ruby/tty-platform/tty-platform-0.2.1.ebuild24
-rw-r--r--dev-ruby/tty-platform/tty-platform-0.3.0-r1.ebuild26
-rw-r--r--dev-ruby/tty-prompt/Manifest2
-rw-r--r--dev-ruby/tty-prompt/metadata.xml4
-rw-r--r--dev-ruby/tty-prompt/tty-prompt-0.19.0.ebuild30
-rw-r--r--dev-ruby/tty-prompt/tty-prompt-0.23.1-r1.ebuild32
-rw-r--r--dev-ruby/tty-prompt/tty-prompt-0.23.1.ebuild32
-rw-r--r--dev-ruby/tty-reader/Manifest2
-rw-r--r--dev-ruby/tty-reader/metadata.xml4
-rw-r--r--dev-ruby/tty-reader/tty-reader-0.6.0-r1.ebuild32
-rw-r--r--dev-ruby/tty-reader/tty-reader-0.9.0-r1.ebuild35
-rw-r--r--dev-ruby/tty-reader/tty-reader-0.9.0.ebuild35
-rw-r--r--dev-ruby/tty-screen/Manifest3
-rw-r--r--dev-ruby/tty-screen/files/tty-screen-0.8.1-ioctl-test.patch55
-rw-r--r--dev-ruby/tty-screen/metadata.xml4
-rw-r--r--dev-ruby/tty-screen/tty-screen-0.7.0.ebuild24
-rw-r--r--dev-ruby/tty-screen/tty-screen-0.8.1.ebuild32
-rw-r--r--dev-ruby/tty-screen/tty-screen-0.8.2.ebuild34
-rw-r--r--dev-ruby/tty-which/Manifest2
-rw-r--r--dev-ruby/tty-which/metadata.xml4
-rw-r--r--dev-ruby/tty-which/tty-which-0.4.1.ebuild24
-rw-r--r--dev-ruby/tty-which/tty-which-0.5.0.ebuild35
-rw-r--r--dev-ruby/turbolinks-source/Manifest1
-rw-r--r--dev-ruby/turbolinks-source/metadata.xml11
-rw-r--r--dev-ruby/turbolinks-source/turbolinks-source-5.2.0.ebuild21
-rw-r--r--dev-ruby/turbolinks/Manifest2
-rw-r--r--dev-ruby/turbolinks/metadata.xml11
-rw-r--r--dev-ruby/turbolinks/turbolinks-2.5.4.ebuild23
-rw-r--r--dev-ruby/turbolinks/turbolinks-5.2.0.ebuild21
-rw-r--r--dev-ruby/twitter-text/Manifest4
-rw-r--r--dev-ruby/twitter-text/files/twitter-text-3.1.0-frozen-string.patch69
-rw-r--r--dev-ruby/twitter-text/metadata.xml2
-rw-r--r--dev-ruby/twitter-text/twitter-text-1.14.7.ebuild30
-rw-r--r--dev-ruby/twitter-text/twitter-text-2.1.0.ebuild33
-rw-r--r--dev-ruby/twitter-text/twitter-text-3.0.0.ebuild35
-rw-r--r--dev-ruby/twitter-text/twitter-text-3.1.0-r2.ebuild37
-rw-r--r--dev-ruby/twitter/Manifest3
-rw-r--r--dev-ruby/twitter/metadata.xml4
-rw-r--r--dev-ruby/twitter/twitter-6.2.0.ebuild60
-rw-r--r--dev-ruby/twitter/twitter-8.0.0.ebuild58
-rw-r--r--dev-ruby/twitter/twitter-8.0.1.ebuild59
-rw-r--r--dev-ruby/typed-array/metadata.xml3
-rw-r--r--dev-ruby/typed-array/typed-array-0.1.2-r1.ebuild25
-rw-r--r--dev-ruby/typed-array/typed-array-0.1.2-r2.ebuild26
-rw-r--r--dev-ruby/typeprof/Manifest5
-rw-r--r--dev-ruby/typeprof/metadata.xml11
-rw-r--r--dev-ruby/typeprof/typeprof-0.21.10.ebuild32
-rw-r--r--dev-ruby/typeprof/typeprof-0.21.11.ebuild32
-rw-r--r--dev-ruby/typeprof/typeprof-0.21.7.ebuild32
-rw-r--r--dev-ruby/typeprof/typeprof-0.21.8.ebuild32
-rw-r--r--dev-ruby/typeprof/typeprof-0.21.9.ebuild32
-rw-r--r--dev-ruby/typhoeus/Manifest3
-rw-r--r--dev-ruby/typhoeus/metadata.xml4
-rw-r--r--dev-ruby/typhoeus/typhoeus-0.6.9-r1.ebuild30
-rw-r--r--dev-ruby/typhoeus/typhoeus-1.3.1.ebuild30
-rw-r--r--dev-ruby/typhoeus/typhoeus-1.4.1.ebuild46
-rw-r--r--dev-ruby/tzinfo/Manifest4
-rw-r--r--dev-ruby/tzinfo/files/tzinfo-2.0.6-ruby33.patch35
-rw-r--r--dev-ruby/tzinfo/metadata.xml14
-rw-r--r--dev-ruby/tzinfo/tzinfo-1.2.11.ebuild34
-rw-r--r--dev-ruby/tzinfo/tzinfo-1.2.5.ebuild32
-rw-r--r--dev-ruby/tzinfo/tzinfo-2.0.0.ebuild47
-rw-r--r--dev-ruby/tzinfo/tzinfo-2.0.6.ebuild50
-rw-r--r--dev-ruby/uconv/metadata.xml2
-rw-r--r--dev-ruby/uconv/uconv-0.6.1-r2.ebuild37
-rw-r--r--dev-ruby/uconv/uconv-0.6.1-r3.ebuild37
-rw-r--r--dev-ruby/uglifier/Manifest3
-rw-r--r--dev-ruby/uglifier/metadata.xml2
-rw-r--r--dev-ruby/uglifier/uglifier-4.1.19.ebuild33
-rw-r--r--dev-ruby/uglifier/uglifier-4.1.20.ebuild33
-rw-r--r--dev-ruby/uglifier/uglifier-4.2.0-r1.ebuild31
-rw-r--r--dev-ruby/ultraviolet/Manifest1
-rw-r--r--dev-ruby/ultraviolet/metadata.xml11
-rw-r--r--dev-ruby/ultraviolet/ultraviolet-1.0.1.ebuild28
-rw-r--r--dev-ruby/unf/metadata.xml2
-rw-r--r--dev-ruby/unf/unf-0.1.4-r1.ebuild46
-rw-r--r--dev-ruby/unf/unf-0.1.4.ebuild46
-rw-r--r--dev-ruby/unf_ext/Manifest5
-rw-r--r--dev-ruby/unf_ext/metadata.xml5
-rw-r--r--dev-ruby/unf_ext/unf_ext-0.0.7.5.ebuild45
-rw-r--r--dev-ruby/unf_ext/unf_ext-0.0.7.6.ebuild45
-rw-r--r--dev-ruby/unf_ext/unf_ext-0.0.8.2.ebuild37
-rw-r--r--dev-ruby/unf_ext/unf_ext-0.0.9.1.ebuild37
-rw-r--r--dev-ruby/unf_ext/unf_ext-0.0.9.ebuild37
-rw-r--r--dev-ruby/unicode-display_width/Manifest3
-rw-r--r--dev-ruby/unicode-display_width/metadata.xml12
-rw-r--r--dev-ruby/unicode-display_width/unicode-display_width-1.7.0-r1.ebuild28
-rw-r--r--dev-ruby/unicode-display_width/unicode-display_width-2.4.2.ebuild29
-rw-r--r--dev-ruby/unicode-display_width/unicode-display_width-2.5.0.ebuild29
-rw-r--r--dev-ruby/unindent/metadata.xml2
-rw-r--r--dev-ruby/unindent/unindent-1.0-r2.ebuild22
-rw-r--r--dev-ruby/unindent/unindent-1.0.ebuild24
-rw-r--r--dev-ruby/uuidtools/Manifest2
-rw-r--r--dev-ruby/uuidtools/metadata.xml2
-rw-r--r--dev-ruby/uuidtools/uuidtools-2.1.5-r1.ebuild35
-rw-r--r--dev-ruby/uuidtools/uuidtools-2.2.0-r1.ebuild35
-rw-r--r--dev-ruby/vagrant_cloud/Manifest4
-rw-r--r--dev-ruby/vagrant_cloud/metadata.xml10
-rw-r--r--dev-ruby/vagrant_cloud/vagrant_cloud-2.0.2.ebuild30
-rw-r--r--dev-ruby/vagrant_cloud/vagrant_cloud-3.0.5-r1.ebuild42
-rw-r--r--dev-ruby/vagrant_cloud/vagrant_cloud-3.1.0.ebuild42
-rw-r--r--dev-ruby/vagrant_cloud/vagrant_cloud-3.1.1.ebuild42
-rw-r--r--dev-ruby/vcard/Manifest2
-rw-r--r--dev-ruby/vcard/metadata.xml2
-rw-r--r--dev-ruby/vcard/vcard-0.2.15.ebuild27
-rw-r--r--dev-ruby/vcard/vcard-0.3.0-r1.ebuild26
-rw-r--r--dev-ruby/vcr/Manifest5
-rw-r--r--dev-ruby/vcr/metadata.xml5
-rw-r--r--dev-ruby/vcr/vcr-1.11.3.ebuild24
-rw-r--r--dev-ruby/vcr/vcr-4.0.0.ebuild23
-rw-r--r--dev-ruby/vcr/vcr-5.0.0.ebuild23
-rw-r--r--dev-ruby/vcr/vcr-6.1.0.ebuild26
-rw-r--r--dev-ruby/vcr/vcr-6.2.0.ebuild26
-rw-r--r--dev-ruby/version_gem/Manifest1
-rw-r--r--dev-ruby/version_gem/metadata.xml11
-rw-r--r--dev-ruby/version_gem/version_gem-1.1.3.ebuild33
-rw-r--r--dev-ruby/virtus/Manifest2
-rw-r--r--dev-ruby/virtus/files/virtus-1.0.5-equalizer.patch208
-rw-r--r--dev-ruby/virtus/metadata.xml4
-rw-r--r--dev-ruby/virtus/virtus-1.0.5.ebuild36
-rw-r--r--dev-ruby/virtus/virtus-2.0.0.ebuild43
-rw-r--r--dev-ruby/vlad/Manifest2
-rw-r--r--dev-ruby/vlad/metadata.xml4
-rw-r--r--dev-ruby/vlad/vlad-2.7.0.ebuild27
-rw-r--r--dev-ruby/vlad/vlad-2.7.1-r1.ebuild26
-rw-r--r--dev-ruby/warden/Manifest2
-rw-r--r--dev-ruby/warden/metadata.xml4
-rw-r--r--dev-ruby/warden/warden-1.2.8.ebuild29
-rw-r--r--dev-ruby/warden/warden-1.2.9-r1.ebuild32
-rw-r--r--dev-ruby/warning/Manifest1
-rw-r--r--dev-ruby/warning/metadata.xml11
-rw-r--r--dev-ruby/warning/warning-1.3.0.ebuild23
-rw-r--r--dev-ruby/web-console/Manifest4
-rw-r--r--dev-ruby/web-console/metadata.xml2
-rw-r--r--dev-ruby/web-console/web-console-2.3.0.ebuild44
-rw-r--r--dev-ruby/web-console/web-console-3.7.0.ebuild44
-rw-r--r--dev-ruby/web-console/web-console-4.2.0.ebuild47
-rw-r--r--dev-ruby/web-console/web-console-4.2.1.ebuild47
-rw-r--r--dev-ruby/webmock/Manifest7
-rw-r--r--dev-ruby/webmock/metadata.xml2
-rw-r--r--dev-ruby/webmock/webmock-2.3.2.ebuild63
-rw-r--r--dev-ruby/webmock/webmock-3.18.1.ebuild64
-rw-r--r--dev-ruby/webmock/webmock-3.19.1.ebuild67
-rw-r--r--dev-ruby/webmock/webmock-3.23.0.ebuild67
-rw-r--r--dev-ruby/webmock/webmock-3.5.1.ebuild62
-rw-r--r--dev-ruby/webmock/webmock-3.6.0.ebuild62
-rw-r--r--dev-ruby/webmock/webmock-3.6.2.ebuild61
-rw-r--r--dev-ruby/webrick/Manifest2
-rw-r--r--dev-ruby/webrick/metadata.xml11
-rw-r--r--dev-ruby/webrick/webrick-1.7.0-r1.ebuild24
-rw-r--r--dev-ruby/webrick/webrick-1.8.1.ebuild27
-rw-r--r--dev-ruby/webrobots/metadata.xml4
-rw-r--r--dev-ruby/webrobots/webrobots-0.1.2-r1.ebuild34
-rw-r--r--dev-ruby/webrobots/webrobots-0.1.2-r3.ebuild33
-rw-r--r--dev-ruby/websocket-driver/Manifest4
-rw-r--r--dev-ruby/websocket-driver/metadata.xml2
-rw-r--r--dev-ruby/websocket-driver/websocket-driver-0.6.5.ebuild38
-rw-r--r--dev-ruby/websocket-driver/websocket-driver-0.7.0.ebuild38
-rw-r--r--dev-ruby/websocket-driver/websocket-driver-0.7.1.ebuild38
-rw-r--r--dev-ruby/websocket-driver/websocket-driver-0.7.6.ebuild31
-rw-r--r--dev-ruby/websocket-extensions/Manifest3
-rw-r--r--dev-ruby/websocket-extensions/files/websocket-extensions-0.1.5-rspec-mocks.patch37
-rw-r--r--dev-ruby/websocket-extensions/metadata.xml2
-rw-r--r--dev-ruby/websocket-extensions/websocket-extensions-0.1.3.ebuild22
-rw-r--r--dev-ruby/websocket-extensions/websocket-extensions-0.1.4.ebuild22
-rw-r--r--dev-ruby/websocket-extensions/websocket-extensions-0.1.5-r2.ebuild25
-rw-r--r--dev-ruby/websocket/Manifest4
-rw-r--r--dev-ruby/websocket/files/websocket-1.2.9-default-port.patch134
-rw-r--r--dev-ruby/websocket/metadata.xml2
-rw-r--r--dev-ruby/websocket/websocket-1.2.10.ebuild25
-rw-r--r--dev-ruby/websocket/websocket-1.2.7.ebuild21
-rw-r--r--dev-ruby/websocket/websocket-1.2.8.ebuild21
-rw-r--r--dev-ruby/websocket/websocket-1.2.9-r2.ebuild29
-rw-r--r--dev-ruby/whole_history_rating/Manifest1
-rw-r--r--dev-ruby/whole_history_rating/metadata.xml13
-rw-r--r--dev-ruby/whole_history_rating/whole_history_rating-0.1.2-r2.ebuild28
-rw-r--r--dev-ruby/will_paginate/Manifest5
-rw-r--r--dev-ruby/will_paginate/metadata.xml2
-rw-r--r--dev-ruby/will_paginate/will_paginate-3.1.6.ebuild31
-rw-r--r--dev-ruby/will_paginate/will_paginate-3.1.7.ebuild31
-rw-r--r--dev-ruby/will_paginate/will_paginate-3.1.8.ebuild30
-rw-r--r--dev-ruby/will_paginate/will_paginate-3.3.1.ebuild34
-rw-r--r--dev-ruby/will_paginate/will_paginate-4.0.0.ebuild32
-rw-r--r--dev-ruby/windows_error/Manifest2
-rw-r--r--dev-ruby/windows_error/metadata.xml8
-rw-r--r--dev-ruby/windows_error/windows_error-0.1.2.ebuild24
-rw-r--r--dev-ruby/windows_error/windows_error-0.1.5.ebuild22
-rw-r--r--dev-ruby/wirble/metadata.xml2
-rw-r--r--dev-ruby/wirble/wirble-0.1.3-r4.ebuild31
-rw-r--r--dev-ruby/wirble/wirble-0.1.3-r5.ebuild30
-rw-r--r--dev-ruby/wisper/Manifest2
-rw-r--r--dev-ruby/wisper/metadata.xml4
-rw-r--r--dev-ruby/wisper/wisper-2.0.0.ebuild24
-rw-r--r--dev-ruby/wisper/wisper-2.0.1-r1.ebuild25
-rw-r--r--dev-ruby/x25519/Manifest1
-rw-r--r--dev-ruby/x25519/metadata.xml11
-rw-r--r--dev-ruby/x25519/x25519-1.0.10.ebuild39
-rw-r--r--dev-ruby/xdr/Manifest3
-rw-r--r--dev-ruby/xdr/metadata.xml8
-rw-r--r--dev-ruby/xdr/xdr-2.0.0.ebuild27
-rw-r--r--dev-ruby/xdr/xdr-3.0.0.ebuild27
-rw-r--r--dev-ruby/xdr/xdr-3.0.3.ebuild32
-rw-r--r--dev-ruby/xml-simple/Manifest2
-rw-r--r--dev-ruby/xml-simple/metadata.xml2
-rw-r--r--dev-ruby/xml-simple/xml-simple-1.1.5.ebuild26
-rw-r--r--dev-ruby/xml-simple/xml-simple-1.1.9.ebuild31
-rw-r--r--dev-ruby/xmlrpc/Manifest3
-rw-r--r--dev-ruby/xmlrpc/metadata.xml2
-rw-r--r--dev-ruby/xmlrpc/xmlrpc-0.3.0.ebuild31
-rw-r--r--dev-ruby/xmlrpc/xmlrpc-0.3.2-r1.ebuild32
-rw-r--r--dev-ruby/xmlrpc/xmlrpc-0.3.3.ebuild32
-rw-r--r--dev-ruby/xpath/Manifest1
-rw-r--r--dev-ruby/xpath/metadata.xml5
-rw-r--r--dev-ruby/xpath/xpath-2.1.0.ebuild26
-rw-r--r--dev-ruby/xpath/xpath-3.2.0-r1.ebuild26
-rw-r--r--dev-ruby/xpath/xpath-3.2.0.ebuild26
-rw-r--r--dev-ruby/yajl-ruby/Manifest4
-rw-r--r--dev-ruby/yajl-ruby/metadata.xml2
-rw-r--r--dev-ruby/yajl-ruby/yajl-ruby-1.3.1.ebuild45
-rw-r--r--dev-ruby/yajl-ruby/yajl-ruby-1.4.0.ebuild45
-rw-r--r--dev-ruby/yajl-ruby/yajl-ruby-1.4.1.ebuild45
-rw-r--r--dev-ruby/yajl-ruby/yajl-ruby-1.4.3.ebuild39
-rw-r--r--dev-ruby/yard/Manifest5
-rw-r--r--dev-ruby/yard/files/yard-0.9.34-beginless-range.patch38
-rw-r--r--dev-ruby/yard/metadata.xml2
-rw-r--r--dev-ruby/yard/yard-0.9.20.ebuild51
-rw-r--r--dev-ruby/yard/yard-0.9.34-r2.ebuild76
-rw-r--r--dev-ruby/yard/yard-0.9.34.ebuild68
-rw-r--r--dev-ruby/yard/yard-0.9.36.ebuild72
-rw-r--r--dev-ruby/zeitwerk/Manifest7
-rw-r--r--dev-ruby/zeitwerk/metadata.xml2
-rw-r--r--dev-ruby/zeitwerk/zeitwerk-1.4.3.ebuild34
-rw-r--r--dev-ruby/zeitwerk/zeitwerk-2.1.8.ebuild34
-rw-r--r--dev-ruby/zeitwerk/zeitwerk-2.1.9.ebuild34
-rw-r--r--dev-ruby/zeitwerk/zeitwerk-2.6.11-r1.ebuild37
-rw-r--r--dev-ruby/zeitwerk/zeitwerk-2.6.12.ebuild37
-rw-r--r--dev-ruby/zeitwerk/zeitwerk-2.6.13.ebuild37
-rw-r--r--dev-ruby/zeitwerk/zeitwerk-2.6.8.ebuild37
-rw-r--r--dev-ruby/zentest/Manifest3
-rw-r--r--dev-ruby/zentest/metadata.xml2
-rw-r--r--dev-ruby/zentest/zentest-4.11.1.ebuild28
-rw-r--r--dev-ruby/zentest/zentest-4.11.2.ebuild30
-rw-r--r--dev-ruby/zentest/zentest-4.12.1.ebuild29
4076 files changed, 59073 insertions, 49188 deletions
diff --git a/dev-ruby/GeoRuby/GeoRuby-2.5.2-r2.ebuild b/dev-ruby/GeoRuby/GeoRuby-2.5.2-r2.ebuild
new file mode 100644
index 000000000000..a5678bfc5dcf
--- /dev/null
+++ b/dev-ruby/GeoRuby/GeoRuby-2.5.2-r2.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_NAME="georuby"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby data holder for OGC Simple Features"
+HOMEPAGE="https://github.com/nofxx/georuby"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+all_ruby_prepare() {
+ # Avoid specs that are also failing in upstream Travis.
+ rm spec/geo_ruby/shp4r/shp_spec.rb || die
+}
+
+ruby_add_bdepend "test? ( dev-ruby/dbf
+ dev-ruby/nokogiri )"
diff --git a/dev-ruby/GeoRuby/GeoRuby-2.5.2.ebuild b/dev-ruby/GeoRuby/GeoRuby-2.5.2.ebuild
deleted file mode 100644
index ac12330a2fc7..000000000000
--- a/dev-ruby/GeoRuby/GeoRuby-2.5.2.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_NAME="georuby"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby data holder for OGC Simple Features"
-HOMEPAGE="https://github.com/nofxx/georuby"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-all_ruby_prepare() {
- # Avoid specs that are also failing in upstream Travis.
- rm spec/geo_ruby/shp4r/shp_spec.rb || die
-}
-
-ruby_add_bdepend "test? ( dev-ruby/dbf
- dev-ruby/nokogiri )"
diff --git a/dev-ruby/GeoRuby/metadata.xml b/dev-ruby/GeoRuby/metadata.xml
index 06d6ccfca0a4..d726d08de803 100644
--- a/dev-ruby/GeoRuby/metadata.xml
+++ b/dev-ruby/GeoRuby/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/abbrev/Manifest b/dev-ruby/abbrev/Manifest
new file mode 100644
index 000000000000..4c888d0da9cd
--- /dev/null
+++ b/dev-ruby/abbrev/Manifest
@@ -0,0 +1 @@
+DIST abbrev-0.1.2.tar.gz 4679 BLAKE2B 541e28fd1af522fbc813fe03168782b5b0075eed1007b5b78c78e8d605fe2b8f0c0c69b0d562584ebfb7ad5abb9c679f38343ab0dc771b772b8e29d4455c6d4e SHA512 892d2addc0456cd040d2aca5624e526a5e0a0efa199aff7156df5d1eb488a74387baffdad3ee91787fe0b2c138471b457a1b4e3b706fcae4bbee0916dcf50d57
diff --git a/dev-ruby/abbrev/abbrev-0.1.2.ebuild b/dev-ruby/abbrev/abbrev-0.1.2.ebuild
new file mode 100644
index 000000000000..4efb4e44cca5
--- /dev/null
+++ b/dev-ruby/abbrev/abbrev-0.1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="abbrev.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Calculates a set of unique abbreviations for a given set of strings"
+HOMEPAGE="https://github.com/ruby/abbrev"
+SRC_URI="https://github.com/ruby/abbrev/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit )"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/abbrev/metadata.xml b/dev-ruby/abbrev/metadata.xml
new file mode 100644
index 000000000000..742bc69df3fc
--- /dev/null
+++ b/dev-ruby/abbrev/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/abbrev</remote-id>
+ <remote-id type="rubygems">abbrev</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/abstract/abstract-1.0.0-r3.ebuild b/dev-ruby/abstract/abstract-1.0.0-r3.ebuild
deleted file mode 100644
index 1c3dccd24aea..000000000000
--- a/dev-ruby/abstract/abstract-1.0.0-r3.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Library which enable you to define abstract method in Ruby"
-HOMEPAGE="https://rubygems.org/gems/abstract"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="amd64 arm ~arm64 ~hppa ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-each_ruby_test() {
- ${RUBY} -Ilib test/test.rb || die "tests failed"
-}
diff --git a/dev-ruby/abstract/abstract-1.0.0-r5.ebuild b/dev-ruby/abstract/abstract-1.0.0-r5.ebuild
new file mode 100644
index 000000000000..55ba7c5bf887
--- /dev/null
+++ b/dev-ruby/abstract/abstract-1.0.0-r5.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.txt"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Library which enable you to define abstract method in Ruby"
+HOMEPAGE="https://rubygems.org/gems/abstract"
+
+LICENSE="Ruby-BSD"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+each_ruby_test() {
+ ${RUBY} -Ilib test/test.rb || die "tests failed"
+}
diff --git a/dev-ruby/abstract/metadata.xml b/dev-ruby/abstract/metadata.xml
index 419d621c311e..bc8a30f3393f 100644
--- a/dev-ruby/abstract/metadata.xml
+++ b/dev-ruby/abstract/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/acme-client/Manifest b/dev-ruby/acme-client/Manifest
index 772a646f390e..48e6b02ef889 100644
--- a/dev-ruby/acme-client/Manifest
+++ b/dev-ruby/acme-client/Manifest
@@ -1,2 +1,4 @@
-DIST acme-client-2.0.2.gem 19968 BLAKE2B 7a877d86ac4828fec08edd606b2f4f31788454ebe8109b1e94d28f33d00b0a3e49aa7ad8d3b46fa2440bcd1d7cda1c53ab91d6be6280dfeb0e5ccddcac02ed25 SHA512 e02fe9f919f8d5356bc60d0b6f2d05db42e5d6671762bfac45aafb118647e2d0b50cd7336dfa1f0983432e2bddb0344d1b240bd674e31ad14385adc15d58e1e1
-DIST acme-client-2.0.3.tar.gz 203320 BLAKE2B f5bc600c58b29429b8615b0d8cdadade9a4c7018068c356cfd481eee8b7718c19e736c620a752ef1a68ae70e8f641f3fb2ef7bcd44b70ac63cc97bad19ab3579 SHA512 c2b2bcba1cfe9184922cdfaafd02bdb51abf11cb39457e89f0670098bf9d240332129144fd4a7fcbc214a1496dbde576236ea15634b70f8f3fe22304d769f0c2
+DIST acme-client-2.0.14.tar.gz 194698 BLAKE2B 057e968fa7b5bfcc6d3d31b9bf52eb6e9211d754be08e5eac61603a13077cd1a771f3580e42cfc19c0490931252bfdf3989958f580de025c88759f2824035370 SHA512 793b0f77b69cf00ac664a71ce12a02bf6a37683c75d6f0b4773f46ca20544b60a4892b40c6309d08bc9bbc412bcc4fc8a62730b106a6df8e36e76df3e74bdd9f
+DIST acme-client-2.0.15.tar.gz 194751 BLAKE2B 75f6507b8571de8344a777182d98346b1d516a38058d4f1d164e73b647d1953e453c59afd8550c41c711b0dd2699790737c86bd2f7919929e445179cc7098895 SHA512 0d09a09c3fb0a665e9e3263aaa4a924653195d3a64baef381069a58ee16064a4dbef40456076198a866c50765b1f68a0c3b381bcb4f35e185aef9e1ce709ff9d
+DIST acme-client-2.0.16.tar.gz 195964 BLAKE2B 0814b8aa1b60dfc0df9e82f1e5bc21c24ff38ef7737a854be93fcfe7f55a3994e61ba666d17b48ad2ee1469d874e58ed6976afa90f9f7055ec2ff476b3b0f145 SHA512 c9b0ed92767fe3c345b0dcd76263e0b7340b1c554cf366dbe121bea16fdc85b6403a2d5159c0d7e197a72286799910e054315396ea21470de73aa57d2fd5ff10
+DIST acme-client-2.0.17.tar.gz 271264 BLAKE2B a9c9f5c8ba9c7a991d34d9e9111b3ddfc39a1806811c3daddd3bff55b354eeb112d9836b70cf3c93c087fb0c6611aaee4d56bf4df01032fb725cee95c4f25032 SHA512 595d24bdf223f6d4293c2629e0379ba108a0ac223716d61b62366444f76e59202c28cd3c10ff1d82430a29c953eec36bdfeea8681159b118fe013896943b80db
diff --git a/dev-ruby/acme-client/acme-client-2.0.14.ebuild b/dev-ruby/acme-client/acme-client-2.0.14.ebuild
new file mode 100644
index 000000000000..0f83d140d8bf
--- /dev/null
+++ b/dev-ruby/acme-client/acme-client-2.0.14.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="acme-client.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby client for the letsencrypt's ACME protocol"
+HOMEPAGE="https://github.com/unixcharles/acme-client"
+SRC_URI="https://github.com/unixcharles/acme-client/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/faraday:2
+ dev-ruby/faraday-retry:2
+"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/vcr-2.9.3
+ >=dev-ruby/webmock-3.8:3
+)"
+
+all_ruby_prepare() {
+ # Avoid dependency on git
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '3igem "faraday", "~> 2.0"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/acme-client/acme-client-2.0.15.ebuild b/dev-ruby/acme-client/acme-client-2.0.15.ebuild
new file mode 100644
index 000000000000..e219b7267b02
--- /dev/null
+++ b/dev-ruby/acme-client/acme-client-2.0.15.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="acme-client.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby client for the letsencrypt's ACME protocol"
+HOMEPAGE="https://github.com/unixcharles/acme-client"
+SRC_URI="https://github.com/unixcharles/acme-client/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/faraday:2
+ dev-ruby/faraday-retry:2
+"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/vcr-2.9.3
+ >=dev-ruby/webmock-3.8:3
+)"
+
+all_ruby_prepare() {
+ # Avoid dependency on git
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '3igem "faraday", "~> 2.0"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/acme-client/acme-client-2.0.16.ebuild b/dev-ruby/acme-client/acme-client-2.0.16.ebuild
new file mode 100644
index 000000000000..209812a19420
--- /dev/null
+++ b/dev-ruby/acme-client/acme-client-2.0.16.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="acme-client.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby client for the letsencrypt's ACME protocol"
+HOMEPAGE="https://github.com/unixcharles/acme-client"
+SRC_URI="https://github.com/unixcharles/acme-client/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+ruby_add_rdepend "
+ dev-ruby/faraday:2
+ dev-ruby/faraday-retry:2
+"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/vcr-2.9.3
+ >=dev-ruby/webmock-3.8:3
+)"
+
+all_ruby_prepare() {
+ # Avoid dependency on git
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '3igem "faraday", "~> 2.0"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/acme-client/acme-client-2.0.17.ebuild b/dev-ruby/acme-client/acme-client-2.0.17.ebuild
new file mode 100644
index 000000000000..209812a19420
--- /dev/null
+++ b/dev-ruby/acme-client/acme-client-2.0.17.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="acme-client.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby client for the letsencrypt's ACME protocol"
+HOMEPAGE="https://github.com/unixcharles/acme-client"
+SRC_URI="https://github.com/unixcharles/acme-client/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+ruby_add_rdepend "
+ dev-ruby/faraday:2
+ dev-ruby/faraday-retry:2
+"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/vcr-2.9.3
+ >=dev-ruby/webmock-3.8:3
+)"
+
+all_ruby_prepare() {
+ # Avoid dependency on git
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '3igem "faraday", "~> 2.0"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/acme-client/acme-client-2.0.2.ebuild b/dev-ruby/acme-client/acme-client-2.0.2.ebuild
deleted file mode 100644
index b08c6ae1fd4d..000000000000
--- a/dev-ruby/acme-client/acme-client-2.0.2.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINDIR="FALSE" # bin/ contains only dev tooling
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Ruby client for the letsencrypt's ACME protocol."
-HOMEPAGE="https://github.com/unixcharles/acme-client"
-
-LICENSE="MIT"
-
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/faraday-0.9.1"
diff --git a/dev-ruby/acme-client/acme-client-2.0.3.ebuild b/dev-ruby/acme-client/acme-client-2.0.3.ebuild
deleted file mode 100644
index 6c9c64a75eeb..000000000000
--- a/dev-ruby/acme-client/acme-client-2.0.3.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Ruby client for the letsencrypt's ACME protocol."
-HOMEPAGE="https://github.com/unixcharles/acme-client"
-SRC_URI="https://github.com/unixcharles/acme-client/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/faraday-0.9.1:0"
-
-ruby_add_bdepend "test? (
- >=dev-ruby/vcr-2.9.3
- dev-ruby/webmock
-)"
-
-all_ruby_prepare() {
- # Skip failing test where incorrect der value is retrieved, may be openssl 1.1.x related.
- sed -i -e '/assigns the public key/apending' spec/certificate_request_spec.rb || die
-}
diff --git a/dev-ruby/acme-client/metadata.xml b/dev-ruby/acme-client/metadata.xml
index c414568887fe..2b90a7762210 100644
--- a/dev-ruby/acme-client/metadata.xml
+++ b/dev-ruby/acme-client/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
@@ -9,9 +9,6 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
- <longdescription>
- A Ruby client for the letsencrypt's ACME protocol.
- </longdescription>
<upstream>
<remote-id type="github">unixcharles/acme-client</remote-id>
</upstream>
diff --git a/dev-ruby/actioncable/Manifest b/dev-ruby/actioncable/Manifest
index fd68d2ba8a71..5a38fea999e2 100644
--- a/dev-ruby/actioncable/Manifest
+++ b/dev-ruby/actioncable/Manifest
@@ -1,3 +1,6 @@
-DIST rails-5.1.7.tgz 6146668 BLAKE2B 494a12d79037010333c06d14573474f0d0c1e62ce5252e8fbe4eb4c6935dc660614c2ff29fd168bbc66d74bfa64b92abb84d02645cb3b2950db5c166111b7b19 SHA512 6595eb19f174c9e46a937d6028d9bb2bfdcda06f35ec2a0499bc5deff05d8cfc8f8fc725e664496d3b431c8724141a1410201b57945b98ca211aea15c990d621
-DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
-DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
+DIST rails-6.1.7.6.tgz 11040086 BLAKE2B 8b5311752952403cf8eae31b5d8e8d376c4b449f512e86df66b3e921375ffa3ea11e15f1d74a7f8ec9179ff70c32a6d4f8de75be5f92fe6315ee97164e22d2d0 SHA512 c4163565b2324ce97317d252f3d9e2e673a12b6ae7f54571645c958ce30221f1b357887ade80e46abdd47a422736b9946e49850d52ffd72d8acc87f35224e69f
+DIST rails-6.1.7.7.tgz 11041447 BLAKE2B 3f59325aa86d3b7d6e0773b9eb2b895a26b644109be8df0b0d9abbab8e6c77f76d316c717ecce4e2d79d3247559504a7452a8037d2d52a6cf95fbacd7f8b8612 SHA512 f9af4eebb3bffec78832f92be6158c71c147e265b54e8e368a06c762bfd1a7992256b3e9286aeb59eee69ba56be28d381a715eb13f99b9babfd9b7ce8051e210
+DIST rails-7.0.8.1.tgz 11089378 BLAKE2B 5d92087402d8aa2b86759ec92c44091a7a0f8a22959e0510f10417f88e54f9e1e6a14c4e9519033cd63bdd1f54f72b91bff8a3318a3264c39311317fb67e8b63 SHA512 74f467f7d3e5ec88560448e206a8f0cdf55bad60dd9eac019224fce86a766ee9d0c4afbd4eaae30dacfe34beebcff6aa9d3c5c99be9c8ad5c385817fe409afc8
+DIST rails-7.0.8.tgz 11073254 BLAKE2B 2aee047a365acb0890ef3afbccfe323fedccf7b54214aa1c2f92b7a7aaa64c275c1e03f8f97e6a2e30281224ba30703d18b40aeee9b4e7fb6f035a4a7716a054 SHA512 0e9feb5bd0360868c3109152d8ea414b65d36d33a5dbb96b199cfa6c4335800d6c392e0fbcbfa453a02fd75924a297a65caf04948895de53db43700478dbeb11
+DIST rails-7.1.3.2.tgz 10914950 BLAKE2B 419e6817958efcc5dbbb47d24498decff48fca9748c9f4069bcd353a4644fa623caf79c4072db0944139ac991d14623013683f69cef3126fa63348cc0612655b SHA512 0a58e7b125eb97f94a8a75bacd421d7197e6ad78d24651aecfe82e41c024ccfa42a9de0664099f55cd6ac6a41fd7f09cdc3177ed2b809b0be7d7df1639424f9d
+DIST rails-7.1.3.tgz 10900323 BLAKE2B a83ca4ee656e93241fa0460d8df197904a4eef310cf25bce6db6167bad87c8d0644533fa6e224ec959a4e10005164e0f981e14e8b23cee14e2747117be9da712 SHA512 df1128d1403ab82d218d2057c7c86e646594f97a8c6fcf5648a66440d52e5c20a4ceb0c13e70b6153152b44f62d8a1e20f3776acff5c55bc54d006cb7da32d12
diff --git a/dev-ruby/actioncable/actioncable-5.1.7.ebuild b/dev-ruby/actioncable/actioncable-5.1.7.ebuild
deleted file mode 100644
index b21f706010d5..000000000000
--- a/dev-ruby/actioncable/actioncable-5.1.7.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_EXTRAINSTALL="app"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Integrated WebSockets for Rails"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-# Tests require many new dependencies, skipping for now
-RESTRICT="test"
-
-ruby_add_rdepend "
- ~dev-ruby/actionpack-${PV}:*
- dev-ruby/nio4r:2
- >=dev-ruby/websocket-driver-0.6.1:0 =dev-ruby/websocket-driver-0.6*
-"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/railties-4.2.0
- dev-ruby/test-unit:2
- >=dev-ruby/mocha-0.14.0:0.14
- )"
diff --git a/dev-ruby/actioncable/actioncable-5.2.3.ebuild b/dev-ruby/actioncable/actioncable-5.2.3.ebuild
deleted file mode 100644
index 0a968b050677..000000000000
--- a/dev-ruby/actioncable/actioncable-5.2.3.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_EXTRAINSTALL="app"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Integrated WebSockets for Rails"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-# Tests require many new dependencies, skipping for now
-RESTRICT="test"
-
-ruby_add_rdepend "
- ~dev-ruby/actionpack-${PV}:*
- dev-ruby/nio4r:2
- >=dev-ruby/websocket-driver-0.6.1:0
-"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/railties-4.2.0
- dev-ruby/test-unit:2
- >=dev-ruby/mocha-0.14.0:0.14
- )"
diff --git a/dev-ruby/actioncable/actioncable-6.0.0.ebuild b/dev-ruby/actioncable/actioncable-6.0.0.ebuild
deleted file mode 100644
index 636672deef02..000000000000
--- a/dev-ruby/actioncable/actioncable-6.0.0.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC=""
-RUBY_FAKEGEM_DOCDIR=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_EXTRAINSTALL="app"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Integrated WebSockets for Rails"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-# Tests require many new dependencies, skipping for now
-RESTRICT="test"
-
-ruby_add_rdepend "
- ~dev-ruby/actionpack-${PV}:*
- dev-ruby/nio4r:2
- >=dev-ruby/websocket-driver-0.6.1:*
-"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/railties-4.2.0
- dev-ruby/test-unit:2
- >=dev-ruby/mocha-0.14.0:0.14
- )"
diff --git a/dev-ruby/actioncable/actioncable-6.1.7.6.ebuild b/dev-ruby/actioncable/actioncable-6.1.7.6.ebuild
new file mode 100644
index 000000000000..6b5b03f52917
--- /dev/null
+++ b/dev-ruby/actioncable/actioncable-6.1.7.6.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Integrated WebSockets for Rails"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+# Tests require many new dependencies, skipping for now
+RESTRICT="test"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}:*
+ ~dev-ruby/activesupport-${PV}:*
+ dev-ruby/nio4r:2
+ >=dev-ruby/websocket-driver-0.6.1:*
+"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/railties-4.2.0
+ dev-ruby/test-unit:2
+ >=dev-ruby/mocha-0.14.0:0.14
+ )"
diff --git a/dev-ruby/actioncable/actioncable-6.1.7.7.ebuild b/dev-ruby/actioncable/actioncable-6.1.7.7.ebuild
new file mode 100644
index 000000000000..03d1db485653
--- /dev/null
+++ b/dev-ruby/actioncable/actioncable-6.1.7.7.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Integrated WebSockets for Rails"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+# Tests require many new dependencies, skipping for now
+RESTRICT="test"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}:*
+ ~dev-ruby/activesupport-${PV}:*
+ dev-ruby/nio4r:2
+ >=dev-ruby/websocket-driver-0.6.1:*
+"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/railties-4.2.0
+ dev-ruby/test-unit:2
+ >=dev-ruby/mocha-0.14.0:0.14
+ )"
diff --git a/dev-ruby/actioncable/actioncable-7.0.8.1.ebuild b/dev-ruby/actioncable/actioncable-7.0.8.1.ebuild
new file mode 100644
index 000000000000..ae34b1935d23
--- /dev/null
+++ b/dev-ruby/actioncable/actioncable-7.0.8.1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Integrated WebSockets for Rails"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+# Tests require many new dependencies, skipping for now
+RESTRICT="test"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}:*
+ ~dev-ruby/activesupport-${PV}:*
+ dev-ruby/nio4r:2
+ >=dev-ruby/websocket-driver-0.6.1:*
+"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/railties-4.2.0
+ dev-ruby/test-unit:2
+ >=dev-ruby/mocha-0.14.0:0.14
+ )"
diff --git a/dev-ruby/actioncable/actioncable-7.0.8.ebuild b/dev-ruby/actioncable/actioncable-7.0.8.ebuild
new file mode 100644
index 000000000000..3435ed22a5e3
--- /dev/null
+++ b/dev-ruby/actioncable/actioncable-7.0.8.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Integrated WebSockets for Rails"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+# Tests require many new dependencies, skipping for now
+RESTRICT="test"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}:*
+ ~dev-ruby/activesupport-${PV}:*
+ dev-ruby/nio4r:2
+ >=dev-ruby/websocket-driver-0.6.1:*
+"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/railties-4.2.0
+ dev-ruby/test-unit:2
+ >=dev-ruby/mocha-0.14.0:0.14
+ )"
diff --git a/dev-ruby/actioncable/actioncable-7.1.3.2.ebuild b/dev-ruby/actioncable/actioncable-7.1.3.2.ebuild
new file mode 100644
index 000000000000..2a23b3ae5ec6
--- /dev/null
+++ b/dev-ruby/actioncable/actioncable-7.1.3.2.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Integrated WebSockets for Rails"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+# Tests require many new dependencies, skipping for now
+RESTRICT="test"
+
+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/railties-4.2.0
+ dev-ruby/test-unit:2
+ dev-ruby/mocha
+ )"
diff --git a/dev-ruby/actioncable/actioncable-7.1.3.ebuild b/dev-ruby/actioncable/actioncable-7.1.3.ebuild
new file mode 100644
index 000000000000..4bfbe8bd981a
--- /dev/null
+++ b/dev-ruby/actioncable/actioncable-7.1.3.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Integrated WebSockets for Rails"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+# Tests require many new dependencies, skipping for now
+RESTRICT="test"
+
+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/railties-4.2.0
+ dev-ruby/test-unit:2
+ >=dev-ruby/mocha-0.14.0:0.14
+ )"
diff --git a/dev-ruby/actioncable/metadata.xml b/dev-ruby/actioncable/metadata.xml
index 42d41e33d990..fbd27c03d85b 100644
--- a/dev-ruby/actioncable/metadata.xml
+++ b/dev-ruby/actioncable/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/actionmailbox/Manifest b/dev-ruby/actionmailbox/Manifest
new file mode 100644
index 000000000000..5a38fea999e2
--- /dev/null
+++ b/dev-ruby/actionmailbox/Manifest
@@ -0,0 +1,6 @@
+DIST rails-6.1.7.6.tgz 11040086 BLAKE2B 8b5311752952403cf8eae31b5d8e8d376c4b449f512e86df66b3e921375ffa3ea11e15f1d74a7f8ec9179ff70c32a6d4f8de75be5f92fe6315ee97164e22d2d0 SHA512 c4163565b2324ce97317d252f3d9e2e673a12b6ae7f54571645c958ce30221f1b357887ade80e46abdd47a422736b9946e49850d52ffd72d8acc87f35224e69f
+DIST rails-6.1.7.7.tgz 11041447 BLAKE2B 3f59325aa86d3b7d6e0773b9eb2b895a26b644109be8df0b0d9abbab8e6c77f76d316c717ecce4e2d79d3247559504a7452a8037d2d52a6cf95fbacd7f8b8612 SHA512 f9af4eebb3bffec78832f92be6158c71c147e265b54e8e368a06c762bfd1a7992256b3e9286aeb59eee69ba56be28d381a715eb13f99b9babfd9b7ce8051e210
+DIST rails-7.0.8.1.tgz 11089378 BLAKE2B 5d92087402d8aa2b86759ec92c44091a7a0f8a22959e0510f10417f88e54f9e1e6a14c4e9519033cd63bdd1f54f72b91bff8a3318a3264c39311317fb67e8b63 SHA512 74f467f7d3e5ec88560448e206a8f0cdf55bad60dd9eac019224fce86a766ee9d0c4afbd4eaae30dacfe34beebcff6aa9d3c5c99be9c8ad5c385817fe409afc8
+DIST rails-7.0.8.tgz 11073254 BLAKE2B 2aee047a365acb0890ef3afbccfe323fedccf7b54214aa1c2f92b7a7aaa64c275c1e03f8f97e6a2e30281224ba30703d18b40aeee9b4e7fb6f035a4a7716a054 SHA512 0e9feb5bd0360868c3109152d8ea414b65d36d33a5dbb96b199cfa6c4335800d6c392e0fbcbfa453a02fd75924a297a65caf04948895de53db43700478dbeb11
+DIST rails-7.1.3.2.tgz 10914950 BLAKE2B 419e6817958efcc5dbbb47d24498decff48fca9748c9f4069bcd353a4644fa623caf79c4072db0944139ac991d14623013683f69cef3126fa63348cc0612655b SHA512 0a58e7b125eb97f94a8a75bacd421d7197e6ad78d24651aecfe82e41c024ccfa42a9de0664099f55cd6ac6a41fd7f09cdc3177ed2b809b0be7d7df1639424f9d
+DIST rails-7.1.3.tgz 10900323 BLAKE2B a83ca4ee656e93241fa0460d8df197904a4eef310cf25bce6db6167bad87c8d0644533fa6e224ec959a4e10005164e0f981e14e8b23cee14e2747117be9da712 SHA512 df1128d1403ab82d218d2057c7c86e646594f97a8c6fcf5648a66440d52e5c20a4ceb0c13e70b6153152b44f62d8a1e20f3776acff5c55bc54d006cb7da32d12
diff --git a/dev-ruby/actionmailbox/actionmailbox-6.1.7.6.ebuild b/dev-ruby/actionmailbox/actionmailbox-6.1.7.6.ebuild
new file mode 100644
index 000000000000..90a90bf86e18
--- /dev/null
+++ b/dev-ruby/actionmailbox/actionmailbox-6.1.7.6.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.1.7.4-mail28.patch
+)
+
+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.7.1:*
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ <dev-ruby/minitest-5.16
+ dev-ruby/mocha
+ dev-ruby/rexml
+ dev-ruby/sqlite3
+ dev-ruby/webmock
+ dev-ruby/rails
+)"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webdrivers\|webrick\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|capybara\|webpacker\|bootsnap\|dalli\|connection_pool\)/ s:^:#:" \
+ -e '/group :\(cable\|doc\|job\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+ sed -i -e '/byebug/ s:^:#:' test/test_helper.rb || die
+
+ # Avoid a test failing because the actionmailer part of the tarball
+ # is not patched for ruby32. Fixed in next upstream release.
+ rm -f test/unit/mailbox/bouncing_test.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actionmailbox/actionmailbox-6.1.7.7.ebuild b/dev-ruby/actionmailbox/actionmailbox-6.1.7.7.ebuild
new file mode 100644
index 000000000000..26ec21f10812
--- /dev/null
+++ b/dev-ruby/actionmailbox/actionmailbox-6.1.7.7.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.1.7.4-mail28.patch
+)
+
+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.7.1:*
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ <dev-ruby/minitest-5.16
+ dev-ruby/mocha
+ dev-ruby/rexml
+ dev-ruby/sqlite3
+ dev-ruby/webmock
+ dev-ruby/rails
+)"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webdrivers\|webrick\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|capybara\|webpacker\|bootsnap\|dalli\|connection_pool\)/ s:^:#:" \
+ -e '/group :\(cable\|doc\|job\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+ sed -i -e '/byebug/ s:^:#:' test/test_helper.rb || die
+
+ # Avoid a test failing because the actionmailer part of the tarball
+ # is not patched for ruby32. Fixed in next upstream release.
+ rm -f test/unit/mailbox/bouncing_test.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actionmailbox/actionmailbox-7.0.8.1.ebuild b/dev-ruby/actionmailbox/actionmailbox-7.0.8.1.ebuild
new file mode 100644
index 000000000000..0c800148b813
--- /dev/null
+++ b/dev-ruby/actionmailbox/actionmailbox-7.0.8.1.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~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.7.1:*
+ dev-ruby/net-imap
+ dev-ruby/net-pop
+ dev-ruby/net-smtp
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ <dev-ruby/minitest-5.16
+ dev-ruby/mocha
+ dev-ruby/propshaft
+ dev-ruby/rexml
+ dev-ruby/sqlite3
+ dev-ruby/webmock
+ dev-ruby/rails
+)"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webdrivers\|webrick\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|capybara\|webpacker\|bootsnap\|dalli\|connection_pool\|terser\|cookiejar\|cgi\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/group :\(cable\|doc\|job\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+ sed -i -e '/byebug/ s:^:#:' test/test_helper.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actionmailbox/actionmailbox-7.0.8.ebuild b/dev-ruby/actionmailbox/actionmailbox-7.0.8.ebuild
new file mode 100644
index 000000000000..109e32888c43
--- /dev/null
+++ b/dev-ruby/actionmailbox/actionmailbox-7.0.8.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+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.7.1:*
+ dev-ruby/net-imap
+ dev-ruby/net-pop
+ dev-ruby/net-smtp
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ <dev-ruby/minitest-5.16
+ dev-ruby/mocha
+ dev-ruby/propshaft
+ dev-ruby/rexml
+ dev-ruby/sqlite3
+ dev-ruby/webmock
+ dev-ruby/rails
+)"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webdrivers\|webrick\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|capybara\|webpacker\|bootsnap\|dalli\|connection_pool\|terser\|cookiejar\|cgi\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/group :\(cable\|doc\|job\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+ sed -i -e '/byebug/ s:^:#:' test/test_helper.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actionmailbox/actionmailbox-7.1.3.2.ebuild b/dev-ruby/actionmailbox/actionmailbox-7.1.3.2.ebuild
new file mode 100644
index 000000000000..04ce18c37c60
--- /dev/null
+++ b/dev-ruby/actionmailbox/actionmailbox-7.1.3.2.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+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.7.1:*
+ dev-ruby/net-imap
+ dev-ruby/net-pop
+ dev-ruby/net-smtp
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ <dev-ruby/minitest-5.16
+ dev-ruby/mocha
+ dev-ruby/propshaft
+ dev-ruby/rexml
+ dev-ruby/sqlite3
+ dev-ruby/webmock
+ dev-ruby/rails
+)"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webdrivers\|webrick\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|capybara\|webpacker\|bootsnap\|dalli\|connection_pool\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/group :\(cable\|doc\|job\|lint\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+ sed -i -e '/byebug/ s:^:#:' test/test_helper.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actionmailbox/actionmailbox-7.1.3.ebuild b/dev-ruby/actionmailbox/actionmailbox-7.1.3.ebuild
new file mode 100644
index 000000000000..04ce18c37c60
--- /dev/null
+++ b/dev-ruby/actionmailbox/actionmailbox-7.1.3.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+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.7.1:*
+ dev-ruby/net-imap
+ dev-ruby/net-pop
+ dev-ruby/net-smtp
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ <dev-ruby/minitest-5.16
+ dev-ruby/mocha
+ dev-ruby/propshaft
+ dev-ruby/rexml
+ dev-ruby/sqlite3
+ dev-ruby/webmock
+ dev-ruby/rails
+)"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webdrivers\|webrick\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|capybara\|webpacker\|bootsnap\|dalli\|connection_pool\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/group :\(cable\|doc\|job\|lint\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+ sed -i -e '/byebug/ s:^:#:' test/test_helper.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actionmailbox/files/actionmailbox-6.1.7.4-mail28.patch b/dev-ruby/actionmailbox/files/actionmailbox-6.1.7.4-mail28.patch
new file mode 100644
index 000000000000..ba4e8a822552
--- /dev/null
+++ b/dev-ruby/actionmailbox/files/actionmailbox-6.1.7.4-mail28.patch
@@ -0,0 +1,57 @@
+From f5463f314886016fb40199d1265cacddf64ea357 Mon Sep 17 00:00:00 2001
+From: Jean Boussier <jean.boussier@gmail.com>
+Date: Mon, 5 Dec 2022 11:59:45 +0100
+Subject: [PATCH] Merge pull request #46643 from ghiculescu/mail-28
+
+Fix CI for Mail 2.8+
+---
+ .../lib/action_mailbox/mail_ext/addresses.rb | 19 +++++++++++++++----
+ 1 file changed, 15 insertions(+), 4 deletions(-)
+
+diff --git a/actionmailbox/lib/action_mailbox/mail_ext/addresses.rb b/actionmailbox/lib/action_mailbox/mail_ext/addresses.rb
+index 5eab1feb3d563..7da7ee2586a62 100644
+--- a/lib/action_mailbox/mail_ext/addresses.rb
++++ b/lib/action_mailbox/mail_ext/addresses.rb
+@@ -3,7 +3,7 @@
+ module Mail
+ class Message
+ def from_address
+- header[:from]&.address_list&.addresses&.first
++ address_list(header[:from])&.addresses&.first
+ end
+
+ def recipients_addresses
+@@ -11,19 +11,30 @@ def recipients_addresses
+ end
+
+ def to_addresses
+- Array(header[:to]&.address_list&.addresses)
++ Array(address_list(header[:to])&.addresses)
+ end
+
+ def cc_addresses
+- Array(header[:cc]&.address_list&.addresses)
++ Array(address_list(header[:cc])&.addresses)
+ end
+
+ def bcc_addresses
+- Array(header[:bcc]&.address_list&.addresses)
++ Array(address_list(header[:bcc])&.addresses)
+ end
+
+ def x_original_to_addresses
+ Array(header[:x_original_to]).collect { |header| Mail::Address.new header.to_s }
+ end
++
++ private
++ def address_list(obj)
++ if obj&.respond_to?(:element)
++ # Mail 2.8+
++ obj.element
++ else
++ # Mail <= 2.7.x
++ obj&.address_list
++ end
++ end
+ end
+ end
diff --git a/dev-ruby/actionmailbox/metadata.xml b/dev-ruby/actionmailbox/metadata.xml
new file mode 100644
index 000000000000..fbd27c03d85b
--- /dev/null
+++ b/dev-ruby/actionmailbox/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">rails/rails</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/actionmailer/Manifest b/dev-ruby/actionmailer/Manifest
index e3b53c8c8150..5a38fea999e2 100644
--- a/dev-ruby/actionmailer/Manifest
+++ b/dev-ruby/actionmailer/Manifest
@@ -1,4 +1,6 @@
-DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
-DIST rails-5.1.7.tgz 6146668 BLAKE2B 494a12d79037010333c06d14573474f0d0c1e62ce5252e8fbe4eb4c6935dc660614c2ff29fd168bbc66d74bfa64b92abb84d02645cb3b2950db5c166111b7b19 SHA512 6595eb19f174c9e46a937d6028d9bb2bfdcda06f35ec2a0499bc5deff05d8cfc8f8fc725e664496d3b431c8724141a1410201b57945b98ca211aea15c990d621
-DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
-DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
+DIST rails-6.1.7.6.tgz 11040086 BLAKE2B 8b5311752952403cf8eae31b5d8e8d376c4b449f512e86df66b3e921375ffa3ea11e15f1d74a7f8ec9179ff70c32a6d4f8de75be5f92fe6315ee97164e22d2d0 SHA512 c4163565b2324ce97317d252f3d9e2e673a12b6ae7f54571645c958ce30221f1b357887ade80e46abdd47a422736b9946e49850d52ffd72d8acc87f35224e69f
+DIST rails-6.1.7.7.tgz 11041447 BLAKE2B 3f59325aa86d3b7d6e0773b9eb2b895a26b644109be8df0b0d9abbab8e6c77f76d316c717ecce4e2d79d3247559504a7452a8037d2d52a6cf95fbacd7f8b8612 SHA512 f9af4eebb3bffec78832f92be6158c71c147e265b54e8e368a06c762bfd1a7992256b3e9286aeb59eee69ba56be28d381a715eb13f99b9babfd9b7ce8051e210
+DIST rails-7.0.8.1.tgz 11089378 BLAKE2B 5d92087402d8aa2b86759ec92c44091a7a0f8a22959e0510f10417f88e54f9e1e6a14c4e9519033cd63bdd1f54f72b91bff8a3318a3264c39311317fb67e8b63 SHA512 74f467f7d3e5ec88560448e206a8f0cdf55bad60dd9eac019224fce86a766ee9d0c4afbd4eaae30dacfe34beebcff6aa9d3c5c99be9c8ad5c385817fe409afc8
+DIST rails-7.0.8.tgz 11073254 BLAKE2B 2aee047a365acb0890ef3afbccfe323fedccf7b54214aa1c2f92b7a7aaa64c275c1e03f8f97e6a2e30281224ba30703d18b40aeee9b4e7fb6f035a4a7716a054 SHA512 0e9feb5bd0360868c3109152d8ea414b65d36d33a5dbb96b199cfa6c4335800d6c392e0fbcbfa453a02fd75924a297a65caf04948895de53db43700478dbeb11
+DIST rails-7.1.3.2.tgz 10914950 BLAKE2B 419e6817958efcc5dbbb47d24498decff48fca9748c9f4069bcd353a4644fa623caf79c4072db0944139ac991d14623013683f69cef3126fa63348cc0612655b SHA512 0a58e7b125eb97f94a8a75bacd421d7197e6ad78d24651aecfe82e41c024ccfa42a9de0664099f55cd6ac6a41fd7f09cdc3177ed2b809b0be7d7df1639424f9d
+DIST rails-7.1.3.tgz 10900323 BLAKE2B a83ca4ee656e93241fa0460d8df197904a4eef310cf25bce6db6167bad87c8d0644533fa6e224ec959a4e10005164e0f981e14e8b23cee14e2747117be9da712 SHA512 df1128d1403ab82d218d2057c7c86e646594f97a8c6fcf5648a66440d52e5c20a4ceb0c13e70b6153152b44f62d8a1e20f3776acff5c55bc54d006cb7da32d12
diff --git a/dev-ruby/actionmailer/actionmailer-4.2.11.1.ebuild b/dev-ruby/actionmailer/actionmailer-4.2.11.1.ebuild
deleted file mode 100644
index aeb691646830..000000000000
--- a/dev-ruby/actionmailer/actionmailer-4.2.11.1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
-
-inherit ruby-fakegem versionator
-
-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="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/actionpack-${PV}
- ~dev-ruby/actionview-${PV}
- ~dev-ruby/activejob-${PV}
- >=dev-ruby/mail-2.5.4:* =dev-ruby/mail-2*:*
- >=dev-ruby/rails-dom-testing-1.0.5:1"
-
-ruby_add_bdepend "test? (
- dev-ruby/mocha:0.14
-)"
-
-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\|minitest\|mime-types\|sprockets\|stackprof\)/ s:^:#:" \
- -e '/rake/ s/12.3/12.4/ ; /dalli/ s/2.7.7/2.7.10/' \
- -e '/:job/,/end/ s:^:#:' \
- -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
- rm ../Gemfile.lock || die
-
- # Avoid a test failing only on attachment ordering, since this is a
- # security release.
- sed -i -e '/adding inline attachments while rendering mail works/askip "gentoo: fails on ordering"' test/base_test.rb || die
-}
diff --git a/dev-ruby/actionmailer/actionmailer-5.1.7.ebuild b/dev-ruby/actionmailer/actionmailer-5.1.7.ebuild
deleted file mode 100644
index c30ffb5b20a9..000000000000
--- a/dev-ruby/actionmailer/actionmailer-5.1.7.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem versionator
-
-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="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/actionpack-${PV}
- ~dev-ruby/actionview-${PV}
- ~dev-ruby/activejob-${PV}
- >=dev-ruby/mail-2.5.4:* =dev-ruby/mail-2*:*
- dev-ruby/rails-dom-testing:2"
-
-ruby_add_bdepend "test? (
- dev-ruby/mocha:0.14
-)"
-
-all_ruby_prepare() {
- # Set test environment to our hand.
- rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
- sed -i -e '/\/load_paths/d ; 1igem "railties", "~>5.1.0"; gem "activejob", "~>5.1.0"' test/abstract_unit.rb || die "Unable to remove load paths"
-
- # Avoid a test failing only on attachment ordering, since this is a
- # security release.
- sed -i -e '/adding inline attachments while rendering mail works/askip "gentoo: fails on ordering"' test/base_test.rb || die
-}
diff --git a/dev-ruby/actionmailer/actionmailer-5.2.3.ebuild b/dev-ruby/actionmailer/actionmailer-5.2.3.ebuild
deleted file mode 100644
index ea7e94c7ee2d..000000000000
--- a/dev-ruby/actionmailer/actionmailer-5.2.3.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem eapi7-ver
-
-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 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/actionpack-${PV}
- ~dev-ruby/actionview-${PV}
- ~dev-ruby/activejob-${PV}
- >=dev-ruby/mail-2.5.4:* =dev-ruby/mail-2*:*
- dev-ruby/rails-dom-testing:2"
-
-ruby_add_bdepend "test? (
- dev-ruby/mocha
-)"
-
-all_ruby_prepare() {
- # Set test environment to our hand.
- rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
- sed -i -e '/\/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths"
-
- # Avoid a test failing only on attachment ordering, since this is a
- # security release.
- sed -i -e '/adding inline attachments while rendering mail works/askip "gentoo: fails on ordering"' test/base_test.rb || die
-}
diff --git a/dev-ruby/actionmailer/actionmailer-6.0.0.ebuild b/dev-ruby/actionmailer/actionmailer-6.0.0.ebuild
deleted file mode 100644
index bdccb6635d01..000000000000
--- a/dev-ruby/actionmailer/actionmailer-6.0.0.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Framework for designing email-service layers"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm64"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/actionpack-${PV}
- ~dev-ruby/actionview-${PV}
- ~dev-ruby/activejob-${PV}
- >=dev-ruby/mail-2.5.4:* =dev-ruby/mail-2*:*
- dev-ruby/rails-dom-testing:2"
-
-ruby_add_bdepend "test? (
- dev-ruby/mocha
-)"
-
-all_ruby_prepare() {
- # Set test environment to our hand.
- rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
- sed -i -e '/\/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths"
-
- # Avoid a test failing only on attachment ordering, since this is a
- # security release.
- sed -i -e '/adding inline attachments while rendering mail works/askip "gentoo: fails on ordering"' test/base_test.rb || die
-}
diff --git a/dev-ruby/actionmailer/actionmailer-6.1.7.6.ebuild b/dev-ruby/actionmailer/actionmailer-6.1.7.6.ebuild
new file mode 100644
index 000000000000..ef53533a632a
--- /dev/null
+++ b/dev-ruby/actionmailer/actionmailer-6.1.7.6.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Framework for designing email-service layers"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.1.7.4-ruby32-keywords.patch
+)
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activejob-${PV}
+ >=dev-ruby/mail-2.5.4:* =dev-ruby/mail-2*:*
+ dev-ruby/rails-dom-testing:2"
+
+ruby_add_bdepend "test? (
+ dev-ruby/mocha
+)"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
+ sed -i -e '/\/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths"
+
+ # Avoid a test failing only on attachment ordering, since this is a
+ # security release.
+ sed -e '/adding inline attachments while rendering mail works/askip "gentoo: fails on ordering"' \
+ -i test/base_test.rb || die
+}
diff --git a/dev-ruby/actionmailer/actionmailer-6.1.7.7.ebuild b/dev-ruby/actionmailer/actionmailer-6.1.7.7.ebuild
new file mode 100644
index 000000000000..26dfaf1ef48c
--- /dev/null
+++ b/dev-ruby/actionmailer/actionmailer-6.1.7.7.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Framework for designing email-service layers"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.1.7.4-ruby32-keywords.patch
+)
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activejob-${PV}
+ >=dev-ruby/mail-2.5.4:* =dev-ruby/mail-2*:*
+ dev-ruby/rails-dom-testing:2"
+
+ruby_add_bdepend "test? (
+ dev-ruby/mocha
+)"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
+ sed -e '/\/load_paths/d' \
+ -e '2igem "actionview", "~> 6.1.0"; gem "actionpack", "~> 6.1.0"; gem "activejob", "~> 6.1.0"' \
+ -i test/abstract_unit.rb || die "Unable to remove load paths"
+
+ # Avoid a test failing only on attachment ordering, since this is a
+ # security release.
+ sed -e '/adding inline attachments while rendering mail works/askip "gentoo: fails on ordering"' \
+ -i test/base_test.rb || die
+}
diff --git a/dev-ruby/actionmailer/actionmailer-7.0.8.1.ebuild b/dev-ruby/actionmailer/actionmailer-7.0.8.1.ebuild
new file mode 100644
index 000000000000..76f7e0d1eaf9
--- /dev/null
+++ b/dev-ruby/actionmailer/actionmailer-7.0.8.1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Framework for designing email-service layers"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activejob-${PV}
+ >=dev-ruby/mail-2.5.4:* =dev-ruby/mail-2*:*
+ dev-ruby/rails-dom-testing:2"
+
+ruby_add_bdepend "test? (
+ dev-ruby/mocha
+)"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
+ sed -e '/\/load_paths/d' \
+ -e '3igem "actionpack", "~> 7.0.0"; gem "activejob", "~> 7.0.0"' \
+ -i test/abstract_unit.rb || die "Unable to remove load paths"
+
+ # Avoid a test failing only on attachment ordering, since this is a
+ # security release.
+ sed -e '/adding inline attachments while rendering mail works/askip "gentoo: fails on ordering"' \
+ -i test/base_test.rb || die
+}
diff --git a/dev-ruby/actionmailer/actionmailer-7.0.8.ebuild b/dev-ruby/actionmailer/actionmailer-7.0.8.ebuild
new file mode 100644
index 000000000000..cd0c73169202
--- /dev/null
+++ b/dev-ruby/actionmailer/actionmailer-7.0.8.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Framework for designing email-service layers"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activejob-${PV}
+ >=dev-ruby/mail-2.5.4:* =dev-ruby/mail-2*:*
+ dev-ruby/rails-dom-testing:2"
+
+ruby_add_bdepend "test? (
+ dev-ruby/mocha
+)"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
+ sed -i -e '/\/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths"
+
+ # Avoid a test failing only on attachment ordering, since this is a
+ # security release.
+ sed -e '/adding inline attachments while rendering mail works/askip "gentoo: fails on ordering"' \
+ -i test/base_test.rb || die
+}
diff --git a/dev-ruby/actionmailer/actionmailer-7.1.3.2.ebuild b/dev-ruby/actionmailer/actionmailer-7.1.3.2.ebuild
new file mode 100644
index 000000000000..87b768fa5ef5
--- /dev/null
+++ b/dev-ruby/actionmailer/actionmailer-7.1.3.2.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Framework for designing email-service layers"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activejob-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/mail-2.5.4:* =dev-ruby/mail-2*:*
+ dev-ruby/net-imap
+ dev-ruby/net-pop
+ dev-ruby/net-smtp
+ >=dev-ruby/rails-dom-testing-2.2:2"
+
+ruby_add_bdepend "test? (
+ dev-ruby/mocha
+)"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
+ sed -i -e '/\/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths"
+
+ # Avoid a test failing only on attachment ordering, since this is a
+ # security release.
+ sed -e '/adding inline attachments while rendering mail works/askip "gentoo: fails on ordering"' \
+ -i test/base_test.rb || die
+}
diff --git a/dev-ruby/actionmailer/actionmailer-7.1.3.ebuild b/dev-ruby/actionmailer/actionmailer-7.1.3.ebuild
new file mode 100644
index 000000000000..392c6717f2ef
--- /dev/null
+++ b/dev-ruby/actionmailer/actionmailer-7.1.3.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="actionmailer.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Framework for designing email-service layers"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activejob-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/mail-2.5.4:* =dev-ruby/mail-2*:*
+ dev-ruby/net-imap
+ dev-ruby/net-pop
+ dev-ruby/net-smtp
+ >=dev-ruby/rails-dom-testing-2.2:2"
+
+ruby_add_bdepend "test? (
+ dev-ruby/mocha
+)"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
+ sed -i -e '/\/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths"
+
+ # Avoid a test failing only on attachment ordering, since this is a
+ # security release.
+ sed -e '/adding inline attachments while rendering mail works/askip "gentoo: fails on ordering"' \
+ -i test/base_test.rb || die
+}
diff --git a/dev-ruby/actionmailer/files/actionmailer-6.1.7.4-ruby32-keywords.patch b/dev-ruby/actionmailer/files/actionmailer-6.1.7.4-ruby32-keywords.patch
new file mode 100644
index 000000000000..7f33602f13dd
--- /dev/null
+++ b/dev-ruby/actionmailer/files/actionmailer-6.1.7.4-ruby32-keywords.patch
@@ -0,0 +1,50 @@
+From 67bdba4e63cad218c02dbb3171ddd53353cc0b48 Mon Sep 17 00:00:00 2001
+From: Javier Jimenez <javiyu7@gmail.com>
+Date: Thu, 5 Jan 2023 21:34:37 +0100
+Subject: [PATCH] Backports ruby 3.2 compatibility fixes for rails 6.1
+
+---
+ actionmailer/lib/action_mailer/base.rb | 2 +-
+ actionmailer/lib/action_mailer/rescuable.rb | 12 ++++++++----
+ actionpack/lib/abstract_controller/base.rb | 10 +++++++---
+ actionpack/lib/abstract_controller/callbacks.rb | 6 +++++-
+ actionview/lib/action_view/rendering.rb | 6 +++++-
+ activemodel/lib/active_model/attribute_methods.rb | 2 +-
+ activerecord/lib/active_record/relation.rb | 8 ++++++--
+ 7 files changed, 33 insertions(+), 13 deletions(-)
+
+diff --git a/actionmailer/lib/action_mailer/base.rb b/actionmailer/lib/action_mailer/base.rb
+index ae04c0419fc99..4f2620e525157 100644
+--- a/lib/action_mailer/base.rb
++++ b/lib/action_mailer/base.rb
+@@ -616,6 +616,7 @@ def process(method_name, *args) #:nodoc:
+ @_message = NullMail.new unless @_mail_was_called
+ end
+ end
++ ruby2_keywords(:process) if respond_to?(:ruby2_keywords, true)
+
+ class NullMail #:nodoc:
+ def body; "" end
+diff --git a/actionmailer/lib/action_mailer/rescuable.rb b/actionmailer/lib/action_mailer/rescuable.rb
+index ffcaa1f79526d..d949e4681e30c 100644
+--- a/lib/action_mailer/rescuable.rb
++++ b/lib/action_mailer/rescuable.rb
+@@ -20,10 +20,14 @@ def handle_exceptions #:nodoc:
+ end
+
+ private
+- def process(*)
+- handle_exceptions do
+- super
+- end
++ all_args = RUBY_VERSION < "2.7" ? "*" : "..."
++
++ class_eval <<-RUBY
++ def process(#{all_args})
++ handle_exceptions do
++ super
+ end
++ end
++ RUBY
+ end
+ end
diff --git a/dev-ruby/actionmailer/metadata.xml b/dev-ruby/actionmailer/metadata.xml
index 42d41e33d990..fbd27c03d85b 100644
--- a/dev-ruby/actionmailer/metadata.xml
+++ b/dev-ruby/actionmailer/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/actionpack-action_caching/Manifest b/dev-ruby/actionpack-action_caching/Manifest
index 8bb6db225486..87221e7496f6 100644
--- a/dev-ruby/actionpack-action_caching/Manifest
+++ b/dev-ruby/actionpack-action_caching/Manifest
@@ -1 +1 @@
-DIST actionpack-action_caching-1.2.0.gem 15872 BLAKE2B de62971a21bddb39d1e811ef1c4e821b3303cd0b0105d8027c02a130c06ec9f527a2879e24b2644bb15db6775d9e6d1835c6c4bdf44f00fb6315f0aaf93f399b SHA512 a7bb1b9ba20ef7fb03851122299722fd9a8175ccb1c5dffd21b511cae03749d35feb1653211853c8f8adc65bb79c0efa1e232ce8f977aecac76447e7a4f86f9e
+DIST actionpack-action_caching-1.2.2.gem 16384 BLAKE2B dc41343b2645b9ca6ab2148f175c73dba8c54eef227720c8be06ff17e724338fd2edce6dac9939f379676cd759acd87d07b580cf8b53570a321adce1c009b02d SHA512 aff795fe47f6bf97875afdcc6d55ecf5769850985f3f989a95beb46e09989d70e6b05b3182b78029f98ab1545715a7877c1021dda5b4bdbf575a3a540623bbaa
diff --git a/dev-ruby/actionpack-action_caching/actionpack-action_caching-1.2.0.ebuild b/dev-ruby/actionpack-action_caching/actionpack-action_caching-1.2.0.ebuild
deleted file mode 100644
index 6f68dd7f0bd4..000000000000
--- a/dev-ruby/actionpack-action_caching/actionpack-action_caching-1.2.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Action caching for Action Pack (removed from core in Rails 4.0)"
-HOMEPAGE="https://github.com/rails/actionpack-action_caching"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/actionpack-4.0.0:*"
-
-ruby_add_bdepend "test? ( >=dev-ruby/activerecord-4.0.0
- dev-ruby/mocha )"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" Rakefile test/abstract_unit.rb || die
- sed -i -e "/git/d" ${PN}.gemspec || die
- sed -i -e "2irequire 'mocha/setup'" test/caching_test.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test test/caching_test.rb || die
-}
diff --git a/dev-ruby/actionpack-action_caching/actionpack-action_caching-1.2.2-r1.ebuild b/dev-ruby/actionpack-action_caching/actionpack-action_caching-1.2.2-r1.ebuild
new file mode 100644
index 000000000000..ececb8b29bd5
--- /dev/null
+++ b/dev-ruby/actionpack-action_caching/actionpack-action_caching-1.2.2-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Action caching for Action Pack (removed from core in Rails 4.0)"
+HOMEPAGE="https://github.com/rails/actionpack-action_caching"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="0"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/actionpack-4.0.0:*"
+
+ruby_add_bdepend "test? ( >=dev-ruby/activerecord-4.0.0
+ || ( dev-ruby/railties:6.1 )
+ dev-ruby/mocha )"
+
+all_ruby_prepare() {
+ sed -i -e "/bundler/d" Rakefile test/abstract_unit.rb || die
+ sed -i -e "/git/d" ${PN}.gemspec || die
+ sed -i -e '1igem "activerecord", "<7"; gem "railties", "<7"' test/abstract_unit.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test test/caching_test.rb || die
+}
diff --git a/dev-ruby/actionpack-action_caching/metadata.xml b/dev-ruby/actionpack-action_caching/metadata.xml
index 7e9bdea0b47e..494bafc8ddf1 100644
--- a/dev-ruby/actionpack-action_caching/metadata.xml
+++ b/dev-ruby/actionpack-action_caching/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/actionpack-xml_parser/Manifest b/dev-ruby/actionpack-xml_parser/Manifest
index b05e9ec7d926..2b2144aedb04 100644
--- a/dev-ruby/actionpack-xml_parser/Manifest
+++ b/dev-ruby/actionpack-xml_parser/Manifest
@@ -1,2 +1 @@
-DIST actionpack-xml_parser-1.0.2.tar.gz 6623 BLAKE2B 4dc039b2db8397d41f7da5cc643e8e990b4a3a5a1e86e67657a6a59681688144562a66484d1bec49b7166b1df5d2e30ddd882dcb2448cd14e6b44580e2fc354c SHA512 6fb9323b2632059d6c253083dfe6a09c413d4a5f7d622457402db95529ccad6d28b0471b01f4555c4e448b65183e6d07ef639de994c47c4858d2bfe5318aaa0b
DIST actionpack-xml_parser-2.0.1.tar.gz 6494 BLAKE2B 271e1352085e7c75754253222c9f861f7ece9875102a0bb4c47e20311367fcc040c5680ad0406112f8e312c4a8ae1a3f9b6d33f3736db3614ca1c3584942f800 SHA512 a240e59178722025a0c967cfc2f63ca1ed8a2aff55ad913652f06018b712a7009eecd915f494dc4087de12ad5dbe5a0f3c7290fc530a2e475b39318520809112
diff --git a/dev-ruby/actionpack-xml_parser/actionpack-xml_parser-1.0.2.ebuild b/dev-ruby/actionpack-xml_parser/actionpack-xml_parser-1.0.2.ebuild
deleted file mode 100644
index 5d0dbebe3ebc..000000000000
--- a/dev-ruby/actionpack-xml_parser/actionpack-xml_parser-1.0.2.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="XML parameters parser for Action Pack (removed from core in Rails 4.0)"
-HOMEPAGE="https://github.com/rails/actionpack-xml_parser"
-SRC_URI="https://github.com/rails/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/actionpack-4.0.0:* <dev-ruby/actionpack-5:*"
-ruby_add_bdepend "test? ( >=dev-ruby/activesupport-4.0.0 )"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" Rakefile test/helper.rb || die
- sed -i -e '1igem "actionpack", "~>4.0"' test/helper.rb || die
-}
-
-each_ruby_test() {
- MT_NO_PLUGINS=true ${RUBY} -Ilib:test test/xml_params_parsing_test.rb || die
-}
diff --git a/dev-ruby/actionpack-xml_parser/actionpack-xml_parser-2.0.1-r3.ebuild b/dev-ruby/actionpack-xml_parser/actionpack-xml_parser-2.0.1-r3.ebuild
new file mode 100644
index 000000000000..94174f034697
--- /dev/null
+++ b/dev-ruby/actionpack-xml_parser/actionpack-xml_parser-2.0.1-r3.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="actionpack-xml_parser.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="XML parameters parser for Action Pack (removed from core in Rails 4.0)"
+HOMEPAGE="https://github.com/rails/actionpack-xml_parser"
+SRC_URI="https://github.com/rails/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="2"
+IUSE=""
+
+ruby_add_rdepend "
+ || ( dev-ruby/actionpack:6.1 )
+ || ( dev-ruby/railties:6.1 )
+"
+
+ruby_add_bdepend "test? ( =dev-ruby/railties-6* )"
+
+all_ruby_prepare() {
+ sed -i -e "/bundler/d" Rakefile test/helper.rb || die
+ sed -i -e '1igem "actionpack", "~>6.0"' test/helper.rb || die
+
+ # Skip test that is not compatible with Rails 5.2
+ sed -i -e '/occurring a parse error if parsing unsuccessful/askip "rails 5.2"' test/xml_params_parsing_test.rb || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true ${RUBY} -Ilib:.:test -e "Dir['test/*_test.rb'].each{|f| require f}" || die
+}
diff --git a/dev-ruby/actionpack-xml_parser/actionpack-xml_parser-2.0.1.ebuild b/dev-ruby/actionpack-xml_parser/actionpack-xml_parser-2.0.1.ebuild
deleted file mode 100644
index 469ece6f2567..000000000000
--- a/dev-ruby/actionpack-xml_parser/actionpack-xml_parser-2.0.1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="XML parameters parser for Action Pack (removed from core in Rails 4.0)"
-HOMEPAGE="https://github.com/rails/actionpack-xml_parser"
-SRC_URI="https://github.com/rails/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="2"
-IUSE=""
-
-ruby_add_rdepend "=dev-ruby/actionpack-5*:* =dev-ruby/railties-5*:*"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" Rakefile test/helper.rb || die
- sed -i -e '1igem "actionpack", "~>5.0"' test/helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:.:test -e "Dir['test/*_test.rb'].each{|f| require f}"
-}
diff --git a/dev-ruby/actionpack-xml_parser/metadata.xml b/dev-ruby/actionpack-xml_parser/metadata.xml
index f73470d2305b..63ca8223ec97 100644
--- a/dev-ruby/actionpack-xml_parser/metadata.xml
+++ b/dev-ruby/actionpack-xml_parser/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/actionpack/Manifest b/dev-ruby/actionpack/Manifest
index e3b53c8c8150..5a38fea999e2 100644
--- a/dev-ruby/actionpack/Manifest
+++ b/dev-ruby/actionpack/Manifest
@@ -1,4 +1,6 @@
-DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
-DIST rails-5.1.7.tgz 6146668 BLAKE2B 494a12d79037010333c06d14573474f0d0c1e62ce5252e8fbe4eb4c6935dc660614c2ff29fd168bbc66d74bfa64b92abb84d02645cb3b2950db5c166111b7b19 SHA512 6595eb19f174c9e46a937d6028d9bb2bfdcda06f35ec2a0499bc5deff05d8cfc8f8fc725e664496d3b431c8724141a1410201b57945b98ca211aea15c990d621
-DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
-DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
+DIST rails-6.1.7.6.tgz 11040086 BLAKE2B 8b5311752952403cf8eae31b5d8e8d376c4b449f512e86df66b3e921375ffa3ea11e15f1d74a7f8ec9179ff70c32a6d4f8de75be5f92fe6315ee97164e22d2d0 SHA512 c4163565b2324ce97317d252f3d9e2e673a12b6ae7f54571645c958ce30221f1b357887ade80e46abdd47a422736b9946e49850d52ffd72d8acc87f35224e69f
+DIST rails-6.1.7.7.tgz 11041447 BLAKE2B 3f59325aa86d3b7d6e0773b9eb2b895a26b644109be8df0b0d9abbab8e6c77f76d316c717ecce4e2d79d3247559504a7452a8037d2d52a6cf95fbacd7f8b8612 SHA512 f9af4eebb3bffec78832f92be6158c71c147e265b54e8e368a06c762bfd1a7992256b3e9286aeb59eee69ba56be28d381a715eb13f99b9babfd9b7ce8051e210
+DIST rails-7.0.8.1.tgz 11089378 BLAKE2B 5d92087402d8aa2b86759ec92c44091a7a0f8a22959e0510f10417f88e54f9e1e6a14c4e9519033cd63bdd1f54f72b91bff8a3318a3264c39311317fb67e8b63 SHA512 74f467f7d3e5ec88560448e206a8f0cdf55bad60dd9eac019224fce86a766ee9d0c4afbd4eaae30dacfe34beebcff6aa9d3c5c99be9c8ad5c385817fe409afc8
+DIST rails-7.0.8.tgz 11073254 BLAKE2B 2aee047a365acb0890ef3afbccfe323fedccf7b54214aa1c2f92b7a7aaa64c275c1e03f8f97e6a2e30281224ba30703d18b40aeee9b4e7fb6f035a4a7716a054 SHA512 0e9feb5bd0360868c3109152d8ea414b65d36d33a5dbb96b199cfa6c4335800d6c392e0fbcbfa453a02fd75924a297a65caf04948895de53db43700478dbeb11
+DIST rails-7.1.3.2.tgz 10914950 BLAKE2B 419e6817958efcc5dbbb47d24498decff48fca9748c9f4069bcd353a4644fa623caf79c4072db0944139ac991d14623013683f69cef3126fa63348cc0612655b SHA512 0a58e7b125eb97f94a8a75bacd421d7197e6ad78d24651aecfe82e41c024ccfa42a9de0664099f55cd6ac6a41fd7f09cdc3177ed2b809b0be7d7df1639424f9d
+DIST rails-7.1.3.tgz 10900323 BLAKE2B a83ca4ee656e93241fa0460d8df197904a4eef310cf25bce6db6167bad87c8d0644533fa6e224ec959a4e10005164e0f981e14e8b23cee14e2747117be9da712 SHA512 df1128d1403ab82d218d2057c7c86e646594f97a8c6fcf5648a66440d52e5c20a4ceb0c13e70b6153152b44f62d8a1e20f3776acff5c55bc54d006cb7da32d12
diff --git a/dev-ruby/actionpack/actionpack-4.2.11.1.ebuild b/dev-ruby/actionpack/actionpack-4.2.11.1.ebuild
deleted file mode 100644
index c1cad700e9a9..000000000000
--- a/dev-ruby/actionpack/actionpack-4.2.11.1.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Eases web-request routing, handling, and response"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- ~dev-ruby/actionview-${PV}
- >=dev-ruby/rack-1.6.0:1.6
- >=dev-ruby/rack-test-0.6.2:0.6
- >=dev-ruby/rails-html-sanitizer-1.0.2:1
- >=dev-ruby/rails-dom-testing-1.0.5:1
-"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/mocha:0.14
- dev-ruby/bundler
- ~dev-ruby/activemodel-${PV}
- >=dev-ruby/rack-cache-1.2:1.2
- )"
-
-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\|minitest\|mime-types\|sprockets\|stackprof\)/ s:^:#:" \
- -e '/rake/ s/12.3/12.4/ ; /dalli/ s/2.7.7/2.7.10/' \
- -e '/:job/,/end/ s:^:#:' \
- -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
- rm ../Gemfile.lock || die
-
- # Skip a failing test related to security updates in 4.2.5.1. Let's
- # assume that this is not a bug but a test lagging a security
- # measure.
- sed -i -e '/test_dynamic_render_with_file/,/^ end/ s:^:#:' \
- test/controller/render_test.rb || die
-}
diff --git a/dev-ruby/actionpack/actionpack-5.1.7.ebuild b/dev-ruby/actionpack/actionpack-5.1.7.ebuild
deleted file mode 100644
index 5f30cf305005..000000000000
--- a/dev-ruby/actionpack/actionpack-5.1.7.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Eases web-request routing, handling, and response"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- ~dev-ruby/actionview-${PV}
- dev-ruby/rack:2.0
- >=dev-ruby/rack-test-0.6.3:0.6
- >=dev-ruby/rails-html-sanitizer-1.0.2:1
- dev-ruby/rails-dom-testing:2
-"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/mocha:0.14
- dev-ruby/bundler
- >=dev-ruby/capybara-2.13:2
- ~dev-ruby/activemodel-${PV}
- >=dev-ruby/rack-cache-1.2:1.2
- www-servers/puma
- )"
-
-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
- sed -i -e '1igem "rack-test", "~>0.6.3"; gem "activemodel", "~>5.1.0"; gem "railties", "~>5.1.0"' test/abstract_unit.rb || die
-}
diff --git a/dev-ruby/actionpack/actionpack-5.2.3.ebuild b/dev-ruby/actionpack/actionpack-5.2.3.ebuild
deleted file mode 100644
index 846dab2e85f3..000000000000
--- a/dev-ruby/actionpack/actionpack-5.2.3.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Eases web-request routing, handling, and response"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- ~dev-ruby/actionview-${PV}
- dev-ruby/rack:2.0
- >=dev-ruby/rack-test-0.6.3:*
- >=dev-ruby/rails-html-sanitizer-1.0.2:1
- dev-ruby/rails-dom-testing:2
-"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/mocha:0.14
- dev-ruby/bundler
- >=dev-ruby/capybara-2.15
- ~dev-ruby/activemodel-${PV}
- >=dev-ruby/rack-cache-1.2:1.2
- www-servers/puma
- )"
-
-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
-}
diff --git a/dev-ruby/actionpack/actionpack-6.0.0.ebuild b/dev-ruby/actionpack/actionpack-6.0.0.ebuild
deleted file mode 100644
index 3a42d564dd50..000000000000
--- a/dev-ruby/actionpack/actionpack-6.0.0.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Eases web-request routing, handling, and response"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm64"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- ~dev-ruby/actionview-${PV}
- dev-ruby/rack:2.0
- >=dev-ruby/rack-test-0.6.3:*
- >=dev-ruby/rails-html-sanitizer-1.2.0:1
- dev-ruby/rails-dom-testing:2
-"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/mocha:0.14
- dev-ruby/bundler
- >=dev-ruby/capybara-2.15
- ~dev-ruby/activemodel-${PV}
- >=dev-ruby/rack-cache-1.2:1.2
- www-servers/puma
- )"
-
-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
-}
diff --git a/dev-ruby/actionpack/actionpack-6.1.7.6.ebuild b/dev-ruby/actionpack/actionpack-6.1.7.6.ebuild
new file mode 100644
index 000000000000..a3575cc3fceb
--- /dev/null
+++ b/dev-ruby/actionpack/actionpack-6.1.7.6.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Eases web-request routing, handling, and response"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ ~dev-ruby/actionview-${PV}
+ dev-ruby/rack:2.2
+ >=dev-ruby/rack-test-0.6.3:*
+ >=dev-ruby/rails-html-sanitizer-1.2.0:1
+ dev-ruby/rails-dom-testing:2
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha:0.14
+ dev-ruby/bundler
+ >=dev-ruby/capybara-2.15
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/rack-cache-1.2:1.2
+ www-servers/puma
+ <dev-ruby/minitest-5.16:*
+ )"
+
+all_ruby_prepare() {
+ eapply "${FILESDIR}/actionpack-7.0.4-rack-test-2.patch"
+
+ # 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
+
+ sed -e '3igem "railties", "~> 6.1.0"; gem "activerecord", "~> 6.1.0"; gem "minitest", "<5.16"' \
+ -i test/abstract_unit.rb || die
+
+ # Use different timezone notation, this changed at some point due to an external dependency changing.
+ sed -e 's/-0000/GMT/' \
+ -i test/dispatch/response_test.rb test/dispatch/cookies_test.rb test/dispatch/session/cookie_store_test.rb || die
+
+ # Avoid tests depending on an unreleased version of selenium-webdriver
+ sed -e '/define extra capabilities/,/^ end/ s:^:#:' \
+ -i test/dispatch/system_testing/driver_test.rb || die
+
+ # Avoid tests that fail with a fixed cgi.rb version
+ sed -e '/test_session_store_with_all_domains/askip "Fails with fixed cgi.rb"' \
+ -i test/dispatch/session/cookie_store_test.rb || die
+}
diff --git a/dev-ruby/actionpack/actionpack-6.1.7.7.ebuild b/dev-ruby/actionpack/actionpack-6.1.7.7.ebuild
new file mode 100644
index 000000000000..3728a4e2932e
--- /dev/null
+++ b/dev-ruby/actionpack/actionpack-6.1.7.7.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Eases web-request routing, handling, and response"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ ~dev-ruby/actionview-${PV}
+ dev-ruby/rack:2.2
+ >=dev-ruby/rack-test-0.6.3:*
+ >=dev-ruby/rails-html-sanitizer-1.2.0:1
+ dev-ruby/rails-dom-testing:2
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha:0.14
+ dev-ruby/bundler
+ >=dev-ruby/capybara-2.15
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/rack-cache-1.2:1.2
+ www-servers/puma
+ <dev-ruby/minitest-5.16:*
+ )"
+
+all_ruby_prepare() {
+ eapply "${FILESDIR}/actionpack-7.0.4-rack-test-2.patch"
+
+ # 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
+
+ sed -e '3igem "railties", "~> 6.1.0"; gem "activerecord", "~> 6.1.0"; gem "minitest", "<5.16"' \
+ -i test/abstract_unit.rb || die
+
+ # Use different timezone notation, this changed at some point due to an external dependency changing.
+ sed -e 's/-0000/GMT/' \
+ -i test/dispatch/response_test.rb test/dispatch/cookies_test.rb test/dispatch/session/cookie_store_test.rb || die
+
+ # Avoid tests depending on an unreleased version of selenium-webdriver
+ sed -e '/define extra capabilities/,/^ end/ s:^:#:' \
+ -i test/dispatch/system_testing/driver_test.rb || die
+
+ # Avoid tests that fail with a fixed cgi.rb version
+ sed -e '/test_session_store_with_all_domains/askip "Fails with fixed cgi.rb"' \
+ -i test/dispatch/session/cookie_store_test.rb || die
+}
diff --git a/dev-ruby/actionpack/actionpack-7.0.8.1.ebuild b/dev-ruby/actionpack/actionpack-7.0.8.1.ebuild
new file mode 100644
index 000000000000..fa49676482d3
--- /dev/null
+++ b/dev-ruby/actionpack/actionpack-7.0.8.1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Eases web-request routing, handling, and response"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ ~dev-ruby/actionview-${PV}
+ dev-ruby/rack:2.2
+ >=dev-ruby/rack-test-0.6.3:*
+ >=dev-ruby/rails-html-sanitizer-1.2.0:1
+ dev-ruby/rails-dom-testing:2
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha:0.14
+ dev-ruby/bundler
+ >=dev-ruby/capybara-3.26
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/rack-cache-1.2:1.2
+ dev-ruby/selenium-webdriver:4
+ www-servers/puma
+ <dev-ruby/minitest-5.16:*
+ )"
+
+all_ruby_prepare() {
+ eapply "${FILESDIR}/actionpack-7.0.4-rack-test-2.patch"
+
+ # 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\|'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:^:#:' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ sed -e '3igem "rack", "<3"; gem "minitest", "<5.16"; gem "railties", "~> 7.0.0"; gem "activemodel", "~> 7.0.0"' \
+ -i test/abstract_unit.rb || die
+
+ # Use different timezone notation, this changed at some point due to an external dependency changing.
+ sed -e 's/-0000/GMT/' \
+ -i test/dispatch/response_test.rb test/dispatch/cookies_test.rb test/dispatch/session/cookie_store_test.rb || die
+
+ # Avoid tests that fail with a fixed cgi.rb version
+ sed -e '/test_session_store_with_all_domains/askip "Fails with fixed cgi.rb"' \
+ -i test/dispatch/session/cookie_store_test.rb || die
+}
diff --git a/dev-ruby/actionpack/actionpack-7.0.8.ebuild b/dev-ruby/actionpack/actionpack-7.0.8.ebuild
new file mode 100644
index 000000000000..3deadbaecbba
--- /dev/null
+++ b/dev-ruby/actionpack/actionpack-7.0.8.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Eases web-request routing, handling, and response"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ ~dev-ruby/actionview-${PV}
+ dev-ruby/rack:2.2
+ >=dev-ruby/rack-test-0.6.3:*
+ >=dev-ruby/rails-html-sanitizer-1.2.0:1
+ dev-ruby/rails-dom-testing:2
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha:0.14
+ dev-ruby/bundler
+ >=dev-ruby/capybara-3.26
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/rack-cache-1.2:1.2
+ dev-ruby/selenium-webdriver:4
+ www-servers/puma
+ <dev-ruby/minitest-5.16:*
+ )"
+
+all_ruby_prepare() {
+ eapply "${FILESDIR}/actionpack-7.0.4-rack-test-2.patch"
+
+ # 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
+
+ sed -i -e '3igem "rack", "<3"; gem "minitest", "<5.16"' test/abstract_unit.rb || die
+
+ # Use different timezone notation, this changed at some point due to an external dependency changing.
+ sed -e 's/-0000/GMT/' \
+ -i test/dispatch/response_test.rb test/dispatch/cookies_test.rb test/dispatch/session/cookie_store_test.rb || die
+
+ # Avoid tests that fail with a fixed cgi.rb version
+ sed -e '/test_session_store_with_all_domains/askip "Fails with fixed cgi.rb"' \
+ -i test/dispatch/session/cookie_store_test.rb || die
+}
diff --git a/dev-ruby/actionpack/actionpack-7.1.3.2.ebuild b/dev-ruby/actionpack/actionpack-7.1.3.2.ebuild
new file mode 100644
index 000000000000..0fae64c8bb13
--- /dev/null
+++ b/dev-ruby/actionpack/actionpack-7.1.3.2.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Eases web-request routing, handling, and response"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/nokogiri-1.8.5
+ >=dev-ruby/rack-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
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ dev-ruby/bundler
+ >=dev-ruby/capybara-3.26
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/rack-cache-1.2:1.2
+ dev-ruby/selenium-webdriver:4
+ www-servers/puma
+ dev-ruby/minitest:5
+ )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\)/ s:^:#:" \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Fix errors loading rack/session with rack 3.0.
+ sed -i -e '2igem "rack-session"' test/abstract_unit.rb || die
+
+ # Use different timezone notation, this changed at some point due to an external dependency changing.
+ sed -e 's/-0000/GMT/' \
+ -i test/dispatch/response_test.rb test/dispatch/cookies_test.rb test/dispatch/session/cookie_store_test.rb || die
+
+ # Avoid tests that fail with a fixed cgi.rb version
+ sed -e '/test_session_store_with_all_domains/askip "Fails with fixed cgi.rb"' \
+ -i test/dispatch/session/cookie_store_test.rb || die
+}
diff --git a/dev-ruby/actionpack/actionpack-7.1.3.ebuild b/dev-ruby/actionpack/actionpack-7.1.3.ebuild
new file mode 100644
index 000000000000..320ea8fe809b
--- /dev/null
+++ b/dev-ruby/actionpack/actionpack-7.1.3.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="actionpack.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Eases web-request routing, handling, and response"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/nokogiri-1.8.5
+ >=dev-ruby/rack-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
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha:0.14
+ dev-ruby/bundler
+ >=dev-ruby/capybara-3.26
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/rack-cache-1.2:1.2
+ dev-ruby/selenium-webdriver:4
+ www-servers/puma
+ <dev-ruby/minitest-5.16:*
+ )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\)/ s:^:#:" \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Fix errors loading rack/session with rack 3.0.
+ sed -i -e '2igem "rack-session"' test/abstract_unit.rb || die
+
+ # Use different timezone notation, this changed at some point due to an external dependency changing.
+ sed -e 's/-0000/GMT/' \
+ -i test/dispatch/response_test.rb test/dispatch/cookies_test.rb test/dispatch/session/cookie_store_test.rb || die
+
+ # Avoid tests that fail with a fixed cgi.rb version
+ sed -e '/test_session_store_with_all_domains/askip "Fails with fixed cgi.rb"' \
+ -i test/dispatch/session/cookie_store_test.rb || die
+}
diff --git a/dev-ruby/actionpack/files/actionpack-7.0.4-rack-test-2.patch b/dev-ruby/actionpack/files/actionpack-7.0.4-rack-test-2.patch
new file mode 100644
index 000000000000..09a234d46576
--- /dev/null
+++ b/dev-ruby/actionpack/files/actionpack-7.0.4-rack-test-2.patch
@@ -0,0 +1,55 @@
+From 07be723bc1d2b6a655a589dfcd4213e251cdb453 Mon Sep 17 00:00:00 2001
+From: Aaron Patterson <aaron@rubyonrails.org>
+Date: Wed, 25 May 2022 10:46:11 -0700
+Subject: [PATCH] Ensure Rails is green with Rack-Test main branch
+
+This commit just ensures we're green with the main branch of rack test.
+The changes are things we should have done anyway, and are backwards
+compatible with older versions of rack test
+---
+ actionpack/test/controller/new_base/render_streaming_test.rb | 4 ++++
+ actionpack/test/dispatch/session/cache_store_test.rb | 2 +-
+ actionpack/test/dispatch/session/mem_cache_store_test.rb | 2 +-
+ 3 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/actionpack/test/controller/new_base/render_streaming_test.rb b/actionpack/test/controller/new_base/render_streaming_test.rb
+index 23dc6bca40364..d9789355f9520 100644
+--- a/test/controller/new_base/render_streaming_test.rb
++++ b/test/controller/new_base/render_streaming_test.rb
+@@ -44,6 +44,10 @@ def explicit_cache
+ end
+
+ class StreamingTest < Rack::TestCase
++ def get(path, headers: { "SERVER_PROTOCOL" => "HTTP/1.1", "HTTP_VERSION" => "HTTP/1.1" })
++ super
++ end
++
+ test "rendering with streaming enabled at the class level" do
+ get "/render_streaming/basic/hello_world"
+ assert_body "b\r\nHello world\r\nb\r\n, I'm here!\r\n0\r\n\r\n"
+diff --git a/actionpack/test/dispatch/session/cache_store_test.rb b/actionpack/test/dispatch/session/cache_store_test.rb
+index 9677d177d0acc..6479654c73b37 100644
+--- a/test/dispatch/session/cache_store_test.rb
++++ b/test/dispatch/session/cache_store_test.rb
+@@ -59,7 +59,7 @@ def test_getting_session_value_after_session_reset
+ get "/set_session_value"
+ assert_response :success
+ assert cookies["_session_id"]
+- session_cookie = cookies.send(:hash_for)["_session_id"]
++ session_cookie = cookies.get_cookie("_session_id")
+
+ get "/call_reset_session"
+ assert_response :success
+diff --git a/actionpack/test/dispatch/session/mem_cache_store_test.rb b/actionpack/test/dispatch/session/mem_cache_store_test.rb
+index 417a8355bfc2a..188f321c5999f 100644
+--- a/test/dispatch/session/mem_cache_store_test.rb
++++ b/test/dispatch/session/mem_cache_store_test.rb
+@@ -71,7 +71,7 @@ def test_getting_session_value_after_session_reset
+ get "/set_session_value"
+ assert_response :success
+ assert cookies["_session_id"]
+- session_cookie = cookies.send(:hash_for)["_session_id"]
++ session_cookie = cookies.get_cookie("_session_id")
+
+ get "/call_reset_session"
+ assert_response :success
diff --git a/dev-ruby/actionpack/metadata.xml b/dev-ruby/actionpack/metadata.xml
index 42d41e33d990..fbd27c03d85b 100644
--- a/dev-ruby/actionpack/metadata.xml
+++ b/dev-ruby/actionpack/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/actiontext/Manifest b/dev-ruby/actiontext/Manifest
new file mode 100644
index 000000000000..5a38fea999e2
--- /dev/null
+++ b/dev-ruby/actiontext/Manifest
@@ -0,0 +1,6 @@
+DIST rails-6.1.7.6.tgz 11040086 BLAKE2B 8b5311752952403cf8eae31b5d8e8d376c4b449f512e86df66b3e921375ffa3ea11e15f1d74a7f8ec9179ff70c32a6d4f8de75be5f92fe6315ee97164e22d2d0 SHA512 c4163565b2324ce97317d252f3d9e2e673a12b6ae7f54571645c958ce30221f1b357887ade80e46abdd47a422736b9946e49850d52ffd72d8acc87f35224e69f
+DIST rails-6.1.7.7.tgz 11041447 BLAKE2B 3f59325aa86d3b7d6e0773b9eb2b895a26b644109be8df0b0d9abbab8e6c77f76d316c717ecce4e2d79d3247559504a7452a8037d2d52a6cf95fbacd7f8b8612 SHA512 f9af4eebb3bffec78832f92be6158c71c147e265b54e8e368a06c762bfd1a7992256b3e9286aeb59eee69ba56be28d381a715eb13f99b9babfd9b7ce8051e210
+DIST rails-7.0.8.1.tgz 11089378 BLAKE2B 5d92087402d8aa2b86759ec92c44091a7a0f8a22959e0510f10417f88e54f9e1e6a14c4e9519033cd63bdd1f54f72b91bff8a3318a3264c39311317fb67e8b63 SHA512 74f467f7d3e5ec88560448e206a8f0cdf55bad60dd9eac019224fce86a766ee9d0c4afbd4eaae30dacfe34beebcff6aa9d3c5c99be9c8ad5c385817fe409afc8
+DIST rails-7.0.8.tgz 11073254 BLAKE2B 2aee047a365acb0890ef3afbccfe323fedccf7b54214aa1c2f92b7a7aaa64c275c1e03f8f97e6a2e30281224ba30703d18b40aeee9b4e7fb6f035a4a7716a054 SHA512 0e9feb5bd0360868c3109152d8ea414b65d36d33a5dbb96b199cfa6c4335800d6c392e0fbcbfa453a02fd75924a297a65caf04948895de53db43700478dbeb11
+DIST rails-7.1.3.2.tgz 10914950 BLAKE2B 419e6817958efcc5dbbb47d24498decff48fca9748c9f4069bcd353a4644fa623caf79c4072db0944139ac991d14623013683f69cef3126fa63348cc0612655b SHA512 0a58e7b125eb97f94a8a75bacd421d7197e6ad78d24651aecfe82e41c024ccfa42a9de0664099f55cd6ac6a41fd7f09cdc3177ed2b809b0be7d7df1639424f9d
+DIST rails-7.1.3.tgz 10900323 BLAKE2B a83ca4ee656e93241fa0460d8df197904a4eef310cf25bce6db6167bad87c8d0644533fa6e224ec959a4e10005164e0f981e14e8b23cee14e2747117be9da712 SHA512 df1128d1403ab82d218d2057c7c86e646594f97a8c6fcf5648a66440d52e5c20a4ceb0c13e70b6153152b44f62d8a1e20f3776acff5c55bc54d006cb7da32d12
diff --git a/dev-ruby/actiontext/actiontext-6.1.7.6.ebuild b/dev-ruby/actiontext/actiontext-6.1.7.6.ebuild
new file mode 100644
index 000000000000..40c122978979
--- /dev/null
+++ b/dev-ruby/actiontext/actiontext-6.1.7.6.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/activestorage-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/nokogiri-1.8.5
+"
+
+ruby_add_bdepend "test? (
+ ~dev-ruby/activerecord-${PV}[sqlite]
+ dev-ruby/bundler
+ =dev-ruby/minitest-5.15*:*
+ dev-ruby/mocha
+ 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\|webpacker\|webrick\|webmock\|webdrivers\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|bootsnap\|capybara\|dalli\|connection_pool\)/ s:^:#:" \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :\(cable\|doc\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actiontext/actiontext-6.1.7.7.ebuild b/dev-ruby/actiontext/actiontext-6.1.7.7.ebuild
new file mode 100644
index 000000000000..a36e4735a34a
--- /dev/null
+++ b/dev-ruby/actiontext/actiontext-6.1.7.7.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/activestorage-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/nokogiri-1.8.5
+"
+
+ruby_add_bdepend "test? (
+ ~dev-ruby/activerecord-${PV}[sqlite]
+ dev-ruby/bundler
+ =dev-ruby/minitest-5.15*:*
+ dev-ruby/mocha
+ 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\|webpacker\|webrick\|webmock\|webdrivers\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|bootsnap\|capybara\|dalli\|connection_pool\)/ s:^:#:" \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :\(cable\|doc\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actiontext/actiontext-7.0.8.1.ebuild b/dev-ruby/actiontext/actiontext-7.0.8.1.ebuild
new file mode 100644
index 000000000000..5c39b98a52c8
--- /dev/null
+++ b/dev-ruby/actiontext/actiontext-7.0.8.1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/activestorage-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/globalid-0.6.0
+ >=dev-ruby/nokogiri-1.8.5
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ dev-ruby/minitest:5.15
+ dev-ruby/mocha
+ dev-ruby/propshaft
+ >=dev-ruby/sqlite3-1.4.0
+)"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webpacker\|webrick\|webmock\|webdrivers\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|bootsnap\|capybara\|dalli\|connection_pool\|terser\|cookiejar\|cgi\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :\(cable\|doc\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actiontext/actiontext-7.0.8.ebuild b/dev-ruby/actiontext/actiontext-7.0.8.ebuild
new file mode 100644
index 000000000000..5ccaae7dc277
--- /dev/null
+++ b/dev-ruby/actiontext/actiontext-7.0.8.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/activestorage-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/globalid-0.6.0
+ >=dev-ruby/nokogiri-1.8.5
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ dev-ruby/minitest:5.15
+ dev-ruby/mocha
+ dev-ruby/propshaft
+ >=dev-ruby/sqlite3-1.4.0
+)"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webpacker\|webrick\|webmock\|webdrivers\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|bootsnap\|capybara\|dalli\|connection_pool\|terser\|cookiejar\|cgi\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :\(cable\|doc\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actiontext/actiontext-7.1.3.2.ebuild b/dev-ruby/actiontext/actiontext-7.1.3.2.ebuild
new file mode 100644
index 000000000000..70b801b7a136
--- /dev/null
+++ b/dev-ruby/actiontext/actiontext-7.1.3.2.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/activestorage-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/globalid-0.6.0
+ >=dev-ruby/nokogiri-1.8.5
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ dev-ruby/importmap-rails
+ dev-ruby/minitest:5.15
+ dev-ruby/mocha
+ dev-ruby/propshaft
+ >=dev-ruby/sqlite3-1.4.0
+)"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webpacker\|webrick\|webmock\|webdrivers\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|bootsnap\|capybara\|dalli\|connection_pool\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\)/ s:^:#:" \
+ -e '/stimulus-rails/,/cssbundling-rails/ s:^:#:' \
+ -e '/tailwindcss-rails/,/dartsass-rails/ s:^:#:' \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :\(cable\|doc\|lint\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Avoid failing test depending on yarn
+ rm -f test/javascript_package_test.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actiontext/actiontext-7.1.3.ebuild b/dev-ruby/actiontext/actiontext-7.1.3.ebuild
new file mode 100644
index 000000000000..70b801b7a136
--- /dev/null
+++ b/dev-ruby/actiontext/actiontext-7.1.3.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/activestorage-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/globalid-0.6.0
+ >=dev-ruby/nokogiri-1.8.5
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ dev-ruby/importmap-rails
+ dev-ruby/minitest:5.15
+ dev-ruby/mocha
+ dev-ruby/propshaft
+ >=dev-ruby/sqlite3-1.4.0
+)"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql2\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|sass-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|redis\|blade\|aws-sdk\|google-cloud\|azure-storage\|selenium\|webpacker\|webrick\|webmock\|webdrivers\|minitest-bisect\|minitest-retry\|minitest-reporters\|listen\|rack-cache\|rack-test\|bootsnap\|capybara\|dalli\|connection_pool\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\)/ s:^:#:" \
+ -e '/stimulus-rails/,/cssbundling-rails/ s:^:#:' \
+ -e '/tailwindcss-rails/,/dartsass-rails/ s:^:#:' \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :\(cable\|doc\|lint\|rubocop\|storage\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Avoid failing test depending on yarn
+ rm -f test/javascript_package_test.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby:'${RUBY}':' test/dummy/bin/* || die
+}
diff --git a/dev-ruby/actiontext/metadata.xml b/dev-ruby/actiontext/metadata.xml
new file mode 100644
index 000000000000..fbd27c03d85b
--- /dev/null
+++ b/dev-ruby/actiontext/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">rails/rails</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/actionview/Manifest b/dev-ruby/actionview/Manifest
index e3b53c8c8150..5a38fea999e2 100644
--- a/dev-ruby/actionview/Manifest
+++ b/dev-ruby/actionview/Manifest
@@ -1,4 +1,6 @@
-DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
-DIST rails-5.1.7.tgz 6146668 BLAKE2B 494a12d79037010333c06d14573474f0d0c1e62ce5252e8fbe4eb4c6935dc660614c2ff29fd168bbc66d74bfa64b92abb84d02645cb3b2950db5c166111b7b19 SHA512 6595eb19f174c9e46a937d6028d9bb2bfdcda06f35ec2a0499bc5deff05d8cfc8f8fc725e664496d3b431c8724141a1410201b57945b98ca211aea15c990d621
-DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
-DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
+DIST rails-6.1.7.6.tgz 11040086 BLAKE2B 8b5311752952403cf8eae31b5d8e8d376c4b449f512e86df66b3e921375ffa3ea11e15f1d74a7f8ec9179ff70c32a6d4f8de75be5f92fe6315ee97164e22d2d0 SHA512 c4163565b2324ce97317d252f3d9e2e673a12b6ae7f54571645c958ce30221f1b357887ade80e46abdd47a422736b9946e49850d52ffd72d8acc87f35224e69f
+DIST rails-6.1.7.7.tgz 11041447 BLAKE2B 3f59325aa86d3b7d6e0773b9eb2b895a26b644109be8df0b0d9abbab8e6c77f76d316c717ecce4e2d79d3247559504a7452a8037d2d52a6cf95fbacd7f8b8612 SHA512 f9af4eebb3bffec78832f92be6158c71c147e265b54e8e368a06c762bfd1a7992256b3e9286aeb59eee69ba56be28d381a715eb13f99b9babfd9b7ce8051e210
+DIST rails-7.0.8.1.tgz 11089378 BLAKE2B 5d92087402d8aa2b86759ec92c44091a7a0f8a22959e0510f10417f88e54f9e1e6a14c4e9519033cd63bdd1f54f72b91bff8a3318a3264c39311317fb67e8b63 SHA512 74f467f7d3e5ec88560448e206a8f0cdf55bad60dd9eac019224fce86a766ee9d0c4afbd4eaae30dacfe34beebcff6aa9d3c5c99be9c8ad5c385817fe409afc8
+DIST rails-7.0.8.tgz 11073254 BLAKE2B 2aee047a365acb0890ef3afbccfe323fedccf7b54214aa1c2f92b7a7aaa64c275c1e03f8f97e6a2e30281224ba30703d18b40aeee9b4e7fb6f035a4a7716a054 SHA512 0e9feb5bd0360868c3109152d8ea414b65d36d33a5dbb96b199cfa6c4335800d6c392e0fbcbfa453a02fd75924a297a65caf04948895de53db43700478dbeb11
+DIST rails-7.1.3.2.tgz 10914950 BLAKE2B 419e6817958efcc5dbbb47d24498decff48fca9748c9f4069bcd353a4644fa623caf79c4072db0944139ac991d14623013683f69cef3126fa63348cc0612655b SHA512 0a58e7b125eb97f94a8a75bacd421d7197e6ad78d24651aecfe82e41c024ccfa42a9de0664099f55cd6ac6a41fd7f09cdc3177ed2b809b0be7d7df1639424f9d
+DIST rails-7.1.3.tgz 10900323 BLAKE2B a83ca4ee656e93241fa0460d8df197904a4eef310cf25bce6db6167bad87c8d0644533fa6e224ec959a4e10005164e0f981e14e8b23cee14e2747117be9da712 SHA512 df1128d1403ab82d218d2057c7c86e646594f97a8c6fcf5648a66440d52e5c20a4ceb0c13e70b6153152b44f62d8a1e20f3776acff5c55bc54d006cb7da32d12
diff --git a/dev-ruby/actionview/actionview-4.2.11.1.ebuild b/dev-ruby/actionview/actionview-4.2.11.1.ebuild
deleted file mode 100644
index 56b477c633e8..000000000000
--- a/dev-ruby/actionview/actionview-4.2.11.1.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Simple, battle-tested conventions and helpers for building web pages"
-HOMEPAGE="https://github.com/rails/rails/"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- >=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:*
- >=dev-ruby/erubis-2.7.0
- >=dev-ruby/rails-html-sanitizer-1.0.3:1
- >=dev-ruby/rails-dom-testing-1.0.5:1
-"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/mocha:0.14
- ~dev-ruby/actionpack-${PV}
- ~dev-ruby/activemodel-${PV}
- )"
-
-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 '/rake/ s/12.3/12.4/ ; /dalli/ s/2.7.7/2.7.10/' \
- -e '/:job/,/end/ s:^:#:' \
- -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
- rm ../Gemfile.lock || die
-}
diff --git a/dev-ruby/actionview/actionview-5.1.7.ebuild b/dev-ruby/actionview/actionview-5.1.7.ebuild
deleted file mode 100644
index ab072aff349c..000000000000
--- a/dev-ruby/actionview/actionview-5.1.7.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Simple, battle-tested conventions and helpers for building web pages"
-HOMEPAGE="https://github.com/rails/rails/"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- >=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:*
- >=dev-ruby/erubi-1.4:0
- >=dev-ruby/rails-html-sanitizer-1.0.3:1
- dev-ruby/rails-dom-testing:2
-"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/mocha:0.14
- ~dev-ruby/actionpack-${PV}
- ~dev-ruby/activemodel-${PV}
- )"
-
-all_ruby_prepare() {
- # Remove items from the common Gemfile that we don't need for this
- # test run. This also requires handling some gemspecs.
- sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|rack-cache\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|mime-types\|minitest\|sprockets\|stackprof\)/ s:^:#:" \
- -e '/:job/,/end/ s:^:#:' \
- -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
- rm ../Gemfile.lock || die
-
- # Avoid tests failing due to missing logger setup in activerecord,
- # most likely related to test environment setup.
- rm -f test/activerecord/render_partial_with_record_identification_test.rb || die
-
- sed -i -e '1igem "activerecord", "~>5.1.0"; gem "actionpack", "~>5.1.0"; gem "railties", "~>5.1.0"' test/abstract_unit.rb || die
-}
diff --git a/dev-ruby/actionview/actionview-5.2.3.ebuild b/dev-ruby/actionview/actionview-5.2.3.ebuild
deleted file mode 100644
index edb3803e8f3c..000000000000
--- a/dev-ruby/actionview/actionview-5.2.3.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Simple, battle-tested conventions and helpers for building web pages"
-HOMEPAGE="https://github.com/rails/rails/"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- >=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:*
- >=dev-ruby/erubi-1.4:0
- >=dev-ruby/rails-html-sanitizer-1.0.3:1
- dev-ruby/rails-dom-testing:2
-"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/mocha
- ~dev-ruby/actionpack-${PV}
- ~dev-ruby/activemodel-${PV}
- )"
-
-all_ruby_prepare() {
- # Remove items from the common Gemfile that we don't need for this
- # test run. This also requires handling some gemspecs.
- sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|rack-cache\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|mime-types\|minitest\|sprockets\|stackprof\)/ s:^:#:" \
- -e '/:job/,/end/ s:^:#:' \
- -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
- rm ../Gemfile.lock || die
-
- # Avoid tests failing due to missing logger setup in activerecord,
- # most likely related to test environment setup.
- rm -f test/activerecord/render_partial_with_record_identification_test.rb || die
-}
diff --git a/dev-ruby/actionview/actionview-6.0.0.ebuild b/dev-ruby/actionview/actionview-6.0.0.ebuild
deleted file mode 100644
index 8f84d5478fc9..000000000000
--- a/dev-ruby/actionview/actionview-6.0.0.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Simple, battle-tested conventions and helpers for building web pages"
-HOMEPAGE="https://github.com/rails/rails/"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm64"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- >=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:*
- >=dev-ruby/erubi-1.4:0
- >=dev-ruby/rails-html-sanitizer-1.2.0:1
- dev-ruby/rails-dom-testing:2
-"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/mocha
- ~dev-ruby/actionpack-${PV}
- ~dev-ruby/activemodel-${PV}
- ~dev-ruby/activerecord-${PV}
- )"
-
-all_ruby_prepare() {
- # Remove items from the common Gemfile that we don't need for this
- # test run. This also requires handling some gemspecs.
- sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|rack-cache\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|mime-types\|minitest\|sprockets\|stackprof\)/ s:^:#:" \
- -e '/:job/,/end/ s:^:#:' \
- -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
- rm ../Gemfile.lock || die
-
- # Avoid tests failing due to missing logger setup in activerecord,
- # most likely related to test environment setup.
- rm -f test/activerecord/render_partial_with_record_identification_test.rb || die
-}
diff --git a/dev-ruby/actionview/actionview-6.1.7.6.ebuild b/dev-ruby/actionview/actionview-6.1.7.6.ebuild
new file mode 100644
index 000000000000..98353cc161c3
--- /dev/null
+++ b/dev-ruby/actionview/actionview-6.1.7.6.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple, battle-tested conventions and helpers for building web pages"
+HOMEPAGE="https://github.com/rails/rails/"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:*
+ >=dev-ruby/erubi-1.4:0
+ >=dev-ruby/rails-html-sanitizer-1.2.0:1
+ dev-ruby/rails-dom-testing:2
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/railties-${PV}
+ dev-ruby/sqlite3
+ <dev-ruby/minitest-5.16:*
+ )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|rack-cache\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|mime-types\|minitest\|sprockets\|stackprof\)/ s:^:#:" \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ sed -e '3igem "railties", "~> 6.1.0"; gem "activerecord", "~> 6.1.0"; gem "minitest", "<5.16"' \
+ -i test/abstract_unit.rb || die
+
+ # Fix loading of activerecord integration tests. This avoids loading
+ # activerecord twice and thus redefining constants leading to
+ # failures. Bug #719342
+ sed -e '/abstract_unit/arequire "active_record" ; require "active_record/fixtures"' \
+ -e '/defined/ s/FixtureSet/ActiveRecord::FixtureSet/' \
+ -i test/active_record_unit.rb || die
+
+ # Avoid test failing on capitalization difference
+ sed -e '/test_raise_arg_overrides_raise_config_option/askip "Capitalization difference"' \
+ -i test/template/translation_helper_test.rb || die
+
+ # Remove tests that are coupled to the Sanitizer (already removed upstream)
+ sed -e '/test_sanitized_allowed_\(tags_class_method\|attributes_class_method\)/askip "Removed upstream"' \
+ -i test/template/sanitize_helper_test.rb || die
+}
diff --git a/dev-ruby/actionview/actionview-6.1.7.7.ebuild b/dev-ruby/actionview/actionview-6.1.7.7.ebuild
new file mode 100644
index 000000000000..cb10f084f155
--- /dev/null
+++ b/dev-ruby/actionview/actionview-6.1.7.7.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple, battle-tested conventions and helpers for building web pages"
+HOMEPAGE="https://github.com/rails/rails/"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:*
+ >=dev-ruby/erubi-1.4:0
+ >=dev-ruby/rails-html-sanitizer-1.2.0:1
+ dev-ruby/rails-dom-testing:2
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/railties-${PV}
+ dev-ruby/sqlite3
+ <dev-ruby/minitest-5.16:*
+ )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|rack-cache\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|mime-types\|minitest\|sprockets\|stackprof\)/ s:^:#:" \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ sed -e '3igem "railties", "~> 6.1.0"; gem "activerecord", "~> 6.1.0"; gem "minitest", "<5.16"' \
+ -i test/abstract_unit.rb || die
+
+ # Fix loading of activerecord integration tests. This avoids loading
+ # activerecord twice and thus redefining constants leading to
+ # failures. Bug #719342
+ sed -e '/abstract_unit/arequire "active_record" ; require "active_record/fixtures"' \
+ -e '/defined/ s/FixtureSet/ActiveRecord::FixtureSet/' \
+ -i test/active_record_unit.rb || die
+
+ # Avoid test failing on capitalization difference
+ sed -e '/test_raise_arg_overrides_raise_config_option/askip "Capitalization difference"' \
+ -i test/template/translation_helper_test.rb || die
+
+ # Remove tests that are coupled to the Sanitizer (already removed upstream)
+ sed -e '/test_sanitized_allowed_\(tags_class_method\|attributes_class_method\)/askip "Removed upstream"' \
+ -i test/template/sanitize_helper_test.rb || die
+}
diff --git a/dev-ruby/actionview/actionview-7.0.8.1.ebuild b/dev-ruby/actionview/actionview-7.0.8.1.ebuild
new file mode 100644
index 000000000000..75529fe9f24e
--- /dev/null
+++ b/dev-ruby/actionview/actionview-7.0.8.1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple, battle-tested conventions and helpers for building web pages"
+HOMEPAGE="https://github.com/rails/rails/"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:*
+ >=dev-ruby/erubi-1.4:0
+ >=dev-ruby/rails-html-sanitizer-1.2.0:1
+ dev-ruby/rails-dom-testing:2
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/railties-${PV}
+ dev-ruby/sqlite3
+ <dev-ruby/minitest-5.16:*
+ )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|rack-cache\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|mime-types\|minitest\|sprockets\|stackprof\)/ s:^:#:" \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Use working minitest version
+ sed -i -e '3igem "minitest", "<5.16"; gem "railties", "~> 7.0.0"; gem "activerecord", "~> 7.0.0"' test/abstract_unit.rb || die
+
+ # Fix loading of activerecord integration tests. This avoids loading
+ # activerecord twice and thus redefining constants leading to
+ # failures. Bug #719342
+ sed -e '/abstract_unit/arequire "active_record" ; require "active_record/fixtures"' \
+ -e '/defined/ s/FixtureSet/ActiveRecord::FixtureSet/' \
+ -i test/active_record_unit.rb || die
+
+ # Avoid test failing on capitalization difference
+ sed -e '/test_raise_arg_overrides_raise_config_option/askip "Capitalization difference"' \
+ -i test/template/translation_helper_test.rb || die
+
+ # Remove tests that are coupled to the Sanitizer (already removed upstream)
+ sed -e '/test_sanitized_allowed_\(tags_class_method\|attributes_class_method\)/askip "Removed upstream"' \
+ -i test/template/sanitize_helper_test.rb || die
+}
diff --git a/dev-ruby/actionview/actionview-7.0.8.ebuild b/dev-ruby/actionview/actionview-7.0.8.ebuild
new file mode 100644
index 000000000000..3d221f2c9ed3
--- /dev/null
+++ b/dev-ruby/actionview/actionview-7.0.8.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple, battle-tested conventions and helpers for building web pages"
+HOMEPAGE="https://github.com/rails/rails/"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:*
+ >=dev-ruby/erubi-1.4:0
+ >=dev-ruby/rails-html-sanitizer-1.2.0:1
+ dev-ruby/rails-dom-testing:2
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/railties-${PV}
+ dev-ruby/sqlite3
+ <dev-ruby/minitest-5.16:*
+ )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|rack-cache\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|mime-types\|minitest\|sprockets\|stackprof\)/ s:^:#:" \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Use working minitest version
+ sed -i -e '3igem "minitest", "<5.16"' test/abstract_unit.rb || die
+
+ # Fix loading of activerecord integration tests. This avoids loading
+ # activerecord twice and thus redefining constants leading to
+ # failures. Bug #719342
+ sed -e '/abstract_unit/arequire "active_record" ; require "active_record/fixtures"' \
+ -e '/defined/ s/FixtureSet/ActiveRecord::FixtureSet/' \
+ -i test/active_record_unit.rb || die
+
+ # Avoid test failing on capitalization difference
+ sed -e '/test_raise_arg_overrides_raise_config_option/askip "Capitalization difference"' \
+ -i test/template/translation_helper_test.rb || die
+
+ # Remove tests that are coupled to the Sanitizer (already removed upstream)
+ sed -e '/test_sanitized_allowed_\(tags_class_method\|attributes_class_method\)/askip "Removed upstream"' \
+ -i test/template/sanitize_helper_test.rb || die
+}
diff --git a/dev-ruby/actionview/actionview-7.1.3.2.ebuild b/dev-ruby/actionview/actionview-7.1.3.2.ebuild
new file mode 100644
index 000000000000..2de8a91a3682
--- /dev/null
+++ b/dev-ruby/actionview/actionview-7.1.3.2.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple, battle-tested conventions and helpers for building web pages"
+HOMEPAGE="https://github.com/rails/rails/"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:*
+ >=dev-ruby/erubi-1.11:0
+ >=dev-ruby/rails-dom-testing-2.2:2
+ >=dev-ruby/rails-html-sanitizer-1.6:1
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/railties-${PV}
+ dev-ruby/sqlite3
+ dev-ruby/minitest:5
+ )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|rack-cache\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|mime-types\|minitest\|sprockets\|stackprof\)/ s:^:#:" \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Fix loading of activerecord integration tests. This avoids loading
+ # activerecord twice and thus redefining constants leading to
+ # failures. Bug #719342
+ sed -e '/abstract_unit/arequire "active_record" ; require "active_record/fixtures"' \
+ -e '/defined/ s/FixtureSet/ActiveRecord::FixtureSet/' \
+ -i test/active_record_unit.rb || die
+
+ # Avoid test failing on capitalization difference
+ sed -e '/test_raise_arg_overrides_raise_config_option/askip "Capitalization difference"' \
+ -i test/template/translation_helper_test.rb || die
+
+ # Remove tests that are coupled to the Sanitizer (already removed upstream)
+ sed -e '/test_sanitized_allowed_\(tags_class_method\|attributes_class_method\)/askip "Removed upstream"' \
+ -i test/template/sanitize_helper_test.rb || die
+}
diff --git a/dev-ruby/actionview/actionview-7.1.3.ebuild b/dev-ruby/actionview/actionview-7.1.3.ebuild
new file mode 100644
index 000000000000..fb0cee3c16ae
--- /dev/null
+++ b/dev-ruby/actionview/actionview-7.1.3.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple, battle-tested conventions and helpers for building web pages"
+HOMEPAGE="https://github.com/rails/rails/"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:*
+ >=dev-ruby/erubi-1.11:0
+ >=dev-ruby/rails-dom-testing-2.2:2
+ >=dev-ruby/rails-html-sanitizer-1.6:1
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/railties-${PV}
+ dev-ruby/sqlite3
+ <dev-ruby/minitest-5.16:*
+ )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -i -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|rack-cache\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|mime-types\|minitest\|sprockets\|stackprof\)/ s:^:#:" \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Fix loading of activerecord integration tests. This avoids loading
+ # activerecord twice and thus redefining constants leading to
+ # failures. Bug #719342
+ sed -e '/abstract_unit/arequire "active_record" ; require "active_record/fixtures"' \
+ -e '/defined/ s/FixtureSet/ActiveRecord::FixtureSet/' \
+ -i test/active_record_unit.rb || die
+
+ # Avoid test failing on capitalization difference
+ sed -e '/test_raise_arg_overrides_raise_config_option/askip "Capitalization difference"' \
+ -i test/template/translation_helper_test.rb || die
+
+ # Remove tests that are coupled to the Sanitizer (already removed upstream)
+ sed -e '/test_sanitized_allowed_\(tags_class_method\|attributes_class_method\)/askip "Removed upstream"' \
+ -i test/template/sanitize_helper_test.rb || die
+}
diff --git a/dev-ruby/actionview/metadata.xml b/dev-ruby/actionview/metadata.xml
index 42d41e33d990..fbd27c03d85b 100644
--- a/dev-ruby/actionview/metadata.xml
+++ b/dev-ruby/actionview/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/activejob/Manifest b/dev-ruby/activejob/Manifest
index e3b53c8c8150..5a38fea999e2 100644
--- a/dev-ruby/activejob/Manifest
+++ b/dev-ruby/activejob/Manifest
@@ -1,4 +1,6 @@
-DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
-DIST rails-5.1.7.tgz 6146668 BLAKE2B 494a12d79037010333c06d14573474f0d0c1e62ce5252e8fbe4eb4c6935dc660614c2ff29fd168bbc66d74bfa64b92abb84d02645cb3b2950db5c166111b7b19 SHA512 6595eb19f174c9e46a937d6028d9bb2bfdcda06f35ec2a0499bc5deff05d8cfc8f8fc725e664496d3b431c8724141a1410201b57945b98ca211aea15c990d621
-DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
-DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
+DIST rails-6.1.7.6.tgz 11040086 BLAKE2B 8b5311752952403cf8eae31b5d8e8d376c4b449f512e86df66b3e921375ffa3ea11e15f1d74a7f8ec9179ff70c32a6d4f8de75be5f92fe6315ee97164e22d2d0 SHA512 c4163565b2324ce97317d252f3d9e2e673a12b6ae7f54571645c958ce30221f1b357887ade80e46abdd47a422736b9946e49850d52ffd72d8acc87f35224e69f
+DIST rails-6.1.7.7.tgz 11041447 BLAKE2B 3f59325aa86d3b7d6e0773b9eb2b895a26b644109be8df0b0d9abbab8e6c77f76d316c717ecce4e2d79d3247559504a7452a8037d2d52a6cf95fbacd7f8b8612 SHA512 f9af4eebb3bffec78832f92be6158c71c147e265b54e8e368a06c762bfd1a7992256b3e9286aeb59eee69ba56be28d381a715eb13f99b9babfd9b7ce8051e210
+DIST rails-7.0.8.1.tgz 11089378 BLAKE2B 5d92087402d8aa2b86759ec92c44091a7a0f8a22959e0510f10417f88e54f9e1e6a14c4e9519033cd63bdd1f54f72b91bff8a3318a3264c39311317fb67e8b63 SHA512 74f467f7d3e5ec88560448e206a8f0cdf55bad60dd9eac019224fce86a766ee9d0c4afbd4eaae30dacfe34beebcff6aa9d3c5c99be9c8ad5c385817fe409afc8
+DIST rails-7.0.8.tgz 11073254 BLAKE2B 2aee047a365acb0890ef3afbccfe323fedccf7b54214aa1c2f92b7a7aaa64c275c1e03f8f97e6a2e30281224ba30703d18b40aeee9b4e7fb6f035a4a7716a054 SHA512 0e9feb5bd0360868c3109152d8ea414b65d36d33a5dbb96b199cfa6c4335800d6c392e0fbcbfa453a02fd75924a297a65caf04948895de53db43700478dbeb11
+DIST rails-7.1.3.2.tgz 10914950 BLAKE2B 419e6817958efcc5dbbb47d24498decff48fca9748c9f4069bcd353a4644fa623caf79c4072db0944139ac991d14623013683f69cef3126fa63348cc0612655b SHA512 0a58e7b125eb97f94a8a75bacd421d7197e6ad78d24651aecfe82e41c024ccfa42a9de0664099f55cd6ac6a41fd7f09cdc3177ed2b809b0be7d7df1639424f9d
+DIST rails-7.1.3.tgz 10900323 BLAKE2B a83ca4ee656e93241fa0460d8df197904a4eef310cf25bce6db6167bad87c8d0644533fa6e224ec959a4e10005164e0f981e14e8b23cee14e2747117be9da712 SHA512 df1128d1403ab82d218d2057c7c86e646594f97a8c6fcf5648a66440d52e5c20a4ceb0c13e70b6153152b44f62d8a1e20f3776acff5c55bc54d006cb7da32d12
diff --git a/dev-ruby/activejob/activejob-4.2.11.1.ebuild b/dev-ruby/activejob/activejob-4.2.11.1.ebuild
deleted file mode 100644
index 6ffd1014fe70..000000000000
--- a/dev-ruby/activejob/activejob-4.2.11.1.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Job framework with pluggable queues"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- >=dev-ruby/globalid-0.3.0
-"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/mocha-0.14.0:0.14
- )"
-
-all_ruby_prepare() {
- # Set test environment to our hand.
- sed -i -e '/load_paths/d' test/helper.rb || die "Unable to remove load paths"
-
- # Remove all currently unpackaged queues.
- sed -i -e 's/delayed_job qu que queue_classic resque sidekiq sneakers sucker_punch backburner//' Rakefile || die
-}
diff --git a/dev-ruby/activejob/activejob-5.1.7.ebuild b/dev-ruby/activejob/activejob-5.1.7.ebuild
deleted file mode 100644
index e6d793b9c644..000000000000
--- a/dev-ruby/activejob/activejob-5.1.7.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Job framework with pluggable queues"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- >=dev-ruby/globalid-0.3.6
-"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/mocha-0.14.0:0.14
- )"
-
-all_ruby_prepare() {
- # Set test environment to our hand.
- sed -i -e '/load_paths/d' test/helper.rb || die "Unable to remove load paths"
-
- # Remove all currently unpackaged queues.
- sed -i -e 's/que queue_classic resque sidekiq sneakers sucker_punch backburner//' Rakefile || die
-}
diff --git a/dev-ruby/activejob/activejob-5.2.3.ebuild b/dev-ruby/activejob/activejob-5.2.3.ebuild
deleted file mode 100644
index 7bf1fc416045..000000000000
--- a/dev-ruby/activejob/activejob-5.2.3.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Job framework with pluggable queues"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- >=dev-ruby/globalid-0.3.6
-"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/mocha
- )"
-
-all_ruby_prepare() {
- # Set test environment to our hand.
- sed -i -e '/load_paths/d' test/helper.rb || die "Unable to remove load paths"
-
- # Remove all currently unpackaged queues.
- sed -i -e 's/que queue_classic resque sidekiq sneakers sucker_punch backburner//' \
- -e 's/delayed_job//' Rakefile || die
-}
diff --git a/dev-ruby/activejob/activejob-6.0.0.ebuild b/dev-ruby/activejob/activejob-6.0.0.ebuild
deleted file mode 100644
index ed669a6589dc..000000000000
--- a/dev-ruby/activejob/activejob-6.0.0.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC=""
-RUBY_FAKEGEM_DOCDIR=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Job framework with pluggable queues"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm64"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- >=dev-ruby/globalid-0.3.6
-"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/mocha
- )"
-
-all_ruby_prepare() {
- # Set test environment to our hand.
- sed -i -e '/load_paths/d' test/helper.rb || die "Unable to remove load paths"
-
- # Remove all currently unpackaged queues.
- sed -i -e 's/que queue_classic resque sidekiq sneakers sucker_punch backburner//' \
- -e 's/delayed_job//' Rakefile || die
- sed -i -e '/SneakersAdapter/ s:^:#:' test/cases/exceptions_test.rb || die
-}
diff --git a/dev-ruby/activejob/activejob-6.1.7.6.ebuild b/dev-ruby/activejob/activejob-6.1.7.6.ebuild
new file mode 100644
index 000000000000..7342f02d1ddd
--- /dev/null
+++ b/dev-ruby/activejob/activejob-6.1.7.6.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=1 test"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Job framework with pluggable queues"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/globalid-0.3.6
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ )"
+
+all_ruby_prepare() {
+ sed -i -e '2igem "activesupport", "~> 6.1.0"' test/helper.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
+}
diff --git a/dev-ruby/activejob/activejob-6.1.7.7.ebuild b/dev-ruby/activejob/activejob-6.1.7.7.ebuild
new file mode 100644
index 000000000000..49f6e39d3c0b
--- /dev/null
+++ b/dev-ruby/activejob/activejob-6.1.7.7.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=1 test"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Job framework with pluggable queues"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/globalid-0.3.6
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ )"
+
+all_ruby_prepare() {
+ sed -i -e '2igem "activesupport", "~> 6.1.0"' test/helper.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
+}
diff --git a/dev-ruby/activejob/activejob-7.0.8.1.ebuild b/dev-ruby/activejob/activejob-7.0.8.1.ebuild
new file mode 100644
index 000000000000..961eb6a97954
--- /dev/null
+++ b/dev-ruby/activejob/activejob-7.0.8.1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Job framework with pluggable queues"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/globalid-0.3.6
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ dev-ruby/zeitwerk
+ )"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ sed -i -e '/load_paths/d' test/helper.rb || die "Unable to remove load paths"
+
+ # Remove all currently unpackaged queues.
+ sed -i -e 's/que queue_classic resque sidekiq sneakers sucker_punch backburner//' \
+ -e 's/delayed_job//' Rakefile || die
+ sed -i -e '/SneakersAdapter/ s:^:#:' test/cases/exceptions_test.rb || die
+ rm -f test/cases/delayed_job_adapter_test.rb || die
+}
diff --git a/dev-ruby/activejob/activejob-7.0.8.ebuild b/dev-ruby/activejob/activejob-7.0.8.ebuild
new file mode 100644
index 000000000000..f6748f053fcd
--- /dev/null
+++ b/dev-ruby/activejob/activejob-7.0.8.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Job framework with pluggable queues"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/globalid-0.3.6
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ dev-ruby/zeitwerk
+ )"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ sed -i -e '/load_paths/d' test/helper.rb || die "Unable to remove load paths"
+
+ # Remove all currently unpackaged queues.
+ sed -i -e 's/que queue_classic resque sidekiq sneakers sucker_punch backburner//' \
+ -e 's/delayed_job//' Rakefile || die
+ sed -i -e '/SneakersAdapter/ s:^:#:' test/cases/exceptions_test.rb || die
+ rm -f test/cases/delayed_job_adapter_test.rb || die
+}
diff --git a/dev-ruby/activejob/activejob-7.1.3.2.ebuild b/dev-ruby/activejob/activejob-7.1.3.2.ebuild
new file mode 100644
index 000000000000..f936f6ce2b63
--- /dev/null
+++ b/dev-ruby/activejob/activejob-7.1.3.2.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Job framework with pluggable queues"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/globalid-0.3.6
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ dev-ruby/zeitwerk
+ )"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ sed -i -e '/load_paths/d' test/helper.rb || die "Unable to remove load paths"
+
+ # Remove all currently unpackaged queues.
+ sed -i -e 's/que queue_classic resque sidekiq sneakers sucker_punch backburner//' \
+ -e 's/delayed_job//' Rakefile || die
+ sed -i -e '/SneakersAdapter/ s:^:#:' test/cases/exceptions_test.rb || die
+ rm -f test/cases/delayed_job_adapter_test.rb || die
+}
diff --git a/dev-ruby/activejob/activejob-7.1.3.ebuild b/dev-ruby/activejob/activejob-7.1.3.ebuild
new file mode 100644
index 000000000000..961eb6a97954
--- /dev/null
+++ b/dev-ruby/activejob/activejob-7.1.3.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Job framework with pluggable queues"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/globalid-0.3.6
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ dev-ruby/zeitwerk
+ )"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ sed -i -e '/load_paths/d' test/helper.rb || die "Unable to remove load paths"
+
+ # Remove all currently unpackaged queues.
+ sed -i -e 's/que queue_classic resque sidekiq sneakers sucker_punch backburner//' \
+ -e 's/delayed_job//' Rakefile || die
+ sed -i -e '/SneakersAdapter/ s:^:#:' test/cases/exceptions_test.rb || die
+ rm -f test/cases/delayed_job_adapter_test.rb || die
+}
diff --git a/dev-ruby/activejob/metadata.xml b/dev-ruby/activejob/metadata.xml
index 42d41e33d990..fbd27c03d85b 100644
--- a/dev-ruby/activejob/metadata.xml
+++ b/dev-ruby/activejob/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/activeldap/Manifest b/dev-ruby/activeldap/Manifest
index 798a6501f7dd..19f5ac1847d4 100644
--- a/dev-ruby/activeldap/Manifest
+++ b/dev-ruby/activeldap/Manifest
@@ -1,3 +1,2 @@
-DIST activeldap-4.0.6.gem 225280 BLAKE2B 0f03ef95f3d0600d2661eab048c8dda3fbabe519add67f7785895e346d835d1e0396270f829f16a982f12863c80378be2f4f7ff7cf84016007b005b1914cec15 SHA512 03053e3798b557c73c3a0918b72d1d3c2cada4da3475913ef17a6f9f2f1ac1e102052459ef1a6d8c25ce41382b64c1a3097ccba1c768497a33a3a971b9778d3b
-DIST activeldap-5.2.3.gem 226304 BLAKE2B 5ac747f9c854071da941bd7dc3bbf151eb9f6b190a725b0daca9a9c76b1aafa9fcb609c16098924c3f9bda6f25d9968c4a715a0f2994333c233a950f809cf862 SHA512 30fb4b70975e5a911d736ce8579f3ff0c13d326499660a6fdd25bc4e4d20ad615c038c0b50bdf1722775f6313e9c132a004c86fdb9d3a356f78171f78c5d171b
-DIST activeldap-5.2.4.gem 226304 BLAKE2B f13b5a1cf423b44087d55d3a4957be1444d598ab1d1bd7d83ee545a2806b77b47124edcb326fc567eb06e866c62a2ad0c3dafd903232588f824bc2978c197d60 SHA512 da37cfa20c8be7151669ba3b409994c668b037a2f318b1b034f6fa9c0e56a9a778b03a26415cbd98c8ba3fa1d487d42343bc0532665c1037880e75474a1c708f
+DIST activeldap-6.1.0.gem 227328 BLAKE2B 48cd393a294b677b373461701773d3d0c18cbe9ee5124bcbafe392ee664a0e1045feb2d808734988bfceaaf7ae7b276ea12615ae30bb8109d63daf4b6a8cbed5 SHA512 b8a8d1346d75ae1ddd15b919f2a7afbec3e62b4248144ece3e1324892899735b05aa221ecec7c07f6273f35a6ffdacf4858d57326fb9b8c096f358652ef0b99d
+DIST activeldap-7.0.0.gem 227840 BLAKE2B 2bf720efa60f2233180cf73a79da61058398a7409319c468ee96938091fd3d4eeebc904e3d8c55f51d1ca9a22f1b22e27554b78910065022ce9ebb92a883c256 SHA512 b4df5307583fc29abb74cdfd1d3b62f4bf03525e4a81397b32522ce84ee49f58fae27a7e9ba62490cfe49daa27be67440ccbaca25ba15553845d9e4a6e693bda
diff --git a/dev-ruby/activeldap/activeldap-4.0.6.ebuild b/dev-ruby/activeldap/activeldap-4.0.6.ebuild
deleted file mode 100644
index 7d974c43a6c6..000000000000
--- a/dev-ruby/activeldap/activeldap-4.0.6.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.textile TODO doc/text/*"
-RUBY_FAKEGEM_EXTRAINSTALL="po"
-
-inherit ruby-fakegem
-
-MY_P="${P/ruby-/}"
-DESCRIPTION="ActiveLDAP provides an activerecord inspired object oriented interface to LDAP"
-HOMEPAGE="https://github.com/activeldap/activeldap"
-
-LICENSE="GPL-2"
-SLOT="4"
-KEYWORDS="~amd64"
-IUSE=""
-
-# Most tests require a live LDAP server to run.
-RESTRICT="test"
-
-ruby_add_rdepend "
- >dev-ruby/activemodel-4.0.0:*
- dev-ruby/locale
- dev-ruby/ruby-gettext
- dev-ruby/gettext_i18n_rails
- || ( >=dev-ruby/ruby-ldap-0.8.2 dev-ruby/ruby-net-ldap )"
-
-all_ruby_install() {
- all_fakegem_install
-
- dodoc doc/text/*
-
- insinto /usr/share/doc/${PF}
- doins -r examples
-}
diff --git a/dev-ruby/activeldap/activeldap-5.2.3.ebuild b/dev-ruby/activeldap/activeldap-5.2.3.ebuild
deleted file mode 100644
index 9b763decfa5f..000000000000
--- a/dev-ruby/activeldap/activeldap-5.2.3.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.textile TODO doc/text/*"
-RUBY_FAKEGEM_EXTRAINSTALL="po"
-
-inherit ruby-fakegem
-
-MY_P="${P/ruby-/}"
-DESCRIPTION="ActiveLDAP provides an activerecord inspired object oriented interface to LDAP"
-HOMEPAGE="https://github.com/activeldap/activeldap"
-
-LICENSE="GPL-2"
-SLOT="5"
-KEYWORDS="~amd64"
-IUSE=""
-
-# Most tests require a live LDAP server to run.
-RESTRICT="test"
-
-ruby_add_rdepend "
- >dev-ruby/activemodel-4.0.0:*
- dev-ruby/builder
- dev-ruby/locale
- dev-ruby/ruby-gettext
- dev-ruby/gettext_i18n_rails
- || ( dev-ruby/ruby-net-ldap >=dev-ruby/ruby-ldap-0.8.2 )"
-
-all_ruby_install() {
- all_fakegem_install
-
- dodoc doc/text/*
-
- insinto /usr/share/doc/${PF}
- doins -r examples
-}
diff --git a/dev-ruby/activeldap/activeldap-5.2.4.ebuild b/dev-ruby/activeldap/activeldap-5.2.4.ebuild
deleted file mode 100644
index 69bfdaa2d281..000000000000
--- a/dev-ruby/activeldap/activeldap-5.2.4.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.textile TODO doc/text/*"
-RUBY_FAKEGEM_EXTRAINSTALL="po"
-
-inherit ruby-fakegem
-
-MY_P="${P/ruby-/}"
-DESCRIPTION="ActiveLDAP provides an activerecord inspired object oriented interface to LDAP"
-HOMEPAGE="https://github.com/activeldap/activeldap"
-
-LICENSE="GPL-2"
-SLOT="5"
-KEYWORDS="~amd64"
-IUSE=""
-
-# Most tests require a live LDAP server to run.
-RESTRICT="test"
-
-ruby_add_rdepend "
- >dev-ruby/activemodel-4.2.0:*
- dev-ruby/builder
- dev-ruby/locale
- dev-ruby/ruby-gettext
- dev-ruby/gettext_i18n_rails
- || ( dev-ruby/ruby-net-ldap >=dev-ruby/ruby-ldap-0.8.2 )"
-
-all_ruby_install() {
- all_fakegem_install
-
- dodoc doc/text/*
-
- insinto /usr/share/doc/${PF}
- doins -r examples
-}
diff --git a/dev-ruby/activeldap/activeldap-6.1.0-r1.ebuild b/dev-ruby/activeldap/activeldap-6.1.0-r1.ebuild
new file mode 100644
index 000000000000..0ddf0824c69f
--- /dev/null
+++ b/dev-ruby/activeldap/activeldap-6.1.0-r1.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="TODO doc/text/*"
+RUBY_FAKEGEM_EXTRAINSTALL="po"
+
+inherit ruby-fakegem
+
+MY_P="${P/ruby-/}"
+DESCRIPTION="ActiveLDAP provides an activerecord inspired object oriented interface to LDAP"
+HOMEPAGE="https://github.com/activeldap/activeldap"
+
+LICENSE="GPL-2"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+# Most tests require a live LDAP server to run.
+RESTRICT="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/activemodel-5.2.0:*
+ dev-ruby/builder
+ dev-ruby/locale
+ dev-ruby/ruby-gettext
+ dev-ruby/gettext_i18n_rails
+ || ( dev-ruby/ruby-net-ldap >=dev-ruby/ruby-ldap-0.8.2 )"
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc doc/text/*
+ dodoc -r examples
+}
diff --git a/dev-ruby/activeldap/activeldap-7.0.0.ebuild b/dev-ruby/activeldap/activeldap-7.0.0.ebuild
new file mode 100644
index 000000000000..1540a3004f70
--- /dev/null
+++ b/dev-ruby/activeldap/activeldap-7.0.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="TODO doc/text/*"
+RUBY_FAKEGEM_EXTRAINSTALL="po"
+
+# Most tests require a running LDAP server
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+inherit ruby-fakegem
+
+MY_P="${P/ruby-/}"
+DESCRIPTION="ActiveLDAP provides an activerecord inspired object oriented interface to LDAP"
+HOMEPAGE="https://github.com/activeldap/activeldap"
+
+LICENSE="GPL-2"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+
+ruby_add_rdepend "
+ >=dev-ruby/activemodel-5.2.0:*
+ dev-ruby/builder
+ dev-ruby/locale
+ dev-ruby/ruby-gettext
+ dev-ruby/gettext_i18n_rails
+ || ( dev-ruby/ruby-net-ldap >=dev-ruby/ruby-ldap-0.8.2 )"
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc doc/text/*
+ dodoc -r examples
+}
diff --git a/dev-ruby/activeldap/metadata.xml b/dev-ruby/activeldap/metadata.xml
index 5dc46abd2d2e..80d832f99f62 100644
--- a/dev-ruby/activeldap/metadata.xml
+++ b/dev-ruby/activeldap/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/activemodel-serializers-xml/activemodel-serializers-xml-1.0.2-r2.ebuild b/dev-ruby/activemodel-serializers-xml/activemodel-serializers-xml-1.0.2-r2.ebuild
new file mode 100644
index 000000000000..2566da0ff7b5
--- /dev/null
+++ b/dev-ruby/activemodel-serializers-xml/activemodel-serializers-xml-1.0.2-r2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="XML serialization for your Active Model objects and Active Record models"
+HOMEPAGE="https://github.com/rails/activemodel-serializers-xml"
+SRC_URI="https://github.com/rails/${PN}/archive/v${PV}.tar.gz -> ${P}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/activesupport-5:*
+ >=dev-ruby/activemodel-5:*
+ =dev-ruby/builder-3*:* >=dev-ruby/builder-3.1:*
+"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/activerecord-5:*
+ dev-ruby/sqlite3
+)"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '/datetime.*created_at/ s:^:#:' test/helper.rb || die
+
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/activemodel-serializers-xml/activemodel-serializers-xml-1.0.2.ebuild b/dev-ruby/activemodel-serializers-xml/activemodel-serializers-xml-1.0.2.ebuild
deleted file mode 100644
index b86b4eaa3806..000000000000
--- a/dev-ruby/activemodel-serializers-xml/activemodel-serializers-xml-1.0.2.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="XML serialization for your Active Model objects and Active Record models"
-HOMEPAGE="https://github.com/rails/activemodel-serializers-xml"
-SRC_URI="https://github.com/rails/${PN}/archive/v${PV}.tar.gz -> ${P}.tgz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- =dev-ruby/activesupport-5*:*
- =dev-ruby/activemodel-5*:*
- =dev-ruby/builder-3*:* >=dev-ruby/builder-3.1:*
-"
-
-ruby_add_bdepend "test? (
- =dev-ruby/activerecord-5*:*
- dev-ruby/sqlite3
-)"
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/activemodel-serializers-xml/metadata.xml b/dev-ruby/activemodel-serializers-xml/metadata.xml
index c885b47fa345..4c8642da4ade 100644
--- a/dev-ruby/activemodel-serializers-xml/metadata.xml
+++ b/dev-ruby/activemodel-serializers-xml/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/activemodel/Manifest b/dev-ruby/activemodel/Manifest
index e3b53c8c8150..5a38fea999e2 100644
--- a/dev-ruby/activemodel/Manifest
+++ b/dev-ruby/activemodel/Manifest
@@ -1,4 +1,6 @@
-DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
-DIST rails-5.1.7.tgz 6146668 BLAKE2B 494a12d79037010333c06d14573474f0d0c1e62ce5252e8fbe4eb4c6935dc660614c2ff29fd168bbc66d74bfa64b92abb84d02645cb3b2950db5c166111b7b19 SHA512 6595eb19f174c9e46a937d6028d9bb2bfdcda06f35ec2a0499bc5deff05d8cfc8f8fc725e664496d3b431c8724141a1410201b57945b98ca211aea15c990d621
-DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
-DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
+DIST rails-6.1.7.6.tgz 11040086 BLAKE2B 8b5311752952403cf8eae31b5d8e8d376c4b449f512e86df66b3e921375ffa3ea11e15f1d74a7f8ec9179ff70c32a6d4f8de75be5f92fe6315ee97164e22d2d0 SHA512 c4163565b2324ce97317d252f3d9e2e673a12b6ae7f54571645c958ce30221f1b357887ade80e46abdd47a422736b9946e49850d52ffd72d8acc87f35224e69f
+DIST rails-6.1.7.7.tgz 11041447 BLAKE2B 3f59325aa86d3b7d6e0773b9eb2b895a26b644109be8df0b0d9abbab8e6c77f76d316c717ecce4e2d79d3247559504a7452a8037d2d52a6cf95fbacd7f8b8612 SHA512 f9af4eebb3bffec78832f92be6158c71c147e265b54e8e368a06c762bfd1a7992256b3e9286aeb59eee69ba56be28d381a715eb13f99b9babfd9b7ce8051e210
+DIST rails-7.0.8.1.tgz 11089378 BLAKE2B 5d92087402d8aa2b86759ec92c44091a7a0f8a22959e0510f10417f88e54f9e1e6a14c4e9519033cd63bdd1f54f72b91bff8a3318a3264c39311317fb67e8b63 SHA512 74f467f7d3e5ec88560448e206a8f0cdf55bad60dd9eac019224fce86a766ee9d0c4afbd4eaae30dacfe34beebcff6aa9d3c5c99be9c8ad5c385817fe409afc8
+DIST rails-7.0.8.tgz 11073254 BLAKE2B 2aee047a365acb0890ef3afbccfe323fedccf7b54214aa1c2f92b7a7aaa64c275c1e03f8f97e6a2e30281224ba30703d18b40aeee9b4e7fb6f035a4a7716a054 SHA512 0e9feb5bd0360868c3109152d8ea414b65d36d33a5dbb96b199cfa6c4335800d6c392e0fbcbfa453a02fd75924a297a65caf04948895de53db43700478dbeb11
+DIST rails-7.1.3.2.tgz 10914950 BLAKE2B 419e6817958efcc5dbbb47d24498decff48fca9748c9f4069bcd353a4644fa623caf79c4072db0944139ac991d14623013683f69cef3126fa63348cc0612655b SHA512 0a58e7b125eb97f94a8a75bacd421d7197e6ad78d24651aecfe82e41c024ccfa42a9de0664099f55cd6ac6a41fd7f09cdc3177ed2b809b0be7d7df1639424f9d
+DIST rails-7.1.3.tgz 10900323 BLAKE2B a83ca4ee656e93241fa0460d8df197904a4eef310cf25bce6db6167bad87c8d0644533fa6e224ec959a4e10005164e0f981e14e8b23cee14e2747117be9da712 SHA512 df1128d1403ab82d218d2057c7c86e646594f97a8c6fcf5648a66440d52e5c20a4ceb0c13e70b6153152b44f62d8a1e20f3776acff5c55bc54d006cb7da32d12
diff --git a/dev-ruby/activemodel/activemodel-4.2.11.1.ebuild b/dev-ruby/activemodel/activemodel-4.2.11.1.ebuild
deleted file mode 100644
index 8afaa127c304..000000000000
--- a/dev-ruby/activemodel/activemodel-4.2.11.1.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Toolkit for building modeling frameworks like Active Record and Active Resource"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}:*
- >=dev-ruby/builder-3.1:* =dev-ruby/builder-3*:*
-"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/bundler
- >=dev-ruby/railties-4.2.0
- dev-ruby/test-unit:2
- >=dev-ruby/mocha-0.14.0:0.14
- >=dev-ruby/bcrypt-ruby-3.1.7
- )"
-
-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\|uglifier\|minitest\|mime-types\|sprockets\|stackprof\)/ s:^:#:" \
- -e '/rake/ s/12.3/12.4/ ; /dalli/ s/2.7.7/2.7.10/' \
- -e '/:job/,/end/ s:^:#:' \
- -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
- rm ../Gemfile.lock || die
-
- # Avoid test crashing newer versions of minitest
- rm -f test/cases/railtie_test.rb || die
-}
diff --git a/dev-ruby/activemodel/activemodel-5.1.7.ebuild b/dev-ruby/activemodel/activemodel-5.1.7.ebuild
deleted file mode 100644
index 0b0b685e4ad1..000000000000
--- a/dev-ruby/activemodel/activemodel-5.1.7.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Toolkit for building modeling frameworks like Active Record and Active Resource"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}:*
-"
-
-ruby_add_bdepend "
- test? (
- ~dev-ruby/railties-${PV}
- dev-ruby/test-unit:2
- >=dev-ruby/mocha-0.14.0:0.14
- >=dev-ruby/bcrypt-ruby-3.1.7
- )"
-
-all_ruby_prepare() {
- # Set test environment to our hand.
- sed -i -e '/load_paths/d ; 1igem "activesupport", "~>5.1.6" ; gem "railties", "~>5.1.6"' test/cases/helper.rb || die "Unable to remove load paths"
-}
diff --git a/dev-ruby/activemodel/activemodel-5.2.3.ebuild b/dev-ruby/activemodel/activemodel-5.2.3.ebuild
deleted file mode 100644
index e243f865b65b..000000000000
--- a/dev-ruby/activemodel/activemodel-5.2.3.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Toolkit for building modeling frameworks like Active Record and Active Resource"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}:*
-"
-
-ruby_add_bdepend "
- test? (
- ~dev-ruby/railties-${PV}
- dev-ruby/test-unit:2
- dev-ruby/mocha
- >=dev-ruby/bcrypt-ruby-3.1.7
- )"
-
-all_ruby_prepare() {
- # Set test environment to our hand.
- sed -i -e '/load_paths/d' test/cases/helper.rb || die "Unable to remove load paths"
-}
diff --git a/dev-ruby/activemodel/activemodel-6.0.0.ebuild b/dev-ruby/activemodel/activemodel-6.0.0.ebuild
deleted file mode 100644
index 3c147647fc66..000000000000
--- a/dev-ruby/activemodel/activemodel-6.0.0.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Toolkit for building modeling frameworks like Active Record and Active Resource"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm64"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}:*
-"
-
-ruby_add_bdepend "
- test? (
- ~dev-ruby/railties-${PV}
- dev-ruby/test-unit:2
- dev-ruby/mocha
- >=dev-ruby/bcrypt-ruby-3.1.7
- )"
-
-all_ruby_prepare() {
- # Set test environment to our hand.
- sed -i -e '/load_paths/d' test/cases/helper.rb || die "Unable to remove load paths"
-}
diff --git a/dev-ruby/activemodel/activemodel-6.1.7.6.ebuild b/dev-ruby/activemodel/activemodel-6.1.7.6.ebuild
new file mode 100644
index 000000000000..a4754777e475
--- /dev/null
+++ b/dev-ruby/activemodel/activemodel-6.1.7.6.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Toolkit for building modeling frameworks like Active Record and Active Resource"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.1.7.4-ruby32-keywords.patch
+)
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}:*
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/railties-${PV}
+ dev-ruby/test-unit:2
+ dev-ruby/mocha
+ >=dev-ruby/bcrypt-ruby-3.1.7
+ <dev-ruby/minitest-5.16:*
+ )"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ sed -e '/load_paths/d' \
+ -e '2igem "activesupport", "~> 6.1.0"; gem "railties", "~> 6.1.0"' \
+ -i test/cases/helper.rb || die "Unable to remove load paths"
+}
diff --git a/dev-ruby/activemodel/activemodel-6.1.7.7.ebuild b/dev-ruby/activemodel/activemodel-6.1.7.7.ebuild
new file mode 100644
index 000000000000..542013b527f4
--- /dev/null
+++ b/dev-ruby/activemodel/activemodel-6.1.7.7.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Toolkit for building modeling frameworks like Active Record and Active Resource"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.1.7.4-ruby32-keywords.patch
+)
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}:*
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/railties-${PV}
+ dev-ruby/test-unit:2
+ dev-ruby/mocha
+ >=dev-ruby/bcrypt-ruby-3.1.7
+ <dev-ruby/minitest-5.16:*
+ )"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ sed -e '/load_paths/d' \
+ -e '2igem "activesupport", "~> 6.1.0"; gem "railties", "~> 6.1.0"' \
+ -i test/cases/helper.rb || die "Unable to remove load paths"
+}
diff --git a/dev-ruby/activemodel/activemodel-7.0.8.1.ebuild b/dev-ruby/activemodel/activemodel-7.0.8.1.ebuild
new file mode 100644
index 000000000000..7e7a70d84a6e
--- /dev/null
+++ b/dev-ruby/activemodel/activemodel-7.0.8.1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Toolkit for building modeling frameworks like Active Record and Active Resource"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}:*
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/railties-${PV}
+ dev-ruby/test-unit:2
+ dev-ruby/mocha
+ >=dev-ruby/bcrypt-ruby-3.1.7
+ <dev-ruby/minitest-5.16:*
+ )"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ sed -e '/load_paths/d' \
+ -e '2igem "activesupport", "~> 7.0.0"; gem "railties", "~> 7.0.0"' \
+ -i test/cases/helper.rb || die "Unable to remove load paths"
+}
diff --git a/dev-ruby/activemodel/activemodel-7.0.8.ebuild b/dev-ruby/activemodel/activemodel-7.0.8.ebuild
new file mode 100644
index 000000000000..d3612584c4c0
--- /dev/null
+++ b/dev-ruby/activemodel/activemodel-7.0.8.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Toolkit for building modeling frameworks like Active Record and Active Resource"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}:*
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/railties-${PV}
+ dev-ruby/test-unit:2
+ dev-ruby/mocha
+ >=dev-ruby/bcrypt-ruby-3.1.7
+ <dev-ruby/minitest-5.16:*
+ )"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ sed -i -e '/load_paths/d' test/cases/helper.rb || die "Unable to remove load paths"
+}
diff --git a/dev-ruby/activemodel/activemodel-7.1.3.2.ebuild b/dev-ruby/activemodel/activemodel-7.1.3.2.ebuild
new file mode 100644
index 000000000000..4ac6a5e51b1f
--- /dev/null
+++ b/dev-ruby/activemodel/activemodel-7.1.3.2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Toolkit for building modeling frameworks like Active Record and Active Resource"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}:*
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/railties-${PV}
+ dev-ruby/test-unit:2
+ dev-ruby/mocha
+ >=dev-ruby/bcrypt-ruby-3.1.7
+ dev-ruby/minitest:5
+ )"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ sed -i -e '/load_paths/d' test/cases/helper.rb || die "Unable to remove load paths"
+}
diff --git a/dev-ruby/activemodel/activemodel-7.1.3.ebuild b/dev-ruby/activemodel/activemodel-7.1.3.ebuild
new file mode 100644
index 000000000000..3c5cad15c9e4
--- /dev/null
+++ b/dev-ruby/activemodel/activemodel-7.1.3.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="activemodel.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Toolkit for building modeling frameworks like Active Record and Active Resource"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}:*
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/railties-${PV}
+ dev-ruby/test-unit:2
+ dev-ruby/mocha
+ >=dev-ruby/bcrypt-ruby-3.1.7
+ dev-ruby/minitest:5
+ )"
+
+all_ruby_prepare() {
+ # Set test environment to our hand.
+ sed -i -e '/load_paths/d' test/cases/helper.rb || die "Unable to remove load paths"
+}
diff --git a/dev-ruby/activemodel/files/activemodel-6.1.7.4-ruby32-keywords.patch b/dev-ruby/activemodel/files/activemodel-6.1.7.4-ruby32-keywords.patch
new file mode 100644
index 000000000000..a44820c51a1f
--- /dev/null
+++ b/dev-ruby/activemodel/files/activemodel-6.1.7.4-ruby32-keywords.patch
@@ -0,0 +1,27 @@
+From 67bdba4e63cad218c02dbb3171ddd53353cc0b48 Mon Sep 17 00:00:00 2001
+From: Javier Jimenez <javiyu7@gmail.com>
+Date: Thu, 5 Jan 2023 21:34:37 +0100
+Subject: [PATCH] Backports ruby 3.2 compatibility fixes for rails 6.1
+
+---
+ actionmailer/lib/action_mailer/base.rb | 2 +-
+ actionmailer/lib/action_mailer/rescuable.rb | 12 ++++++++----
+ actionpack/lib/abstract_controller/base.rb | 10 +++++++---
+ actionpack/lib/abstract_controller/callbacks.rb | 6 +++++-
+ actionview/lib/action_view/rendering.rb | 6 +++++-
+ activemodel/lib/active_model/attribute_methods.rb | 2 +-
+ activerecord/lib/active_record/relation.rb | 8 ++++++--
+ 7 files changed, 33 insertions(+), 13 deletions(-)
+
+diff --git a/activemodel/lib/active_model/attribute_methods.rb b/activemodel/lib/active_model/attribute_methods.rb
+index 365b338d17af3..0c401f7aeb4d9 100644
+--- a/lib/active_model/attribute_methods.rb
++++ b/lib/active_model/attribute_methods.rb
+@@ -478,6 +478,7 @@ def method_missing(method, *args, &block)
+ def attribute_missing(match, *args, &block)
+ __send__(match.target, match.attr_name, *args, &block)
+ end
++ ruby2_keywords(:attribute_missing) if respond_to?(:ruby2_keywords, true)
+
+ # A +Person+ instance with a +name+ attribute can ask
+ # <tt>person.respond_to?(:name)</tt>, <tt>person.respond_to?(:name=)</tt>,
diff --git a/dev-ruby/activemodel/metadata.xml b/dev-ruby/activemodel/metadata.xml
index 42d41e33d990..fbd27c03d85b 100644
--- a/dev-ruby/activemodel/metadata.xml
+++ b/dev-ruby/activemodel/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/activerecord/Manifest b/dev-ruby/activerecord/Manifest
index e3b53c8c8150..5a38fea999e2 100644
--- a/dev-ruby/activerecord/Manifest
+++ b/dev-ruby/activerecord/Manifest
@@ -1,4 +1,6 @@
-DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
-DIST rails-5.1.7.tgz 6146668 BLAKE2B 494a12d79037010333c06d14573474f0d0c1e62ce5252e8fbe4eb4c6935dc660614c2ff29fd168bbc66d74bfa64b92abb84d02645cb3b2950db5c166111b7b19 SHA512 6595eb19f174c9e46a937d6028d9bb2bfdcda06f35ec2a0499bc5deff05d8cfc8f8fc725e664496d3b431c8724141a1410201b57945b98ca211aea15c990d621
-DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
-DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
+DIST rails-6.1.7.6.tgz 11040086 BLAKE2B 8b5311752952403cf8eae31b5d8e8d376c4b449f512e86df66b3e921375ffa3ea11e15f1d74a7f8ec9179ff70c32a6d4f8de75be5f92fe6315ee97164e22d2d0 SHA512 c4163565b2324ce97317d252f3d9e2e673a12b6ae7f54571645c958ce30221f1b357887ade80e46abdd47a422736b9946e49850d52ffd72d8acc87f35224e69f
+DIST rails-6.1.7.7.tgz 11041447 BLAKE2B 3f59325aa86d3b7d6e0773b9eb2b895a26b644109be8df0b0d9abbab8e6c77f76d316c717ecce4e2d79d3247559504a7452a8037d2d52a6cf95fbacd7f8b8612 SHA512 f9af4eebb3bffec78832f92be6158c71c147e265b54e8e368a06c762bfd1a7992256b3e9286aeb59eee69ba56be28d381a715eb13f99b9babfd9b7ce8051e210
+DIST rails-7.0.8.1.tgz 11089378 BLAKE2B 5d92087402d8aa2b86759ec92c44091a7a0f8a22959e0510f10417f88e54f9e1e6a14c4e9519033cd63bdd1f54f72b91bff8a3318a3264c39311317fb67e8b63 SHA512 74f467f7d3e5ec88560448e206a8f0cdf55bad60dd9eac019224fce86a766ee9d0c4afbd4eaae30dacfe34beebcff6aa9d3c5c99be9c8ad5c385817fe409afc8
+DIST rails-7.0.8.tgz 11073254 BLAKE2B 2aee047a365acb0890ef3afbccfe323fedccf7b54214aa1c2f92b7a7aaa64c275c1e03f8f97e6a2e30281224ba30703d18b40aeee9b4e7fb6f035a4a7716a054 SHA512 0e9feb5bd0360868c3109152d8ea414b65d36d33a5dbb96b199cfa6c4335800d6c392e0fbcbfa453a02fd75924a297a65caf04948895de53db43700478dbeb11
+DIST rails-7.1.3.2.tgz 10914950 BLAKE2B 419e6817958efcc5dbbb47d24498decff48fca9748c9f4069bcd353a4644fa623caf79c4072db0944139ac991d14623013683f69cef3126fa63348cc0612655b SHA512 0a58e7b125eb97f94a8a75bacd421d7197e6ad78d24651aecfe82e41c024ccfa42a9de0664099f55cd6ac6a41fd7f09cdc3177ed2b809b0be7d7df1639424f9d
+DIST rails-7.1.3.tgz 10900323 BLAKE2B a83ca4ee656e93241fa0460d8df197904a4eef310cf25bce6db6167bad87c8d0644533fa6e224ec959a4e10005164e0f981e14e8b23cee14e2747117be9da712 SHA512 df1128d1403ab82d218d2057c7c86e646594f97a8c6fcf5648a66440d52e5c20a4ceb0c13e70b6153152b44f62d8a1e20f3776acff5c55bc54d006cb7da32d12
diff --git a/dev-ruby/activerecord/activerecord-4.2.11.1.ebuild b/dev-ruby/activerecord/activerecord-4.2.11.1.ebuild
deleted file mode 100644
index d5f0d2ccea03..000000000000
--- a/dev-ruby/activerecord/activerecord-4.2.11.1.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24"
-
-# this is not null so that the dependencies will actually be filled
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="activerecord.gemspec"
-
-inherit ruby-fakegem versionator
-
-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="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~x86 ~amd64-linux"
-IUSE="mysql postgres sqlite"
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "~dev-ruby/activesupport-${PV}
- ~dev-ruby/activemodel-${PV}
- >=dev-ruby/arel-6.0:6.0
- sqlite? ( >=dev-ruby/sqlite3-1.3.6 )
- mysql? ( || ( dev-ruby/mysql2:0.4 ) )
- postgres? ( >=dev-ruby/pg-0.15.0 )"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/bundler
- ~dev-ruby/actionpack-${PV}
- ~dev-ruby/actionmailer-${PV}
- >=dev-ruby/sqlite3-1.3.5
- dev-ruby/mocha:0.14
- 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 -i -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\|mime-types\|sprockets\|stackprof\)/ s:^:#:" \
- -e '/rake/ s/12.3/12.4/ ; /dalli/ s/2.7.7/2.7.10/' \
- -e '/:job/,/end/ s:^:#:' \
- -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
- sed -i -e '/rack-ssl/d' -e 's/~> 3.4/>= 3.4/' ../railties/railties.gemspec || die
- sed -i -e '/bcrypt/ s/3.0.0/3.0/' ../Gemfile || 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 test depending on mysql adapter which we don't support for
- # this Rails version to simplify our dependencies.
- rm test/cases/connection_specification/resolver_test.rb || die
-
- # Avoid single test using mysql dependencies.
- rm test/cases/invalid_connection_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-5.1.7.ebuild b/dev-ruby/activerecord/activerecord-5.1.7.ebuild
deleted file mode 100644
index 46c181edcd5f..000000000000
--- a/dev-ruby/activerecord/activerecord-5.1.7.ebuild
+++ /dev/null
@@ -1,77 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24"
-
-# this is not null so that the dependencies will actually be filled
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="activerecord.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem versionator
-
-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="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE="mysql postgres sqlite"
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "~dev-ruby/activesupport-${PV}
- ~dev-ruby/activemodel-${PV}
- dev-ruby/arel:8.0
- sqlite? ( >=dev-ruby/sqlite3-1.3.6 )
- mysql? ( || ( dev-ruby/mysql2:0.5 dev-ruby/mysql2:0.4 ) )
- postgres? ( >=dev-ruby/pg-0.18.0 )"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/bundler
- ~dev-ruby/actionpack-${PV}
- ~dev-ruby/actionmailer-${PV}
- >=dev-ruby/sqlite3-1.3.6
- dev-ruby/mocha:0.14
- 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 -i -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:^:#:' ../Gemfile || die
- sed -i -e '/rack-ssl/d' -e 's/~> 3.4/>= 3.4/' ../railties/railties.gemspec || die
- sed -i -e '/bcrypt/ s/3.0.0/3.0/' ../Gemfile || die
-
- sed -i -e '1agem "activemodel", "~>5.1.0" ; gem "railties", "~>5.1.0" ; gem "arel", "~>8.0"' test/cases/helper.rb || die
-
- # Avoid test depending on mysql adapter which we don't support for
- # this Rails version to simplify our dependencies.
- rm test/cases/connection_specification/resolver_test.rb || die
-
- # Avoid single test using mysql dependencies.
- rm test/cases/invalid_connection_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
-}
-
-each_ruby_test() {
- if use sqlite; then
- ${RUBY} -S rake test_sqlite3 || die "sqlite3 tests failed"
- fi
-}
diff --git a/dev-ruby/activerecord/activerecord-5.2.3.ebuild b/dev-ruby/activerecord/activerecord-5.2.3.ebuild
deleted file mode 100644
index 033190770d83..000000000000
--- a/dev-ruby/activerecord/activerecord-5.2.3.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# this is not null so that the dependencies will actually be filled
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="activerecord.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem eapi7-ver
-
-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 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE="mysql postgres sqlite"
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "~dev-ruby/activesupport-${PV}
- ~dev-ruby/activemodel-${PV}
- dev-ruby/arel:9.0
- sqlite? ( >=dev-ruby/sqlite3-1.3.6 )
- mysql? ( || ( dev-ruby/mysql2:0.5 dev-ruby/mysql2:0.4 ) )
- postgres? ( >=dev-ruby/pg-0.18.0:* )"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/bundler
- ~dev-ruby/actionpack-${PV}
- ~dev-ruby/actionmailer-${PV}
- >=dev-ruby/sqlite3-1.3.6
- 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 -i -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:^:#:' ../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
-
- # Add back json in the Gemfile because we dropped some dependencies
- # earlier that implicitly required it.
- sed -i -e '$agem "json"' ../Gemfile || die
-
- # Avoid test depending on mysql adapter which we don't support for
- # this Rails version to simplify our dependencies.
- rm test/cases/connection_specification/resolver_test.rb || die
-
- # Avoid single test using mysql dependencies.
- rm test/cases/invalid_connection_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
-}
-
-each_ruby_test() {
- if use sqlite; then
- ${RUBY} -S rake test_sqlite3 || die "sqlite3 tests failed"
- fi
-}
diff --git a/dev-ruby/activerecord/activerecord-6.0.0.ebuild b/dev-ruby/activerecord/activerecord-6.0.0.ebuild
deleted file mode 100644
index 541ae5e776da..000000000000
--- a/dev-ruby/activerecord/activerecord-6.0.0.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby25 ruby26"
-
-# 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 ~arm64"
-IUSE="mysql postgres sqlite"
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "~dev-ruby/activesupport-${PV}
- ~dev-ruby/activemodel-${PV}
- dev-ruby/arel:9.0
- sqlite? ( >=dev-ruby/sqlite3-1.4 )
- mysql? ( || ( dev-ruby/mysql2:0.5 >=dev-ruby/mysql2-0.4.4:0.4 ) )
- postgres? ( || ( dev-ruby/pg:1 >=dev-ruby/pg-0.18.0:0 ) )"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/bundler
- ~dev-ruby/actionpack-${PV}
- >=dev-ruby/sqlite3-1.3.6
- 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 -i -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:^:#:' ../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
-
- # Add back json in the Gemfile because we dropped some dependencies
- # earlier that implicitly required it.
- sed -i -e '$agem "json"' ../Gemfile || die
-
- # Avoid test depending on mysql adapter which we don't support for
- # this Rails version to simplify our dependencies.
- rm test/cases/connection_specification/resolver_test.rb || die
-
- # Avoid single tests using mysql or postgres dependencies.
- rm test/cases/invalid_connection_test.rb || die
- sed -e '/test_switching_connections_with_database_url/askip "postgres"' \
- -i test/cases/connection_adapters/connection_handlers_multi_db_test.rb || die
-
- # Avoid failing test that makes bad assumptions on database state.
- sed -i -e '/test_do_not_call_callbacks_for_delete_all/,/^ end/ s:^:#:' \
- test/cases/associations/has_many_associations_test.rb
-
- # Avoid test failing to bind limit length in favor of security release
- sed -i -e '/test_too_many_binds/askip "Fails on Gentoo"' test/cases/bind_parameter_test.rb || die
-}
-
-each_ruby_test() {
- if use sqlite; then
- ${RUBY} -S rake test_sqlite3 || die "sqlite3 tests failed"
- fi
-}
diff --git a/dev-ruby/activerecord/activerecord-6.1.7.6.ebuild b/dev-ruby/activerecord/activerecord-6.1.7.6.ebuild
new file mode 100644
index 000000000000..58ca572f4546
--- /dev/null
+++ b/dev-ruby/activerecord/activerecord-6.1.7.6.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+# 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 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="mysql postgres sqlite"
+
+RUBY_S="rails-${PV}/${PN}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.1.7.4-ruby32-keywords.patch
+)
+
+ruby_add_rdepend "~dev-ruby/activesupport-${PV}
+ ~dev-ruby/activemodel-${PV}
+ sqlite? ( >=dev-ruby/sqlite3-1.4 )
+ mysql? ( dev-ruby/mysql2:0.5 )
+ postgres? ( >=dev-ruby/pg-1.1:1 )"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/sqlite3-1.4.0
+ dev-ruby/mocha
+ <dev-ruby/minitest-5.16:*
+ )"
+
+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 -i -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:^:#:' ../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
+
+ # Load correct rails version
+ sed -i -e '2igem "activemodel", "~> 6.1.0"; gem "activejob", "~> 6.1.0"; gem "railties", "~> 6.1.0"; gem "minitest", "<5.16"' test/cases/helper.rb || die
+
+ # Avoid single tests using mysql or postgres dependencies.
+ rm test/cases/invalid_connection_test.rb || die
+ sed -e '/test_switching_connections_with_database_url/askip "postgres"' \
+ -i test/cases/connection_adapters/{,legacy_}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 tests that no longer work with newer sqlite versions
+ rm -f test/cases/adapters/sqlite3/explain_test.rb || die
+ sed -i -e '/test_references_stays_as_integer_column/askip "Fails on case difference"' test/cases/migration/compatibility_test.rb || die
+
+ # 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 failing related to rubygems
+ sed -i -e '/test_generates_absolute_path_with_given_root/askip "rubygems actiovation monitor"' test/cases/tasks/sqlite_rake_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-6.1.7.7.ebuild b/dev-ruby/activerecord/activerecord-6.1.7.7.ebuild
new file mode 100644
index 000000000000..f6fed32081fc
--- /dev/null
+++ b/dev-ruby/activerecord/activerecord-6.1.7.7.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+# 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 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="mysql postgres sqlite"
+
+RUBY_S="rails-${PV}/${PN}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.1.7.4-ruby32-keywords.patch
+)
+
+ruby_add_rdepend "~dev-ruby/activesupport-${PV}
+ ~dev-ruby/activemodel-${PV}
+ sqlite? ( >=dev-ruby/sqlite3-1.4 )
+ mysql? ( dev-ruby/mysql2:0.5 )
+ postgres? ( >=dev-ruby/pg-1.1:1 )"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/sqlite3-1.4.0
+ dev-ruby/mocha
+ <dev-ruby/minitest-5.16:*
+ )"
+
+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 -i -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:^:#:' ../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
+
+ # Load correct rails version
+ sed -e '2igem "activemodel", "~> 6.1.0"; gem "activejob", "~> 6.1.0"; gem "railties", "~> 6.1.0"; gem "minitest", "<5.16"' \
+ -i test/cases/helper.rb || die
+
+ # Avoid single tests using mysql or postgres dependencies.
+ rm test/cases/invalid_connection_test.rb || die
+ sed -e '/test_switching_connections_with_database_url/askip "postgres"' \
+ -i test/cases/connection_adapters/{,legacy_}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 tests that no longer work with newer sqlite versions
+ rm -f test/cases/adapters/sqlite3/explain_test.rb || die
+ sed -e '/test_references_stays_as_integer_column/askip "Fails on case difference"' \
+ -i test/cases/migration/compatibility_test.rb || die
+
+ # Avoid test failing to bind limit length in favor of security release
+ sed -e '/test_too_many_binds/askip "Fails on Gentoo"' \
+ -i test/cases/bind_parameter_test.rb || die
+
+ # Avoid test failing related to rubygems
+ sed -e '/test_generates_absolute_path_with_given_root/askip "rubygems activation monitor"' \
+ -i test/cases/tasks/sqlite_rake_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-7.0.8.1.ebuild b/dev-ruby/activerecord/activerecord-7.0.8.1.ebuild
new file mode 100644
index 000000000000..a54e5f49a275
--- /dev/null
+++ b/dev-ruby/activerecord/activerecord-7.0.8.1.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+# 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 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="mysql postgres sqlite test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "~dev-ruby/activesupport-${PV}
+ ~dev-ruby/activemodel-${PV}
+ sqlite? ( >=dev-ruby/sqlite3-1.4 )
+ 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/railties-${PV}
+ >=dev-ruby/sqlite3-1.4.0
+ dev-ruby/mocha
+ <dev-ruby/minitest-5.16:*
+ )"
+
+DEPEND+=" test? ( >=dev-db/sqlite-3.12.1 )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ rm ../Gemfile.lock || die
+ sed -e "/\(uglifier\|system_timer\|sdoc\|w3c_validators\|pg\|jquery-rails\|execjs\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|minitest\|sprockets\|stackprof\)/ s:^:#:" \
+ -e '/:job/,/end/ s:^:#:' \
+ -e '/group :doc/,/^end/ s:^:#:' \
+ -i ../Gemfile || die
+ sed -i -e '/rack-ssl/d' -e 's/~> 3.4/>= 3.4/' ../railties/railties.gemspec || die
+ sed -e '/bcrypt/ s/3.0.0/3.0/' \
+ -i ../Gemfile || die
+ sed -i -e '/byebug/ s:^:#:' test/cases/base_prevent_writes_test.rb || die
+
+ # Add back json in the Gemfile because we dropped some dependencies
+ # earlier that implicitly required it.
+ sed -i -e '$agem "json"' ../Gemfile || die
+
+ sed -e '3igem "rack", "<3"; gem "minitest", "<5.16"; gem "activejob", "~> 7.0.0"; gem "activemodel", "~> 7.0.0"; gem "railties", "~> 7.0.0"' \
+ -i test/cases/helper.rb || die
+
+ # Avoid single tests using mysql or postgres dependencies.
+ rm test/cases/invalid_connection_test.rb || die
+ sed -e '/test_switching_connections_with_database_url/askip "postgres"' \
+ -i test/cases/connection_adapters/{,legacy_}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 failing related to rubygems
+ sed -e '/test_generates_absolute_path_with_given_root/askip "rubygems actiovation monitor"' \
+ -i test/cases/tasks/sqlite_rake_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 sqlite 3.43
+ sed -e '/test_should_return_float_average_if_db_returns_such/askip "Fails with sqlite 3.43"' \
+ -i test/cases/calculations_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-7.0.8.ebuild b/dev-ruby/activerecord/activerecord-7.0.8.ebuild
new file mode 100644
index 000000000000..028e6a1589c3
--- /dev/null
+++ b/dev-ruby/activerecord/activerecord-7.0.8.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+# 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 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="mysql postgres sqlite"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "~dev-ruby/activesupport-${PV}
+ ~dev-ruby/activemodel-${PV}
+ sqlite? ( >=dev-ruby/sqlite3-1.4 )
+ 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/railties-${PV}
+ >=dev-ruby/sqlite3-1.4.0
+ dev-ruby/mocha
+ <dev-ruby/minitest-5.16:*
+ )"
+
+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 -i -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:^:#:' ../Gemfile || die
+ sed -i -e '/rack-ssl/d' -e 's/~> 3.4/>= 3.4/' ../railties/railties.gemspec || die
+ sed -e '/bcrypt/ s/3.0.0/3.0/' \
+ -i ../Gemfile || die
+ sed -i -e '/byebug/ s:^:#:' test/cases/base_prevent_writes_test.rb || die
+
+ # Add back json in the Gemfile because we dropped some dependencies
+ # earlier that implicitly required it.
+ sed -i -e '$agem "json"' ../Gemfile || die
+
+ sed -i -e '3igem "rack", "<3"; gem "minitest", "<5.16"' test/cases/helper.rb || die
+
+ # Avoid single tests using mysql or postgres dependencies.
+ rm test/cases/invalid_connection_test.rb || die
+ sed -e '/test_switching_connections_with_database_url/askip "postgres"' \
+ -i test/cases/connection_adapters/{,legacy_}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 failing related to rubygems
+ sed -e '/test_generates_absolute_path_with_given_root/askip "rubygems actiovation monitor"' \
+ -i test/cases/tasks/sqlite_rake_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 sqlite 3.43
+ sed -e '/test_should_return_float_average_if_db_returns_such/askip "Fails with sqlite 3.43"' \
+ -i test/cases/calculations_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-7.1.3.2.ebuild b/dev-ruby/activerecord/activerecord-7.1.3.2.ebuild
new file mode 100644
index 000000000000..1d0cd7c9927b
--- /dev/null
+++ b/dev-ruby/activerecord/activerecord-7.1.3.2.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# 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 ~hppa ~ppc ~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-1.4 )
+ mysql? ( dev-ruby/mysql2:0.5 )
+ postgres? ( >=dev-ruby/pg-1.1:1 )"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/benchmark-ips
+ dev-ruby/bundler
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activejob-${PV}
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/sqlite3-1.4.0
+ dev-ruby/mocha
+ dev-ruby/minitest:5
+ )"
+
+DEPEND+=" test? ( >=dev-db/sqlite-3.12.1 )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ rm ../Gemfile.lock || die
+ sed -i -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:^:#:' ../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 failing related to rubygems
+ #sed -e '/test_generates_absolute_path_with_given_root/askip "rubygems actiovation monitor"' \
+ # -i test/cases/tasks/sqlite_rake_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 sqlite 3.43
+ sed -e '/test_should_return_float_average_if_db_returns_such/askip "Fails with sqlite 3.43"' \
+ -i test/cases/calculations_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-7.1.3.ebuild b/dev-ruby/activerecord/activerecord-7.1.3.ebuild
new file mode 100644
index 000000000000..f64d86b79538
--- /dev/null
+++ b/dev-ruby/activerecord/activerecord-7.1.3.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+# 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 ~hppa ~ppc ~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-1.4 )
+ mysql? ( dev-ruby/mysql2:0.5 )
+ postgres? ( >=dev-ruby/pg-1.1:1 )"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/benchmark-ips
+ dev-ruby/bundler
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activejob-${PV}
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/sqlite3-1.4.0
+ dev-ruby/mocha
+ <dev-ruby/minitest-5.16:*
+ )"
+
+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 -i -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:^:#:' ../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 failing related to rubygems
+ #sed -e '/test_generates_absolute_path_with_given_root/askip "rubygems actiovation monitor"' \
+ # -i test/cases/tasks/sqlite_rake_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 sqlite 3.43
+ sed -e '/test_should_return_float_average_if_db_returns_such/askip "Fails with sqlite 3.43"' \
+ -i test/cases/calculations_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/files/activerecord-6.1.7.4-ruby32-keywords.patch b/dev-ruby/activerecord/files/activerecord-6.1.7.4-ruby32-keywords.patch
new file mode 100644
index 000000000000..4a82e18aaba1
--- /dev/null
+++ b/dev-ruby/activerecord/files/activerecord-6.1.7.4-ruby32-keywords.patch
@@ -0,0 +1,38 @@
+From 67bdba4e63cad218c02dbb3171ddd53353cc0b48 Mon Sep 17 00:00:00 2001
+From: Javier Jimenez <javiyu7@gmail.com>
+Date: Thu, 5 Jan 2023 21:34:37 +0100
+Subject: [PATCH] Backports ruby 3.2 compatibility fixes for rails 6.1
+
+---
+ actionmailer/lib/action_mailer/base.rb | 2 +-
+ actionmailer/lib/action_mailer/rescuable.rb | 12 ++++++++----
+ actionpack/lib/abstract_controller/base.rb | 10 +++++++---
+ actionpack/lib/abstract_controller/callbacks.rb | 6 +++++-
+ actionview/lib/action_view/rendering.rb | 6 +++++-
+ activemodel/lib/active_model/attribute_methods.rb | 2 +-
+ activerecord/lib/active_record/relation.rb | 8 ++++++--
+ 7 files changed, 33 insertions(+), 13 deletions(-)
+
+diff --git a/activerecord/lib/active_record/relation.rb b/activerecord/lib/active_record/relation.rb
+index 6ea5876eda1b8..9c0efb800efd0 100644
+--- a/lib/active_record/relation.rb
++++ b/lib/active_record/relation.rb
+@@ -406,12 +406,16 @@ def scoping
+ already_in_scope? ? yield : _scoping(self) { yield }
+ end
+
+- def _exec_scope(*args, &block) # :nodoc:
++ all_args = RUBY_VERSION < "2.7" ? "*args, &block" : "..."
++
++ class_eval <<-RUBY
++ def _exec_scope(#{all_args}) # :nodoc:
+ @delegate_to_klass = true
+- _scoping(nil) { instance_exec(*args, &block) || self }
++ _scoping(nil) { instance_exec(#{all_args}) || self }
+ ensure
+ @delegate_to_klass = false
+ end
++ RUBY
+
+ # Updates all records in the current relation with details given. This method constructs a single SQL UPDATE
+ # statement and sends it straight to the database. It does not instantiate the involved models and it does not
diff --git a/dev-ruby/activerecord/metadata.xml b/dev-ruby/activerecord/metadata.xml
index 42d41e33d990..fbd27c03d85b 100644
--- a/dev-ruby/activerecord/metadata.xml
+++ b/dev-ruby/activerecord/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/activestorage/Manifest b/dev-ruby/activestorage/Manifest
index 7fb278f0b019..5a38fea999e2 100644
--- a/dev-ruby/activestorage/Manifest
+++ b/dev-ruby/activestorage/Manifest
@@ -1 +1,6 @@
-DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
+DIST rails-6.1.7.6.tgz 11040086 BLAKE2B 8b5311752952403cf8eae31b5d8e8d376c4b449f512e86df66b3e921375ffa3ea11e15f1d74a7f8ec9179ff70c32a6d4f8de75be5f92fe6315ee97164e22d2d0 SHA512 c4163565b2324ce97317d252f3d9e2e673a12b6ae7f54571645c958ce30221f1b357887ade80e46abdd47a422736b9946e49850d52ffd72d8acc87f35224e69f
+DIST rails-6.1.7.7.tgz 11041447 BLAKE2B 3f59325aa86d3b7d6e0773b9eb2b895a26b644109be8df0b0d9abbab8e6c77f76d316c717ecce4e2d79d3247559504a7452a8037d2d52a6cf95fbacd7f8b8612 SHA512 f9af4eebb3bffec78832f92be6158c71c147e265b54e8e368a06c762bfd1a7992256b3e9286aeb59eee69ba56be28d381a715eb13f99b9babfd9b7ce8051e210
+DIST rails-7.0.8.1.tgz 11089378 BLAKE2B 5d92087402d8aa2b86759ec92c44091a7a0f8a22959e0510f10417f88e54f9e1e6a14c4e9519033cd63bdd1f54f72b91bff8a3318a3264c39311317fb67e8b63 SHA512 74f467f7d3e5ec88560448e206a8f0cdf55bad60dd9eac019224fce86a766ee9d0c4afbd4eaae30dacfe34beebcff6aa9d3c5c99be9c8ad5c385817fe409afc8
+DIST rails-7.0.8.tgz 11073254 BLAKE2B 2aee047a365acb0890ef3afbccfe323fedccf7b54214aa1c2f92b7a7aaa64c275c1e03f8f97e6a2e30281224ba30703d18b40aeee9b4e7fb6f035a4a7716a054 SHA512 0e9feb5bd0360868c3109152d8ea414b65d36d33a5dbb96b199cfa6c4335800d6c392e0fbcbfa453a02fd75924a297a65caf04948895de53db43700478dbeb11
+DIST rails-7.1.3.2.tgz 10914950 BLAKE2B 419e6817958efcc5dbbb47d24498decff48fca9748c9f4069bcd353a4644fa623caf79c4072db0944139ac991d14623013683f69cef3126fa63348cc0612655b SHA512 0a58e7b125eb97f94a8a75bacd421d7197e6ad78d24651aecfe82e41c024ccfa42a9de0664099f55cd6ac6a41fd7f09cdc3177ed2b809b0be7d7df1639424f9d
+DIST rails-7.1.3.tgz 10900323 BLAKE2B a83ca4ee656e93241fa0460d8df197904a4eef310cf25bce6db6167bad87c8d0644533fa6e224ec959a4e10005164e0f981e14e8b23cee14e2747117be9da712 SHA512 df1128d1403ab82d218d2057c7c86e646594f97a8c6fcf5648a66440d52e5c20a4ceb0c13e70b6153152b44f62d8a1e20f3776acff5c55bc54d006cb7da32d12
diff --git a/dev-ruby/activestorage/activestorage-5.2.3.ebuild b/dev-ruby/activestorage/activestorage-5.2.3.ebuild
deleted file mode 100644
index ec98b14e86e2..000000000000
--- a/dev-ruby/activestorage/activestorage-5.2.3.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_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 eapi7-ver
-
-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 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-DEPEND+=" test? ( app-text/mupdf ) "
-
-ruby_add_rdepend "
- ~dev-ruby/actionpack-${PV}:*
- ~dev-ruby/activerecord-${PV}:*
- >=dev-ruby/marcel-0.3.1 =dev-ruby/marcel-0.3*
-"
-
-ruby_add_bdepend "
- test? (
- ~dev-ruby/railties-${PV}
- dev-ruby/test-unit:2
- dev-ruby/mini_magick
- dev-ruby/mocha
- dev-ruby/rake
- dev-ruby/sqlite3
- )"
-
-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\|aws-sdk-s3\|google-cloud-storage\|azure-storage\|blade\|bootsnap\|hiredis\|qunit-selenium\|chromedriver-helper\|redis\|rb-inotify\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|sass-rails\|rubocop\|capybara\|rack-cache\|json\|dalli\|listen\|connection_pool\|puma\|mysql2\)/ s:^:#:" \
- -e '/dalli/ s/2.7.7/2.7.9/' \
- -e '/:job/,/end/ s:^:#:' \
- -e '/:test/,/^end/ s:^:#:' \
- -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die
- rm ../Gemfile.lock || die
-}
diff --git a/dev-ruby/activestorage/activestorage-6.1.7.6.ebuild b/dev-ruby/activestorage/activestorage-6.1.7.6.ebuild
new file mode 100644
index 000000000000..1b24cc39c24d
--- /dev/null
+++ b/dev-ruby/activestorage/activestorage-6.1.7.6.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+DEPEND+=" test? ( app-text/mupdf 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
+ >=dev-ruby/mini_mime-1.1.0
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/image_processing-1.2:0
+ dev-ruby/test-unit:2
+ =dev-ruby/minitest-5.15*:*
+ dev-ruby/mini_magick
+ dev-ruby/mocha
+ dev-ruby/rake
+ dev-ruby/sqlite3
+ )"
+
+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\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|aws-sdk-s3\|aws-sdk-sns\|google-cloud-storage\|azure-storage\|blade\|bootsnap\|hiredis\|qunit-selenium\|chromedriver-helper\|redis\|rb-inotify\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|sass-rails\|capybara\|rack-cache\|rack-test\|selenium\|dalli\|listen\|connection_pool\|puma\|mysql2\|webdrivers\|webpacker\|rexml\|webmock\)/ s:^:#:" \
+ -e '/dalli/ s/2.7.7/2.7.9/' \
+ -e '/group :\(doc\|job\|rubocop\|test\)/,/^end/ s:^:#:' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+}
diff --git a/dev-ruby/activestorage/activestorage-6.1.7.7.ebuild b/dev-ruby/activestorage/activestorage-6.1.7.7.ebuild
new file mode 100644
index 000000000000..4cbcfad6e847
--- /dev/null
+++ b/dev-ruby/activestorage/activestorage-6.1.7.7.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+DEPEND+=" test? ( app-text/mupdf 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
+ >=dev-ruby/mini_mime-1.1.0
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/image_processing-1.2:0
+ dev-ruby/test-unit:2
+ =dev-ruby/minitest-5.15*:*
+ dev-ruby/mini_magick
+ dev-ruby/mocha
+ dev-ruby/rake
+ dev-ruby/sqlite3
+ )"
+
+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\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|aws-sdk-s3\|aws-sdk-sns\|google-cloud-storage\|azure-storage\|blade\|bootsnap\|hiredis\|qunit-selenium\|chromedriver-helper\|redis\|rb-inotify\|sprockets\|stackprof\|websocket-client-simple\|libxml-ruby\|sass-rails\|capybara\|rack-cache\|rack-test\|selenium\|dalli\|listen\|connection_pool\|puma\|mysql2\|webdrivers\|webpacker\|rexml\|webmock\)/ s:^:#:" \
+ -e '/dalli/ s/2.7.7/2.7.9/' \
+ -e '/group :\(doc\|job\|rubocop\|test\)/,/^end/ s:^:#:' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || 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 test broken with ffmpeg 6
+ sed -i -e '/analyzing a rotated video/askip "Broken with ffmpeg 6.x"' test/analyzer/video_analyzer_test.rb || die
+
+}
diff --git a/dev-ruby/activestorage/activestorage-7.0.8.1.ebuild b/dev-ruby/activestorage/activestorage-7.0.8.1.ebuild
new file mode 100644
index 000000000000..be32815a41b1
--- /dev/null
+++ b/dev-ruby/activestorage/activestorage-7.0.8.1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+DEPEND+=" test? ( app-text/mupdf 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
+ >=dev-ruby/mini_mime-1.1.0
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/image_processing-1.2:0
+ =dev-ruby/minitest-5.15*:*
+ dev-ruby/mini_magick
+ dev-ruby/mocha
+ dev-ruby/rake
+ dev-ruby/sprockets-rails
+ dev-ruby/sqlite3
+ )"
+
+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\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|aws-sdk-s3\|aws-sdk-sns\|google-cloud-storage\|azure-storage\|blade\|bootsnap\|hiredis\|qunit-selenium\|chromedriver-helper\|redis\|rb-inotify\|stackprof\|websocket-client-simple\|libxml-ruby\|sass-rails\|capybara\|rack-cache\|selenium\|dalli\|listen\|connection_pool\|puma\|mysql2\|webdrivers\|webpacker\|rexml\|webmock\|webrick\|propshaft\|sprockets-export\|rack-test\|terser\|cookiejar\|cgi\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/group :\(doc\|job\|rubocop\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Use mini_magick since vips is not packaged on Gentoo
+ sed -i -e '/mini_magick/aActiveStorage.variant_processor = :mini_magick' test/test_helper.rb || die
+ # Avoid vips-specific tests
+ sed -e '/\(resized and monochrome variation of JPEG blob\|monochrome with default variant_processor\|disabled variation of JPEG blob\)/askip "No vips support"' \
+ -i test/models/variant_test.rb || die
+
+ # Avoid test where different ffmpeg versions apply different rounding for the duration.
+ sed -i -e '/1.022000/ s:^:#:' test/analyzer/video_analyzer_test.rb || die
+}
diff --git a/dev-ruby/activestorage/activestorage-7.0.8.ebuild b/dev-ruby/activestorage/activestorage-7.0.8.ebuild
new file mode 100644
index 000000000000..faf776d281a8
--- /dev/null
+++ b/dev-ruby/activestorage/activestorage-7.0.8.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+DEPEND+=" test? ( app-text/mupdf 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
+ >=dev-ruby/mini_mime-1.1.0
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/image_processing-1.2:0
+ =dev-ruby/minitest-5.15*:*
+ dev-ruby/mini_magick
+ dev-ruby/mocha
+ dev-ruby/rake
+ dev-ruby/sprockets-rails
+ dev-ruby/sqlite3
+ )"
+
+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\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|aws-sdk-s3\|aws-sdk-sns\|google-cloud-storage\|azure-storage\|blade\|bootsnap\|hiredis\|qunit-selenium\|chromedriver-helper\|redis\|rb-inotify\|stackprof\|websocket-client-simple\|libxml-ruby\|sass-rails\|capybara\|rack-cache\|selenium\|dalli\|listen\|connection_pool\|puma\|mysql2\|webdrivers\|webpacker\|rexml\|webmock\|webrick\|propshaft\|sprockets-export\|rack-test\|terser\|cookiejar\|cgi\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/group :\(doc\|job\|rubocop\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Use mini_magick since vips is not packaged on Gentoo
+ sed -i -e '/mini_magick/aActiveStorage.variant_processor = :mini_magick' test/test_helper.rb || die
+ # Avoid vips-specific tests
+ sed -e '/\(resized and monochrome variation of JPEG blob\|monochrome with default variant_processor\|disabled variation of JPEG blob\)/askip "No vips support"' \
+ -i test/models/variant_test.rb || die
+}
diff --git a/dev-ruby/activestorage/activestorage-7.1.3.2.ebuild b/dev-ruby/activestorage/activestorage-7.1.3.2.ebuild
new file mode 100644
index 000000000000..1fe2751e668b
--- /dev/null
+++ b/dev-ruby/activestorage/activestorage-7.1.3.2.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~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.15*:*
+ dev-ruby/mini_magick
+ dev-ruby/mocha
+ dev-ruby/rake
+ dev-ruby/sprockets-rails
+ >=dev-ruby/sqlite3-1.6.6
+ )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|aws-sdk-s3\|aws-sdk-sns\|google-cloud-storage\|azure-storage\|blade\|bootsnap\|hiredis\|qunit-selenium\|chromedriver-helper\|redis\|rb-inotify\|stackprof\|websocket-client-simple\|libxml-ruby\|sass-rails\|capybara\|rack-cache\|selenium\|dalli\|listen\|connection_pool\|puma\|mysql2\|webdrivers\|webpacker\|rexml\|webmock\|webrick\|propshaft\|sprockets-export\|rack-test\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/group :\(doc\|job\|lint\|rubocop\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Use mini_magick since vips is not packaged on Gentoo
+ sed -i -e '/mini_magick/aActiveStorage.variant_processor = :mini_magick' test/test_helper.rb || die
+ # Avoid vips-specific tests
+ sed -e '/\(resized and monochrome variation of JPEG blob\|monochrome with default variant_processor\|disabled variation of JPEG blob\)/askip "No vips support"' \
+ -i test/models/variant_test.rb || die
+
+ # Avoid test where different ffmpeg versions apply different rounding for the duration.
+ sed -i -e '/1.022000/ s:^:#:' test/analyzer/video_analyzer_test.rb || die
+
+ # Avoid failing test depending on yarn
+ rm -f test/javascript_package_test.rb || die
+}
diff --git a/dev-ruby/activestorage/activestorage-7.1.3.ebuild b/dev-ruby/activestorage/activestorage-7.1.3.ebuild
new file mode 100644
index 000000000000..1fe2751e668b
--- /dev/null
+++ b/dev-ruby/activestorage/activestorage-7.1.3.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+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 ~ppc ~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.15*:*
+ dev-ruby/mini_magick
+ dev-ruby/mocha
+ dev-ruby/rake
+ dev-ruby/sprockets-rails
+ >=dev-ruby/sqlite3-1.6.6
+ )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|bcrypt\|uglifier\|aws-sdk-s3\|aws-sdk-sns\|google-cloud-storage\|azure-storage\|blade\|bootsnap\|hiredis\|qunit-selenium\|chromedriver-helper\|redis\|rb-inotify\|stackprof\|websocket-client-simple\|libxml-ruby\|sass-rails\|capybara\|rack-cache\|selenium\|dalli\|listen\|connection_pool\|puma\|mysql2\|webdrivers\|webpacker\|rexml\|webmock\|webrick\|propshaft\|sprockets-export\|rack-test\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/group :\(doc\|job\|lint\|rubocop\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Use mini_magick since vips is not packaged on Gentoo
+ sed -i -e '/mini_magick/aActiveStorage.variant_processor = :mini_magick' test/test_helper.rb || die
+ # Avoid vips-specific tests
+ sed -e '/\(resized and monochrome variation of JPEG blob\|monochrome with default variant_processor\|disabled variation of JPEG blob\)/askip "No vips support"' \
+ -i test/models/variant_test.rb || die
+
+ # Avoid test where different ffmpeg versions apply different rounding for the duration.
+ sed -i -e '/1.022000/ s:^:#:' test/analyzer/video_analyzer_test.rb || die
+
+ # Avoid failing test depending on yarn
+ rm -f test/javascript_package_test.rb || die
+}
diff --git a/dev-ruby/activestorage/metadata.xml b/dev-ruby/activestorage/metadata.xml
index 42d41e33d990..fbd27c03d85b 100644
--- a/dev-ruby/activestorage/metadata.xml
+++ b/dev-ruby/activestorage/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/activesupport/Manifest b/dev-ruby/activesupport/Manifest
index e3b53c8c8150..5a38fea999e2 100644
--- a/dev-ruby/activesupport/Manifest
+++ b/dev-ruby/activesupport/Manifest
@@ -1,4 +1,6 @@
-DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
-DIST rails-5.1.7.tgz 6146668 BLAKE2B 494a12d79037010333c06d14573474f0d0c1e62ce5252e8fbe4eb4c6935dc660614c2ff29fd168bbc66d74bfa64b92abb84d02645cb3b2950db5c166111b7b19 SHA512 6595eb19f174c9e46a937d6028d9bb2bfdcda06f35ec2a0499bc5deff05d8cfc8f8fc725e664496d3b431c8724141a1410201b57945b98ca211aea15c990d621
-DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
-DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
+DIST rails-6.1.7.6.tgz 11040086 BLAKE2B 8b5311752952403cf8eae31b5d8e8d376c4b449f512e86df66b3e921375ffa3ea11e15f1d74a7f8ec9179ff70c32a6d4f8de75be5f92fe6315ee97164e22d2d0 SHA512 c4163565b2324ce97317d252f3d9e2e673a12b6ae7f54571645c958ce30221f1b357887ade80e46abdd47a422736b9946e49850d52ffd72d8acc87f35224e69f
+DIST rails-6.1.7.7.tgz 11041447 BLAKE2B 3f59325aa86d3b7d6e0773b9eb2b895a26b644109be8df0b0d9abbab8e6c77f76d316c717ecce4e2d79d3247559504a7452a8037d2d52a6cf95fbacd7f8b8612 SHA512 f9af4eebb3bffec78832f92be6158c71c147e265b54e8e368a06c762bfd1a7992256b3e9286aeb59eee69ba56be28d381a715eb13f99b9babfd9b7ce8051e210
+DIST rails-7.0.8.1.tgz 11089378 BLAKE2B 5d92087402d8aa2b86759ec92c44091a7a0f8a22959e0510f10417f88e54f9e1e6a14c4e9519033cd63bdd1f54f72b91bff8a3318a3264c39311317fb67e8b63 SHA512 74f467f7d3e5ec88560448e206a8f0cdf55bad60dd9eac019224fce86a766ee9d0c4afbd4eaae30dacfe34beebcff6aa9d3c5c99be9c8ad5c385817fe409afc8
+DIST rails-7.0.8.tgz 11073254 BLAKE2B 2aee047a365acb0890ef3afbccfe323fedccf7b54214aa1c2f92b7a7aaa64c275c1e03f8f97e6a2e30281224ba30703d18b40aeee9b4e7fb6f035a4a7716a054 SHA512 0e9feb5bd0360868c3109152d8ea414b65d36d33a5dbb96b199cfa6c4335800d6c392e0fbcbfa453a02fd75924a297a65caf04948895de53db43700478dbeb11
+DIST rails-7.1.3.2.tgz 10914950 BLAKE2B 419e6817958efcc5dbbb47d24498decff48fca9748c9f4069bcd353a4644fa623caf79c4072db0944139ac991d14623013683f69cef3126fa63348cc0612655b SHA512 0a58e7b125eb97f94a8a75bacd421d7197e6ad78d24651aecfe82e41c024ccfa42a9de0664099f55cd6ac6a41fd7f09cdc3177ed2b809b0be7d7df1639424f9d
+DIST rails-7.1.3.tgz 10900323 BLAKE2B a83ca4ee656e93241fa0460d8df197904a4eef310cf25bce6db6167bad87c8d0644533fa6e224ec959a4e10005164e0f981e14e8b23cee14e2747117be9da712 SHA512 df1128d1403ab82d218d2057c7c86e646594f97a8c6fcf5648a66440d52e5c20a4ceb0c13e70b6153152b44f62d8a1e20f3776acff5c55bc54d006cb7da32d12
diff --git a/dev-ruby/activesupport/activesupport-4.2.11.1.ebuild b/dev-ruby/activesupport/activesupport-4.2.11.1.ebuild
deleted file mode 100644
index 4424d718299a..000000000000
--- a/dev-ruby/activesupport/activesupport-4.2.11.1.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="activesupport.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem versionator
-
-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="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- >=dev-ruby/i18n-0.7:0.7
- >=dev-ruby/tzinfo-1.1:1
- >=dev-ruby/minitest-5.1:5
- >=dev-ruby/thread_safe-0.3.4:0"
-
-# memcache-client, nokogiri, and builder are not strictly
-# needed, but there are tests using this code.
-ruby_add_bdepend "test? (
- >=dev-ruby/dalli-2.2.1
- >=dev-ruby/nokogiri-1.4.5
- >=dev-ruby/builder-3.1.0
- dev-ruby/rack
- dev-ruby/mocha:0.14
- )"
-
-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\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|minitest\|mime-types\|sprockets\|stackprof\|rack-cache\|sqlite\)/ s:^:#:" \
- -e '/:job/,/end/ s:^:#:' \
- -e '/group :doc/,/^end/ s:^:#:' \
- -e 's/gemspec/gemspec path: "activesupport"/' \
- -e '/rake/ s/12.3/12.4/ ; /dalli/ s/2.7.7/2.7.10/' \
- -e '5igem "builder"; gem "rack"' ../Gemfile || die
- rm ../Gemfile.lock || die
-
- # Avoid test that fails with Minitest 5.4 since that already defines
- # a string E in its TestCase.
- rm test/core_ext/marshal_test.rb || die
- sed -i -e '/test_const_missing_in_anonymous_modules/askip "gentoo minitest"' test/dependencies_test.rb || die
-
- # Avoid test crashing newer versions of minitest
- rm -f test/autoload_test.rb test/core_ext/object/json_cherry_pick_test.rb test/core_ext/object/json_gem_encoding_test.rb || die
-}
diff --git a/dev-ruby/activesupport/activesupport-5.1.7.ebuild b/dev-ruby/activesupport/activesupport-5.1.7.ebuild
deleted file mode 100644
index bd6e7295a375..000000000000
--- a/dev-ruby/activesupport/activesupport-5.1.7.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="activesupport.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem versionator
-
-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="$(get_version_component_range 1-2)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- >=dev-ruby/concurrent-ruby-1.0.2:1
- >=dev-ruby/i18n-0.7:* =dev-ruby/i18n-0*:*
- >=dev-ruby/tzinfo-1.1:1
- >=dev-ruby/minitest-5.1:5"
-
-# memcache-client, nokogiri, and builder are not strictly
-# needed, but there are tests using this code.
-ruby_add_bdepend "test? (
- >=dev-ruby/dalli-2.2.1
- >=dev-ruby/nokogiri-1.4.5
- >=dev-ruby/builder-3.1.0
- >=dev-ruby/listen-3.0.5:3
- dev-ruby/rack
- dev-ruby/mocha:0.14
- )"
-
-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\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|minitest\|sprockets\|stackprof\|rack-cache\|sqlite\)/ s:^:#:" \
- -e '/:job/,/end/ s:^:#:' \
- -e '/group :doc/,/^end/ s:^:#:' \
- -e 's/gemspec/gemspec path: "activesupport"/' \
- -e '5igem "builder"; gem "rack"' ../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/caching_test.rb || die
-}
diff --git a/dev-ruby/activesupport/activesupport-5.2.3.ebuild b/dev-ruby/activesupport/activesupport-5.2.3.ebuild
deleted file mode 100644
index bdb4663ae696..000000000000
--- a/dev-ruby/activesupport/activesupport-5.2.3.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="activesupport.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem eapi7-ver
-
-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="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- >=dev-ruby/concurrent-ruby-1.0.2:1
- dev-ruby/i18n:1
- >=dev-ruby/tzinfo-1.1:1
- >=dev-ruby/minitest-5.1:5"
-
-# memcache-client, nokogiri, and builder are not strictly
-# needed, but there are tests using this code.
-ruby_add_bdepend "test? (
- >=dev-ruby/dalli-2.2.1
- >=dev-ruby/nokogiri-1.4.5
- >=dev-ruby/builder-3.1.0
- >=dev-ruby/listen-3.0.5:3
- dev-ruby/rack
- dev-ruby/mocha
- )"
-
-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\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|minitest\|sprockets\|stackprof\|rack-cache\|redis\|sqlite\)/ s:^:#:" \
- -e '/:job/,/end/ s:^:#:' \
- -e '/group :doc/,/^end/ s:^:#:' \
- -e 's/gemspec/gemspec path: "activesupport"/' \
- -e '5igem "builder"; gem "rack"' ../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
-}
diff --git a/dev-ruby/activesupport/activesupport-6.0.0.ebuild b/dev-ruby/activesupport/activesupport-6.0.0.ebuild
deleted file mode 100644
index 096dcd80f053..000000000000
--- a/dev-ruby/activesupport/activesupport-6.0.0.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby25 ruby26"
-
-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="~amd64 ~arm64"
-IUSE=""
-
-RUBY_S="rails-${PV}/${PN}"
-
-ruby_add_rdepend "
- >=dev-ruby/concurrent-ruby-1.0.2:1
- dev-ruby/i18n:1
- >=dev-ruby/tzinfo-1.1:1
- >=dev-ruby/minitest-5.1:5
- >=dev-ruby/zeitwerk-2.1.8:2
-"
-
-# memcache-client, nokogiri, and builder are not strictly
-# needed, but there are tests using this code.
-ruby_add_bdepend "test? (
- >=dev-ruby/dalli-2.2.1
- >=dev-ruby/nokogiri-1.4.5
- >=dev-ruby/builder-3.1.0
- >=dev-ruby/listen-3.0.5:3
- dev-ruby/rack
- dev-ruby/mocha
- )"
-
-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\|sdoc\|w3c_validators\|pg\|execjs\|jquery-rails\|mysql\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|redcarpet\|bcrypt\|uglifier\|minitest\|sprockets\|stackprof\|rack-cache\|redis\|sqlite\)/ s:^:#:" \
- -e '/:job/,/end/ s:^:#:' \
- -e '/group :doc/,/^end/ s:^:#:' \
- -e 's/gemspec/gemspec path: "activesupport"/' \
- -e '5igem "builder"; gem "rack"' ../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
-}
diff --git a/dev-ruby/activesupport/activesupport-6.1.7.6.ebuild b/dev-ruby/activesupport/activesupport-6.1.7.6.ebuild
new file mode 100644
index 000000000000..6023f1897d99
--- /dev/null
+++ b/dev-ruby/activesupport/activesupport-6.1.7.6.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+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="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ >=dev-ruby/concurrent-ruby-1.0.2:1
+ >=dev-ruby/i18n-1.6:1
+ >=dev-ruby/minitest-5.1
+ dev-ruby/tzinfo:2
+ >=dev-ruby/zeitwerk-2.3:2
+"
+
+# memcache-client, nokogiri, builder, and redis are not strictly needed,
+# but there are tests using this code.
+ruby_add_bdepend "test? (
+ >=dev-ruby/dalli-3.0.1
+ dev-ruby/connection_pool
+ >=dev-ruby/nokogiri-1.8.1
+ >=dev-ruby/builder-3.1.0
+ >=dev-ruby/listen-3.3:3
+ dev-ruby/rack
+ dev-ruby/rexml
+ dev-ruby/mocha
+ <dev-ruby/minitest-5.16:*
+ )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.1.7.3-ruby-thread-noise.patch
+ "${FILESDIR}"/${PN}-6.1.7.4-bytesplice.patch
+ "${FILESDIR}"/${PN}-6.1.7.4-class_serial.patch
+)
+
+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\|pg\|execjs\|jquery-rails\|mysql\|journey\|ruby-prof\|stackprof\|benchmark-ips\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|bcrypt\|uglifier\|minitest\|sprockets\|stackprof\|rack-cache\|sqlite\|websocket-client-simple\|\libxml-ruby\|bootsnap\|aws-sdk\|webmock\|capybara\|sass-rails\|selenium-webdriver\|webpacker\|webrick\|rack-test\|net-smtp\|net-imap\|net-pop\|digest\|matrix\)/ s:^:#:" \
+ -e '/group :\(doc\|rubocop\|job\|cable\|storage\|ujs\|test\) do/,/^end/ s:^:#:' \
+ -e 's/gemspec/gemspec path: "activesupport"/' \
+ -e '5igem "builder"; gem "rack"' ../Gemfile || die
+ rm ../Gemfile.lock || die
+# sed -i -e '1igem "tzinfo", "~> 1.1"' test/abstract_unit.rb || die
+
+ # Avoid test that depends on timezone and test that fails on 32-bit arches
+ sed -e '/test_implicit_coercion/,/^ end/ s:^:#:' \
+ -e '/test_iso8601_output_and_reparsing/askip "Broken on 32-bit arches"' \
+ -i 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
+}
diff --git a/dev-ruby/activesupport/activesupport-6.1.7.7.ebuild b/dev-ruby/activesupport/activesupport-6.1.7.7.ebuild
new file mode 100644
index 000000000000..d2408c06c880
--- /dev/null
+++ b/dev-ruby/activesupport/activesupport-6.1.7.7.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+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="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ >=dev-ruby/concurrent-ruby-1.0.2:1
+ >=dev-ruby/i18n-1.6:1
+ >=dev-ruby/minitest-5.1
+ dev-ruby/tzinfo:2
+ >=dev-ruby/zeitwerk-2.3:2
+"
+
+# memcache-client, nokogiri, builder, and redis are not strictly needed,
+# but there are tests using this code.
+ruby_add_bdepend "test? (
+ >=dev-ruby/dalli-3.0.1
+ dev-ruby/connection_pool
+ >=dev-ruby/nokogiri-1.8.1
+ >=dev-ruby/builder-3.1.0
+ >=dev-ruby/listen-3.3:3
+ dev-ruby/rack
+ dev-ruby/rexml
+ dev-ruby/mocha
+ <dev-ruby/minitest-5.16:*
+ )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.1.7.3-ruby-thread-noise.patch
+ "${FILESDIR}"/${PN}-6.1.7.4-bytesplice.patch
+ "${FILESDIR}"/${PN}-6.1.7.4-class_serial.patch
+)
+
+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\|pg\|execjs\|jquery-rails\|mysql\|journey\|ruby-prof\|stackprof\|benchmark-ips\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|bcrypt\|uglifier\|minitest\|sprockets\|stackprof\|rack-cache\|sqlite\|websocket-client-simple\|\libxml-ruby\|bootsnap\|aws-sdk\|webmock\|capybara\|sass-rails\|selenium-webdriver\|webpacker\|webrick\|rack-test\|net-smtp\|net-imap\|net-pop\|digest\|matrix\)/ s:^:#:" \
+ -e '/group :\(doc\|rubocop\|job\|cable\|storage\|ujs\|test\) do/,/^end/ s:^:#:' \
+ -e 's/gemspec/gemspec path: "activesupport"/' \
+ -e '5igem "builder"; gem "rack"' ../Gemfile || die
+ rm ../Gemfile.lock || die
+# sed -i -e '1igem "tzinfo", "~> 1.1"' test/abstract_unit.rb || die
+
+ # Avoid test that depends on timezone and test that fails on 32-bit arches
+ sed -e '/test_implicit_coercion/,/^ end/ s:^:#:' \
+ -e '/test_iso8601_output_and_reparsing/askip "Broken on 32-bit arches"' \
+ -i 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
+}
diff --git a/dev-ruby/activesupport/activesupport-7.0.8.1.ebuild b/dev-ruby/activesupport/activesupport-7.0.8.1.ebuild
new file mode 100644
index 000000000000..03675e68ef54
--- /dev/null
+++ b/dev-ruby/activesupport/activesupport-7.0.8.1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ >=dev-ruby/concurrent-ruby-1.0.2:1
+ >=dev-ruby/i18n-1.6:1
+ dev-ruby/tzinfo:2
+ >=dev-ruby/minitest-5.1
+"
+
+# memcache-client, nokogiri, builder, and redis are not strictly needed,
+# but there are tests using this code.
+ruby_add_bdepend "test? (
+ >=dev-ruby/dalli-3.0.1
+ dev-ruby/connection_pool
+ >=dev-ruby/nokogiri-1.8.1
+ >=dev-ruby/builder-3.1.0
+ >=dev-ruby/listen-3.3:3
+ dev-ruby/rack
+ dev-ruby/rexml
+ dev-ruby/mocha
+ dev-ruby/minitest
+ )"
+
+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\|pg\|execjs\|jquery-rails\|mysql\|journey\|ruby-prof\|stackprof\|benchmark-ips\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|bcrypt\|uglifier\|minitest\|sprockets\|stackprof\|rack-cache\|sqlite\|websocket-client-simple\|\libxml-ruby\|bootsnap\|aws-sdk\|webmock\|capybara\|sass-rails\|selenium-webdriver\|webpacker\|webrick\|propshaft\|rack-test\|terser\|cgi\|net-smtp\|net-imap\|net-pop\|digest\|matrix\|readline-ext\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/group :\(doc\|rubocop\|job\|cable\|storage\|ujs\|test\|view\) do/,/^end/ s:^:#:' \
+ -e 's/gemspec/gemspec path: "activesupport"/' \
+ -e '5igem "builder"; gem "rack"' ../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
+}
diff --git a/dev-ruby/activesupport/activesupport-7.0.8.ebuild b/dev-ruby/activesupport/activesupport-7.0.8.ebuild
new file mode 100644
index 000000000000..ab0ce2bf70eb
--- /dev/null
+++ b/dev-ruby/activesupport/activesupport-7.0.8.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+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="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "
+ >=dev-ruby/concurrent-ruby-1.0.2:1
+ >=dev-ruby/i18n-1.6:1
+ dev-ruby/tzinfo:2
+ >=dev-ruby/minitest-5.1
+"
+
+# memcache-client, nokogiri, builder, and redis are not strictly needed,
+# but there are tests using this code.
+ruby_add_bdepend "test? (
+ >=dev-ruby/dalli-3.0.1
+ dev-ruby/connection_pool
+ >=dev-ruby/nokogiri-1.8.1
+ >=dev-ruby/builder-3.1.0
+ >=dev-ruby/listen-3.3:3
+ dev-ruby/rack
+ dev-ruby/rexml
+ dev-ruby/mocha
+ <dev-ruby/minitest-5.16:*
+ )"
+
+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\|pg\|execjs\|jquery-rails\|mysql\|journey\|ruby-prof\|stackprof\|benchmark-ips\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|bcrypt\|uglifier\|minitest\|sprockets\|stackprof\|rack-cache\|sqlite\|websocket-client-simple\|\libxml-ruby\|bootsnap\|aws-sdk\|webmock\|capybara\|sass-rails\|selenium-webdriver\|webpacker\|webrick\|propshaft\|rack-test\|terser\|cgi\|net-smtp\|net-imap\|net-pop\|digest\|matrix\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/group :\(doc\|rubocop\|job\|cable\|storage\|ujs\|test\|view\) do/,/^end/ s:^:#:' \
+ -e 's/gemspec/gemspec path: "activesupport"/' \
+ -e '5igem "builder"; gem "rack"' ../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
+}
diff --git a/dev-ruby/activesupport/activesupport-7.1.3.2.ebuild b/dev-ruby/activesupport/activesupport-7.1.3.2.ebuild
new file mode 100644
index 000000000000..e265e8725432
--- /dev/null
+++ b/dev-ruby/activesupport/activesupport-7.1.3.2.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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}"
+
+# bigdecimal and mutex_m are bundled with ruby as default gems
+ruby_add_rdepend "
+ dev-ruby/base64
+ >=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
+ msgpack? ( >=dev-ruby/msgpack-1.7.0 )
+"
+
+# memcache-client, nokogiri, builder, and redis are not strictly needed,
+# but there are tests using this code.
+ruby_add_bdepend "test? (
+ >=dev-ruby/dalli-3.0.1
+ >=dev-ruby/nokogiri-1.8.1
+ >=dev-ruby/builder-3.1.0
+ >=dev-ruby/listen-3.3:3
+ dev-ruby/rack:3.0
+ dev-ruby/rexml
+ dev-ruby/mocha
+ >dev-ruby/minitest-5.15.0:*
+ )"
+
+all_ruby_prepare() {
+ # Set the secure permissions that tests expect.
+ chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
+
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -i -e "/\(system_timer\|execjs\|jquery-rails\|journey\|ruby-prof\|stackprof\|benchmark-ips\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|bcrypt\|uglifier\|minitest\|sprockets\|stackprof\|rack-cache\|sqlite\|websocket-client-simple\|\libxml-ruby\|bootsnap\|aws-sdk\|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\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/^group :test/,/^end/ s:^:#:' \
+ -e '/^\s*group :\(db\|doc\|rubocop\|job\|cable\|lint\|mdl\|storage\|ujs\|test\|view\) do/,/^\s*end/ s:^:#:' \
+ -e 's/gemspec/gemspec path: "activesupport"/' \
+ -e '5igem "builder"' ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Avoid test that depends on timezone
+ sed -i -e '/test_implicit_coercion/,/^ end/ s:^:#:' test/core_ext/duration_test.rb || die
+
+ # Avoid tests that seem to trigger race conditions.
+ rm -f test/evented_file_update_checker_test.rb || die
+
+ # Avoid test that generates filename that is too long
+ sed -i -e '/test_filename_max_size/askip "gentoo"' test/cache/stores/file_store_test.rb || die
+
+ # Avoid tests requiring a live redis running
+ rm -f test/cache/stores/redis_cache_store_test.rb || die
+ sed -i -e '/cache_stores:redis/ s:^:#:' Rakefile || die
+ sed -i -e '/test_redis_cache_store/askip "lacking keywords"' test/cache/cache_store_setting_test.rb || die
+}
diff --git a/dev-ruby/activesupport/activesupport-7.1.3.ebuild b/dev-ruby/activesupport/activesupport-7.1.3.ebuild
new file mode 100644
index 000000000000..e265e8725432
--- /dev/null
+++ b/dev-ruby/activesupport/activesupport-7.1.3.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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}"
+
+# bigdecimal and mutex_m are bundled with ruby as default gems
+ruby_add_rdepend "
+ dev-ruby/base64
+ >=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
+ msgpack? ( >=dev-ruby/msgpack-1.7.0 )
+"
+
+# memcache-client, nokogiri, builder, and redis are not strictly needed,
+# but there are tests using this code.
+ruby_add_bdepend "test? (
+ >=dev-ruby/dalli-3.0.1
+ >=dev-ruby/nokogiri-1.8.1
+ >=dev-ruby/builder-3.1.0
+ >=dev-ruby/listen-3.3:3
+ dev-ruby/rack:3.0
+ dev-ruby/rexml
+ dev-ruby/mocha
+ >dev-ruby/minitest-5.15.0:*
+ )"
+
+all_ruby_prepare() {
+ # Set the secure permissions that tests expect.
+ chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
+
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -i -e "/\(system_timer\|execjs\|jquery-rails\|journey\|ruby-prof\|stackprof\|benchmark-ips\|turbolinks\|coffee-rails\|debugger\|sprockets-rails\|bcrypt\|uglifier\|minitest\|sprockets\|stackprof\|rack-cache\|sqlite\|websocket-client-simple\|\libxml-ruby\|bootsnap\|aws-sdk\|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\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/^group :test/,/^end/ s:^:#:' \
+ -e '/^\s*group :\(db\|doc\|rubocop\|job\|cable\|lint\|mdl\|storage\|ujs\|test\|view\) do/,/^\s*end/ s:^:#:' \
+ -e 's/gemspec/gemspec path: "activesupport"/' \
+ -e '5igem "builder"' ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Avoid test that depends on timezone
+ sed -i -e '/test_implicit_coercion/,/^ end/ s:^:#:' test/core_ext/duration_test.rb || die
+
+ # Avoid tests that seem to trigger race conditions.
+ rm -f test/evented_file_update_checker_test.rb || die
+
+ # Avoid test that generates filename that is too long
+ sed -i -e '/test_filename_max_size/askip "gentoo"' test/cache/stores/file_store_test.rb || die
+
+ # Avoid tests requiring a live redis running
+ rm -f test/cache/stores/redis_cache_store_test.rb || die
+ sed -i -e '/cache_stores:redis/ s:^:#:' Rakefile || die
+ sed -i -e '/test_redis_cache_store/askip "lacking keywords"' test/cache/cache_store_setting_test.rb || die
+}
diff --git a/dev-ruby/activesupport/files/activesupport-6.1.7.3-ruby-thread-noise.patch b/dev-ruby/activesupport/files/activesupport-6.1.7.3-ruby-thread-noise.patch
new file mode 100644
index 000000000000..dabe1331a307
--- /dev/null
+++ b/dev-ruby/activesupport/files/activesupport-6.1.7.3-ruby-thread-noise.patch
@@ -0,0 +1,41 @@
+https://github.com/rails/rails/commit/60fc40ea58de8b6faf98081d659e7f5b232aa25e
+
+From 60fc40ea58de8b6faf98081d659e7f5b232aa25e Mon Sep 17 00:00:00 2001
+From: Jonathan Hefner <jonathan@hefner.pro>
+Date: Thu, 22 Jul 2021 13:45:57 -0500
+Subject: [PATCH] Isolate descendants garbage collection test
+
+This prevents the test from being affected by Ruby-internal thread
+locals set by other tests.
+
+Example failure: https://buildkite.com/rails/rails/builds/79505#cb261462-8e40-4adc-99fc-81708a473cc6/1076-1085
+
+Co-authored-by: Jean Boussier <jean.boussier@gmail.com>
+--- a/test/descendants_tracker_test_cases.rb
++++ b/test/descendants_tracker_test_cases.rb
+@@ -28,11 +28,23 @@ def test_descendants
+ end
+
+ def test_descendants_with_garbage_collected_classes
+- 1.times do
++ # The Ruby GC (and most other GCs for that matter) are not fully precise.
++ # When GC is run, the whole stack is scanned to mark any object reference
++ # in registers. But some of these references might simply be leftovers from
++ # previous method calls waiting to be overridden, and there's no definite
++ # way to clear them. By executing this code in a distinct thread, we ensure
++ # that such references are on a stack that will be entirely garbage
++ # collected, effectively working around the problem.
++ Thread.new do
+ child_klass = Class.new(Parent)
+ assert_equal_sets [Child1, Grandchild1, Grandchild2, Child2, child_klass], Parent.descendants
++ end.join
++
++ # Calling `GC.start` 4 times should trigger a full GC run
++ 4.times do
++ GC.start
+ end
+- GC.start
++
+ assert_equal_sets [Child1, Grandchild1, Grandchild2, Child2], Parent.descendants
+ end
+
diff --git a/dev-ruby/activesupport/files/activesupport-6.1.7.4-bytesplice.patch b/dev-ruby/activesupport/files/activesupport-6.1.7.4-bytesplice.patch
new file mode 100644
index 000000000000..fc4096622bb4
--- /dev/null
+++ b/dev-ruby/activesupport/files/activesupport-6.1.7.4-bytesplice.patch
@@ -0,0 +1,29 @@
+From 9e1169b96164eb5ba6bf8ca7744aa3a512cf9439 Mon Sep 17 00:00:00 2001
+From: Hartley McGuire <skipkayhil@gmail.com>
+Date: Mon, 13 Mar 2023 19:05:18 -0400
+Subject: [PATCH] Fix NoMethodError in SafeBuffer#bytesplice
+
+`html_escape_interpolated_argument` was [renamed][1] to
+`implicit_html_escape_interpolated_argument` during Rails 7.0
+development, so the security fix [backport][2] ended up with the wrong
+method name.
+
+[1]: 147f207a57a03fc7a52040aa1f6878cf70ee0db7
+[2]: 3cf23c3f891e2e81c977ea4ab83b62bc2a444b70
+---
+ .../lib/active_support/core_ext/string/output_safety.rb | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/activesupport/lib/active_support/core_ext/string/output_safety.rb b/activesupport/lib/active_support/core_ext/string/output_safety.rb
+index a627540a353db..c5c5d4858ffec 100644
+--- a/lib/active_support/core_ext/string/output_safety.rb
++++ b/lib/active_support/core_ext/string/output_safety.rb
+@@ -217,7 +217,7 @@ def concat(value)
+ alias << concat
+
+ def bytesplice(*args, value)
+- super(*args, implicit_html_escape_interpolated_argument(value))
++ super(*args, html_escape_interpolated_argument(value))
+ end
+
+ def insert(index, value)
diff --git a/dev-ruby/activesupport/files/activesupport-6.1.7.4-class_serial.patch b/dev-ruby/activesupport/files/activesupport-6.1.7.4-class_serial.patch
new file mode 100644
index 000000000000..18a05331ead1
--- /dev/null
+++ b/dev-ruby/activesupport/files/activesupport-6.1.7.4-class_serial.patch
@@ -0,0 +1,23 @@
+From 45e9d5ea0dc61eb8d5977ef4f0d416d0ffcb8575 Mon Sep 17 00:00:00 2001
+From: Jean Boussier <jean.boussier@gmail.com>
+Date: Thu, 15 Dec 2022 10:06:04 +0100
+Subject: [PATCH] Merge pull request #46735 from amatsuda/ruby32_class_serial
+
+A quick fix for a Ruby 3.2 + Active Support test failure
+---
+ activesupport/test/executor_test.rb | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/activesupport/test/executor_test.rb b/activesupport/test/executor_test.rb
+index ac87780b23ccb..b3021c4e70ef8 100644
+--- a/test/executor_test.rb
++++ b/test/executor_test.rb
+@@ -194,7 +194,7 @@ def test_hook_insertion_order
+ end
+
+ def test_class_serial_is_unaffected
+- skip if !defined?(RubyVM)
++ skip if !defined?(RubyVM) || !RubyVM.stat.has_key?(:class_serial)
+
+ hook = Class.new do
+ define_method(:run) do
diff --git a/dev-ruby/activesupport/files/activesupport-7.1.1-backport-pr50097.patch b/dev-ruby/activesupport/files/activesupport-7.1.1-backport-pr50097.patch
new file mode 100644
index 000000000000..89ac92e7f642
--- /dev/null
+++ b/dev-ruby/activesupport/files/activesupport-7.1.1-backport-pr50097.patch
@@ -0,0 +1,65 @@
+https://bugs.gentoo.org/show_bug.cgi?id=917059
+https://github.com/rails/rails/pull/50097
+
+From 2ddb90f63e0fffea493cb1987850797608c4d895 Mon Sep 17 00:00:00 2001
+From: matoro <matoro@users.noreply.github.com>
+Date: Sat, 18 Nov 2023 12:46:23 -0500
+Subject: [PATCH] Skip activesupport event processing tests on platforms w/o
+ highres clock
+
+On platforms without a high-resolution (nanosecond) clock, it is likely
+that the processing of an event will take less time than one complete
+clock resolution cycle, which means that the start and end times will be
+equal and the duration zero, failing these tests. Usually these issues
+are fixed by adding a sleep of equal to one clock resolution cycle, but
+that is not applicable here since the duration measurement occurs in the
+actual library code rather than the test code, so just skip these tests
+on such platforms. Also tested and confirmed that the tests are not
+skipped under normal platforms with a highres clock.
+---
+ test/log_subscriber_test.rb | 9 +++++++--
+ test/notifications_test.rb | 9 ++++++---
+ 2 files changed, 13 insertions(+), 5 deletions(-)
+
+diff --git a/test/log_subscriber_test.rb b/test/log_subscriber_test.rb
+index 455f6952e31b..0fd3ff69eb19 100644
+--- a/test/log_subscriber_test.rb
++++ b/test/log_subscriber_test.rb
+@@ -108,10 +108,15 @@ def test_event_attributes
+ assert_equal 0, event.cpu_time
+ assert_equal 0, event.allocations
+ else
+- assert_operator event.cpu_time, :>, 0
++ # These assertions may fail on platforms without nanosecond-resolution clocks
++ if Process.clock_getres(Process::CLOCK_MONOTONIC) <= 1.0e-09
++ assert_operator event.cpu_time, :>, 0
++ end
+ assert_operator event.allocations, :>, 0
+ end
+- assert_operator event.duration, :>, 0
++ if Process.clock_getres(Process::CLOCK_MONOTONIC) <= 1.0e-09
++ assert_operator event.duration, :>, 0
++ end
+ assert_operator event.idle_time, :>=, 0
+ end
+
+diff --git a/test/notifications_test.rb b/test/notifications_test.rb
+index 87416602bb2f..9bc7e393e3a9 100644
+--- a/test/notifications_test.rb
++++ b/test/notifications_test.rb
+@@ -36,9 +36,12 @@ def test_subscribe_events
+ event = events.first
+ assert event, "should have an event"
+ assert_operator event.allocations, :>, 0
+- assert_operator event.cpu_time, :>, 0
+- assert_operator event.idle_time, :>=, 0
+- assert_operator event.duration, :>, 0
++ # These assertions may fail on platforms without nanosecond-resolution clocks
++ if Process.clock_getres(Process::CLOCK_MONOTONIC) <= 1.0e-09
++ assert_operator event.cpu_time, :>, 0
++ assert_operator event.idle_time, :>=, 0
++ assert_operator event.duration, :>, 0
++ end
+ end
+
+ def test_subscribe_to_events_where_payload_is_changed_during_instrumentation
diff --git a/dev-ruby/activesupport/metadata.xml b/dev-ruby/activesupport/metadata.xml
index 42d41e33d990..9a8257fab77e 100644
--- a/dev-ruby/activesupport/metadata.xml
+++ b/dev-ruby/activesupport/metadata.xml
@@ -1,10 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+ <use>
+ <flag name="msgpack">Support ActiveSupport::MessagePack module</flag>
+ </use>
<upstream>
<remote-id type="github">rails/rails</remote-id>
</upstream>
diff --git a/dev-ruby/acts_as_list/Manifest b/dev-ruby/acts_as_list/Manifest
index bc7a77c97f39..41ed93deebb9 100644
--- a/dev-ruby/acts_as_list/Manifest
+++ b/dev-ruby/acts_as_list/Manifest
@@ -1,3 +1 @@
-DIST acts_as_list-0.9.17.gem 36352 BLAKE2B 6f876dbeab3e84952da4b04f98e8283284fdfe34deab0a0e950606b935e4b64e5adba057aef33daa2279faf9e1f24240f653a2f4c5a56120d5a9019c1dca76ed SHA512 a65cb1e4d8ff99f40ed6ef16344a2884e80d861064c91ccaeb5baa35f4bce72ab77e4f0cc2110ae5734e8c329c7dee19ff0a38f59bd518a97ea7073ce4e61678
-DIST acts_as_list-0.9.18.gem 37376 BLAKE2B 36ec0bc97a9d055195dfa7ba623ecf59b3e93f8fb382f378edc84e319c3a383c5fe47eb2071cd2c5a44b1aee83a27f47f16b3b5db77bfdd69fbb6a67a2e23079 SHA512 b511f23660baccf59f27da2977fcb6c8649b63fee6404998e61510c33a357da03fdca3d14813e2fa4d941f1cc979f8ab1d2f1f3388b871244d8358a3328c577d
-DIST acts_as_list-0.9.19.gem 37376 BLAKE2B e676d970fecbf81df92193e62e3cd9880c3f3f7b03cfbdb7e9e3802aefe209f55d034a4e7e2b9ff09ed84ef7ba7fdbd3d625fe79d86ca1e826f7ebd90bd96e8e SHA512 890d396647c770df754abcde2ab69f022d6fbc2417a1672f41fec2e03e2db7ce2df08126efb757e18c7f0f2faa1230ffa49f099b94ee9035068d6c04c38c7476
+DIST acts_as_list-1.1.0.gem 41984 BLAKE2B abeb0325795276294451b4cb86e20dab6871003c72679ce28f9326cd844234ad56457a03d9b9ecd81b8c143deeefc25dd15df88a38ebdd1324a953b2399465e7 SHA512 bdcaf07bc4ad3854d68c8d95e666e86c2500474ffa212c315b6b4abd321341ac782c0e301f2c859c12b80ecfdd1cc743ccf8a7bdbdb36e30fafcd98d4928a00a
diff --git a/dev-ruby/acts_as_list/acts_as_list-0.9.17.ebuild b/dev-ruby/acts_as_list/acts_as_list-0.9.17.ebuild
deleted file mode 100644
index 166a55d7896a..000000000000
--- a/dev-ruby/acts_as_list/acts_as_list-0.9.17.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-RUBY_FAKEGEM_EXTRAINSTALL="init.rb"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-DESCRIPTION="Capabilities for sorting and reordering a number of objects in a list"
-HOMEPAGE="https://github.com/swanandp/acts_as_list"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~x86-macos"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activerecord-3:*"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/test-unit:2
- dev-ruby/activerecord[sqlite]
- )"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -i -e '/bundler/,/^end/ s:^:#:' test/helper.rb || die
- sed -i -e '/git ls/d' ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i -e '/github_changelog/,$ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/acts_as_list/acts_as_list-0.9.18.ebuild b/dev-ruby/acts_as_list/acts_as_list-0.9.18.ebuild
deleted file mode 100644
index d62631abb443..000000000000
--- a/dev-ruby/acts_as_list/acts_as_list-0.9.18.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-RUBY_FAKEGEM_EXTRAINSTALL="init.rb"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-DESCRIPTION="Capabilities for sorting and reordering a number of objects in a list"
-HOMEPAGE="https://github.com/swanandp/acts_as_list"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~x86-macos"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activerecord-3:*"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/test-unit:2
- dev-ruby/activerecord[sqlite]
- )"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -i -e '/bundler/,/^end/ s:^:#:' test/helper.rb || die
- sed -i -e '/git ls/d' ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i -e '/github_changelog/,$ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/acts_as_list/acts_as_list-0.9.19.ebuild b/dev-ruby/acts_as_list/acts_as_list-0.9.19.ebuild
deleted file mode 100644
index 8385e27ab64b..000000000000
--- a/dev-ruby/acts_as_list/acts_as_list-0.9.19.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-RUBY_FAKEGEM_EXTRAINSTALL="init.rb"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-DESCRIPTION="Capabilities for sorting and reordering a number of objects in a list"
-HOMEPAGE="https://github.com/swanandp/acts_as_list"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~x86-macos"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activerecord-3:*"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/test-unit:2
- dev-ruby/activerecord[sqlite]
- )"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -i -e '/bundler/,/^end/ s:^:#:' test/helper.rb || die
- sed -i -e '/git ls/d' ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i -e '/github_changelog/,$ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/acts_as_list/acts_as_list-1.1.0.ebuild b/dev-ruby/acts_as_list/acts_as_list-1.1.0.ebuild
new file mode 100644
index 000000000000..1ea325ddf3e6
--- /dev/null
+++ b/dev-ruby/acts_as_list/acts_as_list-1.1.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="ruby30 ruby31 ruby32"
+
+inherit ruby-fakegem
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="init.rb"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+DESCRIPTION="Capabilities for sorting and reordering a number of objects in a list"
+HOMEPAGE="https://github.com/brendon/acts_as_list"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/activerecord-4.2:*"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/mocha
+ dev-ruby/test-unit:2
+ dev-ruby/timecop
+ dev-ruby/activerecord[sqlite]
+ )"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+ sed -i -e '/bundler/,/^end/ s:^:#:' test/helper.rb || die
+ sed -i -e '/git ls/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/github_changelog/,$ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/acts_as_list/metadata.xml b/dev-ruby/acts_as_list/metadata.xml
index 1d45a51ad3f4..9fbe56db5480 100644
--- a/dev-ruby/acts_as_list/metadata.xml
+++ b/dev-ruby/acts_as_list/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">swanandp/acts_as_list</remote-id>
+ <remote-id type="github">brendon/acts_as_list</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/addressable/Manifest b/dev-ruby/addressable/Manifest
index dda793dea1cd..bafb50034329 100644
--- a/dev-ruby/addressable/Manifest
+++ b/dev-ruby/addressable/Manifest
@@ -1,2 +1,3 @@
-DIST addressable-2.5.2.gem 103936 BLAKE2B c6677a2b5e9a7a1b279b2e3f1816cda40c0797254970ecaed2350d4d4739dee5a51580a8e2f94fc6bb87b9fe2a535d0a68b62eb672f8e91ff4da02e15e8dffcc SHA512 ddd5aeb4b241efa897a636fd85bd227bd5c6a8ae56129b6bbbdfaad85cdbb74e3d0db4bb6693f7df148b66f68ca1f557ac17a1fb0ea7698d25d883ab0b690bc4
-DIST addressable-2.6.0.gem 104448 BLAKE2B 664365962533d31786e2a362b61879fee544867b7aadc2ceb1ae6709374015a7f0f5c0bd32a81c8f2ae711a4ce1a07cd8f84821e74c3b6aa56b7474800567737 SHA512 71aa0ce8b61a07c1d01298dcd29cb2ba73d06ed1578908cae60351214f7d0bc6c9b8b0db7a78044fb1bed258bf00f2f093aa4e2bcb32575f4db2a79ee36b2648
+DIST addressable-2.8.4.gem 105984 BLAKE2B 788d84a9fe52a05c5e8429aaea59096b604bfad22b06c48f0d8186eb4197e47171310d1d3e9ab296d08b3033443d1fdf6b9b55fdefafd51e4c88feaf5b53298d SHA512 45324e96fb4415b745eb26bd0c3e042102efbdfca879177a70288303c96a4889ff59f794ed0010ea8a95c5d6907b76b0e8c66cce0a5478832c9df465a01e3fcb
+DIST addressable-2.8.5.gem 106496 BLAKE2B 07aadf72772eb909c833079918e44231208b5d9494eac218da1ed30224eb5fabb5369b5dbb0759d328f0cc57117e26fee33ec1139f75d89b2255472df9f2f9e7 SHA512 cc35437d91dfb95f49eeba60b153b89d9f1475fd0770056c22865913629f3bf0a3545585a457bc5a42d97f2e6e81362308e9eb91fd3b2b8a571b997ba53796eb
+DIST addressable-2.8.6.gem 107008 BLAKE2B 0f831f5b2ca1f6fd8c36a5518a9b0bf5819a74f29be2f3897428ec941e40089b3bd627a5359637c7c59cd81fdec57b85c2f3a9a24501d1a425a20940e9f61c50 SHA512 a7cb784cd5564cabec99eb7582ac17969b166e38057c23f3df74707d0078d00d001c2523432ce4e52720528ee808f314f2d6c9139562de27b599363b919cca65
diff --git a/dev-ruby/addressable/addressable-2.5.2.ebuild b/dev-ruby/addressable/addressable-2.5.2.ebuild
deleted file mode 100644
index 8dd64c71c341..000000000000
--- a/dev-ruby/addressable/addressable-2.5.2.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A replacement for the URI implementation that is part of Ruby's standard library"
-HOMEPAGE="https://rubygems.org/gems/addressable https://github.com/sporkmonger/addressable"
-
-LICENSE="Apache-2.0"
-
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE="doc test"
-
-ruby_add_rdepend ">=dev-ruby/public_suffix-2.0.2:* <dev-ruby/public_suffix-4:*"
-
-ruby_add_bdepend "test? ( dev-ruby/rspec-its )"
-
-all_ruby_prepare() {
- # Remove spec-related tasks so that we don't need to require rspec
- # just to build the documentation, bug 383611.
- sed -i -e '/spectask/d' Rakefile || die
- rm -f tasks/rspec.rake || die
- sed -i -e '/bundler/ s:^:#:' \
- -e '/^begin/,/^end/ s:^:#:' \
- spec/spec_helper.rb || die
-
- # Remove specs requiring network connectivity
- rm -f spec/addressable/net_http_compat_spec.rb || die
-
- # Remove spec that tests against an unreleased github fork
- rm -f spec/addressable/rack_mount_compat_spec.rb || die
-}
diff --git a/dev-ruby/addressable/addressable-2.6.0.ebuild b/dev-ruby/addressable/addressable-2.6.0.ebuild
deleted file mode 100644
index d47bd69d4db5..000000000000
--- a/dev-ruby/addressable/addressable-2.6.0.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A replacement for the URI implementation that is part of Ruby's standard library"
-HOMEPAGE="https://rubygems.org/gems/addressable https://github.com/sporkmonger/addressable"
-
-LICENSE="Apache-2.0"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE="doc test"
-
-ruby_add_rdepend ">=dev-ruby/public_suffix-2.0.2:* <dev-ruby/public_suffix-4:*"
-
-ruby_add_bdepend "test? ( dev-ruby/rspec-its )"
-
-all_ruby_prepare() {
- # Remove spec-related tasks so that we don't need to require rspec
- # just to build the documentation, bug 383611.
- sed -i -e '/spectask/d' Rakefile || die
- rm -f tasks/rspec.rake || die
- sed -i -e '/bundler/ s:^:#:' \
- -e '/^begin/,/^end/ s:^:#:' \
- spec/spec_helper.rb || die
-
- # Remove specs requiring network connectivity
- rm -f spec/addressable/net_http_compat_spec.rb || die
-
- # Remove spec that tests against an unreleased github fork
- rm -f spec/addressable/rack_mount_compat_spec.rb || die
-}
diff --git a/dev-ruby/addressable/addressable-2.8.4.ebuild b/dev-ruby/addressable/addressable-2.8.4.ebuild
new file mode 100644
index 000000000000..fb9479eda1c2
--- /dev/null
+++ b/dev-ruby/addressable/addressable-2.8.4.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A replacement for the URI implementation that is part of Ruby's standard library"
+HOMEPAGE="https://rubygems.org/gems/addressable https://github.com/sporkmonger/addressable"
+
+LICENSE="Apache-2.0"
+
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend "|| ( dev-ruby/public_suffix:5 dev-ruby/public_suffix:4 )"
+
+ruby_add_bdepend "test? ( dev-ruby/rspec-its )"
+
+all_ruby_prepare() {
+ # Remove spec-related tasks so that we don't need to require rspec
+ # just to build the documentation, bug 383611.
+ sed -i -e '/spectask/d' Rakefile || die
+ rm -f tasks/rspec.rake || die
+ sed -i -e '/bundler/ s:^:#:' \
+ -e '/^begin/,/^end/ s:^:#:' \
+ spec/spec_helper.rb || die
+
+ # Remove specs requiring network connectivity
+ rm -f spec/addressable/net_http_compat_spec.rb || die
+
+ # Remove spec that tests against an unreleased github fork
+ rm -f spec/addressable/rack_mount_compat_spec.rb || die
+}
diff --git a/dev-ruby/addressable/addressable-2.8.5.ebuild b/dev-ruby/addressable/addressable-2.8.5.ebuild
new file mode 100644
index 000000000000..8a7e82cfddef
--- /dev/null
+++ b/dev-ruby/addressable/addressable-2.8.5.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A replacement for the URI implementation that is part of Ruby's standard library"
+HOMEPAGE="https://rubygems.org/gems/addressable https://github.com/sporkmonger/addressable"
+
+LICENSE="Apache-2.0"
+
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend "|| ( dev-ruby/public_suffix:5 dev-ruby/public_suffix:4 )"
+
+ruby_add_bdepend "test? ( dev-ruby/rspec-its )"
+
+all_ruby_prepare() {
+ # Remove spec-related tasks so that we don't need to require rspec
+ # just to build the documentation, bug 383611.
+ sed -i -e '/spectask/d' Rakefile || die
+ rm -f tasks/rspec.rake || die
+ sed -i -e '/bundler/ s:^:#:' \
+ -e '/^begin/,/^end/ s:^:#:' \
+ spec/spec_helper.rb || die
+
+ # Remove specs requiring network connectivity
+ rm -f spec/addressable/net_http_compat_spec.rb || die
+
+ # Remove spec that tests against an unreleased github fork
+ rm -f spec/addressable/rack_mount_compat_spec.rb || die
+}
diff --git a/dev-ruby/addressable/addressable-2.8.6.ebuild b/dev-ruby/addressable/addressable-2.8.6.ebuild
new file mode 100644
index 000000000000..97bce99ebf8c
--- /dev/null
+++ b/dev-ruby/addressable/addressable-2.8.6.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A replacement for the URI implementation that is part of Ruby's standard library"
+HOMEPAGE="https://rubygems.org/gems/addressable https://github.com/sporkmonger/addressable"
+
+LICENSE="Apache-2.0"
+
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend "|| ( dev-ruby/public_suffix:5 dev-ruby/public_suffix:4 )"
+
+ruby_add_bdepend "test? ( dev-ruby/rspec-its )"
+
+all_ruby_prepare() {
+ # Remove spec-related tasks so that we don't need to require rspec
+ # just to build the documentation, bug 383611.
+ sed -i -e '/spectask/d' Rakefile || die
+ rm -f tasks/rspec.rake || die
+ sed -i -e '/bundler/ s:^:#:' \
+ -e '/^begin/,/^end/ s:^:#:' \
+ spec/spec_helper.rb || die
+
+ # Remove specs requiring network connectivity
+ rm -f spec/addressable/net_http_compat_spec.rb || die
+
+ # Remove spec that tests against an unreleased github fork
+ rm -f spec/addressable/rack_mount_compat_spec.rb || die
+}
diff --git a/dev-ruby/addressable/metadata.xml b/dev-ruby/addressable/metadata.xml
index bc89c827d646..9294ae73b9bd 100644
--- a/dev-ruby/addressable/metadata.xml
+++ b/dev-ruby/addressable/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ae/ae-1.8.2-r1.ebuild b/dev-ruby/ae/ae-1.8.2-r1.ebuild
new file mode 100644
index 000000000000..19fdba5afc20
--- /dev/null
+++ b/dev-ruby/ae/ae-1.8.2-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Assertive Expressive is an assertions library designed for reuse"
+HOMEPAGE="https://rubyworks.github.io/ae/"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+# Tests cause circular dependencies with dev-ruby/qed
+# ... and not in gem/last release?
+RESTRICT="test"
diff --git a/dev-ruby/ae/ae-1.8.2.ebuild b/dev-ruby/ae/ae-1.8.2.ebuild
deleted file mode 100644
index 8c2ca796a6a8..000000000000
--- a/dev-ruby/ae/ae-1.8.2.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Assertive Expressive is an assertions library designed for reuse"
-HOMEPAGE="https://rubyworks.github.io/ae/"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-# Tests cause circular dependencies with dev-ruby/qed
-RESTRICT="test"
diff --git a/dev-ruby/ae/metadata.xml b/dev-ruby/ae/metadata.xml
index 28ab0c15f206..d3444fd11297 100644
--- a/dev-ruby/ae/metadata.xml
+++ b/dev-ruby/ae/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">rubyworks/ae</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/afm/afm-0.2.2-r2.ebuild b/dev-ruby/afm/afm-0.2.2-r2.ebuild
new file mode 100644
index 000000000000..fc2cb0811e52
--- /dev/null
+++ b/dev-ruby/afm/afm-0.2.2-r2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A very simple library to read Adobe Font Metrics files"
+HOMEPAGE="https://github.com/halfbyte/afm"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE="test"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/s/^/#/" Rakefile test/helper.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test test/test_afm.rb || die
+}
diff --git a/dev-ruby/afm/afm-0.2.2.ebuild b/dev-ruby/afm/afm-0.2.2.ebuild
deleted file mode 100644
index 4e59f7f284aa..000000000000
--- a/dev-ruby/afm/afm-0.2.2.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A very simple library to read Adobe Font Metrics files"
-HOMEPAGE="https://github.com/halfbyte/afm"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE="test"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/s/^/#/" Rakefile test/helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test test/test_afm.rb || die
-}
diff --git a/dev-ruby/afm/metadata.xml b/dev-ruby/afm/metadata.xml
index 975ff5acc0df..4e5d310f4e3f 100644
--- a/dev-ruby/afm/metadata.xml
+++ b/dev-ruby/afm/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/airbrussh/Manifest b/dev-ruby/airbrussh/Manifest
index 3796c3c8cffd..d2e3d2579c06 100644
--- a/dev-ruby/airbrussh/Manifest
+++ b/dev-ruby/airbrussh/Manifest
@@ -1,2 +1,3 @@
-DIST airbrussh-1.3.2.tar.gz 1451710 BLAKE2B d2b3f8cc07a13e82e7d8e74c9e3a9ed9837b042350f85da21f8c51b2b766c629f9129bed18d4664e5833d70b2f0d9e0d1703be30350c265377df7ff4b25bc7b4 SHA512 e5ee119d8994f7c23ac0ef553e247c5d5041e2e5fd2c552385c5b4fe42e4aa671460a364fe926225fa447822010380ae6af90b3bd17f73e7f5cf9c7576711331
-DIST airbrussh-1.3.3.tar.gz 1449872 BLAKE2B b5c19a61bb16d3b4c7379929894c3f58e0e0758ec79b590cae1eab1d8478195ce4959f9e2e026cdfd6a307ba006de54cd5982593f5041cdf0d03d47911619cda SHA512 e4f8a02f000ef26be4a121b16d8ab421c8f0de198e5407980116d1b5f0caa83a214112ec8b3bda00b09d72872f8b5d95a3207a3a157d7eda8fbc456a224a4796
+DIST airbrussh-1.5.0.tar.gz 1450385 BLAKE2B bc3d2be21fd6ad3e3524fcd10f0a36c9c97bd55a14c422a80b604312fd040821c9c59ca3b034acd834c9c636f99297b5f7c9b04c54edb9fb6c73c7c13fcf8e94 SHA512 540b98ec60f639cd70c705b1cd47eb4246fd49d3dfa4f0ba5163edfb72d76aab63728a2cdfa80f07c1eb7b159e4167de5392e0bb7129b58031e1a6c0733fb559
+DIST airbrussh-1.5.1.tar.gz 1450388 BLAKE2B 34bfc20db10e32f5523916cc503147283b8aee71064e197931f0774932e7c197f765a1ceca78135642e6758efe2d115b1c1da2572171b06fa622d5313710a6ac SHA512 5c34b0491432a20b4c0d30613669ffe21d431296b69ebd1eccf786d515c80067a5b6776a2b4055ea442fce61f89c130531ce4ad177f97950d9bf7ec479fb5bed
+DIST airbrussh-1.5.2.tar.gz 1450058 BLAKE2B 1e3d6957a47c1e823f5352404a55796e7e834d637c13027deac01bf38be06557dc1819f3f0c623a67e0036cd9ba6a0c9f8739a5fa6a56b6a9f003f1edcfdac13 SHA512 fe15bca2b4f922a07d69026c5b93d820943b1d2cec69ffc0190cf09eff87c2ec2cfe13c24bb7174fc9b534a64493abae1344accf91a85a5ddadcee0bd266ef44
diff --git a/dev-ruby/airbrussh/airbrussh-1.3.2.ebuild b/dev-ruby/airbrussh/airbrussh-1.3.2.ebuild
deleted file mode 100644
index eeef4698639d..000000000000
--- a/dev-ruby/airbrussh/airbrussh-1.3.2.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A replacement log formatter for SSHKit"
-HOMEPAGE="https://github.com/mattbrictson/airbrussh"
-SRC_URI="https://github.com/mattbrictson/airbrussh/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">dev-ruby/sshkit-1.7.0"
-
-ruby_add_bdepend "test? ( dev-ruby/mocha )"
-
-all_ruby_prepare() {
- rm -f test/support/minitest_reporters.rb || die
-
- # Avoid a test poluting the environment
- sed -i -e '/test_color_is_can_be_forced_via_env/,/^ end/ s:^:#:' test/airbrussh/console_test.rb || die
-}
diff --git a/dev-ruby/airbrussh/airbrussh-1.3.3.ebuild b/dev-ruby/airbrussh/airbrussh-1.3.3.ebuild
deleted file mode 100644
index 70f59a12905a..000000000000
--- a/dev-ruby/airbrussh/airbrussh-1.3.3.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_GEMSPEC="airbrussh.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A replacement log formatter for SSHKit"
-HOMEPAGE="https://github.com/mattbrictson/airbrussh"
-SRC_URI="https://github.com/mattbrictson/airbrussh/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">dev-ruby/sshkit-1.7.0"
-
-ruby_add_bdepend "test? ( dev-ruby/mocha )"
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- rm -f test/support/minitest_reporters.rb || die
-
- # Avoid a test poluting the environment
- sed -i -e '/test_color_is_can_be_forced_via_env/,/^ end/ s:^:#:' test/airbrussh/console_test.rb || die
-}
diff --git a/dev-ruby/airbrussh/airbrussh-1.5.0.ebuild b/dev-ruby/airbrussh/airbrussh-1.5.0.ebuild
new file mode 100644
index 000000000000..3f165e301b56
--- /dev/null
+++ b/dev-ruby/airbrussh/airbrussh-1.5.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="airbrussh.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A replacement log formatter for SSHKit"
+HOMEPAGE="https://github.com/mattbrictson/airbrussh"
+SRC_URI="https://github.com/mattbrictson/airbrussh/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_rdepend ">dev-ruby/sshkit-1.7.0"
+
+ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/mocha:2 )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ rm -f test/support/minitest_reporters.rb || die
+
+ # Add missing require
+ sed -i -e '1irequire "rake" ; require "rake/task"' test/support/rake_task_definition.rb || die
+
+ # Avoid a test poluting the environment
+ sed -i -e '/test_color_is_can_be_forced_via_env/,/^ end/ s:^:#:' test/airbrussh/console_test.rb || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=1 ${RUBY} -Ilib:test:. -e 'Dir["test/**/*_test.rb"].each {|f| require f}' || die
+}
diff --git a/dev-ruby/airbrussh/airbrussh-1.5.1.ebuild b/dev-ruby/airbrussh/airbrussh-1.5.1.ebuild
new file mode 100644
index 000000000000..840bb1e7fc0c
--- /dev/null
+++ b/dev-ruby/airbrussh/airbrussh-1.5.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="airbrussh.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A replacement log formatter for SSHKit"
+HOMEPAGE="https://github.com/mattbrictson/airbrussh"
+SRC_URI="https://github.com/mattbrictson/airbrussh/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+
+ruby_add_rdepend ">dev-ruby/sshkit-1.7.0"
+
+ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/mocha:2 )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ rm -f test/support/minitest_reporters.rb || die
+
+ # Add missing require
+ sed -i -e '1irequire "rake" ; require "rake/task"' test/support/rake_task_definition.rb || die
+
+ # Avoid a test poluting the environment
+ sed -i -e '/test_color_is_can_be_forced_via_env/,/^ end/ s:^:#:' test/airbrussh/console_test.rb || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=1 ${RUBY} -Ilib:test:. -e 'Dir["test/**/*_test.rb"].each {|f| require f}' || die
+}
diff --git a/dev-ruby/airbrussh/airbrussh-1.5.2.ebuild b/dev-ruby/airbrussh/airbrussh-1.5.2.ebuild
new file mode 100644
index 000000000000..840bb1e7fc0c
--- /dev/null
+++ b/dev-ruby/airbrussh/airbrussh-1.5.2.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="airbrussh.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A replacement log formatter for SSHKit"
+HOMEPAGE="https://github.com/mattbrictson/airbrussh"
+SRC_URI="https://github.com/mattbrictson/airbrussh/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+
+ruby_add_rdepend ">dev-ruby/sshkit-1.7.0"
+
+ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/mocha:2 )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ rm -f test/support/minitest_reporters.rb || die
+
+ # Add missing require
+ sed -i -e '1irequire "rake" ; require "rake/task"' test/support/rake_task_definition.rb || die
+
+ # Avoid a test poluting the environment
+ sed -i -e '/test_color_is_can_be_forced_via_env/,/^ end/ s:^:#:' test/airbrussh/console_test.rb || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=1 ${RUBY} -Ilib:test:. -e 'Dir["test/**/*_test.rb"].each {|f| require f}' || die
+}
diff --git a/dev-ruby/airbrussh/metadata.xml b/dev-ruby/airbrussh/metadata.xml
index 7ce59145bbd9..b3bde33b8180 100644
--- a/dev-ruby/airbrussh/metadata.xml
+++ b/dev-ruby/airbrussh/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
@@ -9,4 +9,7 @@
Capistrano is a utility and framework for executing commands in parallel on
multiple remote machines, via SSH.
</longdescription>
+<upstream>
+ <remote-id type="github">mattbrictson/airbrussh</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/allison/Manifest b/dev-ruby/allison/Manifest
deleted file mode 100644
index f3e3eeccd891..000000000000
--- a/dev-ruby/allison/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST allison-2.0.3.gem 31232 BLAKE2B d112edc2bf5a50d5b861043e567779b07b213d6f19fb6a6f3b88ba95bb123a01256b3b9b9931e6b5ff30bf7c293c804f0faef0b07d0e0d1bdbbcaf531884b19a SHA512 988ed7f244c8b4fc9f629ef2b37a0ad851d9587f688e834041624cc92d8549e403545b83eb270b127e634c99f91ff8b53d2642df73dbfafe20aa41718b97ee5d
diff --git a/dev-ruby/allison/allison-2.0.3-r3.ebuild b/dev-ruby/allison/allison-2.0.3-r3.ebuild
deleted file mode 100644
index fcba20b592bf..000000000000
--- a/dev-ruby/allison/allison-2.0.3-r3.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README"
-RUBY_FAKEGEM_EXTRAINSTALL="cache"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A modern, pretty RDoc template"
-HOMEPAGE="https://fauna.github.com/fauna/allison/files/README.html"
-
-LICENSE="AFL-3.0"
-SLOT="0"
-KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sparc x86 ~x86-solaris"
-IUSE=""
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r contrib
-}
diff --git a/dev-ruby/allison/metadata.xml b/dev-ruby/allison/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/allison/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/amatch/Manifest b/dev-ruby/amatch/Manifest
index 396ea68f4d34..26c8eadb56a0 100644
--- a/dev-ruby/amatch/Manifest
+++ b/dev-ruby/amatch/Manifest
@@ -1 +1 @@
-DIST amatch-0.4.0.gem 38912 BLAKE2B 065b4c537a2727cbb7f7d52aff545a3f7f8434b37553e59b261d9760ed304c24a20e4778c375e7b7fa11f40655cac786ca15cdb11360ac7296f03186439be480 SHA512 c5a1d17b46f51796d3f082ab9d18845625a28e08339756ebc0689ad6c50b1406611fd5a316e628e4dab6d9b654c969a4fc6e8c2b2079f04c64e3d990e95a64a0
+DIST amatch-0.4.1.gem 38912 BLAKE2B b485442f9b45dcd02bdff641a68cdbce0e15e81bcaddc71a792b6707621092e0f8181d194db49e82abfb3bf692e0b7ac27b21baed3004b3b5a4dfcdb8bff7d4c SHA512 98befe4cb5a78a754eb3596a55b7c004fbf26ba04a8e8314dd6f28b50feade0fc0a7b78493310de0a75b33720204e8ba9ccb05df4478b2631d15b7d9d62a42a9
diff --git a/dev-ruby/amatch/amatch-0.4.0.ebuild b/dev-ruby/amatch/amatch-0.4.0.ebuild
deleted file mode 100644
index 7eb29c2cbe15..000000000000
--- a/dev-ruby/amatch/amatch-0.4.0.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Approximate Matching Extension for Ruby"
-HOMEPAGE="https://flori.github.com/amatch/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "=dev-ruby/tins-1*"
-
-# These packages also provide agrep, bug 626480
-RDEPEND+=" !app-misc/glimpse !app-text/agrep !dev-libs/tre"
-
-all_ruby_prepare() {
- # mize is listed as a dependency but not actually used
- sed -i -e '/mize/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext V=1
- cp ext/amatch_ext$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib -S testrb-2 tests/* || die
-}
diff --git a/dev-ruby/amatch/amatch-0.4.1.ebuild b/dev-ruby/amatch/amatch-0.4.1.ebuild
new file mode 100644
index 000000000000..4c0399a8981e
--- /dev/null
+++ b/dev-ruby/amatch/amatch-0.4.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Approximate Matching Extension for Ruby"
+HOMEPAGE="https://github.com/flori/amatch"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "=dev-ruby/tins-1*"
+
+# These packages also provide agrep, bug 626480
+RDEPEND+=" !app-misc/glimpse !app-text/agrep !dev-libs/tre"
+
+all_ruby_prepare() {
+ # mize is listed as a dependency but not actually used
+ sed -i -e '/mize/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib -S testrb-2 tests/* || die
+}
diff --git a/dev-ruby/amatch/metadata.xml b/dev-ruby/amatch/metadata.xml
index 28ab0c15f206..4354cf5904f4 100644
--- a/dev-ruby/amatch/metadata.xml
+++ b/dev-ruby/amatch/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">flori/amatch</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ammeter/Manifest b/dev-ruby/ammeter/Manifest
index f491da293314..4f905182b99b 100644
--- a/dev-ruby/ammeter/Manifest
+++ b/dev-ruby/ammeter/Manifest
@@ -1 +1,3 @@
-DIST ammeter-1.1.4.gem 19968 BLAKE2B dbc773e4db83d820e5ef1c6ae3af2e65f87ff1a10a09759c66a4dad87cd175e5e8af857435b6df6cb93167869d31fb1f43dcf220e063db03d048aa8926c7daaf SHA512 57d24c67be85fe34ded8feda045771974be7cdd828780a82ff0b2f6b52d0b35b48c2eb7e59dae70700fba676242918ef6463448090d7729d49db0f05f04b0131
+DIST ammeter-1.1.5.gem 19968 BLAKE2B e4a7af65c8ee798b24f0c8a312315461779f5e1c31d97da1663d73b1a9cc65b99ed9f693259eed01a4152ab220d34ddb91ee4632657035fc1768897fae60d60e SHA512 35758fccaa51c9873747f24710168bdc0a0b25bd825d15e434cd17341d07f73a5078293d5045dcf88061765e92fe08f9b2470b4f206d859e82ec7befe64c1d93
+DIST ammeter-1.1.6.gem 19968 BLAKE2B 875da6f9be200b6df789f75b98224e30d0223a501fb54b94b9ef1c32a2c3c78cfe54c77e926ba0d17bc64faa42a357861818448889c6c25c698101deba05460d SHA512 13883aae0258c0354d5fec17f86d4851251e2a8138830113c94c20162294852c892f580e14df6407c88b6c64dbe87f241e392a1849d126d12d556462edcda147
+DIST ammeter-1.1.7.gem 19968 BLAKE2B ac503575d9c309c20f5b9ecbc31510862223199ba0f21801be3efef24d759f42c722581b1a518bc4225fdd0d7df3110f43bff79497b224ab8bc3fc4b6d57503e SHA512 7009f8c449180680327d09d84ad4eccf0f2adbf4a0ede0cc55d412396943af874254eb7ead92c8d818f4a8247f9d43d371f54de4001b9ae5e6ad6e6a66100673
diff --git a/dev-ruby/ammeter/ammeter-1.1.4-r1.ebuild b/dev-ruby/ammeter/ammeter-1.1.4-r1.ebuild
deleted file mode 100644
index 19a06c834754..000000000000
--- a/dev-ruby/ammeter/ammeter-1.1.4-r1.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Write specs for your Rails 3+ generators"
-HOMEPAGE="https://github.com/alexrothenberg/ammeter"
-LICENSE="MIT"
-
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-# Restrict tests since they now require the specific rspec version to be
-# provided in an environment variable.
-#RESTRICT="test"
-
-ruby_add_rdepend "
- >=dev-ruby/activesupport-3.0:*
- >=dev-ruby/railties-3.0:*
- >=dev-ruby/rspec-rails-2.2:*
-"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/rails-4.0
- >=dev-ruby/uglifier-1.3
- >=dev-ruby/rake-0.10
- >=dev-ruby/coffee-rails-4.0
- >=dev-ruby/sass-rails-4.0
- >=dev-ruby/jquery-rails-3.0
- dev-util/cucumber
- dev-util/aruba
- dev-ruby/sqlite3
- dev-ruby/bundler
- )"
-
-all_ruby_prepare() {
- # fix the gemspec; we remove the version dependencies from there, as
- # it requires _older_ versions of its dependencies.. it doesn't
- # really seem to be the case though. Also remove the references to
- # git ls-files to avoid calling it.
- sed -i \
- -e '/git ls-files/d' \
- -e '/\(cucumber\|aruba\)/s:,.*$::' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # haml-rails is not packaged
- sed -i -e '/haml-rails/d' ${RUBY_FAKEGEM_GEMSPEC} Gemfile || die
- rm -f spec/ammeter/rspec/generator/matchers/have_correct_syntax_spec.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -S bundle exec ${RUBY} -S rspec-3 spec || die
-}
diff --git a/dev-ruby/ammeter/ammeter-1.1.5-r1.ebuild b/dev-ruby/ammeter/ammeter-1.1.5-r1.ebuild
new file mode 100644
index 000000000000..f3703c32800b
--- /dev/null
+++ b/dev-ruby/ammeter/ammeter-1.1.5-r1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Write specs for your Rails 3+ generators"
+HOMEPAGE="https://github.com/alexrothenberg/ammeter"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/activesupport-3.0:*
+ >=dev-ruby/railties-3.0:*
+ >=dev-ruby/rspec-rails-2.2:*
+"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/rails-4.0
+ >=dev-ruby/uglifier-1.3
+ >=dev-ruby/rake-0.10
+ >=dev-ruby/jquery-rails-3.0
+ dev-util/cucumber
+ dev-util/aruba
+ dev-ruby/sqlite3
+ dev-ruby/bundler
+ )"
+
+all_ruby_prepare() {
+ # fix the gemspec; we remove the version dependencies from there, as
+ # it requires _older_ versions of its dependencies.. it doesn't
+ # really seem to be the case though. Also remove the references to
+ # git ls-files to avoid calling it.
+ sed -i \
+ -e '/git ls-files/d' \
+ -e '/\(cucumber\|aruba\)/s:,.*$::' \
+ ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # haml-rails is not packaged, coffee-rails and sass-rails are no longer maintained
+ sed -i -e '/\(coffee\|haml\|sass\)-rails/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} Gemfile || die
+ rm -f spec/ammeter/rspec/generator/matchers/have_correct_syntax_spec.rb || die
+}
+
+each_ruby_test() {
+ RSPEC_VERSION=">=4" ${RUBY} -S bundle exec ${RUBY} -S rspec-3 spec || die
+}
diff --git a/dev-ruby/ammeter/ammeter-1.1.6.ebuild b/dev-ruby/ammeter/ammeter-1.1.6.ebuild
new file mode 100644
index 000000000000..30ef5951988d
--- /dev/null
+++ b/dev-ruby/ammeter/ammeter-1.1.6.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Write specs for your Rails 3+ generators"
+HOMEPAGE="https://github.com/alexrothenberg/ammeter"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/activesupport-3.0:*
+ >=dev-ruby/railties-3.0:*
+ >=dev-ruby/rspec-rails-2.2:*
+"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/rails-4.0
+ >=dev-ruby/uglifier-1.3
+ >=dev-ruby/rake-0.10
+ >=dev-ruby/jquery-rails-3.0
+ dev-util/cucumber
+ dev-util/aruba
+ dev-ruby/sqlite3
+ dev-ruby/bundler
+ )"
+
+all_ruby_prepare() {
+ # fix the gemspec; we remove the version dependencies from there, as
+ # it requires _older_ versions of its dependencies.. it doesn't
+ # really seem to be the case though. Also remove the references to
+ # git ls-files to avoid calling it.
+ sed -i \
+ -e '/git ls-files/d' \
+ -e '/\(cucumber\|aruba\)/s:,.*$::' \
+ ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # haml-rails is not packaged, coffee-rails and sass-rails are no longer maintained
+ sed -i -e '/\(coffee\|haml\|sass\)-rails/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} Gemfile || die
+ rm -f spec/ammeter/rspec/generator/matchers/have_correct_syntax_spec.rb || die
+}
+
+each_ruby_test() {
+ RSPEC_VERSION=">=4" ${RUBY} -S bundle exec ${RUBY} -S rspec-3 spec || die
+}
diff --git a/dev-ruby/ammeter/ammeter-1.1.7.ebuild b/dev-ruby/ammeter/ammeter-1.1.7.ebuild
new file mode 100644
index 000000000000..f424cc1bac89
--- /dev/null
+++ b/dev-ruby/ammeter/ammeter-1.1.7.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Write specs for your Rails 3+ generators"
+HOMEPAGE="https://github.com/alexrothenberg/ammeter"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/activesupport-3.0:*
+ >=dev-ruby/railties-3.0:*
+ >=dev-ruby/rspec-rails-2.2:*
+"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/rails-4.0
+ >=dev-ruby/uglifier-1.3
+ >=dev-ruby/rake-0.10
+ >=dev-ruby/jquery-rails-3.0
+ dev-util/cucumber
+ dev-util/aruba
+ dev-ruby/sqlite3
+ dev-ruby/bundler
+ )"
+
+all_ruby_prepare() {
+ # fix the gemspec; we remove the version dependencies from there, as
+ # it requires _older_ versions of its dependencies.. it doesn't
+ # really seem to be the case though. Also remove the references to
+ # git ls-files to avoid calling it.
+ sed -i \
+ -e '/git ls-files/d' \
+ -e '/\(cucumber\|aruba\)/s:,.*$::' \
+ ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # haml-rails is not packaged, coffee-rails and sass-rails are no longer maintained
+ sed -i -e '/\(coffee\|haml\|sass\)-rails/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} Gemfile || die
+ rm -f spec/ammeter/rspec/generator/matchers/have_correct_syntax_spec.rb || die
+}
+
+each_ruby_test() {
+ RSPEC_VERSION=">=4" ${RUBY} -S bundle exec ${RUBY} -S rspec-3 spec || die
+}
diff --git a/dev-ruby/ammeter/metadata.xml b/dev-ruby/ammeter/metadata.xml
index 767fba165fb2..0ec89d298b4b 100644
--- a/dev-ruby/ammeter/metadata.xml
+++ b/dev-ruby/ammeter/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/amq-client/amq-client-1.0.4-r1.ebuild b/dev-ruby/amq-client/amq-client-1.0.4-r1.ebuild
new file mode 100644
index 000000000000..e1dc912c71b8
--- /dev/null
+++ b/dev-ruby/amq-client/amq-client-1.0.4-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.textile"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="A fully-featured, low-level AMQP 0.9.1 client"
+HOMEPAGE="https://github.com/ruby-amqp/amq-client"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/amq-protocol-1.2.0 dev-ruby/eventmachine"
+
+ruby_add_bdepend "test? ( dev-ruby/evented-spec )"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/ s:^:#:' -e '/effin_utf8/ s:^:#:' spec/spec_helper.rb || die
+ sed -i -e '7i require "evented-spec"' spec/spec_helper.rb || die
+
+ # Drop integration tests since these require a running AMQP server.
+ rm -rf spec/integration spec/regression/bad_frame_slicing_in_adapters_spec.rb spec/unit/client_spec.rb || die
+
+ # Make specs compatible with rspec 3
+ sed -e 's/be_false/be_falsey/ ; s/be_true/be_truthy/' \
+ -i spec/unit/client/*_spec.rb spec/client/protocol/*_spec.rb || die
+}
diff --git a/dev-ruby/amq-client/amq-client-1.0.4.ebuild b/dev-ruby/amq-client/amq-client-1.0.4.ebuild
deleted file mode 100644
index f067e6b6b734..000000000000
--- a/dev-ruby/amq-client/amq-client-1.0.4.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.textile"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit versionator ruby-fakegem
-
-DESCRIPTION="A fully-featured, low-level AMQP 0.9.1 client"
-HOMEPAGE="https://github.com/ruby-amqp/amq-client"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/amq-protocol-1.2.0 dev-ruby/eventmachine"
-
-ruby_add_bdepend "test? ( dev-ruby/evented-spec )"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/[Bb]undler/ s:^:#:' -e '/effin_utf8/ s:^:#:' spec/spec_helper.rb || die
- sed -i -e '7i require "evented-spec"' spec/spec_helper.rb || die
-
- # Drop integration tests since these require a running AMQP server.
- rm -rf spec/integration spec/regression/bad_frame_slicing_in_adapters_spec.rb spec/unit/client_spec.rb || die
-}
diff --git a/dev-ruby/amq-client/metadata.xml b/dev-ruby/amq-client/metadata.xml
index 487c385bd2fe..0af4e94a6d2f 100644
--- a/dev-ruby/amq-client/metadata.xml
+++ b/dev-ruby/amq-client/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/amq-protocol/Manifest b/dev-ruby/amq-protocol/Manifest
index 4507361af989..56c3923de04b 100644
--- a/dev-ruby/amq-protocol/Manifest
+++ b/dev-ruby/amq-protocol/Manifest
@@ -1 +1 @@
-DIST amq-protocol-2.3.0.gem 45568 BLAKE2B f5af9184a37bb7484e18765cf6bd807048339f44ece70a1c5dc8d6580eb1449bd1deda9bd467970c0d03088f4f666ef0ba59141fe90b335508a854440cc5dae4 SHA512 cb9ca136908f09dd7f38f763b87516379efafb2cc3dfe34268064c08ee9fdda8e9299de4d94b70aa0569362fe18a541287a6b9649383ee0720f199fdc0b75263
+DIST amq-protocol-2.3.2.gem 46080 BLAKE2B 22e9cf6bf96df7f85c65f0e25a0bedb38f6e75b6a5eff3f7574d1e4f2b733fb697c3cfa8db9227733847d96b256f4127b061a28e24f43114acdcd88b364bf08c SHA512 9e526920989e5fcf679e5ba7f3a2e77546ae9488590a2ef3a600f4df6cb96d3530472bbe15dd951a06ef7cdec2544353a21e4acccce494b5fd44c3ac06b70ef0
diff --git a/dev-ruby/amq-protocol/amq-protocol-2.3.0.ebuild b/dev-ruby/amq-protocol/amq-protocol-2.3.0.ebuild
deleted file mode 100644
index cb3d2e4c20ef..000000000000
--- a/dev-ruby/amq-protocol/amq-protocol-2.3.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An AMQP 0.9.1 serialization library for Ruby"
-HOMEPAGE="https://github.com/ruby-amqp/amq-protocol"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/rspec-its )"
-
-all_ruby_prepare() {
- sed -i -e '/\(simplecov\|effin_utf8\|byebug\)/ s:^:#:' Gemfile || die
- sed -i -e '/effin_utf8/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/amq-protocol/amq-protocol-2.3.2-r1.ebuild b/dev-ruby/amq-protocol/amq-protocol-2.3.2-r1.ebuild
new file mode 100644
index 000000000000..f628619ae7be
--- /dev/null
+++ b/dev-ruby/amq-protocol/amq-protocol-2.3.2-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An AMQP 0.9.1 serialization library for Ruby"
+HOMEPAGE="https://github.com/ruby-amqp/amq-protocol"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/rspec-its )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(simplecov\|effin_utf8\|byebug\)/ s:^:#:' Gemfile || die
+ sed -i -e '/effin_utf8/ s:^:#:' spec/spec_helper.rb || die
+
+ # Avoid spec where host is either nil or "" depending on ruby version
+ sed -i -e '/falls back to default nil host/ s/it/xit/' spec/amq/uri_parsing_spec.rb || die
+}
diff --git a/dev-ruby/amq-protocol/metadata.xml b/dev-ruby/amq-protocol/metadata.xml
index 61cfd235b7ab..ba71c5472b79 100644
--- a/dev-ruby/amq-protocol/metadata.xml
+++ b/dev-ruby/amq-protocol/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/amqp/Manifest b/dev-ruby/amqp/Manifest
deleted file mode 100644
index 3de1aa7eba2e..000000000000
--- a/dev-ruby/amqp/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST amqp-1.8.0.gem 1175040 BLAKE2B 5c623201a378ecbd501d0f30d31873cfdc47088659d79a89eab21b510cbacad220df0122b3164f543f00a5587b74aab4ffb5d6879f0c30fc06ee17bd55600dcd SHA512 8575b3704cbaab5937a5880858bcc4610ecab4be66b9ef8633c1d49858a95fbb48b1245ba71ebce1b0d31e319cb6f133640097aaa779b8a32282f6d442098e7f
diff --git a/dev-ruby/amqp/amqp-1.8.0.ebuild b/dev-ruby/amqp/amqp-1.8.0.ebuild
deleted file mode 100644
index 46e55977b62b..000000000000
--- a/dev-ruby/amqp/amqp-1.8.0.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit versionator ruby-fakegem
-
-DESCRIPTION="AMQP client implementation in Ruby/EventMachine"
-HOMEPAGE="http://rubyamqp.info/"
-
-LICENSE="Ruby"
-SLOT="1.4"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/multi_json dev-ruby/evented-spec )"
-ruby_add_rdepend ">=dev-ruby/eventmachine-0.12.4
- >=dev-ruby/amq-protocol-2.2.0:2"
-
-all_ruby_prepare() {
- #rm Gemfile || die
- sed -i -e '/[Bb]undler/ s:^:#:' -e '/effin_utf8/ s:^:#:' spec/spec_helper.rb || die
-
- # Many specs require a live rabbit server, but only root can start
- # an instance. Skip these specs for now.
- rm -rf spec/integration spec/unit/amqp/connection_spec.rb || die
-}
-
-all_ruby_install() {
- dodoc -r docs examples
-}
diff --git a/dev-ruby/amqp/metadata.xml b/dev-ruby/amqp/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/amqp/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/annoy/Manifest b/dev-ruby/annoy/Manifest
deleted file mode 100644
index 3e11f1853954..000000000000
--- a/dev-ruby/annoy/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST annoy-0.5.6.gem 9728 BLAKE2B e8d4c8cef99be2a380c96fa596547b108a2ed7d8b9e8f996bf8bad163d8030c73c627a17afd564cbf446660bccad1a0287c6a05db9e6d68db8b55e20a5a6bbd1 SHA512 6cade9d766fa315042ba04922bba315157872a25bc2c7e5ea428c1f2343045d0a5d400dc8eade20f650f2cc6a64492020ef608d355963c09c5e6e8d454d3cc8f
diff --git a/dev-ruby/annoy/annoy-0.5.6-r1.ebuild b/dev-ruby/annoy/annoy-0.5.6-r1.ebuild
deleted file mode 100644
index 385aed8f2fe4..000000000000
--- a/dev-ruby/annoy/annoy-0.5.6-r1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.rdoc"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Like your annoying friend that asks you questions all the time"
-HOMEPAGE="http://solutious.com/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend '>=dev-ruby/highline-1.5.0'
diff --git a/dev-ruby/annoy/metadata.xml b/dev-ruby/annoy/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/annoy/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/ansi/ansi-1.5.0-r2.ebuild b/dev-ruby/ansi/ansi-1.5.0-r2.ebuild
new file mode 100644
index 000000000000..607f385389c2
--- /dev/null
+++ b/dev-ruby/ansi/ansi-1.5.0-r2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+RUBY_FAKEGEM_EXTRADOC="DEMO.md HISTORY.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The Ruby ANSI project is collection of ANSI escape codes for Ruby"
+HOMEPAGE="https://rubyworks.github.io/ansi/"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+
+# Tests cause circular dependencies with dev-ruby/qed & dev-ruby/rubytest
+RESTRICT="test"
+
+each_ruby_test() {
+ ${RUBY} -S rubytest -Ilib -Itest test/ || die 'tests failed'
+}
diff --git a/dev-ruby/ansi/ansi-1.5.0.ebuild b/dev-ruby/ansi/ansi-1.5.0.ebuild
deleted file mode 100644
index 4c6c100f9653..000000000000
--- a/dev-ruby/ansi/ansi-1.5.0.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="DEMO.md HISTORY.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="The Ruby ANSI project is collection of ANSI escape codes for Ruby"
-HOMEPAGE="https://rubyworks.github.io/ansi/"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-# Tests cause circular dependencies with dev-ruby/qed & dev-ruby/rubytest
-RESTRICT="test"
diff --git a/dev-ruby/ansi/metadata.xml b/dev-ruby/ansi/metadata.xml
index 28ab0c15f206..e95125780249 100644
--- a/dev-ruby/ansi/metadata.xml
+++ b/dev-ruby/ansi/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">rubyworks/ansi</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/appraisal/Manifest b/dev-ruby/appraisal/Manifest
new file mode 100644
index 000000000000..4cbacc20199b
--- /dev/null
+++ b/dev-ruby/appraisal/Manifest
@@ -0,0 +1 @@
+DIST appraisal-2.5.0.gem 26112 BLAKE2B b72a994167f332f91a94c8afdb611f9cf4ac573e741ed6fb509b8ecd0767422dbff9e61d062cafb8eb527180d0951821c8ddd9e097e391f464e18c905b34d447 SHA512 8ee9a4e60c25635577b00037816c61d10623045607ef051b6508a30b9d1b0885764275a7a688473e29d8dab0af9d188916217df9fb75667139a3acd9ed0db27d
diff --git a/dev-ruby/appraisal/appraisal-2.5.0.ebuild b/dev-ruby/appraisal/appraisal-2.5.0.ebuild
new file mode 100644
index 000000000000..d61b44221fe8
--- /dev/null
+++ b/dev-ruby/appraisal/appraisal-2.5.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby library for testing your library against different versions of dependencies"
+HOMEPAGE="https://github.com/thoughtbot/appraisal"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/bundler
+ dev-ruby/rake
+ >=dev-ruby/thor-0.14.0
+"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/activesupport-3.2.21
+)"
+
+all_ruby_prepare() {
+ sed -i -e '/thor/ s:^:#:' Gemfile || die
+
+ # Skip the acceptance tests since they expect to install gems from
+ # the network and do not expect multiple ruby versions to be
+ # present.
+ rm -rf spec/acceptance || die
+ sed -i -e '/built_in/ s:^:#:' spec/appraisal/appraisal_file_spec.rb || die
+}
diff --git a/dev-ruby/appraisal/metadata.xml b/dev-ruby/appraisal/metadata.xml
new file mode 100644
index 000000000000..b4b7de864849
--- /dev/null
+++ b/dev-ruby/appraisal/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">thoughtbot/appraisal</remote-id>
+ <remote-id type="rubygems">appraisal</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/archive-tar-minitar/Manifest b/dev-ruby/archive-tar-minitar/Manifest
deleted file mode 100644
index 128d63896f74..000000000000
--- a/dev-ruby/archive-tar-minitar/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST archive-tar-minitar-0.8.tar.gz 33632 BLAKE2B b576c74cfd59893d4c0c935703453551f9a0ca6258bc6a2b1ecb3151a44ff166607931e554c811fffb489b6398123cd9e8e58372a94b303df45d88ef903868ad SHA512 cab4798b98d91a17dd5ce4aed3f6fd166dab61e8c9e3bef3df218944fe1657a9ec9d40a52ab2773430070e50410c401da799469b096dcc2b22d6466da1e50b8d
diff --git a/dev-ruby/archive-tar-minitar/archive-tar-minitar-0.8.ebuild b/dev-ruby/archive-tar-minitar/archive-tar-minitar-0.8.ebuild
deleted file mode 100644
index acefdff296a0..000000000000
--- a/dev-ruby/archive-tar-minitar/archive-tar-minitar-0.8.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.rdoc"
-
-RUBY_FAKEGEM_GEMNAME=minitar
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides POSIX tarchive management from Ruby programs"
-HOMEPAGE="https://github.com/halostatue/minitar"
-SRC_URI="https://github.com/halostatue/minitar/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="minitar-${PV}"
-
-LICENSE="|| ( BSD-2 Ruby )"
-SLOT="0"
-KEYWORDS="alpha amd64 hppa ia64 ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.3:5 )"
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/archive-tar-minitar/metadata.xml b/dev-ruby/archive-tar-minitar/metadata.xml
deleted file mode 100644
index 6b698bf6db4e..000000000000
--- a/dev-ruby/archive-tar-minitar/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">halostatue/minitar</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/arel-helpers/Manifest b/dev-ruby/arel-helpers/Manifest
index a68765238a8d..fc69e00d8029 100644
--- a/dev-ruby/arel-helpers/Manifest
+++ b/dev-ruby/arel-helpers/Manifest
@@ -1,3 +1 @@
-DIST arel-helpers-2.10.0.gem 12288 BLAKE2B 04265863ff044a16c9119ce223342ec9007687ff40c7abea3d68328e292b72e0fbddf32756ebd6844a77373bcc3a78e2cb03bb81a9b72737872b4e2e50b3c64a SHA512 e6aa6dacdc36ccef11d665a50e84d9f0a0fdfb524974aa5091b4b11e5d41309153ff4b4bab4c72c3db0c19556f015a438e52c9da4c89daf979a02621622ec3b8
-DIST arel-helpers-2.8.0.gem 12288 BLAKE2B 9b48fc83ca777c481977a9ee629e4cabdf3b015749032ad1551ae082fabf4b238ab2ea4293560511bc8a598ad47e43cf0adb624376a56a6d8dfc22f35641230f SHA512 455ceab078863afe38ba704e84bf2bca4c2358f05a4cc92dc3213611f408e3e02fa5f7b2aaec34d261914563c434e04a91ae26209abb6a23085dd63baa43c1c1
-DIST arel-helpers-2.9.1.gem 12288 BLAKE2B ed8704d9ff856bdda8fc7a642f6f84cfb6060af9ab6830741ba56f76959f6287cf328ad4e0327f7568ac4cfc251f98c260ed9f1ddd01671fe7f75691eef2a3fc SHA512 3bfbf0d2e2f76ea59cd0f6757449993304138378454e90537addc92c41fde8b281bb0897c66f8620f617ae91e9c1765fe6928bc44f38544421a4229fd5b44c02
+DIST arel-helpers-2.14.0.tar.gz 11711 BLAKE2B 75182a17ae741b2fe62189bccf008ca9958a69d69b5c2aced227e1b77f7278565f2c6261f56e567e4534c1e0229ce00e630bb1dc77ce8e49d03267784f8f8dc2 SHA512 47edec1aaa5be14de4ee695b13096dcf3f0c30804b20dfdc84421e1a779d3faa6241c022003f4752da911d1ea71a49de6e1e3339e6a3e452ca7fa8116ff751ca
diff --git a/dev-ruby/arel-helpers/arel-helpers-2.10.0.ebuild b/dev-ruby/arel-helpers/arel-helpers-2.10.0.ebuild
deleted file mode 100644
index 6c2ee61e2a5e..000000000000
--- a/dev-ruby/arel-helpers/arel-helpers-2.10.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Tools to help construct database queries"
-HOMEPAGE="https://github.com/camertron/arel-helpers"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "|| (
- dev-ruby/activerecord:5.2
- dev-ruby/activerecord:5.1
- dev-ruby/activerecord:4.2 )"
-
-ruby_add_bdepend "test? (
- dev-ruby/rr
- dev-ruby/activerecord[sqlite]
-)"
-
-all_ruby_prepare() {
- sed -i -e '/pry-/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/arel-helpers/arel-helpers-2.14.0-r1.ebuild b/dev-ruby/arel-helpers/arel-helpers-2.14.0-r1.ebuild
new file mode 100644
index 000000000000..62e4e4422c0f
--- /dev/null
+++ b/dev-ruby/arel-helpers/arel-helpers-2.14.0-r1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_S=${PN}-*
+RUBY_FAKEGEM_VERSION="$(ver_cut 1-3)"
+inherit ruby-fakegem
+
+DESCRIPTION="Tools to help construct database queries"
+HOMEPAGE="https://github.com/camertron/arel-helpers"
+# No test data in gems
+SRC_URI="https://github.com/camertron/arel-helpers/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm"
+
+ruby_add_rdepend "
+ || (
+ dev-ruby/activerecord:7.0
+ dev-ruby/activerecord:6.1
+ )
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/rr
+ dev-ruby/activerecord[sqlite]
+ dev-ruby/bundler
+ dev-ruby/combustion
+ >=dev-ruby/database_cleaner-1.8
+ >=dev-ruby/sqlite3-1.4
+ )
+"
+
+all_ruby_prepare() {
+ # pry is for debugging, not useful here
+ sed -i -e '/pry-/ s:^:#:' spec/spec_helper.rb || die
+
+ sed \
+ -e '/rake/ s/~>/>=/' \
+ -e '/appraisal/ s:^:#:' \
+ -e '/database_cleaner/ s/1.8/1.7/' \
+ -e '/database_cleaner/ s/~>/>=/' \
+ -e '/sqlite3/ s/~>/>=/' \
+ -i arel-helpers.gemspec || die
+}
+
+each_ruby_test() {
+ ${RUBY} -S bundle exec rake spec || die
+}
diff --git a/dev-ruby/arel-helpers/arel-helpers-2.8.0.ebuild b/dev-ruby/arel-helpers/arel-helpers-2.8.0.ebuild
deleted file mode 100644
index b0aaef15c981..000000000000
--- a/dev-ruby/arel-helpers/arel-helpers-2.8.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Tools to help construct database queries"
-HOMEPAGE="https://github.com/camertron/arel-helpers"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "|| (
- dev-ruby/activerecord:5.2
- dev-ruby/activerecord:5.1
- dev-ruby/activerecord:4.2 )"
-
-ruby_add_bdepend "test? (
- dev-ruby/rr
- dev-ruby/activerecord[sqlite]
-)"
-
-all_ruby_prepare() {
- sed -i -e '/pry-/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/arel-helpers/arel-helpers-2.9.1.ebuild b/dev-ruby/arel-helpers/arel-helpers-2.9.1.ebuild
deleted file mode 100644
index 2373fdf09172..000000000000
--- a/dev-ruby/arel-helpers/arel-helpers-2.9.1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Tools to help construct database queries"
-HOMEPAGE="https://github.com/camertron/arel-helpers"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "|| (
- dev-ruby/activerecord:5.2
- dev-ruby/activerecord:5.1
- dev-ruby/activerecord:4.2 )"
-
-ruby_add_bdepend "test? (
- dev-ruby/rr
- dev-ruby/activerecord[sqlite]
-)"
-
-all_ruby_prepare() {
- sed -i -e '/pry-/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/arel-helpers/metadata.xml b/dev-ruby/arel-helpers/metadata.xml
index 3881c6a5c962..df65d6814770 100644
--- a/dev-ruby/arel-helpers/metadata.xml
+++ b/dev-ruby/arel-helpers/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
<remote-id type="github">camertron/arel-helpers</remote-id>
diff --git a/dev-ruby/arel/Manifest b/dev-ruby/arel/Manifest
deleted file mode 100644
index a642c50b7158..000000000000
--- a/dev-ruby/arel/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST arel-6.0.4.tar.gz 52401 BLAKE2B 36df892474572863170d51172ff4f2a9e07c7e9a7ae6e65a6eb6878bba78021e25c76b2926a6daeae0f916e4a31999e0cbee88a716a0b82ff799806773745b40 SHA512 65833d68b8adf032ef461ac4b81307e59220a3c7b2c2aa33ed4eaeb830c6d6c379e33ddbcfa53edd5f398fa6a2aef293a4daac7c2c93ed86710bd0cf2b5ff7ee
-DIST arel-8.0.0.tar.gz 57781 BLAKE2B 507a874a391b0ce9daf4a8eca557b37950ca982bb695024550ab81a854e507c27a63ab335de259e9ff7cda22b6a22541bdff06e96d9da608acebd19d4b45f79c SHA512 15b99910555a6b4641573f90a126ac3c7fa04e71885eefcafdc6d075ff2c7e733c08a880bfb523e99604f912e2850a607edb757501b46695fd5366e94d8057a6
-DIST arel-9.0.0.tar.gz 59065 BLAKE2B c464c8c52d0fa7c5626fdc9254c74db00e4b43f68f38b75972623f28961565cd6764db967158c48e938620636343b15c4be9bb3237f9c7422730b4702450eb6d SHA512 9d2958765058fa8a4f6a8d7d4c9671d92054748eabe5b94796ff5611cdcd6bb24906cc5e813fb21396aaa681e5703d2d4bce8cc9884f2d057042d1b06bf6f0f5
diff --git a/dev-ruby/arel/arel-6.0.4.ebuild b/dev-ruby/arel/arel-6.0.4.ebuild
deleted file mode 100644
index 683f75acd4d0..000000000000
--- a/dev-ruby/arel/arel-6.0.4.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby21 ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.txt README.markdown"
-
-RUBY_FAKEGEM_GEMSPEC="arel.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Arel is a Relational Algebra for Ruby"
-HOMEPAGE="https://github.com/rails/arel"
-SRC_URI="https://github.com/rails/arel/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- dev-ruby/test-unit:2
- >=dev-ruby/minitest-5.4:5
- )"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" \
- -e '/specname/,$ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/arel/arel-8.0.0.ebuild b/dev-ruby/arel/arel-8.0.0.ebuild
deleted file mode 100644
index 1369e851e376..000000000000
--- a/dev-ruby/arel/arel-8.0.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby21 ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.txt README.md"
-
-RUBY_FAKEGEM_GEMSPEC="arel.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Arel is a Relational Algebra for Ruby"
-HOMEPAGE="https://github.com/rails/arel"
-SRC_URI="https://github.com/rails/arel/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1).0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- dev-ruby/test-unit:2
- >=dev-ruby/minitest-5.4:5
- )"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" \
- -e '/specname/,$ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/arel/arel-9.0.0.ebuild b/dev-ruby/arel/arel-9.0.0.ebuild
deleted file mode 100644
index 8410f3d403ca..000000000000
--- a/dev-ruby/arel/arel-9.0.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.txt README.md"
-
-RUBY_FAKEGEM_GEMSPEC="arel.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Arel is a Relational Algebra for Ruby"
-HOMEPAGE="https://github.com/rails/arel"
-SRC_URI="https://github.com/rails/arel/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1).0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- dev-ruby/concurrent-ruby:1
- dev-ruby/test-unit:2
- >=dev-ruby/minitest-5.4:5
- )"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" \
- -e '/specname/,$ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/arel/metadata.xml b/dev-ruby/arel/metadata.xml
deleted file mode 100644
index 6ad8c7da18f5..000000000000
--- a/dev-ruby/arel/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rails/arel</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ascii85/Manifest b/dev-ruby/ascii85/Manifest
index 9a75a9fa89c0..7fd17a784ad2 100644
--- a/dev-ruby/ascii85/Manifest
+++ b/dev-ruby/ascii85/Manifest
@@ -1,2 +1 @@
-DIST Ascii85-1.0.2.gem 10752 BLAKE2B 1a38fb0d04eefcd73028aeb166169bf04dced4695eaa3ab8d5add8233bb898780b896101558f7db248aeb4cd9c58edaf36b67085ba0b2cb06bb32b312e576c56 SHA512 e2437948697dd46c646e55a361b74ad5069b261809a0e374eee1f3e755d07bbc45d85fc8ab6d620eceeeb020e6ff23224703cba0ce4ddf37f8a5a96289efd74b
-DIST Ascii85-1.0.3.gem 11776 BLAKE2B e08bbc089546dd3b91ff5fd85b8652dd6f5c06025c29ac67004bd7d4c7bb8fc38c77b604dd5a884970b05041e173f37eaf895f0bb9ac1947ce70e4f0cc54906c SHA512 b324ff06ea0cd46a679619a2bfca9f05c30ece9f0342f8a8d097841f3fb4dbb29cf4b6f6832742c50fe5a51895a9048308981be296466422269ce34c4d936f5c
+DIST Ascii85-1.1.0.gem 12288 BLAKE2B 637ee421b51ec8ee88f00c32acc4d05a818fe7a26ec9f512a207d5c2e8c9b99e9866b904451a2ae811f024cd26b810b3dfbc346b6d935fd135a2c2615f2453ef SHA512 f160dbc06f49aaf1c678ece5b94fab4c3878cf7fe6accc267e64505e412072cb28b9dc28ec1ed8bf01ddbd7c08c920d95fbe182f756072d614b9827f6ec50094
diff --git a/dev-ruby/ascii85/ascii85-1.0.2-r2.ebuild b/dev-ruby/ascii85/ascii85-1.0.2-r2.ebuild
deleted file mode 100644
index a1adb044cc31..000000000000
--- a/dev-ruby/ascii85/ascii85-1.0.2-r2.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.rdoc History.txt"
-
-RUBY_FAKEGEM_NAME="Ascii85"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Methods for encoding/decoding Adobe's binary-to-text encoding of the same name"
-HOMEPAGE="https://github.com/datawraith/ascii85gem"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
-}
diff --git a/dev-ruby/ascii85/ascii85-1.0.3.ebuild b/dev-ruby/ascii85/ascii85-1.0.3.ebuild
deleted file mode 100644
index 74be1124c4b7..000000000000
--- a/dev-ruby/ascii85/ascii85-1.0.3.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md History.txt"
-
-RUBY_FAKEGEM_NAME="Ascii85"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Methods for encoding/decoding Adobe's binary-to-text encoding of the same name"
-HOMEPAGE="https://github.com/datawraith/ascii85gem"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
-}
diff --git a/dev-ruby/ascii85/ascii85-1.1.0-r1.ebuild b/dev-ruby/ascii85/ascii85-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..49be7903af52
--- /dev/null
+++ b/dev-ruby/ascii85/ascii85-1.1.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md History.txt"
+
+RUBY_FAKEGEM_NAME="Ascii85"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Methods for encoding/decoding Adobe's binary-to-text encoding of the same name"
+HOMEPAGE="https://github.com/datawraith/ascii85gem"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+}
diff --git a/dev-ruby/ascii85/metadata.xml b/dev-ruby/ascii85/metadata.xml
index 5d8b17706125..3e0e94c5ee19 100644
--- a/dev-ruby/ascii85/metadata.xml
+++ b/dev-ruby/ascii85/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/asciidoctor-diagram/Manifest b/dev-ruby/asciidoctor-diagram/Manifest
index eea51c52b0fb..9f79f962cac3 100644
--- a/dev-ruby/asciidoctor-diagram/Manifest
+++ b/dev-ruby/asciidoctor-diagram/Manifest
@@ -1,4 +1,4 @@
-DIST asciidoctor-diagram-1.5.14.tar.gz 11264778 BLAKE2B 298d3c8dc569877d4500bbbc41167de66748d67e9813c6d505aa9296fe49d973e3455a9f53a127ebc9127db64b5228c24e1ddb2ccacfe5bafdfbd5a8511ffb49 SHA512 66f8b7f48dcab4feb14eadadeb571c7cedb0b18c7a0acb004ebc6144affddc1d4a3d05a27996c666ac7966b62d05a5953b7a84895268e071445209b928fe9e89
-DIST asciidoctor-diagram-1.5.16.tar.gz 11264819 BLAKE2B 31320b609aaa8458bf24d05f5ea5a561801cdf5e0243e333bbf209060fb75ebed47f94302e381420f8d294a5c0349783d8b3e2bdc81721d50d990eb978a220a5 SHA512 94822a604c43894e2be11370aa4595948e35f4f670338d84abe798beb312a8212c944e78478b785d68384177787539ed4a20a360b55325bd94ced502ca957843
-DIST asciidoctor-diagram-1.5.17.tar.gz 11705185 BLAKE2B 0a5611c9f8bfe18d74585635a168e8cfbc80e4ad40eb530c7bab2ff4595d73139776fdaddbd190a753fb9c938aa46449461f20e1f9033ff3ff3a0d5c48b1f07a SHA512 656f62db4ec7e7ffead58f37bfbdb2d1c21cc70a86e734e67dfc9bd569ffee643679938a7ac2c172f08cadaf5307843eb7fa3406530c3eb67e4ee2cb8abeae80
-DIST asciidoctor-diagram-1.5.18.tar.gz 11705290 BLAKE2B d5c1a6047af1a1a5c1b08ccb180dfa57057213df2f8a9ec8aef6608bc34501aa979cb30c2c8b196e0039be24d8c5ba9e81d902f603e9624402eaa7e93d800169 SHA512 f3341ffd0b9f7eb994b478ebb81f668a30fa338cf76cfba638032d5b80203b304776cee4d1f575270105af9b51dc6d0a80604e92e2ad54760dfa9b73ffa794cb
+DIST asciidoctor-diagram-2.0.5.tar.gz 12482984 BLAKE2B b0ef8596d2f2dfcf11fcbba876141aee38e8615195159f76e07b45c00b46bd85824dd6e8e9f571b396bbd9d082c5d60d4e05cdeac27719bfca53216c0d1b1816 SHA512 7e3bfbfb08d7389a039b1727bc173fca82e05134bebd89f3ca65d5e7860555034ff5e785c32e55ea2cc9826343456c6ecdfa15fc76f4d94858461356ab3ced71
+DIST asciidoctor-diagram-2.2.11.tar.gz 15488606 BLAKE2B e0080ecafafcaef72ae1ca449d4ea2d4b69b1550d62cacb514350da047952adbddc0c9f48081fe7acae7f174c6b910c297357ef57df09c0c5a379a3332eb38e8 SHA512 233d2940516fa28863e53b7e4f43851256fdcc83e92fc5d4eafdc2e820a8040473c89f7f01397bdb26b6c4fbd9e6fcb576156c4abd949660ade37d152c8e5e40
+DIST asciidoctor-diagram-2.2.12.tar.gz 14093006 BLAKE2B 2f2349c6694c35ea74bfc74e145eb2f34a422354e1ad4bc87b23bda66443ced7b14ccbce3b015d545fd84d89a6aee44c0c98743b9410c0a460571c83ca1c03ca SHA512 0a960a0f48bd1c129b218f0b70686f7d2f5745f84e484e3152e2532c51bf2987bbefec4cef06d579de1c881545ecdc34a607a00ad1af09ed748c7c66571570ac
+DIST asciidoctor-diagram-2.2.14.tar.gz 14085153 BLAKE2B b62fbbc0ba5a5c53a92b1c9cd7d20047a0e6f4ec71ff7daeab379c3be2546b105b900e7fa6c49f00f6320de2087115d5944b9df9be443ad60cc0d330d5b12234 SHA512 8e343726788e61fa6846d756911f3df9ef276f706ec2668e7d74fc7b5b2cf3c8984f1d5031af5d8d2c55260f3bebf981d0bcd5dd1c032e504b32bee167cb626e
diff --git a/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.14.ebuild b/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.14.ebuild
deleted file mode 100644
index c7e2499f4e01..000000000000
--- a/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.14.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc LICENSE.txt README.adoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A set of Asciidoctor extensions that enable you to add diagrams"
-HOMEPAGE="https://github.com/asciidoctor/asciidoctor-diagram"
-SRC_URI="https://github.com/asciidoctor/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "=dev-ruby/asciidoctor-1.5*"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/c.formatter/ s:^:#:' spec/test_helper.rb || die
-
- # Avoid specs for unpackaged tools
- rm -f spec/{a2s,blockdiag,erd,mermaid,msc,nomnoml,shaape,svgbob,syntrax,umlet,vega,wavedrom}_spec.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-}
diff --git a/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.16.ebuild b/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.16.ebuild
deleted file mode 100644
index 1db88d5f006f..000000000000
--- a/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.16.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc LICENSE.txt README.adoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A set of Asciidoctor extensions that enable you to add diagrams"
-HOMEPAGE="https://github.com/asciidoctor/asciidoctor-diagram"
-SRC_URI="https://github.com/asciidoctor/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/asciidoctor-1.5.0 <dev-ruby/asciidoctor-3"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/c.formatter/ s:^:#:' spec/test_helper.rb || die
-
- # Avoid specs for unpackaged tools
- rm -f spec/{a2s,blockdiag,erd,mermaid,msc,nomnoml,shaape,svgbob,syntrax,umlet,vega,wavedrom}_spec.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-}
diff --git a/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.17.ebuild b/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.17.ebuild
deleted file mode 100644
index bda3f3cf2bb2..000000000000
--- a/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.17.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc LICENSE.txt README.adoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A set of Asciidoctor extensions that enable you to add diagrams"
-HOMEPAGE="https://github.com/asciidoctor/asciidoctor-diagram"
-SRC_URI="https://github.com/asciidoctor/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/asciidoctor-1.5.0 <dev-ruby/asciidoctor-3"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/c.formatter/ s:^:#:' spec/test_helper.rb || die
-
- # Avoid specs for unpackaged tools
- rm -f spec/{a2s,blockdiag,erd,mermaid,msc,nomnoml,shaape,svgbob,syntrax,umlet,vega,wavedrom}_spec.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-}
diff --git a/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.18.ebuild b/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.18.ebuild
deleted file mode 100644
index bda3f3cf2bb2..000000000000
--- a/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-1.5.18.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc LICENSE.txt README.adoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A set of Asciidoctor extensions that enable you to add diagrams"
-HOMEPAGE="https://github.com/asciidoctor/asciidoctor-diagram"
-SRC_URI="https://github.com/asciidoctor/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/asciidoctor-1.5.0 <dev-ruby/asciidoctor-3"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/c.formatter/ s:^:#:' spec/test_helper.rb || die
-
- # Avoid specs for unpackaged tools
- rm -f spec/{a2s,blockdiag,erd,mermaid,msc,nomnoml,shaape,svgbob,syntrax,umlet,vega,wavedrom}_spec.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-}
diff --git a/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.0.5-r1.ebuild b/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.0.5-r1.ebuild
new file mode 100644
index 000000000000..e410dc816a2a
--- /dev/null
+++ b/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.0.5-r1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc LICENSE.txt README.adoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit multilib ruby-fakegem
+
+DESCRIPTION="A set of Asciidoctor extensions that enable you to add diagrams"
+HOMEPAGE="https://github.com/asciidoctor/asciidoctor-diagram"
+SRC_URI="https://github.com/asciidoctor/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+RDEPEND+=" virtual/jre"
+DEPEND+=" test? (
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-latexextra
+ media-gfx/imagemagick[png,postscript]
+ media-gfx/graphviz
+ media-sound/lilypond
+ sci-visualization/gnuplot
+)"
+ruby_add_rdepend ">=dev-ruby/asciidoctor-1.5.7 <dev-ruby/asciidoctor-3"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -i -e '/c.formatter/ s:^:#:' spec/test_helper.rb || die
+
+ # Avoid specs for unpackaged tools
+ rm -f spec/{a2s,blockdiag,bpmn,bytefield,dpic,erd,mermaid,msc,nomnoml,pikchr,shaape,smcat,svgbob,symbolator,syntrax,umlet,vega,wavedrom}_spec.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+}
diff --git a/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.2.11.ebuild b/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.2.11.ebuild
new file mode 100644
index 000000000000..cb24f379e007
--- /dev/null
+++ b/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.2.11.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc LICENSE.txt README.adoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A set of Asciidoctor extensions that enable you to add diagrams"
+HOMEPAGE="https://github.com/asciidoctor/asciidoctor-diagram"
+SRC_URI="https://github.com/asciidoctor/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+RDEPEND+=" virtual/jre"
+DEPEND+=" test? (
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-latexextra
+ media-gfx/imagemagick[png,postscript]
+ media-gfx/graphviz
+ media-sound/lilypond
+ sci-visualization/gnuplot
+)"
+ruby_add_rdepend ">=dev-ruby/asciidoctor-1.5.7 <dev-ruby/asciidoctor-3"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -e '/c.formatter/ s:^:#:' \
+ -e '/logger.*DEBUG/ s:^:#:' \
+ -i spec/test_helper_methods.rb || die
+
+ # Remove some diagram dependencies that contains vendored code and
+ # are currently not packaged. Please file a bug if you have a need
+ # for these diagram types.
+ sed -i -e '/\(ditaamini\|plantuml\)/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid specs for unpackaged tools
+ rm -f spec/{a2s,barcode,blockdiag,bpmn,bytefield,d2,dbml,diagrams,ditaa,dpic,erd,graphviz_py,mermaid,msc,nomnoml,pikchr,plantuml,shaape,smcat,structurizr,svgbob,symbolator,syntrax,umlet,vega,wavedrom}_spec.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+}
diff --git a/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.2.12.ebuild b/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.2.12.ebuild
new file mode 100644
index 000000000000..cb24f379e007
--- /dev/null
+++ b/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.2.12.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc LICENSE.txt README.adoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A set of Asciidoctor extensions that enable you to add diagrams"
+HOMEPAGE="https://github.com/asciidoctor/asciidoctor-diagram"
+SRC_URI="https://github.com/asciidoctor/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+RDEPEND+=" virtual/jre"
+DEPEND+=" test? (
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-latexextra
+ media-gfx/imagemagick[png,postscript]
+ media-gfx/graphviz
+ media-sound/lilypond
+ sci-visualization/gnuplot
+)"
+ruby_add_rdepend ">=dev-ruby/asciidoctor-1.5.7 <dev-ruby/asciidoctor-3"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -e '/c.formatter/ s:^:#:' \
+ -e '/logger.*DEBUG/ s:^:#:' \
+ -i spec/test_helper_methods.rb || die
+
+ # Remove some diagram dependencies that contains vendored code and
+ # are currently not packaged. Please file a bug if you have a need
+ # for these diagram types.
+ sed -i -e '/\(ditaamini\|plantuml\)/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid specs for unpackaged tools
+ rm -f spec/{a2s,barcode,blockdiag,bpmn,bytefield,d2,dbml,diagrams,ditaa,dpic,erd,graphviz_py,mermaid,msc,nomnoml,pikchr,plantuml,shaape,smcat,structurizr,svgbob,symbolator,syntrax,umlet,vega,wavedrom}_spec.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+}
diff --git a/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.2.14.ebuild b/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.2.14.ebuild
new file mode 100644
index 000000000000..e8cf9c986fda
--- /dev/null
+++ b/dev-ruby/asciidoctor-diagram/asciidoctor-diagram-2.2.14.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc LICENSE.txt README.adoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A set of Asciidoctor extensions that enable you to add diagrams"
+HOMEPAGE="https://github.com/asciidoctor/asciidoctor-diagram"
+SRC_URI="https://github.com/asciidoctor/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# Supported backends dictionary: <backend-name> <dependencies> <removal-function>
+# backend-name: The name of the USE flag, a gem spec file in ./spec, a
+# directory in ./lib/asciidoctor-diagram/, and a require directive in
+# ./lib/asciidoctor.rb which will be removed if the former is unset.
+# dependencies: Dependencies for RDEPEND if the USE flag is set, and for
+# DEPEND if the "test" USE flag is set.
+# removal-function: Additional commands to evaluate, if the USE flag is unset.
+#
+# NB: Do not implicitly use functions following a naming scheme instead
+# of an explicit <removal-function> to prevent accidental or malicious
+# injection from functions exported in the parent environment.
+backend_dict_stride=3
+backends=(
+ "barcode" "dev-ruby/rqrcode dev-ruby/barby" ""
+ "ditaa" "media-gfx/ditaa" "remove_ditaa"
+ "gnuplot" "sci-visualization/gnuplot" ""
+ "graphviz" "media-gfx/graphviz" ""
+ "lilypond" "media-sound/lilypond" ""
+ "meme" "media-gfx/imagemagick[png]" ""
+ "mscgen" "media-gfx/mscgen[png]" ""
+ "plantuml" "media-gfx/plantuml" "remove_plantuml"
+ "tikz" "dev-tex/pgf" ""
+)
+
+remove_plantuml() {
+ rm -f "spec/salt.rb"
+ sed -i "/\\/salt'/d" "lib/asciidoctor-diagram.rb"
+ sed -i "/plantuml/d" "asciidoctor-diagram.gemspec"
+}
+
+remove_ditaa() {
+ sed -i "/ditaa/d" "asciidoctor-diagram.gemspec"
+}
+
+IUSE=""
+DEPEND+="test? ("
+
+i=0
+while (( i < ${#backends[@]} ))
+do
+ backend="${backends[i]}"
+ deps="${backends[i+1]}"
+
+ IUSE+=" $backend"
+ RDEPEND+=" $backend? ( $deps )"
+ DEPEND+=" $deps"
+
+ ((i+=backend_dict_stride))
+done
+
+DEPEND+=" )"
+
+ruby_add_rdepend ">=dev-ruby/asciidoctor-1.5.7 <dev-ruby/asciidoctor-3 dev-ruby/rexml"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -e '/c.formatter/ s:^:#:' \
+ -e '/logger.*DEBUG/ s:^:#:' \
+ -i spec/test_helper_methods.rb || die
+
+ # Delete everything related to unsupported backends. Obtain list of backends from spec/
+ for spec in spec/*_spec.rb
+ do
+ backend="${spec##spec/}"
+ backend="${backend%%_spec.rb}"
+
+ backend_index=0
+
+ get_backend_index() {
+ local i=0
+ while (( i < ${#backends[@]} ))
+ do
+ if [[ "${backends[i]}" == "$backend" ]]
+ then
+ echo "$i"
+ return 1
+ fi
+ ((i+=backend_dict_stride))
+ done
+ }
+
+ if backend_index="$(get_backend_index)" || ! use "$backend"
+ then
+ rm -f "spec/${backend}_spec.rb"
+ rm -Rf "lib/asciidoctor-diagram/"{"$backend.rb","$backend"}
+ sed -i "/\\/$backend'/d" "lib/asciidoctor-diagram.rb"
+ removal="${backends[backend_index+2]}"
+ if [[ "$removal" ]]
+ then
+ "$removal"
+ fi
+ fi
+ done
+}
+
+all_ruby_install() {
+ all_fakegem_install
+}
diff --git a/dev-ruby/asciidoctor-diagram/metadata.xml b/dev-ruby/asciidoctor-diagram/metadata.xml
index 29233bd3cd26..da8316aae3c5 100644
--- a/dev-ruby/asciidoctor-diagram/metadata.xml
+++ b/dev-ruby/asciidoctor-diagram/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
@@ -8,4 +8,13 @@
<upstream>
<remote-id type="github">asciidoctor/asciidoctor-diagram</remote-id>
</upstream>
+ <use>
+ <flag name="barcode">Enable diagrams with <pkg>dev-ruby/rqrcode</pkg> and <pkg>dev-ruby/barby</pkg></flag>
+ <flag name="ditaa">Enable diagrams with <pkg>media-gfx/ditaa</pkg></flag>
+ <flag name="lilypond">Enable diagrams with <pkg>media-sound/lilypond</pkg></flag>
+ <flag name="meme">Enable diagrams with <pkg>media-gfx/imagemagick</pkg></flag>
+ <flag name="mscgen">Enable diagrams with <pkg>media-gfx/mscgen</pkg></flag>
+ <flag name="plantuml">Enable diagrams with <pkg>media-gfx/plantuml</pkg></flag>
+ <flag name="tikz">Enable diagrams with <pkg>dev-tex/pgf</pkg></flag>
+ </use>
</pkgmetadata>
diff --git a/dev-ruby/asciidoctor/Manifest b/dev-ruby/asciidoctor/Manifest
index 1a0c16951435..1fd855716cb5 100644
--- a/dev-ruby/asciidoctor/Manifest
+++ b/dev-ruby/asciidoctor/Manifest
@@ -1,4 +1,3 @@
-DIST asciidoctor-1.5.8.tar.gz 583484 BLAKE2B f0c654c5e43a0ed061dbf80eb382fac1ea393870c7c2530649a5a41f1a5bd5e72ffb11e8ad8dd2925510e18f4528079ae532b623e6e7f38a119565df01139f58 SHA512 3f767cdf945361d81b0a89137fb1e77377cbb4171da790027cbb9cd8cf1deb03f24a8ec780b427b7bce34538e851a44682515fbaccf8558d61e22356b9d216dd
-DIST asciidoctor-2.0.10.tar.gz 613180 BLAKE2B 46125c85276eb0c7cf4404ca04d854449233e2cd14e24687aed9f95eb64ceb6ebac3d3ed73918679b9a5b047e41d82d02383d0e08acd0df5cc9bc216f14c79a3 SHA512 9ef908081569188d9903c7a7619fe0b50197f6f0cc922c4070e116bcd3f988a55da87443e84b6e260aabcc653a804fcaf29b96a722ab36f7ebb27ec11eb7ddbe
-DIST asciidoctor-2.0.7.tar.gz 609712 BLAKE2B 261732ef068d7382870ef2b0f194e3b97c61d1f3db1800a7ad0acc24f53e803b35cc5e12eb55b8cbe6727d0d472d7e4e496afb26bf60ee3d49d9a163f3e8292d SHA512 e79a76d97edc804153ec461a5f8482e1322bfc6b268b168e80617f06e5f114dbae6d703cb2f11c43ecb8b678fa11f22dbeb80aaf6daf34940683a31925e52927
-DIST asciidoctor-2.0.9.tar.gz 611530 BLAKE2B 48f3c3447bacf009dbdf1529780a60fd144bd18951991623319dc30c1009e96dc28f84a7dab38431d1efc0a9f09494aae3e83f6b5959d5684fb167731826e07b SHA512 17e9358bc98f34f1b8dab4781b48705acf6afa0aaa0c8dcd22183bf3d5a275e0afff96d7ecae140e908894e18a54c5b693acd6826f68892a99ec3dd0a4ea61e7
+DIST asciidoctor-2.0.18.tar.gz 1690964 BLAKE2B 5e14371c7201f83529fa28a63b031599ebf53fda62b4701942f134e7f1dae923a07676aafeac4c5e1fc3c25b6e9044b34b9b2e5b07491f1ca8e68076aa02301b SHA512 b47b377520046d95101fc9bcd3defdf7219714ebadc0d069cb108d39a349fcf1abd1e61178e1515f75bb69e9e3d0f8cb2de67de5a0f8aa75fdd139d693c0e437
+DIST asciidoctor-2.0.20.tar.gz 1700888 BLAKE2B 0b09610cc4a642eacd608bfbe8054c9358aca908adba088a21deceb25374fa4796a53a619957c9974fcb576016ce6573c891b39a6c6d66aa73585cd637310ff0 SHA512 b6b730de8f83e36630dc6146b4c0e07a26b502b695e78e50fc87790391126d52ef0b6b02b82ecb225adff680c94305b4e31403cc067bdbf1740e2d759417f440
+DIST asciidoctor-2.0.22.tar.gz 1707063 BLAKE2B 2e1e00f9e972e58453e731e84dc176bb9d1ef7b08e47986d9a892b53a8b29fe583de193ab8baa882b60a941fb095d8253054674d15107a4fd2ef66eff1fc41e9 SHA512 8c610e3710543334707e7f8c269d061c0e7a499d6840413a84b21ebb7909f78782942f38e831858b0dc8824f39da3da9e6e97734774e58bc64cab2b41d96d222
diff --git a/dev-ruby/asciidoctor/asciidoctor-1.5.8.ebuild b/dev-ruby/asciidoctor/asciidoctor-1.5.8.ebuild
deleted file mode 100644
index b37428a5020c..000000000000
--- a/dev-ruby/asciidoctor/asciidoctor-1.5.8.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST="test features"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc README.adoc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Processor for converting AsciiDoc into HTML 5, DocBook 4.5 and other formats"
-HOMEPAGE="https://github.com/asciidoctor/asciidoctor"
-SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm ~arm64 hppa ppc ppc64 x86"
-IUSE=""
-
-ruby_add_bdepend "test? (
- dev-util/cucumber
- dev-ruby/rspec-expectations:*
- dev-ruby/asciimath
- dev-ruby/coderay
- dev-ruby/erubis
- dev-ruby/haml
- dev-ruby/nokogiri
- dev-ruby/slim
- dev-ruby/thread_safe
- dev-ruby/tilt )"
-
-all_ruby_prepare() {
- rm Gemfile || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- doman man/asciidoctor.1
-}
diff --git a/dev-ruby/asciidoctor/asciidoctor-2.0.10.ebuild b/dev-ruby/asciidoctor/asciidoctor-2.0.10.ebuild
deleted file mode 100644
index 2bbfe037e9be..000000000000
--- a/dev-ruby/asciidoctor/asciidoctor-2.0.10.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test features"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc README.adoc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Processor for converting AsciiDoc into HTML 5, DocBook 4.5 and other formats"
-HOMEPAGE="https://github.com/asciidoctor/asciidoctor"
-SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? (
- dev-util/cucumber
- dev-ruby/rspec-expectations:*
- dev-ruby/asciimath
- dev-ruby/coderay
- dev-ruby/erubis
- dev-ruby/haml
- dev-ruby/nokogiri
- dev-ruby/slim
- dev-ruby/thread_safe
- dev-ruby/tilt )"
-
-all_ruby_prepare() {
- rm Gemfile || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- doman man/asciidoctor.1
-}
diff --git a/dev-ruby/asciidoctor/asciidoctor-2.0.18-r1.ebuild b/dev-ruby/asciidoctor/asciidoctor-2.0.18-r1.ebuild
new file mode 100644
index 000000000000..2ed8b6ee1b63
--- /dev/null
+++ b/dev-ruby/asciidoctor/asciidoctor-2.0.18-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="CUCUMBER_PUBLISH_QUIET=true test features"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc README.adoc"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+RUBY_FAKEGEM_GEMSPEC="asciidoctor.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Processor for converting AsciiDoc into HTML 5, DocBook 4.5 and other formats"
+HOMEPAGE="https://github.com/asciidoctor/asciidoctor"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? (
+ dev-util/cucumber
+ dev-ruby/rspec-expectations:*
+ dev-ruby/asciimath
+ dev-ruby/coderay
+ dev-ruby/concurrent-ruby
+ dev-ruby/erubi
+ dev-ruby/haml:6
+ dev-ruby/nokogiri
+ dev-ruby/rouge
+ dev-ruby/slim
+ dev-ruby/tilt )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.0.18-haml-6.patch
+ "${FILESDIR}"/${PN}-2.0.18-ruby32.patch
+)
+
+all_ruby_prepare() {
+ rm Gemfile || die
+
+ sed -i -e "s:_relative ': './:" ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid broken blocks_test.rb (already appears to be fixed upstream)
+ rm -f test/blocks_test.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ doman man/asciidoctor.1
+}
diff --git a/dev-ruby/asciidoctor/asciidoctor-2.0.18.ebuild b/dev-ruby/asciidoctor/asciidoctor-2.0.18.ebuild
new file mode 100644
index 000000000000..459e77a3e9a5
--- /dev/null
+++ b/dev-ruby/asciidoctor/asciidoctor-2.0.18.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_TASK_TEST="CUCUMBER_PUBLISH_QUIET=true test features"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc README.adoc"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+RUBY_FAKEGEM_GEMSPEC="asciidoctor.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Processor for converting AsciiDoc into HTML 5, DocBook 4.5 and other formats"
+HOMEPAGE="https://github.com/asciidoctor/asciidoctor"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv x86"
+IUSE=""
+
+ruby_add_bdepend "test? (
+ dev-util/cucumber
+ dev-ruby/rspec-expectations:*
+ dev-ruby/asciimath
+ dev-ruby/coderay
+ dev-ruby/concurrent-ruby
+ dev-ruby/erubi
+ dev-ruby/haml
+ dev-ruby/nokogiri
+ dev-ruby/rouge
+ dev-ruby/slim
+ dev-ruby/tilt )"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+
+ sed -i -e "s:_relative ': './:" ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid broken blocks_test.rb (already appears to be fixed upstream)
+ rm -f test/blocks_test.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ doman man/asciidoctor.1
+}
diff --git a/dev-ruby/asciidoctor/asciidoctor-2.0.20.ebuild b/dev-ruby/asciidoctor/asciidoctor-2.0.20.ebuild
new file mode 100644
index 000000000000..bd6c662a73d7
--- /dev/null
+++ b/dev-ruby/asciidoctor/asciidoctor-2.0.20.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="CUCUMBER_PUBLISH_QUIET=true test features"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc README.adoc"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+RUBY_FAKEGEM_GEMSPEC="asciidoctor.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Processor for converting AsciiDoc into HTML 5, DocBook 4.5 and other formats"
+HOMEPAGE="https://github.com/asciidoctor/asciidoctor"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm arm64 ~hppa ppc ppc64 ~riscv ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? (
+ dev-util/cucumber
+ dev-ruby/rspec-expectations:*
+ dev-ruby/asciimath
+ dev-ruby/coderay
+ dev-ruby/concurrent-ruby
+ dev-ruby/erubi
+ dev-ruby/haml:6
+ dev-ruby/nokogiri
+ dev-ruby/rouge
+ dev-ruby/slim
+ dev-ruby/tilt )"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+
+ sed -i -e "s:_relative ': './:" ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid broken blocks_test.rb (already appears to be fixed upstream)
+ rm -f test/blocks_test.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ doman man/asciidoctor.1
+}
diff --git a/dev-ruby/asciidoctor/asciidoctor-2.0.22.ebuild b/dev-ruby/asciidoctor/asciidoctor-2.0.22.ebuild
new file mode 100644
index 000000000000..dbbcfc8b9eae
--- /dev/null
+++ b/dev-ruby/asciidoctor/asciidoctor-2.0.22.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="CUCUMBER_PUBLISH_QUIET=true test features"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc README.adoc"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+RUBY_FAKEGEM_GEMSPEC="asciidoctor.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Processor for converting AsciiDoc into HTML 5, DocBook 4.5 and other formats"
+HOMEPAGE="https://github.com/asciidoctor/asciidoctor"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? (
+ dev-util/cucumber
+ dev-ruby/rspec-expectations:*
+ dev-ruby/asciimath
+ dev-ruby/coderay
+ dev-ruby/concurrent-ruby
+ dev-ruby/erubi
+ dev-ruby/haml:6
+ dev-ruby/nokogiri
+ dev-ruby/rouge
+ dev-ruby/slim
+ dev-ruby/tilt )"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+
+ sed -i -e "s:_relative ': './:" ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid broken blocks_test.rb (already appears to be fixed upstream)
+ rm -f test/blocks_test.rb || die
+
+ # Avoid test depending on haml 6 binary which we currently don't install.
+ sed -e '/should \(load\|locate\) custom templates/askip "wrong haml binary"' \
+ -i test/invoker_test.rb || die
+
+ # Add missing require for URI
+ sed -e "/nokogiri/arequire 'uri'" \
+ -i test/test_helper.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ doman man/asciidoctor.1
+}
diff --git a/dev-ruby/asciidoctor/asciidoctor-2.0.7.ebuild b/dev-ruby/asciidoctor/asciidoctor-2.0.7.ebuild
deleted file mode 100644
index d5f86a08b529..000000000000
--- a/dev-ruby/asciidoctor/asciidoctor-2.0.7.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST="test features"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc README.adoc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Processor for converting AsciiDoc into HTML 5, DocBook 4.5 and other formats"
-HOMEPAGE="https://github.com/asciidoctor/asciidoctor"
-SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? (
- dev-util/cucumber
- dev-ruby/rspec-expectations:*
- dev-ruby/asciimath
- dev-ruby/coderay
- dev-ruby/erubis
- dev-ruby/haml
- dev-ruby/nokogiri
- dev-ruby/slim
- dev-ruby/thread_safe
- dev-ruby/tilt )"
-
-all_ruby_prepare() {
- rm Gemfile || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- doman man/asciidoctor.1
-}
diff --git a/dev-ruby/asciidoctor/asciidoctor-2.0.9.ebuild b/dev-ruby/asciidoctor/asciidoctor-2.0.9.ebuild
deleted file mode 100644
index 2bbfe037e9be..000000000000
--- a/dev-ruby/asciidoctor/asciidoctor-2.0.9.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test features"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc README.adoc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Processor for converting AsciiDoc into HTML 5, DocBook 4.5 and other formats"
-HOMEPAGE="https://github.com/asciidoctor/asciidoctor"
-SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? (
- dev-util/cucumber
- dev-ruby/rspec-expectations:*
- dev-ruby/asciimath
- dev-ruby/coderay
- dev-ruby/erubis
- dev-ruby/haml
- dev-ruby/nokogiri
- dev-ruby/slim
- dev-ruby/thread_safe
- dev-ruby/tilt )"
-
-all_ruby_prepare() {
- rm Gemfile || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- doman man/asciidoctor.1
-}
diff --git a/dev-ruby/asciidoctor/files/asciidoctor-2.0.18-haml-6.patch b/dev-ruby/asciidoctor/files/asciidoctor-2.0.18-haml-6.patch
new file mode 100644
index 000000000000..b6896999f838
--- /dev/null
+++ b/dev-ruby/asciidoctor/files/asciidoctor-2.0.18-haml-6.patch
@@ -0,0 +1,130 @@
+https://sources.debian.org/patches/asciidoctor/2.0.18-2/0001-Port-tests-to-haml-6.patch/ (backport)
+https://github.com/asciidoctor/asciidoctor/pull/4395
+
+From 25ee484dd66cc813eaa421d1c104ae64478e51ff Mon Sep 17 00:00:00 2001
+From: Antonio Terceiro <terceiro@debian.org>
+Date: Mon, 26 Dec 2022 13:11:36 -0300
+Subject: [PATCH] Port tests to haml 6
+
+Forwarded: https://github.com/asciidoctor/asciidoctor/pull/4395
+Fixes: #4382
+--- a/asciidoctor.gemspec
++++ b/asciidoctor.gemspec
+@@ -38,7 +38,7 @@ Gem::Specification.new do |s|
+ s.add_development_dependency 'cucumber', '~> 3.1.0'
+ # erubi is needed for testing alternate eRuby impls
+ s.add_development_dependency 'erubi', '~> 1.10.0'
+- s.add_development_dependency 'haml', '~> 5.2.0'
++ s.add_development_dependency 'haml', '~> 6.1'
+ s.add_development_dependency 'minitest', '~> 5.14.0'
+ s.add_development_dependency 'nokogiri', '~> 1.10.0'
+ s.add_development_dependency 'rake', '~> 12.3.0'
+--- a/lib/asciidoctor/converter/template.rb
++++ b/lib/asciidoctor/converter/template.rb
+@@ -29,7 +29,7 @@ class Converter::TemplateConverter < Con
+ erb: { trim: 0 },
+ # TODO line 466 of haml/compiler.rb sorts the attributes; file an issue to make this configurable
+ # NOTE AsciiDoc syntax expects HTML/XML output to use double quotes around attribute values
+- haml: { format: :xhtml, attr_wrapper: '"', escape_attrs: false, ugly: true },
++ haml: { format: :xhtml, attr_quote: '"', escape_attrs: false, ugly: true },
+ slim: { disable_escape: true, sort_attrs: false, pretty: false },
+ }
+
+--- a/test/converter_test.rb
++++ b/test/converter_test.rb
+@@ -9,7 +9,7 @@ context 'Converter' do
+ assert_kind_of Asciidoctor::Converter::CompositeConverter, doc.converter
+ selected = doc.converter.find_converter('paragraph')
+ assert_kind_of Asciidoctor::Converter::TemplateConverter, selected
+- assert_kind_of Tilt::HamlTemplate, selected.templates['paragraph']
++ assert_kind_of Haml::Template, selected.templates['paragraph']
+ assert_equal :html5, selected.templates['paragraph'].options[:format]
+ end
+
+@@ -18,7 +18,7 @@ context 'Converter' do
+ assert_kind_of Asciidoctor::Converter::CompositeConverter, doc.converter
+ selected = doc.converter.find_converter('paragraph')
+ assert_kind_of Asciidoctor::Converter::TemplateConverter, selected
+- assert_kind_of Tilt::HamlTemplate, selected.templates['paragraph']
++ assert_kind_of Haml::Template, selected.templates['paragraph']
+ assert_equal :xhtml, selected.templates['paragraph'].options[:format]
+ end
+
+@@ -95,7 +95,7 @@ context 'Converter' do
+ %w(paragraph sidebar).each do |node_name|
+ selected = doc.converter.find_converter node_name
+ assert_kind_of Asciidoctor::Converter::TemplateConverter, selected
+- assert_kind_of Tilt::HamlTemplate, selected.templates[node_name]
++ assert_kind_of Haml::Template, selected.templates[node_name]
+ assert_equal %(block_#{node_name}.html.haml), File.basename(selected.templates[node_name].file)
+ end
+ end
+@@ -126,7 +126,7 @@ context 'Converter' do
+ %w(paragraph).each do |node_name|
+ selected = doc.converter.find_converter node_name
+ assert_kind_of Asciidoctor::Converter::TemplateConverter, selected
+- assert_kind_of Tilt::HamlTemplate, selected.templates[node_name]
++ assert_kind_of Haml::Template, selected.templates[node_name]
+ assert_equal %(block_#{node_name}.xml.haml), File.basename(selected.templates[node_name].file)
+ end
+ end
+@@ -215,7 +215,7 @@ context 'Converter' do
+ refute_empty caches[:templates]
+ paragraph_template = caches[:templates].values.find {|t| File.basename(t.file) == 'block_paragraph.html.haml' }
+ refute_nil paragraph_template
+- assert_kind_of ::Tilt::HamlTemplate, paragraph_template
++ assert_kind_of Haml::Template, paragraph_template
+ end
+
+ test 'should be able to disable template cache' do
+--- a/test/fixtures/custom-backends/haml/docbook5/block_paragraph.xml.haml
++++ b/test/fixtures/custom-backends/haml/docbook5/block_paragraph.xml.haml
+@@ -1,6 +1,6 @@
+ - if title?
+ %formalpara{'xml:id'=>@id, role: (attr :role), xreflabel: (attr :reftext)}
+- %title=title
+- %para=content
++ %title!=title
++ %para!=content
+ - else
+- %para{'xml:id'=>@id, role: (attr :role), xreflabel: (attr :reftext)}=content
++ %para{'xml:id'=>@id, role: (attr :role), xreflabel: (attr :reftext)}!=content
+--- a/test/fixtures/custom-backends/haml/html5-tweaks/block_paragraph.html.haml
++++ b/test/fixtures/custom-backends/haml/html5-tweaks/block_paragraph.html.haml
+@@ -1 +1 @@
+-%p=content
++%p!=content
+--- a/test/fixtures/custom-backends/haml/html5-tweaks/embedded.html.haml
++++ b/test/fixtures/custom-backends/haml/html5-tweaks/embedded.html.haml
+@@ -1 +1 @@
+-=content
++!=content
+--- a/test/fixtures/custom-backends/haml/html5/block_paragraph.html.haml
++++ b/test/fixtures/custom-backends/haml/html5/block_paragraph.html.haml
+@@ -1,3 +1,3 @@
+ - if title?
+- .title=title
+-%p{id: @id, class: (attr 'role')}=content
++ .title!=title
++%p{id: @id, class: (attr 'role')}!=content
+--- a/test/fixtures/custom-backends/haml/html5/block_sidebar.html.haml
++++ b/test/fixtures/custom-backends/haml/html5/block_sidebar.html.haml
+@@ -1,5 +1,5 @@
+ %aside{id: @id, class: (attr 'role')}
+ - if title?
+ %header
+- %h1=title
+- =content.chomp
++ %h1!=title
++ !=content.chomp
+--- a/test/invoker_test.rb
++++ b/test/invoker_test.rb
+@@ -616,7 +616,7 @@ context 'Invoker' do
+ assert_kind_of Asciidoctor::Converter::CompositeConverter, doc.converter
+ selected = doc.converter.find_converter 'paragraph'
+ assert_kind_of Asciidoctor::Converter::TemplateConverter, selected
+- assert_kind_of Tilt::HamlTemplate, selected.templates['paragraph']
++ assert_kind_of Haml::Template, selected.templates['paragraph']
+ end
+
+ test 'should load custom templates from multiple template directories' do
diff --git a/dev-ruby/asciidoctor/files/asciidoctor-2.0.18-ruby32.patch b/dev-ruby/asciidoctor/files/asciidoctor-2.0.18-ruby32.patch
new file mode 100644
index 000000000000..86e577c796ec
--- /dev/null
+++ b/dev-ruby/asciidoctor/files/asciidoctor-2.0.18-ruby32.patch
@@ -0,0 +1,29 @@
+https://github.com/asciidoctor/asciidoctor/commit/b3c05398b1b4b483fe5f9c9ef89dc772863cf6f1
+https://src.fedoraproject.org/rpms/rubygem-asciidoctor/raw/rawhide/f/0001-resolves-4390-fix-call-order-so-use-of-an-include-fi.patch
+
+From b3c05398b1b4b483fe5f9c9ef89dc772863cf6f1 Mon Sep 17 00:00:00 2001
+From: Dan Allen <dan.j.allen@gmail.com>
+Date: Mon, 20 Feb 2023 23:47:59 -0700
+Subject: [PATCH] resolves #4390 fix call order so use of an include file with
+ invalid encoding continues to raise error when using Ruby >= 3.2.0
+
+--- a/lib/asciidoctor/reader.rb
++++ b/lib/asciidoctor/reader.rb
+@@ -1197,15 +1197,16 @@ def preprocess_include_directive target, attrlist
+ push_include inc_lines, inc_path, relpath, inc_offset, parsed_attrs
+ end
+ else
++ inc_content = nil
+ begin
+ # NOTE read content before shift so cursor is only advanced if IO operation succeeds
+ inc_content = reader.call(inc_path, read_mode) {|f| f.read }
+ shift
+- push_include inc_content, inc_path, relpath, 1, parsed_attrs
+ rescue
+ logger.error message_with_context %(include #{target_type} not readable: #{inc_path}), source_location: cursor
+ return replace_next_line %(Unresolved directive in #{@path} - include::#{expanded_target}[#{attrlist}])
+ end
++ push_include inc_content, inc_path, relpath, 1, parsed_attrs
+ end
+ true
+ end
diff --git a/dev-ruby/asciidoctor/metadata.xml b/dev-ruby/asciidoctor/metadata.xml
index 7108bba489a1..95751954dca2 100644
--- a/dev-ruby/asciidoctor/metadata.xml
+++ b/dev-ruby/asciidoctor/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/asciimath/Manifest b/dev-ruby/asciimath/Manifest
index 2a7653bce772..c79628711c21 100644
--- a/dev-ruby/asciimath/Manifest
+++ b/dev-ruby/asciimath/Manifest
@@ -1,4 +1 @@
-DIST asciimath-1.0.4.gem 14336 BLAKE2B 84aac2d2b987f72a17288cee6d00197c429e04c216fad62ecd23b5f3eebe9590ead519df86cdaf99246dcfee4c18bab67176a0d47a1b864de6e44bdb4b90b70c SHA512 e99e6f869dda3e0236392039e6dccf5912b095e32ee7acbfb4684a5d723d05f4d3c9961554d5beab2a3d703b1ef50c45ed15c0dbda2179ab35d3b1b6b8759b49
-DIST asciimath-1.0.6.gem 17920 BLAKE2B ccd35f77f7ff9312baf1de81d9c1c15009e9efea7be000ed2afad86b06697bb967980baab1f04a73503cd374c062d68ba99d6e42528ffe3d1c16a8f768813f7f SHA512 cecfdeb063e0dd2da9c92ec4ac51d30334d19f10ca2cde9380c740e61a1be435793bd5e6ae7795d1c4147056faaef0d44ea422b6ff8207cb11c8125422872f24
-DIST asciimath-1.0.7.gem 18432 BLAKE2B 9f1b959d594987f049f3e17394a305e037cbf4aa86c7c21324cb5f1f7a2a06c361fbf56cee5488ab0c8bbbac8f3a581f11a5e5a2407b36d28c4b4a106051df3c SHA512 3b2e5894fed09919e2576054dceecd70fc255bf414dbd826ccdda71cd69875c204c4d4d2ed85777612a4919a975b1a2427ff83cacb2720dee1d6f53c1f8fd079
-DIST asciimath-1.0.8.gem 18432 BLAKE2B 2877b387ca3da2d657d78e134296ec621b839688843f94428f7bb64d74625bd6a0a3f533bb5a832510ec64c789b43338f48fb13b0ac561c308b15172e5fb4e6d SHA512 02717069498bb8f6757c3411be1c16473363f4d69f82fdd6075cdee740ecbd742e6a6e97b22355adc8657e5df166834106c9cd8482336ffeff76debc2b0d45a5
+DIST asciimath-2.0.5.gem 60928 BLAKE2B ba81e68f4ae529dab80a40e5d268137af743d8c01f22c84c39c91102bea0b2293871158d157f19bd4213a59b5808a26a5d99697d79750b8a3fc39436426979f2 SHA512 05328306e0b750baf49eb090b02d3e840e58a764ed96dc511fc9fd1b7c3fd0b49e0be0d3300acadd809c0b2860fa2ad873e979711d6725e1420782395c5a2185
diff --git a/dev-ruby/asciimath/asciimath-1.0.4.ebuild b/dev-ruby/asciimath/asciimath-1.0.4.ebuild
deleted file mode 100644
index 324c7d22e113..000000000000
--- a/dev-ruby/asciimath/asciimath-1.0.4.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc README.adoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A pure Ruby AsciiMath parsing and conversion library"
-HOMEPAGE="https://github.com/pepijnve/asciimath"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="amd64 arm ~arm64 hppa ppc ppc64 ~sparc x86"
-IUSE=""
-
-RUBY_PATCHES=( ${P}-backslashes.patch )
diff --git a/dev-ruby/asciimath/asciimath-1.0.6.ebuild b/dev-ruby/asciimath/asciimath-1.0.6.ebuild
deleted file mode 100644
index 106e42369786..000000000000
--- a/dev-ruby/asciimath/asciimath-1.0.6.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc README.adoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A pure Ruby AsciiMath parsing and conversion library"
-HOMEPAGE="https://github.com/pepijnve/asciimath"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
diff --git a/dev-ruby/asciimath/asciimath-1.0.7.ebuild b/dev-ruby/asciimath/asciimath-1.0.7.ebuild
deleted file mode 100644
index 2d1cf1b320b9..000000000000
--- a/dev-ruby/asciimath/asciimath-1.0.7.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc README.adoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A pure Ruby AsciiMath parsing and conversion library"
-HOMEPAGE="https://github.com/pepijnve/asciimath"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
diff --git a/dev-ruby/asciimath/asciimath-1.0.8.ebuild b/dev-ruby/asciimath/asciimath-1.0.8.ebuild
deleted file mode 100644
index 2d1cf1b320b9..000000000000
--- a/dev-ruby/asciimath/asciimath-1.0.8.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc README.adoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A pure Ruby AsciiMath parsing and conversion library"
-HOMEPAGE="https://github.com/pepijnve/asciimath"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
diff --git a/dev-ruby/asciimath/asciimath-2.0.5.ebuild b/dev-ruby/asciimath/asciimath-2.0.5.ebuild
new file mode 100644
index 000000000000..d47558a02368
--- /dev/null
+++ b/dev-ruby/asciimath/asciimath-2.0.5.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.adoc README.adoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A pure Ruby AsciiMath parsing and conversion library"
+HOMEPAGE="https://github.com/asciidoctor/asciimath"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/nokogiri )"
diff --git a/dev-ruby/asciimath/files/asciimath-1.0.4-backslashes.patch b/dev-ruby/asciimath/files/asciimath-1.0.4-backslashes.patch
deleted file mode 100644
index 9bf08ce34046..000000000000
--- a/dev-ruby/asciimath/files/asciimath-1.0.4-backslashes.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From 1c06fdc8086077f4785479f78b0823a4a72d7948 Mon Sep 17 00:00:00 2001
-From: Pepijn Van Eeckhoudt <pepijn@vaneeckhoudt.net>
-Date: Thu, 12 May 2016 18:02:45 +0200
-Subject: [PATCH] Remove spurious backslashes
-
----
- spec/parser_spec.rb | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/spec/parser_spec.rb b/spec/parser_spec.rb
-index def78e0..3fa5a75 100644
---- a/spec/parser_spec.rb
-+++ b/spec/parser_spec.rb
-@@ -45,7 +45,7 @@
- '"Скорость"=("Расстояние")/("Время")' =>
- '<math><mtext>Скорость</mtext><mo>=</mo><mfrac><mtext>Расстояние</mtext><mtext>Время</mtext></mfrac></math>',
- 'bb (a + b) + cc c = fr (d^n)' =>
-- '<math><mstyle mathvariant=\"bold\"><mrow><mi>a</mi><mo>+</mo><mi>b</mi></mrow></mstyle><mo>+</mo><mstyle mathvariant=\"script\"><mi>c</mi></mstyle><mo>=</mo><mstyle mathvariant=\"fraktur\"><msup><mi>d</mi><mi>n</mi></msup></mstyle></math>'
-+ '<math><mstyle mathvariant="bold"><mrow><mi>a</mi><mo>+</mo><mi>b</mi></mrow></mstyle><mo>+</mo><mstyle mathvariant="script"><mi>c</mi></mstyle><mo>=</mo><mstyle mathvariant="fraktur"><msup><mi>d</mi><mi>n</mi></msup></mstyle></math>'
- }
-
- version = RUBY_VERSION.split('.').map { |s| s.to_i }
diff --git a/dev-ruby/asciimath/metadata.xml b/dev-ruby/asciimath/metadata.xml
index 87c3111c694b..2d4ed20e31b5 100644
--- a/dev-ruby/asciimath/metadata.xml
+++ b/dev-ruby/asciimath/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">pepijnve/asciimath</remote-id>
+ <remote-id type="github">asciidoctor/asciimath</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ast/Manifest b/dev-ruby/ast/Manifest
index ad9128a011f8..5bc099efa228 100644
--- a/dev-ruby/ast/Manifest
+++ b/dev-ruby/ast/Manifest
@@ -1 +1 @@
-DIST ast-2.4.0.gem 15360 BLAKE2B 1d68fa8137bf2a158e8b2e0f30d3d803791db7fcb397133681cd2ffb57badebe6f9afd792a7cf3907dc1fa3e3a617fbb0331c85c69e36a46ca49962f30be9979 SHA512 60a0b00103ed57c71907155ee7966127985021e51c1d829e2149c87066504e76fdb955f9717bb19b5627d5b8c44f0d6a165e208900ede2355a47970ee9664b72
+DIST ast-2.4.2.tar.gz 11547 BLAKE2B 2745d0e7b3bea2a2a750aa36f634def78d354ea91a3b795adb84d955e95aa1302ed0a7a4e9df0961b02318b4a70ee7f3e7f509232977c4501cf4d54f8f91f8e9 SHA512 7499625d21b2edd67df4ee9248ccfaf46b77d1d161a8aa70e15f59d055abaf2b988de01c5a078bebcf0f1c0e40858cc51200327e6b6f0bea6cdbbb58c6e3f755
diff --git a/dev-ruby/ast/ast-2.4.0.ebuild b/dev-ruby/ast/ast-2.4.0.ebuild
deleted file mode 100644
index e03024e0a092..000000000000
--- a/dev-ruby/ast/ast-2.4.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library for working with abstract syntax trees"
-HOMEPAGE="https://github.com/whitequark/ast"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? (
- dev-ruby/bacon )"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
- sed -i -e "/git ls/d" ${PN}.gemspec || die
- sed -i -e "/simplecov/,+11d" -e "/colored_output/d" test/helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -S bacon -Itest -a || die
-}
diff --git a/dev-ruby/ast/ast-2.4.2-r1.ebuild b/dev-ruby/ast/ast-2.4.2-r1.ebuild
new file mode 100644
index 000000000000..88e47615e931
--- /dev/null
+++ b/dev-ruby/ast/ast-2.4.2-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="ast.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library for working with abstract syntax trees"
+HOMEPAGE="https://github.com/whitequark/ast"
+SRC_URI="https://github.com/whitequark/ast/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~sparc"
+IUSE=""
+
+ruby_add_bdepend "test? (
+ dev-ruby/bacon )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile || die
+ sed -i -e "/git ls/d" ${PN}.gemspec || die
+ sed -i -e "/simplecov/,+11d" -e "/colored_output/d" test/helper.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -S bacon -Itest -a || die
+}
diff --git a/dev-ruby/ast/metadata.xml b/dev-ruby/ast/metadata.xml
index 9f302626b67a..222e683340e8 100644
--- a/dev-ruby/ast/metadata.xml
+++ b/dev-ruby/ast/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/astrolabe/Manifest b/dev-ruby/astrolabe/Manifest
deleted file mode 100644
index 5e0b0913f00e..000000000000
--- a/dev-ruby/astrolabe/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST astrolabe-1.3.1.gem 16384 BLAKE2B 4853c4c9c8fb926c8f58f6c940f22e44e20db7b3b7c853a0ea120657074cb0bfb42b3a22832042fcb27546e2ab3e32c526c93ccd3ea4d43f17c8e0c09fd2fbf8 SHA512 db29d26559e4adb82e4a25a3b7d3df94fcb9847dbd65abdb25abd0181b60af2e0fe0021bb8193c5f94d58e074da06de3d1f7170cb341ac675e3c3ab39ba95bef
diff --git a/dev-ruby/astrolabe/astrolabe-1.3.1.ebuild b/dev-ruby/astrolabe/astrolabe-1.3.1.ebuild
deleted file mode 100644
index bd2189775844..000000000000
--- a/dev-ruby/astrolabe/astrolabe-1.3.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An object-oriented AST extension for Parser"
-HOMEPAGE="https://github.com/yujinakayama/astrolabe"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/parser-2.2.0_pre3"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
- # Fix Specs until RSpec3 is available
- sed -i -e "/mocks.verify_partial_doubles/ s/^/#/" spec/spec_helper.rb || die
- sed -i -e "s/is_expected.to/should/" spec/astrolabe/node_spec.rb || die
-}
diff --git a/dev-ruby/astrolabe/metadata.xml b/dev-ruby/astrolabe/metadata.xml
deleted file mode 100644
index ca98a067c345..000000000000
--- a/dev-ruby/astrolabe/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">yujinakayama/astrolabe</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/async-container/Manifest b/dev-ruby/async-container/Manifest
new file mode 100644
index 000000000000..baad17a8a916
--- /dev/null
+++ b/dev-ruby/async-container/Manifest
@@ -0,0 +1,5 @@
+DIST async-container-0.16.12.tar.gz 22626 BLAKE2B 8e850ebededcc0110a8ddf79c23287d816973fee1c32b7e7b76a7158995ffca5476d8701b3b4499aa3c0fd023ee9f253e4d07bc9ad0562a32d529678d0569701 SHA512 d71bdd1dc22a7ebecd4fed7e17b28c9ae1c875e111db4fb9cddda3508113e3cb7fc72b820c447cac27f047606d20f62180b203e58164da18dc47cff385262441
+DIST async-container-0.16.13.tar.gz 24969 BLAKE2B 94345cff96924994b07bb70db48064122c32cf07a65736a7db709087c0f4f9bd06c3810a1b04e4d4625ebfccb6c595188e96c64025822ac318ba636a98f85a82 SHA512 c36d98eb99c65eada8463b5b95c81ffb7e80d898edea823e9e45a3dd657f81e7cc291a79b267bf26fba577b4b86844ed70c74d55c684c09da9e6f950516878a7
+DIST async-container-0.17.0.tar.gz 25019 BLAKE2B 713caa99e9649fd45dee53bf13fad75178a7f8a880f940ec422c17d3c1402099b75b70cf0c2bd93c9cbd84fc576df881559a2f6ab16e47ef780d83650c5eb66e SHA512 48b109c75b45796c95fcd938538aea8c3c829520496e58d06f1c047d83a2c3950c38fc004dcda425b42d85c626b8bbd1d3784ae23911b786fc576b13ffc6af88
+DIST async-container-0.17.1.tar.gz 25024 BLAKE2B da7d268dd7f8c599068f6f588c966866d5ea495d0f6112317f8910cb3e4974826915f9cdc3847faf09306ea01ed00cb1ced77b5197b58bbc44d584d05b1758e5 SHA512 5f57760820a621e303205bfa134da59ebbde3c017e71bf2a9bce8a511937b83060939798a9682c6eb15f99a4be657dc18cc8a5fc5f260ea8427ce2d6d70f6e44
+DIST async-container-0.18.0.tar.gz 25787 BLAKE2B 8c0d41a884231136bca19161e6d49074d0ad2571c323ff5120ce848bb7cdfbd5971724a17a6b3537c32f71731067ac2a61149d4eeb1c11e69c0f7c934a4f2412 SHA512 b7bc90173032fb6b4875d8e300748ebbf42f6088cb3c9a5249ac79c6f9cee9b4542c106e6a5f775b990e62778dd779048212f734bcec4d7cdf3dbfc7301d40cf
diff --git a/dev-ruby/async-container/async-container-0.16.12-r1.ebuild b/dev-ruby/async-container/async-container-0.16.12-r1.ebuild
new file mode 100644
index 000000000000..bcbdcd405842
--- /dev/null
+++ b/dev-ruby/async-container/async-container-0.16.12-r1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Abstract container-based parallelism using threads and processes"
+HOMEPAGE="https://github.com/socketry/async-container"
+SRC_URI="https://github.com/socketry/async-container/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/async
+ dev-ruby/async-io"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ >=dev-ruby/async-rspec-1.1:1
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # spec/async/container/notify/pipe_spec.rb directly executes "bundler" command,
+ # so we can't just wipe out gems.rb as usual. also must remove covered from gemspec
+ # for this reason.
+ sed -i -E 's/gem ".+"//g' "gems.rb" || die
+ sed -i -e '/spec.add_development_dependency "covered"/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid test dependency on unpackaged covered
+ sed -i -e '/covered/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/async-container/async-container-0.16.13.ebuild b/dev-ruby/async-container/async-container-0.16.13.ebuild
new file mode 100644
index 000000000000..f5d1fac12ae8
--- /dev/null
+++ b/dev-ruby/async-container/async-container-0.16.13.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Abstract container-based parallelism using threads and processes"
+HOMEPAGE="https://github.com/socketry/async-container"
+SRC_URI="https://github.com/socketry/async-container/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/async
+ dev-ruby/async-io"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ >=dev-ruby/async-rspec-1.1:1
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # spec/async/container/notify/pipe_spec.rb directly executes "bundler" command,
+ # so we can't just wipe out gems.rb as usual. also must remove covered from gemspec
+ # for this reason.
+ sed -i -E 's/gem ".+"//g' "gems.rb" || die
+ sed -i -e '/spec.add_development_dependency "covered"/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid test dependency on unpackaged covered
+ rm -f config/sus.rb || die
+}
diff --git a/dev-ruby/async-container/async-container-0.17.0.ebuild b/dev-ruby/async-container/async-container-0.17.0.ebuild
new file mode 100644
index 000000000000..f5d1fac12ae8
--- /dev/null
+++ b/dev-ruby/async-container/async-container-0.17.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Abstract container-based parallelism using threads and processes"
+HOMEPAGE="https://github.com/socketry/async-container"
+SRC_URI="https://github.com/socketry/async-container/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/async
+ dev-ruby/async-io"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ >=dev-ruby/async-rspec-1.1:1
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # spec/async/container/notify/pipe_spec.rb directly executes "bundler" command,
+ # so we can't just wipe out gems.rb as usual. also must remove covered from gemspec
+ # for this reason.
+ sed -i -E 's/gem ".+"//g' "gems.rb" || die
+ sed -i -e '/spec.add_development_dependency "covered"/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid test dependency on unpackaged covered
+ rm -f config/sus.rb || die
+}
diff --git a/dev-ruby/async-container/async-container-0.17.1.ebuild b/dev-ruby/async-container/async-container-0.17.1.ebuild
new file mode 100644
index 000000000000..f5d1fac12ae8
--- /dev/null
+++ b/dev-ruby/async-container/async-container-0.17.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Abstract container-based parallelism using threads and processes"
+HOMEPAGE="https://github.com/socketry/async-container"
+SRC_URI="https://github.com/socketry/async-container/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/async
+ dev-ruby/async-io"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ >=dev-ruby/async-rspec-1.1:1
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # spec/async/container/notify/pipe_spec.rb directly executes "bundler" command,
+ # so we can't just wipe out gems.rb as usual. also must remove covered from gemspec
+ # for this reason.
+ sed -i -E 's/gem ".+"//g' "gems.rb" || die
+ sed -i -e '/spec.add_development_dependency "covered"/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid test dependency on unpackaged covered
+ rm -f config/sus.rb || die
+}
diff --git a/dev-ruby/async-container/async-container-0.18.0.ebuild b/dev-ruby/async-container/async-container-0.18.0.ebuild
new file mode 100644
index 000000000000..f5d1fac12ae8
--- /dev/null
+++ b/dev-ruby/async-container/async-container-0.18.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Abstract container-based parallelism using threads and processes"
+HOMEPAGE="https://github.com/socketry/async-container"
+SRC_URI="https://github.com/socketry/async-container/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/async
+ dev-ruby/async-io"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ >=dev-ruby/async-rspec-1.1:1
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # spec/async/container/notify/pipe_spec.rb directly executes "bundler" command,
+ # so we can't just wipe out gems.rb as usual. also must remove covered from gemspec
+ # for this reason.
+ sed -i -E 's/gem ".+"//g' "gems.rb" || die
+ sed -i -e '/spec.add_development_dependency "covered"/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid test dependency on unpackaged covered
+ rm -f config/sus.rb || die
+}
diff --git a/dev-ruby/async-container/metadata.xml b/dev-ruby/async-container/metadata.xml
new file mode 100644
index 000000000000..4f03304084d0
--- /dev/null
+++ b/dev-ruby/async-container/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">socketry/async-container</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/async-io/Manifest b/dev-ruby/async-io/Manifest
new file mode 100644
index 000000000000..c8b269bcbe9e
--- /dev/null
+++ b/dev-ruby/async-io/Manifest
@@ -0,0 +1,5 @@
+DIST async-io-1.37.0.tar.gz 41344 BLAKE2B a0b71d4747c7b56a6662aa45813f3ee82b539cb3f5133f1f4469bb57fe61e261e5d111ec01b96f0515858a355e43f8441442d7005bc284ae24a4902ea97dcf36 SHA512 5a631bbc79409959b95acff67a5d7de667e0361b02279b3cc98e2cc1a1baf4a8e6ea61998c6ecf5ae71658445d83a63dde8e8e4a29173de388b3b7ae0675b884
+DIST async-io-1.38.1.tar.gz 41362 BLAKE2B 9160f464a8aca07e33f60f48d3bfcce2d11bfdadccb0254cbc481ac3ac9285be66569507b7afdc7083a95d08a91d916083df31e266d42464be20ebfaa811754d SHA512 2515fb0a0493a44acb65715f1df06567fe3c6461d6e4de1c72c37a028227c37aefafd87b06560a9c1dd7d9fbc2df412ebcdebf3276e8ff48c9331aff1f1300a0
+DIST async-io-1.41.0.tar.gz 41428 BLAKE2B 21d0e900f5aaf4c1b8e3a00032833f244d6a1715637a887809e2dee839b33f29b403a0b714a1392d05a4aeade959f2162d0b434bd235a66f1f2b92a9e0e45e39 SHA512 7b87b08f6dddc1e1e27a5d4c29e0d08ffbbdacc30bba4878cdd8f7afe588c0ecae7efc22f1d0cc66d0488d02559ecf7278c860838877ab7500cb7a173c441e92
+DIST async-io-1.42.0.tar.gz 41535 BLAKE2B a8c44fea9f70dbe32ef4efd0063540da41108b3cb5ae30614a6301b27cde7de2ea402423ea469193c37dc616463a92c480e779609ccc85893e9b590e324f7dea SHA512 d35516fffbbc486865b05f7d95a693caf95dc935e5b56801f1fceed49678f8537d840b4fcaebf5b50dfcc523a5fbc8cb9929e62658252c6e9d8ab143be3ba21d
+DIST async-io-1.42.1.tar.gz 39405 BLAKE2B d64a643ad1fd4f8f9ca1e090fd19793a254f5392366f2d0a93cb63bdabbf8ea60a24ca5ab389d1b6ed1353b06713a7430e64eec89c0fc9c4dc847e87e5bcf31f SHA512 039dd1dc4b93c9cdec591b435a2834727580df6f1569956b310e1566ada1932b29fbc39515ba8bae862fb2970e3d91cbbc90d4fc3b197f8381acf6d5cdf4f2a5
diff --git a/dev-ruby/async-io/async-io-1.37.0.ebuild b/dev-ruby/async-io/async-io-1.37.0.ebuild
new file mode 100644
index 000000000000..f5bd9fe9db57
--- /dev/null
+++ b/dev-ruby/async-io/async-io-1.37.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRA_DOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides support for asynchronous TCP, UDP, UNIX and SSL sockets"
+HOMEPAGE="https://github.com/socketry/async-io"
+SRC_URI="https://github.com/socketry/async-io/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/async"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/async-container-0.15:0
+ >=dev-ruby/async-rspec-1.10:1
+ dev-ruby/rack-test
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid test dependency on covered
+ sed -i -e '/covered/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/async-io/async-io-1.38.1.ebuild b/dev-ruby/async-io/async-io-1.38.1.ebuild
new file mode 100644
index 000000000000..a63a9576595f
--- /dev/null
+++ b/dev-ruby/async-io/async-io-1.38.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRA_DOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides support for asynchronous TCP, UDP, UNIX and SSL sockets"
+HOMEPAGE="https://github.com/socketry/async-io"
+SRC_URI="https://github.com/socketry/async-io/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/async"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/async-container-0.15:0
+ >=dev-ruby/async-rspec-1.10:1
+ dev-ruby/rack-test
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid test dependency on covered
+ sed -i -e '/covered/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/async-io/async-io-1.41.0.ebuild b/dev-ruby/async-io/async-io-1.41.0.ebuild
new file mode 100644
index 000000000000..b67f9f17f798
--- /dev/null
+++ b/dev-ruby/async-io/async-io-1.41.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRA_DOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides support for asynchronous TCP, UDP, UNIX and SSL sockets"
+HOMEPAGE="https://github.com/socketry/async-io"
+SRC_URI="https://github.com/socketry/async-io/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/async"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/async-2.8.1:2
+ >=dev-ruby/async-container-0.15:0
+ >=dev-ruby/async-rspec-1.10:1
+ dev-ruby/rack-test
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid test dependency on covered
+ sed -i -e '/covered/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/async-io/async-io-1.42.0.ebuild b/dev-ruby/async-io/async-io-1.42.0.ebuild
new file mode 100644
index 000000000000..b67f9f17f798
--- /dev/null
+++ b/dev-ruby/async-io/async-io-1.42.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRA_DOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides support for asynchronous TCP, UDP, UNIX and SSL sockets"
+HOMEPAGE="https://github.com/socketry/async-io"
+SRC_URI="https://github.com/socketry/async-io/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/async"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/async-2.8.1:2
+ >=dev-ruby/async-container-0.15:0
+ >=dev-ruby/async-rspec-1.10:1
+ dev-ruby/rack-test
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid test dependency on covered
+ sed -i -e '/covered/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/async-io/async-io-1.42.1.ebuild b/dev-ruby/async-io/async-io-1.42.1.ebuild
new file mode 100644
index 000000000000..6d5424851bb8
--- /dev/null
+++ b/dev-ruby/async-io/async-io-1.42.1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRA_DOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides support for asynchronous TCP, UDP, UNIX and SSL sockets"
+HOMEPAGE="https://github.com/socketry/async-io"
+SRC_URI="https://github.com/socketry/async-io/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/async"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/async-2.8.1:2
+ >=dev-ruby/async-container-0.15:0
+ >=dev-ruby/async-rspec-1.10:1
+ dev-ruby/rack-test
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid test dependency on covered
+ sed -i -e '/covered/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/async-io/metadata.xml b/dev-ruby/async-io/metadata.xml
new file mode 100644
index 000000000000..2b591f89a8e8
--- /dev/null
+++ b/dev-ruby/async-io/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">socketry/async-io</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/async-process/Manifest b/dev-ruby/async-process/Manifest
new file mode 100644
index 000000000000..f94fae72a921
--- /dev/null
+++ b/dev-ruby/async-process/Manifest
@@ -0,0 +1 @@
+DIST async-process-1.3.1.tar.gz 4138 BLAKE2B 8c3b3109e016e135005dd25db96fb2d38c568ce88410ca8d1c22cfd23ea8f34f926447cb36a75d3a60fa11d8bb08cab6b46e45d88b8a42f2585e7ab0c6179c81 SHA512 13f6ded2f9001c8759350b6ade002703f3ba58dcc2960055c5e52c7e44c22af9c59c69713c55cb7e7244a7f09e3557a75f41161a7aafd5f6c279f4bdbb698e3c
diff --git a/dev-ruby/async-process/async-process-1.3.1.ebuild b/dev-ruby/async-process/async-process-1.3.1.ebuild
new file mode 100644
index 000000000000..09f289d15d43
--- /dev/null
+++ b/dev-ruby/async-process/async-process-1.3.1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Abstract container-based parallelism using threads and processes"
+HOMEPAGE="https://github.com/socketry/async-process"
+SRC_URI="https://github.com/socketry/async-process/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/async
+ dev-ruby/async-io"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/async-rspec-1.1:1
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ rm gems.rb || die
+
+ # Avoid test dependency on unpackaged covered
+ sed -i -e '/covered/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/async-process/metadata.xml b/dev-ruby/async-process/metadata.xml
new file mode 100644
index 000000000000..2944dc126e0b
--- /dev/null
+++ b/dev-ruby/async-process/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">socketry/async-process</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/async-rspec/Manifest b/dev-ruby/async-rspec/Manifest
new file mode 100644
index 000000000000..16d43ad063e0
--- /dev/null
+++ b/dev-ruby/async-rspec/Manifest
@@ -0,0 +1 @@
+DIST async-rspec-1.17.0.tar.gz 9536 BLAKE2B a2beeca8b6399f47faef35eaad70255cfd3ef0e691d40c20389b4683e179172694b6c8b93bd786e4032171f7000f3f77da46f6a1e73a3abacd64f3a2a6e84b24 SHA512 50cc0390aa8c636c7964de07a9dec9c8e6ed72562b93ddd0e1e9e0af0b58e9b198bfd8e709f84e9ea1b58268d00ad26c85bdacb920cf5c81597d4011751c7507
diff --git a/dev-ruby/async-rspec/async-rspec-1.17.0.ebuild b/dev-ruby/async-rspec/async-rspec-1.17.0.ebuild
new file mode 100644
index 000000000000..0527e83117e3
--- /dev/null
+++ b/dev-ruby/async-rspec/async-rspec-1.17.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Helpers for writing specs against the async gem"
+HOMEPAGE="https://github.com/socketry/async-rspec"
+SRC_URI="https://github.com/socketry/async-rspec/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/rspec:3
+ dev-ruby/rspec-files:1
+ dev-ruby/rspec-memory:1
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/async
+ dev-ruby/async-io
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid dependency on unpackaged covered
+ sed -i -e '/covered/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/async-rspec/metadata.xml b/dev-ruby/async-rspec/metadata.xml
new file mode 100644
index 000000000000..e5fb9fc23587
--- /dev/null
+++ b/dev-ruby/async-rspec/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">socketry/async-rspec</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/async/Manifest b/dev-ruby/async/Manifest
new file mode 100644
index 000000000000..75e603ab6d62
--- /dev/null
+++ b/dev-ruby/async/Manifest
@@ -0,0 +1,6 @@
+DIST async-1.31.0.tar.gz 92889 BLAKE2B b573e3106243fd0934387254b302f541a9ebbcd34bd451562bab1d39bcd37c593e2290667b524db7bc862268812a0932a644c670cbaf2a4a5ee240a866e08726 SHA512 f60fb9f4e95d1f579ce5f664abfe96b7196e3e47baf2856b7e97815107e0aa2e807c969839d118b6144372443687568488749547d762863b31d82c8d7e5d45ac
+DIST async-2.6.2.tar.gz 86923 BLAKE2B ef1a840bd52c3713268582260a00855061fc3ee2d05fb67a2de44f9012dc419745eeac0522fb06e9689860ed23bf5dbb8280f796e645d992d1a98da7cfb4279c SHA512 627f490360d96e9ef8cfb5dc5ea929a1574cdfa6db91fcbfe5b14f6e475e03c750b2806b8d13025425b969ed44944debdcf6d573bc95eafe80a6056a0550707b
+DIST async-2.6.5.tar.gz 93305 BLAKE2B fbceff6b20eaf10a922f9993c73157cd3790263e1540167715012e39a2223f2d5e8549e7f9949d3851fdf8120763b24b468b904e668aec2927c5c2028101c1d9 SHA512 839eea7d0113d879acd1d85da4d0119c0698b8bdfe36a24450a24c2fb2151cfa4cd8987aea663ba51ff52a078693cb1ee7e0f3ac805aebf91655f3e279842caf
+DIST async-2.8.0.tar.gz 92095 BLAKE2B e9d2356071ccdcf4f0025e4a449c78bf6ae31bf0841c286a48c18f94f3c09147ba6c4da6f737fe011b3066730180f2aff3ab03efe8b61b33d05ea1d28ae6c276 SHA512 80d31531e1b830b499a4c9cac41867a8836b3a339154336363ef397dd67c41c27d0b667e2754efba65fa88e03b81d48ce9ac5c17ce1e0bd8080af1ffc9873fa2
+DIST async-2.8.1.tar.gz 92272 BLAKE2B c1f30f99c6f1ce22f6181663eae1e1ebdc9a949d059dad3ef89227bc2788b48d403be7a4986f38e177a2cb85b0a4861ba965e3b0754582fcd4436b8dc97eef4c SHA512 dee8e2116efcfbf7f174228ef7f535b5a1218a10fd646bb7877ea8f1f9caff77dbe286ce0ff4a195e5f96cd72e61baa25e2655e5f0fcba4fadca5fcabcbf386c
+DIST async-2.8.2.tar.gz 92610 BLAKE2B d120a0b136d6ce2855840576543ec7d50a88da5a78789aa8954faedf3a980a94fecd78bcec79a8abd88767ba336215977d8c2d2439a05840698b6dd989ecc4df SHA512 d43ee9f69eb3ca6ef9af118d45de1410c60d125cb1bd7d8e2c39fd51061d00dad34bcbd1afeb816b9d241a2b793ddc41677ea8e3ee004affcbf12480f89a9c2c
diff --git a/dev-ruby/async/async-1.31.0.ebuild b/dev-ruby/async/async-1.31.0.ebuild
new file mode 100644
index 000000000000..68317a242f1b
--- /dev/null
+++ b/dev-ruby/async/async-1.31.0.ebuild
@@ -0,0 +1,44 @@
+# 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_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A concurrency framework for Ruby"
+HOMEPAGE="https://github.com/socketry/async"
+SRC_URI="https://github.com/socketry/async/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/console-1.10:1
+ >=dev-ruby/nio4r-2.3:2
+ >=dev-ruby/timers-4.1:4"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/async-rspec-1.1:1
+ dev-ruby/benchmark-ips
+)"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-improve-robustness-test.patch
+)
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid network tests
+ sed -i -e '/can fetch website using Net::HTTP/askip "requires network"' spec/async/scheduler_spec.rb || die
+
+ # Avoid test dependency on unpackaged covered
+ sed -i -e '/covered/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/async/async-2.6.2.ebuild b/dev-ruby/async/async-2.6.2.ebuild
new file mode 100644
index 000000000000..e1b10d5c4895
--- /dev/null
+++ b/dev-ruby/async/async-2.6.2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# It really is >=ruby31 only, see:
+# https://github.com/socketry/async/issues/141
+# https://github.com/socketry/async/issues/136
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A concurrency framework for Ruby"
+HOMEPAGE="https://github.com/socketry/async"
+SRC_URI="https://github.com/socketry/async/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+
+ruby_add_rdepend "
+ >=dev-ruby/console-1.10:1
+ dev-ruby/fiber-annotation
+ dev-ruby/io-event:1.1
+ >=dev-ruby/timers-4.1:4
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/benchmark-ips
+ dev-ruby/sus-fixtures-async
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # network tests
+ rm test/net/http.rb \
+ test/async/scheduler/address.rb \
+ test/async/scheduler/io.rb || die
+
+ sed -i -e '/covered/Id' config/sus.rb || die
+}
diff --git a/dev-ruby/async/async-2.6.5.ebuild b/dev-ruby/async/async-2.6.5.ebuild
new file mode 100644
index 000000000000..05b46d97cf15
--- /dev/null
+++ b/dev-ruby/async/async-2.6.5.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A concurrency framework for Ruby"
+HOMEPAGE="https://github.com/socketry/async"
+SRC_URI="https://github.com/socketry/async/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_rdepend "
+ >=dev-ruby/console-1.10:1
+ dev-ruby/fiber-annotation
+ dev-ruby/io-event:1.1
+ >=dev-ruby/timers-4.1:4
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/benchmark-ips
+ dev-ruby/sus-fixtures-async
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # network tests
+ rm test/net/http.rb \
+ test/async/scheduler/address.rb \
+ test/async/scheduler/io.rb || die
+
+ sed -i -e '/covered/Id' config/sus.rb || die
+}
diff --git a/dev-ruby/async/async-2.8.0.ebuild b/dev-ruby/async/async-2.8.0.ebuild
new file mode 100644
index 000000000000..6a5daa5e4abb
--- /dev/null
+++ b/dev-ruby/async/async-2.8.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A concurrency framework for Ruby"
+HOMEPAGE="https://github.com/socketry/async"
+SRC_URI="https://github.com/socketry/async/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_rdepend "
+ >=dev-ruby/console-1.10:1
+ dev-ruby/fiber-annotation
+ dev-ruby/io-event:1
+ >=dev-ruby/timers-4.1:4
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/benchmark-ips
+ dev-ruby/sus-fixtures-async
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # network tests
+ rm test/net/http.rb \
+ test/async/scheduler/address.rb \
+ test/async/scheduler/io.rb || die
+
+ sed -i -e '/covered/Id' config/sus.rb || die
+}
diff --git a/dev-ruby/async/async-2.8.1.ebuild b/dev-ruby/async/async-2.8.1.ebuild
new file mode 100644
index 000000000000..6a5daa5e4abb
--- /dev/null
+++ b/dev-ruby/async/async-2.8.1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A concurrency framework for Ruby"
+HOMEPAGE="https://github.com/socketry/async"
+SRC_URI="https://github.com/socketry/async/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_rdepend "
+ >=dev-ruby/console-1.10:1
+ dev-ruby/fiber-annotation
+ dev-ruby/io-event:1
+ >=dev-ruby/timers-4.1:4
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/benchmark-ips
+ dev-ruby/sus-fixtures-async
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # network tests
+ rm test/net/http.rb \
+ test/async/scheduler/address.rb \
+ test/async/scheduler/io.rb || die
+
+ sed -i -e '/covered/Id' config/sus.rb || die
+}
diff --git a/dev-ruby/async/async-2.8.2.ebuild b/dev-ruby/async/async-2.8.2.ebuild
new file mode 100644
index 000000000000..6a5daa5e4abb
--- /dev/null
+++ b/dev-ruby/async/async-2.8.2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A concurrency framework for Ruby"
+HOMEPAGE="https://github.com/socketry/async"
+SRC_URI="https://github.com/socketry/async/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_rdepend "
+ >=dev-ruby/console-1.10:1
+ dev-ruby/fiber-annotation
+ dev-ruby/io-event:1
+ >=dev-ruby/timers-4.1:4
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/benchmark-ips
+ dev-ruby/sus-fixtures-async
+)"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # network tests
+ rm test/net/http.rb \
+ test/async/scheduler/address.rb \
+ test/async/scheduler/io.rb || die
+
+ sed -i -e '/covered/Id' config/sus.rb || die
+}
diff --git a/dev-ruby/async/files/async-1.31.0-improve-robustness-test.patch b/dev-ruby/async/files/async-1.31.0-improve-robustness-test.patch
new file mode 100644
index 000000000000..240fe060e224
--- /dev/null
+++ b/dev-ruby/async/files/async-1.31.0-improve-robustness-test.patch
@@ -0,0 +1,49 @@
+https://github.com/socketry/async/commit/8f590415c08943372e0227f01d3c32e92dbcbed0
+https://github.com/socketry/async/issues/218
+
+From 8f590415c08943372e0227f01d3c32e92dbcbed0 Mon Sep 17 00:00:00 2001
+From: Samuel Williams <samuel.williams@oriontransfer.co.nz>
+Date: Sun, 12 Mar 2023 20:33:48 +1300
+Subject: [PATCH] Improve robustness of test, fixes #218.
+
+--- a/spec/async/semaphore_spec.rb
++++ b/spec/async/semaphore_spec.rb
+@@ -62,7 +62,7 @@
+ 3.times.map do |i|
+ semaphore.async do |task|
+ order << i
+- task.sleep(0.1)
++ task.yield
+ order << i
+ end
+ end.collect(&:result)
+@@ -72,17 +72,22 @@
+
+ it 'allows tasks to execute concurrently' do
+ semaphore = Async::Semaphore.new(3)
+- order = []
++ concurrency = 0
++ latch = Async::Condition.new
+
+ 3.times.map do |i|
+ semaphore.async do |task|
+- order << i
+- task.sleep(0.1)
+- order << i
++ concurrency += 1
++
++ if concurrency == 3
++ latch.signal
++ else
++ latch.wait
++ end
+ end
+- end.collect(&:result)
++ end.each(&:wait)
+
+- expect(order).to be == [0, 1, 2, 0, 1, 2]
++ expect(concurrency).to be == 3
+ end
+ end
+
+
diff --git a/dev-ruby/async/metadata.xml b/dev-ruby/async/metadata.xml
new file mode 100644
index 000000000000..c7864b34a68a
--- /dev/null
+++ b/dev-ruby/async/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">socketry/async</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/async_sinatra/Manifest b/dev-ruby/async_sinatra/Manifest
deleted file mode 100644
index cedb8d72b112..000000000000
--- a/dev-ruby/async_sinatra/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST async_sinatra-1.3.0-git.tgz 8657 BLAKE2B ba41b01a9ad00794f19273d41cceaf80ae5159e38f93c1907db5fae78d5d2f5d6d583f31ff495722b3a241f7e0d2d91c5b3202fe5a8ff39f500e6ab0e1e0030b SHA512 2975e41557da539e1b6427a43d41811f4e17315c01da8d1141dbdafad68702395bfce011844b8b1db2c24bbf19d09b5e680cd10e039ceaab1263ea66bcb8f9f6
diff --git a/dev-ruby/async_sinatra/async_sinatra-1.3.0.ebuild b/dev-ruby/async_sinatra/async_sinatra-1.3.0.ebuild
deleted file mode 100644
index 56b8161d7dc7..000000000000
--- a/dev-ruby/async_sinatra/async_sinatra-1.3.0.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Asynchronous response API for Sinatra and Thin"
-HOMEPAGE="https://github.com/raggi/async_sinatra"
-SRC_URI="https://github.com/raggi/async_sinatra/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_bdepend "test? (
- >=dev-ruby/hoe-3.13
- >=dev-ruby/minitest-5.6:5
- >=dev-ruby/eventmachine-0.12.11
- dev-ruby/rake
- dev-ruby/rack-test
- )"
-
-ruby_add_rdepend ">=dev-ruby/sinatra-1.3.2
- >=dev-ruby/rack-1.4.1:*"
-
-each_ruby_test() {
- MT_NO_PLUGINS=true ${RUBY} -S rake test || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}/
- doins -r examples || die "Failed to install examples"
-}
diff --git a/dev-ruby/async_sinatra/metadata.xml b/dev-ruby/async_sinatra/metadata.xml
deleted file mode 100644
index f2640c217a7e..000000000000
--- a/dev-ruby/async_sinatra/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">raggi/async_sinatra</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/atomic/Manifest b/dev-ruby/atomic/Manifest
deleted file mode 100644
index 8d151b413621..000000000000
--- a/dev-ruby/atomic/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST atomic-1.1.101.gem 17920 BLAKE2B 50f4efc215293e931380b6307231279b3c5ca055aa8082fee8575963a68b3d54262449bf45fb1a514dab18f53a1dd9e0467a0f7ac67dea7a45fcce09155721dd SHA512 59c82fa5ec984b7ecd97964ea075ea327511fd4e71cc5ac72d3fb573b777c9fb289f462d022ea1e0256b38dc369c9f7fa7a61b7af877bd06ec94252237111e8d
diff --git a/dev-ruby/atomic/atomic-1.1.101.ebuild b/dev-ruby/atomic/atomic-1.1.101.ebuild
deleted file mode 100644
index 0d8b2bf69aa2..000000000000
--- a/dev-ruby/atomic/atomic-1.1.101.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="An atomic reference implementation for JRuby, Rubinius, and MRI"
-HOMEPAGE="https://github.com/headius/ruby-atomic"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ppc ppc64 x86"
-IUSE=""
-
-all_ruby_prepare() {
- # Avoid compilation dependencies since we compile directly.
- sed -i -e '/:test => :compile/ s:^:#:' \
- -e '/extensiontask/,/end/ s:^:#:' Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext
- cp ext/atomic_reference$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/atomic/metadata.xml b/dev-ruby/atomic/metadata.xml
deleted file mode 100644
index a478e049f78f..000000000000
--- a/dev-ruby/atomic/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">headius/ruby-atomic</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/autoprefixer-rails/Manifest b/dev-ruby/autoprefixer-rails/Manifest
index dc4ee123a7bd..0ae87a413f45 100644
--- a/dev-ruby/autoprefixer-rails/Manifest
+++ b/dev-ruby/autoprefixer-rails/Manifest
@@ -1,5 +1,3 @@
-DIST autoprefixer-rails-7.2.6.gem 196608 BLAKE2B 0f9224fbf765877b1b7414c68fc39a6587514d27fb5290e1a623db8dcdcbf6f668b66ddd0133906a97e63e877b8201168a45520a9919dc756021d5a7cffc0d38 SHA512 37b3f245291711f92ab9e264491637e753afb95e52f9fd4e2bda6655cd781b2d031934f3379cabdd5589bdf57b780d0727f2fff1cdf7887ca4cc323d23023396
-DIST autoprefixer-rails-8.6.5.gem 208896 BLAKE2B 50e8b8ef3fec9a0bb8d68afa8950989dbf84b58b79b8822e83bf22873c5172c2c514643c31dca88cfec49bd585563eb9b201c621d3ab6707ed0d49c6cd4c8fc8 SHA512 fddabc4d745ad1b4282622a52ab4e36c377eccec85c4e80b3e8d633ffcc2d1613f4fee9e9f2356c85d251e44b0010418029bb278894987119689435ac885e982
-DIST autoprefixer-rails-9.5.1.1.gem 217600 BLAKE2B 188f5a23296d107e068339c0299913f4a9df641d97caedd6f140c39dfa2eab3e7cf76ac4b4ed1c46c0cd424fac1872515e54b7fe8c62285286a6aad292005657 SHA512 d1fe0da0390ac635081327b51350636b58108bd4689f6ed37a03fbdfd8620a7916bbff6818532e58c82d32912935818c476823b6d1839f068c2c171fc405e6c7
-DIST autoprefixer-rails-9.6.1.1.gem 221184 BLAKE2B 62ab4a4666f7996ed5434b472f8bd6ab9273a3de58482be2cdb7ea33e3aa0285e2ae143a01112ccccf9f9b3fc9fa5c0e8f2739643ab0a7737eba206280262045 SHA512 c488e5f932d300cd3b2e029bf2a91390753b8bfb6f8162ec10d63ca899d2152cc5b83eecf60f527016294f10923813232627dcd6da78ad7840d2d425af2a6d67
-DIST autoprefixer-rails-9.6.1.gem 220672 BLAKE2B ac9d3ef36fd438f28029c708e8a3c9df4c4cdb75de39cd73ee5e9e527f099c99691b3f76eac95c821a36d4c86aaf43f6becfa8ede893b6a8b2d8da6acc10737f SHA512 c553ed602d780aff62904f73c99bc56b9d7052de1daa3ee7e28cae59ced1e9111786e63bf2a829409f4be77ac8c4639ab38c73df84f3cd0a047535d9134419fd
+DIST autoprefixer-rails-10.4.13.0.tar.gz 1386370 BLAKE2B a96eb20ebb940a63abf22819e7b2c1727816e4e70cffff5fce3f84c09b783c7f6aac3d6af2483670bbacf4e8032e71f8b144bdc41846464935dbf57fa23d98f5 SHA512 698e8f91875d7fe73d4843cd4dda65b695e3654b9bbf02070a0fd4d61ebf9fb00aaffa8ce63b738dc5d345c5536c79fa985adfa779f47d57412c791e3388cc97
+DIST autoprefixer-rails-10.4.15.0.tar.gz 1205393 BLAKE2B 830b4f145ead0ff143296329682b2c7834a6f5599311e2d770f17db77824944aee8acb066f33e5a1bb63111ad9e37159898be698748af1032bf531e4752c4bf7 SHA512 c8bd0706d3c45406aff016463fc17d422665a396222a8b9f443f12aefd8e3f84b81aa025e7c583f1067f6f23e8eb5f2f5d84f8867e64d4adbe19d47bc3bed71c
+DIST autoprefixer-rails-10.4.16.0.tar.gz 1207675 BLAKE2B 2505dd26a2c4dec18ad6639d3bf18e2e04d0fa47bd4cd12ee51be53efa18bd21f438bff625e3b5b4807dc8a3c5311735c439f74f68cb4cad2ad73bd8aba3c30b SHA512 33f2d5f16fc2d011abb585e028179f073cdc801f880c5da9a08e8ead5470487cec5b28b9dda7c0bfdd9f032984dc6b871e1a16bbe4dbe117e0304e91b3a774b8
diff --git a/dev-ruby/autoprefixer-rails/autoprefixer-rails-10.4.13.0.ebuild b/dev-ruby/autoprefixer-rails/autoprefixer-rails-10.4.13.0.ebuild
new file mode 100644
index 000000000000..9e13d7544c43
--- /dev/null
+++ b/dev-ruby/autoprefixer-rails/autoprefixer-rails-10.4.13.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="vendor"
+
+RUBY_FAKEGEM_GEMSPEC="autoprefixer-rails.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Add vendor prefixes to CSS rules using values from the Can I Use website"
+HOMEPAGE="https://github.com/ai/autoprefixer-rails"
+SRC_URI="https://github.com/ai/autoprefixer-rails/archive/${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+DEPEND+="test? ( net-libs/nodejs )"
+
+ruby_add_rdepend "dev-ruby/execjs"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/rails-5.0.0
+ dev-ruby/rake
+ dev-ruby/rspec-rails
+ dev-ruby/sprockets-rails
+)"
+
+all_ruby_prepare() {
+ sed -i -e "/bundler/d" -e "/BUNDLE/d" spec/app/config/boot.rb || die
+ sed -i -e "/Bundler/ s:^:#:" \
+ -e '/config.sass/ s:^:#:' spec/app/config/application.rb || die
+ rm -f spec/rails_spec.rb || die
+}
diff --git a/dev-ruby/autoprefixer-rails/autoprefixer-rails-10.4.15.0.ebuild b/dev-ruby/autoprefixer-rails/autoprefixer-rails-10.4.15.0.ebuild
new file mode 100644
index 000000000000..8f557b93f687
--- /dev/null
+++ b/dev-ruby/autoprefixer-rails/autoprefixer-rails-10.4.15.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="vendor"
+
+RUBY_FAKEGEM_GEMSPEC="autoprefixer-rails.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Add vendor prefixes to CSS rules using values from the Can I Use website"
+HOMEPAGE="https://github.com/ai/autoprefixer-rails"
+SRC_URI="https://github.com/ai/autoprefixer-rails/archive/${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+DEPEND+="test? ( net-libs/nodejs )"
+
+ruby_add_rdepend "dev-ruby/execjs"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/rails-5.0.0
+ dev-ruby/rake
+ dev-ruby/rspec-rails
+ dev-ruby/sprockets-rails
+)"
+
+all_ruby_prepare() {
+ sed -i -e "/bundler/d" -e "/BUNDLE/d" spec/app/config/boot.rb || die
+ sed -i -e "/Bundler/ s:^:#:" \
+ -e '/config.sass/ s:^:#:' spec/app/config/application.rb || die
+ rm -f spec/rails_spec.rb || die
+}
diff --git a/dev-ruby/autoprefixer-rails/autoprefixer-rails-10.4.16.0.ebuild b/dev-ruby/autoprefixer-rails/autoprefixer-rails-10.4.16.0.ebuild
new file mode 100644
index 000000000000..8f557b93f687
--- /dev/null
+++ b/dev-ruby/autoprefixer-rails/autoprefixer-rails-10.4.16.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="vendor"
+
+RUBY_FAKEGEM_GEMSPEC="autoprefixer-rails.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Add vendor prefixes to CSS rules using values from the Can I Use website"
+HOMEPAGE="https://github.com/ai/autoprefixer-rails"
+SRC_URI="https://github.com/ai/autoprefixer-rails/archive/${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+DEPEND+="test? ( net-libs/nodejs )"
+
+ruby_add_rdepend "dev-ruby/execjs"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/rails-5.0.0
+ dev-ruby/rake
+ dev-ruby/rspec-rails
+ dev-ruby/sprockets-rails
+)"
+
+all_ruby_prepare() {
+ sed -i -e "/bundler/d" -e "/BUNDLE/d" spec/app/config/boot.rb || die
+ sed -i -e "/Bundler/ s:^:#:" \
+ -e '/config.sass/ s:^:#:' spec/app/config/application.rb || die
+ rm -f spec/rails_spec.rb || die
+}
diff --git a/dev-ruby/autoprefixer-rails/autoprefixer-rails-7.2.6.ebuild b/dev-ruby/autoprefixer-rails/autoprefixer-rails-7.2.6.ebuild
deleted file mode 100644
index f6c5705e54bd..000000000000
--- a/dev-ruby/autoprefixer-rails/autoprefixer-rails-7.2.6.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="vendor"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Add vendor prefixes to CSS rules using values from the Can I Use website"
-HOMEPAGE="https://github.com/ai/autoprefixer-rails"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="7"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/execjs:*"
-
-ruby_add_bdepend "test? (
- dev-ruby/rails
- dev-ruby/rake
- dev-ruby/rspec-rails
-)"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" -e "/BUNDLE/d" spec/app/config/boot.rb || die
- sed -i -e "/Bundler/,+3d" spec/app/config/application.rb || die
- rm spec/rails_spec.rb spec/compass_spec.rb || die
-}
diff --git a/dev-ruby/autoprefixer-rails/autoprefixer-rails-8.6.5.ebuild b/dev-ruby/autoprefixer-rails/autoprefixer-rails-8.6.5.ebuild
deleted file mode 100644
index aed804b3d309..000000000000
--- a/dev-ruby/autoprefixer-rails/autoprefixer-rails-8.6.5.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="vendor"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Add vendor prefixes to CSS rules using values from the Can I Use website"
-HOMEPAGE="https://github.com/ai/autoprefixer-rails"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="8"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/execjs:*"
-
-ruby_add_bdepend "test? (
- dev-ruby/rails
- dev-ruby/rake
- dev-ruby/rspec-rails
-)"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" -e "/BUNDLE/d" spec/app/config/boot.rb || die
- sed -i -e "/Bundler/,+3d" spec/app/config/application.rb || die
- rm spec/rails_spec.rb spec/compass_spec.rb || die
-}
diff --git a/dev-ruby/autoprefixer-rails/autoprefixer-rails-9.5.1.1.ebuild b/dev-ruby/autoprefixer-rails/autoprefixer-rails-9.5.1.1.ebuild
deleted file mode 100644
index 3c20314227e0..000000000000
--- a/dev-ruby/autoprefixer-rails/autoprefixer-rails-9.5.1.1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="vendor"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Add vendor prefixes to CSS rules using values from the Can I Use website"
-HOMEPAGE="https://github.com/ai/autoprefixer-rails"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="$(ver_cut 1)"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/execjs:*"
-
-ruby_add_bdepend "test? (
- >=dev-ruby/rails-5.0.0
- dev-ruby/rake
- dev-ruby/rspec-rails
-)"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" -e "/BUNDLE/d" spec/app/config/boot.rb || die
- sed -i -e "/Bundler/,+3d" \
- -e '/config.sass/ s:^:#:' spec/app/config/application.rb || die
- sed -i -e '/standard/ s:^:#:' autoprefixer-rails.gemspec || die
- rm -f spec/rails_spec.rb || die
-}
diff --git a/dev-ruby/autoprefixer-rails/autoprefixer-rails-9.6.1.1.ebuild b/dev-ruby/autoprefixer-rails/autoprefixer-rails-9.6.1.1.ebuild
deleted file mode 100644
index 8c312ceb78ee..000000000000
--- a/dev-ruby/autoprefixer-rails/autoprefixer-rails-9.6.1.1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="vendor"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Add vendor prefixes to CSS rules using values from the Can I Use website"
-HOMEPAGE="https://github.com/ai/autoprefixer-rails"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="$(ver_cut 1)"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/execjs:*"
-
-ruby_add_bdepend "test? (
- >=dev-ruby/rails-5.0.0
- dev-ruby/rake
- dev-ruby/rspec-rails
-)"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" -e "/BUNDLE/d" spec/app/config/boot.rb || die
- sed -i -e "/Bundler/,+3d" \
- -e '/config.sass/ s:^:#:' spec/app/config/application.rb || die
- sed -i -e '/standard/ s:^:#:' autoprefixer-rails.gemspec || die
- rm -f spec/rails_spec.rb || die
-}
diff --git a/dev-ruby/autoprefixer-rails/autoprefixer-rails-9.6.1.ebuild b/dev-ruby/autoprefixer-rails/autoprefixer-rails-9.6.1.ebuild
deleted file mode 100644
index 3c20314227e0..000000000000
--- a/dev-ruby/autoprefixer-rails/autoprefixer-rails-9.6.1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="vendor"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Add vendor prefixes to CSS rules using values from the Can I Use website"
-HOMEPAGE="https://github.com/ai/autoprefixer-rails"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="$(ver_cut 1)"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/execjs:*"
-
-ruby_add_bdepend "test? (
- >=dev-ruby/rails-5.0.0
- dev-ruby/rake
- dev-ruby/rspec-rails
-)"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" -e "/BUNDLE/d" spec/app/config/boot.rb || die
- sed -i -e "/Bundler/,+3d" \
- -e '/config.sass/ s:^:#:' spec/app/config/application.rb || die
- sed -i -e '/standard/ s:^:#:' autoprefixer-rails.gemspec || die
- rm -f spec/rails_spec.rb || die
-}
diff --git a/dev-ruby/autoprefixer-rails/metadata.xml b/dev-ruby/autoprefixer-rails/metadata.xml
index e92f1085c453..17b7b4c522ca 100644
--- a/dev-ruby/autoprefixer-rails/metadata.xml
+++ b/dev-ruby/autoprefixer-rails/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/aws-eventstream/Manifest b/dev-ruby/aws-eventstream/Manifest
index ed87d8d46089..f45f76aaa92b 100644
--- a/dev-ruby/aws-eventstream/Manifest
+++ b/dev-ruby/aws-eventstream/Manifest
@@ -1 +1,2 @@
-DIST aws-eventstream-1.0.3.gem 9216 BLAKE2B 32cb1d14562365bd9fc579272f6f5a56d542662dbca765431a980c278aa1ecdc4c61ba4875c52c83d962771e89f831c4b167b176882bf45649cea7732ec68c04 SHA512 bd2babd7ec1e3190b839925116cfe315f09087e106970603941ce4e1eea64cb4fcbf59d16c547a5ac4968792839de3dbb2e4719a05cd4433c611df44567029b0
+DIST aws-eventstream-1.2.0.gem 12800 BLAKE2B 3d3459894bfcfa9b4a3cb04b358e011d495250430931c638038e66ac366ad902c8e79c44afc5b123b9ef3bb82efe9a8705017898ffaf268ae829923b6b820cd0 SHA512 d7d8a318523b1d4c4d950861f8fb4fb6b65a76b8df2bd788ca1d81d40f7a1d1fd91ad9db106892b508d348fd7f8678aa387b43ac390bcd75f8fb03d081c3e60b
+DIST aws-eventstream-1.3.0.gem 12800 BLAKE2B d66c1597c63a07f8a84f0743fae5df5fd28d58fe89b821f9f68177e0d5afdc58906f020c4cacf796ac999b4f8ce4e5dae61e8e2a86fd148e19c9a28f7cdbf1c1 SHA512 98200938fb087748010b494a75b3dc69c28903175631490cc529a5f740aef217e362eb77a98aa7ae3292e14a3cc559fe3f1f263293f536d47a515e7b77d8ddd8
diff --git a/dev-ruby/aws-eventstream/aws-eventstream-1.0.3.ebuild b/dev-ruby/aws-eventstream/aws-eventstream-1.0.3.ebuild
deleted file mode 100644
index 99439b30f15b..000000000000
--- a/dev-ruby/aws-eventstream/aws-eventstream-1.0.3.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-# Not packaged and upstream not tagged.
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Amazon Web Services event stream library"
-HOMEPAGE="https://aws.amazon.com/sdk-for-ruby/"
-
-LICENSE="Apache-2.0"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/aws-eventstream/aws-eventstream-1.2.0.ebuild b/dev-ruby/aws-eventstream/aws-eventstream-1.2.0.ebuild
new file mode 100644
index 000000000000..f9658cfaaf22
--- /dev/null
+++ b/dev-ruby/aws-eventstream/aws-eventstream-1.2.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+# Not packaged and upstream not tagged.
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Amazon Web Services event stream library"
+HOMEPAGE="https://aws.amazon.com/sdk-for-ruby/"
+
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
diff --git a/dev-ruby/aws-eventstream/aws-eventstream-1.3.0.ebuild b/dev-ruby/aws-eventstream/aws-eventstream-1.3.0.ebuild
new file mode 100644
index 000000000000..dc23458e0709
--- /dev/null
+++ b/dev-ruby/aws-eventstream/aws-eventstream-1.3.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# Not packaged and upstream not tagged.
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Amazon Web Services event stream library"
+HOMEPAGE="https://aws.amazon.com/sdk-for-ruby/"
+
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
diff --git a/dev-ruby/aws-eventstream/metadata.xml b/dev-ruby/aws-eventstream/metadata.xml
index d27944e8068e..082aaa7c4632 100644
--- a/dev-ruby/aws-eventstream/metadata.xml
+++ b/dev-ruby/aws-eventstream/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/aws-partitions/Manifest b/dev-ruby/aws-partitions/Manifest
new file mode 100644
index 000000000000..c137af8cbcb3
--- /dev/null
+++ b/dev-ruby/aws-partitions/Manifest
@@ -0,0 +1,4 @@
+DIST aws-partitions-1.820.0.gem 58368 BLAKE2B bd5a2986d9252e64235c8b80ba12ca3d200f47470fa45466b5e7a54b16abb975282a87fc49f611957e0e7c5e73ee02e1f3a8e77c742166597e5c4f073a9dc49e SHA512 546167240f2ed32cbfe57150eb04cb13fc8471cab7e09546d73a2ba3ea13dbf2b2ea7beccf118b93835179b0198cdfc45f8c54fdfe173871e8a62d6f9c450a89
+DIST aws-partitions-1.843.0.gem 59392 BLAKE2B eb11bf18298b6660433ec295d46dc5a7cee3ac1adf72eb8edb3320c490cc919d313aeefa224e1de4026f907b372de52c18cf8f37f07bea92ace67f11f067a0f9 SHA512 2716c25f0e7a6a7bdd4d62b74094e79e8e0f8c84581eaafc072cab76c785bbc7bcdab2cf844c084292a58a6b93cbc5c0eeee23008e30f74638e86da22a099fea
+DIST aws-partitions-1.863.0.gem 60928 BLAKE2B e0063e3a66dd95f76b8b9f957cc16330706c2aec0d5aa6d708e12c73d98e55113faf4be21580c3f7811847edd4c513af39c24e3fc1b4a5d1c0b8bd8b48e8c366 SHA512 ff85beb52bcc4ecf2c50730e1aba97fa7a8b897a87b8507a58d8ed7f0aa419831482bec326faa6123a742239959a91a159e8f211a02fc926182947446ad9c7c3
+DIST aws-partitions-1.897.0.gem 62976 BLAKE2B 6eb06f5afa95c1e71cb4b13adfc9d8496be683f6a61ea8ae3cbcdcfd5a0b1b6f37c1a5c26d8e81296a260ae31c701b8817e2365d04e453d5f0c212ba447ea709 SHA512 4c98dd8d7d888ffbbd719c154c919526e4578f4c99ba48598fd7f47c533f16e193329682bcee5700e0f27ac92f13f7bcb50be360fd07faf825a607f4fd5c6eea
diff --git a/dev-ruby/aws-partitions/aws-partitions-1.820.0.ebuild b/dev-ruby/aws-partitions/aws-partitions-1.820.0.ebuild
new file mode 100644
index 000000000000..904c2fb2798c
--- /dev/null
+++ b/dev-ruby/aws-partitions/aws-partitions-1.820.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+# Not packaged and upstream not tagged.
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRAINSTALL="partitions.json"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides interfaces to enumerate AWS partitions, regions, and services"
+HOMEPAGE="https://aws.amazon.com/sdk-for-ruby/"
+
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
diff --git a/dev-ruby/aws-partitions/aws-partitions-1.843.0.ebuild b/dev-ruby/aws-partitions/aws-partitions-1.843.0.ebuild
new file mode 100644
index 000000000000..904c2fb2798c
--- /dev/null
+++ b/dev-ruby/aws-partitions/aws-partitions-1.843.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+# Not packaged and upstream not tagged.
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRAINSTALL="partitions.json"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides interfaces to enumerate AWS partitions, regions, and services"
+HOMEPAGE="https://aws.amazon.com/sdk-for-ruby/"
+
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
diff --git a/dev-ruby/aws-partitions/aws-partitions-1.863.0.ebuild b/dev-ruby/aws-partitions/aws-partitions-1.863.0.ebuild
new file mode 100644
index 000000000000..3100f6be47ed
--- /dev/null
+++ b/dev-ruby/aws-partitions/aws-partitions-1.863.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# Not packaged and upstream not tagged.
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRAINSTALL="partitions.json"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides interfaces to enumerate AWS partitions, regions, and services"
+HOMEPAGE="https://aws.amazon.com/sdk-for-ruby/"
+
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
diff --git a/dev-ruby/aws-partitions/aws-partitions-1.897.0.ebuild b/dev-ruby/aws-partitions/aws-partitions-1.897.0.ebuild
new file mode 100644
index 000000000000..0f6ed389ec1b
--- /dev/null
+++ b/dev-ruby/aws-partitions/aws-partitions-1.897.0.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# Not packaged and upstream not tagged.
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRAINSTALL="partitions.json"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides interfaces to enumerate AWS partitions, regions, and services"
+HOMEPAGE="https://aws.amazon.com/sdk-for-ruby/"
+
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="~amd64 ~arm64"
diff --git a/dev-ruby/aws-partitions/metadata.xml b/dev-ruby/aws-partitions/metadata.xml
new file mode 100644
index 000000000000..082aaa7c4632
--- /dev/null
+++ b/dev-ruby/aws-partitions/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">aws/aws-sdk-ruby</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/aws-s3/Manifest b/dev-ruby/aws-s3/Manifest
deleted file mode 100644
index 7b6b312e95b4..000000000000
--- a/dev-ruby/aws-s3/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST aws-s3-0.6.3.gem 137216 BLAKE2B 32aef753b61afa24b3c64791b9b96bd82ed497c6fca3b71ac49bb502eda00858c7c0e1d4ca25f08749850b0b6909b3e10e171e230c93329b354742524f57518b SHA512 817d74636a1c27fbb6e5529b99da48b61ccfac4e4bb5ce3bf4e24abcf10026678a8a6b93b8b9ef1983e9eaaf7567563094a46bd5d09c6c0fea052b5f4eecd728
diff --git a/dev-ruby/aws-s3/aws-s3-0.6.3.ebuild b/dev-ruby/aws-s3/aws-s3-0.6.3.ebuild
deleted file mode 100644
index a6c2b1528fa9..000000000000
--- a/dev-ruby/aws-s3/aws-s3-0.6.3.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README"
-
-# there is a stupid setup.rb in the bin/ directory so do not use the
-# default.
-RUBY_FAKEGEM_BINWRAP="s3sh"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Client library for Amazon's Simple Storage Service's REST API"
-HOMEPAGE="http://amazon.rubyforge.org/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/xml-simple
- dev-ruby/builder
- dev-ruby/mime-types:*
- virtual/ruby-ssl"
-ruby_add_bdepend "test? ( dev-ruby/flexmock )"
-
-RUBY_PATCHES=(
- ${P}+ruby19.patch
-)
-
-all_ruby_prepare() {
- # Avoid tests requiring network access, bug 339324
- sed -i -e '/test_request_only_escapes_the_path_the_first_time_it_runs_and_not_subsequent_times/,/^ end/ s:^:#:' \
- -e '/test_if_request_has_no_body_then_the_content_length_is_set_to_zero/,/^ end/ s:^:#:' \
- test/connection_test.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -I. -e "Dir['test/*_test.rb'].each {|f| require f }" || die
-}
diff --git a/dev-ruby/aws-s3/files/aws-s3-0.6.3+ruby19.patch b/dev-ruby/aws-s3/files/aws-s3-0.6.3+ruby19.patch
deleted file mode 100644
index d97f7f1ec654..000000000000
--- a/dev-ruby/aws-s3/files/aws-s3-0.6.3+ruby19.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-diff --git a/Rakefile b/Rakefile
-index 4d097df..a38bdbc 100644
---- a/Rakefile
-+++ b/Rakefile
-@@ -290,6 +290,7 @@ namespace :todo do
- end
- end if File.exists?(File.join(library_root, 'TODO'))
-
-+begin
- namespace :site do
- require 'erb'
- require 'rdoc/markup/simple_markup'
-@@ -330,5 +331,7 @@ namespace :site do
- sh %(scp #{site_files.join ' '} marcel@rubyforge.org:/var/www/gforge-projects/amazon/)
- end
- end
-+rescue LoadError
-+end
-
- task :clean => ['dist:clobber_package', 'doc:clobber_rdoc', 'test:clobber_coverage']
-diff --git a/test/extensions_test.rb b/test/extensions_test.rb
-index 1c868ee..921e6b5 100644
---- a/test/extensions_test.rb
-+++ b/test/extensions_test.rb
-@@ -1,3 +1,4 @@
-+# -*- coding: utf-8 -*-
- require File.dirname(__FILE__) + '/test_helper'
-
- class HashExtensionsTest < Test::Unit::TestCase
diff --git a/dev-ruby/aws-s3/metadata.xml b/dev-ruby/aws-s3/metadata.xml
deleted file mode 100644
index eb1e47f2edfb..000000000000
--- a/dev-ruby/aws-s3/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/aws-sdk-core/Manifest b/dev-ruby/aws-sdk-core/Manifest
deleted file mode 100644
index 03ba6e4047e0..000000000000
--- a/dev-ruby/aws-sdk-core/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST aws-sdk-ruby-2.11.79.tar.gz 4068576 BLAKE2B 481852772704dd91afca4511f402e0288aa80523133be2d15f0a3d085efca7c38fce1e7d794ebc9ffca5c4b2b5f69c9366346525f250ab9c2b06aa6c7e9631ee SHA512 dc9076f3658e6d764671a2f661c9c5363977807861bb9a71d287ebb55de02fc80679a209ea00d438d162f4185cf2f8c65800fde8712f143b17c5b60369f7203e
diff --git a/dev-ruby/aws-sdk-core/aws-sdk-core-2.11.79.ebuild b/dev-ruby/aws-sdk-core/aws-sdk-core-2.11.79.ebuild
deleted file mode 100644
index 0df6e326a548..000000000000
--- a/dev-ruby/aws-sdk-core/aws-sdk-core-2.11.79.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="apis ca-bundle.crt endpoints.json"
-
-GITHUB_USER="aws"
-GITHUB_PROJECT="aws-sdk-ruby"
-RUBY_S="${GITHUB_PROJECT}-${PV}/${PN}"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Official SDK for Amazon Web Services"
-HOMEPAGE="https://aws.amazon.com/sdkforruby"
-SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${GITHUB_PROJECT}-${PV}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/aws-sigv4 dev-ruby/jmespath:1"
-
-ruby_add_bdepend "test? ( dev-ruby/webmock )"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
-
- # Avoid spec that gets confused by our directory names
- sed -i -e '/requires prefixes from plugin names when loading/,/end/ s:^:#:' \
- spec/seahorse/client/plugin_list_spec.rb || die
-}
diff --git a/dev-ruby/aws-sdk-core/metadata.xml b/dev-ruby/aws-sdk-core/metadata.xml
deleted file mode 100644
index d27944e8068e..000000000000
--- a/dev-ruby/aws-sdk-core/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">aws/aws-sdk-ruby</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/aws-sdk-resources/Manifest b/dev-ruby/aws-sdk-resources/Manifest
deleted file mode 100644
index 03ba6e4047e0..000000000000
--- a/dev-ruby/aws-sdk-resources/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST aws-sdk-ruby-2.11.79.tar.gz 4068576 BLAKE2B 481852772704dd91afca4511f402e0288aa80523133be2d15f0a3d085efca7c38fce1e7d794ebc9ffca5c4b2b5f69c9366346525f250ab9c2b06aa6c7e9631ee SHA512 dc9076f3658e6d764671a2f661c9c5363977807861bb9a71d287ebb55de02fc80679a209ea00d438d162f4185cf2f8c65800fde8712f143b17c5b60369f7203e
diff --git a/dev-ruby/aws-sdk-resources/aws-sdk-resources-2.11.79.ebuild b/dev-ruby/aws-sdk-resources/aws-sdk-resources-2.11.79.ebuild
deleted file mode 100644
index 4830ef249d35..000000000000
--- a/dev-ruby/aws-sdk-resources/aws-sdk-resources-2.11.79.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="resources.schema.json"
-
-GITHUB_USER="aws"
-GITHUB_PROJECT="aws-sdk-ruby"
-RUBY_S="${GITHUB_PROJECT}-${PV}/${PN}"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Official SDK for Amazon Web Services"
-HOMEPAGE="https://aws.amazon.com/sdkforruby"
-SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${GITHUB_PROJECT}-${PV}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "~dev-ruby/aws-sdk-core-${PV}"
-
-ruby_add_bdepend "dev-ruby/webmock"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/aws-sdk-resources/metadata.xml b/dev-ruby/aws-sdk-resources/metadata.xml
deleted file mode 100644
index d27944e8068e..000000000000
--- a/dev-ruby/aws-sdk-resources/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">aws/aws-sdk-ruby</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/aws-sdk/Manifest b/dev-ruby/aws-sdk/Manifest
deleted file mode 100644
index 03ba6e4047e0..000000000000
--- a/dev-ruby/aws-sdk/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST aws-sdk-ruby-2.11.79.tar.gz 4068576 BLAKE2B 481852772704dd91afca4511f402e0288aa80523133be2d15f0a3d085efca7c38fce1e7d794ebc9ffca5c4b2b5f69c9366346525f250ab9c2b06aa6c7e9631ee SHA512 dc9076f3658e6d764671a2f661c9c5363977807861bb9a71d287ebb55de02fc80679a209ea00d438d162f4185cf2f8c65800fde8712f143b17c5b60369f7203e
diff --git a/dev-ruby/aws-sdk/aws-sdk-2.11.79.ebuild b/dev-ruby/aws-sdk/aws-sdk-2.11.79.ebuild
deleted file mode 100644
index 765dc9a50d62..000000000000
--- a/dev-ruby/aws-sdk/aws-sdk-2.11.79.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST=""
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="../CHANGELOG.md ../MIGRATING.md ../README.md ../UPGRADING.md"
-
-GITHUB_USER="aws"
-GITHUB_PROJECT="${PN}-ruby"
-RUBY_S="${GITHUB_PROJECT}-${PV}/${PN}"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Official SDK for Amazon Web Services"
-HOMEPAGE="https://aws.amazon.com/sdkforruby"
-SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${GITHUB_PROJECT}-${PV}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "virtual/ruby-ssl
- ~dev-ruby/aws-sdk-resources-${PV}"
diff --git a/dev-ruby/aws-sdk/metadata.xml b/dev-ruby/aws-sdk/metadata.xml
deleted file mode 100644
index d27944e8068e..000000000000
--- a/dev-ruby/aws-sdk/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">aws/aws-sdk-ruby</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/aws-sigv4/Manifest b/dev-ruby/aws-sigv4/Manifest
index 75ad950a3fc5..d72b631fe7c3 100644
--- a/dev-ruby/aws-sigv4/Manifest
+++ b/dev-ruby/aws-sigv4/Manifest
@@ -1,2 +1,2 @@
-DIST aws-sigv4-1.0.3.gem 10752 BLAKE2B 6e9f8d106a8a61bc4982d8653e550f9c795ec9fcac6e4521d318bab9a9ee74036eed8ef7c7c4f192dbbc92ac7ed7011f1c764d0b87df1f72404ab4bd2f357347 SHA512 a3d8cfbfe54196ed43c4ed6f7dfb7234808c540aee6324ab6752b1c8356890a8e697d128f7c6a3257030e8d5df1bb5bb36fae67c575e2648da89232586a3f82b
-DIST aws-sigv4-1.1.0.gem 11776 BLAKE2B 37292443ded772746dae5a351ef440a1dc1e537de8335bb3be9caf813d58380c834143194f4d8373e24bf4d27734c38203ca1fbffb6909f0350dbb887a3c6033 SHA512 0c7e76f1d8581436aece86db9a50ff9ccec371885512b2e41908d2c4e3d2f44b220e674d112a92216857c859518cb1e9664d9e50c431616883f13f96fcb922f0
+DIST aws-sigv4-1.7.0.gem 17920 BLAKE2B 1f670cb3fb816725f7002cce4851901a29b287e34006f311d037d589981e7fd3d4de5e4cf7a5422697ef3a9f68ca65aa58796f8410ce3bf952b5ae1fe57150a4 SHA512 4d3a20a807a79b2225a2a342be690c508eb2921b41de9b25aada113b9d138d3639fa276b022c031c501e62c6b08f276d7f2660fdbae24ef575bf7ff62a84ca46
+DIST aws-sigv4-1.8.0.gem 18432 BLAKE2B d15a93e86b78aad49ecebe7e104572ec18c37d2db1fb5361f1c2dd7732996b80bed81873f227d0f12ede0a5edb61fdc31c9c7f8eded2565ed1575c96647420f4 SHA512 dc4898a201f81b25f913b37bf0b302066fa9b5e4bb64e317957aa0c34090814585e371c67e1d5776d7b5ef72be25992e2224fcb4e3a1f3e3762dc1fdb54134f8
diff --git a/dev-ruby/aws-sigv4/aws-sigv4-1.0.3.ebuild b/dev-ruby/aws-sigv4/aws-sigv4-1.0.3.ebuild
deleted file mode 100644
index 744b9efc530b..000000000000
--- a/dev-ruby/aws-sigv4/aws-sigv4-1.0.3.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Amazon Web Services Signature Version 4 signing library"
-HOMEPAGE="https://aws.amazon.com/sdk-for-ruby/"
-
-LICENSE="Apache-2.0"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/aws-sigv4/aws-sigv4-1.1.0.ebuild b/dev-ruby/aws-sigv4/aws-sigv4-1.1.0.ebuild
deleted file mode 100644
index c00aa14815ca..000000000000
--- a/dev-ruby/aws-sigv4/aws-sigv4-1.1.0.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Amazon Web Services Signature Version 4 signing library"
-HOMEPAGE="https://aws.amazon.com/sdk-for-ruby/"
-
-LICENSE="Apache-2.0"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/aws-eventstream-1.0.2:1"
diff --git a/dev-ruby/aws-sigv4/aws-sigv4-1.7.0.ebuild b/dev-ruby/aws-sigv4/aws-sigv4-1.7.0.ebuild
new file mode 100644
index 000000000000..6b37f35cd46f
--- /dev/null
+++ b/dev-ruby/aws-sigv4/aws-sigv4-1.7.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md"
+RUBY_FAKEGEM_EXTRAINSTALL="VERSION"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Amazon Web Services Signature Version 4 signing library"
+HOMEPAGE="https://aws.amazon.com/sdk-for-ruby/"
+
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/aws-eventstream-1.0.2:1"
diff --git a/dev-ruby/aws-sigv4/aws-sigv4-1.8.0.ebuild b/dev-ruby/aws-sigv4/aws-sigv4-1.8.0.ebuild
new file mode 100644
index 000000000000..9b07f2dc4a7d
--- /dev/null
+++ b/dev-ruby/aws-sigv4/aws-sigv4-1.8.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md"
+RUBY_FAKEGEM_EXTRAINSTALL="VERSION"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Amazon Web Services Signature Version 4 signing library"
+HOMEPAGE="https://aws.amazon.com/sdk-for-ruby/"
+
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/aws-eventstream-1.0.2:1"
diff --git a/dev-ruby/aws-sigv4/metadata.xml b/dev-ruby/aws-sigv4/metadata.xml
index d27944e8068e..082aaa7c4632 100644
--- a/dev-ruby/aws-sigv4/metadata.xml
+++ b/dev-ruby/aws-sigv4/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/axiom-types/axiom-types-0.1.1-r1.ebuild b/dev-ruby/axiom-types/axiom-types-0.1.1-r1.ebuild
new file mode 100644
index 000000000000..153ff3095542
--- /dev/null
+++ b/dev-ruby/axiom-types/axiom-types-0.1.1-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CONTRIBUTING.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Define types with optional constraints for use within axiom and other libraries"
+HOMEPAGE="https://rubygems.org/gems/axiom-types https://github.com/dkubb/axiom-types"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/descendants_tracker-0.0.4
+ <dev-ruby/descendants_tracker-0.1
+ >=dev-ruby/ice_nine-0.11.0
+ <dev-ruby/ice_nine-0.12
+ >=dev-ruby/thread_safe-0.3.1
+ <dev-ruby/thread_safe-1"
+
+RESTRICT="test"
diff --git a/dev-ruby/axiom-types/axiom-types-0.1.1.ebuild b/dev-ruby/axiom-types/axiom-types-0.1.1.ebuild
deleted file mode 100644
index befa36c7d675..000000000000
--- a/dev-ruby/axiom-types/axiom-types-0.1.1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CONTRIBUTING.md README.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Define types with optional constraints for use within axiom and other libraries"
-HOMEPAGE="https://rubygems.org/gems/axiom-types https://github.com/dkubb/axiom-types"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/descendants_tracker-0.0.4
- <dev-ruby/descendants_tracker-0.1
- >=dev-ruby/ice_nine-0.11.0
- <dev-ruby/ice_nine-0.12
- >=dev-ruby/thread_safe-0.3.1
- <dev-ruby/thread_safe-1"
-
-RESTRICT="test"
diff --git a/dev-ruby/axiom-types/metadata.xml b/dev-ruby/axiom-types/metadata.xml
index 4c5e3f50b0ed..dfaa6584383f 100644
--- a/dev-ruby/axiom-types/metadata.xml
+++ b/dev-ruby/axiom-types/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/backports/Manifest b/dev-ruby/backports/Manifest
index dbbe406bd503..41829cbe9577 100644
--- a/dev-ruby/backports/Manifest
+++ b/dev-ruby/backports/Manifest
@@ -1,4 +1,2 @@
-DIST backports-3.11.4.gem 157696 BLAKE2B 0c341380e350a61fac7ad09a2425598214945f1ecb26abf8f17494a2fc6ee256ee20517555bfde433cd2f564fd1148211c2cfd1c16d21ecbe574492837f610ef SHA512 bbc2afae9b40d2e3b14e46321200fb5e8290a2494a86187939e8e51b4a960b62aec55bee3ee37da4ece3d575a50653e63b950915eaedff745125ab39926765ad
-DIST backports-3.13.0.gem 151552 BLAKE2B cd36caf40cff2d6a3274a7a419baf27066a1ec26f60099d51c89e27a9c33194f23486763e8fb11649d44349feb51d934f79b877d4a4ef26ccd84a34f98b0bd27 SHA512 9e0bed5a0b03160e88d19b70848cc843a1a35fbc53dd2249c5b2f3adb43ce9f752cae06f955e50c96f2ac67cd5df3b3426e94f00c158cac3746401d603d6f3b8
-DIST backports-3.14.0.gem 151552 BLAKE2B f178ad697317aef22bed9e74552e1a819e1d73d0f816911ee917b78dbaa4d3ea93631ff95f6f95c4c1bf57e6f0bf21dac1313601f28afbd6762542f19c15d4e2 SHA512 405b6edf024ef60e7cda7e9ad2ef9d39f3c1b2ab61c910afabc707047e8b31b7319c9d8f301f7386c2ce436af31588e62a879b7c2f9d440b2d63c7795aa11633
-DIST backports-3.15.0.gem 152064 BLAKE2B a2c2a1f35ab6f682be23a5189bafec563a2d028ed5f0e0a4880ad85e09ac7af1085a601323ec3459c5be87a5271c6c3e47b6e80005c50e3084d4ac1dc9f2fd35 SHA512 4eb1f928c37596971fa274d838ab991bce462a7f571cb68501fc81e579693528e93536c25e4b64d93f4f0edfd313c8aacd8af014bb5c586cc182867e78f614d5
+DIST backports-3.24.1.tar.gz 186050 BLAKE2B 5c4f22e12ff4b436c356796b1d8af4cbb8ea038536818bdf97b6c42c57c809c01954147240aa250ee7fc26abf5f9d775d3e0f9b73f6db323aec2c8481d15a68f SHA512 bc29c9eaad86ae99f4a22d6f797bd8a93769761c4bc728539a798e7d0c1fe72cedc665673607d4aab8ac0e7e890789f213842a927eac738674b6089b9961ebf0
+DIST backports-3.25.0.tar.gz 187271 BLAKE2B aad3144190cbb97f34d6ab334899ccee09a4d3b7be9aa91db8a631990124f34528b9243efe311bd4ee137c99a22b60aabda06544c23d5c4cb993dec2d42f09b2 SHA512 88083b358ecc99c9268bdcfeae6ca3503b3cbb3c379b0bae7d55ca4493eb052d6f51c6231e3bf6a9ad8b4128f788efb3766d9aed10c92932d86b7f9138d4d849
diff --git a/dev-ruby/backports/backports-3.11.4.ebuild b/dev-ruby/backports/backports-3.11.4.ebuild
deleted file mode 100644
index d6ca04534f0f..000000000000
--- a/dev-ruby/backports/backports-3.11.4.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_TASK_TEST="test"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Backports of Ruby features for older Ruby"
-HOMEPAGE="https://github.com/marcandre/backports"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86"
-IUSE=""
-
-all_ruby_prepare() {
- # Avoid activesupport test that no longer works in Rails 5. This also avoids
- # a dependency on activesupport
- sed -i -e '/test_rails/,/^ end/ s:^:#:' test/_backport_guards_test.rb || die
-}
diff --git a/dev-ruby/backports/backports-3.13.0.ebuild b/dev-ruby/backports/backports-3.13.0.ebuild
deleted file mode 100644
index 5a902a203bec..000000000000
--- a/dev-ruby/backports/backports-3.13.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_TASK_TEST="test"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Backports of Ruby features for older Ruby"
-HOMEPAGE="https://github.com/marcandre/backports"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- # Avoid activesupport test that no longer works in Rails 5. This also avoids
- # a dependency on activesupport
- sed -i -e '/test_rails/,/^ end/ s:^:#:' test/_backport_guards_test.rb || die
-}
diff --git a/dev-ruby/backports/backports-3.14.0.ebuild b/dev-ruby/backports/backports-3.14.0.ebuild
deleted file mode 100644
index 5a902a203bec..000000000000
--- a/dev-ruby/backports/backports-3.14.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_TASK_TEST="test"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Backports of Ruby features for older Ruby"
-HOMEPAGE="https://github.com/marcandre/backports"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- # Avoid activesupport test that no longer works in Rails 5. This also avoids
- # a dependency on activesupport
- sed -i -e '/test_rails/,/^ end/ s:^:#:' test/_backport_guards_test.rb || die
-}
diff --git a/dev-ruby/backports/backports-3.15.0.ebuild b/dev-ruby/backports/backports-3.15.0.ebuild
deleted file mode 100644
index 5a902a203bec..000000000000
--- a/dev-ruby/backports/backports-3.15.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_TASK_TEST="test"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Backports of Ruby features for older Ruby"
-HOMEPAGE="https://github.com/marcandre/backports"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- # Avoid activesupport test that no longer works in Rails 5. This also avoids
- # a dependency on activesupport
- sed -i -e '/test_rails/,/^ end/ s:^:#:' test/_backport_guards_test.rb || die
-}
diff --git a/dev-ruby/backports/backports-3.24.1.ebuild b/dev-ruby/backports/backports-3.24.1.ebuild
new file mode 100644
index 000000000000..d40e66bbcb4f
--- /dev/null
+++ b/dev-ruby/backports/backports-3.24.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_TASK_TEST="test"
+
+RUBY_FAKEGEM_GEMSPEC="backports.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Backports of Ruby features for older Ruby"
+HOMEPAGE="https://github.com/marcandre/backports"
+SRC_URI="https://github.com/marcandre/backports/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~s390 sparc x86"
+IUSE=""
+
+all_ruby_prepare() {
+ # Avoid activesupport test that no longer works in Rails 5. This also avoids
+ # a dependency on activesupport
+ sed -i -e '/test_rails/,/^ end/ s:^:#:' test/_backport_guards_test.rb || die
+
+ sed -i -e '/rubocop/I s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/backports/backports-3.25.0.ebuild b/dev-ruby/backports/backports-3.25.0.ebuild
new file mode 100644
index 000000000000..a0163970763a
--- /dev/null
+++ b/dev-ruby/backports/backports-3.25.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_TASK_TEST="test"
+
+RUBY_FAKEGEM_GEMSPEC="backports.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Backports of Ruby features for older Ruby"
+HOMEPAGE="https://github.com/marcandre/backports"
+SRC_URI="https://github.com/marcandre/backports/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~s390 ~sparc ~x86"
+
+all_ruby_prepare() {
+ # Avoid activesupport test that no longer works in Rails 5. This also avoids
+ # a dependency on activesupport
+ sed -i -e '/test_rails/,/^ end/ s:^:#:' test/_backport_guards_test.rb || die
+
+ sed -i -e '/rubocop/I s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/backports/metadata.xml b/dev-ruby/backports/metadata.xml
index 570157f98d82..046cc80bc853 100644
--- a/dev-ruby/backports/metadata.xml
+++ b/dev-ruby/backports/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/bacon/bacon-1.2.0-r2.ebuild b/dev-ruby/bacon/bacon-1.2.0-r2.ebuild
deleted file mode 100644
index 329623b0b7cc..000000000000
--- a/dev-ruby/bacon/bacon-1.2.0-r2.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="ChangeLog README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Small RSpec clone weighing less than 350 LoC"
-HOMEPAGE="http://chneukirchen.org/repos/bacon"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/rdoc )"
diff --git a/dev-ruby/bacon/bacon-1.2.0-r4.ebuild b/dev-ruby/bacon/bacon-1.2.0-r4.ebuild
new file mode 100644
index 000000000000..8e6c88394d1b
--- /dev/null
+++ b/dev-ruby/bacon/bacon-1.2.0-r4.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="ChangeLog README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Small RSpec clone weighing less than 350 LoC"
+HOMEPAGE="https://leahneukirchen.org/repos/bacon/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/rdoc )"
diff --git a/dev-ruby/bacon/metadata.xml b/dev-ruby/bacon/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/bacon/metadata.xml
+++ b/dev-ruby/bacon/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/barby/Manifest b/dev-ruby/barby/Manifest
index 5cb6a85199f3..cffe78877a34 100644
--- a/dev-ruby/barby/Manifest
+++ b/dev-ruby/barby/Manifest
@@ -1,3 +1 @@
-DIST barby-0.6.6.tar.gz 95120 BLAKE2B e46f261eb11eb2f5b17061e6cbe04419df81d4248a9bed8a5f8f90cba9329915cacf3fa48cc922f4eac14ca7eada87e5be526d9b0d2e0bd1f443daf09af89088 SHA512 5b0a00861b9cecee153c5e1f4e1564d99021b3f7f6005efc48d666f8b4255e91f18792d19b9ae635d40f72dbb38de8db215a252b553138be737a52a8ba85c728
-DIST barby-0.6.7.tar.gz 95199 BLAKE2B b1729e361a41deee248a3c74c56d072fe0eeb3463ff4730744736e1a523f2844e877d63b058ec02e4cdad1f77620bcd476e823864428aff78b462cf29b20909a SHA512 29ba52612b2390ebd2a9e0acc0eec4a4c119ca305662f47e6656cb63727956877970d14f9b924466fad6e9e927e23f74c2614b41e09ca6b068bdabbaae21f93f
DIST barby-0.6.8.tar.gz 96647 BLAKE2B b0af8e5573dc7d3d1881c793895d1c440b97bb5609b0759f56bdecfed7b4b74080f96301d2511101abb21760074584905fdc4e94938d38e2a553933686ccf976 SHA512 1d51dece22febd8c8a234241b88edd3ea93eae328e69fbd8dba3f48afcea7943ec4a72252a74b476aae5812ee132de6b87e37f9fd4c2a43d7c79ec68c831b68c
diff --git a/dev-ruby/barby/barby-0.6.6.ebuild b/dev-ruby/barby/barby-0.6.6.ebuild
deleted file mode 100644
index aeeacc4af08b..000000000000
--- a/dev-ruby/barby/barby-0.6.6.ebuild
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby barcode generator that doesn't rely on 3rd party libraries"
-HOMEPAGE="http://toreto.re/barby/"
-
-GITHUB_USER="toretore"
-SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test qrcode rmagick prawn png cairo"
-
-ruby_add_rdepend "
- rmagick? ( dev-ruby/rmagick )
- cairo? ( dev-ruby/rcairo )"
-
-ruby_add_rdepend "qrcode? ( dev-ruby/rqrcode )
- png? ( dev-ruby/chunky_png )
- prawn? ( dev-ruby/prawn:* )"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-# testing requires imagemagick capable of png output
-DEPEND+=" test? ( media-gfx/imagemagick[png] )"
-
-# prawn breaks tests for some reasons, needs to be investigated; code
-# still works though.
-RESTRICT="prawn? ( test )"
-
-all_ruby_prepare() {
- sed -i -e 's/README/README.md/' Rakefile || die
-
- sed -i -e '/[bB]undler/s:^:#:' test/test_helper.rb || die
-
- if use qrcode; then
- sed -i -e '/^end/i s.add_dependency "rqrcode"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/barcode/qr_code.rb \
- test/qr_code_test.rb
- fi
-
- if use rmagick; then
- sed -i -e '/^end/i s.add_dependency "rmagick"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/outputter/rmagick_outputter.rb \
- test/outputter/rmagick_outputter_test.rb
- fi
-
- if use prawn; then
- sed -i -e '/^end/i s.add_dependency "prawn"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/outputter/prawn_outputter.rb \
- test/outputter/prawn_outputter_test.rb
- fi
-
- if use png; then
- sed -i -e '/^end/i s.add_dependency "chunky_png"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/outputter/png_outputter.rb \
- test/outputter/png_outputter_test.rb
- fi
-
- if use cairo; then
- sed -i -e '/^end/i s.add_dependency "cairo"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/outputter/cairo_outputter.rb \
- test/outputter/cairo_outputter_test.rb
- fi
-
- rm -f \
- lib/barby/barcode/data_matrix.rb \
- test/data_matrix_test.rb \
- lib/barby/outputter/pdfwriter_outputter.rb \
- test/outputter/pdfwriter_outputter_test.rb || die
-
- sed -i \
- -e '/semacode/d' \
- -e '/pdf-writer/d' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/barby/barby-0.6.7.ebuild b/dev-ruby/barby/barby-0.6.7.ebuild
deleted file mode 100644
index b0e8897fd519..000000000000
--- a/dev-ruby/barby/barby-0.6.7.ebuild
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby barcode generator that doesn't rely on 3rd party libraries"
-HOMEPAGE="http://toreto.re/barby/"
-
-GITHUB_USER="toretore"
-SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test qrcode rmagick prawn png cairo"
-
-ruby_add_rdepend "
- rmagick? ( dev-ruby/rmagick )
- cairo? ( dev-ruby/rcairo )"
-
-ruby_add_rdepend "qrcode? ( dev-ruby/rqrcode )
- png? ( dev-ruby/chunky_png )
- prawn? ( dev-ruby/prawn:* )"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-# testing requires imagemagick capable of png output
-DEPEND+=" test? ( media-gfx/imagemagick[png] )"
-
-# prawn breaks tests for some reasons, needs to be investigated; code
-# still works though.
-RESTRICT="prawn? ( test )"
-
-all_ruby_prepare() {
- sed -i -e 's/README/README.md/' Rakefile || die
-
- sed -i -e '/[bB]undler/s:^:#:' test/test_helper.rb || die
-
- if use qrcode; then
- sed -i -e '/^end/i s.add_dependency "rqrcode"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/barcode/qr_code.rb \
- test/qr_code_test.rb
- fi
-
- if use rmagick; then
- sed -i -e '/^end/i s.add_dependency "rmagick"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/outputter/rmagick_outputter.rb \
- test/outputter/rmagick_outputter_test.rb
- fi
-
- if use prawn; then
- sed -i -e '/^end/i s.add_dependency "prawn"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/outputter/prawn_outputter.rb \
- test/outputter/prawn_outputter_test.rb
- fi
-
- if use png; then
- sed -i -e '/^end/i s.add_dependency "chunky_png"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/outputter/png_outputter.rb \
- test/outputter/png_outputter_test.rb
- fi
-
- if use cairo; then
- sed -i -e '/^end/i s.add_dependency "cairo"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/outputter/cairo_outputter.rb \
- test/outputter/cairo_outputter_test.rb
- fi
-
- rm -f \
- lib/barby/barcode/data_matrix.rb \
- test/data_matrix_test.rb \
- lib/barby/outputter/pdfwriter_outputter.rb \
- test/outputter/pdfwriter_outputter_test.rb || die
-
- sed -i \
- -e '/semacode/d' \
- -e '/pdf-writer/d' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/barby/barby-0.6.8-r1.ebuild b/dev-ruby/barby/barby-0.6.8-r1.ebuild
new file mode 100644
index 000000000000..26423a9c0361
--- /dev/null
+++ b/dev-ruby/barby/barby-0.6.8-r1.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="test"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby barcode generator that doesn't rely on 3rd party libraries"
+HOMEPAGE="http://toreto.re/barby/"
+
+GITHUB_USER="toretore"
+SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test qrcode rmagick prawn png cairo"
+
+ruby_add_rdepend "
+ rmagick? ( dev-ruby/rmagick:* )
+ cairo? ( dev-ruby/rcairo )"
+
+ruby_add_rdepend "qrcode? ( dev-ruby/rqrcode )
+ png? ( dev-ruby/chunky_png )
+ prawn? ( dev-ruby/prawn:* )"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+# testing requires imagemagick capable of png output
+DEPEND+=" test? ( media-gfx/imagemagick[png] )"
+
+# prawn breaks tests for some reasons, needs to be investigated; code
+# still works though.
+RESTRICT="!test? ( test ) prawn? ( test )"
+
+all_ruby_prepare() {
+ sed -i -e 's/README/README.md/' Rakefile || die
+
+ sed -e '/[bB]undler/s:^:#:' \
+ -e 's/MiniTest/Minitest/' \
+ -i test/test_helper.rb || die
+
+ sed -i -e 's/Fixnum/Integer/' test/outputter/svg_outputter_test.rb || die
+
+ if use qrcode; then
+ sed -i -e '/^end/i s.add_dependency "rqrcode"' ${RUBY_FAKEGEM_GEMSPEC}
+ else
+ rm \
+ lib/barby/barcode/qr_code.rb \
+ test/qr_code_test.rb
+ fi
+
+ if use rmagick; then
+ sed -i -e '/^end/i s.add_dependency "rmagick"' ${RUBY_FAKEGEM_GEMSPEC}
+ else
+ rm \
+ lib/barby/outputter/rmagick_outputter.rb \
+ test/outputter/rmagick_outputter_test.rb
+ fi
+
+ if use prawn; then
+ sed -i -e '/^end/i s.add_dependency "prawn"' ${RUBY_FAKEGEM_GEMSPEC}
+ else
+ rm \
+ lib/barby/outputter/prawn_outputter.rb \
+ test/outputter/prawn_outputter_test.rb
+ fi
+
+ if use png; then
+ sed -i -e '/^end/i s.add_dependency "chunky_png"' ${RUBY_FAKEGEM_GEMSPEC}
+ else
+ rm \
+ lib/barby/outputter/png_outputter.rb \
+ test/outputter/png_outputter_test.rb
+ fi
+
+ if use cairo; then
+ sed -i -e '/^end/i s.add_dependency "cairo"' ${RUBY_FAKEGEM_GEMSPEC}
+ else
+ rm \
+ lib/barby/outputter/cairo_outputter.rb \
+ test/outputter/cairo_outputter_test.rb
+ fi
+
+ sed -i -e '/files/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ rm -f \
+ lib/barby/barcode/data_matrix.rb \
+ test/data_matrix_test.rb \
+ lib/barby/outputter/pdfwriter_outputter.rb \
+ test/outputter/pdfwriter_outputter_test.rb || die
+
+ sed -i \
+ -e '/semacode/d' \
+ -e '/pdf-writer/d' \
+ ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/barby/barby-0.6.8.ebuild b/dev-ruby/barby/barby-0.6.8.ebuild
deleted file mode 100644
index 82ab2d6bd6df..000000000000
--- a/dev-ruby/barby/barby-0.6.8.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby barcode generator that doesn't rely on 3rd party libraries"
-HOMEPAGE="http://toreto.re/barby/"
-
-GITHUB_USER="toretore"
-SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test qrcode rmagick prawn png cairo"
-
-ruby_add_rdepend "
- rmagick? ( dev-ruby/rmagick )
- cairo? ( dev-ruby/rcairo )"
-
-ruby_add_rdepend "qrcode? ( dev-ruby/rqrcode )
- png? ( dev-ruby/chunky_png )
- prawn? ( dev-ruby/prawn:* )"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-# testing requires imagemagick capable of png output
-DEPEND+=" test? ( media-gfx/imagemagick[png] )"
-
-# prawn breaks tests for some reasons, needs to be investigated; code
-# still works though.
-RESTRICT="prawn? ( test )"
-
-all_ruby_prepare() {
- sed -i -e 's/README/README.md/' Rakefile || die
-
- sed -i -e '/[bB]undler/s:^:#:' test/test_helper.rb || die
-
- if use qrcode; then
- sed -i -e '/^end/i s.add_dependency "rqrcode"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/barcode/qr_code.rb \
- test/qr_code_test.rb
- fi
-
- if use rmagick; then
- sed -i -e '/^end/i s.add_dependency "rmagick"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/outputter/rmagick_outputter.rb \
- test/outputter/rmagick_outputter_test.rb
- fi
-
- if use prawn; then
- sed -i -e '/^end/i s.add_dependency "prawn"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/outputter/prawn_outputter.rb \
- test/outputter/prawn_outputter_test.rb
- fi
-
- if use png; then
- sed -i -e '/^end/i s.add_dependency "chunky_png"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/outputter/png_outputter.rb \
- test/outputter/png_outputter_test.rb
- fi
-
- if use cairo; then
- sed -i -e '/^end/i s.add_dependency "cairo"' ${RUBY_FAKEGEM_GEMSPEC}
- else
- rm \
- lib/barby/outputter/cairo_outputter.rb \
- test/outputter/cairo_outputter_test.rb
- fi
-
- sed -i -e '/files/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- rm -f \
- lib/barby/barcode/data_matrix.rb \
- test/data_matrix_test.rb \
- lib/barby/outputter/pdfwriter_outputter.rb \
- test/outputter/pdfwriter_outputter_test.rb || die
-
- sed -i \
- -e '/semacode/d' \
- -e '/pdf-writer/d' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/barby/metadata.xml b/dev-ruby/barby/metadata.xml
index 11d98bf735dc..c74e310548de 100644
--- a/dev-ruby/barby/metadata.xml
+++ b/dev-ruby/barby/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/base32/Manifest b/dev-ruby/base32/Manifest
index 6b7632a1d85d..423b9c1b4222 100644
--- a/dev-ruby/base32/Manifest
+++ b/dev-ruby/base32/Manifest
@@ -1 +1 @@
-DIST base32-0.3.2.gem 8192 BLAKE2B de7d3484f54a83b497da2ea79a51237df9e058b0d9317613b1cefa5e3d93225248e8406a4564137080870c076fbe6340cfc7cc11cad48a397c1740d47de6963b SHA512 9d66961774b9d5923d099229f80ceacec95d40d5d6d3842fda33ff6bf4070f9dc17d758a6cbc93a6200f4e0105bc60175f70d057469e684f01910ea07fd85a2f
+DIST base32-0.3.4.gem 9216 BLAKE2B 370c18e0e4689a3f59d7a75c03ecd1cb43d1748fd2239d3b9755e529c79863af8ad1c747e445d1ffdce7d900ea5300a12d1b63f6045798e4abd308efbe4d79fe SHA512 43ac8e2d2e801401f57d8013cf55cb5ab19a6349e610af151220a18f1b997d3a29d1423db93c4169a2b335d988e8458be447415d2bbc7745592fb3eb54dea0ff
diff --git a/dev-ruby/base32/base32-0.3.2.ebuild b/dev-ruby/base32/base32-0.3.2.ebuild
deleted file mode 100644
index 7c85940163b0..000000000000
--- a/dev-ruby/base32/base32-0.3.2.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library which provides base32 decoding and encoding"
-HOMEPAGE="https://rubygems.org/gems/base32 https://github.com/stesla/base32"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? (
- dev-ruby/minitest
- dev-ruby/rake )"
-
-all_ruby_prepare() {
- sed -i -e "1,10d" Rakefile || die
-}
diff --git a/dev-ruby/base32/base32-0.3.4-r1.ebuild b/dev-ruby/base32/base32-0.3.4-r1.ebuild
new file mode 100644
index 000000000000..093f1ecbaee9
--- /dev/null
+++ b/dev-ruby/base32/base32-0.3.4-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library which provides base32 decoding and encoding"
+HOMEPAGE="https://rubygems.org/gems/base32 https://github.com/stesla/base32"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitest
+ dev-ruby/rake )"
+
+all_ruby_prepare() {
+ sed -i -e "1,10d" Rakefile || die
+}
diff --git a/dev-ruby/base32/metadata.xml b/dev-ruby/base32/metadata.xml
index 8fe8ff8a05e0..5926e98d357b 100644
--- a/dev-ruby/base32/metadata.xml
+++ b/dev-ruby/base32/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/base64/Manifest b/dev-ruby/base64/Manifest
new file mode 100644
index 000000000000..fbc53ae7f1d0
--- /dev/null
+++ b/dev-ruby/base64/Manifest
@@ -0,0 +1,2 @@
+DIST base64-0.1.1.tar.gz 4704 BLAKE2B c995292e1abd1e9c28db0cf4c6dbdf9b388062bc4f618c6fcf9404faa6516f5e9689965f63edbd44ca91d4c938be72293b3ad3aad87bed8be0c7a5f064cc83fd SHA512 3ac6dac47deba30002fb19e369fac50c1c3838c7ed8545eff462b7c6402f731d9dd1951f56bb1b2a31bec324c8a28ef94599650129f66bae72dccc72707ff7af
+DIST base64-0.2.0.tar.gz 7004 BLAKE2B a70b357f4998925dc9c6c365e23f0c45eca100170271d2daf3ead56a3656d0a5cc77f8d4e84796c486a7f96dcf520e0a4ba22d3b880926afe41f0603952a93ef SHA512 e2b8f6b28de6eba1b6fdb6496ded0b37465f848d6b338715c715289a221ea9b2df3bef15f32d686cea53a76443f0ed0a183becdb666f842e54f827e08cf0f474
diff --git a/dev-ruby/base64/base64-0.1.1.ebuild b/dev-ruby/base64/base64-0.1.1.ebuild
new file mode 100644
index 000000000000..093c9abc72b5
--- /dev/null
+++ b/dev-ruby/base64/base64-0.1.1.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="base64.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Support for encoding and decoding binary data using a Base64 representation."
+HOMEPAGE="https://github.com/ruby/base64"
+SRC_URI="https://github.com/ruby/base64/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/base64/base64-0.2.0.ebuild b/dev-ruby/base64/base64-0.2.0.ebuild
new file mode 100644
index 000000000000..8cecfd8aee84
--- /dev/null
+++ b/dev-ruby/base64/base64-0.2.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="base64.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Support for encoding and decoding binary data using a Base64 representation."
+HOMEPAGE="https://github.com/ruby/base64"
+SRC_URI="https://github.com/ruby/base64/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/__FILE__/"base64.gemspec"/' \
+ -e 's/__dir__/"."/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/base64/metadata.xml b/dev-ruby/base64/metadata.xml
new file mode 100644
index 000000000000..da4e24add3eb
--- /dev/null
+++ b/dev-ruby/base64/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/base64</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/bcat/Manifest b/dev-ruby/bcat/Manifest
deleted file mode 100644
index 3df437c5ea75..000000000000
--- a/dev-ruby/bcat/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST bcat-0.6.2.gem 22016 BLAKE2B abfaec6d9db25990838019d0e9f4dde918f260c01340e34ab272f8a2e02155674ca38bf91843925df31102982cba02ada69abbf7e9ec4b91d4f2cb87b27be339 SHA512 142f853ca0931e5ba300276b1db0977fa275b9b13602940fbaca2c5d32ff881fe753dee25632526a348d71cf71eb6e390aed821b4ba1f48e380d6369ad87ead7
diff --git a/dev-ruby/bcat/bcat-0.6.2-r3.ebuild b/dev-ruby/bcat/bcat-0.6.2-r3.ebuild
deleted file mode 100644
index 003a4dc0803a..000000000000
--- a/dev-ruby/bcat/bcat-0.6.2-r3.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC="man"
-RUBY_FAKEGEM_EXTRADOC="README"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Pipe to browser utility for use at the shell and within editors"
-HOMEPAGE="https://github.com/rtomayko/bcat"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86 ~x86-fbsd"
-IUSE=""
-
-# Collides on /usr/bin/bcat, bug 418301
-RDEPEND="${RDEPEND} !!<app-accessibility/speech-tools-2.1-r3"
-
-ruby_add_bdepend "doc? ( app-text/ronn )
- test? ( dev-ruby/test-unit:2 )"
-
-ruby_add_rdepend "=dev-ruby/rack-1*:*"
-
-each_ruby_prepare() {
- sed -i -e "s/a2h/#{ENV['RUBY']} -S a2h/" test/test_bcat_a2h.rb || die
-}
-
-each_ruby_test() {
- # The Rakefile uses weird trickery with load path that causes gems
- # not to be found. Run tests directly instead and do the trickery
- # here to support popen calls for the bins in this package.
- RUBY=${RUBY} RUBYLIB=lib:${RUBYLIB} PATH=bin:${PATH} ${RUBY} -S testrb-2 test/test_*.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- doman man/*.1
-}
diff --git a/dev-ruby/bcat/metadata.xml b/dev-ruby/bcat/metadata.xml
deleted file mode 100644
index 644bab734fa8..000000000000
--- a/dev-ruby/bcat/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rtomayko/bcat</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/bcrypt-ruby/Manifest b/dev-ruby/bcrypt-ruby/Manifest
index 7435e645c8a0..add1a765ec4f 100644
--- a/dev-ruby/bcrypt-ruby/Manifest
+++ b/dev-ruby/bcrypt-ruby/Manifest
@@ -1,3 +1,2 @@
-DIST bcrypt-3.1.11.gem 44032 BLAKE2B debdc199ff3806b32998c91a99006f293ca6ebbfe2573546afda7c705fbdc0ac8f4cdfba97c1765668cfe3782cb4f9affff1b59b20c42e19fd14a6fa52f66160 SHA512 bf9ff0d3cdd7044b4ee5796cd04869f21bb3384143b0f336bc2cd9a8f0db3f9562aa23a39601c1d86f153b62f07469ef066616f8a52cfcd840377e331cb22454
-DIST bcrypt-3.1.12.gem 44544 BLAKE2B 767d38c3fc03e24bedc6a14668538d214219b93fed0b918dedfd5aabc25cd46273e0f7a849dbfa8d23e4ace2ec037809dcd927a9942bfcc126def7e707252c39 SHA512 1cb465bc00e40c82c7b9789cf5ba96273a455f4c1c993f411a9b80d39aa9c938e4909a094ca92af786ad3cd836eebac2aefcbe1bb29c6238947e55fcdc110d35
-DIST bcrypt-3.1.13.gem 54272 BLAKE2B b2a349955a066e39cc50540ff116e70e2bac359c03ddd9dfa35d6a946d15235921cd82feec8b1d76f5f82a3ff9dea288f115dc8e1fae3f24e559a1462e173ccd SHA512 d996f381643a0322d66a1a5dc7d26887baaf48d90ac8f87283bf2aa35f2a0048049e1df10d95283d37f25e3331ca3cb19a9a7c12b95fa1b1a1bdec0e5d8133bf
+DIST bcrypt-3.1.19.gem 55296 BLAKE2B 8187a84381f9654ee271b0019dcbc0d0487b2efde384673be6838c7d019e8bebcdefd18e1d82b51e5518eeccebe673646582aaf0f9ce776db86b9d552e645330 SHA512 b34e48db1222f1c36a31afbd8a68dc87fb99431d90ec0932705999a04146886139c3654d8a9b615221dfe7048b8b0cc642a8f9819700bfa079e847d70483badf
+DIST bcrypt-ruby-3.1.20.tar.gz 51778 BLAKE2B 7278019f07aa2c0625a40a90d6a79ba99aa966ae72639427f06bc1fd4e7463d19765ceaa9700a588d168f422ad6a9ac391c683424d4bef4b30df2b667fca4bcb SHA512 a89e992a8684211fda22074269000475f7975dd41f05f9b1c2acd82e7a7e084134dc33c66053b315dc918f848330f2990545e7c806c17b69cdffbf2b382e0f4d
diff --git a/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.11-r1.ebuild b/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.11-r1.ebuild
deleted file mode 100644
index 3c7e313f372d..000000000000
--- a/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.11-r1.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-RUBY_FAKEGEM_NAME="bcrypt"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="An easy way to keep your users' passwords secure"
-HOMEPAGE="https://github.com/codahale/bcrypt-ruby"
-LICENSE="MIT"
-
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/git ls-files/d' bcrypt.gemspec || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/mri extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/mri V=1
- cp ext/mri/*$(get_modname) lib/ || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- # bcrypt was called bcrypt-ruby before, so add a spec file that
- # simply loads bcrypt to make sure that old projects load correctly
- # we don't even need to create a file to load this: the `require
- # bcrypt` was already part of bcrypt-ruby requirements.
- cat - <<EOF > "${T}/bcrypt-ruby.gemspec"
-Gem::Specification.new do |s|
- s.name = "bcrypt-ruby"
- s.version = "${RUBY_FAKEGEM_VERSION}"
- s.summary = "Fake gem to load bcrypt"
- s.homepage = "${HOMEPAGE}"
- s.specification_version = 3
- s.add_runtime_dependency("${RUBY_FAKEGEM_NAME}", ["= ${RUBY_FAKEGEM_VERSION}"])
-end
-EOF
- RUBY_FAKEGEM_NAME=bcrypt-ruby \
- RUBY_FAKEGEM_GEMSPEC="${T}/bcrypt-ruby.gemspec" \
- ruby_fakegem_install_gemspec
-}
diff --git a/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.12.ebuild b/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.12.ebuild
deleted file mode 100644
index 774897c69c35..000000000000
--- a/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.12.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-RUBY_FAKEGEM_NAME="bcrypt"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="An easy way to keep your users' passwords secure"
-HOMEPAGE="https://github.com/codahale/bcrypt-ruby"
-LICENSE="MIT"
-
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/git ls-files/d' bcrypt.gemspec || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/mri extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/mri V=1
- cp ext/mri/*$(get_modname) lib/ || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- # bcrypt was called bcrypt-ruby before, so add a spec file that
- # simply loads bcrypt to make sure that old projects load correctly
- # we don't even need to create a file to load this: the `require
- # bcrypt` was already part of bcrypt-ruby requirements.
- cat - <<EOF > "${T}/bcrypt-ruby.gemspec"
-Gem::Specification.new do |s|
- s.name = "bcrypt-ruby"
- s.version = "${RUBY_FAKEGEM_VERSION}"
- s.summary = "Fake gem to load bcrypt"
- s.homepage = "${HOMEPAGE}"
- s.specification_version = 3
- s.add_runtime_dependency("${RUBY_FAKEGEM_NAME}", ["= ${RUBY_FAKEGEM_VERSION}"])
-end
-EOF
- RUBY_FAKEGEM_NAME=bcrypt-ruby \
- RUBY_FAKEGEM_GEMSPEC="${T}/bcrypt-ruby.gemspec" \
- ruby_fakegem_install_gemspec
-}
diff --git a/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.13.ebuild b/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.13.ebuild
deleted file mode 100644
index 929efd4d33e7..000000000000
--- a/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.13.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-RUBY_FAKEGEM_NAME="bcrypt"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="An easy way to keep your users' passwords secure"
-HOMEPAGE="https://github.com/codahale/bcrypt-ruby"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/git ls-files/d' bcrypt.gemspec || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/mri extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/mri V=1
- cp ext/mri/*$(get_modname) lib/ || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- # bcrypt was called bcrypt-ruby before, so add a spec file that
- # simply loads bcrypt to make sure that old projects load correctly
- # we don't even need to create a file to load this: the `require
- # bcrypt` was already part of bcrypt-ruby requirements.
- cat - <<EOF > "${T}/bcrypt-ruby.gemspec"
-Gem::Specification.new do |s|
- s.name = "bcrypt-ruby"
- s.version = "${RUBY_FAKEGEM_VERSION}"
- s.summary = "Fake gem to load bcrypt"
- s.homepage = "${HOMEPAGE}"
- s.specification_version = 3
- s.add_runtime_dependency("${RUBY_FAKEGEM_NAME}", ["= ${RUBY_FAKEGEM_VERSION}"])
-end
-EOF
- RUBY_FAKEGEM_NAME=bcrypt-ruby \
- RUBY_FAKEGEM_GEMSPEC="${T}/bcrypt-ruby.gemspec" \
- ruby_fakegem_install_gemspec
-}
diff --git a/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.19.ebuild b/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.19.ebuild
new file mode 100644
index 000000000000..ea8b4a585fc2
--- /dev/null
+++ b/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.19.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
+
+RUBY_FAKEGEM_NAME="bcrypt"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/mri/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="An easy way to keep your users' passwords secure"
+HOMEPAGE="https://github.com/bcrypt-ruby/bcrypt-ruby"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -i -e 's/git ls-files/find */' bcrypt.gemspec || die
+}
diff --git a/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.20.ebuild b/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.20.ebuild
new file mode 100644
index 000000000000..8579ba51f11d
--- /dev/null
+++ b/dev-ruby/bcrypt-ruby/bcrypt-ruby-3.1.20.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
+
+RUBY_FAKEGEM_NAME="bcrypt"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/mri/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="An easy way to keep your users' passwords secure"
+HOMEPAGE="https://github.com/bcrypt-ruby/bcrypt-ruby"
+SRC_URI="https://github.com/bcrypt-ruby/bcrypt-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -i -e 's/git ls-files/find */' bcrypt.gemspec || die
+}
diff --git a/dev-ruby/bcrypt-ruby/metadata.xml b/dev-ruby/bcrypt-ruby/metadata.xml
index 7b40466101e9..6dcce36d22a7 100644
--- a/dev-ruby/bcrypt-ruby/metadata.xml
+++ b/dev-ruby/bcrypt-ruby/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">codahale/bcrypt-ruby</remote-id>
+ <remote-id type="github">bcrypt-ruby/bcrypt-ruby</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/bcrypt_pbkdf/Manifest b/dev-ruby/bcrypt_pbkdf/Manifest
index c142f23b22df..1c3c6e4df953 100644
--- a/dev-ruby/bcrypt_pbkdf/Manifest
+++ b/dev-ruby/bcrypt_pbkdf/Manifest
@@ -1,2 +1 @@
-DIST bcrypt_pbkdf-1.0.0.gem 24576 BLAKE2B 0d5b1d90d57dbae986fcbb92cabb0ea598d6b928dc97026e8d2078f41898e0c143544a004a561c0a392504baa4b845a27f9c1e19c369f6342f7ace9de7f04d3f SHA512 b582407617633f5277cde9251ed1fd2ca408ae8bd19cc73f107d7932bed38061dc0099d3033ff5def1b586507392c33d8c50815fb156322f0dd08fbbe4a8e967
-DIST bcrypt_pbkdf-1.0.1.gem 24576 BLAKE2B 7ccade2b5eeabcdcffe5c53bf8ed2e4163536229b7ccd356e173c0b2a27c720aa5429ea0081d2a3e7e7cfc52613c32a48529233156b56db4bbd48da61bbd9cdf SHA512 7caf65dc48ec9d51dbde7741b0960e2606129f888787db31fe36f3cf103d51f06156e942badb10310faa8ca9dcf8f7f8dd86358431942a6e2097714ae3462dee
+DIST bcrypt_pbkdf-1.1.0.gem 24576 BLAKE2B 4fb9449c23c1a1caefbe7acae630eff9c6ee22b77d1eaed6475400ab2b37186d3f15b867cdad364daaaf27d6b817d6a2a49cfbf567a889264fdd64903f06cf89 SHA512 a7b9f123274a2f93e183be7339149b1df3b185331fdc63af58e342ae4bb734fdcf709214a50922218b837481349948e10ec879f9b8e1a6928b1b7b5617f83be5
diff --git a/dev-ruby/bcrypt_pbkdf/bcrypt_pbkdf-1.0.0.ebuild b/dev-ruby/bcrypt_pbkdf/bcrypt_pbkdf-1.0.0.ebuild
deleted file mode 100644
index 9969222909a0..000000000000
--- a/dev-ruby/bcrypt_pbkdf/bcrypt_pbkdf-1.0.0.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Implements bcrypt_pdkfd (a variant of PBKDF2 with bcrypt-based PRF)"
-HOMEPAGE="https://github.com/net-ssh/bcrypt_pbkdf-ruby"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="amd64 ~arm ppc ppc64 x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/rbnacl )"
-
-all_ruby_prepare() {
- # Don't use a ruby-bundled version of libsodium
- sed -i -e '/rbnacl\/libsodium/ s:^:#:' test/bcrypt_pnkdf/engine_test.rb || die
-
- # Avoid unneeded rake-compiler dependency
- sed -i -e '/extensiontask/ s:^:#:' -e '/ExtensionTask/,/^end/ s:^:#:' Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/mri extconf.rb || die
-
- # Some methods may not be inlined on x86 but they are not defined either, bug 629164
- sed -i -e 's:-Wl,--no-undefined::' ext/mri/Makefile || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/mri
- cp ext/mri/bcrypt_pbkdf_ext.so lib/ || die
-}
diff --git a/dev-ruby/bcrypt_pbkdf/bcrypt_pbkdf-1.0.1.ebuild b/dev-ruby/bcrypt_pbkdf/bcrypt_pbkdf-1.0.1.ebuild
deleted file mode 100644
index 54cd5f62f5a5..000000000000
--- a/dev-ruby/bcrypt_pbkdf/bcrypt_pbkdf-1.0.1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Implements bcrypt_pdkfd (a variant of PBKDF2 with bcrypt-based PRF)"
-HOMEPAGE="https://github.com/net-ssh/bcrypt_pbkdf-ruby"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( virtual/ruby-ssl )"
-
-all_ruby_prepare() {
- # Don't use a ruby-bundled version of libsodium
- sed -i -e '/rbnacl\/libsodium/ s:^:#:' test/bcrypt_pnkdf/engine_test.rb || die
-
- # Avoid unneeded rake-compiler dependency
- sed -i -e '/extensiontask/ s:^:#:' -e '/ExtensionTask/,/^end/ s:^:#:' Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/mri extconf.rb || die
-
- # Some methods may not be inlined on x86 but they are not defined either, bug 629164
- sed -i -e 's:-Wl,--no-undefined::' ext/mri/Makefile || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/mri
- cp ext/mri/bcrypt_pbkdf_ext.so lib/ || die
-}
diff --git a/dev-ruby/bcrypt_pbkdf/bcrypt_pbkdf-1.1.0-r2.ebuild b/dev-ruby/bcrypt_pbkdf/bcrypt_pbkdf-1.1.0-r2.ebuild
new file mode 100644
index 000000000000..3f22ce59f2f1
--- /dev/null
+++ b/dev-ruby/bcrypt_pbkdf/bcrypt_pbkdf-1.1.0-r2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/mri/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Implements bcrypt_pdkfd (a variant of PBKDF2 with bcrypt-based PRF)"
+HOMEPAGE="https://github.com/net-ssh/bcrypt_pbkdf-ruby"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( virtual/ruby-ssl )"
+
+all_ruby_prepare() {
+ # Don't use a ruby-bundled version of libsodium
+ sed -i -e '/rbnacl\/libsodium/ s:^:#:' test/bcrypt_pnkdf/engine_test.rb || die
+
+ # Avoid unneeded rake-compiler dependency
+ sed -e '/extensiontask/ s:^:#:' -e '/ExtensionTask/,/^end/ s:^:#:' \
+ -e '/bundler/ s:^:#:' \
+ -i Rakefile || die
+
+ # Fix minitest deprecation
+ sed -e 's/MiniTest::Unit::TestCase/Minitest::Test/' \
+ -i test/*/*_test.rb || die
+
+ sed -i -e 's/git ls-files/find * -print/' bcrypt_pbkdf.gemspec || die
+}
+
+each_ruby_configure() {
+ each_fakegem_configure
+ # Some methods may not be inlined on x86 but they are not defined either, bug 629164
+
+ sed -i -e 's:-Wl,--no-undefined::' ext/mri/Makefile || die
+}
diff --git a/dev-ruby/bcrypt_pbkdf/metadata.xml b/dev-ruby/bcrypt_pbkdf/metadata.xml
index cae815148e5b..bf82dcb65d7b 100644
--- a/dev-ruby/bcrypt_pbkdf/metadata.xml
+++ b/dev-ruby/bcrypt_pbkdf/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/benchmark-ips/Manifest b/dev-ruby/benchmark-ips/Manifest
new file mode 100644
index 000000000000..180ffe448ddf
--- /dev/null
+++ b/dev-ruby/benchmark-ips/Manifest
@@ -0,0 +1,2 @@
+DIST benchmark-ips-2.12.0.tar.gz 20676 BLAKE2B 1473fb8cc42d62cf6b7206d91c9d959707109e3ade9d712d82ab5ccfdcc48bb4874bae4c37370561aa60fe8c99078564a22a5a216daa6b870015329db1094af1 SHA512 ad4a7133b73d3ead583513704cbf00ef858b7fc5477686d3841614f05a83f3b4551b1fcab78e9a8affe7c8487112d9fde5012bf8a8e13621d289d792ff27c061
+DIST benchmark-ips-2.13.0.tar.gz 20781 BLAKE2B 61a04395559a75b012c168345926f0f92954453081da4a0280b99f95f91c66633b04f99caf485a2b35036428719149154792e463cf7b4f6ab57c176506456235 SHA512 a167dbd4ecaf233c36da7cbfb2283447124ef190b174dc4f9f3281bf4de01b86044e55972fd25560b2612b1eed329e6f2d737f16d2e0961e04fce861b64a747f
diff --git a/dev-ruby/benchmark-ips/benchmark-ips-2.12.0.ebuild b/dev-ruby/benchmark-ips/benchmark-ips-2.12.0.ebuild
new file mode 100644
index 000000000000..a04779c5d17a
--- /dev/null
+++ b/dev-ruby/benchmark-ips/benchmark-ips-2.12.0.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 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+RUBY_FAKEGEM_GEMSPEC="benchmark-ips.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A iterations per second enhancement to Benchmark"
+HOMEPAGE="https://github.com/evanphx/benchmark-ips"
+SRC_URI="https://github.com/evanphx/benchmark-ips/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+SLOT="0"
+IUSE=""
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.6:5 )"
+
+all_ruby_prepare() {
+ sed -i -e '1i require "tempfile"' test/test_benchmark_ips.rb || die
+ sed -i -e 's/git ls-files --/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/benchmark-ips/benchmark-ips-2.13.0.ebuild b/dev-ruby/benchmark-ips/benchmark-ips-2.13.0.ebuild
new file mode 100644
index 000000000000..de94161a5f5f
--- /dev/null
+++ b/dev-ruby/benchmark-ips/benchmark-ips-2.13.0.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+RUBY_FAKEGEM_GEMSPEC="benchmark-ips.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A iterations per second enhancement to Benchmark"
+HOMEPAGE="https://github.com/evanphx/benchmark-ips"
+SRC_URI="https://github.com/evanphx/benchmark-ips/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+SLOT="0"
+IUSE=""
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.6:5 )"
+
+all_ruby_prepare() {
+ sed -i -e '1i require "tempfile"' test/test_benchmark_ips.rb || die
+ sed -i -e 's/git ls-files --/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/benchmark-ips/metadata.xml b/dev-ruby/benchmark-ips/metadata.xml
new file mode 100644
index 000000000000..d1f507c20b56
--- /dev/null
+++ b/dev-ruby/benchmark-ips/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">evanphx/benchmark-ips</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/best_in_place/Manifest b/dev-ruby/best_in_place/Manifest
deleted file mode 100644
index 96287f000a3d..000000000000
--- a/dev-ruby/best_in_place/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST best_in_place-3.1.1.gem 75264 BLAKE2B 9d37d42f44430bd4d51c3cbeff2a95a3ba9552bda1c9650c4abf2996cfa4bbe1a36b627dea61c7a0bf861b27f4e88f7c70f6859cc5bf12c705eaf1c184690fd3 SHA512 f6a26590769f8d6ab6b6bf9ef955e2c26b6116ab82ccaf3bc26cfae435cb0bc594facae6dcb052bafdaaeb5806f7091eb9ad21e51940030eadd437ae342f1d33
diff --git a/dev-ruby/best_in_place/best_in_place-3.1.1.ebuild b/dev-ruby/best_in_place/best_in_place-3.1.1.ebuild
deleted file mode 100644
index ebeece79995a..000000000000
--- a/dev-ruby/best_in_place/best_in_place-3.1.1.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-# if ever needed
-#GITHUB_USER="bernat"
-#GITHUB_PROJECT="${PN}"
-#RUBY_S="${GITHUB_USER}-${GITHUB_PROJECT}-*"
-
-inherit virtualx ruby-fakegem
-
-DESCRIPTION="In-place editor helper for Rails 3"
-HOMEPAGE="https://github.com/bernat/best_in_place"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/actionpack-3.2:*
- >=dev-ruby/railties-3.2:*
-"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/rdiscount
- dev-ruby/rspec-rails:3
- >=dev-ruby/nokogiri-1.5.0
- >=dev-ruby/capybara-1.1.2
- >=dev-ruby/rails-3.2
- >=dev-ruby/sqlite3-1.3.4-r1
- dev-ruby/bundler
- dev-ruby/combustion
- dev-ruby/jquery-rails
- dev-ruby/jquery-ui-rails
- )"
-
-all_ruby_prepare() {
- sed -i \
- -e '/git ls-files/d' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # Tweak Gemfile so we can use it to run specs but can avoid missing
- # dependencies. Also use packaged versions of jquery and jquery-ui.
- sed -i -e '/\(rails-assets\|appraisal\)/ s:^:#:' \
- -e '2agem "rspec", "~>3.0"' \
- -e '2agem "jquery-rails"' -e '2agem "jquery-ui-rails"' \
- -e '/byebug/ s:^:#:' \
- -e '/\(launchy\|poltergeist\)/d' \
- Gemfile
- sed -i -e '/poltergeist/,/javascript_driver/ s:^:#:' spec/rails_helper.rb || die
-
- # Remove integration tests. They fail to run and depend on obsolete
- # poltergeist/phantomjs.
- rm -rf spec/integration || die
-}
-
-each_ruby_test() {
- ${RUBY} -S bundle exec rspec-3 spec || die
-}
diff --git a/dev-ruby/best_in_place/metadata.xml b/dev-ruby/best_in_place/metadata.xml
deleted file mode 100644
index b53aebe9fcc6..000000000000
--- a/dev-ruby/best_in_place/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">bernat/best_in_place</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/bigdecimal/Manifest b/dev-ruby/bigdecimal/Manifest
new file mode 100644
index 000000000000..9d68fe041217
--- /dev/null
+++ b/dev-ruby/bigdecimal/Manifest
@@ -0,0 +1,4 @@
+DIST bigdecimal-3.1.4.tar.gz 115069 BLAKE2B 7c7df4ceac6caa44414cf2fe4e16ee21b8d4a868097e5a6d3e7bdae8521b572b6facae5023fac28dafe9a659a93f0cb56ef2762f84b85959358ee9a33be687b1 SHA512 5e89906d4df0890d61ddca9cc88549acac6c94fc7267975a0ad8684855283c60a2f5fbd48051569c33fa513b6c25485d474446066911577f8cad00c26b57cd43
+DIST bigdecimal-3.1.5.tar.gz 105064 BLAKE2B 472f364f34ab37478e7d6570bb7cd9a35a82f973ef09806fc9229793392a5daa2f66b2303a75ca43b098c7413c9a358ffe07bd592d499d671bac5136690b2b11 SHA512 fd6c463412dbe626e98cffaf977967eb5bbaa15670131132e16050470184443b0d773ede9df1a8196f7f2c0362060f7d79727a970ad5bd6b4031d5875867b8c5
+DIST bigdecimal-3.1.6.tar.gz 104969 BLAKE2B 50c90c9d7fbce71d9a4ac1c32d6340ce07101e87cea4597c1365bdd84d24811cea2c65b7c7afb9a9d66125527ade7cc1c090aae77541d86b91d4d6990bb3cd59 SHA512 e44278f9d193575f27fd63a9a9687529295a65413ff98f07c1278328304acc4a5f9d3e1367f5bccab515f2b209465d0147661fe7f822bea901466d9dd33324c0
+DIST bigdecimal-3.1.7.tar.gz 104984 BLAKE2B 0c0a97d120edce1946bd134f810ccb7f068465d678f3396b39a6e0e540dcefe03c5b8d2cee90f5c96481513065f4645bfbfcc10116bac6b80f7e22344a34024e SHA512 567dcbd010d4879c74286f440082ea9e9b9873c53ab208db4e96a21c5d8c786c6e622a29698e9e9202803b6bf2fcef1d15ff24b784184738664c4be847d2d749
diff --git a/dev-ruby/bigdecimal/bigdecimal-3.1.4-r1.ebuild b/dev-ruby/bigdecimal/bigdecimal-3.1.4-r1.ebuild
new file mode 100644
index 000000000000..d2aa1a8266e2
--- /dev/null
+++ b/dev-ruby/bigdecimal/bigdecimal-3.1.4-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/bigdecimal/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+RUBY_FAKEGEM_GEMSPEC="bigdecimal.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Arbitrary-precision decimal floating-point number library for Ruby"
+HOMEPAGE="https://github.com/ruby/bigdecimal"
+SRC_URI="https://github.com/ruby/bigdecimal/archive/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 ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+all_ruby_prepare() {
+ sed -e '/^source_version/,/^end/ s:^:#:' \
+ -e "/s.version/ s/= source_version/= '${PV}'/" \
+ -e "/s.name/ s/= name/= 'bigdecimal'/" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -rtest/lib/helper -e "Dir['test/**/test_*.rb'].each { require _1 }" || die
+}
diff --git a/dev-ruby/bigdecimal/bigdecimal-3.1.5.ebuild b/dev-ruby/bigdecimal/bigdecimal-3.1.5.ebuild
new file mode 100644
index 000000000000..da315d9f8d8d
--- /dev/null
+++ b/dev-ruby/bigdecimal/bigdecimal-3.1.5.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/bigdecimal/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+RUBY_FAKEGEM_GEMSPEC="bigdecimal.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Arbitrary-precision decimal floating-point number library for Ruby"
+HOMEPAGE="https://github.com/ruby/bigdecimal"
+SRC_URI="https://github.com/ruby/bigdecimal/archive/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 ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+all_ruby_prepare() {
+ sed -e '/^source_version/,/^end/ s:^:#:' \
+ -e "/s.version/ s/= source_version/= '${PV}'/" \
+ -e "/s.name/ s/= name/= 'bigdecimal'/" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -rtest/lib/helper -e "Dir['test/**/test_*.rb'].each { require _1 }" || die
+}
diff --git a/dev-ruby/bigdecimal/bigdecimal-3.1.6.ebuild b/dev-ruby/bigdecimal/bigdecimal-3.1.6.ebuild
new file mode 100644
index 000000000000..26898456a09b
--- /dev/null
+++ b/dev-ruby/bigdecimal/bigdecimal-3.1.6.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/bigdecimal/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+RUBY_FAKEGEM_GEMSPEC="bigdecimal.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Arbitrary-precision decimal floating-point number library for Ruby"
+HOMEPAGE="https://github.com/ruby/bigdecimal"
+SRC_URI="https://github.com/ruby/bigdecimal/archive/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 ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+all_ruby_prepare() {
+ sed -e '/^source_version/,/^end/ s:^:#:' \
+ -e "/s.version/ s/= source_version/= '${PV}'/" \
+ -e "/s.name/ s/= name/= 'bigdecimal'/" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -rtest/lib/helper -e "Dir['test/**/test_*.rb'].each { require _1 }" || die
+}
diff --git a/dev-ruby/bigdecimal/bigdecimal-3.1.7.ebuild b/dev-ruby/bigdecimal/bigdecimal-3.1.7.ebuild
new file mode 100644
index 000000000000..26898456a09b
--- /dev/null
+++ b/dev-ruby/bigdecimal/bigdecimal-3.1.7.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/bigdecimal/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+RUBY_FAKEGEM_GEMSPEC="bigdecimal.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Arbitrary-precision decimal floating-point number library for Ruby"
+HOMEPAGE="https://github.com/ruby/bigdecimal"
+SRC_URI="https://github.com/ruby/bigdecimal/archive/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 ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+all_ruby_prepare() {
+ sed -e '/^source_version/,/^end/ s:^:#:' \
+ -e "/s.version/ s/= source_version/= '${PV}'/" \
+ -e "/s.name/ s/= name/= 'bigdecimal'/" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -rtest/lib/helper -e "Dir['test/**/test_*.rb'].each { require _1 }" || die
+}
diff --git a/dev-ruby/bigdecimal/metadata.xml b/dev-ruby/bigdecimal/metadata.xml
new file mode 100644
index 000000000000..2df3a2ecd5cf
--- /dev/null
+++ b/dev-ruby/bigdecimal/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/bigdecimal</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/bindata/Manifest b/dev-ruby/bindata/Manifest
index fa5b7841c0d7..f5415d758c68 100644
--- a/dev-ruby/bindata/Manifest
+++ b/dev-ruby/bindata/Manifest
@@ -1,2 +1,2 @@
-DIST bindata-2.4.1.gem 78848 BLAKE2B a497299aca02abe61c64fe946ef928ade75f58195bdafa1b5ac842c7dd272e0dd2e5da957b558492bb1dd1e47da7da1525c0d54f0e97e571c5db804e8b24ef7e SHA512 5bbbb38f7deb461c234801677baf30bf6d5300dd46f201ebcaef4cc4182354e1ed375fc1c341a13d6b3a1f579e25e4e53d8aeab0dd979a581131e2a984758243
-DIST bindata-2.4.4.gem 79872 BLAKE2B f22f8af6270cd7d790031d2ab53a80f2480ad687abd91803ce556495d1fe8f09e1c316ccfc5b35f2cf914e44e17121d3cc84baab19d51a5671b540429d6ff1f2 SHA512 c7af17ea3c7aec6360acfbe0b511700706daec24a4028c86eee441baaad39c259200ee66d33e6f73766c24ae9a8a3c00e5a0c140b4e12e0d526046cd81c6ce79
+DIST bindata-2.4.15.gem 80384 BLAKE2B e874f396d1ac7902db0fadca4b2d75da3af6ef553d84cea07a7fefa2fcba46d383c4c4b1ec0db8e744675253fd86dc5e9a287b3834616286a08f1e5605711443 SHA512 366b9de24ce6276832f0ea9c76cad70b433aa1f7f29839a1317b0fe2582f9c91d16ea90d74da7364d94f088b53ada2597b0e25cee859487657af4db20efed930
+DIST bindata-2.5.0.gem 83456 BLAKE2B 237ad6310c1af3af2c57637395082c65d445098a80971debcf1744f97bda027c0a6bcd21ef3f208adee3fd238f50697ec3c28537bd355d434c83f5b7efb6f0ee SHA512 17aa458d9450775f46247f97c04e9c73fbf629321404b1c785e077028ab1edaf5e9bd5cbbc606b950a7bd968b3a1460c55fbbffedad16a4d7df6fc67781ef356
diff --git a/dev-ruby/bindata/bindata-2.4.1.ebuild b/dev-ruby/bindata/bindata-2.4.1.ebuild
deleted file mode 100644
index 88c6970cf0a9..000000000000
--- a/dev-ruby/bindata/bindata-2.4.1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Parsing Binary Data in Ruby"
-HOMEPAGE="https://github.com/dmendel/bindata"
-
-LICENSE="BSD-2"
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -i -e '/[Cc]overalls/d' test/test_helper.rb || die
-}
diff --git a/dev-ruby/bindata/bindata-2.4.15.ebuild b/dev-ruby/bindata/bindata-2.4.15.ebuild
new file mode 100644
index 000000000000..a170452bcbfc
--- /dev/null
+++ b/dev-ruby/bindata/bindata-2.4.15.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Parsing Binary Data in Ruby"
+HOMEPAGE="https://github.com/dmendel/bindata"
+
+LICENSE="BSD-2"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~x86"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+ sed -i -e '/[Cc]overalls/d' test/test_helper.rb || die
+}
diff --git a/dev-ruby/bindata/bindata-2.4.4.ebuild b/dev-ruby/bindata/bindata-2.4.4.ebuild
deleted file mode 100644
index e08c6e1a982d..000000000000
--- a/dev-ruby/bindata/bindata-2.4.4.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Parsing Binary Data in Ruby"
-HOMEPAGE="https://github.com/dmendel/bindata"
-
-LICENSE="BSD-2"
-SLOT="2"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -i -e '/[Cc]overalls/d' test/test_helper.rb || die
-}
diff --git a/dev-ruby/bindata/bindata-2.5.0.ebuild b/dev-ruby/bindata/bindata-2.5.0.ebuild
new file mode 100644
index 000000000000..a30bd5321636
--- /dev/null
+++ b/dev-ruby/bindata/bindata-2.5.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Parsing Binary Data in Ruby"
+HOMEPAGE="https://github.com/dmendel/bindata"
+
+LICENSE="BSD-2"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+ sed -i -e '/simplecov/,/^end/ s:^:#:' test/test_helper.rb || die
+}
diff --git a/dev-ruby/bindata/metadata.xml b/dev-ruby/bindata/metadata.xml
index 4ff4595c0e57..3d6fbecca45b 100644
--- a/dev-ruby/bindata/metadata.xml
+++ b/dev-ruby/bindata/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">dmendel/bindata</remote-id>
- </upstream>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">dmendel/bindata</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/bindex/Manifest b/dev-ruby/bindex/Manifest
index 015e99992e1f..c4d19e831849 100644
--- a/dev-ruby/bindex/Manifest
+++ b/dev-ruby/bindex/Manifest
@@ -1,2 +1 @@
-DIST bindex-0.7.0.gem 19456 BLAKE2B b9bbd6856e2e8c388aa02dbe6e93762cbb2011909ca62eb8d710e064c569f3f0454e352777434257920f33ce953195c48a368e337a672b63afd201c20597de16 SHA512 f991514979661cd7a03ece0aea368136ffcb8ed0b6d49ce11b3e1291d1dd3b653e78465b6433dc75b15cd320fb9839021937683828c8361b3cc1753377e3a757
DIST bindex-0.8.1.gem 19968 BLAKE2B dccbee6954c530f64ac13e7ed0108fe81978327c216ad2e60b675eed92419494cd32ba0e09ff2fa5371f3fff61e05661bdf704644cce49310dc6ce10888cc4e5 SHA512 18729825e329c24e483f1e181315d373d5095c18918088d915a8307e2775e5d0163dae50440f5c58609bf32806fa567ece8bfbbd69a061a8c30e367605bc3444
diff --git a/dev-ruby/bindex/bindex-0.7.0.ebuild b/dev-ruby/bindex/bindex-0.7.0.ebuild
deleted file mode 100644
index 052f6d718210..000000000000
--- a/dev-ruby/bindex/bindex-0.7.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Bindings for your Ruby exceptions"
-HOMEPAGE="https://github.com/gsamokovarov/bindex"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/skiptrace extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/skiptrace
- cp ext/skiptrace/cruby.so lib/skiptrace/ || die
-}
diff --git a/dev-ruby/bindex/bindex-0.8.1-r2.ebuild b/dev-ruby/bindex/bindex-0.8.1-r2.ebuild
new file mode 100644
index 000000000000..a8ef4919be76
--- /dev/null
+++ b/dev-ruby/bindex/bindex-0.8.1-r2.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/skiptrace/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/skiptrace/internal"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Bindings for your Ruby exceptions"
+HOMEPAGE="https://github.com/gsamokovarov/bindex"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e '/bundler/I s:^:#:' \
+ -e '/when/ s/ruby/rubyx/' \
+ -i Rakefile || die
+
+ # Fix minitest deprecation
+ sed -e 's/MiniTest/Minitest/' \
+ -i test/test_helper.rb || die
+}
diff --git a/dev-ruby/bindex/bindex-0.8.1.ebuild b/dev-ruby/bindex/bindex-0.8.1.ebuild
deleted file mode 100644
index b4793d77304c..000000000000
--- a/dev-ruby/bindex/bindex-0.8.1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Bindings for your Ruby exceptions"
-HOMEPAGE="https://github.com/gsamokovarov/bindex"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/skiptrace extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/skiptrace
- cp ext/skiptrace/cruby.so lib/skiptrace/internal/ || die
-}
diff --git a/dev-ruby/bindex/metadata.xml b/dev-ruby/bindex/metadata.xml
index 9bc55b14959a..fb72aad630d2 100644
--- a/dev-ruby/bindex/metadata.xml
+++ b/dev-ruby/bindex/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/binding_of_caller/Manifest b/dev-ruby/binding_of_caller/Manifest
index 66a1b369f1bc..4f507d39cba8 100644
--- a/dev-ruby/binding_of_caller/Manifest
+++ b/dev-ruby/binding_of_caller/Manifest
@@ -1 +1,2 @@
-DIST binding_of_caller-0.8.0.gem 87552 BLAKE2B 9097fe2dbf1e5ea2361bee94cb83ce8152f7e1357caecf1217b1643be225e21e5aa793e7fccbef5c983d5c204b95e633ded490158dfdd1d4e99fca81c51cb910 SHA512 d6ea4e893415eaf3614b109f8f36c3fa2378da9997d013fccbd0fc1e598886d11f7843023ceed2468184d5b8df01e2329ef16c7af57bc60bbd47304a53b43974
+DIST binding_of_caller-1.0.0.tar.gz 7473 BLAKE2B 2a8f3cee555e11c9eeb56935d0ee51deb037ea5fc631b4ef5eb50a831e48ba47c6a94e9104456bd8e6c4910bc76c5bc7e268db7de8c5ed283886b80c3feffd62 SHA512 89c58fec180b7bc25c5124035ed69692961148a3ddcb561643e7b8b1a78c3b103795408b52e70264db7c4b62080991219af977c5b981a135d573ecd56cebebba
+DIST binding_of_caller-1.0.1.tar.gz 7514 BLAKE2B 1a6786d4fa2a01f72bf5b38f8fced3950826488501fa15fb8b37188e345d6a93ce8a4598f7c4c0048ca05bfae8ff23daab8a0fb89da3140f83f20dbca60ae1f3 SHA512 ebdcb2e0e41efef38eec2aa814f4d875249e1fb4f4719238fae2c92533a37324fe64bc9edbebddf2d240f0c3dd213fddf1584cb9841e4fc946c6aecbe8543e34
diff --git a/dev-ruby/binding_of_caller/binding_of_caller-0.8.0.ebuild b/dev-ruby/binding_of_caller/binding_of_caller-0.8.0.ebuild
deleted file mode 100644
index 3f44e2cc1ec0..000000000000
--- a/dev-ruby/binding_of_caller/binding_of_caller-0.8.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="HISTORY README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Retrieve the binding of a method's caller"
-HOMEPAGE="https://github.com/banister/binding_of_caller"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/debug_inspector-0.0.1"
-
-ruby_add_bdepend "test? ( dev-ruby/bacon )"
-
-each_ruby_test() {
- ${RUBY} -S bacon -Itest -rubygems -a -q || die
-}
diff --git a/dev-ruby/binding_of_caller/binding_of_caller-1.0.0-r2.ebuild b/dev-ruby/binding_of_caller/binding_of_caller-1.0.0-r2.ebuild
new file mode 100644
index 000000000000..4f1a7d57733e
--- /dev/null
+++ b/dev-ruby/binding_of_caller/binding_of_caller-1.0.0-r2.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="binding_of_caller.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Retrieve the binding of a method's caller"
+HOMEPAGE="https://github.com/banister/binding_of_caller"
+SRC_URI="https://github.com/banister/binding_of_caller/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/debug_inspector-0.0.1"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ': './:" -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/binding_of_caller/binding_of_caller-1.0.1.ebuild b/dev-ruby/binding_of_caller/binding_of_caller-1.0.1.ebuild
new file mode 100644
index 000000000000..90fe35a91cb9
--- /dev/null
+++ b/dev-ruby/binding_of_caller/binding_of_caller-1.0.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="binding_of_caller.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Retrieve the binding of a method's caller"
+HOMEPAGE="https://github.com/banister/binding_of_caller"
+SRC_URI="https://github.com/banister/binding_of_caller/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/debug_inspector-1.2.0"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ': './:" -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/binding_of_caller/metadata.xml b/dev-ruby/binding_of_caller/metadata.xml
index b7fe626b3cd7..28a805750a43 100644
--- a/dev-ruby/binding_of_caller/metadata.xml
+++ b/dev-ruby/binding_of_caller/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/bit-struct/Manifest b/dev-ruby/bit-struct/Manifest
deleted file mode 100644
index 9925f5f7c960..000000000000
--- a/dev-ruby/bit-struct/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST bit-struct-0.16.gem 31232 BLAKE2B ed08c7054cab88ba0614863d706681601615b03e2dd3f19a4a1b8284dace17bf30e92ca9f1b0948c8c5e50424ab41b97f65cb65c804f771a207672b497c9df33 SHA512 8c31592d53daea5f283f8309a52c22c96c519d51c4e3c1657b36e83b802899aafe95eab9b88d9ec692e84207fc6bc952a1f1ff1354fc2b99fc327d58934bec8d
diff --git a/dev-ruby/bit-struct/bit-struct-0.16.ebuild b/dev-ruby/bit-struct/bit-struct-0.16.ebuild
deleted file mode 100644
index f98f7640f492..000000000000
--- a/dev-ruby/bit-struct/bit-struct-0.16.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Library for packed binary data stored in ruby Strings"
-HOMEPAGE="https://github.com/vjoel/bit-struct"
-
-LICENSE="Ruby-BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
diff --git a/dev-ruby/bit-struct/metadata.xml b/dev-ruby/bit-struct/metadata.xml
deleted file mode 100644
index 4090b8488014..000000000000
--- a/dev-ruby/bit-struct/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">vjoel/bit-struct</remote-id>
- <remote-id type="rubygems">bit-struct</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/blankslate/blankslate-3.1.3-r2.ebuild b/dev-ruby/blankslate/blankslate-3.1.3-r2.ebuild
new file mode 100644
index 000000000000..c5e15fc17c9a
--- /dev/null
+++ b/dev-ruby/blankslate/blankslate-3.1.3-r2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Base class with almost all of the methods from Object and Kernel being removed"
+HOMEPAGE="https://rubygems.org/gems/blankslate"
+
+IUSE=""
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+
+all_ruby_prepare() {
+ # Avoid test failing with rspec 2.x.
+ sed -i -e '/cleanliness/,/^ end/ s:^:#:' spec/blankslate_spec.rb || die
+}
diff --git a/dev-ruby/blankslate/blankslate-3.1.3.ebuild b/dev-ruby/blankslate/blankslate-3.1.3.ebuild
deleted file mode 100644
index 32bf3a514ae8..000000000000
--- a/dev-ruby/blankslate/blankslate-3.1.3.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="README"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Base class with almost all of the methods from Object and Kernel being removed"
-HOMEPAGE="https://rubygems.org/gems/blankslate"
-
-IUSE=""
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86"
-
-all_ruby_prepare() {
- # Avoid test failing with rspec 2.x.
- sed -i -e '/cleanliness/,/^ end/ s:^:#:' spec/blankslate_spec.rb || die
-}
diff --git a/dev-ruby/blankslate/metadata.xml b/dev-ruby/blankslate/metadata.xml
index eb5961852003..ae86ef1933ea 100644
--- a/dev-ruby/blankslate/metadata.xml
+++ b/dev-ruby/blankslate/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/blinkstick/blinkstick-1.0.1_p20150901-r1.ebuild b/dev-ruby/blinkstick/blinkstick-1.0.1_p20150901-r1.ebuild
new file mode 100644
index 000000000000..6f412b025e92
--- /dev/null
+++ b/dev-ruby/blinkstick/blinkstick-1.0.1_p20150901-r1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_VERSION="1.0.1.1"
+
+COMMIT="89e3f621132c2571d5f7c636b3962ff1b0a64564"
+
+inherit ruby-fakegem
+
+DESCRIPTION="ruby interface for blinkstick via libusb"
+HOMEPAGE="https://github.com/arvydas/blinkstick-ruby"
+SRC_URI="https://github.com/arvydas/blinkstick-ruby/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+RUBY_S="${PN}-ruby-${COMMIT}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="examples"
+
+ruby_add_rdepend "
+ >=dev-ruby/color-1.4.2
+ >=dev-ruby/libusb-0.4.0
+"
+
+all_ruby_install() {
+ if use examples; then
+ insinto /usr/share/${PN}
+ doins example-*.rb
+ fi
+ all_fakegem_install
+}
+
+each_ruby_install() {
+ mkdir -p lib/${PN}
+ mv ${PN}.rb lib
+ cat <<EOF >> lib/${PN}/version.rb
+class BlinkStick
+ VERSION = "1.0.1.1"
+end
+
+EOF
+ each_fakegem_install
+}
diff --git a/dev-ruby/blinkstick/blinkstick-1.0.1_p20150901.ebuild b/dev-ruby/blinkstick/blinkstick-1.0.1_p20150901.ebuild
deleted file mode 100644
index c31e21734f2a..000000000000
--- a/dev-ruby/blinkstick/blinkstick-1.0.1_p20150901.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_VERSION="1.0.1.1"
-
-COMMIT="89e3f621132c2571d5f7c636b3962ff1b0a64564"
-
-inherit ruby-fakegem
-
-DESCRIPTION="ruby interface for blinkstick via libusb"
-HOMEPAGE="https://github.com/arvydas/blinkstick-ruby"
-SRC_URI="https://github.com/arvydas/blinkstick-ruby/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
-RUBY_S="${PN}-ruby-${COMMIT}"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="examples"
-
-ruby_add_rdepend "
- >=dev-ruby/color-1.4.2
- >=dev-ruby/libusb-0.4.0
-"
-
-all_ruby_install() {
- if use examples; then
- insinto /usr/share/${PN}
- doins example-*.rb
- fi
- all_fakegem_install
-}
-
-each_ruby_install() {
- mkdir -p lib/${PN}
- mv ${PN}.rb lib
- cat <<EOF >> lib/${PN}/version.rb
-class BlinkStick
- VERSION = "1.0.1.1"
-end
-
-EOF
- each_fakegem_install
-}
diff --git a/dev-ruby/blinkstick/metadata.xml b/dev-ruby/blinkstick/metadata.xml
index 61b648b06390..62ef42604c64 100644
--- a/dev-ruby/blinkstick/metadata.xml
+++ b/dev-ruby/blinkstick/metadata.xml
@@ -1,10 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>zerochaos@gentoo.org</email>
<name>Rick Farina</name>
</maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
<upstream>
<remote-id type="github">arvydas/blinkstick-ruby</remote-id>
</upstream>
diff --git a/dev-ruby/bluecloth/Manifest b/dev-ruby/bluecloth/Manifest
deleted file mode 100644
index cf6164c81023..000000000000
--- a/dev-ruby/bluecloth/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST bluecloth-2.2.0.gem 94208 BLAKE2B e2fd3eaeebbbe365ebe076c3027ba1528c11e036eada18c9b6aecc2f0b1f389aa23c4072fbeba6ac2d86831943e3d6710308ad9d26d7c29a9ab571a7b5c52b98 SHA512 498ffc9eddd47ded1df5c60e8ae8647de1e0376c7787c42dad2450c15a237b01a734bd0a2742c56cb59831cddc5b35c88e954abc0a087fc803ce4890c07c2852
diff --git a/dev-ruby/bluecloth/bluecloth-2.2.0-r3.ebuild b/dev-ruby/bluecloth/bluecloth-2.2.0-r3.ebuild
deleted file mode 100644
index 40e0c450abc5..000000000000
--- a/dev-ruby/bluecloth/bluecloth-2.2.0-r3.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit multilib ruby-fakegem eutils
-
-DESCRIPTION="A Ruby implementation of Markdown"
-HOMEPAGE="http://www.deveiate.org/projects/BlueCloth"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="test"
-
-DEPEND+=" doc? ( dev-lang/perl )"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/diff-lcs
- dev-ruby/tidy-ext
- )"
-
-all_ruby_prepare() {
- # for Ruby 1.9.2 and 2.2.x compatibility
- sed -i -e '1i $: << "."' \
- -e 's/Config/RbConfig/' Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die
-}
-
-all_ruby_compile() {
- pod2man --center --release --name bluecloth --utf8 bluecloth.1.pod bluecloth.1 || die
-
- all_fakegem_compile
-}
-
-each_ruby_compile() {
- emake -Cext
- cp ext/bluecloth_ext$(get_modname) lib/ || die
-}
-
-all_ruby_install() {
- doman man/man1/bluecloth.1
-
- all_fakegem_install
-}
diff --git a/dev-ruby/bluecloth/metadata.xml b/dev-ruby/bluecloth/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/bluecloth/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/bogus/bogus-0.1.6-r1.ebuild b/dev-ruby/bogus/bogus-0.1.6-r1.ebuild
new file mode 100644
index 000000000000..bc5c0c687383
--- /dev/null
+++ b/dev-ruby/bogus/bogus-0.1.6-r1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ensuring that the things you stub or mock actually exist"
+HOMEPAGE="https://github.com/psyho/bogus"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/dependor-0.0.4"
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/,/^end/ s:^:#:' \
+ -e '/SimpleCov/,/^end/ s:^:#:' spec/spec_helper.rb || die
+
+ # Avoid dependency on unpackaged nulldb
+ rm -f spec/bogus/fakes/fake_ar_attributes_spec.rb || die
+
+ # Avoid keyword specs failing on ruby30
+ rm -r spec/bogus/ruby_2* || die
+}
diff --git a/dev-ruby/bogus/bogus-0.1.6.ebuild b/dev-ruby/bogus/bogus-0.1.6.ebuild
deleted file mode 100644
index 564805487b96..000000000000
--- a/dev-ruby/bogus/bogus-0.1.6.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ensuring that the things you stub or mock actually exist"
-HOMEPAGE="https://github.com/psyho/bogus"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/dependor-0.0.4"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/^end/ s:^:#:' \
- -e '/SimpleCov/,/^end/ s:^:#:' spec/spec_helper.rb || die
-
- # Avoid dependency on unpackaged nulldb
- rm -f spec/bogus/fakes/fake_ar_attributes_spec.rb || die
-}
diff --git a/dev-ruby/bogus/metadata.xml b/dev-ruby/bogus/metadata.xml
index bff7165d5bb3..e652b2b6eaee 100644
--- a/dev-ruby/bogus/metadata.xml
+++ b/dev-ruby/bogus/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/bones/Manifest b/dev-ruby/bones/Manifest
deleted file mode 100644
index 5f49291ac34c..000000000000
--- a/dev-ruby/bones/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST bones-3.8.4.gem 39936 BLAKE2B 2d666baa5e3df38e74f2ff45f3edf8f13fcc974e71df850a604c6d93d0015d7d9b05121c2e09b6f2f9af8adb8ccd08b4540784b27bfd466d977e565e8dd3031b SHA512 884eb6d84e121daf576eac427a97d69f3d6dfe1bd9c55fc7d821a0658193cbc3864e71b07af00cb6c629c180fce1faa6b314a6607878b665b62208fc1af7fbc4
diff --git a/dev-ruby/bones/bones-3.8.4-r2.ebuild b/dev-ruby/bones/bones-3.8.4-r2.ebuild
deleted file mode 100644
index 444e1d22f300..000000000000
--- a/dev-ruby/bones/bones-3.8.4-r2.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="default version.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Tool that creates new Ruby projects from a code skeleton"
-HOMEPAGE="https://github.com/TwP/bones"
-
-IUSE="test"
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-ruby_add_rdepend "
- dev-ruby/builder:*
- >=dev-ruby/loquacious-1.9.1
- >=dev-ruby/little-plugger-1.1.3
- =dev-ruby/rake-12*"
-
-all_ruby_prepare() {
- eapply "${FILESDIR}"/${PN}-3.8.1-builder.patch
-
- sed -i -e '/rdoc/,/Gem::Dependency/ s:~>:>=:' ../metadata || die
-}
diff --git a/dev-ruby/bones/files/bones-3.8.1-builder.patch b/dev-ruby/bones/files/bones-3.8.1-builder.patch
deleted file mode 100644
index b676c33a039f..000000000000
--- a/dev-ruby/bones/files/bones-3.8.1-builder.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/lib/bones/gem_package_task.rb 2013-12-03 19:04:22.577553656 +0000
-+++ b/lib/bones/gem_package_task.rb 2013-12-03 19:04:36.576377667 +0000
-@@ -2,11 +2,7 @@
- require 'find'
- require 'rake/packagetask'
- require 'rubygems/user_interaction'
--if RUBY_VERSION >= "2"
-- require 'rubygems/package'
--else
-- require 'rubygems/builder'
--end
-+require 'builder'
-
- class Bones::GemPackageTask < Rake::PackageTask
-
diff --git a/dev-ruby/bones/metadata.xml b/dev-ruby/bones/metadata.xml
deleted file mode 100644
index f3c0d7d82ca4..000000000000
--- a/dev-ruby/bones/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">TwP/bones</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/bourne/Manifest b/dev-ruby/bourne/Manifest
deleted file mode 100644
index f4976cd1d4ac..000000000000
--- a/dev-ruby/bourne/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST bourne-1.6.0.gem 15872 BLAKE2B 0167dada4ef99bdb184cea9368d225ce80a34cf57c7c619507f1b219e6f8b814ed68672b147227694b47eefa8d0d9a74cf343f003945697cbc6390a614b254ca SHA512 85bdc52b7e86bc86882ac3d815088da1ea882f828613079075a90b3a40cc41ac87bc503b36ee4ee5812374eb1cd83602832b15f2aaf0e01ea54244cc14bf71ac
diff --git a/dev-ruby/bourne/bourne-1.6.0.ebuild b/dev-ruby/bourne/bourne-1.6.0.ebuild
deleted file mode 100644
index 51ad07639436..000000000000
--- a/dev-ruby/bourne/bourne-1.6.0.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_TASK_TEST="MOCHA_OPTIONS=use_test_unit_gem test:units test:acceptance"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Extends mocha to allow tracking and querying of stub and mock invocations"
-HOMEPAGE="https://github.com/thoughtbot/bourne"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/mocha-1.5.0:1.0"
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
-
-all_ruby_prepare() {
- sed -i -e '/git ls-files/d' "${RUBY_FAKEGEM_GEMSPEC}" || die
- sed -i -e '/bundler/d' Rakefile || die
-
- # Fix tests to work with mocha 1.5.0 or newer where reset_instance is gone
- sed -i -e '/reset_instance/ s:^:#:' test/unit/*received_test.rb || die
- sed -i -e 's/Mockery.reset_instance/mocha_teardown/' test/unit/mockery_test.rb || die
-}
diff --git a/dev-ruby/bourne/metadata.xml b/dev-ruby/bourne/metadata.xml
deleted file mode 100644
index 1c4d076ee4a4..000000000000
--- a/dev-ruby/bourne/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">thoughtbot/bourne</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/brass/brass-1.2.1-r1.ebuild b/dev-ruby/brass/brass-1.2.1-r1.ebuild
new file mode 100644
index 000000000000..83fc1f29f193
--- /dev/null
+++ b/dev-ruby/brass/brass-1.2.1-r1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="" # it's a tiny stub test
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="BRASS is a very basic assertions framework for Ruby"
+HOMEPAGE="https://rubyworks.github.io/brass/"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
diff --git a/dev-ruby/brass/brass-1.2.1.ebuild b/dev-ruby/brass/brass-1.2.1.ebuild
deleted file mode 100644
index 0eb149da64c2..000000000000
--- a/dev-ruby/brass/brass-1.2.1.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="BRASS is a very basic assertions framework for Ruby"
-HOMEPAGE="https://rubyworks.github.io/brass/"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
diff --git a/dev-ruby/brass/metadata.xml b/dev-ruby/brass/metadata.xml
index 28ab0c15f206..165bdf961e91 100644
--- a/dev-ruby/brass/metadata.xml
+++ b/dev-ruby/brass/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">rubyworks/brass</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/brotli/Manifest b/dev-ruby/brotli/Manifest
new file mode 100644
index 000000000000..920fd15d981e
--- /dev/null
+++ b/dev-ruby/brotli/Manifest
@@ -0,0 +1,2 @@
+DIST brotli-0.4.0.tar.gz 9460 BLAKE2B b5d5e490c3ab086d6817c1ecc9143aefe88487d65d6774bda939b25bdb6aaaea4e28d99e01d49b90dbbccceba6643c0b5fdab0cea930eaf1661454996e61fab7 SHA512 7d1d2a1343aec11e840d840358d7d27b4ef93954bc17170d581b16d46191902b6fdf6380344f0d172e5e7f3fc0948146312659a44dc95973ec30ac3344f4a656
+DIST brotli-0.5.0.tar.gz 9449 BLAKE2B daf34e3b3bc175d883a844a9fedbbe686b2b103db9249bd47d616aafd75682d381b54de9b248ef3c44ac35e4873c7046332a2c177815f597ed6f527928728c1c SHA512 ac2b9594f4a6be95417bc1d84529e2df2cd97f23a0da77ac4fa4a0253af9dc89deae8adc226609ed7dd735b899ddcc1cafeba916a7ed928484796e16b276e010
diff --git a/dev-ruby/brotli/brotli-0.4.0-r2.ebuild b/dev-ruby/brotli/brotli-0.4.0-r2.ebuild
new file mode 100644
index 000000000000..4ddb166e4f1e
--- /dev/null
+++ b/dev-ruby/brotli/brotli-0.4.0-r2.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="brotli.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/brotli/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Brotli compressor/decompressor"
+HOMEPAGE="https://github.com/miyucy/brotli"
+SRC_URI="https://github.com/miyucy/brotli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64"
+IUSE=""
+
+RDEPEND+=" >=app-arch/brotli-1.0.7"
+DEPEND+=" >=app-arch/brotli-1.0.7"
+
+# Depends on the test data in app-arch/brotli
+RESTRICT="test"
+
+all_ruby_prepare() {
+ sed -e 's/git ls-files -z -- spec/find spec -print0/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/brotli/brotli-0.5.0.ebuild b/dev-ruby/brotli/brotli-0.5.0.ebuild
new file mode 100644
index 000000000000..ebec173f088d
--- /dev/null
+++ b/dev-ruby/brotli/brotli-0.5.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="brotli.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/brotli/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Brotli compressor/decompressor"
+HOMEPAGE="https://github.com/miyucy/brotli"
+SRC_URI="https://github.com/miyucy/brotli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+
+RDEPEND+=" >=app-arch/brotli-1.1.0"
+DEPEND+=" >=app-arch/brotli-1.1.0"
+
+# Depends on the test data in app-arch/brotli
+RESTRICT="test"
+
+all_ruby_prepare() {
+ sed -e 's/git ls-files -z -- spec/find spec -print0/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/brotli/metadata.xml b/dev-ruby/brotli/metadata.xml
new file mode 100644
index 000000000000..2a87908a027e
--- /dev/null
+++ b/dev-ruby/brotli/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">miyucy/brotli</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/bsearch/bsearch-1.5.0-r2.ebuild b/dev-ruby/bsearch/bsearch-1.5.0-r2.ebuild
deleted file mode 100644
index 0daed7760749..000000000000
--- a/dev-ruby/bsearch/bsearch-1.5.0-r2.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="doc/*"
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-fakegem
-DESCRIPTION="A binary search library for Ruby"
-HOMEPAGE="http://0xcc.net/ruby-bsearch/"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="alpha amd64 ~arm hppa ia64 ~mips ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i 's/ruby/\$\{RUBY\}/' test/test.sh || die
-}
-
-each_ruby_test() {
- pushd test
- RUBY=${RUBY} sh test.sh || die
- popd
-}
diff --git a/dev-ruby/bsearch/bsearch-1.5.0-r4.ebuild b/dev-ruby/bsearch/bsearch-1.5.0-r4.ebuild
new file mode 100644
index 000000000000..752c5d0331c7
--- /dev/null
+++ b/dev-ruby/bsearch/bsearch-1.5.0-r4.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="doc/*"
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+DESCRIPTION="A binary search library for Ruby"
+HOMEPAGE="http://0xcc.net/ruby-bsearch/"
+
+LICENSE="Ruby-BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~hppa ~mips ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i 's/ruby/\$\{RUBY\}/' test/test.sh || die
+}
+
+each_ruby_test() {
+ pushd test
+ RUBY=${RUBY} sh test.sh || die
+ popd
+}
diff --git a/dev-ruby/bsearch/metadata.xml b/dev-ruby/bsearch/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/bsearch/metadata.xml
+++ b/dev-ruby/bsearch/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/bson/Manifest b/dev-ruby/bson/Manifest
index 05507223c091..336fe437c41a 100644
--- a/dev-ruby/bson/Manifest
+++ b/dev-ruby/bson/Manifest
@@ -1,2 +1,2 @@
-DIST bson-4.4.2.tar.gz 107429 BLAKE2B 94b3f694d79a3219a6e7b13f4dfa5935a1fec5ac99883918d61052786b2e033d8cd335013155b4b9069a730a3a87a0c0ec00b8b5ee5b89bb8c357909e8f67fe4 SHA512 a27a82fab17f596df986a3c81f1e73146a8d283bb16e8a7dba1921215e8f0e863b6996dbc107ede44546e750e4b19cc2dd934d290e25712472efd6cc075b9984
-DIST bson-4.5.0.tar.gz 107547 BLAKE2B fddbb84ee74c3b6bb50a79141e583b300deeaa85b7b39b4e26985fa1cd0c741813eb4b3192fffe97d8bb238430087e4726004e8d3c50d39f17f8b270b8635dc4 SHA512 093a4906961d765bdd49febbe9c3123a34d3f80adc5e1309abb2b5fc1380bff37c9d8df475bfb29fc9359cf440813e716ff359e461f5e7f6d5e1e02009bc24bd
+DIST bson-4.15.0.gem 163328 BLAKE2B 21c28ee610a2e067c528e163ac4caec0e76d0ec1a73c8c89a2c455887da54aa0dfaa7ed840736013d87766c5cd4f23dc82b4c6474b0463a32b30575b28c5b898 SHA512 954dd419ab94dfde87d8902745885184505d74333fc71608f64544ca52f728782ea6fc3233718749c110c31ee14802ff240caa8ac4c170369d4adcf45557e79d
+DIST bson-5.0.0.gem 172544 BLAKE2B 574c1e42e3b625d0b24dc21eb731bd5b2f86ccc76cceb252635f6be3e504553ab7d267f0b128ae4cfe6da0135c4e0e588a78ae1955dcc5847a32ef64d4d81157 SHA512 31e3606328749937e523a0ec4f9a14da2fe8e03070b3602fd96a3b6742f060988d227029f85768c1ad22348b7af20efbe360b93956d7dc9efba429f9f8d36a47
diff --git a/dev-ruby/bson/bson-4.15.0.ebuild b/dev-ruby/bson/bson-4.15.0.ebuild
new file mode 100644
index 000000000000..a1eba82312d8
--- /dev/null
+++ b/dev-ruby/bson/bson-4.15.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_EXTENSIONS=(ext/bson/extconf.rb)
+
+GITHUB_USER="mongodb"
+GITHUB_PROJECT="bson-ruby"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby BSON implementation for MongoDB. (Includes binary C-based extension.)"
+HOMEPAGE="https://www.mongodb.org/"
+# We prefer rubygems if we can anyway, but note that rubygems has test sources we need,
+# but github *doesn't* (other way around to usual!)
+RUBY_S="bson-ruby-${PV}"
+
+LICENSE="APSL-2"
+SLOT="4"
+KEYWORDS="~amd64"
+IUSE="test doc"
+
+ruby_add_rdepend "dev-ruby/json"
+
+all_ruby_prepare() {
+ # Remove bundler support
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/bson/bson-4.4.2.ebuild b/dev-ruby/bson/bson-4.4.2.ebuild
deleted file mode 100644
index 0f75305e2757..000000000000
--- a/dev-ruby/bson/bson-4.4.2.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-GITHUB_USER="mongodb"
-GITHUB_PROJECT="bson-ruby"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A Ruby BSON implementation for MongoDB. (Includes binary C-based extension.)"
-HOMEPAGE="https://www.mongodb.org/"
-SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="bson-ruby-${PV}"
-
-LICENSE="APSL-2"
-SLOT="4"
-KEYWORDS="~amd64"
-IUSE="test doc"
-
-all_ruby_prepare() {
- # Remove bundler support
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
-
- # Remove project-specific rspec options
- rm .rspec || die
-}
-
-each_ruby_configure() {
- ${RUBY} -C ext/bson extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake -C ext/bson V=1 CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}"
- cp ext/bson/*$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/bson/bson-4.5.0.ebuild b/dev-ruby/bson/bson-4.5.0.ebuild
deleted file mode 100644
index da73b88ea528..000000000000
--- a/dev-ruby/bson/bson-4.5.0.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-GITHUB_USER="mongodb"
-GITHUB_PROJECT="bson-ruby"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A Ruby BSON implementation for MongoDB. (Includes binary C-based extension.)"
-HOMEPAGE="https://www.mongodb.org/"
-SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="bson-ruby-${PV}"
-
-LICENSE="APSL-2"
-SLOT="4"
-KEYWORDS="~amd64"
-IUSE="test doc"
-
-all_ruby_prepare() {
- # Remove bundler support
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
-
- # Remove project-specific rspec options
- rm .rspec || die
-}
-
-each_ruby_configure() {
- ${RUBY} -C ext/bson extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake -C ext/bson V=1 CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}"
- cp ext/bson/*$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/bson/bson-5.0.0.ebuild b/dev-ruby/bson/bson-5.0.0.ebuild
new file mode 100644
index 000000000000..bd1abf9c3ce5
--- /dev/null
+++ b/dev-ruby/bson/bson-5.0.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_EXTENSIONS=(ext/bson/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby BSON implementation for MongoDB. (Includes binary C-based extension.)"
+HOMEPAGE="https://www.mongodb.com/"
+# We prefer rubygems if we can anyway, but note that rubygems has test sources we need,
+# but github *doesn't* (other way around to usual!)
+RUBY_S="bson-ruby-${PV}"
+
+LICENSE="APSL-2"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="test doc"
+
+ruby_add_rdepend "dev-ruby/base64 dev-ruby/bigdecimal"
+
+all_ruby_prepare() {
+ # Remove bundler support
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/bson/metadata.xml b/dev-ruby/bson/metadata.xml
index 62dbcb87bba2..a91fa6e251e0 100644
--- a/dev-ruby/bson/metadata.xml
+++ b/dev-ruby/bson/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/buftok/Manifest b/dev-ruby/buftok/Manifest
index e3115652dc91..8b9470383121 100644
--- a/dev-ruby/buftok/Manifest
+++ b/dev-ruby/buftok/Manifest
@@ -1 +1 @@
-DIST buftok-0.2.0.gem 8192 BLAKE2B 673a14423e6a5b3fedf078f320116c9470b49e26aa7c4ef1bda47856a4befb7653d6b62bbf621ef8614885f64fcf078d9b2e24037c663a22b350ad44dac68070 SHA512 2be11c56b49254f16cadfd8abc7c414a16a54b32ec416402a4c87be72c2ce9c524aaa17ede9bb3535555191f2a7b1d7d863199db5b4af8874880bcd16d3c3b45
+DIST buftok-0.3.0.tar.gz 5710 BLAKE2B 9c00b72e0b4f2f55d6fb66e9665a620a6fe7228293906ff1104735cafcf2043f0a98c0a3dd38e3253552eebe86622099dcc0b97a1a892c17eb1c9e707ff3c1dc SHA512 b721eeda2173cee3276329282524a7173713a901bd338bb2ce6a0e2e121cd48b6647f51579d04f7353590a0da3208f4cced5321aaee77f4b7eb9ed256b674748
diff --git a/dev-ruby/buftok/buftok-0.2.0-r1.ebuild b/dev-ruby/buftok/buftok-0.2.0-r1.ebuild
deleted file mode 100644
index 1279b921e269..000000000000
--- a/dev-ruby/buftok/buftok-0.2.0-r1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CONTRIBUTING.md README.md"
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Statefully split input data by a specifiable token"
-HOMEPAGE="https://github.com/sferik/buftok"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
-}
diff --git a/dev-ruby/buftok/buftok-0.3.0-r1.ebuild b/dev-ruby/buftok/buftok-0.3.0-r1.ebuild
new file mode 100644
index 000000000000..1d812446bd51
--- /dev/null
+++ b/dev-ruby/buftok/buftok-0.3.0-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CONTRIBUTING.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="buftok.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Statefully split input data by a specifiable token"
+HOMEPAGE="https://github.com/sferik/buftok"
+SRC_URI="https://github.com/sferik/buftok/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile || die
+}
diff --git a/dev-ruby/buftok/metadata.xml b/dev-ruby/buftok/metadata.xml
index 6c0de048b37f..5b8a0a85f315 100644
--- a/dev-ruby/buftok/metadata.xml
+++ b/dev-ruby/buftok/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/builder/Manifest b/dev-ruby/builder/Manifest
index 99b0dab358a8..54c1783de911 100644
--- a/dev-ruby/builder/Manifest
+++ b/dev-ruby/builder/Manifest
@@ -1 +1 @@
-DIST builder-3.2.3.gem 31744 BLAKE2B be970ffd29f146faea5e7a9d76fedb513ce9bde3ed21ed7a44fe7d4a81e3836cecbf62f3f4c19f0b1e333f607b8978d9c707f4af76613592e966cda7e537bd1c SHA512 7869f44bcf40d547846d50ab82234694420b2f38e08037ae671c90a7c3b547f11023f864e70adf82970fdddf7ee811730c17e30ec298bb6d1999f4c0c050fbb8
+DIST builder-3.2.4.gem 32256 BLAKE2B a2768fe25023631d134f062d8e7ff2aa25f6b4db0358bdc0d4baebb33d93673fca66049b8b9c42382bad3494f6e03cefdedc72d71958dff63d43eb7a2a187c75 SHA512 730317ec0a4af33e183283e309e38d47deb08db0ab6bd6dfebdedcebb7470bd383c6c1d32ad674adc43298e0f86930b97c652fff9827ca8890db2d1d68e792f1
diff --git a/dev-ruby/builder/builder-3.2.3.ebuild b/dev-ruby/builder/builder-3.2.3.ebuild
deleted file mode 100644
index 03fd11cf1634..000000000000
--- a/dev-ruby/builder/builder-3.2.3.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGES"
-
-inherit versionator ruby-fakegem
-
-DESCRIPTION="A builder to facilitate programatic generation of XML markup"
-HOMEPAGE="http://onestepback.org/"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "doc? ( dev-ruby/rdoc )"
-
-all_ruby_prepare() {
- sed -i \
- -e '/rdoc\.template .*jamis/d' \
- Rakefile || die
-
- rm rakelib/* || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:.:test -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/builder/builder-3.2.4-r1.ebuild b/dev-ruby/builder/builder-3.2.4-r1.ebuild
new file mode 100644
index 000000000000..5913572ef19b
--- /dev/null
+++ b/dev-ruby/builder/builder-3.2.4-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGES"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A builder to facilitate programmatic generation of XML markup"
+HOMEPAGE="https://onestepback.org/"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i \
+ -e '/rdoc\.template .*jamis/d' \
+ Rakefile || die
+
+ rm rakelib/* || die
+}
+
+each_ruby_prepare() {
+ sed -e '/test_late_included_module_in_kernel_is_ok/askip "broken due to different ruby behavior"' \
+ -i test/test_blankslate.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/builder/metadata.xml b/dev-ruby/builder/metadata.xml
index eb1e47f2edfb..daac6fdb7252 100644
--- a/dev-ruby/builder/metadata.xml
+++ b/dev-ruby/builder/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/bundler-audit/Manifest b/dev-ruby/bundler-audit/Manifest
index f87ab536f2fa..4345b954f07c 100644
--- a/dev-ruby/bundler-audit/Manifest
+++ b/dev-ruby/bundler-audit/Manifest
@@ -1,2 +1 @@
-DIST bundler-audit-0.6.0.gem 108544 BLAKE2B 2014f3f2cad0a4305a0b1ef3a7ed0c76e2bb6a6c609568f2823e499c19d844bf41eccac3c6f8efeb51ebc938ea888164256fe41eb0d770e5eef5f3b00a837ecd SHA512 28213df41bba20b41b7398a2ac8f2086c5d2b80a7b31340a29b6e7c3818337f11e486284b14f000c590aaea6bb541222c4c5b71421e36a0e0a7c02e0feec9d7a
-DIST bundler-audit-0.6.1.gem 108032 BLAKE2B 84a3600e64846ced023af7cd922508f5f81f0bac64b3c9f1c360d0202adabfb3aaa3e8a7d5900a70bcbeec09424274c716bcc63707eb14d0052758f81fc5399e SHA512 b4b1c981070d55f1c7d7353a401f0efb9696544a522052fdae5b6abcf20a3facefc6f118eb0fd53ef859f1db5d84ab7dc5fe056b5d7cf1d458186294af1558b0
+DIST bundler-audit-0.9.1.gem 49152 BLAKE2B a4942a84e8b39b6087960a2c611d5473e41076587a020aadae982c9096f91b0681f312bdbc00d73db1ba034d65e05c970532246deebd4119911ed6abfc6655d6 SHA512 86060dd95669e358d7267799b48a179469fa8aec6d97ce3d3316c974be7aa4652958ad72e5302770e3dd372026bc1054438877f1741a82a63ac6fb0fc14628f0
diff --git a/dev-ruby/bundler-audit/bundler-audit-0.6.0.ebuild b/dev-ruby/bundler-audit/bundler-audit-0.6.0.ebuild
deleted file mode 100644
index 56e93e5a0a42..000000000000
--- a/dev-ruby/bundler-audit/bundler-audit-0.6.0.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides patch-level verification for Bundled apps"
-HOMEPAGE="https://github.com/rubysec/bundler-audit"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-#tests are trying to download AND have some odd failures
-#rspec ./spec/database_spec.rb:113 # Bundler::Audit::Database#size should eq 323
-#rspec ./spec/database_spec.rb:117 # Bundler::Audit::Database#advisories should return a list of all advisories.
-RESTRICT=test
-
-ruby_add_rdepend "
- >=dev-ruby/thor-0.18:0
- >=dev-ruby/bundler-1.2:0
-"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
-
- # Avoid specs that require network access via 'bundle install'
- rm spec/{integration,scanner}_spec.rb || die
-
- # Avoid specs that only work when the source is a git repository
- sed -i -e '/describe "path"/,/^ end/ s:^:#:' \
- -e '/describe "update!"/,/^ end/ s:^:#:' \
- spec/database_spec.rb || die
-}
diff --git a/dev-ruby/bundler-audit/bundler-audit-0.6.1.ebuild b/dev-ruby/bundler-audit/bundler-audit-0.6.1.ebuild
deleted file mode 100644
index 10d056040bb7..000000000000
--- a/dev-ruby/bundler-audit/bundler-audit-0.6.1.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides patch-level verification for Bundled apps"
-HOMEPAGE="https://github.com/rubysec/bundler-audit"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-#tests are trying to download AND have some odd failures
-#rspec ./spec/database_spec.rb:113 # Bundler::Audit::Database#size should eq 323
-#rspec ./spec/database_spec.rb:117 # Bundler::Audit::Database#advisories should return a list of all advisories.
-RESTRICT=test
-
-ruby_add_rdepend "
- >=dev-ruby/thor-0.18:0
- >=dev-ruby/bundler-1.2:0
-"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
-
- # Avoid specs that require network access via 'bundle install'
- rm spec/{integration,scanner}_spec.rb || die
-
- # Avoid specs that only work when the source is a git repository
- sed -i -e '/describe "path"/,/^ end/ s:^:#:' \
- -e '/describe "update!"/,/^ end/ s:^:#:' \
- spec/database_spec.rb || die
-}
diff --git a/dev-ruby/bundler-audit/bundler-audit-0.9.1.ebuild b/dev-ruby/bundler-audit/bundler-audit-0.9.1.ebuild
new file mode 100644
index 000000000000..cdce4cce4ea2
--- /dev/null
+++ b/dev-ruby/bundler-audit/bundler-audit-0.9.1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides patch-level verification for Bundled apps"
+HOMEPAGE="https://github.com/rubysec/bundler-audit"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+#tests are trying to download files
+RESTRICT=test
+
+ruby_add_rdepend "
+ dev-ruby/thor:1
+ dev-ruby/bundler:2
+"
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+
+ # Avoid specs that require network access via 'bundle install'
+ rm spec/{integration,scanner}_spec.rb || die
+
+ # Avoid specs that only work when the source is a git repository
+ sed -i -e '/describe "path"/,/^ end/ s:^:#:' \
+ -e '/describe "update!"/,/^ end/ s:^:#:' \
+ spec/database_spec.rb || die
+}
diff --git a/dev-ruby/bundler-audit/metadata.xml b/dev-ruby/bundler-audit/metadata.xml
index 4f3b349f06cc..1cdc1da58e5f 100644
--- a/dev-ruby/bundler-audit/metadata.xml
+++ b/dev-ruby/bundler-audit/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/bundler/Manifest b/dev-ruby/bundler/Manifest
index 13d92f9d8fe7..fd285e3db234 100644
--- a/dev-ruby/bundler/Manifest
+++ b/dev-ruby/bundler/Manifest
@@ -1,3 +1,7 @@
-DIST bundler-1.16.1.gem 349696 BLAKE2B 6057aed2e3bffdfa7f3ea8489c4ae79d9241b7b300fd35c4a2c14899ff306183165d1554be793a1856d9fd1c696161161049519fc8915800c68c60a9a5b116d8 SHA512 2cca87aa17b61df98ef98a648a7d7cfe0529015f1278e8cb2298bb12544157933d723bd666d945bcdbaceacbf97a092a3848e2a587bd01cffa73c662d37d4834
-DIST bundler-1.16.6.gem 356352 BLAKE2B da6d1d5e7edb5a2a4066cecd7caf33c06d15df2e719aaaa66d9ec9e7ce712eb28612224139f86df016bee28f5f00b767ed683de61dd820c7b40e211e3015a3d2 SHA512 4492786ffd22b86e056dc66c605a943140a1513dbada2334fd3340877f72a3f2138d1bca8f36be3d671f2f9497a69f3a95505db42e938bc30719d15f3896e155
-DIST bundler-1.17.3.gem 364032 BLAKE2B 81e097156a593e4ec85a2353aa6c62143d9aad120c22c5f76423c6c5f4e4d33206c8ef41c64e54ea53eb610a0d865beba19d3c033e8f65913564963319bb523f SHA512 658de4228bc12fa5ca6ce335f76fff773f64da9f3d12f5097b4fd28d4c4f4d2a5bf12dce761b3d95432c5ea6a5aafae895df87c26660a4567db8b682aff48c02
+DIST bundler-2.2.33.gem 401920 BLAKE2B bfdb62c86449683d479f735ff6d65d33576ff03f1d67f6001c46839111ee3c1307db86c9d02f050c2290b1d2e3133da1010ab9d1012aa0ee4c207148ff913aac SHA512 8ac6bc00eb7a206fbd4e0d0de5d636583f48006b51352e50896230afba1098aeae2418694c8592f73af02612fe8e10dacd71b79804b724fad7633b23c81f1d14
+DIST bundler-2.3.26.gem 411648 BLAKE2B 5ea0ff86e0e09bf0466e4bb21502a13519515f312b3df62024f0d293a51237eb30a5b3c349fb867e9b8dbf0e50ede5bc12b14c5cc6014a717d55534bf46d18f5 SHA512 03c6310c63ec4d313d48ecb15e784ae9cb2d2cb2cefc75752bbb7c018eeec45d534259646d525e486cd746ee8c179312c167338875e13f826994617622d2330d
+DIST bundler-2.4.15.gem 412672 BLAKE2B 3c73e082fa8a007cc626fd00093bf69ddf63ea00aba137594e1112db0900f2c7688d85dc3f22c7b569b1b3abb8977f3e6f850719b4bced12db9cd7959a376dba SHA512 0f2ea2a0ba113295dea5e42383d49a30fd580376088d81642796e6bec48e38b2f56115c052079a97040c5f2a89ff7e2a5cccfa5aab1e3053cad411b47e6ccaed
+DIST bundler-2.4.19.gem 413184 BLAKE2B 34607b2fdf1c7cb36982fa7c7bbd5c6f5b7c227c525cb9abae2c1099d401818d91ba233c7d3d4e42c59e97b357065f03a1e8fa4c814e0b4cd95ac4e043984015 SHA512 ff4a7541c8110a18223df4586f636a70fe301843d80444fc4954e9ca7018da0f7a62980a0abd5d91e26f5222b224f8afc3dc51fc12e03559d77496ee1aee1296
+DIST bundler-2.4.22.gem 419840 BLAKE2B 885686da1c100181b0faf3f5eea53e9c42ada65b89fcd29a3142644f13843c677d4a26faf42587b16c9978d2a935783ae57454ef0424d0078f20bc972d839671 SHA512 4e37e92de6dafeabb54876d270819b44025f1b674c8a39a2ad06cd70fab135237e296a5fa48dd4993dd52a293d76fe73b8529185766e566d0d7d0e4e8f205d65
+DIST bundler-2.4.6.gem 409600 BLAKE2B 5470a85b7ee0a88c13795516ee317eaf227ad49023f05dbbea1bbe0b2b4f2bb93fab85101128662845d8a2ad567bec04e5238e3a2d3b81c89aea81f18d552d4e SHA512 194d432a12bde41d7bdff5aefd187b539f4ab3932d6774f171147e4da907dc77f2ff56580c53151d5fdb77de2138b668f856e410cd63b1cda2fb996074771f35
+DIST bundler-2.5.3.gem 429568 BLAKE2B d692ec7b4bdedefd3d7b5063467834d6414bed135209547ab403e529500debfce4a2cc503d0b72aceb1bdb14541de48271340bd669e4c1b7e950381ffce910bc SHA512 31dcdf401075066c46eb50adc547deffa9da71d72841a12f6cee383765e7d428ca4a8df0795f07cb401578a65899f11fcaeeccaba4d0d65967ce67aee543a8cd
diff --git a/dev-ruby/bundler/bundler-1.16.1.ebuild b/dev-ruby/bundler/bundler-1.16.1.ebuild
deleted file mode 100644
index 59b671f488f0..000000000000
--- a/dev-ruby/bundler/bundler-1.16.1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-# 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_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-
-RUBY_FAKEGEM_BINDIR="exe"
-
-RUBY_FAKEGEM_EXTRAINSTALL="man"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An easy way to vendor gem dependencies"
-HOMEPAGE="https://github.com/carlhuda/bundler"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ppc ppc64 s390 sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-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/bundler/bundler-1.16.6.ebuild b/dev-ruby/bundler/bundler-1.16.6.ebuild
deleted file mode 100644
index a42efb0f3a6e..000000000000
--- a/dev-ruby/bundler/bundler-1.16.6.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-# 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_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-
-RUBY_FAKEGEM_BINDIR="exe"
-
-RUBY_FAKEGEM_EXTRAINSTALL="man"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An easy way to vendor gem dependencies"
-HOMEPAGE="https://github.com/carlhuda/bundler"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-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/bundler/bundler-1.17.3.ebuild b/dev-ruby/bundler/bundler-1.17.3.ebuild
deleted file mode 100644
index 4053b30a5d18..000000000000
--- a/dev-ruby/bundler/bundler-1.17.3.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# 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_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-
-RUBY_FAKEGEM_BINDIR="exe"
-
-RUBY_FAKEGEM_EXTRAINSTALL="man"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An easy way to vendor gem dependencies"
-HOMEPAGE="https://github.com/carlhuda/bundler"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-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/bundler/bundler-2.2.33-r1.ebuild b/dev-ruby/bundler/bundler-2.2.33-r1.ebuild
new file mode 100644
index 000000000000..d7150828d87d
--- /dev/null
+++ b/dev-ruby/bundler/bundler-2.2.33-r1.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/rubygems/rubygems"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha amd64 arm arm64 hppa ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend virtual/rubygems
+
+RDEPEND+=" dev-vcs/git !<dev-ruby/bundler-1.17.3-r1:0"
diff --git a/dev-ruby/bundler/bundler-2.3.26.ebuild b/dev-ruby/bundler/bundler-2.3.26.ebuild
new file mode 100644
index 000000000000..0d7d28f64890
--- /dev/null
+++ b/dev-ruby/bundler/bundler-2.3.26.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/rubygems/rubygems"
+
+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 ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend virtual/rubygems
+
+RDEPEND+=" dev-vcs/git"
diff --git a/dev-ruby/bundler/bundler-2.4.15.ebuild b/dev-ruby/bundler/bundler-2.4.15.ebuild
new file mode 100644
index 000000000000..3d9edeb1c010
--- /dev/null
+++ b/dev-ruby/bundler/bundler-2.4.15.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="ruby30 ruby31 ruby32"
+
+# 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/rubygems/rubygems"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend virtual/rubygems
+
+RDEPEND+=" dev-vcs/git"
diff --git a/dev-ruby/bundler/bundler-2.4.19.ebuild b/dev-ruby/bundler/bundler-2.4.19.ebuild
new file mode 100644
index 000000000000..cbaa392ed78b
--- /dev/null
+++ b/dev-ruby/bundler/bundler-2.4.19.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="ruby31 ruby32"
+
+# 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/rubygems/rubygems"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend virtual/rubygems
+
+RDEPEND+=" dev-vcs/git"
diff --git a/dev-ruby/bundler/bundler-2.4.22.ebuild b/dev-ruby/bundler/bundler-2.4.22.ebuild
new file mode 100644
index 000000000000..cbaa392ed78b
--- /dev/null
+++ b/dev-ruby/bundler/bundler-2.4.22.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="ruby31 ruby32"
+
+# 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/rubygems/rubygems"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend virtual/rubygems
+
+RDEPEND+=" dev-vcs/git"
diff --git a/dev-ruby/bundler/bundler-2.4.6.ebuild b/dev-ruby/bundler/bundler-2.4.6.ebuild
new file mode 100644
index 000000000000..9c3683f8c7fb
--- /dev/null
+++ b/dev-ruby/bundler/bundler-2.4.6.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 ruby32"
+
+# 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/rubygems/rubygems"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend virtual/rubygems
+
+RDEPEND+=" dev-vcs/git"
diff --git a/dev-ruby/bundler/bundler-2.5.3.ebuild b/dev-ruby/bundler/bundler-2.5.3.ebuild
new file mode 100644
index 000000000000..f7ab04ebb77d
--- /dev/null
+++ b/dev-ruby/bundler/bundler-2.5.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="ruby31 ruby32 ruby33"
+
+# 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/rubygems/rubygems"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend virtual/rubygems
+
+RDEPEND+=" dev-vcs/git"
diff --git a/dev-ruby/bundler/metadata.xml b/dev-ruby/bundler/metadata.xml
index bdb962a84ce5..a1bfd976bb6d 100644
--- a/dev-ruby/bundler/metadata.xml
+++ b/dev-ruby/bundler/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">carlhuda/bundler</remote-id>
+ <remote-id type="github">rubygems/rubygems</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/bunny/Manifest b/dev-ruby/bunny/Manifest
index 109b244acfcd..f24e6baedf9c 100644
--- a/dev-ruby/bunny/Manifest
+++ b/dev-ruby/bunny/Manifest
@@ -1,6 +1 @@
-DIST bunny-2.12.1.gem 204800 BLAKE2B 6b199da621cd047993ccec5d9efb579c6495a2332ea75bd70cbc6bf7cb4055b70c1ec12437552e953a5066ee8a09c612dce594f0b7cc926f8fbee8d2288cefcf SHA512 448b1a78db6b6204bc385f3aa6e8aa1c0cdbc440b0fd924863927b77e69ae1f7cef9b78e15c7ff3159bd46fec44b6ada943184ed45181e86e6148e3a84a5faca
-DIST bunny-2.13.0.gem 204800 BLAKE2B d79c52efee5853f9f5c851144d3ec329c681840d030c140109ebde5b1a400526dd5624700d289158349e655b0d4308c9732696d12fcc01cad98fa729af6cac6d SHA512 38291751c6a064179f4c07e36aed751f2656ae110c89de6e006c015aea0b62ac8b7533a7b86e9933ccb779a32381e3bca6b8e21a08bc5494610ef1d58d327d2a
-DIST bunny-2.14.0.gem 206848 BLAKE2B b36b534112599f121e6ac95870a320be8c42fd6bd91620f7432328ebe02a57015ffdc4bd50b61856dca65ecde44c99c98e1439921d552e986b2c37d56155c244 SHA512 f2a5d28597b6bd02ac80fe3977c30aa583cbfaff81988cadeab58ba5e482fbcab51a2e24b9e82b295bb512534e96248d1fa1d859380e0d772bd05fe352a5b4e8
-DIST bunny-2.14.1.gem 206336 BLAKE2B 64ee64d58b39f7d4979ab2ca206ba166d015ebf11f3d3346d9bf2fa01dec66a56bb919318f1a39dc81fe5c2d5ac58fd9cc79120dde56ee9b4ddc3e328c7d08a8 SHA512 fe1a972a3f05cfa0bb5abbbe7dfea01d5cad6c5146a0a5bffe679c3107cba26b72c70ff640b289257f07839a329f337feb3c3efce1679c41eb9d39324f30fce3
-DIST bunny-2.14.2.gem 206336 BLAKE2B 46bf0b7be7ac8973bdfc5f8368b09a5e86c175193e0e2673034ddb08aed23c63a05c4a2b634833217e14799f97d64ce79b3a1c980cb42401e253ca91e7f569e7 SHA512 26bd5624a342a81d66d6c052c51afc7668b1974fe8209025ddf21ae7624d86570279dd416361c327a8bf1ffee378bab1bf11066ccabb3b953aca9b29939bb6f4
-DIST bunny-2.9.2.gem 201216 BLAKE2B c885364558c7833f77f3154765468f1c4d2f3f75c34a14f9c3dc64aacb1f8f048ff1f688914de5831f0f924975facd259e2f55667d58e468aae410f3db9da61c SHA512 24e329fe2cb84a0789ac53d5cd406a999f0b415439dfbce75dc36646e53c5a138d20980489fc1dcc6741026082fc268f9adb00370478d99accf0f42a4e05ad12
+DIST bunny-2.22.0.tar.gz 264915 BLAKE2B e6be01665f764637912c6a94429b57f4dbafd57d530210592e6e7155bdf355e86c16704f84ba186393995517a3225c1b47a380a39fe040b9e17c5cbf7cade507 SHA512 1af6b3cc8de1ac3230dd57e5845ed2e06b103e1da179bf91b754e86685113813e6acf3d766e52be0e7e51e9ddd255969f1c045abbaff0d2f2f4a479b1d832314
diff --git a/dev-ruby/bunny/bunny-2.12.1.ebuild b/dev-ruby/bunny/bunny-2.12.1.ebuild
deleted file mode 100644
index 442737d09b5d..000000000000
--- a/dev-ruby/bunny/bunny-2.12.1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-# Tests require a live AMQP server.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Another synchronous Ruby AMQP client"
-HOMEPAGE="https://github.com/celldee/bunny"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/amq-protocol-2.3.0:2"
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r examples || die
-}
diff --git a/dev-ruby/bunny/bunny-2.13.0.ebuild b/dev-ruby/bunny/bunny-2.13.0.ebuild
deleted file mode 100644
index cb1953ab548d..000000000000
--- a/dev-ruby/bunny/bunny-2.13.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-# Tests require a live AMQP server.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Another synchronous Ruby AMQP client"
-HOMEPAGE="https://github.com/celldee/bunny"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/amq-protocol-2.3.0:2"
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r examples || die
-}
diff --git a/dev-ruby/bunny/bunny-2.14.0.ebuild b/dev-ruby/bunny/bunny-2.14.0.ebuild
deleted file mode 100644
index cb1953ab548d..000000000000
--- a/dev-ruby/bunny/bunny-2.14.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-# Tests require a live AMQP server.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Another synchronous Ruby AMQP client"
-HOMEPAGE="https://github.com/celldee/bunny"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/amq-protocol-2.3.0:2"
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r examples || die
-}
diff --git a/dev-ruby/bunny/bunny-2.14.1.ebuild b/dev-ruby/bunny/bunny-2.14.1.ebuild
deleted file mode 100644
index cb1953ab548d..000000000000
--- a/dev-ruby/bunny/bunny-2.14.1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-# Tests require a live AMQP server.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Another synchronous Ruby AMQP client"
-HOMEPAGE="https://github.com/celldee/bunny"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/amq-protocol-2.3.0:2"
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r examples || die
-}
diff --git a/dev-ruby/bunny/bunny-2.14.2.ebuild b/dev-ruby/bunny/bunny-2.14.2.ebuild
deleted file mode 100644
index 8db85a3d2959..000000000000
--- a/dev-ruby/bunny/bunny-2.14.2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-# Tests require a live AMQP server.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Another synchronous Ruby AMQP client"
-HOMEPAGE="https://github.com/celldee/bunny"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/amq-protocol-2.3.0:2"
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r examples || die
-}
diff --git a/dev-ruby/bunny/bunny-2.22.0.ebuild b/dev-ruby/bunny/bunny-2.22.0.ebuild
new file mode 100644
index 000000000000..a6f13452d496
--- /dev/null
+++ b/dev-ruby/bunny/bunny-2.22.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# Tests require a live AMQP server.
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="bunny.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Another synchronous Ruby AMQP client"
+HOMEPAGE="https://github.com/ruby-amqp/bunny"
+SRC_URI="https://github.com/ruby-amqp/bunny/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/amq-protocol-2.3.1:2
+ >=dev-ruby/sorted_set-1.0.2:0"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files --/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r examples
+}
diff --git a/dev-ruby/bunny/bunny-2.9.2.ebuild b/dev-ruby/bunny/bunny-2.9.2.ebuild
deleted file mode 100644
index 973c02b1ffe4..000000000000
--- a/dev-ruby/bunny/bunny-2.9.2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-# Tests require a live AMQP server.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Another synchronous Ruby AMQP client"
-HOMEPAGE="https://github.com/celldee/bunny"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/amq-protocol-2.3.0:2"
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r examples || die
-}
diff --git a/dev-ruby/bunny/metadata.xml b/dev-ruby/bunny/metadata.xml
index d127aa75d975..1cc6333ecf25 100644
--- a/dev-ruby/bunny/metadata.xml
+++ b/dev-ruby/bunny/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/c21e/Manifest b/dev-ruby/c21e/Manifest
deleted file mode 100644
index 9ef83bba966a..000000000000
--- a/dev-ruby/c21e/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST c21e-1.1.8.gem 6656 BLAKE2B 2a2f237e975b4150b891e957d9b209c7d587f8e2994ac4e28162ca7d6a94b83d0841b753ef43870a2808a00f37c227910dda8dd2ae48379e9b63bfdafb266ccb SHA512 4903c8fb5aebf2c7d4771e5f0227ff30d873579439ebcef6235be6716f285d6c40d75b0e07634dd161b493690713121e18c12daff40e113cd8d525d6a7af2273
-DIST c21e-1.1.9.gem 6656 BLAKE2B dc1ee96fddbb0f201f53ad58d22665e5e35f62098daf6ffafc7f12eb75d48703c0e02cb91ceb8a4b84d3357f0fa81d2bbc0207917ccb9c7638e449c72a059411 SHA512 47b578b7e916c2bb6ed4462bf766a5506e622db96f8e7f14833ede6255d695e75d03d38d0ebf02350c92eebd90ad3993eacc7c0ecc9205a56b9c01f690ceacea
-DIST c21e-1.2.1.gem 6656 BLAKE2B b6c1f8919206e8eea04a33fb3a21c42e1758a2dbfbf2ad06486543e8bfbd37234d3c8a113a10c8473d04873f20076baed042e90eab34b96b6ea10c7cc6684ad7 SHA512 1f36251c4c6c7923d46ab186df1f1d380cb329daa7316327f65d4221493eb988fdaf83f2b43e8eb7eebef9e58f8b475bf4b36095cd4cfdb4a787719eca4b36a7
diff --git a/dev-ruby/c21e/c21e-1.1.8.ebuild b/dev-ruby/c21e/c21e-1.1.8.ebuild
deleted file mode 100644
index ef0001aa5c6e..000000000000
--- a/dev-ruby/c21e/c21e-1.1.8.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Run cross-platform executables"
-HOMEPAGE="https://github.com/cucumber/cucumber/blob/master/c21e/ruby"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/c21e/c21e-1.1.9.ebuild b/dev-ruby/c21e/c21e-1.1.9.ebuild
deleted file mode 100644
index ef0001aa5c6e..000000000000
--- a/dev-ruby/c21e/c21e-1.1.9.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Run cross-platform executables"
-HOMEPAGE="https://github.com/cucumber/cucumber/blob/master/c21e/ruby"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/c21e/c21e-1.2.1.ebuild b/dev-ruby/c21e/c21e-1.2.1.ebuild
deleted file mode 100644
index 214d8ccbf6df..000000000000
--- a/dev-ruby/c21e/c21e-1.2.1.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Run cross-platform executables"
-HOMEPAGE="https://github.com/cucumber/cucumber/blob/master/c21e/ruby"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/c21e/metadata.xml b/dev-ruby/c21e/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/c21e/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/calendar_date_select/Manifest b/dev-ruby/calendar_date_select/Manifest
deleted file mode 100644
index c287227fdc34..000000000000
--- a/dev-ruby/calendar_date_select/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST calendar_date_select-2.1.2.gem 22016 BLAKE2B 3cd19112e1d6f3acd9c3543a39b650c753803f3aee4581562cfe5625cdbc1593fbdae45ef2caa15391e6b4caaaa98f9563a70240f45a7806772bcaaec4a5f7f8 SHA512 99d4cadd8b58c49882767787a1c04d1238f2679e6034a1705d24dfc1d1830c9101028b583f36b8fa3403e58ad1b995ead4fe33cda42dd16cbe17d435c1198af1
diff --git a/dev-ruby/calendar_date_select/calendar_date_select-2.1.2.ebuild b/dev-ruby/calendar_date_select/calendar_date_select-2.1.2.ebuild
deleted file mode 100644
index c0dddc526ae0..000000000000
--- a/dev-ruby/calendar_date_select/calendar_date_select-2.1.2.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# There are no unit tests, only integration tests against a full Rails
-# 3.2 application. Skipping those for now due to difficulty in getting
-# all dependencies right.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRAINSTALL="app"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A popular and flexible JavaScript DatePicker for RubyOnRails"
-HOMEPAGE="https://github.com/timcharper/calendar_date_select"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rails-3.1:*"
diff --git a/dev-ruby/calendar_date_select/metadata.xml b/dev-ruby/calendar_date_select/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/calendar_date_select/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/capistrano-stats/Manifest b/dev-ruby/capistrano-stats/Manifest
deleted file mode 100644
index 13f1231d8c2c..000000000000
--- a/dev-ruby/capistrano-stats/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST capistrano-stats-1.1.1.gem 7168 BLAKE2B cad6fbe0119af877b4398c2e6d0c6319ac82b5c6f8e45b8a28c523ecf6b2ed2cb366dbcc0424dbc6c97b9b1030f7af856457b9d2a9258c8147410cf0e5264398 SHA512 d7198052dba1f518a972b4d9e4656b23b226222c58c4898745abf90876722f1040d0f0acce07d97aa090b77d4c7655ce300f73dd0d6f55666e551862a13b7e2b
diff --git a/dev-ruby/capistrano-stats/capistrano-stats-1.1.1.ebuild b/dev-ruby/capistrano-stats/capistrano-stats-1.1.1.ebuild
deleted file mode 100644
index 6bcc7bea288d..000000000000
--- a/dev-ruby/capistrano-stats/capistrano-stats-1.1.1.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRAINSTALL="tasks"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Official metrics to help the development direction of Capistrano"
-HOMEPAGE="http://metrics.capistranorb.com/"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/capistrano-stats/metadata.xml b/dev-ruby/capistrano-stats/metadata.xml
deleted file mode 100644
index 7ce59145bbd9..000000000000
--- a/dev-ruby/capistrano-stats/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-<longdescription>
-Capistrano is a utility and framework for executing commands in parallel on
-multiple remote machines, via SSH.
-</longdescription>
-</pkgmetadata>
diff --git a/dev-ruby/capistrano/Manifest b/dev-ruby/capistrano/Manifest
index 353aa20e60d7..0bc6a7584ea1 100644
--- a/dev-ruby/capistrano/Manifest
+++ b/dev-ruby/capistrano/Manifest
@@ -1,2 +1,4 @@
DIST capistrano-2.15.5.gem 132096 BLAKE2B bbaa6bd482cf9bbe7aa01540aa5dab3f32401ffa1476d9057bb8ad420194f1ab2c32d8e744d7c982ebece5c4b5369133dc8378b7adf54c78732f9cb249db2a9e SHA512 10168080c7481ec6fc6f918ac90a3b1ce8f2b36f77411375e33cc915b02d5196ab061ac47e767edd724c82cffd1c2ad0a23ba1f0519cf1f2aae5b429167b19ff
-DIST capistrano-3.11.0.gem 78336 BLAKE2B f4e3ac2c796aae12ca575e1b5f1e42d993ad13580d790c3cc392322c40486121d8dbd7bf0f0fa75c3ee59396c0dd91164b2112d30b4270b302a9f1556fe866bb SHA512 d8b635de223a0574c17dff6fdfe4007741f823e24f376cc22129b709d40792d02965b72465aeeb54560f22522dafe255f094bde9a23aa259bca9d4933585e212
+DIST capistrano-3.17.3.gem 70144 BLAKE2B d8bd93bb41a41196394b0959fa0bdf17609c9c53771bbfbf87cbc02b169177ad7cc18613a18d362a7fc775c91a382071d2384262d5cb49b1534678aac575dc55 SHA512 b7b85ebf7309d93aed83f68dc897e5a6cb4c8a929f4427c8a29db2ef6f857ee110256ba80c2fe0ae15f8008597c47be5ec60c192f3268d0df66f761b90d0758f
+DIST capistrano-3.18.0.gem 69632 BLAKE2B 679005f347eba2bad71e49b0c591c6179edc566d342b43652dc1be6949589d3bc58b78c91cccc564e6d8bb1f541066917164e000fe41a6997a3d6d12ab9b5e7b SHA512 126abb8934bed1bd1c58f53c1e8cd0ead99499d7e99d09e51290df4619a2f570a3f2f1a5cbdb683f1286a2b9aa7b0a2690a4c165d07705c5157ebf3ed1118f3e
+DIST capistrano-3.18.1.gem 69632 BLAKE2B 65802492a93974cc8b9fdfebc189f866ae7e3b6eda92a87537106019f8605de469ff6f90439fe64db54af8bc3ff1d58082efc84b4be629368420fd6c23857374 SHA512 940e2a0cff96d99876bac1e585299edf5fcb22899bca61dcbe87b285ffd397dc916545792b58cd708f9b4e086d83f070f1bfc3bab534244c86f46d6de6323b47
diff --git a/dev-ruby/capistrano/capistrano-2.15.5-r2.ebuild b/dev-ruby/capistrano/capistrano-2.15.5-r2.ebuild
deleted file mode 100644
index 59cecde8c10c..000000000000
--- a/dev-ruby/capistrano/capistrano-2.15.5-r2.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A distributed application deployment system"
-HOMEPAGE="http://capistranorb.com/"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/net-ssh-2.0.14:*
- >=dev-ruby/net-sftp-2.0.2
- >=dev-ruby/net-scp-1.0.2
- >=dev-ruby/net-ssh-gateway-1.1.0:*
- >=dev-ruby/highline-1.2.7"
-ruby_add_bdepend "
- test? ( dev-ruby/mocha:0.14 )"
-
-RUBY_PATCHES=( ${P}-sudo-cleanup.patch )
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile test/utils.rb || die
- sed -i -e '/pry/ s:^:#:' -e '4igem "mocha", "~>0.14.0"' test/utils.rb || die
-
- # Avoid copy strategy tests since these fail in some cases due to
- # complicated (aka unknown) interactions with other parts of the
- # test suite.
- rm test/deploy/strategy/copy_test.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- ruby_fakegem_binwrapper cap /usr/bin/cap-2 'gem "capistrano", "~>2.0"'
-}
diff --git a/dev-ruby/capistrano/capistrano-2.15.5-r3.ebuild b/dev-ruby/capistrano/capistrano-2.15.5-r3.ebuild
new file mode 100644
index 000000000000..d07ff2f4708b
--- /dev/null
+++ b/dev-ruby/capistrano/capistrano-2.15.5-r3.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="A distributed application deployment system"
+HOMEPAGE="https://capistranorb.com/"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/net-ssh-2.0.14:*
+ >=dev-ruby/net-sftp-2.0.2
+ >=dev-ruby/net-scp-1.0.2
+ >=dev-ruby/net-ssh-gateway-1.1.0:*
+ >=dev-ruby/highline-1.2.7"
+ruby_add_bdepend "
+ test? ( dev-ruby/mocha:0.14 )"
+
+PATCHES=( "${FILESDIR}/${P}-sudo-cleanup.patch" )
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d' Rakefile test/utils.rb || die
+ sed -i -e '/pry/ s:^:#:' -e '4igem "mocha", "~>0.14.0"' test/utils.rb || die
+
+ # Avoid copy strategy tests since these fail in some cases due to
+ # complicated (aka unknown) interactions with other parts of the
+ # test suite.
+ rm test/deploy/strategy/copy_test.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ ruby_fakegem_binwrapper cap /usr/bin/cap-2 'gem "capistrano", "~>2.0"'
+}
diff --git a/dev-ruby/capistrano/capistrano-3.11.0.ebuild b/dev-ruby/capistrano/capistrano-3.11.0.ebuild
deleted file mode 100644
index 7ff26349d382..000000000000
--- a/dev-ruby/capistrano/capistrano-3.11.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A distributed application deployment system"
-HOMEPAGE="https://capistranorb.com/"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/airbrussh-1.0.0
- >=dev-ruby/sshkit-1.9:0
- >=dev-ruby/rake-10.0.0
- dev-ruby/i18n:*
- !!<dev-ruby/capistrano-2.15.5-r2"
-ruby_add_bdepend "
- test? ( dev-ruby/mocha )"
-
-all_ruby_prepare() {
- # Avoid specs that depend on capistrano already being installed
- rm -f spec/lib/capistrano/doctor/gems_doctor_spec.rb || die
-
- # Avoid specs that require a TTY
- sed -i -e '/asking for a variable/,/^ end/ s:^:#:' spec/integration/dsl_spec.rb || die
- rm -f spec/lib/capistrano/configuration/question_spec.rb || die
-}
diff --git a/dev-ruby/capistrano/capistrano-3.17.3.ebuild b/dev-ruby/capistrano/capistrano-3.17.3.ebuild
new file mode 100644
index 000000000000..dd6213dfb99b
--- /dev/null
+++ b/dev-ruby/capistrano/capistrano-3.17.3.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A distributed application deployment system"
+HOMEPAGE="https://capistranorb.com/"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/airbrussh-1.0.0
+ >=dev-ruby/sshkit-1.9:0
+ >=dev-ruby/rake-10.0.0
+ dev-ruby/i18n:*"
+ruby_add_bdepend "
+ test? ( dev-ruby/mocha )"
+
+all_ruby_prepare() {
+ # Avoid specs that depend on capistrano already being installed
+ rm -f spec/lib/capistrano/doctor/gems_doctor_spec.rb || die
+
+ # Avoid specs that require a TTY
+ sed -i -e '/asking for a variable/,/^ end/ s:^:#:' spec/integration/dsl_spec.rb || die
+ rm -f spec/lib/capistrano/configuration/question_spec.rb spec/lib/capistrano/doctor/output_helpers_spec.rb || die
+}
diff --git a/dev-ruby/capistrano/capistrano-3.18.0.ebuild b/dev-ruby/capistrano/capistrano-3.18.0.ebuild
new file mode 100644
index 000000000000..c8d14632d8ea
--- /dev/null
+++ b/dev-ruby/capistrano/capistrano-3.18.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A distributed application deployment system"
+HOMEPAGE="https://capistranorb.com/"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/airbrussh-1.0.0
+ >=dev-ruby/sshkit-1.9:0
+ >=dev-ruby/rake-10.0.0
+ dev-ruby/i18n:*"
+ruby_add_bdepend "
+ test? ( dev-ruby/mocha )"
+
+all_ruby_prepare() {
+ # Avoid specs that depend on capistrano already being installed
+ rm -f spec/lib/capistrano/doctor/gems_doctor_spec.rb || die
+
+ # Avoid specs that require a TTY
+ sed -i -e '/asking for a variable/,/^ end/ s:^:#:' spec/integration/dsl_spec.rb || die
+ rm -f spec/lib/capistrano/configuration/question_spec.rb spec/lib/capistrano/doctor/output_helpers_spec.rb || die
+}
diff --git a/dev-ruby/capistrano/capistrano-3.18.1.ebuild b/dev-ruby/capistrano/capistrano-3.18.1.ebuild
new file mode 100644
index 000000000000..c8d14632d8ea
--- /dev/null
+++ b/dev-ruby/capistrano/capistrano-3.18.1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A distributed application deployment system"
+HOMEPAGE="https://capistranorb.com/"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/airbrussh-1.0.0
+ >=dev-ruby/sshkit-1.9:0
+ >=dev-ruby/rake-10.0.0
+ dev-ruby/i18n:*"
+ruby_add_bdepend "
+ test? ( dev-ruby/mocha )"
+
+all_ruby_prepare() {
+ # Avoid specs that depend on capistrano already being installed
+ rm -f spec/lib/capistrano/doctor/gems_doctor_spec.rb || die
+
+ # Avoid specs that require a TTY
+ sed -i -e '/asking for a variable/,/^ end/ s:^:#:' spec/integration/dsl_spec.rb || die
+ rm -f spec/lib/capistrano/configuration/question_spec.rb spec/lib/capistrano/doctor/output_helpers_spec.rb || die
+}
diff --git a/dev-ruby/capistrano/files/capistrano-2.15.5-sudo-cleanup.patch b/dev-ruby/capistrano/files/capistrano-2.15.5-sudo-cleanup.patch
index cbe68a476fd4..5437d08113e5 100644
--- a/dev-ruby/capistrano/files/capistrano-2.15.5-sudo-cleanup.patch
+++ b/dev-ruby/capistrano/files/capistrano-2.15.5-sudo-cleanup.patch
@@ -1,6 +1,5 @@
-diff -ur /usr/lib/ruby/gems/1.9.1/gems/capistrano-2.15.5/lib/capistrano/recipes/deploy.rb ./lib/capistrano/recipes/deploy.rb
---- ./lib/capistrano/recipes/deploy.rb 2014-08-13 15:11:31.423773610 +0200
-+++ /usr/lib/ruby/gems/1.9.1/gems/capistrano-2.15.5/lib/capistrano/recipes/deploy.rb 2014-05-04 11:40:39.000000000 +0200
+--- a/lib/capistrano/recipes/deploy.rb
++++ b/lib/capistrano/recipes/deploy.rb
@@ -462,7 +462,7 @@
DESC
task :cleanup, :except => { :no_release => true } do
diff --git a/dev-ruby/capistrano/metadata.xml b/dev-ruby/capistrano/metadata.xml
index 7ce59145bbd9..e3cfba41d99b 100644
--- a/dev-ruby/capistrano/metadata.xml
+++ b/dev-ruby/capistrano/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/capybara/Manifest b/dev-ruby/capybara/Manifest
index 543b41412dfa..21f79bafdd5f 100644
--- a/dev-ruby/capybara/Manifest
+++ b/dev-ruby/capybara/Manifest
@@ -1,8 +1,3 @@
-DIST capybara-2.18.0.gem 274432 BLAKE2B 992799362025b81a0d074fb06fdafef4c4385ca18ea85a7095d9e58625df6a59a349b60b462c5c4f403a6af955466bc46d82be6cd91724fc2b12cbe15ed74a4c SHA512 3bb994e022593d485a07296193a16cae7b45e96e87dd10b2bd4807ad2bc990801044c0493360598d1626c3e367e8de87e407f65c2c6f42674d5f1b9c0b5c1933
-DIST capybara-3.18.0.gem 331776 BLAKE2B 05d4368f570bbf74a3540fd7d7594cb95c602507f4ddbde437b702b6a280dce5bbf9d0412a1a6ce7888af3a72667e6e3efa7c83d50a8791670121673426c4de2 SHA512 5e9321eb2367bfb48f090868c944bf9920e6bd298e5663e0a820d63946a9cf320e5e3a9b95569779b7e6cdc361dded5ab12a8fce4a0df430c4768d8ce161d02c
-DIST capybara-3.23.0.gem 349184 BLAKE2B 233b83fb88f106de8e25a1aa34d1082664824571eca2a79ad3de3b164e639b68173804bf2e871c3fde7fe2af54d64ee6ade90c4149807e04e844cbf5d61f24dc SHA512 53e0c6223e574960e136e7620d7d00a0e1479f9eb0fb70c7150bc60e20ed009d163dc29f7cee84acad43168cca230465490c9ca64b640fdebe9223ec62b6e4db
-DIST capybara-3.24.0.gem 349696 BLAKE2B 54447fc17169d953c43f31505a9267bebe6d093052cb553efa8eb65bf6e39fbb13fe02cb3b7252c4fe1f0554370266265eb759ad7f4dc5bab9299410e4f07e81 SHA512 32a19471d3f8d13871c40c28671125039b432065ab6ac1b31f38551f9e5c7d52c041ef9a56db853aeddd14d9411dec4e647336f6b78feb45c90a676ccdc606fe
-DIST capybara-3.25.0.gem 351744 BLAKE2B 12e8f483bca814fa826707895a6fc72a3d54df2e03c1175eb4be8e2f83afeda2466d70eab03c7700665d3f94bc7b3b8f85b2d2d6cf8242cad285d9350428cadc SHA512 1be454984862c314f0571ca68ed3858d241dc5f0709d155b1b7accd7fd81a1ab0bf0a5c6537c871989c9abc758d0e7fa5109c8b04be8b620137e129a5da13a68
-DIST capybara-3.26.0.gem 352256 BLAKE2B b6b71e163adfa2125d4e4a28fdaaf9feb725e874eab7180c0ece1166b2411ee0930244c79cac22f17e7c3ea8c1cb42b043d5bbd7321a3aa6460fbbfa775035b3 SHA512 31dabbb6ea77ed185d53b72e5f4ea89546f33b5c682d68692e4115bdec29c15d1f5f8bcab4f5256b76f6fbfadd5c638f8bf1d7b974dd3153d57521eb8c04a778
-DIST capybara-3.27.0.gem 353792 BLAKE2B 1ce648be67bbac74bb6c907ae34ceb67a7c4df40eb3cec91a423037dd2d5af9a7a603e750499d86dbb0997102682008831ec9abfa5846000f91d5abe60991f11 SHA512 3a6829906ceb5ea52a5c44515a79df6959559cca7e7e0c35e35550a376f79bfebf7cda229e5cc4aff5f69cffdb09c586961733d39c57b7dc89b293050f911ba3
-DIST capybara-3.28.0.gem 355328 BLAKE2B f9f71a3cadf5a88c86f295e02da61d7ae6813776afdc64829c72ba9ba3a6127c34e4016a152dafc337953c4d69c35f222504bd86e3bbc5f93562f7bb3ae41746 SHA512 fad8a3e6fd95c6ae03ef223001175eab59033bcc65555f708dc8efefb48f0323fbfdfedcbd304ec69e9690cee5e95640b9c43fdc93d6e01696425764b51d96df
+DIST capybara-3.39.0.gem 381952 BLAKE2B 2b70bfbf930258c2273bf0c6bddc70e455d1d717bd0ed79fc68459c6f40d47ef8149fec161dbaff08e6d8424aebbdf5160033169a6269408b368525218899e23 SHA512 0910ecef11a007d10e753887d9016bab4de74e2ddf2fa2c8b8fc32bfe7d71d64a8c0b72a0a606aa7b558922ab02b4368d1c42a0df78ecf3f68a5efc34edc8707
+DIST capybara-3.39.2.gem 381952 BLAKE2B ff73035a1942e4e418d50356b977c68ea878a27082b3684b940b69df77bd97c1a628e2346673f9e42bf0592386e470b376ce5b35d673f6fe4e74547023348be1 SHA512 498fb3880014d3cff1ec6ed68542f68eb03ebfc86e8c681623ad3549ecf8297a0313abe9dd8db0a104cc0db2a2eec8c66bac4f2e5c0d29e0785237ddfe718c59
+DIST capybara-3.40.0.gem 384000 BLAKE2B 260e2e20be7cc08410035850d087934f0fbcc8b1d602416b8f1ca1ea2fb15708b606de2db002bb620bcc7c99afb83f162dd5ed1db2109f8a0b436f90258083d1 SHA512 91c3fd98bb32359a2e168c3a69efe56f4f4952be36b26961922fe6414888191ec0f79da4cfe2adb05f74a57be03254d14fa9296aa537f419c7081f58af67e0bd
diff --git a/dev-ruby/capybara/capybara-2.18.0.ebuild b/dev-ruby/capybara/capybara-2.18.0.ebuild
deleted file mode 100644
index 323a52a3c879..000000000000
--- a/dev-ruby/capybara/capybara-2.18.0.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-# Rake tasks are not distributed in the gem.
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit virtualx ruby-fakegem
-
-DESCRIPTION="Capybara aims to simplify the process of integration testing Rack applications"
-HOMEPAGE="https://github.com/jnicklas/capybara"
-LICENSE="MIT"
-
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~x86"
-SLOT="2"
-IUSE="test"
-
-DEPEND="${DEPEND} test? ( || ( www-client/firefox www-client/firefox-bin ) )"
-
-ruby_add_bdepend "test? ( dev-ruby/rspec:3 dev-ruby/launchy >=dev-ruby/selenium-webdriver-2.0 dev-ruby/sinatra )"
-
-ruby_add_rdepend "
- dev-ruby/addressable
- >=dev-ruby/mini_mime-0.1.3
- >=dev-ruby/nokogiri-1.3.3
- >=dev-ruby/rack-1.0.0:*
- >=dev-ruby/rack-test-0.5.4:*
- || ( dev-ruby/xpath:3 dev-ruby/xpath:2 )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' -e '/pry/d' -e '1igem "sinatra"' spec/spec_helper.rb || die
-
- # Avoid window-manager specific tests (sizes are specific for fluxbox)
- sed -i -e '/#maximize/,/^ end/ s:^:#:' lib/capybara/spec/session/window/window_spec.rb || die
-
- # Avoid spec that requires unpackaged geckodriver
- sed -i -e '/register_server/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Avoid test dependency on puma server for now
- sed -i -e '/should have :puma registered/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} -Ilib -S rspec-3 spec || die "Tests failed."
-}
diff --git a/dev-ruby/capybara/capybara-3.18.0.ebuild b/dev-ruby/capybara/capybara-3.18.0.ebuild
deleted file mode 100644
index 528036025297..000000000000
--- a/dev-ruby/capybara/capybara-3.18.0.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-# Rake tasks are not distributed in the gem.
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit virtualx ruby-fakegem
-
-DESCRIPTION="Capybara aims to simplify the process of integration testing Rack applications"
-HOMEPAGE="https://github.com/jnicklas/capybara"
-LICENSE="MIT"
-
-KEYWORDS="amd64 ~arm64 ~x86"
-SLOT="3"
-IUSE="test"
-
-DEPEND="${DEPEND} test? ( || ( www-client/firefox www-client/firefox-bin ) )"
-
-ruby_add_bdepend "test? (
- dev-ruby/rspec:3
- >=dev-ruby/launchy-2.4.0
- >=dev-ruby/selenium-webdriver-3.5:3
- dev-ruby/sinatra:2
- www-servers/puma
-)"
-
-ruby_add_rdepend "
- dev-ruby/addressable
- >=dev-ruby/mini_mime-0.1.3
- >=dev-ruby/nokogiri-1.8:0
- >=dev-ruby/rack-1.6.0:*
- >=dev-ruby/rack-test-0.6.3:*
- >=dev-ruby/regexp_parser-1.2:1
- >=dev-ruby/xpath-3.2:3"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' -e '/pry/d' -e '1igem "sinatra"' -e '/statistics/Id' spec/spec_helper.rb || die
-
- # Avoid window-manager specific tests (sizes are specific for fluxbox)
- sed -i -e '/#maximize/,/^ end/ s:^:#:' lib/capybara/spec/session/window/window_spec.rb || die
-
- # Avoid spec that requires unpackaged geckodriver
- sed -i -e '/describe.*register_server/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Avoid test dependency on puma server for now
- sed -i -e '/should have :puma registered/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Update spec to catch the right error code. This seems to have
- # changed recently accross ruby versions.
- sed -i -e '/raise_error/ s/EOFError/Net::ReadTimeout/' spec/server_spec.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} -Ilib -S rspec-3 spec || die "Tests failed."
-}
diff --git a/dev-ruby/capybara/capybara-3.23.0.ebuild b/dev-ruby/capybara/capybara-3.23.0.ebuild
deleted file mode 100644
index fdf816bc920a..000000000000
--- a/dev-ruby/capybara/capybara-3.23.0.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-# Rake tasks are not distributed in the gem.
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit virtualx ruby-fakegem
-
-DESCRIPTION="Capybara aims to simplify the process of integration testing Rack applications"
-HOMEPAGE="https://github.com/jnicklas/capybara"
-LICENSE="MIT"
-
-KEYWORDS="amd64 ~arm ~x86"
-SLOT="3"
-IUSE="test"
-
-DEPEND="${DEPEND} test? ( || ( www-client/firefox www-client/firefox-bin ) )"
-
-ruby_add_bdepend "test? (
- dev-ruby/rspec:3
- >=dev-ruby/launchy-2.4.0
- >=dev-ruby/selenium-webdriver-3.5:3
- dev-ruby/sinatra:2
- www-servers/puma
-)"
-
-ruby_add_rdepend "
- dev-ruby/addressable
- >=dev-ruby/mini_mime-0.1.3
- >=dev-ruby/nokogiri-1.8:0
- >=dev-ruby/rack-1.6.0:*
- >=dev-ruby/rack-test-0.6.3:*
- >=dev-ruby/regexp_parser-1.5:1
- >=dev-ruby/xpath-3.2:3"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' -e '/pry/d' -e '1igem "sinatra"' -e '/statistics/Id' spec/spec_helper.rb || die
-
- # Avoid window-manager specific tests (sizes are specific for fluxbox)
- sed -i -e '/#maximize/,/^ end/ s:^:#:' lib/capybara/spec/session/window/window_spec.rb || die
-
- # Avoid spec that requires unpackaged geckodriver
- sed -i -e '/describe.*register_server/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Avoid test dependency on puma server for now
- sed -i -e '/should have :puma registered/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Update spec to catch the right error code. This seems to have
- # changed recently accross ruby versions.
- sed -i -e '/raise_error/ s/EOFError/Net::ReadTimeout/' spec/server_spec.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} -Ilib -S rspec-3 spec || die "Tests failed."
-}
diff --git a/dev-ruby/capybara/capybara-3.24.0.ebuild b/dev-ruby/capybara/capybara-3.24.0.ebuild
deleted file mode 100644
index 00a37d026647..000000000000
--- a/dev-ruby/capybara/capybara-3.24.0.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-# Rake tasks are not distributed in the gem.
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit virtualx ruby-fakegem
-
-DESCRIPTION="Capybara aims to simplify the process of integration testing Rack applications"
-HOMEPAGE="https://github.com/jnicklas/capybara"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~x86"
-SLOT="3"
-IUSE="test"
-
-DEPEND="${DEPEND} test? ( || ( www-client/firefox www-client/firefox-bin ) )"
-
-ruby_add_bdepend "test? (
- dev-ruby/rspec:3
- >=dev-ruby/launchy-2.4.0
- >=dev-ruby/selenium-webdriver-3.5:3
- dev-ruby/sinatra:2
- www-servers/puma
-)"
-
-ruby_add_rdepend "
- dev-ruby/addressable
- >=dev-ruby/mini_mime-0.1.3
- >=dev-ruby/nokogiri-1.8:0
- >=dev-ruby/rack-1.6.0:*
- >=dev-ruby/rack-test-0.6.3:*
- >=dev-ruby/regexp_parser-1.5:1
- >=dev-ruby/xpath-3.2:3"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' -e '/pry/d' -e '1igem "sinatra"' -e '/statistics/Id' spec/spec_helper.rb || die
-
- # Avoid window-manager specific tests (sizes are specific for fluxbox)
- sed -i -e '/#maximize/,/^ end/ s:^:#:' lib/capybara/spec/session/window/window_spec.rb || die
-
- # Avoid spec that requires unpackaged geckodriver
- sed -i -e '/describe.*register_server/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Avoid test dependency on puma server for now
- sed -i -e '/should have :puma registered/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Update spec to catch the right error code. This seems to have
- # changed recently accross ruby versions.
- sed -i -e '/raise_error/ s/EOFError/Net::ReadTimeout/' spec/server_spec.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} -Ilib -S rspec-3 spec || die "Tests failed."
-}
diff --git a/dev-ruby/capybara/capybara-3.25.0.ebuild b/dev-ruby/capybara/capybara-3.25.0.ebuild
deleted file mode 100644
index d4c4662717ae..000000000000
--- a/dev-ruby/capybara/capybara-3.25.0.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-# Rake tasks are not distributed in the gem.
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit virtualx ruby-fakegem
-
-DESCRIPTION="Capybara aims to simplify the process of integration testing Rack applications"
-HOMEPAGE="https://github.com/jnicklas/capybara"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~x86"
-SLOT="3"
-IUSE="test"
-
-DEPEND="${DEPEND} test? ( || ( www-client/firefox www-client/firefox-bin ) )"
-
-ruby_add_bdepend "test? (
- dev-ruby/rspec:3
- >=dev-ruby/launchy-2.4.0
- >=dev-ruby/selenium-webdriver-3.5:3
- dev-ruby/sinatra:2
- www-servers/puma
-)"
-
-ruby_add_rdepend "
- dev-ruby/addressable
- >=dev-ruby/mini_mime-0.1.3
- >=dev-ruby/nokogiri-1.8:0
- >=dev-ruby/rack-1.6.0:*
- >=dev-ruby/rack-test-0.6.3:*
- >=dev-ruby/regexp_parser-1.5:1
- >=dev-ruby/xpath-3.2:3"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' -e '/pry/d' -e '1igem "sinatra"' -e '/statistics/Id' spec/spec_helper.rb || die
-
- # Avoid window-manager specific tests (sizes are specific for fluxbox)
- sed -i -e '/#maximize/,/^ end/ s:^:#:' lib/capybara/spec/session/window/window_spec.rb || die
-
- # Avoid spec that requires unpackaged geckodriver
- sed -i -e '/describe.*register_server/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Avoid test dependency on puma server for now
- sed -i -e '/should have :puma registered/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Update spec to catch the right error code. This seems to have
- # changed recently accross ruby versions.
- sed -i -e '/raise_error/ s/EOFError/Net::ReadTimeout/' spec/server_spec.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} -Ilib -S rspec-3 spec || die "Tests failed."
-}
diff --git a/dev-ruby/capybara/capybara-3.26.0.ebuild b/dev-ruby/capybara/capybara-3.26.0.ebuild
deleted file mode 100644
index d4c4662717ae..000000000000
--- a/dev-ruby/capybara/capybara-3.26.0.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-# Rake tasks are not distributed in the gem.
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit virtualx ruby-fakegem
-
-DESCRIPTION="Capybara aims to simplify the process of integration testing Rack applications"
-HOMEPAGE="https://github.com/jnicklas/capybara"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~x86"
-SLOT="3"
-IUSE="test"
-
-DEPEND="${DEPEND} test? ( || ( www-client/firefox www-client/firefox-bin ) )"
-
-ruby_add_bdepend "test? (
- dev-ruby/rspec:3
- >=dev-ruby/launchy-2.4.0
- >=dev-ruby/selenium-webdriver-3.5:3
- dev-ruby/sinatra:2
- www-servers/puma
-)"
-
-ruby_add_rdepend "
- dev-ruby/addressable
- >=dev-ruby/mini_mime-0.1.3
- >=dev-ruby/nokogiri-1.8:0
- >=dev-ruby/rack-1.6.0:*
- >=dev-ruby/rack-test-0.6.3:*
- >=dev-ruby/regexp_parser-1.5:1
- >=dev-ruby/xpath-3.2:3"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' -e '/pry/d' -e '1igem "sinatra"' -e '/statistics/Id' spec/spec_helper.rb || die
-
- # Avoid window-manager specific tests (sizes are specific for fluxbox)
- sed -i -e '/#maximize/,/^ end/ s:^:#:' lib/capybara/spec/session/window/window_spec.rb || die
-
- # Avoid spec that requires unpackaged geckodriver
- sed -i -e '/describe.*register_server/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Avoid test dependency on puma server for now
- sed -i -e '/should have :puma registered/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Update spec to catch the right error code. This seems to have
- # changed recently accross ruby versions.
- sed -i -e '/raise_error/ s/EOFError/Net::ReadTimeout/' spec/server_spec.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} -Ilib -S rspec-3 spec || die "Tests failed."
-}
diff --git a/dev-ruby/capybara/capybara-3.27.0.ebuild b/dev-ruby/capybara/capybara-3.27.0.ebuild
deleted file mode 100644
index 0cae33b1ec47..000000000000
--- a/dev-ruby/capybara/capybara-3.27.0.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-# Rake tasks are not distributed in the gem.
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit virtualx ruby-fakegem
-
-DESCRIPTION="Capybara aims to simplify the process of integration testing Rack applications"
-HOMEPAGE="https://github.com/jnicklas/capybara"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~x86"
-SLOT="3"
-IUSE="test"
-
-DEPEND="${DEPEND} test? ( || ( www-client/firefox www-client/firefox-bin ) )"
-
-ruby_add_bdepend "test? (
- dev-ruby/rspec:3
- >=dev-ruby/launchy-2.4.0
- >=dev-ruby/selenium-webdriver-3.5:3
- dev-ruby/sinatra:2
- www-servers/puma
-)"
-
-ruby_add_rdepend "
- dev-ruby/addressable
- >=dev-ruby/mini_mime-0.1.3
- >=dev-ruby/nokogiri-1.8:0
- >=dev-ruby/rack-1.6.0:*
- >=dev-ruby/rack-test-0.6.3:*
- >=dev-ruby/regexp_parser-1.5:1
- >=dev-ruby/xpath-3.2:3"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' -e '/pry/d' -e '1igem "sinatra"' -e '/statistics/Id' spec/spec_helper.rb || die
-
- # Avoid window-manager specific tests (sizes are specific for fluxbox)
- sed -i -e '/#maximize/,/^ end/ s:^:#:' lib/capybara/spec/session/window/window_spec.rb || die
-
- # Avoid spec that requires unpackaged geckodriver
- #sed -i -e '/describe.*register_server/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Avoid test dependency on puma server for now
- sed -i -e '/should have :puma registered/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Update spec to catch the right error code. This seems to have
- # changed recently accross ruby versions.
- sed -i -e '/raise_error/ s/EOFError/Net::ReadTimeout/' spec/server_spec.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} -Ilib -S rspec-3 spec || die "Tests failed."
-}
diff --git a/dev-ruby/capybara/capybara-3.28.0.ebuild b/dev-ruby/capybara/capybara-3.28.0.ebuild
deleted file mode 100644
index 0cae33b1ec47..000000000000
--- a/dev-ruby/capybara/capybara-3.28.0.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-# Rake tasks are not distributed in the gem.
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit virtualx ruby-fakegem
-
-DESCRIPTION="Capybara aims to simplify the process of integration testing Rack applications"
-HOMEPAGE="https://github.com/jnicklas/capybara"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~x86"
-SLOT="3"
-IUSE="test"
-
-DEPEND="${DEPEND} test? ( || ( www-client/firefox www-client/firefox-bin ) )"
-
-ruby_add_bdepend "test? (
- dev-ruby/rspec:3
- >=dev-ruby/launchy-2.4.0
- >=dev-ruby/selenium-webdriver-3.5:3
- dev-ruby/sinatra:2
- www-servers/puma
-)"
-
-ruby_add_rdepend "
- dev-ruby/addressable
- >=dev-ruby/mini_mime-0.1.3
- >=dev-ruby/nokogiri-1.8:0
- >=dev-ruby/rack-1.6.0:*
- >=dev-ruby/rack-test-0.6.3:*
- >=dev-ruby/regexp_parser-1.5:1
- >=dev-ruby/xpath-3.2:3"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' -e '/pry/d' -e '1igem "sinatra"' -e '/statistics/Id' spec/spec_helper.rb || die
-
- # Avoid window-manager specific tests (sizes are specific for fluxbox)
- sed -i -e '/#maximize/,/^ end/ s:^:#:' lib/capybara/spec/session/window/window_spec.rb || die
-
- # Avoid spec that requires unpackaged geckodriver
- #sed -i -e '/describe.*register_server/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Avoid test dependency on puma server for now
- sed -i -e '/should have :puma registered/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
-
- # Update spec to catch the right error code. This seems to have
- # changed recently accross ruby versions.
- sed -i -e '/raise_error/ s/EOFError/Net::ReadTimeout/' spec/server_spec.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} -Ilib -S rspec-3 spec || die "Tests failed."
-}
diff --git a/dev-ruby/capybara/capybara-3.39.0-r1.ebuild b/dev-ruby/capybara/capybara-3.39.0-r1.ebuild
new file mode 100644
index 000000000000..16ad1e751b2f
--- /dev/null
+++ b/dev-ruby/capybara/capybara-3.39.0-r1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+
+# Rake tasks are not distributed in the gem.
+RUBY_FAKEGEM_TASK_TEST=""
+
+inherit virtualx ruby-fakegem
+
+DESCRIPTION="Capybara aims to simplify the process of integration testing Rack applications"
+HOMEPAGE="https://github.com/teamcapybara/capybara"
+LICENSE="MIT"
+
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+SLOT="3"
+IUSE="test"
+
+DEPEND="${DEPEND} test? ( || ( www-client/firefox www-client/firefox-bin ) )"
+
+ruby_add_bdepend "test? (
+ dev-ruby/rspec:3
+ >=dev-ruby/launchy-2.4.0
+ dev-ruby/selenium-webdriver:4
+ dev-ruby/sinatra:3
+ www-servers/puma
+)"
+
+ruby_add_rdepend "
+ dev-ruby/addressable
+ dev-ruby/matrix
+ >=dev-ruby/mini_mime-0.1.3
+ >=dev-ruby/nokogiri-1.8:0
+ >=dev-ruby/rack-1.6.0:*
+ >=dev-ruby/rack-test-0.6.3:*
+ dev-ruby/regexp_parser:2
+ >=dev-ruby/xpath-3.2:3"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/d' -e '/pry/d' -e '1igem "sinatra"' -e '/statistics/Id' spec/spec_helper.rb || die
+
+ # Avoid window-manager specific tests (sizes are specific for fluxbox)
+ sed -i -e '/#maximize/,/^ end/ s:^:#:' lib/capybara/spec/session/window/window_spec.rb || die
+
+ # Avoid spec that requires unpackaged geckodriver
+ #sed -i -e '/describe.*register_server/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
+
+ # Avoid test dependency on puma server for now
+ sed -i -e '/should have :puma registered/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
+
+ # Update spec to catch the right error code. This seems to have
+ # changed recently across ruby versions.
+ sed -i -e '/raise_error/ s/EOFError/Net::ReadTimeout/' spec/server_spec.rb || die
+}
+
+each_ruby_test() {
+ virtx ${RUBY} -Ilib -S rspec-3 spec
+}
diff --git a/dev-ruby/capybara/capybara-3.39.2.ebuild b/dev-ruby/capybara/capybara-3.39.2.ebuild
new file mode 100644
index 000000000000..15be5c79bf33
--- /dev/null
+++ b/dev-ruby/capybara/capybara-3.39.2.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+
+# Rake tasks are not distributed in the gem.
+RUBY_FAKEGEM_TASK_TEST=""
+
+inherit virtualx ruby-fakegem
+
+DESCRIPTION="Capybara aims to simplify the process of integration testing Rack applications"
+HOMEPAGE="https://github.com/teamcapybara/capybara"
+LICENSE="MIT"
+
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+SLOT="3"
+IUSE="test"
+
+DEPEND="${DEPEND} test? ( || ( www-client/firefox www-client/firefox-bin ) )"
+
+ruby_add_bdepend "test? (
+ dev-ruby/rspec:3
+ >=dev-ruby/launchy-2.4.0
+ dev-ruby/selenium-webdriver:4
+ dev-ruby/sinatra:3
+ www-servers/puma
+)"
+
+ruby_add_rdepend "
+ dev-ruby/addressable
+ dev-ruby/matrix
+ >=dev-ruby/mini_mime-0.1.3
+ >=dev-ruby/nokogiri-1.8:0
+ >=dev-ruby/rack-1.6.0:*
+ >=dev-ruby/rack-test-0.6.3:*
+ dev-ruby/regexp_parser:2
+ >=dev-ruby/xpath-3.2:3"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/d' -e '/pry/d' -e '1igem "sinatra"' -e '/statistics/Id' spec/spec_helper.rb || die
+
+ # Avoid window-manager specific tests (sizes are specific for fluxbox)
+ sed -i -e '/#maximize/,/^ end/ s:^:#:' lib/capybara/spec/session/window/window_spec.rb || die
+
+ # Avoid spec that requires unpackaged geckodriver
+ #sed -i -e '/describe.*register_server/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
+
+ # Avoid test dependency on puma server for now
+ sed -i -e '/should have :puma registered/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
+
+ # Update spec to catch the right error code. This seems to have
+ # changed recently across ruby versions.
+ sed -i -e '/raise_error/ s/EOFError/Net::ReadTimeout/' spec/server_spec.rb || die
+}
+
+each_ruby_test() {
+ virtx ${RUBY} -Ilib -S rspec-3 spec
+}
diff --git a/dev-ruby/capybara/capybara-3.40.0.ebuild b/dev-ruby/capybara/capybara-3.40.0.ebuild
new file mode 100644
index 000000000000..ef15a951ef9c
--- /dev/null
+++ b/dev-ruby/capybara/capybara-3.40.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+
+# Rake tasks are not distributed in the gem.
+RUBY_FAKEGEM_TASK_TEST=""
+
+inherit virtualx ruby-fakegem
+
+DESCRIPTION="Capybara aims to simplify the process of integration testing Rack applications"
+HOMEPAGE="https://github.com/teamcapybara/capybara"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+SLOT="3"
+IUSE="test"
+
+DEPEND="${DEPEND} test? ( || ( www-client/firefox www-client/firefox-bin ) )"
+
+ruby_add_bdepend "test? (
+ dev-ruby/rspec:3
+ >=dev-ruby/launchy-2.4.0
+ >=dev-ruby/selenium-webdriver-4.8:4
+ dev-ruby/sinatra:3
+ www-servers/puma
+)"
+
+ruby_add_rdepend "
+ dev-ruby/addressable
+ dev-ruby/matrix
+ >=dev-ruby/mini_mime-0.1.3
+ >=dev-ruby/nokogiri-1.11:0
+ >=dev-ruby/rack-1.6.0:*
+ >=dev-ruby/rack-test-0.6.3:*
+ dev-ruby/regexp_parser:2
+ >=dev-ruby/xpath-3.2:3"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/d' -e '/pry/d' -e '1igem "sinatra"' -e '/statistics/Id' spec/spec_helper.rb || die
+
+ # Avoid window-manager specific tests (sizes are specific for fluxbox)
+ sed -i -e '/#maximize/,/^ end/ s:^:#:' lib/capybara/spec/session/window/window_spec.rb || die
+
+ # Avoid spec that requires unpackaged geckodriver
+ #sed -i -e '/describe.*register_server/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
+
+ # Avoid test dependency on puma server for now
+ sed -i -e '/should have :puma registered/,/^ end/ s:^:#:' spec/capybara_spec.rb || die
+
+ # Update spec to catch the right error code. This seems to have
+ # changed recently across ruby versions.
+ sed -i -e '/raise_error/ s/EOFError/Net::ReadTimeout/' spec/server_spec.rb || die
+}
+
+each_ruby_test() {
+ virtx ${RUBY} -Ilib -S rspec-3 spec
+}
diff --git a/dev-ruby/capybara/metadata.xml b/dev-ruby/capybara/metadata.xml
index b516139ef74b..c8f186cb7600 100644
--- a/dev-ruby/capybara/metadata.xml
+++ b/dev-ruby/capybara/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">jnicklas/capybara</remote-id>
+ <remote-id type="github">teamcapybara/capybara</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/certificate_authority/Manifest b/dev-ruby/certificate_authority/Manifest
index 91e50b16684f..99236981c5a3 100644
--- a/dev-ruby/certificate_authority/Manifest
+++ b/dev-ruby/certificate_authority/Manifest
@@ -1 +1 @@
-DIST certificate_authority-0.1.6.gem 22528 BLAKE2B 85b229c7506b787b85b734883967dd8e6fc4ceece57dec2b2b8c29fffbaec2d95931af5412d61ef9935e547b68b14213e5cc6971f94ad6294476cc653684742b SHA512 d1471171aa01956ca216bdb8515e9f6fafc9720827e7351b14c7c38907e87b66a3299d9ee0322fb51b8edd1cbc4f4a73a2aa4b54ff5ca4c8bc602ced5e035a59
+DIST certificate_authority-1.1.0.tar.gz 57457 BLAKE2B 6714359fd869cce2a0b43aa6321e95229dead04ed761f6239ecb7b988548aabf13c62a3c61e20d539a6003395886e5e4ff2366fabaa395bfd4b4761c55d56555 SHA512 52c79acaaacf471206912165d2b07464158b61acd8b65ad73614900baa208694f9d29107cc0e275d09baa580ecfbc95458ac7772370b423762d4e80ddf0237ca
diff --git a/dev-ruby/certificate_authority/certificate_authority-0.1.6-r2.ebuild b/dev-ruby/certificate_authority/certificate_authority-0.1.6-r2.ebuild
deleted file mode 100644
index f161bcdd6b56..000000000000
--- a/dev-ruby/certificate_authority/certificate_authority-0.1.6-r2.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Managing the core functions outlined in RFC-3280 for PKI"
-HOMEPAGE="https://github.com/cchandler/certificate_authority"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activemodel-3.0.6:*"
-
-all_ruby_prepare() {
- # Avoid dependency on dev-libs/engine_pkcs11 that will be hard to
- # make work on different arches due to hardwired load paths in
- # specs.
- rm -f spec/units/pkcs11_key_material_spec.rb || die
-}
diff --git a/dev-ruby/certificate_authority/certificate_authority-1.1.0.ebuild b/dev-ruby/certificate_authority/certificate_authority-1.1.0.ebuild
new file mode 100644
index 000000000000..f071d6a0c5b4
--- /dev/null
+++ b/dev-ruby/certificate_authority/certificate_authority-1.1.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="certificate_authority.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Managing the core functions outlined in RFC-3280 for PKI"
+HOMEPAGE="https://github.com/cchandler/certificate_authority"
+SRC_URI="https://github.com/cchandler/certificate_authority/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|pry\|overalls\)/ s:^:#:' spec/spec_helper.rb || die
+ sed -i -e '/spec.files/,/end/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid dependency on dev-libs/engine_pkcs11 that will be hard to
+ # make work on different arches due to hardwired load paths in
+ # specs.
+ rm -f spec/units/pkcs11_key_material_spec.rb || die
+
+ # Fix spec for OpenSSL 3.x
+ sed -i -e '426 s/keyid://' spec/units/certificate_spec.rb || die
+}
diff --git a/dev-ruby/certificate_authority/metadata.xml b/dev-ruby/certificate_authority/metadata.xml
index 6efe7307345f..ec8a7d411114 100644
--- a/dev-ruby/certificate_authority/metadata.xml
+++ b/dev-ruby/certificate_authority/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/cgi/Manifest b/dev-ruby/cgi/Manifest
new file mode 100644
index 000000000000..c1461a60482e
--- /dev/null
+++ b/dev-ruby/cgi/Manifest
@@ -0,0 +1,3 @@
+DIST cgi-0.3.6.tar.gz 221001 BLAKE2B 71f5091c132ec154520f6538a2ba06c164e1ed30f4cc8018052ab49605c674430108d7a87f7bf4b9dc0e1602fd3edd273af0d918de7725ca0127f67516deb1f3 SHA512 13f620b38eb4448da4184c80ff33e64bcaacf6ebff8eed219267ec33c1ed75f119a90f37503b21a835612b417100877cacf0a683f4854f97941c9e22618bf658
+DIST cgi-0.4.0.tar.gz 209136 BLAKE2B f16b5c30381fa94ccf30f45ddeefded5fb577748d3c8cc7e00e00c2d1b0993bf8687cd461c6aaba6a54b45490b675a4133510c8520a19479e4e17128ad2e7aa1 SHA512 412c3c1549e8b2387bec33da056c72cf1ad94267bac2f575abfc022078300304fa7d704a07da67ed699917aa49a41fd2424dc3fa2adf9f1ba1641cfee5c525d3
+DIST cgi-0.4.1.tar.gz 209438 BLAKE2B 9cce9b7028ae21337686f37b10ccc0912041642407cce437d07f67a01d2cdb52319dd16686b6b33ba1757240b3876a5971892b69a04bcfa1077a1b51fec7a734 SHA512 a1224135196b02aaf418adaa21a8afbc319e49650d126baff3a965a4504e2d5eb6fa9d1cd965a0cf41b8158398b3015f3605e3390d689846a2b72f3773d8dae9
diff --git a/dev-ruby/cgi/cgi-0.3.6-r1.ebuild b/dev-ruby/cgi/cgi-0.3.6-r1.ebuild
new file mode 100644
index 000000000000..7408dc861613
--- /dev/null
+++ b/dev-ruby/cgi/cgi-0.3.6-r1.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/cgi/escape/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="cgi.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Support for the Common Gateway Interface protocol"
+HOMEPAGE="https://github.com/ruby/cgi"
+SRC_URI="https://github.com/ruby/cgi/archive/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 ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+all_ruby_prepare() {
+ sed -e "/spec.version/ s/= version/= '${PV}'/" \
+ -e "/spec.name/ s/= name/= '${PN}'/" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -rtest/lib/helper -e "Dir['test/**/test_*.rb'].each { require _1 }" || die
+}
diff --git a/dev-ruby/cgi/cgi-0.4.0.ebuild b/dev-ruby/cgi/cgi-0.4.0.ebuild
new file mode 100644
index 000000000000..9087fea27c8e
--- /dev/null
+++ b/dev-ruby/cgi/cgi-0.4.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/cgi/escape/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="cgi.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Support for the Common Gateway Interface protocol"
+HOMEPAGE="https://github.com/ruby/cgi"
+SRC_URI="https://github.com/ruby/cgi/archive/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 ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -e "/spec.version/ s/= version/= '${PV}'/" \
+ -e "/spec.name/ s/= name/= '${PN}'/" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -rtest/lib/helper -e "Dir['test/**/test_*.rb'].each { require _1 }" || die
+}
diff --git a/dev-ruby/cgi/cgi-0.4.1.ebuild b/dev-ruby/cgi/cgi-0.4.1.ebuild
new file mode 100644
index 000000000000..2024cd9d9583
--- /dev/null
+++ b/dev-ruby/cgi/cgi-0.4.1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/cgi/escape/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/cgi
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="cgi.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Support for the Common Gateway Interface protocol"
+HOMEPAGE="https://github.com/ruby/cgi"
+SRC_URI="https://github.com/ruby/cgi/archive/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 ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -e "/spec.version/ s/= version/= '${PV}'/" \
+ -e "/spec.name/ s/= name/= '${PN}'/" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -rtest/lib/helper -e "Dir['test/**/test_*.rb'].each { require _1 }" || die
+}
diff --git a/dev-ruby/cgi/metadata.xml b/dev-ruby/cgi/metadata.xml
new file mode 100644
index 000000000000..e0de6a47df17
--- /dev/null
+++ b/dev-ruby/cgi/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/cgi</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/charlock_holmes/Manifest b/dev-ruby/charlock_holmes/Manifest
index dcf26d52bca4..f82b909f76e1 100644
--- a/dev-ruby/charlock_holmes/Manifest
+++ b/dev-ruby/charlock_holmes/Manifest
@@ -1 +1 @@
-DIST charlock_holmes-0.7.6.tar.gz 1192708 BLAKE2B 9024238f225e7c5040c0550beb573615939037e0113672d7d048a9abd536d8e1d224eb1c8f6a155906074394838888960e955d0318c47fa2e1330e46275f4e99 SHA512 410a210e4fc7e9905f38e3f68375ffdf0cf73cca8a8b230d7c4165ac23503e2460692168b1eb5d69ff183e70d89e5dcfbf6688dd22b736f4adf3c9f3af18575b
+DIST charlock_holmes-0.7.7.tar.gz 1192739 BLAKE2B f057a0b53f8624f12029679c96be754e9225bdeaab4db8077ab8b48c1e04883ea6a9a3019cc0c5d875179b287ef0d70aae591201d8c22c2a6e4a5b4d6c592294 SHA512 5950db982fbbcf41c6c8f893b2d5e1d755ec85e55bd6ce9072507c06925251edb3198840fdf346e8b74f06f4dc1d63bf94657ce582b78947751d20980f71aa8e
diff --git a/dev-ruby/charlock_holmes/charlock_holmes-0.7.6.ebuild b/dev-ruby/charlock_holmes/charlock_holmes-0.7.6.ebuild
deleted file mode 100644
index 46a93acd7547..000000000000
--- a/dev-ruby/charlock_holmes/charlock_holmes-0.7.6.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Character encoding detecting library for Ruby using ICU"
-HOMEPAGE="https://github.com/brianmario/charlock_holmes"
-SRC_URI="https://github.com/brianmario/charlock_holmes/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_bdepend "test? (
- dev-ruby/minitest )"
-
-CDEPEND="dev-libs/icu:=
- sys-libs/zlib"
-DEPEND+=" ${CDEPEND}"
-RDEPEND+=" ${CDEPEND}"
-
-PATCHES=( "${FILESDIR}"/${PN}-0.7.6-gcc5.patch )
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' test/helper.rb || die
-
- # Avoid dependency on rake-compiler
- sed -i -e '/rake-compiler/,$ s:^:#:' Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/${PN} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/${PN}$(get_modname) lib/${PN}/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib test/*.rb || die
-}
diff --git a/dev-ruby/charlock_holmes/charlock_holmes-0.7.7-r1.ebuild b/dev-ruby/charlock_holmes/charlock_holmes-0.7.7-r1.ebuild
new file mode 100644
index 000000000000..6fbf270000ff
--- /dev/null
+++ b/dev-ruby/charlock_holmes/charlock_holmes-0.7.7-r1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/charlock_holmes/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/charlock_holmes"
+
+RUBY_FAKEGEM_GEMSPEC="charlock_holmes.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Character encoding detecting library for Ruby using ICU"
+HOMEPAGE="https://github.com/brianmario/charlock_holmes"
+SRC_URI="https://github.com/brianmario/charlock_holmes/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitest )"
+
+CDEPEND="dev-libs/icu:=
+ sys-libs/zlib"
+DEPEND+=" ${CDEPEND}"
+RDEPEND+=" ${CDEPEND}"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/d' test/helper.rb || die
+
+ # Avoid dependency on rake-compiler
+ sed -i -e '/rake-compiler/,$ s:^:#:' Rakefile || die
+
+ # Avoid minitest deprecation
+ sed -i -e 's/MiniTest/Minitest/' test/converter_test.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib test/*.rb || die
+}
diff --git a/dev-ruby/charlock_holmes/files/charlock_holmes-0.7.6-gcc5.patch b/dev-ruby/charlock_holmes/files/charlock_holmes-0.7.6-gcc5.patch
deleted file mode 100644
index 944efac19253..000000000000
--- a/dev-ruby/charlock_holmes/files/charlock_holmes-0.7.6-gcc5.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/ext/charlock_holmes/extconf.rb
-+++ b/ext/charlock_holmes/extconf.rb
-@@ -54,11 +54,8 @@
- have_library 'icuuc' or abort 'libicuuc missing'
- have_library 'icudata' or abort 'libicudata missing'
-
--# icu4c might be built in C++11 mode, but it also might not have been
--icuconfig = `which icu-config`.chomp if icuconfig.empty?
--if File.exist?(icuconfig) && `#{icuconfig} --cxxflags`.include?("c++11")
-- $CXXFLAGS << ' -std=c++11'
--end
-+# Always use C++11
-+$CXXFLAGS << ' -std=c++11'
-
- $CFLAGS << ' -Wall -funroll-loops'
- $CFLAGS << ' -Wextra -O0 -ggdb3' if ENV['DEBUG']
diff --git a/dev-ruby/charlock_holmes/metadata.xml b/dev-ruby/charlock_holmes/metadata.xml
index b2f58e2a276c..33de43c946f6 100644
--- a/dev-ruby/charlock_holmes/metadata.xml
+++ b/dev-ruby/charlock_holmes/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/chef-utils/Manifest b/dev-ruby/chef-utils/Manifest
new file mode 100644
index 000000000000..2b05f410e2ef
--- /dev/null
+++ b/dev-ruby/chef-utils/Manifest
@@ -0,0 +1,3 @@
+DIST chef-utils-18.3.0.gem 34816 BLAKE2B cafdacdf4c3923df8ba41d3d960c135d357c9712a8009cc06c5f8e43a039b83495036e46e6f2d3785f589f206a0d373ec87b8c728c99889c236b16509bc51bc0 SHA512 0a806d2b8a42f2d574c81788990e6e0b70eaf4ac25bc08836915deae8ecdc2f82415ea66d6a571b01097de1e6435d359eaabe3ec16b8f3df24d826c78c96a5a8
+DIST chef-utils-18.4.12.gem 34816 BLAKE2B 601f2ddf2dc05544d1a035fed0050a691f9e70b971bf83b3201238f788039c93d9d7163723d9cda530fa7832e8bb33f889f7e520ccb12939e8603a37f576a3de SHA512 588f95aab8db21fbefae43baa4846339fb4ac22e8ecae1a8988fd4da6fb045fcad042adf281160414cb7b2a5deca7507d99fbfab4c21a4946cce9e807f3e3874
+DIST chef-utils-18.4.2.gem 34816 BLAKE2B 31cf065f6c9879367af26e80a1201dba91863b94966a33278ed50068e796b25416327b979616a9533792c346fcc33dd61015cef42a89a11bcdfefd5e2b1f3c72 SHA512 96f083471166f5aba6eef27c8dd32c7d99d6fec558a529f469fd03677f97fccf1ca0d4a1512dedcdbb56d781858089c28dd848d8c7c675f30dc486dd6b38f574
diff --git a/dev-ruby/chef-utils/chef-utils-18.3.0.ebuild b/dev-ruby/chef-utils/chef-utils-18.3.0.ebuild
new file mode 100644
index 000000000000..bfd489e9ecc2
--- /dev/null
+++ b/dev-ruby/chef-utils/chef-utils-18.3.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRA_DOC="CHANGELOG.md README.md"
+
+#RUBY_FAKEGEM_GEMSPEC="mixlib-shellout.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Basic utility functions for Core Chef Infra development"
+HOMEPAGE="https://github.com/chef/chef/tree/main/chef-utils"
+#SRC_URI="https://github.com/chef/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/concurrent-ruby"
+
+all_ruby_prepare() {
+ # Avoid specs depending on unpackaged fauxhai
+ rm -f spec/unit/dsl/{cloud,os,platform,platform_family,virtualization}_spec.rb || die
+}
diff --git a/dev-ruby/chef-utils/chef-utils-18.4.12.ebuild b/dev-ruby/chef-utils/chef-utils-18.4.12.ebuild
new file mode 100644
index 000000000000..6d4c643d4a13
--- /dev/null
+++ b/dev-ruby/chef-utils/chef-utils-18.4.12.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRA_DOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Basic utility functions for Core Chef Infra development"
+HOMEPAGE="https://github.com/chef/chef/tree/main/chef-utils"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~x86"
+
+ruby_add_rdepend "dev-ruby/concurrent-ruby"
+
+all_ruby_prepare() {
+ # Avoid specs depending on unpackaged fauxhai
+ rm -f spec/unit/dsl/{cloud,os,platform,platform_family,virtualization}_spec.rb || die
+}
diff --git a/dev-ruby/chef-utils/chef-utils-18.4.2.ebuild b/dev-ruby/chef-utils/chef-utils-18.4.2.ebuild
new file mode 100644
index 000000000000..6d4c643d4a13
--- /dev/null
+++ b/dev-ruby/chef-utils/chef-utils-18.4.2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRA_DOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Basic utility functions for Core Chef Infra development"
+HOMEPAGE="https://github.com/chef/chef/tree/main/chef-utils"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~x86"
+
+ruby_add_rdepend "dev-ruby/concurrent-ruby"
+
+all_ruby_prepare() {
+ # Avoid specs depending on unpackaged fauxhai
+ rm -f spec/unit/dsl/{cloud,os,platform,platform_family,virtualization}_spec.rb || die
+}
diff --git a/dev-ruby/chef-utils/metadata.xml b/dev-ruby/chef-utils/metadata.xml
new file mode 100644
index 000000000000..34df01545bcb
--- /dev/null
+++ b/dev-ruby/chef-utils/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">chef/chef</remote-id>
+ <remote-id type="rubygems">chef-utils</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/childlabor/childlabor-0.0.3-r1.ebuild b/dev-ruby/childlabor/childlabor-0.0.3-r1.ebuild
deleted file mode 100644
index 4eef5fb6941a..000000000000
--- a/dev-ruby/childlabor/childlabor-0.0.3-r1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_DOCDIR=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A scripting framework that replaces rake and sake"
-HOMEPAGE="https://github.com/carllerche/childlabor"
-COMMIT_ID="6518b939dddbad20c7f05aa075d76e3ca6e70447"
-SRC_URI="https://github.com/carllerche/childlabor/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE="test"
-
-RUBY_S="${PN}-${COMMIT_ID}"
-
-ruby_add_bdepend "test? ( dev-ruby/rspec:2 )"
-
-all_ruby_prepare() {
- # Avoid failing spec. The signals work, but the stdout handling
- # doesn't seem to play nice with portage.
- sed -i -e '/can send signals/,/^ end/ s:^:#:' spec/task_spec.rb || die
-}
-
-each_ruby_test() {
- ruby-ng_rspec -I. spec/task_spec.rb || die
-}
diff --git a/dev-ruby/childlabor/childlabor-0.0.3-r2.ebuild b/dev-ruby/childlabor/childlabor-0.0.3-r2.ebuild
new file mode 100644
index 000000000000..5de75caf1d85
--- /dev/null
+++ b/dev-ruby/childlabor/childlabor-0.0.3-r2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="childlabor.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Gem that helps manage child processes"
+HOMEPAGE="https://github.com/carllerche/childlabor"
+COMMIT_ID="6518b939dddbad20c7f05aa075d76e3ca6e70447"
+SRC_URI="https://github.com/carllerche/childlabor/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
+IUSE="test"
+
+RUBY_S="${PN}-${COMMIT_ID}"
+
+ruby_add_bdepend "test? ( dev-ruby/rspec:3 )"
+
+all_ruby_prepare() {
+ # Avoid failing spec. The signals work, but the stdout handling
+ # doesn't seem to play nice with portage.
+ sed -i -e '/can send signals/,/^ end/ s:^:#:' spec/task_spec.rb || die
+
+ # Rspec 3 compatibility
+ sed -i -e 's/Spec::Runner/RSpec/' spec/spec_helper.rb || die
+ sed -i -e 's/be_false/be_falsey/ ; s/be_true/be true/' spec/task_spec.rb || die
+}
+
+each_ruby_test() {
+ RSPEC_VERSION=3 ruby-ng_rspec -I. spec/task_spec.rb || die
+}
diff --git a/dev-ruby/childlabor/metadata.xml b/dev-ruby/childlabor/metadata.xml
index fb5ec591d30f..ec1217233b1e 100644
--- a/dev-ruby/childlabor/metadata.xml
+++ b/dev-ruby/childlabor/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/childprocess/Manifest b/dev-ruby/childprocess/Manifest
index 154a9c3474c1..0fc5fba1af1e 100644
--- a/dev-ruby/childprocess/Manifest
+++ b/dev-ruby/childprocess/Manifest
@@ -1,3 +1,2 @@
-DIST childprocess-0.9.0.gem 32768 BLAKE2B cb836c2cc3f9d6bda1db88aec8692499dae2a325611dcdfae482fd6a7bbf065612f0efbe140c08447566b8759ce125968a153d6df38889403d98bc94fe397d7b SHA512 5a788556e14491b0801b8a533d8d8eebba726af6417c8c6c7146738fcae2f92e9faa090312e77d974852003f5a4d155d5307b0c9d1ff1d18173ad653d21f63d8
-DIST childprocess-1.0.1.gem 34816 BLAKE2B 54b1db5bfa8829eeaa923f9e7be88183058d0c4f3ad7474b96199b486bc12f7035a0a1eb9858ce9e8e4aa73eb34fe81e734b206851ca744abbcbb6bb32e4d1df SHA512 efe61096dd09f6278582763692104fcc3beacfc96065372afdee355b68ef6ed498baf855f911d2a0b3a186d978d6d737519ae189064293af2d756a7356dad30d
-DIST childprocess-2.0.0.gem 34816 BLAKE2B 8c25d861e20296f322c94886f39178c099ababf1c0f1d249cb838e253563d4d9b6f90b433cec31c4288883516281faa3f2aaaafaacf6f2b4e4427e8270488459 SHA512 104f031cb878ed3713b3c326ba0071a8cb2fb5d4e536c5fd7d0dcdcf23e343e46077737d746ffdec7d26accc35b91ab9e496afcae38ee91e0c2272ca39246199
+DIST childprocess-4.1.0.gem 34304 BLAKE2B 81ca075bde9705eed57c80b0d37e1d8fcf3938bd0319a40f2178dab9be08cba570d90cc5292d585b3911eca5a90b4ff861d1fc79ba487d1a4f08b0fbd9a78c48 SHA512 e635c3acfa5ad85891c3879f240c7e96d47d7d5ec3f472f4ce6661552b0fb7bd72c5e3b9fb73f4f9312b749fbe554b4be388e56a31a3c63c39743d055d774def
+DIST childprocess-5.0.0.gem 21504 BLAKE2B dae2022506c533f3c16337600bf5f489ccb694156079a2c9f2d3b1971c7fb44524e44b49e6e51c5ab6d1350222c8a84a5053b58e299cdc5e13633de2101f3952 SHA512 9ec340c86f4fd978b7a9925bcf90811ff3443f014469e4ff121e2c4758a4068823029ab413d1a57eb9de4a864435505b1edfa60a611709f2a5f99aaf08da422d
diff --git a/dev-ruby/childprocess/childprocess-0.9.0.ebuild b/dev-ruby/childprocess/childprocess-0.9.0.ebuild
deleted file mode 100644
index d93efa6b6f11..000000000000
--- a/dev-ruby/childprocess/childprocess-0.9.0.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Solution for controlling external programs running in the background"
-HOMEPAGE="https://github.com/jarib/childprocess"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/ffi-1.0.11"
-
-all_ruby_prepare() {
- # Remove bundler support
- rm Gemfile || die
- sed -i -e "/[Bb]undler/d" Rakefile || die
- sed -i -e "/[Cc]overalls/d" spec/spec_helper.rb || die
- sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_prepare() {
- sed -i -e "s:'ruby':'"${RUBY}"':" spec/childprocess_spec.rb || die
-}
-
-each_ruby_test() {
- RUBYLIB=lib RSPEC_VERSION=3 ruby-ng_rspec
-}
diff --git a/dev-ruby/childprocess/childprocess-1.0.1-r1.ebuild b/dev-ruby/childprocess/childprocess-1.0.1-r1.ebuild
deleted file mode 100644
index 311461158407..000000000000
--- a/dev-ruby/childprocess/childprocess-1.0.1-r1.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Solution for controlling external programs running in the background"
-HOMEPAGE="https://github.com/jarib/childprocess"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/ffi-1.0.11"
-
-all_ruby_prepare() {
- eapply "${FILESDIR}/${P}-ruby26-reopen.patch"
-
- # Remove bundler support
- rm Gemfile || die
- sed -i -e "/[Bb]undler/d" Rakefile || die
- sed -i -e "/[Cc]overalls/d" spec/spec_helper.rb || die
- sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_prepare() {
- sed -i -e "s:'ruby':'"${RUBY}"':" spec/childprocess_spec.rb || die
-}
-
-each_ruby_test() {
- RUBYLIB=lib RSPEC_VERSION=3 ruby-ng_rspec
-}
diff --git a/dev-ruby/childprocess/childprocess-1.0.1.ebuild b/dev-ruby/childprocess/childprocess-1.0.1.ebuild
deleted file mode 100644
index fed3e299a0fb..000000000000
--- a/dev-ruby/childprocess/childprocess-1.0.1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-# ruby26: code not compatible
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Solution for controlling external programs running in the background"
-HOMEPAGE="https://github.com/jarib/childprocess"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/ffi-1.0.11"
-
-all_ruby_prepare() {
- # Remove bundler support
- rm Gemfile || die
- sed -i -e "/[Bb]undler/d" Rakefile || die
- sed -i -e "/[Cc]overalls/d" spec/spec_helper.rb || die
- sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_prepare() {
- sed -i -e "s:'ruby':'"${RUBY}"':" spec/childprocess_spec.rb || die
-}
-
-each_ruby_test() {
- RUBYLIB=lib RSPEC_VERSION=3 ruby-ng_rspec
-}
diff --git a/dev-ruby/childprocess/childprocess-2.0.0.ebuild b/dev-ruby/childprocess/childprocess-2.0.0.ebuild
deleted file mode 100644
index edd96a7d9769..000000000000
--- a/dev-ruby/childprocess/childprocess-2.0.0.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Solution for controlling external programs running in the background"
-HOMEPAGE="https://github.com/jarib/childprocess"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/ffi-1.0.11"
-
-all_ruby_prepare() {
- # Remove bundler support
- rm Gemfile || die
- sed -i -e "/[Bb]undler/d" Rakefile || die
- sed -i -e "/[Cc]overalls/d" spec/spec_helper.rb || die
- sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_prepare() {
- sed -i -e "s:'ruby':'"${RUBY}"':" spec/childprocess_spec.rb || die
-}
-
-each_ruby_test() {
- RUBYLIB=lib RSPEC_VERSION=3 ruby-ng_rspec
-}
diff --git a/dev-ruby/childprocess/childprocess-4.1.0.ebuild b/dev-ruby/childprocess/childprocess-4.1.0.ebuild
new file mode 100644
index 000000000000..8492d1813013
--- /dev/null
+++ b/dev-ruby/childprocess/childprocess-4.1.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Solution for controlling external programs running in the background"
+HOMEPAGE="https://github.com/jarib/childprocess"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/ffi-1.0.11"
+
+all_ruby_prepare() {
+ # Remove bundler support
+ rm Gemfile || die
+ sed -i -e "/[Bb]undler/d" Rakefile || die
+ sed -i -e "/[Cc]overalls/d" spec/spec_helper.rb || die
+ sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_prepare() {
+ sed -i -e "s:'ruby':'"${RUBY}"':" spec/childprocess_spec.rb spec/spec_helper.rb || die
+ sed -i -e '/system/ s:ruby:'${RUBY}':' spec/spec_helper.rb || die
+}
+
+each_ruby_test() {
+ RUBYLIB=lib RSPEC_VERSION=3 ruby-ng_rspec
+}
diff --git a/dev-ruby/childprocess/childprocess-5.0.0.ebuild b/dev-ruby/childprocess/childprocess-5.0.0.ebuild
new file mode 100644
index 000000000000..1d3f000e03be
--- /dev/null
+++ b/dev-ruby/childprocess/childprocess-5.0.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Solution for controlling external programs running in the background"
+HOMEPAGE="https://github.com/enkessler/childprocess"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/ffi-1.0.11"
+
+all_ruby_prepare() {
+ # Remove bundler support
+ rm Gemfile || die
+ sed -i -e "/[Bb]undler/d" Rakefile || die
+ sed -i -e "/[Cc]overalls/d" spec/spec_helper.rb || die
+ sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_prepare() {
+ sed -i -e "s:'ruby':'"${RUBY}"':" spec/childprocess_spec.rb spec/spec_helper.rb || die
+ sed -i -e '/system/ s:ruby:'${RUBY}':' spec/spec_helper.rb || die
+}
+
+each_ruby_test() {
+ RUBYLIB=lib RSPEC_VERSION=3 ruby-ng_rspec
+}
diff --git a/dev-ruby/childprocess/files/childprocess-1.0.1-ruby26-reopen.patch b/dev-ruby/childprocess/files/childprocess-1.0.1-ruby26-reopen.patch
deleted file mode 100644
index 11f944218290..000000000000
--- a/dev-ruby/childprocess/files/childprocess-1.0.1-ruby26-reopen.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-diff --git a/lib/childprocess/unix/fork_exec_process.rb b/lib/childprocess/unix/fork_exec_process.rb
-index 5ed2a79..cc7a850 100644
---- a/lib/childprocess/unix/fork_exec_process.rb
-+++ b/lib/childprocess/unix/fork_exec_process.rb
-@@ -29,8 +29,16 @@ module ChildProcess
- exec_r.close
- set_env
-
-- STDOUT.reopen(stdout || "/dev/null")
-- STDERR.reopen(stderr || "/dev/null")
-+ if stdout
-+ STDOUT.reopen(stdout)
-+ else
-+ STDOUT.reopen("/dev/null", "a+")
-+ end
-+ if stderr
-+ STDERR.reopen(stderr)
-+ else
-+ STDERR.reopen("/dev/null", "a+")
-+ end
-
- if duplex?
- STDIN.reopen(reader)
diff --git a/dev-ruby/childprocess/metadata.xml b/dev-ruby/childprocess/metadata.xml
index 2586b163cf59..4774b53ab662 100644
--- a/dev-ruby/childprocess/metadata.xml
+++ b/dev-ruby/childprocess/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">jarib/childprocess</remote-id>
+ <remote-id type="github">enkessler/childprocess</remote-id>
+ <remote-id type="rubygems">childprocess</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/chronic/chronic-0.10.2-r1.ebuild b/dev-ruby/chronic/chronic-0.10.2-r1.ebuild
new file mode 100644
index 000000000000..6a57f38eeec7
--- /dev/null
+++ b/dev-ruby/chronic/chronic-0.10.2-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="HISTORY.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="chronic.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Chronic is a natural language date/time parser written in pure Ruby"
+HOMEPAGE="https://github.com/mojombo/chronic"
+LICENSE="MIT"
+
+KEYWORDS="amd64 ~arm64 ~hppa ppc ppc64 ~sparc x86 ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE=""
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5 )"
+
+all_ruby_prepare() {
+ sed -i -e '/git ls-files/d' chronic.gemspec || die
+
+ sed -i -e 's/MiniTest/Minitest/' test/helper.rb || die
+}
diff --git a/dev-ruby/chronic/chronic-0.10.2.ebuild b/dev-ruby/chronic/chronic-0.10.2.ebuild
deleted file mode 100644
index 83456930f863..000000000000
--- a/dev-ruby/chronic/chronic-0.10.2.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="HISTORY.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="chronic.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Chronic is a natural language date/time parser written in pure Ruby"
-HOMEPAGE="https://github.com/mojombo/chronic"
-LICENSE="MIT"
-
-KEYWORDS="alpha amd64 hppa ia64 ppc ppc64 ~sparc x86 ~x86-fbsd ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5 )"
-
-all_ruby_prepare() {
- sed -i -e '/git ls-files/d' chronic.gemspec || die
-}
diff --git a/dev-ruby/chronic/metadata.xml b/dev-ruby/chronic/metadata.xml
index 14ab272e3dce..b5f775afe610 100644
--- a/dev-ruby/chronic/metadata.xml
+++ b/dev-ruby/chronic/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/chunky_png/Manifest b/dev-ruby/chunky_png/Manifest
index 6dfc4dd4c3a5..5c6a46ef8233 100644
--- a/dev-ruby/chunky_png/Manifest
+++ b/dev-ruby/chunky_png/Manifest
@@ -1,2 +1 @@
-DIST chunky_png-1.3.10.gem 352768 BLAKE2B ae34d2bc8199e46add874511343a7e8ecf08ed3ec3e488a22a99335895d260ebb60c6be96c5771915a176f44e354599373feafce9dda362b6ebc2b58cd92e79f SHA512 968e068a6fbcc3a91d435509a118976de56c62b9e311d201064aae2eb8129994b6c0876ca5ed3368b0415b238f46d14ab1059d00cbf473aaf9631456596e58c3
-DIST chunky_png-1.3.11.gem 352768 BLAKE2B a60607830c41921f8e8018b91e459103d0a793a6c3a5491f36399dff0ac83dee09f66173f01e3e8f8f2bcf9fc69b1ffa53a9bc29adda758be75fefec391f7900 SHA512 5935bc7672ef4eb271abe0e2d4b83c2628ecb9d4fc1bb095d28d0f7fd5e13443492bc91b2c9c1de59d8bb669c185cddaeef62d03d3b0df88ecfaaa3c7a2a0ba6
+DIST chunky_png-1.4.0.gem 363008 BLAKE2B 3fc484985565f223127c43eb1d55137ee9b58fc5ab6f25256dd54efddb817a5ecf78b39754a042fd09b83493cbdfdf02d0b90d150ab90b084f01c9a98aba5a8e SHA512 1276ba527723af973ca00535baab0dd3be8185cfaa77efb28c3b1ef1e949312710a616ca55711923875e54cb9c92b38de71062d2ba68b2314c7b9ce7a9b50b11
diff --git a/dev-ruby/chunky_png/chunky_png-1.3.10.ebuild b/dev-ruby/chunky_png/chunky_png-1.3.10.ebuild
deleted file mode 100644
index 36d324ce1bc2..000000000000
--- a/dev-ruby/chunky_png/chunky_png-1.3.10.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR=""
-
-RUBY_FAKEGEM_EXTRADOC="BENCHMARKING.rdoc CHANGELOG.rdoc README.md"
-
-RUBY_FAKEGEM_GEMSPEC="chunky_png.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Pure Ruby library that can read and write PNG images"
-HOMEPAGE="https://wiki.github.com/wvanbergen/chunky_png"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/[bB]undler/s:^:#:' {spec,benchmarks}/*.rb || die
- rm Gemfile* || die
-
- # Avoid git dependency
- sed -i -e '/s.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/chunky_png/chunky_png-1.3.11.ebuild b/dev-ruby/chunky_png/chunky_png-1.3.11.ebuild
deleted file mode 100644
index 2fbdae333acf..000000000000
--- a/dev-ruby/chunky_png/chunky_png-1.3.11.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR=""
-
-RUBY_FAKEGEM_EXTRADOC="BENCHMARKING.rdoc CHANGELOG.rdoc README.md"
-
-RUBY_FAKEGEM_GEMSPEC="chunky_png.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Pure Ruby library that can read and write PNG images"
-HOMEPAGE="https://wiki.github.com/wvanbergen/chunky_png"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/[bB]undler/s:^:#:' {spec,benchmarks}/*.rb || die
- rm Gemfile* || die
-
- # Avoid git dependency
- sed -i -e '/s.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/chunky_png/chunky_png-1.4.0-r1.ebuild b/dev-ruby/chunky_png/chunky_png-1.4.0-r1.ebuild
new file mode 100644
index 000000000000..60b0499c8a89
--- /dev/null
+++ b/dev-ruby/chunky_png/chunky_png-1.4.0-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+
+RUBY_FAKEGEM_EXTRADOC="BENCHMARKING.rdoc CHANGELOG.rdoc README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="chunky_png.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Pure Ruby library that can read and write PNG images"
+HOMEPAGE="https://github.com/wvanbergen/chunky_png"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+PATCHES=(
+ "${FILESDIR}/${P}-ruby32.patch"
+)
+
+all_ruby_prepare() {
+ sed -i -e '/[bB]undler/s:^:#:' {spec,benchmarks}/*.rb || die
+ rm Gemfile* || die
+
+ # Avoid git dependency
+ sed -i -e '/s.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/chunky_png/files/chunky_png-1.4.0-ruby32.patch b/dev-ruby/chunky_png/files/chunky_png-1.4.0-ruby32.patch
new file mode 100644
index 000000000000..75d08c9fc88d
--- /dev/null
+++ b/dev-ruby/chunky_png/files/chunky_png-1.4.0-ruby32.patch
@@ -0,0 +1,29 @@
+From 8e6f5934541833f15664398f90331f3724e40933 Mon Sep 17 00:00:00 2001
+From: Mamoru TASAKA <mtasaka@fedoraproject.org>
+Date: Tue, 15 Nov 2022 23:22:20 +0900
+Subject: [PATCH] ruby3_2 fix: check if object responds to regex_match op
+
+Object#=~ is already deprecated since ruby2.6 and will be
+removed from ruby3.2. As the result, Array no longer
+respond to =~ from ruby3.2, for example.
+
+Check if the target object really respond to =~ .
+
+Closes #168
+---
+ lib/chunky_png/vector.rb | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/chunky_png/vector.rb b/lib/chunky_png/vector.rb
+index 4ef965f..034104c 100644
+--- a/lib/chunky_png/vector.rb
++++ b/lib/chunky_png/vector.rb
+@@ -166,7 +166,7 @@ def dimension
+ # @return [Array<ChunkyPNG::Point>] The list of points interpreted from the input array.
+ def self.multiple_from_array(source)
+ return [] if source.empty?
+- if source.first.is_a?(Numeric) || source.first =~ /^\d+$/
++ if source.first.is_a?(Numeric) || ( source.first.respond_to?(:=~) && source.first =~ /^\d+$/ )
+ raise ArgumentError, "The points array is expected to have an even number of items!" if source.length % 2 != 0
+
+ points = []
diff --git a/dev-ruby/chunky_png/metadata.xml b/dev-ruby/chunky_png/metadata.xml
index 28ab0c15f206..b77f6d0887ed 100644
--- a/dev-ruby/chunky_png/metadata.xml
+++ b/dev-ruby/chunky_png/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">wvanbergen/chunky_png</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/cinch/Manifest b/dev-ruby/cinch/Manifest
deleted file mode 100644
index a3944a522009..000000000000
--- a/dev-ruby/cinch/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST cinch-2.3.4.gem 80384 BLAKE2B 10ec1a96eebb04d378648e1f1e0ca9f1a35afbaa146d909158db89f604709d6b2f4abc051accc48e1034f78b32298a07fa14c64477c69603495a5cf686d2ed7e SHA512 25cb2b18f1ae5f4e7c42cbb27dd68fec3bf29091bafb9c61ecffa0743b6696cd6e99499c2e30a94f4dbaa373c979d0fbff0c685522844bdd01ad81cdf34af9d9
diff --git a/dev-ruby/cinch/cinch-2.3.4.ebuild b/dev-ruby/cinch/cinch-2.3.4.ebuild
deleted file mode 100644
index 2fa0c0f6ed50..000000000000
--- a/dev-ruby/cinch/cinch-2.3.4.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# The testsuite is not in the Gem, only in the upstream repo.
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="docs/*.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="IRC Bot Building Framework"
-HOMEPAGE="https://github.com/cinchrb/cinch http://cinchrb.org"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/cinch/metadata.xml b/dev-ruby/cinch/metadata.xml
deleted file mode 100644
index 2b4603a69895..000000000000
--- a/dev-ruby/cinch/metadata.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>robbat2@gentoo.org</email>
- <name>Robin H. Johnson</name>
- </maintainer>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <longdescription>
- A simple, friendly DSL for creating IRC bots
- </longdescription>
- <upstream>
- <remote-id type="github">cinchrb/cinch</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/classifier-reborn/Manifest b/dev-ruby/classifier-reborn/Manifest
deleted file mode 100644
index 68ea54e90070..000000000000
--- a/dev-ruby/classifier-reborn/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST classifier-reborn-2.2.0.tar.gz 319010 BLAKE2B f4bd3259b9d6e324f3f0feb06dfd1c8736eaa8ae0f687e488b6e11b9cda8e6bf9e56a175c01dfb9352184da1a030d1330e22917c7bfdcb4242fa0102f6291940 SHA512 d299ce8f3b96de5c6194e816d880ebb895faaacdc2a19985166bdc3d9760242ec41d85f22167ea66e9afd743f5d91d63881da02882d1a412fc95a0c5db63d04c
diff --git a/dev-ruby/classifier-reborn/classifier-reborn-2.2.0.ebuild b/dev-ruby/classifier-reborn/classifier-reborn-2.2.0.ebuild
deleted file mode 100644
index a4930c294bb5..000000000000
--- a/dev-ruby/classifier-reborn/classifier-reborn-2.2.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Module to allow Bayesian and other types of classifications"
-HOMEPAGE="https://github.com/jekyll/classifier-reborn"
-SRC_URI="https://github.com/jekyll/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="gsl test"
-
-ruby_add_rdepend ">=dev-ruby/fast-stemmer-1.0.0
- !!dev-ruby/classifier
- gsl? ( dev-ruby/rb-gsl )"
-ruby_add_bdepend "test? ( dev-ruby/redis )"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
- if use !gsl; then
- sed -e 's/$GSL = true/$GSL = false/'\
- -e 's/vector_serialize/vector/'\
- -i lib/${PN}/lsi.rb || die
- fi
- # Comment out broken test
- #sed -i -e "/assert 'Normal',/s/^/#/" test/bayes/bayesian_test.rb || die
-
- sed -i -e '/reporters/I s:^:#:' -e '/pry/ s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/classifier-reborn/metadata.xml b/dev-ruby/classifier-reborn/metadata.xml
deleted file mode 100644
index 89e88426f8ab..000000000000
--- a/dev-ruby/classifier-reborn/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jekyll/classifier-reborn</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/climate_control/Manifest b/dev-ruby/climate_control/Manifest
index c903400c2370..3c146a2391ba 100644
--- a/dev-ruby/climate_control/Manifest
+++ b/dev-ruby/climate_control/Manifest
@@ -1 +1 @@
-DIST climate_control-0.2.0.gem 9728 BLAKE2B 9868eef8836189d7567d8fd8f5dade874ed4baef883f38b2d6148bde4f1e24544f31fae75ff7bcec4dc685c1fdd23d5164817460eeaf151d8eb105e023bbd741 SHA512 c264d731fb02c7a15932d2724bcd54dff91d2370a0b5336444e167e0d39596974c3826db502be7dc1b6d99cdbbc022135822222a5a6cb6b822aa32a0913c1ec9
+DIST climate_control-1.2.0.gem 10752 BLAKE2B 5c7c1d0b1ec50f12139e47a0c0f2d5753c6165aa96bb995be12f65cef4a222fc4fa96b66e8c475b3ebe2f353c335a6667e12a9a2a8a869331a1f41f72d686d94 SHA512 282f40d5d9d7b4a6577ea13dd92141c985a0c1bd7d6688cb2bca2529721a0523a1e9ac4ba1c6a27a43b286ac664e502698ef2c0578a9030283a4b18f7cb0a5e8
diff --git a/dev-ruby/climate_control/climate_control-0.2.0.ebuild b/dev-ruby/climate_control/climate_control-0.2.0.ebuild
deleted file mode 100644
index 3909fda85594..000000000000
--- a/dev-ruby/climate_control/climate_control-0.2.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="NEWS README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Easily manage your environment"
-HOMEPAGE="https://github.com/thoughtbot/climate_control"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- # Avoid dependencies on simplecov and git.
- sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
- sed -i -e 's/git ls-files/echo ""/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/climate_control/climate_control-1.2.0.ebuild b/dev-ruby/climate_control/climate_control-1.2.0.ebuild
new file mode 100644
index 000000000000..6f4c638be0bb
--- /dev/null
+++ b/dev-ruby/climate_control/climate_control-1.2.0.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Easily manage your environment"
+HOMEPAGE="https://github.com/thoughtbot/climate_control"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ # Avoid dependencies on simplecov and git.
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+ sed -i -e 's/git ls-files/find * -print/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/climate_control/metadata.xml b/dev-ruby/climate_control/metadata.xml
index c739d2821a3b..7115cfe1cf5a 100644
--- a/dev-ruby/climate_control/metadata.xml
+++ b/dev-ruby/climate_control/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/cliver/Manifest b/dev-ruby/cliver/Manifest
index 2d36e91b89a1..2e9dc8de1ee5 100644
--- a/dev-ruby/cliver/Manifest
+++ b/dev-ruby/cliver/Manifest
@@ -1 +1 @@
-DIST cliver-0.3.2.gem 16384 BLAKE2B a96637b5da20ebc28a29479bda76100b2ce7dac1c3620509c2891ffad8f195a54dcb381190a22abc02d1e3df1d69bf9ffa194e19c836115a70232fa7a783ecb8 SHA512 db0eff5119b84b4390f0c2f3e68cab891daedbf06eae55267c798787172734d3355cd82f2b6775e54fca26ed54c6ad4688743af588c76aa0ec6507a77443362f
+DIST cliver-0.3.2.tar.gz 14022 BLAKE2B aaaec8d52db1ad5f2b6cbe483e7e63ec8204ff4b465239f4d2a4b714037c922c2b417cd26e1fbf2da86aa9f999b1c1bfc6dbc7efb363fa016e713385f8713189 SHA512 96786561c3cacfce1f3d3be71461cc227620e81035ca594e65fb351e477ebdae9057c8cdc3a91ca62af7251afb39bf3aa633e79fbc77d2b7e921fbf398974014
diff --git a/dev-ruby/cliver/cliver-0.3.2-r2.ebuild b/dev-ruby/cliver/cliver-0.3.2-r2.ebuild
new file mode 100644
index 000000000000..f85578090ff5
--- /dev/null
+++ b/dev-ruby/cliver/cliver-0.3.2-r2.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_GEMSPEC="cliver.gemspec"
+
+inherit ruby-fakegem
+
+COMMIT=3d72e99af19c273a3f88adcd4b96c4b65b1b6d4b
+
+DESCRIPTION="An easy way to detect and use command-line dependencies"
+HOMEPAGE="https://yaauie.github.io/cliver/"
+SRC_URI="https://github.com/yaauie/cliver/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+RUBY_S="cliver-${COMMIT}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~sparc"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/rspec-its )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/cliver/cliver-0.3.2.ebuild b/dev-ruby/cliver/cliver-0.3.2.ebuild
deleted file mode 100644
index 8cc224e0b237..000000000000
--- a/dev-ruby/cliver/cliver-0.3.2.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="An easy way to detect and use command-line dependencies"
-HOMEPAGE="http://yaauie.github.io/cliver/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/cliver/metadata.xml b/dev-ruby/cliver/metadata.xml
index 28ab0c15f206..bbecac6f4213 100644
--- a/dev-ruby/cliver/metadata.xml
+++ b/dev-ruby/cliver/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">yaauie/cliver</remote-id>
+ <remote-id type="rubygems">cliver</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/cmdparse/Manifest b/dev-ruby/cmdparse/Manifest
index d3112086c0d4..02efe0cddc91 100644
--- a/dev-ruby/cmdparse/Manifest
+++ b/dev-ruby/cmdparse/Manifest
@@ -1,2 +1 @@
-DIST cmdparse-2.0.6.gem 53760 BLAKE2B eda157aa8f8d4fce31df8944524dbf7f8c9d8f8764bf5fc85de044d50e20be0ba408e45815916389e77b6a42787d4ae00577ceeee66ff0fb46e4526f8209ba56 SHA512 c4120b049e7d42d65be80649cdd097d17f8a732f090382759351617225f6235438f4338466e5e8c7b5c35675ca43d4930dc39b357263062ba7ae9c61c85f472e
-DIST cmdparse-3.0.4.gem 54272 BLAKE2B cd5c91f810937192a3c6d8895fa4d4e323b51b76e2641e2a93a9dcf7df04a93f86dfe88b1df0e9bd6ca2e1088d02304789eef8fecf8d7e7764266306cef8126b SHA512 f1a36d42de42c7bf06f160d31f44323ab588736e7e5b0ffafe05253ec1d9fe0990e8e1a004b47f82b1316154ac1459a6145a52da5a1e2e32e1c548bb5f37401a
+DIST cmdparse-3.0.7.gem 54784 BLAKE2B 2ce8b26b362ed78cd6e5ecc1d678c32a6065dc38c402e82f6715ee2bd834c49bcca2ec93d2dd11d2ae2ac809068efa4fe640f98f367c4278da6d0cccae094222 SHA512 5ee929c9aaf6254686a916fa11e4f4809693434f2cff7ad5e14aef2b1a95bfcd2e818afc0e4337616836971a85c980b76e89bbe61f6be250c372ec0587dc58b0
diff --git a/dev-ruby/cmdparse/cmdparse-2.0.6-r1.ebuild b/dev-ruby/cmdparse/cmdparse-2.0.6-r1.ebuild
deleted file mode 100644
index 91e882b9c1bd..000000000000
--- a/dev-ruby/cmdparse/cmdparse-2.0.6-r1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_DOCDIR="doc/output/rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-IUSE=""
-
-DESCRIPTION="Advanced command line parser supporting commands"
-HOMEPAGE="https://cmdparse.gettalong.org/"
-
-KEYWORDS="amd64 ppc64 x86"
-LICENSE="LGPL-3"
-SLOT="0"
-
-each_ruby_test() {
- ${RUBY} -Ilib net.rb stat || die "test failed"
-}
diff --git a/dev-ruby/cmdparse/cmdparse-3.0.4.ebuild b/dev-ruby/cmdparse/cmdparse-3.0.4.ebuild
deleted file mode 100644
index 45114decfdc8..000000000000
--- a/dev-ruby/cmdparse/cmdparse-3.0.4.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-IUSE=""
-
-DESCRIPTION="Advanced command line parser supporting commands"
-HOMEPAGE="https://cmdparse.gettalong.org/"
-
-KEYWORDS="~amd64 ~ppc64 ~x86"
-LICENSE="MIT"
-SLOT="3"
diff --git a/dev-ruby/cmdparse/cmdparse-3.0.7-r1.ebuild b/dev-ruby/cmdparse/cmdparse-3.0.7-r1.ebuild
new file mode 100644
index 000000000000..9e40585d8ad3
--- /dev/null
+++ b/dev-ruby/cmdparse/cmdparse-3.0.7-r1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Advanced command line parser supporting commands"
+HOMEPAGE="https://cmdparse.gettalong.org/"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~amd64 ~ppc64 ~x86"
diff --git a/dev-ruby/cmdparse/metadata.xml b/dev-ruby/cmdparse/metadata.xml
index 28ab0c15f206..dac4fdd0f3ca 100644
--- a/dev-ruby/cmdparse/metadata.xml
+++ b/dev-ruby/cmdparse/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">gettalong/cmdparse</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/cocaine/Manifest b/dev-ruby/cocaine/Manifest
deleted file mode 100644
index c248821b14e7..000000000000
--- a/dev-ruby/cocaine/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST cocaine-0.6.0.gem 12800 BLAKE2B fc401c0ca3dd4cf9dfe3c3877094e0ed0ca8b1ed8101cbb99b7637c268331bd380fde71a5f6a5f77104040d4e6ceb6dbe03874218a88c98edbdf525a05448db5 SHA512 da77d9f356c420517c45bef2c91722b260b071dce42c78f84c00527a0065f82f3e9a8d4a45a2ea4be99adf9f39326957afce6df8463586201bcf5a675b25707a
diff --git a/dev-ruby/cocaine/cocaine-0.6.0.ebuild b/dev-ruby/cocaine/cocaine-0.6.0.ebuild
deleted file mode 100644
index c5cbc04f8138..000000000000
--- a/dev-ruby/cocaine/cocaine-0.6.0.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A small library for doing command lines"
-HOMEPAGE="http://www.thoughtbot.com/projects/cocaine"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "=dev-ruby/terrapin-0.6.0"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/activesupport-3 <dev-ruby/activesupport-5
- dev-ruby/bourne
- <dev-ruby/mocha-1.0.0
- dev-ruby/posix-spawn
- )"
-
-all_ruby_prepare() {
- sed -i \
- -e '/git ls-files/d' \
- "${RUBY_FAKEGEM_GEMSPEC}" || die
-
- rm Gemfile* || die
-
- sed -i -e '/bundler/d' Rakefile || die
-
- sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb || die
-
- # BufferedLogger is deprecated in activesupport-4.0, and removed in 4.1
- # Require active_support not active_support/buffered_logger.
- sed -i -e 's/\/buffered_logger//g' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/cocaine/metadata.xml b/dev-ruby/cocaine/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/cocaine/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/coderay/Manifest b/dev-ruby/coderay/Manifest
index 0efe78a971d4..77502be2a907 100644
--- a/dev-ruby/coderay/Manifest
+++ b/dev-ruby/coderay/Manifest
@@ -1 +1 @@
-DIST coderay-1.1.2.tar.gz 220645 BLAKE2B 85405da2b148ae23573abf2c3fcf94a643024756308e83c4cecf0a5edae2fedc4ca7c7bdf8fb5936310f6699ca8f06f91cceb475e00511a54af0a96dd517c234 SHA512 cfce5e9f0a0d988e7920912e064ecbef3b54200a08ca2e07453452edd7f382a1eb9292bc566e069f5d1b784033e816f13d9ddfb39520e8e44a8d1e898aa33591
+DIST coderay-1.1.3.tar.gz 229139 BLAKE2B a900cc5fbac950f66814d9300876d6a273b296d07139297d5344d26c5710d23c37761e5743ef972f523afa20fa663f239c03d9d2ad47232b77e53fe5053736f0 SHA512 a5208965e8dbad53d179fdc1c57df59ba4e13522a1a57c371ccd3f9369408a1c7d878867df48b201a1d590b46ef0f9bada3f3e7810866f17d244b5b370aba3fb
diff --git a/dev-ruby/coderay/coderay-1.1.2.ebuild b/dev-ruby/coderay/coderay-1.1.2.ebuild
deleted file mode 100644
index 4386f504816c..000000000000
--- a/dev-ruby/coderay/coderay-1.1.2.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# The test target also contains test:exe but that requires
-# shoulda-context which we do not have packaged yet.
-RUBY_FAKEGEM_TASK_TEST="test:functional test:units"
-
-RUBY_FAKEGEM_TASK_DOC="doc"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRADOC="Changes-pre-1.0.textile Changes.textile FOLDERS README_INDEX.rdoc README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Ruby library for syntax highlighting"
-HOMEPAGE="http://coderay.rubychan.de/"
-SRC_URI="https://github.com/rubychan/coderay/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-# Redcloth is an optional but automagically tested dependency. This
-# requires redcloth-4.2.2. We don't depend on this version to make
-# bootstrapping rspec with new versions easier, since redcloth depends
-# on rake-compiler.
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
- sed -i -e '/git ls-files/ s:^:#:' coderay.gemspec || die
-
- # Fix failing tests for lazy evaluation in ruby26
- sed -i -e 's/\.filter$/.filter.to_a/' test/unit/filter.rb || die
-}
diff --git a/dev-ruby/coderay/coderay-1.1.3-r2.ebuild b/dev-ruby/coderay/coderay-1.1.3-r2.ebuild
new file mode 100644
index 000000000000..5f2b9bdde80f
--- /dev/null
+++ b/dev-ruby/coderay/coderay-1.1.3-r2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# The test target also contains test:exe but that requires
+# shoulda-context which we do not have packaged yet.
+RUBY_FAKEGEM_TASK_TEST="spec test:functional test:units"
+
+RUBY_FAKEGEM_TASK_DOC="doc"
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_EXTRADOC="Changes-pre-1.0.textile Changes.textile FOLDERS README_INDEX.rdoc README.markdown"
+
+RUBY_FAKEGEM_GEMSPEC="coderay.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby library for syntax highlighting"
+HOMEPAGE="http://coderay.rubychan.de/"
+SRC_URI="https://github.com/rubychan/coderay/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+PATCHES=("${FILESDIR}/${P}-ruby30.patch")
+
+# Redcloth is an optional but automagically tested dependency. This
+# requires redcloth-4.2.2. We don't depend on this version to make
+# bootstrapping rspec with new versions easier, since redcloth depends
+# on rake-compiler.
+
+ruby_add_bdepend "test? ( dev-ruby/rspec:3 )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile || die
+ sed -i -e '/git ls-files/ s:^:#:' -e 's/.rc.*"/"/' coderay.gemspec || die
+ sed -i -e '/simplecov/ s:^:#:' spec/spec_helper.rb test/*/*.rb || die
+
+ # Fix failing tests for lazy evaluation in ruby26
+ sed -i -e 's/\.filter$/.filter.to_a/' test/unit/filter.rb || die
+}
diff --git a/dev-ruby/coderay/files/coderay-1.1.3-ruby30.patch b/dev-ruby/coderay/files/coderay-1.1.3-ruby30.patch
new file mode 100644
index 000000000000..99ce3053a1d7
--- /dev/null
+++ b/dev-ruby/coderay/files/coderay-1.1.3-ruby30.patch
@@ -0,0 +1,51 @@
+From c1c15034749684fcad91ad2bcb2fcd2056faf18d Mon Sep 17 00:00:00 2001
+From: Mamoru TASAKA <mtasaka@fedoraproject.org>
+Date: Sun, 21 Feb 2021 23:04:03 +0900
+Subject: [PATCH] Fix test suite for ruby 3.0 change for methods on subclass of
+ Array
+
+With ruby 3.0, especially with https://github.com/ruby/ruby/pull/3690 ,
+for subclass of Array, `flatten` method now returns the instance of Array,
+not of the subclass.
+
+To keep the object instance of the subclass, use `flatten!` instead.
+---
+ test/unit/debug.rb | 3 ++-
+ test/unit/statistic.rb | 5 +++--
+ 2 files changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/test/unit/debug.rb b/test/unit/debug.rb
+index 88baf563..b694f21e 100644
+--- a/test/unit/debug.rb
++++ b/test/unit/debug.rb
+@@ -24,7 +24,8 @@ def test_creation
+ [" \n", :space],
+ ["[]", :method],
+ [:end_line, :head],
+- ].flatten
++ ]
++ TEST_INPUT.flatten!
+ TEST_OUTPUT = <<-'DEBUG'.chomp
+ integer(10)operator((\\\))string<content(test)>head[
+
+diff --git a/test/unit/statistic.rb b/test/unit/statistic.rb
+index 1326dca6..776774d4 100644
+--- a/test/unit/statistic.rb
++++ b/test/unit/statistic.rb
+@@ -24,7 +24,8 @@ def test_creation
+ [" \n", :space],
+ ["[]", :method],
+ [:end_line, :test],
+- ].flatten
++ ]
++ TEST_INPUT.flatten!
+ TEST_OUTPUT = <<-'DEBUG'
+
+ Code Statistics
+@@ -56,4 +57,4 @@ def test_filtering_text_tokens
+ assert_equal TEST_OUTPUT, TEST_INPUT.statistic
+ end
+
+-end
+\ No newline at end of file
++end
diff --git a/dev-ruby/coderay/metadata.xml b/dev-ruby/coderay/metadata.xml
index 1a346e5116eb..55c40340d7df 100644
--- a/dev-ruby/coderay/metadata.xml
+++ b/dev-ruby/coderay/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/coercible/Manifest b/dev-ruby/coercible/Manifest
index a4a39c67364f..ed59a2a02245 100644
--- a/dev-ruby/coercible/Manifest
+++ b/dev-ruby/coercible/Manifest
@@ -1 +1 @@
-DIST coercible-1.0.0.gem 24064 BLAKE2B 5f9708211600621869e78742dc5421672f27162c1e09e703bb2954d67b2ad281ddf59f9ecb28722f4423cbd0c7fc8bc14bda0f1f064135cbefc24ddb94ab1648 SHA512 5de43166625cca102cd048ae5cd4113ef834b273fb798490a99eeaab423174f1fa40410546de4e0224234efb996a4aa1f2c37b093298f50356f925b8a6163767
+DIST coercible-1.0.1.tar.gz 18949 BLAKE2B 92c4b2a38ac662d270aacd2d46216c188fef12b99f0a54c2642d96f72e5d45fac895c8e0c1d4300784e754f384eb86a9731c32a9780af9877668251fa39eca57 SHA512 27c563a70a028af0fdcf72200b47e29b4eb312539d16634b9533140903504a42284ff31fe73286b0944129b6481614184c2966f47b82d08ac419bdadb862f5ea
diff --git a/dev-ruby/coercible/coercible-1.0.0.ebuild b/dev-ruby/coercible/coercible-1.0.0.ebuild
deleted file mode 100644
index de805fc605d6..000000000000
--- a/dev-ruby/coercible/coercible-1.0.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md Changelog.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Powerful, flexible and configurable coercion library"
-HOMEPAGE="https://github.com/solnic/coercible https://rubygems.org/gems/coercible"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/descendants_tracker-0.0.1
- <dev-ruby/descendants_tracker-0.1"
diff --git a/dev-ruby/coercible/coercible-1.0.1.ebuild b/dev-ruby/coercible/coercible-1.0.1.ebuild
new file mode 100644
index 000000000000..17bd6be1da57
--- /dev/null
+++ b/dev-ruby/coercible/coercible-1.0.1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md Changelog.md"
+RUBY_FAKEGEM_GEMSPEC="coercible.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+COMMIT=c076869838531abb5783280da108aa3cbddbd61a
+
+inherit ruby-fakegem
+
+DESCRIPTION="Powerful, flexible and configurable coercion library"
+HOMEPAGE="https://github.com/solnic/coercible https://rubygems.org/gems/coercible"
+SRC_URI="https://github.com/solnic/coercible/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+RUBY_S="${PN}-${COMMIT}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/descendants_tracker-0.0.1
+ <dev-ruby/descendants_tracker-0.1"
+
+ruby_add_bdepend "test? ( dev-ruby/rspec-its )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files/find * -print/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/coercible/metadata.xml b/dev-ruby/coercible/metadata.xml
index 05c03a0414b7..f38dfa7276ff 100644
--- a/dev-ruby/coercible/metadata.xml
+++ b/dev-ruby/coercible/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/coffee-rails/Manifest b/dev-ruby/coffee-rails/Manifest
index 7150e04703e6..6099b9d385e9 100644
--- a/dev-ruby/coffee-rails/Manifest
+++ b/dev-ruby/coffee-rails/Manifest
@@ -1,2 +1 @@
-DIST coffee-rails-4.2.2.tar.gz 6013 BLAKE2B fa8b241f68fd191175f35d46cdd3c1b668d9c3cd8fce1899d33cf16a1b88dd4b3bfbe48a545487478c6189bf4c5b68a057751a669065a2972fa67aa429ba9e33 SHA512 195f4132f21b271a3142af1aec911f86cd8234a6f382a337ba349407626fe501f529ff0f65ddfdd91c413dc87a44433e295f81f4399163910104369d11320041
DIST coffee-rails-5.0.0.tar.gz 5892 BLAKE2B 4d3b945ab4b53936bd39599ac7ba8af4d90e6fee073188847dbb157e098f275df5a3a6e91dcf804068b707804047442efc86524935a56cf403b55426466c502c SHA512 f1aac41f8f1f7181e82fbcf8c3007f40116639e4c140f1837be835fdcfa1babc7fc370212a9954ac8398d9a8d20fbd468550cd8b11c31788428769ea7aedf769
diff --git a/dev-ruby/coffee-rails/coffee-rails-4.2.2-r1.ebuild b/dev-ruby/coffee-rails/coffee-rails-4.2.2-r1.ebuild
deleted file mode 100644
index 1f4a0cb3cc3e..000000000000
--- a/dev-ruby/coffee-rails/coffee-rails-4.2.2-r1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Coffee Script adapter for the Rails asset pipeline"
-HOMEPAGE="https://github.com/rails/coffee-rails"
-SRC_URI="https://github.com/rails/coffee-rails/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
-
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/coffee-script-2.2.0
- >dev-ruby/railties-4:*"
-
-all_ruby_prepare() {
- # Avoid dependency on git and bundler.
- sed -i -e 's/git ls-files/echo/' \
- -e '/bundler/I s:^:#:' Rakefile || die
-
- # Make sure a consistent rails version is loaded.
- sed -i -e '4igem "railties"' -e '/bundler/ s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/coffee-rails/coffee-rails-5.0.0-r2.ebuild b/dev-ruby/coffee-rails/coffee-rails-5.0.0-r2.ebuild
new file mode 100644
index 000000000000..9b0d6cd45e97
--- /dev/null
+++ b/dev-ruby/coffee-rails/coffee-rails-5.0.0-r2.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Coffee Script adapter for the Rails asset pipeline"
+HOMEPAGE="https://github.com/rails/coffee-rails"
+SRC_URI="https://github.com/rails/coffee-rails/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
+
+ruby_add_rdepend "
+ >=dev-ruby/coffee-script-2.2.0
+ <dev-ruby/railties-7:*
+"
+
+# sprockets:3 for https://github.com/rails/coffee-rails/issues/122
+ruby_add_bdepend "test? ( dev-ruby/sprockets-rails dev-ruby/sprockets:3 )"
+
+all_ruby_prepare() {
+ # Avoid dependency on git and bundler.
+ sed -i -e 's/git ls-files/echo/' \
+ -e '/bundler/I s:^:#:' Rakefile || die
+
+ # Make sure a consistent rails version is loaded.
+ sed -i -e '4igem "railties", "<7" ; gem "sprockets", "<4"' -e '/bundler/ s:^:#:' test/test_helper.rb || die
+}
diff --git a/dev-ruby/coffee-rails/coffee-rails-5.0.0.ebuild b/dev-ruby/coffee-rails/coffee-rails-5.0.0.ebuild
deleted file mode 100644
index 2dc0ad63009c..000000000000
--- a/dev-ruby/coffee-rails/coffee-rails-5.0.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Coffee Script adapter for the Rails asset pipeline"
-HOMEPAGE="https://github.com/rails/coffee-rails"
-SRC_URI="https://github.com/rails/coffee-rails/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
-
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/coffee-script-2.2.0
- >dev-ruby/railties-5.2:*"
-
-ruby_add_bdepend "test? ( dev-ruby/sprockets-rails )"
-
-all_ruby_prepare() {
- # Avoid dependency on git and bundler.
- sed -i -e 's/git ls-files/echo/' \
- -e '/bundler/I s:^:#:' Rakefile || die
-
- # Make sure a consistent rails version is loaded.
- sed -i -e '4igem "railties"' -e '/bundler/ s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/coffee-rails/metadata.xml b/dev-ruby/coffee-rails/metadata.xml
index 588e0735d84f..905047fd2d17 100644
--- a/dev-ruby/coffee-rails/metadata.xml
+++ b/dev-ruby/coffee-rails/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/coffee-script-source/coffee-script-source-1.12.2-r1.ebuild b/dev-ruby/coffee-script-source/coffee-script-source-1.12.2-r1.ebuild
new file mode 100644
index 000000000000..81e3da1782e3
--- /dev/null
+++ b/dev-ruby/coffee-script-source/coffee-script-source-1.12.2-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_TASK_DOC=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby CoffeeScript is a bridge to the official CoffeeScript compiler"
+HOMEPAGE="https://coffeescript.org/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x64-macos"
+
+IUSE=""
diff --git a/dev-ruby/coffee-script-source/coffee-script-source-1.12.2-r2.ebuild b/dev-ruby/coffee-script-source/coffee-script-source-1.12.2-r2.ebuild
new file mode 100644
index 000000000000..d983fd3d19a8
--- /dev/null
+++ b/dev-ruby/coffee-script-source/coffee-script-source-1.12.2-r2.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_TASK_DOC=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby CoffeeScript is a bridge to the official CoffeeScript compiler"
+HOMEPAGE="https://coffeescript.org/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x64-macos"
+
+IUSE=""
diff --git a/dev-ruby/coffee-script-source/coffee-script-source-1.12.2.ebuild b/dev-ruby/coffee-script-source/coffee-script-source-1.12.2.ebuild
deleted file mode 100644
index 030c6453c5ee..000000000000
--- a/dev-ruby/coffee-script-source/coffee-script-source-1.12.2.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby CoffeeScript is a bridge to the official CoffeeScript compiler"
-HOMEPAGE="http://coffeescript.org/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm ~arm64 ppc ppc64 x86 ~amd64-linux ~x64-macos ~x86-solaris"
-
-IUSE=""
diff --git a/dev-ruby/coffee-script-source/metadata.xml b/dev-ruby/coffee-script-source/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/coffee-script-source/metadata.xml
+++ b/dev-ruby/coffee-script-source/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/coffee-script/coffee-script-2.4.1.ebuild b/dev-ruby/coffee-script/coffee-script-2.4.1.ebuild
index ebb172961af7..66801c7f631f 100644
--- a/dev-ruby/coffee-script/coffee-script-2.4.1.ebuild
+++ b/dev-ruby/coffee-script/coffee-script-2.4.1.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
RUBY_FAKEGEM_TASK_TEST=""
RUBY_FAKEGEM_TASK_DOC=""
@@ -15,7 +15,7 @@ HOMEPAGE="https://github.com/rails/ruby-coffee-script https://github.com/rails/c
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 arm ~arm64 ppc ppc64 x86 ~amd64-linux ~x64-macos"
+KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x64-macos"
IUSE=""
diff --git a/dev-ruby/coffee-script/metadata.xml b/dev-ruby/coffee-script/metadata.xml
index 588e0735d84f..905047fd2d17 100644
--- a/dev-ruby/coffee-script/metadata.xml
+++ b/dev-ruby/coffee-script/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/color/color-1.8-r1.ebuild b/dev-ruby/color/color-1.8-r1.ebuild
new file mode 100644
index 000000000000..8c62ed1c5c7d
--- /dev/null
+++ b/dev-ruby/color/color-1.8-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="color.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Colour management with Ruby"
+HOMEPAGE="https://github.com/halostatue/color"
+SRC_URI="https://github.com/halostatue/color/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~ppc ~ppc64 x86"
+IUSE=""
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/minitest-5.0
+ )"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e "Dir['test/test_*.rb'].each{|f| require f}" || die
+}
diff --git a/dev-ruby/color/color-1.8.ebuild b/dev-ruby/color/color-1.8.ebuild
deleted file mode 100644
index 9fcc0fcee755..000000000000
--- a/dev-ruby/color/color-1.8.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Colour management with Ruby"
-HOMEPAGE="https://github.com/halostatue/color"
-SRC_URI="https://github.com/halostatue/color/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~ppc ~ppc64 x86"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/minitest-5.0
- )"
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e "Dir['test/test_*.rb'].each{|f| require f}" || die
-}
diff --git a/dev-ruby/color/metadata.xml b/dev-ruby/color/metadata.xml
index 5fdac5e571f7..3c4f8e0dfce4 100644
--- a/dev-ruby/color/metadata.xml
+++ b/dev-ruby/color/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/colorator/colorator-1.1.0-r1.ebuild b/dev-ruby/colorator/colorator-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..52f2111c32a1
--- /dev/null
+++ b/dev-ruby/colorator/colorator-1.1.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.markdown"
+RUBY_FAKEGEM_GEMSPEC="colorator.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Colorize your text in the terminal"
+HOMEPAGE="https://github.com/octopress/colorator"
+SRC_URI="https://github.com/octopress/colorator/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e "/bundler/d" Rakefile || die
+ sed -i -e "/luna/d" spec/spec/helper.rb || die
+}
diff --git a/dev-ruby/colorator/colorator-1.1.0.ebuild b/dev-ruby/colorator/colorator-1.1.0.ebuild
deleted file mode 100644
index 442b0c6d3f61..000000000000
--- a/dev-ruby/colorator/colorator-1.1.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Colorize your text in the terminal"
-HOMEPAGE="https://github.com/octopress/colorator"
-SRC_URI="https://github.com/octopress/colorator/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" Rakefile || die
- sed -i -e "/luna/d" spec/spec/helper.rb || die
-}
diff --git a/dev-ruby/colorator/metadata.xml b/dev-ruby/colorator/metadata.xml
index c15e22f96339..a86d2386e760 100644
--- a/dev-ruby/colorator/metadata.xml
+++ b/dev-ruby/colorator/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/colored/colored-1.2-r1.ebuild b/dev-ruby/colored/colored-1.2-r1.ebuild
new file mode 100644
index 000000000000..58455558edd3
--- /dev/null
+++ b/dev-ruby/colored/colored-1.2-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Console coloring"
+HOMEPAGE="https://github.com/defunkt/colored"
+LICENSE="MIT"
+
+KEYWORDS="amd64 ~riscv x86"
+SLOT="0"
+IUSE=""
+
+each_ruby_prepare() {
+ sed -i -e '/[Mm][Gg]/d' Rakefile || die
+}
diff --git a/dev-ruby/colored/colored-1.2.ebuild b/dev-ruby/colored/colored-1.2.ebuild
deleted file mode 100644
index 8f684114e29c..000000000000
--- a/dev-ruby/colored/colored-1.2.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Console coloring"
-HOMEPAGE="https://github.com/defunkt/colored"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-IUSE=""
-
-each_ruby_prepare() {
- sed -i -e '/[Mm][Gg]/d' Rakefile || die
-}
diff --git a/dev-ruby/colored/metadata.xml b/dev-ruby/colored/metadata.xml
index 027e5c1e2e4f..f2ad6c7373b3 100644
--- a/dev-ruby/colored/metadata.xml
+++ b/dev-ruby/colored/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/colored2/Manifest b/dev-ruby/colored2/Manifest
new file mode 100644
index 000000000000..c3459ccab742
--- /dev/null
+++ b/dev-ruby/colored2/Manifest
@@ -0,0 +1 @@
+DIST colored2-3.1.2.gem 10240 BLAKE2B 6dbf0dd1bce8712fecb4f34b0f4480da21f97db6d5d002e1758a7131120bbd68c02588b2f05eb50b09aaf2f398761e6d281b49b2b7a021724b7f4a416ae9d2d1 SHA512 20a3d610e7ff4097129eebf8d5f6cd5618cd5763dc14ad97c2570047c4f75ff371d3bea1b528f8c1b806b102e13834fd0092f9ae50590f11e70157e4584b915b
diff --git a/dev-ruby/colored2/colored2-3.1.2-r1.ebuild b/dev-ruby/colored2/colored2-3.1.2-r1.ebuild
new file mode 100644
index 000000000000..ee045d1e61de
--- /dev/null
+++ b/dev-ruby/colored2/colored2-3.1.2-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Console coloring"
+HOMEPAGE="https://github.com/kigster/colored2"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+IUSE=""
+
+each_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+
+ sed -i -e 's/Fixnum/Integer/' lib/colored2/numbers.rb || die
+}
diff --git a/dev-ruby/colored2/metadata.xml b/dev-ruby/colored2/metadata.xml
new file mode 100644
index 000000000000..a9bd1bd5bc2a
--- /dev/null
+++ b/dev-ruby/colored2/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">kigster/colored2</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/colorize/Manifest b/dev-ruby/colorize/Manifest
index eec357092a64..b17e558e4a3c 100644
--- a/dev-ruby/colorize/Manifest
+++ b/dev-ruby/colorize/Manifest
@@ -1 +1 @@
-DIST colorize-0.8.1.gem 15872 BLAKE2B fe8e3a3e010d55954fb9e3e26626202e1d3eba5478e27009fc86bd4029c98fe5a2ed2f2b0d5d1615e892435554272a70c1cbfcdadadea8bcaab894cb290e7992 SHA512 0819dfaa94150c85cbe633c77006f2f4bdd6c4f9bf9dfa954b8c4038b8a680c99a2b4b160da05bf426402d287a0db4c4eb1cc66a949405188b632f39da381c72
+DIST colorize-1.1.0.gem 17920 BLAKE2B 31d66bccfcd9f75175feb5f8fb1ace3e39f95255b041b9eef3171465c66b36fab548ca17625e52a9a8c93737b8c1ca54adb334ca0d5957ac157bd34752242d97 SHA512 d1257c6be909e92ef59e39536e802bbcbbc5f49b0ac0f1f372f36f9ac1a0ed9016ab374f6f6b389b5d158dcebfabc9e047d9b0d797b408b82224355e5c9a2b2a
diff --git a/dev-ruby/colorize/colorize-0.8.1.ebuild b/dev-ruby/colorize/colorize-0.8.1.ebuild
deleted file mode 100644
index a4c0a8d2040f..000000000000
--- a/dev-ruby/colorize/colorize-0.8.1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Adds methods to set color, background color and text effect on console easier"
-HOMEPAGE="https://github.com/fazibear/colorize"
-LICENSE="GPL-2+"
-
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
-
-all_ruby_prepare() {
- sed -i -e "/[Cc]ode[Cc]limate/d" test/test_colorize.rb || die
-}
-
-each_ruby_test() {
- cd test || die
- ${RUBY} test_colorize.rb || die
-}
diff --git a/dev-ruby/colorize/colorize-1.1.0.ebuild b/dev-ruby/colorize/colorize-1.1.0.ebuild
new file mode 100644
index 000000000000..c9a68eeee6fa
--- /dev/null
+++ b/dev-ruby/colorize/colorize-1.1.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_TASK_TEST="default"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Adds methods to set color, background color and text effect on console easier"
+HOMEPAGE="https://github.com/fazibear/colorize"
+LICENSE="GPL-2+"
+
+KEYWORDS="~amd64"
+SLOT="0"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Cc]ode[Cc]limate/d" test/test_colorize.rb || die
+
+ # Skip unpackaged test as this release is not tagged upstream.
+ sed -i -e '/test_\(colorize\|colorized_string\)_with_readline/,/execute/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/colorize/metadata.xml b/dev-ruby/colorize/metadata.xml
index ed5772910d30..e154f2dec008 100644
--- a/dev-ruby/colorize/metadata.xml
+++ b/dev-ruby/colorize/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/columnize/columnize-0.9.0-r2.ebuild b/dev-ruby/columnize/columnize-0.9.0-r2.ebuild
new file mode 100644
index 000000000000..d99080be1757
--- /dev/null
+++ b/dev-ruby/columnize/columnize-0.9.0-r2.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="AUTHORS ChangeLog NEWS README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Sorts an array in column order"
+HOMEPAGE="https://github.com/rocky/columnize"
+
+LICENSE="|| ( GPL-2 Ruby )"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
diff --git a/dev-ruby/columnize/columnize-0.9.0.ebuild b/dev-ruby/columnize/columnize-0.9.0.ebuild
deleted file mode 100644
index 674fa5804146..000000000000
--- a/dev-ruby/columnize/columnize-0.9.0.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="AUTHORS ChangeLog NEWS README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Sorts an array in column order"
-HOMEPAGE="https://github.com/rocky/columnize"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
-IUSE=""
diff --git a/dev-ruby/columnize/metadata.xml b/dev-ruby/columnize/metadata.xml
index 1f858eb21138..4492f1c696e5 100644
--- a/dev-ruby/columnize/metadata.xml
+++ b/dev-ruby/columnize/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/combustion/Manifest b/dev-ruby/combustion/Manifest
index b90d6b52c2ee..beff78fd18fd 100644
--- a/dev-ruby/combustion/Manifest
+++ b/dev-ruby/combustion/Manifest
@@ -1,2 +1,2 @@
-DIST combustion-1.1.0.gem 18432 BLAKE2B 32e3c124d21c9fe96e00bab6e600bb0fd40dc998fa72a5256f5f59fce96f6ea7070238b5d0e5668b828abdf6dee3a03b78d750d8695a6e48d1164d4207753320 SHA512 d948a0235fbf5dff32c7e448426ec7bf361bad63aeee771ead0030143914bbb33afe6a7e6092e227ff4684bf312ed9194f0f27d71c979b2abdfb13f0e5069158
-DIST combustion-1.1.1.gem 18432 BLAKE2B e9e5a8dd5e4bfd865be3ff168c7403b7fa7ff6af9b6bd380bbfb02d8ffbaf9e4f820ecfb71cba58256a6fda64ee702f2159c970c9031722ccc2a4d2f365eafaa SHA512 559b34dfbc501c4be014fbfb6e3f8f61ca25b6ed2551da6bfc258be41161c5249e98e64faacbd9bd754d40c3a3f67d33eeadfe75624519cc4293f7528a7bea16
+DIST combustion-1.3.7.tar.gz 16922 BLAKE2B 7edb6d68751bdae2c14f564d99bd5e4815aeb0ac5cbf9f86bf265bcf1cc02f39b36c2f439d1a79930f7fee5670451dee87821150b11b765cf3a251272b6bfb46 SHA512 2aedf160b099f16b2225dacbb8198fbdca6a00196bfaf4f869d651309e36976b3a14383c9b38b4361a5174726117200e0fc9da56f2cf08ec9ea99a5f5dbecf7e
+DIST combustion-1.4.0.tar.gz 16955 BLAKE2B fa2d55b6e84316b07221c938b053869f44b23363e69b51cefadc7400f7743c5cfe4d4c36cc01b0a463c64b6c5f59736f1bfef50e3438bb3feecc3be22ac717ef SHA512 24cee50f5a05e782d228cf1987de07610a077bd85a3e46c611b6f5c4f2a7202dcb0576ccb337f8c03f7d7a5e446e05524e5686cf5fdde9e510672b722403c13c
diff --git a/dev-ruby/combustion/combustion-1.1.0.ebuild b/dev-ruby/combustion/combustion-1.1.0.ebuild
deleted file mode 100644
index ab7aab0e1dfe..000000000000
--- a/dev-ruby/combustion/combustion-1.1.0.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Elegant Rails Engine Testing"
-HOMEPAGE="https://github.com/pat/combustion"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/activesupport-3.0.0:*
- >=dev-ruby/railties-3.0.0:*
- >=dev-ruby/thor-0.14.6
-"
diff --git a/dev-ruby/combustion/combustion-1.1.1.ebuild b/dev-ruby/combustion/combustion-1.1.1.ebuild
deleted file mode 100644
index e468a5cef199..000000000000
--- a/dev-ruby/combustion/combustion-1.1.1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Elegant Rails Engine Testing"
-HOMEPAGE="https://github.com/pat/combustion"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/activesupport-3.0.0:*
- >=dev-ruby/railties-3.0.0:*
- >=dev-ruby/thor-0.14.6
-"
diff --git a/dev-ruby/combustion/combustion-1.3.7-r2.ebuild b/dev-ruby/combustion/combustion-1.3.7-r2.ebuild
new file mode 100644
index 000000000000..a7313fbd40ee
--- /dev/null
+++ b/dev-ruby/combustion/combustion-1.3.7-r2.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+inherit ruby-fakegem
+
+DESCRIPTION="Elegant Rails Engine Testing"
+HOMEPAGE="https://github.com/pat/combustion"
+SRC_URI="https://github.com/pat/combustion/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm"
+
+ruby_add_rdepend "
+ >=dev-ruby/activesupport-3.0.0:*
+ >=dev-ruby/railties-3.0.0:*
+ >=dev-ruby/thor-0.14.6:*
+"
+# Needed for e.g. cannot load such file -- action_mailer/railtie
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/activemodel-3.0.0:*
+ >=dev-ruby/activerecord-3.0.0:*
+ dev-ruby/bundler
+ >=dev-ruby/rails-3.0.0:*
+ dev-ruby/rspec:3
+ >=dev-ruby/sqlite3-1.4
+ )
+"
+
+each_ruby_prepare() {
+ sed -i \
+ -e '/sqlite3/s:1.3.13:1.4:' \
+ -e '/rubocop/d' \
+ Gemfile || die
+
+ # appraisal, rubocop: useless for us test deps
+ # mysql2, pg,: optional runtime deps
+ sed -i \
+ -e '/appraisal/d' \
+ -e '/mysql2/d' \
+ -e '/pg/d' \
+ -e '/rubocop/d' \
+ ${PN}.gemspec || die
+
+ sed -i -e '/rubocop/d' Rakefile || die
+}
+
+each_ruby_test() {
+ local -x DB_ADAPTER=sqlite3
+ ${RUBY} -S bundle exec rake spec || die
+}
diff --git a/dev-ruby/combustion/combustion-1.4.0.ebuild b/dev-ruby/combustion/combustion-1.4.0.ebuild
new file mode 100644
index 000000000000..c294438d24f5
--- /dev/null
+++ b/dev-ruby/combustion/combustion-1.4.0.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+inherit ruby-fakegem
+
+DESCRIPTION="Elegant Rails Engine Testing"
+HOMEPAGE="https://github.com/pat/combustion"
+SRC_URI="https://github.com/pat/combustion/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm"
+
+ruby_add_rdepend "
+ >=dev-ruby/activesupport-3.0.0:*
+ >=dev-ruby/railties-3.0.0:*
+ >=dev-ruby/thor-0.14.6:*
+"
+# Needed for e.g. cannot load such file -- action_mailer/railtie
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/activemodel-3.0.0:*
+ >=dev-ruby/activerecord-3.0.0:*
+ dev-ruby/bundler
+ dev-ruby/net-smtp
+ >=dev-ruby/rails-3.0.0:*
+ dev-ruby/rspec:3
+ >=dev-ruby/sqlite3-1.4
+ )
+"
+
+each_ruby_prepare() {
+ sed -i \
+ -e '/rubocop/d' \
+ Gemfile || die
+
+ # appraisal, rubocop: useless for us test deps
+ # mysql2, pg,: optional runtime deps
+ sed -i \
+ -e '/appraisal/d' \
+ -e '/mysql2/d' \
+ -e '/pg/d' \
+ -e '/rubocop/d' \
+ ${PN}.gemspec || die
+
+ sed -i -e '/rubocop/d' Rakefile || die
+}
+
+each_ruby_test() {
+ local -x DB_ADAPTER=sqlite3
+ ${RUBY} -S bundle exec rake spec || die
+}
diff --git a/dev-ruby/combustion/metadata.xml b/dev-ruby/combustion/metadata.xml
index ad43ae57e050..fe7fcc99b5dd 100644
--- a/dev-ruby/combustion/metadata.xml
+++ b/dev-ruby/combustion/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/commander/Manifest b/dev-ruby/commander/Manifest
index 96f339a1ec04..69223c5c4058 100644
--- a/dev-ruby/commander/Manifest
+++ b/dev-ruby/commander/Manifest
@@ -1,2 +1 @@
-DIST commander-4.4.6.gem 36864 BLAKE2B 83e2390a482cc085b6af6cc78cbd28679e14ac09279495e1cf00c6aa55b04789501291e1547121b5223177631feead69aa789600ad660be52f22651490ef1278 SHA512 697fcbd7b1b8fe0d5f3c5f492b8d1dbd4fd4233ecef3f214797a8fbf9fd102f75f77fceb486d6386db51df0e6afa281518e522c161eba01d017c2c0532d9ac4d
-DIST commander-4.4.7.gem 37376 BLAKE2B 69965f1bf65cdbcf706a8a0106aba05313e9a49808d5c1ac6e938e364e46e940b6d61757046fab9ec00776b1207832f4232242814244f905267fb6ffe8ac3905 SHA512 1a5169448419cec0b04390a42e79c7299c66cf44a0d1d8cd938879970bfd4c72e5741a5f4b2899e60c707e0088b50853ec19eeda9ac66cc6f26a5790294a03fe
+DIST commander-4.6.0.gem 38400 BLAKE2B c4adf5b58fe679378012a893526cb00ee71c4cda5686d397ee93aeb11dcf1b32a4aa8c4e6b77c2ed07af75bf2492da65591cf49b2e05a658e753e78a9a12736a SHA512 01e7d4076b6ff632f6852e15bf995033034a71d6320c5b3b41751e86894f5eca35b408311e757c555334d220a9a811a0d60c0fc993414961f1050d948cb9f5c7
diff --git a/dev-ruby/commander/commander-4.4.6.ebuild b/dev-ruby/commander/commander-4.4.6.ebuild
deleted file mode 100644
index 73c8c572cacf..000000000000
--- a/dev-ruby/commander/commander-4.4.6.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="The complete solution for Ruby command-line executables"
-HOMEPAGE="https://visionmedia.github.com/commander/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/highline-1.7.2:0"
-
-all_ruby_prepare() {
- sed -i -e "/simplecov/,/end/ s:^:#:" spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/commander/commander-4.4.7.ebuild b/dev-ruby/commander/commander-4.4.7.ebuild
deleted file mode 100644
index 31f69d24995b..000000000000
--- a/dev-ruby/commander/commander-4.4.7.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="The complete solution for Ruby command-line executables"
-HOMEPAGE="https://visionmedia.github.com/commander/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/highline:2"
-
-all_ruby_prepare() {
- sed -i -e "/simplecov/,/end/ s:^:#:" spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/commander/commander-4.6.0.ebuild b/dev-ruby/commander/commander-4.6.0.ebuild
new file mode 100644
index 000000000000..4259cba2fe47
--- /dev/null
+++ b/dev-ruby/commander/commander-4.6.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The complete solution for Ruby command-line executables"
+HOMEPAGE="https://github.com/commander-rb/commander"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/highline:2"
+
+all_ruby_prepare() {
+ sed -i -e "/simplecov/,/end/ s:^:#:" spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/commander/metadata.xml b/dev-ruby/commander/metadata.xml
index 28ab0c15f206..ca849c2fa327 100644
--- a/dev-ruby/commander/metadata.xml
+++ b/dev-ruby/commander/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">commander-rb/commander</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/commonmarker/Manifest b/dev-ruby/commonmarker/Manifest
new file mode 100644
index 000000000000..2b086f25ba42
--- /dev/null
+++ b/dev-ruby/commonmarker/Manifest
@@ -0,0 +1 @@
+DIST commonmarker-0.23.10.tar.gz 172611 BLAKE2B df583a7e9f588cc726b985c90e03f7470d92d907d7507bf1a0f8c174e08a502036d2cdab6e45eb61c3c58dd810be1f682c51a787236da887a9d9f9ccf0fc13f6 SHA512 587cbf7037725bee57a61d75d83389ee209d943cc69ce32edf79fc292034a4bbede0a9f7cad7eff7a029f998572c6840a8d95d7387fb0806d79cf7351f85e5a1
diff --git a/dev-ruby/commonmarker/commonmarker-0.23.10.ebuild b/dev-ruby/commonmarker/commonmarker-0.23.10.ebuild
new file mode 100644
index 000000000000..169a2d13e2be
--- /dev/null
+++ b/dev-ruby/commonmarker/commonmarker-0.23.10.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/commonmarker/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/commonmarker"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="commonmarker.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A fast, safe, extensible parser for CommonMark, wrapping the libcmark library"
+HOMEPAGE="https://github.com/gjtorikian/commonmarker"
+SRC_URI="https://github.com/gjtorikian/commonmarker/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+# app-text/cmark is bundled in a modified way and integrated with the gem code
+
+all_ruby_prepare() {
+ sed -i -e '/focus/ s:^:#:' test/test_helper.rb || die
+
+ # Avoid tests depending on unbundled cmark specification files
+ rm -f test/test_{spec,smartpunct}.rb || die
+
+}
+
+each_ruby_prepare() {
+ # Use current ruby version
+ sed -i -e '/make_bin/,/end/ s:ruby:'${RUBY}':' test/test_helper.rb || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=1 ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each {|f| require f}' || die
+}
diff --git a/dev-ruby/commonmarker/metadata.xml b/dev-ruby/commonmarker/metadata.xml
new file mode 100644
index 000000000000..67b2b482f495
--- /dev/null
+++ b/dev-ruby/commonmarker/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">gjtorikian/commonmarker</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/compass-core/Manifest b/dev-ruby/compass-core/Manifest
deleted file mode 100644
index d1910e55d93c..000000000000
--- a/dev-ruby/compass-core/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST compass-core-1.0.3.gem 137728 BLAKE2B c27a84f32973ee6f163129ff344019beb5658585b1567f5e7ac6a47108bced6da77537328f23f3c03e7f402db5387bb39fa41f726bb7e89f2b7b8f80f65b7132 SHA512 90ee9fbd2266fc3e437162c8920710e4885446333c8d4b5ae22c652c7572b93ce3071574fa74f432b0036795865f92c888a6d648ee20bf5618cf58fb7b2b1dd1
diff --git a/dev-ruby/compass-core/compass-core-1.0.3-r1.ebuild b/dev-ruby/compass-core/compass-core-1.0.3-r1.ebuild
deleted file mode 100644
index bbb42be8816f..000000000000
--- a/dev-ruby/compass-core/compass-core-1.0.3-r1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRAINSTALL="data stylesheets templates VERSION"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Compass Stylesheet Authoring Framework"
-HOMEPAGE="http://compass-style.org/"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/multi_json-1.0
- >=dev-ruby/sass-3.3.0:* <dev-ruby/sass-3.5:*
-"
diff --git a/dev-ruby/compass-core/metadata.xml b/dev-ruby/compass-core/metadata.xml
deleted file mode 100644
index b42e8c11f08f..000000000000
--- a/dev-ruby/compass-core/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <longdescription lang="en">
- Compass is a Sass-based Stylesheet Framework that streamlines the
- creation and maintenance of CSS.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-ruby/compass-import-once/Manifest b/dev-ruby/compass-import-once/Manifest
deleted file mode 100644
index 05dc09cecc17..000000000000
--- a/dev-ruby/compass-import-once/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST compass-import-once-1.0.5.gem 9728 BLAKE2B 24a48d11427b30ca14ab27d34c3a9906c1fe9f9d363b910e4c9e3a2488890f4908ec8bdc4a3323a145cce81f8c2344b95302cd168266bf6a1b36d850a1412e59 SHA512 2ef723803341892b34a4bbe691b32ddd266a125c5e3faf8034c473566d70c7a8c0931f1a02abe64c243fe62f2a204cc8e53b951dd88c440eada4ec2dfc19856b
diff --git a/dev-ruby/compass-import-once/compass-import-once-1.0.5.ebuild b/dev-ruby/compass-import-once/compass-import-once-1.0.5.ebuild
deleted file mode 100644
index 3138a33b49b1..000000000000
--- a/dev-ruby/compass-import-once/compass-import-once-1.0.5.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-# Skip tests since they depend on sass-globbing which does not have a
-# license and where the last version is known to be broken.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="VERSION"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Speed up your Sass compilation by making @import only import each file once"
-HOMEPAGE="http://compass-style.org/"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/sass-3.2:* <dev-ruby/sass-3.5:*
-"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/compass-import-once/metadata.xml b/dev-ruby/compass-import-once/metadata.xml
deleted file mode 100644
index b42e8c11f08f..000000000000
--- a/dev-ruby/compass-import-once/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <longdescription lang="en">
- Compass is a Sass-based Stylesheet Framework that streamlines the
- creation and maintenance of CSS.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-ruby/compass/Manifest b/dev-ruby/compass/Manifest
deleted file mode 100644
index 177fd45b0aa3..000000000000
--- a/dev-ruby/compass/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST compass-1.0.3.gem 378368 BLAKE2B 1c33f576ba0c1117d8ca3deeb4d422441fd50922df3443a68b4eeabdd45d804fe505461a687053b6a0ebf0a2aed2539482843eac786226d16ad5ea5fb51a5284 SHA512 bef1ca903cb982df39330a913051c1a330aa1ecad9abbe5a7644e335c7ed2d152901a4079cc5ee43e9f7ce85a671f1d5552a3c98cf40b04134de072a120deef6
diff --git a/dev-ruby/compass/compass-1.0.3-r1.ebuild b/dev-ruby/compass/compass-1.0.3-r1.ebuild
deleted file mode 100644
index cc402da8bb91..000000000000
--- a/dev-ruby/compass/compass-1.0.3-r1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_TASK_TEST="-Ilib test features"
-
-RUBY_FAKEGEM_EXTRAINSTALL="VERSION VERSION_NAME"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Compass Stylesheet Authoring Framework"
-HOMEPAGE="http://compass-style.org/"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-# Gem does not contain all files needed to run specs and it is not clear
-# which upstream repository/branch/directory to use.
-RESTRICT="test"
-
-ruby_add_rdepend ">=dev-ruby/chunky_png-1.2
- >=dev-ruby/compass-core-1.0.2:1.0
- >=dev-ruby/compass-import-once-1.0.5:1.0
- >=dev-ruby/rb-inotify-0.9
- >=dev-ruby/sass-3.3.13:* <dev-ruby/sass-3.5:*
- !!<dev-ruby/compass-0.12.7-r1"
-
-#ruby_add_bdepend "test? ( dev-ruby/colorize )"
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/ s:^:#:' Rakefile || die
-
- # Remove rb-fsevent dependency since it is not needed on Linux and
- # not packaged.
- sed -i -e '/rb-fsevent/,/^-/ s:^:#:' ../metadata || die
-}
diff --git a/dev-ruby/compass/metadata.xml b/dev-ruby/compass/metadata.xml
deleted file mode 100644
index b42e8c11f08f..000000000000
--- a/dev-ruby/compass/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <longdescription lang="en">
- Compass is a Sass-based Stylesheet Framework that streamlines the
- creation and maintenance of CSS.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-ruby/concurrent-ruby/Manifest b/dev-ruby/concurrent-ruby/Manifest
index d5a606d94101..cd5712cc14de 100644
--- a/dev-ruby/concurrent-ruby/Manifest
+++ b/dev-ruby/concurrent-ruby/Manifest
@@ -1 +1,3 @@
-DIST concurrent-ruby-1.0.5.tar.gz 1307802 BLAKE2B 2eee2afdd33e2609608e9389847de380eb895c2193746b1190ea96ca8bb67eaccd8d141bc2071006afbd971f078e5b6452d1e62624892c0fce2c12b8ac9fa28b SHA512 fdf7324b56bb37b4a79dc89882354e452ee838a097f522fb906c20a06856303cfbbae16f2500255cbfb4bba33ee1b3b3ee8facf3d0156e976add64209e349da6
+DIST concurrent-ruby-1.1.10.tar.gz 6013684 BLAKE2B d271579a49ab52c9c41a7a0a31451775e1cba8ce19486b52a9eb3df7abbc66f7610d31284fc02747a8ee5f429983d8283b6fe92f22b911dcda5bc515da58b48f SHA512 cfb67ce806d1f2a5bae509806247bfefb05c56794741cedcaa7ab6ff708085e374d150e8f46ff8e04dcb0918fde8ab5a593c60550da9ff6dc00af116e123f064
+DIST concurrent-ruby-1.2.2.tar.gz 1161215 BLAKE2B 42f42022e469a1131d40e96a04dacb0ac49d94e96b6a8c58348d34402319ea0abff53b8b1312a274a34c332301ca17a007b685d8d9fe8c229350177abac0a285 SHA512 e2b26de147468b09403cd1727750922526ba240ad0cfe7889b722b357a3c71e709b12958cc4dad1a0d2d2c10d4dd2c67be1fe23053b98c35c7a50722fecb24b0
+DIST concurrent-ruby-1.2.3.tar.gz 1152422 BLAKE2B 72057ef4db1cc7dd0eb30122671e1c6106d1330215ded04040cbb92c10688866a643b0614bda21accbf8782470b03ea53c2b5b5e4e69a01cb73a2dac2b41d182 SHA512 6da7b3e13f7043f9fbb95b566e312584c479d7de5e34e29bfa90887ade143fca756dd40d7135dc923c41c468bc402e6fd06f33a075465ca6bde763affe50c751
diff --git a/dev-ruby/concurrent-ruby/concurrent-ruby-1.0.5.ebuild b/dev-ruby/concurrent-ruby/concurrent-ruby-1.0.5.ebuild
deleted file mode 100644
index a0ce7be278a2..000000000000
--- a/dev-ruby/concurrent-ruby/concurrent-ruby-1.0.5.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC=""
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Modern concurrency tools including agents, futures, promises, thread pools, more"
-HOMEPAGE="https://github.com/ruby-concurrency/concurrent-ruby"
-SRC_URI="https://github.com/ruby-concurrency/concurrent-ruby/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/timecop-0.7.4 )"
-
-all_ruby_prepare() {
- # Remove edge files as defined in support/file_map.rb
- rm -rf {lib,spec}/concurrent/{actor,channel,edge}* \
- lib/concurrent/{concurrent-edge,lazy_register.rb} \
- spec/concurrent/lazy_register_spec.rb || die
- sed -i -e '/concurrent-edge/ s:^:#:' spec/spec_helper.rb || die
-
- # Remove specs for the ext gem
- rm -rf spec/concurrent/atomic || die
-
- sed -i -e '/file_map/d' -e '/s.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/concurrent-ruby/concurrent-ruby-1.1.10.ebuild b/dev-ruby/concurrent-ruby/concurrent-ruby-1.1.10.ebuild
new file mode 100644
index 000000000000..9a9ff3d060bc
--- /dev/null
+++ b/dev-ruby/concurrent-ruby/concurrent-ruby-1.1.10.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="ruby26 ruby27 ruby30 ruby31"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Modern concurrency tools including agents, futures, promises, thread pools, more"
+HOMEPAGE="https://github.com/ruby-concurrency/concurrent-ruby"
+SRC_URI="https://github.com/ruby-concurrency/concurrent-ruby/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "test? ( >=dev-ruby/timecop-0.7.4 )"
+
+all_ruby_prepare() {
+ # Remove edge files as defined in support/file_map.rb
+ rm -rf spec/concurrent/{actor,cancellation,channel,edge,lazy_register,promises,throttle}* || die
+ rm -r spec/concurrent/executor/wrapping_executor_spec.rb || die
+ sed -i -e '/concurrent-edge/ s:^:#:' spec/spec_helper.rb || die
+ sed -i -e 's:lib-edge:lib/concurrent-ruby:' .rspec || die
+ sed -i -e 's:../../../::' spec/concurrent/executor/executor_quits.rb || die
+
+ # Remove specs for the ext gem
+ rm -rf spec/concurrent/atomic || die
+
+ sed -i 's/git ls-files/find * -print/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/concurrent-ruby/concurrent-ruby-1.2.2.ebuild b/dev-ruby/concurrent-ruby/concurrent-ruby-1.2.2.ebuild
new file mode 100644
index 000000000000..fded7ddf7870
--- /dev/null
+++ b/dev-ruby/concurrent-ruby/concurrent-ruby-1.2.2.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Modern concurrency tools including agents, futures, promises, thread pools, more"
+HOMEPAGE="https://github.com/ruby-concurrency/concurrent-ruby"
+SRC_URI="https://github.com/ruby-concurrency/concurrent-ruby/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "test? ( >=dev-ruby/timecop-0.9 )"
+
+all_ruby_prepare() {
+ # Remove edge files as defined in support/file_map.rb
+ rm -rf spec/concurrent/{actor,cancellation,channel,edge,lazy_register,processing,promises,throttle}* || die
+ rm -r spec/concurrent/executor/wrapping_executor_spec.rb || die
+ sed -i -e '/concurrent-edge/ s:^:#:' spec/spec_helper.rb || die
+ sed -i -e 's:lib-edge:lib/concurrent-ruby:' .rspec || die
+ sed -i -e 's:../../../::' spec/concurrent/executor/executor_quits.rb || die
+
+ # Remove specs for the ext gem
+ rm -rf spec/concurrent/atomic || die
+
+ sed -i 's/git ls-files/find * -print/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/concurrent-ruby/concurrent-ruby-1.2.3.ebuild b/dev-ruby/concurrent-ruby/concurrent-ruby-1.2.3.ebuild
new file mode 100644
index 000000000000..cc6cafba3b2e
--- /dev/null
+++ b/dev-ruby/concurrent-ruby/concurrent-ruby-1.2.3.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Modern concurrency tools including agents, futures, promises, thread pools, more"
+HOMEPAGE="https://github.com/ruby-concurrency/concurrent-ruby"
+SRC_URI="https://github.com/ruby-concurrency/concurrent-ruby/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_bdepend "test? ( >=dev-ruby/timecop-0.9 )"
+
+all_ruby_prepare() {
+ # Remove edge files as defined in support/file_map.rb
+ rm -rf spec/concurrent/{actor,cancellation,channel,edge,lazy_register,processing,promises,throttle}* || die
+ rm -r spec/concurrent/executor/wrapping_executor_spec.rb || die
+ sed -i -e '/concurrent-edge/ s:^:#:' spec/spec_helper.rb || die
+ sed -i -e 's:lib-edge:lib/concurrent-ruby:' .rspec || die
+ sed -i -e 's:../../../::' spec/concurrent/executor/executor_quits.rb || die
+
+ # Remove specs for the ext gem
+ rm -rf spec/concurrent/atomic || die
+
+ sed -i 's/git ls-files/find * -print/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/concurrent-ruby/metadata.xml b/dev-ruby/concurrent-ruby/metadata.xml
index 66163246bf21..e6d7b2b27c22 100644
--- a/dev-ruby/concurrent-ruby/metadata.xml
+++ b/dev-ruby/concurrent-ruby/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/connection_pool/Manifest b/dev-ruby/connection_pool/Manifest
index afbda0330467..b6511dbbfed6 100644
--- a/dev-ruby/connection_pool/Manifest
+++ b/dev-ruby/connection_pool/Manifest
@@ -1 +1 @@
-DIST connection_pool-2.2.2.gem 13824 BLAKE2B 2f52bb3451dec5916d5797596f7bc3dbf39845321ee83736d679c433e96f154db852469b1f6d0d3b7c7f48262f7840087d89cdd40ece22b67a29c20ff77274dd SHA512 74cb64aa3f183ee4e41f438133f60581e9f99a1d5b5daf61607cff2329bfb1fbd8810d87c35d709418a22ad925049e3e9403a602107452414a67aee1c6eecfe9
+DIST connection_pool-2.4.1.tar.gz 11425 BLAKE2B 17aae4f8ce0461554eaddb4ee3535062608d75a29219ca44b1535f087db39429ddbc591d996c020b1fa557337e75bb15b0ac218e8b9f393f94e32e70ffe76800 SHA512 4529446de89d01adee28127807fe104ada683866bc61b60ee77acb718881aced982aa1a1e6e2330077d79ed3d77af199e8612a6dc08de4c40468ac4e3623b799
diff --git a/dev-ruby/connection_pool/connection_pool-2.2.2.ebuild b/dev-ruby/connection_pool/connection_pool-2.2.2.ebuild
deleted file mode 100644
index ade8736512c2..000000000000
--- a/dev-ruby/connection_pool/connection_pool-2.2.2.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rake"
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="Changes.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Generic connection pooling for Ruby"
-HOMEPAGE="https://github.com/mperham/connection_pool"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5 )"
-
-all_ruby_prepare() {
- sed -i -e '/git ls-files/d' connection_pool.gemspec || die
- sed -i -e '/bundler/d' Rakefile || die
- sed -i -e "s/gem 'minitest'/gem 'minitest', '~> 5.0'/" test/helper.rb || die
-}
diff --git a/dev-ruby/connection_pool/connection_pool-2.4.1.ebuild b/dev-ruby/connection_pool/connection_pool-2.4.1.ebuild
new file mode 100644
index 000000000000..1afc72a959b8
--- /dev/null
+++ b/dev-ruby/connection_pool/connection_pool-2.4.1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_GEMSPEC="connection_pool.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rake"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="Changes.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Generic connection pooling for Ruby"
+HOMEPAGE="https://github.com/mperham/connection_pool"
+SRC_URI="https://github.com/mperham/connection_pool/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5 )"
+
+all_ruby_prepare() {
+ sed -i -e '/git ls-files/d' connection_pool.gemspec || die
+ sed -i -e '/\(bundler\|standard\)/ s:^:#:' Rakefile || die
+ sed -i -e "s/gem 'minitest'/gem 'minitest', '~> 5.0'/" test/helper.rb || die
+}
diff --git a/dev-ruby/connection_pool/metadata.xml b/dev-ruby/connection_pool/metadata.xml
index f7170698a4f1..2e90b6e5a410 100644
--- a/dev-ruby/connection_pool/metadata.xml
+++ b/dev-ruby/connection_pool/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/console/Manifest b/dev-ruby/console/Manifest
new file mode 100644
index 000000000000..61f0fae88236
--- /dev/null
+++ b/dev-ruby/console/Manifest
@@ -0,0 +1,4 @@
+DIST console-1.23.2.tar.gz 27339 BLAKE2B 46d411a63934673bb956d9e898c00db08d16e0aec9d036f767d7dc078240934cc26695bada687a2cc7656d736d7d2622e3727470d6c864c19a85cbab586d2c9c SHA512 6dc0cc934e4f28fc196d9861676e8d4cf8f601d5ad779146b594f5847818b76620d434c9817a9944872371031d012eafe5a3b1ccb82807449584aa9c5af5282b
+DIST console-1.23.6.tar.gz 27883 BLAKE2B e70ddeb8625fb4b8f700f7e1b60295dcf2ddbd1b7cc666975aa883fccbd1cf8e3c2f177938c536e696e95bb8fa3153ce61f70710cbf5dfda6058ce085ec18792 SHA512 0ae48383dedb176bdff5ead3db97a228cee498e5f6a6938e4d9882b3c363ea8b9286bb7089806f664df635d98039c9dca52c8d8afece505d38b12af5ee3aa41c
+DIST console-1.23.7.tar.gz 27888 BLAKE2B bfbf447497b91d33248e5a502c6f4522467de3f49c4eb8f51c48f93b17fe12a15ba4352df4f5a3d9f6567fcad1edef05527aa288ef00175acc1868291e215416 SHA512 3057e8f29c8c9d8b6dd37cbf8d8daaea8d00429a623ca92161a2294feeae10f7d83cc418e008de258f84a53ee1464f091f5e7405ac347a2785f3b36d7924966f
+DIST console-1.24.0.tar.gz 28031 BLAKE2B 14126657e454739981e110c8df2ec68116ec1552a90f7c8f25032ca5901451721b69f52e6d3688c2c678a58f9414cc0f824081b8fc3a3bdc74d603e4f8c1f0d6 SHA512 4374276673b3a76f56350cd27e29a7af8158e5b53ed4c073502a84299d3d69ed395fa238999a271bb782a2292393c0cf39e64b5e6adb52abaa7c87d4e3b7097a
diff --git a/dev-ruby/console/console-1.23.2.ebuild b/dev-ruby/console/console-1.23.2.ebuild
new file mode 100644
index 000000000000..29382fc44e24
--- /dev/null
+++ b/dev-ruby/console/console-1.23.2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Beautiful logging for Ruby"
+HOMEPAGE="https://github.com/socketry/console"
+SRC_URI="https://github.com/socketry/console/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/fiber-annotation
+ dev-ruby/fiber-local
+"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid dependency on covered.
+ rm -f config/sus.rb || die
+
+ # Avoid sandbox violation during tests
+ sed -i -e 's:/tmp/:'"${TMPDIR}"'/:' test/console/output.rb || die
+}
diff --git a/dev-ruby/console/console-1.23.6.ebuild b/dev-ruby/console/console-1.23.6.ebuild
new file mode 100644
index 000000000000..3ddf1603f2f0
--- /dev/null
+++ b/dev-ruby/console/console-1.23.6.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Beautiful logging for Ruby"
+HOMEPAGE="https://github.com/socketry/console"
+SRC_URI="https://github.com/socketry/console/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_rdepend "
+ dev-ruby/fiber-annotation
+ dev-ruby/fiber-local
+ dev-ruby/json
+"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid dependency on covered.
+ rm -f config/sus.rb || die
+
+ # Avoid sandbox violation during tests
+ sed -i -e 's:/tmp/:'"${TMPDIR}"'/:' test/console/output.rb || die
+}
diff --git a/dev-ruby/console/console-1.23.7.ebuild b/dev-ruby/console/console-1.23.7.ebuild
new file mode 100644
index 000000000000..3ddf1603f2f0
--- /dev/null
+++ b/dev-ruby/console/console-1.23.7.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Beautiful logging for Ruby"
+HOMEPAGE="https://github.com/socketry/console"
+SRC_URI="https://github.com/socketry/console/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_rdepend "
+ dev-ruby/fiber-annotation
+ dev-ruby/fiber-local
+ dev-ruby/json
+"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid dependency on covered.
+ rm -f config/sus.rb || die
+
+ # Avoid sandbox violation during tests
+ sed -i -e 's:/tmp/:'"${TMPDIR}"'/:' test/console/output.rb || die
+}
diff --git a/dev-ruby/console/console-1.24.0.ebuild b/dev-ruby/console/console-1.24.0.ebuild
new file mode 100644
index 000000000000..3ddf1603f2f0
--- /dev/null
+++ b/dev-ruby/console/console-1.24.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Beautiful logging for Ruby"
+HOMEPAGE="https://github.com/socketry/console"
+SRC_URI="https://github.com/socketry/console/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_rdepend "
+ dev-ruby/fiber-annotation
+ dev-ruby/fiber-local
+ dev-ruby/json
+"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid dependency on covered.
+ rm -f config/sus.rb || die
+
+ # Avoid sandbox violation during tests
+ sed -i -e 's:/tmp/:'"${TMPDIR}"'/:' test/console/output.rb || die
+}
diff --git a/dev-ruby/console/metadata.xml b/dev-ruby/console/metadata.xml
new file mode 100644
index 000000000000..eaf87044f48c
--- /dev/null
+++ b/dev-ruby/console/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">socketry/console</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/contracts/Manifest b/dev-ruby/contracts/Manifest
index f455a455e2ce..a36249134c2a 100644
--- a/dev-ruby/contracts/Manifest
+++ b/dev-ruby/contracts/Manifest
@@ -1 +1 @@
-DIST contracts-0.16.0.gem 55296 BLAKE2B 71b058fd2bcbdf5dfc2ff60631ecfc56cb405dea08fb5b2a67fb23c859a3941ed0aa3963ef639e9cb6670d871a6301a0c8b360fff3912413c10ad44ee8dcde2f SHA512 27d757c3a6d25920ada1b24842a5ed8521bc8902b1840b6060c94dc17e5eecb91501439eb764fa2fec97dedc6591d2c2978630f56d4b38e7b607e9fccfb60ad7
+DIST contracts-0.17.gem 58368 BLAKE2B 2bccd3a552268821b3c34a08fef3d6c0e43e27f8a0e56a2b7b0291d388142a2efb3686230d4daaea6e82c45be8d42f2ab61d1aa3d6a7f682bd7d99a0af7f179d SHA512 bce1417e7b505ec35b43917d53cbdb175995ff877da2a6122e08b3c7e537d557785987a0110006525dd079f09d574be3f5f4793154f99ac91c32f83662fa311b
diff --git a/dev-ruby/contracts/contracts-0.16.0.ebuild b/dev-ruby/contracts/contracts-0.16.0.ebuild
deleted file mode 100644
index 7182654c0aea..000000000000
--- a/dev-ruby/contracts/contracts-0.16.0.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.markdown README.md TODO.markdown TUTORIAL.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="provides contracts for Ruby"
-HOMEPAGE="https://github.com/egonSchiele/contracts.ruby"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
-IUSE=""
diff --git a/dev-ruby/contracts/contracts-0.17-r1.ebuild b/dev-ruby/contracts/contracts-0.17-r1.ebuild
new file mode 100644
index 000000000000..733a91667d82
--- /dev/null
+++ b/dev-ruby/contracts/contracts-0.17-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.markdown README.md TODO.markdown TUTORIAL.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="provides contracts for Ruby"
+HOMEPAGE="https://github.com/egonSchiele/contracts.ruby"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-ruby32.patch
+)
+
+each_ruby_test() {
+ # COLUMNS needed for:
+ # ./spec/contracts_spec.rb:654 # Contracts: Contracts to_s formatting in expected should wrap and pretty print for long return contracts
+ # ./spec/contracts_spec.rb:643 # Contracts: Contracts to_s formatting in expected should wrap and pretty print for long param contracts
+ local -x COLUMNS=80
+ each_fakegem_test
+}
diff --git a/dev-ruby/contracts/files/contracts-0.17-ruby32.patch b/dev-ruby/contracts/files/contracts-0.17-ruby32.patch
new file mode 100644
index 000000000000..0f28e763ddac
--- /dev/null
+++ b/dev-ruby/contracts/files/contracts-0.17-ruby32.patch
@@ -0,0 +1,120 @@
+https://github.com/egonSchiele/contracts.ruby/issues/300
+https://github.com/egonSchiele/contracts.ruby/commit/88fd1d841615e59c873d7da64d050d3a251634dd
+
+From 88fd1d841615e59c873d7da64d050d3a251634dd Mon Sep 17 00:00:00 2001
+From: PikachuEXE <pikachuexe@gmail.com>
+Date: Wed, 5 Oct 2022 10:27:41 +0800
+Subject: [PATCH] * Update all references to Fixnum to Integer
+
+Deprecated in ruby 2.4
+--- a/lib/contracts/builtin_contracts.rb
++++ b/lib/contracts/builtin_contracts.rb
+@@ -95,7 +95,7 @@ def self.[](*vals)
+
+ # Takes a variable number of contracts.
+ # The contract passes if any of the contracts pass.
+- # Example: <tt>Or[Fixnum, Float]</tt>
++ # Example: <tt>Or[Integer, Float]</tt>
+ class Or < CallableClass
+ def initialize(*vals)
+ super()
+@@ -120,7 +120,7 @@ def to_s
+
+ # Takes a variable number of contracts.
+ # The contract passes if exactly one of those contracts pass.
+- # Example: <tt>Xor[Fixnum, Float]</tt>
++ # Example: <tt>Xor[Integer, Float]</tt>
+ class Xor < CallableClass
+ def initialize(*vals)
+ super()
+@@ -146,7 +146,7 @@ def to_s
+
+ # Takes a variable number of contracts.
+ # The contract passes if all contracts pass.
+- # Example: <tt>And[Fixnum, Float]</tt>
++ # Example: <tt>And[Integer, Float]</tt>
+ class And < CallableClass
+ def initialize(*vals)
+ super()
+--- a/spec/builtin_contracts_spec.rb
++++ b/spec/builtin_contracts_spec.rb
+@@ -30,7 +30,7 @@ def passes(&some)
+ end
+
+ describe "Num:" do
+- it "should pass for Fixnums" do
++ it "should pass for Integers" do
+ passes { @o.double(2) }
+ end
+
+--- a/spec/fixtures/fixtures.rb
++++ b/spec/fixtures/fixtures.rb
+@@ -100,11 +100,11 @@ def sum_three(vals)
+ end
+ end
+
+- Contract ({ :name => String, :age => Fixnum }) => nil
++ Contract ({ :name => String, :age => Integer }) => nil
+ def person(data)
+ end
+
+- Contract C::StrictHash[{ :name => String, :age => Fixnum }] => nil
++ Contract C::StrictHash[{ :name => String, :age => Integer }] => nil
+ def strict_person(data)
+ end
+
+@@ -119,7 +119,7 @@ def hash_complex_contracts(data)
+ def nested_hash_complex_contracts(data)
+ end
+
+- Contract C::KeywordArgs[:name => String, :age => Fixnum] => nil
++ Contract C::KeywordArgs[:name => String, :age => Integer] => nil
+ def person_keywordargs(name: "name", age: 10)
+ end
+
+@@ -529,30 +529,30 @@ def initialize(day, month)
+ @month = month
+ end
+
+- Contract C::None => Fixnum
++ Contract C::None => Integer
+ def silly_next_day!
+ self.day += 1
+ end
+
+- Contract C::None => Fixnum
++ Contract C::None => Integer
+ def silly_next_month!
+ self.month += 1
+ end
+
+- Contract C::None => Fixnum
++ Contract C::None => Integer
+ def clever_next_day!
+ return clever_next_month! if day == 31
+ self.day += 1
+ end
+
+- Contract C::None => Fixnum
++ Contract C::None => Integer
+ def clever_next_month!
+ return next_year! if month == 12
+ self.month += 1
+ self.day = 1
+ end
+
+- Contract C::None => Fixnum
++ Contract C::None => Integer
+ def next_year!
+ self.month = 1
+ self.day = 1
+@@ -610,7 +610,7 @@ def on_response(status, body)
+ body + "!"
+ end
+
+- Contract Fixnum, String => String
++ Contract Integer, String => String
+ def on_response(status, body)
+ "error #{status}: #{body}"
+ end
+
diff --git a/dev-ruby/contracts/metadata.xml b/dev-ruby/contracts/metadata.xml
index 8cec60b20c1e..6c1d1e9ff1eb 100644
--- a/dev-ruby/contracts/metadata.xml
+++ b/dev-ruby/contracts/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/coolio/Manifest b/dev-ruby/coolio/Manifest
index 8c05a34993eb..ae5012dada98 100644
--- a/dev-ruby/coolio/Manifest
+++ b/dev-ruby/coolio/Manifest
@@ -1,2 +1,2 @@
-DIST cool.io-1.5.3.gem 112128 BLAKE2B f343ee73e3796744ec21d3af13e92a0a462e10b262543c2d77ab0dd6c5250bbd6cf0d6579646d146983df1c2b288717f3d4e9f1d5d0cded58a9b1422e497dee5 SHA512 6ef61713acdccf951ebd64018a3d9ec83e2655895994fe23842e18cd2556f4d35ec42144577a83b30ef369a9047a58d1bba2224145653db0b7c203dfdca6c3c3
-DIST cool.io-1.5.4.gem 112128 BLAKE2B 49ae41e7ab3481609952d0234e3303d195f59d3a7f369c40aadf72b1c7a85cb46b189532025912d60e972d41f6abd1b4dce3b00d458f59ba80d98a3c51845adc SHA512 d618b3ff396dd2145f8af78e38cafa13c3bb8ca8b9c2d17c8d2884b15178a3f644a8afabadb1b2821b315a5625f169f58bb384f8829828303b9de0d761dec1e7
+DIST cool.io-1.7.1.gem 112640 BLAKE2B 107d7541180de46c78542eab4b131220c4ae4a10210c7ff870f54eb24178b364fcac1abc4b93f8d0eccea197fb746cede95416aea8f3d5cc458626b1fa9a02f4 SHA512 9ab3e6ddd1689b2825f9bd82714b4ef5ac921dc4b2f84786971c3ec448577613cee73084c99090382878b0da43c9228cb2fd3a8627dc8f62ceeeff274dbdc929
+DIST cool.io-1.8.0.gem 113152 BLAKE2B 358fc0296636adb793a38a5763a964f6109a7884bba62f98d3ef92cd9a1a8ee038e3f2866a5f2bfad13a78519cd4299c4543a9382bc65bca59d4374102a09272 SHA512 e847bafbc157d05f1d48b262856a68d80b183a9eed29d6d454df4fbe7fabc427e6e83c873a0f36f2f8cc06bebac22cc1993f344943e43faaf556a8b235666026
diff --git a/dev-ruby/coolio/coolio-1.5.3.ebuild b/dev-ruby/coolio/coolio-1.5.3.ebuild
deleted file mode 100644
index b0718cda696c..000000000000
--- a/dev-ruby/coolio/coolio-1.5.3.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-RUBY_FAKEGEM_NAME="cool.io"
-
-RUBY_FAKEGEM_GEMSPEC="cool.io.gemspec"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A high performance event framework for Ruby which uses the libev C library"
-HOMEPAGE="https://coolio.github.com/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-# cool.io includes a bundled version of libev that is patched to work correctly with ruby.
-
-ruby_add_rdepend ">=dev-ruby/iobuffer-1"
-
-all_ruby_prepare() {
- rm -r Gemfile* lib/.gitignore || die
-
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -i -e '28i s.add_dependency "iobuffer"' ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # Avoid dependency on rake-compiler
- sed -i -e '/extensiontask/ s:^:#:' \
- -e '/ExtensionTask/,/^end/ s:^:#:' Rakefile || die
-
- # Remove specs that require network connectivity
- rm -f spec/dns_spec.rb || die
-
- # Use one address consistently
- sed -i -e 's/localhost/127.0.0.1/' spec/{udp_socket,tcp_server,iobuffer}_spec.rb || die
-}
-
-each_ruby_configure() {
- pushd ext/cool.io || die
- ${RUBY} extconf.rb || die
- popd || die
-}
-
-each_ruby_compile() {
- pushd ext/cool.io || die
- emake V=1
- popd || die
- cp ext/cool.io/cool.io_ext$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/coolio/coolio-1.5.4.ebuild b/dev-ruby/coolio/coolio-1.5.4.ebuild
deleted file mode 100644
index b0718cda696c..000000000000
--- a/dev-ruby/coolio/coolio-1.5.4.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-RUBY_FAKEGEM_NAME="cool.io"
-
-RUBY_FAKEGEM_GEMSPEC="cool.io.gemspec"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A high performance event framework for Ruby which uses the libev C library"
-HOMEPAGE="https://coolio.github.com/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-# cool.io includes a bundled version of libev that is patched to work correctly with ruby.
-
-ruby_add_rdepend ">=dev-ruby/iobuffer-1"
-
-all_ruby_prepare() {
- rm -r Gemfile* lib/.gitignore || die
-
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -i -e '28i s.add_dependency "iobuffer"' ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # Avoid dependency on rake-compiler
- sed -i -e '/extensiontask/ s:^:#:' \
- -e '/ExtensionTask/,/^end/ s:^:#:' Rakefile || die
-
- # Remove specs that require network connectivity
- rm -f spec/dns_spec.rb || die
-
- # Use one address consistently
- sed -i -e 's/localhost/127.0.0.1/' spec/{udp_socket,tcp_server,iobuffer}_spec.rb || die
-}
-
-each_ruby_configure() {
- pushd ext/cool.io || die
- ${RUBY} extconf.rb || die
- popd || die
-}
-
-each_ruby_compile() {
- pushd ext/cool.io || die
- emake V=1
- popd || die
- cp ext/cool.io/cool.io_ext$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/coolio/coolio-1.7.1-r1.ebuild b/dev-ruby/coolio/coolio-1.7.1-r1.ebuild
new file mode 100644
index 000000000000..030b833390e9
--- /dev/null
+++ b/dev-ruby/coolio/coolio-1.7.1-r1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+RUBY_FAKEGEM_NAME="cool.io"
+
+RUBY_FAKEGEM_GEMSPEC="cool.io.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/cool.io/extconf.rb ext/iobuffer/extconf.rb)
+
+inherit flag-o-matic ruby-fakegem
+
+DESCRIPTION="A high performance event framework for Ruby which uses the libev C library"
+HOMEPAGE="https://coolio.github.io/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+# cool.io includes a bundled version of libev that is patched to work correctly with ruby.
+
+all_ruby_prepare() {
+ # See bug #855869 and its large number of dupes in bundled libev copies.
+ filter-lto
+ append-flags -fno-strict-aliasing
+
+ rm -r Gemfile* lib/.gitignore || die
+
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+ sed -i -e '28i s.add_dependency "iobuffer"' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid dependency on rake-compiler
+ sed -i -e '/extensiontask/ s:^:#:' \
+ -e '/ExtensionTask/,/^end/ s:^:#:' Rakefile || die
+
+ # Remove specs that require network connectivity
+ rm -f spec/dns_spec.rb || die
+
+ # Use one address consistently
+ sed -i -e 's/localhost/127.0.0.1/' spec/{udp_socket,tcp_server,iobuffer}_spec.rb || die
+}
diff --git a/dev-ruby/coolio/coolio-1.7.1-r2.ebuild b/dev-ruby/coolio/coolio-1.7.1-r2.ebuild
new file mode 100644
index 000000000000..1dda791d8c93
--- /dev/null
+++ b/dev-ruby/coolio/coolio-1.7.1-r2.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+RUBY_FAKEGEM_NAME="cool.io"
+
+RUBY_FAKEGEM_GEMSPEC="cool.io.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/cool.io/extconf.rb ext/iobuffer/extconf.rb)
+
+inherit flag-o-matic ruby-fakegem
+
+DESCRIPTION="A high performance event framework for Ruby which uses the libev C library"
+HOMEPAGE="https://coolio.github.io/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.7.1-fix-build-clang16.patch
+)
+
+# cool.io includes a bundled version of libev that is patched to work correctly with ruby.
+
+all_ruby_prepare() {
+ # See bug #855869 and its large number of dupes in bundled libev copies.
+ filter-lto
+ append-flags -fno-strict-aliasing
+
+ rm -r Gemfile* lib/.gitignore || die
+
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+ sed -i -e '28i s.add_dependency "iobuffer"' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid dependency on rake-compiler
+ sed -i -e '/extensiontask/ s:^:#:' \
+ -e '/ExtensionTask/,/^end/ s:^:#:' Rakefile || die
+
+ # Remove specs that require network connectivity
+ rm -f spec/dns_spec.rb || die
+
+ # Use one address consistently
+ sed -i -e 's/localhost/127.0.0.1/' spec/{udp_socket,tcp_server,iobuffer}_spec.rb || die
+}
diff --git a/dev-ruby/coolio/coolio-1.8.0.ebuild b/dev-ruby/coolio/coolio-1.8.0.ebuild
new file mode 100644
index 000000000000..d521e9ab6350
--- /dev/null
+++ b/dev-ruby/coolio/coolio-1.8.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+RUBY_FAKEGEM_NAME="cool.io"
+
+RUBY_FAKEGEM_GEMSPEC="cool.io.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/cool.io/extconf.rb ext/iobuffer/extconf.rb)
+
+inherit flag-o-matic ruby-fakegem
+
+DESCRIPTION="A high performance event framework for Ruby which uses the libev C library"
+HOMEPAGE="https://coolio.github.io/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+# cool.io includes a bundled version of libev that is patched to work correctly with ruby.
+
+all_ruby_prepare() {
+ # See bug #855869 and its large number of dupes in bundled libev copies.
+ filter-lto
+ append-flags -fno-strict-aliasing
+
+ rm -r Gemfile* lib/.gitignore || die
+
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+ sed -i -e '28i s.add_dependency "iobuffer"' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid dependency on rake-compiler
+ sed -i -e '/extensiontask/ s:^:#:' \
+ -e '/ExtensionTask/,/^end/ s:^:#:' Rakefile || die
+
+ # Remove specs that require network connectivity
+ rm -f spec/dns_spec.rb || die
+
+ # Use one address consistently
+ sed -i -e 's/localhost/127.0.0.1/' spec/{udp_socket,tcp_server,iobuffer}_spec.rb || die
+}
diff --git a/dev-ruby/coolio/files/coolio-1.7.1-fix-build-clang16.patch b/dev-ruby/coolio/files/coolio-1.7.1-fix-build-clang16.patch
new file mode 100644
index 000000000000..909988fda7c3
--- /dev/null
+++ b/dev-ruby/coolio/files/coolio-1.7.1-fix-build-clang16.patch
@@ -0,0 +1,13 @@
+Bug: https://bugs.gentoo.org/883147
+Upstream PR: https://github.com/tarcieri/cool.io/pull/78
+--- a/ext/libev/ev.c
++++ b/ext/libev/ev.c
+@@ -3768,7 +3768,7 @@ rb_thread_unsafe_dangerous_crazy_blocking_region_end(...);
+ #if defined(HAVE_RB_THREAD_BLOCKING_REGION) || defined(HAVE_RB_THREAD_CALL_WITHOUT_GVL)
+ poll_args.loop = loop;
+ poll_args.waittime = waittime;
+- rb_thread_call_without_gvl(ev_backend_poll, (void *)&poll_args, RUBY_UBF_IO, 0);
++ rb_thread_call_without_gvl((void *)ev_backend_poll, (void *)&poll_args, RUBY_UBF_IO, 0);
+ #else
+ backend_poll (EV_A_ waittime);
+ #endif
diff --git a/dev-ruby/coolio/metadata.xml b/dev-ruby/coolio/metadata.xml
index 28ab0c15f206..b484ee35ee3a 100644
--- a/dev-ruby/coolio/metadata.xml
+++ b/dev-ruby/coolio/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">tarcieri/cool.io</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/countdownlatch/countdownlatch-1.0.0-r1.ebuild b/dev-ruby/countdownlatch/countdownlatch-1.0.0-r1.ebuild
deleted file mode 100644
index 0610d2ae72ac..000000000000
--- a/dev-ruby/countdownlatch/countdownlatch-1.0.0-r1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Synchronization aid to allow threads to wait for operations in other threads"
-HOMEPAGE="https://github.com/benlangfeld/countdownlatch"
-IUSE=""
-SLOT="0"
-
-LICENSE="MIT"
-KEYWORDS="~amd64"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/countdownlatch/countdownlatch-1.0.0-r2.ebuild b/dev-ruby/countdownlatch/countdownlatch-1.0.0-r2.ebuild
new file mode 100644
index 000000000000..bf893e311197
--- /dev/null
+++ b/dev-ruby/countdownlatch/countdownlatch-1.0.0-r2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="test"
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Synchronization aid to allow threads to wait for operations in other threads"
+HOMEPAGE="https://github.com/benlangfeld/countdownlatch"
+IUSE=""
+SLOT="0"
+
+LICENSE="MIT"
+KEYWORDS="~amd64"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/countdownlatch/metadata.xml b/dev-ruby/countdownlatch/metadata.xml
index 3751acc1138a..5b32725740dc 100644
--- a/dev-ruby/countdownlatch/metadata.xml
+++ b/dev-ruby/countdownlatch/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/crack/Manifest b/dev-ruby/crack/Manifest
index c6e5f634e808..6a61d977ce28 100644
--- a/dev-ruby/crack/Manifest
+++ b/dev-ruby/crack/Manifest
@@ -1 +1,3 @@
-DIST crack-0.4.3.gem 574976 BLAKE2B 4b6f23277ec17a516d06e6e6785889996172b3ec077f022d1a52ab4b8e938b2735abbaecc71288b55654ff09a428c33eb944b627cfdc827ea1f4ddc6289461d9 SHA512 c6577bd86fe2e36b2a37693729da9fc35c5d4deb860ac1873265ccb6fb38056fd76d8c17bb4f779b39f4bc13b9db37c1768433f518c17090ccbb0872a103b386
+DIST crack-0.4.4.tar.gz 586633 BLAKE2B 26e2cda6e9447fb3c9fe02092a6e9d6a8097c7bca6a483a3af42aa8ba491b737bc0dc3ae1936ef8ffb5c5d5cbbed3fde69c9641f05b9e3eb3beab87c375f68fd SHA512 3f86c76718a3c2a65ee11b15434035396c2355a8562bdb642432a659b52c3e811e930318e0dc2df3ff06bd53ac14d0694471e425420ae3b7971f5d4f818bba87
+DIST crack-0.4.6.tar.gz 587341 BLAKE2B eafe4e3682cfbcfd2369c66cc47e7eab8557cce568f401599a6a72efac361be5b16f47ee7eb2916ada111b10c7ee6aa0dfa8cbb4988eb822304d22f3b8a51a6f SHA512 b004d4fc69319f4d05a79e34c04fe7d46bb78dc516d1481e09b07b9b0835e50925c5a1a89ee17070eceaf29ac1c371b6a590319b02b0d22b85c6ab26ee979d23
+DIST crack-1.0.0.tar.gz 587402 BLAKE2B 265948336f3a0567d08766ddd179502e9dac0b0ef647a636d74b2bf7b6d8a2bb08385df566f118151cf4b72c700d17c3f69bfe8d61dc7035102319c2513190c1 SHA512 01f2231033a64aa3a107de3c0185559800be32c679671835962bd4e8f74cb644b9cb1e4895880ab03bc15e82aac465875d1ce187b977be65f514282718b7837c
diff --git a/dev-ruby/crack/crack-0.4.3-r2.ebuild b/dev-ruby/crack/crack-0.4.3-r2.ebuild
deleted file mode 100644
index f1842a72292f..000000000000
--- a/dev-ruby/crack/crack-0.4.3-r2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md History"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Really simple JSON and XML parsing, ripped from Merb and Rails"
-HOMEPAGE="https://github.com/jnunemaker/crack"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-ruby_add_rdepend ">=dev-ruby/safe_yaml-1.0.4-r4"
-
-each_ruby_prepare() {
- # Remove tests which fail when run by portage but pass when run by hand
- sed -i -e '/{"regex": \/foo.*\/}/d' test/json_test.rb || die
- sed -i -e '/{"regex": \/foo.*\/i}/d' test/json_test.rb || die
- sed -i -e '/{"regex": \/foo.*\/mix}/d' test/json_test.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Itest -Ilib -e 'Dir["test/*_test.rb"].each { |f| load f }' || die
-}
diff --git a/dev-ruby/crack/crack-0.4.4-r3.ebuild b/dev-ruby/crack/crack-0.4.4-r3.ebuild
new file mode 100644
index 000000000000..796ae92713f6
--- /dev/null
+++ b/dev-ruby/crack/crack-0.4.4-r3.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md History"
+
+RUBY_FAKEGEM_GEMSPEC="crack.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Really simple JSON and XML parsing, ripped from Merb and Rails"
+HOMEPAGE="https://github.com/jnunemaker/crack"
+SRC_URI="https://github.com/jnunemaker/crack/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+PATCHES=( "${FILESDIR}/${P}-psych4.patch" )
+
+ruby_add_rdepend "dev-ruby/rexml"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files --/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Also list rexml in the gemspec. This is fixed upstream in 0.4.5 but that version is not tagged.
+ sed -i -e '17igem.add_runtime_dependency("rexml")' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_prepare() {
+ # Remove tests which fail when run by portage but pass when run by hand
+ sed -i -e '/{"regex": \/foo.*\/}/d' test/json_test.rb || die
+ sed -i -e '/{"regex": \/foo.*\/i}/d' test/json_test.rb || die
+ sed -i -e '/{"regex": \/foo.*\/mix}/d' test/json_test.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Itest -Ilib -e 'Dir["test/*_test.rb"].each { |f| load f }' || die
+}
diff --git a/dev-ruby/crack/crack-0.4.6.ebuild b/dev-ruby/crack/crack-0.4.6.ebuild
new file mode 100644
index 000000000000..8922e4131839
--- /dev/null
+++ b/dev-ruby/crack/crack-0.4.6.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md History"
+
+RUBY_FAKEGEM_GEMSPEC="crack.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Really simple JSON and XML parsing, ripped from Merb and Rails"
+HOMEPAGE="https://github.com/jnunemaker/crack"
+SRC_URI="https://github.com/jnunemaker/crack/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/bigdecimal dev-ruby/rexml"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files --/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Also list rexml in the gemspec. This is fixed upstream in 0.4.5 but that version is not tagged.
+ sed -i -e '17igem.add_runtime_dependency("rexml")' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_prepare() {
+ # Remove tests which fail when run by portage but pass when run by hand
+ sed -i -e '/{"regex": \/foo.*\/}/d' test/json_test.rb || die
+ sed -i -e '/{"regex": \/foo.*\/i}/d' test/json_test.rb || die
+ sed -i -e '/{"regex": \/foo.*\/mix}/d' test/json_test.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Itest -Ilib -e 'Dir["test/*_test.rb"].each { |f| load f }' || die
+}
diff --git a/dev-ruby/crack/crack-1.0.0.ebuild b/dev-ruby/crack/crack-1.0.0.ebuild
new file mode 100644
index 000000000000..55be284cf774
--- /dev/null
+++ b/dev-ruby/crack/crack-1.0.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md History"
+
+RUBY_FAKEGEM_GEMSPEC="crack.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Really simple JSON and XML parsing, ripped from Merb and Rails"
+HOMEPAGE="https://github.com/jnunemaker/crack"
+SRC_URI="https://github.com/jnunemaker/crack/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+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 ~x64-solaris"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/bigdecimal dev-ruby/rexml"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files --/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Itest -Ilib -e 'Dir["test/*_test.rb"].each { |f| load f }' || die
+}
diff --git a/dev-ruby/crack/files/crack-0.4.4-psych4.patch b/dev-ruby/crack/files/crack-0.4.4-psych4.patch
new file mode 100644
index 000000000000..4c4e96661ba9
--- /dev/null
+++ b/dev-ruby/crack/files/crack-0.4.4-psych4.patch
@@ -0,0 +1,30 @@
+From 7fa8d8aea4a041969e433debef7f4d5d59881ae2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch@redhat.com>
+Date: Fri, 11 Mar 2022 18:29:43 +0100
+Subject: [PATCH] Use named parameters for `safe_load`.
+
+This is available since Psych 3.1 [[1], [2]], but mandatory since Psych
+4.0 [[3]].
+
+Fixes #72
+
+[1]: https://github.com/ruby/psych/pull/358
+[2]: https://github.com/ruby/psych/pull/378
+[3]: https://github.com/ruby/psych/commit/0767227051dbddf1f949eef512c174deabf22891
+---
+ lib/crack/json.rb | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/crack/json.rb b/lib/crack/json.rb
+index 1a27ac7..528aad6 100644
+--- a/lib/crack/json.rb
++++ b/lib/crack/json.rb
+@@ -13,7 +13,7 @@ def self.parser_exceptions
+
+ def self.parse(json)
+ yaml = unescape(convert_json_to_yaml(json))
+- YAML.safe_load(yaml, [Regexp, Date, Time])
++ YAML.safe_load(yaml, permitted_classes: [Regexp, Date, Time])
+ rescue *parser_exceptions
+ raise ParseError, "Invalid JSON string"
+ rescue Psych::DisallowedClass
diff --git a/dev-ruby/crack/metadata.xml b/dev-ruby/crack/metadata.xml
index 12ee26a76447..c6670764f005 100644
--- a/dev-ruby/crack/metadata.xml
+++ b/dev-ruby/crack/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/crass/Manifest b/dev-ruby/crass/Manifest
index b8da514b3ba1..c0ecd417a835 100644
--- a/dev-ruby/crass/Manifest
+++ b/dev-ruby/crass/Manifest
@@ -1 +1 @@
-DIST crass-1.0.4.gem 92160 BLAKE2B f0ee65e3fd6bde1b87bb47347c8afbc1c4b5e98331a82e64d0b96ef4ef7db91a0903d6961074713cf68ad68363d1c9c678e62f4b3d8e7f9b4491ad2bb70a1596 SHA512 44ef5393530b38c35035833ecc140bc324d39309e18d4bb81847f415c0092230483172fd92fe2acacab238bbb771cedd44d6031f7c985a59d0ab4d2373119967
+DIST crass-1.0.6.tar.gz 89443 BLAKE2B 2721cc6f5419a36c122c63c59804da84791e70d522ee01ff2ff06fed67a74ab187d0b601cd85e031fd33a84315fbc4cd092c14de110053c94ff0e50d4feab5fc SHA512 de98dea48d0cff148b3000d7388256552d1bf5a014ecbc074efc909473bc6edf2cf1db36179aaa4284eb810618dafc346757ac61708c9659045e013e6c6d4e36
diff --git a/dev-ruby/crass/crass-1.0.4.ebuild b/dev-ruby/crass/crass-1.0.4.ebuild
deleted file mode 100644
index 248257eec31a..000000000000
--- a/dev-ruby/crass/crass-1.0.4.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="HISTORY.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby CSS parser that's fully compliant with the CSS Syntax Level 3 specification"
-HOMEPAGE="https://github.com/rgrove/crass/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend ">=dev-ruby/minitest-5.0.8:5"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/crass/crass-1.0.6-r1.ebuild b/dev-ruby/crass/crass-1.0.6-r1.ebuild
new file mode 100644
index 000000000000..75d1043a002f
--- /dev/null
+++ b/dev-ruby/crass/crass-1.0.6-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="HISTORY.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="crass.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby CSS parser that's fully compliant with the CSS Syntax Level 3 specification"
+HOMEPAGE="https://github.com/rgrove/crass/"
+SRC_URI="https://github.com/rgrove/crass/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend ">=dev-ruby/minitest-5.0.8:5"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Fix minitest deprecation
+ sed -i -e 's/MiniTest/Minitest/' test/support/common.rb || die
+}
diff --git a/dev-ruby/crass/metadata.xml b/dev-ruby/crass/metadata.xml
index e3b71b118534..9383ce28044d 100644
--- a/dev-ruby/crass/metadata.xml
+++ b/dev-ruby/crass/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/creole/creole-0.5.0-r2.ebuild b/dev-ruby/creole/creole-0.5.0-r2.ebuild
new file mode 100644
index 000000000000..8b68666feb69
--- /dev/null
+++ b/dev-ruby/creole/creole-0.5.0-r2.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rake"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.creole"
+
+RUBY_FAKEGEM_GEMSPEC="creole.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Creole-to-HTML converter for Creole, the lightweight markup language"
+HOMEPAGE="https://github.com/minad/creole"
+SRC_URI="https://github.com/minad/creole/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/bacon )"
+
+all_ruby_prepare() {
+ sed -e 's/git ls-files --/echo/' \
+ -e 's/git ls-files/find -print/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/creole/creole-0.5.0.ebuild b/dev-ruby/creole/creole-0.5.0.ebuild
deleted file mode 100644
index e601310a98ff..000000000000
--- a/dev-ruby/creole/creole-0.5.0.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rake"
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.creole"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Creole-to-HTML converter for Creole, the lightweight markup language"
-HOMEPAGE="https://github.com/minad/creole"
-SRC_URI="https://github.com/minad/creole/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/bacon )"
diff --git a/dev-ruby/creole/metadata.xml b/dev-ruby/creole/metadata.xml
index 2f7e3e0798b3..f681a5a5bde8 100644
--- a/dev-ruby/creole/metadata.xml
+++ b/dev-ruby/creole/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/cri/Manifest b/dev-ruby/cri/Manifest
index 5d294a1daeb3..d8c72654d0d7 100644
--- a/dev-ruby/cri/Manifest
+++ b/dev-ruby/cri/Manifest
@@ -1,4 +1 @@
-DIST cri-2.15.5.gem 33792 BLAKE2B 90724633a26acce78e8d041df96d91ea6db21c9d96558cb2f14c458880f4e2fc3a99de2242340cd2d8e4a3c1f68eb7dcf3877c67b4ce6dbc590b4dcf3ef4b41c SHA512 7519fb6eb79e3f818eb66be8344ee10ec61e09f81b3d70c4e0fd29736c957d1e760384661d018833015307a83b5155bb5c146bd6ea67fe929ab96d665279d6a9
-DIST cri-2.15.6.gem 33792 BLAKE2B 901bd6a1812b258b2ef26f5dc534f2249f813a00dbffff0a651dcd48dabedd02c49fb101026bd33ede14ab730d253decee8dc6e4e915fce1c5b1b28f153b281a SHA512 3d997c90c46b4d787f2411e5c2eea5aadc4eb6837948920a93b42e2ecf01637d1589e864b59e60002bfe6ac80fdfa9d0473c0d4b4d94493a998af47f3818014b
-DIST cri-2.15.7.gem 34304 BLAKE2B a472c8ccb01ca4d744343dfc96b08fa16ceb2b2f06abcdc88c19ec7584f54f52cd7d422a56c8d74c38ce6e7a42aaac48433f0a27a6a2a8758c4b85ef0c022749 SHA512 d9567b83f9ac17deffb0e9b1300c69fc827f7568ca6789f06c7933284cd9e620223337fdcfbe1b251207034d7c2cbb003fbfdb1da07cfe8c87a42c962fd91635
-DIST cri-2.15.9.gem 35328 BLAKE2B 9a7cb1337903c153af6d9a4ce7fe5c060ccf476fcd1f68e2beff08abf4169a407103ca67d9f720810092decdb0ac42d1afc8d2a9e0f67160ceda8baf2e658a9e SHA512 a46b78b08f855c4f1062ea213cbecd0a094395c974186fe74f7cd7da9b4a51e81cc9bea350d5a3c13a713c5f57d445f5437e4d1268a7e620036741c7223fab20
+DIST cri-2.15.11.gem 35328 BLAKE2B 774ebbd74ccd8f328d15a65515ed6c350d6bd00c9b757912c37a01aa71b745a3443755b8b59e7a8e6ac07c67f21d69dc4f96f972850e011d7b72d639c471d636 SHA512 a16d35a5e83401dda4e50bbb8a52b8a192e2876a708c516445559599f1e7c007d2f943efc662f43226bfd177356272dc7802fc01c8fdca543d4146bc537cae82
diff --git a/dev-ruby/cri/cri-2.15.11-r1.ebuild b/dev-ruby/cri/cri-2.15.11-r1.ebuild
new file mode 100644
index 000000000000..705226a55570
--- /dev/null
+++ b/dev-ruby/cri/cri-2.15.11-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+
+RUBY_FAKEGEM_TASK_DOC="doc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Cri is a library for building easy-to-use commandline tools"
+HOMEPAGE="https://rubygems.org/gems/cri"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~riscv ~x86"
+SLOT="0"
+IUSE=""
+
+ruby_add_bdepend "doc? ( dev-ruby/yard )
+ test? ( dev-ruby/yard dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -e '/coveralls/I s:^:#:' -i test/helper.rb || die
+ sed -i -e '/rubocop/ s:^:#:' \
+ -e '/RuboCop/,/end/ s:^:#:' Rakefile || die
+
+ sed -e 's/MiniTest::Unit::TestCase/Minitest::Test/' \
+ -i test/helper.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib -S rake test_unit || die
+}
diff --git a/dev-ruby/cri/cri-2.15.5.ebuild b/dev-ruby/cri/cri-2.15.5.ebuild
deleted file mode 100644
index 121074120806..000000000000
--- a/dev-ruby/cri/cri-2.15.5.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
-
-RUBY_FAKEGEM_TASK_DOC="doc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Cri is a library for building easy-to-use commandline tools"
-HOMEPAGE="https://rubygems.org/gems/cri"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~x86 ~x86-fbsd"
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "doc? ( dev-ruby/yard )
- test? ( dev-ruby/yard dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -e '/coveralls/I s:^:#:' -i test/helper.rb || die
- sed -i -e '/rubocop/ s:^:#:' \
- -e '/RuboCop/,/end/ s:^:#:' Rakefile || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib -S rake test_unit || die
-}
diff --git a/dev-ruby/cri/cri-2.15.6.ebuild b/dev-ruby/cri/cri-2.15.6.ebuild
deleted file mode 100644
index 121074120806..000000000000
--- a/dev-ruby/cri/cri-2.15.6.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
-
-RUBY_FAKEGEM_TASK_DOC="doc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Cri is a library for building easy-to-use commandline tools"
-HOMEPAGE="https://rubygems.org/gems/cri"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~x86 ~x86-fbsd"
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "doc? ( dev-ruby/yard )
- test? ( dev-ruby/yard dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -e '/coveralls/I s:^:#:' -i test/helper.rb || die
- sed -i -e '/rubocop/ s:^:#:' \
- -e '/RuboCop/,/end/ s:^:#:' Rakefile || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib -S rake test_unit || die
-}
diff --git a/dev-ruby/cri/cri-2.15.7.ebuild b/dev-ruby/cri/cri-2.15.7.ebuild
deleted file mode 100644
index 121074120806..000000000000
--- a/dev-ruby/cri/cri-2.15.7.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
-
-RUBY_FAKEGEM_TASK_DOC="doc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Cri is a library for building easy-to-use commandline tools"
-HOMEPAGE="https://rubygems.org/gems/cri"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~x86 ~x86-fbsd"
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "doc? ( dev-ruby/yard )
- test? ( dev-ruby/yard dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -e '/coveralls/I s:^:#:' -i test/helper.rb || die
- sed -i -e '/rubocop/ s:^:#:' \
- -e '/RuboCop/,/end/ s:^:#:' Rakefile || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib -S rake test_unit || die
-}
diff --git a/dev-ruby/cri/cri-2.15.9.ebuild b/dev-ruby/cri/cri-2.15.9.ebuild
deleted file mode 100644
index 121074120806..000000000000
--- a/dev-ruby/cri/cri-2.15.9.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
-
-RUBY_FAKEGEM_TASK_DOC="doc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Cri is a library for building easy-to-use commandline tools"
-HOMEPAGE="https://rubygems.org/gems/cri"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~x86 ~x86-fbsd"
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "doc? ( dev-ruby/yard )
- test? ( dev-ruby/yard dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -e '/coveralls/I s:^:#:' -i test/helper.rb || die
- sed -i -e '/rubocop/ s:^:#:' \
- -e '/RuboCop/,/end/ s:^:#:' Rakefile || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib -S rake test_unit || die
-}
diff --git a/dev-ruby/cri/metadata.xml b/dev-ruby/cri/metadata.xml
index 17c5f3a33db9..979d23466811 100644
--- a/dev-ruby/cri/metadata.xml
+++ b/dev-ruby/cri/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/css_parser/Manifest b/dev-ruby/css_parser/Manifest
index 7fac06facc7a..01817cec391d 100644
--- a/dev-ruby/css_parser/Manifest
+++ b/dev-ruby/css_parser/Manifest
@@ -1,2 +1,3 @@
-DIST css_parser-1.6.0.tar.gz 33251 BLAKE2B 1e28e6999675fadc1bc6a98417cc698fb2e5f16e8d8b27e186037112ac9c3cee82161c7530b962209d76d91359d68016210a371c9e8a7f7d631c7aec73bc5c81 SHA512 838baf3cc4249e890f7cf006370f148261b392549e6cc25b11246e15c8347a8877b4cc3bfe70dee18a822a9a8fc496705787262d79e177d62587f41ba6f4c4d6
-DIST css_parser-1.7.0.tar.gz 33480 BLAKE2B c9bf7f901f18f09b937d58d791a4550c37ae19b161ee8454eee4e88f55bd3871c9b264e935a00e86c8b918c45a2c4c7cbc7454f665e0a9d9c53621e21df294e5 SHA512 abf1f80577e9874e14e28bdffe9539ff2eb63a5521075e2ec481fc2b4e53c9652bcb60e7806b21a6e0866ec396cbdb495768db212018eb30dbf9e70088f0af4b
+DIST css_parser-1.16.0.tar.gz 39719 BLAKE2B 19c6e741bdfac308ea2b2edc557fbbe79580cb44f7a8e8538a3fbb55dcc02a76a56ec151d26ee2af887624fbe348a29c1acfbca30f17e0f2c73850ed7d3808af SHA512 d21f07da73ec3d164f766a392d88053fb156eb15645c4dbf3e4b70b73fdfad6c0b715368d9b000e668cf40dc338611be946064d586f4efcf7e13f261df74b6fa
+DIST css_parser-1.17.0.tar.gz 39746 BLAKE2B c94f0b03d3e5e54ff390f83bc87c2bc9cd1aa0426898361d3f61fc36263fbb19251cccf346767e8d844b49471186051ffcadb3b87ad3092aa403ef02764a5e5a SHA512 9097b13c578727a7ab918be9b54f846d3f85bb666a54416f54bf509efebfbaf64dd22ec827adef61ba2fd8b46abc81cc302ba3bba35e7d87dee181d21f4cf578
+DIST css_parser-1.17.1.tar.gz 39809 BLAKE2B c8d0a05d4264432a6614cf834aeef7685710d50f44b99c2989a0e431b6894b8c1ac7ddc4f9617632f3da4a0d479acb02ef4bdb1b0ede6f098cdfbeb37c0db624 SHA512 bc22ff1be8daf72b76f611c5be27ee52a197b8e7810c61321ae7e994db771dec01b5c4725b656119d3b610214bc06d08e79bbacc1d2c4294d8ad2cd915edb2fb
diff --git a/dev-ruby/css_parser/css_parser-1.16.0.ebuild b/dev-ruby/css_parser/css_parser-1.16.0.ebuild
new file mode 100644
index 000000000000..220acb7872bb
--- /dev/null
+++ b/dev-ruby/css_parser/css_parser-1.16.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOC_DIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md "
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+GITHUB_USER="premailer"
+GITHUB_PROJECT="${PN}"
+inherit ruby-fakegem
+
+DESCRIPTION="Sass-based Stylesheet Framework"
+HOMEPAGE="https://github.com/premailer/css_parser/"
+LICENSE="MIT"
+
+SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${GITHUB_PROJECT}-${PV}.tar.gz"
+
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="doc test"
+
+ruby_add_rdepend "dev-ruby/addressable
+ virtual/ruby-ssl"
+
+ruby_add_bdepend "test? ( dev-ruby/maxitest dev-ruby/webrick )"
+
+all_ruby_prepare() {
+ # get rid of bundler usage
+ rm Gemfile || die
+ sed -i -e '/bundler/d' -e '/bump/d' Rakefile || die
+ sed -i -e '/bundler/d' test/test_helper.rb || die
+ # Avoid tests using the network.
+ sed -i -e '/test_loading_a_remote_file_over_ssl/,/end/ s:^:#:' test/test_css_parser_loading.rb || die
+
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib test/*.rb || die
+}
diff --git a/dev-ruby/css_parser/css_parser-1.17.0.ebuild b/dev-ruby/css_parser/css_parser-1.17.0.ebuild
new file mode 100644
index 000000000000..220acb7872bb
--- /dev/null
+++ b/dev-ruby/css_parser/css_parser-1.17.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOC_DIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md "
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+GITHUB_USER="premailer"
+GITHUB_PROJECT="${PN}"
+inherit ruby-fakegem
+
+DESCRIPTION="Sass-based Stylesheet Framework"
+HOMEPAGE="https://github.com/premailer/css_parser/"
+LICENSE="MIT"
+
+SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${GITHUB_PROJECT}-${PV}.tar.gz"
+
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="doc test"
+
+ruby_add_rdepend "dev-ruby/addressable
+ virtual/ruby-ssl"
+
+ruby_add_bdepend "test? ( dev-ruby/maxitest dev-ruby/webrick )"
+
+all_ruby_prepare() {
+ # get rid of bundler usage
+ rm Gemfile || die
+ sed -i -e '/bundler/d' -e '/bump/d' Rakefile || die
+ sed -i -e '/bundler/d' test/test_helper.rb || die
+ # Avoid tests using the network.
+ sed -i -e '/test_loading_a_remote_file_over_ssl/,/end/ s:^:#:' test/test_css_parser_loading.rb || die
+
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib test/*.rb || die
+}
diff --git a/dev-ruby/css_parser/css_parser-1.17.1.ebuild b/dev-ruby/css_parser/css_parser-1.17.1.ebuild
new file mode 100644
index 000000000000..220acb7872bb
--- /dev/null
+++ b/dev-ruby/css_parser/css_parser-1.17.1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOC_DIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md "
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+GITHUB_USER="premailer"
+GITHUB_PROJECT="${PN}"
+inherit ruby-fakegem
+
+DESCRIPTION="Sass-based Stylesheet Framework"
+HOMEPAGE="https://github.com/premailer/css_parser/"
+LICENSE="MIT"
+
+SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${GITHUB_PROJECT}-${PV}.tar.gz"
+
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="doc test"
+
+ruby_add_rdepend "dev-ruby/addressable
+ virtual/ruby-ssl"
+
+ruby_add_bdepend "test? ( dev-ruby/maxitest dev-ruby/webrick )"
+
+all_ruby_prepare() {
+ # get rid of bundler usage
+ rm Gemfile || die
+ sed -i -e '/bundler/d' -e '/bump/d' Rakefile || die
+ sed -i -e '/bundler/d' test/test_helper.rb || die
+ # Avoid tests using the network.
+ sed -i -e '/test_loading_a_remote_file_over_ssl/,/end/ s:^:#:' test/test_css_parser_loading.rb || die
+
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib test/*.rb || die
+}
diff --git a/dev-ruby/css_parser/css_parser-1.6.0.ebuild b/dev-ruby/css_parser/css_parser-1.6.0.ebuild
deleted file mode 100644
index 5533ed58c75d..000000000000
--- a/dev-ruby/css_parser/css_parser-1.6.0.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOC_DIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md "
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-GITHUB_USER="premailer"
-GITHUB_PROJECT="${PN}"
-inherit ruby-fakegem
-
-DESCRIPTION="Sass-based Stylesheet Framework"
-HOMEPAGE="http://compass-style.org/ https://github.com/premailer/css_parser/"
-LICENSE="MIT"
-
-SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${GITHUB_PROJECT}-${PV}.tar.gz"
-
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE="doc test"
-
-ruby_add_rdepend "dev-ruby/addressable
- virtual/ruby-ssl"
-
-ruby_add_bdepend "test? ( dev-ruby/maxitest )"
-
-all_ruby_prepare() {
- # get rid of bundler usage
- rm Gemfile || die
- sed -i -e '/bundler/d' -e '/bump/d' Rakefile || die
- sed -i -e '/bundler/d' test/test_helper.rb || die
- # Avoid tests using the network.
- sed -i -e '/test_loading_a_remote_file_over_ssl/,/end/ s:^:#:' test/test_css_parser_loading.rb || die
-
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib test/*.rb || die
-}
diff --git a/dev-ruby/css_parser/css_parser-1.7.0.ebuild b/dev-ruby/css_parser/css_parser-1.7.0.ebuild
deleted file mode 100644
index 5533ed58c75d..000000000000
--- a/dev-ruby/css_parser/css_parser-1.7.0.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOC_DIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md "
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-GITHUB_USER="premailer"
-GITHUB_PROJECT="${PN}"
-inherit ruby-fakegem
-
-DESCRIPTION="Sass-based Stylesheet Framework"
-HOMEPAGE="http://compass-style.org/ https://github.com/premailer/css_parser/"
-LICENSE="MIT"
-
-SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${PV}.tar.gz -> ${GITHUB_PROJECT}-${PV}.tar.gz"
-
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE="doc test"
-
-ruby_add_rdepend "dev-ruby/addressable
- virtual/ruby-ssl"
-
-ruby_add_bdepend "test? ( dev-ruby/maxitest )"
-
-all_ruby_prepare() {
- # get rid of bundler usage
- rm Gemfile || die
- sed -i -e '/bundler/d' -e '/bump/d' Rakefile || die
- sed -i -e '/bundler/d' test/test_helper.rb || die
- # Avoid tests using the network.
- sed -i -e '/test_loading_a_remote_file_over_ssl/,/end/ s:^:#:' test/test_css_parser_loading.rb || die
-
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib test/*.rb || die
-}
diff --git a/dev-ruby/css_parser/metadata.xml b/dev-ruby/css_parser/metadata.xml
index 2f10e1380188..679e0db54d00 100644
--- a/dev-ruby/css_parser/metadata.xml
+++ b/dev-ruby/css_parser/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/csv/Manifest b/dev-ruby/csv/Manifest
new file mode 100644
index 000000000000..669ee510211a
--- /dev/null
+++ b/dev-ruby/csv/Manifest
@@ -0,0 +1,2 @@
+DIST csv-3.2.8.tar.gz 91194 BLAKE2B 827adb228acaaae30f090d0547d1d59ef6237546aff462e9d812bb854f3b331feecea9b2657acf8aad17c9ac76aad7754b2f22ae8d2e067c2d45f8cf648491a8 SHA512 87072aaca62e5d95eeb1b916eff497b2b2029efd9be6b29c9d3c4435dbfcd64a1ed045b8b3bec106ea35e11aa05f3a3d5f9f6c09c12a97bc157648be5cd2fcf7
+DIST csv-3.3.0.tar.gz 91569 BLAKE2B cacdf60e279277f7d69fd62d6cea62ce80843addab7b9f81749fabde9133d2b40b2a961b548bd55918bacbe89fe8754af87569a117d4f43a88d3ef49a792da1f SHA512 676f6c34c1466c0edb412aeba9e955cc0070c201a21e6ffe2fd47a3ad4bd7322d561c612695317e5ef34195bcc8bc7a63f3de8c55fbdcb116890a59b867c20d9
diff --git a/dev-ruby/csv/csv-3.2.8.ebuild b/dev-ruby/csv/csv-3.2.8.ebuild
new file mode 100644
index 000000000000..364154350cd8
--- /dev/null
+++ b/dev-ruby/csv/csv-3.2.8.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The CSV library provides a complete interface to CSV files and data"
+HOMEPAGE="https://github.com/ruby/csv"
+SRC_URI="https://github.com/ruby/csv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+
+ruby_add_bdepend "test? ( >=dev-ruby/test-unit-3.4.8 )"
+
+all_ruby_prepare() {
+ sed -i -e 's:require_relative ":require "./:' -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+}
+
+each_ruby_test() {
+ ${RUBY} run-test.rb || die
+}
diff --git a/dev-ruby/csv/csv-3.3.0.ebuild b/dev-ruby/csv/csv-3.3.0.ebuild
new file mode 100644
index 000000000000..a989a2e126c6
--- /dev/null
+++ b/dev-ruby/csv/csv-3.3.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The CSV library provides a complete interface to CSV files and data"
+HOMEPAGE="https://github.com/ruby/csv"
+SRC_URI="https://github.com/ruby/csv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+
+ruby_add_bdepend "test? ( >=dev-ruby/test-unit-3.4.8 )"
+
+all_ruby_prepare() {
+ sed -i -e 's:require_relative ":require "./:' -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+}
+
+each_ruby_test() {
+ ${RUBY} run-test.rb || die
+}
diff --git a/dev-ruby/csv/metadata.xml b/dev-ruby/csv/metadata.xml
new file mode 100644
index 000000000000..45c4fb8df431
--- /dev/null
+++ b/dev-ruby/csv/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/csv</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/curb/Manifest b/dev-ruby/curb/Manifest
index 6e0f4f837a0c..546be9fd6f08 100644
--- a/dev-ruby/curb/Manifest
+++ b/dev-ruby/curb/Manifest
@@ -1,2 +1 @@
-DIST curb-0.9.10.gem 88064 BLAKE2B 8f761e752bc1fd0775f012373847330d3ced9d394e5159b74c8e329247f6221bbc26978755d84b91e75b4082b7bb50c7755db299f90f291516f355b4ab1ddc7c SHA512 eab82d3c1b34bf8e5bfd334abca38a80eaab255d31164ca189185b8b98d7f3760fb116babf50dce5aef01be30b15e9374e7a84e1b0926dba13c3e9f8d36c54ca
-DIST curb-0.9.9.gem 87040 BLAKE2B 107c6486887c0c168a06b7cdad4cc01e34a85c7cfb20e8991db4c695e9dfe3700655d95dbc798e4eb3269586b86d61037d0e39a88c4d687e0e776a0e9cc27f0e SHA512 3f91004e109f9cc7c2d58fb7a6bc387d037237442b05ee52bad2944738eb24bf8d909ad7c21db965ba1e6291d08f0f2335c54a5c1a1ee1d224c5790e81dc8037
+DIST curb-1.0.5.gem 92160 BLAKE2B 395cdbb3255d5a38dfd472787785738dfff8ec7eed69e7b93ae2d993c90635d427a6275cd3510b406fccc7b999bdedf544cb4177132cc890f0473452ad1984c9 SHA512 0b90da7757ee37bd542e2ab31407235788f103e67c987fd820073eb70ecae7cea55cc5ecdc354145ead58cb9762db0f8f27416301fbca93bc0f7a7966a5d8a63
diff --git a/dev-ruby/curb/curb-0.9.10.ebuild b/dev-ruby/curb/curb-0.9.10.ebuild
deleted file mode 100644
index 37839c5e5854..000000000000
--- a/dev-ruby/curb/curb-0.9.10.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rake"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-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]"
-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
-
- # 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
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake -Cext CFLAGS="${CFLAGS} -fPIC" archflags="${LDFLAGS}" V=1
- cp -l ext/curb_core$(get_modname) lib || die
-}
diff --git a/dev-ruby/curb/curb-0.9.9.ebuild b/dev-ruby/curb/curb-0.9.9.ebuild
deleted file mode 100644
index d7cd3e302948..000000000000
--- a/dev-ruby/curb/curb-0.9.9.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rake"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-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]"
-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
-
- # 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
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake -Cext CFLAGS="${CFLAGS} -fPIC" archflags="${LDFLAGS}" V=1
- cp -l ext/curb_core$(get_modname) lib || die
-}
diff --git a/dev-ruby/curb/curb-1.0.5.ebuild b/dev-ruby/curb/curb-1.0.5.ebuild
new file mode 100644
index 000000000000..35bac119ac1e
--- /dev/null
+++ b/dev-ruby/curb/curb-1.0.5.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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
+
+ # Skip tests with currently unpackaged ruby_memcheck
+ sed -i -e '/ruby_memcheck/ s:^:#: ; /RubyMemcheck/,/^end/ s:^:#:' Rakefile
+}
diff --git a/dev-ruby/curb/metadata.xml b/dev-ruby/curb/metadata.xml
index ca5891cea587..37f65c9ed71b 100644
--- a/dev-ruby/curb/metadata.xml
+++ b/dev-ruby/curb/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/curses/Manifest b/dev-ruby/curses/Manifest
index 076cb3503113..44b378841d99 100644
--- a/dev-ruby/curses/Manifest
+++ b/dev-ruby/curses/Manifest
@@ -1,3 +1 @@
-DIST curses-1.2.7.gem 38912 BLAKE2B 8cf1b908aea6f2f0edccd26f4aa240d31ef7e0cce533e75d8ddb90e021672e73426f826373418e4a5e5348204833898143b8a6923e28c23e2362be8e64c78f25 SHA512 258fd46104fecf68c0a4f2ea6c7755ba6b0abcd1faf3853209b4587ee8694228611ba1194de5b05b3e8607503223bc675bbeb19677382b2ef630b4d0882cd32c
-DIST curses-1.3.0.gem 43008 BLAKE2B 0c4c5ff09cdc212e37c772ac7c01f82df409d2c4edad8bc2ee4d2e4318b39e2e0e1b29c89c7d059af10afe0268d03f9fa138d5c81efa6669824aa36e660e6eb8 SHA512 71d5f189dd51a29583cd0a4e236e515855fd50ea94a4aa94643f567d4b2b1422e69769ee4f8cd5774652614a3e50a58fc1b759a1a44ea68a6728efe88de9763d
-DIST curses-1.3.1.gem 43520 BLAKE2B 8368f8c763c853a2ce11048b7f0fe897dc350402fd9ee5e7647f7a5efb012fa1c7314fe5bf40e25e32b0712bb45c66976d334a900517a9611612b3775153e3b9 SHA512 e1914e598d7e9624bd2ed35329fab59cef33696ba67b76f3bf90a8b68854d76423cb3b4f441b356789907932a0467c3fd9894f641a40a45353391f782a166347
+DIST curses-1.4.4.gem 524800 BLAKE2B 00749022a097a69b8a1a42b88b64a81a60cd6e6914dbc0636a1ed17db6f7b3f1f0e583b965b9b296ff27a5dc97786024f0511b2ed59e337ef29a799dda0fc577 SHA512 5e275b7bc035c9745ed19d563da97aba090f66d4831a4cf07144ff29f3b49a36bbee592e1292719d6bcfd1f6a77d2955de5d7e5ff34ce487d574482a0cee1a53
diff --git a/dev-ruby/curses/curses-1.2.7.ebuild b/dev-ruby/curses/curses-1.2.7.ebuild
deleted file mode 100644
index d02da1d76f63..000000000000
--- a/dev-ruby/curses/curses-1.2.7.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby binding for curses, ncurses, and PDCurses"
-HOMEPAGE="https://github.com/ruby/curses"
-LICENSE="|| ( Ruby BSD-2 )"
-
-KEYWORDS="~amd64 ~x86"
-
-SLOT="1"
-IUSE=""
-
-DEPEND+=" sys-libs/ncurses:0"
-RDEPEND+=" sys-libs/ncurses:0"
-
-each_ruby_configure() {
- ${RUBY} -Cext/curses extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/curses
- cp ext/curses/curses.so lib/ || die
-}
diff --git a/dev-ruby/curses/curses-1.3.0.ebuild b/dev-ruby/curses/curses-1.3.0.ebuild
deleted file mode 100644
index d02da1d76f63..000000000000
--- a/dev-ruby/curses/curses-1.3.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby binding for curses, ncurses, and PDCurses"
-HOMEPAGE="https://github.com/ruby/curses"
-LICENSE="|| ( Ruby BSD-2 )"
-
-KEYWORDS="~amd64 ~x86"
-
-SLOT="1"
-IUSE=""
-
-DEPEND+=" sys-libs/ncurses:0"
-RDEPEND+=" sys-libs/ncurses:0"
-
-each_ruby_configure() {
- ${RUBY} -Cext/curses extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/curses
- cp ext/curses/curses.so lib/ || die
-}
diff --git a/dev-ruby/curses/curses-1.3.1.ebuild b/dev-ruby/curses/curses-1.3.1.ebuild
deleted file mode 100644
index e94765c565b4..000000000000
--- a/dev-ruby/curses/curses-1.3.1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby binding for curses, ncurses, and PDCurses"
-HOMEPAGE="https://github.com/ruby/curses"
-LICENSE="|| ( Ruby BSD-2 )"
-
-KEYWORDS="~amd64 ~x86"
-
-SLOT="1"
-IUSE=""
-
-DEPEND+=" sys-libs/ncurses:0"
-RDEPEND+=" sys-libs/ncurses:0"
-
-each_ruby_configure() {
- ${RUBY} -Cext/curses extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/curses
- cp ext/curses/curses.so lib/ || die
-}
diff --git a/dev-ruby/curses/curses-1.4.4.ebuild b/dev-ruby/curses/curses-1.4.4.ebuild
new file mode 100644
index 000000000000..be1f2747cd7f
--- /dev/null
+++ b/dev-ruby/curses/curses-1.4.4.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/curses/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby binding for curses, ncurses, and PDCurses"
+HOMEPAGE="https://github.com/ruby/curses"
+LICENSE="|| ( Ruby BSD-2 )"
+
+KEYWORDS="~amd64 ~riscv ~x86"
+
+SLOT="1"
+IUSE=""
+
+DEPEND+=" sys-libs/ncurses:0"
+RDEPEND+=" sys-libs/ncurses:0"
+
+each_ruby_test() {
+ # No specs so we use the smoketest that upstream use in CI:
+ # https://github.com/ruby/curses/blob/master/.github/workflows/ubuntu.yml#L26
+ ${RUBY} -Ilib:ext/curses:. -r curses -e 'puts Curses::VERSION' || die
+}
diff --git a/dev-ruby/curses/metadata.xml b/dev-ruby/curses/metadata.xml
index 9515523604c6..0559ab7e79c1 100644
--- a/dev-ruby/curses/metadata.xml
+++ b/dev-ruby/curses/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/d3_rails/Manifest b/dev-ruby/d3_rails/Manifest
deleted file mode 100644
index 7230ff36857f..000000000000
--- a/dev-ruby/d3_rails/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST d3_rails-4.1.1.gem 134656 BLAKE2B 7890c080fbf9c274a843ec49bf75eb33c29e9aced1a56c3251d46c89148fe03a055c8a14b02123b89f06bb54492d0ecfcdcec12e0d21506e8974bfa43662ba09 SHA512 3ca04e9827a7d9df92b377fbfb354b0802bf408495e3220773fcdb782c9de8dbb3421442ca2c250fc787223ca1e489edb26472fdc7c86dc70ebab3b8c2035572
diff --git a/dev-ruby/d3_rails/d3_rails-4.1.1.ebuild b/dev-ruby/d3_rails/d3_rails-4.1.1.ebuild
deleted file mode 100644
index 2087420d9747..000000000000
--- a/dev-ruby/d3_rails/d3_rails-4.1.1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_EXTRAINSTALL="app"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby on Rails integration for the Javascript Data Visualization Framework, D3"
-HOMEPAGE="https://github.com/logical42/d3_rails"
-
-LICENSE="MIT BSD"
-SLOT="4"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/railties-3.1:*"
diff --git a/dev-ruby/d3_rails/metadata.xml b/dev-ruby/d3_rails/metadata.xml
deleted file mode 100644
index 41011b7a8819..000000000000
--- a/dev-ruby/d3_rails/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">logical42/d3_rails</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/daemon_controller/Manifest b/dev-ruby/daemon_controller/Manifest
deleted file mode 100644
index 0c84d0a33303..000000000000
--- a/dev-ruby/daemon_controller/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST daemon_controller-1.2.0.gem 37888 BLAKE2B c320d92cd3515f861e775eab72726469d7b6ed3cfd1655a67bf11458ef1ba5b43f72b8ba600f5c953b99c18f99549a48d0648b387abda45a87de99d2c9d955c5 SHA512 d22b5f37a41f2fab642cc7a6f5b5ea8a892d2c8b9eda04c9a547ee3aab3148a8897bc4737fd30fd9eb6e2a4fba458ea5811024fb5ad71b7959f3996dfa7b7705
diff --git a/dev-ruby/daemon_controller/daemon_controller-1.2.0-r1.ebuild b/dev-ruby/daemon_controller/daemon_controller-1.2.0-r1.ebuild
deleted file mode 100644
index f16b0169ede2..000000000000
--- a/dev-ruby/daemon_controller/daemon_controller-1.2.0-r1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Library to start and stop specific daemons programmatically in a robust manner"
-HOMEPAGE="https://github.com/FooBarWidget/daemon_controller"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-all_ruby_prepare() {
- # fix tests with RSpec 2
- sed -i -e '1irequire "thread"' spec/test_helper.rb || die
-}
diff --git a/dev-ruby/daemon_controller/metadata.xml b/dev-ruby/daemon_controller/metadata.xml
deleted file mode 100644
index 4fe342e20c32..000000000000
--- a/dev-ruby/daemon_controller/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">FooBarWidget/daemon_controller</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/daemons/Manifest b/dev-ruby/daemons/Manifest
index 86a8746ecc95..9ac0a831676f 100644
--- a/dev-ruby/daemons/Manifest
+++ b/dev-ruby/daemons/Manifest
@@ -1,3 +1 @@
-DIST daemons-1.2.6.tar.gz 27557 BLAKE2B 7c08b637ab37f764309fd260c4ea6c11402b89ea327eb47ea0af3860397ece795467a11c4ae5d8577972f5d8e2c6590f4d8112027f06db941b7181e33c158736 SHA512 8276685a684093252bf136c552a613a5208f4ab34f178be9425c62ea59fe1eebe671a7dd6c57d30744187b9ae58d7a7f1ebf58468e988565a30ca4417f2a90ea
-DIST daemons-1.3.0.tar.gz 28692 BLAKE2B 63764fdaae20e789ff77ac3a2a6b8d6d6d1548abcc2683a9a52080490166abef507dbe45ec5b3cf4c190abe366f00cac238eb3d7a34e701e7e761fe986fd949e SHA512 110b925c458ee92c2497c924b080297609ad4bec3944926011405c67532b80cd4e1ba0a414919db0a48a158e4fdf6c15d3b17e8db350f1c5d1cdced32f52d198
-DIST daemons-1.3.1.tar.gz 28805 BLAKE2B 4ddb9cb9a5a6de5ebeac8ac69c2712500f9dd18c9d194efce3152735533a2aef7a4cf0e034e4c1781e5d89c1be18e7e7c119455bafb0bf4d8cec279b1e8f6308 SHA512 ceeeefbf44727a1ee43b651bbc3f8e5ae83c73388d017d240d95624586b91a3b32602464f4a5ff53a854d6cc6fa1dc47e433a665f0ad7f08e440c0a798743d80
+DIST daemons-1.4.1.tar.gz 29310 BLAKE2B 4f376f0a1a9322d95b32b74862beae93ae5d8636c0d321b059c335053760077b6ba78780cc4c22d5e98fbb95e2dffb85fd5ccfb1dc5152653698c29a0ac86577 SHA512 5b55f644a53efe93a6bb80ca534207c7a847a7c21df127d17ba6f09e2c2d8c665d87e6355382d2d51c3c9f50741fa9a31f5bfd228d9bb45ba8d5d099b7b5d026
diff --git a/dev-ruby/daemons/daemons-1.2.6.ebuild b/dev-ruby/daemons/daemons-1.2.6.ebuild
deleted file mode 100644
index f9541d84a5b3..000000000000
--- a/dev-ruby/daemons/daemons-1.2.6.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="Releases README.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Wrap existing ruby scripts to be run as a daemon"
-HOMEPAGE="https://github.com/thuehlinger/daemons"
-SRC_URI="https://github.com/thuehlinger/daemons/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ia64 ppc ppc64 ~sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
-IUSE="examples"
-
-all_ruby_prepare() {
- sed -i -e '/\(pry\|simplecov\)/I s:^:#:' spec/spec_helper.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- use examples || return
-
- insinto /usr/share/doc/${PF}/
- doins -r examples
-}
diff --git a/dev-ruby/daemons/daemons-1.3.0.ebuild b/dev-ruby/daemons/daemons-1.3.0.ebuild
deleted file mode 100644
index c11106d3dddc..000000000000
--- a/dev-ruby/daemons/daemons-1.3.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="Releases README.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Wrap existing ruby scripts to be run as a daemon"
-HOMEPAGE="https://github.com/thuehlinger/daemons"
-SRC_URI="https://github.com/thuehlinger/daemons/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
-IUSE="examples"
-
-all_ruby_prepare() {
- sed -i -e '/\(pry\|simplecov\)/I s:^:#:' spec/spec_helper.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- use examples || return
-
- insinto /usr/share/doc/${PF}/
- doins -r examples
-}
diff --git a/dev-ruby/daemons/daemons-1.3.1.ebuild b/dev-ruby/daemons/daemons-1.3.1.ebuild
deleted file mode 100644
index 993386b96395..000000000000
--- a/dev-ruby/daemons/daemons-1.3.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="Releases README.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Wrap existing ruby scripts to be run as a daemon"
-HOMEPAGE="https://github.com/thuehlinger/daemons"
-SRC_URI="https://github.com/thuehlinger/daemons/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
-IUSE="examples"
-
-all_ruby_prepare() {
- sed -i -e '/\(pry\|simplecov\)/I s:^:#:' spec/spec_helper.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- use examples || return
-
- insinto /usr/share/doc/${PF}/
- doins -r examples
-}
diff --git a/dev-ruby/daemons/daemons-1.4.1.ebuild b/dev-ruby/daemons/daemons-1.4.1.ebuild
new file mode 100644
index 000000000000..5d257fb36dc3
--- /dev/null
+++ b/dev-ruby/daemons/daemons-1.4.1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="Releases README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="daemons.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Wrap existing ruby scripts to be run as a daemon"
+HOMEPAGE="https://github.com/thuehlinger/daemons"
+SRC_URI="https://github.com/thuehlinger/daemons/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~hppa ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="examples"
+
+all_ruby_prepare() {
+ sed -i -e '/\(pry\|simplecov\)/I s:^:#:' spec/spec_helper.rb || die
+ sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ use examples && dodoc -r examples
+}
diff --git a/dev-ruby/daemons/metadata.xml b/dev-ruby/daemons/metadata.xml
index 36c3d175d38d..90d0fc10e721 100644
--- a/dev-ruby/daemons/metadata.xml
+++ b/dev-ruby/daemons/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/dalli/Manifest b/dev-ruby/dalli/Manifest
index cf42770b2409..b4c8649bea05 100644
--- a/dev-ruby/dalli/Manifest
+++ b/dev-ruby/dalli/Manifest
@@ -1,3 +1,4 @@
-DIST dalli-2.7.10.tar.gz 52106 BLAKE2B 0531247c1d615acd7d1124b8aceb5635088b55e5a85753f10b8fbd786ec3573f13df096e1537d9a31f3801632406f28d918de5971cb28ec31d6eb8387d0c74f1 SHA512 1b6308ef37d729d85741306c10bf87c9b9733f83f0b4bf089f3eced36c48cddd9a77d2fb44a77778844d1cafaa3cec5110a9c90f6a67dee08a96e163e6ccaf65
-DIST dalli-2.7.8.tar.gz 51599 BLAKE2B 935fc1b0ffb2c93c0ef8ab6a82e63b4e272c51ae6c2cbd0c670953c0943942c25b4c795ca7953ad4e53284f6b6e35b44be386ec4dba0c96345256e3b3173152d SHA512 5fa48a01db15fdafa179663b71867dd6a9c2ab7b4b94434f650c1ce37bd71caa2bb22efe032a4eed777538cdc341f22a251d14772aaba62f4a6d9d8c33b6a346
-DIST dalli-2.7.9.tar.gz 51971 BLAKE2B ddf0286cd4edd1298d0cc759b5e5de1e60bb1ea1f8fbfdab559a09e716a0384c2bf5c70c6922d1b0d15df1af4de83eee16965a6d6f0543fbd5a0850464fb9f11 SHA512 38d4bb0a9c15175cdb77e40a0131c4e2caecc5b39b6fa15604aff8f1808429d2bf021f8817e9c2448007d5fb1dc50ea61c679a5a47ca54869d71391ec522f419
+DIST dalli-3.2.5.tar.gz 72496 BLAKE2B 2a8665aad98629ccab873a2b6b6661304b25dd2374ed3685f97dee83bf43c604088e43229ced951453d889fab7a1ec35b7fb3f0028858cf890a6013ac82b64c1 SHA512 ace079e3c9f7c30e2f266a07f87e58cbf4276f5ca4744ade76782a6a6047296bf5e23d40a4c1f4596b1eb150501c460f7cf89b33f308a774bcfe5825ec635760
+DIST dalli-3.2.6.tar.gz 72683 BLAKE2B d3cf252862d796cb0e8320df0b35af91678949b1dc564054585252e98caed70681609857b7606663b4bda08a27112bc1d51779fc29ef045d0ec087ba80d6dfdd SHA512 93aa808123adb671c096543271407e497770a8f7481a961f48f11493f3a313113f0ec7829708d7352c0ade1f02a9842ecfc22ba7d93beb138db981d2bd1b94a9
+DIST dalli-3.2.7.tar.gz 73058 BLAKE2B 8baba122e1bba1254e38ed021ac0c494c27bccf65d99aa16f379824073457e2eb7f79b2e9ec4cb49153b682c48d6bdfdcbe64966a286dba7b45349ace81ca4a1 SHA512 771bb0863e86cd7c252cfc1a688dd820b3efd24d6038be8789e2d4c2604703b78b64d36d0b32bb81001d625fc116eb86b4421cb3b32de8918912a3995e68ee70
+DIST dalli-3.2.8.tar.gz 73367 BLAKE2B 1680fda0d272d135f8e88a0ea2e16a08cd1027808f0503334b8c53dd85472cc7c37df3649623f8347169f5b8cd645c9a1a4d98343e45d4369ce8d08cc1306316 SHA512 85a0d8121fd0e539b0fd6c15716971d91e91741d36850cf8e887d8fef17d6b49ea6036ce66c986aafd008aa0e744cd798bc574e9376383b9af33b0971e31e25c
diff --git a/dev-ruby/dalli/dalli-2.7.10.ebuild b/dev-ruby/dalli/dalli-2.7.10.ebuild
deleted file mode 100644
index 8b3be58fb6ba..000000000000
--- a/dev-ruby/dalli/dalli-2.7.10.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.md Performance.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A high performance pure Ruby client for accessing memcached servers"
-HOMEPAGE="https://github.com/petergoldstein/dalli"
-SRC_URI="https://github.com/petergoldstein/dalli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-DEPEND+="${DEPEND} test? ( >=net-misc/memcached-1.5.4 )"
-
-ruby_add_bdepend "test? (
- dev-ruby/minitest:5
- >=dev-ruby/mocha-0.13
- dev-ruby/rack
- dev-ruby/activesupport:5.2
- dev-ruby/connection_pool )"
-
-all_ruby_prepare() {
- chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
-
- sed -i -e '/\(appraisal\|bundler\)/ s:^:#:' Rakefile || die
-
- sed -i -e '3igem "minitest", "~> 5.0"; gem "activesupport", "~>5.2.0"' \
- -e '/bundler/ s:^:#:' test/helper.rb || die
-
- # Drop rails dependency which is only used to display the version
- # number, so we only need to depend on activesupport and avoid
- # complicated circular dependencies.
- sed -i -e '/rails/I s:^:#:' \
- -e '14irequire "active_support"' test/helper.rb || die
-
- # Fix test compatability with memcached 1.5.4 and higher
- # https://github.com/petergoldstein/dalli/pull/672
- sed -i -e '/memcached_low_mem_persistent/,/^end/ s/-M/-M -I 512k/' test/memcached_mock.rb || die
-}
diff --git a/dev-ruby/dalli/dalli-2.7.8-r1.ebuild b/dev-ruby/dalli/dalli-2.7.8-r1.ebuild
deleted file mode 100644
index ad86c5b8fe76..000000000000
--- a/dev-ruby/dalli/dalli-2.7.8-r1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.md Performance.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A high performance pure Ruby client for accessing memcached servers"
-HOMEPAGE="https://github.com/petergoldstein/dalli"
-SRC_URI="https://github.com/petergoldstein/dalli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-DEPEND+="${DEPEND} test? ( >=net-misc/memcached-1.4.0 )"
-
-ruby_add_bdepend "test? (
- dev-ruby/minitest:5
- >=dev-ruby/mocha-0.13
- dev-ruby/rack
- >=dev-ruby/activesupport-4.2 <dev-ruby/activesupport-5.2
- dev-ruby/connection_pool )"
-
-all_ruby_prepare() {
- chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
-
- sed -i -e '/\(appraisal\|bundler\)/ s:^:#:' Rakefile || die
-
- sed -i -e '3igem "minitest", "~> 5.0"; gem "activesupport", "< 5.2"' \
- -e '/bundler/ s:^:#:' test/helper.rb || die
-
- # Drop rails dependency which is only used to display the version
- # number, so we only need to depend on activesupport and avoid
- # complicated circular dependencies.
- sed -i -e '/rails/I s:^:#:' \
- -e '14irequire "active_support"' test/helper.rb || die
-}
diff --git a/dev-ruby/dalli/dalli-2.7.9.ebuild b/dev-ruby/dalli/dalli-2.7.9.ebuild
deleted file mode 100644
index dcd9944f6e06..000000000000
--- a/dev-ruby/dalli/dalli-2.7.9.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.md Performance.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A high performance pure Ruby client for accessing memcached servers"
-HOMEPAGE="https://github.com/petergoldstein/dalli"
-SRC_URI="https://github.com/petergoldstein/dalli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-DEPEND+="${DEPEND} test? ( >=net-misc/memcached-1.5.4 )"
-
-ruby_add_bdepend "test? (
- dev-ruby/minitest:5
- >=dev-ruby/mocha-0.13
- dev-ruby/rack
- dev-ruby/activesupport:5.2
- dev-ruby/connection_pool )"
-
-all_ruby_prepare() {
- chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
-
- sed -i -e '/\(appraisal\|bundler\)/ s:^:#:' Rakefile || die
-
- sed -i -e '3igem "minitest", "~> 5.0"; gem "activesupport", "~>5.2.0"' \
- -e '/bundler/ s:^:#:' test/helper.rb || die
-
- # Drop rails dependency which is only used to display the version
- # number, so we only need to depend on activesupport and avoid
- # complicated circular dependencies.
- sed -i -e '/rails/I s:^:#:' \
- -e '14irequire "active_support"' test/helper.rb || die
-
- # Fix test compatability with memcached 1.5.4 and higher
- # https://github.com/petergoldstein/dalli/pull/672
- sed -i -e '/memcached_low_mem_persistent/,/^end/ s/-M/-M -I 512k/' test/memcached_mock.rb || die
-}
diff --git a/dev-ruby/dalli/dalli-3.2.5.ebuild b/dev-ruby/dalli/dalli-3.2.5.ebuild
new file mode 100644
index 000000000000..6d0b4ea322a8
--- /dev/null
+++ b/dev-ruby/dalli/dalli-3.2.5.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true test"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md Performance.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A high performance pure Ruby client for accessing memcached servers"
+HOMEPAGE="https://github.com/petergoldstein/dalli"
+SRC_URI="https://github.com/petergoldstein/dalli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 x86"
+IUSE=""
+
+DEPEND+="${DEPEND} test? ( >=net-misc/memcached-1.5.4[ssl(-)] )"
+
+ruby_add_bdepend "test? (
+ dev-ruby/connection_pool
+ dev-ruby/minitest:5
+ dev-ruby/rack:2.2
+)"
+
+all_ruby_prepare() {
+ chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
+
+ sed -i -e '/\(appraisal\|bundler\)/ s:^:#:' Rakefile || die
+
+ sed -i -e '3igem "minitest", "~> 5.0"; gem "rack", "~> 2.2.0"; require "dalli"' \
+ -e '/bundler/ s:^:#:' test/helper.rb || die
+
+ sed -i -e "s:/tmp:${T}:" test/utils/certificate_generator.rb || die
+}
diff --git a/dev-ruby/dalli/dalli-3.2.6.ebuild b/dev-ruby/dalli/dalli-3.2.6.ebuild
new file mode 100644
index 000000000000..9e4f2ecb1ef2
--- /dev/null
+++ b/dev-ruby/dalli/dalli-3.2.6.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true test"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md Performance.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A high performance pure Ruby client for accessing memcached servers"
+HOMEPAGE="https://github.com/petergoldstein/dalli"
+SRC_URI="https://github.com/petergoldstein/dalli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
+IUSE=""
+
+DEPEND+="${DEPEND} test? ( >=net-misc/memcached-1.5.4[ssl(-)] )"
+
+ruby_add_bdepend "test? (
+ dev-ruby/connection_pool
+ dev-ruby/minitest:5
+ dev-ruby/rack
+ dev-ruby/rack-session
+)"
+
+all_ruby_prepare() {
+ chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
+
+ sed -i -e '/\(appraisal\|bundler\)/ s:^:#:' Rakefile || die
+
+ sed -i -e '3igem "minitest", "~> 5.0"; require "dalli"' \
+ -e '/bundler/ s:^:#:' test/helper.rb || die
+
+ sed -i -e "s:/tmp:${T}:" test/utils/certificate_generator.rb || die
+}
diff --git a/dev-ruby/dalli/dalli-3.2.7.ebuild b/dev-ruby/dalli/dalli-3.2.7.ebuild
new file mode 100644
index 000000000000..41af68f1391e
--- /dev/null
+++ b/dev-ruby/dalli/dalli-3.2.7.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true test"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md Performance.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A high performance pure Ruby client for accessing memcached servers"
+HOMEPAGE="https://github.com/petergoldstein/dalli"
+SRC_URI="https://github.com/petergoldstein/dalli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
+IUSE="test"
+
+DEPEND+="${DEPEND} test? ( >=net-misc/memcached-1.5.4[ssl(-)] )"
+
+ruby_add_bdepend "test? (
+ dev-ruby/connection_pool
+ dev-ruby/minitest:5
+ dev-ruby/rack
+ dev-ruby/rack-session
+)"
+
+all_ruby_prepare() {
+ chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
+
+ sed -i -e '/\(appraisal\|bundler\)/ s:^:#:' Rakefile || die
+
+ sed -i -e '3igem "minitest", "~> 5.0"; require "dalli"' \
+ -e '/bundler/ s:^:#:' test/helper.rb || die
+
+ sed -i -e "s:/tmp:${T}:" test/utils/certificate_generator.rb || die
+}
diff --git a/dev-ruby/dalli/dalli-3.2.8.ebuild b/dev-ruby/dalli/dalli-3.2.8.ebuild
new file mode 100644
index 000000000000..41af68f1391e
--- /dev/null
+++ b/dev-ruby/dalli/dalli-3.2.8.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true test"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md Performance.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A high performance pure Ruby client for accessing memcached servers"
+HOMEPAGE="https://github.com/petergoldstein/dalli"
+SRC_URI="https://github.com/petergoldstein/dalli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
+IUSE="test"
+
+DEPEND+="${DEPEND} test? ( >=net-misc/memcached-1.5.4[ssl(-)] )"
+
+ruby_add_bdepend "test? (
+ dev-ruby/connection_pool
+ dev-ruby/minitest:5
+ dev-ruby/rack
+ dev-ruby/rack-session
+)"
+
+all_ruby_prepare() {
+ chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
+
+ sed -i -e '/\(appraisal\|bundler\)/ s:^:#:' Rakefile || die
+
+ sed -i -e '3igem "minitest", "~> 5.0"; require "dalli"' \
+ -e '/bundler/ s:^:#:' test/helper.rb || die
+
+ sed -i -e "s:/tmp:${T}:" test/utils/certificate_generator.rb || die
+}
diff --git a/dev-ruby/dalli/metadata.xml b/dev-ruby/dalli/metadata.xml
index ae5d1e0f958e..47f4e762759b 100644
--- a/dev-ruby/dalli/metadata.xml
+++ b/dev-ruby/dalli/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/database_cleaner-active_record/Manifest b/dev-ruby/database_cleaner-active_record/Manifest
new file mode 100644
index 000000000000..64275e34ca96
--- /dev/null
+++ b/dev-ruby/database_cleaner-active_record/Manifest
@@ -0,0 +1 @@
+DIST database_cleaner-active_record-2.1.0.gem 13312 BLAKE2B 7afa419e19d621cfe089a790f8562f9da521d53e1683de080ab1296fd30024ac2d284777fbb374145f7e7b455b2561aac21d998b65f2cfa36da2d3f1ac76cbbe SHA512 4472a2217c0edf3fda63fa2cba7536c68764f71b6da7ec6b6d1e5a6627ff62ebfee093b17603eb287adf9eb68e8168aa06b50f87c3427153e84a163d1f68ae28
diff --git a/dev-ruby/database_cleaner-active_record/database_cleaner-active_record-2.1.0.ebuild b/dev-ruby/database_cleaner-active_record/database_cleaner-active_record-2.1.0.ebuild
new file mode 100644
index 000000000000..139ccfc602f8
--- /dev/null
+++ b/dev-ruby/database_cleaner-active_record/database_cleaner-active_record-2.1.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+# There are specs and features but they all require configured databases.
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Strategies for cleaning databases using ActiveRecord"
+HOMEPAGE="https://github.com/DatabaseCleaner/database_cleaner-active_record"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ || ( dev-ruby/activerecord:6.1 )
+ dev-ruby/database_cleaner-core:2.0
+"
diff --git a/dev-ruby/database_cleaner-active_record/metadata.xml b/dev-ruby/database_cleaner-active_record/metadata.xml
new file mode 100644
index 000000000000..e18d50349cb2
--- /dev/null
+++ b/dev-ruby/database_cleaner-active_record/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">DatabaseCleaner/database_cleaner</remote-id>
+ <remote-id type="rubygems">database_cleaner-active_record</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/database_cleaner-core/Manifest b/dev-ruby/database_cleaner-core/Manifest
new file mode 100644
index 000000000000..2747691821d6
--- /dev/null
+++ b/dev-ruby/database_cleaner-core/Manifest
@@ -0,0 +1 @@
+DIST database_cleaner-core-2.0.1.gem 23552 BLAKE2B d6386dac8bff0cc5759e115c4986bdf8113d1f6c7d9b315c287716da3ada808354800b32f3c06b2761ab5df631d38d57d67c36bce0d88b9551f1aeaaf87c3211 SHA512 a161e3d0a03e2b854af1a670136fc1b1113d2ee7f5beba01e3c7257a441f80f2a54ae1a4d6c68514d9b6880b834093057ca4e5af9f9e8dff44730d049f7800c2
diff --git a/dev-ruby/database_cleaner-core/database_cleaner-core-2.0.1-r1.ebuild b/dev-ruby/database_cleaner-core/database_cleaner-core-2.0.1-r1.ebuild
new file mode 100644
index 000000000000..6d12cf4ee0fc
--- /dev/null
+++ b/dev-ruby/database_cleaner-core/database_cleaner-core-2.0.1-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.markdown"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Strategies for cleaning databases"
+HOMEPAGE="https://github.com/DatabaseCleaner/database_cleaner"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
diff --git a/dev-ruby/database_cleaner-core/metadata.xml b/dev-ruby/database_cleaner-core/metadata.xml
new file mode 100644
index 000000000000..da86a1c09f5c
--- /dev/null
+++ b/dev-ruby/database_cleaner-core/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">DatabaseCleaner/database_cleaner</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/database_cleaner/Manifest b/dev-ruby/database_cleaner/Manifest
index d94dc3053ee8..262aae73ba55 100644
--- a/dev-ruby/database_cleaner/Manifest
+++ b/dev-ruby/database_cleaner/Manifest
@@ -1 +1 @@
-DIST database_cleaner-1.7.0.gem 32256 BLAKE2B 496a1f02bb34aa2210e91367ade3575884e5c68ed18d1ba076fe8a5a7b0c5303a8acedec198a3de4adeb8f85cb2147d1c1d3c1f7badfb890ca1c7df8ecd7eae7 SHA512 4bdf6c66a0530a65ce2c746ff5190ef0aa42ab3d3ed787fbfe9c00de99d7ba816de3b6ad11cbaf4887760b9a19178f9968b8d604bc023dce83ec9ef748c0e336
+DIST database_cleaner-2.0.2.gem 4608 BLAKE2B 893c17ee9d91201c84c682f38fd4175467157d9f0cbe1ba45c7e41476054174f9e80ff38e83a7a3ebc620b3a56ca2be00e8da6ef17b363a43936441d95e64b76 SHA512 4fd2be039f7e21c766bc20b9a8f20153d6ce45e5b8bf1a3927432da73abe3b36adc1a7b71c5cfbc05cff54652cf67327ed03a197692cf3d86ca22fabcb60fa25
diff --git a/dev-ruby/database_cleaner/database_cleaner-1.7.0.ebuild b/dev-ruby/database_cleaner/database_cleaner-1.7.0.ebuild
deleted file mode 100644
index 65499b47e03f..000000000000
--- a/dev-ruby/database_cleaner/database_cleaner-1.7.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_TASK_DOC="examples"
-
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.markdown TODO"
-
-# There are specs and features but they all require configured databases.
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Strategies for cleaning databases"
-HOMEPAGE="https://github.com/bmabey/database_cleaner"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
diff --git a/dev-ruby/database_cleaner/database_cleaner-2.0.2.ebuild b/dev-ruby/database_cleaner/database_cleaner-2.0.2.ebuild
new file mode 100644
index 000000000000..b044ed3bd1b9
--- /dev/null
+++ b/dev-ruby/database_cleaner/database_cleaner-2.0.2.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+# There are specs and features but they all require configured databases.
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Strategies for cleaning databases"
+HOMEPAGE="https://github.com/DatabaseCleaner/database_cleaner"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+
+ruby_add_rdepend "dev-ruby/database_cleaner-active_record:2.1"
diff --git a/dev-ruby/database_cleaner/metadata.xml b/dev-ruby/database_cleaner/metadata.xml
index 6a776703d323..da86a1c09f5c 100644
--- a/dev-ruby/database_cleaner/metadata.xml
+++ b/dev-ruby/database_cleaner/metadata.xml
@@ -1,15 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">bmabey/database_cleaner</remote-id>
+ <remote-id type="github">DatabaseCleaner/database_cleaner</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/date/Manifest b/dev-ruby/date/Manifest
new file mode 100644
index 000000000000..b1c73b24510f
--- /dev/null
+++ b/dev-ruby/date/Manifest
@@ -0,0 +1,2 @@
+DIST date-3.3.3.tar.gz 109793 BLAKE2B c7ee6337a520172b692a48c963a67d7fe7f6f56dd6ea5a957eda32d7c21fee7d02d0616f39c32abf61ae5f33f6507c508e98c568fd8f7baf300dfc5658945917 SHA512 a2224fa191fd688593af29b95e40f67e9fb9acea93b7de613d9c4b105343434a9ef30f32599cd6af243dd3e35a9bf1f60b722e6a0bc4393e26e83734196e8193
+DIST date-3.3.4.tar.gz 99252 BLAKE2B a8fe8f4a716bb4247f00b94f2c9564a34df8fdd43d2345cfc529541bbfbf0549df1e0aac0d120de6b4cc6e6ea8e6fc38ee87cc36b16ddafb2c4589b8e96c04bd SHA512 d8b71c56316224ef7d5f0c7515adc9540eea784daa49f3c130dbbe1fcd2a90abc85b153bbca66809666c817597733f03f5acc06e883878ecc5ede3eab398c348
diff --git a/dev-ruby/date/date-3.3.3.ebuild b/dev-ruby/date/date-3.3.3.ebuild
new file mode 100644
index 000000000000..b5e1a3cf4ece
--- /dev/null
+++ b/dev-ruby/date/date-3.3.3.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/date/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="date.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A subclass of Object includes Comparable module for handling dates"
+HOMEPAGE="https://github.com/ruby/date"
+SRC_URI="https://github.com/ruby/date/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/date/date-3.3.4.ebuild b/dev-ruby/date/date-3.3.4.ebuild
new file mode 100644
index 000000000000..7b87d468a8bd
--- /dev/null
+++ b/dev-ruby/date/date-3.3.4.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/date/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="date.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A subclass of Object includes Comparable module for handling dates"
+HOMEPAGE="https://github.com/ruby/date"
+SRC_URI="https://github.com/ruby/date/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/date/metadata.xml b/dev-ruby/date/metadata.xml
new file mode 100644
index 000000000000..5f05b08cb0a8
--- /dev/null
+++ b/dev-ruby/date/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/date</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/date_validator/Manifest b/dev-ruby/date_validator/Manifest
index aa4423913dac..4e51a0081efa 100644
--- a/dev-ruby/date_validator/Manifest
+++ b/dev-ruby/date_validator/Manifest
@@ -1 +1 @@
-DIST date_validator-0.9.0.gem 12288 BLAKE2B 1a180a88ce4669a29381fae8c9a2407a9026404d0aa2d7be24566ab1f35dfc4a2c17c0c06556c3388e49198dc6bfc11425c2f899c46bcec8a39d6b284269b4e0 SHA512 da7c06d22375cb5ce0e3a1c7d8c84d03c60f5564329d7a6adca4448d386bd26341786e97e6d74d6c7ba820c4437fe88f6dea1e20312b07714f28557bb863c051
+DIST date_validator-0.12.0.gem 12800 BLAKE2B 235434dbd7e4441698bc90e0dd37bf9e5b8f1f742424e8155876e677e5d7dbe7beb4edd2f7dda7dba2729a024dcda72ac816e4f6a7dd38fdfaa4ea79f21d078e SHA512 e7796375d6d6af2fc9ce6e7d6174d59bd35ddbac90c4e5b54b321e33ed25f3e816c58013fa61f2003724e87fc96495ce81c132d056c9c9331bd1a236eb7dec38
diff --git a/dev-ruby/date_validator/date_validator-0.12.0.ebuild b/dev-ruby/date_validator/date_validator-0.12.0.ebuild
new file mode 100644
index 000000000000..8b174b7e9552
--- /dev/null
+++ b/dev-ruby/date_validator/date_validator-0.12.0.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="test"
+
+RUBY_FAKEGEM_TASK_DOC="docs"
+RUBY_FAKEGEM_EXTRADOC="Readme.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+# if ever needed
+#GITHUB_USER="codegram"
+#GITHUB_PROJECT="${PN}"
+#RUBY_S="${GITHUB_USER}-${GITHUB_PROJECT}-*"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple, ORM agnostic, Ruby 1.9 compatible date validator for Rails"
+HOMEPAGE="https://github.com/codegram/date_validator"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/activemodel-3.0:*
+ >=dev-ruby/activesupport-3.0:*
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/minitest
+ >=dev-ruby/tzinfo-0.3
+ >=dev-ruby/activesupport-3.0
+ )
+ doc? ( dev-ruby/yard )"
+
+all_ruby_prepare() {
+ sed -i \
+ -e '/git ls-files/d' \
+ ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i \
+ -e '/[Bb]undler/s/^/#/' Rakefile || die
+ # Fix tests
+ sed -i -e "1irequire 'active_support'; require 'active_support/core_ext/time/zones'" test/test_helper.rb || die
+}
diff --git a/dev-ruby/date_validator/date_validator-0.9.0.ebuild b/dev-ruby/date_validator/date_validator-0.9.0.ebuild
deleted file mode 100644
index 6a8969c17220..000000000000
--- a/dev-ruby/date_validator/date_validator-0.9.0.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_TASK_DOC="docs"
-RUBY_FAKEGEM_EXTRADOC="Readme.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-# if ever needed
-#GITHUB_USER="codegram"
-#GITHUB_PROJECT="${PN}"
-#RUBY_S="${GITHUB_USER}-${GITHUB_PROJECT}-*"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Simple, ORM agnostic, Ruby 1.9 compatible date validator for Rails 3"
-HOMEPAGE="https://github.com/codegram/date_validator"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activemodel-3.0:*
-"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/minitest
- >=dev-ruby/tzinfo-0.3
- >=dev-ruby/activesupport-3.0
- )
- doc? ( dev-ruby/yard )"
-
-all_ruby_prepare() {
- sed -i \
- -e '/git ls-files/d' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i \
- -e '/[Bb]undler/s/^/#/' Rakefile || die
- # Fix tests
- sed -i -e "1irequire 'active_support'" test/test_helper.rb || die
-}
diff --git a/dev-ruby/date_validator/metadata.xml b/dev-ruby/date_validator/metadata.xml
index 004dc1b0332f..4a0a385d9873 100644
--- a/dev-ruby/date_validator/metadata.xml
+++ b/dev-ruby/date_validator/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/dbf/Manifest b/dev-ruby/dbf/Manifest
index d19d323a9a6f..0b27b4947040 100644
--- a/dev-ruby/dbf/Manifest
+++ b/dev-ruby/dbf/Manifest
@@ -1 +1,3 @@
-DIST dbf-4.1.2.gem 127488 BLAKE2B ef371ddff415b89559209cd2d440e0c3359e39b9c7a3391940bcc25d96f61e2c57368d86430a09c7883d4cc7ba34211281269e8633a6dc469f70164266b03bec SHA512 47ee8d78ef31fe0017ae4223f06dbe576e43c0840b7cafb88def7b8492cba244d2382dea975a998355aec3aee31defd781bf0e08fbea6e77ef3dd5a927a7ad2d
+DIST dbf-4.2.4.gem 128000 BLAKE2B 21b8a08ade1a87237868879b895d0a943fa9b971775922ba1cb30fb59f9477281f0bdcd4b3d6d3c01c3bfda6e18baf29551c14fdf1637b35d5f6d08646cdd33f SHA512 3f8f6b6a14f559a84f1efc7054366f5250fd473dd9846ec6d689a25673a564a97592e7efae78b1a11eae4d6497e115f2c2766d5badd878d332f11ad80f5f5f98
+DIST dbf-4.3.0.gem 128000 BLAKE2B f477f294d11622f4106ba825dbe03c2128c59dba5be27e28be8848812b9622312eaf41bec0c23e5e310f138725ae3fd8cfe949d1139a0db0057d2cc0de59d738 SHA512 e3046a5ca8207f95aa7195637b0aed4379c05511dd355cf27afc8a0c63c938ae5773469834e5c43a47d7f08580ad2c35691a0de063b646d2fbab658f99f0bc2e
+DIST dbf-4.3.2.gem 128000 BLAKE2B 0b86aaa024e40da731bf367e526db8551ea9a51aabfdb07117665a8ab817ff75f505e1481ff57018763310ebfbb545f23453282af1a9eaf549aae91e8eb07ed9 SHA512 8454c3946657cd51ad774a4acd1b548ef2a010518f2f1168898346153a199984215257e327bca16bc618011d447239fa35897424445a749167a846d3564b36f8
diff --git a/dev-ruby/dbf/dbf-4.1.2.ebuild b/dev-ruby/dbf/dbf-4.1.2.ebuild
deleted file mode 100644
index 8eddf80d141f..000000000000
--- a/dev-ruby/dbf/dbf-4.1.2.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md docs/*"
-
-inherit ruby-fakegem
-
-DESCRIPTION="a small fast library for reading dBase, xBase, Clipper and FoxPro
-database files"
-HOMEPAGE="https://github.com/infused/dbf"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
diff --git a/dev-ruby/dbf/dbf-4.2.4.ebuild b/dev-ruby/dbf/dbf-4.2.4.ebuild
new file mode 100644
index 000000000000..7f68351f26c6
--- /dev/null
+++ b/dev-ruby/dbf/dbf-4.2.4.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_DOCDIR="docs"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Small fast library for reading dBase, xBase, Clipper, FoxPro databases"
+HOMEPAGE="https://github.com/infused/dbf"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
diff --git a/dev-ruby/dbf/dbf-4.3.0.ebuild b/dev-ruby/dbf/dbf-4.3.0.ebuild
new file mode 100644
index 000000000000..c1108d62c91c
--- /dev/null
+++ b/dev-ruby/dbf/dbf-4.3.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_DOCDIR="docs"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Small fast library for reading dBase, xBase, Clipper, FoxPro databases"
+HOMEPAGE="https://github.com/infused/dbf"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
diff --git a/dev-ruby/dbf/dbf-4.3.2.ebuild b/dev-ruby/dbf/dbf-4.3.2.ebuild
new file mode 100644
index 000000000000..95eb8d4e54c0
--- /dev/null
+++ b/dev-ruby/dbf/dbf-4.3.2.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_DOCDIR="docs"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Small fast library for reading dBase, xBase, Clipper, FoxPro databases"
+HOMEPAGE="https://github.com/infused/dbf"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
diff --git a/dev-ruby/dbf/metadata.xml b/dev-ruby/dbf/metadata.xml
index 76556565d23e..7c441b95c83a 100644
--- a/dev-ruby/dbf/metadata.xml
+++ b/dev-ruby/dbf/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ddmemoize/Manifest b/dev-ruby/ddmemoize/Manifest
deleted file mode 100644
index 8a3577a94069..000000000000
--- a/dev-ruby/ddmemoize/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ddmemoize-1.0.0.gem 11776 BLAKE2B 3acf18cc70aed6c35ee98f42e6004ae13c623299abb0e8a3c0dbe7e7908775b9b6e2f81cc2977e4ca04ad584e7b5c43219979187448e3c87e6abc2d78a1c8f15 SHA512 b0a4c825c789f578031d12ff38f204bb5256db769fe71fcda98f1ab23a3d61c9d9d6cc486a2bfa566c1ea1fc8617b2563e97f05eac40b7587f35c618fd495eb2
diff --git a/dev-ruby/ddmemoize/ddmemoize-1.0.0.ebuild b/dev-ruby/ddmemoize/ddmemoize-1.0.0.ebuild
deleted file mode 100644
index 9749163752f0..000000000000
--- a/dev-ruby/ddmemoize/ddmemoize-1.0.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Adds support for memoizing functions"
-HOMEPAGE="https://github.com/ddfreyne/ddmemoize/"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/ddmetrics:1
- dev-ruby/ref:2
-"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/^SimpleCov.formatter/ s:^:#:' \
- -e '/fuubar/,/^end/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/ddmemoize/metadata.xml b/dev-ruby/ddmemoize/metadata.xml
deleted file mode 100644
index 1531b69fc0be..000000000000
--- a/dev-ruby/ddmemoize/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">ddfreyne/ddmemoize</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ddmetrics/Manifest b/dev-ruby/ddmetrics/Manifest
index 6042f8471fdc..43a5be7a8b3b 100644
--- a/dev-ruby/ddmetrics/Manifest
+++ b/dev-ruby/ddmetrics/Manifest
@@ -1,2 +1 @@
-DIST ddmetrics-1.0.0.gem 15360 BLAKE2B ef8771fc0d74db7ad2652e6009d3bb0cf0dea5aee051498d275efaba76bb68dfbfbc6eb18f7961e8d0db4ac2f81676433dd5e04ef3f3cfb984973d797877f983 SHA512 30b6a3cfaf219043fb7eafac9aa4104d53080af11a98fb8e2a9cfecd3d55ec2977a9fdc2fd4a960709071184ecf247e81bc223d7cd7b69f1db2eef83387546c3
-DIST ddmetrics-1.0.1.gem 15872 BLAKE2B de0fbb540c45b84c36c37b652f1a987c49d416e63aff644950091f4a84a76338590e1ce62e20df092488bd43af566dfcdb4a056d57ae306f7f3855bba43326f7 SHA512 d3b97bbcfe12a666c0bf28abc076510bb1ceb8e6f0ebda3ff40bba64da50bbb2995beb09da9b2c03b8e54271b143bc0703fb1d0b1db729d092281138ba717b3c
+DIST ddmetrics-1.1.0.gem 18432 BLAKE2B 8a9b6c0555731241f77057c502962e11a0eefb771b91f30f9df8fe4277c84d8b5c50569b8758134fe0f946e9ed3dec6ebb881edd4fedb8acba2741fa0695d042 SHA512 89bd29cf0f69ae7dba017765721d9b9662cb46d03d40a7c5524d72e5be3441a6372f61360bec8a2a36403db8ae2321dfbc23c05a515bcc79824e5b69d892f054
diff --git a/dev-ruby/ddmetrics/ddmetrics-1.0.0.ebuild b/dev-ruby/ddmetrics/ddmetrics-1.0.0.ebuild
deleted file mode 100644
index 990ee6d14c9a..000000000000
--- a/dev-ruby/ddmetrics/ddmetrics-1.0.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Non-timeseries measurements for Ruby programs"
-HOMEPAGE="https://github.com/ddfreyne/ddmetrics/"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/rspec-its dev-ruby/timecop )"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/SimpleCov.formatter/ s:^:#:' \
- -e '/fuubar/ s:^:#:' \
- -e '/RSpec.configure/,/end/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/ddmetrics/ddmetrics-1.0.1.ebuild b/dev-ruby/ddmetrics/ddmetrics-1.0.1.ebuild
deleted file mode 100644
index 0ea61aaba4c3..000000000000
--- a/dev-ruby/ddmetrics/ddmetrics-1.0.1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Non-timeseries measurements for Ruby programs"
-HOMEPAGE="https://github.com/ddfreyne/ddmetrics/"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/rspec-its dev-ruby/timecop )"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/SimpleCov.formatter/ s:^:#:' \
- -e '/fuubar/ s:^:#:' \
- -e '/RSpec.configure/,/end/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/ddmetrics/ddmetrics-1.1.0.ebuild b/dev-ruby/ddmetrics/ddmetrics-1.1.0.ebuild
new file mode 100644
index 000000000000..1a9a0dd826e3
--- /dev/null
+++ b/dev-ruby/ddmetrics/ddmetrics-1.1.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Non-timeseries measurements for Ruby programs"
+HOMEPAGE="https://github.com/denisdefreyne/ddmetrics/"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~amd64 ~riscv"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/rspec-its dev-ruby/timecop )"
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/I s:^:#:' \
+ -e '/fuubar/ s:^:#:' \
+ -e '/RSpec.configure/,/end/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/ddmetrics/metadata.xml b/dev-ruby/ddmetrics/metadata.xml
index 9166cc167821..7f9676994366 100644
--- a/dev-ruby/ddmetrics/metadata.xml
+++ b/dev-ruby/ddmetrics/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">ddfreyne/ddmetrics</remote-id>
+ <remote-id type="github">denisdefreyne/ddmetrics</remote-id>
+ <remote-id type="rubygems">ddmetrics</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ddplugin/Manifest b/dev-ruby/ddplugin/Manifest
index 09a3351de244..f91a6936252d 100644
--- a/dev-ruby/ddplugin/Manifest
+++ b/dev-ruby/ddplugin/Manifest
@@ -1,2 +1 @@
-DIST ddplugin-1.0.1.gem 9216 BLAKE2B ec1035b66b5167f26a9f89bc02dd1e4429bbb8d22e0bcd98b4e37a20443afc61ee32b65e00a6d46265303ec8cca6090edaa646615e0d00785222c1450c62f8ba SHA512 6332fb5292f7796e99a78131fd0e4c38cabed66e0d05220960e1cf08b717505e3790b99949d1a6098b80999d973ade442d07a5d19975328174810ef8f44ac276
-DIST ddplugin-1.0.2.gem 9728 BLAKE2B eded641a734d4c7182184b9b9cf4a6007b33b25ffde97e1c9efea71d425ee034693e05b8f569d8e9be29f4a315d5306d8a3180b19e835157d49d9d1c82f0d436 SHA512 bc36cd7e5490e3748e65994dc1e2b1cff9aeefcd0b44ad547368491c83509baf2934cc38f9db4035069394b8c2fa9bbea6b35cf96b80ac4126df348e49a93420
+DIST ddplugin-1.0.3.gem 9728 BLAKE2B 8d287a558fe2716c394f96f92824c8b843fbdcb77b5052b8bb4699013222ef0e57c273348007dc61cde4281978570b115551ce51a71077b53f0cc8d7ebda5ea9 SHA512 eef88b52f78f379b6f083da3a6090d9430756e3a9d526202785e6d36121bc4fc3e42238db8146dd4d4a9ede1f5caf5bac047731ed5c1012d637b2723cccfcd00
diff --git a/dev-ruby/ddplugin/ddplugin-1.0.1.ebuild b/dev-ruby/ddplugin/ddplugin-1.0.1.ebuild
deleted file mode 100644
index 935cab84925e..000000000000
--- a/dev-ruby/ddplugin/ddplugin-1.0.1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides plugin management for Ruby projects"
-HOMEPAGE="https://github.com/ddfreyne/ddplugin/"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/coverall/I s:^:#:' test/helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/ddplugin/ddplugin-1.0.2.ebuild b/dev-ruby/ddplugin/ddplugin-1.0.2.ebuild
deleted file mode 100644
index 6e9d78d86c15..000000000000
--- a/dev-ruby/ddplugin/ddplugin-1.0.2.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides plugin management for Ruby projects"
-HOMEPAGE="https://github.com/ddfreyne/ddplugin/"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/coverall/I s:^:#:' test/helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/ddplugin/ddplugin-1.0.3-r1.ebuild b/dev-ruby/ddplugin/ddplugin-1.0.3-r1.ebuild
new file mode 100644
index 000000000000..840356ef3383
--- /dev/null
+++ b/dev-ruby/ddplugin/ddplugin-1.0.3-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides plugin management for Ruby projects"
+HOMEPAGE="https://github.com/ddfreyne/ddplugin/"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~amd64 ~riscv"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/coverall/I s:^:#:' test/helper.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/ddplugin/metadata.xml b/dev-ruby/ddplugin/metadata.xml
index 0ea91e04751e..0693b61612e2 100644
--- a/dev-ruby/ddplugin/metadata.xml
+++ b/dev-ruby/ddplugin/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/debug/Manifest b/dev-ruby/debug/Manifest
new file mode 100644
index 000000000000..6e67d03b7652
--- /dev/null
+++ b/dev-ruby/debug/Manifest
@@ -0,0 +1,2 @@
+DIST debug-1.9.1.tar.gz 164276 BLAKE2B e34768dfc49230e78ffa7c5277bf80ba9abb34ac82822981e53bfb0326fb5754ae6e66946a8da8589e25aab6f5c388b266acc0a5fdf27392a570c97f90e46ea1 SHA512 eefd074968af7032410f62a0a37792fb261b3d7c1cc759d1838016bcc264baa1f205c935d76f4a8aed7ea892698d80de7db48fba1e0efd067b9b1bac9577be66
+DIST debug-1.9.2.tar.gz 167216 BLAKE2B 60696aa1e7fa3bebdfc8015a9a38d804ad64e4725e9fb08ce92c646758cbb2e3e41a7ecd97ed2f5a833a7832d1d8f7e9fe1bbe25667d17724cdc72afe241e27f SHA512 b65e7952f0020f79481273175abc382827283f667c52a29eee4f77303368e65ff71c517f8cd278b011ae81c335281d4303ab83e6c5d5c71cab9784cee56b8c63
diff --git a/dev-ruby/debug/debug-1.9.1.ebuild b/dev-ruby/debug/debug-1.9.1.ebuild
new file mode 100644
index 000000000000..e43731d48e9a
--- /dev/null
+++ b/dev-ruby/debug/debug-1.9.1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="TODO.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/debug/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/debug"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Debugging functionality for Ruby"
+HOMEPAGE="https://github.com/ruby/debug"
+SRC_URI="https://github.com/ruby/debug/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+
+# Avoid tests for now since the results in a very deep dependency list for ruby32
+#ruby_add_depend "test? ( dev-ruby/rr )"
+RESTRICT="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/irb-1.10
+ >=dev-ruby/reline-0.3.8
+"
+
+all_ruby_prepare() {
+ sed -i -e "s:require_relative ':require './:" -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/debug/debug-1.9.2.ebuild b/dev-ruby/debug/debug-1.9.2.ebuild
new file mode 100644
index 000000000000..684a22aacf92
--- /dev/null
+++ b/dev-ruby/debug/debug-1.9.2.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="TODO.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/debug/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/debug"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Debugging functionality for Ruby"
+HOMEPAGE="https://github.com/ruby/debug"
+SRC_URI="https://github.com/ruby/debug/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+
+# Avoid tests for now since the results in a very deep dependency list for ruby32
+#ruby_add_depend "test? ( dev-ruby/rr )"
+RESTRICT="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/irb-1.10
+ >=dev-ruby/reline-0.3.8
+"
+
+all_ruby_prepare() {
+ sed -i -e "s:require_relative ':require './:" -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/debug/metadata.xml b/dev-ruby/debug/metadata.xml
new file mode 100644
index 000000000000..864ac37653a0
--- /dev/null
+++ b/dev-ruby/debug/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/debug</remote-id>
+ <remote-id type="rubygems">debug</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/debug_inspector/Manifest b/dev-ruby/debug_inspector/Manifest
index 57624cdf5443..f82742f89674 100644
--- a/dev-ruby/debug_inspector/Manifest
+++ b/dev-ruby/debug_inspector/Manifest
@@ -1 +1,2 @@
-DIST debug_inspector-0.0.3.gem 8192 BLAKE2B c7605f246519b245d0b997e10cfc1271c6cd5a31dc44097546d51265eb6ce1d88686b1dc922addce0a58b6bccae4fa5a40611942b6babbf8dfc6b4c528949422 SHA512 38cbe0ddf2eb4285f4f7d6f12428747495230425352e1850a4395a5c27ad4c2f706eeeac1f684baea488f6e3bd4b65c8c9e0d5807d5af93d3350fa7b9d45da43
+DIST debug_inspector-1.1.0.tar.gz 5837 BLAKE2B 49f2c4b8b872ad2be0e6c41d02f7cb64e3f2928e8f02e06ed99f2f2befffe1da4c25024a2069b8d2f19dc71ab182459f6cf75c5b717662e5cfab16a5b66cf41f SHA512 c66d5bf412d9b6a61f456e943a901dbe9018cf92c171e1a7d9a19807c7894ffdb6acaeaed2c8f688927130a14909d0e0714e5b728ad7ccbff0e5f1c0ad20c600
+DIST debug_inspector-1.2.0.tar.gz 6091 BLAKE2B 9f0f584f854ee08b220fd1753c88684cb3b17c009ded18b1f26f38c8c5d67ced7bbd3dbd1ff16c01d8c527ab270d999d4a434f362ebf2b906a887f5952d370b7 SHA512 e4328b1e36c1b196219d7e278dec2da730293857a6eb147e653f9ab6ca3628f6115f7661a98f0ca828a1a9657394aeb1392f71842a5833d8bb1c438567d4096f
diff --git a/dev-ruby/debug_inspector/debug_inspector-0.0.3.ebuild b/dev-ruby/debug_inspector/debug_inspector-0.0.3.ebuild
deleted file mode 100644
index 5e1a8839e286..000000000000
--- a/dev-ruby/debug_inspector/debug_inspector-0.0.3.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Ruby wrapper for the MRI 2.0 debug_inspector API"
-HOMEPAGE="https://github.com/banister/debug_inspector"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-each_ruby_configure() {
- ${RUBY} -Cext/${PN} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/${PN}.so lib/ || die
-}
diff --git a/dev-ruby/debug_inspector/debug_inspector-1.1.0-r1.ebuild b/dev-ruby/debug_inspector/debug_inspector-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..12619b58d005
--- /dev/null
+++ b/dev-ruby/debug_inspector/debug_inspector-1.1.0-r1.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/debug_inspector/extconf.rb)
+
+RUBY_FAKEGEM_GEMSPEC="debug_inspector.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby wrapper for the MRI 2.0 debug_inspector API"
+HOMEPAGE="https://github.com/banister/debug_inspector"
+SRC_URI="https://github.com/banister/debug_inspector/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/extensiontask/,$ s:^:#:' Rakefile || die
+
+ sed -i -e 's/MiniTest/Minitest/' test/basic_test.rb || die
+}
diff --git a/dev-ruby/debug_inspector/debug_inspector-1.2.0.ebuild b/dev-ruby/debug_inspector/debug_inspector-1.2.0.ebuild
new file mode 100644
index 000000000000..e14bbad65d44
--- /dev/null
+++ b/dev-ruby/debug_inspector/debug_inspector-1.2.0.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/debug_inspector/extconf.rb)
+
+RUBY_FAKEGEM_GEMSPEC="debug_inspector.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby wrapper for the MRI 2.0 debug_inspector API"
+HOMEPAGE="https://github.com/banister/debug_inspector"
+SRC_URI="https://github.com/banister/debug_inspector/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/extensiontask/,$ s:^:#:' Rakefile || die
+
+ sed -i -e 's/MiniTest/Minitest/' test/basic_test.rb || die
+}
diff --git a/dev-ruby/debug_inspector/metadata.xml b/dev-ruby/debug_inspector/metadata.xml
index 3330955745bc..d7de597e7ae8 100644
--- a/dev-ruby/debug_inspector/metadata.xml
+++ b/dev-ruby/debug_inspector/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/debugger-linecache/Manifest b/dev-ruby/debugger-linecache/Manifest
deleted file mode 100644
index 4e7ca167b872..000000000000
--- a/dev-ruby/debugger-linecache/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST debugger-linecache-1.2.0.gem 15872 BLAKE2B 316200d4a06a7723f78b7697765d213c5500c1184f2eff13a7ace9d356d065eefb6e46347d037bf9d1af8b61bbc8d3957acd7181111b86b0b63586d823f836ea SHA512 deccae8f190da60a4e3b75017bf8bf691bcd3dad904bd153ed73d6b1b147ba710df0eff8b70449470f561f9227d43520faca69a45d765823c68650b2bb3ae65b
diff --git a/dev-ruby/debugger-linecache/debugger-linecache-1.2.0.ebuild b/dev-ruby/debugger-linecache/debugger-linecache-1.2.0.ebuild
deleted file mode 100644
index 43ffb3432a09..000000000000
--- a/dev-ruby/debugger-linecache/debugger-linecache-1.2.0.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby21 ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="OLD_README OLD_CHANGELOG CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A module to read and cache file information of a Ruby program"
-HOMEPAGE="https://github.com/cldwalker/debugger-linecache"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e "/# -/d" debugger-linecache.gemspec || die
-
- sed -i -e '/git ls-files/d' debugger-linecache.gemspec || die
-}
diff --git a/dev-ruby/debugger-linecache/metadata.xml b/dev-ruby/debugger-linecache/metadata.xml
deleted file mode 100644
index a42816c69730..000000000000
--- a/dev-ruby/debugger-linecache/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">cldwalker/debugger-linecache</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/deckar01-task_list/Manifest b/dev-ruby/deckar01-task_list/Manifest
new file mode 100644
index 000000000000..254da27ff91c
--- /dev/null
+++ b/dev-ruby/deckar01-task_list/Manifest
@@ -0,0 +1,2 @@
+DIST deckar01-task_list-2.3.3.gem 66560 BLAKE2B 3423a2b18e27fb44dcedb9df786430033c8d6f314b9995193d91ab8d35f569210b3189b55b4a77bbba8d93b7316e6d2a04e2b605ba74adac776f716fcc236b0f SHA512 3331b9e1f5e110b4777da5887cf5f8691f156203ae62e8f5c5bad92c9bc60fb441bdd41f71bce2dbee94bc19c6943f6c21eaad1348ce4094148a6cb2ec98d148
+DIST deckar01-task_list-2.3.4.gem 66560 BLAKE2B e7ee4bcdbf620d8f3d7da045c0c6c916e04ba62895ac2b5489d9d0b5a558c07f4787a3391c5a0bec66c9865cd91e2df1c4437f889237fe1d24c2a8bd2fc7476c SHA512 ec551e9dbad829c99debbe0e385968a98e021db96afb7d8414dac627896b9b14e38345078c4e6a40905b956fd8552cefa1668d76e4a1055af64ebddb14c7b0a3
diff --git a/dev-ruby/deckar01-task_list/deckar01-task_list-2.3.3.ebuild b/dev-ruby/deckar01-task_list/deckar01-task_list-2.3.3.ebuild
new file mode 100644
index 000000000000..731f5450ae4c
--- /dev/null
+++ b/dev-ruby/deckar01-task_list/deckar01-task_list-2.3.3.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Markdown TaskList components"
+HOMEPAGE="https://github.com/deckar01/task_list"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/html-pipeline
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/commonmarker
+ dev-ruby/coffee-script
+ dev-ruby/json
+ dev-ruby/rack
+ dev-ruby/sprockets
+)"
diff --git a/dev-ruby/deckar01-task_list/deckar01-task_list-2.3.4.ebuild b/dev-ruby/deckar01-task_list/deckar01-task_list-2.3.4.ebuild
new file mode 100644
index 000000000000..2f5491f2c022
--- /dev/null
+++ b/dev-ruby/deckar01-task_list/deckar01-task_list-2.3.4.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Markdown TaskList components"
+HOMEPAGE="https://github.com/deckar01/task_list"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "
+ dev-ruby/html-pipeline
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/commonmarker
+ dev-ruby/coffee-script
+ dev-ruby/json
+ dev-ruby/rack
+ dev-ruby/sprockets
+)"
diff --git a/dev-ruby/deckar01-task_list/metadata.xml b/dev-ruby/deckar01-task_list/metadata.xml
new file mode 100644
index 000000000000..8948e6ca26ca
--- /dev/null
+++ b/dev-ruby/deckar01-task_list/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">deckar01/task_list</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/deep_merge/Manifest b/dev-ruby/deep_merge/Manifest
index 4ecbf22695a9..6f9b32971145 100644
--- a/dev-ruby/deep_merge/Manifest
+++ b/dev-ruby/deep_merge/Manifest
@@ -1 +1 @@
-DIST deep_merge-1.2.1.gem 14336 BLAKE2B c122eddaf63fd885f82b292ea7d1f2b6a9a9dd50731e77b856fd02284634a699b7897a12c1856732c77b4d8ffc9f6efe06f792f42d53236a521279bff13b6dce SHA512 ef93e0c4c6a8f389338ea30b2b53271f089b0b8275adf6fc74e7d15a2faf32d62a1b297af9d31c42cb5d816066428c8407a82d874fad14d64384098fc3c5c70c
+DIST deep_merge-1.2.2.gem 14848 BLAKE2B cb79bfd2c4499b3578cb493e4a9d664a44672f01941c88f559aa110732f6fb19d3e18e32274e666a5021e35995a3f0afcdea57fcefd9ff0eb675aafdb5d6eb8d SHA512 58c6dd789812c5010a4019ec731a21dac70c135fcf54701c82fca7b43842199d8eb41c3dec3926cd953d3e5ed14039384dc270e06de5922bc438f98c6d1132a1
diff --git a/dev-ruby/deep_merge/deep_merge-1.2.1.ebuild b/dev-ruby/deep_merge/deep_merge-1.2.1.ebuild
deleted file mode 100644
index 65de70c57faf..000000000000
--- a/dev-ruby/deep_merge/deep_merge-1.2.1.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple set of utility functions for Hash"
-HOMEPAGE="http://trac.misuse.org/science/wiki/DeepMerge"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm hppa ppc ~ppc64 x86"
-IUSE=""
-
-each_ruby_test() {
- ${RUBY} -I lib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/deep_merge/deep_merge-1.2.2.ebuild b/dev-ruby/deep_merge/deep_merge-1.2.2.ebuild
new file mode 100644
index 000000000000..28cf571b84a9
--- /dev/null
+++ b/dev-ruby/deep_merge/deep_merge-1.2.2.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A simple set of utility functions for Hash"
+HOMEPAGE="https://github.com/danielsdeleo/deep_merge"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ~ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+each_ruby_test() {
+ ${RUBY} -I lib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/deep_merge/metadata.xml b/dev-ruby/deep_merge/metadata.xml
index 28ab0c15f206..439ca4bac0b7 100644
--- a/dev-ruby/deep_merge/metadata.xml
+++ b/dev-ruby/deep_merge/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">danielsdeleo/deep_merge</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/delayer-deferred/Manifest b/dev-ruby/delayer-deferred/Manifest
index fa1e09ae1438..edbf3d16c7dc 100644
--- a/dev-ruby/delayer-deferred/Manifest
+++ b/dev-ruby/delayer-deferred/Manifest
@@ -1,3 +1 @@
-DIST delayer-deferred-2.0.0.gem 20992 BLAKE2B 0a297ad96a76ce38497c26c596581b3082d7cb9f2b0401ff90a2985a82340ac5e19124d03dde807a57d6765c2af93ef167a1557be171bffa71aee595a6ebb3c4 SHA512 d1e33f318e45ea212a84eea436f396ac9a1fb5ceb3bba018ff5b58211352954447f798148092bf46a8e29c6bc7d81e1c091f95e68f43339d4de63e46c98e5e0f
-DIST delayer-deferred-2.1.0.gem 20992 BLAKE2B f50486ee9ca431fe637d15be99e7e0b4fae443cd8c8e5bf12f40e199361909b8a18147cda4809cd11222a86052ccb418333b86b1dfd95f85885232949ca6eb59 SHA512 314a406c14a05ad9f0c1ae8feb88612148e53f62a1b091feddce385c63fd4acc25e6b869e55961f021966fd0a928f6145cb4c824e8d299441cc5d4d72c6c2dc9
-DIST delayer-deferred-2.1.1.gem 21504 BLAKE2B b32f8e49fabe2c3c4e060fd68cb080cb4b5694752b58d1b153dfc4f56d0690d0c77204b18e93c734787a6c44ba9786921d8fa1b8c7024e49251d804dc4818cdf SHA512 3d2f24799b44a132fd4ddfb5d8851dc74647b7c373405a51ec8deb94754f2d62de8421833d5e495d411958886d733963507edc47c4b601b75c0f86f2223b3223
+DIST delayer-deferred-2.2.0.gem 22016 BLAKE2B 992005fcdd3cb7d7b131e676a1e73f56b64c3316c4c66e984cb8c80c655e98f2fa1a72be34979c11e9f3b7def7de71a74a922e06b6ec8699fc1bc03f2cedf627 SHA512 f285183556d8414db6467cf51a6bb123b2b5db3b517295464e8d0205f25b7bad61ee9364277916e30f0bde4453a7bf4666bd71f0a54faa4506ed8d339507418d
diff --git a/dev-ruby/delayer-deferred/delayer-deferred-2.0.0.ebuild b/dev-ruby/delayer-deferred/delayer-deferred-2.0.0.ebuild
deleted file mode 100644
index ee58f078bc5d..000000000000
--- a/dev-ruby/delayer-deferred/delayer-deferred-2.0.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby implementation of JSDeferred"
-HOMEPAGE="https://github.com/toshia/delayer-deferred"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/delayer-0.0.2:0"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile test/helper.rb || die
- sed -i -e '/simplecov/,/^end/ s:^:#:' test/helper.rb || die
-}
diff --git a/dev-ruby/delayer-deferred/delayer-deferred-2.1.0.ebuild b/dev-ruby/delayer-deferred/delayer-deferred-2.1.0.ebuild
deleted file mode 100644
index 275690e37ba0..000000000000
--- a/dev-ruby/delayer-deferred/delayer-deferred-2.1.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby implementation of JSDeferred"
-HOMEPAGE="https://github.com/toshia/delayer-deferred"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/delayer:1"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile test/helper.rb || die
- sed -i -e '/simplecov/,/^end/ s:^:#:' test/helper.rb || die
-}
diff --git a/dev-ruby/delayer-deferred/delayer-deferred-2.1.1.ebuild b/dev-ruby/delayer-deferred/delayer-deferred-2.1.1.ebuild
deleted file mode 100644
index 275690e37ba0..000000000000
--- a/dev-ruby/delayer-deferred/delayer-deferred-2.1.1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby implementation of JSDeferred"
-HOMEPAGE="https://github.com/toshia/delayer-deferred"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/delayer:1"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile test/helper.rb || die
- sed -i -e '/simplecov/,/^end/ s:^:#:' test/helper.rb || die
-}
diff --git a/dev-ruby/delayer-deferred/delayer-deferred-2.2.0-r1.ebuild b/dev-ruby/delayer-deferred/delayer-deferred-2.2.0-r1.ebuild
new file mode 100644
index 000000000000..c867a2f86b3d
--- /dev/null
+++ b/dev-ruby/delayer-deferred/delayer-deferred-2.2.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby implementation of JSDeferred"
+HOMEPAGE="https://github.com/toshia/delayer-deferred"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/delayer:1"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile test/helper.rb || die
+ sed -i -e '/simplecov/,/^end/ s:^:#:' test/helper.rb || die
+ sed -i -e '/pry/ s:^:#:' test/sleep_test.rb || die
+}
diff --git a/dev-ruby/delayer-deferred/metadata.xml b/dev-ruby/delayer-deferred/metadata.xml
index 123d51e3f71c..de216829aea8 100644
--- a/dev-ruby/delayer-deferred/metadata.xml
+++ b/dev-ruby/delayer-deferred/metadata.xml
@@ -1,8 +1,9 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>naota@gentoo.org</email>
+ <name>Naohiro Aota</name>
</maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/delayer/Manifest b/dev-ruby/delayer/Manifest
index 240deee378f3..05489d322291 100644
--- a/dev-ruby/delayer/Manifest
+++ b/dev-ruby/delayer/Manifest
@@ -1,2 +1 @@
-DIST delayer-0.0.2.gem 8704 BLAKE2B f0fba28398c0e585b10cfa48eaa7aceb9914e335f11253e8c4cb7a3c85201fae7a52e6792f1d0e824c75936ae2dea572a0ea99e89384562b76be615f6b70628d SHA512 1a5e149b739d8dd975d5c4a9e6a072181cc4d816af202461a0f98ec91f92e85e76faf700171b83652ec4f5114b1c1c5b2c6cd9d1d8d6508c1161b43f099e2b88
-DIST delayer-1.0.0.gem 10240 BLAKE2B f39c02110a2c1734b8ae0f05619ea5954c3c1bc52fb70f179ea7ebc8531677ec1af232adadb08810d6a394ccefc6b525d8fda1cb7bc0a714fcd6aa4059202fb2 SHA512 2dfe3590381796f50dc89c17b038fd94cba21660e6863c60600e590f449180eb5e424f81340c6698dffddcf64f5218dadbdc96f1553e2eef96be2b1fbe2d1fb3
+DIST delayer-1.2.1.gem 12288 BLAKE2B f60d1c41b10d948637d945d67a99b34e68e18fda8b381d8ec5d15abea09dbcf4e5dfe5eb23c44b01162612620e1230cbb2b2b9da1949f30cc6e53a371859077a SHA512 e48bb785f208e924ecc9245dfc423953dda1793a3bf1f3a0071fdb922ee383d59cac366830a5c82b0223a9038cc8703f446201e7232134511092c23c29e91785
diff --git a/dev-ruby/delayer/delayer-0.0.2.ebuild b/dev-ruby/delayer/delayer-0.0.2.ebuild
deleted file mode 100644
index d9fb739a5159..000000000000
--- a/dev-ruby/delayer/delayer-0.0.2.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-DESCRIPTION="Delay the processing"
-HOMEPAGE="https://rubygems.org/gems/delayer"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' Rakefile ${PN}.gemspec test/test_*.rb || die "sed failed"
-}
diff --git a/dev-ruby/delayer/delayer-1.0.0.ebuild b/dev-ruby/delayer/delayer-1.0.0.ebuild
deleted file mode 100644
index 6b23b20cb3d5..000000000000
--- a/dev-ruby/delayer/delayer-1.0.0.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-DESCRIPTION="Delay the processing"
-HOMEPAGE="https://rubygems.org/gems/delayer"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' Rakefile ${PN}.gemspec test/test_*.rb || die "sed failed"
-}
diff --git a/dev-ruby/delayer/delayer-1.2.1-r1.ebuild b/dev-ruby/delayer/delayer-1.2.1-r1.ebuild
new file mode 100644
index 000000000000..d1ea0defe8a9
--- /dev/null
+++ b/dev-ruby/delayer/delayer-1.2.1-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Delay the processing"
+HOMEPAGE="https://rubygems.org/gems/delayer"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/d' Rakefile ${PN}.gemspec test/test_*.rb || die "sed failed"
+}
diff --git a/dev-ruby/delayer/delayer-1.2.1.ebuild b/dev-ruby/delayer/delayer-1.2.1.ebuild
new file mode 100644
index 000000000000..2794a86fe6fc
--- /dev/null
+++ b/dev-ruby/delayer/delayer-1.2.1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Delay the processing"
+HOMEPAGE="https://rubygems.org/gems/delayer"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/d' Rakefile ${PN}.gemspec test/test_*.rb || die "sed failed"
+}
diff --git a/dev-ruby/delayer/metadata.xml b/dev-ruby/delayer/metadata.xml
index fe4e4b593b75..bff280183c9c 100644
--- a/dev-ruby/delayer/metadata.xml
+++ b/dev-ruby/delayer/metadata.xml
@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>naota@gentoo.org</email>
+ <name>Naohiro Aota</name>
</maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/dep_selector/Manifest b/dev-ruby/dep_selector/Manifest
deleted file mode 100644
index 313ffbbcefe0..000000000000
--- a/dev-ruby/dep_selector/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST dep_selector-1.0.5.tar.gz 70408 BLAKE2B f4f3daf63a9255076ab11977c115eacdde03d83357057451303da1f3388f340c0c756ac9e98ab1308a861851896f701621cf0747f07c84b793b0c50c2e068570 SHA512 05035e2e8c5206a5c7a126f9be39385dd800a0f40ceaed0e36afe08afc83259f4a170d112f6720dbb19e5901bc794f914fddf5366ad1200075fa688dee7e05c3
diff --git a/dev-ruby/dep_selector/dep_selector-1.0.5.ebuild b/dev-ruby/dep_selector/dep_selector-1.0.5.ebuild
deleted file mode 100644
index 313c99adf564..000000000000
--- a/dev-ruby/dep_selector/dep_selector-1.0.5.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby21 ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="constraint based package dependency resolver"
-HOMEPAGE="https://github.com/opscode/dep-selector"
-SRC_URI="https://github.com/opscode/dep-selector/archive/${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RUBY_S=${P/_/-}
-
-DEPEND+=" >=dev-libs/gecode-3.5.0 <dev-libs/gecode-4"
-RDEPEND+=" >=dev-libs/gecode-3.5.0 <dev-libs/gecode-4"
-
-ruby_add_rdepend ">=dev-ruby/ffi-1.9"
-
-all_ruby_prepare() {
- # Avoid dependency on vendored libgecode and use system version instead
- sed -i -e '27,46 s:^:#:' ext/dep_gecode/extconf.rb || die
- sed -i -e '/dep-selector-libgecode/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # Avoid integration tests for unpackaged solve
- rm spec/solve_integration_spec.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/dep_gecode extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake -Cext/dep_gecode CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}" V=1
- cp ext/dep_gecode/dep_gecode$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/dep_selector/metadata.xml b/dev-ruby/dep_selector/metadata.xml
deleted file mode 100644
index 3af539cf61f8..000000000000
--- a/dev-ruby/dep_selector/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">opscode/dep-selector</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/dependor/dependor-1.0.1-r1.ebuild b/dev-ruby/dependor/dependor-1.0.1-r1.ebuild
new file mode 100644
index 000000000000..102995d6e2d4
--- /dev/null
+++ b/dev-ruby/dependor/dependor-1.0.1-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Reduces duplication when doing manual dependency injection"
+HOMEPAGE="https://github.com/psyho/dependor"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e '/simplecov/,/^end/ s:^:#:' \
+ -e '/color_enabled/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/dependor/dependor-1.0.1.ebuild b/dev-ruby/dependor/dependor-1.0.1.ebuild
deleted file mode 100644
index 5ff126506ed1..000000000000
--- a/dev-ruby/dependor/dependor-1.0.1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Reduces duplication when doing manual dependency injection"
-HOMEPAGE="https://github.com/psyho/dependor"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/^end/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/dependor/metadata.xml b/dev-ruby/dependor/metadata.xml
index f425efb1dfc8..1adc14f9bbee 100644
--- a/dev-ruby/dependor/metadata.xml
+++ b/dev-ruby/dependor/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/deprecated/Manifest b/dev-ruby/deprecated/Manifest
deleted file mode 100644
index 406c80c9b870..000000000000
--- a/dev-ruby/deprecated/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST deprecated-3.0.1.gem 6144 BLAKE2B 69ef1b95168ada9e66dda556d0c6731109b2b7845f8c4be0ba75749f2e7af092c3b800d0334c4cd1c555905c09bb12dd945f4692eabf0155fc32f4ea380c52da SHA512 c4280f8bd6914a6b073cbc443db5dd5232379abb7870d90cd0146c08312f82aa8fd8c042b48c2b9b26c4120dc8afb326070a1256c51355f1cfa898905ec59e51
diff --git a/dev-ruby/deprecated/deprecated-3.0.1-r2.ebuild b/dev-ruby/deprecated/deprecated-3.0.1-r2.ebuild
deleted file mode 100644
index 8e5081849b1d..000000000000
--- a/dev-ruby/deprecated/deprecated-3.0.1-r2.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Ruby library for handling deprecated code"
-HOMEPAGE="https://github.com/erikh/deprecated"
-
-LICENSE="BSD"
-SLOT="3"
-KEYWORDS="amd64 ppc x86"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
-
-each_ruby_test() {
- ${RUBY} -Ilib:. test/test_deprecated.rb || die "test failed"
-}
diff --git a/dev-ruby/deprecated/metadata.xml b/dev-ruby/deprecated/metadata.xml
deleted file mode 100644
index ddfe10385499..000000000000
--- a/dev-ruby/deprecated/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">erikh/deprecated</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/descendants_tracker/descendants_tracker-0.0.4-r1.ebuild b/dev-ruby/descendants_tracker/descendants_tracker-0.0.4-r1.ebuild
new file mode 100644
index 000000000000..d659f875772c
--- /dev/null
+++ b/dev-ruby/descendants_tracker/descendants_tracker-0.0.4-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Module that adds descendant tracking to a class"
+HOMEPAGE="https://github.com/dkubb/descendants_tracker"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/thread_safe"
+
+all_ruby_prepare() {
+ # Remove dependency on devtools
+ sed -i -e '/devtools\/spec_helper/d' spec/spec_helper.rb || die
+ sed -i -e '/it_should_behave_like/d' \
+ spec/unit/descendants_tracker/add_descendant_spec.rb || die
+ sed -i -e '/it_should_behave_like/d' \
+ spec/unit/descendants_tracker/descendants_spec.rb || die
+}
diff --git a/dev-ruby/descendants_tracker/descendants_tracker-0.0.4.ebuild b/dev-ruby/descendants_tracker/descendants_tracker-0.0.4.ebuild
deleted file mode 100644
index 837bd0247da1..000000000000
--- a/dev-ruby/descendants_tracker/descendants_tracker-0.0.4.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Module that adds descendant tracking to a class"
-HOMEPAGE="https://github.com/dkubb/descendants_tracker"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/thread_safe"
-
-all_ruby_prepare() {
- # Remove dependency on devtools
- sed -i -e '/devtools\/spec_helper/d' spec/spec_helper.rb || die
- sed -i -e '/it_should_behave_like/d' \
- spec/unit/descendants_tracker/add_descendant_spec.rb || die
- sed -i -e '/it_should_behave_like/d' \
- spec/unit/descendants_tracker/descendants_spec.rb || die
-}
diff --git a/dev-ruby/descendants_tracker/metadata.xml b/dev-ruby/descendants_tracker/metadata.xml
index 9fe30a1d8e5e..79716359fe33 100644
--- a/dev-ruby/descendants_tracker/metadata.xml
+++ b/dev-ruby/descendants_tracker/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/did_you_mean/Manifest b/dev-ruby/did_you_mean/Manifest
index 57adbed1d061..34d16b9aa10b 100644
--- a/dev-ruby/did_you_mean/Manifest
+++ b/dev-ruby/did_you_mean/Manifest
@@ -1,3 +1 @@
-DIST did_you_mean-1.1.2.gem 30720 BLAKE2B c1fb841143928854854892e2c7890cb3952329ae3efd50401b43bb4bd327b0564ab2f0fb33a4bd23278e1a3570594f2e13ae6c0cb52ea244ccef392f68e79d09 SHA512 bd1f5eeaf6c527bd6a0ef79555aeee459f9e2fee82215e6f3a47e380535d366eea1f7b199ae99de2736125785c7fd76a1cd6e8bc7cd0599a8d4cc6c5184c85de
-DIST did_you_mean-1.2.1.gem 20992 BLAKE2B e8827b3f6797145c1adf5fae2a681ad8f437c1dfcb746465c4bb0c59f61285c2f2a65d5e31e2a501da812baf52a2f1d78b81c2d74a194d7309778cece56c1752 SHA512 98a71ad3c4fe92efec50575e26723cd3b5c60b25cd24767a7aabdb4e2b343b131fe3677367c78995f07c513d39d47984af80bde0ec2f6aeafcb34be97f134b1b
-DIST did_you_mean-1.3.0.gem 23040 BLAKE2B 2ff2049a9db318151f7a42f00b22452e60b101152d6b170e59aed9804a87658015472cdbf2fb995aea4999cfabf23a09bf09d4ec4f47bdd62193c2e20c7a8a2c SHA512 a2b2bc30d1f87d535e0af765ca53e74ba156cee877f78caefa196e335939748e0ee0512ba4cbdc4ddf4b354715299b9f8593a08f65e97e9f7c83cdba55e354f3
+DIST did_you_mean-1.6.3.gem 47104 BLAKE2B 48ae99218c9295a0c9a17825020e875a2ecfcf76b33859b157cfb40279574b257c58973f4b0b16f773522ea9e9d08dc13ab316d4408363aed23323da74cc2207 SHA512 5452afd2bd50d2b77d1695c83c956cf6c3a8d897e9cb3cbc372a9bc8a7d84550829ee837350a1aa55ad9ebc129b92ba78aabb9fbc266311fdc5b4b0d6ddf33d3
diff --git a/dev-ruby/did_you_mean/did_you_mean-1.1.2.ebuild b/dev-ruby/did_you_mean/did_you_mean-1.1.2.ebuild
deleted file mode 100644
index 2b7957f10758..000000000000
--- a/dev-ruby/did_you_mean/did_you_mean-1.1.2.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby24"
-
-RUBY_FAKEGEM_RECIPE_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="'did you mean?'experience in Ruby"
-HOMEPAGE="https://github.com/yuki24/did_you_mean"
-
-LICENSE="MIT"
-SLOT="2.4"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-
- # Skip test that is broken with newer ruby releases
- sed -i -e '/test_message/,/^ end/ s:^:#:' test/core_ext/name_error_extension_test.rb || die
-}
diff --git a/dev-ruby/did_you_mean/did_you_mean-1.2.1.ebuild b/dev-ruby/did_you_mean/did_you_mean-1.2.1.ebuild
deleted file mode 100644
index 946cd7c0aa9b..000000000000
--- a/dev-ruby/did_you_mean/did_you_mean-1.2.1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="'did you mean?'experience in Ruby"
-HOMEPAGE="https://github.com/yuki24/did_you_mean"
-
-LICENSE="MIT"
-SLOT="2.5"
-KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh sparc ~x86 ~amd64-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/did_you_mean/did_you_mean-1.3.0.ebuild b/dev-ruby/did_you_mean/did_you_mean-1.3.0.ebuild
deleted file mode 100644
index aa7778cb36c8..000000000000
--- a/dev-ruby/did_you_mean/did_you_mean-1.3.0.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="'did you mean?'experience in Ruby"
-HOMEPAGE="https://github.com/yuki24/did_you_mean"
-
-LICENSE="MIT"
-SLOT="2.6"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/did_you_mean/did_you_mean-1.6.3.ebuild b/dev-ruby/did_you_mean/did_you_mean-1.6.3.ebuild
new file mode 100644
index 000000000000..184e2de4434f
--- /dev/null
+++ b/dev-ruby/did_you_mean/did_you_mean-1.6.3.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="'did you mean?'experience in Ruby"
+HOMEPAGE="https://github.com/yuki24/did_you_mean"
+
+LICENSE="MIT"
+SLOT="2.6"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+PATCHES=( "${FILESDIR}/${P}-ruby33.patch" )
+
+ruby_add_bdepend "test? ( dev-ruby/minitest:5 dev-ruby/test-unit )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/did_you_mean/files/did_you_mean-1.6.3-ruby33.patch b/dev-ruby/did_you_mean/files/did_you_mean-1.6.3-ruby33.patch
new file mode 100644
index 000000000000..03108b6198f2
--- /dev/null
+++ b/dev-ruby/did_you_mean/files/did_you_mean-1.6.3-ruby33.patch
@@ -0,0 +1,33 @@
+From ef0c37a35ae1216f3c804daf436254c7dee710bc Mon Sep 17 00:00:00 2001
+From: Yusuke Endoh <mame@ruby-lang.org>
+Date: Sun, 19 Feb 2023 16:10:30 +0900
+Subject: [PATCH] Support the new message format of NameError in Ruby 3.3
+ (#184)
+
+This change accepts the following change of the message of NameError in
+a test.
+
+https://bugs.ruby-lang.org/issues/18285#note-37
+
+```
+old: undefined method `sizee' for #<File:...>
+new: undefined method `sizee' for an instance of File
+```
+---
+ test/core_ext/test_name_error_extension.rb | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/test/core_ext/test_name_error_extension.rb b/test/core_ext/test_name_error_extension.rb
+index 1fdbd45..c58b784 100644
+--- a/test/core_ext/test_name_error_extension.rb
++++ b/test/core_ext/test_name_error_extension.rb
+@@ -49,7 +49,7 @@ def test_correctable_error_objects_are_dumpable
+
+ get_message(error)
+
+- assert_equal "undefined method `sizee' for #<File:test_name_error_extension.rb (closed)>",
+- Marshal.load(Marshal.dump(error)).original_message
++ assert_match(/^undefined method `sizee' for /,
++ Marshal.load(Marshal.dump(error)).original_message)
+ end
+ end
diff --git a/dev-ruby/did_you_mean/metadata.xml b/dev-ruby/did_you_mean/metadata.xml
index f647feefd71d..a295fe013f5f 100644
--- a/dev-ruby/did_you_mean/metadata.xml
+++ b/dev-ruby/did_you_mean/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/diff-lcs/Manifest b/dev-ruby/diff-lcs/Manifest
index 430e37978c38..82610ea80a0c 100644
--- a/dev-ruby/diff-lcs/Manifest
+++ b/dev-ruby/diff-lcs/Manifest
@@ -1 +1,2 @@
-DIST diff-lcs-1.3.gem 46080 BLAKE2B 907536d75c34de86ef28fa044ae785d8ba34c8d1f4d38964f08ef80c14a4fb6176504a39c2e074fb58fc5456214555461a18ae42dc04f371d85dd335b1cbc3dc SHA512 b82de390d22e0c1337ddca923621b1cc842f583a93953ef07a303b428fe3a389f8a4a1a63617a58136c8d6215aff025a3bbec2a2f618e9ea81f471964f93b078
+DIST diff-lcs-1.5.0.gem 52736 BLAKE2B ff405fd3ed5238af3eba2ab4fa277edca0eec66df93b0e8d6fba1a52980d484623e57f70587de31fec1696e556f2ae90d82af4b856a9bd4a248de12aa74ada4a SHA512 5cef9dc1d143217cc402173e2b84ffdcbb8d5a4d05716bdbca732ac00d73591e4cab2f7e792382a3686d8e72fdc32269fd7100941d602ca6d683e7645229ef8d
+DIST diff-lcs-1.5.1.gem 53248 BLAKE2B a40399223c659b548e59605eb537faae8eff139cacf793fea6af1e543016f8afa80049490dccf915edb0063bd3d71705e47c6343e1f616903b8c12a6f37c8cf4 SHA512 ad0357a047b57bb0314b158f92e83485cec9fe6a3dfeb16117d57cf746ee38545f652397093448862ff36d13945bda3b26bb22b5d0d91643b16ae11548ef463b
diff --git a/dev-ruby/diff-lcs/diff-lcs-1.3.ebuild b/dev-ruby/diff-lcs/diff-lcs-1.3.ebuild
deleted file mode 100644
index e46e2d2d75b5..000000000000
--- a/dev-ruby/diff-lcs/diff-lcs-1.3.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc History.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Use the McIlroy-Hunt LCS algorithm to compute differences"
-HOMEPAGE="https://github.com/halostatue/diff-lcs"
-
-LICENSE="|| ( MIT Ruby GPL-2 )"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
diff --git a/dev-ruby/diff-lcs/diff-lcs-1.5.0.ebuild b/dev-ruby/diff-lcs/diff-lcs-1.5.0.ebuild
new file mode 100644
index 000000000000..b80c3802e940
--- /dev/null
+++ b/dev-ruby/diff-lcs/diff-lcs-1.5.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc History.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Use the McIlroy-Hunt LCS algorithm to compute differences"
+HOMEPAGE="https://github.com/halostatue/diff-lcs"
+
+LICENSE="|| ( Artistic MIT GPL-2+ )"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
diff --git a/dev-ruby/diff-lcs/diff-lcs-1.5.1.ebuild b/dev-ruby/diff-lcs/diff-lcs-1.5.1.ebuild
new file mode 100644
index 000000000000..6c8b61e3ef2f
--- /dev/null
+++ b/dev-ruby/diff-lcs/diff-lcs-1.5.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc History.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Use the McIlroy-Hunt LCS algorithm to compute differences"
+HOMEPAGE="https://github.com/halostatue/diff-lcs"
+
+LICENSE="|| ( Artistic MIT GPL-2+ )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+each_ruby_prepare() {
+ # Use the current ruby to test script invocation
+ sed -e "/system/ s:ruby:${RUBY}:" \
+ -i spec/ldiff_spec.rb || die
+}
diff --git a/dev-ruby/diff-lcs/metadata.xml b/dev-ruby/diff-lcs/metadata.xml
index 71f44b96c757..504a4b05299e 100644
--- a/dev-ruby/diff-lcs/metadata.xml
+++ b/dev-ruby/diff-lcs/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/digest/Manifest b/dev-ruby/digest/Manifest
new file mode 100644
index 000000000000..b32c8b7395bf
--- /dev/null
+++ b/dev-ruby/digest/Manifest
@@ -0,0 +1 @@
+DIST digest-3.1.1.tar.gz 59341 BLAKE2B 460ed1567b1e24d56e7be66bec06d4dac4ce86ab21392c192c7455a9d735f84a5450d2482e9844f526985dd83af290f60487c179563f1190b0acf8c6241f1b60 SHA512 7a74654f2240d21d1ffb7d8f4292f9f17c26da7e24c970964ddccc6da7ee2972b834ce0830657f87b28773c84565a172d8a1fa287656929a34a2941f9b28b028
diff --git a/dev-ruby/digest/digest-3.1.1.ebuild b/dev-ruby/digest/digest-3.1.1.ebuild
new file mode 100644
index 000000000000..6fe7973ecf16
--- /dev/null
+++ b/dev-ruby/digest/digest-3.1.1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/digest/extconf.rb ext/digest/bubblebabble/extconf.rb ext/digest/md5/extconf.rb ext/digest/rmd160/extconf.rb ext/digest/sha1/extconf.rb ext/digest/sha2/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="digest.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a framework for message digest libraries"
+HOMEPAGE="https://github.com/ruby/digest"
+SRC_URI="https://github.com/ruby/digest/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:ext/digest/lib:.:test:test/lib -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/digest/metadata.xml b/dev-ruby/digest/metadata.xml
new file mode 100644
index 000000000000..929cfa723d06
--- /dev/null
+++ b/dev-ruby/digest/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/digest</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/diva/Manifest b/dev-ruby/diva/Manifest
index ee15068b08ec..f68ce0cef242 100644
--- a/dev-ruby/diva/Manifest
+++ b/dev-ruby/diva/Manifest
@@ -1,2 +1,2 @@
-DIST diva-0.3.2.gem 13824 BLAKE2B da6236bf24dfca3d2ebc241172ee104c5ce66001446fcef397108695ffa70e37d65de9a2db29a706f6f81c5d6a70934cc59155d94e890f7499ed572df3adecdd SHA512 3506aead4314d8d43c838ca0bc596a8f63e6d0b86da68810999e9101bfad611b8fd4902078ec7495e66704e756d928ec28e916105f22c4260b2681ab97eb08aa
-DIST diva-1.0.0.tar.gz 13654 BLAKE2B 3743a2a0cacf6390a2bb2149e1213c9057c7c348fdb514d622b1edeeaad52a8a255defa0ea556a6bc5f89889d36f9f096b63d48eb03d868797f37ba2a5ba6a03 SHA512 d29375840893f61f022e3afb041855486ff13266a9635c8d944177df0642f1e53c0038b5bd6fecfa2d02296558f6f0f0e4f86089434f6c5f04a440044c9b75ca
+DIST diva-1.1.1.tar.gz 15974 BLAKE2B 2a3b497181a931eb6cf6c43b9d43ff9e0e7a34a753864bec422b69c6d01aa39b5f9dcc6abd54b85ca27b34d38a647c3e80450c2d7dd9cea1c62859eb3366d28d SHA512 36c7048cba2774567191b40ff88fa7804b61cb9334992dadd43a62f18be6635aa48753593ccba93a7c0438adfb7d75266b26b7a62e102aaf99afff7401c4e99a
+DIST diva-2.0.1.tar.gz 16964 BLAKE2B 768f9fa670db229db424a069adcfa4706c2b9969d143cffbbaeeafc9b1a2eeaa6b4a1c53de90206a4625f65f89a2c478957c3b53a21eb00f89a470e6071a6d57 SHA512 248f2b9770bd8d097fdfd7edfd574358d3e47c907d8c7e15b6e4b9cc5b72e9b7b428bac211e4d5a4e516c206afb82ecb069103c85835a1c65ed646e68e4a0a6e
diff --git a/dev-ruby/diva/diva-0.3.2.ebuild b/dev-ruby/diva/diva-0.3.2.ebuild
deleted file mode 100644
index eecba531b5e5..000000000000
--- a/dev-ruby/diva/diva-0.3.2.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Implementation of expression for handling things."
-HOMEPAGE="https://rubygems.org/gems/diva"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "<dev-ruby/addressable-2.6"
diff --git a/dev-ruby/diva/diva-1.0.0.ebuild b/dev-ruby/diva/diva-1.0.0.ebuild
deleted file mode 100644
index 2023272a0fae..000000000000
--- a/dev-ruby/diva/diva-1.0.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Implementation of expression for handling things."
-HOMEPAGE="https://github.com/toshia/diva"
-SRC_URI="https://github.com/toshia/diva/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "<dev-ruby/addressable-2.7"
diff --git a/dev-ruby/diva/diva-1.1.1-r1.ebuild b/dev-ruby/diva/diva-1.1.1-r1.ebuild
new file mode 100644
index 000000000000..2ac67e714eb7
--- /dev/null
+++ b/dev-ruby/diva/diva-1.1.1-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="diva.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Implementation of expression for handling things"
+HOMEPAGE="https://github.com/toshia/diva https://rubygems.org/gems/diva"
+SRC_URI="https://github.com/toshia/diva/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE=""
+
+ruby_add_rdepend "<dev-ruby/addressable-2.9"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+ sed -i -e '/addressable/ s/2.8/2.9/' -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid unneeded dependency on simplecov
+ sed -i -e '/simplecov/I s:^:#:' -e '1irequire "json"' test/test_helper.rb || die
+}
diff --git a/dev-ruby/diva/diva-2.0.1.ebuild b/dev-ruby/diva/diva-2.0.1.ebuild
new file mode 100644
index 000000000000..e63936b904bd
--- /dev/null
+++ b/dev-ruby/diva/diva-2.0.1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="diva.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Implementation of expression for handling things"
+HOMEPAGE="https://github.com/toshia/diva https://rubygems.org/gems/diva"
+SRC_URI="https://github.com/toshia/diva/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE=""
+
+ruby_add_rdepend "<dev-ruby/addressable-2.9"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+ sed -i -e '/addressable/ s/2.8/2.9/' -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid unneeded dependency on simplecov
+ sed -i -e '/simplecov/I s:^:#:' -e '1irequire "json"' test/test_helper.rb || die
+}
diff --git a/dev-ruby/diva/metadata.xml b/dev-ruby/diva/metadata.xml
index 3716f2a545c0..0ac8e7d4d47e 100644
--- a/dev-ruby/diva/metadata.xml
+++ b/dev-ruby/diva/metadata.xml
@@ -1,14 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>naota@gentoo.org</email>
+ <name>Naohiro Aota</name>
</maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
+ <remote-id type="github">toshia/diva</remote-id>
<remote-id type="rubygems">diva</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/dnsruby/Manifest b/dev-ruby/dnsruby/Manifest
index 32054a65a2c1..70305adc952b 100644
--- a/dev-ruby/dnsruby/Manifest
+++ b/dev-ruby/dnsruby/Manifest
@@ -1,2 +1,4 @@
-DIST dnsruby-1.61.2.gem 257024 BLAKE2B 9b87f0f7e1d3062d30128b131e0ba5fdf7dee8114e0e86f6d63ca79e15db686b412906b685a7db0571fb5678de5148cdb59c0e67c6402c193e13772645be31ba SHA512 39ba76a0ca5073b5d03172754f99fad31c3a9af9e2856b930364eb2a5859619b56a1adbf5c84ccae085afcfdc2e32ffd67cf2a92a4e6150b3a113a03e5c7503d
-DIST dnsruby-1.61.3.gem 259584 BLAKE2B 578d6f2b693de5007d4d15350a4fc6cb948f9e16ee9b0bb511e6b6dc92cf828d30e645522b834a6d42af5dd94b85f0675332b2363e0c2ba3b97c9b35b73bd82f SHA512 4cdf6d83c39c3209873e9bbd15ba33f851f3fb878cf746de98cf615b0f547dfc5af8b4be7d505f87f581755ff73de079b6ea3f6f8c5a11074c1c46d5bc9e8c07
+DIST dnsruby-1.70.0.gem 261632 BLAKE2B 07adbe23ab2d1605c1562f4403f2dd864171b047df08037763565a3a459f2d3b3cb79343da2c25aadb498a7fc5a81a42af928d65a22c6b736fa7b64fab96721f SHA512 11caddd4ea5c9b8f85c730708d3cd1e1a130059975dfdecbf307862f7cbb85285d193f9ce010a81fbd8a7518ec720a107118018146d67105f6a4dbd41149a130
+DIST dnsruby-1.71.0.gem 262144 BLAKE2B 6067bad3953eab96856adc6a30f43241c0fc6166ab3476257a502ef593ec186420d6b89c5f8e0c162bdcde5249365c02c6910e0706fbacd0425af5734b7752a8 SHA512 9488de8e6ed72708dd8ec213eb5814d8bf712a5186103cc8bcea26d9d9df1933e3d515bd2915622e643b7a37d9a94ac295f6638ac73fcf30f1dfd26c79d32c63
+DIST dnsruby-1.72.0.gem 262144 BLAKE2B 6b802c6276c32c5df6db5babb73c95f9a7c732159539197001607df89bdb144473d67252721f5f3b292cf2e5fa304611d1ce313e0cd8d09e161d4fa1867ff409 SHA512 2f2a26cc2503fb4d3521d76e4a5d476d1447439035e2bfbec0ebab34352a56f0a9c5445db15baefd7be5ba024f03d574b8b1e49a83ad4799d2c9de20e2966c83
+DIST dnsruby-1.72.1.gem 262144 BLAKE2B 5ef7b91663cb14563e75adf643eae479c787552487c826dade7cb78885ca5f6eaed8ebd7f7529853b57e3fb833c781e15c10f8f8e90241529e2c833aef160df0 SHA512 9113db85001983036ba81d230d04ce2b95fdd9ae6923d7887fe3398dfdbb91d7c005b8b92701b386ef53789b1351ff1e32bc3f00b3254ec9371f4575ea7fed3f
diff --git a/dev-ruby/dnsruby/dnsruby-1.61.2.ebuild b/dev-ruby/dnsruby/dnsruby-1.61.2.ebuild
deleted file mode 100644
index 2653a5accb23..000000000000
--- a/dev-ruby/dnsruby/dnsruby-1.61.2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_DOCDIR="html"
-RUBY_FAKEGEM_EXTRADOC="DNSSEC EXAMPLES README.md"
-inherit ruby-fakegem
-
-DESCRIPTION="A pure Ruby DNS client library"
-HOMEPAGE="https://github.com/alexdalitz/dnsruby"
-
-KEYWORDS="~amd64 ~arm ~x86"
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.4:5 )"
-
-all_ruby_prepare() {
- sed -i -e "/[Cc]overall/d" Rakefile || die
- sed -i -e '/display/d' \
- -e '/Display/,/^}/d' test/spec_helper.rb || die
-}
-
-each_ruby_test() {
- # only run offline tests
- #${RUBY} -I .:lib test/ts_dnsruby.rb || die "test failed"
- ${RUBY} -I .:lib test/ts_offline.rb || die "test failed"
-}
diff --git a/dev-ruby/dnsruby/dnsruby-1.61.3.ebuild b/dev-ruby/dnsruby/dnsruby-1.61.3.ebuild
deleted file mode 100644
index 09e3dc0ebb01..000000000000
--- a/dev-ruby/dnsruby/dnsruby-1.61.3.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_DOCDIR="html"
-RUBY_FAKEGEM_EXTRADOC="DNSSEC EXAMPLES README.md"
-inherit ruby-fakegem
-
-DESCRIPTION="A pure Ruby DNS client library"
-HOMEPAGE="https://github.com/alexdalitz/dnsruby"
-
-KEYWORDS="~amd64 ~arm ~x86"
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/addressable-2.5:0"
-
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.4:5 )"
-
-all_ruby_prepare() {
- sed -i -e "/[Cc]overall/d" Rakefile || die
- sed -i -e '/display/d' \
- -e '/Display/,/^}/d' test/spec_helper.rb || die
-}
-
-each_ruby_test() {
- # only run offline tests
- #${RUBY} -I .:lib test/ts_dnsruby.rb || die "test failed"
- ${RUBY} -I .:lib test/ts_offline.rb || die "test failed"
-}
diff --git a/dev-ruby/dnsruby/dnsruby-1.70.0.ebuild b/dev-ruby/dnsruby/dnsruby-1.70.0.ebuild
new file mode 100644
index 000000000000..008ef3578c1b
--- /dev/null
+++ b/dev-ruby/dnsruby/dnsruby-1.70.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_DOCDIR="html"
+RUBY_FAKEGEM_EXTRADOC="DNSSEC EXAMPLES README.md"
+inherit ruby-fakegem
+
+DESCRIPTION="A pure Ruby DNS client library"
+HOMEPAGE="https://github.com/alexdalitz/dnsruby"
+
+KEYWORDS="~amd64 ~arm ~x86"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/simpleidn-0.1:0"
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.4:5 )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Cc]overall/d" Rakefile || die
+ sed -i -e '/display/d' \
+ -e '/Display/,/^}/d' test/spec_helper.rb || die
+}
+
+each_ruby_test() {
+ # only run offline tests
+ #${RUBY} -I .:lib test/ts_dnsruby.rb || die "test failed"
+ ${RUBY} -I .:lib test/ts_offline.rb || die "test failed"
+}
diff --git a/dev-ruby/dnsruby/dnsruby-1.71.0.ebuild b/dev-ruby/dnsruby/dnsruby-1.71.0.ebuild
new file mode 100644
index 000000000000..13e241e00b9c
--- /dev/null
+++ b/dev-ruby/dnsruby/dnsruby-1.71.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_DOCDIR="html"
+RUBY_FAKEGEM_EXTRADOC="DNSSEC EXAMPLES README.md"
+inherit ruby-fakegem
+
+DESCRIPTION="A pure Ruby DNS client library"
+HOMEPAGE="https://github.com/alexdalitz/dnsruby"
+
+KEYWORDS="~amd64 ~arm ~x86"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/simpleidn-0.2.1:0 =dev-ruby/simpleidn-0.2*:0"
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.4:5 )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Cc]overall/d" Rakefile || die
+ sed -i -e '/display/d' \
+ -e '/Display/,/^}/d' test/spec_helper.rb || die
+}
+
+each_ruby_test() {
+ # only run offline tests
+ # ${RUBY} -I .:lib test/ts_dnsruby.rb || die "test failed"
+ ${RUBY} -I .:lib test/ts_offline.rb || die "test failed"
+}
diff --git a/dev-ruby/dnsruby/dnsruby-1.72.0.ebuild b/dev-ruby/dnsruby/dnsruby-1.72.0.ebuild
new file mode 100644
index 000000000000..13e241e00b9c
--- /dev/null
+++ b/dev-ruby/dnsruby/dnsruby-1.72.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_DOCDIR="html"
+RUBY_FAKEGEM_EXTRADOC="DNSSEC EXAMPLES README.md"
+inherit ruby-fakegem
+
+DESCRIPTION="A pure Ruby DNS client library"
+HOMEPAGE="https://github.com/alexdalitz/dnsruby"
+
+KEYWORDS="~amd64 ~arm ~x86"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/simpleidn-0.2.1:0 =dev-ruby/simpleidn-0.2*:0"
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.4:5 )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Cc]overall/d" Rakefile || die
+ sed -i -e '/display/d' \
+ -e '/Display/,/^}/d' test/spec_helper.rb || die
+}
+
+each_ruby_test() {
+ # only run offline tests
+ # ${RUBY} -I .:lib test/ts_dnsruby.rb || die "test failed"
+ ${RUBY} -I .:lib test/ts_offline.rb || die "test failed"
+}
diff --git a/dev-ruby/dnsruby/dnsruby-1.72.1.ebuild b/dev-ruby/dnsruby/dnsruby-1.72.1.ebuild
new file mode 100644
index 000000000000..13e241e00b9c
--- /dev/null
+++ b/dev-ruby/dnsruby/dnsruby-1.72.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_DOCDIR="html"
+RUBY_FAKEGEM_EXTRADOC="DNSSEC EXAMPLES README.md"
+inherit ruby-fakegem
+
+DESCRIPTION="A pure Ruby DNS client library"
+HOMEPAGE="https://github.com/alexdalitz/dnsruby"
+
+KEYWORDS="~amd64 ~arm ~x86"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/simpleidn-0.2.1:0 =dev-ruby/simpleidn-0.2*:0"
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.4:5 )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Cc]overall/d" Rakefile || die
+ sed -i -e '/display/d' \
+ -e '/Display/,/^}/d' test/spec_helper.rb || die
+}
+
+each_ruby_test() {
+ # only run offline tests
+ # ${RUBY} -I .:lib test/ts_dnsruby.rb || die "test failed"
+ ${RUBY} -I .:lib test/ts_offline.rb || die "test failed"
+}
diff --git a/dev-ruby/dnsruby/metadata.xml b/dev-ruby/dnsruby/metadata.xml
index 65c64fc3479d..a94b95637cb4 100644
--- a/dev-ruby/dnsruby/metadata.xml
+++ b/dev-ruby/dnsruby/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mschiff@gentoo.org</email>
diff --git a/dev-ruby/docile/Manifest b/dev-ruby/docile/Manifest
index b81079f33d8a..9d3bdb510036 100644
--- a/dev-ruby/docile/Manifest
+++ b/dev-ruby/docile/Manifest
@@ -1,2 +1 @@
-DIST docile-1.3.1.tar.gz 14341 BLAKE2B c19b9e3ceb140018b199d9fc59eb64cd94f793a7eadf52562f970dcf302796f59329648506551874fd88c68b4b7da928a7af0cd1a00aa629315feb8d4d54fa2b SHA512 e04c5ad1da3b73b8d5f551a447cd63eb761d6c0c2887a73d0fffcfdd0e5e5d1991184b8d1ba242575708dd2234d96871ecb47fcd7bc6a4986441589cdea07dc2
-DIST docile-1.3.2.tar.gz 14684 BLAKE2B f24ce3ae857d249ce2fc32bcefa505b272327962755e000e51dd13531ad81a039c1da0e97774752cc03444fc3f44fa12212bbe61ff7886ebf5d44076785db3df SHA512 6bba8e8855e43acc3ad314ca500896b861865e4470618f98e720a11a26e226e30d8748096638027e213eeb54838fd1c3b2c9749701476d26cf8bc55c82c4f3ce
+DIST docile-1.4.0.tar.gz 16932 BLAKE2B 7e2472a64bcf27899d537444f77cb1fce587400d04c64abe17e2c39b1a50af027941f6ae72d6423817dc7ddfed8e15aa113cc4d32c30b97f166ff37fb7663000 SHA512 78350144a9b0d84d6025770d05b1e9999f34ce431691c08e73232f8b10537bc265f9f06409ff6feabf2e6f20d018dbb83aaf8c0f66e7dcec3e195475820481cd
diff --git a/dev-ruby/docile/docile-1.3.1.ebuild b/dev-ruby/docile/docile-1.3.1.ebuild
deleted file mode 100644
index a254d6f55653..000000000000
--- a/dev-ruby/docile/docile-1.3.1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md HISTORY.md"
-
-RUBY_FAKEGEM_GEMSPEC="docile.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Turns any Ruby object into a DSL"
-HOMEPAGE="https://ms-ati.github.io/docile/"
-SRC_URI="https://github.com/ms-ati/docile/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/require \"github\/markup\"/d' Rakefile || die
- sed -i -e '/^unless on/,/^end/ s:^:#:' spec/spec_helper.rb || die
-
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/docile/docile-1.3.2.ebuild b/dev-ruby/docile/docile-1.3.2.ebuild
deleted file mode 100644
index 48f01d833575..000000000000
--- a/dev-ruby/docile/docile-1.3.2.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md HISTORY.md"
-
-RUBY_FAKEGEM_GEMSPEC="docile.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Turns any Ruby object into a DSL"
-HOMEPAGE="https://ms-ati.github.io/docile/"
-SRC_URI="https://github.com/ms-ati/docile/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/require \"github\/markup\"/d' Rakefile || die
- sed -i -e '/^unless on/,/^end/ s:^:#:' spec/spec_helper.rb || die
-
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/docile/docile-1.4.0-r1.ebuild b/dev-ruby/docile/docile-1.4.0-r1.ebuild
new file mode 100644
index 000000000000..d60c8085eb29
--- /dev/null
+++ b/dev-ruby/docile/docile-1.4.0-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md HISTORY.md"
+
+RUBY_FAKEGEM_GEMSPEC="docile.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Turns any Ruby object into a DSL"
+HOMEPAGE="https://ms-ati.github.io/docile/"
+SRC_URI="https://github.com/ms-ati/docile/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/require \"github\/markup\"/d' Rakefile || die
+ sed -i -e '/simplecov/,/unshift/ s:^:#:' spec/spec_helper.rb || die
+
+ sed -i -e 's:_relative ": "./:' -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Fix spec for different error message in ruby33 which no longer shows the class
+ sed -i -e '/undefined method/ s/nil:NilClass/nil/' spec/docile_spec.rb || die
+}
diff --git a/dev-ruby/docile/metadata.xml b/dev-ruby/docile/metadata.xml
index 28ab0c15f206..e09f8897589e 100644
--- a/dev-ruby/docile/metadata.xml
+++ b/dev-ruby/docile/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ms-ati/docile</remote-id>
+ <remote-id type="rubygems">docile</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/docker-api/Manifest b/dev-ruby/docker-api/Manifest
new file mode 100644
index 000000000000..aa1274f3bf86
--- /dev/null
+++ b/dev-ruby/docker-api/Manifest
@@ -0,0 +1 @@
+DIST docker-api-2.2.0.tar.gz 49637 BLAKE2B 1bdcce5e0ca898128434acf7d76306f2c8c08aab8da834bcd129f8be72772073208209b55c9b0397980bdf81e3784c292fe332af5ef5f6bf44d0ab52cfc8259a SHA512 7be935dabb5faf2b05a635c55e1f687ebc16ef9155b9e0daeba7eaffa4c8fda056b54985f8c629b07cdb94558546dd497153174765d2bed6e090a44bc287c53f
diff --git a/dev-ruby/docker-api/docker-api-2.2.0.ebuild b/dev-ruby/docker-api/docker-api-2.2.0.ebuild
new file mode 100644
index 000000000000..4f6b1e3ab087
--- /dev/null
+++ b/dev-ruby/docker-api/docker-api-2.2.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="docker-api.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A simple REST client for the Docker Remote API"
+HOMEPAGE="https://github.com/upserve/docker-api"
+SRC_URI="https://github.com/upserve/docker-api/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/excon-0.47.0
+ dev-ruby/multi_json
+"
+
+ruby_add_bdepend "test? ( dev-ruby/rspec-its )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/ s:^:#:' -e '/formatter/ s:^:#:' spec/spec_helper.rb || die
+ sed -i -e '/\(single_cov\|SingleCov\)/ s:^:#:' spec/*.rb spec/*/*.rb || die
+ rm -f spec/cov_spec.rb || die
+
+ # Avoid specs requiring a running docker daemon
+ rm -f spec/docker_spec.rb spec/docker/{container,event,exec,image,network,volume}_spec.rb || die
+}
diff --git a/dev-ruby/docker-api/metadata.xml b/dev-ruby/docker-api/metadata.xml
new file mode 100644
index 000000000000..caf979ebb3b6
--- /dev/null
+++ b/dev-ruby/docker-api/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">upserve/docker-api</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/domain_name/Manifest b/dev-ruby/domain_name/Manifest
index 09ec66141672..493abe66eb36 100644
--- a/dev-ruby/domain_name/Manifest
+++ b/dev-ruby/domain_name/Manifest
@@ -1,2 +1,3 @@
-DIST domain_name-0.5.20180417.gem 124928 BLAKE2B 56c8852c09dfabc2291a08d89b4dbb6c9c9c3aecce40fab2a176e2183ebd7b793a6677256f417b0c9cb6cd61680a738038ee2d14e4d15d9ab5a952d666014d27 SHA512 e960aa4445e19ff3e71825d94f85519ec9b1600dab64d139bf21208aec6fe1dc279e9fda6c64fd518ab22783464ba9a4d43f20ceb7699daede981cbf7d5e1876
DIST domain_name-0.5.20190701.gem 131072 BLAKE2B 86ee60824d9480e71535312fb72c192f3d88326c72539b833132872ff15298842f09bac612e9c3d8b87a3ef6a60459b14e777105613fd76da79757d6a30abcbc SHA512 445f0e8a377bb700f8a3b926970f4351d28759e237947d6c755afff52726141c6b821b43b2a761d4d0d6237969304ef749404a5f383f69710b04803410dc70aa
+DIST domain_name-0.6.20231109.gem 148480 BLAKE2B 87a68ab758126e150193373c1f4807e16e8390f5a2fa5c1c55ad443a6cf1d16d2fb66167313f7858f2a729729222900fae57994d268b3077a7469cec375dc67a SHA512 8d9dff3943001b340d1c19303291a19b284e6f7d0165413fbd797804dc9ff13c92b09a66efdded2489961a54105f2eed91043cdde279bef4bf82628c822d9257
+DIST domain_name-0.6.20240107.gem 148480 BLAKE2B d87f505fcff0e828d7c0870b9e185bd7a3a22bee3027a1de5b3d5c80f09d06bb666b3f7d408b8418f21a57aea3400a8932b7ace070637196069a2401863cd00e SHA512 9911389bdfdae984f697726cd7feff5a41b944a98982cfa76d49002c4f64e51d0ec7db6259eddc97fecbcc13c9723134af26b83e050c31943dc8495866874d59
diff --git a/dev-ruby/domain_name/domain_name-0.5.20180417.ebuild b/dev-ruby/domain_name/domain_name-0.5.20180417.ebuild
deleted file mode 100644
index 4428eb53e79d..000000000000
--- a/dev-ruby/domain_name/domain_name-0.5.20180417.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Domain Name manipulation library for Ruby"
-HOMEPAGE="https://github.com/knu/ruby-domain_name"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/unf-0.0.5-r1:0"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/test-unit-2.5.5
- dev-ruby/shoulda
- )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/,/end/ d; i gem "unf"' test/helper.rb || die
- rm Gemfile* || die
-
- # Remove development dependencies
- sed -i -e '/dependency.*\(shoulda\|bundler\|jeweler\|rdoc\)/d' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # Avoid dependency on git.
- sed -i -e 's/`git ls-files`/""/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib:test test/test_*.rb
-}
diff --git a/dev-ruby/domain_name/domain_name-0.5.20190701-r2.ebuild b/dev-ruby/domain_name/domain_name-0.5.20190701-r2.ebuild
new file mode 100644
index 000000000000..d1d61e16195b
--- /dev/null
+++ b/dev-ruby/domain_name/domain_name-0.5.20190701-r2.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 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Domain Name manipulation library for Ruby"
+HOMEPAGE="https://github.com/knu/ruby-domain_name"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="test"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/test-unit-2.5.5
+ dev-ruby/shoulda
+ )"
+
+PATCHES=(
+ # Pending upstream and conceptually acked, unf is obsolete
+ # with > ruby22.
+ "${FILESDIR}"/${PN}-0.5.20190701-drop-unf.patch
+)
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/,/end/ d' test/helper.rb || die
+ rm Gemfile* || die
+
+ # Remove development dependencies
+ sed -i -e '/dependency.*\(shoulda\|bundler\|jeweler\|rdoc\)/d' \
+ ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid dependency on git.
+ sed -i -e 's/`git ls-files`/""/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ruby-ng_testrb-2 -Ilib:test test/test_*.rb
+}
diff --git a/dev-ruby/domain_name/domain_name-0.5.20190701.ebuild b/dev-ruby/domain_name/domain_name-0.5.20190701.ebuild
deleted file mode 100644
index ef1ab27bc613..000000000000
--- a/dev-ruby/domain_name/domain_name-0.5.20190701.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Domain Name manipulation library for Ruby"
-HOMEPAGE="https://github.com/knu/ruby-domain_name"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/unf-0.0.5-r1:0"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/test-unit-2.5.5
- dev-ruby/shoulda
- )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/,/end/ d; i gem "unf"' test/helper.rb || die
- rm Gemfile* || die
-
- # Remove development dependencies
- sed -i -e '/dependency.*\(shoulda\|bundler\|jeweler\|rdoc\)/d' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # Avoid dependency on git.
- sed -i -e 's/`git ls-files`/""/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib:test test/test_*.rb
-}
diff --git a/dev-ruby/domain_name/domain_name-0.6.20231109.ebuild b/dev-ruby/domain_name/domain_name-0.6.20231109.ebuild
new file mode 100644
index 000000000000..6e9270ee8cae
--- /dev/null
+++ b/dev-ruby/domain_name/domain_name-0.6.20231109.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Domain Name manipulation library for Ruby"
+HOMEPAGE="https://github.com/knu/ruby-domain_name"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="test"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/test-unit-2.5.5
+ dev-ruby/shoulda
+ )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/,/end/ d' test/helper.rb || die
+ rm Gemfile* || die
+
+ # Remove development dependencies
+ sed -i -e '/dependency.*\(shoulda\|bundler\|jeweler\|rdoc\)/d' \
+ ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid dependency on git.
+ sed -i -e 's/`git ls-files`/""/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ruby-ng_testrb-2 -Ilib:test test/test_*.rb
+}
diff --git a/dev-ruby/domain_name/domain_name-0.6.20240107.ebuild b/dev-ruby/domain_name/domain_name-0.6.20240107.ebuild
new file mode 100644
index 000000000000..f64a404d9edf
--- /dev/null
+++ b/dev-ruby/domain_name/domain_name-0.6.20240107.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Domain Name manipulation library for Ruby"
+HOMEPAGE="https://github.com/knu/ruby-domain_name"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="test"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/test-unit-2.5.5
+ )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/,/end/ d' test/helper.rb || die
+ rm Gemfile* || die
+
+ # Remove development dependencies
+ sed -i -e '/dependency.*\(shoulda\|bundler\|jeweler\|rdoc\)/d' \
+ ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid dependency on git.
+ sed -i -e 's/`git ls-files`/""/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ruby-ng_testrb-2 -Ilib:test test/test_*.rb
+}
diff --git a/dev-ruby/domain_name/files/domain_name-0.5.20190701-drop-unf.patch b/dev-ruby/domain_name/files/domain_name-0.5.20190701-drop-unf.patch
new file mode 100644
index 000000000000..d9b6c4df65a5
--- /dev/null
+++ b/dev-ruby/domain_name/files/domain_name-0.5.20190701-drop-unf.patch
@@ -0,0 +1,126 @@
+https://github.com/knu/ruby-domain_name/pull/11
+(see also https://github.com/knu/ruby-domain_name/pull/22)
+
+From 28db4ddb42adb827fc54935a6308bae03d7e8e6c Mon Sep 17 00:00:00 2001
+From: tayler1 <mtayler@gmx.com>
+Date: Sat, 4 Feb 2017 18:20:07 +0300
+Subject: [PATCH 1/3] Removed unf dependency for ruby > 2.2
+
+--- a/domain_name.gemspec
++++ b/domain_name.gemspec
+@@ -28,7 +28,7 @@ Suffix List.
+ "README.md"
+ ]
+
+- gem.add_runtime_dependency("unf", ["< 1.0.0", ">= 0.0.5"])
++ gem.add_runtime_dependency("unf", ["< 1.0.0", ">= 0.0.5"]) if RUBY_VERSION < "2.2"
+ gem.add_development_dependency("test-unit", "~> 2.5.5")
+ gem.add_development_dependency("bundler", [">= 1.2.0"])
+ gem.add_development_dependency("rake", [">= 0.9.2.2", *("< 11" if RUBY_VERSION < "1.9")])
+--- a/lib/domain_name.rb
++++ b/lib/domain_name.rb
+@@ -8,7 +8,7 @@
+ require 'domain_name/version'
+ require 'domain_name/punycode'
+ require 'domain_name/etld_data'
+-require 'unf'
++require 'unf' if RUBY_VERSION < '2.2'
+ require 'ipaddr'
+
+ # Represents a domain name ready for extracting its registered domain
+@@ -286,7 +286,11 @@ class << self
+ # Normalizes a _domain_ using the Punycode algorithm as necessary.
+ # The result will be a downcased, ASCII-only string.
+ def normalize(domain)
+- DomainName::Punycode.encode_hostname(domain.chomp(DOT).to_nfc).downcase
++ if RUBY_VERSION >= '2.2'
++ DomainName::Punycode.encode_hostname(domain.chomp(DOT).unicode_normalize).downcase
++ else
++ DomainName::Punycode.encode_hostname(domain.chomp(DOT).to_nfc).downcase
++ end
+ end
+ end
+ end
+--- a/test/test_domain_name-punycode.rb
++++ b/test/test_domain_name-punycode.rb
+@@ -91,7 +91,12 @@ class TestDomainName < Test::Unit::TestCase
+ '-> $1.00 <--']
+ ].each { |title, cps, punycode|
+ assert_equal punycode, DomainName::Punycode.encode(cps.pack('U*')), title
+- assert_equal cps.pack('U*').to_nfc, DomainName::Punycode.decode(punycode), title
++ cps_norm = if RUBY_VERSION >= '2.2'
++ cps.pack('U*').unicode_normalize
++ else
++ cps.pack('U*').to_nfc
++ end
++ assert_equal cps_norm, DomainName::Punycode.decode(punycode), title
+ }
+ end
+ end
+
+From 9d2912428799cd860d96c24d51292f2b03e857e2 Mon Sep 17 00:00:00 2001
+From: tayler1 <mtayler@gmx.com>
+Date: Mon, 6 Feb 2017 01:46:03 +0300
+Subject: [PATCH 2/3] fix
+
+--- a/lib/domain_name.rb
++++ b/lib/domain_name.rb
+@@ -8,8 +8,12 @@
+ require 'domain_name/version'
+ require 'domain_name/punycode'
+ require 'domain_name/etld_data'
+-require 'unf' if RUBY_VERSION < '2.2'
+ require 'ipaddr'
++if RUBY_VERSION < '2.2'
++ require 'unf'
++else
++ require 'unicode_normalize/normalize'
++end
+
+ # Represents a domain name ready for extracting its registered domain
+ # and TLD.
+@@ -285,11 +289,15 @@ def inspect
+ class << self
+ # Normalizes a _domain_ using the Punycode algorithm as necessary.
+ # The result will be a downcased, ASCII-only string.
+- def normalize(domain)
+- if RUBY_VERSION >= '2.2'
+- DomainName::Punycode.encode_hostname(domain.chomp(DOT).unicode_normalize).downcase
+- else
+- DomainName::Punycode.encode_hostname(domain.chomp(DOT).to_nfc).downcase
++ if RUBY_VERSION >= '2.2'
++ def normalize(domain)
++ domain.chomp!(DOT)
++ DomainName::Punycode.encode_hostname(domain.unicode_normalize).downcase
++ end
++ else
++ def normalize(domain)
++ domain.chomp!(DOT)
++ DomainName::Punycode.encode_hostname(domain.to_nfc).downcase
+ end
+ end
+ end
+
+From 6d76a14ba3b7c42d4fd3f4fab30c0099ffc51c2b Mon Sep 17 00:00:00 2001
+From: tayler1 <mtayler@gmx.com>
+Date: Mon, 6 Feb 2017 02:35:55 +0300
+Subject: [PATCH 3/3] Fix frozen string
+
+--- a/lib/domain_name.rb
++++ b/lib/domain_name.rb
+@@ -291,13 +291,11 @@ class << self
+ # The result will be a downcased, ASCII-only string.
+ if RUBY_VERSION >= '2.2'
+ def normalize(domain)
+- domain.chomp!(DOT)
+- DomainName::Punycode.encode_hostname(domain.unicode_normalize).downcase
++ DomainName::Punycode.encode_hostname(domain.chomp(DOT).unicode_normalize).downcase
+ end
+ else
+ def normalize(domain)
+- domain.chomp!(DOT)
+- DomainName::Punycode.encode_hostname(domain.to_nfc).downcase
++ DomainName::Punycode.encode_hostname(domain.chomp(DOT).to_nfc).downcase
+ end
+ end
+ end
diff --git a/dev-ruby/domain_name/metadata.xml b/dev-ruby/domain_name/metadata.xml
index 344df3a838d0..fb3b2ea76c4a 100644
--- a/dev-ruby/domain_name/metadata.xml
+++ b/dev-ruby/domain_name/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/dotenv/Manifest b/dev-ruby/dotenv/Manifest
deleted file mode 100644
index 1b618acf822c..000000000000
--- a/dev-ruby/dotenv/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST dotenv-2.7.3.tar.gz 19765 BLAKE2B 65f4171c8304c207ea94bd31ce2b63ae786d4794c538260ee8aa1ad8714fc1736a193febdee1299b62b82066e72be0000dffbff69a272ed94c19922bd6fc15f6 SHA512 0ac46b4c037c4d5a6e9517c7c39a4fc0f52a5a7f153602007196f6929f8be05678186a227046195fabfa4e59e6099d626f436da66041ae30c46ed062c7c5c33a
-DIST dotenv-2.7.4.tar.gz 19800 BLAKE2B 53719e21aecff63016c12b8ed18f0bbf66389abe3b73c4426be1af489833cd8967b3ea4bd3183549c28d2abdc6f2cda33ce31873d8a0cac5c88c8487226ce7c8 SHA512 dd5fbc1cbb44bde938067d37834304a730bee6e2e625784ac3612f3a597c513679d52607d8924ca05939d6093891108aab3ae6eeab55be2f38238b7c2a78aefd
-DIST dotenv-2.7.5.tar.gz 19873 BLAKE2B a435d7728bf0352a26e8c75d82e21c481fab4ba160b065742fe7976b07d9299a46bba379d9dd9b1d52b5188ddac5030662622dcdac036a157c04b56601a4eae9 SHA512 3036abf5fda12b46d38c9727ffb033628216ecb9e091b8f9a62c8ff2cbed93c60358332b12ad4ba7230fdcc866682916c3e37c5f6954b2a1355abe065c758bcc
diff --git a/dev-ruby/dotenv/dotenv-2.7.3.ebuild b/dev-ruby/dotenv/dotenv-2.7.3.ebuild
deleted file mode 100644
index 2485712a4bad..000000000000
--- a/dev-ruby/dotenv/dotenv-2.7.3.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md Changelog.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Loads environment variables from .env into ENV"
-HOMEPAGE="https://github.com/bkeepers/dotenv"
-SRC_URI="https://github.com/bkeepers/dotenv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="2"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/spring dev-ruby/rails )"
-
-all_ruby_prepare() {
- sed -i -e '/:guard/,/end/ s:^:#:' \
- -e '5igem "rspec", "~> 3.0"' Gemfile || die
-
- sed -i -e '/rubocop/ s:^:#:' -e 's/git ls-files/find/' dotenv.gemspec || die
-}
-
-each_ruby_prepare() {
- sed -i -e "s:ruby -v:${RUBY} -v:g" spec/dotenv/parser_spec.rb || die
-}
diff --git a/dev-ruby/dotenv/dotenv-2.7.4.ebuild b/dev-ruby/dotenv/dotenv-2.7.4.ebuild
deleted file mode 100644
index 2485712a4bad..000000000000
--- a/dev-ruby/dotenv/dotenv-2.7.4.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md Changelog.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Loads environment variables from .env into ENV"
-HOMEPAGE="https://github.com/bkeepers/dotenv"
-SRC_URI="https://github.com/bkeepers/dotenv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="2"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/spring dev-ruby/rails )"
-
-all_ruby_prepare() {
- sed -i -e '/:guard/,/end/ s:^:#:' \
- -e '5igem "rspec", "~> 3.0"' Gemfile || die
-
- sed -i -e '/rubocop/ s:^:#:' -e 's/git ls-files/find/' dotenv.gemspec || die
-}
-
-each_ruby_prepare() {
- sed -i -e "s:ruby -v:${RUBY} -v:g" spec/dotenv/parser_spec.rb || die
-}
diff --git a/dev-ruby/dotenv/dotenv-2.7.5.ebuild b/dev-ruby/dotenv/dotenv-2.7.5.ebuild
deleted file mode 100644
index 7a44cde278c3..000000000000
--- a/dev-ruby/dotenv/dotenv-2.7.5.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md Changelog.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Loads environment variables from .env into ENV"
-HOMEPAGE="https://github.com/bkeepers/dotenv"
-SRC_URI="https://github.com/bkeepers/dotenv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="2"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/spring dev-ruby/rails )"
-
-all_ruby_prepare() {
- sed -i -e '/:guard/,/end/ s:^:#:' \
- -e '5igem "rspec", "~> 3.0"' Gemfile || die
-
- sed -i -e '/rubocop/ s:^:#:' -e 's/git ls-files/find/' dotenv.gemspec || die
-}
-
-each_ruby_prepare() {
- sed -i -e "s:ruby -v:${RUBY} -v:g" spec/dotenv/parser_spec.rb || die
-}
diff --git a/dev-ruby/dotenv/metadata.xml b/dev-ruby/dotenv/metadata.xml
deleted file mode 100644
index 5097a46b27a4..000000000000
--- a/dev-ruby/dotenv/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">bkeepers/dotenv</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/drb/Manifest b/dev-ruby/drb/Manifest
new file mode 100644
index 000000000000..ba035368f212
--- /dev/null
+++ b/dev-ruby/drb/Manifest
@@ -0,0 +1,2 @@
+DIST drb-2.2.0.tar.gz 36203 BLAKE2B 5c60cd5dd8ab26434046435d98e203c7a50c6160edeb5373527140df8a26c7494a05a00b7faff11f1a8cecbeb963736e87adc1a9967e78b6c81b47d5c234eab3 SHA512 763f1ab8645d0bf168fc56bbde85fd4992405530d1764f49e18f2529713b3b2d62cc314b65e59472c11bbbb964e5133fe463b1f266ffde35f79b836a527c864a
+DIST drb-2.2.1.tar.gz 36179 BLAKE2B a09b88835cb211b9599d4b714c3921c6bd4c35171e58cfcf5b7e68e8811b6a253ecdf9ebc697d1c5007fdd4e246effb73183c2440b4187fda060fcf314764ec0 SHA512 f896c068306908977a3554ba9adc88ec8e145a6ef60c2b32ab15402a1d20ff206ddbcce955b7e7f19bdbbd8613521819a56733bf0d2ee28e72242a7f5257cf38
diff --git a/dev-ruby/drb/drb-2.2.0.ebuild b/dev-ruby/drb/drb-2.2.0.ebuild
new file mode 100644
index 000000000000..b2d9094d48d8
--- /dev/null
+++ b/dev-ruby/drb/drb-2.2.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="drb.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Distributed object system for Ruby"
+HOMEPAGE="https://github.com/ruby/drb"
+SRC_URI="https://github.com/ruby/drb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/ruby2_keywords"
+
+all_ruby_prepare() {
+ sed -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/drb/drb-2.2.1.ebuild b/dev-ruby/drb/drb-2.2.1.ebuild
new file mode 100644
index 000000000000..f47a54d0c2b1
--- /dev/null
+++ b/dev-ruby/drb/drb-2.2.1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="drb.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Distributed object system for Ruby"
+HOMEPAGE="https://github.com/ruby/drb"
+SRC_URI="https://github.com/ruby/drb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+ruby_add_rdepend "dev-ruby/ruby2_keywords"
+
+all_ruby_prepare() {
+ sed -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/drb/metadata.xml b/dev-ruby/drb/metadata.xml
new file mode 100644
index 000000000000..d5b22652c3b4
--- /dev/null
+++ b/dev-ruby/drb/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/drb</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/dry-core/Manifest b/dev-ruby/dry-core/Manifest
new file mode 100644
index 000000000000..150f22cc25c2
--- /dev/null
+++ b/dev-ruby/dry-core/Manifest
@@ -0,0 +1 @@
+DIST dry-core-1.0.1.tar.gz 44746 BLAKE2B fb85107dd68dfb2a8d3ee2e66b4bb8b416ac325be4d28bcbbf5605e0a90992eb8aa85a8fad3cba8f228a5a7e50109cd2c1dbf920eebc3423d282055204c6b0a5 SHA512 d769795459a0ffc007eb66e2b9af9be4e635c620a5ca54a76113057b495e1126600a572761d8ff33a3ee6a4fca948f6fc29d3200e7ba0b56c1bb600a4749bbd4
diff --git a/dev-ruby/dry-core/dry-core-1.0.1.ebuild b/dev-ruby/dry-core/dry-core-1.0.1.ebuild
new file mode 100644
index 000000000000..001c2b5367f1
--- /dev/null
+++ b/dev-ruby/dry-core/dry-core-1.0.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="dry-core.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A toolset of small support modules used throughout the dry-rb ecosystem"
+
+HOMEPAGE="https://dry-rb.org/gems/dry-core/"
+SRC_URI="https://github.com/dry-rb/dry-core/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="$(ver_cut 1)"
+
+# Skip tests for now to avoid circular dependencies.
+RESTRICT=test
+
+ruby_add_rdepend "
+ dev-ruby/concurrent-ruby:1
+ >=dev-ruby/zeitwerk-2.6:2
+"
+
+#ruby_add_bdepend "test? (
+# dev-ruby/dry-types
+#)"
diff --git a/dev-ruby/dry-core/metadata.xml b/dev-ruby/dry-core/metadata.xml
new file mode 100644
index 000000000000..20009da5e66c
--- /dev/null
+++ b/dev-ruby/dry-core/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">dry-rb/dry-core</remote-id>
+ <remote-id type="rubygems">dry-core</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/dry-inflector/Manifest b/dev-ruby/dry-inflector/Manifest
new file mode 100644
index 000000000000..3e5e59e74b71
--- /dev/null
+++ b/dev-ruby/dry-inflector/Manifest
@@ -0,0 +1 @@
+DIST dry-inflector-1.0.0.tar.gz 25030 BLAKE2B 628f5af9ac1517e6711242b6678808c0b64f1f1bb3391e0792fe85ccebfe4c334e2ee62370bd3a13f842a435028b684c09b8215c78ab7fbe2742679863f8e27d SHA512 34b5e723982621e3e090fe9273310d6dfd6e8145c274d7eefe2e7c3bdcc2c6222c2a6bc6e0bbd70d79226b81f1cd89d8364692421ef3dd361432a03b1a8d1c06
diff --git a/dev-ruby/dry-inflector/dry-inflector-1.0.0.ebuild b/dev-ruby/dry-inflector/dry-inflector-1.0.0.ebuild
new file mode 100644
index 000000000000..d51c485abdbd
--- /dev/null
+++ b/dev-ruby/dry-inflector/dry-inflector-1.0.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="dry-inflector.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="String inflections for dry-rb"
+
+HOMEPAGE="https://dry-rb.org/gems/dry-inflector/"
+SRC_URI="https://github.com/dry-rb/dry-inflector/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="$(ver_cut 1)"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/warning )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|coverage\)/ s/^/#/' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/dry-inflector/metadata.xml b/dev-ruby/dry-inflector/metadata.xml
new file mode 100644
index 000000000000..80fa77f4fe4c
--- /dev/null
+++ b/dev-ruby/dry-inflector/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">dry-rb/dry-inflector</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/dry-logic/Manifest b/dev-ruby/dry-logic/Manifest
new file mode 100644
index 000000000000..225926e58b44
--- /dev/null
+++ b/dev-ruby/dry-logic/Manifest
@@ -0,0 +1 @@
+DIST dry-logic-1.5.0.tar.gz 38438 BLAKE2B 9b00ac4bed7c400858554b3485f0bce04633caaac2b70bd0c76c1d11cb20b1ab34136a3e2189e247b012833f10219140366c18faa7af09d603b3b8cca4778dda SHA512 cde3a01c0c16af1bd40f6c0c39b8777e464d6796f5c1eb52297453bb4301934c23ec48ac0e2bcc023844252b5da38687ae0bb8977f99c7f656d3fe18708bb7b8
diff --git a/dev-ruby/dry-logic/dry-logic-1.5.0.ebuild b/dev-ruby/dry-logic/dry-logic-1.5.0.ebuild
new file mode 100644
index 000000000000..e6064b73df3f
--- /dev/null
+++ b/dev-ruby/dry-logic/dry-logic-1.5.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="dry-logic.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Predicate logic with rule composition"
+
+HOMEPAGE="https://dry-rb.org/gems/dry-logic/"
+SRC_URI="https://github.com/dry-rb/dry-logic/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="$(ver_cut 1)"
+IUSE="test"
+
+ruby_add_rdepend "
+ dev-ruby/concurrent-ruby:1
+ dev-ruby/dry-core:1
+ >=dev-ruby/zeitwerk-2.6:2
+"
+
+ruby_add_bdepend "test? ( dev-ruby/warning )"
+
+all_ruby_prepare() {
+ sed -e '3irequire "uri"' -i spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/dry-logic/metadata.xml b/dev-ruby/dry-logic/metadata.xml
new file mode 100644
index 000000000000..faffee60e265
--- /dev/null
+++ b/dev-ruby/dry-logic/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">dry-rb/dry-logic</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/dry-monads/Manifest b/dev-ruby/dry-monads/Manifest
new file mode 100644
index 000000000000..c6d8af4e7536
--- /dev/null
+++ b/dev-ruby/dry-monads/Manifest
@@ -0,0 +1 @@
+DIST dry-monads-1.6.0.tar.gz 77141 BLAKE2B 714b2a35b6136639e4b071f01dcdc01a83b447731906b0b98f9101a4d524f77395d8f2e77b7c09ea8bd039f53de6ba2fbaeaaf805d63d299d10fa5c92b07080a SHA512 080e02299f2a39159bdf571afa4678ccade07e363f60ad7fef397e07dfa156e9a187757cc6de199fbc876c79110e73b9541369d3d04b32fdb6bde13e96bcb300
diff --git a/dev-ruby/dry-monads/dry-monads-1.6.0.ebuild b/dev-ruby/dry-monads/dry-monads-1.6.0.ebuild
new file mode 100644
index 000000000000..c9bedd157b16
--- /dev/null
+++ b/dev-ruby/dry-monads/dry-monads-1.6.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="dry-monads.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Common monads for Ruby"
+
+HOMEPAGE="https://dry-rb.org/gems/dry-monads/"
+SRC_URI="https://github.com/dry-rb/dry-monads/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="$(ver_cut 1)"
+IUSE="test"
+
+ruby_add_rdepend "
+ dev-ruby/concurrent-ruby:1
+ dev-ruby/dry-core:1
+ >=dev-ruby/zeitwerk-2.6:2
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/dry-types
+ dev-ruby/warning
+)"
diff --git a/dev-ruby/dry-monads/metadata.xml b/dev-ruby/dry-monads/metadata.xml
new file mode 100644
index 000000000000..01236a96b46e
--- /dev/null
+++ b/dev-ruby/dry-monads/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">dry-rb/dry-monads</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/dry-struct/Manifest b/dev-ruby/dry-struct/Manifest
new file mode 100644
index 000000000000..93ee03259b59
--- /dev/null
+++ b/dev-ruby/dry-struct/Manifest
@@ -0,0 +1 @@
+DIST dry-struct-1.6.0.tar.gz 37804 BLAKE2B c41a764cea576126ace4729dcc34ccd88c80f8751d8e9e11c825fc4caccd3a2cf5b7c92b129d2275cc8731f70ae98271462a359e8f6acf3c5ba2242513d20e6b SHA512 78258a74fd4b359142d42133df4f632dca7518959a15e42d544ee3b3e94ff5f2c7d14b2ed38609a125c788d092203d574d46f5a1030f9ec28738f76d24d7cdcc
diff --git a/dev-ruby/dry-struct/dry-struct-1.6.0.ebuild b/dev-ruby/dry-struct/dry-struct-1.6.0.ebuild
new file mode 100644
index 000000000000..e40ded27b8c5
--- /dev/null
+++ b/dev-ruby/dry-struct/dry-struct-1.6.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="dry-struct.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Typed structs and value objects"
+
+HOMEPAGE="https://dry-rb.org/gems/dry-struct/"
+SRC_URI="https://github.com/dry-rb/dry-struct/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="$(ver_cut 1)"
+IUSE="test"
+
+ruby_add_rdepend "
+ dev-ruby/dry-core:1
+ >=dev-ruby/dry-types-1.7:1
+ >=dev-ruby/ice_nine-0.11:0
+ >=dev-ruby/zeitwerk-2.6:2
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/dry-monads
+ dev-ruby/dry-struct
+ dev-ruby/warning
+)"
+
+all_ruby_prepare() {
+ # Avoid broken spec, already fixed upstream.
+ sed -e '/with Test::User/ s/context/xcontext/' \
+ -e '/with Test::SuperUSer/ s/context/xcontext/' \
+ -i spec/extensions/pretty_print_spec.rb || die
+}
diff --git a/dev-ruby/dry-struct/metadata.xml b/dev-ruby/dry-struct/metadata.xml
new file mode 100644
index 000000000000..c0346959b54a
--- /dev/null
+++ b/dev-ruby/dry-struct/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">dry-rb/dry-struct</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/dry-types/Manifest b/dev-ruby/dry-types/Manifest
new file mode 100644
index 000000000000..5fe862332caf
--- /dev/null
+++ b/dev-ruby/dry-types/Manifest
@@ -0,0 +1 @@
+DIST dry-types-1.7.2.tar.gz 101450 BLAKE2B e0ebd390bea2178a9a348b65bc7cb5af8657d61f66a77ba52ba26e64aab44c2bd6d142c164c023002244aded5da7175199108c069635b1031d469d7e678f0ed1 SHA512 401372b73b55947d1ba6619903cacd422be1a04ffdd3746d3323a68afa98fcea3d87a4bf1d81a9e9a389b2dcd8dd3a9d096f6982d168528d9fadf60e0fc33076
diff --git a/dev-ruby/dry-types/dry-types-1.7.2.ebuild b/dev-ruby/dry-types/dry-types-1.7.2.ebuild
new file mode 100644
index 000000000000..5ad028a60c15
--- /dev/null
+++ b/dev-ruby/dry-types/dry-types-1.7.2.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="dry-types.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Type system for Ruby supporting coercions, constraints and complex types."
+
+HOMEPAGE="https://dry-rb.org/gems/dry-types/"
+SRC_URI="https://github.com/dry-rb/dry-types/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="$(ver_cut 1)"
+IUSE="test"
+
+ruby_add_rdepend "
+ dev-ruby/bigdecimal:0
+ dev-ruby/concurrent-ruby:1
+ dev-ruby/dry-core:1
+ dev-ruby/dry-inflector:1
+ >=dev-ruby/dry-logic-1.4:1
+ >=dev-ruby/zeitwerk-2.6:2
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/dry-monads
+ dev-ruby/dry-struct
+ dev-ruby/warning
+)"
diff --git a/dev-ruby/dry-types/metadata.xml b/dev-ruby/dry-types/metadata.xml
new file mode 100644
index 000000000000..8cb474b108c3
--- /dev/null
+++ b/dev-ruby/dry-types/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">dry-rb/dry-types</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/duktape-rb/Manifest b/dev-ruby/duktape-rb/Manifest
new file mode 100644
index 000000000000..88d0ce3ee9fb
--- /dev/null
+++ b/dev-ruby/duktape-rb/Manifest
@@ -0,0 +1 @@
+DIST duktape-rb-2.7.0.0.tar.gz 1385934 BLAKE2B 1a3a7ea2c1469ddf9ac482e4329726e0f96823e75153027cf83155cca796cd0380d816a23d617e4bc40e72215acdc524fcb9575711e585952aeb9c6ed85ede70 SHA512 e91f57c2789aeb26aecbd9759c0b8cda457f290fcbe431fee721d01c1987c64f307f0e042b50cf6b4fa468d41c6365adde8395e2a33a8c637f6524af1c7cf028
diff --git a/dev-ruby/duktape-rb/duktape-rb-2.7.0.0.ebuild b/dev-ruby/duktape-rb/duktape-rb-2.7.0.0.ebuild
new file mode 100644
index 000000000000..4232b07c6107
--- /dev/null
+++ b/dev-ruby/duktape-rb/duktape-rb-2.7.0.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_GEMSPEC="duktape.gemspec"
+RUBY_FAKEGEM_NAME="duktape"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/duktape/extconf.rb)
+
+inherit ruby-fakegem
+
+MY_PN=${PN/-/\.}
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="Ruby bindings to the Duktape JavaScript interpreter"
+HOMEPAGE="https://github.com/judofyr/duktape.rb"
+SRC_URI="https://github.com/judofyr/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ppc ~riscv ~sparc"
+
+COMMON_DEPEND="dev-lang/duktape:="
+DEPEND+="${COMMON_DEPEND}"
+RDEPEND+="${COMMON_DEPEND}"
+
+ruby_add_bdepend "
+ dev-ruby/pkg-config
+ dev-ruby/rake-compiler
+ dev-ruby/sdoc
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.3.0.0_use-system-duktape.patch
+)
+
+RUBY_S=${MY_P}
+
+all_ruby_prepare() {
+ rm ext/duktape/duktape.{c,h} ext/duktape/duk_config.h || die "Failed to remove bundled duktape"
+}
+
+each_ruby_test() {
+ ${RUBY} test/test_duktape.rb || die
+}
diff --git a/dev-ruby/duktape-rb/files/duktape-rb-2.3.0.0_use-system-duktape.patch b/dev-ruby/duktape-rb/files/duktape-rb-2.3.0.0_use-system-duktape.patch
new file mode 100644
index 000000000000..9f35293c9e81
--- /dev/null
+++ b/dev-ruby/duktape-rb/files/duktape-rb-2.3.0.0_use-system-duktape.patch
@@ -0,0 +1,79 @@
+--- a/MANIFEST.txt
++++ b/MANIFEST.txt
+@@ -1,9 +1,6 @@
+ README.md
+ CHANGELOG.md
+-ext/duktape/duktape.c
+-ext/duktape/duktape.h
+ ext/duktape/duktape_ext.c
+-ext/duktape/duk_config.h
+ ext/duktape/extconf.rb
+ lib/duktape/version.rb
+ lib/duktape.rb
+--- a/ext/duktape/extconf.rb
++++ b/ext/duktape/extconf.rb
+@@ -1,6 +1,64 @@
+ require 'mkmf'
+ require 'zlib'
+
++#
++# functions
++#
++
++def package_config pkg, options={}
++ package = pkg_config(pkg)
++ return package if package
++
++ begin
++ require 'rubygems'
++ gem 'pkg-config', (gem_ver='~> 1.1')
++ require 'pkg-config' and message("Using pkg-config gem version #{PKGConfig::VERSION}\n")
++ rescue LoadError
++ message "pkg-config could not be used to find #{pkg}\nPlease install either `pkg-config` or the pkg-config gem per\n\n gem install pkg-config -v #{gem_ver.inspect}\n\n"
++ else
++ return nil unless PKGConfig.have_package(pkg)
++
++ cflags = PKGConfig.cflags(pkg)
++ ldflags = PKGConfig.libs_only_L(pkg)
++ libs = PKGConfig.libs_only_l(pkg)
++
++ Logging::message "PKGConfig package configuration for %s\n", pkg
++ Logging::message "cflags: %s\nldflags: %s\nlibs: %s\n\n", cflags, ldflags, libs
++
++ [cflags, ldflags, libs]
++ end
++end
++
++def duktape_try_compile
++ try_compile "int main() {return 0;}", "", {werror: true}
++end
++
++def add_cflags(flags)
++ print "checking if the C compiler accepts #{flags}... "
++ with_cflags("#{$CFLAGS} #{flags}") do
++ if duktape_try_compile
++ puts 'yes'
++ true
++ else
++ puts 'no'
++ false
++ end
++ end
++end
++
++#
++# main
++#
++
++if ENV['CC']
++ RbConfig::CONFIG['CC'] = RbConfig::MAKEFILE_CONFIG['CC'] = ENV['CC']
++end
++$LIBS << " #{ENV["LIBS"]}"
++$LDFLAGS << " #{ENV["LDFLAGS"]}"
++add_cflags(ENV["CFLAGS"])
++
++package_config('duktape')
++
+ $CFLAGS += ' -std=c99'
+ have_func 'rb_sym2str'
+ create_makefile 'duktape_ext'
diff --git a/dev-ruby/duktape-rb/metadata.xml b/dev-ruby/duktape-rb/metadata.xml
new file mode 100644
index 000000000000..58c2e9724fb1
--- /dev/null
+++ b/dev-ruby/duktape-rb/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">judofyr/duktape.rb</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/dust/dust-0.1.7-r2.ebuild b/dev-ruby/dust/dust-0.1.7-r2.ebuild
deleted file mode 100644
index 5663dd0ae8a1..000000000000
--- a/dev-ruby/dust/dust-0.1.7-r2.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Descriptive block syntax definition for Test::Unit"
-HOMEPAGE="http://dust.rubyforge.org/"
-LICENSE="MIT"
-
-KEYWORDS="amd64 x86"
-SLOT="0"
-IUSE=""
-
-# Remove a long-obsolete rubygems method.
-all_ruby_prepare() {
- sed -i -e '/manage_gems/d' \
- -e '/gempackagetask/d' \
- -e '/GemPackageTask/,/end/d' \
- -e 's:rake/rdoctask:rdoc/task:' rakefile.rb || die "Unable to update rakefile.rb"
-
-}
-
-each_ruby_test() {
- ${RUBY} -I. test/all_tests.rb || die
-}
diff --git a/dev-ruby/dust/dust-0.1.7-r3.ebuild b/dev-ruby/dust/dust-0.1.7-r3.ebuild
new file mode 100644
index 000000000000..24399b347b55
--- /dev/null
+++ b/dev-ruby/dust/dust-0.1.7-r3.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 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Descriptive block syntax definition for Test::Unit"
+HOMEPAGE="http://dust.rubyforge.org/"
+LICENSE="MIT"
+
+KEYWORDS="amd64 x86"
+SLOT="0"
+IUSE=""
+
+# Remove a long-obsolete rubygems method.
+all_ruby_prepare() {
+ sed -i -e '/manage_gems/d' \
+ -e '/gempackagetask/d' \
+ -e '/GemPackageTask/,/end/d' \
+ -e 's:rake/rdoctask:rdoc/task:' rakefile.rb || die "Unable to update rakefile.rb"
+
+}
+
+each_ruby_test() {
+ ${RUBY} -I. test/all_tests.rb || die
+}
diff --git a/dev-ruby/dust/metadata.xml b/dev-ruby/dust/metadata.xml
index eb1e47f2edfb..daac6fdb7252 100644
--- a/dev-ruby/dust/metadata.xml
+++ b/dev-ruby/dust/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ecma-re-validator/Manifest b/dev-ruby/ecma-re-validator/Manifest
index 513f6dbc00f0..bb13cabcb508 100644
--- a/dev-ruby/ecma-re-validator/Manifest
+++ b/dev-ruby/ecma-re-validator/Manifest
@@ -1,2 +1 @@
-DIST ecma-re-validator-0.1.2.gem 824832 BLAKE2B 0ccc81114611b85bf799644dd6f28f75397c3f4223a4eed03206e75b0478a9c4d6ea8807e5b8bc9f06771d51543210fa93fc355d791f7d91bce0f255860bd353 SHA512 4f00dcc940dc13f91b823ce9538239c3d545e79027f8ebc45b258fc807d1dcedeaa128070f666c6c57d50715d76908f45ca7bd639ee5a7bfdd6617f713f2c0fb
-DIST ecma-re-validator-0.2.0.gem 865792 BLAKE2B c41b01dc36f3000331085666f235b0adc749516b19028ee78ef56c68c00b7ab9105d4bfcfa9b061cd1f63987054a33a7e31cc3957be17182245120d679f5b6f3 SHA512 5e2ff7c2e8b8d5a8749d87f1678b235e69f197b9af95787f59cfff492ff3d8b8e2bc45a0e3da83d92ffa646e9b1b12ef5c4cab324d6e29a0c1f53e211d00aba9
+DIST ecma-re-validator-0.4.0.gem 8704 BLAKE2B 5dae210ec7409ac2b114203b2e764d1b6cdbc798ee2246588af8455df312fad1c2002e0ef68ceac77cfe293d28d259f5e23314865ec70789e0e09e8f4767c6e9 SHA512 2aa8500bf5a487e3278bac58e29fa188c310ef85b5635f9bc3ac0bda6df36cf9533f9715ac716378405d0d1e61081a532aab3d9faed757ee0a4bb5bf2ef2419f
diff --git a/dev-ruby/ecma-re-validator/ecma-re-validator-0.1.2.ebuild b/dev-ruby/ecma-re-validator/ecma-re-validator-0.1.2.ebuild
deleted file mode 100644
index cdf35343dec1..000000000000
--- a/dev-ruby/ecma-re-validator/ecma-re-validator-0.1.2.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Validate a regular expression string against what ECMA-262 can actually do"
-HOMEPAGE="https://github.com/gjtorikian/ecma-re-validator"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/regexp_parser-0.2:0"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/ecma-re-validator/ecma-re-validator-0.2.0.ebuild b/dev-ruby/ecma-re-validator/ecma-re-validator-0.2.0.ebuild
deleted file mode 100644
index ba652900a528..000000000000
--- a/dev-ruby/ecma-re-validator/ecma-re-validator-0.2.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Validate a regular expression string against what ECMA-262 can actually do"
-HOMEPAGE="https://github.com/gjtorikian/ecma-re-validator"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/regexp_parser-1.2:1"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/ecma-re-validator/ecma-re-validator-0.4.0.ebuild b/dev-ruby/ecma-re-validator/ecma-re-validator-0.4.0.ebuild
new file mode 100644
index 000000000000..632fc394d460
--- /dev/null
+++ b/dev-ruby/ecma-re-validator/ecma-re-validator-0.4.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Validate a regular expression string against what ECMA-262 can actually do"
+HOMEPAGE="https://github.com/gjtorikian/ecma-re-validator"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/regexp_parser:2"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/ecma-re-validator/metadata.xml b/dev-ruby/ecma-re-validator/metadata.xml
index 9c24bda51219..5419d5fbf42b 100644
--- a/dev-ruby/ecma-re-validator/metadata.xml
+++ b/dev-ruby/ecma-re-validator/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ed25519/Manifest b/dev-ruby/ed25519/Manifest
index aacf5d4f0ae1..1a882d1f41ae 100644
--- a/dev-ruby/ed25519/Manifest
+++ b/dev-ruby/ed25519/Manifest
@@ -1 +1 @@
-DIST ed25519-1.2.4.tar.gz 136685 BLAKE2B d0fd78f16df2b09f5835fca4b0963cee930e17ece2c4eea2cbf4544ed1a5e30c7dc63525b285f4e1e150e5e70d1e8207ca07ce985c27441a903c69875fd92dee SHA512 cf2de7781848d804f3a279baef26f887846d7d846d225293c74dc3f4e301d18518c9edc8b721f9637fff8f087703e91d2376119f2d8185ef19be5862f99801b3
+DIST ed25519-1.3.0.tar.gz 137160 BLAKE2B 520ffa6bd0a801faa9f5f63873d705a211c3dba0e5319246b77bd455585e60baf7c7829ddebb892a896c1ae763e6df732115675307451c33bb20f56bb7c89be4 SHA512 dbd108769e131d15e4f31eaf7f4a46530769f279ccbbe4a10b5fe9e1d394bafb0ea6af95b6b1da2d66db00072576ff9d6d5c9156d949d79daf929a9dbd22eea8
diff --git a/dev-ruby/ed25519/ed25519-1.2.4.ebuild b/dev-ruby/ed25519/ed25519-1.2.4.ebuild
deleted file mode 100644
index 0fff8931b08e..000000000000
--- a/dev-ruby/ed25519/ed25519-1.2.4.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Library for the Ed25519 public-key signature system"
-HOMEPAGE="https://github.com/crypto-rb/ed25519"
-SRC_URI="https://github.com/crypto-rb/ed25519/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/ed25519_ref10 extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/ed25519_ref10
- cp ext/ed25519_ref10/ed25519_ref10.so lib/ || die
-}
diff --git a/dev-ruby/ed25519/ed25519-1.3.0.ebuild b/dev-ruby/ed25519/ed25519-1.3.0.ebuild
new file mode 100644
index 000000000000..8b3f2455d74b
--- /dev/null
+++ b/dev-ruby/ed25519/ed25519-1.3.0.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/ed25519_ref10/extconf.rb)
+
+RUBY_FAKEGEM_GEMSPEC="ed25519.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Library for the Ed25519 public-key signature system"
+HOMEPAGE="https://github.com/crypto-rb/ed25519"
+SRC_URI="https://github.com/crypto-rb/ed25519/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|coverall\)/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/ed25519/metadata.xml b/dev-ruby/ed25519/metadata.xml
index 63e6d11b32c9..a271cad08a38 100644
--- a/dev-ruby/ed25519/metadata.xml
+++ b/dev-ruby/ed25519/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/elastic-transport/Manifest b/dev-ruby/elastic-transport/Manifest
new file mode 100644
index 000000000000..5c1d070fd853
--- /dev/null
+++ b/dev-ruby/elastic-transport/Manifest
@@ -0,0 +1,6 @@
+DIST elastic-transport-8.2.2.tar.gz 55336 BLAKE2B e68c5280c706cbef9b72681c8f2e1ba1847460f6d3f04a35c4faa05a000f236fbbf19a70d129e3d0a31937626d11c7fc077046d6b843d2c3e15c908ef32e9e18 SHA512 34d52bc39f51fe5011e389de6fadaa943a11d0216198976ef06768222eb34583d0ae50d250edc3253e0956eb68e58c507e7f2598535f807425fbd8224caa1154
+DIST elastic-transport-8.2.3.tar.gz 55339 BLAKE2B 648bef27a8fb55c9d617429f8c9921963b8c79c4ed4ca47652f8ab351178b472a63b7ff3b7e3736281a2c31f26433a159acae7704d745ecda118730f091bbd47 SHA512 a35538fc9dbea9262418b34bb91cb2b48b7729536e160b2c30a0ecb2c65d81b7c749015c4254e55950687d30ba6996ad618ed3d11e975eb6a7a32c284a0ea755
+DIST elastic-transport-8.2.4.tar.gz 55964 BLAKE2B 8f995985e543dcf4a472a8b034116eede1a4ca7fd71e710cef57c4437243e9607ecf80cd8d345a09b1583df98f5539f0e9702940cdeca13845c6f3a4b6f3dbee SHA512 79ec2b0dadd4c63e502e426264ceabf8fc76c7c28c78ec3e03b91f9e09c5a347c8151c2a99a7cb775fb5558ee42e24b8c9b8cceaa112df0fc3d2b02daebb12e6
+DIST elastic-transport-8.3.0.tar.gz 59938 BLAKE2B 664bac3ba0f644657a633b32366d7f6d5b5078313b9225dbbb1f8d7bb26ee103a123664ed9f0032d82689c8e7fa3f69174da828fbf1eac250d16ecce0a89c269 SHA512 19d6c91de2891887e1f2d5203dd6e1223e6da664448ef2817370c9c67056a4d094323c80a5e5c049c61d38ce06fe93f7e7e4cf858f9c1e6cb63091dc01606bf9
+DIST elastic-transport-8.3.1.tar.gz 59992 BLAKE2B 867eadff08e73a003cf66c09616cd9430cccde0aa0a58b0a64c92775d799c606a4e592ee5e94ecf3553def7d669081ce8986a3db0a224232ac15cece5a860fd0 SHA512 55b18908b5981bb9d80a99eeef740c79cc10a3a1433b08b898cce76f2c1c4c4c38a459e8a1ba834fd240d7c519632a930182f8621bf095107984ac49012e6597
+DIST elastic-transport-8.3.2.tar.gz 60159 BLAKE2B 1eac8f50148fd48f8421922d7d5d57403ea2874642958de71812522556103e63901072f9b35edc762430353d99c7b8a843ea53153cd98deee661939687bf2cec SHA512 81eaf0fd044cf20b024d3dc865c90dabc68a1b739e2db89dfd9b29410e2c2f47930ac6c8d540817046c6e69f37617f8f21127add0b1b7ae95ad7cf6c0ff6565c
diff --git a/dev-ruby/elastic-transport/elastic-transport-8.2.2.ebuild b/dev-ruby/elastic-transport/elastic-transport-8.2.2.ebuild
new file mode 100644
index 000000000000..5a93f863ee26
--- /dev/null
+++ b/dev-ruby/elastic-transport/elastic-transport-8.2.2.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Transport classes and utilities shared among Ruby Elastic client libraries"
+HOMEPAGE="https://github.com/elastic/elastic-transport-ruby"
+SRC_URI="https://github.com/elastic/elastic-transport-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="elastic-transport-ruby-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ || ( dev-ruby/faraday:2 dev-ruby/faraday:1 )
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/hashie
+ || ( ( dev-ruby/faraday:2 dev-ruby/faraday-net_http_persistent ) dev-ruby/faraday:1 )
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/rspec:3
+ dev-ruby/shoulda-context
+ dev-ruby/curb
+ )
+"
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ # Tweak test setup to only run unit tests since we don't have a live cluster
+ sed -e "s/RUBY_VERSION > '1.9'/false/" \
+ -e '/module Elasticsearch/,$ s:^:#:' \
+ -e '/reporters/ s:^:#: ; /Reporters::SpecReporter/,/^end/ s:^:#: ; /Reporters.use/ s:^:#:' \
+ -i test/test_helper.rb || die
+
+ sed -e '/pry/ s:^:#:' \
+ -e '/config.formatter/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid specs that require a running elasticsearch instance
+ sed -e '/#perform_request/ s/describe/xdescribe/' \
+ -e '/when the client connects/ s/context/xcontext/' \
+ -i spec/elastic/transport/client_spec.rb || die
+ sed -e '/retries on 404 status the specified number of max_retries/ s/it/xit/' \
+ -i spec/elastic/transport/base_spec.rb || die
+
+ # Avoid specs that require unpackaged gems
+ sed -e '/when using the HTTPClient adapter/ s/context/xcontext/' \
+ -e '/require.*httpclient/ s:^:#:' \
+ -e '/when the adapter is \(patron\|typhoeus\)/ s/context/xcontext/' \
+ -e '/require.*\(patron\|typhoeus\)/ s:^:#:' \
+ -e '/when the adapter \(can be detected\|is specified as a string key\)/ s/context/xcontext/' \
+ -e '/when the Faraday adapter is \(configured\|set in the block\)/ s/context/xcontext/' \
+ -i spec/elastic/transport/client_spec.rb || die
+ sed -e '/using \(httpclient\|patron\|typhoeus\)/ s/context/xcontext/' \
+ -i spec/elastic/transport/meta_header_spec.rb || die
+}
diff --git a/dev-ruby/elastic-transport/elastic-transport-8.2.3.ebuild b/dev-ruby/elastic-transport/elastic-transport-8.2.3.ebuild
new file mode 100644
index 000000000000..c9d6146ca24d
--- /dev/null
+++ b/dev-ruby/elastic-transport/elastic-transport-8.2.3.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Transport classes and utilities shared among Ruby Elastic client libraries"
+HOMEPAGE="https://github.com/elastic/elastic-transport-ruby"
+SRC_URI="https://github.com/elastic/elastic-transport-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="elastic-transport-ruby-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ || ( dev-ruby/faraday:2 dev-ruby/faraday:1 )
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/hashie
+ || ( ( dev-ruby/faraday:2 dev-ruby/faraday-net_http_persistent ) dev-ruby/faraday:1 )
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/rspec:3
+ dev-ruby/shoulda-context
+ dev-ruby/curb
+ )
+"
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ # Tweak test setup to only run unit tests since we don't have a live cluster
+ sed -e "s/RUBY_VERSION > '1.9'/false/" \
+ -e '/module Elasticsearch/,$ s:^:#:' \
+ -e '/reporters/ s:^:#: ; /Reporters::SpecReporter/,/^end/ s:^:#: ; /Reporters.use/ s:^:#:' \
+ -i test/test_helper.rb || die
+
+ sed -e '/pry/ s:^:#:' \
+ -e '/config.formatter/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid specs that require a running elasticsearch instance
+ sed -e '/#perform_request/ s/describe/xdescribe/' \
+ -e '/when the client connects/ s/context/xcontext/' \
+ -i spec/elastic/transport/client_spec.rb || die
+ sed -e '/retries on 404 status the specified number of max_retries/ s/it/xit/' \
+ -i spec/elastic/transport/base_spec.rb || die
+
+ # Avoid specs that require unpackaged gems
+ sed -e '/when using the HTTPClient adapter/ s/context/xcontext/' \
+ -e '/require.*httpclient/ s:^:#:' \
+ -e '/when the adapter is \(patron\|typhoeus\)/ s/context/xcontext/' \
+ -e '/require.*\(patron\|typhoeus\)/ s:^:#:' \
+ -e '/when the adapter \(can be detected\|is specified as a string key\)/ s/context/xcontext/' \
+ -e '/when the Faraday adapter is \(configured\|set in the block\)/ s/context/xcontext/' \
+ -i spec/elastic/transport/client_spec.rb || die
+ sed -e '/using \(httpclient\|patron\|typhoeus\)/ s/context/xcontext/' \
+ -i spec/elastic/transport/meta_header_spec.rb || die
+}
diff --git a/dev-ruby/elastic-transport/elastic-transport-8.2.4.ebuild b/dev-ruby/elastic-transport/elastic-transport-8.2.4.ebuild
new file mode 100644
index 000000000000..c9d6146ca24d
--- /dev/null
+++ b/dev-ruby/elastic-transport/elastic-transport-8.2.4.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Transport classes and utilities shared among Ruby Elastic client libraries"
+HOMEPAGE="https://github.com/elastic/elastic-transport-ruby"
+SRC_URI="https://github.com/elastic/elastic-transport-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="elastic-transport-ruby-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ || ( dev-ruby/faraday:2 dev-ruby/faraday:1 )
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/hashie
+ || ( ( dev-ruby/faraday:2 dev-ruby/faraday-net_http_persistent ) dev-ruby/faraday:1 )
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/rspec:3
+ dev-ruby/shoulda-context
+ dev-ruby/curb
+ )
+"
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ # Tweak test setup to only run unit tests since we don't have a live cluster
+ sed -e "s/RUBY_VERSION > '1.9'/false/" \
+ -e '/module Elasticsearch/,$ s:^:#:' \
+ -e '/reporters/ s:^:#: ; /Reporters::SpecReporter/,/^end/ s:^:#: ; /Reporters.use/ s:^:#:' \
+ -i test/test_helper.rb || die
+
+ sed -e '/pry/ s:^:#:' \
+ -e '/config.formatter/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid specs that require a running elasticsearch instance
+ sed -e '/#perform_request/ s/describe/xdescribe/' \
+ -e '/when the client connects/ s/context/xcontext/' \
+ -i spec/elastic/transport/client_spec.rb || die
+ sed -e '/retries on 404 status the specified number of max_retries/ s/it/xit/' \
+ -i spec/elastic/transport/base_spec.rb || die
+
+ # Avoid specs that require unpackaged gems
+ sed -e '/when using the HTTPClient adapter/ s/context/xcontext/' \
+ -e '/require.*httpclient/ s:^:#:' \
+ -e '/when the adapter is \(patron\|typhoeus\)/ s/context/xcontext/' \
+ -e '/require.*\(patron\|typhoeus\)/ s:^:#:' \
+ -e '/when the adapter \(can be detected\|is specified as a string key\)/ s/context/xcontext/' \
+ -e '/when the Faraday adapter is \(configured\|set in the block\)/ s/context/xcontext/' \
+ -i spec/elastic/transport/client_spec.rb || die
+ sed -e '/using \(httpclient\|patron\|typhoeus\)/ s/context/xcontext/' \
+ -i spec/elastic/transport/meta_header_spec.rb || die
+}
diff --git a/dev-ruby/elastic-transport/elastic-transport-8.3.0.ebuild b/dev-ruby/elastic-transport/elastic-transport-8.3.0.ebuild
new file mode 100644
index 000000000000..c9d6146ca24d
--- /dev/null
+++ b/dev-ruby/elastic-transport/elastic-transport-8.3.0.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Transport classes and utilities shared among Ruby Elastic client libraries"
+HOMEPAGE="https://github.com/elastic/elastic-transport-ruby"
+SRC_URI="https://github.com/elastic/elastic-transport-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="elastic-transport-ruby-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ || ( dev-ruby/faraday:2 dev-ruby/faraday:1 )
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/hashie
+ || ( ( dev-ruby/faraday:2 dev-ruby/faraday-net_http_persistent ) dev-ruby/faraday:1 )
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/rspec:3
+ dev-ruby/shoulda-context
+ dev-ruby/curb
+ )
+"
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ # Tweak test setup to only run unit tests since we don't have a live cluster
+ sed -e "s/RUBY_VERSION > '1.9'/false/" \
+ -e '/module Elasticsearch/,$ s:^:#:' \
+ -e '/reporters/ s:^:#: ; /Reporters::SpecReporter/,/^end/ s:^:#: ; /Reporters.use/ s:^:#:' \
+ -i test/test_helper.rb || die
+
+ sed -e '/pry/ s:^:#:' \
+ -e '/config.formatter/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid specs that require a running elasticsearch instance
+ sed -e '/#perform_request/ s/describe/xdescribe/' \
+ -e '/when the client connects/ s/context/xcontext/' \
+ -i spec/elastic/transport/client_spec.rb || die
+ sed -e '/retries on 404 status the specified number of max_retries/ s/it/xit/' \
+ -i spec/elastic/transport/base_spec.rb || die
+
+ # Avoid specs that require unpackaged gems
+ sed -e '/when using the HTTPClient adapter/ s/context/xcontext/' \
+ -e '/require.*httpclient/ s:^:#:' \
+ -e '/when the adapter is \(patron\|typhoeus\)/ s/context/xcontext/' \
+ -e '/require.*\(patron\|typhoeus\)/ s:^:#:' \
+ -e '/when the adapter \(can be detected\|is specified as a string key\)/ s/context/xcontext/' \
+ -e '/when the Faraday adapter is \(configured\|set in the block\)/ s/context/xcontext/' \
+ -i spec/elastic/transport/client_spec.rb || die
+ sed -e '/using \(httpclient\|patron\|typhoeus\)/ s/context/xcontext/' \
+ -i spec/elastic/transport/meta_header_spec.rb || die
+}
diff --git a/dev-ruby/elastic-transport/elastic-transport-8.3.1.ebuild b/dev-ruby/elastic-transport/elastic-transport-8.3.1.ebuild
new file mode 100644
index 000000000000..8e048f2b7e14
--- /dev/null
+++ b/dev-ruby/elastic-transport/elastic-transport-8.3.1.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Transport classes and utilities shared among Ruby Elastic client libraries"
+HOMEPAGE="https://github.com/elastic/elastic-transport-ruby"
+SRC_URI="https://github.com/elastic/elastic-transport-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="elastic-transport-ruby-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="doc test"
+
+ruby_add_rdepend "
+ || ( dev-ruby/faraday:2 dev-ruby/faraday:1 )
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/hashie
+ || ( ( dev-ruby/faraday:2 dev-ruby/faraday-net_http_persistent:2 ) dev-ruby/faraday:1 )
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/rspec:3
+ dev-ruby/shoulda-context
+ dev-ruby/curb
+ )
+"
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ # Tweak test setup to only run unit tests since we don't have a live cluster
+ sed -e "s/RUBY_VERSION > '1.9'/false/" \
+ -e '/module Elasticsearch/,$ s:^:#:' \
+ -e '/reporters/ s:^:#: ; /Reporters::SpecReporter/,/^end/ s:^:#: ; /Reporters.use/ s:^:#:' \
+ -i test/test_helper.rb || die
+
+ sed -e '/pry/ s:^:#:' \
+ -e '/config.formatter/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid specs that require a running elasticsearch instance
+ sed -e '/#perform_request/ s/describe/xdescribe/' \
+ -e '/when the client connects/ s/context/xcontext/' \
+ -i spec/elastic/transport/client_spec.rb || die
+ sed -e '/retries on 404 status the specified number of max_retries/ s/it/xit/' \
+ -i spec/elastic/transport/base_spec.rb || die
+
+ # Avoid specs that require unpackaged gems
+ sed -e '/when using the HTTPClient adapter/ s/context/xcontext/' \
+ -e '/require.*httpclient/ s:^:#:' \
+ -e '/when the adapter is \(patron\|typhoeus\)/ s/context/xcontext/' \
+ -e '/require.*\(patron\|typhoeus\)/ s:^:#:' \
+ -e '/when the adapter \(can be detected\|is specified as a string key\)/ s/context/xcontext/' \
+ -e '/when the Faraday adapter is \(configured\|set in the block\)/ s/context/xcontext/' \
+ -i spec/elastic/transport/client_spec.rb || die
+ sed -e '/using \(httpclient\|patron\|typhoeus\)/ s/context/xcontext/' \
+ -i spec/elastic/transport/meta_header_spec.rb || die
+}
diff --git a/dev-ruby/elastic-transport/elastic-transport-8.3.2.ebuild b/dev-ruby/elastic-transport/elastic-transport-8.3.2.ebuild
new file mode 100644
index 000000000000..8e048f2b7e14
--- /dev/null
+++ b/dev-ruby/elastic-transport/elastic-transport-8.3.2.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Transport classes and utilities shared among Ruby Elastic client libraries"
+HOMEPAGE="https://github.com/elastic/elastic-transport-ruby"
+SRC_URI="https://github.com/elastic/elastic-transport-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="elastic-transport-ruby-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="doc test"
+
+ruby_add_rdepend "
+ || ( dev-ruby/faraday:2 dev-ruby/faraday:1 )
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/hashie
+ || ( ( dev-ruby/faraday:2 dev-ruby/faraday-net_http_persistent:2 ) dev-ruby/faraday:1 )
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/rspec:3
+ dev-ruby/shoulda-context
+ dev-ruby/curb
+ )
+"
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ # Tweak test setup to only run unit tests since we don't have a live cluster
+ sed -e "s/RUBY_VERSION > '1.9'/false/" \
+ -e '/module Elasticsearch/,$ s:^:#:' \
+ -e '/reporters/ s:^:#: ; /Reporters::SpecReporter/,/^end/ s:^:#: ; /Reporters.use/ s:^:#:' \
+ -i test/test_helper.rb || die
+
+ sed -e '/pry/ s:^:#:' \
+ -e '/config.formatter/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid specs that require a running elasticsearch instance
+ sed -e '/#perform_request/ s/describe/xdescribe/' \
+ -e '/when the client connects/ s/context/xcontext/' \
+ -i spec/elastic/transport/client_spec.rb || die
+ sed -e '/retries on 404 status the specified number of max_retries/ s/it/xit/' \
+ -i spec/elastic/transport/base_spec.rb || die
+
+ # Avoid specs that require unpackaged gems
+ sed -e '/when using the HTTPClient adapter/ s/context/xcontext/' \
+ -e '/require.*httpclient/ s:^:#:' \
+ -e '/when the adapter is \(patron\|typhoeus\)/ s/context/xcontext/' \
+ -e '/require.*\(patron\|typhoeus\)/ s:^:#:' \
+ -e '/when the adapter \(can be detected\|is specified as a string key\)/ s/context/xcontext/' \
+ -e '/when the Faraday adapter is \(configured\|set in the block\)/ s/context/xcontext/' \
+ -i spec/elastic/transport/client_spec.rb || die
+ sed -e '/using \(httpclient\|patron\|typhoeus\)/ s/context/xcontext/' \
+ -i spec/elastic/transport/meta_header_spec.rb || die
+}
diff --git a/dev-ruby/elastic-transport/metadata.xml b/dev-ruby/elastic-transport/metadata.xml
new file mode 100644
index 000000000000..316b36cccedc
--- /dev/null
+++ b/dev-ruby/elastic-transport/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">elastic/elastic-transport-ruby</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/elasticsearch-api/Manifest b/dev-ruby/elasticsearch-api/Manifest
index 601631614643..01c1905bfeb6 100644
--- a/dev-ruby/elasticsearch-api/Manifest
+++ b/dev-ruby/elasticsearch-api/Manifest
@@ -1,4 +1,8 @@
-DIST elasticsearch-ruby-6.1.0.tar.gz 305518 BLAKE2B c58636ab44d692bd3fcceac7a7ca6b03e4b5ac8c2fc94f5d108d34ad8bab140c3432380612f7066dc8370f891aa178a1766feae2bed0f5a6cef0c15d52774885 SHA512 1067de087864bbc7f5ea4c32df3ee3096b6c2ff39b8cde60a2da135b3dfb4d2e23d101a58ae04410067d0130fa680b7b80b98a1fe596898cfb545e29e83376a2
-DIST elasticsearch-ruby-6.3.0.tar.gz 327308 BLAKE2B c9e5c6b1229dfaa30ecf341de9832c992131c7e3a42253747e1577debc0873b4c6428740c00912affa0cc4e668e0f5b78ac484bec926757ac1a8d50eef1bc996 SHA512 26c36198c66c31c59247d5d63ca817cf7942436b524a3480c69c1860ba3933617c75138521a49e14172d9a6ce6086325d685ab5dba22c99a4767dc85f35eb13a
-DIST elasticsearch-ruby-6.3.1.tar.gz 336484 BLAKE2B b97af0262be1512a5db230f2ad66db52cfdba9c613e4fe89b23b35ae9b038978b043c7202784becdaea7710dbe45c40dfd95a95c5997164ea2f1fcc9c5b363d2 SHA512 184c31ebd6c507ceb11273eac950ab9dd168fcbccdd7b0c1956603a2e5e587eab767c2dec8203e90d919189f6f6e27a11d847ff0c42873d65276139db85dafac
-DIST elasticsearch-ruby-6.8.0.tar.gz 336486 BLAKE2B 5bf9538d3710787939a61b411918f3712a8490ed20df1039613f3828a55758e373e56c6794d597a95c04cf610aba8cea1113982b91cde764c96ee454e59cc7b1 SHA512 d75437b04770cac2ac65fb91f0b18cd3beae0248fa2f148aa820da5272093e5b05d00dc4c82c699d7e31b23d7f06ce7727f74eb5a9b0308264f7139e32774c91
+DIST elasticsearch-ruby-6.8.3.tar.gz 345447 BLAKE2B 6f10b4345d098b36c5b4d8e90e8745b10313de0df1f5bd9285e72f891a871bff8569318d5bd15ab5cca0ada722042affb6bd20ddb68117eb689eadc0c2a16706 SHA512 3001760ff49bf72ba9ac5e11f3338e320c828bfb245d45535325f422e438b693d1ae7a4f73ab766386a76282eca435849c670f3ad98e9431b80b402e97268f83
+DIST elasticsearch-ruby-7.17.10.tar.gz 1032424 BLAKE2B 72ef81b295c656ad319997c89bb065e17e7cda331572758642b028126ff82606b05fd9ba71cf56728428d5f438af69dc3d74f3a1e9733bf5c4869989b03890f0 SHA512 5921595d9f35f5610c999c8f686621212095786d1c2caffd133b315d2ae20154016160950af2bd6f0959a390b1615dbce3da2e43ff2aadbfd1be1b675455f17d
+DIST elasticsearch-ruby-7.17.8.tar.gz 1017287 BLAKE2B d204c1992d5006b386dc0996bed852132ded6b9732a38699e804e1a5ee62387ef5374836cdb4e84c6232066139422b5d1e831143dbd682e86ec30df9077b1279 SHA512 71288f31e18ff13709962848091e8e0afb128d805be9c3060421bb46fa7bf120700330beb12241b4f7385e88d9f959921fce3721a1050f89c2464ab8dd355706
+DIST elasticsearch-ruby-7.17.9.tar.gz 1030121 BLAKE2B 5acfc3f2ce9d39e9f02deed043aec90800968fef453d47802b6628598fc3c39875238d29e1c8927b88fb1e7a65960024e43874482da8a0920cca17a4beb2c0b4 SHA512 974dde6478345a22f27b4264219759a16878e29eb0aabaf6d57aa0d94d22712e35e55657ff5625a36e8643dcb12bac8aa4e6bb269ac011ca8fddcaae0083bcf0
+DIST elasticsearch-ruby-8.10.0.tar.gz 1760605 BLAKE2B c9c1d1486ebf7254e67f648b2ac6aef3c5dd17abdafcd4be503c610f0531e904c03d05391157fdc1c0f88e534886b50f978eeac03248f5a580fc1a3da8cc1a85 SHA512 d079e244095349dbab7e0cd2a962ee0bd8f1122f4ffd254fce26dea28722e79aa7251fed66091f8bb5d3128be6bf22c0c9ad3c5acb34b60b67c1505aa0093181
+DIST elasticsearch-ruby-8.12.2.tar.gz 1908814 BLAKE2B f3caffe7336a63547ba0d44a3239fb6b71ed7fb46b1136114a87e7e5f69608d69b14d12f568b6e945db0917a6913a10407cf7cae3137605adaaac5fb7fd9439b SHA512 08fe791ee20cbe9f6ad9aee1b7d9c02813895add4bb0ff7b4e063051b42e62e037d71217521f6a9cb0076c51e8f7160bad52798741435164451806932488d17c
+DIST elasticsearch-ruby-8.13.0.tar.gz 1918145 BLAKE2B ded410c9e77876dc61a942ab1de7945d28aa1c06cd7079f693119812128fdfd38c206d9644aadb79fb8c9b48e12d77fec6c313434cfb58510bc48fecc905106b SHA512 8babc5797802ae256b41a00927cd1688c2d3d90770d8a867a9b96a7a115f537f1ca301b2d6b73107995b23578abc755d7bf7dc03075520fa857dda22e6a2d32b
+DIST elasticsearch-ruby-8.9.0.tar.gz 1755804 BLAKE2B aff81b211eca6ad551fa54d949e39815eba15b579601e7af48122dacbd78836a57475c31bab6326c874dff4c6991deecb9b859866e417302b54d87f250f2695f SHA512 33b2322e83cbe08229aea81662e2ff7bd46b05a9ab85ccd61efcc8e0ffc8779699d4235bda549221f0839bbf999fefb502e44144b2bd7d0ea102a2aa54a080b1
diff --git a/dev-ruby/elasticsearch-api/elasticsearch-api-6.1.0.ebuild b/dev-ruby/elasticsearch-api/elasticsearch-api-6.1.0.ebuild
deleted file mode 100644
index 3cfa06e9494e..000000000000
--- a/dev-ruby/elasticsearch-api/elasticsearch-api-6.1.0.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-RUBY_FAKEGEM_TASK_DOC=doc
-
-inherit ruby-fakegem eapi7-ver
-
-MY_P=elasticsearch-ruby-${PV}
-DESCRIPTION="Ruby integrations for ES, elasticsearch-api module"
-HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
-SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/multi_json
-"
-ruby_add_bdepend "
- doc? ( dev-ruby/yard )
- test? (
- dev-ruby/ansi
- dev-ruby/elasticsearch-transport
- dev-ruby/mocha:1.0
- dev-ruby/pry
- dev-ruby/shoulda-context
- )
-"
-
-# Tests need additional modules (at least 'turn') packaged. Then someone
-# should look into running them and so on.
-RESTRICT="test"
-
-RUBY_S=${MY_P}/${PN}
-
-all_ruby_prepare() {
- # fix to work without git
- sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
-
- # remove useless dependencies from Rakefile
- sed -e '/bundler/d' \
- -e '/require.*cane/,/end/d' \
- -i Rakefile || die
-}
diff --git a/dev-ruby/elasticsearch-api/elasticsearch-api-6.3.0.ebuild b/dev-ruby/elasticsearch-api/elasticsearch-api-6.3.0.ebuild
deleted file mode 100644
index a29627040725..000000000000
--- a/dev-ruby/elasticsearch-api/elasticsearch-api-6.3.0.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-RUBY_FAKEGEM_TASK_DOC=doc
-
-inherit ruby-fakegem eapi7-ver
-
-MY_P=elasticsearch-ruby-${PV}
-DESCRIPTION="Ruby integrations for ES, elasticsearch-api module"
-HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
-SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/multi_json
-"
-ruby_add_bdepend "
- doc? ( dev-ruby/yard )
- test? (
- dev-ruby/ansi
- dev-ruby/elasticsearch-transport
- dev-ruby/mocha:1.0
- dev-ruby/pry
- dev-ruby/shoulda-context
- )
-"
-
-# Tests need additional modules (at least 'turn') packaged. Then someone
-# should look into running them and so on.
-RESTRICT="test"
-
-RUBY_S=${MY_P}/${PN}
-
-all_ruby_prepare() {
- # fix to work without git
- sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
-
- # remove useless dependencies from Rakefile
- sed -e '/bundler/d' \
- -e '/require.*cane/,/end/d' \
- -i Rakefile || die
-}
diff --git a/dev-ruby/elasticsearch-api/elasticsearch-api-6.3.1.ebuild b/dev-ruby/elasticsearch-api/elasticsearch-api-6.3.1.ebuild
deleted file mode 100644
index 4dbb938a449e..000000000000
--- a/dev-ruby/elasticsearch-api/elasticsearch-api-6.3.1.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-RUBY_FAKEGEM_TASK_DOC=doc
-
-RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
-
-inherit ruby-fakegem eapi7-ver
-
-MY_P=elasticsearch-ruby-${PV}
-DESCRIPTION="Ruby integrations for ES, elasticsearch-api module"
-HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
-SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/multi_json
-"
-ruby_add_bdepend "
- doc? ( dev-ruby/yard )
- test? (
- dev-ruby/ansi
- dev-ruby/elasticsearch-transport
- dev-ruby/mocha:1.0
- dev-ruby/pry
- dev-ruby/shoulda-context
- )
-"
-
-RUBY_S=${MY_P}/${PN}
-
-all_ruby_prepare() {
- # fix to work without git
- sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
-
- # remove useless dependencies from Rakefile
- sed -e '/bundler/d' \
- -e '/require.*cane/,/end/d' \
- -i Rakefile || die
-
- sed -i -e '/config.formatter/ s/documentation/progress/' spec/spec_helper.rb || die
-
- # Avoid tests that require unpackaged jbuilder and jsonify
- sed -i -e '/\(pry-nav\|jbuilder\|jsonify\)/ s:^:#:' spec/spec_helper.rb || die
- rm -f spec/elasticsearch/api/actions/json_builders_spec.rb || die
-
- sed -i -e '/uses the escape_utils gem/askip "unmaintained gem"' spec/elasticsearch/api/utils_spec.rb || die
-}
diff --git a/dev-ruby/elasticsearch-api/elasticsearch-api-6.8.0.ebuild b/dev-ruby/elasticsearch-api/elasticsearch-api-6.8.0.ebuild
deleted file mode 100644
index 4dbb938a449e..000000000000
--- a/dev-ruby/elasticsearch-api/elasticsearch-api-6.8.0.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-RUBY_FAKEGEM_TASK_DOC=doc
-
-RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
-
-inherit ruby-fakegem eapi7-ver
-
-MY_P=elasticsearch-ruby-${PV}
-DESCRIPTION="Ruby integrations for ES, elasticsearch-api module"
-HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
-SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/multi_json
-"
-ruby_add_bdepend "
- doc? ( dev-ruby/yard )
- test? (
- dev-ruby/ansi
- dev-ruby/elasticsearch-transport
- dev-ruby/mocha:1.0
- dev-ruby/pry
- dev-ruby/shoulda-context
- )
-"
-
-RUBY_S=${MY_P}/${PN}
-
-all_ruby_prepare() {
- # fix to work without git
- sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
-
- # remove useless dependencies from Rakefile
- sed -e '/bundler/d' \
- -e '/require.*cane/,/end/d' \
- -i Rakefile || die
-
- sed -i -e '/config.formatter/ s/documentation/progress/' spec/spec_helper.rb || die
-
- # Avoid tests that require unpackaged jbuilder and jsonify
- sed -i -e '/\(pry-nav\|jbuilder\|jsonify\)/ s:^:#:' spec/spec_helper.rb || die
- rm -f spec/elasticsearch/api/actions/json_builders_spec.rb || die
-
- sed -i -e '/uses the escape_utils gem/askip "unmaintained gem"' spec/elasticsearch/api/utils_spec.rb || die
-}
diff --git a/dev-ruby/elasticsearch-api/elasticsearch-api-6.8.3.ebuild b/dev-ruby/elasticsearch-api/elasticsearch-api-6.8.3.ebuild
new file mode 100644
index 000000000000..325fd49a4a7f
--- /dev/null
+++ b/dev-ruby/elasticsearch-api/elasticsearch-api-6.8.3.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby27 ruby30 ruby31"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_TASK_DOC=doc
+
+RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch-api module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1-3)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/elasticsearch-transport
+ dev-ruby/mocha:1.0
+ dev-ruby/patron
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -i -e '/config.formatter/ s/documentation/progress/' spec/spec_helper.rb || die
+
+ # Avoid tests that require unpackaged jbuilder and jsonify
+ sed -e '/\(pry-nav\|jbuilder\|jsonify\)/ s:^:#:' \
+ -e '/RspecJunitFormatter/ s:^:#:' \
+ -e '/ansi/arequire "patron"' \
+ -i spec/spec_helper.rb || die
+ rm -f spec/elasticsearch/api/actions/json_builders_spec.rb || die
+
+ sed -i -e '/uses the escape_utils gem/askip "unmaintained gem"' spec/elasticsearch/api/utils_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch-api/elasticsearch-api-7.17.10.ebuild b/dev-ruby/elasticsearch-api/elasticsearch-api-7.17.10.ebuild
new file mode 100644
index 000000000000..1dd6949f7571
--- /dev/null
+++ b/dev-ruby/elasticsearch-api/elasticsearch-api-7.17.10.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_TASK_DOC=doc
+
+RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch-api module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/elasticsearch-transport
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -i -e '/config.formatter/ s/documentation/progress/' spec/spec_helper.rb || die
+
+ # Avoid tests that require unpackaged jbuilder and jsonify
+ sed -e '/\(pry-\|jbuilder\|jsonify\)/ s:^:#:' \
+ -e '/RspecJunitFormatter/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+ rm -f spec/elasticsearch/api/actions/json_builders_spec.rb || die
+
+ sed -i -e '/uses the escape_utils gem/askip "unmaintained gem"' spec/elasticsearch/api/utils_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch-api/elasticsearch-api-7.17.8.ebuild b/dev-ruby/elasticsearch-api/elasticsearch-api-7.17.8.ebuild
new file mode 100644
index 000000000000..6851e20568e3
--- /dev/null
+++ b/dev-ruby/elasticsearch-api/elasticsearch-api-7.17.8.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_TASK_DOC=doc
+
+RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch-api module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/elasticsearch-transport
+ dev-ruby/mocha:1.0
+ dev-ruby/patron
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -i -e '/config.formatter/ s/documentation/progress/' spec/spec_helper.rb || die
+
+ # Avoid tests that require unpackaged jbuilder and jsonify
+ sed -e '/\(pry-\|jbuilder\|jsonify\)/ s:^:#:' \
+ -e '/RspecJunitFormatter/ s:^:#:' \
+ -e '/ansi/arequire "patron"' \
+ -e '1igem "faraday", "~> 1.0"' \
+ -i spec/spec_helper.rb || die
+ rm -f spec/elasticsearch/api/actions/json_builders_spec.rb || die
+
+ sed -i -e '/uses the escape_utils gem/askip "unmaintained gem"' spec/elasticsearch/api/utils_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch-api/elasticsearch-api-7.17.9.ebuild b/dev-ruby/elasticsearch-api/elasticsearch-api-7.17.9.ebuild
new file mode 100644
index 000000000000..6851e20568e3
--- /dev/null
+++ b/dev-ruby/elasticsearch-api/elasticsearch-api-7.17.9.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_TASK_DOC=doc
+
+RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch-api module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/elasticsearch-transport
+ dev-ruby/mocha:1.0
+ dev-ruby/patron
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -i -e '/config.formatter/ s/documentation/progress/' spec/spec_helper.rb || die
+
+ # Avoid tests that require unpackaged jbuilder and jsonify
+ sed -e '/\(pry-\|jbuilder\|jsonify\)/ s:^:#:' \
+ -e '/RspecJunitFormatter/ s:^:#:' \
+ -e '/ansi/arequire "patron"' \
+ -e '1igem "faraday", "~> 1.0"' \
+ -i spec/spec_helper.rb || die
+ rm -f spec/elasticsearch/api/actions/json_builders_spec.rb || die
+
+ sed -i -e '/uses the escape_utils gem/askip "unmaintained gem"' spec/elasticsearch/api/utils_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch-api/elasticsearch-api-8.10.0.ebuild b/dev-ruby/elasticsearch-api/elasticsearch-api-8.10.0.ebuild
new file mode 100644
index 000000000000..68638e73868b
--- /dev/null
+++ b/dev-ruby/elasticsearch-api/elasticsearch-api-8.10.0.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_TASK_DOC=doc
+
+RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch-api module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/elasticsearch
+ dev-ruby/elastic-transport
+ dev-ruby/mocha:1.0
+ dev-ruby/patron
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -i -e '/add_formatter/ s/documentation/progress/' spec/spec_helper.rb || die
+
+ # Avoid tests that require unpackaged jbuilder and jsonify
+ sed -e '/\(pry-\|jbuilder\|jsonify\)/ s:^:#:' \
+ -e '/RspecJunitFormatter/ s:^:#:' \
+ -e '/ansi/arequire "patron"' \
+ -i spec/spec_helper.rb || die
+ rm -f spec/elasticsearch/api/actions/json_builders_spec.rb || die
+
+ sed -i -e '/uses the escape_utils gem/askip "unmaintained gem"' spec/elasticsearch/api/utils_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch-api/elasticsearch-api-8.12.2.ebuild b/dev-ruby/elasticsearch-api/elasticsearch-api-8.12.2.ebuild
new file mode 100644
index 000000000000..0bd7b29d948b
--- /dev/null
+++ b/dev-ruby/elasticsearch-api/elasticsearch-api-8.12.2.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_TASK_DOC=doc
+
+RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch-api module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/elasticsearch
+ dev-ruby/elastic-transport
+ dev-ruby/mocha:1.0
+ dev-ruby/patron
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -i -e '/add_formatter/ s/documentation/progress/' spec/spec_helper.rb || die
+
+ # Avoid tests that require unpackaged jbuilder and jsonify
+ sed -e '/\(pry-\|jbuilder\|jsonify\)/ s:^:#:' \
+ -e '/RspecJunitFormatter/ s:^:#:' \
+ -e '/ansi/arequire "patron"' \
+ -i spec/spec_helper.rb || die
+ rm -f spec/elasticsearch/api/actions/json_builders_spec.rb || die
+
+ sed -i -e '/uses the escape_utils gem/askip "unmaintained gem"' spec/elasticsearch/api/utils_spec.rb || die
+
+ # Create tmp directory required for tests
+ mkdir -p ../tmp/rest-api-spec/api || die
+}
diff --git a/dev-ruby/elasticsearch-api/elasticsearch-api-8.13.0.ebuild b/dev-ruby/elasticsearch-api/elasticsearch-api-8.13.0.ebuild
new file mode 100644
index 000000000000..0bd7b29d948b
--- /dev/null
+++ b/dev-ruby/elasticsearch-api/elasticsearch-api-8.13.0.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_TASK_DOC=doc
+
+RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch-api module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/elasticsearch
+ dev-ruby/elastic-transport
+ dev-ruby/mocha:1.0
+ dev-ruby/patron
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -i -e '/add_formatter/ s/documentation/progress/' spec/spec_helper.rb || die
+
+ # Avoid tests that require unpackaged jbuilder and jsonify
+ sed -e '/\(pry-\|jbuilder\|jsonify\)/ s:^:#:' \
+ -e '/RspecJunitFormatter/ s:^:#:' \
+ -e '/ansi/arequire "patron"' \
+ -i spec/spec_helper.rb || die
+ rm -f spec/elasticsearch/api/actions/json_builders_spec.rb || die
+
+ sed -i -e '/uses the escape_utils gem/askip "unmaintained gem"' spec/elasticsearch/api/utils_spec.rb || die
+
+ # Create tmp directory required for tests
+ mkdir -p ../tmp/rest-api-spec/api || die
+}
diff --git a/dev-ruby/elasticsearch-api/elasticsearch-api-8.9.0.ebuild b/dev-ruby/elasticsearch-api/elasticsearch-api-8.9.0.ebuild
new file mode 100644
index 000000000000..c11dc0bd9dc3
--- /dev/null
+++ b/dev-ruby/elasticsearch-api/elasticsearch-api-8.9.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_TASK_DOC=doc
+
+RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch-api module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/elasticsearch
+ dev-ruby/elastic-transport
+ dev-ruby/mocha:1.0
+ dev-ruby/patron
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -i -e '/config.formatter/ s/documentation/progress/' spec/spec_helper.rb || die
+
+ # Avoid tests that require unpackaged jbuilder and jsonify
+ sed -e '/\(pry-\|jbuilder\|jsonify\)/ s:^:#:' \
+ -e '/RspecJunitFormatter/ s:^:#:' \
+ -e '/ansi/arequire "patron"' \
+ -i spec/spec_helper.rb || die
+ rm -f spec/elasticsearch/api/actions/json_builders_spec.rb || die
+
+ sed -i -e '/uses the escape_utils gem/askip "unmaintained gem"' spec/elasticsearch/api/utils_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch-api/metadata.xml b/dev-ruby/elasticsearch-api/metadata.xml
index 1fa2ebe487b1..e6adc4fb4fae 100644
--- a/dev-ruby/elasticsearch-api/metadata.xml
+++ b/dev-ruby/elasticsearch-api/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">elastic/elasticsearch-ruby</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/elasticsearch-transport/Manifest b/dev-ruby/elasticsearch-transport/Manifest
index 601631614643..2e83f579b5da 100644
--- a/dev-ruby/elasticsearch-transport/Manifest
+++ b/dev-ruby/elasticsearch-transport/Manifest
@@ -1,4 +1,5 @@
-DIST elasticsearch-ruby-6.1.0.tar.gz 305518 BLAKE2B c58636ab44d692bd3fcceac7a7ca6b03e4b5ac8c2fc94f5d108d34ad8bab140c3432380612f7066dc8370f891aa178a1766feae2bed0f5a6cef0c15d52774885 SHA512 1067de087864bbc7f5ea4c32df3ee3096b6c2ff39b8cde60a2da135b3dfb4d2e23d101a58ae04410067d0130fa680b7b80b98a1fe596898cfb545e29e83376a2
-DIST elasticsearch-ruby-6.3.0.tar.gz 327308 BLAKE2B c9e5c6b1229dfaa30ecf341de9832c992131c7e3a42253747e1577debc0873b4c6428740c00912affa0cc4e668e0f5b78ac484bec926757ac1a8d50eef1bc996 SHA512 26c36198c66c31c59247d5d63ca817cf7942436b524a3480c69c1860ba3933617c75138521a49e14172d9a6ce6086325d685ab5dba22c99a4767dc85f35eb13a
-DIST elasticsearch-ruby-6.3.1.tar.gz 336484 BLAKE2B b97af0262be1512a5db230f2ad66db52cfdba9c613e4fe89b23b35ae9b038978b043c7202784becdaea7710dbe45c40dfd95a95c5997164ea2f1fcc9c5b363d2 SHA512 184c31ebd6c507ceb11273eac950ab9dd168fcbccdd7b0c1956603a2e5e587eab767c2dec8203e90d919189f6f6e27a11d847ff0c42873d65276139db85dafac
-DIST elasticsearch-ruby-6.8.0.tar.gz 336486 BLAKE2B 5bf9538d3710787939a61b411918f3712a8490ed20df1039613f3828a55758e373e56c6794d597a95c04cf610aba8cea1113982b91cde764c96ee454e59cc7b1 SHA512 d75437b04770cac2ac65fb91f0b18cd3beae0248fa2f148aa820da5272093e5b05d00dc4c82c699d7e31b23d7f06ce7727f74eb5a9b0308264f7139e32774c91
+DIST elasticsearch-ruby-6.8.3.tar.gz 345447 BLAKE2B 6f10b4345d098b36c5b4d8e90e8745b10313de0df1f5bd9285e72f891a871bff8569318d5bd15ab5cca0ada722042affb6bd20ddb68117eb689eadc0c2a16706 SHA512 3001760ff49bf72ba9ac5e11f3338e320c828bfb245d45535325f422e438b693d1ae7a4f73ab766386a76282eca435849c670f3ad98e9431b80b402e97268f83
+DIST elasticsearch-ruby-7.17.10.tar.gz 1032424 BLAKE2B 72ef81b295c656ad319997c89bb065e17e7cda331572758642b028126ff82606b05fd9ba71cf56728428d5f438af69dc3d74f3a1e9733bf5c4869989b03890f0 SHA512 5921595d9f35f5610c999c8f686621212095786d1c2caffd133b315d2ae20154016160950af2bd6f0959a390b1615dbce3da2e43ff2aadbfd1be1b675455f17d
+DIST elasticsearch-ruby-7.17.7.tar.gz 1017241 BLAKE2B 5da6a9dc39afb42c5f5b27aebc403743950d7f587229f5aae8e838e68eab760068686d96fcdc5287596130748e2d2017d56afbd72decf50cdf57eeaac4bd8436 SHA512 d19722ffd5786570f6d36e915b25916dc6879029a6b93bda2ec001209f3a2b0db1bc465ec0eedb9795addd33e2c265a39730fcac5e6ed35a6df14e08b764e83e
+DIST elasticsearch-ruby-7.17.8.tar.gz 1017287 BLAKE2B d204c1992d5006b386dc0996bed852132ded6b9732a38699e804e1a5ee62387ef5374836cdb4e84c6232066139422b5d1e831143dbd682e86ec30df9077b1279 SHA512 71288f31e18ff13709962848091e8e0afb128d805be9c3060421bb46fa7bf120700330beb12241b4f7385e88d9f959921fce3721a1050f89c2464ab8dd355706
+DIST elasticsearch-ruby-7.17.9.tar.gz 1030121 BLAKE2B 5acfc3f2ce9d39e9f02deed043aec90800968fef453d47802b6628598fc3c39875238d29e1c8927b88fb1e7a65960024e43874482da8a0920cca17a4beb2c0b4 SHA512 974dde6478345a22f27b4264219759a16878e29eb0aabaf6d57aa0d94d22712e35e55657ff5625a36e8643dcb12bac8aa4e6bb269ac011ca8fddcaae0083bcf0
diff --git a/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.1.0.ebuild b/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.1.0.ebuild
deleted file mode 100644
index 0e94cd06b5c2..000000000000
--- a/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.1.0.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-RUBY_FAKEGEM_RECIPE_DOC=rdoc
-
-RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
-
-inherit ruby-fakegem eapi7-ver
-
-MY_P=elasticsearch-ruby-${PV}
-DESCRIPTION="Ruby integrations for ES, elasticsearch-transport module"
-HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
-SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/faraday
- dev-ruby/multi_json
-"
-ruby_add_bdepend "
- doc? ( dev-ruby/yard )
- test? (
- dev-ruby/ansi
- dev-ruby/mocha:1.0
- dev-ruby/pry
- dev-ruby/shoulda-context
- dev-ruby/curb
- dev-ruby/patron
- )
-"
-
-RUBY_S=${MY_P}/${PN}
-
-all_ruby_prepare() {
- # fix to work without git
- sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
-
- # remove useless dependencies from Rakefile
- sed -e '/bundler/d' \
- -e '/require.*cane/,/end/d' \
- -i Rakefile || die
-
- # Tweak test setup to only run unit tests since we don't have a live cluster
- sed -i -e "s/RUBY_VERSION > '1.9'/false/" \
- -e '/module Elasticsearch/,$ s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.3.0.ebuild b/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.3.0.ebuild
deleted file mode 100644
index 58ea677f3db7..000000000000
--- a/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.3.0.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-RUBY_FAKEGEM_RECIPE_DOC=rdoc
-
-RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
-
-inherit ruby-fakegem eapi7-ver
-
-MY_P=elasticsearch-ruby-${PV}
-DESCRIPTION="Ruby integrations for ES, elasticsearch-transport module"
-HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
-SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/faraday
- dev-ruby/multi_json
-"
-ruby_add_bdepend "
- doc? ( dev-ruby/yard )
- test? (
- dev-ruby/ansi
- dev-ruby/mocha:1.0
- dev-ruby/pry
- dev-ruby/shoulda-context
- dev-ruby/curb
- dev-ruby/patron
- )
-"
-
-RUBY_S=${MY_P}/${PN}
-
-all_ruby_prepare() {
- # fix to work without git
- sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
-
- # remove useless dependencies from Rakefile
- sed -e '/bundler/d' \
- -e '/require.*cane/,/end/d' \
- -i Rakefile || die
-
- # Tweak test setup to only run unit tests since we don't have a live cluster
- sed -i -e "s/RUBY_VERSION > '1.9'/false/" \
- -e '/module Elasticsearch/,$ s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.3.1.ebuild b/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.3.1.ebuild
deleted file mode 100644
index 62da4c569e55..000000000000
--- a/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.3.1.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-RUBY_FAKEGEM_RECIPE_DOC=rdoc
-
-RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
-
-inherit ruby-fakegem eapi7-ver
-
-MY_P=elasticsearch-ruby-${PV}
-DESCRIPTION="Ruby integrations for ES, elasticsearch-transport module"
-HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
-SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/faraday
- dev-ruby/multi_json
-"
-ruby_add_bdepend "
- doc? ( dev-ruby/yard )
- test? (
- dev-ruby/ansi
- dev-ruby/mocha:1.0
- dev-ruby/pry
- dev-ruby/shoulda-context
- dev-ruby/curb
- dev-ruby/patron
- )
-"
-
-RUBY_S=${MY_P}/${PN}
-
-all_ruby_prepare() {
- # fix to work without git
- sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
-
- # remove useless dependencies from Rakefile
- sed -e '/bundler/d' \
- -e '/require.*cane/,/end/d' \
- -i Rakefile || die
-
- # Tweak test setup to only run unit tests since we don't have a live cluster
- sed -i -e "s/RUBY_VERSION > '1.9'/false/" \
- -e '/module Elasticsearch/,$ s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.8.0.ebuild b/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.8.0.ebuild
deleted file mode 100644
index 62da4c569e55..000000000000
--- a/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.8.0.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-RUBY_FAKEGEM_RECIPE_DOC=rdoc
-
-RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
-
-inherit ruby-fakegem eapi7-ver
-
-MY_P=elasticsearch-ruby-${PV}
-DESCRIPTION="Ruby integrations for ES, elasticsearch-transport module"
-HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
-SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/faraday
- dev-ruby/multi_json
-"
-ruby_add_bdepend "
- doc? ( dev-ruby/yard )
- test? (
- dev-ruby/ansi
- dev-ruby/mocha:1.0
- dev-ruby/pry
- dev-ruby/shoulda-context
- dev-ruby/curb
- dev-ruby/patron
- )
-"
-
-RUBY_S=${MY_P}/${PN}
-
-all_ruby_prepare() {
- # fix to work without git
- sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
-
- # remove useless dependencies from Rakefile
- sed -e '/bundler/d' \
- -e '/require.*cane/,/end/d' \
- -i Rakefile || die
-
- # Tweak test setup to only run unit tests since we don't have a live cluster
- sed -i -e "s/RUBY_VERSION > '1.9'/false/" \
- -e '/module Elasticsearch/,$ s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.8.3-r1.ebuild b/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.8.3-r1.ebuild
new file mode 100644
index 000000000000..1aabb17a8455
--- /dev/null
+++ b/dev-ruby/elasticsearch-transport/elasticsearch-transport-6.8.3-r1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_TASK_TEST="NOTURN=true test"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch-transport module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1-3)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/faraday:1
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/rspec:3
+ dev-ruby/shoulda-context
+ dev-ruby/curb
+ dev-ruby/patron
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ # Tweak test setup to only run unit tests since we don't have a live cluster
+ sed -i -e "s/RUBY_VERSION > '1.9'/false/" \
+ -e '/module Elasticsearch/,$ s:^:#:' test/test_helper.rb || die
+}
diff --git a/dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.10.ebuild b/dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.10.ebuild
new file mode 100644
index 000000000000..622c721b1490
--- /dev/null
+++ b/dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.10.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch-transport module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ || ( dev-ruby/faraday:2 dev-ruby/faraday:1 )
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/rspec:3
+ dev-ruby/shoulda-context
+ dev-ruby/curb
+ dev-ruby/ethon
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ # Tweak test setup to only run unit tests since we don't have a live cluster
+ sed -e "s/RUBY_VERSION > '1.9'/false/" \
+ -e '/module Elasticsearch/,$ s:^:#:' \
+ -e '/reporters/ s:^:#: ; /Reporters::SpecReporter/,/^end/ s:^:#: ; /Reporters.use/ s:^:#:' \
+ -i test/test_helper.rb || die
+
+ sed -e '/pry/ s:^:#:' \
+ -e '/config.formatter/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid specs that require a running elasticsearch instance or
+ # unpackaged Faraday adapter.
+ sed -e '/#perform_request/ s/describe/xdescribe/' \
+ -e '/when the client connects/ s/context/xcontext/' \
+ -e '/when using the \(HTTPClient\|Patron\) adapter/ s/context/xcontext/' \
+ -e '/require.*\(httpclient\|patron\)/ s:^:#:' \
+ -e '/when the adapter is \(patron\|specified as a string key\|typhoeus\)/ s/context/xcontext/' \
+ -e '/when the adapter can be detected/ s/context/xcontext/' \
+ -e '/when the Faraday adapter is configured/ s/context/xcontext/' \
+ -i spec/elasticsearch/transport/client_spec.rb || die
+ sed -e '/using \(httpclient\|typhoeus\|patron\)/ s/context/xcontext/' \
+ -e '/require.*httpclient/ s:^:#:' \
+ -i spec/elasticsearch/transport/meta_header_spec.rb || die
+ sed -e '/retries on 404 status the specified number of max_retries/ s/it/xit/' \
+ -i spec/elasticsearch/transport/base_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.7.ebuild b/dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.7.ebuild
new file mode 100644
index 000000000000..a1d81e04c059
--- /dev/null
+++ b/dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.7.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch-transport module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/faraday:1
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/rspec:3
+ dev-ruby/shoulda-context
+ dev-ruby/curb
+ dev-ruby/patron
+ dev-ruby/typhoeus
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ # Tweak test setup to only run unit tests since we don't have a live cluster
+ sed -e "s/RUBY_VERSION > '1.9'/false/" \
+ -e '/module Elasticsearch/,$ s:^:#:' \
+ -e '/reporters/ s:^:#: ; /Reporters::SpecReporter/,/^end/ s:^:#: ; /Reporters.use/ s:^:#:' \
+ -i test/test_helper.rb || die
+
+ sed -e '/pry/ s:^:#:' \
+ -e '1igem "faraday", "~> 1.0"' \
+ -e '/config.formatter/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid specs that require a running elasticsearch instance
+ sed -e '/#perform_request/ s/describe/xdescribe/' \
+ -e '/when the client connects/ s/context/xcontext/' \
+ -i spec/elasticsearch/transport/client_spec.rb || die
+ sed -e '/retries on 404 status the specified number of max_retries/ s/it/xit/' \
+ -i spec/elasticsearch/transport/base_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.8.ebuild b/dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.8.ebuild
new file mode 100644
index 000000000000..6b2be3fa12b7
--- /dev/null
+++ b/dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.8.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch-transport module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/faraday:1
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/rspec:3
+ dev-ruby/shoulda-context
+ dev-ruby/curb
+ dev-ruby/patron
+ dev-ruby/typhoeus
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ # Tweak test setup to only run unit tests since we don't have a live cluster
+ sed -e "s/RUBY_VERSION > '1.9'/false/" \
+ -e '/module Elasticsearch/,$ s:^:#:' \
+ -e '/reporters/ s:^:#: ; /Reporters::SpecReporter/,/^end/ s:^:#: ; /Reporters.use/ s:^:#:' \
+ -i test/test_helper.rb || die
+
+ sed -e '/pry/ s:^:#:' \
+ -e '1igem "faraday", "~> 1.0"' \
+ -e '/config.formatter/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid specs that require a running elasticsearch instance
+ sed -e '/#perform_request/ s/describe/xdescribe/' \
+ -e '/when the client connects/ s/context/xcontext/' \
+ -i spec/elasticsearch/transport/client_spec.rb || die
+ sed -e '/retries on 404 status the specified number of max_retries/ s/it/xit/' \
+ -i spec/elasticsearch/transport/base_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.9.ebuild b/dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.9.ebuild
new file mode 100644
index 000000000000..fe40ac511809
--- /dev/null
+++ b/dev-ruby/elasticsearch-transport/elasticsearch-transport-7.17.9.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch-transport module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/faraday:1
+ dev-ruby/multi_json
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/rspec:3
+ dev-ruby/shoulda-context
+ dev-ruby/curb
+ dev-ruby/ethon
+ dev-ruby/patron
+ dev-ruby/typhoeus
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ # Tweak test setup to only run unit tests since we don't have a live cluster
+ sed -e "s/RUBY_VERSION > '1.9'/false/" \
+ -e '/module Elasticsearch/,$ s:^:#:' \
+ -e '/reporters/ s:^:#: ; /Reporters::SpecReporter/,/^end/ s:^:#: ; /Reporters.use/ s:^:#:' \
+ -i test/test_helper.rb || die
+
+ sed -e '/pry/ s:^:#:' \
+ -e '1igem "faraday", "~> 1.0"' \
+ -e '/config.formatter/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid specs that require a running elasticsearch instance
+ sed -e '/#perform_request/ s/describe/xdescribe/' \
+ -e '/when the client connects/ s/context/xcontext/' \
+ -i spec/elasticsearch/transport/client_spec.rb || die
+ sed -e '/retries on 404 status the specified number of max_retries/ s/it/xit/' \
+ -i spec/elasticsearch/transport/base_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch-transport/metadata.xml b/dev-ruby/elasticsearch-transport/metadata.xml
index 1fa2ebe487b1..e6adc4fb4fae 100644
--- a/dev-ruby/elasticsearch-transport/metadata.xml
+++ b/dev-ruby/elasticsearch-transport/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">elastic/elasticsearch-ruby</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/elasticsearch/Manifest b/dev-ruby/elasticsearch/Manifest
index 601631614643..01c1905bfeb6 100644
--- a/dev-ruby/elasticsearch/Manifest
+++ b/dev-ruby/elasticsearch/Manifest
@@ -1,4 +1,8 @@
-DIST elasticsearch-ruby-6.1.0.tar.gz 305518 BLAKE2B c58636ab44d692bd3fcceac7a7ca6b03e4b5ac8c2fc94f5d108d34ad8bab140c3432380612f7066dc8370f891aa178a1766feae2bed0f5a6cef0c15d52774885 SHA512 1067de087864bbc7f5ea4c32df3ee3096b6c2ff39b8cde60a2da135b3dfb4d2e23d101a58ae04410067d0130fa680b7b80b98a1fe596898cfb545e29e83376a2
-DIST elasticsearch-ruby-6.3.0.tar.gz 327308 BLAKE2B c9e5c6b1229dfaa30ecf341de9832c992131c7e3a42253747e1577debc0873b4c6428740c00912affa0cc4e668e0f5b78ac484bec926757ac1a8d50eef1bc996 SHA512 26c36198c66c31c59247d5d63ca817cf7942436b524a3480c69c1860ba3933617c75138521a49e14172d9a6ce6086325d685ab5dba22c99a4767dc85f35eb13a
-DIST elasticsearch-ruby-6.3.1.tar.gz 336484 BLAKE2B b97af0262be1512a5db230f2ad66db52cfdba9c613e4fe89b23b35ae9b038978b043c7202784becdaea7710dbe45c40dfd95a95c5997164ea2f1fcc9c5b363d2 SHA512 184c31ebd6c507ceb11273eac950ab9dd168fcbccdd7b0c1956603a2e5e587eab767c2dec8203e90d919189f6f6e27a11d847ff0c42873d65276139db85dafac
-DIST elasticsearch-ruby-6.8.0.tar.gz 336486 BLAKE2B 5bf9538d3710787939a61b411918f3712a8490ed20df1039613f3828a55758e373e56c6794d597a95c04cf610aba8cea1113982b91cde764c96ee454e59cc7b1 SHA512 d75437b04770cac2ac65fb91f0b18cd3beae0248fa2f148aa820da5272093e5b05d00dc4c82c699d7e31b23d7f06ce7727f74eb5a9b0308264f7139e32774c91
+DIST elasticsearch-ruby-6.8.3.tar.gz 345447 BLAKE2B 6f10b4345d098b36c5b4d8e90e8745b10313de0df1f5bd9285e72f891a871bff8569318d5bd15ab5cca0ada722042affb6bd20ddb68117eb689eadc0c2a16706 SHA512 3001760ff49bf72ba9ac5e11f3338e320c828bfb245d45535325f422e438b693d1ae7a4f73ab766386a76282eca435849c670f3ad98e9431b80b402e97268f83
+DIST elasticsearch-ruby-7.17.10.tar.gz 1032424 BLAKE2B 72ef81b295c656ad319997c89bb065e17e7cda331572758642b028126ff82606b05fd9ba71cf56728428d5f438af69dc3d74f3a1e9733bf5c4869989b03890f0 SHA512 5921595d9f35f5610c999c8f686621212095786d1c2caffd133b315d2ae20154016160950af2bd6f0959a390b1615dbce3da2e43ff2aadbfd1be1b675455f17d
+DIST elasticsearch-ruby-7.17.8.tar.gz 1017287 BLAKE2B d204c1992d5006b386dc0996bed852132ded6b9732a38699e804e1a5ee62387ef5374836cdb4e84c6232066139422b5d1e831143dbd682e86ec30df9077b1279 SHA512 71288f31e18ff13709962848091e8e0afb128d805be9c3060421bb46fa7bf120700330beb12241b4f7385e88d9f959921fce3721a1050f89c2464ab8dd355706
+DIST elasticsearch-ruby-7.17.9.tar.gz 1030121 BLAKE2B 5acfc3f2ce9d39e9f02deed043aec90800968fef453d47802b6628598fc3c39875238d29e1c8927b88fb1e7a65960024e43874482da8a0920cca17a4beb2c0b4 SHA512 974dde6478345a22f27b4264219759a16878e29eb0aabaf6d57aa0d94d22712e35e55657ff5625a36e8643dcb12bac8aa4e6bb269ac011ca8fddcaae0083bcf0
+DIST elasticsearch-ruby-8.10.0.tar.gz 1760605 BLAKE2B c9c1d1486ebf7254e67f648b2ac6aef3c5dd17abdafcd4be503c610f0531e904c03d05391157fdc1c0f88e534886b50f978eeac03248f5a580fc1a3da8cc1a85 SHA512 d079e244095349dbab7e0cd2a962ee0bd8f1122f4ffd254fce26dea28722e79aa7251fed66091f8bb5d3128be6bf22c0c9ad3c5acb34b60b67c1505aa0093181
+DIST elasticsearch-ruby-8.12.2.tar.gz 1908814 BLAKE2B f3caffe7336a63547ba0d44a3239fb6b71ed7fb46b1136114a87e7e5f69608d69b14d12f568b6e945db0917a6913a10407cf7cae3137605adaaac5fb7fd9439b SHA512 08fe791ee20cbe9f6ad9aee1b7d9c02813895add4bb0ff7b4e063051b42e62e037d71217521f6a9cb0076c51e8f7160bad52798741435164451806932488d17c
+DIST elasticsearch-ruby-8.13.0.tar.gz 1918145 BLAKE2B ded410c9e77876dc61a942ab1de7945d28aa1c06cd7079f693119812128fdfd38c206d9644aadb79fb8c9b48e12d77fec6c313434cfb58510bc48fecc905106b SHA512 8babc5797802ae256b41a00927cd1688c2d3d90770d8a867a9b96a7a115f537f1ca301b2d6b73107995b23578abc755d7bf7dc03075520fa857dda22e6a2d32b
+DIST elasticsearch-ruby-8.9.0.tar.gz 1755804 BLAKE2B aff81b211eca6ad551fa54d949e39815eba15b579601e7af48122dacbd78836a57475c31bab6326c874dff4c6991deecb9b859866e417302b54d87f250f2695f SHA512 33b2322e83cbe08229aea81662e2ff7bd46b05a9ab85ccd61efcc8e0ffc8779699d4235bda549221f0839bbf999fefb502e44144b2bd7d0ea102a2aa54a080b1
diff --git a/dev-ruby/elasticsearch/elasticsearch-6.1.0.ebuild b/dev-ruby/elasticsearch/elasticsearch-6.1.0.ebuild
deleted file mode 100644
index 158473118ec9..000000000000
--- a/dev-ruby/elasticsearch/elasticsearch-6.1.0.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-RUBY_FAKEGEM_TASK_DOC=doc
-
-inherit ruby-fakegem eapi7-ver
-
-MY_P=elasticsearch-ruby-${PV}
-DESCRIPTION="Ruby integrations for ES, elasticsearch module"
-HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
-SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- ~dev-ruby/elasticsearch-api-${PV}
- ~dev-ruby/elasticsearch-transport-${PV}
-"
-ruby_add_bdepend "
- doc? ( dev-ruby/yard )
- test? (
- dev-ruby/ansi
- dev-ruby/elasticsearch-transport
- dev-ruby/mocha:1.0
- dev-ruby/pry
- dev-ruby/shoulda-context
- )
-"
-
-# Tests need additional modules (at least 'turn') packaged. Then someone
-# should look into running them and so on.
-RESTRICT="test"
-
-RUBY_S=${MY_P}/${PN}
-
-all_ruby_prepare() {
- # fix to work without git
- sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
-
- # remove useless dependencies from Rakefile
- sed -e '/bundler/d' \
- -e '/require.*cane/,/end/d' \
- -i Rakefile || die
-}
diff --git a/dev-ruby/elasticsearch/elasticsearch-6.3.0.ebuild b/dev-ruby/elasticsearch/elasticsearch-6.3.0.ebuild
deleted file mode 100644
index de833082bf42..000000000000
--- a/dev-ruby/elasticsearch/elasticsearch-6.3.0.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-RUBY_FAKEGEM_TASK_DOC=doc
-
-inherit ruby-fakegem eapi7-ver
-
-MY_P=elasticsearch-ruby-${PV}
-DESCRIPTION="Ruby integrations for ES, elasticsearch module"
-HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
-SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- ~dev-ruby/elasticsearch-api-${PV}
- ~dev-ruby/elasticsearch-transport-${PV}
-"
-ruby_add_bdepend "
- doc? ( dev-ruby/yard )
- test? (
- dev-ruby/ansi
- dev-ruby/elasticsearch-transport
- dev-ruby/mocha:1.0
- dev-ruby/pry
- dev-ruby/shoulda-context
- )
-"
-
-# Tests need additional modules (at least 'turn') packaged. Then someone
-# should look into running them and so on.
-RESTRICT="test"
-
-RUBY_S=${MY_P}/${PN}
-
-all_ruby_prepare() {
- # fix to work without git
- sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
-
- # remove useless dependencies from Rakefile
- sed -e '/bundler/d' \
- -e '/require.*cane/,/end/d' \
- -i Rakefile || die
-}
diff --git a/dev-ruby/elasticsearch/elasticsearch-6.3.1.ebuild b/dev-ruby/elasticsearch/elasticsearch-6.3.1.ebuild
deleted file mode 100644
index a56db80f2fb5..000000000000
--- a/dev-ruby/elasticsearch/elasticsearch-6.3.1.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-RUBY_FAKEGEM_TASK_DOC=doc
-
-inherit ruby-fakegem eapi7-ver
-
-MY_P=elasticsearch-ruby-${PV}
-DESCRIPTION="Ruby integrations for ES, elasticsearch module"
-HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
-SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- ~dev-ruby/elasticsearch-api-${PV}
- ~dev-ruby/elasticsearch-transport-${PV}
-"
-ruby_add_bdepend "
- doc? ( dev-ruby/yard )
- test? (
- dev-ruby/ansi
- dev-ruby/elasticsearch-transport
- dev-ruby/mocha:1.0
- dev-ruby/pry
- dev-ruby/shoulda-context
- )
-"
-
-# Tests need additional modules (at least 'turn') packaged. Then someone
-# should look into running them and so on.
-RESTRICT="test"
-
-RUBY_S=${MY_P}/${PN}
-
-all_ruby_prepare() {
- # fix to work without git
- sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
-
- # remove useless dependencies from Rakefile
- sed -e '/bundler/d' \
- -e '/require.*cane/,/end/d' \
- -i Rakefile || die
-}
diff --git a/dev-ruby/elasticsearch/elasticsearch-6.8.0.ebuild b/dev-ruby/elasticsearch/elasticsearch-6.8.0.ebuild
deleted file mode 100644
index a56db80f2fb5..000000000000
--- a/dev-ruby/elasticsearch/elasticsearch-6.8.0.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-RUBY_FAKEGEM_TASK_DOC=doc
-
-inherit ruby-fakegem eapi7-ver
-
-MY_P=elasticsearch-ruby-${PV}
-DESCRIPTION="Ruby integrations for ES, elasticsearch module"
-HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
-SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- ~dev-ruby/elasticsearch-api-${PV}
- ~dev-ruby/elasticsearch-transport-${PV}
-"
-ruby_add_bdepend "
- doc? ( dev-ruby/yard )
- test? (
- dev-ruby/ansi
- dev-ruby/elasticsearch-transport
- dev-ruby/mocha:1.0
- dev-ruby/pry
- dev-ruby/shoulda-context
- )
-"
-
-# Tests need additional modules (at least 'turn') packaged. Then someone
-# should look into running them and so on.
-RESTRICT="test"
-
-RUBY_S=${MY_P}/${PN}
-
-all_ruby_prepare() {
- # fix to work without git
- sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
-
- # remove useless dependencies from Rakefile
- sed -e '/bundler/d' \
- -e '/require.*cane/,/end/d' \
- -i Rakefile || die
-}
diff --git a/dev-ruby/elasticsearch/elasticsearch-6.8.3.ebuild b/dev-ruby/elasticsearch/elasticsearch-6.8.3.ebuild
new file mode 100644
index 000000000000..b522010aad3f
--- /dev/null
+++ b/dev-ruby/elasticsearch/elasticsearch-6.8.3.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby27 ruby30 ruby31"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_TASK_DOC=doc
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1-3)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ ~dev-ruby/elasticsearch-api-${PV}
+ ~dev-ruby/elasticsearch-transport-${PV}
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/elasticsearch-transport
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+# Tests need additional modules (at least 'turn') packaged. Then someone
+# should look into running them and so on.
+RESTRICT="test"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+}
diff --git a/dev-ruby/elasticsearch/elasticsearch-7.17.10.ebuild b/dev-ruby/elasticsearch/elasticsearch-7.17.10.ebuild
new file mode 100644
index 000000000000..4bd16db0ddb3
--- /dev/null
+++ b/dev-ruby/elasticsearch/elasticsearch-7.17.10.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ ~dev-ruby/elasticsearch-api-${PV}
+ ~dev-ruby/elasticsearch-transport-${PV}
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/elasticsearch-transport
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ dev-ruby/webmock
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -e '/documentation/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid spec requiring a running elasticsearch server
+ rm -f spec/integration/{characters_escaping,client_integration,validation_integration}_spec.rb || die
+
+ # Use the Faraday default adapter instead of a random auto-detected and unpackaged one.
+ sed -e '/Elasticsearch::Client.new/ s/$/ adapter: :net_http/' \
+ -i spec/unit/wrapper_gem_spec.rb || die
+ sed -e 's/Elasticsearch::Client.new /Elasticsearch::Client.new adapter: :net_http/' \
+ -e '/Elasticsearch::Client.new(/ s/(/(adapter: :net_http, /' \
+ -i spec/unit/elasticsearch_product_validation_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch/elasticsearch-7.17.8.ebuild b/dev-ruby/elasticsearch/elasticsearch-7.17.8.ebuild
new file mode 100644
index 000000000000..88751547f4fb
--- /dev/null
+++ b/dev-ruby/elasticsearch/elasticsearch-7.17.8.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ ~dev-ruby/elasticsearch-api-${PV}
+ ~dev-ruby/elasticsearch-transport-${PV}
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/elasticsearch-transport
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -e '/documentation/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid spec requiring a running elasticsearch server
+ rm -f spec/integration/{characters_escaping,client_integration,validation_integration}_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch/elasticsearch-7.17.9.ebuild b/dev-ruby/elasticsearch/elasticsearch-7.17.9.ebuild
new file mode 100644
index 000000000000..88751547f4fb
--- /dev/null
+++ b/dev-ruby/elasticsearch/elasticsearch-7.17.9.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ ~dev-ruby/elasticsearch-api-${PV}
+ ~dev-ruby/elasticsearch-transport-${PV}
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/elasticsearch-transport
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -e '/documentation/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid spec requiring a running elasticsearch server
+ rm -f spec/integration/{characters_escaping,client_integration,validation_integration}_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch/elasticsearch-8.10.0.ebuild b/dev-ruby/elasticsearch/elasticsearch-8.10.0.ebuild
new file mode 100644
index 000000000000..877765963627
--- /dev/null
+++ b/dev-ruby/elasticsearch/elasticsearch-8.10.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ ~dev-ruby/elasticsearch-api-${PV}
+ dev-ruby/elastic-transport:8
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -e '/documentation/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid spec requiring a running elasticsearch server
+ rm -f spec/integration/{characters_escaping,client_integration,validation_integration}_spec.rb || die
+ rm -f spec/integration/helpers/*_helper_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch/elasticsearch-8.12.2.ebuild b/dev-ruby/elasticsearch/elasticsearch-8.12.2.ebuild
new file mode 100644
index 000000000000..346bd1ac2a4d
--- /dev/null
+++ b/dev-ruby/elasticsearch/elasticsearch-8.12.2.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "
+ ~dev-ruby/elasticsearch-api-${PV}
+ dev-ruby/elastic-transport:8
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/base64
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -e '/documentation/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid spec requiring a running elasticsearch server
+ rm -f spec/integration/{characters_escaping,client_integration,validation_integration}_spec.rb || die
+ rm -f spec/integration/helpers/*_helper_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch/elasticsearch-8.13.0.ebuild b/dev-ruby/elasticsearch/elasticsearch-8.13.0.ebuild
new file mode 100644
index 000000000000..346bd1ac2a4d
--- /dev/null
+++ b/dev-ruby/elasticsearch/elasticsearch-8.13.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "
+ ~dev-ruby/elasticsearch-api-${PV}
+ dev-ruby/elastic-transport:8
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/base64
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -e '/documentation/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid spec requiring a running elasticsearch server
+ rm -f spec/integration/{characters_escaping,client_integration,validation_integration}_spec.rb || die
+ rm -f spec/integration/helpers/*_helper_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch/elasticsearch-8.9.0.ebuild b/dev-ruby/elasticsearch/elasticsearch-8.9.0.ebuild
new file mode 100644
index 000000000000..17df5d7d899d
--- /dev/null
+++ b/dev-ruby/elasticsearch/elasticsearch-8.9.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+MY_P=elasticsearch-ruby-${PV}
+DESCRIPTION="Ruby integrations for ES, elasticsearch module"
+HOMEPAGE="https://github.com/elastic/elasticsearch-ruby"
+SRC_URI="https://github.com/elastic/elasticsearch-ruby/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ ~dev-ruby/elasticsearch-api-${PV}
+ dev-ruby/elastic-transport:8
+"
+ruby_add_bdepend "
+ doc? ( dev-ruby/yard )
+ test? (
+ dev-ruby/ansi
+ dev-ruby/mocha:1.0
+ dev-ruby/pry
+ dev-ruby/shoulda-context
+ )
+"
+
+RUBY_S=${MY_P}/${PN}
+
+all_ruby_prepare() {
+ # fix to work without git
+ sed -i -e 's/git ls-files/find * -type f/' *.gemspec || die
+
+ # remove useless dependencies from Rakefile
+ sed -e '/bundler/d' \
+ -e '/require.*cane/,/end/d' \
+ -i Rakefile || die
+
+ sed -e '/documentation/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ # Avoid spec requiring a running elasticsearch server
+ rm -f spec/integration/{characters_escaping,client_integration,validation_integration}_spec.rb || die
+ rm -f spec/integration/helpers/*_helper_spec.rb || die
+}
diff --git a/dev-ruby/elasticsearch/metadata.xml b/dev-ruby/elasticsearch/metadata.xml
index 1fa2ebe487b1..e6adc4fb4fae 100644
--- a/dev-ruby/elasticsearch/metadata.xml
+++ b/dev-ruby/elasticsearch/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">elastic/elasticsearch-ruby</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/em-websocket/Manifest b/dev-ruby/em-websocket/Manifest
index 1d6e1bc1ba13..88d50706746e 100644
--- a/dev-ruby/em-websocket/Manifest
+++ b/dev-ruby/em-websocket/Manifest
@@ -1 +1 @@
-DIST em-websocket-0.5.1.tar.gz 27792 BLAKE2B 5aa8b9b9a1bf7066086c3115358a01054dbd24c3b9e7b454210c653aa25face2230e5504e0fc3a13d4770bcfcdf5d792c1914f173ec8d83d1b97ee7c169636af SHA512 ca2b4e2e4be663a5932fe63ed0efab169fbee9aec50f9780c1ee5df0efa300acb58410b97a22d5d10a2cb9195c2a68f6c71bf4e070ee6d915c6abf4015aa5d94
+DIST em-websocket-0.5.3.tar.gz 29411 BLAKE2B ce38ee1adc9cd49454d74d94130e9d759c631337da9401390fae68210f7b02692a0f23eb5970aa226ab3651e1924a117ac104a01481cc954ca77ab9c27b1e5ac SHA512 28d5cf042899319f50ff0d3b140d75fb281b7e0635118a63df243151c4f442dbabf7dbe15b26b44167d925ed00819b01eeeef110107e4058d8a534f84913b232
diff --git a/dev-ruby/em-websocket/em-websocket-0.5.1.ebuild b/dev-ruby/em-websocket/em-websocket-0.5.1.ebuild
deleted file mode 100644
index 9ac1f08bd34b..000000000000
--- a/dev-ruby/em-websocket/em-websocket-0.5.1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="EventMachine based WebSocket server"
-HOMEPAGE="https://rubygems.org/gems/em-websocket"
-SRC_URI="https://github.com/igrigorik/em-websocket/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/eventmachine-0.12.9
- =dev-ruby/http_parser_rb-0.6*
-"
-
-all_ruby_prepare() {
- # Avoid dependency on git
- sed -i -e '/ls-files/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # Only run unit tests since we require unpackaged code for the
- # integration tests.
- sed -i -e "/^require 'em-\(spec\|http\|websocket-client\)/ s:^:#:" \
- -e "/^require 'integration/ s:^:#:" spec/helper.rb || die
- rm -fr spec/integration || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}/
- doins -r examples || die "Failed to install examples"
-}
diff --git a/dev-ruby/em-websocket/em-websocket-0.5.3-r1.ebuild b/dev-ruby/em-websocket/em-websocket-0.5.3-r1.ebuild
new file mode 100644
index 000000000000..43c8a335c529
--- /dev/null
+++ b/dev-ruby/em-websocket/em-websocket-0.5.3-r1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_DOCDIR="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="EventMachine based WebSocket server"
+HOMEPAGE="https://rubygems.org/gems/em-websocket"
+SRC_URI="https://github.com/igrigorik/em-websocket/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/eventmachine-0.12.9
+ dev-ruby/http_parser_rb:0
+"
+
+all_ruby_prepare() {
+ # Avoid dependency on git
+ sed -i -e '/ls-files/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Only run unit tests since we require unpackaged code for the
+ # integration tests.
+ sed -i -e "/^require 'em-\(spec\|http\|websocket-client\)/ s:^:#:" \
+ -e "/^require 'integration/ s:^:#:" spec/helper.rb || die
+ rm -fr spec/integration || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r examples
+}
diff --git a/dev-ruby/em-websocket/metadata.xml b/dev-ruby/em-websocket/metadata.xml
index d9e1c6808b55..b534f7a3d718 100644
--- a/dev-ruby/em-websocket/metadata.xml
+++ b/dev-ruby/em-websocket/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>bman@gentoo.org</email>
- <name>Aaron Bauman</name>
- </maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
diff --git a/dev-ruby/equalizer/equalizer-0.0.11-r2.ebuild b/dev-ruby/equalizer/equalizer-0.0.11-r2.ebuild
new file mode 100644
index 000000000000..65106cfb6363
--- /dev/null
+++ b/dev-ruby/equalizer/equalizer-0.0.11-r2.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CONTRIBUTING.md README.md"
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Module to define equality, equivalence and inspection methods"
+HOMEPAGE="https://github.com/dkubb/equalizer"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e "/devtools/d" spec/spec_helper.rb || die
+
+ # Avoid a failing spec caused by memoizable 0.4.2, and we ignore it
+ # there as well.
+ rm spec/unit/equalizer/included_spec.rb || die
+}
diff --git a/dev-ruby/equalizer/equalizer-0.0.11.ebuild b/dev-ruby/equalizer/equalizer-0.0.11.ebuild
deleted file mode 100644
index a1efa14685f4..000000000000
--- a/dev-ruby/equalizer/equalizer-0.0.11.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CONTRIBUTING.md README.md"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Module to define equality, equivalence and inspection methods"
-HOMEPAGE="https://github.com/dkubb/equalizer"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e "/devtools/d" spec/spec_helper.rb || die
-
- # Avoid a failing spec caused by memoizable 0.4.2, and we ignore it
- # there as well.
- rm spec/unit/equalizer/included_spec.rb || die
-}
diff --git a/dev-ruby/equalizer/metadata.xml b/dev-ruby/equalizer/metadata.xml
index 9b59f79f98a5..75e78c0fcab8 100644
--- a/dev-ruby/equalizer/metadata.xml
+++ b/dev-ruby/equalizer/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/equatable/Manifest b/dev-ruby/equatable/Manifest
index 0d1d599947ac..47d1da90fba7 100644
--- a/dev-ruby/equatable/Manifest
+++ b/dev-ruby/equatable/Manifest
@@ -1,3 +1 @@
-DIST equatable-0.5.0.gem 10240 BLAKE2B cbc8b0250cba6a89be0205d585a25a0f9c050cee7e1803a8725259a18b4a9b1ed62771ff9407a7b702c293c55de7c8c3000d5c29f445f230c8acbc0a0f7be384 SHA512 968c5497d3d18ec899b34311965421bd3c53a4d55f56ee7594bab1db3ce320e245890b007b1412ea434fc15ad7be2ec6c345068c4aa3cf74e07c146f76039478
-DIST equatable-0.6.0.gem 10752 BLAKE2B 834c39fcd9a3156261ce16f6a24fa952175509cf75d28cb03b7acdab58948388b5ddad034841c28b2162734d74a54592a35b971f4c05d9c884808530157ba1f5 SHA512 43aa5021a9f3bf0a730e4e5aa45dd0dd3c868d713268617f36c4ed17b66775d7f27bd8bdffe4785a9d44da94e7f49feefa991f50f38c1a34868705aa4a92d4e9
-DIST equatable-0.6.1.gem 10752 BLAKE2B f544d330fd72c12c81757ca1220f209126e9200b0309d7720005c720ad7f89288cb40d3b7bca004f624f162bfebedef8341997e94cdf5f51e6fe86fa2ab0b0e1 SHA512 442a6c9afd31ec2c41f3802703515827cb8d100bea3932c1fadeb036bb96a045883050712f480ebe4f7ea9bda5dab335b0f0d9dcc90a42bf45ce6bcc504fe0d4
+DIST equatable-0.7.0.tar.gz 10403 BLAKE2B 297543648fb78a9ce7603ebafedb45f69769317d3544951f6ea775087c4db2efe8c4cf30964899b20858169d60a3fb1f0c448b082f3b4596852420fb323626bd SHA512 5b6928cdabeddc23473c2be50122dba1a2e225c78fcae4976b89e145def1056a5b108939ee6156019568a3204f771032f1e2b5d0b440db5d7e8722f152455064
diff --git a/dev-ruby/equatable/equatable-0.5.0.ebuild b/dev-ruby/equatable/equatable-0.5.0.ebuild
deleted file mode 100644
index 7aacf0cff449..000000000000
--- a/dev-ruby/equatable/equatable-0.5.0.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Allows ruby objects to implement equality comparison and inspection methods"
-HOMEPAGE="https://github.com/piotrmurach/equatable"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/equatable/equatable-0.6.0.ebuild b/dev-ruby/equatable/equatable-0.6.0.ebuild
deleted file mode 100644
index b5520ce3dab7..000000000000
--- a/dev-ruby/equatable/equatable-0.6.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Allows ruby objects to implement equality comparison and inspection methods"
-HOMEPAGE="https://github.com/piotrmurach/equatable"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- echo "-rspec_helper" > .rspec || die
-}
diff --git a/dev-ruby/equatable/equatable-0.6.1.ebuild b/dev-ruby/equatable/equatable-0.6.1.ebuild
deleted file mode 100644
index b5520ce3dab7..000000000000
--- a/dev-ruby/equatable/equatable-0.6.1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Allows ruby objects to implement equality comparison and inspection methods"
-HOMEPAGE="https://github.com/piotrmurach/equatable"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- echo "-rspec_helper" > .rspec || die
-}
diff --git a/dev-ruby/equatable/equatable-0.7.0-r1.ebuild b/dev-ruby/equatable/equatable-0.7.0-r1.ebuild
new file mode 100644
index 000000000000..469beec18f89
--- /dev/null
+++ b/dev-ruby/equatable/equatable-0.7.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="equatable.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Allows ruby objects to implement equality comparison and inspection methods"
+HOMEPAGE="https://github.com/piotrmurach/equatable"
+SRC_URI="https://github.com/piotrmurach/equatable/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/equatable/metadata.xml b/dev-ruby/equatable/metadata.xml
index d24f3b19f941..54e34ae1c1cf 100644
--- a/dev-ruby/equatable/metadata.xml
+++ b/dev-ruby/equatable/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/erubi/Manifest b/dev-ruby/erubi/Manifest
index 9a83a9aaa02c..815be4bf0823 100644
--- a/dev-ruby/erubi/Manifest
+++ b/dev-ruby/erubi/Manifest
@@ -1,3 +1 @@
-DIST erubi-1.7.0.gem 12800 BLAKE2B af4584e640f0ae177c6e4d98850d94b148bb1b2df406c16fe582bdecf54895e47942ab94df472f628d185c71f89895250a5a9765fb41ce9365eb2ffa273f1d78 SHA512 1494c28aebab08a82dffac7b340ff6e16edc8a3731f69ec568bec6cb0bda4a334f94033f43416812cd00b0c99dc98458867d963bef34796ebbdb11ea65dd8c1b
-DIST erubi-1.7.1.gem 12800 BLAKE2B 3a676ca860365eb758dbad548d1570b7830a531f0e6b0d1c6b99bc1b92e401d30d8318f6155d6143cb16ce46a4d42d1c2f1dfa1359f3e046fa70a9fa1d82983f SHA512 c7b611f1690886c0eadf68d418674760912d13ad1febbc4161c6b72d1f51373084d0fdb03f98e05c87bf5e7e3cbb57df35471b84b2d73359e30395d26bb90486
-DIST erubi-1.8.0.gem 13824 BLAKE2B 026a70c05f7000baeb14c79f8505f0a0ad54df4384749ac0ced895ec5e2d5fcd3b2cc4f0891f11f983de6b121661c391ed0c839b29dfacacbe6f55a9607fcf64 SHA512 ca227cc10a3a77750a4e5184395709a032da6f15cb0fb5f9b8cc162e382b2ce49cd94023941439b05ee5b0c5d1b39114d68a0e7549910bceb1fdead6b9fd62e4
+DIST erubi-1.12.0.tar.gz 12384 BLAKE2B 0299cec2a8a79492fed06105f7570aabfe7d16fd1755185fbefdd43f125c383a98a1942c9b09df3dcd0b4b20bd15c2a7e6666bf3b2ef92c579a7bb7c39b5eae5 SHA512 6243b6e1c4360ceb1eb4bc3ce4492cebcf071e526be43f7393a789e4b0eaf43b6ed770b5baec7cbab4b6a563d4dc821e56a8e4222ad7a13a852d74dcb7c5552a
diff --git a/dev-ruby/erubi/erubi-1.12.0.ebuild b/dev-ruby/erubi/erubi-1.12.0.ebuild
new file mode 100644
index 000000000000..667ff949864a
--- /dev/null
+++ b/dev-ruby/erubi/erubi-1.12.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
+
+RUBY_FAKEGEM_TASK_TEST="spec"
+
+RUBY_FAKEGEM_GEMSPEC="erubi.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="a ERB template engine for ruby; a simplified fork of Erubis"
+HOMEPAGE="https://github.com/jeremyevans/erubi"
+SRC_URI="https://github.com/jeremyevans/erubi/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv sparc x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/minitest dev-ruby/minitest-global_expectations )"
diff --git a/dev-ruby/erubi/erubi-1.7.0.ebuild b/dev-ruby/erubi/erubi-1.7.0.ebuild
deleted file mode 100644
index eb7228252488..000000000000
--- a/dev-ruby/erubi/erubi-1.7.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_TASK_TEST="spec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="a ERB template engine for ruby; a simplified fork of Erubis"
-HOMEPAGE="https://github.com/jeremyevans/erubi"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
diff --git a/dev-ruby/erubi/erubi-1.7.1.ebuild b/dev-ruby/erubi/erubi-1.7.1.ebuild
deleted file mode 100644
index 53423db5255f..000000000000
--- a/dev-ruby/erubi/erubi-1.7.1.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_TASK_TEST="spec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="a ERB template engine for ruby; a simplified fork of Erubis"
-HOMEPAGE="https://github.com/jeremyevans/erubi"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
diff --git a/dev-ruby/erubi/erubi-1.8.0.ebuild b/dev-ruby/erubi/erubi-1.8.0.ebuild
deleted file mode 100644
index 5eea2c9825e6..000000000000
--- a/dev-ruby/erubi/erubi-1.8.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_TASK_TEST="spec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="a ERB template engine for ruby; a simplified fork of Erubis"
-HOMEPAGE="https://github.com/jeremyevans/erubi"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
diff --git a/dev-ruby/erubi/metadata.xml b/dev-ruby/erubi/metadata.xml
index 23b9745782d1..cc9fb647d722 100644
--- a/dev-ruby/erubi/metadata.xml
+++ b/dev-ruby/erubi/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/erubis/erubis-2.7.0-r2.ebuild b/dev-ruby/erubis/erubis-2.7.0-r2.ebuild
deleted file mode 100644
index d137c82f6553..000000000000
--- a/dev-ruby/erubis/erubis-2.7.0-r2.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Erubis is an implementation of eRuby"
-HOMEPAGE="http://www.kuwata-lab.com/erubis/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm ~arm64 ~hppa ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-# http://rubyforge.org/tracker/index.php?func=detail&aid=29484&group_id=1320&atid=5201
-# Tests are not compatible with Psych as YAML module.
-RESTRICT="test"
-
-ruby_add_rdepend ">=dev-ruby/abstract-1.0.0"
-
-all_ruby_prepare() {
- # These tests now fail due to other ordering and fact that sym
- # are now returned.
- rm test/test-users-guide.rb || die
- sed -i -e '/test-users-guide/ s:^:#:' test/test.rb || die
-}
-
-each_ruby_test() {
- PATH="${S}/bin:${PATH}" RUBYLIB="${S}/lib" ${RUBY} -I. test/test.rb || die
-}
diff --git a/dev-ruby/erubis/erubis-2.7.0-r4.ebuild b/dev-ruby/erubis/erubis-2.7.0-r4.ebuild
new file mode 100644
index 000000000000..7824b9e6cd1a
--- /dev/null
+++ b/dev-ruby/erubis/erubis-2.7.0-r4.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.txt"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Erubis is an implementation of eRuby"
+HOMEPAGE="http://www.kuwata-lab.com/erubis/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+# http://rubyforge.org/tracker/index.php?func=detail&aid=29484&group_id=1320&atid=5201
+# Tests are not compatible with Psych as YAML module.
+RESTRICT="test"
+
+ruby_add_rdepend ">=dev-ruby/abstract-1.0.0"
+
+all_ruby_prepare() {
+ # These tests now fail due to other ordering and fact that sym
+ # are now returned.
+ rm test/test-users-guide.rb || die
+ sed -i -e '/test-users-guide/ s:^:#:' test/test.rb || die
+}
+
+each_ruby_test() {
+ PATH="${S}/bin:${PATH}" RUBYLIB="${S}/lib" ${RUBY} -I. test/test.rb || die
+}
diff --git a/dev-ruby/erubis/metadata.xml b/dev-ruby/erubis/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/erubis/metadata.xml
+++ b/dev-ruby/erubis/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/escape_utils/Manifest b/dev-ruby/escape_utils/Manifest
deleted file mode 100644
index df4e3a2f586e..000000000000
--- a/dev-ruby/escape_utils/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST escape_utils-1.2.1.gem 27136 BLAKE2B 7b5be4ee381c4e42efa007bb50df31045f91a8fabf299ca726ad994dbbe469482d846c718b90657139d9b65365e9775b127e9e428200037240a158da1122ec6f SHA512 e410777cfdd5004168db6134f30a91e29b71136d3e7ec1a312f7307e0593c310230887a63ed25aa4f899b71b5cb78b15f833e4db6f1ca0cc99091ab0c0e6ba75
diff --git a/dev-ruby/escape_utils/escape_utils-1.2.1.ebuild b/dev-ruby/escape_utils/escape_utils-1.2.1.ebuild
deleted file mode 100644
index cb952e8d73a0..000000000000
--- a/dev-ruby/escape_utils/escape_utils-1.2.1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-# ruby25 -> code not compatible
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_TEST=""
-RUBY_FAKEGEM_RECIPE_DOC=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Faster string escaping routines for your ruby apps"
-HOMEPAGE="https://github.com/brianmario/escape_utils"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" test/helper.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/escape_utils extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/escape_utils
- cp ext/escape_utils/escape_utils$(get_modname) lib/escape_utils || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e "Dir['test/**/*_test.rb'].each {|f| require f}" || die
-}
diff --git a/dev-ruby/escape_utils/metadata.xml b/dev-ruby/escape_utils/metadata.xml
deleted file mode 100644
index 414f842370a0..000000000000
--- a/dev-ruby/escape_utils/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">brianmario/escape_utils</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ethon/Manifest b/dev-ruby/ethon/Manifest
index 9b256819f6e4..657eeb8f6af2 100644
--- a/dev-ruby/ethon/Manifest
+++ b/dev-ruby/ethon/Manifest
@@ -1,2 +1,2 @@
-DIST ethon-0.11.0.gem 56832 BLAKE2B 64f184e3dbedf6fc05cb97d7e642366b45b9493ccd79ba1dd9f4ddafea695bc8d5e72bc5a305e192ad6f78d55704319316a13ced61c14aef7d3e41936ec69a78 SHA512 271ff2ce5578352722bab318ad40f06d9c76fdbdead573a015fed0a38f3fd6341bcf70acedaa9470fe97f47069977b09ac9f71d8dacb21b67aad917c2a078c72
-DIST ethon-0.12.0.gem 56832 BLAKE2B 04765dcb9599e7435c3f71b1e8c35b815123ec460dbb761360146b24acaff1aeb52a75efe5dbbacdbd11e7247743988629ce965604cdfd15cdd75ef03301d9da SHA512 5fea666efdd5e2d568d0e074f205525656e202ecea3bb5ff8a8ab838a596cab349b869baffb7926227d6cfdae5b9c1cb86bb201b4c9585056c6671ab4feee596
+DIST ethon-0.15.0.gem 59904 BLAKE2B 9a6bcec605d6133054c3ee9b4546aab4d9282266876cd9c6e9c923d3405a5541871ebe83385185dcc42f0cea37735cddd9977e2da72badbcaaac55b8c634b94c SHA512 6e04c70e105fb95f1e0ff62e1d6ae009bb7b39a60d85ec9e43b10c016f33f679620ded253089a738e0cef5010e9023d1093dd92b1caacdde8f6a745cbae2b5b5
+DIST ethon-0.16.0.gem 60416 BLAKE2B 6970554d8cbde18c0e08c95826f6444614d8378a3889e9347cc66170f80b947951312e3e65712106864351285f331ea0cb67c2e24e22ecc335fc0fbd571eb521 SHA512 3b31affcee0d5a5be05b5497d4a8d13515f8393f54579a3a9c8de49f78d3f065bb92659434b023f0a8bf8e0cccfbc94b617695b93c4d3f744cccd1eff2e68905
diff --git a/dev-ruby/ethon/ethon-0.11.0.ebuild b/dev-ruby/ethon/ethon-0.11.0.ebuild
deleted file mode 100644
index 47987c784142..000000000000
--- a/dev-ruby/ethon/ethon-0.11.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Very lightweight libcurl wrapper"
-HOMEPAGE="https://github.com/typhoeus/ethon"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-RDEPEND+=" net-misc/curl"
-
-ruby_add_rdepend ">=dev-ruby/ffi-1.3.0"
-
-ruby_add_bdepend "test? ( dev-ruby/sinatra dev-ruby/mime-types )"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -e '/bundler/I s:^:#:' \
- -e '1igem "sinatra"' -i Rakefile spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/ethon/ethon-0.12.0.ebuild b/dev-ruby/ethon/ethon-0.12.0.ebuild
deleted file mode 100644
index 15724884f34a..000000000000
--- a/dev-ruby/ethon/ethon-0.12.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Very lightweight libcurl wrapper"
-HOMEPAGE="https://github.com/typhoeus/ethon"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-RDEPEND+=" net-misc/curl"
-
-ruby_add_rdepend ">=dev-ruby/ffi-1.3.0"
-
-ruby_add_bdepend "test? ( dev-ruby/sinatra dev-ruby/mime-types )"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -e '/bundler/I s:^:#:' \
- -e '1igem "sinatra"' -i Rakefile spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/ethon/ethon-0.15.0.ebuild b/dev-ruby/ethon/ethon-0.15.0.ebuild
new file mode 100644
index 000000000000..dceca5a0aed6
--- /dev/null
+++ b/dev-ruby/ethon/ethon-0.15.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Very lightweight libcurl wrapper"
+HOMEPAGE="https://github.com/typhoeus/ethon"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+RDEPEND+=" net-misc/curl"
+
+ruby_add_rdepend ">=dev-ruby/ffi-1.15.0"
+
+ruby_add_bdepend "test? ( dev-ruby/sinatra dev-ruby/mime-types )"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -e '/bundler/I s:^:#:' \
+ -e '1igem "sinatra"' -i Rakefile spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/ethon/ethon-0.16.0.ebuild b/dev-ruby/ethon/ethon-0.16.0.ebuild
new file mode 100644
index 000000000000..06a88849bf21
--- /dev/null
+++ b/dev-ruby/ethon/ethon-0.16.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Very lightweight libcurl wrapper"
+HOMEPAGE="https://github.com/typhoeus/ethon"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+RDEPEND+=" net-misc/curl"
+
+ruby_add_rdepend ">=dev-ruby/ffi-1.15.0"
+
+ruby_add_bdepend "test? ( dev-ruby/sinatra dev-ruby/mime-types )"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -e '/bundler/I s:^:#:' \
+ -e '1igem "sinatra"' -i Rakefile spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/ethon/metadata.xml b/dev-ruby/ethon/metadata.xml
index 20f2a1f8eb97..8775e801c288 100644
--- a/dev-ruby/ethon/metadata.xml
+++ b/dev-ruby/ethon/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/evented-spec/evented-spec-0.9.0-r1.ebuild b/dev-ruby/evented-spec/evented-spec-0.9.0-r1.ebuild
new file mode 100644
index 000000000000..7f45e250dd7d
--- /dev/null
+++ b/dev-ruby/evented-spec/evented-spec-0.9.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.textile"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A set of helpers to help you test your asynchronous code"
+HOMEPAGE="https://github.com/ruby-amqp/evented-spec"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+# Tests require a running AMQP server and AMQP installed. Since
+# currently AMQP is the only package using evented-spec we just skip the
+# tests here altogether to avoid circular dependencies.
+RESTRICT="test"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/ s:^:#:' -e '/effin_utf8/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/evented-spec/evented-spec-0.9.0.ebuild b/dev-ruby/evented-spec/evented-spec-0.9.0.ebuild
deleted file mode 100644
index 958a1b4d0dd0..000000000000
--- a/dev-ruby/evented-spec/evented-spec-0.9.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.textile"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit versionator ruby-fakegem
-
-DESCRIPTION="A set of helpers to help you test your asynchronous code"
-HOMEPAGE="https://github.com/ruby-amqp/evented-spec"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-
-# Tests require a running AMQP server and AMQP installed. Since
-# currently AMQP is the only package using evented-spec we just skip the
-# tests here altogether to avoid circular dependencies.
-RESTRICT="test"
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/ s:^:#:' -e '/effin_utf8/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/evented-spec/metadata.xml b/dev-ruby/evented-spec/metadata.xml
index 169da33a8735..a2772e125c89 100644
--- a/dev-ruby/evented-spec/metadata.xml
+++ b/dev-ruby/evented-spec/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/eventmachine/Manifest b/dev-ruby/eventmachine/Manifest
index bcec3e811ea8..81c0d1ad05ae 100644
--- a/dev-ruby/eventmachine/Manifest
+++ b/dev-ruby/eventmachine/Manifest
@@ -1 +1,2 @@
+DIST eventmachine-1.2.7-openssl-patches.tar.bz2 14837 BLAKE2B 5f3280c053bd67c97db53814db3bbfd9bb3047d0fdae3972494a88bc9062e0f20b5684da8ba4264299a4fd5b0c159ad0d006fe78f6f1e8c0e9cdb531d98e3017 SHA512 9294ae918a51c2e7db098add3e793a2a57e40b223b7ee7113664245b5584af7b7bb180cf1dd83d0c30a316b6598a0a4507b953603c95482c42738099d33419d0
DIST eventmachine-1.2.7.tar.gz 246402 BLAKE2B 3eee1e5fbb367c03e3d801cb705a0f95b7bbb461885f04820f57421019a3d61eecabe71309981eec35168395eb6d98a8c675bd0fb225497de511f2ce09a5df92 SHA512 768ec084903dce4c737cf564fce7886a3e7e5b7d4a89c2baea3e998130c53dc00488eaa2d8e9b0133d9e4d8fffbde80c3025403881486a7968c2d84425cc1f50
diff --git a/dev-ruby/eventmachine/eventmachine-1.2.7-r4.ebuild b/dev-ruby/eventmachine/eventmachine-1.2.7-r4.ebuild
new file mode 100644
index 000000000000..3ecd971263cb
--- /dev/null
+++ b/dev-ruby/eventmachine/eventmachine-1.2.7-r4.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_DOCDIR="rdoc"
+RUBY_FAKEGEM_EXTRADOC="docs/*.md CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="eventmachine.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb ext/fastfilereader/extconf.rb)
+RUBY_FAKEGEM_EXTRAINSTALL=(examples)
+
+inherit ruby-fakegem
+
+DESCRIPTION="EventMachine is a fast, simple event-processing library for Ruby programs"
+HOMEPAGE="https://github.com/eventmachine/eventmachine"
+SRC_URI="https://github.com/eventmachine/eventmachine/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+# Collection of upstream patches to fix compatibility with newer OpenSSL
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-openssl-patches.tar.bz2"
+
+LICENSE="|| ( GPL-2 Ruby-BSD )"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="${DEPEND}
+ dev-libs/openssl:0="
+RDEPEND="${RDEPEND}
+ dev-libs/openssl:0="
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
+
+PATCHES=(
+ # Collection of upstream patches (rebased by Fedora, thanks!) to
+ # fix (mostly test) compatibility with >= OpenSSL 1.1.1.
+ "${WORKDIR}"/all/patches/
+ # Backport upstream changes for ruby 3
+ "${FILESDIR}"/${P}-test-processes.patch
+ "${FILESDIR}"/${P}-ruby3-process-status.patch
+)
+
+all_ruby_prepare() {
+ # Remove package tasks to avoid dependency on rake-compiler.
+ rm rakelib/package.rake || die
+
+ sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+ # Remove the resolver tests since they require network access and
+ # the localhost test fails with an IPv6 localhost.
+ rm tests/test_resolver.rb || die
+
+ # Needs a tty
+ rm tests/test_kb.rb || die
+
+ # Avoid tests that require network access
+ sed -e '/test_bind_connect/,/^ end/ s:^:#:' \
+ -e '/test_invalid_address_bind_connect_src/,/^ end/ s:^:#:' \
+ -e '/test_invalid_address_bind_connect_dst/,/^ end/ s:^:#:' \
+ -i tests/test_basic.rb || die
+ sed -e '/test_ipv6_udp_local_server/,/^ end/ s:^:#:' \
+ -e '/test_ipv6_tcp_local_server/,/^ end/ s:^:#:' \
+ -i tests/test_ipv6.rb || die
+ sed -e '/test_for_real/,/^ end/ s:^:#:' -i tests/test_pending_connect_timeout.rb || die
+ sed -e '/test_connect_timeout/,/^ end/ s:^:#:' -i tests/test_unbind_reason.rb || die
+ sed -e '/test_cookie/,/^ end/ s:^:#:' \
+ -e '/test_http_client/,/^ end/ s:^:#:' \
+ -e '/test_version_1_0/,/^ end/ s:^:#:' \
+ -i tests/test_httpclient.rb || die
+ sed -e '/test_get/,/^ end/ s:^:#:' \
+ -e '/test_https_get/,/^ end/ s:^:#:' \
+ -i tests/test_httpclient2.rb || die
+
+ # Avoid test that deliberately triggers a C++ exception which causes
+ # a SEGFAULT. This does not appear to happen upstream (on travis).
+ rm tests/test_exc.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib -S testrb-2 tests/test_*.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+}
diff --git a/dev-ruby/eventmachine/eventmachine-1.2.7.ebuild b/dev-ruby/eventmachine/eventmachine-1.2.7.ebuild
deleted file mode 100644
index ee3b825cbf56..000000000000
--- a/dev-ruby/eventmachine/eventmachine-1.2.7.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="rdoc"
-RUBY_FAKEGEM_EXTRADOC="docs/*.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="EventMachine is a fast, simple event-processing library for Ruby programs"
-HOMEPAGE="http://rubyeventmachine.com"
-SRC_URI="https://github.com/eventmachine/eventmachine/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="|| ( GPL-2 Ruby )"
-SLOT="0"
-KEYWORDS="amd64 ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND="${DEPEND}
- dev-libs/openssl:0"
-RDEPEND="${RDEPEND}
- dev-libs/openssl:0"
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
-
-all_ruby_prepare() {
- # Remove package tasks to avoid dependency on rake-compiler.
- rm rakelib/package.rake || die
-
- # Remove the resolver tests since they require network access and
- # the localhost test fails with an IPv6 localhost.
- rm tests/test_resolver.rb || die
-
- # Needs a tty
- rm tests/test_kb.rb || die
-
- # Avoid tests that require network access
- sed -i -e '/test_bind_connect/,/^ end/ s:^:#:' \
- tests/test_basic.rb || die
- sed -i -e '/test_\(cookie\|http_client\|version_1_0\)/,/^ end/ s:^:#:' \
- tests/test_httpclient.rb || die
- sed -i -e '/test_\(get\|https_get\)/,/^ end/ s:^:#:' \
- tests/test_httpclient2.rb || die
- sed -i -e '/test_connect_timeout/,/^ end/ s:^:#:' \
- tests/test_unbind_reason.rb || die
- sed -i -e '/test_for_real/,/^ end/ s:^:#:' \
- tests/test_pending_connect_timeout.rb || die
- rm -f tests/test_{get_sock_opt,set_sock_opt,idle_connection}.rb || die
-
- # Avoid tests for insecure SSL versions that may not be available
- sed -i -e '/test_any_to_v3/,/^ end/ s:^:#:' \
- -e '/test_v3_/,/^ end/ s:^:#:' \
- -e '/test_tlsv1_required_with_external_client/aomit "sslv3"' \
- tests/test_ssl_protocols.rb || die
-
- # Avoid test that deliberately triggers a C++ exception which causes
- # a SEGFAULT. This does not appear to happen upstream (on travis).
- rm -f tests/test_exc.rb || die
-}
-
-each_ruby_configure() {
- for extdir in ext ext/fastfilereader; do
- pushd $extdir
- ${RUBY} extconf.rb || die "extconf.rb failed for ${extdir}"
- popd
- done
-}
-
-each_ruby_compile() {
- for extdir in ext ext/fastfilereader; do
- pushd $extdir
- # both extensions use C++, so use the CXXFLAGS not the CFLAGS
- emake V=1 CFLAGS="${CXXFLAGS} -fPIC" archflag="${LDFLAGS}" || die "emake failed for ${extdir}"
- popd
- cp $extdir/*.so lib/ || die "Unable to copy extensions for ${extdir}"
- done
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib -S testrb-2 tests/test_*.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}/
- doins -r examples || die "Failed to install examples"
-}
diff --git a/dev-ruby/eventmachine/files/eventmachine-1.2.7-ruby3-process-status.patch b/dev-ruby/eventmachine/files/eventmachine-1.2.7-ruby3-process-status.patch
new file mode 100644
index 000000000000..f836d3ff076e
--- /dev/null
+++ b/dev-ruby/eventmachine/files/eventmachine-1.2.7-ruby3-process-status.patch
@@ -0,0 +1,94 @@
+From daeb121fb5600cc0f4fc604fbf7d742578f26483 Mon Sep 17 00:00:00 2001
+From: MSP-Greg <Greg.mpls@gmail.com>
+Date: Sat, 12 Jun 2021 22:37:37 -0500
+Subject: [PATCH] Fixes for Process::Status changes in Ruby 3
+
+---
+ ext/extconf.rb | 3 +++
+ ext/rubymain.cpp | 36 ++++++++++++++++++++++++++++++------
+ 2 files changed, 33 insertions(+), 6 deletions(-)
+
+diff --git a/ext/extconf.rb b/ext/extconf.rb
+index 0fb654104..ce83c0028 100644
+--- a/ext/extconf.rb
++++ b/ext/extconf.rb
+@@ -138,6 +138,9 @@ def find_openssl_library
+ add_define "HAVE_KQUEUE" if have_header("sys/event.h") && have_header("sys/queue.h")
+ end
+
++# Add for changes to Process::Status in Ruby 3
++add_define("IS_RUBY_3_OR_LATER") if RUBY_VERSION > "3.0"
++
+ # Adjust number of file descriptors (FD) on Windows
+
+ if RbConfig::CONFIG["host_os"] =~ /mingw/
+diff --git a/ext/rubymain.cpp b/ext/rubymain.cpp
+index 5da5c8b25..36018c63d 100644
+--- a/ext/rubymain.cpp
++++ b/ext/rubymain.cpp
+@@ -85,7 +85,24 @@ static VALUE Intern_proxy_target_unbound;
+ static VALUE Intern_proxy_completed;
+ static VALUE Intern_connection_completed;
+
+-static VALUE rb_cProcStatus;
++static VALUE rb_cProcessStatus;
++
++#ifdef IS_RUBY_3_OR_LATER
++struct rb_process_status {
++ rb_pid_t pid;
++ int status;
++ int error;
++};
++
++static const rb_data_type_t rb_process_status_type = {
++ .wrap_struct_name = "Process::Status",
++ .function = {
++ .dfree = RUBY_DEFAULT_FREE,
++ },
++ .data = NULL,
++ .flags = RUBY_TYPED_FREE_IMMEDIATELY,
++};
++#endif
+
+ struct em_event {
+ uintptr_t signature;
+@@ -553,11 +570,18 @@ static VALUE t_get_subprocess_status (VALUE self UNUSED, VALUE signature)
+
+ if (evma_get_subprocess_status (NUM2BSIG (signature), &status)) {
+ if (evma_get_subprocess_pid (NUM2BSIG (signature), &pid)) {
+- proc_status = rb_obj_alloc(rb_cProcStatus);
+
++#ifdef IS_RUBY_3_OR_LATER
++ struct rb_process_status *data = NULL;
++ proc_status = TypedData_Make_Struct(rb_cProcessStatus, struct rb_process_status, &rb_process_status_type, data);
++ data->pid = pid;
++ data->status = status;
++#else
++ proc_status = rb_obj_alloc(rb_cProcessStatus);
+ /* MRI Ruby uses hidden instance vars */
+- rb_iv_set(proc_status, "status", INT2FIX(status));
+- rb_iv_set(proc_status, "pid", INT2FIX(pid));
++ rb_ivar_set(proc_status, rb_intern_const("status"), INT2FIX(status));
++ rb_ivar_set(proc_status, rb_intern_const("pid"), INT2FIX(pid));
++#endif
+
+ #ifdef RUBINIUS
+ /* Rubinius uses standard instance vars */
+@@ -572,7 +596,7 @@ static VALUE t_get_subprocess_status (VALUE self UNUSED, VALUE signature)
+ #endif
+ }
+ }
+-
++ rb_obj_freeze(proc_status);
+ return proc_status;
+ }
+
+@@ -1431,7 +1455,7 @@ extern "C" void Init_rubyeventmachine()
+ {
+ // Lookup Process::Status for get_subprocess_status
+ VALUE rb_mProcess = rb_const_get(rb_cObject, rb_intern("Process"));
+- rb_cProcStatus = rb_const_get(rb_mProcess, rb_intern("Status"));
++ rb_cProcessStatus = rb_const_get(rb_mProcess, rb_intern("Status"));
+
+ // Tuck away some symbol values so we don't have to look 'em up every time we need 'em.
+ Intern_at_signature = rb_intern ("@signature");
diff --git a/dev-ruby/eventmachine/files/eventmachine-1.2.7-test-processes.patch b/dev-ruby/eventmachine/files/eventmachine-1.2.7-test-processes.patch
new file mode 100644
index 000000000000..51e2a48c6f55
--- /dev/null
+++ b/dev-ruby/eventmachine/files/eventmachine-1.2.7-test-processes.patch
@@ -0,0 +1,73 @@
+From ec27b6250c2a00b4f2720abd86669e194ca016ac Mon Sep 17 00:00:00 2001
+From: MSP-Greg <Greg.mpls@gmail.com>
+Date: Fri, 21 May 2021 11:24:15 -0500
+Subject: [PATCH] Update test_processes.rb
+
+---
+ tests/test_processes.rb | 35 +++++++++++++++++++++++++++--------
+ 1 file changed, 27 insertions(+), 8 deletions(-)
+
+diff --git a/tests/test_processes.rb b/tests/test_processes.rb
+index eb21a6cec..9546022e7 100644
+--- a/tests/test_processes.rb
++++ b/tests/test_processes.rb
+@@ -32,23 +32,42 @@ def setup
+ end
+
+ def test_em_system
++ out, status = nil, nil
++
+ EM.run{
+- EM.system('ls'){ |out,status| $out, $status = out, status; EM.stop }
++ EM.system('ls'){ |_out,_status| out, status = _out, _status; EM.stop }
+ }
+
+- assert( $out.length > 0 )
+- assert_equal(0, $status.exitstatus)
+- assert_kind_of(Process::Status, $status)
++ assert(out.length > 0 )
++ assert_kind_of(Process::Status, status)
++ assert_equal(0, status.exitstatus)
++ end
++
++ def test_em_system_bad_exitstatus
++ status = nil
++ sys_pid = nil
++
++ EM.run{
++ sys_pid = EM.system('exit 1'){ |_out,_status| status = _status; EM.stop }
++ }
++
++ assert_kind_of(Process::Status, status)
++ refute_equal(0, status.exitstatus)
++ assert_equal sys_pid, status.pid
+ end
+
+ def test_em_system_pid
+- $pids = []
++ status = nil
++ sys_pid = nil
+
+ EM.run{
+- $pids << EM.system('echo hi', proc{ |out,status|$pids << status.pid; EM.stop })
++ sys_pid = EM.system('echo hi', proc{ |_out,_status| status = _status; EM.stop })
+ }
+
+- assert_equal $pids[0], $pids[1]
++ refute_equal(0, sys_pid)
++ assert_kind_of(Process::Status, status)
++ refute_equal(0, status.pid)
++ assert_equal sys_pid, status.pid
+ end
+
+ def test_em_system_with_proc
+@@ -57,8 +76,8 @@ def test_em_system_with_proc
+ }
+
+ assert( $out.length > 0 )
+- assert_equal(0, $status.exitstatus)
+ assert_kind_of(Process::Status, $status)
++ assert_equal(0, $status.exitstatus)
+ end
+
+ def test_em_system_with_two_procs
diff --git a/dev-ruby/eventmachine/metadata.xml b/dev-ruby/eventmachine/metadata.xml
index b61ffaa1744c..21498041991b 100644
--- a/dev-ruby/eventmachine/metadata.xml
+++ b/dev-ruby/eventmachine/metadata.xml
@@ -1,11 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-<longdescription>
-Ruby/EventMachine is a fast, simple event-processing library for Ruby programs. It lets you write network clients and servers without handling sockets- all you do is send and receive data. Single-threaded socket engine- scalable and FAST!
-</longdescription>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">eventmachine/eventmachine</remote-id>
+ <remote-id type="rubygems">eventmachine</remote-id>
+ </upstream>
+ <longdescription>
+ Ruby/EventMachine is a fast, simple event-processing library for
+ Ruby programs. It lets you write network clients and servers without
+ handling sockets- all you do is send and receive
+ data. Single-threaded socket engine- scalable and FAST!
+ </longdescription>
</pkgmetadata>
diff --git a/dev-ruby/excon/Manifest b/dev-ruby/excon/Manifest
new file mode 100644
index 000000000000..291c611eb9df
--- /dev/null
+++ b/dev-ruby/excon/Manifest
@@ -0,0 +1,3 @@
+DIST excon-0.104.0.tar.gz 229173 BLAKE2B b719d9391f8afc3553c45b88436725e2d7ed6495a888af95c7783d4e6bf44eecd861975119180f37bfb4617c7639c52cd0ac52ebbfce4bd6108de69df4d90cce SHA512 e06bccc0ed8fcab25b76c8500d77678c3356ff7488737bc041e9291fb7bbea5e7cb11cab85a4da81bce6c1a4422a7588f5e6e82ac14bb2b0974a7656586e1db4
+DIST excon-0.109.0.tar.gz 235632 BLAKE2B 8404cb5687cd106390dcb5e44513b4accf145d118b38bda79fdfa97ed34a33d84bf5831d3bd6b52dce2ac17267f5e6bd0d060545a98f1741d6f0a394ab0dfb08 SHA512 6374eeeff9b8501a078ea4db7d777e781a3981d1062af013e46976506b84a1afd1e2f52f97e3b7c6d57f8230534598992b8f4e978a3f077e11180cd3586e4a0e
+DIST excon-0.110.0.tar.gz 237307 BLAKE2B ac83220a9ac5d2fb3ab53e9b90068918e8ffa54246d50531a66b061bebbdd8fcc9840c2ade0de35fc995dcf400622cb1b807a8cc5e19b9dd4e481cb674e6a035 SHA512 34b6b193109515c9cb176f41a735e4a214053a2832bac0c425ace06b419daf71f0e7dd375df59a7a67d56ac331f7251fbb8778fd29acd751651411aef2081378
diff --git a/dev-ruby/excon/excon-0.104.0.ebuild b/dev-ruby/excon/excon-0.104.0.ebuild
new file mode 100644
index 000000000000..f9ccf3c220de
--- /dev/null
+++ b/dev-ruby/excon/excon-0.104.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="changelog.txt README.md"
+RUBY_FAKEGEM_GEMSPEC="excon.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="EXtended http(s) CONnections"
+HOMEPAGE="https://github.com/excon/excon"
+SRC_URI="https://github.com/excon/excon/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+ruby_add_bdepend "
+ dev-ruby/rake
+ test? (
+ dev-ruby/activesupport
+ >=dev-ruby/json-1.8.5
+ dev-ruby/open4
+ >=dev-ruby/rack-2.2.7-r1:2.2
+ dev-ruby/rdoc
+ dev-ruby/sinatra
+ dev-ruby/webrick
+ )
+"
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files --/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # test that need network
+ rm -f spec/excon/test/server_spec.rb || die
+
+ # test that wrongly assumes 127.0.0.1 won't run a DNS server
+ rm -f spec/requests/{dns_timeout,resolv_resolver}_spec.rb || die
+
+ # tests that depend on eventmachine which is broken and no longer maintained
+ rm -f tests/{bad,error,pipeline,response,request}_tests.rb \
+ tests/{batch-requests,complete_responses}.rb \
+ tests/middlewares/{decompress,mock}_tests.rb || die
+ rm -f spec/requests/eof_requests_spec.rb spec/excon/error_spec.rb || die
+
+ # Use a rackup version compatible with sinatra
+ sed -i -e '/launch_process/ s/"rackup"/"rackup-2"/' tests/test_helper.rb || die
+ sed -i -e '/open_process/ s/rackup/rackup-2/' lib/excon/test/plugin/server/webrick.rb || die
+}
diff --git a/dev-ruby/excon/excon-0.109.0.ebuild b/dev-ruby/excon/excon-0.109.0.ebuild
new file mode 100644
index 000000000000..55f5024ee4b8
--- /dev/null
+++ b/dev-ruby/excon/excon-0.109.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="changelog.txt README.md"
+RUBY_FAKEGEM_GEMSPEC="excon.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="EXtended http(s) CONnections"
+HOMEPAGE="https://github.com/excon/excon"
+SRC_URI="https://github.com/excon/excon/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+ruby_add_bdepend "
+ dev-ruby/rake
+ test? (
+ dev-ruby/activesupport
+ >=dev-ruby/json-1.8.5
+ dev-ruby/open4
+ >=dev-ruby/rack-2.2.7-r1:2.2
+ dev-ruby/rdoc
+ dev-ruby/sinatra
+ dev-ruby/webrick
+ )
+"
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files --/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # test that need network
+ rm -f spec/excon/test/server_spec.rb || die
+
+ # test that wrongly assumes 127.0.0.1 won't run a DNS server
+ rm -f spec/requests/{dns_timeout,resolv_resolver}_spec.rb || die
+
+ # tests that depend on eventmachine which is broken and no longer maintained
+ rm -f tests/{bad,error,pipeline,response,request}_tests.rb \
+ tests/{batch-requests,complete_responses}.rb \
+ tests/middlewares/{decompress,mock}_tests.rb || die
+ rm -f spec/requests/eof_requests_spec.rb spec/excon/error_spec.rb || die
+
+ # Use a rackup version compatible with sinatra
+ sed -i -e '/launch_process/ s/"rackup"/"rackup-2"/' tests/test_helper.rb || die
+ sed -i -e '/open_process/ s/rackup/rackup-2/' lib/excon/test/plugin/server/webrick.rb || die
+}
diff --git a/dev-ruby/excon/excon-0.110.0.ebuild b/dev-ruby/excon/excon-0.110.0.ebuild
new file mode 100644
index 000000000000..55f5024ee4b8
--- /dev/null
+++ b/dev-ruby/excon/excon-0.110.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="changelog.txt README.md"
+RUBY_FAKEGEM_GEMSPEC="excon.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="EXtended http(s) CONnections"
+HOMEPAGE="https://github.com/excon/excon"
+SRC_URI="https://github.com/excon/excon/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+ruby_add_bdepend "
+ dev-ruby/rake
+ test? (
+ dev-ruby/activesupport
+ >=dev-ruby/json-1.8.5
+ dev-ruby/open4
+ >=dev-ruby/rack-2.2.7-r1:2.2
+ dev-ruby/rdoc
+ dev-ruby/sinatra
+ dev-ruby/webrick
+ )
+"
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files --/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # test that need network
+ rm -f spec/excon/test/server_spec.rb || die
+
+ # test that wrongly assumes 127.0.0.1 won't run a DNS server
+ rm -f spec/requests/{dns_timeout,resolv_resolver}_spec.rb || die
+
+ # tests that depend on eventmachine which is broken and no longer maintained
+ rm -f tests/{bad,error,pipeline,response,request}_tests.rb \
+ tests/{batch-requests,complete_responses}.rb \
+ tests/middlewares/{decompress,mock}_tests.rb || die
+ rm -f spec/requests/eof_requests_spec.rb spec/excon/error_spec.rb || die
+
+ # Use a rackup version compatible with sinatra
+ sed -i -e '/launch_process/ s/"rackup"/"rackup-2"/' tests/test_helper.rb || die
+ sed -i -e '/open_process/ s/rackup/rackup-2/' lib/excon/test/plugin/server/webrick.rb || die
+}
diff --git a/dev-ruby/excon/metadata.xml b/dev-ruby/excon/metadata.xml
new file mode 100644
index 000000000000..b67b38df9bfc
--- /dev/null
+++ b/dev-ruby/excon/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>guillaumeseren@gmail.com</email>
+ <name>Guillaume Seren</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">excon/excon</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/execjs/Manifest b/dev-ruby/execjs/Manifest
index 148e05ab80bc..fa9ecbc025ea 100644
--- a/dev-ruby/execjs/Manifest
+++ b/dev-ruby/execjs/Manifest
@@ -1 +1,2 @@
-DIST execjs-2.7.0.tar.gz 425361 BLAKE2B 8dd3bb5557a6993667abfa6c424cbea6377c1ea7b3928b9b60a6ba084f1df8a109d10d1a616c9d302e1b98a2031ece9e710d7dd933791cbfb3eaa48e45b9a595 SHA512 9627f466e8a363404c940b29227d08a8ad067b53383989a3d8f4f902e8c050c0e81facdbdafbb660c41f7c8dc2fbdd3bd357ca708e612af4d223b5412c6c1fb7
+DIST execjs-2.8.1.tar.gz 425838 BLAKE2B e81c2cfb803e3ffcfb9fbde3ce907147e577f81563500dd74a6a6aa560f13a0318246530a4e54c7139f86c8fe76fe79c9a2961c3b0d685e65c5e7d9d395ba82d SHA512 ec808d3feccf1cfa2500f4ce17a497a31e5886cdd7482c56fdc0cc952aa8967ca50f09c33eb83545713e04aa73fbb8a201459cdb72647e8f8c291f8846f3f230
+DIST execjs-2.9.1.tar.gz 427442 BLAKE2B 5fbead63cfe02d3ba8c1b34fc3ff35a6971c0070f297aef20ab830ebe90e13939ef683baa21cfa921985ced7389db8c4a3fc87a86b180e5c372166685ddb9d6b SHA512 87d2c7f81c47e15c33c6752c6985823fe953d02c7bab70af8d4cda7e9e390ae8972d0077b4f955a16ac9eb9b00d3c86fe76cbc8b8ac3a67ddc9eb2e9aef182bc
diff --git a/dev-ruby/execjs/execjs-2.7.0.ebuild b/dev-ruby/execjs/execjs-2.7.0.ebuild
deleted file mode 100644
index 94bc8336ca81..000000000000
--- a/dev-ruby/execjs/execjs-2.7.0.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-inherit ruby-fakegem
-
-DESCRIPTION="ExecJS lets you run JavaScript code from Ruby"
-HOMEPAGE="https://github.com/rails/execjs"
-SRC_URI="https://github.com/rails/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm ~arm64 ppc ppc64 x86 ~amd64-linux ~x64-macos"
-
-IUSE="test"
-
-# execjs supports various javascript runtimes. They are listed in order
-# as per the documentation. For now only include the ones already in the
-# tree.
-
-# therubyracer, therubyrhino, node.js, spidermonkey (deprecated)
-
-# spidermonkey doesn't pass the test suite:
-# https://github.com/sstephenson/execjs/issues/62
-
-RDEPEND+=" || ( net-libs/nodejs )"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" Rakefile || die
- # Avoid test requiring network connectivity. We could potentially
- # substitute dev-ruby/coffee-script-source for this.
- sed -i -e '/test_coffeescript/,/end/ s:^:#:' test/test_execjs.rb || die
-}
diff --git a/dev-ruby/execjs/execjs-2.8.1-r1.ebuild b/dev-ruby/execjs/execjs-2.8.1-r1.ebuild
new file mode 100644
index 000000000000..3e08241f7eb5
--- /dev/null
+++ b/dev-ruby/execjs/execjs-2.8.1-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+inherit ruby-fakegem
+
+DESCRIPTION="ExecJS lets you run JavaScript code from Ruby"
+HOMEPAGE="https://github.com/rails/execjs"
+SRC_URI="https://github.com/rails/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x64-macos"
+
+IUSE="test"
+
+# execjs supports various javascript runtimes. They are listed in order
+# as per the documentation. For now only include the ones already in the
+# tree.
+
+RDEPEND+=" || ( dev-ruby/duktape-rb net-libs/nodejs )"
+
+all_ruby_prepare() {
+ sed -i -e "/bundler/d" Rakefile || die
+ # Avoid test requiring network connectivity. We could potentially
+ # substitute dev-ruby/coffee-script-source for this.
+ sed -i -e '/test_coffeescript/,/end/ s:^:#:' test/test_execjs.rb || die
+}
diff --git a/dev-ruby/execjs/execjs-2.9.1.ebuild b/dev-ruby/execjs/execjs-2.9.1.ebuild
new file mode 100644
index 000000000000..c45b165ecb15
--- /dev/null
+++ b/dev-ruby/execjs/execjs-2.9.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+inherit ruby-fakegem
+
+DESCRIPTION="ExecJS lets you run JavaScript code from Ruby"
+HOMEPAGE="https://github.com/rails/execjs"
+SRC_URI="https://github.com/rails/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x64-macos"
+
+IUSE="test"
+
+# execjs supports various javascript runtimes. They are listed in order
+# as per the documentation. For now only include the ones already in the
+# tree.
+
+RDEPEND+=" || ( dev-ruby/duktape-rb net-libs/nodejs )"
+
+all_ruby_prepare() {
+ sed -i -e "/bundler/d" Rakefile || die
+ # Avoid test requiring network connectivity. We could potentially
+ # substitute dev-ruby/coffee-script-source for this.
+ sed -i -e '/test_coffeescript/,/end/ s:^:#:' test/test_execjs.rb || die
+}
diff --git a/dev-ruby/execjs/metadata.xml b/dev-ruby/execjs/metadata.xml
index c968c72d53cb..4ce995e7c04c 100644
--- a/dev-ruby/execjs/metadata.xml
+++ b/dev-ruby/execjs/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/exifr/Manifest b/dev-ruby/exifr/Manifest
index 44e28de37590..7a7eb397db27 100644
--- a/dev-ruby/exifr/Manifest
+++ b/dev-ruby/exifr/Manifest
@@ -1,3 +1 @@
-DIST exifr-1.3.4.gem 232448 BLAKE2B 525f2b8c74b15b2abb3a5fac82e475421a0e68003159cb5dcce99436ef7adff13ca614d82cfc55d2680bef64a9de7d5c65a9e1eb72d72b04987a5882fcaf81dc SHA512 1609018119942bd845fc06a93783cb8035da1bdbf8cdaa8335f649f226ba6c6fc52c984528db5fbc3277faa80410fa3708845f26d2e5a48ef36999f22e1cc3be
-DIST exifr-1.3.5.tar.gz 245074 BLAKE2B 8cf2d1a8a400c39fedc21f2186742d83b4ec1931f18cce70938638ffce1dc97d0f3c631504adfa30cbd8a40774b78e83e4a7738665765381c222805b71d40630 SHA512 3d219957040f082d9f0ebb0897301c7fca162f9f0483443237dc410161aa564cbd4818a7bcc88efbe5072414c27e4818a86e8615fca9ba93c2564147b4ce6fc3
-DIST exifr-1.3.6.tar.gz 245123 BLAKE2B eadaec6e1e75d048a9279459c157b0e493ee79f30b964897a9e30a38d27bc5b6b6fe87db7da192f7cab430630b7ed8fe4084f951189cb5bfe805d38e9861c5bc SHA512 9580e47c9de317b456c3cb23099293e26aa1889e338d2b95c4983d7a03c8658ced67d1f11a3fc7b23a80b3a89698c6277ce1bf47e762e5e42822f2ba3041887f
+DIST exifr-1.4.0.tar.gz 266179 BLAKE2B 6f729fbfdfe4128760faf7b562495518ccbaa3d5d5b5e8ffdc5e9ce613271951cc9d3d27392bf80372b66a241d1157898a25480fd44b9d18e808a23766013e37 SHA512 cd4cfcf6ebc5d88e4d41d859756a2b887a3e4954c1b548616e7aaa6485c2c46fb4e74a0e20cd3644aa0aa3afcb59dc3f9cf865d9215b8a3b7b05cdac68f2a663
diff --git a/dev-ruby/exifr/exifr-1.3.4.ebuild b/dev-ruby/exifr/exifr-1.3.4.ebuild
deleted file mode 100644
index 3243469b2c3d..000000000000
--- a/dev-ruby/exifr/exifr-1.3.4.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_DOCDIR="doc/api"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library to read EXIF info from JPEG and TIFF images"
-HOMEPAGE="https://github.com/remvee/exifr/"
-
-# License is not specified in source distribution but is in the GitHub
-# repository.
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
diff --git a/dev-ruby/exifr/exifr-1.3.5.ebuild b/dev-ruby/exifr/exifr-1.3.5.ebuild
deleted file mode 100644
index 73a1eb5ebe66..000000000000
--- a/dev-ruby/exifr/exifr-1.3.5.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="doc/api"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library to read EXIF info from JPEG and TIFF images"
-HOMEPAGE="https://github.com/remvee/exifr/"
-SRC_URI="https://github.com/remvee/exifr/archive/release-${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="${PN}-release-${PV}"
-
-# License is not specified in source distribution but is in the GitHub
-# repository.
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
diff --git a/dev-ruby/exifr/exifr-1.3.6.ebuild b/dev-ruby/exifr/exifr-1.3.6.ebuild
deleted file mode 100644
index 73a1eb5ebe66..000000000000
--- a/dev-ruby/exifr/exifr-1.3.6.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="doc/api"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library to read EXIF info from JPEG and TIFF images"
-HOMEPAGE="https://github.com/remvee/exifr/"
-SRC_URI="https://github.com/remvee/exifr/archive/release-${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="${PN}-release-${PV}"
-
-# License is not specified in source distribution but is in the GitHub
-# repository.
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
diff --git a/dev-ruby/exifr/exifr-1.4.0.ebuild b/dev-ruby/exifr/exifr-1.4.0.ebuild
new file mode 100644
index 000000000000..931f2ee65807
--- /dev/null
+++ b/dev-ruby/exifr/exifr-1.4.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc/api"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library to read EXIF info from JPEG and TIFF images"
+HOMEPAGE="https://github.com/remvee/exifr/"
+SRC_URI="https://github.com/remvee/exifr/archive/release-${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="${PN}-release-${PV}"
+
+# License is not specified in source distribution but is in the GitHub
+# repository.
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
diff --git a/dev-ruby/exifr/metadata.xml b/dev-ruby/exifr/metadata.xml
index c86093cb7486..7e8555564588 100644
--- a/dev-ruby/exifr/metadata.xml
+++ b/dev-ruby/exifr/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/expression_parser/Manifest b/dev-ruby/expression_parser/Manifest
deleted file mode 100644
index f884f9fac644..000000000000
--- a/dev-ruby/expression_parser/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST expression_parser-0.9.0_p20130518.tar.gz 4212 BLAKE2B 10974bff0b671f6105bc38356d1681e9673b96ddf62278b68e4327d5db8505d468a32699f15966b02600368f842b3baf4ebadb6eb203ee53c3568c2d7bc64f9a SHA512 d0d031570e99987a78a4285cfc5ebdb3ec517fbfdd053b7da3dae9c3f2ccf47083f0964b135f3c2501aebe44bd789f1a360cd386620a2f3585af014dd81fc474
diff --git a/dev-ruby/expression_parser/expression_parser-0.9.0_p20130518.ebuild b/dev-ruby/expression_parser/expression_parser-0.9.0_p20130518.ebuild
deleted file mode 100644
index ca484c75bc90..000000000000
--- a/dev-ruby/expression_parser/expression_parser-0.9.0_p20130518.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README"
-RUBY_FAKEGEM_VERSION="0.9.0.20130518"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A math parser"
-HOMEPAGE="https://lukaszwrobel.pl/blog/math-parser-part-3-implementation"
-COMMIT_ID="6e3c7973423ff0f2cd33db2304fcd4eac3af01ad"
-SRC_URI="https://github.com/nricciar/${PN}/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
-
-RUBY_S="${PN}-${COMMIT_ID}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/expression_parser/metadata.xml b/dev-ruby/expression_parser/metadata.xml
deleted file mode 100644
index def7340a01c4..000000000000
--- a/dev-ruby/expression_parser/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">nricciar/expression_parser</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/facter/Manifest b/dev-ruby/facter/Manifest
index b476b90ea8e8..dec2bb3d1ff0 100644
--- a/dev-ruby/facter/Manifest
+++ b/dev-ruby/facter/Manifest
@@ -1,4 +1,7 @@
-DIST facter-3.13.2.tar.gz 392065 BLAKE2B ae06a1a44de25f55b2eb84483a7abc70433b9437a00724f239a908846148f20bdb3e208d10256e6ddeb7d609ee9eb1c572e14dad84d8640fee147c34cb1bf184 SHA512 c7d1d0958720e0884b06eccf6d7fca64d2c8462c1747bbfbfe5df957ad009c3e930fe5eee80d42c985ea9f59e2b8b7d0a34a194a7e1c713a043bbee9a3b89df3
-DIST facter-3.14.2.tar.gz 393499 BLAKE2B 41e8c81668580f215eb597a2130b0d9830bed4067c76d6429f54d7389767f79ef7f059b8d14d8fdf5baeeb1abdce1fa7c0ae69fee4eb221facb1cc66b9a5049b SHA512 83520da9b9739eb7f1fa72bea6765d02d92d09f20143b7c605b032cd5e720b239035c4ae9991711a0e1b9699ee074710506aa4de5f630c28c3d5c9c1a0682fb2
-DIST facter-3.14.3.tar.gz 395278 BLAKE2B bda071fb92d337e2d6e58faaa33a6b135b6dfd3b6f4077af3b872bd44191629810fe99a7a1f8d9e3b16c4ff45ba587730bccb0652dcd85f4562120def42c7f38 SHA512 abd7cb3e102bff7635d6b2c17e5650e0a7b7be5ed6b81003df17053f0c9c4887f7db948714daaa313c7569bcc788ab18b0361a57395cd5118a6be38d571794df
-DIST facter-3.9.2.tar.gz 380883 BLAKE2B d2804664e0499715230e5696c5a9ebae933f5b43dfb37154251d47763c2c7f78cfa8d1413dd836e5a0c76ed67300d066fa5bb390f17f85cd4cb7a444eaf0d133 SHA512 bc040826311bbff40f5a151ade315d9d47ef1e0f3faa570805e48ca55405265e66308230118b9cd59f701ecd76a7b0fd4d9200dd4ace838521223a162b105374
+DIST facter-3.14.24.tar.gz 410547 BLAKE2B 69d2fd3b1bf9f91456ca570f9fef44ddd6e7656a285c035ecb42df2553c461be137d06232fc1f96f239598143912928dcfaf0d9b3078f4335dfc83163eee5120 SHA512 88e47271f213570fb7819630f7b08076bd8b234612a2bb885de760acab48c37b588c1f214da11c5096f0db6b7df4a516b6e83abc56a1d95779b6f1353831e588
+DIST facter-4.4.1.tar.gz 492785 BLAKE2B b8f173aee1e2c3a6e9b650e1962ee6a7f860cadb0ea09254f396cce60cb01d702feaf23e0e147a80ca95554bcf835bd23df59d4faa78404dc92fd86defb65472 SHA512 c9e148141b3348977c9d6209ed3d72ab1eaaff46e0ada2ce5c3452ee71c3cbc051605bf0d9aad77c249559639e52fbb423c6b3e0cb784f2c208ea206fb3f4fd8
+DIST facter-4.4.3.tar.gz 493663 BLAKE2B 19f670e503b5ccf3d78b7fa72b0f3d25cef827eacf9939182fa4bfd6591fbfae6091425d6fc4d00c87ee587537dbcefdc1ff8d3a6d713c21ad6e167b55753835 SHA512 9e8867b00665559562e5778783247bf97a8fce154c857fc1b2e4cb193a66c9029edcfa09dd4e3ca8a0ad16b8dec272b440441f4cffab899366d543a66d1e26df
+DIST facter-4.5.0.tar.gz 494255 BLAKE2B 7ec4edc85c83fd2a4ab198e0807d705cfba7c05ae5fd6dc1954c00a6e14ab6869926d315bc6fcaf553ec3ae632452a383c6a25e5da2d9a099f24c721fd14407c SHA512 025afb1a8ce2716253cfa94f2a4692558ab1c0021afeacfe4c8e6f482fdf91e8042d0f914da04716c4c50faca5b7e89cd6e741b10d431a71ed933943ca4e712f
+DIST facter-4.5.1.tar.gz 494725 BLAKE2B d77ef233c901f41e2bfeaaf5ecd0d3be885154f5027d9e51a02815eed928ddfa6911af396b5ccfb4a33bd7814ba1e8afd77cafec76e78f2baa57a2113dfd2e0a SHA512 f89dfda26fbde74a7425159cde6eb51755238b86b4e15e2237dbfe3997032130e88f7be3d80c5fe115c6dc41cc69ef8942b826aeeb1669d94fe7a1b7824c0167
+DIST facter-4.5.2.tar.gz 465911 BLAKE2B c806d5abb14ed434a4453cbabc77edd5791788ed11eab6b6ea4c56fbfaee82c1ecbb3407b0953ea674b00b0893da1cdce4752c9ab299bdffc97aece61b14ad0b SHA512 1117845c730fa102b833deb2c1020dc82fd9a5fe3ef959e0e98b0b55b3beeb988bc9bc2dbbb04374e26a2c449815139763a107c799a075ad12f64bbf357ca9b8
+DIST facter-4.7.0.tar.gz 481862 BLAKE2B 5179a15616ca9bb2e494c77d407227b2ecb3c554e73433ff461bd19b28fa23bc89d3ce774810435efbcd80b9307340b5a18ccf5360652924f39e9da27446afa8 SHA512 cd0482bc8cd845fc1f0fa73aa3a7217ad45cced7578069317a0812daf9d1b363931edd99412777fa4db020f1407dd073c9adef425cc262755b2a0a236cd44677
diff --git a/dev-ruby/facter/facter-3.13.2-r1.ebuild b/dev-ruby/facter/facter-3.13.2-r1.ebuild
deleted file mode 100644
index b9491751f31b..000000000000
--- a/dev-ruby/facter/facter-3.13.2-r1.ebuild
+++ /dev/null
@@ -1,112 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# git-r3 goes after ruby-ng so that it overrides src_unpack properly
-inherit cmake-utils eutils multilib ruby-ng
-
-DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
-HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE="debug test"
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
- EGIT_BRANCH="master"
-else
- [[ "${PV}" = *_rc* ]] || \
- KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc x86"
- SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-fi
-
-BDEPEND="
- >=sys-devel/gcc-4.8:*
- dev-cpp/cpp-hocon"
-COMMON_DEPEND="
- >=dev-libs/leatherman-1.0.0:=
- dev-libs/openssl:0=
- sys-apps/util-linux
- app-emulation/virt-what
- net-misc/curl
- >=dev-libs/boost-1.54:=[nls]
- <dev-libs/boost-1.70.0
- >=dev-cpp/yaml-cpp-0.5.1
- !<app-admin/puppet-4.0.0"
-
-ruby_add_bdepend "test? ( dev-ruby/rake dev-ruby/rspec:2 dev-ruby/mocha:0.14 )"
-
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${BDEPEND}
- ${COMMON_DEPEND}"
-
-# restore ${S} and override all phases exported by ruby-ng.eclass
-S="${WORKDIR}/${P}"
-
-pkg_setup() {
- ruby-ng_pkg_setup
-}
-
-src_unpack() {
- default
-
- if [[ ${PV} == 9999 ]] ; then
- git-r3_src_unpack
- fi
-}
-
-src_prepare() {
- # be explicit about the version of rspec we test with
- sed -i -e '/libfacter.*specs/ s/rspec/rspec-2/' \
- CMakeLists.txt || die
- # be more lenient for software versions for tests
- sed -i -e '/rake/ s/~> 10.1.0/>= 10/' \
- -e '/rspec/ s/2.11.0/2.11/' \
- -e '/mocha/ s/0.10.5/0.14.0/' lib/Gemfile || die
- # patches
- default
- cmake-utils_src_prepare
-}
-
-each_ruby_configure() {
- # hack for correct calculation of relative path from facter.rb to
- # libfacter.so
- my_ruby_sitelibdir=$(ruby_rbconfig_value 'sitelibdir')
-}
-
-src_configure() {
- ruby-ng_src_configure
-
- local mycmakeargs=(
- -DCMAKE_VERBOSE_MAKEFILE=ON
- -DRUBY_LIB_INSTALL=${my_ruby_sitelibdir}
- -DBLKID_LIBRARYDIR="${EPREFIX}/$(get_libdir)"
- )
- if use debug; then
- mycmakeargs+=(
- -DCMAKE_BUILD_TYPE=Debug
- )
- fi
- cmake-utils_src_configure
-}
-
-src_compile() {
- addpredict /proc/self/oom_score_adj
- cmake-utils_src_compile
-}
-
-src_test() {
- cmake-utils_src_test
-}
-
-each_ruby_install() {
- doruby "${BUILD_DIR}"/lib/facter.rb
-}
-
-src_install() {
- cmake-utils_src_install
- ruby-ng_src_install
-}
diff --git a/dev-ruby/facter/facter-3.14.2.ebuild b/dev-ruby/facter/facter-3.14.2.ebuild
deleted file mode 100644
index b9491751f31b..000000000000
--- a/dev-ruby/facter/facter-3.14.2.ebuild
+++ /dev/null
@@ -1,112 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# git-r3 goes after ruby-ng so that it overrides src_unpack properly
-inherit cmake-utils eutils multilib ruby-ng
-
-DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
-HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE="debug test"
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
- EGIT_BRANCH="master"
-else
- [[ "${PV}" = *_rc* ]] || \
- KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc x86"
- SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-fi
-
-BDEPEND="
- >=sys-devel/gcc-4.8:*
- dev-cpp/cpp-hocon"
-COMMON_DEPEND="
- >=dev-libs/leatherman-1.0.0:=
- dev-libs/openssl:0=
- sys-apps/util-linux
- app-emulation/virt-what
- net-misc/curl
- >=dev-libs/boost-1.54:=[nls]
- <dev-libs/boost-1.70.0
- >=dev-cpp/yaml-cpp-0.5.1
- !<app-admin/puppet-4.0.0"
-
-ruby_add_bdepend "test? ( dev-ruby/rake dev-ruby/rspec:2 dev-ruby/mocha:0.14 )"
-
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${BDEPEND}
- ${COMMON_DEPEND}"
-
-# restore ${S} and override all phases exported by ruby-ng.eclass
-S="${WORKDIR}/${P}"
-
-pkg_setup() {
- ruby-ng_pkg_setup
-}
-
-src_unpack() {
- default
-
- if [[ ${PV} == 9999 ]] ; then
- git-r3_src_unpack
- fi
-}
-
-src_prepare() {
- # be explicit about the version of rspec we test with
- sed -i -e '/libfacter.*specs/ s/rspec/rspec-2/' \
- CMakeLists.txt || die
- # be more lenient for software versions for tests
- sed -i -e '/rake/ s/~> 10.1.0/>= 10/' \
- -e '/rspec/ s/2.11.0/2.11/' \
- -e '/mocha/ s/0.10.5/0.14.0/' lib/Gemfile || die
- # patches
- default
- cmake-utils_src_prepare
-}
-
-each_ruby_configure() {
- # hack for correct calculation of relative path from facter.rb to
- # libfacter.so
- my_ruby_sitelibdir=$(ruby_rbconfig_value 'sitelibdir')
-}
-
-src_configure() {
- ruby-ng_src_configure
-
- local mycmakeargs=(
- -DCMAKE_VERBOSE_MAKEFILE=ON
- -DRUBY_LIB_INSTALL=${my_ruby_sitelibdir}
- -DBLKID_LIBRARYDIR="${EPREFIX}/$(get_libdir)"
- )
- if use debug; then
- mycmakeargs+=(
- -DCMAKE_BUILD_TYPE=Debug
- )
- fi
- cmake-utils_src_configure
-}
-
-src_compile() {
- addpredict /proc/self/oom_score_adj
- cmake-utils_src_compile
-}
-
-src_test() {
- cmake-utils_src_test
-}
-
-each_ruby_install() {
- doruby "${BUILD_DIR}"/lib/facter.rb
-}
-
-src_install() {
- cmake-utils_src_install
- ruby-ng_src_install
-}
diff --git a/dev-ruby/facter/facter-3.14.24.ebuild b/dev-ruby/facter/facter-3.14.24.ebuild
new file mode 100644
index 000000000000..584ef617e0a4
--- /dev/null
+++ b/dev-ruby/facter/facter-3.14.24.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby31"
+
+# git-r3 goes after ruby-ng so that it overrides src_unpack properly
+inherit cmake ruby-ng
+
+DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
+HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="test"
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
+ EGIT_BRANCH="master"
+else
+ [[ "${PV}" = *_rc* ]] || \
+ KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+ SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+fi
+
+RESTRICT="!test? ( test )"
+
+ruby_add_bdepend "test? ( dev-ruby/rake dev-ruby/rspec:3 dev-ruby/mocha:0.14 )"
+
+RDEPEND="
+ >=dev-cpp/cpp-hocon-0.2.1:=
+ >=dev-libs/leatherman-1.0.0:=
+ dev-libs/openssl:0=
+ sys-apps/util-linux
+ app-emulation/virt-what
+ net-misc/curl
+ dev-libs/boost:=[nls]
+ >=dev-cpp/yaml-cpp-0.5.1
+ !<app-admin/puppet-4.0.0"
+DEPEND="${RDEPEND}"
+
+# restore ${S} and override all phases exported by ruby-ng.eclass
+S="${WORKDIR}/${P}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.14.6-fix-static-libcpp-hocon.patch
+ # be explicit about the version of rspec we test with
+ "${FILESDIR}"/${PN}-3.14.8-explicit-rspec-2.patch
+ "${FILESDIR}"/${PN}-3.14.23-gcc12.patch
+)
+
+pkg_setup() {
+ ruby-ng_pkg_setup
+}
+
+src_unpack() {
+ default
+
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ fi
+}
+
+src_prepare() {
+ cmake_src_prepare
+}
+
+each_ruby_configure() {
+ # hack for correct calculation of relative path from facter.rb to
+ # libfacter.so
+ my_ruby_sitelibdir=$(ruby_rbconfig_value 'sitelibdir')
+}
+
+src_configure() {
+ ruby-ng_src_configure
+
+ local mycmakeargs=(
+ -DRUBY_LIB_INSTALL=${my_ruby_sitelibdir}
+ -DWITHOUT_JRUBY=ON
+ -DBLKID_LIBRARYDIR="${EPREFIX}/$(get_libdir)"
+ )
+ cmake_src_configure
+}
+
+src_compile() {
+ addpredict /proc/self/oom_score_adj
+ cmake_src_compile
+}
+
+src_test() {
+ cmake_src_test
+}
+
+each_ruby_install() {
+ doruby "${BUILD_DIR}"/lib/facter.rb
+}
+
+src_install() {
+ cmake_src_install
+ ruby-ng_src_install
+}
diff --git a/dev-ruby/facter/facter-3.14.3.ebuild b/dev-ruby/facter/facter-3.14.3.ebuild
deleted file mode 100644
index 4c7110c0cf6d..000000000000
--- a/dev-ruby/facter/facter-3.14.3.ebuild
+++ /dev/null
@@ -1,112 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# git-r3 goes after ruby-ng so that it overrides src_unpack properly
-inherit cmake-utils eutils multilib ruby-ng
-
-DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
-HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE="debug test"
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
- EGIT_BRANCH="master"
-else
- [[ "${PV}" = *_rc* ]] || \
- KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86"
- SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-fi
-
-BDEPEND="
- >=sys-devel/gcc-4.8:*
- dev-cpp/cpp-hocon"
-COMMON_DEPEND="
- >=dev-libs/leatherman-1.0.0:=
- dev-libs/openssl:0=
- sys-apps/util-linux
- app-emulation/virt-what
- net-misc/curl
- >=dev-libs/boost-1.54:=[nls]
- <dev-libs/boost-1.70.0
- >=dev-cpp/yaml-cpp-0.5.1
- !<app-admin/puppet-4.0.0"
-
-ruby_add_bdepend "test? ( dev-ruby/rake dev-ruby/rspec:2 dev-ruby/mocha:0.14 )"
-
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${BDEPEND}
- ${COMMON_DEPEND}"
-
-# restore ${S} and override all phases exported by ruby-ng.eclass
-S="${WORKDIR}/${P}"
-
-pkg_setup() {
- ruby-ng_pkg_setup
-}
-
-src_unpack() {
- default
-
- if [[ ${PV} == 9999 ]] ; then
- git-r3_src_unpack
- fi
-}
-
-src_prepare() {
- # be explicit about the version of rspec we test with
- sed -i -e '/libfacter.*specs/ s/rspec/rspec-2/' \
- CMakeLists.txt || die
- # be more lenient for software versions for tests
- sed -i -e '/rake/ s/~> 10.1.0/>= 10/' \
- -e '/rspec/ s/2.11.0/2.11/' \
- -e '/mocha/ s/0.10.5/0.14.0/' lib/Gemfile || die
- # patches
- default
- cmake-utils_src_prepare
-}
-
-each_ruby_configure() {
- # hack for correct calculation of relative path from facter.rb to
- # libfacter.so
- my_ruby_sitelibdir=$(ruby_rbconfig_value 'sitelibdir')
-}
-
-src_configure() {
- ruby-ng_src_configure
-
- local mycmakeargs=(
- -DCMAKE_VERBOSE_MAKEFILE=ON
- -DRUBY_LIB_INSTALL=${my_ruby_sitelibdir}
- -DBLKID_LIBRARYDIR="${EPREFIX}/$(get_libdir)"
- )
- if use debug; then
- mycmakeargs+=(
- -DCMAKE_BUILD_TYPE=Debug
- )
- fi
- cmake-utils_src_configure
-}
-
-src_compile() {
- addpredict /proc/self/oom_score_adj
- cmake-utils_src_compile
-}
-
-src_test() {
- cmake-utils_src_test
-}
-
-each_ruby_install() {
- doruby "${BUILD_DIR}"/lib/facter.rb
-}
-
-src_install() {
- cmake-utils_src_install
- ruby-ng_src_install
-}
diff --git a/dev-ruby/facter/facter-3.9.2-r1.ebuild b/dev-ruby/facter/facter-3.9.2-r1.ebuild
deleted file mode 100644
index 1c70dd61c8d8..000000000000
--- a/dev-ruby/facter/facter-3.9.2-r1.ebuild
+++ /dev/null
@@ -1,89 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby21 ruby22 ruby23 ruby24"
-
-inherit cmake-utils eutils multilib ruby-ng
-
-DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
-HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
-SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-S="${S}/all/${P}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE="debug test"
-KEYWORDS="amd64 ~arm ~hppa ppc ppc64 sparc x86"
-
-BDEPEND="
- >=sys-devel/gcc-4.8:*
- >=dev-libs/leatherman-1.0.0
- dev-cpp/cpp-hocon"
-CDEPEND="
- dev-libs/openssl:0=
- sys-apps/util-linux
- app-emulation/virt-what
- net-misc/curl
- >=dev-libs/boost-1.54[nls]
- <dev-libs/boost-1.70.0
- >=dev-cpp/yaml-cpp-0.5.1
- !<app-admin/puppet-4.0.0"
-
-RDEPEND="${CDEPEND}"
-DEPEND="${BDEPEND}
- ${CDEPEND}"
-
-src_prepare() {
- # Remove the code that installs facter.rb to the wrong directory.
- sed -i '/install(.*facter\.rb/d' lib/CMakeLists.txt || die
- sed -i '/install(.*facter\.jar/d' lib/CMakeLists.txt || die
- # make it support multilib
- sed -i "s/\ lib)/\ $(get_libdir))/g" lib/CMakeLists.txt || die
- sed -i "s/lib\")/$(get_libdir)\")/g" CMakeLists.txt || die
- # make the require work
- sed -i 's/\${LIBFACTER_INSTALL_DESTINATION}\///g' lib/facter.rb.in || die
- # patches
- default
-}
-
-src_configure() {
- local mycmakeargs=(
- -DCMAKE_VERBOSE_MAKEFILE=ON
- -DCMAKE_BUILD_TYPE=None
- -DCMAKE_INSTALL_PREFIX=/usr
- -DCMAKE_INSTALL_SYSCONFDIR=/etc
- -DCMAKE_INSTALL_LOCALSTATEDIR=/var
- -DUSE_JRUBY_SUPPORT=FALSE
- -DBLKID_LIBRARY=/$(get_libdir)/libblkid.so.1
- )
- if use debug; then
- mycmakeargs+=(
- -DCMAKE_BUILD_TYPE=Debug
- )
- fi
- cmake-utils_src_configure
-}
-
-src_compile() {
- cmake-utils_src_compile
-}
-
-each_ruby_install() {
- doruby "${BUILD_DIR}"/lib/facter.rb
-}
-
-src_test() {
- cmake-utils_src_test
-}
-
-src_install() {
- cmake-utils_src_install
- ruby-ng_src_install
-
- # need a variable file in env.d :(
- diropts -m0755
- dodir /etc/env.d
- echo -n "FACTERDIR=/usr/$(get_libdir)" > "${D}/etc/env.d/00facterdir"
- fperms 0644 /etc/env.d/00facterdir
-}
diff --git a/dev-ruby/facter/facter-4.4.1.ebuild b/dev-ruby/facter/facter-4.4.1.ebuild
new file mode 100644
index 000000000000..1c4e136e7a9c
--- /dev/null
+++ b/dev-ruby/facter/facter-4.4.1.ebuild
@@ -0,0 +1,46 @@
+# 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_GEMSPEC="facter.gemspec"
+#RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+inherit ruby-ng ruby-fakegem
+
+DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
+HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+#IUSE="test"
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
+ EGIT_BRANCH="master"
+else
+ [[ "${PV}" = *_rc* ]] || \
+ KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+ SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+fi
+
+#RESTRICT="!test? ( test )"
+
+ruby_add_rdepend "dev-ruby/hocon <dev-ruby/thor-2.0 dev-ruby/ffi"
+#ruby_add_bdepend "test? ( dev-ruby/simplecov dev-ruby/timecop dev-ruby/webmock )"
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ fi
+ ruby-ng_src_unpack
+}
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+ # Breaks tests; handle deps ourselves
+ sed -e "/require 'bundler/d" -i spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/facter/facter-4.4.3-r1.ebuild b/dev-ruby/facter/facter-4.4.3-r1.ebuild
new file mode 100644
index 000000000000..18070dbf7ff7
--- /dev/null
+++ b/dev-ruby/facter/facter-4.4.3-r1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_GEMSPEC="facter.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
+HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+#IUSE="test"
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
+ EGIT_BRANCH="master"
+else
+ [[ "${PV}" = *_rc* ]] || \
+ KEYWORDS="~amd64 ~x86"
+ #KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+ SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+fi
+
+#RESTRICT="!test? ( test )"
+
+ruby_add_rdepend "dev-ruby/hocon <dev-ruby/thor-2.0 dev-ruby/ffi dev-ruby/sys-filesystem"
+ruby_add_bdepend "test? ( dev-ruby/simplecov dev-ruby/timecop dev-ruby/webmock )"
+
+PATCHES=(
+ "${FILESDIR}"/facter-4.4.3-rspec-gentoo-tweak.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ fi
+ ruby-ng_src_unpack
+}
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+ # Breaks tests; handle deps ourselves
+ sed -e "/require 'bundler/d" -i spec/spec_helper.rb || die
+ # dev tasks not needed, but block tests
+ for f in tasks/rubocop.rake tasks/check.rake ; do
+ test -e ${f} && mv -f ${f}{,.DISABLE}
+ done
+}
diff --git a/dev-ruby/facter/facter-4.5.0.ebuild b/dev-ruby/facter/facter-4.5.0.ebuild
new file mode 100644
index 000000000000..18070dbf7ff7
--- /dev/null
+++ b/dev-ruby/facter/facter-4.5.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_GEMSPEC="facter.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
+HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+#IUSE="test"
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
+ EGIT_BRANCH="master"
+else
+ [[ "${PV}" = *_rc* ]] || \
+ KEYWORDS="~amd64 ~x86"
+ #KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+ SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+fi
+
+#RESTRICT="!test? ( test )"
+
+ruby_add_rdepend "dev-ruby/hocon <dev-ruby/thor-2.0 dev-ruby/ffi dev-ruby/sys-filesystem"
+ruby_add_bdepend "test? ( dev-ruby/simplecov dev-ruby/timecop dev-ruby/webmock )"
+
+PATCHES=(
+ "${FILESDIR}"/facter-4.4.3-rspec-gentoo-tweak.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ fi
+ ruby-ng_src_unpack
+}
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+ # Breaks tests; handle deps ourselves
+ sed -e "/require 'bundler/d" -i spec/spec_helper.rb || die
+ # dev tasks not needed, but block tests
+ for f in tasks/rubocop.rake tasks/check.rake ; do
+ test -e ${f} && mv -f ${f}{,.DISABLE}
+ done
+}
diff --git a/dev-ruby/facter/facter-4.5.1.ebuild b/dev-ruby/facter/facter-4.5.1.ebuild
new file mode 100644
index 000000000000..18070dbf7ff7
--- /dev/null
+++ b/dev-ruby/facter/facter-4.5.1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_GEMSPEC="facter.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
+HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+#IUSE="test"
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
+ EGIT_BRANCH="master"
+else
+ [[ "${PV}" = *_rc* ]] || \
+ KEYWORDS="~amd64 ~x86"
+ #KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+ SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+fi
+
+#RESTRICT="!test? ( test )"
+
+ruby_add_rdepend "dev-ruby/hocon <dev-ruby/thor-2.0 dev-ruby/ffi dev-ruby/sys-filesystem"
+ruby_add_bdepend "test? ( dev-ruby/simplecov dev-ruby/timecop dev-ruby/webmock )"
+
+PATCHES=(
+ "${FILESDIR}"/facter-4.4.3-rspec-gentoo-tweak.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ fi
+ ruby-ng_src_unpack
+}
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+ # Breaks tests; handle deps ourselves
+ sed -e "/require 'bundler/d" -i spec/spec_helper.rb || die
+ # dev tasks not needed, but block tests
+ for f in tasks/rubocop.rake tasks/check.rake ; do
+ test -e ${f} && mv -f ${f}{,.DISABLE}
+ done
+}
diff --git a/dev-ruby/facter/facter-4.5.2.ebuild b/dev-ruby/facter/facter-4.5.2.ebuild
new file mode 100644
index 000000000000..c2a4a652e567
--- /dev/null
+++ b/dev-ruby/facter/facter-4.5.2.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_GEMSPEC="facter.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
+HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+#IUSE="test"
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
+ EGIT_BRANCH="master"
+else
+ [[ "${PV}" = *_rc* ]] || \
+ KEYWORDS="~amd64 ~x86"
+ #KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+ SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+fi
+
+#RESTRICT="!test? ( test )"
+
+ruby_add_rdepend "dev-ruby/hocon <dev-ruby/thor-2.0 dev-ruby/ffi dev-ruby/sys-filesystem"
+ruby_add_bdepend "test? ( dev-ruby/simplecov dev-ruby/timecop dev-ruby/webmock )"
+
+PATCHES=(
+ "${FILESDIR}"/facter-4.4.3-rspec-gentoo-tweak.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ fi
+ ruby-ng_src_unpack
+}
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+ # Breaks tests; handle deps ourselves
+ sed -e "/require 'bundler/d" -i spec/spec_helper.rb || die
+ # dev tasks not needed, but block tests
+ for f in tasks/rubocop.rake tasks/check.rake ; do
+ test -e ${f} && mv -f ${f}{,.DISABLE}
+ done
+}
diff --git a/dev-ruby/facter/facter-4.7.0.ebuild b/dev-ruby/facter/facter-4.7.0.ebuild
new file mode 100644
index 000000000000..c2a4a652e567
--- /dev/null
+++ b/dev-ruby/facter/facter-4.7.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_GEMSPEC="facter.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
+HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+#IUSE="test"
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
+ EGIT_BRANCH="master"
+else
+ [[ "${PV}" = *_rc* ]] || \
+ KEYWORDS="~amd64 ~x86"
+ #KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+ SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+fi
+
+#RESTRICT="!test? ( test )"
+
+ruby_add_rdepend "dev-ruby/hocon <dev-ruby/thor-2.0 dev-ruby/ffi dev-ruby/sys-filesystem"
+ruby_add_bdepend "test? ( dev-ruby/simplecov dev-ruby/timecop dev-ruby/webmock )"
+
+PATCHES=(
+ "${FILESDIR}"/facter-4.4.3-rspec-gentoo-tweak.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ fi
+ ruby-ng_src_unpack
+}
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+ # Breaks tests; handle deps ourselves
+ sed -e "/require 'bundler/d" -i spec/spec_helper.rb || die
+ # dev tasks not needed, but block tests
+ for f in tasks/rubocop.rake tasks/check.rake ; do
+ test -e ${f} && mv -f ${f}{,.DISABLE}
+ done
+}
diff --git a/dev-ruby/facter/facter-9999.ebuild b/dev-ruby/facter/facter-9999.ebuild
deleted file mode 100644
index 89cbbf1b0b4b..000000000000
--- a/dev-ruby/facter/facter-9999.ebuild
+++ /dev/null
@@ -1,110 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-# git-r3 goes after ruby-ng so that it overrides src_unpack properly
-inherit cmake-utils eutils multilib ruby-ng
-
-DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems"
-HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE="debug test"
-if [[ ${PV} == 9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/puppetlabs/facter.git"
- EGIT_BRANCH="master"
-else
- [[ "${PV}" = *_rc* ]] || \
- KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86"
- SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-fi
-
-BDEPEND="
- >=sys-devel/gcc-4.8:*
- dev-cpp/cpp-hocon"
-COMMON_DEPEND="
- >=dev-libs/leatherman-1.0.0:=
- dev-libs/openssl:0=
- sys-apps/util-linux
- app-emulation/virt-what
- net-misc/curl
- >=dev-libs/boost-1.54:=[nls]
- >=dev-cpp/yaml-cpp-0.5.1
- !<app-admin/puppet-4.0.0"
-
-ruby_add_bdepend "test? ( dev-ruby/rake dev-ruby/rspec:2 dev-ruby/mocha:0.14 )"
-
-RDEPEND="${COMMON_DEPEND}"
-DEPEND="${BDEPEND}
- ${COMMON_DEPEND}"
-
-# restore ${S} and override all phases exported by ruby-ng.eclass
-S="${WORKDIR}/${P}"
-
-pkg_setup() {
- ruby-ng_pkg_setup
-}
-
-src_unpack() {
- default
-
- if [[ ${PV} == 9999 ]] ; then
- git-r3_src_unpack
- fi
-}
-
-src_prepare() {
- # be explicit about the version of rspec we test with
- sed -i -e '/libfacter.*specs/ s/rspec/rspec-2/' \
- CMakeLists.txt || die
- # be more lenient for software versions for tests
- sed -i -e '/rake/ s/~> 10.1.0/>= 10/' \
- -e '/rspec/ s/2.11.0/2.11/' \
- -e '/mocha/ s/0.10.5/0.14.0/' lib/Gemfile || die
- # patches
- default
- cmake-utils_src_prepare
-}
-
-each_ruby_configure() {
- # hack for correct calculation of relative path from facter.rb to
- # libfacter.so
- my_ruby_sitelibdir=$(ruby_rbconfig_value 'sitelibdir')
-}
-
-src_configure() {
- ruby-ng_src_configure
-
- local mycmakeargs=(
- -DCMAKE_VERBOSE_MAKEFILE=ON
- -DRUBY_LIB_INSTALL=${my_ruby_sitelibdir}
- -DBLKID_LIBRARYDIR="${EPREFIX}/$(get_libdir)"
- )
- if use debug; then
- mycmakeargs+=(
- -DCMAKE_BUILD_TYPE=Debug
- )
- fi
- cmake-utils_src_configure
-}
-
-src_compile() {
- cmake-utils_src_compile
-}
-
-src_test() {
- cmake-utils_src_test
-}
-
-each_ruby_install() {
- doruby "${BUILD_DIR}"/lib/facter.rb
-}
-
-src_install() {
- cmake-utils_src_install
- ruby-ng_src_install
-}
diff --git a/dev-ruby/facter/files/00facterdir b/dev-ruby/facter/files/00facterdir
deleted file mode 100644
index 45e29a2405a8..000000000000
--- a/dev-ruby/facter/files/00facterdir
+++ /dev/null
@@ -1 +0,0 @@
-FACTERDIR=/usr
diff --git a/dev-ruby/facter/files/facter-3.14.23-gcc12.patch b/dev-ruby/facter/files/facter-3.14.23-gcc12.patch
new file mode 100644
index 000000000000..671b085a15b5
--- /dev/null
+++ b/dev-ruby/facter/files/facter-3.14.23-gcc12.patch
@@ -0,0 +1,10 @@
+https://bugs.gentoo.org/840116
+--- a/lib/src/facts/glib/load_average_resolver.cc
++++ b/lib/src/facts/glib/load_average_resolver.cc
+@@ -1,5 +1,6 @@
+ #include <internal/facts/glib/load_average_resolver.hpp>
+ #include <leatherman/logging/logging.hpp>
++#include <array>
+ #include <cstdlib>
+
+ #ifdef __sun
diff --git a/dev-ruby/facter/files/facter-3.14.6-fix-static-libcpp-hocon.patch b/dev-ruby/facter/files/facter-3.14.6-fix-static-libcpp-hocon.patch
new file mode 100644
index 000000000000..26c193c12b57
--- /dev/null
+++ b/dev-ruby/facter/files/facter-3.14.6-fix-static-libcpp-hocon.patch
@@ -0,0 +1,9 @@
+--- a/cmake/FindCPPHOCON.cmake
++++ b/cmake/FindCPPHOCON.cmake
+@@ -1,5 +1,5 @@
+ include(FindDependency)
+-find_dependency(CPPHOCON DISPLAY "cpp-hocon" HEADERS "hocon/config.hpp" LIBRARIES "libcpp-hocon.a")
++find_dependency(CPPHOCON DISPLAY "cpp-hocon" HEADERS "hocon/config.hpp" LIBRARIES "libcpp-hocon.so")
+
+ include(FeatureSummary)
+ set_package_properties(CPPHOCON PROPERTIES DESCRIPTION "A C++ parser for the HOCON configuration language" URL "https://github.com/puppetlabs/cpp-hocon")
diff --git a/dev-ruby/facter/files/facter-3.14.8-explicit-rspec-2.patch b/dev-ruby/facter/files/facter-3.14.8-explicit-rspec-2.patch
new file mode 100644
index 000000000000..bca424be1b8e
--- /dev/null
+++ b/dev-ruby/facter/files/facter-3.14.8-explicit-rspec-2.patch
@@ -0,0 +1,10 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -205,7 +205,7 @@
+ if (BUNDLER_PATH)
+ message(STATUS "Bundler found, installing dependencies for Ruby tests...")
+ execute_process(COMMAND ${BUNDLER_PATH} install --retry 2 --path=vendor/bundle WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}/lib")
+- add_test(NAME "libfacter\\ specs" COMMAND ${BUNDLER_PATH} exec rspec WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}/lib")
++ add_test(NAME "libfacter\\ specs" COMMAND ${BUNDLER_PATH} exec rspec-2 WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}/lib")
+ endif()
+ endif()
diff --git a/dev-ruby/facter/files/facter-4.4.3-rspec-gentoo-tweak.patch b/dev-ruby/facter/files/facter-4.4.3-rspec-gentoo-tweak.patch
new file mode 100644
index 000000000000..ce97bbbccee9
--- /dev/null
+++ b/dev-ruby/facter/files/facter-4.4.3-rspec-gentoo-tweak.patch
@@ -0,0 +1,53 @@
+These two tests fail on a Gentoo system. Mark as pending so we have coverage of the other tests.
+
+```
+ 1) Facter::Core::Execution::Base#execute with expand on posix does not expant builtin command
+ # False positive on Gentoo due to environment, returns GEM_SKIP instead of PATH
+ Failure/Error: old_require(path) unless LIBS_TO_SKIP.include?(path)
+
+ {"SHELL"=>"/bin/bash", ..., "_"=>"/usr/bin/rspec", "RACK_ENV"=>"test",
+ "resolution_test_foo"=>"foo"} received :[] with unexpected arguments
+ expected: ("PATH")
+ got: ("GEM_SKIP")
+ Please stub a default value first if message might be received with other args as well.
+ # ./spec/mocks/kernel.rb:7:in `require'
+ # ./lib/facter/custom_facts/core/execution/base.rb:74:in `execute_command'
+ # ./lib/facter/custom_facts/core/execution/base.rb:63:in `execute'
+ # ./spec/custom_facts/core/execution/fact_manager_spec.rb:106:in `block (4 levels) in <top (required)>'
+
+
+ 2) Facter::Core::Execution::Posix when calling execute_command executes a command
+ # False positive on Gentoo due to environment, returns "" instead of ["", ""]
+ Failure/Error: expect(posix_executor.execute_command('/usr/bin/true', nil, logger)).to eq(['', ''])
+
+ expected: ["", ""]
+ got: ""
+
+ (compared using ==)
+ # ./spec/custom_facts/core/execution/posix_spec.rb:112:in `block (3 levels) in <top (required)>'
+```
+
+Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
+
+diff -NuarwbB --exclude '*swp' facter-4.4.3.orig/spec/custom_facts/core/execution/fact_manager_spec.rb facter-4.4.3/spec/custom_facts/core/execution/fact_manager_spec.rb
+--- facter-4.4.3.orig/spec/custom_facts/core/execution/fact_manager_spec.rb 2023-08-24 10:49:03.000000000 -0700
++++ facter-4.4.3/spec/custom_facts/core/execution/fact_manager_spec.rb 2023-09-09 21:25:03.428326009 -0700
+@@ -99,6 +99,7 @@
+ end
+
+ it 'does not expant builtin command' do
++ pending('False positive on Gentoo due to environment, returns GEM_SKIP instead of PATH')
+ allow(Facter::Core::Execution::Popen3).to receive(:popen3e).with({ 'LC_ALL' => 'C', 'LANG' => 'C' }, '/bin/foo')
+ .and_return('')
+ allow(Open3).to receive(:capture2).with('type /bin/foo').and_return('builtin')
+diff -NuarwbB --exclude '*swp' facter-4.4.3.orig/spec/custom_facts/core/execution/posix_spec.rb facter-4.4.3/spec/custom_facts/core/execution/posix_spec.rb
+--- facter-4.4.3.orig/spec/custom_facts/core/execution/posix_spec.rb 2023-08-24 10:49:03.000000000 -0700
++++ facter-4.4.3/spec/custom_facts/core/execution/posix_spec.rb 2023-09-09 21:24:39.484374593 -0700
+@@ -108,6 +108,7 @@
+ let(:logger) { instance_spy(Logger) }
+
+ it 'executes a command' do
++ pending('False positive on Gentoo due to environment, returns "" instead of ["", ""]')
+ expect(posix_executor.execute_command('/usr/bin/true', nil, logger)).to eq(['', ''])
+ end
+
diff --git a/dev-ruby/facter/metadata.xml b/dev-ruby/facter/metadata.xml
index 89ac2d179c9f..1f54ed29ba4d 100644
--- a/dev-ruby/facter/metadata.xml
+++ b/dev-ruby/facter/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>prometheanfire@gentoo.org</email>
diff --git a/dev-ruby/factory_girl/Manifest b/dev-ruby/factory_girl/Manifest
deleted file mode 100644
index 3ab620517970..000000000000
--- a/dev-ruby/factory_girl/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST factory_girl-4.8.1.tar.gz 66262 BLAKE2B 6a90581ef7fe7f6e3d244bceebd10a4d725731ff2a7f6aae4265a6d235f5ef4f1069a0f1f2fa55121c9112b245dc947378745958583e9380536cc797d881a3aa SHA512 2c27eaec8351b009bf200e10829128c5fd3e73b0383cebf7f3ccbe062ba362b29f25e5c054ed25245202c85c6ab60c637547a8f3719e2f079c86c83c30db48a0
diff --git a/dev-ruby/factory_girl/factory_girl-4.8.1.ebuild b/dev-ruby/factory_girl/factory_girl-4.8.1.ebuild
deleted file mode 100644
index c775128223ae..000000000000
--- a/dev-ruby/factory_girl/factory_girl-4.8.1.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-# Tests depend on unpackaged appraisal, for now we just run the specs
-# with the version of Rails that is installed.
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="GETTING_STARTED.md NEWS README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="features"
-
-inherit ruby-fakegem
-
-DESCRIPTION="factory_girl provides a framework and DSL for defining and using factories"
-HOMEPAGE="https://github.com/thoughtbot/factory_girl"
-SRC_URI="https://github.com/thoughtbot/factory_girl/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-3.0.0:*"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/activerecord-3.1[sqlite]
- dev-ruby/bourne
- >=dev-ruby/mocha-0.12.8
- dev-ruby/rspec-its
- dev-ruby/timecop
- )
-"
-
-all_ruby_prepare() {
- # Avoid unneeded test dependencies
- sed -i -e '/simplecov/ s:^:#:' \
- -e '1irequire "fileutils"' spec/spec_helper.rb || die
-
- # Avoid specs that may fail due to more strict rspec 2.99
- # interpretation.
- sed -i -e '/callbacks using syntax methods without referencing FactoryGirl explicitly/,/^end/ s:^:#:' spec/acceptance/callbacks_spec.rb || die
-}
diff --git a/dev-ruby/factory_girl/metadata.xml b/dev-ruby/factory_girl/metadata.xml
deleted file mode 100644
index 6ecc2c07e950..000000000000
--- a/dev-ruby/factory_girl/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">thoughtbot/factory_girl</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/fake_ftp/Manifest b/dev-ruby/fake_ftp/Manifest
new file mode 100644
index 000000000000..139936d18829
--- /dev/null
+++ b/dev-ruby/fake_ftp/Manifest
@@ -0,0 +1 @@
+DIST fake_ftp-0.3.0.gem 94720 BLAKE2B 98d96324eb84654300785a82a1fd9a78abf44cf8fa8e062bc5dd4629147b5753aaa8554319b623bb4ea208bc055ead251ccb66d4e31ec1738d07700c9f8e4e57 SHA512 2aa106ff76d42a04863fb0db82b782b6e36d20e686ea5d1c564be32fbebd815e2d2e046e26e4fa71232e87ae523a1b5da7165fa51398b588546d561b0a565c20
diff --git a/dev-ruby/fake_ftp/fake_ftp-0.3.0.ebuild b/dev-ruby/fake_ftp/fake_ftp-0.3.0.ebuild
new file mode 100644
index 000000000000..f2bcacc3fe15
--- /dev/null
+++ b/dev-ruby/fake_ftp/fake_ftp-0.3.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Testing FTP? Use this!"
+HOMEPAGE="https://github.com/livinginthepast/fake_ftp"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/fake_ftp/metadata.xml b/dev-ruby/fake_ftp/metadata.xml
new file mode 100644
index 000000000000..d126c4f79f47
--- /dev/null
+++ b/dev-ruby/fake_ftp/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">livinginthepast/fake_ftp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/fakefs/Manifest b/dev-ruby/fakefs/Manifest
index 162e0a9c307e..14fb22933864 100644
--- a/dev-ruby/fakefs/Manifest
+++ b/dev-ruby/fakefs/Manifest
@@ -1,3 +1,2 @@
-DIST fakefs-0.19.2.tar.gz 53405 BLAKE2B c9841f7f2aee5135d149187d03f7f3034d3c6cbce6d33d3710fcdbd936b4599561c857dfac81f13262da6f067a843d0c3159abca0e8be7f77c95ff20e8bd123a SHA512 e27eedff44c3ff556b0e7a22e434205e54847a6f6b03a8ab7604c2f2e9abf8be7d5b8d29bd51e24cc032dfb3aaf7940060c3dae5532b0921e363d2213b12ed90
-DIST fakefs-0.20.0.tar.gz 53591 BLAKE2B 067fef803bb0efb50f63f0c0fb645bb4d0d1c00d198cdf367e99871c6cb9e28cc1d4f0a52318a61c446577aa58170143c2aea4b0b826136610430abf996d03aa SHA512 9f9b2cef58709f7ab1147602b2f47d6a0302b217cc7210537605491f9db6477183e5fa447974c0572f1a1fbecce1029e451241d44b5f96eec97a7521275c165c
-DIST fakefs-0.20.1.tar.gz 53626 BLAKE2B 013f49b57355943eb6624540be93bc069c95409f9e1d49c8cced034656f596ee98fc3ee4dd40cb80383d447164f11242e16a5ffb9b35ba2e28fb136e0f72a09e SHA512 61d83868a0cf4d0abf071fadc9ca21176e3ef8f2ccc781760a8b0b3e55713750d3e952482e90a87e8665163a262e8bdef8e6b2f3c423fabe696d64f356862aa4
+DIST fakefs-1.9.0.tar.gz 56514 BLAKE2B 07e84f54413052b3bf37934b395c6115455ca241d42700dc054729be2ce82eb91944b83e01933fd001b46c9db593f2fd7a9b69f5f49529fde3e1ce967498db5b SHA512 e6be021fec79517127c6f514cc3379fa9c64d75c16d0ac80ed5b677f55625f1ee464eafa0768523a4b364323cfb1aae79814057ee9be3a0d947aac22d39a88f5
+DIST fakefs-2.5.0.tar.gz 57850 BLAKE2B fc53d8f3dd40bfbbef81e9c092439a099a9964b4eff8e5fa6d59c2215aca735d02ab24f2a44c2f51fe874c2a3b088190455cff17a3bf9099e9f56effbceed61c SHA512 acc2fd6891964ce6ab3dd307d8bc90dcaa92c9c01328865bfcee5de5959089e7d7dcbb4d52576b5fb81321ad12719c7d3999d6b0102e5e2d9ef88522ca032bdc
diff --git a/dev-ruby/fakefs/fakefs-0.19.2.ebuild b/dev-ruby/fakefs/fakefs-0.19.2.ebuild
deleted file mode 100644
index f3c2663d2458..000000000000
--- a/dev-ruby/fakefs/fakefs-0.19.2.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CONTRIBUTORS README.md"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="A fake filesystem. Use it in your tests"
-HOMEPAGE="https://github.com/defunkt/fakefs"
-SRC_URI="https://github.com/defunkt/fakefs/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~hppa ~ia64 ppc ppc64 ~sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/rspec-3.1:3
- >=dev-ruby/minitest-5.5
- )"
-
-all_ruby_prepare() {
- # Remove bundler
- rm Gemfile || die
-
- # Avoid unneeded minitest-rg dependency.
- sed -i -e '1igem "minitest", "~>5.5"' \
- -e '/bundler/ s:^:#:' \
- -e '/minitest\/rg/ s:^:#:' test/test_helper.rb || die
-}
-
-each_ruby_test() {
- RSPEC_VERSION=3 ruby-ng_rspec
- ${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/fakefs/fakefs-0.20.0.ebuild b/dev-ruby/fakefs/fakefs-0.20.0.ebuild
deleted file mode 100644
index e529ce1f1e18..000000000000
--- a/dev-ruby/fakefs/fakefs-0.20.0.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CONTRIBUTORS README.md"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="A fake filesystem. Use it in your tests"
-HOMEPAGE="https://github.com/defunkt/fakefs"
-SRC_URI="https://github.com/defunkt/fakefs/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/rspec-3.1:3
- >=dev-ruby/minitest-5.5
- )"
-
-all_ruby_prepare() {
- # Remove bundler
- rm Gemfile || die
-
- # Avoid unneeded minitest-rg dependency.
- sed -i -e '1igem "minitest", "~>5.5"' \
- -e '/bundler/ s:^:#:' \
- -e '/minitest\/rg/ s:^:#:' test/test_helper.rb || die
-}
-
-each_ruby_test() {
- RSPEC_VERSION=3 ruby-ng_rspec
- ${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/fakefs/fakefs-0.20.1.ebuild b/dev-ruby/fakefs/fakefs-0.20.1.ebuild
deleted file mode 100644
index e529ce1f1e18..000000000000
--- a/dev-ruby/fakefs/fakefs-0.20.1.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CONTRIBUTORS README.md"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="A fake filesystem. Use it in your tests"
-HOMEPAGE="https://github.com/defunkt/fakefs"
-SRC_URI="https://github.com/defunkt/fakefs/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/rspec-3.1:3
- >=dev-ruby/minitest-5.5
- )"
-
-all_ruby_prepare() {
- # Remove bundler
- rm Gemfile || die
-
- # Avoid unneeded minitest-rg dependency.
- sed -i -e '1igem "minitest", "~>5.5"' \
- -e '/bundler/ s:^:#:' \
- -e '/minitest\/rg/ s:^:#:' test/test_helper.rb || die
-}
-
-each_ruby_test() {
- RSPEC_VERSION=3 ruby-ng_rspec
- ${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/fakefs/fakefs-1.9.0.ebuild b/dev-ruby/fakefs/fakefs-1.9.0.ebuild
new file mode 100644
index 000000000000..863326d29b5b
--- /dev/null
+++ b/dev-ruby/fakefs/fakefs-1.9.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="CONTRIBUTORS README.md"
+
+RUBY_FAKEGEM_GEMSPEC="fakefs.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A fake filesystem. Use it in your tests"
+HOMEPAGE="https://github.com/defunkt/fakefs"
+SRC_URI="https://github.com/defunkt/fakefs/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm ~hppa ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/rspec-3.1:3
+ >=dev-ruby/maxitest-3.6:1
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler
+ rm Gemfile || die
+
+ # Avoid unneeded minitest-rg dependency.
+ sed -i -e '1igem "minitest", "~>5.5"' \
+ -e '/bundler/ s:^:#:' \
+ -e '/minitest\/rg/ s:^:#:' test/test_helper.rb || die
+
+ sed -i -e 's/git ls-files/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ RSPEC_VERSION=3 ruby-ng_rspec
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/fakefs/fakefs-2.5.0.ebuild b/dev-ruby/fakefs/fakefs-2.5.0.ebuild
new file mode 100644
index 000000000000..c55bf06e9f18
--- /dev/null
+++ b/dev-ruby/fakefs/fakefs-2.5.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="CONTRIBUTORS README.md"
+
+RUBY_FAKEGEM_GEMSPEC="fakefs.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A fake filesystem. Use it in your tests"
+HOMEPAGE="https://github.com/fakefs/fakefs"
+SRC_URI="https://github.com/fakefs/fakefs/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 arm ~hppa ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/rspec-3.1:3
+ >=dev-ruby/maxitest-3.6:1
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler
+ rm Gemfile || die
+
+ # Avoid unneeded minitest-rg dependency.
+ sed -i -e '1igem "maxitest"; gem "minitest", "~>5.5"' \
+ -e '/bundler/ s:^:#:' \
+ -e '/minitest\/rg/ s:^:#:' test/test_helper.rb || die
+
+ sed -i -e 's/git ls-files/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid test that uses the console and hangs on user input
+ rm -f test/pry_test.rb || die
+}
+
+each_ruby_test() {
+ RSPEC_VERSION=3 ruby-ng_rspec
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/fakefs/metadata.xml b/dev-ruby/fakefs/metadata.xml
index a99c2c1bfa83..eb9aa0596360 100644
--- a/dev-ruby/fakefs/metadata.xml
+++ b/dev-ruby/fakefs/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">defunkt/fakefs</remote-id>
+ <remote-id type="github">fakefs/fakefs</remote-id>
+ <remote-id type="rubygems">fakefs</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/faker/Manifest b/dev-ruby/faker/Manifest
index 388b0786b1fb..a60d1d0dadf2 100644
--- a/dev-ruby/faker/Manifest
+++ b/dev-ruby/faker/Manifest
@@ -1,3 +1,4 @@
-DIST faker-1.9.3.tar.gz 974178 BLAKE2B 456cff1c57de07f6f0a5d068e45bcc76db6205bd3ab91aae12584bd5342d6ab0ce7e35f7d681915eab371f4211cc1d24443d5496dd31c8a406d73119aed56828 SHA512 b521372e152ce035363e31b140085210bd78763aa45d9e37867b727accd868fcaea7c5b5c07a5795e859dcdbf48ca49233083de231f771e6b7ae7705487c9e32
-DIST faker-1.9.5.tar.gz 991845 BLAKE2B 0f0824d320cf2449c2b8d9c55f30d6d8f6519bd71951b6f4a7a725bf295e62b18a44bcac8749d6ad445a441ecc53432b3864ab70d794220b3d21f6baa8c229d2 SHA512 ef5d31407d6209e37e8fbc5691904c6b242b97069c96d5a3d4d744c91894038255286b50dceadcd512742634f76bfe8d6088b53b46e7a20720fb98dbb2e7042f
-DIST faker-1.9.6.tar.gz 1833392 BLAKE2B 826ee480515873d1e250147e5c3749e222b1273a00fd4ae0a2a28dca91c5981290c8540602d89d406e91d98a0f5dbc6fc4a54ab6d7d2b716a4d4957ab32254dc SHA512 1ea0c4194603b5eaec0f4abc2460fb39cb9de97179d7699c3cb37673731ebf8bf03d20fb422911d4725d4308691d4c92a82f5a661e034381cc04066ddcc955bc
+DIST faker-2.23.0.tar.gz 1709736 BLAKE2B e3524dbecbd1a4825ef8b38801ae1fa30a4392a7d2eb6fe1c94c3da0b0a4f18db621a42423510bf2f9c4bba175d66e10808252a923c9703aaa8de5d5ed54dd44 SHA512 b037833b3a6d07adaa70c665af66343d90389f282a2faf8ca55a5a81988163263e3b3069744e67ede206512bb67cf53a104eed34c39d92feb10a282f411bde41
+DIST faker-3.2.0.tar.gz 1741224 BLAKE2B 0ff591bda01c5009ef1303403fa954f00f4fb885ef48d4838aa471cc00f527b2a738eedc93ada1cb00c0286c53650960dbf55cbf1ac056b16c93f2489dc0f5ae SHA512 472029d6966a5583cab3991821557af25d2b2bfbbee3c9cda824503d3a0cf8f8ffc9ffaa40299cab952815a40148d20aed78c37d3dedb3c91b3f4bcdf70e5bd1
+DIST faker-3.2.1.tar.gz 1790088 BLAKE2B 87131d359c40f4a517a0aa5dfde0aa5a8807a6cfd4af31c5fd61cefcc7a4311549b98fe132c846ead0c9d2b1afd7551d3cc32d285ecedf4ee3ec733ed1d886e3 SHA512 6ee9ffacf60bee367a3590195676cc80c79625d920c52bf9dff42957c2afdb099e1fc28c3fe3d981ee163bea3cb044153396c458b3bf859e2fe3f2b6f44aea85
+DIST faker-3.2.2.tar.gz 1808552 BLAKE2B 148e821b254de61fc44ff0836e91bb66574bf913d5899410bf4e7939ccbed74a343dc6a1fa504f4cb618dcbdac949d591a36c54e02ac1ae1181cf35b3a309f97 SHA512 d13211874f74a380a21cc8940cd7e7382d404cf28b4b3e4becbf0d6b9c027ebb0e206c15febddecd4ad48bdcd59017c9e33399fa0467d0e205cad044078ba5a6
diff --git a/dev-ruby/faker/faker-1.9.3.ebuild b/dev-ruby/faker/faker-1.9.3.ebuild
deleted file mode 100644
index 20d9ef8c420a..000000000000
--- a/dev-ruby/faker/faker-1.9.3.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-
-RUBY_FAKEGEM_GEMSPEC="faker.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library for generating fake data such as names, addresses, and phone numbers"
-HOMEPAGE="https://github.com/stympy/faker"
-SRC_URI="https://github.com/stympy/faker/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/i18n-0.7:*"
-
-ruby_add_bdepend "test? ( dev-ruby/timecop )"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/^end/ s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/faker/faker-1.9.5-r1.ebuild b/dev-ruby/faker/faker-1.9.5-r1.ebuild
deleted file mode 100644
index 42e9d39ff723..000000000000
--- a/dev-ruby/faker/faker-1.9.5-r1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-
-RUBY_FAKEGEM_GEMSPEC="faker.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library for generating fake data such as names, addresses, and phone numbers"
-HOMEPAGE="https://github.com/stympy/faker"
-SRC_URI="https://github.com/stympy/faker/archive/v.${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="faker-v.${PV}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/i18n-0.7:*"
-
-ruby_add_bdepend "test? ( dev-ruby/timecop )"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/^end/ s:^:#:' test/test_helper.rb || die
-
- sed -i -e s/1.9.4/${PV}/ lib/faker/version.rb || die
-}
diff --git a/dev-ruby/faker/faker-1.9.6.ebuild b/dev-ruby/faker/faker-1.9.6.ebuild
deleted file mode 100644
index 7bc73ab69710..000000000000
--- a/dev-ruby/faker/faker-1.9.6.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-
-RUBY_FAKEGEM_GEMSPEC="faker.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library for generating fake data such as names, addresses, and phone numbers"
-HOMEPAGE="https://github.com/stympy/faker"
-SRC_URI="https://github.com/stympy/faker/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/i18n-0.7:*"
-
-ruby_add_bdepend "test? ( dev-ruby/timecop )"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/^end/ s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/faker/faker-2.23.0-r1.ebuild b/dev-ruby/faker/faker-2.23.0-r1.ebuild
new file mode 100644
index 000000000000..af47ebe6e992
--- /dev/null
+++ b/dev-ruby/faker/faker-2.23.0-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_GEMSPEC="faker.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library for generating fake data such as names, addresses, and phone numbers"
+HOMEPAGE="https://github.com/stympy/faker"
+SRC_URI="https://github.com/stympy/faker/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/i18n-1.8.11:1"
+
+ruby_add_bdepend "test? ( dev-ruby/timecop )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|rubocop\|yard\)/I s:^:#:' Rakefile || die
+ sed -i -e '/simplecov/,/^end/ s:^:#:' test/test_helper.rb || die
+}
diff --git a/dev-ruby/faker/faker-3.2.0.ebuild b/dev-ruby/faker/faker-3.2.0.ebuild
new file mode 100644
index 000000000000..eba3f189c07d
--- /dev/null
+++ b/dev-ruby/faker/faker-3.2.0.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_GEMSPEC="faker.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library for generating fake data such as names, addresses, and phone numbers"
+HOMEPAGE="https://github.com/faker-ruby/faker"
+SRC_URI="https://github.com/faker-ruby/faker/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/i18n-1.8.11:1 !<dev-ruby/faker-2.23.0-r1"
+
+ruby_add_bdepend "test? ( dev-ruby/timecop )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|rubocop\|yard\)/I s:^:#:' Rakefile || die
+ sed -i -e '/simplecov/,/^end/ s:^:#:' test/test_helper.rb || die
+}
diff --git a/dev-ruby/faker/faker-3.2.1.ebuild b/dev-ruby/faker/faker-3.2.1.ebuild
new file mode 100644
index 000000000000..eba3f189c07d
--- /dev/null
+++ b/dev-ruby/faker/faker-3.2.1.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_GEMSPEC="faker.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library for generating fake data such as names, addresses, and phone numbers"
+HOMEPAGE="https://github.com/faker-ruby/faker"
+SRC_URI="https://github.com/faker-ruby/faker/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/i18n-1.8.11:1 !<dev-ruby/faker-2.23.0-r1"
+
+ruby_add_bdepend "test? ( dev-ruby/timecop )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|rubocop\|yard\)/I s:^:#:' Rakefile || die
+ sed -i -e '/simplecov/,/^end/ s:^:#:' test/test_helper.rb || die
+}
diff --git a/dev-ruby/faker/faker-3.2.2.ebuild b/dev-ruby/faker/faker-3.2.2.ebuild
new file mode 100644
index 000000000000..9748849dfb16
--- /dev/null
+++ b/dev-ruby/faker/faker-3.2.2.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_GEMSPEC="faker.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library for generating fake data such as names, addresses, and phone numbers"
+HOMEPAGE="https://github.com/faker-ruby/faker"
+SRC_URI="https://github.com/faker-ruby/faker/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/i18n-1.8.11:1 !<dev-ruby/faker-2.23.0-r1"
+
+ruby_add_bdepend "test? ( dev-ruby/timecop )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|rubocop\|yard\)/I s:^:#:' Rakefile || die
+ sed -i -e '/simplecov/,/^end/ s:^:#:' test/test_helper.rb || die
+}
diff --git a/dev-ruby/faker/metadata.xml b/dev-ruby/faker/metadata.xml
index 9402a63cf669..76783815ac21 100644
--- a/dev-ruby/faker/metadata.xml
+++ b/dev-ruby/faker/metadata.xml
@@ -1,15 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">stympy/faker</remote-id>
+ <remote-id type="github">faker-ruby/faker</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/fakeweb/Manifest b/dev-ruby/fakeweb/Manifest
deleted file mode 100644
index f8497592ebe8..000000000000
--- a/dev-ruby/fakeweb/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST fakeweb-1.3.0.20170806.tar.gz 61449 BLAKE2B f015f95897383e0b65ada5a7833f7bd3fd61ae77f4ab38bf6bb47f2eecef0c778928090302e46157ae4e2fc6c3df4559e9f5c8004a6474ad8852d157aa3af6da SHA512 1871b7c9f2e4f12cd1c434ef4f760828187078a951517fe3f7a6ca5c5d6f08e3056cae2bb012eca1ba556c2f4d369cb2716c637fefee67eb723428195c482edf
diff --git a/dev-ruby/fakeweb/fakeweb-1.3.0.20170806.ebuild b/dev-ruby/fakeweb/fakeweb-1.3.0.20170806.ebuild
deleted file mode 100644
index 90f5829a751f..000000000000
--- a/dev-ruby/fakeweb/fakeweb-1.3.0.20170806.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-# ruby26: not compatible
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
-
-COMMIT=2b08c1ff2714ec13a12f3497d67fcefce95c2cbe
-
-inherit ruby-fakegem
-
-DESCRIPTION="Helper for faking web requests in Ruby"
-HOMEPAGE="https://github.com/chrisk/fakeweb"
-SRC_URI="https://github.com/chrisk/fakeweb/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
-RUBY_S="${PN}-${COMMIT}"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- dev-ruby/mocha
- dev-ruby/test-unit
- )"
-
-all_ruby_prepare() {
- # The package bundles samuel and right_http_connection, remove
- # them
- rm -r test/vendor || die "failed to remove bundled gems"
-
- # We don't package sdoc and we don't have the direct template.
- sed -i -e 's/sdoc/rdoc/' -e '/template/d' Rakefile || die
-
- # Use the test-unit gem to make jruby compatible with newer mocha.
- sed -i -e '1igem "test-unit"' \
- -e '/bundler/I s:^:#:' \
- -e '/simplecov/ s:^:#:' test/test_helper.rb || die
-
- # Avoid test dependencies on unmaintained packages that no longer work
- rm test/test_other_net_http_libraries.rb || die
-
- sed -i -e '/test:preflight/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/fakeweb/metadata.xml b/dev-ruby/fakeweb/metadata.xml
deleted file mode 100644
index d7fdd1dd499c..000000000000
--- a/dev-ruby/fakeweb/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">chrisk/fakeweb</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/faraday-follow_redirects/Manifest b/dev-ruby/faraday-follow_redirects/Manifest
new file mode 100644
index 000000000000..3802e9907d08
--- /dev/null
+++ b/dev-ruby/faraday-follow_redirects/Manifest
@@ -0,0 +1 @@
+DIST faraday-follow_redirects-0.3.0.tar.gz 9884 BLAKE2B 463cfb9e797f21355fea5318f0a647936194b671828e55c6ad6dff1c3e853b15ed0facac28e2f59c0cccf8db5d9f11f3bd66c1c877d9a9538d5deea832c4d3d2 SHA512 357b9618f203749f806b7882b39dfd1b90a403c9a76734f4d3ae59ef2a70430254e616be66fb5a0ec74e770e2ee9df6e0f805b00f70a6f99de12ff70fa4d2bda
diff --git a/dev-ruby/faraday-follow_redirects/faraday-follow_redirects-0.3.0.ebuild b/dev-ruby/faraday-follow_redirects/faraday-follow_redirects-0.3.0.ebuild
new file mode 100644
index 000000000000..8fb5aa93a297
--- /dev/null
+++ b/dev-ruby/faraday-follow_redirects/faraday-follow_redirects-0.3.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Perform multipart-post requests using Faraday"
+HOMEPAGE="https://github.com/tisba/faraday-follow-redirects"
+SRC_URI="https://github.com/tisba/faraday-follow-redirects/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="faraday-follow-redirects-${PV}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+ruby_add_rdepend "|| ( dev-ruby/faraday:2 dev-ruby/faraday:1 )"
+
+ruby_add_bdepend "test? ( dev-ruby/webmock )"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ':'./:" ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/faraday-follow_redirects/metadata.xml b/dev-ruby/faraday-follow_redirects/metadata.xml
new file mode 100644
index 000000000000..42a21a64fc14
--- /dev/null
+++ b/dev-ruby/faraday-follow_redirects/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">tisba/faraday-follow-redirects</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/faraday-httpclient/Manifest b/dev-ruby/faraday-httpclient/Manifest
new file mode 100644
index 000000000000..e1598b377a3c
--- /dev/null
+++ b/dev-ruby/faraday-httpclient/Manifest
@@ -0,0 +1 @@
+DIST faraday-httpclient-1.0.1.tar.gz 8438 BLAKE2B eb642d2d69b3daeca9763df86399b1e76f2d3e84cec19218ff0c486f547594f83f30a776b0be95e5f4f976505e5a4299eec3ded9652ee61ceace63b29260d47f SHA512 440d57cad24bd7f52c4b1ea8f8062a62630791f8a5730999aa41ece5b0c759a188afbb8449e32eea03710bfc7bffbe244664d305f41457e88791f916ef142d86
diff --git a/dev-ruby/faraday-httpclient/faraday-httpclient-1.0.1.ebuild b/dev-ruby/faraday-httpclient/faraday-httpclient-1.0.1.ebuild
new file mode 100644
index 000000000000..0688a201cfa8
--- /dev/null
+++ b/dev-ruby/faraday-httpclient/faraday-httpclient-1.0.1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Faraday adapter for HTTPClient"
+HOMEPAGE="https://github.com/lostisland/faraday-httpclient"
+SRC_URI="https://github.com/lostisland/faraday-httpclient/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/webmock dev-ruby/faraday:1 dev-ruby/httpclient )"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ':'./:" ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '2igem "faraday", "~> 1.0"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/faraday-httpclient/metadata.xml b/dev-ruby/faraday-httpclient/metadata.xml
new file mode 100644
index 000000000000..5450cd18f3de
--- /dev/null
+++ b/dev-ruby/faraday-httpclient/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">lostisland/faraday-httpclient</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/faraday-multipart/Manifest b/dev-ruby/faraday-multipart/Manifest
new file mode 100644
index 000000000000..9bb03d97a53e
--- /dev/null
+++ b/dev-ruby/faraday-multipart/Manifest
@@ -0,0 +1 @@
+DIST faraday-multipart-1.0.4.tar.gz 11558 BLAKE2B 3e68fa1c7d28b25a6b6b3a1a3a8c64081bfbff619eb59e2235d0853d1853e34063c96d3a450e89ef6ec383acd05b34abd0b472527f66d76528cbc65521aac64b SHA512 a155cc1cd572157c33df75f342bc9c1d8971ee3c92a3b184098b19b3bee56f1ee79e68983ccbc6df4f8e97f8ab877dca9d28b3ed22fea1d49197c07a81d8092a
diff --git a/dev-ruby/faraday-multipart/faraday-multipart-1.0.4.ebuild b/dev-ruby/faraday-multipart/faraday-multipart-1.0.4.ebuild
new file mode 100644
index 000000000000..d9f2e1563a31
--- /dev/null
+++ b/dev-ruby/faraday-multipart/faraday-multipart-1.0.4.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Perform multipart-post requests using Faraday"
+HOMEPAGE="https://github.com/lostisland/faraday-multipart"
+SRC_URI="https://github.com/lostisland/faraday-multipart/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/multipart-post:0"
+
+ruby_add_bdepend "test? (
+ || ( dev-ruby/faraday:2 dev-ruby/faraday:1 )
+ dev-ruby/multipart-parser
+)"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ':'./:" ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/faraday-multipart/metadata.xml b/dev-ruby/faraday-multipart/metadata.xml
new file mode 100644
index 000000000000..6ee43a5aeb2e
--- /dev/null
+++ b/dev-ruby/faraday-multipart/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">lostisland/faraday-multipart</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/faraday-net_http/Manifest b/dev-ruby/faraday-net_http/Manifest
new file mode 100644
index 000000000000..8dec1316a359
--- /dev/null
+++ b/dev-ruby/faraday-net_http/Manifest
@@ -0,0 +1,4 @@
+DIST faraday-net_http-1.0.1.tar.gz 8436 BLAKE2B 16feb3c79af7db3b69373826a2fc55a8373620c7c6bb229ec27ada2e07a75e862e4211a13a991c9d280b9dfd9643d1eec400fb0b925a846d966cc609c562aefe SHA512 57a7ea2f452844200119cb9e99ae4bfee5e01b0630b38b4ef4e615dfcc05e1476e3da8511698bf199c62b816b5253fb364ed6cffdc59dcd4e9d706c7f1e6e56b
+DIST faraday-net_http-2.1.0.tar.gz 9061 BLAKE2B 00e461718f4a92ff424e28074aa62d79c4ebfc9ca3a22036eef28c57fe90199b6fb49f5f9a02ff89cfc701b07c5fbb798446f1cc7ebf860dfeab9208e61b92d8 SHA512 797aa930d33a372fccb6fc497fe504f15b63a2fd87aa2301b84098a23de321fe60b6af43f35d9ed670705e90284096a21e9e83c80abe800c81240dec937a27d8
+DIST faraday-net_http-3.0.2.tar.gz 8897 BLAKE2B bd69eb01e74ab00c3d14efe7cf3c74efaeb17c7a03c61916c040a79ea152c4adddb010b0767dc6eecaed072e905c5d4ec540c26abbb1d390123538c38555ea22 SHA512 e01d22c243f175f88f1a559d9c200047a28fa118225b3ad616ae0ed3e5207b6f6dd0337f8520e1b023deef18e3b1654ad84e43267971d634ba9d8e88b44627fa
+DIST faraday-net_http-3.1.0.tar.gz 8975 BLAKE2B 254f0f3eac4361866b4e8a0b2461fa4e2fb76cfbcd145e122fdbfd65a4565ffd176375fd962dbb1ec899c3be993526d3232e166105840f43af1027220d9cd245 SHA512 dfab2515f7d567d34fd11c4a5ceff2ad41399a6ff262dc4bc52349d4229cdd8d9563c31d4dee1acfcb185a5bcf647e574758965cb6324c024244c9e48a42568f
diff --git a/dev-ruby/faraday-net_http/faraday-net_http-1.0.1.ebuild b/dev-ruby/faraday-net_http/faraday-net_http-1.0.1.ebuild
new file mode 100644
index 000000000000..b7287199a7ef
--- /dev/null
+++ b/dev-ruby/faraday-net_http/faraday-net_http-1.0.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Faraday adapter for Net::HTTP"
+HOMEPAGE="https://github.com/lostisland/faraday-net_http"
+SRC_URI="https://github.com/lostisland/faraday-net_http/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( >=dev-ruby/faraday-1.3.1:1 )"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ':'./:" ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/faraday-net_http/faraday-net_http-2.1.0.ebuild b/dev-ruby/faraday-net_http/faraday-net_http-2.1.0.ebuild
new file mode 100644
index 000000000000..dc7606654b71
--- /dev/null
+++ b/dev-ruby/faraday-net_http/faraday-net_http-2.1.0.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 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Faraday adapter for Net::HTTP"
+HOMEPAGE="https://github.com/lostisland/faraday-net_http"
+SRC_URI="https://github.com/lostisland/faraday-net_http/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( || ( dev-ruby/faraday:2 >=dev-ruby/faraday-1.3.1:1 ) )"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ':'./:" ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/faraday-net_http/faraday-net_http-3.0.2.ebuild b/dev-ruby/faraday-net_http/faraday-net_http-3.0.2.ebuild
new file mode 100644
index 000000000000..b606f1ad6ecd
--- /dev/null
+++ b/dev-ruby/faraday-net_http/faraday-net_http-3.0.2.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 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Faraday adapter for Net::HTTP"
+HOMEPAGE="https://github.com/lostisland/faraday-net_http"
+SRC_URI="https://github.com/lostisland/faraday-net_http/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( >=dev-ruby/faraday-2.5 )"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ':'./:" ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/faraday-net_http/faraday-net_http-3.1.0.ebuild b/dev-ruby/faraday-net_http/faraday-net_http-3.1.0.ebuild
new file mode 100644
index 000000000000..d1f1be3f6e05
--- /dev/null
+++ b/dev-ruby/faraday-net_http/faraday-net_http-3.1.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Faraday adapter for Net::HTTP"
+HOMEPAGE="https://github.com/lostisland/faraday-net_http"
+SRC_URI="https://github.com/lostisland/faraday-net_http/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( >=dev-ruby/faraday-2.5 )"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ':'./:" ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/faraday-net_http/metadata.xml b/dev-ruby/faraday-net_http/metadata.xml
new file mode 100644
index 000000000000..2f1389424781
--- /dev/null
+++ b/dev-ruby/faraday-net_http/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">lostisland/faraday-net_http</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/faraday-net_http_persistent/Manifest b/dev-ruby/faraday-net_http_persistent/Manifest
new file mode 100644
index 000000000000..8e18cf7b0e91
--- /dev/null
+++ b/dev-ruby/faraday-net_http_persistent/Manifest
@@ -0,0 +1,2 @@
+DIST faraday-net_http_persistent-1.2.0.tar.gz 6330 BLAKE2B ebd14e0035a86b2529e206704ae611ba82e35fc5296652dcb5b83b4aa9fac3b636a93baf45d7a47f3138550345920d15d87f0648b0107ed7264827b3a34d947f SHA512 4172b93aa72b5f9dcd9fa526789bc336b777fb6785753f0351410c58b8f3fe7e6f989c0812d71e1aa4f6449877cbed8908412321daefe95997483cf51158fa4c
+DIST faraday-net_http_persistent-2.1.0.tar.gz 6953 BLAKE2B 5b1c43fbd647c36315c24aa0ff12817edef9940de7f42edb59815b41ec5a5b15c137be6d9e10a07192144064e5a32fa8ab0d9fa1ec15c3e3ec064424b5f299a9 SHA512 3ad70814a231dedff56dd2891d834c6cd5f377e30bac4b31e6290097667d18b4eac5b44ad46b14fda873ee80e3b49e018337d60d666f0b32017fe0f4653d905a
diff --git a/dev-ruby/faraday-net_http_persistent/faraday-net_http_persistent-1.2.0.ebuild b/dev-ruby/faraday-net_http_persistent/faraday-net_http_persistent-1.2.0.ebuild
new file mode 100644
index 000000000000..009b56d59817
--- /dev/null
+++ b/dev-ruby/faraday-net_http_persistent/faraday-net_http_persistent-1.2.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Faraday adapter for NetHttpPersistent"
+HOMEPAGE="https://github.com/lostisland/faraday-net_http_persistent"
+SRC_URI="https://github.com/lostisland/faraday-net_http_persistent/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="test"
+
+ruby_add_depend "test? (
+ dev-ruby/faraday:1
+ >=dev-ruby/net-http-persistent-3.1
+ >=dev-ruby/webmock-3.4
+)"
+
+all_ruby_prepare() {
+ sed -i -e 's:_relative ":"./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -e '/simplecov/I s:^:#:' \
+ -e '3igem "faraday", "~> 1.0"' \
+ -i spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/faraday-net_http_persistent/faraday-net_http_persistent-2.1.0.ebuild b/dev-ruby/faraday-net_http_persistent/faraday-net_http_persistent-2.1.0.ebuild
new file mode 100644
index 000000000000..52c01b1eb35a
--- /dev/null
+++ b/dev-ruby/faraday-net_http_persistent/faraday-net_http_persistent-2.1.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Faraday adapter for NetHttpPersistent"
+HOMEPAGE="https://github.com/lostisland/faraday-net_http_persistent"
+SRC_URI="https://github.com/lostisland/faraday-net_http_persistent/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/faraday-2.5:2
+ dev-ruby/net-http-persistent:4
+"
+
+ruby_add_depend "test? (
+ >=dev-ruby/webmock-3.4
+)"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ':'./:" ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/faraday-net_http_persistent/metadata.xml b/dev-ruby/faraday-net_http_persistent/metadata.xml
new file mode 100644
index 000000000000..6d9431f28d73
--- /dev/null
+++ b/dev-ruby/faraday-net_http_persistent/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">lostisland/faraday-net_http_persistent</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/faraday-patron/Manifest b/dev-ruby/faraday-patron/Manifest
new file mode 100644
index 000000000000..a2c95761876c
--- /dev/null
+++ b/dev-ruby/faraday-patron/Manifest
@@ -0,0 +1 @@
+DIST faraday-patron-1.0.0.tar.gz 7939 BLAKE2B 303e2186c35cffef73fab73eecdb7affe83b3fb11c861ab082c3a60fb3adceb0f5a1fdd7d26f425a0449e349868b62363ae846bde5a194c66fba0b4a0a9c6d02 SHA512 66180ab2730280635a2560839e991e562bb6ff907e483a6e75557f6d7950b0b375955eea4034c8c4820267ac82d9f9dc0f0011c4ff6a526f3499b179935a7014
diff --git a/dev-ruby/faraday-patron/faraday-patron-1.0.0.ebuild b/dev-ruby/faraday-patron/faraday-patron-1.0.0.ebuild
new file mode 100644
index 000000000000..e2969f86e71c
--- /dev/null
+++ b/dev-ruby/faraday-patron/faraday-patron-1.0.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Faraday adapter for Patron"
+HOMEPAGE="https://github.com/lostisland/faraday-patron"
+SRC_URI="https://github.com/lostisland/faraday-patron/archive/v1.0.tar.gz -> ${P}.tar.gz"
+RUBY_S="faraday-patron-1.0"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/webmock dev-ruby/faraday:1 )"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ':'./:" ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '2igem "faraday", "~> 1.0"' spec/spec_helper.rb || die
+
+ # Avoid unpackaged, test-only, faraday-multipart for now.
+# sed -i -e '/multipart/ s:^:#:' spec/spec_helper.rb || die
+# sed -e '/should rewind files on retry/askip "faraday-multipart not packaged"' \
+# -i spec/faraday/retry/middleware_spec.rb || die
+}
diff --git a/dev-ruby/faraday-patron/metadata.xml b/dev-ruby/faraday-patron/metadata.xml
new file mode 100644
index 000000000000..aa569be281f6
--- /dev/null
+++ b/dev-ruby/faraday-patron/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">lostisland/faraday-patron</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/faraday-rack/Manifest b/dev-ruby/faraday-rack/Manifest
new file mode 100644
index 000000000000..19860f51a18e
--- /dev/null
+++ b/dev-ruby/faraday-rack/Manifest
@@ -0,0 +1 @@
+DIST faraday-rack-1.0.0.tar.gz 8042 BLAKE2B bfeb9c4ee12a8eae657f9ea8f8144232ddfaca758b30f2af1e3b179ca38afd35755499c8f524fb1673675f5eacc93ca6fb79a78e48b68da8db298b91d5ecfb67 SHA512 c2abe89a54c41dfa336976ec0f8c86f3a1912b5a950f139f0146a27273560fa74c97c5c35d05f80ce2349de96461b7e398c79cdc3471a8fe782406df03e184ec
diff --git a/dev-ruby/faraday-rack/faraday-rack-1.0.0.ebuild b/dev-ruby/faraday-rack/faraday-rack-1.0.0.ebuild
new file mode 100644
index 000000000000..629f4cce309a
--- /dev/null
+++ b/dev-ruby/faraday-rack/faraday-rack-1.0.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Faraday adapter for Rack"
+HOMEPAGE="https://github.com/lostisland/faraday-rack"
+SRC_URI="https://github.com/lostisland/faraday-rack/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/faraday:1 >=dev-ruby/rack-test-0.6 dev-ruby/webmock )"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ':'./:" ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '2igem "faraday", "~> 1.0"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/faraday-rack/metadata.xml b/dev-ruby/faraday-rack/metadata.xml
new file mode 100644
index 000000000000..938a9ca9875c
--- /dev/null
+++ b/dev-ruby/faraday-rack/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">lostisland/faraday-rack</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/faraday-retry/Manifest b/dev-ruby/faraday-retry/Manifest
new file mode 100644
index 000000000000..9ee5cf628131
--- /dev/null
+++ b/dev-ruby/faraday-retry/Manifest
@@ -0,0 +1,2 @@
+DIST faraday-retry-1.0.3.tar.gz 10732 BLAKE2B 4ab94c84242b1009221e7c44273a3dc3e07ce3303b776a42ac04c6adec5439ff83ad583e2b3670638d08aa5117ee897669dc4e8e3d13e3a84672cf9001580889 SHA512 d3d50c6ccca97b3c7f076a45f0be92c9d601a005328d09397d8ac56492688296cfc2e61327389e10d4989df957bc76be7c270b6cbae3b9b2b8023fc9da265698
+DIST faraday-retry-2.2.0.tar.gz 12498 BLAKE2B a6cd459b745b219ee004cda59e4b1d9199676968ff4e6ef1ba8676badb1c10614a09a30467356032be9054d276055047a78a23b41d65ba84444680151eec688a SHA512 d7dd1bb5e7dd9b0cb94c5565bfd3a1c6c3f67277e15c0fb85a3fbd422a9939be22037089c918a607ae1cb71c18069ea766ab0fc18c9ed2b24fac820d25a6f85a
diff --git a/dev-ruby/faraday-retry/faraday-retry-1.0.3.ebuild b/dev-ruby/faraday-retry/faraday-retry-1.0.3.ebuild
new file mode 100644
index 000000000000..5e6d1400785c
--- /dev/null
+++ b/dev-ruby/faraday-retry/faraday-retry-1.0.3.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Faraday adapter for Net::HTTP"
+HOMEPAGE="https://github.com/lostisland/faraday-retry"
+SRC_URI="https://github.com/lostisland/faraday-retry/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/faraday:1 )"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ':'./:" ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '2igem "faraday", "~> 1.0"' spec/spec_helper.rb || die
+
+ # Avoid unpackaged, test-only, faraday-multipart for now.
+ sed -i -e '/multipart/ s:^:#:' spec/spec_helper.rb || die
+ sed -e '/should rewind files on retry/askip "faraday-multipart not packaged"' \
+ -i spec/faraday/retry/middleware_spec.rb || die
+}
diff --git a/dev-ruby/faraday-retry/faraday-retry-2.2.0.ebuild b/dev-ruby/faraday-retry/faraday-retry-2.2.0.ebuild
new file mode 100644
index 000000000000..3a69aa71ce2d
--- /dev/null
+++ b/dev-ruby/faraday-retry/faraday-retry-2.2.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Faraday adapter for Net::HTTP"
+HOMEPAGE="https://github.com/lostisland/faraday-retry"
+SRC_URI="https://github.com/lostisland/faraday-retry/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/faraday:2"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ':'./:" ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '2igem "faraday", "~> 2.0"' spec/spec_helper.rb || die
+
+ # Avoid unpackaged, test-only, faraday-multipart for now.
+ sed -i -e '/multipart/ s:^:#:' spec/spec_helper.rb || die
+ sed -e '/should rewind files on retry/askip "faraday-multipart not packaged"' \
+ -i spec/faraday/retry/middleware_spec.rb || die
+}
diff --git a/dev-ruby/faraday-retry/metadata.xml b/dev-ruby/faraday-retry/metadata.xml
new file mode 100644
index 000000000000..9230a4c30cad
--- /dev/null
+++ b/dev-ruby/faraday-retry/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">lostisland/faraday-retry</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/faraday/Manifest b/dev-ruby/faraday/Manifest
index 75abb50908af..46172119406a 100644
--- a/dev-ruby/faraday/Manifest
+++ b/dev-ruby/faraday/Manifest
@@ -1 +1,12 @@
-DIST faraday-0.15.4.tar.gz 67196 BLAKE2B 4e64e834639a6e59c028ee19d72f51ea72fd6b3be5fc63b6fbbec25716dbd735e97d8a05a210dd1a57b740a1dcd76d30a39b59c7034cab8a531f8856dc132b14 SHA512 6d1a8c66bd6e2ce417ce504bf20ea89cf24c46c2b48491aba110d04f273448e0e8f0cf94a0dd5356a13876aa030d41bbfb80b95365ea4b212fd79d8db624128f
+DIST faraday-1.10.3.tar.gz 835008 BLAKE2B 5b2cff7877cd1e73dc52830aed67988eb5ed33a5ea1378d995f9e48bb69b8d20163a9faa69d65c9c99fddaa79e80bacee04b15141859dd81678a374b592557d1 SHA512 58b288a4d44424075f447fea982618db76b47f30e9fad69e5300b757f819bcf3cd48502b35851d186e103839538be0e52b7c222076f1399c3491335c2fe5b2c8
+DIST faraday-1.3.1.tar.gz 840638 BLAKE2B 284f7f612d3ab791a00ceab823be0246685fa38356bfeb6e01c12e81c7369c500719a6023dd929160ca598b41401b82cda0d8e9e363d0e7bdd91791742f8e68f SHA512 b89839e5d602911904ce009f52d011c124f84811e0676a3a524d22ea7084d99a971b6573dcde6d512bf933909cc461ef01cd82a8eeb9df581c56f17f31966b1b
+DIST faraday-1.4.3.tar.gz 838150 BLAKE2B 324788f73e450d386655e805163ffd6299c6d11453a7b034f55b549d3d4edcf3d2936b732e1e13fe4c38286f09b8c1aec7aa5ca42e2c2d6bd2f841a7b412e822 SHA512 7a7c370715c912434fcca5bae11543d24ef0990d24a8ab069f1bebdb534b8d1a9bc90c9625574e34f0ad9c4543391b24ce134a103ddc40b152ebd65d958c5517
+DIST faraday-1.5.1.tar.gz 836117 BLAKE2B 1522aa2bea9652549ebd3442edf2b3cee253627ffbf1afe96313d76d147dda5203e336963ef427c63356e122fffd462fb287389baa6c473188924493aab5dda8 SHA512 f210f6841d4642e55b1d09cb5a21ef684d0c6ad0afb121f8a6af9eb42066d58bf49e22234adfaa06fc03efe0d61fe2d9150d4adc5fc90fa9d5145e19f2d35729
+DIST faraday-1.6.0.tar.gz 835517 BLAKE2B ab0c1002a44045571c1d517958200173d9e76d575386e1176cdcbd356f2f39bb067e96385ff8ccc7b776eb4c1260e4587b43b19e002e6cc9ddfecc7865d91117 SHA512 67d47d4548d35532cc93b74c736b64ce952af4084f5c6c5357fe719f27309f64db35d939f53f51da6283f2fc324600976d5b0aff8413147d958099d1d515f6e2
+DIST faraday-1.9.3.tar.gz 830654 BLAKE2B d032df2cd7018f3df3b4e6e2c06dd24f19e6a409d7fab10116f667812969ee0e5f67434f42ea0f9c68d66ae0f31cc5bca1ef347d0c7f941d21998a0be957ecaf SHA512 1d4efd600515b890c4c5e06e1fd9042eb67275fc2c43f0df70c717de32d99eb445cb595f8fa2bd081cfe8fecb84c7d2a23a6aa24f992ad1de4f703369a69928c
+DIST faraday-2.7.10.tar.gz 833034 BLAKE2B dca3ef6a48aa4d14f1717344c5ec85b1e9caf7205eb7ae1be76a7a96bdee9fbef2d112c05f96f5625262d2783fc0e5e196343f67b371e480532c5e74f77b73eb SHA512 e1d2792f49df5679c16d3690a2475c56db9ae537bf53db4bb7cc256b41455d3db36d8d672eaf3f8a63fb2b04349d45dd4d32a2c194606fd795de51b1f79ead85
+DIST faraday-2.7.11.tar.gz 1029832 BLAKE2B fd5cc5a9fa0d8c40893600a89f71d906a9de0b800c9723d64e8dad5dac1bff4ec61ba2714347b38beeadafb42a29ed6fb217344ffdb122e137607ff140b6aed7 SHA512 eafbc0c88a94f03bfe659b10a86050d07e79c6c2fc81c16af9e2aad68bc5482748a4a41a0a7828b272a9e034cb77dab06e0a9a0e136a56c72b72ed97e5bad50c
+DIST faraday-2.7.12.tar.gz 1029923 BLAKE2B 267880c4d35284c1eb2f894e9c2803662cf5a901417b5a8c6934b8cef3fe842924d945b64b6617dcd017cbfdc3c9be19271c7c295e2c39518215aba3ab8304bb SHA512 e35aaa7096a77a3dc76aa0a2c262d6e83d894564474dd5b1414488615e54096e96fefa245d65804afa71fc22ef55748c18a32213ba6eaedb431246d5f8d382a1
+DIST faraday-2.8.0.tar.gz 1030670 BLAKE2B b0dc09bb4b760e1e194276709f6d2fdc391af0422f2eeba1f07e8824bb02346dcbd05dd701cb5bfbdebd32ae77bb75914955061b43e85f5e47843b11d40e3b2b SHA512 14aa19b24996140467e74abf35129d60781eefaf97fcc3eea7f83f9dd8db17318fbc57d263e1564f94cd9cd1a03129cef210b50190491e4e094092196c72aa67
+DIST faraday-2.8.1.tar.gz 1030720 BLAKE2B c52733fa00143882d43bf7e48dc6fd79621aad9b096f01eb0cc05bb0808bffff0c01282d3823d3b105554d953dc003d86f85c7ef9505a733214a4569764b45a6 SHA512 b2af1dbfcefb92969ae45138401c8cc9a8a1b10ca2bd93dc6aad66337aefbad4cf5700949fb821b93bdba46ec5c7c61b83dcc934b5797a5516c53aab50a287cb
+DIST faraday-2.9.0.tar.gz 1030759 BLAKE2B 450ca700ccf624115aaa6c5ffc873e926884ff27a520aecd890f7156f20f829a802cece461327205930dfc53d06fd837adb1bb989e9603f369f61606640acddf SHA512 f534cd0903bc5ee83a355b09c886dfdf593b842fc85863877c9e0217ba797b027acce6d36674579053ac24e180d71afe4d879cb52cadd1da803b609f2da407c3
diff --git a/dev-ruby/faraday/faraday-0.15.4.ebuild b/dev-ruby/faraday/faraday-0.15.4.ebuild
deleted file mode 100644
index a0fa609575de..000000000000
--- a/dev-ruby/faraday/faraday-0.15.4.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="HTTP/REST API client library with pluggable components"
-HOMEPAGE="https://github.com/lostisland/faraday"
-SRC_URI="https://github.com/lostisland/faraday/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE=""
-
-DEPEND+=" test? ( sys-process/lsof )"
-
-ruby_add_rdepend ">=dev-ruby/multipart-post-1.2.0 <dev-ruby/multipart-post-3"
-ruby_add_bdepend "test? (
- >=dev-ruby/test-unit-2.4
- dev-ruby/httpclient
- dev-ruby/rack-test
- dev-ruby/sinatra
- dev-ruby/net-http-persistent >=dev-ruby/connection_pool-2.2.2
- dev-ruby/patron
- )"
-
-all_ruby_prepare() {
- # Remove bundler support.
- rm Gemfile || die
- sed -i -e '/[Bb]undler/d ; 1irequire "yaml"' Rakefile test/helper.rb || die
- sed -i -e '/bundler/,/^fi/ s:^:#:' script/test || die
-
- # Remove simplecov and coveralls support, not needed to run tests.
- sed -i -e '/simplecov/,/^end/ s:^:#:' \
- test/helper.rb || die
-
- # Remove tests for adapters that are not packaged for Gentoo.
- rm test/adapters/em_http_test.rb test/adapters/em_synchrony_test.rb test/adapters/excon_test.rb test/adapters/typhoeus_test.rb || die
-
- # Remove tests against live services
- sed -i -e '/test_dynamic_no_proxy/askip "live network test"' test/connection_test.rb || die
-
- # The proxy server is already killed, may be OS X vs Linux issue.
- sed -i -e '138 s/^/#/' script/test || die
-
- sed -i -e '/git ls-files/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_prepare() {
- # Make sure the test scripts use the right ruby interpreter
- sed -i -e 's:ruby:'${RUBY}':' script/* || die
-}
-
-each_ruby_test() {
- MT_NO_PLUGINS=true each_fakegem_test
-
- # Sleep some time to allow the sinatra test server to die
- einfo "Waiting for test server to stop"
- sleep 10
-}
diff --git a/dev-ruby/faraday/faraday-1.10.3.ebuild b/dev-ruby/faraday/faraday-1.10.3.ebuild
new file mode 100644
index 000000000000..d4d70fb624d6
--- /dev/null
+++ b/dev-ruby/faraday/faraday-1.10.3.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="spec"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="HTTP/REST API client library with pluggable components"
+HOMEPAGE="https://github.com/lostisland/faraday"
+SRC_URI="https://github.com/lostisland/faraday/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+
+DEPEND+=" test? ( sys-process/lsof )"
+
+ruby_add_rdepend "
+ dev-ruby/faraday-httpclient:1
+ dev-ruby/faraday-multipart:1
+ dev-ruby/faraday-net_http_persistent:1
+ dev-ruby/faraday-net_http:1
+ dev-ruby/faraday-patron:1
+ dev-ruby/faraday-rack:1
+ dev-ruby/faraday-retry:1
+ >=dev-ruby/multipart-post-1.2.0 <dev-ruby/multipart-post-3
+ >=dev-ruby/ruby2_keywords-0.0.4
+"
+ruby_add_bdepend "test? (
+ >=dev-ruby/test-unit-2.4
+ >=dev-ruby/connection_pool-2.2.2
+ dev-ruby/patron
+ dev-ruby/rack
+ >=dev-ruby/rack-test-0.6
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler support.
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d ; 1irequire "yaml"' Rakefile || die
+ sed -i -e '/bundler/,/^fi/ s:^:#:' script/test || die
+ # Avoid loading all lib files since some of them require unpackaged dependencies.
+ sed -e '/[Cc]overall/ s:^:#:' \
+ -e '/lib\/\*\*/ s:^:#:' \
+ -e '/simplecov/ s:^:#:' \
+ -e '/SimpleCov/,/end/ s:^:#:' \
+ -e '/pry/ s:^:#:' \
+ -e '3igem "faraday-net_http", "~> 1.0"; gem "faraday-net_http_persistent", "~> 1.0"' \
+ -i spec/spec_helper.rb || die
+
+ sed -e '/git ls-files/ s:^:#:' \
+ -e "s:_relative ': './:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid multipart tests that require an unpackaged dependency
+ # that appears to be no longer maintained.
+ rm -f spec/faraday/request/multipart_spec.rb || die
+ sed -e '/multipart_parser/ s:^:#:' \
+ -i spec/support/helper_methods.rb || die
+
+ # Explicitly require the JSON code, these requires are probably
+ # implicit in other code that we remove.
+ sed -e '3irequire "faraday/request/json"' -i spec/faraday/request/json_spec.rb || die
+ sed -e '3irequire "faraday/response/json"' -i spec/faraday/response/json_spec.rb || die
+
+ # Remove specs for unpackaged adapters
+ rm -f spec/faraday/adapter/{em_http,em_synchrony,excon,httpclient,typhoeus}_spec.rb || die
+
+ # Remove unpackaged adapters. These packages where part of earlier
+ # faraday versions but since we do not package their dependencies
+ # they never worked on a pure Gentoo install. We are taking this
+ # approach so we can add ruby32 compatibility to faraday:1 for
+ # those adapters that we do support.
+ sed -e '/require.*\(em_http\|em_synchrony\|excon\)/ s:^:#:' \
+ -i lib/faraday.rb || die
+ sed -e '/\(em_http\|em_synchrony\|excon\)/ s:^:#:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Make this adapter optional since it comes with a long list of
+ # dependencies.
+ if ! has_version "dev-ruby/typhoeus:1" ; then
+ rm -f spec/faraday/adapter/typhoeus_spec.rb || die
+ fi
+
+ # Avoid a spec that gets tripped up by recent rack encoding changes.
+ sed -e '/encodes rack compat/ s/it/xit/' -i spec/faraday/params_encoders/nested_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Make sure the test scripts use the right ruby interpreter
+ sed -i -e 's:ruby:'${RUBY}':' script/* || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true each_fakegem_test
+
+ # Sleep some time to allow the sinatra test server to die
+ einfo "Waiting for test server to stop"
+ sleep 10
+}
diff --git a/dev-ruby/faraday/faraday-1.3.1.ebuild b/dev-ruby/faraday/faraday-1.3.1.ebuild
new file mode 100644
index 000000000000..b746494a194f
--- /dev/null
+++ b/dev-ruby/faraday/faraday-1.3.1.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2022 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="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="spec"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="HTTP/REST API client library with pluggable components"
+HOMEPAGE="https://github.com/lostisland/faraday"
+SRC_URI="https://github.com/lostisland/faraday/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+DEPEND+=" test? ( sys-process/lsof )"
+
+ruby_add_rdepend "
+ dev-ruby/faraday-net_http:1
+ >=dev-ruby/multipart-post-1.2.0 <dev-ruby/multipart-post-3
+ dev-ruby/ruby2_keywords
+"
+ruby_add_bdepend "test? (
+ >=dev-ruby/test-unit-2.4
+ >=dev-ruby/connection_pool-2.2.2
+ >=dev-ruby/httpclient-2.2
+ >=dev-ruby/net-http-persistent-3.0
+ >=dev-ruby/patron-0.4.2
+ dev-ruby/rack
+ >=dev-ruby/rack-test-0.6
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler support.
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d ; 1irequire "yaml"' Rakefile || die
+ sed -i -e '/bundler/,/^fi/ s:^:#:' script/test || die
+ # Avoid loading all lib files since some of them require unpackaged dependencies.
+ sed -e '/[Cc]overall/ s:^:#:' \
+ -e '/lib\/\*\*/ s:^:#:' \
+ -e '/simplecov/ s:^:#:' \
+ -e '/SimpleCov/,/end/ s:^:#:' \
+ -e '/pry/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+
+ sed -e '/git ls-files/ s:^:#:' \
+ -e "s:_relative ': './:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid multipart tests that require an unpackaged dependency
+ # that appears to be no longer maintained.
+ rm -f spec/faraday/request/multipart_spec.rb || die
+ sed -e '/multipart_parser/ s:^:#:' \
+ -i spec/support/helper_methods.rb || die
+
+ # Remove specs for unpackaged adapters
+ rm -f spec/faraday/adapter/{em_http,em_synchrony,excon}_spec.rb || die
+
+ # Make this adapter optional since it comes with a long list of
+ # dependencies.
+ if ! has_version "dev-ruby/typhoeus:1" ; then
+ rm -f spec/faraday/adapter/typhoeus_spec.rb || die
+ fi
+}
+
+each_ruby_prepare() {
+ # Make sure the test scripts use the right ruby interpreter
+ sed -i -e 's:ruby:'${RUBY}':' script/* || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true each_fakegem_test
+
+ # Sleep some time to allow the sinatra test server to die
+ einfo "Waiting for test server to stop"
+ sleep 10
+}
diff --git a/dev-ruby/faraday/faraday-1.4.3-r1.ebuild b/dev-ruby/faraday/faraday-1.4.3-r1.ebuild
new file mode 100644
index 000000000000..27ea533aa079
--- /dev/null
+++ b/dev-ruby/faraday/faraday-1.4.3-r1.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="spec"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="HTTP/REST API client library with pluggable components"
+HOMEPAGE="https://github.com/lostisland/faraday"
+SRC_URI="https://github.com/lostisland/faraday/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+
+DEPEND+=" test? ( sys-process/lsof )"
+
+ruby_add_rdepend "
+ dev-ruby/faraday-net_http_persistent:1
+ dev-ruby/faraday-net_http:1
+ >=dev-ruby/multipart-post-1.2.0 <dev-ruby/multipart-post-3
+ dev-ruby/ruby2_keywords
+"
+ruby_add_bdepend "test? (
+ >=dev-ruby/test-unit-2.4
+ >=dev-ruby/connection_pool-2.2.2
+ >=dev-ruby/patron-0.4.2
+ dev-ruby/rack
+ >=dev-ruby/rack-test-0.6
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler support.
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d ; 1irequire "yaml"' Rakefile || die
+ sed -i -e '/bundler/,/^fi/ s:^:#:' script/test || die
+ # Avoid loading all lib files since some of them require unpackaged dependencies.
+ sed -e '/[Cc]overall/ s:^:#:' \
+ -e '/lib\/\*\*/ s:^:#:' \
+ -e '/simplecov/ s:^:#:' \
+ -e '/SimpleCov/,/end/ s:^:#:' \
+ -e '/pry/ s:^:#:' \
+ -e '3igem "faraday-net_http", "~> 1.0"; gem "faraday-net_http_persistent", "~> 1.0"' \
+ -i spec/spec_helper.rb || die
+
+ sed -e '/git ls-files/ s:^:#:' \
+ -e "s:_relative ': './:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid multipart tests that require an unpackaged dependency
+ # that appears to be no longer maintained.
+ rm -f spec/faraday/request/multipart_spec.rb || die
+ sed -e '/multipart_parser/ s:^:#:' \
+ -i spec/support/helper_methods.rb || die
+
+ # Remove specs for unpackaged adapters
+ rm -f spec/faraday/adapter/{em_http,em_synchrony,excon,httpclient}_spec.rb || die
+
+ # Remove unpackaged adapters. These packages where part of earlier
+ # faraday versions but since we do not package their dependencies
+ # they never worked on a pure Gentoo install. We are taking this
+ # approach so we can add ruby32 compatibility to faraday:1 for
+ # those adapters that we do support.
+ sed -e '/require.*\(em_http\|em_synchrony\|excon\)/ s:^:#:' \
+ -i lib/faraday.rb || die
+ sed -e '/\(em_http\|em_synchrony\|excon\)/ s:^:#:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Make this adapter optional since it comes with a long list of
+ # dependencies.
+ if ! has_version "dev-ruby/typhoeus:1" ; then
+ rm -f spec/faraday/adapter/typhoeus_spec.rb || die
+ fi
+
+ # Avoid a spec that gets tripped up by recent rack encoding changes.
+ sed -e '/encodes rack compat/ s/it/xit/' -i spec/faraday/params_encoders/nested_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Make sure the test scripts use the right ruby interpreter
+ sed -i -e 's:ruby:'${RUBY}':' script/* || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true each_fakegem_test
+
+ # Sleep some time to allow the sinatra test server to die
+ einfo "Waiting for test server to stop"
+ sleep 10
+}
diff --git a/dev-ruby/faraday/faraday-1.5.1.ebuild b/dev-ruby/faraday/faraday-1.5.1.ebuild
new file mode 100644
index 000000000000..d701aa7ece71
--- /dev/null
+++ b/dev-ruby/faraday/faraday-1.5.1.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="spec"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="HTTP/REST API client library with pluggable components"
+HOMEPAGE="https://github.com/lostisland/faraday"
+SRC_URI="https://github.com/lostisland/faraday/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+
+DEPEND+=" test? ( sys-process/lsof )"
+
+ruby_add_rdepend "
+ dev-ruby/faraday-httpclient:1
+ dev-ruby/faraday-net_http_persistent:1
+ dev-ruby/faraday-net_http:1
+ dev-ruby/faraday-patron:1
+ >=dev-ruby/multipart-post-1.2.0 <dev-ruby/multipart-post-3
+ dev-ruby/ruby2_keywords
+"
+ruby_add_bdepend "test? (
+ >=dev-ruby/test-unit-2.4
+ >=dev-ruby/connection_pool-2.2.2
+ dev-ruby/rack
+ >=dev-ruby/rack-test-0.6
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler support.
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d ; 1irequire "yaml"' Rakefile || die
+ sed -i -e '/bundler/,/^fi/ s:^:#:' script/test || die
+ # Avoid loading all lib files since some of them require unpackaged dependencies.
+ sed -e '/[Cc]overall/ s:^:#:' \
+ -e '/lib\/\*\*/ s:^:#:' \
+ -e '/simplecov/ s:^:#:' \
+ -e '/SimpleCov/,/end/ s:^:#:' \
+ -e '/pry/ s:^:#:' \
+ -e '3igem "faraday-net_http", "~> 1.0"; gem "faraday-net_http_persistent", "~> 1.0"' \
+ -i spec/spec_helper.rb || die
+
+ sed -e '/git ls-files/ s:^:#:' \
+ -e "s:_relative ': './:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid multipart tests that require an unpackaged dependency
+ # that appears to be no longer maintained.
+ rm -f spec/faraday/request/multipart_spec.rb || die
+ sed -e '/multipart_parser/ s:^:#:' \
+ -i spec/support/helper_methods.rb || die
+
+ # Remove specs for unpackaged adapters
+ rm -f spec/faraday/adapter/{em_http,em_synchrony,excon,httpclient}_spec.rb || die
+
+ # Remove unpackaged adapters. These packages where part of earlier
+ # faraday versions but since we do not package their dependencies
+ # they never worked on a pure Gentoo install. We are taking this
+ # approach so we can add ruby32 compatibility to faraday:1 for
+ # those adapters that we do support.
+ sed -e '/require.*\(em_http\|em_synchrony\|excon\)/ s:^:#:' \
+ -i lib/faraday.rb || die
+ sed -e '/\(em_http\|em_synchrony\|excon\)/ s:^:#:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Make this adapter optional since it comes with a long list of
+ # dependencies.
+ if ! has_version "dev-ruby/typhoeus:1" ; then
+ rm -f spec/faraday/adapter/typhoeus_spec.rb || die
+ fi
+
+ # Avoid a spec that gets tripped up by recent rack encoding changes.
+ sed -e '/encodes rack compat/ s/it/xit/' -i spec/faraday/params_encoders/nested_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Make sure the test scripts use the right ruby interpreter
+ sed -i -e 's:ruby:'${RUBY}':' script/* || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true each_fakegem_test
+
+ # Sleep some time to allow the sinatra test server to die
+ einfo "Waiting for test server to stop"
+ sleep 10
+}
diff --git a/dev-ruby/faraday/faraday-1.6.0.ebuild b/dev-ruby/faraday/faraday-1.6.0.ebuild
new file mode 100644
index 000000000000..c8587b35631c
--- /dev/null
+++ b/dev-ruby/faraday/faraday-1.6.0.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="spec"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="HTTP/REST API client library with pluggable components"
+HOMEPAGE="https://github.com/lostisland/faraday"
+SRC_URI="https://github.com/lostisland/faraday/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+
+DEPEND+=" test? ( sys-process/lsof )"
+
+ruby_add_rdepend "
+ dev-ruby/faraday-httpclient:1
+ dev-ruby/faraday-net_http_persistent:1
+ dev-ruby/faraday-net_http:1
+ dev-ruby/faraday-patron:1
+ dev-ruby/faraday-rack:1
+ >=dev-ruby/multipart-post-1.2.0 <dev-ruby/multipart-post-3
+ >=dev-ruby/ruby2_keywords-0.0.4
+"
+ruby_add_bdepend "test? (
+ >=dev-ruby/test-unit-2.4
+ >=dev-ruby/connection_pool-2.2.2
+ dev-ruby/rack
+ >=dev-ruby/rack-test-0.6
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler support.
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d ; 1irequire "yaml"' Rakefile || die
+ sed -i -e '/bundler/,/^fi/ s:^:#:' script/test || die
+ # Avoid loading all lib files since some of them require unpackaged dependencies.
+ sed -e '/[Cc]overall/ s:^:#:' \
+ -e '/lib\/\*\*/ s:^:#:' \
+ -e '/simplecov/ s:^:#:' \
+ -e '/SimpleCov/,/end/ s:^:#:' \
+ -e '/pry/ s:^:#:' \
+ -e '3igem "faraday-net_http", "~> 1.0"; gem "faraday-net_http_persistent", "~> 1.0"' \
+ -i spec/spec_helper.rb || die
+
+ sed -e '/git ls-files/ s:^:#:' \
+ -e "s:_relative ': './:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid multipart tests that require an unpackaged dependency
+ # that appears to be no longer maintained.
+ rm -f spec/faraday/request/multipart_spec.rb || die
+ sed -e '/multipart_parser/ s:^:#:' \
+ -i spec/support/helper_methods.rb || die
+
+ # Remove specs for unpackaged adapters
+ rm -f spec/faraday/adapter/{em_http,em_synchrony,excon,httpclient}_spec.rb || die
+
+ # Remove unpackaged adapters. These packages where part of earlier
+ # faraday versions but since we do not package their dependencies
+ # they never worked on a pure Gentoo install. We are taking this
+ # approach so we can add ruby32 compatibility to faraday:1 for
+ # those adapters that we do support.
+ sed -e '/require.*\(em_http\|em_synchrony\|excon\)/ s:^:#:' \
+ -i lib/faraday.rb || die
+ sed -e '/\(em_http\|em_synchrony\|excon\)/ s:^:#:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Make this adapter optional since it comes with a long list of
+ # dependencies.
+ if ! has_version "dev-ruby/typhoeus:1" ; then
+ rm -f spec/faraday/adapter/typhoeus_spec.rb || die
+ fi
+
+ # Avoid a spec that gets tripped up by recent rack encoding changes.
+ sed -e '/encodes rack compat/ s/it/xit/' -i spec/faraday/params_encoders/nested_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Make sure the test scripts use the right ruby interpreter
+ sed -i -e 's:ruby:'${RUBY}':' script/* || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true each_fakegem_test
+
+ # Sleep some time to allow the sinatra test server to die
+ einfo "Waiting for test server to stop"
+ sleep 10
+}
diff --git a/dev-ruby/faraday/faraday-1.9.3.ebuild b/dev-ruby/faraday/faraday-1.9.3.ebuild
new file mode 100644
index 000000000000..a6b02c760bc9
--- /dev/null
+++ b/dev-ruby/faraday/faraday-1.9.3.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="spec"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="HTTP/REST API client library with pluggable components"
+HOMEPAGE="https://github.com/lostisland/faraday"
+SRC_URI="https://github.com/lostisland/faraday/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+
+DEPEND+=" test? ( sys-process/lsof )"
+
+ruby_add_rdepend "
+ dev-ruby/faraday-httpclient:1
+ dev-ruby/faraday-multipart:1
+ dev-ruby/faraday-net_http_persistent:1
+ dev-ruby/faraday-net_http:1
+ dev-ruby/faraday-patron:1
+ dev-ruby/faraday-rack:1
+ dev-ruby/faraday-retry:1
+ >=dev-ruby/multipart-post-1.2.0 <dev-ruby/multipart-post-3
+ >=dev-ruby/ruby2_keywords-0.0.4
+"
+ruby_add_bdepend "test? (
+ >=dev-ruby/test-unit-2.4
+ >=dev-ruby/connection_pool-2.2.2
+ dev-ruby/patron
+ dev-ruby/rack
+ >=dev-ruby/rack-test-0.6
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler support.
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d ; 1irequire "yaml"' Rakefile || die
+ sed -i -e '/bundler/,/^fi/ s:^:#:' script/test || die
+ # Avoid loading all lib files since some of them require unpackaged dependencies.
+ sed -e '/[Cc]overall/ s:^:#:' \
+ -e '/lib\/\*\*/ s:^:#:' \
+ -e '/simplecov/ s:^:#:' \
+ -e '/SimpleCov/,/end/ s:^:#:' \
+ -e '/pry/ s:^:#:' \
+ -e '3igem "faraday-net_http", "~> 1.0"; gem "faraday-net_http_persistent", "~> 1.0"' \
+ -i spec/spec_helper.rb || die
+
+ sed -e '/git ls-files/ s:^:#:' \
+ -e "s:_relative ': './:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid multipart tests that require an unpackaged dependency
+ # that appears to be no longer maintained.
+ rm -f spec/faraday/request/multipart_spec.rb || die
+ sed -e '/multipart_parser/ s:^:#:' \
+ -i spec/support/helper_methods.rb || die
+
+ # Remove specs for unpackaged adapters
+ rm -f spec/faraday/adapter/{em_http,em_synchrony,excon,httpclient}_spec.rb || die
+
+ # Remove unpackaged adapters. These packages where part of earlier
+ # faraday versions but since we do not package their dependencies
+ # they never worked on a pure Gentoo install. We are taking this
+ # approach so we can add ruby32 compatibility to faraday:1 for
+ # those adapters that we do support.
+ sed -e '/require.*\(em_http\|em_synchrony\|excon\)/ s:^:#:' \
+ -i lib/faraday.rb || die
+ sed -e '/\(em_http\|em_synchrony\|excon\)/ s:^:#:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Make this adapter optional since it comes with a long list of
+ # dependencies.
+ if ! has_version "dev-ruby/typhoeus:1" ; then
+ rm -f spec/faraday/adapter/typhoeus_spec.rb || die
+ fi
+
+ # Avoid a spec that gets tripped up by recent rack encoding changes.
+ sed -e '/encodes rack compat/ s/it/xit/' -i spec/faraday/params_encoders/nested_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Make sure the test scripts use the right ruby interpreter
+ sed -i -e 's:ruby:'${RUBY}':' script/* || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true each_fakegem_test
+
+ # Sleep some time to allow the sinatra test server to die
+ einfo "Waiting for test server to stop"
+ sleep 10
+}
diff --git a/dev-ruby/faraday/faraday-2.7.10.ebuild b/dev-ruby/faraday/faraday-2.7.10.ebuild
new file mode 100644
index 000000000000..3b3e7542cba1
--- /dev/null
+++ b/dev-ruby/faraday/faraday-2.7.10.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="spec"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="HTTP/REST API client library with pluggable components"
+HOMEPAGE="https://github.com/lostisland/faraday"
+SRC_URI="https://github.com/lostisland/faraday/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+DEPEND+=" test? ( sys-process/lsof )"
+
+ruby_add_rdepend "
+ || ( =dev-ruby/faraday-net_http-3.0* dev-ruby/faraday-net_http:2 )
+ >=dev-ruby/ruby2_keywords-0.0.4
+"
+ruby_add_bdepend "test? (
+ >=dev-ruby/test-unit-2.4
+ >=dev-ruby/connection_pool-2.2.2
+ dev-ruby/rack:2.2
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler support.
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d ; 1irequire "yaml"' Rakefile || die
+ # Avoid loading all lib files since some of them require unpackaged dependencies.
+ sed -e '/[Cc]overall/ s:^:#:' \
+ -e '/lib\/\*\*/ s:^:#:' \
+ -e '/simplecov/ s:^:#:' \
+ -e '/SimpleCov/,/end/ s:^:#:' \
+ -e '/pry/ s:^:#:' \
+ -e '3igem "rack", "~> 2.2"' \
+ -i spec/spec_helper.rb || die
+
+ sed -e '/git ls-files/ s:^:#:' \
+ -e "s:_relative ': './:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true each_fakegem_test
+}
diff --git a/dev-ruby/faraday/faraday-2.7.11.ebuild b/dev-ruby/faraday/faraday-2.7.11.ebuild
new file mode 100644
index 000000000000..a1d63144ce57
--- /dev/null
+++ b/dev-ruby/faraday/faraday-2.7.11.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="spec"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="HTTP/REST API client library with pluggable components"
+HOMEPAGE="https://github.com/lostisland/faraday"
+SRC_URI="https://github.com/lostisland/faraday/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+DEPEND+=" test? ( sys-process/lsof )"
+
+ruby_add_rdepend "
+ dev-ruby/base64
+ || ( =dev-ruby/faraday-net_http-3.0* dev-ruby/faraday-net_http:2 )
+ >=dev-ruby/ruby2_keywords-0.0.4
+"
+ruby_add_bdepend "test? (
+ >=dev-ruby/test-unit-2.4
+ >=dev-ruby/connection_pool-2.2.2
+ dev-ruby/rack:2.2
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler support.
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d ; 1irequire "yaml"' Rakefile || die
+ # Avoid loading all lib files since some of them require unpackaged dependencies.
+ sed -e '/[Cc]overall/ s:^:#:' \
+ -e '/lib\/\*\*/ s:^:#:' \
+ -e '/simplecov/ s:^:#:' \
+ -e '/SimpleCov/,/end/ s:^:#:' \
+ -e '/pry/ s:^:#:' \
+ -e '3igem "rack", "~> 2.2"' \
+ -i spec/spec_helper.rb || die
+
+ sed -e '/git ls-files/ s:^:#:' \
+ -e "s:_relative ': './:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true each_fakegem_test
+}
diff --git a/dev-ruby/faraday/faraday-2.7.12.ebuild b/dev-ruby/faraday/faraday-2.7.12.ebuild
new file mode 100644
index 000000000000..ce1849ffb01a
--- /dev/null
+++ b/dev-ruby/faraday/faraday-2.7.12.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="spec"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="HTTP/REST API client library with pluggable components"
+HOMEPAGE="https://github.com/lostisland/faraday"
+SRC_URI="https://github.com/lostisland/faraday/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+DEPEND+=" test? ( sys-process/lsof )"
+
+ruby_add_rdepend "
+ dev-ruby/base64
+ || ( =dev-ruby/faraday-net_http-3.0* dev-ruby/faraday-net_http:2 )
+ >=dev-ruby/ruby2_keywords-0.0.4
+"
+ruby_add_bdepend "test? (
+ >=dev-ruby/test-unit-2.4
+ >=dev-ruby/connection_pool-2.2.2
+ dev-ruby/rack:2.2
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler support.
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d ; 1irequire "yaml"' Rakefile || die
+ # Avoid loading all lib files since some of them require unpackaged dependencies.
+ sed -e '/[Cc]overall/ s:^:#:' \
+ -e '/lib\/\*\*/ s:^:#:' \
+ -e '/simplecov/ s:^:#:' \
+ -e '/SimpleCov/,/end/ s:^:#:' \
+ -e '/pry/ s:^:#:' \
+ -e '3igem "rack", "~> 2.2"' \
+ -i spec/spec_helper.rb || die
+
+ sed -e '/git ls-files/ s:^:#:' \
+ -e "s:_relative ': './:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true each_fakegem_test
+}
diff --git a/dev-ruby/faraday/faraday-2.8.0.ebuild b/dev-ruby/faraday/faraday-2.8.0.ebuild
new file mode 100644
index 000000000000..a1d63144ce57
--- /dev/null
+++ b/dev-ruby/faraday/faraday-2.8.0.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="spec"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="HTTP/REST API client library with pluggable components"
+HOMEPAGE="https://github.com/lostisland/faraday"
+SRC_URI="https://github.com/lostisland/faraday/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+DEPEND+=" test? ( sys-process/lsof )"
+
+ruby_add_rdepend "
+ dev-ruby/base64
+ || ( =dev-ruby/faraday-net_http-3.0* dev-ruby/faraday-net_http:2 )
+ >=dev-ruby/ruby2_keywords-0.0.4
+"
+ruby_add_bdepend "test? (
+ >=dev-ruby/test-unit-2.4
+ >=dev-ruby/connection_pool-2.2.2
+ dev-ruby/rack:2.2
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler support.
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d ; 1irequire "yaml"' Rakefile || die
+ # Avoid loading all lib files since some of them require unpackaged dependencies.
+ sed -e '/[Cc]overall/ s:^:#:' \
+ -e '/lib\/\*\*/ s:^:#:' \
+ -e '/simplecov/ s:^:#:' \
+ -e '/SimpleCov/,/end/ s:^:#:' \
+ -e '/pry/ s:^:#:' \
+ -e '3igem "rack", "~> 2.2"' \
+ -i spec/spec_helper.rb || die
+
+ sed -e '/git ls-files/ s:^:#:' \
+ -e "s:_relative ': './:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true each_fakegem_test
+}
diff --git a/dev-ruby/faraday/faraday-2.8.1.ebuild b/dev-ruby/faraday/faraday-2.8.1.ebuild
new file mode 100644
index 000000000000..a1d63144ce57
--- /dev/null
+++ b/dev-ruby/faraday/faraday-2.8.1.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="spec"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="HTTP/REST API client library with pluggable components"
+HOMEPAGE="https://github.com/lostisland/faraday"
+SRC_URI="https://github.com/lostisland/faraday/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+DEPEND+=" test? ( sys-process/lsof )"
+
+ruby_add_rdepend "
+ dev-ruby/base64
+ || ( =dev-ruby/faraday-net_http-3.0* dev-ruby/faraday-net_http:2 )
+ >=dev-ruby/ruby2_keywords-0.0.4
+"
+ruby_add_bdepend "test? (
+ >=dev-ruby/test-unit-2.4
+ >=dev-ruby/connection_pool-2.2.2
+ dev-ruby/rack:2.2
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler support.
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d ; 1irequire "yaml"' Rakefile || die
+ # Avoid loading all lib files since some of them require unpackaged dependencies.
+ sed -e '/[Cc]overall/ s:^:#:' \
+ -e '/lib\/\*\*/ s:^:#:' \
+ -e '/simplecov/ s:^:#:' \
+ -e '/SimpleCov/,/end/ s:^:#:' \
+ -e '/pry/ s:^:#:' \
+ -e '3igem "rack", "~> 2.2"' \
+ -i spec/spec_helper.rb || die
+
+ sed -e '/git ls-files/ s:^:#:' \
+ -e "s:_relative ': './:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true each_fakegem_test
+}
diff --git a/dev-ruby/faraday/faraday-2.9.0.ebuild b/dev-ruby/faraday/faraday-2.9.0.ebuild
new file mode 100644
index 000000000000..b5eb66be70ef
--- /dev/null
+++ b/dev-ruby/faraday/faraday-2.9.0.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="spec"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="HTTP/REST API client library with pluggable components"
+HOMEPAGE="https://github.com/lostisland/faraday"
+SRC_URI="https://github.com/lostisland/faraday/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="test"
+
+DEPEND+=" test? ( sys-process/lsof )"
+
+ruby_add_rdepend "
+ dev-ruby/base64
+ || ( <dev-ruby/faraday-net_http-3.2:3 dev-ruby/faraday-net_http:2 )
+ >=dev-ruby/ruby2_keywords-0.0.4
+"
+ruby_add_bdepend "test? (
+ >=dev-ruby/test-unit-2.4
+ >=dev-ruby/connection_pool-2.2.2
+ dev-ruby/rack:2.2
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler support.
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d ; 1irequire "yaml"' Rakefile || die
+ # Avoid loading all lib files since some of them require unpackaged dependencies.
+ sed -e '/[Cc]overall/ s:^:#:' \
+ -e '/lib\/\*\*/ s:^:#:' \
+ -e '/simplecov/ s:^:#:' \
+ -e '/SimpleCov/,/end/ s:^:#:' \
+ -e '/pry/ s:^:#:' \
+ -e '3igem "rack", "~> 2.2"' \
+ -i spec/spec_helper.rb || die
+
+ sed -e '/git ls-files/ s:^:#:' \
+ -e "s:_relative ': './:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true each_fakegem_test
+}
diff --git a/dev-ruby/faraday/metadata.xml b/dev-ruby/faraday/metadata.xml
index fcf632216be2..0d5dd4f326d4 100644
--- a/dev-ruby/faraday/metadata.xml
+++ b/dev-ruby/faraday/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/faraday_middleware-multi_json/faraday_middleware-multi_json-0.0.6-r1.ebuild b/dev-ruby/faraday_middleware-multi_json/faraday_middleware-multi_json-0.0.6-r1.ebuild
deleted file mode 100644
index 59c5ce21b765..000000000000
--- a/dev-ruby/faraday_middleware-multi_json/faraday_middleware-multi_json-0.0.6-r1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Response JSON parser using MultiJson and FaradayMiddleware"
-HOMEPAGE="https://github.com/denro/faraday_middleware-multi_json"
-SRC_URI="${HOMEPAGE}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/faraday_middleware
- dev-ruby/multi_json"
-
-all_ruby_prepare() {
- # Remove bundler support.
- rm -f Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
-
- # Avoid unneeded dependency on git.
- sed -i -e '/files/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/faraday_middleware-multi_json/faraday_middleware-multi_json-0.0.6-r3.ebuild b/dev-ruby/faraday_middleware-multi_json/faraday_middleware-multi_json-0.0.6-r3.ebuild
new file mode 100644
index 000000000000..6d9a7b3d4a40
--- /dev/null
+++ b/dev-ruby/faraday_middleware-multi_json/faraday_middleware-multi_json-0.0.6-r3.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Response JSON parser using MultiJson and FaradayMiddleware"
+HOMEPAGE="https://github.com/denro/faraday_middleware-multi_json"
+SRC_URI="https://github.com/denro/faraday_middleware-multi_json/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/faraday_middleware:*
+ dev-ruby/multi_json"
+
+all_ruby_prepare() {
+ # Remove bundler support.
+ rm -f Gemfile || die
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+
+ # Avoid unneeded dependency on git.
+ sed -i -e '/files/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/faraday_middleware-multi_json/metadata.xml b/dev-ruby/faraday_middleware-multi_json/metadata.xml
index 14c7e61b4c60..08eba1adae61 100644
--- a/dev-ruby/faraday_middleware-multi_json/metadata.xml
+++ b/dev-ruby/faraday_middleware-multi_json/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
diff --git a/dev-ruby/faraday_middleware/Manifest b/dev-ruby/faraday_middleware/Manifest
index b319c1e0a434..ac88971867e8 100644
--- a/dev-ruby/faraday_middleware/Manifest
+++ b/dev-ruby/faraday_middleware/Manifest
@@ -1,2 +1 @@
-DIST faraday_middleware-0.12.2.tar.gz 25041 BLAKE2B 0ce9750f9ce8394d1d926345c50c6b565bc2f5bbc3991d8543424dacb243f2176a066cdb4c7dd4fa66f7f90beb477aa66513538d7a6c2f84de56075c304d3caa SHA512 a93c6ad6a97da1c84e539ff5976f464e6126ea444b269be2f3bb3dab71ef6f46fd12cc0b4de7aa34842d4dcc274cca584ef879a8c1b80ca4557af4d4dafcd755
-DIST faraday_middleware-0.13.1.tar.gz 25728 BLAKE2B 7899d9115ad4e93ab1dedecfe5147fc425c5f884f66e473870542662b93e616e48392d7c564079fc55dfc7ffc09f5983d8a481894f295b88178d15ac05e2b312 SHA512 ea58c14e4e45cf1118281f42861df2e54c97ed92ab25d1de68a9d9da73b1ace378d464140ac8c0e42c5b36d5b0cd5f760092727c49da26c10b4e2566af9ab768
+DIST faraday_middleware-1.2.0.tar.gz 28332 BLAKE2B 09aefce13f0145e4098d68d2b8887fff5b535b3eda520335fdcaeea05256d1a256501fe9fee4273636fb0bb9d806d38ff7588a489840d2e425ce6666c496a4d1 SHA512 abfc6faf725c4646d0c1c59d2bde23db13dd78f81e74d313368bd0ec4945c33f24c8e8f3f252c6fa499fa845bdda19544876ea93bb9118b3fa4d3c7615366283
diff --git a/dev-ruby/faraday_middleware/faraday_middleware-0.12.2.ebuild b/dev-ruby/faraday_middleware/faraday_middleware-0.12.2.ebuild
deleted file mode 100644
index ba2e99f5d3bd..000000000000
--- a/dev-ruby/faraday_middleware/faraday_middleware-0.12.2.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Various middleware for Faraday"
-HOMEPAGE="https://github.com/lostisland/faraday_middleware"
-SRC_URI="https://github.com/lostisland/faraday_middleware/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="+parsexml +oauth +mashify +rashify"
-
-ruby_add_rdepend "
- >=dev-ruby/faraday-0.7.4 <dev-ruby/faraday-1
- parsexml? ( >=dev-ruby/multi_xml-0.5.3 )
- oauth? ( >=dev-ruby/simple_oauth-0.1 )
- mashify? ( >=dev-ruby/hashie-1.2:* )
- rashify? ( >=dev-ruby/rash_alt-0.4.3 )"
-
-# Bundler must be used because the optional dependencies have different
-# version requirements that must be resolved.
-ruby_add_bdepend "test? (
- dev-ruby/bundler
- dev-ruby/addressable
- dev-ruby/rake
- dev-ruby/webmock:3
- dev-ruby/json:0
- >=dev-ruby/multi_xml-0.5.3
- >=dev-ruby/rack-cache-1.1
- >=dev-ruby/simple_oauth-0.1
- >=dev-ruby/hashie-1.2
- >=dev-ruby/rash_alt-0.4.3 )"
-
-all_ruby_prepare() {
- sed -i -e '/\(cane\|parallel\|simplecov\)/ s:^:#:' \
- -e '/rspec/ s/>=/~>/' \
- -e "/addressable/ s/, '< 2.4'//" \
- -e "/rake/ s/, '< 11'//" \
- -e "/rack-cache/ s/, '< 1.3'//" \
- -e "/simple_oauth/ s/, '< 0.3'//" \
- -e "/webmock/ s/< 2/~> 3.0/" Gemfile || die
-
- # Avoid unneeded dependency on git
- sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- ${RUBY} -S bundle exec rspec-3 spec || die
-}
diff --git a/dev-ruby/faraday_middleware/faraday_middleware-0.13.1.ebuild b/dev-ruby/faraday_middleware/faraday_middleware-0.13.1.ebuild
deleted file mode 100644
index d82d4eed3f29..000000000000
--- a/dev-ruby/faraday_middleware/faraday_middleware-0.13.1.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Various middleware for Faraday"
-HOMEPAGE="https://github.com/lostisland/faraday_middleware"
-SRC_URI="https://github.com/lostisland/faraday_middleware/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="+parsexml +oauth +mashify +rashify"
-
-ruby_add_rdepend "
- >=dev-ruby/faraday-0.7.4 <dev-ruby/faraday-1
- parsexml? ( >=dev-ruby/multi_xml-0.5.3 )
- oauth? ( >=dev-ruby/simple_oauth-0.1 )
- mashify? ( >=dev-ruby/hashie-1.2:* )
- rashify? ( >=dev-ruby/rash_alt-0.4.3 )"
-
-# Bundler must be used because the optional dependencies have different
-# version requirements that must be resolved.
-ruby_add_bdepend "test? (
- dev-ruby/bundler
- dev-ruby/addressable
- dev-ruby/rake
- dev-ruby/webmock:3
- dev-ruby/json
- >=dev-ruby/multi_xml-0.5.3
- >=dev-ruby/rack-cache-1.1
- >=dev-ruby/simple_oauth-0.1
- >=dev-ruby/hashie-1.2
- >=dev-ruby/rash_alt-0.4.3 )"
-
-all_ruby_prepare() {
- sed -i -e '/\(cane\|parallel\|simplecov\|brotli\)/ s:^:#:' \
- -e '/rspec/ s/>=/~>/' \
- -e "/addressable/ s/, '< 2.4'//" \
- -e "/rake/ s/, '< 11'//" \
- -e "/rack-cache/ s/, '< 1.3'//" \
- -e "/simple_oauth/ s/, '< 0.3'//" \
- -e "/webmock/ s/< 2/~> 3.0/" Gemfile || die
-
- # Avoid unneeded dependency on git
- sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # Avoid unpackaged brotli dependency
- sed -i -e 's/jruby?/true/' \
- -e 's/gzip,deflate,br/gzip,deflate/' spec/unit/gzip_spec.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -S bundle exec rspec-3 spec || die
-}
diff --git a/dev-ruby/faraday_middleware/faraday_middleware-1.2.0-r1.ebuild b/dev-ruby/faraday_middleware/faraday_middleware-1.2.0-r1.ebuild
new file mode 100644
index 000000000000..ae5aff4c339e
--- /dev/null
+++ b/dev-ruby/faraday_middleware/faraday_middleware-1.2.0-r1.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Various middleware for Faraday"
+HOMEPAGE="https://github.com/lostisland/faraday_middleware"
+SRC_URI="https://github.com/lostisland/faraday_middleware/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="brotli +parsexml +oauth +mashify +rashify"
+
+ruby_add_rdepend "
+ dev-ruby/faraday:1
+ brotli? ( dev-ruby/brotli )
+ parsexml? ( >=dev-ruby/multi_xml-0.5.3 )
+ oauth? ( >=dev-ruby/simple_oauth-0.1 )
+ mashify? ( >=dev-ruby/hashie-1.2:* )
+ rashify? ( >=dev-ruby/rash_alt-0.4.3 )"
+
+# Bundler must be used because the optional dependencies have different
+# version requirements that must be resolved.
+ruby_add_bdepend "test? (
+ >=dev-ruby/brotli-0.1.8
+ dev-ruby/bundler
+ dev-ruby/addressable
+ >=dev-ruby/rake-12.3.3
+ dev-ruby/webmock:3
+ dev-ruby/json
+ >=dev-ruby/multi_xml-0.5.3
+ dev-ruby/rack:2.2
+ >=dev-ruby/rack-cache-1.1
+ >=dev-ruby/simple_oauth-0.1
+ >=dev-ruby/hashie-1.2
+ >=dev-ruby/rash_alt-0.4.3 )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(cane\|parallel\|rubocop\|simplecov\)/ s:^:#:' \
+ -e "/addressable/ s/, '< 2.4'//" \
+ -e "/rack/ s/< 2/< 2.3/" \
+ -e "/rack-cache/ s/, '< 1.3'//" \
+ -e "/simple_oauth/ s/, '< 0.3'//" \
+ -e "/safe_yaml/ s:^:#:" \
+ -e "/webmock/ s/2.3/3.0/" Gemfile || die
+
+ # Avoid unneeded dependency on git
+ sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '1irequire "fileutils"' spec/spec_helper.rb || die
+
+ # Avoid safe_yaml specs since they are broken with newer ruby versions
+ # and safe_yaml is not mandatory for using faraday_middleware.
+ rm -f spec/unit/parse_yaml_spec.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -S bundle exec rspec-3 spec || die
+}
diff --git a/dev-ruby/faraday_middleware/faraday_middleware-1.2.0.ebuild b/dev-ruby/faraday_middleware/faraday_middleware-1.2.0.ebuild
new file mode 100644
index 000000000000..9ef131ff8b0a
--- /dev/null
+++ b/dev-ruby/faraday_middleware/faraday_middleware-1.2.0.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Various middleware for Faraday"
+HOMEPAGE="https://github.com/lostisland/faraday_middleware"
+SRC_URI="https://github.com/lostisland/faraday_middleware/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64"
+IUSE="+parsexml +oauth +mashify +rashify"
+
+ruby_add_rdepend "
+ dev-ruby/faraday:1
+ parsexml? ( >=dev-ruby/multi_xml-0.5.3 )
+ oauth? ( >=dev-ruby/simple_oauth-0.1 )
+ mashify? ( >=dev-ruby/hashie-1.2:* )
+ rashify? ( >=dev-ruby/rash_alt-0.4.3 )"
+
+# Bundler must be used because the optional dependencies have different
+# version requirements that must be resolved.
+ruby_add_bdepend "test? (
+ >=dev-ruby/brotli-0.1.8
+ dev-ruby/bundler
+ dev-ruby/addressable
+ >=dev-ruby/rake-12.3.3
+ dev-ruby/webmock:3
+ dev-ruby/json
+ >=dev-ruby/multi_xml-0.5.3
+ dev-ruby/rack:2.2
+ >=dev-ruby/rack-cache-1.1
+ >=dev-ruby/simple_oauth-0.1
+ >=dev-ruby/hashie-1.2
+ >=dev-ruby/rash_alt-0.4.3 )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(cane\|parallel\|rubocop\|simplecov\)/ s:^:#:' \
+ -e "/addressable/ s/, '< 2.4'//" \
+ -e "/rack/ s/< 2/< 2.3/" \
+ -e "/rack-cache/ s/, '< 1.3'//" \
+ -e "/simple_oauth/ s/, '< 0.3'//" \
+ -e "/safe_yaml/ s:^:#:" \
+ -e "/webmock/ s/2.3/3.0/" Gemfile || die
+
+ # Avoid unneeded dependency on git
+ sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '1irequire "fileutils"' spec/spec_helper.rb || die
+
+ # Avoid safe_yaml specs since they are broken with newer ruby versions
+ # and safe_yaml is not mandatory for using faraday_middleware.
+ rm -f spec/unit/parse_yaml_spec.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -S bundle exec rspec-3 spec || die
+}
diff --git a/dev-ruby/faraday_middleware/metadata.xml b/dev-ruby/faraday_middleware/metadata.xml
index 308ea2abc418..a4f453db102f 100644
--- a/dev-ruby/faraday_middleware/metadata.xml
+++ b/dev-ruby/faraday_middleware/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
@@ -9,9 +9,6 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
- <longdescription lang="en">
- A collection of useful Faraday middleware.
- </longdescription>
<use>
<flag name="parsexml">Include FaradayMiddleware::ParseXml</flag>
<flag name="oauth">Include FaradayMiddleware::OAuth</flag>
diff --git a/dev-ruby/fast-stemmer/fast-stemmer-1.0.2-r2.ebuild b/dev-ruby/fast-stemmer/fast-stemmer-1.0.2-r2.ebuild
deleted file mode 100644
index a07ca10e2233..000000000000
--- a/dev-ruby/fast-stemmer/fast-stemmer-1.0.2-r2.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Simple wrapper around multithreaded Porter stemming algorithm"
-HOMEPAGE="https://github.com/romanbsd/fast-stemmer"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- rm ext/Makefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext
- cp ext/stemmer$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib -S testrb-2 test/fast_stemmer_test.rb || die
-}
diff --git a/dev-ruby/fast-stemmer/fast-stemmer-1.0.2-r4.ebuild b/dev-ruby/fast-stemmer/fast-stemmer-1.0.2-r4.ebuild
new file mode 100644
index 000000000000..4454eb8d553a
--- /dev/null
+++ b/dev-ruby/fast-stemmer/fast-stemmer-1.0.2-r4.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple wrapper around multithreaded Porter stemming algorithm"
+HOMEPAGE="https://github.com/romanbsd/fast-stemmer"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+all_ruby_prepare() {
+ rm ext/Makefile || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib -S testrb-2 test/fast_stemmer_test.rb || die
+}
diff --git a/dev-ruby/fast-stemmer/metadata.xml b/dev-ruby/fast-stemmer/metadata.xml
index 5f0dbc149752..1ba9fff71511 100644
--- a/dev-ruby/fast-stemmer/metadata.xml
+++ b/dev-ruby/fast-stemmer/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/fast_gettext/Manifest b/dev-ruby/fast_gettext/Manifest
index 18af18b1db70..6588f1bae0e4 100644
--- a/dev-ruby/fast_gettext/Manifest
+++ b/dev-ruby/fast_gettext/Manifest
@@ -1,5 +1,2 @@
-DIST fast_gettext-1.6.0.tar.gz 88780 BLAKE2B 237a37bf505fe7520a25c6014f0524201905f8cf112624370477229db2d06f7160bad62e42878688ef954a1b72166e21a7f3a89de66c21aec780749fb26cd8bb SHA512 0f26cf8bd8a2078631d32be14fb6bd194dc9bd8a6727a355f4d2978441c972785747063ec4d8b8b1d4c78f07914a8b6cccf37ed85a37e7833bfe724d1d159ae9
-DIST fast_gettext-1.7.0.tar.gz 89176 BLAKE2B a42f50570c65ecf229dab0e29ad40ed3fd0f431f59fcc7daff4ad564131751e8a9884d52dfb8f2edd87b6fd5d1267973225fb51f9256844b37c28b251d15d757 SHA512 83c66c4f7bce6ccc08c1fe9e2b3cb71ea751d68bbff36587039a0b7af7e6276cb481debd3668673822455b9805114531547b28a777cafa8bda0f204ba36bf5a9
-DIST fast_gettext-1.8.0.tar.gz 89309 BLAKE2B 8ead2922662667c24d07dbc1145002583b1a65edd3cb581ac5bc058560aca38ed083e0470d4834cfdc5abae36f1e8264171b75649343675ab415b28ea2f0e8ab SHA512 0657b5955268166787a32bb74481cd07309018429c21707e061e022d67d5d2448d2d173149f164d16ff5f6c9ffa0feef38369b79daa299e1283fdcdc019ad72e
-DIST fast_gettext-2.0.0.tar.gz 91904 BLAKE2B fc0f752cad55512f502332a8721aa64fe1b3103ecedceac08b82f293575e974e0565b2936ae740e61ef3413919406959c6a78709ddc737b3e7decd710eafbd46 SHA512 f997a63ecccc3a8836e191b8cdcb5ba0e260bedef4cc55efeecb12c1fb3a469cc98e9e565ac773392a2bdf266618a76c8d34b0522d5447967fb85f4dfeea3c10
-DIST fast_gettext-2.0.1.tar.gz 92037 BLAKE2B 109470cb8ede188a7603dca9b79d17066b6fbbcfa13e2cb6b9a5a6f329d1285a042e152b5afaba206ac447fdbdbdb59f79b74ee2ac70ea39a99691a00fc82155 SHA512 edf98e22a39266c55e7d77547fb1b8cb3a07dcb7bd742e2eb93b636072902f065dede0d980bd3a67373f5afeacc39689cbcee33dd62ad10e1e94f6d84bcbc70c
+DIST fast_gettext-2.2.0.tar.gz 93511 BLAKE2B 8f4a8b169533194a82465ca29b4cbf52e9c724b9976355ad64459826ff9ad15da9762c6e90e237fef046fc6a8114abf54e0022eec573abf98a56bd067e7c06dd SHA512 06daacf46e4c8ef272ac2a60f8fad1abbb3eaa2bf5242991e7f32fd87e911917b6baf4965b0cbc96c11d0be0425585d501258d0c1faa065469dea6c3b8c97797
+DIST fast_gettext-2.3.0.tar.gz 93620 BLAKE2B 2f4dd0f6ad74df593573ce73ee40da549e506fc6fc7ca9ea17dacaa120cec97c202ba31b1fe32b628006fa1381572858dc314110a76c1ee7a91c049664133ede SHA512 517499785022922e54278ad4427abaabb63fd9d0470398cfca1c1804f3ca4992c01105ea727d152d2b8d1cbab86138a7552dfbbd4b3b3241b5fc1a3298db7dc2
diff --git a/dev-ruby/fast_gettext/fast_gettext-1.6.0.ebuild b/dev-ruby/fast_gettext/fast_gettext-1.6.0.ebuild
deleted file mode 100644
index cdea88d1f547..000000000000
--- a/dev-ruby/fast_gettext/fast_gettext-1.6.0.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG Readme.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="GetText but 3.5x faster, 560x less memory, clean namespace and threadsave!"
-HOMEPAGE="https://github.com/grosser/fast_gettext"
-SRC_URI="https://github.com/grosser/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/bundler )"
-
-all_ruby_prepare() {
- rm Gemfile.lock || die
-
- # Remove jeweler and bump from Gemfile since they are not needed for tests.
- sed -i -e '/jeweler/d' -e '/bump/d' -e '/appraisal/d' Gemfile || die
-
- # Avoid unneeded dependency on git and development dependencies.
- sed -e '/git ls-files/ s:^:#:' \
- -e '/\(wwtd\|bump\|sqlite3\|activerecord\|i18n\)/ s:^:#:' \
- -i fast_gettext.gemspec || die
-
- # Avoid a test dependency on activerecord since this is now in the
- # dependency tree for app-admin/puppet and many arches don't have
- # rails keyworded.
- sed -i -e '/active_record/ s:^:#:' spec/spec_helper.rb || die
- rm -f spec/fast_gettext/translation_repository/db_spec.rb || die
- sed -i -e '/works with DB repository/,/^ end/ s:^:#:' spec/fast_gettext/storage_spec.rb || die
- sed -i -e '/with i18n loaded/,/^ end/ s:^:#:' spec/fast_gettext/vendor/string_spec.rb || die
-
- # Don't run a test that requires safe mode which we can't provide
- # due to insecure directory settings for the portage dir. This spec
- # also calls out to ruby which won't work with different ruby
- # implementations.
- sed -i -e '/can work in SAFE mode/,/^ end/ s:^:#:' spec/fast_gettext/translation_repository/mo_spec.rb || die
-}
-
-each_ruby_prepare() {
- # Make sure the right ruby interpreter is used
- sed -i -e "s:bundle exec ruby:bundle exec ${RUBY}:" spec/fast_gettext/vendor/*spec.rb || die
-}
diff --git a/dev-ruby/fast_gettext/fast_gettext-1.7.0.ebuild b/dev-ruby/fast_gettext/fast_gettext-1.7.0.ebuild
deleted file mode 100644
index 97967bdb5e89..000000000000
--- a/dev-ruby/fast_gettext/fast_gettext-1.7.0.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG Readme.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="GetText but 3.5x faster, 560x less memory, clean namespace and threadsave!"
-HOMEPAGE="https://github.com/grosser/fast_gettext"
-SRC_URI="https://github.com/grosser/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/bundler )"
-
-all_ruby_prepare() {
- rm Gemfile.lock || die
-
- # Remove jeweler and bump from Gemfile since they are not needed for tests.
- sed -i -e '/jeweler/d' -e '/bump/d' -e '/appraisal/d' Gemfile || die
-
- # Avoid unneeded dependency on git and development dependencies.
- sed -e '/git ls-files/ s:^:#:' \
- -e '/\(wwtd\|bump\|sqlite3\|activerecord\|i18n\)/ s:^:#:' \
- -i fast_gettext.gemspec || die
-
- # Avoid a test dependency on activerecord since this is now in the
- # dependency tree for app-admin/puppet and many arches don't have
- # rails keyworded.
- sed -i -e '/active_record/ s:^:#:' spec/spec_helper.rb || die
- rm -f spec/fast_gettext/translation_repository/db_spec.rb || die
- sed -i -e '/works with DB repository/,/^ end/ s:^:#:' spec/fast_gettext/storage_spec.rb || die
- sed -i -e '/with i18n loaded/,/^ end/ s:^:#:' spec/fast_gettext/vendor/string_spec.rb || die
-
- # Don't run a test that requires safe mode which we can't provide
- # due to insecure directory settings for the portage dir. This spec
- # also calls out to ruby which won't work with different ruby
- # implementations.
- sed -i -e '/can work in SAFE mode/,/^ end/ s:^:#:' spec/fast_gettext/translation_repository/mo_spec.rb || die
-}
-
-each_ruby_prepare() {
- # Make sure the right ruby interpreter is used
- sed -i -e "s:bundle exec ruby:bundle exec ${RUBY}:" spec/fast_gettext/vendor/*spec.rb || die
-}
diff --git a/dev-ruby/fast_gettext/fast_gettext-1.8.0.ebuild b/dev-ruby/fast_gettext/fast_gettext-1.8.0.ebuild
deleted file mode 100644
index 7e26f8979e7e..000000000000
--- a/dev-ruby/fast_gettext/fast_gettext-1.8.0.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG Readme.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="GetText but 3.5x faster, 560x less memory, clean namespace and threadsave!"
-HOMEPAGE="https://github.com/grosser/fast_gettext"
-SRC_URI="https://github.com/grosser/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="public-domain"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/bundler )"
-
-all_ruby_prepare() {
- rm Gemfile.lock || die
-
- # Remove jeweler and bump from Gemfile since they are not needed for tests.
- sed -i -e '/jeweler/d' -e '/bump/d' -e '/appraisal/d' Gemfile || die
-
- # Avoid unneeded dependency on git and development dependencies.
- sed -e '/git ls-files/ s:^:#:' \
- -e '/\(wwtd\|bump\|sqlite3\|activerecord\|i18n\)/ s:^:#:' \
- -i fast_gettext.gemspec || die
-
- # Avoid a test dependency on activerecord since this is now in the
- # dependency tree for app-admin/puppet and many arches don't have
- # rails keyworded.
- sed -i -e '/active_record/ s:^:#:' spec/spec_helper.rb || die
- rm -f spec/fast_gettext/translation_repository/db_spec.rb || die
- sed -i -e '/works with DB repository/,/^ end/ s:^:#:' spec/fast_gettext/storage_spec.rb || die
- sed -i -e '/with i18n loaded/,/^ end/ s:^:#:' spec/fast_gettext/vendor/string_spec.rb || die
-
- # Don't run a test that requires safe mode which we can't provide
- # due to insecure directory settings for the portage dir. This spec
- # also calls out to ruby which won't work with different ruby
- # implementations.
- sed -i -e '/can work in SAFE mode/,/^ end/ s:^:#:' spec/fast_gettext/translation_repository/mo_spec.rb || die
-}
-
-each_ruby_prepare() {
- # Make sure the right ruby interpreter is used
- sed -i -e "s:bundle exec ruby:bundle exec ${RUBY}:" spec/fast_gettext/vendor/*spec.rb || die
-}
diff --git a/dev-ruby/fast_gettext/fast_gettext-2.0.0.ebuild b/dev-ruby/fast_gettext/fast_gettext-2.0.0.ebuild
deleted file mode 100644
index 8dcd539813f1..000000000000
--- a/dev-ruby/fast_gettext/fast_gettext-2.0.0.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG Readme.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="GetText but 3.5x faster, 560x less memory, clean namespace and threadsave!"
-HOMEPAGE="https://github.com/grosser/fast_gettext"
-SRC_URI="https://github.com/grosser/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="public-domain"
-SLOT="2"
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/bundler )"
-
-all_ruby_prepare() {
- rm Gemfile.lock || die
-
- # Remove jeweler and bump from Gemfile since they are not needed for tests.
- sed -i -e '/jeweler/d' -e '/bump/d' -e '/appraisal/d' Gemfile || die
- sed -i -e '/single/I s:^:#:' spec/spec_helper.rb || die
- sed -i -e '/SingleCov/ s:^:#:' spec/{*,*/*}/*spec.rb || die
-
- # Avoid unneeded dependency on git and development dependencies.
- sed -e '/git ls-files/ s:^:#:' \
- -e '/\(wwtd\|bump\|sqlite3\|activerecord\|i18n\|single_cov\|forking_test_runner\|rubocop\)/ s:^:#:' \
- -i fast_gettext.gemspec || die
-
- # Avoid a test dependency on activerecord since this is now in the
- # dependency tree for app-admin/puppet and many arches don't have
- # rails keyworded.
- sed -i -e '/active_record/ s:^:#:' spec/spec_helper.rb || die
- rm -f spec/fast_gettext/translation_repository/db_spec.rb || die
- rm -f spec/fast_gettext/storage_spec.rb || die
- sed -i -e '/with i18n loaded/,/^ end/ s:^:#:' spec/fast_gettext/vendor/string_spec.rb || die
-
- # Don't run a test that requires safe mode which we can't provide
- # due to insecure directory settings for the portage dir. This spec
- # also calls out to ruby which won't work with different ruby
- # implementations.
- sed -i -e '/can work in SAFE mode/,/^ end/ s:^:#:' spec/fast_gettext/translation_repository/mo_spec.rb || die
-}
-
-each_ruby_prepare() {
- # Make sure the right ruby interpreter is used
- sed -i -e "s:bundle exec ruby:bundle exec ${RUBY}:" spec/fast_gettext/vendor/*spec.rb || die
-}
diff --git a/dev-ruby/fast_gettext/fast_gettext-2.0.1.ebuild b/dev-ruby/fast_gettext/fast_gettext-2.0.1.ebuild
deleted file mode 100644
index 42fd6949fc7d..000000000000
--- a/dev-ruby/fast_gettext/fast_gettext-2.0.1.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG Readme.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="GetText but 3.5x faster, 560x less memory, clean namespace and threadsave!"
-HOMEPAGE="https://github.com/grosser/fast_gettext"
-SRC_URI="https://github.com/grosser/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="public-domain"
-SLOT="2"
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/bundler )"
-
-all_ruby_prepare() {
- rm Gemfile.lock || die
-
- # Remove jeweler and bump from Gemfile since they are not needed for tests.
- sed -i -e '/jeweler/d' -e '/bump/d' -e '/appraisal/d' Gemfile || die
- sed -i -e '/single/I s:^:#:' spec/spec_helper.rb || die
- sed -i -e '/SingleCov/ s:^:#:' spec/{*,*/*}/*spec.rb || die
-
- # Avoid unneeded dependency on git and development dependencies.
- sed -e '/git ls-files/ s:^:#:' \
- -e '/\(wwtd\|bump\|sqlite3\|activerecord\|i18n\|single_cov\|forking_test_runner\|rubocop\)/ s:^:#:' \
- -i fast_gettext.gemspec || die
-
- # Avoid a test dependency on activerecord since this is now in the
- # dependency tree for app-admin/puppet and many arches don't have
- # rails keyworded.
- sed -i -e '/active_record/ s:^:#:' spec/spec_helper.rb || die
- rm -f spec/fast_gettext/translation_repository/db_spec.rb || die
- rm -f spec/fast_gettext/storage_spec.rb || die
- sed -i -e '/with i18n loaded/,/^ end/ s:^:#:' spec/fast_gettext/vendor/string_spec.rb || die
-
- # Don't run a test that requires safe mode which we can't provide
- # due to insecure directory settings for the portage dir. This spec
- # also calls out to ruby which won't work with different ruby
- # implementations.
- sed -i -e '/can work in SAFE mode/,/^ end/ s:^:#:' spec/fast_gettext/translation_repository/mo_spec.rb || die
-}
-
-each_ruby_prepare() {
- # Make sure the right ruby interpreter is used
- sed -i -e "s:bundle exec ruby:bundle exec ${RUBY}:" spec/fast_gettext/vendor/*spec.rb || die
-}
diff --git a/dev-ruby/fast_gettext/fast_gettext-2.2.0.ebuild b/dev-ruby/fast_gettext/fast_gettext-2.2.0.ebuild
new file mode 100644
index 000000000000..0d357c632ebb
--- /dev/null
+++ b/dev-ruby/fast_gettext/fast_gettext-2.2.0.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG Readme.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="fast_gettext.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="GetText but 3.5x faster, 560x less memory, clean namespace and threadsafe!"
+HOMEPAGE="https://github.com/grosser/fast_gettext"
+SRC_URI="https://github.com/grosser/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="public-domain"
+SLOT="2"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/bundler )"
+
+all_ruby_prepare() {
+ rm Gemfile.lock || die
+
+ # Remove jeweler and bump from Gemfile since they are not needed for tests.
+ sed -i -e '/jeweler/d' -e '/bump/d' -e '/appraisal/d' Gemfile || die
+ sed -i -e '/single/I s:^:#:' spec/spec_helper.rb || die
+ sed -i -e '/SingleCov/ s:^:#:' spec/{*,*/*}/*spec.rb || die
+
+ # Avoid unneeded dependency on git and development dependencies.
+ sed -e '/git ls-files/ s:^:#:' \
+ -e '/\(wwtd\|bump\|sqlite3\|activerecord\|i18n\|single_cov\|forking_test_runner\|rubocop\)/ s:^:#:' \
+ -e 's:require_relative ":require "./:' \
+ -i fast_gettext.gemspec || die
+
+ # Avoid a test dependency on activerecord since this is now in the
+ # dependency tree for app-admin/puppet and many arches don't have
+ # rails keyworded.
+ sed -i -e '/active_record/ s:^:#:' spec/spec_helper.rb || die
+ rm -f spec/fast_gettext/translation_repository/db_spec.rb || die
+ rm -f spec/fast_gettext/storage_spec.rb || die
+ sed -i -e '/with i18n loaded/,/^ end/ s:^:#:' spec/fast_gettext/vendor/string_spec.rb || die
+
+ # Don't run a test that requires safe mode which we can't provide
+ # due to insecure directory settings for the portage dir. This spec
+ # also calls out to ruby which won't work with different ruby
+ # implementations.
+ sed -i -e '/can work in SAFE mode/,/^ end/ s:^:#:' spec/fast_gettext/translation_repository/mo_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Make sure the right ruby interpreter is used
+ sed -i -e "s:bundle exec ruby:bundle exec ${RUBY}:" spec/fast_gettext/vendor/*spec.rb || die
+}
diff --git a/dev-ruby/fast_gettext/fast_gettext-2.3.0.ebuild b/dev-ruby/fast_gettext/fast_gettext-2.3.0.ebuild
new file mode 100644
index 000000000000..3ee6d07d7a0b
--- /dev/null
+++ b/dev-ruby/fast_gettext/fast_gettext-2.3.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG Readme.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="fast_gettext.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="GetText but 3.5x faster, 560x less memory, clean namespace and threadsafe!"
+HOMEPAGE="https://github.com/grosser/fast_gettext"
+SRC_URI="https://github.com/grosser/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="public-domain"
+SLOT="2"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/bundler )"
+
+all_ruby_prepare() {
+ rm Gemfile.lock || die
+
+ sed -i -e '/single/I s:^:#:' spec/spec_helper.rb || die
+ sed -i -e '/SingleCov/ s:^:#:' spec/{*,*/*}/*spec.rb || die
+
+ # Avoid unneeded dependency on git and development dependencies.
+ sed -e '/git ls-files/ s:^:#:' \
+ -e '/\(wwtd\|bump\|sqlite3\|activerecord\|i18n\|single_cov\|forking_test_runner\|rubocop\)/ s:^:#:' \
+ -e 's:require_relative ":require "./:' \
+ -i fast_gettext.gemspec || die
+
+ # Avoid a test dependency on activerecord since this is now in the
+ # dependency tree for app-admin/puppet and many arches don't have
+ # rails keyworded.
+ sed -i -e '/active_record/ s:^:#:' spec/spec_helper.rb || die
+ rm -f spec/fast_gettext/translation_repository/db_spec.rb || die
+ rm -f spec/fast_gettext/storage_spec.rb || die
+ sed -i -e '/with i18n loaded/,/^ end/ s:^:#:' spec/fast_gettext/vendor/string_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Make sure the right ruby interpreter is used
+ sed -i -e "s:bundle exec ruby:bundle exec ${RUBY}:" spec/fast_gettext/vendor/*spec.rb || die
+}
diff --git a/dev-ruby/fast_gettext/metadata.xml b/dev-ruby/fast_gettext/metadata.xml
index 5d35b8ec49d4..e3b273ae9e5d 100644
--- a/dev-ruby/fast_gettext/metadata.xml
+++ b/dev-ruby/fast_gettext/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/fast_xs/Manifest b/dev-ruby/fast_xs/Manifest
deleted file mode 100644
index aad86004e6e3..000000000000
--- a/dev-ruby/fast_xs/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST fast_xs-0.8.0.gem 22016 BLAKE2B b24e65c31623e86ac8ab8b5a442565083bd047e5740aeae74d74e82c09770a8149853ad021ea6c6c036d411e8f299f4a531d78b0b3314ed5bf32d7f8b9fcf697 SHA512 55fc2704fab020f03b1ce138d1631dd5ad73a8601dcd95989a59c7cccb490c70b4e1af59fb8b009bfa0899f2c23feb42cc3068e243cd539ba1cb01a9f7bc573b
diff --git a/dev-ruby/fast_xs/fast_xs-0.8.0-r2.ebuild b/dev-ruby/fast_xs/fast_xs-0.8.0-r2.ebuild
deleted file mode 100644
index c8d176efc958..000000000000
--- a/dev-ruby/fast_xs/fast_xs-0.8.0-r2.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="fast_xs text escaping library ruby bindings"
-HOMEPAGE="https://github.com/brianmario/fast_xs"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/rack )"
-
-RUBY_PATCHES=( "${P}+ruby-1.9.patch" )
-
-each_ruby_configure() {
- ${RUBY} -Cext/fast_xs extconf.rb || die "extconf.rb failed"
- ${RUBY} -Cext/fast_xs_extra extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake -Cext/fast_xs CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}" V=1
- cp ext/fast_xs/fast_xs$(get_modname) lib/ || die
- emake -Cext/fast_xs_extra CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}" V=1
- cp ext/fast_xs_extra/fast_xs_extra$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- # the Rakefile tries to run all the tests in a single process, but
- # this breaks the monkey-patchers, we're forced to run them one by
- # one.
- for tu in test/test_*.rb; do
- ${RUBY} -Ilib $tu || die "test $tu failed"
- done
-}
diff --git a/dev-ruby/fast_xs/files/fast_xs-0.8.0+ruby-1.9.patch b/dev-ruby/fast_xs/files/fast_xs-0.8.0+ruby-1.9.patch
deleted file mode 100644
index cdd72f2db3fb..000000000000
--- a/dev-ruby/fast_xs/files/fast_xs-0.8.0+ruby-1.9.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Index: fast_xs-0.8.0/test/test_erb_util_module_overrides.rb
-===================================================================
---- fast_xs-0.8.0.orig/test/test_erb_util_module_overrides.rb
-+++ fast_xs-0.8.0/test/test_erb_util_module_overrides.rb
-@@ -35,11 +35,13 @@ class TestErbUtilModuleOverrides < Test:
-
- def test_preserve_encoding
- foo = "foo"
-- foo.force_encoding Encoding::US_ASCII
-- assert_equal Encoding::US_ASCII, url_encode(foo).encoding
-- assert_equal Encoding::US_ASCII, html_escape(foo).encoding
-- assert_equal Encoding::US_ASCII, u(foo).encoding
-- assert_equal Encoding::US_ASCII, h(foo).encoding
-+ ascii_encoding = (RUBY_VERSION =~ /1\.9/) ? Encoding::ASCII_8BIT : Encoding::US_ASCII
-+
-+ foo.force_encoding ascii_encoding
-+ assert_equal ascii_encoding, url_encode(foo).encoding
-+ assert_equal ascii_encoding, html_escape(foo).encoding
-+ assert_equal ascii_encoding, u(foo).encoding
-+ assert_equal ascii_encoding, h(foo).encoding
-
- foo.force_encoding Encoding::BINARY
- assert_equal Encoding::BINARY, url_encode(foo).encoding
diff --git a/dev-ruby/fast_xs/metadata.xml b/dev-ruby/fast_xs/metadata.xml
deleted file mode 100644
index 1733736bd1e2..000000000000
--- a/dev-ruby/fast_xs/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">brianmario/fast_xs</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/fattr/Manifest b/dev-ruby/fattr/Manifest
index ebc4d1dd9ded..a62b718edca7 100644
--- a/dev-ruby/fattr/Manifest
+++ b/dev-ruby/fattr/Manifest
@@ -1,2 +1 @@
-DIST fattr-2.3.0.gem 12800 BLAKE2B a9ef3e7d69c52193c65139e647f22e99bb8e0f65b2970b26f34c453127af7a4d4c9cbba17627462241b163fbdf654cbb46d2dded2a62a76e0b1abcf04b24f185 SHA512 620825a4659e30402e44d077fd60b4b2260fe3eb7f28c87ca26f61a6be3a2d4e96920ca1d89070dbd90e1d5d760632f6e103766dddb38a8eb1fb104c6b261baf
DIST fattr-2.4.0.gem 14336 BLAKE2B 1be45d17eac08dbadec9e0a4177f7b1ad7d39c060ce1162961aa8fe3b1c9b0107f10c17a2a9a5d27e652067df7f33aca0afb57b6a268b52999ae7a7b540ad131 SHA512 df3aa4fe187f7922fceaad3b30d4ed9c869ac194f819bc6c57dd574a27e69a74cf9fb10042163d941b0edc7129dc5ede5f92c60a75c6744bb9e8f358f5cf24bc
diff --git a/dev-ruby/fattr/fattr-2.3.0.ebuild b/dev-ruby/fattr/fattr-2.3.0.ebuild
deleted file mode 100644
index 2a0c2f23d0f5..000000000000
--- a/dev-ruby/fattr/fattr-2.3.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="fattr.rb is a \"fatter attr\" for ruby"
-HOMEPAGE="https://github.com/ahoward/fattr"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~x86-fbsd"
-IUSE="test"
-
-each_ruby_test() {
- ${RUBY} test/fattr_test.rb || die "Tests failed."
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r samples
-}
diff --git a/dev-ruby/fattr/fattr-2.4.0-r1.ebuild b/dev-ruby/fattr/fattr-2.4.0-r1.ebuild
new file mode 100644
index 000000000000..e96dd52c3ec9
--- /dev/null
+++ b/dev-ruby/fattr/fattr-2.4.0-r1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="fattr.rb is a \"fatter attr\" for ruby"
+HOMEPAGE="https://github.com/ahoward/fattr"
+
+LICENSE="Ruby-BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+each_ruby_test() {
+ ${RUBY} test/fattr_test.rb || die "Tests failed."
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r samples
+}
diff --git a/dev-ruby/fattr/fattr-2.4.0.ebuild b/dev-ruby/fattr/fattr-2.4.0.ebuild
deleted file mode 100644
index 2608fea03154..000000000000
--- a/dev-ruby/fattr/fattr-2.4.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="fattr.rb is a \"fatter attr\" for ruby"
-HOMEPAGE="https://github.com/ahoward/fattr"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~x86-fbsd"
-IUSE="test"
-
-each_ruby_test() {
- ${RUBY} test/fattr_test.rb || die "Tests failed."
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r samples
-}
diff --git a/dev-ruby/fattr/metadata.xml b/dev-ruby/fattr/metadata.xml
index 42a444a4186c..874436c94576 100644
--- a/dev-ruby/fattr/metadata.xml
+++ b/dev-ruby/fattr/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/fcgi/Manifest b/dev-ruby/fcgi/Manifest
index 765825fe0b31..3baf3c5108bc 100644
--- a/dev-ruby/fcgi/Manifest
+++ b/dev-ruby/fcgi/Manifest
@@ -1 +1 @@
-DIST fcgi-0.9.2.1.gem 15872 BLAKE2B 1f3a9cfa79f06a655bbe3ecd36be8b650f7c1f856f84f82502c87c06f43ee9c91eed75e5441c65a635c700b8c682745f631e3268701555268eb3a1568347573f SHA512 1ffdd429ce4f2bbac771b7ac2368a5194015a7327b8b43b803914257edc174235573df6bb41a53fb71db0bf179fc24ce2392b244b5b55563d67e045c47da8579
+DIST fcgi-0.9.2.2.gem 15872 BLAKE2B e1db9facc8afc00dd165c14d908176ad5e685ac23c6a236b17494928823a536ed14bde241cb6ba7f97f184397a9884d07ad0ef4398f155f917a1e9e2b35d6ff5 SHA512 2125c255cc6772eefce42b7c6d094fcced66b236f17e7f215ee421be8ea1777aec728e7919152b0f352188ea305355d74a24a61a1375a9296b3298e330b1af8a
diff --git a/dev-ruby/fcgi/fcgi-0.9.2.1-r1.ebuild b/dev-ruby/fcgi/fcgi-0.9.2.1-r1.ebuild
deleted file mode 100644
index ba3368437496..000000000000
--- a/dev-ruby/fcgi/fcgi-0.9.2.1-r1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.rdoc README.signals"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="FastCGI library for Ruby"
-HOMEPAGE="https://github.com/alphallc/ruby-fcgi-ng"
-
-KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
-LICENSE="Ruby"
-
-DEPEND+=" dev-libs/fcgi"
-RDEPEND+=" dev-libs/fcgi"
-
-IUSE=""
-SLOT="0"
-
-each_ruby_configure() {
- ${RUBY} -C ext/fcgi extconf.rb || die "extconf failed"
-}
-
-each_ruby_compile() {
- emake V=1 -C ext/fcgi
- cp ext/fcgi/fcgi$(get_modname) lib || die
-}
diff --git a/dev-ruby/fcgi/fcgi-0.9.2.2.ebuild b/dev-ruby/fcgi/fcgi-0.9.2.2.ebuild
new file mode 100644
index 000000000000..8cefcbe2866f
--- /dev/null
+++ b/dev-ruby/fcgi/fcgi-0.9.2.2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc README.signals"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/fcgi/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="FastCGI library for Ruby"
+HOMEPAGE="https://github.com/alphallc/ruby-fcgi-ng"
+
+KEYWORDS="amd64 arm ~hppa ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+LICENSE="MIT Ruby-BSD"
+
+DEPEND+=" dev-libs/fcgi"
+RDEPEND+=" dev-libs/fcgi"
+
+IUSE=""
+SLOT="0"
diff --git a/dev-ruby/fcgi/metadata.xml b/dev-ruby/fcgi/metadata.xml
index 045dac77a912..be0cd1a9cbe3 100644
--- a/dev-ruby/fcgi/metadata.xml
+++ b/dev-ruby/fcgi/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ferret/Manifest b/dev-ruby/ferret/Manifest
deleted file mode 100644
index 49a50e2531ad..000000000000
--- a/dev-ruby/ferret/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ferret-0.11.8.7.gem 608768 BLAKE2B cc5e6769dcad4c465ae00aed972712e03ccbea304608eef5008941d5bf1eca17461f611aea7f0033d4047b7bc2474c0a93ffece40b4a6aca753a496ee34f36fa SHA512 ac7cafa25ade9741e0eb95d7372f6dd7ce4ea82368c69ace536b852fd5cc435d05764041ba1bddcc6098665c6e1aa7a12ac9739e45362007f726f3e7a8124df1
diff --git a/dev-ruby/ferret/ferret-0.11.8.7.ebuild b/dev-ruby/ferret/ferret-0.11.8.7.ebuild
deleted file mode 100644
index f469388a3ad9..000000000000
--- a/dev-ruby/ferret/ferret-0.11.8.7.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME="ferret"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_TASK_DOC="doc"
-RUBY_FAKEGEM_DOCDIR="doc/api"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG RELEASE_CHANGES RELEASE_NOTES README.md TODO TUTORIAL.md"
-
-inherit multilib ruby-fakegem
-
-MY_P="${P/ruby-/}"
-DESCRIPTION="A ruby indexing/searching library"
-HOMEPAGE="https://github.com/jkraemer/ferret"
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND+=" app-arch/bzip2"
-DEPEND+=" app-arch/bzip2"
-
-all_ruby_prepare() {
- # Remove bundled bzlib code and use system version instead.
- rm ext/BZLIB* ext/bzlib* || die
- sed -i -e '14i $LDFLAGS += " -lbz2 "' ext/extconf.rb || die
-
- # Avoid test known to fail upstream:
- # https://github.com/jkraemer/ferret/issues/2
- sed -i -e '/test_adding_long_url/,/^ end/ s:^:#:' \
- test/unit/index/tc_index_writer.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}" V=1
- cp ext/ferret_ext$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib test/test_all.rb || die
-}
diff --git a/dev-ruby/ferret/metadata.xml b/dev-ruby/ferret/metadata.xml
deleted file mode 100644
index 1c20b9283cce..000000000000
--- a/dev-ruby/ferret/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jkraemer/ferret</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ffaker/Manifest b/dev-ruby/ffaker/Manifest
index b7b6d44847b0..8eb5ec9ad51b 100644
--- a/dev-ruby/ffaker/Manifest
+++ b/dev-ruby/ffaker/Manifest
@@ -1,3 +1,3 @@
-DIST ffaker-2.10.0.gem 421376 BLAKE2B 30976c0bee8862623c923b3797bd6de31b803643191d55ee2a6ef101a92f43acf6e300991de43641f2564ac82d046fcb7e53ca8b9cecae4c6b339e43f020cc1a SHA512 cb54d995f39877eea0844395e52158ea898f1d3fb17af0b01261f8b359d50ffd5d7b94fba0400e7103543a96670a00b3e5a9c072bc46f7221d390ab81e6ac507
-DIST ffaker-2.11.0.gem 429568 BLAKE2B ed5a9d794caba5ad93c1ac8457ebf89412177fe48c05a66f162f8d2b7a7a3b395e59312ddc444965ec4d9500573a97c97b95a1381d07caca6bb3b3ca97fa3dc2 SHA512 b185adfe34c5d78fe47cedc9d685eb98ed0de7f9a4818fa5ab0f6fe9cad21d04e025b6d2e38e34f463874a5d9007fe0d01e604b316af4850a7a63f50140bbd78
-DIST ffaker-2.9.0.gem 413184 BLAKE2B a48977b2749b60db18d046a0df0b65c1790a4fba5920faaaf6ef93be31cc7defd375379e2e46bbe2b4d2bae8b29f7cace4ecf09fba7d80a6cfacd724edd60564 SHA512 dff411a4d8864817dacb0498ce73a9b350d4e03aa771edb5b69c5e749ba4565dbd24d09215a7397e4567a9cd3ce2baae9b8e4e21cd8db127257364395e481364
+DIST ffaker-2.21.0.gem 463360 BLAKE2B 90742c81b719ef6930269d2b6927add981f7d001a1465b5835894acf4e627e3870123d3e0c5c9449468c2f34c1b783e625daf668d900d6956487f6036ea8da8a SHA512 bff7f36ab6c90ac66781ddf034a628323a673a13325b93f3b12b0298d4934df3d7752e512daf7c1a893378c8d66b2d3facd2d407bfabd1dd02b64944acf73a08
+DIST ffaker-2.22.0.gem 470016 BLAKE2B be1ac238a03e2cc705327b373bf9844aaf2e80440665e46e79127c35e77d576b4de0a4d34f74f7b1e1ac6665850722fa8c4e99897576268444dcc51c9ab0a9e5 SHA512 c9b3f3ee5ccc002a9e590b37c38bd7d1d28aa1a81b7b208f94cc73643735492a804915eb6894643d5733469be6582b59d356a30f62f7cf7647a24a99cbfe019b
+DIST ffaker-2.23.0.gem 471552 BLAKE2B 57442ad9c2a38a44e78e792976238319b03475fe9b974f21d3e96901c6a4393638c0c24e4b2d12dd28d27829208a73ed2375c7f43bc9197f23449469faac68ae SHA512 fa12fc3ec6587f122b86feb3937e9d4db50283ae7370487a662e652b7e0ec4333596e183e4f41a7069d7ed3622de037fe7dea8ee2aa107f624ddf66a98542c92
diff --git a/dev-ruby/ffaker/ffaker-2.10.0.ebuild b/dev-ruby/ffaker/ffaker-2.10.0.ebuild
deleted file mode 100644
index 597e226722af..000000000000
--- a/dev-ruby/ffaker/ffaker-2.10.0.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md REFERENCE.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Faster Faker, generates dummy data"
-HOMEPAGE="https://github.com/emmanueloga/ffaker"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
diff --git a/dev-ruby/ffaker/ffaker-2.11.0.ebuild b/dev-ruby/ffaker/ffaker-2.11.0.ebuild
deleted file mode 100644
index 597e226722af..000000000000
--- a/dev-ruby/ffaker/ffaker-2.11.0.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md REFERENCE.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Faster Faker, generates dummy data"
-HOMEPAGE="https://github.com/emmanueloga/ffaker"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
diff --git a/dev-ruby/ffaker/ffaker-2.21.0.ebuild b/dev-ruby/ffaker/ffaker-2.21.0.ebuild
new file mode 100644
index 000000000000..2d982ab3784d
--- /dev/null
+++ b/dev-ruby/ffaker/ffaker-2.21.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md REFERENCE.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Faster Faker, generates dummy data"
+HOMEPAGE="https://github.com/emmanueloga/ffaker"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
+
+all_ruby_prepare() {
+ sed -i -e '/test_image_file/aomit "network"' test/test_image.rb || die
+}
diff --git a/dev-ruby/ffaker/ffaker-2.22.0.ebuild b/dev-ruby/ffaker/ffaker-2.22.0.ebuild
new file mode 100644
index 000000000000..b14b9e27d72a
--- /dev/null
+++ b/dev-ruby/ffaker/ffaker-2.22.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md REFERENCE.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Faster Faker, generates dummy data"
+HOMEPAGE="https://github.com/ffaker/ffaker"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
+
+all_ruby_prepare() {
+ sed -i -e '/test_image_file/aomit "network"' test/test_image.rb || die
+}
diff --git a/dev-ruby/ffaker/ffaker-2.23.0.ebuild b/dev-ruby/ffaker/ffaker-2.23.0.ebuild
new file mode 100644
index 000000000000..b14b9e27d72a
--- /dev/null
+++ b/dev-ruby/ffaker/ffaker-2.23.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md REFERENCE.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Faster Faker, generates dummy data"
+HOMEPAGE="https://github.com/ffaker/ffaker"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
+
+all_ruby_prepare() {
+ sed -i -e '/test_image_file/aomit "network"' test/test_image.rb || die
+}
diff --git a/dev-ruby/ffaker/ffaker-2.9.0.ebuild b/dev-ruby/ffaker/ffaker-2.9.0.ebuild
deleted file mode 100644
index df9f13df83a4..000000000000
--- a/dev-ruby/ffaker/ffaker-2.9.0.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md REFERENCE.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Faster Faker, generates dummy data"
-HOMEPAGE="https://github.com/emmanueloga/ffaker"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
diff --git a/dev-ruby/ffaker/metadata.xml b/dev-ruby/ffaker/metadata.xml
index 44ef84b7b9d4..86b453d7c079 100644
--- a/dev-ruby/ffaker/metadata.xml
+++ b/dev-ruby/ffaker/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">emmanueloga/ffaker</remote-id>
+ <remote-id type="github">ffaker/ffaker</remote-id>
+ <remote-id type="rubygems">ffaker</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ffi-compiler/Manifest b/dev-ruby/ffi-compiler/Manifest
new file mode 100644
index 000000000000..63da88b1eb9a
--- /dev/null
+++ b/dev-ruby/ffi-compiler/Manifest
@@ -0,0 +1,2 @@
+DIST ffi-compiler-1.2.1.tar.gz 12754 BLAKE2B 7ad9b38fba6c615059deea155eda2140f61bd177fbd77867c8dd1d3bb0d5774455f9555767547fe833229faeadc5abc806aecb1c67d35b3098df9422964ca430 SHA512 0fb954e83f689be60fafe33acb0f9fd39a3904eb69ab318e01a6028617198e91db78c863e568d2748b2483b373a932b95b62852ca80f0d2bcfb7308df2a8c54a
+DIST ffi-compiler-1.3.2.tar.gz 12121 BLAKE2B dc0b9945036fa5eb65326a91c032b54e8d0ca7a8be275e85a11307ed0a31c1022a566b16e44875a63835ea5f51d3213eafedb2283d9a535c58c0e6dab8d1982e SHA512 48cabec20c099fd51ae9b14829f7bc1f1574a993e55c46d4bcb083a2bc75306345d196319cc2e12ff67011beec3b3fad122bee90f383ef8b37f91179c2fe7a9a
diff --git a/dev-ruby/ffi-compiler/ffi-compiler-1.2.1.ebuild b/dev-ruby/ffi-compiler/ffi-compiler-1.2.1.ebuild
new file mode 100644
index 000000000000..34651be4500b
--- /dev/null
+++ b/dev-ruby/ffi-compiler/ffi-compiler-1.2.1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="none"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby FFI Rakefile generator"
+HOMEPAGE="https://github.com/ffi/ffi/wiki"
+SRC_URI="https://github.com/ffi/ffi-compiler/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+
+ruby_add_rdepend "dev-ruby/rake >=dev-ruby/ffi-1.0.0"
diff --git a/dev-ruby/ffi-compiler/ffi-compiler-1.3.2.ebuild b/dev-ruby/ffi-compiler/ffi-compiler-1.3.2.ebuild
new file mode 100644
index 000000000000..d0a6033acc30
--- /dev/null
+++ b/dev-ruby/ffi-compiler/ffi-compiler-1.3.2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="none"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby FFI Rakefile generator"
+HOMEPAGE="https://github.com/ffi/ffi/wiki"
+SRC_URI="https://github.com/ffi/ffi-compiler/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+
+ruby_add_rdepend "dev-ruby/rake >=dev-ruby/ffi-1.15.5"
+
+all_ruby_prepare() {
+ sed -e "s:_relative ':'./:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/ffi-compiler/metadata.xml b/dev-ruby/ffi-compiler/metadata.xml
new file mode 100644
index 000000000000..b7f236d02d94
--- /dev/null
+++ b/dev-ruby/ffi-compiler/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ffi/ffi-compiler</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/ffi/Manifest b/dev-ruby/ffi/Manifest
index e9856ed202e5..3a24f1658d20 100644
--- a/dev-ruby/ffi/Manifest
+++ b/dev-ruby/ffi/Manifest
@@ -1,4 +1,3 @@
-DIST ffi-git-1.10.0.tgz 166192 BLAKE2B a663da1272a41464bcc3fd6a69055615beaa75aca09da60a4459034230ddb7768573e6a91e75b0e768f16333f23e55e045b6cff3be63c5138c85070903cea869 SHA512 f4a7faa02eda8e67b4c05ecc93ed1848daa9d55ec2eaf367947dbb4cf6b0edd76db1e8232db0a17828df40c3cdabb9f7edac11b44f9de00bdb69d0c9a84d4409
-DIST ffi-git-1.11.0.tgz 156535 BLAKE2B e4c5e6406ff6603a3c41146d6ec3f07fdc3ba2243349b6a77083c195e1b9b40648950c82bcdbb846189b3162c43b23b3cabcde92a4e6f2f9fc8c4ccf03ac473d SHA512 38c66841fb33f7fe7abf0186ef48e28525b9b50450dd886716662ee8cd630374abb41a2fa5fec9cebdcae0e8ffa76ba5b36d89bd441d09a54503032c3950dd08
-DIST ffi-git-1.11.1.tgz 156715 BLAKE2B 4ea2d0f54dc6ef327c57408e568c5f728f5c387e810e25b6becab8119ebd8a20d6c834a80c1ababf3fd4fc4a4d4253146fc161f93fbf02e153f73fc812bad309 SHA512 7f6c2ae66a2ffc40b154ada2d3e2c0f81e79803ba693ce2a83d16ac6a210ac5494bcc4b28948b3b68c9802a7cacce77e4a7cb1c3c1105039c08c50e5c8137fd4
-DIST ffi-git-1.9.25.tgz 164209 BLAKE2B aab3addb5d9138f81d0688ad628082e7aef5f96a1b046dfa57a7195dcf7432533052bb397ac8335f7b17ffece9424fad7d986065a82ac91437e0d8d27d76ac77 SHA512 94a45f4152458d6aedf50645c8074626dcde4326093a606e509c3fbcaac79a1e6a9f7df624f14946db4f3767ef6fb3e311e60531c209676e66ebbf21b07a6786
+DIST ffi-git-1.15.5.tgz 168139 BLAKE2B 2ddd5bd7bfb7bcd39b6d740cbb1e0f4cd419ce6cb4ec12926f91f254b3f3142bc6166728a81a6f23dccfbf7aec911c63237c20fb0e2c70d30d48f4648e352585 SHA512 3668bafae936bf5010f014fbcf63258b023bcc318882775e7d2fcfc11334722ec2b6e8a8b9c910d406889fb173dd503c5c13f5af8e4f6927921f12f688461707
+DIST ffi-git-1.16.2.tgz 183435 BLAKE2B e2c9dad9c18f1a675905a000c8cec4ecfd0213df52476df21a035ca96faf257260896721364fcadc2e3bfec364dc7d036fc7402ebcc1c1a10af15f8ce9e2df7c SHA512 8329b67fbb6b1c9a8df1eacc2f8b1c2e2b2d80902914af76060fb9f3dad493ca4cfa0624596c080d641f38324bef165f2a6f7fafefe3e0e0653951f8189ed579
+DIST ffi-git-1.16.3.tgz 183977 BLAKE2B 97f4f0bfc8f43e3a3651b48345c72cc8913f5658c2e838835340082205880309b8f270116dffbc253c78e63ae1c94f392c6ef8741e52852890ac81d00767de19 SHA512 622aae9d55b8e859eab58988eaf976206010ab816351567f2525e606b83b3349ce6b9f114208ba9a7c6de97cc6fe73f5708cf968b7dea0944134c6cb44b55c9b
diff --git a/dev-ruby/ffi/ffi-1.10.0.ebuild b/dev-ruby/ffi/ffi-1.10.0.ebuild
deleted file mode 100644
index 44bdff1ecb43..000000000000
--- a/dev-ruby/ffi/ffi-1.10.0.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby extension for programmatically loading dynamic libraries"
-HOMEPAGE="https://wiki.github.com/ffi/ffi"
-
-SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
-
-IUSE=""
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-RDEPEND+=" virtual/libffi"
-DEPEND+=" virtual/libffi"
-
-ruby_add_bdepend "dev-ruby/rake"
-
-all_ruby_prepare() {
- sed -i -e '/tasks/ s:^:#:' \
- -e '/Gem::Tasks/,/end/ s:^:#:' Rakefile || die
-
- # Fix Makefile for tests
- sed -i -e '/CCACHE :=/ s:^:#:' \
- -e 's/-O2//' \
- -e 's/^CFLAGS =/CFLAGS +=/' libtest/GNUmakefile || die
-
- # Remove bundled version of libffi.
- rm -rf ext/ffi_c/libffi || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/ffi_c extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/ffi_c V=1
- cp ext/ffi_c/ffi_c$(get_modname) lib/ || die
-
- ${RUBY} -S rake -f gen/Rakefile || die "types.conf generation failed"
-}
-
-each_ruby_test() {
- CC=$(tc-getCC) CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" ${RUBY} -S rspec spec || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc samples/*
-}
diff --git a/dev-ruby/ffi/ffi-1.11.0.ebuild b/dev-ruby/ffi/ffi-1.11.0.ebuild
deleted file mode 100644
index 3f78f61b9bd1..000000000000
--- a/dev-ruby/ffi/ffi-1.11.0.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby extension for programmatically loading dynamic libraries"
-HOMEPAGE="https://wiki.github.com/ffi/ffi"
-
-SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
-
-IUSE=""
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-RDEPEND+=" virtual/libffi"
-DEPEND+=" virtual/libffi"
-
-ruby_add_bdepend "dev-ruby/rake"
-
-all_ruby_prepare() {
- sed -i -e '/tasks/ s:^:#:' \
- -e '/Gem::Tasks/,/end/ s:^:#:' Rakefile || die
-
- # Fix Makefile for tests
- sed -i -e '/CCACHE :=/ s:^:#:' \
- -e 's/-O2//' \
- -e 's/^CFLAGS =/CFLAGS +=/' spec/ffi/fixtures/GNUmakefile || die
-
- # Remove bundled version of libffi.
- rm -rf ext/ffi_c/libffi || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/ffi_c extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/ffi_c V=1
- cp ext/ffi_c/ffi_c$(get_modname) lib/ || die
-
- ${RUBY} -S rake -f gen/Rakefile || die "types.conf generation failed"
-}
-
-each_ruby_test() {
- CC=$(tc-getCC) CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" ${RUBY} -S rspec spec || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc samples/*
-}
diff --git a/dev-ruby/ffi/ffi-1.11.1.ebuild b/dev-ruby/ffi/ffi-1.11.1.ebuild
deleted file mode 100644
index 3f78f61b9bd1..000000000000
--- a/dev-ruby/ffi/ffi-1.11.1.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby extension for programmatically loading dynamic libraries"
-HOMEPAGE="https://wiki.github.com/ffi/ffi"
-
-SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
-
-IUSE=""
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-RDEPEND+=" virtual/libffi"
-DEPEND+=" virtual/libffi"
-
-ruby_add_bdepend "dev-ruby/rake"
-
-all_ruby_prepare() {
- sed -i -e '/tasks/ s:^:#:' \
- -e '/Gem::Tasks/,/end/ s:^:#:' Rakefile || die
-
- # Fix Makefile for tests
- sed -i -e '/CCACHE :=/ s:^:#:' \
- -e 's/-O2//' \
- -e 's/^CFLAGS =/CFLAGS +=/' spec/ffi/fixtures/GNUmakefile || die
-
- # Remove bundled version of libffi.
- rm -rf ext/ffi_c/libffi || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/ffi_c extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/ffi_c V=1
- cp ext/ffi_c/ffi_c$(get_modname) lib/ || die
-
- ${RUBY} -S rake -f gen/Rakefile || die "types.conf generation failed"
-}
-
-each_ruby_test() {
- CC=$(tc-getCC) CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" ${RUBY} -S rspec spec || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc samples/*
-}
diff --git a/dev-ruby/ffi/ffi-1.15.5-r1.ebuild b/dev-ruby/ffi/ffi-1.15.5-r1.ebuild
new file mode 100644
index 000000000000..6e437818f9b5
--- /dev/null
+++ b/dev-ruby/ffi/ffi-1.15.5-r1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="ffi.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/ffi_c/extconf.rb)
+
+inherit ruby-fakegem toolchain-funcs
+
+DESCRIPTION="Ruby extension for programmatically loading dynamic libraries"
+HOMEPAGE="https://github.com/ffi/ffi/wiki"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+RDEPEND+=" dev-libs/libffi:="
+DEPEND+=" dev-libs/libffi:="
+
+ruby_add_bdepend "dev-ruby/rake"
+
+PATCHES=(
+ "${FILESDIR}/backport-pr-962.patch"
+ "${FILESDIR}/pr-957-sparc.patch" # submitted upstream as https://github.com/ffi/ffi/pull/957
+ "${FILESDIR}/fix-regenerate-types-conf.patch"
+)
+
+all_ruby_prepare() {
+ sed -i -e '/tasks/ s:^:#:' \
+ -e '/Gem::Tasks/,/end/ s:^:#:' Rakefile || die
+
+ sed -e '/require/c\require "./lib/ffi/version"' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -e '/^ lfs/,/^ end/ s:^:#:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Fix Makefile for tests
+ sed -i -e '/CCACHE :=/ s:^:#:' \
+ -e 's/-O2//' \
+ -e 's/^CFLAGS =/CFLAGS +=/' spec/ffi/fixtures/GNUmakefile || die
+
+ # Remove bundled version of libffi.
+ rm -rf ext/ffi_c/libffi || die
+}
+
+each_ruby_compile() {
+ each_fakegem_compile
+
+ ${RUBY} -S rake -f gen/Rakefile || die "types.conf generation failed"
+}
+
+each_ruby_test() {
+ CC=$(tc-getCC) CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" ${RUBY} -S rspec spec || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc samples/*
+}
diff --git a/dev-ruby/ffi/ffi-1.15.5-r2.ebuild b/dev-ruby/ffi/ffi-1.15.5-r2.ebuild
new file mode 100644
index 000000000000..023d26c3c3de
--- /dev/null
+++ b/dev-ruby/ffi/ffi-1.15.5-r2.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="ffi.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/ffi_c/extconf.rb)
+
+inherit ruby-fakegem toolchain-funcs
+
+DESCRIPTION="Ruby extension for programmatically loading dynamic libraries"
+HOMEPAGE="https://github.com/ffi/ffi/wiki"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+# Needs recent libffi for HPPA fixes (and probably Apple arm64 too)
+RDEPEND+=" >=dev-libs/libffi-3.4.4-r1:="
+DEPEND+=" >=dev-libs/libffi-3.4.4-r1:="
+
+ruby_add_bdepend "dev-ruby/rake"
+
+PATCHES=(
+ "${FILESDIR}/backport-pr-962.patch"
+ "${FILESDIR}/pr-957-sparc.patch" # submitted upstream as https://github.com/ffi/ffi/pull/957
+ "${FILESDIR}/fix-regenerate-types-conf.patch"
+ "${FILESDIR}/use-libffi-closure-allocations-on-hppa.patch"
+ "${FILESDIR}/add-types.conf-for-hppa2.0-linux.patch"
+)
+
+all_ruby_prepare() {
+ sed -i -e '/tasks/ s:^:#:' \
+ -e '/Gem::Tasks/,/end/ s:^:#:' Rakefile || die
+
+ sed -e '/require/c\require "./lib/ffi/version"' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -e '/^ lfs/,/^ end/ s:^:#:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Fix Makefile for tests
+ sed -i -e '/CCACHE :=/ s:^:#:' \
+ -e 's/-O2//' \
+ -e 's/^CFLAGS =/CFLAGS +=/' spec/ffi/fixtures/GNUmakefile || die
+
+ # Remove bundled version of libffi.
+ rm -rf ext/ffi_c/libffi || die
+}
+
+each_ruby_compile() {
+ each_fakegem_compile
+
+ ${RUBY} -S rake -f gen/Rakefile || die "types.conf generation failed"
+}
+
+each_ruby_test() {
+ CC=$(tc-getCC) CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" ${RUBY} -S rspec spec || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc samples/*
+}
diff --git a/dev-ruby/ffi/ffi-1.16.2.ebuild b/dev-ruby/ffi/ffi-1.16.2.ebuild
new file mode 100644
index 000000000000..dd92a3fe02db
--- /dev/null
+++ b/dev-ruby/ffi/ffi-1.16.2.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="ffi.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/ffi_c/extconf.rb)
+
+inherit ruby-fakegem toolchain-funcs
+
+DESCRIPTION="Ruby extension for programmatically loading dynamic libraries"
+HOMEPAGE="https://github.com/ffi/ffi/wiki"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+# Needs recent libffi for HPPA fixes (and probably Apple arm64 too)
+RDEPEND+=" >=dev-libs/libffi-3.4.4-r1:="
+DEPEND+=" >=dev-libs/libffi-3.4.4-r1:="
+
+ruby_add_bdepend "dev-ruby/rake"
+
+all_ruby_prepare() {
+ sed -i -e '/tasks/ s:^:#:' \
+ -e '/Gem::Tasks/,/end/ s:^:#:' Rakefile || die
+
+ sed -e '/require/c\require "./lib/ffi/version"' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -e '/^ lfs/,/^ end/ s:^:#:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Fix Makefile for tests
+ sed -i -e '/CCACHE :=/ s:^:#:' \
+ -e 's/-O2//' \
+ -e 's/^CFLAGS =/CFLAGS +=/' spec/ffi/fixtures/GNUmakefile || die
+
+ # Remove bundled version of libffi.
+ rm -rf ext/ffi_c/libffi || die
+}
+
+each_ruby_compile() {
+ each_fakegem_compile
+
+ ${RUBY} -S rake -f gen/Rakefile || die "types.conf generation failed"
+}
+
+each_ruby_test() {
+ CC=$(tc-getCC) CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" ${RUBY} -S rspec spec || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc samples/*
+}
diff --git a/dev-ruby/ffi/ffi-1.16.3.ebuild b/dev-ruby/ffi/ffi-1.16.3.ebuild
new file mode 100644
index 000000000000..de78f53b4b27
--- /dev/null
+++ b/dev-ruby/ffi/ffi-1.16.3.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="ffi.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/ffi_c/extconf.rb)
+
+inherit ruby-fakegem toolchain-funcs
+
+DESCRIPTION="Ruby extension for programmatically loading dynamic libraries"
+HOMEPAGE="https://github.com/ffi/ffi/wiki"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+# Needs recent libffi for HPPA fixes (and probably Apple arm64 too)
+RDEPEND+=" >=dev-libs/libffi-3.4.4-r1:="
+DEPEND+=" >=dev-libs/libffi-3.4.4-r1:="
+
+ruby_add_bdepend "dev-ruby/rake"
+
+all_ruby_prepare() {
+ sed -i -e '/tasks/ s:^:#:' \
+ -e '/Gem::Tasks/,/end/ s:^:#:' Rakefile || die
+
+ sed -e '/require/c\require "./lib/ffi/version"' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -e '/^ lfs/,/^ end/ s:^:#:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Fix Makefile for tests
+ sed -i -e '/CCACHE :=/ s:^:#:' \
+ -e 's/-O2//' \
+ -e 's/^CFLAGS =/CFLAGS +=/' spec/ffi/fixtures/GNUmakefile || die
+
+ # Remove bundled version of libffi.
+ rm -rf ext/ffi_c/libffi || die
+}
+
+each_ruby_compile() {
+ each_fakegem_compile
+
+ ${RUBY} -S rake -f gen/Rakefile || die "types.conf generation failed"
+}
+
+each_ruby_test() {
+ CC=$(tc-getCC) CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" ${RUBY} -S rspec spec || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc samples/*
+}
diff --git a/dev-ruby/ffi/ffi-1.9.25.ebuild b/dev-ruby/ffi/ffi-1.9.25.ebuild
deleted file mode 100644
index 479e12fa8481..000000000000
--- a/dev-ruby/ffi/ffi-1.9.25.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby extension for programmatically loading dynamic libraries"
-HOMEPAGE="https://wiki.github.com/ffi/ffi"
-
-SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
-
-IUSE=""
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-RDEPEND+=" virtual/libffi"
-DEPEND+=" virtual/libffi"
-
-ruby_add_bdepend "dev-ruby/rake"
-
-all_ruby_prepare() {
- sed -i -e '/tasks/ s:^:#:' \
- -e '/Gem::Tasks/,/end/ s:^:#:' Rakefile || die
-
- # Fix Makefile for tests
- sed -i -e '/CCACHE :=/ s:^:#:' \
- -e 's/-O2//' \
- -e 's/^CFLAGS =/CFLAGS +=/' libtest/GNUmakefile || die
-
- # Remove bundled version of libffi.
- rm -rf ext/ffi_c/libffi || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/ffi_c extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/ffi_c V=1
- cp ext/ffi_c/ffi_c$(get_modname) lib/ || die
-
- ${RUBY} -S rake -f gen/Rakefile || die "types.conf generation failed"
-}
-
-each_ruby_test() {
- CC=$(tc-getCC) CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" ${RUBY} -S rspec spec || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc samples/*
-}
diff --git a/dev-ruby/ffi/files/add-types.conf-for-hppa2.0-linux.patch b/dev-ruby/ffi/files/add-types.conf-for-hppa2.0-linux.patch
new file mode 100644
index 000000000000..2594d2b8359c
--- /dev/null
+++ b/dev-ruby/ffi/files/add-types.conf-for-hppa2.0-linux.patch
@@ -0,0 +1,191 @@
+https://github.com/ffi/ffi/pull/1017
+
+From 1f0a4db3d6b16142d2ef547c8dde7a36b21bd39a Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sun, 9 Apr 2023 02:20:32 +0100
+Subject: [PATCH 2/2] Add types.conf for hppa2.0-linux
+
+--- /dev/null
++++ b/lib/ffi/platform/hppa2.0-linux/types.conf
+@@ -0,0 +1,178 @@
++rbx.platform.typedef.*__caddr_t = char
++rbx.platform.typedef.__blkcnt64_t = long_long
++rbx.platform.typedef.__blkcnt_t = long
++rbx.platform.typedef.__blksize_t = long
++rbx.platform.typedef.__clock_t = long
++rbx.platform.typedef.__clockid_t = int
++rbx.platform.typedef.__daddr_t = int
++rbx.platform.typedef.__dev_t = ulong_long
++rbx.platform.typedef.__fd_mask = long
++rbx.platform.typedef.__fsblkcnt64_t = ulong_long
++rbx.platform.typedef.__fsblkcnt_t = ulong
++rbx.platform.typedef.__fsfilcnt64_t = ulong_long
++rbx.platform.typedef.__fsfilcnt_t = ulong
++rbx.platform.typedef.__fsword_t = int
++rbx.platform.typedef.__gid_t = uint
++rbx.platform.typedef.__id_t = uint
++rbx.platform.typedef.__ino64_t = ulong_long
++rbx.platform.typedef.__ino_t = ulong
++rbx.platform.typedef.__int16_t = short
++rbx.platform.typedef.__int32_t = int
++rbx.platform.typedef.__int64_t = long_long
++rbx.platform.typedef.__int8_t = char
++rbx.platform.typedef.__int_least16_t = short
++rbx.platform.typedef.__int_least32_t = int
++rbx.platform.typedef.__int_least64_t = long_long
++rbx.platform.typedef.__int_least8_t = char
++rbx.platform.typedef.__intmax_t = long_long
++rbx.platform.typedef.__intptr_t = int
++rbx.platform.typedef.__kernel_caddr_t = string
++rbx.platform.typedef.__kernel_clock_t = long
++rbx.platform.typedef.__kernel_clockid_t = int
++rbx.platform.typedef.__kernel_daddr_t = int
++rbx.platform.typedef.__kernel_gid16_t = ushort
++rbx.platform.typedef.__kernel_gid32_t = uint
++rbx.platform.typedef.__kernel_gid_t = uint
++rbx.platform.typedef.__kernel_ino64_t = ulong_long
++rbx.platform.typedef.__kernel_ino_t = ulong
++rbx.platform.typedef.__kernel_ipc_pid_t = ushort
++rbx.platform.typedef.__kernel_key_t = int
++rbx.platform.typedef.__kernel_loff_t = long_long
++rbx.platform.typedef.__kernel_long_t = long
++rbx.platform.typedef.__kernel_mode_t = ushort
++rbx.platform.typedef.__kernel_mqd_t = int
++rbx.platform.typedef.__kernel_off64_t = long_long
++rbx.platform.typedef.__kernel_off_t = long
++rbx.platform.typedef.__kernel_old_dev_t = uint
++rbx.platform.typedef.__kernel_old_gid_t = uint
++rbx.platform.typedef.__kernel_old_time_t = long
++rbx.platform.typedef.__kernel_old_uid_t = uint
++rbx.platform.typedef.__kernel_pid_t = int
++rbx.platform.typedef.__kernel_ptrdiff_t = int
++rbx.platform.typedef.__kernel_size_t = uint
++rbx.platform.typedef.__kernel_ssize_t = int
++rbx.platform.typedef.__kernel_suseconds_t = long
++rbx.platform.typedef.__kernel_time64_t = long_long
++rbx.platform.typedef.__kernel_time_t = long
++rbx.platform.typedef.__kernel_timer_t = int
++rbx.platform.typedef.__kernel_uid16_t = ushort
++rbx.platform.typedef.__kernel_uid32_t = uint
++rbx.platform.typedef.__kernel_uid_t = uint
++rbx.platform.typedef.__kernel_ulong_t = ulong
++rbx.platform.typedef.__key_t = int
++rbx.platform.typedef.__loff_t = long_long
++rbx.platform.typedef.__mode_t = uint
++rbx.platform.typedef.__nlink_t = uint
++rbx.platform.typedef.__off64_t = long_long
++rbx.platform.typedef.__off_t = long
++rbx.platform.typedef.__pid_t = int
++rbx.platform.typedef.__priority_which_t = int
++rbx.platform.typedef.__quad_t = long_long
++rbx.platform.typedef.__rlim64_t = ulong_long
++rbx.platform.typedef.__rlim_t = ulong
++rbx.platform.typedef.__rlimit_resource_t = int
++rbx.platform.typedef.__rusage_who_t = int
++rbx.platform.typedef.__sig_atomic_t = int
++rbx.platform.typedef.__socklen_t = uint
++rbx.platform.typedef.__ssize_t = int
++rbx.platform.typedef.__suseconds64_t = long_long
++rbx.platform.typedef.__suseconds_t = long
++rbx.platform.typedef.__syscall_slong_t = long
++rbx.platform.typedef.__syscall_ulong_t = ulong
++rbx.platform.typedef.__thrd_t = ulong
++rbx.platform.typedef.__time64_t = long_long
++rbx.platform.typedef.__time_t = long
++rbx.platform.typedef.__timer_t = pointer
++rbx.platform.typedef.__tss_t = uint
++rbx.platform.typedef.__u_char = uchar
++rbx.platform.typedef.__u_int = uint
++rbx.platform.typedef.__u_long = ulong
++rbx.platform.typedef.__u_quad_t = ulong_long
++rbx.platform.typedef.__u_short = ushort
++rbx.platform.typedef.__uid_t = uint
++rbx.platform.typedef.__uint16_t = ushort
++rbx.platform.typedef.__uint32_t = uint
++rbx.platform.typedef.__uint64_t = ulong_long
++rbx.platform.typedef.__uint8_t = uchar
++rbx.platform.typedef.__uint_least16_t = ushort
++rbx.platform.typedef.__uint_least32_t = uint
++rbx.platform.typedef.__uint_least64_t = ulong_long
++rbx.platform.typedef.__uint_least8_t = uchar
++rbx.platform.typedef.__uintmax_t = ulong_long
++rbx.platform.typedef.__useconds_t = uint
++rbx.platform.typedef.blkcnt_t = long_long
++rbx.platform.typedef.blksize_t = long
++rbx.platform.typedef.clock_t = long
++rbx.platform.typedef.clockid_t = int
++rbx.platform.typedef.daddr_t = int
++rbx.platform.typedef.dev_t = ulong_long
++rbx.platform.typedef.fd_mask = long
++rbx.platform.typedef.fsblkcnt_t = ulong_long
++rbx.platform.typedef.fsfilcnt_t = ulong_long
++rbx.platform.typedef.gid_t = uint
++rbx.platform.typedef.id_t = uint
++rbx.platform.typedef.in_addr_t = uint
++rbx.platform.typedef.in_port_t = ushort
++rbx.platform.typedef.ino_t = ulong_long
++rbx.platform.typedef.int16_t = short
++rbx.platform.typedef.int32_t = int
++rbx.platform.typedef.int64_t = long_long
++rbx.platform.typedef.int8_t = char
++rbx.platform.typedef.int_fast16_t = int
++rbx.platform.typedef.int_fast32_t = int
++rbx.platform.typedef.int_fast64_t = long_long
++rbx.platform.typedef.int_fast8_t = char
++rbx.platform.typedef.int_least16_t = short
++rbx.platform.typedef.int_least32_t = int
++rbx.platform.typedef.int_least64_t = long_long
++rbx.platform.typedef.int_least8_t = char
++rbx.platform.typedef.intmax_t = long_long
++rbx.platform.typedef.intptr_t = int
++rbx.platform.typedef.key_t = int
++rbx.platform.typedef.loff_t = long_long
++rbx.platform.typedef.mode_t = uint
++rbx.platform.typedef.nlink_t = uint
++rbx.platform.typedef.off_t = long_long
++rbx.platform.typedef.pid_t = int
++rbx.platform.typedef.pthread_key_t = uint
++rbx.platform.typedef.pthread_once_t = int
++rbx.platform.typedef.pthread_t = ulong
++rbx.platform.typedef.ptrdiff_t = int
++rbx.platform.typedef.quad_t = long_long
++rbx.platform.typedef.register_t = long
++rbx.platform.typedef.rlim_t = ulong_long
++rbx.platform.typedef.sa_family_t = ushort
++rbx.platform.typedef.size_t = uint
++rbx.platform.typedef.socklen_t = uint
++rbx.platform.typedef.ssize_t = int
++rbx.platform.typedef.suseconds_t = long
++rbx.platform.typedef.time_t = long
++rbx.platform.typedef.timer_t = pointer
++rbx.platform.typedef.u_char = uchar
++rbx.platform.typedef.u_int = uint
++rbx.platform.typedef.u_int16_t = ushort
++rbx.platform.typedef.u_int32_t = uint
++rbx.platform.typedef.u_int64_t = ulong_long
++rbx.platform.typedef.u_int8_t = uchar
++rbx.platform.typedef.u_long = ulong
++rbx.platform.typedef.u_quad_t = ulong_long
++rbx.platform.typedef.u_short = ushort
++rbx.platform.typedef.uid_t = uint
++rbx.platform.typedef.uint = uint
++rbx.platform.typedef.uint16_t = ushort
++rbx.platform.typedef.uint32_t = uint
++rbx.platform.typedef.uint64_t = ulong_long
++rbx.platform.typedef.uint8_t = uchar
++rbx.platform.typedef.uint_fast16_t = uint
++rbx.platform.typedef.uint_fast32_t = uint
++rbx.platform.typedef.uint_fast64_t = ulong_long
++rbx.platform.typedef.uint_fast8_t = uchar
++rbx.platform.typedef.uint_least16_t = ushort
++rbx.platform.typedef.uint_least32_t = uint
++rbx.platform.typedef.uint_least64_t = ulong_long
++rbx.platform.typedef.uint_least8_t = uchar
++rbx.platform.typedef.uintmax_t = ulong_long
++rbx.platform.typedef.uintptr_t = uint
++rbx.platform.typedef.ulong = ulong
++rbx.platform.typedef.ushort = ushort
++rbx.platform.typedef.wchar_t = long
+--
+2.40.0
+
diff --git a/dev-ruby/ffi/files/backport-pr-962.patch b/dev-ruby/ffi/files/backport-pr-962.patch
new file mode 100644
index 000000000000..708c52025bd5
--- /dev/null
+++ b/dev-ruby/ffi/files/backport-pr-962.patch
@@ -0,0 +1,48 @@
+From edc54894f77d00c4ca34593c8b4c94f656f5807e Mon Sep 17 00:00:00 2001
+From: Frederick Cheung <frederick.cheung@gmail.com>
+Date: Fri, 17 Jun 2022 18:57:28 +0100
+Subject: [PATCH] Fix Pointer#initialize using NUM2LL instead of NUM2ULL
+
+If the high bit of the address was set this would raise RangeError
+(bignum too big to convert into long long). This is not uncommon on
+platforms that use the high bits of pointers for purposes such as
+pointer authentication
+
+This also now matches Pointer#address which uses ULL2NUM.
+---
+ ext/ffi_c/Pointer.c | 2 +-
+ spec/ffi/pointer_spec.rb | 8 ++++++++
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/ext/ffi_c/Pointer.c b/ext/ffi_c/Pointer.c
+index 153fff101..79886811f 100644
+--- a/ext/ffi_c/Pointer.c
++++ b/ext/ffi_c/Pointer.c
+@@ -112,7 +112,7 @@ ptr_initialize(int argc, VALUE* argv, VALUE self)
+ switch (TYPE(rbAddress)) {
+ case T_FIXNUM:
+ case T_BIGNUM:
+- p->memory.address = (void*) (uintptr_t) NUM2LL(rbAddress);
++ p->memory.address = (void*) (uintptr_t) NUM2ULL(rbAddress);
+ p->memory.size = LONG_MAX;
+ if (p->memory.address == NULL) {
+ p->memory.flags = 0;
+diff --git a/spec/ffi/pointer_spec.rb b/spec/ffi/pointer_spec.rb
+index b216a161d..7a2ac1565 100644
+--- a/spec/ffi/pointer_spec.rb
++++ b/spec/ffi/pointer_spec.rb
+@@ -237,6 +237,14 @@ def to_ptr
+ expect(FFI::Pointer.new(0).slice(0, 10).size_limit?).to be true
+ end
+ end
++
++ describe "#initialise" do
++ it 'can use adresses with high bit set' do
++ max_address = 2**FFI::Platform::ADDRESS_SIZE - 1
++ pointer = FFI::Pointer.new(:uint8, max_address)
++ expect(pointer.address).to eq(max_address)
++ end
++ end
+ end
+
+ describe "AutoPointer" do
diff --git a/dev-ruby/ffi/files/fix-regenerate-types-conf.patch b/dev-ruby/ffi/files/fix-regenerate-types-conf.patch
new file mode 100644
index 000000000000..1c1cca1c7d4d
--- /dev/null
+++ b/dev-ruby/ffi/files/fix-regenerate-types-conf.patch
@@ -0,0 +1,23 @@
+https://github.com/ffi/ffi/commit/19348fe09e1aeb08424abdf331c3497159139f20
+
+From 19348fe09e1aeb08424abdf331c3497159139f20 Mon Sep 17 00:00:00 2001
+From: matoro <matoro@users.noreply.github.com>
+Date: Tue, 14 Mar 2023 21:03:33 -0400
+Subject: [PATCH] Update gen/Rakefile for Ruby 3 compat
+
+Ruby 3 changed the 'mode' argument from an option hash to keyword
+argument. This change is backwards-compatible with Ruby 2.
+
+See: https://github.com/ruby/fileutils/commit/482de6d397742526d1111576e2791f9b7051e3c0
+--- a/gen/Rakefile
++++ b/gen/Rakefile
+@@ -9,7 +9,7 @@ logfile = File.join(File.dirname(__FILE__), 'log')
+
+ file types_conf do |task|
+ options = {}
+- FileUtils.mkdir_p(File.dirname(task.name), { :mode => 0755 })
++ FileUtils.mkdir_p(File.dirname(task.name), mode: 0755)
+ File.open(task.name, File::CREAT|File::TRUNC|File::RDWR, 0644) do |f|
+ f.puts FFI::TypesGenerator.generate(options)
+ end
+
diff --git a/dev-ruby/ffi/files/pr-957-sparc.patch b/dev-ruby/ffi/files/pr-957-sparc.patch
new file mode 100644
index 000000000000..b68b5e06a7d4
--- /dev/null
+++ b/dev-ruby/ffi/files/pr-957-sparc.patch
@@ -0,0 +1,42 @@
+From 241b10322283743b79c9489993bfb964b5167f7f Mon Sep 17 00:00:00 2001
+From: matoro <matoro@users.noreply.github.com>
+Date: Wed, 25 May 2022 14:23:55 -0400
+Subject: [PATCH 1/2] Rename sparc64-linux -> sparcv9-linux
+
+In https://github.com/ffi/ffi/pull/575, 64-bit sparc was changed to also
+use sparcv9 as the platform name, but the types.conf directory was never
+renamed. This breaks only on Ruby 3.0 and later due to the fileutils
+change to use keyword arguments in
+https://github.com/ruby/fileutils/commit/482de6d397742526d1111576e2791f9b7051e3c0
+---
+ lib/ffi/platform/{sparc64-linux => sparcv9-linux}/types.conf | 0
+ 1 file changed, 0 insertions(+), 0 deletions(-)
+ rename lib/ffi/platform/{sparc64-linux => sparcv9-linux}/types.conf (100%)
+
+diff --git a/lib/ffi/platform/sparc64-linux/types.conf b/lib/ffi/platform/sparcv9-linux/types.conf
+similarity index 100%
+rename from lib/ffi/platform/sparc64-linux/types.conf
+rename to lib/ffi/platform/sparcv9-linux/types.conf
+
+From 76dc5c7d69a445268f47f5b6a9185e644bcd68e8 Mon Sep 17 00:00:00 2001
+From: matoro <matoro@users.noreply.github.com>
+Date: Mon, 13 Jun 2022 22:56:26 -0400
+Subject: [PATCH 2/2] Also normalize sparc64 -> sparcv9 in test fixture
+
+---
+ spec/ffi/fixtures/compile.rb | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/spec/ffi/fixtures/compile.rb b/spec/ffi/fixtures/compile.rb
+index f2e831a63..58ee5611d 100644
+--- a/spec/ffi/fixtures/compile.rb
++++ b/spec/ffi/fixtures/compile.rb
+@@ -22,6 +22,8 @@ module TestLibrary
+ "powerpc64"
+ when /ppc|powerpc/
+ "powerpc"
++ when /sparcv9|sparc64/
++ "sparcv9"
+ when /^arm/
+ if RbConfig::CONFIG['host_os'] =~ /darwin/
+ "aarch64"
diff --git a/dev-ruby/ffi/files/use-libffi-closure-allocations-on-hppa.patch b/dev-ruby/ffi/files/use-libffi-closure-allocations-on-hppa.patch
new file mode 100644
index 000000000000..6a76a91c0842
--- /dev/null
+++ b/dev-ruby/ffi/files/use-libffi-closure-allocations-on-hppa.patch
@@ -0,0 +1,21 @@
+https://github.com/ffi/ffi/pull/1017
+
+From 587822fa8d21292d39400d2276ca49d37a752135 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sun, 9 Apr 2023 02:17:23 +0100
+Subject: [PATCH 1/2] Use libffi closure allocations on hppa
+
+We currently do this for Apple arm64, but we need to do it for hppa too.
+--- a/ext/ffi_c/extconf.rb
++++ b/ext/ffi_c/extconf.rb
+@@ -61,6 +61,7 @@ if RUBY_ENGINE == 'ruby' || RUBY_ENGINE == 'rbx'
+ append_ldflags "-pthread"
+
+ ffi_alloc_default = RbConfig::CONFIG['host_os'] =~ /darwin/i && RbConfig::CONFIG['host'] =~ /arm|aarch64/i
++ ffi_alloc_default = ffi_alloc_default || RbConfig::CONFIG['host'] =~ /hppa/i
+ if enable_config('libffi-alloc', ffi_alloc_default)
+ $defs << "-DUSE_FFI_ALLOC"
+ end
+--
+2.40.0
+
diff --git a/dev-ruby/ffi/metadata.xml b/dev-ruby/ffi/metadata.xml
index 48be43c36df0..d9f1a744781e 100644
--- a/dev-ruby/ffi/metadata.xml
+++ b/dev-ruby/ffi/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/fiber-annotation/Manifest b/dev-ruby/fiber-annotation/Manifest
new file mode 100644
index 000000000000..859ca1bd42d8
--- /dev/null
+++ b/dev-ruby/fiber-annotation/Manifest
@@ -0,0 +1 @@
+DIST fiber-annotation-0.2.0.tar.gz 5743 BLAKE2B 87ab3601f53ecbac05ed251438b95f10d26078d319ced6fcde6e1b9c96d58bcbd5c8d5e9e15325f54c32543b61e91ce53f02964aacb8afc57d7636aa70597007 SHA512 d030ad1a3824ea2e7b31781ed31aa1fba187c44479351fb21911ade090f8596b38f5b6352420b26df705d12b086421b78a4987590169a33550de1ed565630e87
diff --git a/dev-ruby/fiber-annotation/fiber-annotation-0.2.0.ebuild b/dev-ruby/fiber-annotation/fiber-annotation-0.2.0.ebuild
new file mode 100644
index 000000000000..d7b34ae9f45a
--- /dev/null
+++ b/dev-ruby/fiber-annotation/fiber-annotation-0.2.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A mechanism for annotating fibers"
+HOMEPAGE="https://github.com/ioquatix/fiber-annotation"
+SRC_URI="https://github.com/ioquatix/fiber-annotation/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid unpackaged sus covered
+ rm -f config/sus.rb
+}
diff --git a/dev-ruby/fiber-annotation/metadata.xml b/dev-ruby/fiber-annotation/metadata.xml
new file mode 100644
index 000000000000..c20327fbd2e4
--- /dev/null
+++ b/dev-ruby/fiber-annotation/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ioquatix/fiber-annotation</remote-id>
+ <remote-id type="rubygems">fiber-annotation</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/fiber-local/Manifest b/dev-ruby/fiber-local/Manifest
new file mode 100644
index 000000000000..52c6faa57383
--- /dev/null
+++ b/dev-ruby/fiber-local/Manifest
@@ -0,0 +1 @@
+DIST fiber-local-1.0.0.tar.gz 3780 BLAKE2B 5360ebdc2f3958863742e5ca1e1cdefe76e4487bad2257a1bd34a8a6769b1191e1a8f0ba8c7dfe1481f73fdd8b9ee1a014b11e5527273dbb0ee6d8a94edae2ae SHA512 5f77213c3760bb7c23a6912f138e46aa54d8508c11d02dadde5ddbc4ab03976abccb37ad2b1b43b118eddfb7a5e8ca4ee647a7fea1bac5ee4d7b39e8dc8f8424
diff --git a/dev-ruby/fiber-local/fiber-local-1.0.0.ebuild b/dev-ruby/fiber-local/fiber-local-1.0.0.ebuild
new file mode 100644
index 000000000000..87e471a8fae8
--- /dev/null
+++ b/dev-ruby/fiber-local/fiber-local-1.0.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a class-level mixin to make fiber local state easy"
+HOMEPAGE="https://github.com/socketry/fiber-local"
+SRC_URI="https://github.com/socketry/fiber-local/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ sed -i -e '/\(bundler\|covered\)/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/fiber-local/metadata.xml b/dev-ruby/fiber-local/metadata.xml
new file mode 100644
index 000000000000..cbcf3060e8d9
--- /dev/null
+++ b/dev-ruby/fiber-local/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">socketry/fiber-local</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/file-tail/file-tail-1.2.0-r1.ebuild b/dev-ruby/file-tail/file-tail-1.2.0-r1.ebuild
new file mode 100644
index 000000000000..752ea7517b83
--- /dev/null
+++ b/dev-ruby/file-tail/file-tail-1.2.0-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+RUBY_FAKEGEM_DOC_SOURCES="lib README.md"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A small ruby library that allows it to 'tail' files in Ruby"
+HOMEPAGE="https://flori.github.io/file-tail/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "=dev-ruby/tins-1*"
+ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
+
+all_ruby_prepare() {
+ sed -i -e '/test_tail_change2/aomit "has race condition"' tests/file_tail_test.rb || die
+}
+
+each_ruby_test() {
+ ruby-ng_testrb-2 -Ilib tests/*_test.rb
+
+ rm -f test.*
+}
diff --git a/dev-ruby/file-tail/file-tail-1.2.0.ebuild b/dev-ruby/file-tail/file-tail-1.2.0.ebuild
deleted file mode 100644
index b04bfd77744d..000000000000
--- a/dev-ruby/file-tail/file-tail-1.2.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOC_SOURCES="lib README.md"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A small ruby library that allows it to 'tail' files in Ruby"
-HOMEPAGE="https://flori.github.com/file-tail"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "=dev-ruby/tins-1*"
-ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib tests/*_test.rb
-
- rm -f test.*
-}
diff --git a/dev-ruby/file-tail/metadata.xml b/dev-ruby/file-tail/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/file-tail/metadata.xml
+++ b/dev-ruby/file-tail/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/filesize/filesize-0.2.0-r1.ebuild b/dev-ruby/filesize/filesize-0.2.0-r1.ebuild
new file mode 100644
index 000000000000..4864cb761b5a
--- /dev/null
+++ b/dev-ruby/filesize/filesize-0.2.0-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Small class for handling filesizes with both the SI and binary prefixes"
+HOMEPAGE="https://github.com/dominikh/filesize"
+
+LICENSE="MIT"
+SLOT="${PV}"
+KEYWORDS="~amd64 ~arm ~x86"
diff --git a/dev-ruby/filesize/filesize-0.2.0.ebuild b/dev-ruby/filesize/filesize-0.2.0.ebuild
deleted file mode 100644
index 88fd05d3cab6..000000000000
--- a/dev-ruby/filesize/filesize-0.2.0.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="small ruby class for handling filesizes with both the SI and binary prefixes"
-HOMEPAGE="https://github.com/dominikh/filesize"
-
-LICENSE="MIT"
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
diff --git a/dev-ruby/filesize/metadata.xml b/dev-ruby/filesize/metadata.xml
index 085e02e20845..7cc1398d1ae2 100644
--- a/dev-ruby/filesize/metadata.xml
+++ b/dev-ruby/filesize/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
<remote-id type="github">dominikh/filesize</remote-id>
diff --git a/dev-ruby/fileutils/Manifest b/dev-ruby/fileutils/Manifest
new file mode 100644
index 000000000000..76b5b8ff9d11
--- /dev/null
+++ b/dev-ruby/fileutils/Manifest
@@ -0,0 +1,2 @@
+DIST fileutils-1.7.1.tar.gz 40841 BLAKE2B a93a9a3357302ac420a4eec3349207d38e2b9e88cf2eb839c769c9219b3b1afa1b106dbc83e55ca907971909ae678189bc25eb7615243bebd20cab4c611a29d6 SHA512 d4aa814959a8c609aa0cf39755172db8c6efcd320cce41ac861a075c960a1dc35a1a3e5a4bea00d7051196e7f69043b4f7ef8f30ef31b8e943f4f10f926a0036
+DIST fileutils-1.7.2.tar.gz 30020 BLAKE2B 6b50a1cbeb725fbe423f602aa024169fd480dabb937a8479421a4ea86bedf90b45fdae01b4ffc46480d93e3b73805eed1bab482c41d5de69fec9ebcd7348c38e SHA512 85732efe0dfb53bbf273030f2389c82a81eca38d3f5aa77bc8bde56c0b082a247573d2adf56320c7a680ef7630c88f525baaf7b52ba3a2b0adab899d1b242f46
diff --git a/dev-ruby/fileutils/fileutils-1.7.1.ebuild b/dev-ruby/fileutils/fileutils-1.7.1.ebuild
new file mode 100644
index 000000000000..b9b8b43c76c6
--- /dev/null
+++ b/dev-ruby/fileutils/fileutils-1.7.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="fileutils.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Several file utility methods for copying, moving, removing, etc"
+HOMEPAGE="https://github.com/ruby/fileutils"
+SRC_URI="https://github.com/ruby/fileutils/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/fileutils/fileutils-1.7.2.ebuild b/dev-ruby/fileutils/fileutils-1.7.2.ebuild
new file mode 100644
index 000000000000..2971c3f970ba
--- /dev/null
+++ b/dev-ruby/fileutils/fileutils-1.7.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="fileutils.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Several file utility methods for copying, moving, removing, etc"
+HOMEPAGE="https://github.com/ruby/fileutils"
+SRC_URI="https://github.com/ruby/fileutils/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/fileutils/metadata.xml b/dev-ruby/fileutils/metadata.xml
new file mode 100644
index 000000000000..24eed223ef4f
--- /dev/null
+++ b/dev-ruby/fileutils/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/fileutils</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/filigree/Manifest b/dev-ruby/filigree/Manifest
new file mode 100644
index 000000000000..d1abe8c09afb
--- /dev/null
+++ b/dev-ruby/filigree/Manifest
@@ -0,0 +1 @@
+DIST filigree-0.4.1.gem 31232 BLAKE2B edcffb0b98192205c19b401babc4320c6550d3683460827425269ea8090b7dc4164582d1e73fd251a6d4e21225fc0ffaeab1eb52e7ff571631981835aab9b8ea SHA512 068ada1cac6c79cbaed150ac6168951894b3d76fd82764afc6aa9322f406a26b59777b83e1deae9348b1c20cca56db36e6acedcc92446847746d923f21009b82
diff --git a/dev-ruby/filigree/filigree-0.4.1-r1.ebuild b/dev-ruby/filigree/filigree-0.4.1-r1.ebuild
new file mode 100644
index 000000000000..2830fb5e7df4
--- /dev/null
+++ b/dev-ruby/filigree/filigree-0.4.1-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="New classes and extensions to core library classes"
+HOMEPAGE="https://github.com/chriswailes/filigree"
+LICENSE="UoI-NCSA"
+
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test test/ts_filigree.rb || die
+}
diff --git a/dev-ruby/filigree/metadata.xml b/dev-ruby/filigree/metadata.xml
new file mode 100644
index 000000000000..28ec21e884d7
--- /dev/null
+++ b/dev-ruby/filigree/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">chriswailes/filigree</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/fivemat/Manifest b/dev-ruby/fivemat/Manifest
deleted file mode 100644
index abb076e8a1c8..000000000000
--- a/dev-ruby/fivemat/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST fivemat-1.3.7.gem 10240 BLAKE2B 624eabf458130792e6dd06667fe67f578005630e164a4ce30871204d792c5b562c1ad0fcf2470915bed877b60b3db341887735a3330cfeae181bee6775775295 SHA512 b380bef69756d0214325ee6f3f608062d63d8dd7603aac7b9af1abdf406687971cb4914634e9c807ca73819bafd8e99c5cec0a29f461a1ef3f861676bee86ddf
diff --git a/dev-ruby/fivemat/fivemat-1.3.7.ebuild b/dev-ruby/fivemat/fivemat-1.3.7.ebuild
deleted file mode 100644
index a15136183c0a..000000000000
--- a/dev-ruby/fivemat/fivemat-1.3.7.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Package does not contain tests
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="MiniTest/RSpec/Cucumber formatter that gives each test file its own line of dots"
-HOMEPAGE="https://github.com/tpope/fivemat"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
diff --git a/dev-ruby/fivemat/metadata.xml b/dev-ruby/fivemat/metadata.xml
deleted file mode 100644
index 3df6a6aad98f..000000000000
--- a/dev-ruby/fivemat/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">tpope/fivemat</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/flexmock/Manifest b/dev-ruby/flexmock/Manifest
index 4baca5b9ad94..b6e56539878f 100644
--- a/dev-ruby/flexmock/Manifest
+++ b/dev-ruby/flexmock/Manifest
@@ -1 +1,2 @@
DIST flexmock-2.3.6.tar.gz 91601 BLAKE2B f2888891820f13f4a9812ffdfe042ccd266b0b5166fa538aba96e2c865ba55d3689d077e73fb9aa238455e90b8ea97aa60f8649c08823a753b6af8c0f550cbed SHA512 0fcc25c1a83ba1e2aed91eed98242592dfc1a69d57c033fbd363383962b16d6e72011d62a906ae8bf076801a3d5e8e8501bdb9f6ca3750c9615dfe8b9b0bdbbc
+DIST flexmock-2.3.8.tar.gz 92170 BLAKE2B 583dff030e0c828dedfbd1188a3bcca45b53d327fc9cfc5e43370c10bc6683819aa0d11e7aad0b8d26fe7576cc8a804f2103b5fa065f57381285d5de27c99ff9 SHA512 e055b5fc503967df47fcb4c5724f79efac9cebfab76a3784cf27e194c12316c4863a29c47b46256146cf2aa2f76afcd92849297310c71ac584ef8a5cc9cb40a0
diff --git a/dev-ruby/flexmock/files/flexmock-2.3.6-ruby30-1.patch b/dev-ruby/flexmock/files/flexmock-2.3.6-ruby30-1.patch
new file mode 100644
index 000000000000..f43c4d454992
--- /dev/null
+++ b/dev-ruby/flexmock/files/flexmock-2.3.6-ruby30-1.patch
@@ -0,0 +1,25 @@
+From f63ba0916132e16d5eeb1a5c1ad868b0169bf7fc Mon Sep 17 00:00:00 2001
+From: Daniel Leidert <dleidert@debian.org>
+Date: Mon, 22 Nov 2021 01:34:25 +0100
+Subject: [PATCH] Properly accept argument and keywords
+
+---
+ lib/flexmock/composite_expectation.rb | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/lib/flexmock/composite_expectation.rb b/lib/flexmock/composite_expectation.rb
+index 370046f..fbc8e54 100644
+--- a/lib/flexmock/composite_expectation.rb
++++ b/lib/flexmock/composite_expectation.rb
+@@ -16,9 +16,9 @@ def add(expectation)
+ end
+
+ # Apply the constraint method to all expectations in the composite.
+- def method_missing(sym, *args, &block)
++ def method_missing(sym, *args, **keywords, &block)
+ @expectations.each do |expectation|
+- expectation.send(sym, *args, &block)
++ expectation.send(sym, *args, **keywords, &block)
+ end
+ self
+ end
diff --git a/dev-ruby/flexmock/files/flexmock-2.3.6-ruby30-2.patch b/dev-ruby/flexmock/files/flexmock-2.3.6-ruby30-2.patch
new file mode 100644
index 000000000000..f7964b072df9
--- /dev/null
+++ b/dev-ruby/flexmock/files/flexmock-2.3.6-ruby30-2.patch
@@ -0,0 +1,25 @@
+From b3a2d7984803d70778c1f585ca48fb1fd374e44c Mon Sep 17 00:00:00 2001
+From: Daniel Leidert <dleidert@debian.org>
+Date: Mon, 22 Nov 2021 01:34:48 +0100
+Subject: [PATCH] Use binding.source_location for test
+
+Fixes the warning:
+
+ warning: __FILE__ in eval may not return location in binding; use Binding#source_location instead
+---
+ test/test_helper.rb | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/test/test_helper.rb b/test/test_helper.rb
+index 9eb3310..c4fd622 100644
+--- a/test/test_helper.rb
++++ b/test/test_helper.rb
+@@ -50,7 +50,7 @@ def assert_failure(klass, options={}, &block)
+ # added.
+ def assert_mock_failure(klass, options={}, &block)
+ ex = assert_failure(klass, options, &block)
+- file = eval("__FILE__", block.binding)
++ file = block.binding.source_location.first
+ assert_matching_line(ex, file, options)
+ end
+
diff --git a/dev-ruby/flexmock/files/flexmock-2.3.6-ruby30-3.patch b/dev-ruby/flexmock/files/flexmock-2.3.6-ruby30-3.patch
new file mode 100644
index 000000000000..2e69627c5060
--- /dev/null
+++ b/dev-ruby/flexmock/files/flexmock-2.3.6-ruby30-3.patch
@@ -0,0 +1,23 @@
+From 8a4be2142b37a6ab4b6b8a3f38a07f2b06752acf Mon Sep 17 00:00:00 2001
+From: Daniel Leidert <dleidert@debian.org>
+Date: Mon, 22 Nov 2021 01:35:53 +0100
+Subject: [PATCH] Relax error message on test a bit
+
+---
+ test/partial_mock_test.rb | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/test/partial_mock_test.rb b/test/partial_mock_test.rb
+index 065ecb5..3564db3 100644
+--- a/test/partial_mock_test.rb
++++ b/test/partial_mock_test.rb
+@@ -634,7 +634,8 @@ def test_partial_mocks_leaves_NoMethodError_exceptions_raised_by_the_original_me
+ exception = assert_raises(NameError) do
+ obj.mocked_method
+ end
+- assert_equal "undefined method `does_not_exist' for #{obj}", exception.message
++ assert(/undefined method `does_not_exist' for #<#<Class:/ === exception.message,
++ "expected #{exception.message} to match /undefined method `does_not_exist' for #<#<Class:/")
+ end
+
+ def test_it_checks_whether_mocks_are_forbidden_before_forwarding_the_call
diff --git a/dev-ruby/flexmock/flexmock-2.3.6-r2.ebuild b/dev-ruby/flexmock/flexmock-2.3.6-r2.ebuild
new file mode 100644
index 000000000000..bfb09746a1b0
--- /dev/null
+++ b/dev-ruby/flexmock/flexmock-2.3.6-r2.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_DOCDIR="html"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md doc/*.rdoc doc/releases/*"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_GEMSPEC="flexmock.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple mock object library for Ruby unit testing"
+HOMEPAGE="https://github.com/doudou/flexmock"
+SRC_URI="https://github.com/doudou/flexmock/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="flexmock"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+PATCHES=( "${FILESDIR}"/flexmock-2.3.6-ruby30-{1,2,3}.patch )
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/minitest:5
+ dev-ruby/rspec:3
+ )"
+
+each_ruby_test() {
+ RSPEC_VERSION=3 ruby-ng_rspec test/rspec_integration
+ ${RUBY} -Ilib:.:test -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
+}
+
+all_ruby_prepare() {
+ sed -i -e '1igem "minitest", "~>5.0"' test/test_helper.rb || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/flexmock/flexmock-2.3.6.ebuild b/dev-ruby/flexmock/flexmock-2.3.6.ebuild
deleted file mode 100644
index 9480ecc65b84..000000000000
--- a/dev-ruby/flexmock/flexmock-2.3.6.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="html"
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md doc/*.rdoc doc/releases/*"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="none"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Simple mock object library for Ruby unit testing"
-HOMEPAGE="https://github.com/doudou/flexmock"
-SRC_URI="https://github.com/doudou/flexmock/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="flexmock"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~hppa ~ppc ~ppc64 x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- dev-ruby/minitest:5
- dev-ruby/rspec:3
- )"
-
-each_ruby_test() {
- RSPEC_VERSION=3 ruby-ng_rspec test/rspec_integration
- ${RUBY} -Ilib:.:test -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
-}
-
-all_ruby_prepare() {
- sed -i -e '1igem "minitest", "~>5.0"' test/test_helper.rb || die
-}
diff --git a/dev-ruby/flexmock/flexmock-2.3.8.ebuild b/dev-ruby/flexmock/flexmock-2.3.8.ebuild
new file mode 100644
index 000000000000..76e598d0464d
--- /dev/null
+++ b/dev-ruby/flexmock/flexmock-2.3.8.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="html"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md doc/*.rdoc doc/releases/*"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_GEMSPEC="flexmock.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple mock object library for Ruby unit testing"
+HOMEPAGE="https://github.com/doudou/flexmock"
+SRC_URI="https://github.com/doudou/flexmock/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="flexmock"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+PATCHES=( "${FILESDIR}"/flexmock-2.3.6-ruby30-{1,2,3}.patch )
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/minitest:5
+ dev-ruby/rspec:3
+ )"
+
+each_ruby_test() {
+ RSPEC_VERSION=3 ruby-ng_rspec test/rspec_integration
+ MT_NO_PLUGINS=1 ${RUBY} -Ilib:.:test -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
+}
+
+all_ruby_prepare() {
+ sed -i -e '1igem "minitest", "~>5.0"' test/test_helper.rb || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/flexmock/metadata.xml b/dev-ruby/flexmock/metadata.xml
index 645c067afe58..26e740536b23 100644
--- a/dev-ruby/flexmock/metadata.xml
+++ b/dev-ruby/flexmock/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/flickraw/Manifest b/dev-ruby/flickraw/Manifest
deleted file mode 100644
index 3b3df6f8b3fe..000000000000
--- a/dev-ruby/flickraw/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST flickraw-0.9.10.gem 19456 BLAKE2B f57d9ff600e3decdf473b86a66f7ce0ba5c1607bd2f54171f5d0793b255dc6ac6367b015cc36c113164061c8005ce18938216af2aaecf184656fafe285af4b6c SHA512 a4686f7134cb9b7d1ad7ee952137dd0e9e9653a682ba4d6e9b2b65bef6cbebee23e19970e2042bdb14860a91a07a28ce11952608231c301e086ff88652f39411
-DIST flickraw-0.9.9.gem 19968 BLAKE2B 6a99be2baef120f5f343097de7384e101719370a1c13603fd50930879638777de773dae7f3bf262b450416c01e28c5048394d4abdb08b972982ca07eae51970a SHA512 c7fac2e7da15f83ad7c2df5cc3a9f6f7dc68420c1976905c0ae8b00f4eeca513783c20aa6eef9b8ee68699aa59c03de6ea6f9c667a27413a0a6d147875c840f2
diff --git a/dev-ruby/flickraw/flickraw-0.9.10.ebuild b/dev-ruby/flickraw/flickraw-0.9.10.ebuild
deleted file mode 100644
index c9b2c484b990..000000000000
--- a/dev-ruby/flickraw/flickraw-0.9.10.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Tests are against the Flickr API and require an API key.
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="-r README.rdoc examples"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library to access flickr api in a simple way"
-HOMEPAGE="https://github.com/hanklords/flickraw"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/flickraw/flickraw-0.9.9.ebuild b/dev-ruby/flickraw/flickraw-0.9.9.ebuild
deleted file mode 100644
index 7cc316666fb6..000000000000
--- a/dev-ruby/flickraw/flickraw-0.9.9.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Tests are against the Flickr API and require an API key.
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="-r README.rdoc examples"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library to access flickr api in a simple way"
-HOMEPAGE="https://github.com/hanklords/flickraw"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/flickraw/metadata.xml b/dev-ruby/flickraw/metadata.xml
deleted file mode 100644
index ae1df38b8d52..000000000000
--- a/dev-ruby/flickraw/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">hanklords/flickraw</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/flog/Manifest b/dev-ruby/flog/Manifest
index 1c71b779f1df..2b6b526378cf 100644
--- a/dev-ruby/flog/Manifest
+++ b/dev-ruby/flog/Manifest
@@ -1 +1 @@
-DIST flog-4.6.2.gem 26112 BLAKE2B ab15547c2bfa4b79e158a852ba76b6e69346397da6faaeb1b6ac558f3b380ea240de2e469ba90d23bfad93d11e62f3b119fc6613e0cec8a1d26964c25cdee2bb SHA512 d2bc8af809c5e7471daf455c53c9ee9cee39b4a058501e2d3a20e1412888e11fb786b6c5e19a93172bece80c1d03d21a608bff32e840f5c51e95b1ef40a88c01
+DIST flog-4.8.0.gem 27136 BLAKE2B 8d7da0df6435e2320f2ea78f405a57d0f3867ad12b42891bff2a0012c489d3b7b426fa6d9dfc7bbe81586d6766c00b66e0de20593b157f200180c304f562b230 SHA512 fedc774a62cc0550ce7b12e36fe1633813fce6d6f1efd9077ecddb465245ce9b22ac3e942370f36030107e038311fea382bbccef6ba006f013d828b4a7e1a68c
diff --git a/dev-ruby/flog/flog-4.6.2.ebuild b/dev-ruby/flog/flog-4.6.2.ebuild
deleted file mode 100644
index bdd94967f56b..000000000000
--- a/dev-ruby/flog/flog-4.6.2.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Flog reports the most tortured code in an easy to read pain report"
-HOMEPAGE="http://ruby.sadi.st/"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-ruby_add_rdepend "
- dev-ruby/path_expander:1
- >dev-ruby/ruby_parser-3.1.0:3
- >=dev-ruby/sexp_processor-4.8:4"
-
-each_ruby_test() {
- ${RUBY} -Ilib test/test_flog.rb || die
-}
diff --git a/dev-ruby/flog/flog-4.8.0.ebuild b/dev-ruby/flog/flog-4.8.0.ebuild
new file mode 100644
index 000000000000..26982ce10d00
--- /dev/null
+++ b/dev-ruby/flog/flog-4.8.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Flog reports the most tortured code in an easy to read pain report"
+HOMEPAGE="https://ruby.sadi.st/"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+ruby_add_rdepend "
+ dev-ruby/path_expander:1
+ >dev-ruby/ruby_parser-3.1.0:3
+ >=dev-ruby/sexp_processor-4.8:4"
+
+each_ruby_test() {
+ ${RUBY} -Ilib test/test_flog.rb || die
+}
diff --git a/dev-ruby/flog/metadata.xml b/dev-ruby/flog/metadata.xml
index 28ab0c15f206..fe5c4cfffa11 100644
--- a/dev-ruby/flog/metadata.xml
+++ b/dev-ruby/flog/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">seattlerb/flog</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/font-awesome-rails/Manifest b/dev-ruby/font-awesome-rails/Manifest
index 1fde563b34b5..75d70dd0f9a9 100644
--- a/dev-ruby/font-awesome-rails/Manifest
+++ b/dev-ruby/font-awesome-rails/Manifest
@@ -1 +1 @@
-DIST font-awesome-rails-4.7.0.5.gem 637952 BLAKE2B b4d4c8391fc3ff7fd9874c1c3d1ddcb60ea36999f8ab6ccaa5797c1d6b47adf9b70bf323b2f32c8c518ce8b96750e1cddcb9d2ff32f8718570f0c36ef18d2a48 SHA512 ffff431d5a76ba6618d9b505c599a28243038f6550c44b8bee930875e0294c724135aca40e5b591f999c98488fb35d362482eb5a53719a4e026c60ea08804781
+DIST font-awesome-rails-4.7.0.8.gem 638464 BLAKE2B 5aaea78b2f8601004f349b6a526c6e19dfd42686dbe424dac112c9ae99eabe8f09ee571cf0b07fc2b1b0221a3fdeb7a005b9e466aa281a2d85d1c71804debc0c SHA512 011d2a3f66345f5629b98b1224ace1818657447635610c5b927def5595f8dd1878d7b65e526ab6f078fb717cf44804aa989d3502072c6e341f01b75d2f7b9936
diff --git a/dev-ruby/font-awesome-rails/font-awesome-rails-4.7.0.5.ebuild b/dev-ruby/font-awesome-rails/font-awesome-rails-4.7.0.5.ebuild
deleted file mode 100644
index 3d736f10c43b..000000000000
--- a/dev-ruby/font-awesome-rails/font-awesome-rails-4.7.0.5.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Font-awesome for the asset pipeline"
-HOMEPAGE="https://github.com/bokmann/font-awesome-rails https://rubygems.org/gems/font-awesome-rails"
-
-LICENSE="MIT OFL"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "<dev-ruby/railties-6.1:*
- >=dev-ruby/railties-3.2:*"
diff --git a/dev-ruby/font-awesome-rails/font-awesome-rails-4.7.0.8.ebuild b/dev-ruby/font-awesome-rails/font-awesome-rails-4.7.0.8.ebuild
new file mode 100644
index 000000000000..483d1c421883
--- /dev/null
+++ b/dev-ruby/font-awesome-rails/font-awesome-rails-4.7.0.8.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Font-awesome for the asset pipeline"
+HOMEPAGE="https://github.com/bokmann/font-awesome-rails https://rubygems.org/gems/font-awesome-rails"
+
+LICENSE="MIT OFL"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "<dev-ruby/railties-8.0:*
+ >=dev-ruby/railties-3.2:*"
diff --git a/dev-ruby/font-awesome-rails/metadata.xml b/dev-ruby/font-awesome-rails/metadata.xml
index 69feb6173941..08f9b0e4d4b7 100644
--- a/dev-ruby/font-awesome-rails/metadata.xml
+++ b/dev-ruby/font-awesome-rails/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/forgery/Manifest b/dev-ruby/forgery/Manifest
index e65d720476ec..fd711e2c18b0 100644
--- a/dev-ruby/forgery/Manifest
+++ b/dev-ruby/forgery/Manifest
@@ -1 +1 @@
-DIST forgery-0.7.0.gem 47616 BLAKE2B 6f9a95770512213240659c55a8d9b72f4fbf9c39cd598253f151a5bf0d6e81604e279a5a47b41a8594ac42ab200238f6fafa19b8e9c7fdab74c10bf5d2855221 SHA512 c1f540f3640b99e2a574d0f677d2fe76b554e4ac0e15bd9c27c2648909e86ab972be0c65682e16db34abff576a6b1ac975ada8d39c87c57817e903aba36982d3
+DIST forgery-0.8.1.gem 47616 BLAKE2B 291e7424235cdeb5a85b3f983fb6cbc9d0d2727952fcea44a538445ffe9e5da9976973389a3b4a99e73434f1522209144870c72be4b035545513f03ee3202dc6 SHA512 16f4ae810bc68d8913e527d39c68cf655e8bec750f02f5f6f8701962b455515fc9e8cb6550951e244999765f9428cb52d7eedbe1f5c7e41a55d7d749be16291a
diff --git a/dev-ruby/forgery/forgery-0.7.0.ebuild b/dev-ruby/forgery/forgery-0.7.0.ebuild
deleted file mode 100644
index 914d2fa3cdb5..000000000000
--- a/dev-ruby/forgery/forgery-0.7.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Easy and customizable generation of forged data"
-HOMEPAGE="https://github.com/sevenwire/forgery"
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/d' Rakefile spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/forgery/forgery-0.8.1-r1.ebuild b/dev-ruby/forgery/forgery-0.8.1-r1.ebuild
new file mode 100644
index 000000000000..9df1b010a15c
--- /dev/null
+++ b/dev-ruby/forgery/forgery-0.8.1-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.markdown"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Easy and customizable generation of forged data"
+HOMEPAGE="https://github.com/sevenwire/forgery"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/d' Rakefile spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/forgery/metadata.xml b/dev-ruby/forgery/metadata.xml
index cd35fa4c4ffc..31990405d3e9 100644
--- a/dev-ruby/forgery/metadata.xml
+++ b/dev-ruby/forgery/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/forwardable-extended/forwardable-extended-2.6.0-r1.ebuild b/dev-ruby/forwardable-extended/forwardable-extended-2.6.0-r1.ebuild
deleted file mode 100644
index 0896096b690d..000000000000
--- a/dev-ruby/forwardable-extended/forwardable-extended-2.6.0-r1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="Gem.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Forwardable with hash, and instance variable extensions"
-HOMEPAGE="https://rubygems.org/gems/forwardable-extended https://github.com/envygeeks/forwardable-extended"
-SRC_URI="https://github.com/envygeeks/forwardable-extended/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/\(coverage\|luna\|rspec\/helpers\)/ s:^:#:' spec/rspec/helper.rb || die
- rm -f spec/support/coverage.rb || die
-}
diff --git a/dev-ruby/forwardable-extended/forwardable-extended-2.6.0-r2.ebuild b/dev-ruby/forwardable-extended/forwardable-extended-2.6.0-r2.ebuild
new file mode 100644
index 000000000000..e5b8d89aba4c
--- /dev/null
+++ b/dev-ruby/forwardable-extended/forwardable-extended-2.6.0-r2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="Gem.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Forwardable with hash, and instance variable extensions"
+HOMEPAGE="https://rubygems.org/gems/forwardable-extended https://github.com/envygeeks/forwardable-extended"
+SRC_URI="https://github.com/envygeeks/forwardable-extended/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/\(coverage\|luna\|rspec\/helpers\)/ s:^:#:' spec/rspec/helper.rb || die
+ rm -f spec/support/coverage.rb || die
+}
diff --git a/dev-ruby/forwardable-extended/metadata.xml b/dev-ruby/forwardable-extended/metadata.xml
index dcbb08df3463..f9bd0542db13 100644
--- a/dev-ruby/forwardable-extended/metadata.xml
+++ b/dev-ruby/forwardable-extended/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/forwardable/Manifest b/dev-ruby/forwardable/Manifest
new file mode 100644
index 000000000000..bea83260043c
--- /dev/null
+++ b/dev-ruby/forwardable/Manifest
@@ -0,0 +1 @@
+DIST forwardable-1.3.3.tar.gz 18044 BLAKE2B 41e3299698d6c48c18a2d5468fd446154eb2813d90d05b1e2531ad48cfe2a3bc27a8b33cf7818c3c46d25ddbc1c0e61ee6d755019d68363e31fae469c3b696a0 SHA512 fe388c3377aea76d350da1a140a09a522a405307ce2566160f1dbe7d2bb46612b57fe9d3c516684402586f20a4b510ada762809192ca81dedb7a251906e56ed7
diff --git a/dev-ruby/forwardable/forwardable-1.3.3.ebuild b/dev-ruby/forwardable/forwardable-1.3.3.ebuild
new file mode 100644
index 000000000000..773e6f093d81
--- /dev/null
+++ b/dev-ruby/forwardable/forwardable-1.3.3.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="forwardable.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides delegation of specified methods to a designated object"
+HOMEPAGE="https://github.com/ruby/forwardable"
+SRC_URI="https://github.com/ruby/forwardable/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/forwardable/metadata.xml b/dev-ruby/forwardable/metadata.xml
new file mode 100644
index 000000000000..2e65848d57fc
--- /dev/null
+++ b/dev-ruby/forwardable/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/forwardable</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/fuubar/Manifest b/dev-ruby/fuubar/Manifest
index 39e5c39bba77..1fd2ffa92753 100644
--- a/dev-ruby/fuubar/Manifest
+++ b/dev-ruby/fuubar/Manifest
@@ -1,3 +1 @@
-DIST fuubar-2.3.2.tar.gz 30383 BLAKE2B 4e43dcb5621bee74f0401573217e29d17f6f537dbfc86b2c23764f77224072b3efd15adacb9281681b4d16410db6cb2020918a42ee59132a1772b9c2bf3f43df SHA512 93e812f944153f3c4d147195777374584440ca779a5d45436052386a380308f471f6ba22906d823d4e9e2bad6bb72550d2a5eb7dc1535572e14866e9f05f6370
-DIST fuubar-2.4.0.tar.gz 31979 BLAKE2B ffc1d9a2b1a521650678e34e5597e1555e62115ce2e85b9695c241778d26bf5e9ef6b67dfa6903fca3842f0dfd576793180610ae66c61cbe4e9acf213b3bb215 SHA512 21623314bb5f025f3ca2e62c8ce630651ebea1ee1a60093ae3bb8da739f1f38d7faea333de74fbca94c5b12407e02fecd0cdc9ef1d403302cd9878727b02311f
-DIST fuubar-2.4.1.tar.gz 32459 BLAKE2B 5c09d1adc23dbdf2ec5b67ab81ef87ccfb7fec7725ac36537262bb0c837fb43d6bfb9014bb111a058b238a544a8827392830ee7c6f5c4019327670ee13c75189 SHA512 334ec7544231106de37a5c10f359e85d51008c3d8368af8e7d25ccd9e6fcf6a665cb8e83b1de3cc5b4daafbb5a0a9fad60f7016af56d330e83a1ca2aaa16fbae
+DIST fuubar-2.5.1.tar.gz 39138 BLAKE2B e36c5a4ca67b9c2cfd6775f554ebf1c027f9b1f24b36cfb1e3c062a07034eee472ff06f750755e7aba9e0b1f4a3704be213b44c9d9cf5c6b50cc1cf24b84c572 SHA512 d3b200690a483f131faeaa0e6164ab4103584324b02a928be1c8845f14984e3695d8cd1cf3b9edf945acbd9876dca879029c04b9d76b0ace4b7d1883c73ca924
diff --git a/dev-ruby/fuubar/fuubar-2.3.2.ebuild b/dev-ruby/fuubar/fuubar-2.3.2.ebuild
deleted file mode 100644
index c6d1b7446c57..000000000000
--- a/dev-ruby/fuubar/fuubar-2.3.2.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Instafailing RSpec progress bar formatter"
-HOMEPAGE="https://github.com/thekompanee/fuubar"
-SRC_URI="https://github.com/thekompanee/fuubar/archive/releases/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RUBY_S="${PN}-releases-v${PV}"
-
-ruby_add_rdepend "dev-ruby/rspec:3 >=dev-ruby/ruby-progressbar-1.4"
-
-each_ruby_test() {
- export CI=true
- each_fakegem_test
-}
diff --git a/dev-ruby/fuubar/fuubar-2.4.0.ebuild b/dev-ruby/fuubar/fuubar-2.4.0.ebuild
deleted file mode 100644
index 738e61783c40..000000000000
--- a/dev-ruby/fuubar/fuubar-2.4.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Instafailing RSpec progress bar formatter"
-HOMEPAGE="https://github.com/thekompanee/fuubar"
-SRC_URI="https://github.com/thekompanee/fuubar/archive/releases/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RUBY_S="${PN}-releases-v${PV}"
-
-ruby_add_rdepend "dev-ruby/rspec:3 >=dev-ruby/ruby-progressbar-1.4:0"
-
-each_ruby_test() {
- export CI=true
- each_fakegem_test
-}
diff --git a/dev-ruby/fuubar/fuubar-2.4.1.ebuild b/dev-ruby/fuubar/fuubar-2.4.1.ebuild
deleted file mode 100644
index 738e61783c40..000000000000
--- a/dev-ruby/fuubar/fuubar-2.4.1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Instafailing RSpec progress bar formatter"
-HOMEPAGE="https://github.com/thekompanee/fuubar"
-SRC_URI="https://github.com/thekompanee/fuubar/archive/releases/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RUBY_S="${PN}-releases-v${PV}"
-
-ruby_add_rdepend "dev-ruby/rspec:3 >=dev-ruby/ruby-progressbar-1.4:0"
-
-each_ruby_test() {
- export CI=true
- each_fakegem_test
-}
diff --git a/dev-ruby/fuubar/fuubar-2.5.1-r1.ebuild b/dev-ruby/fuubar/fuubar-2.5.1-r1.ebuild
new file mode 100644
index 000000000000..25c375442178
--- /dev/null
+++ b/dev-ruby/fuubar/fuubar-2.5.1-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="fuubar.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Instafailing RSpec progress bar formatter"
+HOMEPAGE="https://github.com/thekompanee/fuubar"
+SRC_URI="https://github.com/thekompanee/fuubar/archive/releases/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="amd64 ~hppa ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+RUBY_S="${PN}-releases-v${PV}"
+
+ruby_add_rdepend "dev-ruby/rspec:3 >=dev-ruby/ruby-progressbar-1.4:0"
+
+each_ruby_test() {
+ export CI=true
+ each_fakegem_test
+}
diff --git a/dev-ruby/fuubar/metadata.xml b/dev-ruby/fuubar/metadata.xml
index 97ff67a11d8e..cfcd045aae68 100644
--- a/dev-ruby/fuubar/metadata.xml
+++ b/dev-ruby/fuubar/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">jeffkreeftmeijer/fuubar</remote-id>
+ <remote-id type="github">thekompanee/fuubar</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/gettext-setup/Manifest b/dev-ruby/gettext-setup/Manifest
index 97d627441563..873a7e7bdc28 100644
--- a/dev-ruby/gettext-setup/Manifest
+++ b/dev-ruby/gettext-setup/Manifest
@@ -1,2 +1 @@
-DIST gettext-setup-0.30.tar.gz 15952 BLAKE2B d224e0fee34b0735fdf22abe2efe81b45c6494fc48ca509daf076cda9d3b83dc6dcd3e44c20ae9776d98b7d6128e5b9a93fa49ba1f2daa4b00929714e8d7365c SHA512 6ee398a131098f46dcc2951d166081a90872330b6ba5637292eb326b1bd6f40f46350f6be7b2b9ebee0c62442609700e06d25befcbcbf6510f3d96e656855124
-DIST gettext-setup-0.31.tar.gz 16043 BLAKE2B 762d40295644acaaae27045a8a03ddb6a9e0f44093754492da3af4ce9a65fe4f58b9eb53a5d837dd1e553a7301dde29cbe27d4f6a6e7c7fc737ca9516b6eb3c4 SHA512 ac408d37a4feb03043368db6dd1e0fe3cc1f08c5d0c161ae8e9b80d0ac514e7d5891fdbdbcafa7bc72c960d38b6965b73c56d5d4e9a3fe1da0502667c33142ef
+DIST gettext-setup-1.1.0.tar.gz 16333 BLAKE2B a2895113db23c1235bcbc8acc01751a3d6ba0a7eedffb5c912cec21140eed076489fd7933a88a4fce4bcc165119a919c6671cd449b9e8f1984463d8c941174e7 SHA512 1ef7987ac24ca8cc95eb631d81552f35d153fd60132283dc4979473c149df8c09c8ce7a10caf53ff61f59c7c25a3921d3a367264c5a827ed491844b48def2307
diff --git a/dev-ruby/gettext-setup/gettext-setup-0.30.ebuild b/dev-ruby/gettext-setup/gettext-setup-0.30.ebuild
deleted file mode 100644
index e92995bb64c1..000000000000
--- a/dev-ruby/gettext-setup/gettext-setup-0.30.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A gem to ease i18n"
-HOMEPAGE="https://github.com/puppetlabs/gettext-setup-gem"
-SRC_URI="https://github.com/puppetlabs/gettext-setup-gem/archive/${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="${PN}-gem-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 x86"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/fast_gettext-1.1.0:0
- >=dev-ruby/ruby-gettext-3.0.2
- dev-ruby/locale
-"
-
-all_ruby_prepare() {
- sed -i -e 's/1.1.0/1.1/' \
- -e "s/spec.version.*$/spec.version = '${PV}'/" ${RUBY_FAKEGEM_GEMSPEC} || die
-
- sed -i -e '/simplecov/,/^end/ s:^:#: ; 1irequire "date"' spec/spec_helper.rb || die
-
- # Avoid spec with specific locale requirements
- sed -i -e '/can clear the locale/,/^ end/ s:^:#:' spec/lib/gettext-setup/gettext_setup_spec.rb || die
-}
diff --git a/dev-ruby/gettext-setup/gettext-setup-0.31.ebuild b/dev-ruby/gettext-setup/gettext-setup-0.31.ebuild
deleted file mode 100644
index 0fc883565d7f..000000000000
--- a/dev-ruby/gettext-setup/gettext-setup-0.31.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A gem to ease i18n"
-HOMEPAGE="https://github.com/puppetlabs/gettext-setup-gem"
-SRC_URI="https://github.com/puppetlabs/gettext-setup-gem/archive/${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="${PN}-gem-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/fast_gettext-1.1.0:0
- >=dev-ruby/ruby-gettext-3.0.2
- dev-ruby/locale
-"
-
-all_ruby_prepare() {
- sed -i -e 's/1.1.0/1.1/' \
- -e "s/spec.version.*$/spec.version = '${PV}'/" ${RUBY_FAKEGEM_GEMSPEC} || die
-
- sed -i -e '/simplecov/,/^end/ s:^:#: ; 1irequire "date"' spec/spec_helper.rb || die
-
- # Avoid spec with specific locale requirements
- sed -i -e '/can clear the locale/,/^ end/ s:^:#:' spec/lib/gettext-setup/gettext_setup_spec.rb || die
-}
diff --git a/dev-ruby/gettext-setup/gettext-setup-1.1.0.ebuild b/dev-ruby/gettext-setup/gettext-setup-1.1.0.ebuild
new file mode 100644
index 000000000000..fbbb897f2558
--- /dev/null
+++ b/dev-ruby/gettext-setup/gettext-setup-1.1.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A gem to ease i18n"
+HOMEPAGE="https://github.com/puppetlabs/gettext-setup-gem"
+SRC_URI="https://github.com/puppetlabs/gettext-setup-gem/archive/${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="${PN}-gem-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 x86"
+IUSE=""
+
+RDEPEND+=" dev-vcs/git"
+DEPEND+=" test? ( dev-vcs/git )"
+
+ruby_add_rdepend "
+ >=dev-ruby/fast_gettext-2.1:2
+ >=dev-ruby/ruby-gettext-3.4
+ dev-ruby/locale
+"
+
+all_ruby_prepare() {
+ sed -e "s/spec.version.*$/spec.version = '${PV}'/" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '/simplecov/,/^end/ s:^:#: ; 1irequire "date"' spec/spec_helper.rb || die
+
+ # Avoid spec with specific locale requirements
+ sed -i -e '/can clear the locale/,/^ end/ s:^:#:' spec/lib/gettext-setup/gettext_setup_spec.rb || die
+}
diff --git a/dev-ruby/gettext-setup/metadata.xml b/dev-ruby/gettext-setup/metadata.xml
index c677e4dcbe35..7b7813656756 100644
--- a/dev-ruby/gettext-setup/metadata.xml
+++ b/dev-ruby/gettext-setup/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/gettext_i18n_rails/Manifest b/dev-ruby/gettext_i18n_rails/Manifest
index ee3ad0f6848f..a90cabf7b5fe 100644
--- a/dev-ruby/gettext_i18n_rails/Manifest
+++ b/dev-ruby/gettext_i18n_rails/Manifest
@@ -1 +1 @@
-DIST gettext_i18n_rails-1.8.0.tar.gz 21702 BLAKE2B 1742e12198313384e52fc43795086efb2112b00bdf4c740db717ee2feb7c25453f0e6acdeb4ec2ab79de82d291ef117e38cabf4596be2da760c4144b2c660115 SHA512 9005526dd14e5e36f5ffdd207af824ad110f5e0c8dcf34175b6a68caad257d45a7b9ee048c6d0f38ffb399fbeff689b5e64b7c26f00263001efeababfa85aa7e
+DIST gettext_i18n_rails-1.12.0.tar.gz 21003 BLAKE2B 7bd7d290296ebc789fed23cb8c278a734273f5cae1e6958b29d825a1a088a845483d838e59148154c17e3dd25ba7696ed6b88e395d04057315b3953c716c293c SHA512 2934bb458df164881d3d8dbad44d98b34a6f4346331084dc03e47c0db79e2b4378b6f22d31686c6f4800805691ad95af9eac9773f7cb3b8abba2b665d3078670
diff --git a/dev-ruby/gettext_i18n_rails/gettext_i18n_rails-1.12.0.ebuild b/dev-ruby/gettext_i18n_rails/gettext_i18n_rails-1.12.0.ebuild
new file mode 100644
index 000000000000..107e4dbee181
--- /dev/null
+++ b/dev-ruby/gettext_i18n_rails/gettext_i18n_rails-1.12.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+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:7.0
+ dev-ruby/activerecord:7.0[sqlite]
+ dev-ruby/temple
+ dev-ruby/ruby-gettext
+ dev-ruby/haml
+ dev-ruby/slim
+)"
+
+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", "~>7.0.0"' -i spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/gettext_i18n_rails/gettext_i18n_rails-1.8.0.ebuild b/dev-ruby/gettext_i18n_rails/gettext_i18n_rails-1.8.0.ebuild
deleted file mode 100644
index 4769453a7c8d..000000000000
--- a/dev-ruby/gettext_i18n_rails/gettext_i18n_rails-1.8.0.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="Readme.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-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:5.2 dev-ruby/activerecord:5.2[sqlite] dev-ruby/temple )"
-ruby_add_rdepend ">=dev-ruby/fast_gettext-0.9.0:*"
-
-all_ruby_prepare() {
- rm Gemfile Gemfile.lock || 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 Rails 4.2.0
- sed -e '1igem "rails", "~>5.2.0"' -i spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/gettext_i18n_rails/metadata.xml b/dev-ruby/gettext_i18n_rails/metadata.xml
index dbea8c58ea7e..7ac1ef833d29 100644
--- a/dev-ruby/gettext_i18n_rails/metadata.xml
+++ b/dev-ruby/gettext_i18n_rails/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/gh/Manifest b/dev-ruby/gh/Manifest
deleted file mode 100644
index 695231a89535..000000000000
--- a/dev-ruby/gh/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST gh-0.15.1.tar.gz 64076 BLAKE2B 3611d83d9414349284bbaa7618aee2c9b5cb4c6db98e506891f70cf0f21dd7f25ae87e9f8094a90ec4ed4f62ba1e05bd598722a743e32abe54e7eb2a002d9d72 SHA512 6b8a43360253275408ff3d0f6e8cabe3afe399b4ed362f9b4ded72a9d650d18483cf5e3d10877a97c9112b7ccd5add5f2c9999ab1cd5f8102af3a9e49ef39037
diff --git a/dev-ruby/gh/gh-0.15.1-r2.ebuild b/dev-ruby/gh/gh-0.15.1-r2.ebuild
deleted file mode 100644
index 3c2c8450ab39..000000000000
--- a/dev-ruby/gh/gh-0.15.1-r2.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_GEMSPEC="gh.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="multi-layer client for the github api v3"
-HOMEPAGE="https://github.com/travis-ci/gh"
-SRC_URI="https://github.com/travis-ci/gh/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "
- dev-ruby/webmock
-"
-
-ruby_add_rdepend "
- >=dev-ruby/addressable-2.4.0:0
- dev-ruby/backports
- >dev-ruby/faraday-0.8
- >dev-ruby/multi_json-1.0
- dev-ruby/net-http-pipeline
- dev-ruby/net-http-persistent:*
-"
-
-all_ruby_prepare() {
- sed -i \
- -e '/addressable/ s/2.4.0/2.4/' \
- -e '/net-http-persistent/ s/~> 2.9/>= 2.9/' \
- -e 's/git ls-files/find/' \
- "${RUBY_FAKEGEM_GEMSPEC}" || die
-}
diff --git a/dev-ruby/gh/metadata.xml b/dev-ruby/gh/metadata.xml
deleted file mode 100644
index 976e775669cd..000000000000
--- a/dev-ruby/gh/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">travis-ci/gh</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/gherkin/Manifest b/dev-ruby/gherkin/Manifest
deleted file mode 100644
index c953982a2e97..000000000000
--- a/dev-ruby/gherkin/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST gherkin-5.1.0.gem 29696 BLAKE2B 2439b82a147a546e8df71e11996f9560a8720580e07795542fc81781449b483a42e54251f3d0dd3482331773b1cada1d61b468bfcec2a9464ee2542eef2ed13e SHA512 d935ccceaec493736f337a4c3db69909858d15f4c41e93ecfc6ca31a30fc48eec1cecbe71d455265e1062006f49f05461c9860c9b3cc4806bb25f42dec6f504e
diff --git a/dev-ruby/gherkin/gherkin-5.1.0.ebuild b/dev-ruby/gherkin/gherkin-5.1.0.ebuild
deleted file mode 100644
index c542490e0cfc..000000000000
--- a/dev-ruby/gherkin/gherkin-5.1.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_DOCDIR="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-# Don't install support scripts to avoid slot collisions.
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Fast Gherkin lexer and parser"
-HOMEPAGE="https://github.com/cucumber/gherkin"
-LICENSE="MIT"
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86"
-SLOT="5"
-IUSE=""
diff --git a/dev-ruby/gherkin/metadata.xml b/dev-ruby/gherkin/metadata.xml
deleted file mode 100644
index e9c308669e88..000000000000
--- a/dev-ruby/gherkin/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">cucumber/gherkin</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/gist/Manifest b/dev-ruby/gist/Manifest
index 9a396a39c7bd..d39645a5f66e 100644
--- a/dev-ruby/gist/Manifest
+++ b/dev-ruby/gist/Manifest
@@ -1 +1 @@
-DIST gist-5.0.0.gem 45568 BLAKE2B 1496185231da672dfa991776fc5836316905de606c086de4938601a791e171e8b74d5fc8b798e1db38f06abb27e4a6d513c9c035adc90c29437dd2f1cb812e96 SHA512 536ba3b1d7b008675496f16b5d353f766576aca5b3a0626ccb30ec94dd4a36b720f69bc7e0cacdb0d6ebb877a38ef7cb2431e426211eccff32e51c22bdcc013f
+DIST gist-6.0.0.gem 28160 BLAKE2B c231eb3a165fabaac104f5a3e2e10668f15ec8fdde4a5b7a925e35372854f44f0cbbe72f67f6777d42402a1b1d028c5c96d254f0860ff1cde78d39b1d15ba898 SHA512 ba1fb6636a2312c6cf598d2bdb181e354c19496266a65e097e0d27db8702c08ab5fab7744cc2a6911578ae1df0bbacb5c1e2712b18d090dedb69458ce6817cec
diff --git a/dev-ruby/gist/gist-5.0.0.ebuild b/dev-ruby/gist/gist-5.0.0.ebuild
deleted file mode 100644
index f5655faac28f..000000000000
--- a/dev-ruby/gist/gist-5.0.0.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Potentially the best command line gister."
-HOMEPAGE="https://github.com/defunkt/gist"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-# dev-python/txgithub also installs a 'gist' binary.
-RDEPEND="!dev-python/txgithub"
diff --git a/dev-ruby/gist/gist-6.0.0-r1.ebuild b/dev-ruby/gist/gist-6.0.0-r1.ebuild
new file mode 100644
index 000000000000..ade2a3180d1a
--- /dev/null
+++ b/dev-ruby/gist/gist-6.0.0-r1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Potentially the best command line gister"
+HOMEPAGE="https://github.com/defunkt/gist"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# dev-python/txgithub also installs a 'gist' binary.
+RDEPEND="!dev-python/txgithub"
+
+ruby_add_bdepend "test? ( dev-ruby/webmock )"
diff --git a/dev-ruby/gist/metadata.xml b/dev-ruby/gist/metadata.xml
index 65c7748e96ca..bc72809cee4c 100644
--- a/dev-ruby/gist/metadata.xml
+++ b/dev-ruby/gist/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
@@ -9,9 +9,6 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
- <longdescription>
- Commandline tool for GitHub Gist interaction, including editing &amp; listing.
- </longdescription>
<upstream>
<remote-id type="github">defunkt/gist</remote-id>
</upstream>
diff --git a/dev-ruby/git/Manifest b/dev-ruby/git/Manifest
index 373f272b71a8..68fbbb58db3d 100644
--- a/dev-ruby/git/Manifest
+++ b/dev-ruby/git/Manifest
@@ -1,2 +1,3 @@
-DIST git-1.4.0.tar.gz 125691 BLAKE2B 313cbf5bb6b33d96237fccb01aa691e54ab0e94708ffa582d18c7457196f0438de97a2d03518da219ccde85cae627babdffe1f075d16f113f4b8e98cc00fc9a8 SHA512 270c7cd7485f1fc41bda5e8c11556707b7e807720bce9bfac7f172a9c640d0fb31404ce7d1fa0de8fc743a95adecfb34efae01fbfccb83ccd8a8f0169443a073
-DIST git-1.5.0.tar.gz 128607 BLAKE2B e2bf19af6c0dd95917b7f599ce2e9b0b4237da78020a86cab5c5985b6944f0921a8f245ef860b9e1faf31761296c4cb6a685ca8d6033e3a8ca7086eef8a9e75b SHA512 001b2e93c1a1f5010026e4b6ea280cc6d7649903cc6faec277b2389bd74fd274c6b2daa465bb66ad7e15f7bdc4b09e20e8c1cc1a55ccfd4ab80ec12bf8562af2
+DIST git-1.18.0.tar.gz 175341 BLAKE2B 5a8dee1fef79c0386c59d37f37f2249c72600f2f11dbf2cc2c5bf63ff91f068c9c3164d24c2670585e8261d890f07b998255ddb80ce35ce53de09f402a4ec9e3 SHA512 520886b23758229cf25bfdd17e9d86e53d62feb6b2b3c155efe493db42d2f247a29bd629ff6c80ffa599ad429bcb6f09e44b015eeeecf9d9a5f4ee6ab3f1a265
+DIST git-1.19.0.tar.gz 177079 BLAKE2B 663d6303a49315567cbac77b4acfea10e24f1c61f1e1bb6d5807681eee03633edadcac9453ea4d919d3ad8b14fc0301b03e69033427b58d46b776caabd418cd9 SHA512 1935bd6bac26b46cd8563d6545bb7e4712636469624d11089bc5a7f716ee4a0f1e217167e6d0c6023a7ea4ef1644d93431bcdbd28d2a947589c288c0280a1286
+DIST git-1.19.1.tar.gz 177887 BLAKE2B 0da2a829679fd4e2d4b3aec5e88f421d221593729b827f2207bc3d26ce290ee2a41e8dde33b81138cf9df75fa1d1316fa5c69318a1247c627889f5c6971b8fd6 SHA512 4fb27cc2c59d15b0424ac16accc13d2310fec0710815b8deee399767b3cd9707cdf767a301cae271b4cd1ff6718cb955a6c86a9ea99076aaffbbadf595c64c0c
diff --git a/dev-ruby/git/git-1.18.0.ebuild b/dev-ruby/git/git-1.18.0.ebuild
new file mode 100644
index 000000000000..a697294543e8
--- /dev/null
+++ b/dev-ruby/git/git-1.18.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="git.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Library for using Git in Ruby"
+HOMEPAGE="https://github.com/ruby-git/ruby-git"
+SRC_URI="https://github.com/ruby-git/ruby-git/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="ruby-git-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+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/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 )"
+
+all_ruby_prepare() {
+ # Don't use hardcoded /tmp directory.
+ 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
+}
+
+each_ruby_test() {
+ git config --global user.email "git@example.com" || die
+ git config --global user.name "GitExample" || die
+ ${RUBY} -Ilib:.:tests -e 'Dir["tests/**/test_*.rb"].each {|f| require f}' || die
+}
diff --git a/dev-ruby/git/git-1.19.0.ebuild b/dev-ruby/git/git-1.19.0.ebuild
new file mode 100644
index 000000000000..86a5200e027c
--- /dev/null
+++ b/dev-ruby/git/git-1.19.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="git.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Library for using Git in Ruby"
+HOMEPAGE="https://github.com/ruby-git/ruby-git"
+SRC_URI="https://github.com/ruby-git/ruby-git/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="ruby-git-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+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/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 )"
+
+all_ruby_prepare() {
+ # Don't use hardcoded /tmp directory.
+ 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
+}
+
+each_ruby_test() {
+ git config --global user.email "git@example.com" || die
+ git config --global user.name "GitExample" || die
+ ${RUBY} -Ilib:.:tests -e 'Dir["tests/**/test_*.rb"].each {|f| require f}' || die
+}
diff --git a/dev-ruby/git/git-1.19.1.ebuild b/dev-ruby/git/git-1.19.1.ebuild
new file mode 100644
index 000000000000..36d7c68160a4
--- /dev/null
+++ b/dev-ruby/git/git-1.19.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="git.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Library for using Git in Ruby"
+HOMEPAGE="https://github.com/ruby-git/ruby-git"
+SRC_URI="https://github.com/ruby-git/ruby-git/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="ruby-git-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+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/addressable-2.8:0 >=dev-ruby/rchardet-1.8:1"
+
+ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/minitar >=dev-ruby/mocha-2.1:2 dev-ruby/test-unit:2 )"
+
+all_ruby_prepare() {
+ # Don't use hardcoded /tmp directory.
+ 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
+}
+
+each_ruby_test() {
+ git config --global user.email "git@example.com" || die
+ git config --global user.name "GitExample" || die
+ ${RUBY} -Ilib:.:tests -e 'Dir["tests/**/test_*.rb"].each {|f| require f}' || die
+}
diff --git a/dev-ruby/git/git-1.4.0.ebuild b/dev-ruby/git/git-1.4.0.ebuild
deleted file mode 100644
index 85fb9ef12b1e..000000000000
--- a/dev-ruby/git/git-1.4.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-RUBY_FAKEGEM_GEMSPEC="git.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Library for using Git in Ruby"
-HOMEPAGE="https://github.com/schacon/ruby-git"
-SRC_URI="https://github.com/schacon/ruby-git/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="ruby-git-${PV}"
-
-LICENSE="MIT"
-SLOT="0"
-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_bdepend "test? ( dev-ruby/test-unit:2 )"
-
-all_ruby_prepare() {
- # Don't use hardcoded /tmp directory.
- sed -i -e "s:/tmp:${TMPDIR}:" tests/units/test_archive.rb tests/test_helper.rb || die
-}
diff --git a/dev-ruby/git/git-1.5.0.ebuild b/dev-ruby/git/git-1.5.0.ebuild
deleted file mode 100644
index 31109f97cc66..000000000000
--- a/dev-ruby/git/git-1.5.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="git.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Library for using Git in Ruby"
-HOMEPAGE="https://github.com/schacon/ruby-git"
-SRC_URI="https://github.com/schacon/ruby-git/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="ruby-git-${PV}"
-
-LICENSE="MIT"
-SLOT="0"
-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_bdepend "test? ( dev-ruby/test-unit:2 )"
-
-all_ruby_prepare() {
- # Don't use hardcoded /tmp directory.
- sed -i -e "s:/tmp:${TMPDIR}:" tests/units/test_archive.rb tests/test_helper.rb || die
-}
diff --git a/dev-ruby/git/metadata.xml b/dev-ruby/git/metadata.xml
index fe258fd2c3c1..386acdbeb589 100644
--- a/dev-ruby/git/metadata.xml
+++ b/dev-ruby/git/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">schacon/ruby-git</remote-id>
+ <remote-id type="github">ruby-git/ruby-git</remote-id>
+ <remote-id type="rubygems">git</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/github_api/Manifest b/dev-ruby/github_api/Manifest
deleted file mode 100644
index a66d234c3b9d..000000000000
--- a/dev-ruby/github_api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST github_api-0.18.2.tar.gz 2124932 BLAKE2B 62ce868b5437262c3cbcac7cf8e3966288cdf5b78e4698f3d3e35d1da3e839f6445e582db74db47292749014a9532a0ad3077a7b5bd30e2148546348241e52a0 SHA512 ebc57fb86bf56b5af6f6ed96c3dab9190dc7695f37826851d35a7621f8f655c3aae5ef613e48fd6bc98e74e8cb6218a3cf425173feb98e6e054d7fced115ac14
diff --git a/dev-ruby/github_api/github_api-0.18.2.ebuild b/dev-ruby/github_api/github_api-0.18.2.ebuild
deleted file mode 100644
index 1e652a640a12..000000000000
--- a/dev-ruby/github_api/github_api-0.18.2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Ruby wrapper for the GitHub REST API v3"
-HOMEPAGE="https://github.com/peter-murach/github"
-SRC_URI="https://github.com/peter-murach/github/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="github-${PV}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/addressable-2.4 =dev-ruby/addressable-2*
- >=dev-ruby/descendants_tracker-0.0.4 =dev-ruby/descendants_tracker-0.0*
- >=dev-ruby/faraday-0.8:0
- >=dev-ruby/hashie-3.5:3
- =dev-ruby/oauth2-1*"
-
-ruby_add_bdepend "test? ( >=dev-ruby/rspec-2.14 dev-ruby/webmock:2 dev-ruby/vcr:3 )"
diff --git a/dev-ruby/github_api/metadata.xml b/dev-ruby/github_api/metadata.xml
deleted file mode 100644
index 3bbebd84add3..000000000000
--- a/dev-ruby/github_api/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">peter-murach/github</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/globalid/Manifest b/dev-ruby/globalid/Manifest
index 5a334297216f..4d9e9499dfe2 100644
--- a/dev-ruby/globalid/Manifest
+++ b/dev-ruby/globalid/Manifest
@@ -1,2 +1,2 @@
-DIST globalid-0.4.1.tar.gz 17924 BLAKE2B 6657c916049f841f472f6320868287451d061f96501f5a2b4df8fd71512f5752d5568185c8166344494fa3f6829ec0047f54235c8ea4e01b040653b8699d0484 SHA512 da484c6c7e8155416d008d650929c6b72981d2ae2d1654eb02e414838a065dad9b4ba3c6e275abb008a0d9cad1e2d4d5295d90807c7d7fc73e55b7071c0fd657
-DIST globalid-0.4.2.tar.gz 18669 BLAKE2B 7773362a16f5e3d0fec2a45e9bc768b5f22072d148bc77289c6841f24e4187f88b34bb9134f3ac086390bea5664d4cfa4281d96b0b8a3750e09e461350a0a50a SHA512 2f101601e36fdb6ba912652bbcc78a0561e0233c58d481dacbddd250ed39a1fa68a9b9c1cdadbdc708ac3147f64475fd6b68562d1ebab376fd2a517c93a23e49
+DIST globalid-1.1.0.tar.gz 21131 BLAKE2B 74f49046e84421df1ae4640cf1ecc23d6c09d4a7176583a4662fa89b031ec9c142c09d13b90dfd40cb23417aec3285a93366f975600b2b52b11a62f62878b313 SHA512 42d6fbdaa4de42da6677d620420c96989ed358197b36f4f0e4b4304a4c8a0f2df7d91c0de84381fb0fec87c213d3ba00335e95d92ae2bce59fe7ac7863219c1d
+DIST globalid-1.2.1.tar.gz 24210 BLAKE2B 0cd47d65b6af78b9201ba4300820f94c126e5e69683b87503967a8b7887b9638693d51a9a1d20277dc5678ca925c567d29ed21dc1805825386fe028ddc475074 SHA512 35f3252afd41226a3dd728238be226a1f2ebb62ca853874fdf35e296dd807603319105117d4585df98cdb577efda9166fc5e5733b7af5bea7073d5c44ddec2c1
diff --git a/dev-ruby/globalid/globalid-0.4.1.ebuild b/dev-ruby/globalid/globalid-0.4.1.ebuild
deleted file mode 100644
index 04772b8e54b4..000000000000
--- a/dev-ruby/globalid/globalid-0.4.1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Reference models by URI"
-HOMEPAGE="https://github.com/rails/globalid"
-SRC_URI="https://github.com/rails/globalid/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/bundler >=dev-ruby/activemodel-4.2.0 >=dev-ruby/railties-4.2.0 )"
-ruby_add_rdepend ">=dev-ruby/activesupport-4.2.0:*"
-
-all_ruby_prepare() {
- rm -f Gemfile.lock || die
-}
diff --git a/dev-ruby/globalid/globalid-0.4.2.ebuild b/dev-ruby/globalid/globalid-0.4.2.ebuild
deleted file mode 100644
index 9d61ff1f8a14..000000000000
--- a/dev-ruby/globalid/globalid-0.4.2.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Reference models by URI"
-HOMEPAGE="https://github.com/rails/globalid"
-SRC_URI="https://github.com/rails/globalid/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/bundler >=dev-ruby/activemodel-4.2.0 >=dev-ruby/railties-4.2.0 )"
-ruby_add_rdepend ">=dev-ruby/activesupport-4.2.0:*"
-
-all_ruby_prepare() {
- rm -f Gemfile.lock || die
-}
diff --git a/dev-ruby/globalid/globalid-1.1.0-r1.ebuild b/dev-ruby/globalid/globalid-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..fc707554e48d
--- /dev/null
+++ b/dev-ruby/globalid/globalid-1.1.0-r1.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 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="globalid.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Reference models by URI"
+HOMEPAGE="https://github.com/rails/globalid"
+SRC_URI="https://github.com/rails/globalid/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/bundler >=dev-ruby/activemodel-5.0 >=dev-ruby/railties-5.0 )"
+ruby_add_rdepend ">=dev-ruby/activesupport-5.0:*"
+
+all_ruby_prepare() {
+ rm -f Gemfile.lock || die
+
+ sed -i -e '2irequire "forwardable"' test/helper.rb || die
+}
diff --git a/dev-ruby/globalid/globalid-1.2.1.ebuild b/dev-ruby/globalid/globalid-1.2.1.ebuild
new file mode 100644
index 000000000000..e2577102b660
--- /dev/null
+++ b/dev-ruby/globalid/globalid-1.2.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="globalid.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Reference models by URI"
+HOMEPAGE="https://github.com/rails/globalid"
+SRC_URI="https://github.com/rails/globalid/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/bundler >=dev-ruby/activemodel-6.1 >=dev-ruby/railties-6.1 )"
+ruby_add_rdepend ">=dev-ruby/activesupport-6.1:*"
+
+all_ruby_prepare() {
+ rm -f Gemfile.lock || die
+}
diff --git a/dev-ruby/globalid/metadata.xml b/dev-ruby/globalid/metadata.xml
index fb569a4d60b1..14dadd960adc 100644
--- a/dev-ruby/globalid/metadata.xml
+++ b/dev-ruby/globalid/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/gnuplot/gnuplot-2.6.2-r2.ebuild b/dev-ruby/gnuplot/gnuplot-2.6.2-r2.ebuild
deleted file mode 100644
index dc8731db9621..000000000000
--- a/dev-ruby/gnuplot/gnuplot-2.6.2-r2.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="AUTHORS.txt ChangeLog README.textile"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Gnuplot drawing library - Ruby Bindings"
-HOMEPAGE="http://rgplot.rubyforge.org/"
-
-LICENSE="BSD"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE="test"
-SLOT="0"
-
-RDEPEND+=" sci-visualization/gnuplot"
-
-all_ruby_prepare() {
- # Existing metadata causes a crash in jruby, so use our own.
- rm -f ../metadata || die "Unable to remove metadata."
-
- sed -i -e 's/Config/RbConfig/' test/test_gnuplot.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ctest test_gnuplot.rb || die
-}
diff --git a/dev-ruby/gnuplot/gnuplot-2.6.2-r3.ebuild b/dev-ruby/gnuplot/gnuplot-2.6.2-r3.ebuild
new file mode 100644
index 000000000000..1c990f2def76
--- /dev/null
+++ b/dev-ruby/gnuplot/gnuplot-2.6.2-r3.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="AUTHORS.txt ChangeLog README.textile"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Gnuplot drawing library - Ruby Bindings"
+HOMEPAGE="http://rgplot.rubyforge.org/"
+
+LICENSE="BSD"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="test"
+SLOT="0"
+
+RDEPEND+=" sci-visualization/gnuplot"
+
+all_ruby_prepare() {
+ # Existing metadata causes a crash in jruby, so use our own.
+ rm -f ../metadata || die "Unable to remove metadata."
+
+ sed -i -e 's/Config/RbConfig/' test/test_gnuplot.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ctest test_gnuplot.rb || die
+}
diff --git a/dev-ruby/gnuplot/metadata.xml b/dev-ruby/gnuplot/metadata.xml
index eb1e47f2edfb..daac6fdb7252 100644
--- a/dev-ruby/gnuplot/metadata.xml
+++ b/dev-ruby/gnuplot/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/google-protobuf/Manifest b/dev-ruby/google-protobuf/Manifest
index c8d9672bc796..d9db4ae1c0eb 100644
--- a/dev-ruby/google-protobuf/Manifest
+++ b/dev-ruby/google-protobuf/Manifest
@@ -1,4 +1,2 @@
-DIST google-protobuf-3.6.1-ruby.tar.gz 4485582 BLAKE2B 546c49759df784018459809b9db692c5c94aef5d717183af5cd9edd96b4c658e759f23950cdcd5dddceaaad06ea1de2a2357b9fa8c496ed5d538fc5920174da0 SHA512 1bc175d24b49de1b1e41eaf39598194e583afffb924c86c8d2e569d935af21874be76b2cbd4d9655a1d38bac3d4cd811de88bc2c72d81bad79115e69e5b0d839
-DIST google-protobuf-3.8.0-ruby.tar.gz 4934577 BLAKE2B 4b86ab216e8a8b2c99c3620da9417c0562498e9d4dbf4957db186f51c62b0ed73b1322635a076b2d4054e015bdf6c8c50cc7fd0cb78d24a93b29d2a5b48f66fe SHA512 ba27c64e5193cd4a144bf0c9dc0d195fbbe6e580aaca01960362f0f185074588ca40046d3bcea76e1deae7508b722f6c5be484ea957122ae8e98229c7c3a4ad2
-DIST google-protobuf-3.9.0-ruby.tar.gz 4945061 BLAKE2B 11df30465d19b5c057d8c2a18bb944f1abc725056e957fa0ec08803b8d73271daf950852e27273ff4596c88471297608d1ee571a48e615e2c411f79a2d6b5eed SHA512 eebfea7758b924939edaf44d0f51e341f4778dcf943c9e399da57cb5f52e875bda1e37e40841798232dea52082b5d59c20de69a15ddeaf00220c432f05ca0e6e
-DIST google-protobuf-3.9.1-ruby.tar.gz 4947402 BLAKE2B c1e366438ca619044d84d7a75453c35b48d5f64867b7aaec78c04966d4e62223a8909a28be850156ce3d47f0e7f42e80a231ec5d814d2820e1edfa963d89e177 SHA512 9accb56c1aadef83bf27280e15a99809a3561cbd4b39d6605dec730cc112bf4fd2e9f1ac39127b32a1b87253e712be4b4f12afe4061a8f7be76266b3f4bca314
+DIST google-protobuf-3.21.12-ruby.tar.gz 5141502 BLAKE2B 2e57a401b6fc86dff2af54e3d1a32db87f6c54fed46e557964c01c2d87f333ca94dafbe2d7d9cf279ac67d53219ae0154c5a1ea5cb90cdcf72d3576cefc44653 SHA512 152f8441c325e808b942153c15e82fdb533d5273b50c25c28916ec568ada880f79242bb61ee332ac5fb0d20f21239ed6f8de02ef6256cc574b1fc354d002c6b0
+DIST google-protobuf-3.24.4-ruby.tar.gz 5179247 BLAKE2B f3b53769f31a0fc9151e90b133c836127e745f9f0c591b0d4e476ab50a6b7ca21562169bdedcd6637961131ef39484d2c945dd83d01a3839cca7f0555144d3a8 SHA512 19b8aa89647fa14b4716cfeed289233bed65be2417d9f7e2b1082975a4753e5a1f091eb36ad7cff159d125b01bfe005e2911ebda896f15cba58299e340487518
diff --git a/dev-ruby/google-protobuf/google-protobuf-3.21.12.ebuild b/dev-ruby/google-protobuf/google-protobuf-3.21.12.ebuild
new file mode 100644
index 000000000000..701738e78dc1
--- /dev/null
+++ b/dev-ruby/google-protobuf/google-protobuf-3.21.12.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/google/protobuf_c/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/google
+
+inherit ruby-fakegem
+
+DESCRIPTION="Protocol Buffers are Google's data interchange format"
+HOMEPAGE="https://protobuf.dev/"
+SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> ${P}-ruby.tar.gz"
+RUBY_S="protobuf-${PV}/ruby"
+
+LICENSE="BSD"
+SLOT="3"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+DEPEND+=" >=dev-libs/protobuf-3.21.0"
+
+all_ruby_prepare() {
+ sed -e '/extensiontask/ s:^:#:' \
+ -e '/ExtensionTask/,/^ end/ s:^:#:' \
+ -e 's:../src/protoc:protoc:' \
+ -e 's/:compile,//' \
+ -e '/:test/ s/:build,//' \
+ -i Rakefile || die
+}
+
+each_ruby_prepare() {
+ ${RUBY} -S rake genproto || die
+}
diff --git a/dev-ruby/google-protobuf/google-protobuf-3.24.4.ebuild b/dev-ruby/google-protobuf/google-protobuf-3.24.4.ebuild
new file mode 100644
index 000000000000..e259959da05c
--- /dev/null
+++ b/dev-ruby/google-protobuf/google-protobuf-3.24.4.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/google/protobuf_c/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/google
+
+inherit ruby-fakegem
+
+DESCRIPTION="Protocol Buffers are Google's data interchange format"
+HOMEPAGE="https://protobuf.dev/"
+SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> ${P}-ruby.tar.gz"
+RUBY_S="protobuf-${PV}/ruby"
+
+LICENSE="BSD"
+SLOT="3"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+DEPEND+=" >=dev-libs/protobuf-3.21.0"
+
+all_ruby_prepare() {
+ sed -e '/extensiontask/ s:^:#:' \
+ -e '/ExtensionTask/,/^ end/ s:^:#:' \
+ -e 's:../src/protoc:protoc:' \
+ -e 's/:compile,//' \
+ -e '/:test/ s/:build,//' \
+ -i Rakefile || die
+}
+
+each_ruby_prepare() {
+ ${RUBY} -S rake genproto || die
+}
diff --git a/dev-ruby/google-protobuf/google-protobuf-3.6.1.ebuild b/dev-ruby/google-protobuf/google-protobuf-3.6.1.ebuild
deleted file mode 100644
index bc07705fb0cf..000000000000
--- a/dev-ruby/google-protobuf/google-protobuf-3.6.1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Protocol Buffers are Google's data interchange format"
-HOMEPAGE="https://developers.google.com/protocol-buffers"
-SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> ${P}-ruby.tar.gz"
-RUBY_S="protobuf-${PV}/ruby"
-
-LICENSE="BSD"
-SLOT="3"
-KEYWORDS="~amd64"
-IUSE=""
-
-DEPEND+=" test? ( dev-libs/protobuf )"
-
-each_ruby_prepare() {
- sed -i -e 's:../src/protoc:protoc: ; /^task :build/ s/:compile,//' Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/google/protobuf_c extconf.rb
-}
-
-each_ruby_compile() {
- emake -Cext/google/protobuf_c V=1
- cp ext/google/protobuf_c/protobuf_c.so lib/google/ || die
-}
diff --git a/dev-ruby/google-protobuf/google-protobuf-3.8.0.ebuild b/dev-ruby/google-protobuf/google-protobuf-3.8.0.ebuild
deleted file mode 100644
index 5eefeb1f2412..000000000000
--- a/dev-ruby/google-protobuf/google-protobuf-3.8.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Protocol Buffers are Google's data interchange format"
-HOMEPAGE="https://developers.google.com/protocol-buffers"
-SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> ${P}-ruby.tar.gz"
-RUBY_S="protobuf-${PV}/ruby"
-
-LICENSE="BSD"
-SLOT="3"
-KEYWORDS="~amd64"
-IUSE=""
-
-DEPEND+=" test? ( >=dev-libs/protobuf-3.7.0 )"
-
-each_ruby_prepare() {
- sed -i -e 's:../src/protoc:protoc: ; /^task :build/ s/:compile,//' Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/google/protobuf_c extconf.rb
-}
-
-each_ruby_compile() {
- emake -Cext/google/protobuf_c V=1
- cp ext/google/protobuf_c/protobuf_c.so lib/google/ || die
-}
diff --git a/dev-ruby/google-protobuf/google-protobuf-3.9.0.ebuild b/dev-ruby/google-protobuf/google-protobuf-3.9.0.ebuild
deleted file mode 100644
index 5eefeb1f2412..000000000000
--- a/dev-ruby/google-protobuf/google-protobuf-3.9.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Protocol Buffers are Google's data interchange format"
-HOMEPAGE="https://developers.google.com/protocol-buffers"
-SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> ${P}-ruby.tar.gz"
-RUBY_S="protobuf-${PV}/ruby"
-
-LICENSE="BSD"
-SLOT="3"
-KEYWORDS="~amd64"
-IUSE=""
-
-DEPEND+=" test? ( >=dev-libs/protobuf-3.7.0 )"
-
-each_ruby_prepare() {
- sed -i -e 's:../src/protoc:protoc: ; /^task :build/ s/:compile,//' Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/google/protobuf_c extconf.rb
-}
-
-each_ruby_compile() {
- emake -Cext/google/protobuf_c V=1
- cp ext/google/protobuf_c/protobuf_c.so lib/google/ || die
-}
diff --git a/dev-ruby/google-protobuf/google-protobuf-3.9.1.ebuild b/dev-ruby/google-protobuf/google-protobuf-3.9.1.ebuild
deleted file mode 100644
index 749ced3b808c..000000000000
--- a/dev-ruby/google-protobuf/google-protobuf-3.9.1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Protocol Buffers are Google's data interchange format"
-HOMEPAGE="https://developers.google.com/protocol-buffers"
-SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> ${P}-ruby.tar.gz"
-RUBY_S="protobuf-${PV}/ruby"
-
-LICENSE="BSD"
-SLOT="3"
-KEYWORDS="~amd64"
-IUSE=""
-
-DEPEND+=" test? ( >=dev-libs/protobuf-3.7.0 )"
-
-each_ruby_prepare() {
- sed -i -e 's:../src/protoc:protoc: ; /^task :build/ s/:compile,//' Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/google/protobuf_c extconf.rb
-}
-
-each_ruby_compile() {
- emake -Cext/google/protobuf_c V=1
- cp ext/google/protobuf_c/protobuf_c.so lib/google/ || die
-}
diff --git a/dev-ruby/google-protobuf/metadata.xml b/dev-ruby/google-protobuf/metadata.xml
index 28ab0c15f206..1749282789a1 100644
--- a/dev-ruby/google-protobuf/metadata.xml
+++ b/dev-ruby/google-protobuf/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">protocolbuffers/protobuf</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/googleapis-common-protos-types/Manifest b/dev-ruby/googleapis-common-protos-types/Manifest
new file mode 100644
index 000000000000..cd489340579d
--- /dev/null
+++ b/dev-ruby/googleapis-common-protos-types/Manifest
@@ -0,0 +1 @@
+DIST googleapis-common-protos-types-1.8.0.gem 94720 BLAKE2B eccbea68644dfe9a1521e1847e5605d38c39ffc83cfa15556df38e5a90b7b47cb36169310cf47be0b67c9aadcf828151b4d2c6a659200b31ed027807974e3b75 SHA512 5d44a96a59cb8856cd9a936d994d346628d9856230ec528617d48d5fb823945a1c88a12981a0228e0bc1e7c80920383cffaa700b0a030b0cf3b49bdf4ea1fc8c
diff --git a/dev-ruby/googleapis-common-protos-types/googleapis-common-protos-types-1.8.0.ebuild b/dev-ruby/googleapis-common-protos-types/googleapis-common-protos-types-1.8.0.ebuild
new file mode 100644
index 000000000000..37bc83d1db18
--- /dev/null
+++ b/dev-ruby/googleapis-common-protos-types/googleapis-common-protos-types-1.8.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Common protocol buffer types used by Google APIs"
+HOMEPAGE="https://github.com/googleapis/common-protos-ruby"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/google-protobuf-3.18:3
+"
diff --git a/dev-ruby/googleapis-common-protos-types/metadata.xml b/dev-ruby/googleapis-common-protos-types/metadata.xml
new file mode 100644
index 000000000000..e549ffd1f5d3
--- /dev/null
+++ b/dev-ruby/googleapis-common-protos-types/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">googleapis/common-protos-ruby</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/gpgme/Manifest b/dev-ruby/gpgme/Manifest
index 08e106fde62f..dfd8d1acceaf 100644
--- a/dev-ruby/gpgme/Manifest
+++ b/dev-ruby/gpgme/Manifest
@@ -1 +1,3 @@
-DIST ruby-gpgme-2.0.18.tar.gz 2799633 BLAKE2B c50336a8f5ae75fc56a29c043a19e84083f122534bf5639124c991dfb55c03b9ddcfe9a07431e0b826adce2c4fa715576387ea51361df68bb3f86019e049a018 SHA512 9be9112572ee2bf92c54c763f3588d0348c62af1d053b3a9d97d89ccfb5f17507be41d89aacbf75a746682dc176d04599d8fb9cfe6d5ac071fc8435eb31513af
+DIST ruby-gpgme-2.0.22.tar.gz 3432808 BLAKE2B 1aabd312f588093bff2bb3a308aaac041ebc8f989bab4aa475f74fc0675c6c4fcac474663a8f5b097b8be223b0f01e27f9e49fc014efb650df9742ddcf3fd4df SHA512 644d9640ac2bf6ce1c02747a0fbd0321337c1f3af639d650b8a669c4f835d1c03380644da2d4717a9268df434ebf41fd98388b80c63e8df97b7a23c3c260741e
+DIST ruby-gpgme-2.0.23.tar.gz 3510904 BLAKE2B 2057a6917aac14bfc82c5e718498d5dce507a4c9de4da2e0973eefee76339066c54ebf57201f739faaab118e624416d7b30d24fb4409b37d53f80dd92c2aa825 SHA512 13d9b383ba638ef1cc21870159b4e7bf3e4aa70097649da185ccd3c159247c657eae651c0fc29c2fcd1b1d2965b432b82461a2f2d85f687787f78d34ddce6da9
+DIST ruby-gpgme-2.0.24.tar.gz 3512481 BLAKE2B 69de16ca15088025c8aa5e8a7910d99df11df1e8ba522d16f9b23a89960683555dbdfe238c351532ffb57283c99b4b4c06c570e6c7755e21a40c67d9f9e00214 SHA512 d906cc669b4e55facd13838c711601ce587e197d44cdc614c4972b2fe411c6259fa236d9713e0ff716ab97fa34840feb0b503db298e6b7a3125d3bcce12d7835
diff --git a/dev-ruby/gpgme/gpgme-2.0.18.ebuild b/dev-ruby/gpgme/gpgme-2.0.18.ebuild
deleted file mode 100644
index eac41b41c93b..000000000000
--- a/dev-ruby/gpgme/gpgme-2.0.18.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="NEWS README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-ng ruby-fakegem flag-o-matic
-
-DESCRIPTION="Ruby language binding for GnuPG Made Easy"
-HOMEPAGE="https://github.com/ueno/ruby-gpgme"
-SRC_URI="https://github.com/ueno/ruby-gpgme/archive/v${PV}.tar.gz -> ruby-${P}.tar.gz"
-RUBY_S="ruby-${P}"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-DEPEND+=">=app-crypt/gpgme-1.1.3 test? ( >=app-crypt/gpgme-1.13.0 )"
-RDEPEND+=">=app-crypt/gpgme-1.1.3"
-
-ruby_add_bdepend "test? ( dev-ruby/mocha:0.14 )"
-
-all_ruby_prepare() {
- sed -i -e '/\(coverall\|bundler\|ruby-debug\|byebug\)/I s:^:#:' \
- -e '3igem "mocha", "~> 0.14"' \
- test/test_helper.rb || die
-
- # Remove failing tests for now. This package was added without
- # running any tests :-(
- rm -f test/{ctx,crypto}_test.rb || die
- sed -i -e '/knows if the key is expired/askip "fails on gentoo"' test/key_test.rb test/sub_key_test.rb || die
- sed -i -e '/deletes the key itself and its secret one if called with true/askip "triggers interactive prompt"' test/key_test.rb || die
-
- sed -i -e '/portile/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_configure() {
- append-flags -fPIC
- export RUBY_GPGME_USE_SYSTEM_LIBRARIES=1
- ${RUBY} -C ext "${S}/ext/gpgme/extconf.rb" || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake V=1 -C ext archflag="${LDFLAGS}" || die "emake failed"
- cp -f "${S}/ext/gpgme_n.so" "${S}/lib" || die
-}
-
-each_ruby_test() {
- unset DISPLAY GPG_AGENT_INFO GPG_TTY
- MT_NO_PLUGINS=true ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/gpgme/gpgme-2.0.22.ebuild b/dev-ruby/gpgme/gpgme-2.0.22.ebuild
new file mode 100644
index 000000000000..46c30017dfc9
--- /dev/null
+++ b/dev-ruby/gpgme/gpgme-2.0.22.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="NEWS README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/gpgme/extconf.rb)
+
+inherit ruby-fakegem flag-o-matic
+
+DESCRIPTION="Ruby language binding for GnuPG Made Easy"
+HOMEPAGE="https://github.com/ueno/ruby-gpgme"
+SRC_URI="https://github.com/ueno/ruby-gpgme/archive/v${PV}.tar.gz -> ruby-${P}.tar.gz"
+RUBY_S="ruby-${P}"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE=""
+
+RDEPEND="
+ >=app-crypt/gpgme-1.18.0:=
+ >=dev-libs/libassuan-2.5.5
+ >=dev-libs/libgpg-error-1.16
+"
+DEPEND="${RDEPEND}"
+
+ruby_add_bdepend "test? ( dev-ruby/mocha:0.14 )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(coverall\|bundler\|ruby-debug\|byebug\)/I s:^:#:' \
+ -e '3igem "mocha", "~> 0.14"' \
+ test/test_helper.rb || die
+
+ # Remove failing tests for now. This package was added without
+ # running any tests :-(
+ rm -f test/{ctx,crypto}_test.rb || die
+
+ sed -i -e '/portile/d ; /rubyforge/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_configure() {
+ append-flags -fPIC
+ export RUBY_GPGME_USE_SYSTEM_LIBRARIES=1
+ each_fakegem_configure
+}
+
+each_ruby_test() {
+ unset DISPLAY GPG_AGENT_INFO GPG_TTY
+ MT_NO_PLUGINS=true ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/gpgme/gpgme-2.0.23.ebuild b/dev-ruby/gpgme/gpgme-2.0.23.ebuild
new file mode 100644
index 000000000000..4790a69fa6b2
--- /dev/null
+++ b/dev-ruby/gpgme/gpgme-2.0.23.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="NEWS README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/gpgme/extconf.rb)
+
+inherit ruby-fakegem flag-o-matic
+
+DESCRIPTION="Ruby language binding for GnuPG Made Easy"
+HOMEPAGE="https://github.com/ueno/ruby-gpgme"
+SRC_URI="https://github.com/ueno/ruby-gpgme/archive/v${PV}.tar.gz -> ruby-${P}.tar.gz"
+RUBY_S="ruby-${P}"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE=""
+
+RDEPEND="
+ >=app-crypt/gpgme-1.18.0:=
+ >=dev-libs/libassuan-2.5.6
+ >=dev-libs/libgpg-error-1.47
+"
+DEPEND="${RDEPEND}"
+
+ruby_add_bdepend "test? ( dev-ruby/mocha:0.14 dev-ruby/minitest:5.15 )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(coverall\|bundler\|ruby-debug\|byebug\)/I s:^:#:' \
+ -e '3igem "mocha", "~> 0.14"; gem "minitest", "~> 5.15.0"' \
+ test/test_helper.rb || die
+
+ # Remove failing tests for now. This package was added without
+ # running any tests :-(
+ rm -f test/{ctx,crypto}_test.rb || die
+
+ sed -i -e '/portile/d ; /rubyforge/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_configure() {
+ append-flags -fPIC
+ export RUBY_GPGME_USE_SYSTEM_LIBRARIES=1
+ each_fakegem_configure
+}
+
+each_ruby_test() {
+ unset DISPLAY GPG_AGENT_INFO GPG_TTY
+ MT_NO_PLUGINS=true ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/gpgme/gpgme-2.0.24.ebuild b/dev-ruby/gpgme/gpgme-2.0.24.ebuild
new file mode 100644
index 000000000000..420e02626494
--- /dev/null
+++ b/dev-ruby/gpgme/gpgme-2.0.24.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="NEWS README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/gpgme/extconf.rb)
+
+inherit ruby-fakegem flag-o-matic
+
+DESCRIPTION="Ruby language binding for GnuPG Made Easy"
+HOMEPAGE="https://github.com/ueno/ruby-gpgme"
+SRC_URI="https://github.com/ueno/ruby-gpgme/archive/v${PV}.tar.gz -> ruby-${P}.tar.gz"
+RUBY_S="ruby-${P}"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="test"
+
+RDEPEND="
+ >=app-crypt/gpgme-1.18.0:=
+ >=dev-libs/libassuan-2.5.6
+ >=dev-libs/libgpg-error-1.47
+"
+DEPEND="${RDEPEND}"
+
+ruby_add_bdepend "test? ( dev-ruby/mocha:0.14 dev-ruby/minitest:5.15 )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(coverall\|bundler\|ruby-debug\|byebug\)/I s:^:#:' \
+ -e '3igem "mocha", "~> 0.14"; gem "minitest", "~> 5.15.0"' \
+ test/test_helper.rb || die
+
+ # Remove failing tests for now. This package was added without
+ # running any tests :-(
+ rm -f test/{ctx,crypto}_test.rb || die
+
+ sed -i -e '/portile/d ; /rubyforge/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_configure() {
+ append-flags -fPIC
+ export RUBY_GPGME_USE_SYSTEM_LIBRARIES=1
+ each_fakegem_configure
+}
+
+each_ruby_test() {
+ unset DISPLAY GPG_AGENT_INFO GPG_TTY
+ MT_NO_PLUGINS=true ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/gpgme/metadata.xml b/dev-ruby/gpgme/metadata.xml
index 50dacdc245db..52915e8eafa1 100644
--- a/dev-ruby/gpgme/metadata.xml
+++ b/dev-ruby/gpgme/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>sysadmin@gentoo.org</email>
diff --git a/dev-ruby/grpc/Manifest b/dev-ruby/grpc/Manifest
new file mode 100644
index 000000000000..3bd8d43cd81d
--- /dev/null
+++ b/dev-ruby/grpc/Manifest
@@ -0,0 +1,2 @@
+DIST grpc-1.54.0.gem 6047232 BLAKE2B 66e48f27748867eb99464ecf659204a2e0f8c9ad9c998fe13dbf8daf159f928d54414d28f121ecb52f1cb8d277651f91b4259eecf9cca2836d25cacbcfe9ea3a SHA512 72e76223800078584151cf6a6833b4cb3cfc0fa0733b050b9ccf5180ef7250b26fc22d7bac52f636b5ada68723eb04f67f51d24aacf7dc1288333c7adab556d6
+DIST grpc-1.59.2.gem 6404096 BLAKE2B 6953d538cee06c1f8795ca7949c22dd60d9aa4c4aa51c8d92631b646929682089969db1d2f206cd2e4c1e3692803c2cef685edf22f6d7a2d20b79dc735c942bc SHA512 a624ddf60f5befe043cdcfa015f2541bdf5b67604f8dd51652dd13a9576673df624513048d9e591c54da6e8fa1b983e78f8ca79d301c089fca5be6f12722b827
diff --git a/dev-ruby/grpc/grpc-1.54.0.ebuild b/dev-ruby/grpc/grpc-1.54.0.ebuild
new file mode 100644
index 000000000000..934ddf075b4a
--- /dev/null
+++ b/dev-ruby/grpc/grpc-1.54.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTENSIONS=(src/ruby/ext/grpc/extconf.rb)
+RUBY_FAKEGEM_EXTRAINSTALL="etc src"
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Send RPCs from Ruby using GRPC"
+HOMEPAGE="https://github.com/grpc/grpc"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/googleapis-common-protos-types:1
+ >=dev-ruby/google-protobuf-3.24.4
+"
+
+each_ruby_install() {
+ # Remove all the "src" bits that are not needed
+ rm -rf src/core src/ruby/spec src/ruby/ext/grpc/{libs,objs} || die
+
+ each_fakegem_install
+}
diff --git a/dev-ruby/grpc/grpc-1.59.2.ebuild b/dev-ruby/grpc/grpc-1.59.2.ebuild
new file mode 100644
index 000000000000..934ddf075b4a
--- /dev/null
+++ b/dev-ruby/grpc/grpc-1.59.2.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTENSIONS=(src/ruby/ext/grpc/extconf.rb)
+RUBY_FAKEGEM_EXTRAINSTALL="etc src"
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Send RPCs from Ruby using GRPC"
+HOMEPAGE="https://github.com/grpc/grpc"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/googleapis-common-protos-types:1
+ >=dev-ruby/google-protobuf-3.24.4
+"
+
+each_ruby_install() {
+ # Remove all the "src" bits that are not needed
+ rm -rf src/core src/ruby/spec src/ruby/ext/grpc/{libs,objs} || die
+
+ each_fakegem_install
+}
diff --git a/dev-ruby/grpc/metadata.xml b/dev-ruby/grpc/metadata.xml
new file mode 100644
index 000000000000..ba831219e4dd
--- /dev/null
+++ b/dev-ruby/grpc/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">grpc/grpc</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/gruff/Manifest b/dev-ruby/gruff/Manifest
index dfbb039afffe..ae18ecd1a4af 100644
--- a/dev-ruby/gruff/Manifest
+++ b/dev-ruby/gruff/Manifest
@@ -1 +1,3 @@
-DIST gruff-0.7.0.gem 318464 BLAKE2B bcc51f524089f53b89778143b444c70d4e168983edda247cdb4c9c84c288450154ce6e5234bbf7a0a8ae7251df611333c8bb411a8fd3765ccc5fe9650c3efc38 SHA512 b9842213ab3da7b4eccf8bd06e18d62aea14a6a15d7c45ebe7e51a76acd456ce140f094a9419d4c0bd1774e7d203bea49f9c39aca36c75d744f2732bcde9f688
+DIST gruff-0.22.0.tar.gz 25772970 BLAKE2B 3a56d03f0e9a53decfa7df3b6b5cc867cfe584548fe7b1435babde1486414bc97c4a46ad574692848df6483d01592e88d22ef64eb045f271df9c1e2f7c821fa0 SHA512 6d16f8a308289453eb4a51110946aca702c725e59a3ffb8c128610cbca7f521ae5cdea64ceaa0a3382b86fe2f1de74b2d33d2a49fa033728f2f5cbc474222758
+DIST gruff-0.23.0.tar.gz 25772848 BLAKE2B 5c0f6131ec52270e6a88c469d1ddf28701ca8e6f40277f094172e14f39faeed98af19d9e85c28a38b7ade5a6e35f21ba70bd9c8cb49a90edf434d9a9fb8c4371 SHA512 47e121b56cffb941063d127ba2b6e6de0dd0e8d5544263ca0234f7fcd782294fe972921a67407956674a97b9767651d7a2c33448d38887c05a40715a06cc1c54
+DIST gruff-0.24.0.tar.gz 25940874 BLAKE2B 071cfc8283c03f1a5fb2c73e084f717de4da25e076b9a71c6ee08df86c1aa41d06916006f35591ebad4ba6e4dec75edb1d7c0d0bbe5a81e7fc828e2bb0a83589 SHA512 51d174ab2c74b67d62916259e86bebeb3cb114099b7e05299cd1f7a3609ad863b82f5f1d4e8b8181ba80ca0b891fbdabc5cca0426b6dba5e0cf8c35b6e0d2582
diff --git a/dev-ruby/gruff/gruff-0.22.0.ebuild b/dev-ruby/gruff/gruff-0.22.0.ebuild
new file mode 100644
index 000000000000..cecc2b6e8230
--- /dev/null
+++ b/dev-ruby/gruff/gruff-0.22.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="assets rails_generators"
+
+RUBY_FAKEGEM_GEMSPEC="gruff.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Beautiful graphs for one or multiple datasets"
+HOMEPAGE="https://github.com/topfunky/gruff"
+SRC_URI="https://github.com/topfunky/gruff/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+# imagemagick is an indirect dependency through rmagick. However, for
+# gruff to work properly imagemagick needs to be compiled with truetype
+# support and this cannot be expressed in the rmagick dependency. Tests
+# also require imagemagick to have jpeg and png support.
+DEPEND="${DEPEND} test? ( media-gfx/imagemagick[jpeg,png,truetype,webp] )"
+RDEPEND="${RDEPEND} media-gfx/imagemagick[truetype]"
+
+ruby_add_rdepend "dev-ruby/histogram >=dev-ruby/rmagick-4.2:*"
+ruby_add_bdepend "
+ test? (
+ dev-ruby/test-unit
+ )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(reporters\|simplecov\)/I s:^:#:' test/gruff_test_case.rb || die
+ sed -i -e '2irequire "date"' test/test_scatter.rb || die
+
+ sed -e 's/git ls-files/find * -print/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ # Skip the image comparison checks since the images are not
+ # pixel-perfect identical, most likely due to the use of a slightly
+ # different font.
+ SKIP_CHECK=true ${RUBY} -Ilib:. -e "Dir['test/test_*.rb'].each{|f| require f}" || die
+}
diff --git a/dev-ruby/gruff/gruff-0.23.0.ebuild b/dev-ruby/gruff/gruff-0.23.0.ebuild
new file mode 100644
index 000000000000..445d13b31227
--- /dev/null
+++ b/dev-ruby/gruff/gruff-0.23.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="assets rails_generators"
+
+RUBY_FAKEGEM_GEMSPEC="gruff.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Beautiful graphs for one or multiple datasets"
+HOMEPAGE="https://github.com/topfunky/gruff"
+SRC_URI="https://github.com/topfunky/gruff/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+# imagemagick is an indirect dependency through rmagick. However, for
+# gruff to work properly imagemagick needs to be compiled with truetype
+# support and this cannot be expressed in the rmagick dependency. Tests
+# also require imagemagick to have jpeg and png support.
+DEPEND="${DEPEND} test? ( media-gfx/imagemagick[jpeg,png,truetype,webp] )"
+RDEPEND="${RDEPEND} media-gfx/imagemagick[truetype]"
+
+ruby_add_rdepend "dev-ruby/histogram >=dev-ruby/rmagick-5.3:*"
+ruby_add_bdepend "
+ test? (
+ dev-ruby/test-unit
+ )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(reporters\|simplecov\)/I s:^:#:' test/gruff_test_case.rb || die
+ sed -i -e '2irequire "date"' test/test_scatter.rb || die
+
+ sed -e 's/git ls-files/find * -print/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ # Skip the image comparison checks since the images are not
+ # pixel-perfect identical, most likely due to the use of a slightly
+ # different font.
+ SKIP_CHECK=true ${RUBY} -Ilib:. -e "Dir['test/test_*.rb'].each{|f| require f}" || die
+}
diff --git a/dev-ruby/gruff/gruff-0.24.0.ebuild b/dev-ruby/gruff/gruff-0.24.0.ebuild
new file mode 100644
index 000000000000..445d13b31227
--- /dev/null
+++ b/dev-ruby/gruff/gruff-0.24.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="assets rails_generators"
+
+RUBY_FAKEGEM_GEMSPEC="gruff.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Beautiful graphs for one or multiple datasets"
+HOMEPAGE="https://github.com/topfunky/gruff"
+SRC_URI="https://github.com/topfunky/gruff/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+# imagemagick is an indirect dependency through rmagick. However, for
+# gruff to work properly imagemagick needs to be compiled with truetype
+# support and this cannot be expressed in the rmagick dependency. Tests
+# also require imagemagick to have jpeg and png support.
+DEPEND="${DEPEND} test? ( media-gfx/imagemagick[jpeg,png,truetype,webp] )"
+RDEPEND="${RDEPEND} media-gfx/imagemagick[truetype]"
+
+ruby_add_rdepend "dev-ruby/histogram >=dev-ruby/rmagick-5.3:*"
+ruby_add_bdepend "
+ test? (
+ dev-ruby/test-unit
+ )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(reporters\|simplecov\)/I s:^:#:' test/gruff_test_case.rb || die
+ sed -i -e '2irequire "date"' test/test_scatter.rb || die
+
+ sed -e 's/git ls-files/find * -print/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ # Skip the image comparison checks since the images are not
+ # pixel-perfect identical, most likely due to the use of a slightly
+ # different font.
+ SKIP_CHECK=true ${RUBY} -Ilib:. -e "Dir['test/test_*.rb'].each{|f| require f}" || die
+}
diff --git a/dev-ruby/gruff/gruff-0.7.0-r1.ebuild b/dev-ruby/gruff/gruff-0.7.0-r1.ebuild
deleted file mode 100644
index ba43d17e00f2..000000000000
--- a/dev-ruby/gruff/gruff-0.7.0-r1.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.txt Manifest.txt README.md RELEASE.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="assets rails_generators"
-
-RUBY_FAKEGEM_GEMSPEC="gruff.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Beautiful graphs for one or multiple datasets"
-HOMEPAGE="https://github.com/topfunky/gruff"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86 ~x86-macos"
-IUSE=""
-
-# imagemagick is an indirect dependency through rmagick. However, for
-# gruff to work properly imagemagick needs to be compiled with truetype
-# support and this cannot be expressed in the rmagick dependency. Tests
-# also require imagemagick to have jpeg and png support.
-DEPEND="${DEPEND} test? ( media-gfx/imagemagick[jpeg,png,truetype,webp] )"
-RDEPEND="${RDEPEND} media-gfx/imagemagick[truetype]"
-
-ruby_add_rdepend ">=dev-ruby/rmagick-2.13.4"
-ruby_add_bdepend "
- test? (
- dev-ruby/test-unit
- )"
-
-all_ruby_prepare() {
- sed -i -e '/reporters/I s:^:#:' test/gruff_test_case.rb || die
- sed -i -e '2irequire "date"' test/test_scatter.rb || die
-
- # Relax rmagick dependency since 3.x is API compatible
- sed -i -e "/rmagick/ s/'~> 2.13',//" ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e "Dir['test/test_*.rb'].each{|f| require f}" || die
-}
diff --git a/dev-ruby/gruff/gruff-0.7.0-r2.ebuild b/dev-ruby/gruff/gruff-0.7.0-r2.ebuild
deleted file mode 100644
index 6fc4274809e7..000000000000
--- a/dev-ruby/gruff/gruff-0.7.0-r2.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.txt Manifest.txt README.md RELEASE.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="assets rails_generators"
-
-RUBY_FAKEGEM_GEMSPEC="gruff.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Beautiful graphs for one or multiple datasets"
-HOMEPAGE="https://github.com/topfunky/gruff"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86 ~x86-macos"
-IUSE=""
-
-# imagemagick is an indirect dependency through rmagick. However, for
-# gruff to work properly imagemagick needs to be compiled with truetype
-# support and this cannot be expressed in the rmagick dependency. Tests
-# also require imagemagick to have jpeg and png support.
-DEPEND="${DEPEND} test? ( media-gfx/imagemagick[jpeg,png,truetype,webp] )"
-RDEPEND="${RDEPEND} media-gfx/imagemagick[truetype]"
-
-ruby_add_rdepend ">=dev-ruby/rmagick-2.13.4:*"
-ruby_add_bdepend "
- test? (
- dev-ruby/test-unit
- )"
-
-all_ruby_prepare() {
- sed -i -e '/reporters/I s:^:#:' test/gruff_test_case.rb || die
- sed -i -e '2irequire "date"' test/test_scatter.rb || die
-
- # Relax rmagick dependency since 3.x is API compatible
- sed -e "/rmagick/ s/'~> 2.13',//" \
- -e 's/git ls-files/find . -print/' \
- -i ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e "Dir['test/test_*.rb'].each{|f| require f}" || die
-}
diff --git a/dev-ruby/gruff/metadata.xml b/dev-ruby/gruff/metadata.xml
index 55cacede49e2..c135e2c22d1d 100644
--- a/dev-ruby/gruff/metadata.xml
+++ b/dev-ruby/gruff/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/haml-rails/Manifest b/dev-ruby/haml-rails/Manifest
index 56742c89562e..75c8159d4707 100644
--- a/dev-ruby/haml-rails/Manifest
+++ b/dev-ruby/haml-rails/Manifest
@@ -1,3 +1 @@
-DIST haml-rails-1.0.0.gem 13312 BLAKE2B 9bd863d693121f2bb42bc0dc292f647220a4ba0b152c2fe6b04fabc0a0b537e1d31c12b040841ea2ac51cbfa771bdf21a94c8e482978dd2294a709916ee3aa06 SHA512 92aca4aa20591e47830779ec9d7a04f67cbcfbdcea3cbf2cbe50862ee61d1e373db96dcdb9b187fce2a167132b8394dc738db09416492689fb138d60f537b593
-DIST haml-rails-2.0.0.gem 13824 BLAKE2B 4d885be047f972cea11d3c7d0a9e56d557763d5bf3e95e7cefab33a4422ad114f6351db3226cd1d7645082d70f03a9ecbf86d6ef089ac0ab8836b74736d7ecc8 SHA512 47c5adfeb7b24ccf83ada7c2b453696f3544bc2ed4e7de3ae8ab52a64f6b5f3a3cef36f3144600c47b2f647ec42fd40d32651c7cd1b90184b767f81ec33ac855
-DIST haml-rails-2.0.1.gem 13824 BLAKE2B 24fded0f576d92083a10737954e1a32eb8e5f6a8db11fabc55ac0de3b17377419606d44f5b2e202e0733d9f538166172a6b5f7e08ee7efd71ddf7d3e7f6c9107 SHA512 7ccf9d618ca7b7c1681a063c51cf9dae9ce5e245479e3e7ba87a170ee1ba3eb35ff59061195928792f19f7e33a12ae7de3d5a36d35958e2a1761a12dc51b26d0
+DIST haml-rails-2.1.0.gem 13824 BLAKE2B 07a07966f88a4364d917f38518b184157fcf27bf0bcbc336369607df49baa68b4e54ab13d8980a0e76ab424e28a4b4c1bf4a6e37d3a06525bc01a62d9b1626d2 SHA512 c051ed4b776c95c1bae97b544d95512ece466c665c03d615e9f583fffb6a1474cb05a22d22402cab282bf8ede8ca64ffc60b8607fbff1fe188d81ebc3fb82776
diff --git a/dev-ruby/haml-rails/haml-rails-1.0.0.ebuild b/dev-ruby/haml-rails/haml-rails-1.0.0.ebuild
deleted file mode 100644
index cb53792b5c2d..000000000000
--- a/dev-ruby/haml-rails/haml-rails-1.0.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides Haml generators for Rails 4"
-HOMEPAGE="https://github.com/indirect/haml-rails"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/actionpack-4.0.1:*
- >=dev-ruby/activesupport-4.0.1:*
- >=dev-ruby/railties-4.0.1:*
- >=dev-ruby/haml-4.0.6:* <dev-ruby/haml-6:*
- >=dev-ruby/html2haml-1.0.1"
-
-ruby_add_bdepend "test? ( >=dev-ruby/rails-4.0.1 )"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
-}
diff --git a/dev-ruby/haml-rails/haml-rails-2.0.0.ebuild b/dev-ruby/haml-rails/haml-rails-2.0.0.ebuild
deleted file mode 100644
index 3cf22ec4b4af..000000000000
--- a/dev-ruby/haml-rails/haml-rails-2.0.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides Haml generators for Rails 4"
-HOMEPAGE="https://github.com/indirect/haml-rails"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/actionpack-5.1:*
- >=dev-ruby/activesupport-5.1:*
- >=dev-ruby/railties-5.1:*
- >=dev-ruby/haml-4.0.6:* <dev-ruby/haml-6:*
- >=dev-ruby/html2haml-1.0.1"
-
-ruby_add_bdepend "test? ( >=dev-ruby/rails-5.1 )"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
-}
diff --git a/dev-ruby/haml-rails/haml-rails-2.0.1.ebuild b/dev-ruby/haml-rails/haml-rails-2.0.1.ebuild
deleted file mode 100644
index 3cfe4a30206c..000000000000
--- a/dev-ruby/haml-rails/haml-rails-2.0.1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides Haml generators for Rails 4"
-HOMEPAGE="https://github.com/indirect/haml-rails"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/actionpack-5.1:*
- >=dev-ruby/activesupport-5.1:*
- >=dev-ruby/railties-5.1:*
- >=dev-ruby/haml-4.0.6:* <dev-ruby/haml-6:*
- >=dev-ruby/html2haml-1.0.1"
-
-ruby_add_bdepend "test? ( >=dev-ruby/rails-5.1 )"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
-}
diff --git a/dev-ruby/haml-rails/haml-rails-2.1.0.ebuild b/dev-ruby/haml-rails/haml-rails-2.1.0.ebuild
new file mode 100644
index 000000000000..9ea2f4bd33b9
--- /dev/null
+++ b/dev-ruby/haml-rails/haml-rails-2.1.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides Haml generators for Rails 4"
+HOMEPAGE="https://github.com/haml/haml-rails"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/actionpack-5.1:*
+ >=dev-ruby/activesupport-5.1:*
+ >=dev-ruby/railties-5.1:*
+ >=dev-ruby/haml-4.0.6:*
+"
+
+ruby_add_bdepend "test? ( >=dev-ruby/rails-5.1 )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile test/test_helper.rb || die
+ sed -i -e 's/MiniTest/Minitest/' test/test_helper.rb || die
+}
diff --git a/dev-ruby/haml-rails/metadata.xml b/dev-ruby/haml-rails/metadata.xml
index 5092561defbb..70da65b280d5 100644
--- a/dev-ruby/haml-rails/metadata.xml
+++ b/dev-ruby/haml-rails/metadata.xml
@@ -1,11 +1,11 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">indirect/haml-rails</remote-id>
+ <remote-id type="github">haml/haml-rails</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/haml/Manifest b/dev-ruby/haml/Manifest
index e4d688b89576..465520e76611 100644
--- a/dev-ruby/haml/Manifest
+++ b/dev-ruby/haml/Manifest
@@ -1,5 +1,4 @@
-DIST haml-4.0.7.gem 121856 BLAKE2B e2598df73b9bf7337c06f60b30fcf7925fa5948f4643051aabbbdf600d25dbc2f614c4cf2054a916f69ef431847279eee1fbdf02e9bf2811369f2c195ed00413 SHA512 5736ded231bb10a0c0932453294604075e24a9020c2658e703c13ebf7a8d148327188157f982a3aea5db6d6938beb372c0167dfbc4ff06325517b2c8bd71a568
-DIST haml-5.0.4.tar.gz 124580 BLAKE2B c22e464be26f65bd94b202b21604bb9fe3d740865832c9299d93606293794316a5262504e15583fdc2628a3015ea58f9924a9b3aab2f46340b305ad5af7968ac SHA512 125ae514f800b2dd58f7f339ef3bf8c15114c5738813d911985182d4e4b1e8551c92a89149427aa8bf3326f45c8f71f4f13f37ecb7e2bee5cb75163538f6a3a8
-DIST haml-5.1.0.tar.gz 125693 BLAKE2B 0a2e9044e7468a93b5fa62adc77131a67e79fe3701f86ba9dc341a5e33a52701bad09115137c7decfac92bd7e1aa92bbe6bd0a063ef5917c9c6cf4d072a9278a SHA512 97ed4eef3f1b0748c8d7c717dffc466db9da92c862bc90f9db05043facdbe58e605f83193a0d94b8bbcf2863ca0ab95de0a31ec266ee2907aacb94346fddd875
-DIST haml-5.1.1.tar.gz 125902 BLAKE2B b8564dca6a381038dae1b737b6f4a51089b96f618d684f43db6947bc738e06b073aa17241b406ed06fea48fda9c7ec759149829a5727f8da3df21da3cce22318 SHA512 fdc01762280cbece243d1ac1a3c8b6b484e3b01fcb2ff80df591d172ec6aed7240736095aa5a09149049ebb54cf24af32706772a6090c3171c84ccb069d12826
-DIST haml-5.1.2.tar.gz 126059 BLAKE2B 5d805f29c28d0f6355f7b79e5724ec1639a808cfae75c26633edddcc82d964a48dbc1654b780fb706529ca22abcaba953a1af6f483386c336035c079a719e585 SHA512 405976de297bfdbd6f010442d940205c404f057a54cd7162feb400b1831af3e4e60fd05a637a2f480204428512ca7dd66c02aca22b0006d6d515c06968eb08a3
+DIST haml-5.2.2.tar.gz 129833 BLAKE2B d68c24c7a3c817d6d364b2ec92b84b4f56f4fffa48b99d17b2df27da35f50b1fb1f69b184a7b21d899c476e0d4c8ad2b940a7cb2995ec24ecdafab8ef61fe393 SHA512 1aec59fab20d8139a5dfedde2007fa8137a377a345e4d30229f9d1140d56cdf970c8ae70e2647e6a408d7fa543a16050f66a8a636efa6a6b1f91ee1ffcc136c1
+DIST haml-6.1.1.tar.gz 669644 BLAKE2B 239b3a1fe02bcd1e2981198ba7c54c71ca2af0947102fcea6cd600cc6579294856baa290589a7d3a015e54df8bcecf8e50175cf2189e8f4f9c6f9721a558bcc9 SHA512 7d732be085b41b8f0eec418600a82b51c68301081165aa636fa342ae26b74215a202a4b15e592da980d9a7fbe24bad01399f599770420133c4b6ab7523386fa5
+DIST haml-6.2.3.tar.gz 666083 BLAKE2B 8f6c3e6b3538fdd8b6937278073d532245d7ce53bfbb81f2ebc394160af50e8022475bf7225d3e8f8846d0088120de58829dacf91864b91bab4f0ffc18479322 SHA512 28c0031b62c44cf6b057ee88ffb522d2081e92f5d70fc25999b64a59a4430acd63bb9ee4e3fc34139a1a6fe6f678cde6c3ce08b9a5ed5d433d30d661c5983b81
+DIST haml-6.3.0.tar.gz 666327 BLAKE2B 0672d39857fa0dac466bc29468a76e71d583da6637ce8534eb4d84aa4388bdc0f42d747d74cc5389bd24faf428076c13cf1897edc93317b2da7b770830d53b37 SHA512 64ee2eb7fad2e0b77307dd18a268b53a7f21b78b99a8bf80831cda9f8b6d8be983e7a23ba62942d251e7baf2c9732e38c18b842052690e5bbeb27961ca139c73
diff --git a/dev-ruby/haml/haml-4.0.7-r3.ebuild b/dev-ruby/haml/haml-4.0.7-r3.ebuild
deleted file mode 100644
index 88b41190b467..000000000000
--- a/dev-ruby/haml/haml-4.0.7-r3.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST="none"
-RUBY_FAKEGEM_TASK_DOC="-Ilib doc"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md REFERENCE.md"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A ruby web page templating engine"
-HOMEPAGE="http://haml-lang.com/"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="amd64 arm ~arm64 ~hppa ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-IUSE="doc test"
-
-ruby_add_rdepend "dev-ruby/tilt:*"
-
-ruby_add_bdepend "
- doc? (
- dev-ruby/yard
- >=dev-ruby/maruku-0.7.2-r1
- )"
-
-all_ruby_prepare() {
- # Remove test that fails when RedCloth is available
- sed -i -e "/should raise error when a Tilt filters dependencies are unavailable for extension/,+9 s/^/#/"\
- test/filters_test.rb || die
- # Avoid tests that are fragile for whitespace
- sed -i -e '/test_\(text_area\|partials_should_not_cause_textareas\)/,/^ end/ s:^:#:' test/helper_test.rb || die
-}
diff --git a/dev-ruby/haml/haml-5.0.4.ebuild b/dev-ruby/haml/haml-5.0.4.ebuild
deleted file mode 100644
index 07c906697456..000000000000
--- a/dev-ruby/haml/haml-5.0.4.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true test"
-RUBY_FAKEGEM_TASK_DOC="-Ilib doc"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md REFERENCE.md"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A ruby web page templating engine"
-HOMEPAGE="http://haml.info/"
-SRC_URI="https://github.com/haml/haml/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="5"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-IUSE="doc test"
-
-RDEPEND="${RDEPEND} !!<dev-ruby/haml-4.0.7-r2"
-
-ruby_add_rdepend ">=dev-ruby/temple-0.8.0 dev-ruby/tilt:*"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/minitest:5
- dev-ruby/nokogiri
- dev-ruby/railties:5.2
- dev-ruby/activemodel:5.2
- dev-ruby/actionpack:5.2
- )
- doc? (
- dev-ruby/yard
- >=dev-ruby/maruku-0.7.2-r1
- )"
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- sed -i -e '/bundler/I s:^:#:' \
- -e 's/gem "minitest"/gem "minitest", "~>5.0"/'\
- -e '1igem "actionpack", "~>5.2"'\
- -e '1igem "activesupport", "~>5.2"; gem "activemodel", "~>5.2"'\
- -e '1igem "railties", "~>5.2"'\
- test/test_helper.rb || die
- # Remove test that fails when RedCloth is available
- sed -i -e "/should raise error when a Tilt filters dependencies are unavailable for extension/,/^ end/ s/^/#/"\
- test/filters_test.rb || die
-}
diff --git a/dev-ruby/haml/haml-5.1.0.ebuild b/dev-ruby/haml/haml-5.1.0.ebuild
deleted file mode 100644
index 425a2568ea5d..000000000000
--- a/dev-ruby/haml/haml-5.1.0.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true test"
-RUBY_FAKEGEM_TASK_DOC="-Ilib doc"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md REFERENCE.md"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A ruby web page templating engine"
-HOMEPAGE="http://haml.info/"
-SRC_URI="https://github.com/haml/haml/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="5"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-IUSE="doc test"
-
-RDEPEND="${RDEPEND} !!<dev-ruby/haml-4.0.7-r2"
-
-ruby_add_rdepend ">=dev-ruby/temple-0.8.0 dev-ruby/tilt:*"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/minitest:5
- dev-ruby/nokogiri
- dev-ruby/railties:5.2
- dev-ruby/activemodel:5.2
- dev-ruby/actionpack:5.2
- )
- doc? (
- dev-ruby/yard
- >=dev-ruby/maruku-0.7.2-r1
- )"
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- sed -i -e '/bundler/I s:^:#:' \
- -e 's/gem "minitest"/gem "minitest", "~>5.0"/'\
- -e '1igem "actionpack", "~>5.2"'\
- -e '1igem "activesupport", "~>5.2"; gem "activemodel", "~>5.2"'\
- -e '1igem "railties", "~>5.2"'\
- test/test_helper.rb || die
- # Remove test that fails when RedCloth is available
- sed -i -e "/should raise error when a Tilt filters dependencies are unavailable for extension/,/^ end/ s/^/#/"\
- test/filters_test.rb || die
-}
diff --git a/dev-ruby/haml/haml-5.1.1.ebuild b/dev-ruby/haml/haml-5.1.1.ebuild
deleted file mode 100644
index 425a2568ea5d..000000000000
--- a/dev-ruby/haml/haml-5.1.1.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true test"
-RUBY_FAKEGEM_TASK_DOC="-Ilib doc"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md REFERENCE.md"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A ruby web page templating engine"
-HOMEPAGE="http://haml.info/"
-SRC_URI="https://github.com/haml/haml/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="5"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-IUSE="doc test"
-
-RDEPEND="${RDEPEND} !!<dev-ruby/haml-4.0.7-r2"
-
-ruby_add_rdepend ">=dev-ruby/temple-0.8.0 dev-ruby/tilt:*"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/minitest:5
- dev-ruby/nokogiri
- dev-ruby/railties:5.2
- dev-ruby/activemodel:5.2
- dev-ruby/actionpack:5.2
- )
- doc? (
- dev-ruby/yard
- >=dev-ruby/maruku-0.7.2-r1
- )"
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- sed -i -e '/bundler/I s:^:#:' \
- -e 's/gem "minitest"/gem "minitest", "~>5.0"/'\
- -e '1igem "actionpack", "~>5.2"'\
- -e '1igem "activesupport", "~>5.2"; gem "activemodel", "~>5.2"'\
- -e '1igem "railties", "~>5.2"'\
- test/test_helper.rb || die
- # Remove test that fails when RedCloth is available
- sed -i -e "/should raise error when a Tilt filters dependencies are unavailable for extension/,/^ end/ s/^/#/"\
- test/filters_test.rb || die
-}
diff --git a/dev-ruby/haml/haml-5.1.2.ebuild b/dev-ruby/haml/haml-5.1.2.ebuild
deleted file mode 100644
index 2fa390744d6d..000000000000
--- a/dev-ruby/haml/haml-5.1.2.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true test"
-RUBY_FAKEGEM_TASK_DOC="-Ilib doc"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md REFERENCE.md"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A ruby web page templating engine"
-HOMEPAGE="http://haml.info/"
-SRC_URI="https://github.com/haml/haml/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="5"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-IUSE="doc test"
-
-RDEPEND="${RDEPEND} !!<dev-ruby/haml-4.0.7-r2"
-
-ruby_add_rdepend ">=dev-ruby/temple-0.8.0 dev-ruby/tilt:*"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/minitest:5
- dev-ruby/nokogiri
- dev-ruby/railties:5.2
- dev-ruby/activemodel:5.2
- dev-ruby/actionpack:5.2
- )
- doc? (
- dev-ruby/yard
- >=dev-ruby/maruku-0.7.2-r1
- )"
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- sed -i -e '/bundler/I s:^:#:' \
- -e 's/gem "minitest"/gem "minitest", "~>5.0"/'\
- -e '1igem "actionpack", "~>5.2"'\
- -e '1igem "activesupport", "~>5.2"; gem "activemodel", "~>5.2"'\
- -e '1igem "railties", "~>5.2"'\
- test/test_helper.rb || die
- # Remove test that fails when RedCloth is available
- sed -i -e "/should raise error when a Tilt filters dependencies are unavailable for extension/,/^ end/ s/^/#/"\
- test/filters_test.rb || die
-}
diff --git a/dev-ruby/haml/haml-5.2.2.ebuild b/dev-ruby/haml/haml-5.2.2.ebuild
new file mode 100644
index 000000000000..0f3fd683d7e5
--- /dev/null
+++ b/dev-ruby/haml/haml-5.2.2.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true RUBYLIB=lib test"
+RUBY_FAKEGEM_TASK_DOC="-Ilib doc"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md REFERENCE.md"
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A ruby web page templating engine"
+HOMEPAGE="https://haml.info/"
+SRC_URI="https://github.com/haml/haml/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+IUSE="doc test"
+
+ruby_add_rdepend ">=dev-ruby/temple-0.8.0 dev-ruby/tilt:*"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/minitest:5
+ dev-ruby/nokogiri
+ >=dev-ruby/railties-6.0
+ >=dev-ruby/activemodel-6.0
+ >=dev-ruby/actionpack-6.0
+ )
+ doc? (
+ dev-ruby/yard
+ >=dev-ruby/maruku-0.7.2-r1
+ )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '/bundler/ s:^:#: ; /Bundler/,/end/ s:^:#:' Rakefile || die
+ sed -i -e '/bundler/I s:^:#:' \
+ -e '/simplecov/I s:^:#:' \
+ test/test_helper.rb || die
+ # Remove test that fails when RedCloth is available
+ sed -i -e "/should raise error when a Tilt filters dependencies are unavailable for extension/,/^ end/ s/^/#/"\
+ test/filters_test.rb || die
+}
diff --git a/dev-ruby/haml/haml-6.1.1-r1.ebuild b/dev-ruby/haml/haml-6.1.1-r1.ebuild
new file mode 100644
index 000000000000..a301872e76ed
--- /dev/null
+++ b/dev-ruby/haml/haml-6.1.1-r1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/haml/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/haml"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md REFERENCE.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A ruby web page templating engine"
+HOMEPAGE="https://haml.info/"
+SRC_URI="https://github.com/haml/haml/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm arm64 ~hppa ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+IUSE="doc test"
+
+ruby_add_rdepend ">=dev-ruby/temple-0.8.2 dev-ruby/thor dev-ruby/tilt:*"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/minitest:5.15
+ dev-ruby/nokogiri
+ >=dev-ruby/railties-6.0
+ >=dev-ruby/activemodel-6.0
+ >=dev-ruby/actionpack-6.0
+ dev-ruby/unindent
+ )
+ doc? (
+ dev-ruby/yard
+ )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '/bundler/ s:^:#: ; /Bundler/,/end/ s:^:#:' Rakefile || die
+ # minitest hack just to match rails/activesupport
+ sed -i \
+ -e "/require 'minitest\/autorun'/igem 'minitest', '< 5.16'" \
+ -e '/bundler/I s:^:#:' \
+ -e '/simplecov/I s:^:#:' \
+ test/test_helper.rb || die
+ # Remove tests that fails when RedCloth is available
+ rm -f test/haml/filters/markdown_test.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -rtest_helper -e 'Dir["test/haml/**/*_test.rb"].each { require _1 }' || die
+}
diff --git a/dev-ruby/haml/haml-6.2.3.ebuild b/dev-ruby/haml/haml-6.2.3.ebuild
new file mode 100644
index 000000000000..1d967a4cf5a2
--- /dev/null
+++ b/dev-ruby/haml/haml-6.2.3.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md REFERENCE.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A ruby web page templating engine"
+HOMEPAGE="https://haml.info/"
+SRC_URI="https://github.com/haml/haml/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm arm64 ~hppa ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+IUSE="doc test"
+
+ruby_add_rdepend ">=dev-ruby/temple-0.8.2 dev-ruby/thor dev-ruby/tilt:*"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/minitest:5.15
+ dev-ruby/nokogiri
+ <dev-ruby/railties-7.1
+ <dev-ruby/activemodel-7.1
+ <dev-ruby/actionpack-7.1
+ dev-ruby/unindent
+ )
+ doc? (
+ dev-ruby/yard
+ )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '/bundler/ s:^:#: ; /Bundler/,/end/ s:^:#:' Rakefile || die
+ sed -i \
+ -e '/bundler/I s:^:#:' \
+ -e '/simplecov/I s:^:#:' \
+ -e "1igem 'rails', '<7.1'" \
+ test/test_helper.rb || die
+ # Remove tests that fails when RedCloth is available
+ rm -f test/haml/filters/markdown_test.rb || die
+ # Remove tests that require coffee-script (does not work with x32
+ # and coffee-script is obsolete anyway).
+ rm -f test/haml/filters/coffee_test.rb || die
+ sed -e '/describe.*coffee filter/,/^ end/ s:^:#:' \
+ -i test/haml/line_number_test.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -rtest_helper -e 'Dir["test/haml/**/*_test.rb"].each { require _1 }' || die
+}
diff --git a/dev-ruby/haml/haml-6.3.0.ebuild b/dev-ruby/haml/haml-6.3.0.ebuild
new file mode 100644
index 000000000000..738977280ccf
--- /dev/null
+++ b/dev-ruby/haml/haml-6.3.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md REFERENCE.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A ruby web page templating engine"
+HOMEPAGE="https://haml.info/"
+SRC_URI="https://github.com/haml/haml/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+IUSE="doc test"
+
+ruby_add_rdepend ">=dev-ruby/temple-0.8.2 dev-ruby/thor dev-ruby/tilt:*"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/minitest:5
+ dev-ruby/nokogiri
+ <dev-ruby/railties-7.2
+ <dev-ruby/activemodel-7.2
+ <dev-ruby/actionpack-7.2
+ dev-ruby/unindent
+ )
+ doc? (
+ dev-ruby/yard
+ )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '/bundler/ s:^:#: ; /Bundler/,/end/ s:^:#:' Rakefile || die
+ sed -i \
+ -e '/bundler/I s:^:#:' \
+ -e '/simplecov/I s:^:#:' \
+ test/test_helper.rb || die
+ # Remove tests that fails when RedCloth is available
+ rm -f test/haml/filters/markdown_test.rb || die
+
+ # Remove tests that require coffee-script (does not work with x32
+ # and coffee-script is obsolete anyway).
+ rm -f test/haml/filters/coffee_test.rb || die
+ sed -e '/describe.*coffee filter/,/^ end/ s:^:#:' \
+ -i test/haml/line_number_test.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -rtest_helper -e 'Dir["test/haml/**/*_test.rb"].each { require _1 }' || die
+}
diff --git a/dev-ruby/haml/metadata.xml b/dev-ruby/haml/metadata.xml
index 28ab0c15f206..81aca44931d3 100644
--- a/dev-ruby/haml/metadata.xml
+++ b/dev-ruby/haml/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">haml/haml</remote-id>
+ <remote-id type="rubygems">haml</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/hamster/Manifest b/dev-ruby/hamster/Manifest
deleted file mode 100644
index 5d11e4a7ce1a..000000000000
--- a/dev-ruby/hamster/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST hamster-3.0.0.gem 129024 BLAKE2B f2d716d9304e9dea90b9832f1ae01bc6482fb57edc72f8e4edf0646ec066d08f9aa632401ff89dd979ee6513fcae7dab3289d8fada3a0e4392c688aca3d3e009 SHA512 2e9e388ca5a6b1d52dec60ce7711bf91fba8bc51a722139168c1aafbc9bbb98602675427e23a588950f56eaaa10c4b3aefd682970a77c479f47c77f00858342a
diff --git a/dev-ruby/hamster/hamster-3.0.0-r1.ebuild b/dev-ruby/hamster/hamster-3.0.0-r1.ebuild
deleted file mode 100644
index e2faef6a02b9..000000000000
--- a/dev-ruby/hamster/hamster-3.0.0-r1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Efficient, immutable, thread-safe collection classes for Ruby"
-HOMEPAGE="https://github.com/hamstergem/hamster"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/concurrent-ruby:1"
-
-all_ruby_prepare() {
- sed -i -e '/codeclimate/I s:^:#:' spec/spec_helper.rb || die
- sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb spec/lib/hamster/vector/insert_spec.rb || die
-}
diff --git a/dev-ruby/hamster/metadata.xml b/dev-ruby/hamster/metadata.xml
deleted file mode 100644
index dad41f309386..000000000000
--- a/dev-ruby/hamster/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">hamstergem/hamster</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/hashdiff/Manifest b/dev-ruby/hashdiff/Manifest
index 6a642c9560d2..4baf8f6a6314 100644
--- a/dev-ruby/hashdiff/Manifest
+++ b/dev-ruby/hashdiff/Manifest
@@ -1,4 +1,2 @@
-DIST hashdiff-0.3.8.gem 18944 BLAKE2B e248384076cf73db84095060578fcf3f458eaccfee8bdf4645c98c9fe51c67fe1fe1b9affeb485880433acb52d41f5c23f8a9d1bfb4397a820dfad01dd7f9092 SHA512 d58b9a07db1044e9b9b61cf1eb9515ff5a8426f0d59484c132c2c498591c9dd73cebda8a98b180d05228fe8e1e610d0dddb3a63ea38981f6609ecdf239339a83
-DIST hashdiff-0.3.9.gem 18944 BLAKE2B b24c557b0ca14758706b3de6a34034725af4f2c1d6f6a92d03353ab100ae2c82672d5854a17b382f2b5ef7a9bd296f03fd1877d4d36b7c626e3828e2d1cc6055 SHA512 0cfff7d94405391a5d810b6323b820ad73d4543a33bfe34dd6a4159bbf4190eaeb33e8a617bbe84662b14d54ec3d95e838cde5b38c29a029393b6b41f62ed45d
-DIST hashdiff-0.4.0.gem 19968 BLAKE2B 8e9a70ef34a2099a2f3b1748e952132af00bdcd70ce16a8c05ef1dc941489b8b8880933bf97bb084c84f3f75753335f5831f968165dacbbc8c3133fd539e4bfa SHA512 4556479daa42486d12d181c6e231a788c5ddab1b193d1452644ae501a795233e6bf23556bdd0a162a9e386ad2ebebca4398724533d52eff3b36134f8ffa5615f
-DIST hashdiff-1.0.0.gem 19968 BLAKE2B c27da71ad9bfba1e967e3c67804c591b880eb8af905d736d5e25c7f732256ab980855fbede619bb935ff29e99d9247b50f4c1790f415bb232b127de7177a9e23 SHA512 39aa1513f6a03ed79ee3f6c26491b914df2527d5dede6b15362e02550751a13fbddc341c0b39ed8c55afb8cf0e7927d528c22f309e54422bfe4dc64229ad9a6f
+DIST hashdiff-1.0.1.gem 20480 BLAKE2B 9f9723bd4e3547422b185df07d314699d0381ce6526be31c821f2d213f0721f077560567c830256a3bb2873b37a2616213113257e993fc364cd72a416b77cf10 SHA512 fa6e7ad88373038341473de25b7df5e146744efb8b5613fb4da41630498e68de585e2a8d66ba86d577ded574464948234f51e662a9caa6e695c3d6a2c3b85059
+DIST hashdiff-1.1.0.gem 20992 BLAKE2B 821bbf331f701fca924a05ca39cab4a0cff21dd4039fcfb6b6ccab8b649f2c9853edde1c12b7febd437e42ad35623b1f8d5afba92968dcba91312aa7bc09af38 SHA512 e5e76f6cdea6b94c5ee86eb17b2fae83a1acf84499b9e60aeb9b9166c468b58e2f6742893f989ee613aead3f37402f3eeb62d10df9b54b08c337a5824425b475
diff --git a/dev-ruby/hashdiff/hashdiff-0.3.8.ebuild b/dev-ruby/hashdiff/hashdiff-0.3.8.ebuild
deleted file mode 100644
index 8214a4dc2035..000000000000
--- a/dev-ruby/hashdiff/hashdiff-0.3.8.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="changelog.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Simple Hash extension to make working with nested hashes easier"
-HOMEPAGE="https://github.com/liufengyun/hashdiff"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/hashdiff/hashdiff-0.3.9.ebuild b/dev-ruby/hashdiff/hashdiff-0.3.9.ebuild
deleted file mode 100644
index f1e3153f2c4f..000000000000
--- a/dev-ruby/hashdiff/hashdiff-0.3.9.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="changelog.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Simple Hash extension to make working with nested hashes easier"
-HOMEPAGE="https://github.com/liufengyun/hashdiff"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/hashdiff/hashdiff-0.4.0.ebuild b/dev-ruby/hashdiff/hashdiff-0.4.0.ebuild
deleted file mode 100644
index 7782fdb1b28c..000000000000
--- a/dev-ruby/hashdiff/hashdiff-0.4.0.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="changelog.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Simple Hash extension to make working with nested hashes easier"
-HOMEPAGE="https://github.com/liufengyun/hashdiff"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/hashdiff/hashdiff-1.0.0.ebuild b/dev-ruby/hashdiff/hashdiff-1.0.0.ebuild
deleted file mode 100644
index 7782fdb1b28c..000000000000
--- a/dev-ruby/hashdiff/hashdiff-1.0.0.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="changelog.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Simple Hash extension to make working with nested hashes easier"
-HOMEPAGE="https://github.com/liufengyun/hashdiff"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/hashdiff/hashdiff-1.0.1.ebuild b/dev-ruby/hashdiff/hashdiff-1.0.1.ebuild
new file mode 100644
index 000000000000..ea0aa306caa7
--- /dev/null
+++ b/dev-ruby/hashdiff/hashdiff-1.0.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="changelog.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple Hash extension to make working with nested hashes easier"
+HOMEPAGE="https://github.com/liufengyun/hashdiff"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/hashdiff/hashdiff-1.1.0.ebuild b/dev-ruby/hashdiff/hashdiff-1.1.0.ebuild
new file mode 100644
index 000000000000..b66ab72fa7a7
--- /dev/null
+++ b/dev-ruby/hashdiff/hashdiff-1.1.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="changelog.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple Hash extension to make working with nested hashes easier"
+HOMEPAGE="https://github.com/liufengyun/hashdiff"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/hashdiff/metadata.xml b/dev-ruby/hashdiff/metadata.xml
index 660364a999b4..35f7a29d7c0b 100644
--- a/dev-ruby/hashdiff/metadata.xml
+++ b/dev-ruby/hashdiff/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/hashery/hashery-2.1.2-r1.ebuild b/dev-ruby/hashery/hashery-2.1.2-r1.ebuild
new file mode 100644
index 000000000000..005a48afda8c
--- /dev/null
+++ b/dev-ruby/hashery/hashery-2.1.2-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The Hashery is a tight collection of Hash-like classes"
+HOMEPAGE="https://rubyworks.github.io/hashery/"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? (
+ dev-ruby/lemon
+ dev-ruby/qed
+ dev-ruby/rubytest
+ dev-ruby/rubytest-cli )"
+
+each_ruby_test() {
+ ${RUBY} -S qed || die 'tests failed'
+ ${RUBY} -S rubytest -Ilib -Itest test/ || die 'tests failed'
+}
diff --git a/dev-ruby/hashery/hashery-2.1.2.ebuild b/dev-ruby/hashery/hashery-2.1.2.ebuild
deleted file mode 100644
index d796af277932..000000000000
--- a/dev-ruby/hashery/hashery-2.1.2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="The Hashery is a tight collection of Hash-like classes"
-HOMEPAGE="https://rubyworks.github.com/hashery"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? (
- dev-ruby/lemon
- dev-ruby/qed
- dev-ruby/rubytest
- dev-ruby/rubytest-cli )"
-
-each_ruby_test() {
- ${RUBY} -S qed || die 'tests failed'
- ${RUBY} -S rubytest -Ilib -Itest test/ || die 'tests failed'
-}
diff --git a/dev-ruby/hashery/metadata.xml b/dev-ruby/hashery/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/hashery/metadata.xml
+++ b/dev-ruby/hashery/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/hashicorp-checkpoint/hashicorp-checkpoint-0.1.5-r2.ebuild b/dev-ruby/hashicorp-checkpoint/hashicorp-checkpoint-0.1.5-r2.ebuild
new file mode 100644
index 000000000000..b591d117716f
--- /dev/null
+++ b/dev-ruby/hashicorp-checkpoint/hashicorp-checkpoint-0.1.5-r2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Internal HashiCorp service to check version information"
+HOMEPAGE="https://www.hashicorp.com"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="test"
+
+# Tests require network
+RESTRICT="test"
+
+ruby_add_bdepend "
+ test? ( dev-ruby/rspec-its )
+"
+
+all_ruby_prepare() {
+ # remove bundler support
+ sed -i '/[Bb]undler/d' Rakefile || die
+
+ # Make tests compatible with new ruby versions
+ sed -i -e '/check/ s/opts/**opts/' spec/checkpoint_spec.rb || die
+}
diff --git a/dev-ruby/hashicorp-checkpoint/hashicorp-checkpoint-0.1.5-r3.ebuild b/dev-ruby/hashicorp-checkpoint/hashicorp-checkpoint-0.1.5-r3.ebuild
new file mode 100644
index 000000000000..f333efc74aed
--- /dev/null
+++ b/dev-ruby/hashicorp-checkpoint/hashicorp-checkpoint-0.1.5-r3.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Internal HashiCorp service to check version information"
+HOMEPAGE="https://www.hashicorp.com"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="test"
+
+# Tests require network
+RESTRICT="test"
+
+ruby_add_bdepend "
+ test? ( dev-ruby/rspec-its )
+"
+
+all_ruby_prepare() {
+ # remove bundler support
+ sed -i '/[Bb]undler/d' Rakefile || die
+
+ # Make tests compatible with new ruby versions
+ sed -i -e '/check/ s/opts/**opts/' spec/checkpoint_spec.rb || die
+}
diff --git a/dev-ruby/hashicorp-checkpoint/hashicorp-checkpoint-0.1.5.ebuild b/dev-ruby/hashicorp-checkpoint/hashicorp-checkpoint-0.1.5.ebuild
deleted file mode 100644
index 21d663e130cb..000000000000
--- a/dev-ruby/hashicorp-checkpoint/hashicorp-checkpoint-0.1.5.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Internal HashiCorp service to check version information"
-HOMEPAGE="https://www.hashicorp.com"
-
-LICENSE="MPL-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-ruby_add_bdepend "
- test? ( dev-ruby/rspec-its )
-"
diff --git a/dev-ruby/hashicorp-checkpoint/metadata.xml b/dev-ruby/hashicorp-checkpoint/metadata.xml
index dacbe9ba1176..169cc287a5eb 100644
--- a/dev-ruby/hashicorp-checkpoint/metadata.xml
+++ b/dev-ruby/hashicorp-checkpoint/metadata.xml
@@ -1,9 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>gyakovlev@gentoo.org</email>
- <name>Georgy Yakovlev</name>
+ <maintainer type="person" proxied="yes">
+ <email>guillaumeseren@gmail.com</email>
+ <name>Guillaume Seren</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
<remote-id type="github">hashicorp/ruby-checkpoint</remote-id>
diff --git a/dev-ruby/hashie/Manifest b/dev-ruby/hashie/Manifest
index 6a2b81c20dc0..282a1267ae15 100644
--- a/dev-ruby/hashie/Manifest
+++ b/dev-ruby/hashie/Manifest
@@ -1,3 +1 @@
-DIST hashie-2.1.2.gem 34816 BLAKE2B 7406fece6c731f62ab8b73095b6c61d4d79cc3811ba20db68d2d6c54a780e8b37ce92ffa97ddc6c9ae2b802fbdbb04cc0d9c752761c9032739f3548f05696757 SHA512 6f72998710da58a2584939b4e74a114ae54168902020dc16ec5ea0422a91316b84aa6835fffb36a2985634f24ff5b0d01bcdb50134a414a269a4881ebcd728ac
-DIST hashie-3.5.7.gem 71680 BLAKE2B 8f03e190cf299f3597e0fe1b991fd07e00af0ecff757ef56648f97e8a3091a1445441d4e00f59c9b93d5db0d21636d9e5352175e49692f7b28a5612c87da9163 SHA512 c7ae610de5fe9b19a724068c26c184b44f951b29b56e3c5240074a372ad24d0ea70e39541812cbd82d5516d9e00e86a33d935b90e086b7db305b9b34b8f44f23
-DIST hashie-3.6.0.gem 74752 BLAKE2B b689843d30001dd7eaa09d62ab908d60e76128df66055283ccf0770830e5901b4e792c4bebd2cad8bb6d5e97a23016aee0d0114f2fb0f7ace8ebd722b8941020 SHA512 7b5355a2b93267d6b7c63608aeac4bb7d21f32a982e2c59771d5a791f9a0c921d11e1b4a185067447917315ce98f8cc5f2b48a31efec3068fb1f1ec0e4386e15
+DIST hashie-5.0.0.tar.gz 105224 BLAKE2B f15fd3ecd5dcdf88ea97d4aa5e13d984bbfb4dc54a687b4f166d9d84f07ddc0037f4fe251a4ec4950a5b89aaf4f0e43d11467018d63e3a89ae980ec06caf3dd6 SHA512 fc1f9399895f67af77af7b2d1d993eebd221d2b779781625bf1bbee579547580add7d7d0dbf1791564c8df6764c19617721ae5139ca949c81a316beacfe8c806
diff --git a/dev-ruby/hashie/files/hashie-5.0.0-ruby32-tests.patch b/dev-ruby/hashie/files/hashie-5.0.0-ruby32-tests.patch
new file mode 100644
index 000000000000..479e5a876ac2
--- /dev/null
+++ b/dev-ruby/hashie/files/hashie-5.0.0-ruby32-tests.patch
@@ -0,0 +1,71 @@
+From 2b3120ad4a6f54990dfec5b10f5769e3714ab1e8 Mon Sep 17 00:00:00 2001
+From: Peter Goldstein <peter.m.goldstein@gmail.com>
+Date: Fri, 13 Jan 2023 13:53:14 -0500
+Subject: [PATCH] Add Ruby 3.2 to the CI matrix (#571)
+
+* Adds Ruby 3.2 to the CI matrix
+
+* Use object_id rather than trust, as trust is no longer a method on Object in Ruby 3.2. Condition checked on Psych error based on version of Psych.
+
+* Update danger token
+
+* Add CHANGELOG entry
+
+* Add use of Gem::Version for version comparison
+---
+ .github/workflows/danger.yml | 4 ++--
+ .github/workflows/test.yml | 1 +
+ CHANGELOG.md | 1 +
+ spec/hashie/mash_spec.rb | 17 ++++++++++++-----
+ spec/hashie/utils_spec.rb | 2 +-
+ 5 files changed, 17 insertions(+), 8 deletions(-)
+
+diff --git a/spec/hashie/mash_spec.rb b/spec/hashie/mash_spec.rb
+index 03f56683..091748fc 100644
+--- a/spec/hashie/mash_spec.rb
++++ b/spec/hashie/mash_spec.rb
+@@ -137,9 +137,9 @@
+
+ include_context 'with a logger' do
+ it 'logs a warning when overriding built-in methods' do
+- Hashie::Mash.new('trust' => { 'two' => 2 })
++ Hashie::Mash.new('object_id' => { 'two' => 2 })
+
+- expect(logger_output).to match('Hashie::Mash#trust')
++ expect(logger_output).to match('Hashie::Mash#object_id')
+ end
+
+ it 'can set keys more than once and does not warn when doing so' do
+@@ -821,9 +821,16 @@ class SubMash < Hashie::Mash
+ expect(mash.company_a.accounts.admin.password).to eq('secret')
+ end
+ it 'can override the value of aliases' do
+- expect do
+- Hashie::Mash.load('spec/fixtures/yaml_with_aliases.yml', aliases: false)
+- end.to raise_error Psych::BadAlias, /base_accounts/
++ require 'psych'
++ if Gem::Version.new(Psych::VERSION) >= Gem::Version.new('5')
++ expect do
++ Hashie::Mash.load('spec/fixtures/yaml_with_aliases.yml', aliases: false)
++ end.to raise_error Psych::AliasesNotEnabled, /Alias parsing was not enabled/
++ else
++ expect do
++ Hashie::Mash.load('spec/fixtures/yaml_with_aliases.yml', aliases: false)
++ end.to raise_error Psych::BadAlias, /base_accounts/
++ end
+ end
+ end
+
+diff --git a/spec/hashie/utils_spec.rb b/spec/hashie/utils_spec.rb
+index 0499aa7f..c6be23b1 100644
+--- a/spec/hashie/utils_spec.rb
++++ b/spec/hashie/utils_spec.rb
+@@ -7,7 +7,7 @@ def a_method_to_match_against
+ RSpec.describe Hashie::Utils do
+ describe '.method_information' do
+ it 'states the module or class that a native method was defined in' do
+- bound_method = method(:trust)
++ bound_method = method(:object_id)
+
+ message = Hashie::Utils.method_information(bound_method)
+
diff --git a/dev-ruby/hashie/hashie-2.1.2-r1.ebuild b/dev-ruby/hashie/hashie-2.1.2-r1.ebuild
deleted file mode 100644
index fdb5923e0cc5..000000000000
--- a/dev-ruby/hashie/hashie-2.1.2-r1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Hashie is a small collection of tools that make hashes more powerful"
-HOMEPAGE="http://intridea.com/posts/hashie-the-hash-toolkit"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86"
-IUSE=""
-
-all_ruby_prepare() {
- # Remove bundler and fix one spec that depends on its requires
- rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -e '2irequire "hashie/version"' -i spec/hashie/version_spec.rb || die
-}
diff --git a/dev-ruby/hashie/hashie-3.5.7.ebuild b/dev-ruby/hashie/hashie-3.5.7.ebuild
deleted file mode 100644
index 813f325a39b2..000000000000
--- a/dev-ruby/hashie/hashie-3.5.7.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Hashie is a small collection of tools that make hashes more powerful"
-HOMEPAGE="https://www.mobomo.com/2009/11/hashie-the-hash-toolkit/"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/activesupport )"
-
-all_ruby_prepare() {
- # Remove bundler and fix one spec that depends on its requires
- #rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -e '/pry/ s:^:#:' \
- -e '1irequire "pathname"; require "tempfile"' -i spec/spec_helper.rb || die
-
- # Avoid dependency on rspec-pending_for and its dependencies
- sed -i -e '/pending_for/ s:^:#:' \
- spec/spec_helper.rb \
- spec/hashie/mash_spec.rb \
- spec/hashie/extensions/strict_key_access_spec.rb || die
-
- # Avoid integration specs to avoid complicated dependencies
- rm spec/integration/{omniauth*,rails}/integration_spec.rb || die
-}
diff --git a/dev-ruby/hashie/hashie-3.6.0.ebuild b/dev-ruby/hashie/hashie-3.6.0.ebuild
deleted file mode 100644
index 97ad2c596770..000000000000
--- a/dev-ruby/hashie/hashie-3.6.0.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Hashie is a small collection of tools that make hashes more powerful"
-HOMEPAGE="https://www.mobomo.com/2009/11/hashie-the-hash-toolkit/"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/activesupport )"
-
-all_ruby_prepare() {
- # Remove bundler and fix one spec that depends on its requires
- #rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -e '/pry/ s:^:#:' \
- -e '1irequire "pathname"; require "tempfile"' -i spec/spec_helper.rb || die
-
- # Avoid dependency on rspec-pending_for and its dependencies
- sed -i -e '/pending_for/ s:^:#:' \
- spec/spec_helper.rb \
- spec/hashie/mash_spec.rb \
- spec/hashie/extensions/strict_key_access_spec.rb || die
-
- # Avoid integration specs to avoid complicated dependencies
- rm spec/integration/{elasticsearch,omniauth*,rails}/integration_spec.rb || die
-}
diff --git a/dev-ruby/hashie/hashie-5.0.0.ebuild b/dev-ruby/hashie/hashie-5.0.0.ebuild
new file mode 100644
index 000000000000..04c56f5df804
--- /dev/null
+++ b/dev-ruby/hashie/hashie-5.0.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="hashie.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Hashie is a small collection of tools that make hashes more powerful"
+HOMEPAGE="https://www.mobomo.com/2009/11/hashie-the-hash-toolkit/"
+SRC_URI="https://github.com/hashie/hashie/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86 ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+PATCHES=( "${FILESDIR}/${P}-ruby32-tests.patch" )
+
+ruby_add_bdepend "test? ( dev-ruby/activesupport )"
+
+all_ruby_prepare() {
+ # Remove bundler and fix one spec that depends on its requires
+ #rm Gemfile || die
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+ sed -e '/pry/ s:^:#:' \
+ -e '1irequire "pathname"; require "tempfile"; require "json"' -i spec/spec_helper.rb || die
+
+ # Avoid dependency on rspec-pending_for and its dependencies
+ sed -i -e '/pending_for/ s:^:#:' \
+ spec/spec_helper.rb \
+ spec/hashie/mash_spec.rb \
+ spec/hashie/extensions/strict_key_access_spec.rb || die
+
+ # Avoid integration specs to avoid complicated dependencies
+ rm spec/integration/{elasticsearch,omniauth*,rails}/integration_spec.rb || die
+}
diff --git a/dev-ruby/hashie/metadata.xml b/dev-ruby/hashie/metadata.xml
index 28ab0c15f206..e7c6da67af9b 100644
--- a/dev-ruby/hashie/metadata.xml
+++ b/dev-ruby/hashie/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">hashie/hashie</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/hashr/hashr-2.0.1-r1.ebuild b/dev-ruby/hashr/hashr-2.0.1-r1.ebuild
new file mode 100644
index 000000000000..e1cb77430153
--- /dev/null
+++ b/dev-ruby/hashr/hashr-2.0.1-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple Hash extension to make working with nested hashes easier"
+HOMEPAGE="https://github.com/svenfuchs/hashr"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '1i require "spec_helper"' spec/hashr/delegate/conditional_spec.rb || die
+}
diff --git a/dev-ruby/hashr/hashr-2.0.1.ebuild b/dev-ruby/hashr/hashr-2.0.1.ebuild
deleted file mode 100644
index f59278182aa4..000000000000
--- a/dev-ruby/hashr/hashr-2.0.1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Simple Hash extension to make working with nested hashes easier"
-HOMEPAGE="https://github.com/svenfuchs/hashr"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '1i require "spec_helper"' spec/hashr/delegate/conditional_spec.rb || die
-}
diff --git a/dev-ruby/hashr/metadata.xml b/dev-ruby/hashr/metadata.xml
index 1d7fdbbe6d69..d400606b90f1 100644
--- a/dev-ruby/hashr/metadata.xml
+++ b/dev-ruby/hashr/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/heredoc_unindent/heredoc_unindent-1.2.0-r2.ebuild b/dev-ruby/heredoc_unindent/heredoc_unindent-1.2.0-r2.ebuild
new file mode 100644
index 000000000000..c200a82e3231
--- /dev/null
+++ b/dev-ruby/heredoc_unindent/heredoc_unindent-1.2.0-r2.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
+DESCRIPTION="Removes leading whitespace from Ruby heredocs"
+HOMEPAGE="https://github.com/adrianomitre/heredoc_unindent"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc x86 ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
+
+all_ruby_prepare() {
+ sed -i -e '1igem "test-unit"' test/test_heredoc_unindent.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/heredoc_unindent/heredoc_unindent-1.2.0.ebuild b/dev-ruby/heredoc_unindent/heredoc_unindent-1.2.0.ebuild
deleted file mode 100644
index a46c76b36a6d..000000000000
--- a/dev-ruby/heredoc_unindent/heredoc_unindent-1.2.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-fakegem
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
-DESCRIPTION="Removes leading whitespace from Ruby heredocs"
-HOMEPAGE="https://github.com/adrianomitre/heredoc_unindent"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 x86 ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc test"
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
-
-all_ruby_prepare() {
- sed -i -e '1igem "test-unit"' test/test_heredoc_unindent.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/heredoc_unindent/metadata.xml b/dev-ruby/heredoc_unindent/metadata.xml
index 4f31c842ccfc..064fde7c617e 100644
--- a/dev-ruby/heredoc_unindent/metadata.xml
+++ b/dev-ruby/heredoc_unindent/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/hiera-eyaml-gpg/Manifest b/dev-ruby/hiera-eyaml-gpg/Manifest
index 999923fb29e3..1e292be765f7 100644
--- a/dev-ruby/hiera-eyaml-gpg/Manifest
+++ b/dev-ruby/hiera-eyaml-gpg/Manifest
@@ -1,2 +1 @@
-DIST hiera-eyaml-gpg-0.7.2.gem 14336 BLAKE2B e8a2e5666a930a0955302b0d3cb505c00c936e01db095f56c746de2945830a3adff70b86bb68a74637f87d80ade8aade697b22ec3b263310edc3673f8a8c22e2 SHA512 4d27db9d1ab9d5e7368e92ea003aef776a6da5e078b0b7dc22a494680521b69168e2220d7311fc27c6896828ce4fc5182b6b66dd92a9a9ae42b0086e31e2634c
-DIST hiera-eyaml-gpg-0.7.3.gem 14336 BLAKE2B 2a08dc3251f6e28be3a027778dd7a30f7d186ec06965cb5ceb93c4f9ff361b49a4d220323e3a8576cedf6d8b487bed6c14e2203314370faf26417207ef011e58 SHA512 4cd1005b1775af2a433b9d91c7cb16bb854bee3a818f566134549663bd620f1a4e2a14dca6be5b319c5a95c26b464d8f438d51b876f21e6190b4210283f838af
+DIST hiera-eyaml-gpg-0.7.4.gem 14848 BLAKE2B 68d6fb4047dcc80ceca5350459a60c42f7d3db753491b94c4710920ddd484eaf0bee76f3381a2fa663795baec58e6d26614782f7f1a88933152cce8cc284457c SHA512 5cee22e435f7bcc1e4a9d4775ecdf0eb9cd70cf3e26870107920993df480082f7bebd7d488b060880407a7debd11c7b9a202f8f3a99da811ae8f49f17a7495e6
diff --git a/dev-ruby/hiera-eyaml-gpg/hiera-eyaml-gpg-0.7.2.ebuild b/dev-ruby/hiera-eyaml-gpg/hiera-eyaml-gpg-0.7.2.ebuild
deleted file mode 100644
index 2478858b46d7..000000000000
--- a/dev-ruby/hiera-eyaml-gpg/hiera-eyaml-gpg-0.7.2.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A GPG backend for hiera-eyaml"
-HOMEPAGE="https://github.com/sihil/hiera-eyaml-gpg"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/hiera-eyaml-1.3.8:*
- >=dev-ruby/gpgme-2.0.0
-"
diff --git a/dev-ruby/hiera-eyaml-gpg/hiera-eyaml-gpg-0.7.3.ebuild b/dev-ruby/hiera-eyaml-gpg/hiera-eyaml-gpg-0.7.3.ebuild
deleted file mode 100644
index 2478858b46d7..000000000000
--- a/dev-ruby/hiera-eyaml-gpg/hiera-eyaml-gpg-0.7.3.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A GPG backend for hiera-eyaml"
-HOMEPAGE="https://github.com/sihil/hiera-eyaml-gpg"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/hiera-eyaml-1.3.8:*
- >=dev-ruby/gpgme-2.0.0
-"
diff --git a/dev-ruby/hiera-eyaml-gpg/hiera-eyaml-gpg-0.7.4-r1.ebuild b/dev-ruby/hiera-eyaml-gpg/hiera-eyaml-gpg-0.7.4-r1.ebuild
new file mode 100644
index 000000000000..cf46e672e926
--- /dev/null
+++ b/dev-ruby/hiera-eyaml-gpg/hiera-eyaml-gpg-0.7.4-r1.ebuild
@@ -0,0 +1,25 @@
+# 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_TASK_TEST=""
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A GPG backend for hiera-eyaml"
+HOMEPAGE="https://github.com/voxpupuli/hiera-eyaml-gpg"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/hiera-eyaml-1.3.8:*
+ >=dev-ruby/gpgme-2.0.0
+"
diff --git a/dev-ruby/hiera-eyaml-gpg/metadata.xml b/dev-ruby/hiera-eyaml-gpg/metadata.xml
index f3a7624f65cf..90d3d734d0bf 100644
--- a/dev-ruby/hiera-eyaml-gpg/metadata.xml
+++ b/dev-ruby/hiera-eyaml-gpg/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>sysadmin@gentoo.org</email>
@@ -10,6 +10,6 @@
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">sihil/hiera-eyaml-gpg</remote-id>
+ <remote-id type="github">voxpupuli/hiera-eyaml-gpg</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/hiera-eyaml-plaintext/hiera-eyaml-plaintext-0.6-r1.ebuild b/dev-ruby/hiera-eyaml-plaintext/hiera-eyaml-plaintext-0.6-r1.ebuild
deleted file mode 100644
index c82fcad5d434..000000000000
--- a/dev-ruby/hiera-eyaml-plaintext/hiera-eyaml-plaintext-0.6-r1.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A plaintext backend for hiera-eyaml"
-HOMEPAGE="https://github.com/gtmtechltd/hiera-eyaml-plaintext"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
diff --git a/dev-ruby/hiera-eyaml-plaintext/hiera-eyaml-plaintext-0.6-r2.ebuild b/dev-ruby/hiera-eyaml-plaintext/hiera-eyaml-plaintext-0.6-r2.ebuild
new file mode 100644
index 000000000000..8a85e012c2f3
--- /dev/null
+++ b/dev-ruby/hiera-eyaml-plaintext/hiera-eyaml-plaintext-0.6-r2.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A plaintext backend for hiera-eyaml"
+HOMEPAGE="https://github.com/gtmtechltd/hiera-eyaml-plaintext"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~x86"
+IUSE=""
diff --git a/dev-ruby/hiera-eyaml-plaintext/metadata.xml b/dev-ruby/hiera-eyaml-plaintext/metadata.xml
index 065a6b867a24..37fd57d773e7 100644
--- a/dev-ruby/hiera-eyaml-plaintext/metadata.xml
+++ b/dev-ruby/hiera-eyaml-plaintext/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>sysadmin@gentoo.org</email>
diff --git a/dev-ruby/hiera-eyaml/Manifest b/dev-ruby/hiera-eyaml/Manifest
index 2d3e7439b056..91598c9819d2 100644
--- a/dev-ruby/hiera-eyaml/Manifest
+++ b/dev-ruby/hiera-eyaml/Manifest
@@ -1 +1 @@
-DIST hiera-eyaml-3.0.0.tar.gz 54416 BLAKE2B 75587799b228562ae89ab4e46fdd5d4a256f66403df0a2c0761aadec17fb3fa95c1207aee5a4663bcbd843c7d6e0594ce2c0edf6973184b64522a987d628b549 SHA512 805496478d0fe142ea1661345d92e5ad2ad4c18c98bb83c8f799031b784a997e1aee2a11b46600a8ddbe0b147072ea0f83fbfa100df5b5fc534d7489850d9827
+DIST hiera-eyaml-3.4.0.tar.gz 60920 BLAKE2B 73a2a5c15d79b8084f226173667fc29875ea4614a09030171f81a1b2c632d45071e8952765afb9900c695643016117f9e1a28f9cefe7a19a9de67315ed4d139b SHA512 64443cc49e66dd95cb85d5a2e26a50b5c60ef78dc21354fb5a3760f4e1f0005936d46ff54232e2f2e1b250628a4844b79a8ca267c4d72ab53ef318cde10a074b
diff --git a/dev-ruby/hiera-eyaml/hiera-eyaml-3.0.0.ebuild b/dev-ruby/hiera-eyaml/hiera-eyaml-3.0.0.ebuild
deleted file mode 100644
index 0ac125d70878..000000000000
--- a/dev-ruby/hiera-eyaml/hiera-eyaml-3.0.0.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md PLUGINS.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Encrypted YAML backend for hiera"
-HOMEPAGE="https://github.com/TomPoulton/hiera-eyaml"
-SRC_URI="https://github.com/TomPoulton/hiera-eyaml/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/highline-1.6.19:*"
-ruby_add_rdepend "dev-ruby/optimist"
-ruby_add_rdepend "!!dev-ruby/hiera-eyaml:0" # both install the /usr/bin/eyaml binary
-
-ruby_add_bdepend "test? ( dev-util/cucumber ~dev-util/aruba-0.6.2 <app-admin/puppet-6 dev-ruby/hiera-eyaml-plaintext )"
-
-all_ruby_prepare() {
- # Fix highline dependency to be compatible with more versions.
- sed -i -e '/highline/ s/~>/>=/' \
- -e '/gem.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- sed -i -e 's:/tmp:'${T}':' \
- features/sandbox/puppet/environments/local/modules/test/manifests/run.pp \
- features/sandbox/puppet-hiera-merge/environments/local/modules/test/manifests/run.pp \
- features/puppet.feature
-}
-
-each_ruby_prepare() {
- # Run tests with the correct ruby interpreter
- sed -i -e 's:I run `eyaml:I run `'${RUBY}' '${S}'/bin/eyaml:' features/*.feature || die
-
-}
-
-each_ruby_test() {
- ${RUBY} -S cucumber --format progress features || die
-}
diff --git a/dev-ruby/hiera-eyaml/hiera-eyaml-3.4.0.ebuild b/dev-ruby/hiera-eyaml/hiera-eyaml-3.4.0.ebuild
new file mode 100644
index 000000000000..4d597a68a781
--- /dev/null
+++ b/dev-ruby/hiera-eyaml/hiera-eyaml-3.4.0.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md PLUGINS.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Encrypted YAML backend for hiera"
+HOMEPAGE="https://github.com/voxpupuli/hiera-eyaml"
+SRC_URI="https://github.com/voxpupuli/hiera-eyaml/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/highline-1.6.19:*
+ dev-ruby/optimist
+"
+
+ruby_add_bdepend "test? (
+ dev-util/cucumber
+ ~dev-util/aruba-0.6.2
+ dev-ruby/hiera-eyaml-plaintext
+)"
+
+BDEPEND+=" test? ( || ( app-admin/puppet-agent app-admin/puppet ) dev-tcltk/expect )"
+
+all_ruby_prepare() {
+ # Fix highline dependency to be compatible with more versions.
+ sed -i -e '/highline/ s/~>/>=/' \
+ -e '/gem.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e "s:/tmp:${T}:" \
+ features/sandbox/puppet/environments/local/modules/test/manifests/run.pp \
+ features/sandbox/puppet-hiera-merge/environments/local/modules/test/manifests/run.pp \
+ features/sandbox/puppet-envvar/environments/local/modules/test/manifests/run.pp \
+ features/puppet.feature
+}
+
+each_ruby_prepare() {
+ # Run tests with the correct ruby interpreter
+ sed -i -e 's:I run `eyaml:I run `'${RUBY}' '"${S}"'/bin/eyaml:' features/*.feature || die
+
+}
+
+each_ruby_test() {
+ CUCUMBER_PUBLISH_QUIET=true ${RUBY} -S cucumber --format progress features || die
+}
diff --git a/dev-ruby/hiera-eyaml/metadata.xml b/dev-ruby/hiera-eyaml/metadata.xml
index bf2e34747ae7..07ab2adb5524 100644
--- a/dev-ruby/hiera-eyaml/metadata.xml
+++ b/dev-ruby/hiera-eyaml/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>sysadmin@gentoo.org</email>
@@ -10,6 +10,6 @@
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">TomPoulton/hiera-eyaml</remote-id>
+ <remote-id type="github">voxpupuli/hiera-eyaml</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/hiera/Manifest b/dev-ruby/hiera/Manifest
index be270e1836a8..19762ac40c3d 100644
--- a/dev-ruby/hiera/Manifest
+++ b/dev-ruby/hiera/Manifest
@@ -1,4 +1 @@
-DIST hiera-3.4.3.gem 40960 BLAKE2B a4747c6096065c1272bd3099893d27c53b5e869be16643fbd59fa0eead692e3bd082fcbf82463614336d00c3068244bd632fd6c3a87ba520566a8643f674bfc4 SHA512 126e626b9c9020f2b8565aaff35f30b35c73785120425d186c97186c5bdfafc4831216250f78fd33ffd5e1dde49646b262887747c0d73442a252c391329959e2
-DIST hiera-3.4.4.gem 41472 BLAKE2B 12c098d4cbf3bbf5980a4638d7dd7a67a56b9874c96e5be483335be2e0c9ac2417b7e187737c40c9cfa4f1d822f7d3bd9ac74f96e2df040c7aa029b82f295304 SHA512 bfac2d76cca90708a52f907a31c35f8e3944d50d473e3f17ad13f3673ab2efed0ee9edcbb4c40242f398ab2e3bd08b249b191a6b9d534c185ed540802684beca
-DIST hiera-3.4.5.gem 41472 BLAKE2B 4dc65c997bd7e2b068af2b5f5e1d59504de302ff4934b50c0b023f277f892ae4b12f65c727ceb0629e43a07e8e13840add07c7546be776e16b269d9a90555a53 SHA512 0bf739cbbba49534b3147623e2aaf3513e0bff65a74441668a44cbad0e436abdb6033e25dfd13b2d5bdbf560127f891997c270f314e9f08efde4c1e95bd9dc6d
-DIST hiera-3.5.0.gem 40960 BLAKE2B c41d6a5cb95278e212234d6c144c5b97535c319c78874e13921e25f2f58cd9ea19884ed627bf4a715810589f9b70023b0c4bb2f6f1f8d51924ad9dac065bdaf7 SHA512 b9cdff688829fd8f124011abb4a43640a7531567a678c116e40259e1d110fd20dc7d2ac1711264f4ea61f2728f93027d65df25d5d4d8c339e465010ba2a269bf
+DIST hiera-3.12.0.gem 40960 BLAKE2B b2fea317bd89b754686b1658e8baa9ab0fd2edbbc93c09edef2757ee23bd7bb76235e4a42d65993d817dd36a8f5fa3cc6ba3db7c75eea05641a264aab4c8c5b5 SHA512 bd98c4862ce936012c9761a8ba8c5fc26a1a8a700d3be8a4ed92f701ffb69858641dafea361129d44e7c67e4d462a4c61dd44d85e761b746f6443773feebcb59
diff --git a/dev-ruby/hiera/hiera-3.12.0.ebuild b/dev-ruby/hiera/hiera-3.12.0.ebuild
new file mode 100644
index 000000000000..bb64d9638f72
--- /dev/null
+++ b/dev-ruby/hiera/hiera-3.12.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A simple pluggable Hierarchical Database"
+HOMEPAGE="https://docs.puppet.com/hiera/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ~ppc64 ~riscv ~sparc x86"
+
+ruby_add_bdepend "test? ( dev-ruby/mocha )"
+
+ruby_add_rdepend "dev-ruby/deep_merge"
diff --git a/dev-ruby/hiera/hiera-3.4.3.ebuild b/dev-ruby/hiera/hiera-3.4.3.ebuild
deleted file mode 100644
index 4680abd1799a..000000000000
--- a/dev-ruby/hiera/hiera-3.4.3.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple pluggable Hierarchical Database"
-HOMEPAGE="https://docs.puppet.com/hiera/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE=""
-KEYWORDS="amd64 ~arm hppa ppc ~ppc64 ~sparc x86"
-
-ruby_add_bdepend "test? ( dev-ruby/mocha )"
-
-ruby_add_rdepend "dev-ruby/deep_merge"
diff --git a/dev-ruby/hiera/hiera-3.4.4.ebuild b/dev-ruby/hiera/hiera-3.4.4.ebuild
deleted file mode 100644
index f653c3e47f1f..000000000000
--- a/dev-ruby/hiera/hiera-3.4.4.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple pluggable Hierarchical Database"
-HOMEPAGE="https://docs.puppet.com/hiera/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE=""
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86"
-
-ruby_add_bdepend "test? ( dev-ruby/mocha )"
-
-ruby_add_rdepend "dev-ruby/deep_merge"
diff --git a/dev-ruby/hiera/hiera-3.4.5.ebuild b/dev-ruby/hiera/hiera-3.4.5.ebuild
deleted file mode 100644
index f653c3e47f1f..000000000000
--- a/dev-ruby/hiera/hiera-3.4.5.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple pluggable Hierarchical Database"
-HOMEPAGE="https://docs.puppet.com/hiera/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE=""
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86"
-
-ruby_add_bdepend "test? ( dev-ruby/mocha )"
-
-ruby_add_rdepend "dev-ruby/deep_merge"
diff --git a/dev-ruby/hiera/hiera-3.5.0.ebuild b/dev-ruby/hiera/hiera-3.5.0.ebuild
deleted file mode 100644
index c91179dd0a9d..000000000000
--- a/dev-ruby/hiera/hiera-3.5.0.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple pluggable Hierarchical Database"
-HOMEPAGE="https://docs.puppet.com/hiera/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE=""
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86"
-
-ruby_add_bdepend "test? ( dev-ruby/mocha )"
-
-ruby_add_rdepend "dev-ruby/deep_merge"
diff --git a/dev-ruby/hiera/metadata.xml b/dev-ruby/hiera/metadata.xml
index b1b436ed12ea..7604698badec 100644
--- a/dev-ruby/hiera/metadata.xml
+++ b/dev-ruby/hiera/metadata.xml
@@ -1,15 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
-<email>prometheanfire@gentoo.org</email>
-</maintainer>
-<maintainer type="project">
-<email>sysadmin@gentoo.org</email>
-<name>Gentoo Sysadmin Project</name>
-</maintainer>
-<maintainer type="project">
-<email>ruby@gentoo.org</email>
-<name>Gentoo Ruby Project</name>
-</maintainer>
+ <maintainer type="person">
+ <email>prometheanfire@gentoo.org</email>
+ </maintainer>
+ <maintainer type="project">
+ <email>sysadmin@gentoo.org</email>
+ <name>Gentoo Sysadmin Project</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">puppetlabs/hiera</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/highline/Manifest b/dev-ruby/highline/Manifest
index 6614f97b5335..fca406f8bd8f 100644
--- a/dev-ruby/highline/Manifest
+++ b/dev-ruby/highline/Manifest
@@ -1,3 +1,2 @@
-DIST highline-1.7.8.gem 224768 BLAKE2B 683fa70e3ea4bf697ab5a1cd40da2528e2586f8fe12fb0ffb799938f2bfa2efe64fe1424c0ee1f90ae3df69f86a92f44eebcbb2ab34f18b3c4cdbb143e596067 SHA512 85f57ab732009cc961b824e252f0b65bbe7c0a8c97849d453773a331016b2ea8fa0efe393bc1a0073eae6d3cf523d97b9434cd73bdceed55bc069be0b6f4b41d
-DIST highline-2.0.1.tar.gz 233862 BLAKE2B ca65792d99f31a03f3ae86c774498692197b6e7db5bef6c3c47a88edeb476c0b41abb3afd7640eab16d2946235a72e247318de14ad600e542a999c124b96b03c SHA512 1d6176465f0f1dd21084b5632e47b52a734ec97c1de849c40d4e904abc1fa1ff33ad8f70aba10047debfad16d60364b3acab224a6e57f6278c27c9c25ab37fa9
-DIST highline-2.0.2.tar.gz 234108 BLAKE2B 5d4b234d03e4569348a68991dd2319afd329c9840858d9e6686afc57c24cfda8836d5c912072ccd14b61a25ceaed64e46a44c7c5f4e930658b8827ccb74ac08b SHA512 07098366a7c59f2b0bfb194f92daff4f7bc16c2e78e0a6d85da50f9a72e58cafe0281c0e8ee86f84f31e70228f09b75e9e5bcb73dd05256118279e0c02a3ccee
+DIST highline-2.1.0.tar.gz 234116 BLAKE2B e1e899093de7e162e83f4d2e694e5841cedc336063a4410cab392702241136d5eec258b53065ffcded567f0af163d04a25bbdfd0767211b059980e9e5effe7c9 SHA512 b763428d67b1eb77762b54b8e2dd39bda720589e7030db8694e793bb432fa94caa2848b23358e7eaea0ccb22d8a93e0a64aeef3865f7e9fec348bbebee19d713
+DIST highline-3.0.1.tar.gz 236149 BLAKE2B 0aaa40ca678dc88934f55d5df9b970d8cd61e507bb4e967c72de10c5bcce94dfc5d6e4085d753124a62d46a285a096302ad127214f2aea28fa0397f40d3c6902 SHA512 e19724a473756faf57d989944b1e5cd86b97049a16ae0c33f25462f6f3d7f9948064f8e08d0b51d3a6f978acaf93c62b4965be5af829d3c07b123c96490a28b2
diff --git a/dev-ruby/highline/highline-1.7.8.ebuild b/dev-ruby/highline/highline-1.7.8.ebuild
deleted file mode 100644
index 99fb2b506b76..000000000000
--- a/dev-ruby/highline/highline-1.7.8.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.rdoc TODO"
-RUBY_FAKEGEM_DOCDIR="doc/html"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Highline is a high-level command-line IO library for ruby"
-HOMEPAGE="https://github.com/JEG2/highline"
-
-IUSE=""
-LICENSE="|| ( GPL-2 Ruby )"
-SLOT="0"
-KEYWORDS="alpha amd64 hppa ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-
-ruby_add_bdepend "test? ( dev-ruby/rdoc )"
-
-all_ruby_prepare() {
- # fix up gemspec file not to call git
- sed -i -e '/git ls-files/d' highline.gemspec || die
-
- # Avoid unneeded dependencies
- sed -i -e '/\(bundler\|code_statistics\)/ s:^:#:' \
- -e '/PackageTask/,/end/ s:^:#:' Rakefile || die
-
- # Avoid tests that require a real console because we can't provide
- # that when running tests through portage. These should pass when
- # run in a console. We should probably narrow this down more to the
- # specific tests.
- rm test/tc_highline.rb || die
-
- sed -i -e '/test_question_options/,/^ end/ s:^:#:' \
- -e '/test_paged_print_infinite_loop_bug/,/^ end/ s:^:#:' \
- -e '/test_cancel_paging/,/^ end/ s:^:#:' \
- test/tc_menu.rb || die
-}
diff --git a/dev-ruby/highline/highline-2.0.1.ebuild b/dev-ruby/highline/highline-2.0.1.ebuild
deleted file mode 100644
index 8fd18cb45c63..000000000000
--- a/dev-ruby/highline/highline-2.0.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md TODO"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Highline is a high-level command-line IO library for ruby"
-HOMEPAGE="https://github.com/JEG2/highline"
-SRC_URI="https://github.com/JEG2/highline/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-IUSE=""
-LICENSE="|| ( GPL-2 Ruby )"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-
-all_ruby_prepare() {
- # fix up gemspec file not to call git
- sed -i -e '/git ls-files/d' highline.gemspec || die
-
- # Avoid unneeded dependencies
- sed -i -e '/\(bundler\|code_statistics\)/ s:^:#:' \
- -e '/PackageTask/,/end/ s:^:#:' Rakefile || die
- sed -i -e '/simplecov/ s:^:#:' test/test_helper.rb || die
-
- # Remove almost empty doc directory to allow rdoc recipe to work
- rm -rf doc || die
-}
diff --git a/dev-ruby/highline/highline-2.0.2.ebuild b/dev-ruby/highline/highline-2.0.2.ebuild
deleted file mode 100644
index fb472d36be12..000000000000
--- a/dev-ruby/highline/highline-2.0.2.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md TODO"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Highline is a high-level command-line IO library for ruby"
-HOMEPAGE="https://github.com/JEG2/highline"
-SRC_URI="https://github.com/JEG2/highline/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-IUSE=""
-LICENSE="|| ( GPL-2 Ruby )"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-
-all_ruby_prepare() {
- # fix up gemspec file not to call git
- sed -i -e '/git ls-files/d' highline.gemspec || die
-
- # Avoid unneeded dependencies
- sed -i -e '/\(bundler\|code_statistics\)/ s:^:#:' \
- -e '/PackageTask/,/end/ s:^:#:' Rakefile || die
- sed -i -e '/simplecov/ s:^:#:' test/test_helper.rb || die
-
- # Remove almost empty doc directory to allow rdoc recipe to work
- rm -rf doc || die
-}
diff --git a/dev-ruby/highline/highline-2.1.0.ebuild b/dev-ruby/highline/highline-2.1.0.ebuild
new file mode 100644
index 000000000000..109ed48c2276
--- /dev/null
+++ b/dev-ruby/highline/highline-2.1.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md TODO"
+
+RUBY_FAKEGEM_GEMSPEC="highline.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Highline is a high-level command-line IO library for ruby"
+HOMEPAGE="https://github.com/JEG2/highline"
+SRC_URI="https://github.com/JEG2/highline/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+IUSE=""
+LICENSE="|| ( GPL-2 Ruby-BSD )"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm64 ~hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+all_ruby_prepare() {
+ # fix up gemspec file not to call git
+ sed -i -e 's/git ls-files -z/find * -print0/' highline.gemspec || die
+
+ # Avoid unneeded dependencies
+ sed -i -e '/\(bundler\|code_statistics\)/ s:^:#:' \
+ -e '/PackageTask/,/end/ s:^:#:' Rakefile || die
+ sed -i -e '/simplecov/ s:^:#:' test/test_helper.rb || die
+
+ # Remove almost empty doc directory to allow rdoc recipe to work
+ rm -rf doc || die
+}
diff --git a/dev-ruby/highline/highline-3.0.1.ebuild b/dev-ruby/highline/highline-3.0.1.ebuild
new file mode 100644
index 000000000000..d966495172d7
--- /dev/null
+++ b/dev-ruby/highline/highline-3.0.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md TODO"
+
+RUBY_FAKEGEM_GEMSPEC="highline.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Highline is a high-level command-line IO library for ruby"
+HOMEPAGE="https://github.com/JEG2/highline"
+SRC_URI="https://github.com/JEG2/highline/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+IUSE="test"
+LICENSE="|| ( GPL-2 Ruby-BSD )"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+
+ruby_add_bdepend "test? ( dev-ruby/dry-types )"
+
+all_ruby_prepare() {
+ # fix up gemspec file not to call git
+ sed -i -e 's/git ls-files -z/find * -print0/' highline.gemspec || die
+
+ # Avoid unneeded dependencies
+ sed -i -e '/\(bundler\|code_statistics\)/ s:^:#:' \
+ -e '/PackageTask/,/end/ s:^:#:' Rakefile || die
+ sed -i -e '/simplecov/ s:^:#:' test/test_helper.rb || die
+
+ # Remove almost empty doc directory to allow rdoc recipe to work
+ rm -rf doc || die
+}
diff --git a/dev-ruby/highline/metadata.xml b/dev-ruby/highline/metadata.xml
index 1c5e41a1bb52..c6924758797b 100644
--- a/dev-ruby/highline/metadata.xml
+++ b/dev-ruby/highline/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/hipchat/Manifest b/dev-ruby/hipchat/Manifest
deleted file mode 100644
index a9bcbc2f0b22..000000000000
--- a/dev-ruby/hipchat/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST hipchat-1.6.0.tar.gz 23328 BLAKE2B b9328e339f40ff1d865af5bbd660d479e94e18be98a74171125ff9d55e96353bf0ad9420e9eacc8b1a650f873d16a197418f7cc8728042fd403a7d1bceaa0b9a SHA512 43afbc2aca234d7d3778189874013df7847f9045ecc1d5ebd6b3772dce2a9cc5000fa6075867a9b0968d49410d775f3f56ed0a4ae637d6ad3893aa668895f2a3
diff --git a/dev-ruby/hipchat/hipchat-1.6.0.ebuild b/dev-ruby/hipchat/hipchat-1.6.0.ebuild
deleted file mode 100644
index 0a4ab80daf6d..000000000000
--- a/dev-ruby/hipchat/hipchat-1.6.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.textile"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby library to interact with HipChat"
-HOMEPAGE="https://github.com/hipchat/hipchat-rb"
-SRC_URI="https://github.com/hipchat/hipchat-rb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-RUBY_S="hipchat-rb-${PV}"
-
-ruby_add_rdepend "dev-ruby/httparty dev-ruby/mimemagic"
-ruby_add_bdepend "test? (
- dev-ruby/rr
- dev-ruby/rake
- dev-ruby/webmock
- )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' Rakefile ${PN}.gemspec || die "sed failed"
- sed -i -e '/git ls-files/d' ${PN}.gemspec || die "sed failed"
-
- sed -i -e '/coveralls/I s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/hipchat/metadata.xml b/dev-ruby/hipchat/metadata.xml
deleted file mode 100644
index 99d74995e895..000000000000
--- a/dev-ruby/hipchat/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">hipchat/hipchat-rb</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/hiredis/Manifest b/dev-ruby/hiredis/Manifest
deleted file mode 100644
index 3b8b5704efc2..000000000000
--- a/dev-ruby/hiredis/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST hiredis-rb-0.6.1.tar.gz 18843 BLAKE2B 56edb460d39018730f43aeb443b6a9d81e2573ebbb6c3149a18db836c8ef5fc8ceceaa768b1a7157280f3e2fd1ed117a76cc6d06c13e326fd45b8bd4efccb24a SHA512 23107d68501c244ec2669448aa919a612be182b559f28a715a4e3a91a894332105ae3a5c96652a691f01e49c88772a482f0da11b80bbb443fa0146bbf77cc722
-DIST hiredis-rb-0.6.3.tar.gz 19106 BLAKE2B 2892fd28bf7e7edfc3563a0c321fd781baeca9eb31a64dd559a6c828bb9c4fe37c995748782c5222db46b5b35a4d17f5b8b4d8e5306209a0e374ec7096d3cd4b SHA512 3e081d46aeb128789fa41fe9422186dd30e88c5a7a3c16dfcf1a92fe7faf99cced352ea39a885785fc12f0a974625be329d9ff2a5936a786febe8a2c81f5e139
diff --git a/dev-ruby/hiredis/files/hiredis-0.6.1-unvendor-hiredis.patch b/dev-ruby/hiredis/files/hiredis-0.6.1-unvendor-hiredis.patch
deleted file mode 100644
index e8fb1f9ffa62..000000000000
--- a/dev-ruby/hiredis/files/hiredis-0.6.1-unvendor-hiredis.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/ext/hiredis_ext/extconf.rb 2015-12-29 15:53:00.000000000 +0100
-+++ b/ext/hiredis_ext/extconf.rb 2018-04-21 07:40:15.973747727 +0200
-@@ -27,15 +27,8 @@
- end
-
- if build_hiredis
-- # Make sure hiredis is built...
-- Dir.chdir(hiredis_dir) do
-- success = system("#{make_program} static")
-- raise "Building hiredis failed" if !success
-- end
--
-- # Statically link to hiredis (mkmf can't do this for us)
-- $CFLAGS << " -I#{hiredis_dir}"
-- $LDFLAGS << " #{hiredis_dir}/libhiredis.a"
-+ $CFLAGS << ' ' << `pkg-config hiredis --cflags-only-I`.chomp
-+ $LDFLAGS << ' -lhiredis'
-
- have_func("rb_thread_fd_select")
- create_makefile('hiredis/ext/hiredis_ext')
diff --git a/dev-ruby/hiredis/hiredis-0.6.1.ebuild b/dev-ruby/hiredis/hiredis-0.6.1.ebuild
deleted file mode 100644
index 0ff6a725e116..000000000000
--- a/dev-ruby/hiredis/hiredis-0.6.1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-MY_P="hiredis-rb-${PV}"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Wrapper for hiredis (protocol serialization/deserialization and blocking I/O)"
-HOMEPAGE="https://github.com/redis/hiredis-rb"
-SRC_URI="https://github.com/redis/hiredis-rb/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-RDEPEND+=" =dev-libs/hiredis-0.13*:="
-DEPEND+=" dev-libs/hiredis test? ( dev-ruby/test-unit:2 )"
-
-RUBY_S="${MY_P}"
-
-PATCHES=( "${FILESDIR}/${P}-unvendor-hiredis.patch" )
-
-all_ruby_prepare() {
- sed -i -e 's:/tmp/:'${T}'/:' test/connection_test.rb || die
-}
-
-each_ruby_configure() {
- CC=$(tc-getCC) ${RUBY} -Cext/hiredis_ext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/hiredis_ext
- cp ext/hiredis_ext/hiredis_ext.so lib/hiredis/ext/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/hiredis/hiredis-0.6.3.ebuild b/dev-ruby/hiredis/hiredis-0.6.3.ebuild
deleted file mode 100644
index 83a3dfc0a38d..000000000000
--- a/dev-ruby/hiredis/hiredis-0.6.3.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-MY_P="hiredis-rb-${PV}"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Wrapper for hiredis (protocol serialization/deserialization and blocking I/O)"
-HOMEPAGE="https://github.com/redis/hiredis-rb"
-SRC_URI="https://github.com/redis/hiredis-rb/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-RDEPEND+=" >=dev-libs/hiredis-0.14:="
-DEPEND+=" dev-libs/hiredis test? ( dev-ruby/test-unit:2 )"
-
-RUBY_S="${MY_P}"
-
-PATCHES=( "${FILESDIR}/${PN}-0.6.1-unvendor-hiredis.patch" )
-
-all_ruby_prepare() {
- sed -i -e 's:/tmp/:'${T}'/:' test/connection_test.rb || die
-}
-
-each_ruby_configure() {
- CC=$(tc-getCC) ${RUBY} -Cext/hiredis_ext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/hiredis_ext
- cp ext/hiredis_ext/hiredis_ext.so lib/hiredis/ext/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/hiredis/metadata.xml b/dev-ruby/hiredis/metadata.xml
deleted file mode 100644
index b87d27bfe864..000000000000
--- a/dev-ruby/hiredis/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">redis/hiredis-rb</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/histogram/Manifest b/dev-ruby/histogram/Manifest
new file mode 100644
index 000000000000..0538f526dc09
--- /dev/null
+++ b/dev-ruby/histogram/Manifest
@@ -0,0 +1 @@
+DIST histogram-0.2.4.1.gem 15872 BLAKE2B 4c416b32e348564e9a938138ac22697acc480dd88e4a879cde6485acab481690cca5d8f61c1c026635a000ee45386e78169143ebca282ae3577e83da66c3e88c SHA512 b2358c648f528e42419b52155273613e6da560ee839458a888d47588a442effec3ee78ad18c33de2b2eed8c6a9f84fbc5b97f7d23ff3675871e9e58770dae36b
diff --git a/dev-ruby/histogram/histogram-0.2.4.1-r1.ebuild b/dev-ruby/histogram/histogram-0.2.4.1-r1.ebuild
new file mode 100644
index 000000000000..1cc10dbbba45
--- /dev/null
+++ b/dev-ruby/histogram/histogram-0.2.4.1-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Gives objects the ability to 'histogram' in several useful ways"
+HOMEPAGE="https://github.com/jtprince/histogram"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/narray )"
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/histogram/metadata.xml b/dev-ruby/histogram/metadata.xml
new file mode 100644
index 000000000000..ff9113d4d511
--- /dev/null
+++ b/dev-ruby/histogram/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jtprince/histogram</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/hitimes/Manifest b/dev-ruby/hitimes/Manifest
index 179ce012bf76..658c6261a3b8 100644
--- a/dev-ruby/hitimes/Manifest
+++ b/dev-ruby/hitimes/Manifest
@@ -1,3 +1 @@
-DIST hitimes-1.2.6.gem 32256 BLAKE2B 8e8b2338e43776256d3c4c208dc178f9594461b53d03e2101e199bc588f5aed85826f25e5133082a861ac45118a041680e27e53d74a3eb86545ca6e724b5ef95 SHA512 41954000f38f4671b8ac7b5e408aa4a8d36756cee7807a5fc8b1584ecd463c38c36e9ac06966e2302730042193faea1a1a35dbb06f7c53bc594af8420f687257
-DIST hitimes-1.3.0.gem 32768 BLAKE2B 2b9158c661b2f885ba043990a0d8df51bedf35cbaff24f9a420a5a4572270eb30b16cd7d115ab73387c1f0b31bf7ca24659c1dea61e935e6245994ec10a03b71 SHA512 09c7d15be681d85c5ab89235909ad5680b171315e0883b636eb26459d2ad7a876fe1bd79b261a8bd80c22e01b42e04b5992e311655b6179c8dce559b48750c03
-DIST hitimes-1.3.1.gem 32768 BLAKE2B 8eb1d45896b52e51fe01fadbc3373be8a0a6262d872ee584ec94cd240a42770381fe0e355c2898df245885b4009f3684ea152d124ebb30faf8eccb7ced1bfc8d SHA512 47a276d9ca26e6ea5612b73638f9a46965123a0040fe8d4ec5559edaccbdb72d3ec7f9e9bf6aebb3f0595107f941fa88501578fd3b8a3bd79b937538aeadd5d4
+DIST hitimes-2.0.0.gem 27136 BLAKE2B e2bab57b70d63f3b2bbe29584b7051f6c829f7957da483fd83b38ffee4d5f6a8c1af16c2ee8aa71d56ee71160e7df87a46e420d70d0430e514ead6576453fc7e SHA512 06f1c17d9914054bc17244f1a22761c98f7409cb401136e582deec18bbee07358b339ddd49ddfbc01cf9eb46bf84fbf5e2dccd6c77eb36e98c357e99687e8201
diff --git a/dev-ruby/hitimes/hitimes-1.2.6.ebuild b/dev-ruby/hitimes/hitimes-1.2.6.ebuild
deleted file mode 100644
index bc26bf15c8dd..000000000000
--- a/dev-ruby/hitimes/hitimes-1.2.6.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md HISTORY.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A fast, high resolution timer library"
-HOMEPAGE="https://github.com/copiousfreetime/hitimes"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e "/RUBY_VERSION >= '1.9.2'/,+4d" spec/spec_helper.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/hitimes/c extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/hitimes/c V=1
- cp ext/hitimes/c/hitimes$(get_modname) lib/hitimes || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:spec:. -e 'Dir["spec/*_spec.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/hitimes/hitimes-1.3.0.ebuild b/dev-ruby/hitimes/hitimes-1.3.0.ebuild
deleted file mode 100644
index f605ee1bea63..000000000000
--- a/dev-ruby/hitimes/hitimes-1.3.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md HISTORY.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A fast, high resolution timer library"
-HOMEPAGE="https://github.com/copiousfreetime/hitimes"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i -e "/RUBY_VERSION >= '1.9.2'/,+4d" spec/spec_helper.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/hitimes/c extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/hitimes/c V=1
- cp ext/hitimes/c/hitimes$(get_modname) lib/hitimes || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:spec:. -e 'Dir["spec/*_spec.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/hitimes/hitimes-1.3.1.ebuild b/dev-ruby/hitimes/hitimes-1.3.1.ebuild
deleted file mode 100644
index f605ee1bea63..000000000000
--- a/dev-ruby/hitimes/hitimes-1.3.1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md HISTORY.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A fast, high resolution timer library"
-HOMEPAGE="https://github.com/copiousfreetime/hitimes"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i -e "/RUBY_VERSION >= '1.9.2'/,+4d" spec/spec_helper.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/hitimes/c extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/hitimes/c V=1
- cp ext/hitimes/c/hitimes$(get_modname) lib/hitimes || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:spec:. -e 'Dir["spec/*_spec.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/hitimes/hitimes-2.0.0-r1.ebuild b/dev-ruby/hitimes/hitimes-2.0.0-r1.ebuild
new file mode 100644
index 000000000000..a7537bf5a321
--- /dev/null
+++ b/dev-ruby/hitimes/hitimes-2.0.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md HISTORY.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A fast, high resolution timer library"
+HOMEPAGE="https://github.com/copiousfreetime/hitimes"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e "/RUBY_VERSION >= '1.9.2'/,+4d" spec/spec_helper.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:spec:. -e 'Dir["spec/*_spec.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/hitimes/metadata.xml b/dev-ruby/hitimes/metadata.xml
index bf87abbb2078..61f2b065cf10 100644
--- a/dev-ruby/hitimes/metadata.xml
+++ b/dev-ruby/hitimes/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/hocon/Manifest b/dev-ruby/hocon/Manifest
index 94a875e312f8..b4947fb43d3b 100644
--- a/dev-ruby/hocon/Manifest
+++ b/dev-ruby/hocon/Manifest
@@ -1 +1 @@
-DIST hocon-1.2.5.gem 147968 BLAKE2B 9fe004d59cc3e66d770c7c8069ff2934a17befa120ccfb2e382f36f632a186095c3a94eb25e77ba3fff422394444ae85cf3adde2ed045d50f0ac99871c6dd909 SHA512 7d2d86c28edd6ed6dd99358558093cd224b9922bcbcdd2e95e23134ef0e9a2bae6129e7273435032850b672094e77f8f5b6d8cfeec03762b39ed6b63fc5fb5dd
+DIST hocon-1.4.0.tar.gz 147184 BLAKE2B 7a072b2c4e5bc0dda80b836a6b905888e2a8cf6da87403c738f62ffebc9bae6dfa71125c68f90c4b2608a36f1491f17ceb55b4628e54b44b8acb3933c2a748a9 SHA512 735cd6344d96e5e5e42a94da875476483c6cb993c9d2f6c144b74713e1eb5cbdadcd8a2c73414d456ff9fa565a6dcc575507ee1a6df339ffe1c1944ed6d15e33
diff --git a/dev-ruby/hocon/hocon-1.2.5.ebuild b/dev-ruby/hocon/hocon-1.2.5.ebuild
deleted file mode 100644
index fb65e2ad220d..000000000000
--- a/dev-ruby/hocon/hocon-1.2.5.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_BINWRAP="hocon"
-
-inherit ruby-fakegem
-
-DESCRIPTION="This is a port of the Typesafe Config library to Ruby."
-HOMEPAGE="https://github.com/puppetlabs/ruby-hocon"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE=""
-KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc x86"
-
-RDEPEND+=""
-DEPEND+=""
diff --git a/dev-ruby/hocon/hocon-1.4.0.ebuild b/dev-ruby/hocon/hocon-1.4.0.ebuild
new file mode 100644
index 000000000000..a01b62f02dc0
--- /dev/null
+++ b/dev-ruby/hocon/hocon-1.4.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_BINWRAP="hocon"
+
+RUBY_FAKEGEM_GEMSPEC="hocon.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="This is a port of the Typesafe Config library to Ruby"
+HOMEPAGE="https://github.com/puppetlabs/ruby-hocon"
+SRC_URI="https://github.com/puppetlabs/ruby-hocon/archive/${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="ruby-hocon-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
diff --git a/dev-ruby/hocon/metadata.xml b/dev-ruby/hocon/metadata.xml
index 35e550cdf3fd..27d02209b463 100644
--- a/dev-ruby/hocon/metadata.xml
+++ b/dev-ruby/hocon/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
@@ -12,4 +12,7 @@
This is a port of the Typesafe Config library to Ruby.
The library provides Ruby support for the HOCON configuration file format.
</longdescription>
+ <upstream>
+ <remote-id type="github">puppetlabs/ruby-hocon</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/hoe-seattlerb/Manifest b/dev-ruby/hoe-seattlerb/Manifest
deleted file mode 100644
index e85629b7d77f..000000000000
--- a/dev-ruby/hoe-seattlerb/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST hoe-seattlerb-1.3.5.gem 14336 BLAKE2B 76dd4e82e4b3ceee897d484e2bbf596414bfbe50d998f2f3833e6be63dacbec4d4d1014b14d9504cbf9615736f584ea3c083c8f5b15609f400264ce5cb31856b SHA512 a5cdb38114e22e07824749e721ad7ff85724c04d8ca1c66996ca86fc9ec150a3b0b7b3bc83511932af0c4acd7e9b581d6b1583eda60160bf7ed91021ab803d0f
diff --git a/dev-ruby/hoe-seattlerb/hoe-seattlerb-1.3.5.ebuild b/dev-ruby/hoe-seattlerb/hoe-seattlerb-1.3.5.ebuild
deleted file mode 100644
index 7dc7d7495da8..000000000000
--- a/dev-ruby/hoe-seattlerb/hoe-seattlerb-1.3.5.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# no tests present
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.txt History.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Hoe plugins providing tasks used by seattle.rb"
-HOMEPAGE="https://github.com/seattlerb/hoe-seattlerb"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- # Not a real fix, but otherwise USE="doc" breaks and defaulte license is MIT
- sed -i -e "/license/d" Rakefile || die
-}
diff --git a/dev-ruby/hoe-seattlerb/metadata.xml b/dev-ruby/hoe-seattlerb/metadata.xml
deleted file mode 100644
index ded179debb9d..000000000000
--- a/dev-ruby/hoe-seattlerb/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">seattlerb/hoe-seattlerb</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/hoe/Manifest b/dev-ruby/hoe/Manifest
index 8f456fc26c80..b54dea292164 100644
--- a/dev-ruby/hoe/Manifest
+++ b/dev-ruby/hoe/Manifest
@@ -1,4 +1,4 @@
-DIST hoe-3.16.0.gem 188416 BLAKE2B 48383c46512a359a269ca3475ec701b1443e0ef71b31d1ca1604de391ed4df6b0ad27dd1c5f6ed04751047d211f2c6299245361cf131e2418f224324ac9934c3 SHA512 66cefb5a24906e19bbf0c82c8539d6d101b84d0dc1d3ce1910e4117357639489968271e76e86bd3c432b9ef7e3b24a78294c06210cbef280860f7dac18100606
-DIST hoe-3.17.1.gem 188416 BLAKE2B 0fef6dd9ae4bda93f527d7451d0d591cdc4ba1361aaec531f82e0d7ff03575845c3d5ff85189d76f9ecec17797774fd0ca82f7332a4588d086a494095af99a9d SHA512 5e4b83309ed88da098a5ae8698f9686cea1657f4554fff72446bac46bc567125232a3c5a5b941bd6d5ea18dc53f3cbf5b329f2f0623ef74e81d81586edc63ca3
-DIST hoe-3.17.2.gem 188416 BLAKE2B a6f4f93cc2d724b1c1e855c4e6976b5dbb469c4e10fc9c181b6cafaeb7088f9c19bd4bb5b858a25f011dead1b6e8392d349fe9e86d704a6a4d627cddab8de46a SHA512 d6703cd8913ac7055c33dbfead5610bd197be90ac3aeeaf2e4498ab088447d7e08dbe1ad3fdc602afd26fc7cfda12d73dd43a605b9bf59ecd83b1cfd8845f55b
-DIST hoe-3.18.0.gem 190976 BLAKE2B 227dab02241ffa1992fd80d357fcc8ec12a703413a25f38e7c22d97a187b968d334db7fe6b5d49ebe6027b05df660530dab9dd470bbd5816e7e766d86c4de94d SHA512 87b24dd77200a6013eca50b57c001c437035ab5e74809a941a28616d9a722b130a624f1137d7c55eacccc497c5c57f2ccfe872d160915b1a00a71cdf2e76695b
+DIST hoe-4.0.4.gem 190976 BLAKE2B 82e017351700a376f7e497a2e65b5e3e8331f25d5b083934f710272184016264e9b21ae4e2d25154affe901d6f426108ad29cb281cd68b30eba0910323a22544 SHA512 a7f03c171f77127d442070947193536421395a609536c45efb639c75f24605dfccb9bcf8ec6ec202956f888a3110cffa99c56bb924f7e1b982864d38673b6a4c
+DIST hoe-4.0.5.gem 190976 BLAKE2B 57622502f76a65a1d1e31bc717d125495c1f1d4e687ddf5a74c5335a58aa3a64bc0b0e2a66fe17e5b14ef92cdc72178299b2cfbb03bcb2a57d71c740d9628a6a SHA512 5f9e423dfe49d2b41ae4380a8b226a7c6efa939ba48022a0d872e9ccb4fb8aeed67ea2366034f61edc92a5be3f23014a0428ea64a48c644a2308621a0d417a23
+DIST hoe-4.1.0.gem 190976 BLAKE2B c16ccdd73235f43a8f937b52cba7d670516b86670ce5ee0a86f6167805d74f9c090b6f24d5465527c1356486a97cbdcf73f904b31e605f6f56e76dd54318d6a8 SHA512 6a90adcd2bc767ccf6e2fa425e98a9e765135cbcb39793aa0e4a1314028a8cf568a7beca2a16924abf1d0984c855b077be8123109140181ae2986c3ebc1c9010
+DIST hoe-4.2.0.gem 191488 BLAKE2B ce8ecf1ddd5c83a2b6318dfd23111bb904086897cc0e66414dbe5c7972ebb36c897de56f32964b005385136ad13aab198be7f888f65d5ae6608b99cad41e1166 SHA512 c083a7135bb751f38a5c7380f888a67232f097cb35376cb1e88d8585a97faae0a47ab4b5a22a9491526307df79efd34f65796e777563ae38549dc25edf8b05c4
diff --git a/dev-ruby/hoe/hoe-3.16.0.ebuild b/dev-ruby/hoe/hoe-3.16.0.ebuild
deleted file mode 100644
index a6c609b2b33d..000000000000
--- a/dev-ruby/hoe/hoe-3.16.0.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc Manifest.txt README.rdoc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="template"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Hoe extends rake to provide full project automation"
-HOMEPAGE="https://www.zenspider.com/projects/hoe.html"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc"
-
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.9:5 )"
-
-ruby_add_rdepend ">=dev-ruby/rake-0.8.7 <dev-ruby/rake-13.0"
-
-all_ruby_prepare() {
- # Skip isolation
- sed -i -e '/isolate/ s:^:#:' Rakefile || die
-
- # Skip test depending on specifics of gem command name
- sed -i -e '/test_nosudo/,/^ end/ s:^:#:' test/test_hoe.rb || die
-
- # Gem.bin_wrapper does not work as expected on Gentoo.
- sed -i -e 's/Gem.bin_wrapper//' lib/hoe/rcov.rb lib/hoe/publish.rb test/test_hoe_publish.rb || die
-
- # Fix broken test by including the right plugin first
- sed -i -e '/test_extensions/a Hoe.plugin :clean' test/test_hoe.rb || die
-}
-
-all_ruby_compile() {
- all_fakegem_compile
-
- if use doc; then
- rdoc --title "seattlerb's hoe-3.5.1 Documentation" -o doc --main README.txt lib History.txt Manifest.txt README.txt || die
- fi
-}
diff --git a/dev-ruby/hoe/hoe-3.17.1.ebuild b/dev-ruby/hoe/hoe-3.17.1.ebuild
deleted file mode 100644
index 97eae8a9094b..000000000000
--- a/dev-ruby/hoe/hoe-3.17.1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc Manifest.txt README.rdoc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="template"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Hoe extends rake to provide full project automation"
-HOMEPAGE="https://www.zenspider.com/projects/hoe.html"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc"
-
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.9:5 )"
-
-ruby_add_rdepend ">=dev-ruby/rake-0.8.7 <dev-ruby/rake-13.0"
-
-all_ruby_prepare() {
- # Skip isolation
- sed -i -e '/isolate/ s:^:#:' Rakefile || die
-
- # Skip test depending on specifics of gem command name
- sed -i -e '/test_nosudo/,/^ end/ s:^:#:' test/test_hoe.rb || die
-
- # Gem.bin_wrapper does not work as expected on Gentoo.
- sed -i -e 's/#{Gem.bin_wrapper "rdoc"}/-S rdoc/' lib/hoe/rcov.rb lib/hoe/publish.rb test/test_hoe_publish.rb || die
-
- # Avoid test with random sort order
- sed -i -e '/test_possibly_better/askip "ordering issues"' test/test_hoe.rb || die
-}
-
-all_ruby_compile() {
- all_fakegem_compile
-
- if use doc; then
- rdoc --title "seattlerb's hoe-3.5.1 Documentation" -o doc --main README.txt lib History.txt Manifest.txt README.txt || die
- fi
-}
diff --git a/dev-ruby/hoe/hoe-3.17.2.ebuild b/dev-ruby/hoe/hoe-3.17.2.ebuild
deleted file mode 100644
index daae06b70ab2..000000000000
--- a/dev-ruby/hoe/hoe-3.17.2.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc Manifest.txt README.rdoc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="template"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Hoe extends rake to provide full project automation"
-HOMEPAGE="https://www.zenspider.com/projects/hoe.html"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc"
-
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.9:5 )"
-
-ruby_add_rdepend ">=dev-ruby/rake-0.8.7 <dev-ruby/rake-13.0"
-
-all_ruby_prepare() {
- # Skip isolation
- sed -i -e '/isolate/ s:^:#:' Rakefile || die
-
- # Skip test depending on specifics of gem command name
- sed -i -e '/test_nosudo/,/^ end/ s:^:#:' test/test_hoe.rb || die
-
- # Gem.bin_wrapper does not work as expected on Gentoo.
- sed -i -e 's/#{Gem.bin_wrapper "rdoc"}/-S rdoc/' lib/hoe/rcov.rb lib/hoe/publish.rb test/test_hoe_publish.rb || die
-
- # Avoid test with random sort order
- sed -i -e '/test_possibly_better/askip "ordering issues"' test/test_hoe.rb || die
-}
-
-all_ruby_compile() {
- all_fakegem_compile
-
- if use doc; then
- rdoc --title "seattlerb's hoe-3.5.1 Documentation" -o doc --main README.txt lib History.txt Manifest.txt README.txt || die
- fi
-}
diff --git a/dev-ruby/hoe/hoe-3.18.0.ebuild b/dev-ruby/hoe/hoe-3.18.0.ebuild
deleted file mode 100644
index 2e01454d1f5e..000000000000
--- a/dev-ruby/hoe/hoe-3.18.0.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc Manifest.txt README.rdoc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="template"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Hoe extends rake to provide full project automation"
-HOMEPAGE="https://www.zenspider.com/projects/hoe.html"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc"
-
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.9:5 )"
-
-ruby_add_rdepend ">=dev-ruby/rake-0.8.7 <dev-ruby/rake-13.0"
-
-all_ruby_prepare() {
- # Skip isolation
- sed -i -e '/isolate/ s:^:#:' Rakefile || die
-
- # Skip test depending on specifics of gem command name
- sed -i -e '/test_nosudo/,/^ end/ s:^:#:' test/test_hoe.rb || die
-
- # Gem.bin_wrapper does not work as expected on Gentoo.
- sed -i -e 's/#{Gem.bin_wrapper "rdoc"}/-S rdoc/' lib/hoe/rcov.rb lib/hoe/publish.rb test/test_hoe_publish.rb || die
-
- # Avoid test with random sort order
- sed -i -e '/test_possibly_better/askip "ordering issues"' test/test_hoe.rb || die
-}
-
-all_ruby_compile() {
- all_fakegem_compile
-
- if use doc; then
- rdoc --title "seattlerb's hoe-3.5.1 Documentation" -o doc --main README.txt lib History.txt Manifest.txt README.txt || die
- fi
-}
diff --git a/dev-ruby/hoe/hoe-4.0.4.ebuild b/dev-ruby/hoe/hoe-4.0.4.ebuild
new file mode 100644
index 000000000000..db7a4e635ceb
--- /dev/null
+++ b/dev-ruby/hoe/hoe-4.0.4.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="History.rdoc Manifest.txt README.rdoc"
+
+RUBY_FAKEGEM_EXTRAINSTALL="template"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Hoe extends rake to provide full project automation"
+HOMEPAGE="https://www.zenspider.com/projects/hoe.html"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc"
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.9:5 )"
+
+ruby_add_rdepend ">=dev-ruby/rake-0.8.7 <dev-ruby/rake-15.0"
+
+all_ruby_prepare() {
+ # Skip isolation
+ sed -i -e '/isolate/ s:^:#:' Rakefile || die
+
+ # Skip test depending on specifics of gem command name
+ sed -i -e '/test_nosudo/,/^ end/ s:^:#:' test/test_hoe.rb || die
+
+ # Avoid test with random sort order
+ sed -i -e '/test_possibly_better/askip "ordering issues"' test/test_hoe.rb || die
+
+ # Avoid test that depends on specifics of merged packages
+ sed -i -e '/test_make_rdoc_cmd/askip "dependent on merged packages"' test/test_hoe_publish.rb || die
+}
+
+all_ruby_compile() {
+ all_fakegem_compile
+
+ if use doc; then
+ rdoc --title "seattlerb's hoe-${PV} Documentation" -o doc --main README.rdoc \
+ lib History.rdoc Manifest.txt README.doc || die
+ rm -f doc/js/*.gz || die
+ fi
+}
+
+each_ruby_test() {
+ export -n A
+ each_fakegem_test
+}
diff --git a/dev-ruby/hoe/hoe-4.0.5.ebuild b/dev-ruby/hoe/hoe-4.0.5.ebuild
new file mode 100644
index 000000000000..96f7c8c86067
--- /dev/null
+++ b/dev-ruby/hoe/hoe-4.0.5.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="History.rdoc Manifest.txt README.rdoc"
+
+RUBY_FAKEGEM_EXTRAINSTALL="template"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Hoe extends rake to provide full project automation"
+HOMEPAGE="https://www.zenspider.com/projects/hoe.html"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc"
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.9:5 )"
+
+ruby_add_rdepend ">=dev-ruby/rake-0.8.7 <dev-ruby/rake-15.0"
+
+all_ruby_prepare() {
+ # Skip isolation
+ sed -i -e '/isolate/ s:^:#:' Rakefile || die
+
+ # Skip test depending on specifics of gem command name
+ sed -i -e '/test_nosudo/,/^ end/ s:^:#:' test/test_hoe.rb || die
+
+ # Avoid test with random sort order
+ sed -i -e '/test_possibly_better/askip "ordering issues"' test/test_hoe.rb || die
+
+ # Avoid test that depends on specifics of merged packages
+ sed -i -e '/test_make_rdoc_cmd/askip "dependent on merged packages"' test/test_hoe_publish.rb || die
+}
+
+all_ruby_compile() {
+ all_fakegem_compile
+
+ if use doc; then
+ rdoc --title "seattlerb's hoe-${PV} Documentation" -o doc --main README.rdoc \
+ lib History.rdoc Manifest.txt README.doc || die
+ rm -f doc/js/*.gz || die
+ fi
+}
+
+each_ruby_test() {
+ export -n A
+ each_fakegem_test
+}
diff --git a/dev-ruby/hoe/hoe-4.1.0.ebuild b/dev-ruby/hoe/hoe-4.1.0.ebuild
new file mode 100644
index 000000000000..855e986f6b15
--- /dev/null
+++ b/dev-ruby/hoe/hoe-4.1.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="History.rdoc Manifest.txt README.rdoc"
+
+RUBY_FAKEGEM_EXTRAINSTALL="template"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Hoe extends rake to provide full project automation"
+HOMEPAGE="https://www.zenspider.com/projects/hoe.html"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc"
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.9:5 )"
+
+ruby_add_rdepend ">=dev-ruby/rake-0.8.7 <dev-ruby/rake-15.0"
+
+all_ruby_prepare() {
+ # Skip isolation
+ sed -i -e '/isolate/ s:^:#:' Rakefile || die
+
+ # Skip test depending on specifics of gem command name
+ sed -i -e '/test_nosudo/,/^ end/ s:^:#:' test/test_hoe.rb || die
+
+ # Avoid test with random sort order
+ sed -i -e '/test_possibly_better/askip "ordering issues"' test/test_hoe.rb || die
+
+ # Avoid test that depends on specifics of merged packages
+ sed -i -e '/test_make_rdoc_cmd/askip "dependent on merged packages"' test/test_hoe_publish.rb || die
+}
+
+all_ruby_compile() {
+ all_fakegem_compile
+
+ if use doc; then
+ rdoc --title "seattlerb's hoe-${PV} Documentation" -o doc --main README.rdoc \
+ lib History.rdoc Manifest.txt README.doc || die
+ rm -f doc/js/*.gz || die
+ fi
+}
+
+each_ruby_test() {
+ export -n A
+ each_fakegem_test
+}
diff --git a/dev-ruby/hoe/hoe-4.2.0.ebuild b/dev-ruby/hoe/hoe-4.2.0.ebuild
new file mode 100644
index 000000000000..df02e38b53d6
--- /dev/null
+++ b/dev-ruby/hoe/hoe-4.2.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="History.rdoc Manifest.txt README.rdoc"
+
+RUBY_FAKEGEM_EXTRAINSTALL="template"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Hoe extends rake to provide full project automation"
+HOMEPAGE="https://www.zenspider.com/projects/hoe.html"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc"
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.9:5 )"
+
+ruby_add_rdepend ">=dev-ruby/rake-0.8.7 <dev-ruby/rake-15.0"
+
+all_ruby_prepare() {
+ # Skip isolation
+ sed -i -e '/isolate/ s:^:#:' Rakefile || die
+
+ # Skip test depending on specifics of gem command name
+ sed -i -e '/test_nosudo/,/^ end/ s:^:#:' test/test_hoe.rb || die
+
+ # Avoid test with random sort order
+ sed -i -e '/test_possibly_better/askip "ordering issues"' test/test_hoe.rb || die
+
+ # Avoid test that depends on specifics of merged packages
+ sed -i -e '/test_make_rdoc_cmd/askip "dependent on merged packages"' test/test_hoe_publish.rb || die
+}
+
+all_ruby_compile() {
+ all_fakegem_compile
+
+ if use doc; then
+ rdoc --title "seattlerb's hoe-${PV} Documentation" -o doc --main README.rdoc \
+ lib History.rdoc Manifest.txt README.doc || die
+ rm -f doc/js/*.gz || die
+ fi
+}
+
+each_ruby_test() {
+ export -n A
+ each_fakegem_test
+}
diff --git a/dev-ruby/hoe/metadata.xml b/dev-ruby/hoe/metadata.xml
index eb1e47f2edfb..bdd51fb52dc3 100644
--- a/dev-ruby/hoe/metadata.xml
+++ b/dev-ruby/hoe/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">seattlerb/hoe</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/hpricot/Manifest b/dev-ruby/hpricot/Manifest
deleted file mode 100644
index e2a1747d7308..000000000000
--- a/dev-ruby/hpricot/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST hpricot-0.8.6.gem 293888 BLAKE2B 5c054c6fcd5c3365dbf44f3c502bc4c1c3885f4aa43fd1fd15365aea19600ef0ef48157c39ef1709386bda0bc3fb6bba6d98862e8e28bdb5c173429969ef5ab9 SHA512 f0ea9168ae79d099cdb751dd5a205e0896dfb229759e499fff833e94209d1497aa97becb285176dcbcc1fee19bc11913ca3ac0d7a467067e5d837c1eb6e310ad
diff --git a/dev-ruby/hpricot/files/hpricot-0.8.6-fast_xs.patch b/dev-ruby/hpricot/files/hpricot-0.8.6-fast_xs.patch
deleted file mode 100644
index 0b16b6c61b93..000000000000
--- a/dev-ruby/hpricot/files/hpricot-0.8.6-fast_xs.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Index: hpricot-0.8.6/metadata
-===================================================================
---- hpricot-0.8.6.orig/metadata
-+++ hpricot-0.8.6/metadata
-@@ -16,7 +16,18 @@ bindir: bin
- cert_chain: []
-
- date: 2012-01-17 00:00:00 Z
--dependencies: []
-+dependencies:
-+- !ruby/object:Gem::Dependency
-+ name: fast_xs
-+ prerelease: false
-+ requirement: &id003 !ruby/object:Gem::Requirement
-+ none: false
-+ requirements:
-+ - - ">="
-+ - !ruby/object:Gem::Version
-+ version: 0.7.3
-+ type: :runtime
-+ version_requirements: *id003
-
- description: a swift, liberal HTML parser with a fantastic library
- email: why@ruby-lang.org
diff --git a/dev-ruby/hpricot/hpricot-0.8.6-r5.ebuild b/dev-ruby/hpricot/hpricot-0.8.6-r5.ebuild
deleted file mode 100644
index 37b4e3442dc9..000000000000
--- a/dev-ruby/hpricot/hpricot-0.8.6-r5.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="A fast and liberal HTML parser for Ruby"
-HOMEPAGE="https://wiki.github.com/hpricot/hpricot"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/rake
- dev-ruby/rdoc
- dev-ruby/rake-compiler"
-
-ruby_add_rdepend "dev-ruby/fast_xs"
-
-# Probably needs the same jdk as JRuby but I'm not sure how to express
-# that just yet.
-DEPEND+=" dev-util/ragel"
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/ s:^:#:' Rakefile || die
-
- # Fix encoding assumption of environment for Ruby 1.9.
- # https://github.com/hpricot/hpricot/issues/52
- # sed -i -e '1 iEncoding.default_external=Encoding::UTF_8 if RUBY_VERSION =~ /1.9/' test/load_files.rb || die
-
- # Avoid unneeded dependency on git.
- sed -i -e '/^REV/ s/.*/REV = "6"/' Rakefile || die
-
- # Fix int size warning
- sed -i -e 's/te - ts/(int)(te - ts)/' ext/hpricot_scan/hpricot_css.rl || die
-}
-
-each_ruby_prepare() {
- pushd .. &>/dev/null
- epatch "${FILESDIR}"/${P}-fast_xs.patch
- popd .. &>/dev/null
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/hpricot_scan extconf.rb || die "hpricot_scan/extconf.rb failed"
-}
-
-each_ruby_compile() {
- local modname=$(get_modname)
-
- ${RUBY} -S rake ragel || die
- emake V=1 -Cext/hpricot_scan CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}" || die "make hpricot_scan failed"
- cp ext/hpricot_scan/hpricot_scan${modname} lib/ || die
-}
diff --git a/dev-ruby/hpricot/metadata.xml b/dev-ruby/hpricot/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/hpricot/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/html-pipeline/Manifest b/dev-ruby/html-pipeline/Manifest
new file mode 100644
index 000000000000..41263ccd9f7b
--- /dev/null
+++ b/dev-ruby/html-pipeline/Manifest
@@ -0,0 +1 @@
+DIST html-pipeline-2.14.3.tar.gz 45196 BLAKE2B f9a2976188a29648b53cbb065343aa6f2f4faf8346daf65256a2178a737dd529cb87b68df6cf98ed9ba7805a73f245a97bfcbb51e35554f09172147dc74dcce1 SHA512 fe2ed353894b87f66f30498625e657593aea3a5730d122f3d57a17a53d76351ed6899c04a597b81473b22be752af044fcd13e01885851ac525913143daa8b4c6
diff --git a/dev-ruby/html-pipeline/html-pipeline-2.14.3.ebuild b/dev-ruby/html-pipeline/html-pipeline-2.14.3.ebuild
new file mode 100644
index 000000000000..e2756a54336b
--- /dev/null
+++ b/dev-ruby/html-pipeline/html-pipeline-2.14.3.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="html-pipeline.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="GitHub HTML processing filters and utilities"
+HOMEPAGE="https://github.com/gjtorikian/html-pipeline"
+SRC_URI="https://github.com/gjtorikian/html-pipeline/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/activesupport-2:*
+ >=dev-ruby/nokogiri-1.4
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/commonmarker
+ dev-ruby/rinku
+ dev-ruby/redcloth
+ dev-ruby/rouge
+ dev-ruby/sanitize
+)"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|focus\)/ s:^:#:' Rakefile test/test_helper.rb || die
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid running tests for unpackaged optional dependencies
+ # escape_utils, email_reply_parser, gemoji
+ rm -f test/html/pipeline/{email_reply,emoji,plain_text_input,syntax_highlight,toc}_filter_test.rb || die
+}
diff --git a/dev-ruby/html-pipeline/metadata.xml b/dev-ruby/html-pipeline/metadata.xml
new file mode 100644
index 000000000000..53fbb8157b7e
--- /dev/null
+++ b/dev-ruby/html-pipeline/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">gjtorikian/html-pipeline</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/html2haml/Manifest b/dev-ruby/html2haml/Manifest
index 3a29cdfdf90b..7cd8e53b9e2b 100644
--- a/dev-ruby/html2haml/Manifest
+++ b/dev-ruby/html2haml/Manifest
@@ -1 +1 @@
-DIST html2haml-2.2.0.gem 21504 BLAKE2B ead2c636baacb8dbba7bd650356da5e2ebfa8ab565edb38ab03df287d8d0709b9271ef3f46fae0f2d2b86d37dbf6a0212fbf6803aaf7757a9f2653b773e46482 SHA512 b6988182073f35d4d9b9f07f2cc2ba01c66679fa646fd2d1e3c8cf0643c88b04a2b1a36d584bdcca897f804e32486a618abc8fbd8db023ff9c22ee66d93ed9f0
+DIST html2haml-2.3.0.gem 21504 BLAKE2B 52bfdab16a78c44f7f3f5e4be6015f236fe53b15c9fe6e595223e76fdef544f06cb4abc8b3a2c3fd904c20a404e5bb10c44546494a93ff10690bd5a023afe555 SHA512 75b3453fe919c8914d53cb5492df2377756d89fa795d5ea29a64559e7f3e4ee91e61db706e7860e214a7e6d5160e0f209c65d68d8d3ac28ec5b51fefba6a9a94
diff --git a/dev-ruby/html2haml/html2haml-2.2.0.ebuild b/dev-ruby/html2haml/html2haml-2.2.0.ebuild
deleted file mode 100644
index 6a0a572beb5c..000000000000
--- a/dev-ruby/html2haml/html2haml-2.2.0.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md Changelog.markdown"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Convert HTML and HTML+Erb to Haml"
-HOMEPAGE="https://github.com/haml/html2haml"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/nokogiri-1.6.0
- >=dev-ruby/erubis-2.7.0
- >=dev-ruby/ruby_parser-3.5
- || ( dev-ruby/haml:5 dev-ruby/haml:4 )"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:0 )"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" test/test_helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test test/html2haml_test.rb || die
- ${RUBY} -Ilib:test test/erb_test.rb || die
-}
diff --git a/dev-ruby/html2haml/html2haml-2.3.0.ebuild b/dev-ruby/html2haml/html2haml-2.3.0.ebuild
new file mode 100644
index 000000000000..f33e9cbff4d4
--- /dev/null
+++ b/dev-ruby/html2haml/html2haml-2.3.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md Changelog.markdown"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Convert HTML and HTML+Erb to Haml"
+HOMEPAGE="https://github.com/haml/html2haml"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/nokogiri-1.6.0
+ >=dev-ruby/erubis-2.7.0
+ >=dev-ruby/ruby_parser-3.5
+ >=dev-ruby/haml-4.0"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -e "/bundler/d" \
+ -e 's/MiniTest::Unit::TestCase/Minitest::Test/' \
+ -i test/test_helper.rb || die
+ sed -e 's/MiniTest::Unit::TestCase/Minitest::Test/' \
+ -i test/*_test.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test test/html2haml_test.rb || die
+ ${RUBY} -Ilib:test test/erb_test.rb || die
+}
diff --git a/dev-ruby/html2haml/metadata.xml b/dev-ruby/html2haml/metadata.xml
index 84830dfa406a..f8fb717d6db9 100644
--- a/dev-ruby/html2haml/metadata.xml
+++ b/dev-ruby/html2haml/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/htmlentities/htmlentities-4.3.4-r1.ebuild b/dev-ruby/htmlentities/htmlentities-4.3.4-r1.ebuild
new file mode 100644
index 000000000000..8743583188dd
--- /dev/null
+++ b/dev-ruby/htmlentities/htmlentities-4.3.4-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="History.txt"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A simple library for encoding/decoding entities in (X)HTML documents"
+HOMEPAGE="https://github.com/threedaymonk/htmlentities"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -S testrb-2 test/*_test.rb || die "tests failed"
+}
diff --git a/dev-ruby/htmlentities/htmlentities-4.3.4.ebuild b/dev-ruby/htmlentities/htmlentities-4.3.4.ebuild
deleted file mode 100644
index 31ea5330efcb..000000000000
--- a/dev-ruby/htmlentities/htmlentities-4.3.4.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="History.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple library for encoding/decoding entities in (X)HTML documents"
-HOMEPAGE="https://github.com/threedaymonk/htmlentities"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86 ~x86-macos"
-IUSE=""
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -S testrb-2 test/*_test.rb || die "tests failed"
-}
diff --git a/dev-ruby/htmlentities/metadata.xml b/dev-ruby/htmlentities/metadata.xml
index d57ea7269eef..264f7429a368 100644
--- a/dev-ruby/htmlentities/metadata.xml
+++ b/dev-ruby/htmlentities/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/http-accept/Manifest b/dev-ruby/http-accept/Manifest
index 35c1c3686cb2..9f67a522e897 100644
--- a/dev-ruby/http-accept/Manifest
+++ b/dev-ruby/http-accept/Manifest
@@ -1 +1,3 @@
-DIST http-accept-2.1.0.tar.gz 12473 BLAKE2B afb5513207c0491fbac6e28e14f7637de805f3da60f0f00b6efa54a21686444f3a669a0f47895f21b335031856a1bee1e60b1f11e22b8a7caac23168bc6f7892 SHA512 c8eff607b697ff1691644e4e2e0447a64f238dbbc13413afc7bc3042cbb49d2d825bc9b698845dce4be2ebb3ecd9b31f3d5910a371982e74927085c9121c4dd6
+DIST http-accept-1.7.0.tar.gz 12289 BLAKE2B 5eda9bd29e2dd2b52c8f2589adf57872a80aaf93c37d28b1668dc24fc1e2fa81d00ec12766dd558691dbf3e6560bba013f456a659ead47fffd77b1565c186a7f SHA512 3502bfbd07f6bb0164843c728cd5ef27adfd675317fd60372539180de212d02d6d446cff8eb081d1cbe5a19b30d5759a55b22bc63736cea83254595bd691522f
+DIST http-accept-2.2.0.tar.gz 14174 BLAKE2B b6fd0c065a1d9c798ebee8a2f82aa45738cf98721d42d9806614fd98c8ce5d571ce06ad3292e81a972e484f55c75c0e99c5ad54f138323b180bb9292f87b3049 SHA512 341b09b3f8ba132ba9394c904bbe7c95a91fe0b39b080ae96d8228b8474f2d7de6edf4d9dce0b16783ac12aa375b0cda99be67290656f3348219f52d66b7f120
+DIST http-accept-2.2.1.tar.gz 14323 BLAKE2B 9e14f2f23d87c28f234f1c18cf7780aa6c05caa7b7242a2c60ad11d0735fb67f65c162d72685f697f51bcc41f046068dfa612ea8bbf4bd10de6b1402075b92d6 SHA512 770c3b4c5d5b288bad88d6f53b9c52fc9935db5f9ef2e935ebb2dca4afca740f8731a38425acdd11fd9d5d51a8a0b087d392653dc675a349470f1e5ad4f2300d
diff --git a/dev-ruby/http-accept/http-accept-1.7.0-r1.ebuild b/dev-ruby/http-accept/http-accept-1.7.0-r1.ebuild
new file mode 100644
index 000000000000..f33538a857c1
--- /dev/null
+++ b/dev-ruby/http-accept/http-accept-1.7.0-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="http-accept.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Parse Accept and Accept-Language HTTP headers"
+HOMEPAGE="https://github.com/socketry/http-accept"
+SRC_URI="https://github.com/socketry/http-accept/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="amd64 ~arm64 ~ppc ~riscv ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/http-accept/http-accept-2.1.0.ebuild b/dev-ruby/http-accept/http-accept-2.1.0.ebuild
deleted file mode 100644
index 96888b18982e..000000000000
--- a/dev-ruby/http-accept/http-accept-2.1.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Parse Accept and Accept-Language HTTP headers"
-HOMEPAGE="https://github.com/socketry/http-accept"
-SRC_URI="https://github.com/socketry/http-accept/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/covered/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/http-accept/http-accept-2.2.0.ebuild b/dev-ruby/http-accept/http-accept-2.2.0.ebuild
new file mode 100644
index 000000000000..e9ac2bd33c8b
--- /dev/null
+++ b/dev-ruby/http-accept/http-accept-2.2.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="http-accept.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Parse Accept and Accept-Language HTTP headers"
+HOMEPAGE="https://github.com/socketry/http-accept"
+SRC_URI="https://github.com/socketry/http-accept/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm64 ~ppc ~riscv ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/covered/ s:^:#:' spec/spec_helper.rb || die
+ sed -e 's:_relative ": "./:' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/http-accept/http-accept-2.2.1.ebuild b/dev-ruby/http-accept/http-accept-2.2.1.ebuild
new file mode 100644
index 000000000000..132a37d10642
--- /dev/null
+++ b/dev-ruby/http-accept/http-accept-2.2.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="http-accept.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Parse Accept and Accept-Language HTTP headers"
+HOMEPAGE="https://github.com/socketry/http-accept"
+SRC_URI="https://github.com/socketry/http-accept/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~riscv ~x86"
+
+all_ruby_prepare() {
+ rm -f config/sus.rb || die
+
+ sed -e 's:_relative ": "./:' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/http-accept/metadata.xml b/dev-ruby/http-accept/metadata.xml
index 156056bca8cd..410304a7b56d 100644
--- a/dev-ruby/http-accept/metadata.xml
+++ b/dev-ruby/http-accept/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/http-cookie/Manifest b/dev-ruby/http-cookie/Manifest
index c387366caeae..7c105791efcc 100644
--- a/dev-ruby/http-cookie/Manifest
+++ b/dev-ruby/http-cookie/Manifest
@@ -1 +1 @@
-DIST http-cookie-1.0.3.gem 38400 BLAKE2B 6b7292b2a5d7c37b6769cdd38f01d8cf78aa9557b4a204d736dffeae5d31768c57ac58f00577df78252f9a8bdb12a7faecf5e1be64c8ee29aaf67cc9307d0a35 SHA512 43ac1218e98dd47ee22e33e72e20bc5b55f65e60aadd417641f8a4221eba88995d418c7738a4c35dfba132e05c0c4b0df2b2bedd56c22e82c062d1f03de0052f
+DIST http-cookie-1.0.5.gem 39424 BLAKE2B 569a0d18c962be378f3974b400ddf2289c72490b2b93619fcd83ed6c00bbf5def76239c52163dc6231060792abf3a19988285a6cd28f158ff7339252da912e61 SHA512 d530d64b5c2fc3757a6de03384fe768317e24a523d4a4215f5bcc6b5bca9e7b94eeaad1e52fbb67548396b7b2ca7c9d8b68ea7b99109e24770fcf34c950469ef
diff --git a/dev-ruby/http-cookie/http-cookie-1.0.3.ebuild b/dev-ruby/http-cookie/http-cookie-1.0.3.ebuild
deleted file mode 100644
index 77649741b3dc..000000000000
--- a/dev-ruby/http-cookie/http-cookie-1.0.3.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A ruby library to handle HTTP cookies"
-HOMEPAGE="https://github.com/sparklemotion/http-cookie"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ppc ppc64 sparc x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/domain_name-0.5:0"
-
-all_ruby_prepare() {
- sed -i -e "/simplecov/d" -e "/bundler/d" Rakefile || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib test/test_http_cookie.rb || die
- ${RUBY} -Ilib test/test_http_cookie_jar.rb || die
-}
diff --git a/dev-ruby/http-cookie/http-cookie-1.0.5-r1.ebuild b/dev-ruby/http-cookie/http-cookie-1.0.5-r1.ebuild
new file mode 100644
index 000000000000..7207f02d723d
--- /dev/null
+++ b/dev-ruby/http-cookie/http-cookie-1.0.5-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A ruby library to handle HTTP cookies"
+HOMEPAGE="https://github.com/sparklemotion/http-cookie"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+# See https://github.com/sparklemotion/http-cookie/issues/16 for dropping domain_name
+ruby_add_rdepend ">=dev-ruby/domain_name-0.5:0"
+
+all_ruby_prepare() {
+ sed -i -e "/simplecov/d" -e "/bundler/d" Rakefile || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib test/test_http_cookie.rb || die
+ ${RUBY} -Ilib test/test_http_cookie_jar.rb || die
+}
diff --git a/dev-ruby/http-cookie/metadata.xml b/dev-ruby/http-cookie/metadata.xml
index 89106073709d..a88a47103476 100644
--- a/dev-ruby/http-cookie/metadata.xml
+++ b/dev-ruby/http-cookie/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/http-form_data/Manifest b/dev-ruby/http-form_data/Manifest
index 8f3fc2b33e59..ec310b64af67 100644
--- a/dev-ruby/http-form_data/Manifest
+++ b/dev-ruby/http-form_data/Manifest
@@ -1,2 +1 @@
-DIST http-form_data-1.0.3.gem 14336 BLAKE2B f58410dfa309fbec55e97f5bd10e56a7be0d915a0e87d4873c66a2d0f112552450424fe3a54529bc77e8bfbd5ac019f9ec231881d48942eaf55725d618203d56 SHA512 6e438a1c0c56116555737785d9b0b624f2cbee010146d0683c94e72473ed6f8a872c2ecbd878bc71f4aa378ebcd820d2743e0f6236778b65aad99c14e9c79fdf
-DIST http-form_data-2.1.1.gem 16896 BLAKE2B b19507dddf5c072b5a190bff98c61b94209652445ba995c3834bdf47faa515cc3877afcb46ef4946b4b6ad265d917cfc0fcdba2ee98c440c134343883740917e SHA512 43e1d9a522a748ab5d1633392225d87b5b178f6ae46a9bc4296b2a71b95b54d0a0c5fa1c3d8a8f48134df7c8c5893bfd7a5db060da275f49a147385cb4d04627
+DIST http-form_data-2.3.0.gem 17408 BLAKE2B faa29c86d57fac1554680bb10e1a71e591ec873a04c63c0d0fa2c993c03df03dd35f3b762a290d188285efc0cf63d5040b262d386cdf7a4abc4b7477a6a1e00f SHA512 c070126d18a66bd505005d7dae4ece6c751e52593806daf618bbb437b7f9296a5f18aac2e317b3526c9b34adc2f4d9fc7b7bab8cf2a8c8ca67fdc5940969ff21
diff --git a/dev-ruby/http-form_data/http-form_data-1.0.3.ebuild b/dev-ruby/http-form_data/http-form_data-1.0.3.ebuild
deleted file mode 100644
index 61567ede65cd..000000000000
--- a/dev-ruby/http-form_data/http-form_data-1.0.3.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby21 ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Utility-belt to build form data request bodies"
-HOMEPAGE="https://github.com/httprb/form_data.rb"
-
-LICENSE="MIT"
-SLOT="1.0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/SimpleCov.start/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/http-form_data/http-form_data-2.1.1.ebuild b/dev-ruby/http-form_data/http-form_data-2.1.1.ebuild
deleted file mode 100644
index 142f5221b32e..000000000000
--- a/dev-ruby/http-form_data/http-form_data-2.1.1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Utility-belt to build form data request bodies"
-HOMEPAGE="https://github.com/httprb/form_data.rb"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/SimpleCov.start/ s:^:#: ; 1irequire "json"' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/http-form_data/http-form_data-2.3.0-r1.ebuild b/dev-ruby/http-form_data/http-form_data-2.3.0-r1.ebuild
new file mode 100644
index 000000000000..698ffd618758
--- /dev/null
+++ b/dev-ruby/http-form_data/http-form_data-2.3.0-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Utility-belt to build form data request bodies"
+HOMEPAGE="https://github.com/httprb/form_data.rb"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/,/SimpleCov.start/ s:^:#: ; 1irequire "json"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/http-form_data/metadata.xml b/dev-ruby/http-form_data/metadata.xml
index 0fae519ca0cd..a7aed111386c 100644
--- a/dev-ruby/http-form_data/metadata.xml
+++ b/dev-ruby/http-form_data/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/http-parser/Manifest b/dev-ruby/http-parser/Manifest
new file mode 100644
index 000000000000..6a1da6e8cd85
--- /dev/null
+++ b/dev-ruby/http-parser/Manifest
@@ -0,0 +1 @@
+DIST http-parser-1.2.3.gem 31232 BLAKE2B 055ab9ccb42bb85f87b65eeaa59f645ec390f0751eb379b22b1a2c83920ef1c482a3bed8f5105843c341fe92ba0c8d44272688b929bca13c690945f7e37b282f SHA512 03c34c3e8174d9010440483af34800b74a7bbddd5daa63607e6aa2254d9c91cf36d90854ea65827b32680432de278aeeb7b8878f788f124c150f163409fa5107
diff --git a/dev-ruby/http-parser/http-parser-1.2.3-r1.ebuild b/dev-ruby/http-parser/http-parser-1.2.3-r1.ebuild
new file mode 100644
index 000000000000..057464373f93
--- /dev/null
+++ b/dev-ruby/http-parser/http-parser-1.2.3-r1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A super fast http parser for ruby"
+HOMEPAGE="https://github.com/cotag/http-parser"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE=""
+
+DEPEND+=" >=net-libs/http-parser-2.8.1"
+RDEPEND+=" >=net-libs/http-parser-2.8.1"
+
+ruby_add_bdepend "dev-ruby/ffi-compiler dev-ruby/rake"
+
+each_ruby_compile() {
+ ${RUBY} -C ext -S rake || die
+ mv ext/*/libhttp-parser-ext.so lib/http-parser/ || die
+}
+
+each_ruby_install() {
+ each_fakegem_install
+ ruby_fakegem_extensions_installed
+}
diff --git a/dev-ruby/http-parser/metadata.xml b/dev-ruby/http-parser/metadata.xml
new file mode 100644
index 000000000000..43ba3d7f198f
--- /dev/null
+++ b/dev-ruby/http-parser/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">cotag/http-parser</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/http/Manifest b/dev-ruby/http/Manifest
index 7f6da00671cb..e231bb5237ff 100644
--- a/dev-ruby/http/Manifest
+++ b/dev-ruby/http/Manifest
@@ -1,5 +1,2 @@
-DIST http-0.9.8.gem 66560 BLAKE2B 15b6cc066d2b04c3c6df604787f69b5079dacd277dc95a74b56832fc26cd84d2b631b60a60baadaf46368e5dfda30152983c335faea636490000bc5153d11736 SHA512 bb89147a3c28ebd75d2453e51c0c422557907e055b9a20a560b803bc64edfcdfe96e997ff225a26c9ca278211b0f70faaccf2d18ce2cdc9fd95bc4048093ef68
-DIST http-3.3.0.gem 70656 BLAKE2B 5c52864168663640389a0f107e1bf8a202654a8b479c92bf5126354d360adcae45a9b4596da7cff2e412fee88ed3622870c4e2bb18eca97466b4ede28baa2a08 SHA512 fcb2549c22974712e129306b472c1a32466c50add85eee9a558582697c7ece26cb7a1db6da6aaceedb8bfd134d1213090c158db510fe53ddbe201bba6bd22c68
-DIST http-4.0.5.gem 73728 BLAKE2B 467f812ebe2cde5cad513ae18ad290c6a4dab5e8d1b0d54955efe40988297afd6fcdf438172827bbe4d4434706741084936174af4b2d176de3aadc99f6cfa606 SHA512 e591ea761643d7a5a8e4c7b836a38389cbf09b4e16388997f4052213521bb0f47240e8511f9fefc5186bd33c1617c1048e0254f2d6c412b381f2cf2a4247a0c6
-DIST http-4.1.0.gem 74240 BLAKE2B edf9a84f4c097fc27dfc477ccf75601be77ca924c98afe62b82d94db43af34ea28437e15221c83314139e67ff7d8236242bad7274ed0bc226b4ae1701977b9b0 SHA512 cedc2944d45033e2750e34a401e93ae820f07317a4cd934eb512915f177ea29050f5a0ab1ee1733e13eaaefd2396e75f4067b54269d4b0615f9a745208ec4dae
-DIST http-4.1.1.gem 74240 BLAKE2B 350d4a2eb966f8dae05a206e20a92d8ce0601df36673cae8c969b8849d6715c5d0ab0e24c4b6cc4f117e4788e535296f86d5193198df4a8229572817c9cd3f75 SHA512 89e088521212293db692b66a7058327c215bba119b3f01d4120fd32f0754294d4cbada88ed9cffb6f182f6d712a0923dadfc645c1618e25a802fcc3d467356de
+DIST http-5.1.1.gem 82944 BLAKE2B bd44ede401712ddd13b76f9e3266622aefd78f37a89c84217c7f8206214e9e2ee994fe375a6e7897315dd83853d4e8ab2c0c9c34a59fe47c1a0617f3c126fdab SHA512 a39d88297b6f2f0a51a22fe502d1f7883d44a3fa0af250e1a8142f093fb3865b02b797bc46780d9129f0c67e18f97cc551aa1dbd794b3b4cda6bdb5495fe95e3
+DIST http-5.2.0.gem 85504 BLAKE2B 60391b959752c63e2f8cffcb86d6aad47fd30817f348ac6fc28ebce4fa5186f482c08db5e4413fc84eb54a9beb2682260c0c7241a76b40c3489fe7f2abcfb154 SHA512 88a813498db68827ea665c3a568ce45b0096203484564f3de18d46abdd87d2ecd756745f9f530965db306f8e37185d3d0b31959082bbe01fee5545b36b0716bd
diff --git a/dev-ruby/http/http-0.9.8-r2.ebuild b/dev-ruby/http/http-0.9.8-r2.ebuild
deleted file mode 100644
index f37b18283969..000000000000
--- a/dev-ruby/http/http-0.9.8-r2.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby21 ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An easy-to-use client library for making requests from Ruby"
-HOMEPAGE="https://github.com/tarcieri/http"
-
-LICENSE="MIT"
-SLOT="0.8"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/addressable-2.3
- >=dev-ruby/http-cookie-1.0
- >=dev-ruby/http-form_data-1.0.1:1.0
- >=dev-ruby/http_parser_rb-0.6.0 =dev-ruby/http_parser_rb-0.6*"
-
-ruby_add_bdepend "
- test? ( dev-ruby/certificate_authority dev-ruby/rspec-its )"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/end/ s:^:#:' \
- -e '1irequire "cgi"' spec/spec_helper.rb || die
-
- # Avoid specs that require network access
- sed -i -e '/.persistent/,/^ end/ s:^:#:' \
- spec/lib/http_spec.rb || die
- sed -i -e '/with non-ASCII URLs/,/^ end/ s:^:#:' \
- spec/lib/http/client_spec.rb || die
-}
diff --git a/dev-ruby/http/http-3.3.0.ebuild b/dev-ruby/http/http-3.3.0.ebuild
deleted file mode 100644
index 33ba9ea14ff1..000000000000
--- a/dev-ruby/http/http-3.3.0.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An easy-to-use client library for making requests from Ruby"
-HOMEPAGE="https://github.com/tarcieri/http"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/addressable-2.3:0
- >=dev-ruby/http-cookie-1.0:0
- dev-ruby/http-form_data:2
- >=dev-ruby/http_parser_rb-0.6.0 =dev-ruby/http_parser_rb-0.6*"
-
-ruby_add_bdepend "
- test? ( dev-ruby/certificate_authority dev-ruby/rspec-its )"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/end/ s:^:#:' \
- -e '1irequire "cgi"' spec/spec_helper.rb || die
-
- # Avoid specs that require network access
- sed -i -e '/.persistent/,/^ end/ s:^:#:' \
- spec/lib/http_spec.rb || die
- sed -i -e '/with non-ASCII URLs/,/^ end/ s:^:#:' \
- spec/lib/http/client_spec.rb || die
-
- # Avoid spec that may fail with a running web server
- sed -i -e '/unifies socket errors into HTTP::ConnectionError/,/^ end/ s:^:#:' spec/lib/http_spec.rb || die
-}
diff --git a/dev-ruby/http/http-4.0.5.ebuild b/dev-ruby/http/http-4.0.5.ebuild
deleted file mode 100644
index de3cc7b35d9b..000000000000
--- a/dev-ruby/http/http-4.0.5.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An easy-to-use client library for making requests from Ruby"
-HOMEPAGE="https://github.com/tarcieri/http"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/addressable-2.3:0
- >=dev-ruby/http-cookie-1.0:0
- dev-ruby/http-form_data:2
- >=dev-ruby/http_parser_rb-0.6.0 =dev-ruby/http_parser_rb-0.6*"
-
-ruby_add_bdepend "
- test? ( dev-ruby/certificate_authority dev-ruby/rspec-its )"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/end/ s:^:#:' \
- -e '1irequire "cgi"' spec/spec_helper.rb || die
-
- # Avoid specs that require network access
- sed -i -e '/.persistent/,/^ end/ s:^:#:' \
- spec/lib/http_spec.rb || die
- sed -i -e '/with non-ASCII URLs/,/^ end/ s:^:#:' \
- spec/lib/http/client_spec.rb || die
-
- # Avoid spec that may fail with a running web server
- sed -i -e '/unifies socket errors into HTTP::ConnectionError/,/^ end/ s:^:#:' spec/lib/http_spec.rb || die
-
- # Fix spec for production release
- sed -i -e '/User-Agent:/ s/.dev//' spec/lib/http/features/logging_spec.rb || die
-}
diff --git a/dev-ruby/http/http-4.1.0.ebuild b/dev-ruby/http/http-4.1.0.ebuild
deleted file mode 100644
index de3cc7b35d9b..000000000000
--- a/dev-ruby/http/http-4.1.0.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An easy-to-use client library for making requests from Ruby"
-HOMEPAGE="https://github.com/tarcieri/http"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/addressable-2.3:0
- >=dev-ruby/http-cookie-1.0:0
- dev-ruby/http-form_data:2
- >=dev-ruby/http_parser_rb-0.6.0 =dev-ruby/http_parser_rb-0.6*"
-
-ruby_add_bdepend "
- test? ( dev-ruby/certificate_authority dev-ruby/rspec-its )"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/end/ s:^:#:' \
- -e '1irequire "cgi"' spec/spec_helper.rb || die
-
- # Avoid specs that require network access
- sed -i -e '/.persistent/,/^ end/ s:^:#:' \
- spec/lib/http_spec.rb || die
- sed -i -e '/with non-ASCII URLs/,/^ end/ s:^:#:' \
- spec/lib/http/client_spec.rb || die
-
- # Avoid spec that may fail with a running web server
- sed -i -e '/unifies socket errors into HTTP::ConnectionError/,/^ end/ s:^:#:' spec/lib/http_spec.rb || die
-
- # Fix spec for production release
- sed -i -e '/User-Agent:/ s/.dev//' spec/lib/http/features/logging_spec.rb || die
-}
diff --git a/dev-ruby/http/http-4.1.1.ebuild b/dev-ruby/http/http-4.1.1.ebuild
deleted file mode 100644
index cc30cbdf97e0..000000000000
--- a/dev-ruby/http/http-4.1.1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An easy-to-use client library for making requests from Ruby"
-HOMEPAGE="https://github.com/tarcieri/http"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/addressable-2.3:0
- >=dev-ruby/http-cookie-1.0:0
- dev-ruby/http-form_data:2
- >=dev-ruby/http_parser_rb-0.6.0 =dev-ruby/http_parser_rb-0.6*"
-
-ruby_add_bdepend "
- test? ( dev-ruby/certificate_authority dev-ruby/rspec-its )"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/end/ s:^:#:' \
- -e '1irequire "cgi"' spec/spec_helper.rb || die
-
- # Avoid specs that require network access
- sed -i -e '/.persistent/,/^ end/ s:^:#:' \
- spec/lib/http_spec.rb || die
- sed -i -e '/with non-ASCII URLs/,/^ end/ s:^:#:' \
- spec/lib/http/client_spec.rb || die
-
- # Avoid spec that may fail with a running web server
- sed -i -e '/unifies socket errors into HTTP::ConnectionError/,/^ end/ s:^:#:' spec/lib/http_spec.rb || die
-
- # Fix spec for production release
- sed -i -e '/User-Agent:/ s/.dev//' spec/lib/http/features/logging_spec.rb || die
-}
diff --git a/dev-ruby/http/http-5.1.1.ebuild b/dev-ruby/http/http-5.1.1.ebuild
new file mode 100644
index 000000000000..7f619c9f3bc7
--- /dev/null
+++ b/dev-ruby/http/http-5.1.1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+inherit ruby-fakegem
+
+DESCRIPTION="An easy-to-use client library for making requests from Ruby"
+HOMEPAGE="https://github.com/tarcieri/http"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "=dev-ruby/addressable-2*
+ >=dev-ruby/addressable-2.8
+ =dev-ruby/http-cookie-1*
+ >=dev-ruby/http-form_data-2.2:2
+ >=dev-ruby/llhttp-ffi-0.4.0:0/0.4"
+
+ruby_add_bdepend "
+ test? (
+ =dev-ruby/certificate_authority-1*
+ dev-ruby/rspec-its
+ dev-ruby/webrick
+ )"
+
+all_ruby_prepare() {
+ # Avoid specs that require network access
+ sed -i -e '/.persistent/,/^ end/ s:^:#:' \
+ spec/lib/http_spec.rb || die
+ sed -i -e '/with non-ASCII URLs/,/^ end/ s:^:#:' \
+ spec/lib/http/client_spec.rb || die
+
+ # Avoid spec that may fail with a running web server
+ sed -i -e '/unifies socket errors into HTTP::ConnectionError/,/^ end/ s:^:#:' spec/lib/http_spec.rb || die
+
+ # Fix spec for production release
+ sed -i -e '/User-Agent:/ s/.dev//' spec/lib/http/features/logging_spec.rb || die
+
+ # Avoid specs also failing upstream due to some certificate issue
+ sed -i -e '/context "ssl"/,/^ end/ s:^:#:' spec/lib/http_spec.rb || die
+ sed -i -e '/describe "working with SSL"/,/^ end/ s:^:#:' spec/lib/http/client_spec.rb || die
+
+ # Disable coverage
+ sed -i -e 's/require_relative ".\/support\/simplecov"//g' "spec/spec_helper.rb" || die
+}
+
+each_ruby_test() {
+ # disables dev-ruby/fuubar dep
+ CI=1 each_fakegem_test
+}
diff --git a/dev-ruby/http/http-5.2.0.ebuild b/dev-ruby/http/http-5.2.0.ebuild
new file mode 100644
index 000000000000..d53ceb1279b4
--- /dev/null
+++ b/dev-ruby/http/http-5.2.0.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md CHANGES_OLD.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+inherit ruby-fakegem
+
+DESCRIPTION="An easy-to-use client library for making requests from Ruby"
+HOMEPAGE="https://github.com/httprb/http"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE="test"
+
+ruby_add_rdepend "=dev-ruby/addressable-2*
+ >=dev-ruby/addressable-2.8
+ =dev-ruby/base64-0*:*
+ =dev-ruby/http-cookie-1*
+ >=dev-ruby/http-form_data-2.2:2
+ >=dev-ruby/llhttp-ffi-0.5.0:0/0.5"
+
+ruby_add_bdepend "
+ test? (
+ =dev-ruby/certificate_authority-1*
+ dev-ruby/rspec-its
+ dev-ruby/webrick
+ )"
+
+all_ruby_prepare() {
+ # Avoid specs that require network access
+ sed -i -e '/.persistent/,/^ end/ s:^:#:' \
+ spec/lib/http_spec.rb || die
+ sed -i -e '/with non-ASCII URLs/,/^ end/ s:^:#:' \
+ spec/lib/http/client_spec.rb || die
+
+ # Avoid spec that may fail with a running web server
+ sed -i -e '/unifies socket errors into HTTP::ConnectionError/,/^ end/ s:^:#:' spec/lib/http_spec.rb || die
+
+ # Fix spec for production release
+ sed -i -e '/User-Agent:/ s/.dev//' spec/lib/http/features/logging_spec.rb || die
+
+ # Avoid specs also failing upstream due to some certificate issue
+ sed -i -e '/context "ssl"/,/^ end/ s:^:#:' spec/lib/http_spec.rb || die
+ sed -i -e '/describe "working with SSL"/,/^ end/ s:^:#:' spec/lib/http/client_spec.rb || die
+
+ # Disable coverage
+ sed -i -e 's/require_relative ".\/support\/simplecov"//g' "spec/spec_helper.rb" || die
+}
+
+each_ruby_test() {
+ # disables dev-ruby/fuubar dep
+ CI=1 each_fakegem_test
+}
diff --git a/dev-ruby/http/metadata.xml b/dev-ruby/http/metadata.xml
index d675d76c2a4b..ac2407ed53aa 100644
--- a/dev-ruby/http/metadata.xml
+++ b/dev-ruby/http/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">tarcieri/http</remote-id>
+ <remote-id type="github">httprb/http</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/http_parser_rb/Manifest b/dev-ruby/http_parser_rb/Manifest
index 255fe0ce8758..91f97441ff0b 100644
--- a/dev-ruby/http_parser_rb/Manifest
+++ b/dev-ruby/http_parser_rb/Manifest
@@ -1 +1,2 @@
DIST http_parser.rb-0.6.0.gem 177664 BLAKE2B ecae9e862454584759cbb3158eb16dd6de09fe95c6b38099f1c6d4be2376ca1d3eb8a6713994da600c9c567193466da30f4784652e19ad796891a53d67578fff SHA512 51c29bfc85de8cedb4e98fec84c955252556abaa4d0848fbc38b232879ffc946c72acf38440e8e9f1e31a8b734a68d43a96924af5f48ac4f1a054153ec913a08
+DIST http_parser.rb-0.8.0.gem 195072 BLAKE2B e02fa70e5f5219d70c887db47541985b07f938bb32c4cca943a3d50f73e3baf820a733a2f479f5d40a2e1dabda4d8ae2466834c8b6d8167646a8fb6dcf7c792b SHA512 228e8a617154411c43a548f10d2d8d2cae2d97970f621b4ef2955de94ed1943611cff22659cd75d63a09a0a02396993ab646ee29303d99856b46a80253a618c8
diff --git a/dev-ruby/http_parser_rb/http_parser_rb-0.6.0-r1.ebuild b/dev-ruby/http_parser_rb/http_parser_rb-0.6.0-r1.ebuild
deleted file mode 100644
index 6db43ce21ed4..000000000000
--- a/dev-ruby/http_parser_rb/http_parser_rb-0.6.0-r1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_NAME="http_parser.rb"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Simple callback-based HTTP request/response parser"
-HOMEPAGE="https://github.com/tmm1/http_parser.rb"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 x86"
-IUSE=""
-
-each_ruby_configure() {
- ${RUBY} -Cext/ruby_http_parser extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/ruby_http_parser V=1
- cp ext/ruby_http_parser/ruby_http_parser.so lib/ || die
-}
diff --git a/dev-ruby/http_parser_rb/http_parser_rb-0.6.0-r2.ebuild b/dev-ruby/http_parser_rb/http_parser_rb-0.6.0-r2.ebuild
new file mode 100644
index 000000000000..878bf9a1a924
--- /dev/null
+++ b/dev-ruby/http_parser_rb/http_parser_rb-0.6.0-r2.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_NAME="http_parser.rb"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/ruby_http_parser/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple callback-based HTTP request/response parser"
+HOMEPAGE="https://github.com/tmm1/http_parser.rb"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc x86"
+IUSE=""
+
+all_ruby_prepare() {
+ # rspec 3 compatibility
+ sed -i -e 's/be_true/be true/; s/be_false/be false/' spec/parser_spec.rb || die
+}
diff --git a/dev-ruby/http_parser_rb/http_parser_rb-0.8.0.ebuild b/dev-ruby/http_parser_rb/http_parser_rb-0.8.0.ebuild
new file mode 100644
index 000000000000..8a05223d2025
--- /dev/null
+++ b/dev-ruby/http_parser_rb/http_parser_rb-0.8.0.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_NAME="http_parser.rb"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/ruby_http_parser/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple callback-based HTTP request/response parser"
+HOMEPAGE="https://github.com/tmm1/http_parser.rb"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc x86"
+IUSE=""
+
+all_ruby_prepare() {
+ # rspec 3 compatibility
+ sed -i -e 's/be_true/be true/; s/be_false/be false/' spec/parser_spec.rb || die
+}
diff --git a/dev-ruby/http_parser_rb/metadata.xml b/dev-ruby/http_parser_rb/metadata.xml
index 549c8510b11b..63061c24ff42 100644
--- a/dev-ruby/http_parser_rb/metadata.xml
+++ b/dev-ruby/http_parser_rb/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="github">tmm1/http_parser.rb</remote-id>
+ <remote-id type="rubygems">http_parser.rb</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/httparty/Manifest b/dev-ruby/httparty/Manifest
index cf04c2c3bca8..701567b8a496 100644
--- a/dev-ruby/httparty/Manifest
+++ b/dev-ruby/httparty/Manifest
@@ -1,2 +1 @@
-DIST httparty-0.16.4.gem 91136 BLAKE2B 07988ebd768d826753780d1ac0e1cbf26dd592f131af690b8873787dcb00a48553fb5abb8962eb948ed7a877e38faab3103d9be90ee9c9867cc304b7b1a709e0 SHA512 a3465234cdc6118396b385c482a44a0c6aabf37cb81d00186c4f004e63d7c692bf8783c72dad5702d347d2dbf5bd0b54e78fb4852c149851b27d65f886c3525a
-DIST httparty-0.17.0.gem 100352 BLAKE2B 49cdb05a5f0f0e6c6e31eae6541333892042227e29b53761636ebf608bca32665ecd0cc538cbc1baca3b0745b89b43a81fff8620e2d96017a60518f46fd9f303 SHA512 9aefaadf364dfe68e8d41cadc4652d0b40ef395d6b0506243a35e771106ca2cc0e9947e1676db39e6f034fd31bde16cc4fb759b78287830681d049ab39178cfb
+DIST httparty-0.21.0.tar.gz 102735 BLAKE2B 131c4f3a5a403b609391ececaf079de5ed5c57ea4660fc1d1041832d8baa27b8beaf11ac2743aa6059005904d787259afec27597744bb5e35e56c3b035ca4b1b SHA512 afd50de88a6b1e1cac8c90d6e1458c41ef122b4542c3a14274aacb052f9ceafad868d1b2582d45eedd212a8037fac13238ac05c2e661c9ba9196a00ef3a0a634
diff --git a/dev-ruby/httparty/httparty-0.16.4.ebuild b/dev-ruby/httparty/httparty-0.16.4.ebuild
deleted file mode 100644
index dfd2e3b99d9a..000000000000
--- a/dev-ruby/httparty/httparty-0.16.4.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Makes http fun! Also, makes consuming restful web services dead easy"
-HOMEPAGE="https://jnunemaker.github.com/httparty"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend 'dev-ruby/mime-types:3 >=dev-ruby/multi_xml-0.5.2'
-
-ruby_add_bdepend 'test? ( dev-ruby/webmock )'
-
-all_ruby_prepare() {
- # Remove bundler
- rm Gemfile || die
- sed -i -e '/[Bb]undler/ s:^:#:' Rakefile || die
-
- # Avoid test dependency on cucumber. We can't run the features since
- # they depend on mongrel which is no longer packaged.
- sed -i -e '/cucumber/I s:^:#:' Rakefile || die
-
- # Avoid test dependency on simplecov
- sed -i -e '/simplecov/I s:^:#:' \
- -e '1i require "cgi"; require "delegate"' spec/spec_helper.rb || die
-
- # Avoid test that works standalone but fails in the suite
- sed -i -e '/calls block given to perform with each redirect/,/^ end/ s:^:#:' spec/httparty/request_spec.rb
-
- # Avoid test that is not fully compatible with newer multi_xml
- sed -i -e '/should be able parse response type xml automatically/askip "multi_xml"' spec/httparty_spec.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc examples/*
-}
diff --git a/dev-ruby/httparty/httparty-0.17.0.ebuild b/dev-ruby/httparty/httparty-0.17.0.ebuild
deleted file mode 100644
index 572fb718f926..000000000000
--- a/dev-ruby/httparty/httparty-0.17.0.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Makes http fun! Also, makes consuming restful web services dead easy"
-HOMEPAGE="https://jnunemaker.github.com/httparty"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend 'dev-ruby/mime-types:3 >=dev-ruby/multi_xml-0.5.2'
-
-ruby_add_bdepend 'test? ( dev-ruby/webmock )'
-
-all_ruby_prepare() {
- # Remove bundler
- rm Gemfile || die
- sed -i -e '/[Bb]undler/ s:^:#:' Rakefile || die
-
- # Avoid test dependency on cucumber. We can't run the features since
- # they depend on mongrel which is no longer packaged.
- sed -i -e '/cucumber/I s:^:#:' Rakefile || die
-
- # Avoid test dependency on simplecov
- sed -i -e '/simplecov/I s:^:#:' \
- -e '1i require "cgi"; require "delegate"' spec/spec_helper.rb || die
-
- # Avoid test that works standalone but fails in the suite
- sed -i -e '/calls block given to perform with each redirect/,/^ end/ s:^:#:' spec/httparty/request_spec.rb
-
- # Avoid test that is not fully compatible with newer multi_xml
- sed -i -e '/should be able parse response type xml automatically/askip "multi_xml"' spec/httparty_spec.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc examples/*
-}
diff --git a/dev-ruby/httparty/httparty-0.21.0.ebuild b/dev-ruby/httparty/httparty-0.21.0.ebuild
new file mode 100644
index 000000000000..7a2dbc6be66d
--- /dev/null
+++ b/dev-ruby/httparty/httparty-0.21.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="httparty.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Makes http fun! Also, makes consuming restful web services dead easy"
+HOMEPAGE="https://www.johnnunemaker.com/httparty/"
+SRC_URI="https://github.com/jnunemaker/httparty/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~x86"
+IUSE=""
+
+ruby_add_rdepend '>=dev-ruby/mini_mime-1.0.0 >=dev-ruby/multi_xml-0.5.2'
+
+ruby_add_bdepend 'test? ( dev-ruby/webmock )'
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files \?-\?-\?/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Remove bundler
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/ s:^:#:' Rakefile || die
+
+ # Avoid test dependency on cucumber. We can't run the features since
+ # they depend on mongrel which is no longer packaged.
+ sed -i -e '/cucumber/I s:^:#:' Rakefile || die
+
+ # Avoid test dependency on simplecov
+ sed -i -e '/simplecov/I s:^:#:' \
+ -e '/pry/ s:^:#:' \
+ -e '1i require "cgi"; require "delegate"' spec/spec_helper.rb || die
+
+ # Avoid test that works standalone but fails in the suite
+ #sed -i -e '/calls block given to perform with each redirect/,/^ end/ s:^:#:' spec/httparty/request_spec.rb
+
+ # Avoid test that is not fully compatible with newer multi_xml
+ sed -i -e '/should be able parse response type xml automatically/askip "multi_xml"' spec/httparty_spec.rb || die
+
+ # Avoid test that fails due to unicode normalization differences
+ sed -i -e '/handles international domains/askip "unicode differences"' spec/httparty_spec.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+}
diff --git a/dev-ruby/httparty/metadata.xml b/dev-ruby/httparty/metadata.xml
index 28ab0c15f206..ba99179f2314 100644
--- a/dev-ruby/httparty/metadata.xml
+++ b/dev-ruby/httparty/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">jnunemaker/httparty</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/httpauth/httpauth-0.2.1-r1.ebuild b/dev-ruby/httpauth/httpauth-0.2.1-r1.ebuild
new file mode 100644
index 000000000000..0d4f70f1457c
--- /dev/null
+++ b/dev-ruby/httpauth/httpauth-0.2.1-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md TODO"
+RUBY_FAKEGEM_GEMSPEC="httpauth.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Library implementing the full HTTP Authentication protocol (RFC 2617)"
+HOMEPAGE="https://github.com/Manfred/HTTPauth"
+SRC_URI="https://github.com/Manfred/HTTPauth/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+RUBY_S=HTTPauth-${PV}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile || die
+}
diff --git a/dev-ruby/httpauth/httpauth-0.2.1.ebuild b/dev-ruby/httpauth/httpauth-0.2.1.ebuild
deleted file mode 100644
index 29b67c9b9e8c..000000000000
--- a/dev-ruby/httpauth/httpauth-0.2.1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md TODO"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Library implementing the full HTTP Authentication protocol (RFC 2617)"
-HOMEPAGE="https://github.com/Manfred/HTTPauth"
-SRC_URI="https://github.com/Manfred/HTTPauth/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-RUBY_S=HTTPauth-${PV}
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
-}
diff --git a/dev-ruby/httpauth/metadata.xml b/dev-ruby/httpauth/metadata.xml
index 220341653b87..8267a72736e4 100644
--- a/dev-ruby/httpauth/metadata.xml
+++ b/dev-ruby/httpauth/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/httpclient/httpclient-2.8.3-r3.ebuild b/dev-ruby/httpclient/httpclient-2.8.3-r3.ebuild
new file mode 100644
index 000000000000..383191d6c204
--- /dev/null
+++ b/dev-ruby/httpclient/httpclient-2.8.3-r3.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="-Ilib test"
+RUBY_FAKEGEM_TASK_DOC="doc"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="httpclient.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="'httpclient' gives something like the functionality of libwww-perl (LWP) in Ruby"
+HOMEPAGE="https://github.com/nahi/httpclient"
+SRC_URI="https://github.com/nahi/httpclient/archive/v${PV}.tar.gz -> ${P}.tgz"
+
+LICENSE="|| ( Ruby Ruby-BSD BSD-2 )"
+SLOT="0"
+
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "virtual/ruby-ssl"
+
+ruby_add_bdepend "doc? ( dev-ruby/rdoc )"
+ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/http-cookie dev-ruby/webrick )"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -i -e '/[bB]undler/s:^:#:' Rakefile || die
+
+ # Fix documentation task
+ sed -i -e 's/README.txt/README.md/' Rakefile || die
+
+ # Remove mandatory CI reports since we don't need this for testing.
+ sed -i -e '/reporter/s:^:#:' Rakefile || die
+
+ # Remove mandatory simplecov dependency
+ sed -i -e '/[Ss]imple[Cc]ov/ s:^:#:' test/helper.rb || die
+
+ # Comment out test requiring network access that makes assumptions
+ # about the environment, bug 395155
+ sed -i -e '/test_async_error/,/^ end/ s:^:#:' test/test_httpclient.rb || die
+
+ # Skip tests using rack-ntlm which is not packaged. Weirdly these
+ # only fail on jruby.
+ rm test/test_auth.rb || die
+
+ # Skip tests using obsolete 1024-bit or expired certificates and
+ # won't even run anymore.
+ rm -f test/test_ssl.rb || die
+
+ # Do not use 11-year-old bundled certificates!
+ # fix this copy so it doesn't fail tests
+ ln -sf "${EPREFIX}"/etc/ssl/certs/ca-certificates.crt ./dist_key/cacerts.pem
+ ln -sf "${EPREFIX}"/etc/ssl/certs/ca-certificates.crt ./lib/httpclient/cacert.pem
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'gem "test-unit"; Dir["test/test_*.rb"].each{|f| require f}' || die
+}
+
+each_ruby_install() {
+ each_fakegem_install
+ # Do not use 11-year-old bundled certificates!
+ # fix this copy for production systems
+ # do not ship the cacert1024.pem at all anymore, nobody should use RSA1024 certs!
+ rm -f "${ED}/$(ruby_fakegem_gemsdir)/gems/${RUBY_FAKEGEM_NAME}-${RUBY_FAKEGEM_VERSION}/lib/httpclient/"{cacert.pem,cacert1024}.pem
+ dosym -r /etc/ssl/certs/ca-certificates.crt $(ruby_fakegem_gemsdir)/gems/${RUBY_FAKEGEM_NAME}-${RUBY_FAKEGEM_VERSION}/lib/httpclient/cacert.pem
+}
diff --git a/dev-ruby/httpclient/httpclient-2.8.3.ebuild b/dev-ruby/httpclient/httpclient-2.8.3.ebuild
deleted file mode 100644
index 67d4a172c85d..000000000000
--- a/dev-ruby/httpclient/httpclient-2.8.3.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="-Ilib test"
-RUBY_FAKEGEM_TASK_DOC="doc"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="httpclient.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="'httpclient' gives something like the functionality of libwww-perl (LWP) in Ruby"
-HOMEPAGE="https://github.com/nahi/httpclient"
-SRC_URI="https://github.com/nahi/httpclient/archive/v${PV}.tar.gz -> ${P}.tgz"
-
-LICENSE="Ruby"
-SLOT="0"
-
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ppc ~ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "virtual/ruby-ssl"
-
-ruby_add_bdepend "doc? ( dev-ruby/rdoc )"
-ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/http-cookie )"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/[bB]undler/s:^:#:' Rakefile || die
-
- # Fix documentation task
- sed -i -e 's/README.txt/README.md/' Rakefile || die
-
- # Remove mandatory CI reports since we don't need this for testing.
- sed -i -e '/reporter/s:^:#:' Rakefile || die
-
- # Remove mandatory simplecov dependency
- sed -i -e '/[Ss]imple[Cc]ov/ s:^:#:' test/helper.rb || die
-
- # Comment out test requiring network access that makes assumptions
- # about the environment, bug 395155
- sed -i -e '/test_async_error/,/^ end/ s:^:#:' test/test_httpclient.rb || die
-
- # Skip tests using rack-ntlm which is not packaged. Weirdly these
- # only fail on jruby.
- rm test/test_auth.rb || die
-
- # Skip test failing due to hard-coded expired certificate
- sed -i -e '/test_verification_without_httpclient/,/^ end/ s:^:#:' test/test_ssl.rb || die
-
- # Skip test depending on obsolete and vulnerable SSLv3
- sed -i -e '/test_no_sslv3/,/^ end/ s:^:#:' test/test_ssl.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'gem "test-unit"; Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/httpclient/metadata.xml b/dev-ruby/httpclient/metadata.xml
index 26846ad431fa..2d780888d59a 100644
--- a/dev-ruby/httpclient/metadata.xml
+++ b/dev-ruby/httpclient/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/i18n/Manifest b/dev-ruby/i18n/Manifest
index 132e00786c99..3a93d50c4605 100644
--- a/dev-ruby/i18n/Manifest
+++ b/dev-ruby/i18n/Manifest
@@ -1,4 +1,4 @@
-DIST i18n-0.7.0.tar.gz 57647 BLAKE2B 50ea36ec616b90a261151cce47c98250e85b25ae75f90eb52ea01e8bb7e0c6288abb9055a4f80a199deb93c9ca66efd1ad568950d3f505206e0ba9ee9cdb8bc6 SHA512 8824feb3fb99bba759963d2ae34555f27b85dbac3d3001168471a27e47fc805e5ffe5c3b4e10d6ca4b2e2524ec16c98260b981ef504f274aab93f912a57d2e14
-DIST i18n-0.9.5.tar.gz 61494 BLAKE2B 2a7bb401d5e75022ba6c40c6ee08809bc8728fe9aa22f308c4d532e6c042df57970b7fbfa574494072d8e5d0e125a01498c1964780d2ad9588b0a57da299a520 SHA512 356ce1290b207ce1b3dbed4d0ae542d027e74c43f453359ebf401755a5a55fd1fd815a2f046a634246e41f54c5360174dac1076be9cb7bf82f893f0dafdbd4bb
-DIST i18n-1.0.1.tar.gz 61536 BLAKE2B d439410004511f90e010beb7ab90029367e9ddb876c2215e101fa9a3385c0420a774586ec626136957dedd66c8c7b3b9ddcc6570e3a7075bbd5a90e3508ddea3 SHA512 1d0e05e04318e31d35d19c1af3b6d3aaef3d45df9b2868b65fef9aa3628c9502c6f8fca4beb52aa8c7c914c46ff159da489bc2ccac69013808459e709358b4ca
-DIST i18n-1.6.0.tar.gz 64957 BLAKE2B c74bc8f712939ecf4a8850b047180dd6390494da778567de73a225c40a28dce7a12e63041ca90b3ac0ade9bb88be36e26a00404afe74abb8e0ca686084ac4952 SHA512 653a5368618fb938f5663edb79178ddff24fce1549d5085d5302a40ff82124ce64ffdef6c5626f07731c7cd617665906a741e2581d79c5cc161301b69cf66b0e
+DIST i18n-1.13.0.tar.gz 74591 BLAKE2B e8b2a624c6ea02f030eacbbdf1ca9722d23785e51f31f5dd4a640f8ab74dfafc99131773619a5e2af724c7bcdbc0e63989b1552c148137bf15cf436f340c3c96 SHA512 4c2dc75ccb09ace90a5845f4c1325f0cb144c69b06b72a35728674deea5d869ed94fa5b18cf6b56d434cbad7e528150dedbb10ed91a6d15b7e05758117cf427e
+DIST i18n-1.14.1.tar.gz 74855 BLAKE2B b01b5fefd5033352455110e4fda3d567a5033c6bb732dd11519a3859a3cc4d57bd4229ea3346f2e680575f6ac4d7038d4bcbfd0ea314d2e8b08f26858ffd22f6 SHA512 89a293c00c7e62e802823d8011142a0786268b4c8341a9e389182988f1372655b4c5410ee10d6632af2fee645fbbf2feda2ccc4669d59d44640d3fa2c34b9e86
+DIST i18n-1.14.3.tar.gz 74899 BLAKE2B aaf2041763a5c089972384bc6b5fa139cda05dfaf8ed48c4552ff83f3f114ae53dec2bf1564e8ea5e345f45cf37145eb1eb05c0f4c9fb3cbb3631d55c4c15396 SHA512 8b730dccb3584d55509be4cb0bda3fd9ffb0d2c943eb22ee592e408748bf2e3c0a98fce6ceb002093a6774d073b9a762d95589e89518e4a023f35b51d5db2ad2
+DIST i18n-1.14.4.tar.gz 74949 BLAKE2B 5b55c0d6434eec11ac2b7bc39c896381bf9f274f98a1012264a96dc2432a7ad7bababc5bb0c0980b8aeb9b644a933814a48eeef5a53825aeee553ed9631d3778 SHA512 929117b02babbc51c1dcf1643429cdef35d64d54fac7fd5d5603b85305b6e84f3cecfb4f28cf16fc708eb6252a25a22e05ac50d9a9c6def0f0ac6996b9ace7fa
diff --git a/dev-ruby/i18n/files/i18n-0.7.0-frozen-classes.patch b/dev-ruby/i18n/files/i18n-0.7.0-frozen-classes.patch
deleted file mode 100644
index ff6019498fc5..000000000000
--- a/dev-ruby/i18n/files/i18n-0.7.0-frozen-classes.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From bbbdedc0c78ec941a84d161d5c610a358310cf99 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch@redhat.com>
-Date: Tue, 20 Jan 2015 14:34:44 +0100
-Subject: [PATCH] Ignore metadata for frozen classes.
-
----
- lib/i18n/backend/metadata.rb | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/lib/i18n/backend/metadata.rb b/lib/i18n/backend/metadata.rb
-index 52c0a29..a8d922a 100644
---- a/lib/i18n/backend/metadata.rb
-+++ b/lib/i18n/backend/metadata.rb
-@@ -21,11 +21,15 @@ class << self
- def included(base)
- Object.class_eval do
- def translation_metadata
-- @translation_metadata ||= {}
-+ unless self.frozen?
-+ @translation_metadata ||= {}
-+ else
-+ {}
-+ end
- end
-
- def translation_metadata=(translation_metadata)
-- @translation_metadata = translation_metadata
-+ @translation_metadata = translation_metadata unless self.frozen?
- end
- end unless Object.method_defined?(:translation_metadata)
- end
diff --git a/dev-ruby/i18n/i18n-0.7.0-r3.ebuild b/dev-ruby/i18n/i18n-0.7.0-r3.ebuild
deleted file mode 100644
index 20e503e260bf..000000000000
--- a/dev-ruby/i18n/i18n-0.7.0-r3.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="test"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Add Internationalization support to your Ruby application"
-HOMEPAGE="http://rails-i18n.org/"
-SRC_URI="https://github.com/svenfuchs/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RUBY_PATCHES=( ${P}-frozen-classes.patch )
-
-ruby_add_bdepend "test? (
- dev-ruby/activesupport
- dev-ruby/bundler
- >=dev-ruby/mocha-0.13
- dev-ruby/test_declarative )"
-
-all_ruby_prepare() {
- # Remove bundler lock files since we cannot depend on specific
- # versions in Gentoo.
- rm gemfiles/*.lock || die
-
- # Also test activesupport 5.2.
- sed -e 's/4.2.0/5.2.0/' < gemfiles/Gemfile.rails-4.2.x > gemfiles/Gemfile.rails-5.2.x || die
-}
-
-each_ruby_test() {
- case ${RUBY} in
- *ruby25)
- versions="5.2"
- ;;
- *ruby23|*ruby24)
- versions="4.2 5.2"
- ;;
- *)
- die "Unexpected ruby target"
- ;;
- esac
-
- for version in ${versions} ; do
- if has_version "dev-ruby/activesupport:${version}" ; then
- einfo "Running tests with activesupport ${version}"
- BUNDLE_GEMFILE="${S}/gemfiles/Gemfile.rails-${version}.x" ${RUBY} -S bundle exec ${RUBY} -S rake test || die
- fi
- done
-}
diff --git a/dev-ruby/i18n/i18n-0.9.5-r1.ebuild b/dev-ruby/i18n/i18n-0.9.5-r1.ebuild
deleted file mode 100644
index 92ea56215747..000000000000
--- a/dev-ruby/i18n/i18n-0.9.5-r1.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="test"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Add Internationalization support to your Ruby application"
-HOMEPAGE="http://rails-i18n.org/"
-SRC_URI="https://github.com/svenfuchs/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/concurrent-ruby:1"
-
-ruby_add_bdepend "test? (
- >=dev-ruby/activesupport-4.2
- dev-ruby/bundler
- >=dev-ruby/mocha-0.13
- dev-ruby/test_declarative )"
-
-all_ruby_prepare() {
- rm -f gemfiles/*.lock || die
-
- # Remove optional unpackaged oj gem
- sed -i -e '/oj/ s:^:#:' gemfiles/* || die
-}
-
-each_ruby_test() {
- case ${RUBY} in
- *ruby25)
- versions="5.1"
- ;;
- *ruby23|*ruby24)
- versions="4.2 5.0 5.1"
- ;;
- esac
-
- for version in ${versions} ; do
- if has_version "dev-ruby/activesupport:${version}" ; then
- einfo "Running tests with activesupport ${version}"
- BUNDLE_GEMFILE="${S}/gemfiles/Gemfile.rails-${version}.x" ${RUBY} -S bundle exec ${RUBY} -S rake test || die
- fi
- done
-}
diff --git a/dev-ruby/i18n/i18n-1.0.1-r1.ebuild b/dev-ruby/i18n/i18n-1.0.1-r1.ebuild
deleted file mode 100644
index c1a630808f44..000000000000
--- a/dev-ruby/i18n/i18n-1.0.1-r1.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="test"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Add Internationalization support to your Ruby application"
-HOMEPAGE="http://rails-i18n.org/"
-SRC_URI="https://github.com/svenfuchs/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1)"
-KEYWORDS="~amd64 ~arm ~arm64 hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/concurrent-ruby:1"
-
-ruby_add_bdepend "test? (
- >=dev-ruby/activesupport-4.2
- dev-ruby/bundler
- >=dev-ruby/mocha-0.13
- dev-ruby/test_declarative )"
-
-all_ruby_prepare() {
- rm -f gemfiles/*.lock || die
-
- # Remove optional unpackaged oj gem
- sed -i -e '/oj/ s:^:#:' gemfiles/* || die
-}
-
-each_ruby_test() {
- case ${RUBY} in
- *ruby25)
- versions="5.1"
- ;;
- *ruby22|*ruby23|*ruby24)
- versions="4.2 5.0 5.1"
- ;;
- *)
- versions="4.2"
- ;;
- esac
-
- for version in ${versions} ; do
- if has_version "dev-ruby/activesupport:${version}" ; then
- einfo "Running tests with activesupport ${version}"
- BUNDLE_GEMFILE="${S}/gemfiles/Gemfile.rails-${version}.x" ${RUBY} -S bundle exec ${RUBY} -S rake test || die
- fi
- done
-}
diff --git a/dev-ruby/i18n/i18n-1.13.0.ebuild b/dev-ruby/i18n/i18n-1.13.0.ebuild
new file mode 100644
index 000000000000..403d191f1a34
--- /dev/null
+++ b/dev-ruby/i18n/i18n-1.13.0.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Add Internationalization support to your Ruby application"
+HOMEPAGE="http://rails-i18n.org/"
+SRC_URI="https://github.com/ruby-i18n/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/concurrent-ruby:1"
+
+# We need mocha:1.0 which corresponds to the Gemfiles used in each_ruby_test
+ruby_add_bdepend "test? (
+ >=dev-ruby/activesupport-5.1
+ dev-ruby/bundler
+ >=dev-ruby/minitest-5.14:5
+ >=dev-ruby/mocha-1.7.0:1.0
+ dev-ruby/test_declarative )"
+
+all_ruby_prepare() {
+ rm -f gemfiles/*.lock || die
+
+ # Remove optional unpackaged oj gem
+ sed -i -e '/oj/ s:^:#:' gemfiles/* || die
+
+ # Update old test dependencies
+ sed -i -e '/rake/ s/~>/>=/' -e 's/1.7.0/1.7/' -e '3igem "json"' gemfiles/* || die
+}
+
+each_ruby_test() {
+ case ${RUBY} in
+ *ruby32)
+ versions="6.1 7.0"
+ ;;
+ *ruby31)
+ versions="6.1 7.0"
+ ;;
+ *ruby30)
+ versions="6.0 6.1 7.0"
+ ;;
+ esac
+
+ for version in ${versions} ; do
+ if has_version "dev-ruby/activesupport:${version}" ; then
+ einfo "Running tests with activesupport ${version}"
+ BUNDLE_GEMFILE="${S}/gemfiles/Gemfile.rails-${version}.x" ${RUBY} -S bundle exec ${RUBY} -S rake test || die
+ fi
+ done
+}
diff --git a/dev-ruby/i18n/i18n-1.14.1.ebuild b/dev-ruby/i18n/i18n-1.14.1.ebuild
new file mode 100644
index 000000000000..5a6083d32802
--- /dev/null
+++ b/dev-ruby/i18n/i18n-1.14.1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Add Internationalization support to your Ruby application"
+HOMEPAGE="http://rails-i18n.org/"
+SRC_URI="https://github.com/ruby-i18n/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+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 ~x64-solaris"
+
+ruby_add_rdepend "dev-ruby/concurrent-ruby:1"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/activesupport-5.1
+ dev-ruby/bundler
+ >=dev-ruby/minitest-5.14:5
+ dev-ruby/mocha:2
+ dev-ruby/test_declarative
+ )
+"
+
+all_ruby_prepare() {
+ rm -f gemfiles/*.lock || die
+
+ # Remove optional unpackaged oj gem
+ sed -i -e '/oj/ s:^:#:' gemfiles/* || die
+
+ # Update old test dependencies
+ sed -i -e '/rake/ s/~>/>=/' -e '/mocha/ s/1.7.0/2.0/' -e '3igem "json"' -e '4igem "racc"' gemfiles/* || die
+
+ # Use mocha 2 to avoid minitest deprecation issues.
+ sed -i -e 's:mocha/setup:mocha/minitest:' test/test_helper.rb || die
+}
+
+each_ruby_test() {
+ case ${RUBY} in
+ *ruby33)
+ versions="7.0"
+ ;;
+ *ruby32)
+ versions="6.1 7.0"
+ ;;
+ *ruby31)
+ versions="6.1 7.0"
+ ;;
+ *ruby30)
+ versions="6.0 6.1 7.0"
+ ;;
+ esac
+
+ for version in ${versions} ; do
+ if has_version "dev-ruby/activesupport:${version}" ; then
+ einfo "Running tests with activesupport ${version}"
+ BUNDLE_GEMFILE="${S}/gemfiles/Gemfile.rails-${version}.x" ${RUBY} -S bundle exec ${RUBY} -S rake test || die
+ fi
+ done
+}
diff --git a/dev-ruby/i18n/i18n-1.14.3.ebuild b/dev-ruby/i18n/i18n-1.14.3.ebuild
new file mode 100644
index 000000000000..c0da1cda43e5
--- /dev/null
+++ b/dev-ruby/i18n/i18n-1.14.3.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Add Internationalization support to your Ruby application"
+HOMEPAGE="http://rails-i18n.org/"
+SRC_URI="https://github.com/ruby-i18n/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+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 ~x64-solaris"
+
+ruby_add_rdepend "
+ dev-ruby/concurrent-ruby:1
+ >=dev-ruby/racc-1.7:0
+"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/activesupport-5.1
+ dev-ruby/bundler
+ >=dev-ruby/minitest-5.14:5
+ dev-ruby/mocha:2
+ dev-ruby/test_declarative
+ )
+"
+
+all_ruby_prepare() {
+ rm -f gemfiles/*.lock || die
+
+ # Remove optional unpackaged oj gem
+ sed -i -e '/oj/ s:^:#:' gemfiles/* || die
+
+ # Update old test dependencies
+ sed -i -e '3igem "json"' -e '4igem "racc"' gemfiles/* || die
+
+ # Use mocha 2 to avoid minitest deprecation issues.
+ sed -i -e 's:mocha/setup:mocha/minitest:' test/test_helper.rb || die
+}
+
+each_ruby_test() {
+ case ${RUBY} in
+ *ruby33)
+ versions="7.0 7.1"
+ ;;
+ *ruby32)
+ versions="6.1 7.0 7.1"
+ ;;
+ *ruby31)
+ versions="6.1 7.0 7.1"
+ ;;
+ esac
+
+ for version in ${versions} ; do
+ if has_version "dev-ruby/activesupport:${version}" ; then
+ einfo "Running tests with activesupport ${version}"
+ BUNDLE_GEMFILE="${S}/gemfiles/Gemfile.rails-${version}.x" ${RUBY} -S bundle exec ${RUBY} -S rake test || die
+ fi
+ done
+}
diff --git a/dev-ruby/i18n/i18n-1.14.4.ebuild b/dev-ruby/i18n/i18n-1.14.4.ebuild
new file mode 100644
index 000000000000..c0da1cda43e5
--- /dev/null
+++ b/dev-ruby/i18n/i18n-1.14.4.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Add Internationalization support to your Ruby application"
+HOMEPAGE="http://rails-i18n.org/"
+SRC_URI="https://github.com/ruby-i18n/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+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 ~x64-solaris"
+
+ruby_add_rdepend "
+ dev-ruby/concurrent-ruby:1
+ >=dev-ruby/racc-1.7:0
+"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/activesupport-5.1
+ dev-ruby/bundler
+ >=dev-ruby/minitest-5.14:5
+ dev-ruby/mocha:2
+ dev-ruby/test_declarative
+ )
+"
+
+all_ruby_prepare() {
+ rm -f gemfiles/*.lock || die
+
+ # Remove optional unpackaged oj gem
+ sed -i -e '/oj/ s:^:#:' gemfiles/* || die
+
+ # Update old test dependencies
+ sed -i -e '3igem "json"' -e '4igem "racc"' gemfiles/* || die
+
+ # Use mocha 2 to avoid minitest deprecation issues.
+ sed -i -e 's:mocha/setup:mocha/minitest:' test/test_helper.rb || die
+}
+
+each_ruby_test() {
+ case ${RUBY} in
+ *ruby33)
+ versions="7.0 7.1"
+ ;;
+ *ruby32)
+ versions="6.1 7.0 7.1"
+ ;;
+ *ruby31)
+ versions="6.1 7.0 7.1"
+ ;;
+ esac
+
+ for version in ${versions} ; do
+ if has_version "dev-ruby/activesupport:${version}" ; then
+ einfo "Running tests with activesupport ${version}"
+ BUNDLE_GEMFILE="${S}/gemfiles/Gemfile.rails-${version}.x" ${RUBY} -S bundle exec ${RUBY} -S rake test || die
+ fi
+ done
+}
diff --git a/dev-ruby/i18n/i18n-1.6.0.ebuild b/dev-ruby/i18n/i18n-1.6.0.ebuild
deleted file mode 100644
index 865fb025f66c..000000000000
--- a/dev-ruby/i18n/i18n-1.6.0.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="test"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Add Internationalization support to your Ruby application"
-HOMEPAGE="http://rails-i18n.org/"
-SRC_URI="https://github.com/svenfuchs/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/concurrent-ruby:1"
-
-ruby_add_bdepend "test? (
- >=dev-ruby/activesupport-5.1
- dev-ruby/bundler
- >=dev-ruby/mocha-1.7.0
- dev-ruby/test_declarative )"
-
-all_ruby_prepare() {
- rm -f gemfiles/*.lock || die
-
- # Remove optional unpackaged oj gem
- sed -i -e '/oj/ s:^:#:' gemfiles/* || die
-
- # Update old test dependencies
- sed -i -e 's/12.2.1/12/' -e 's/1.7.0/1.7/' gemfiles/* || die
-}
-
-each_ruby_test() {
- case ${RUBY} in
- *ruby26)
- versions="5.2"
- ;;
- *ruby23|*ruby24|*ruby25)
- versions="5.1 5.2"
- ;;
- esac
-
- for version in ${versions} ; do
- if has_version "dev-ruby/activesupport:${version}" ; then
- einfo "Running tests with activesupport ${version}"
- BUNDLE_GEMFILE="${S}/gemfiles/Gemfile.rails-${version}.x" ${RUBY} -S bundle exec ${RUBY} -S rake test || die
- fi
- done
-}
diff --git a/dev-ruby/i18n/metadata.xml b/dev-ruby/i18n/metadata.xml
index d83e13ed4ad7..3df4becf0365 100644
--- a/dev-ruby/i18n/metadata.xml
+++ b/dev-ruby/i18n/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">svenfuchs/i18n</remote-id>
+ <remote-id type="github">ruby-i18n/i18n</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ice_nine/ice_nine-0.11.2-r1.ebuild b/dev-ruby/ice_nine/ice_nine-0.11.2-r1.ebuild
new file mode 100644
index 000000000000..ab68c22b5a07
--- /dev/null
+++ b/dev-ruby/ice_nine/ice_nine-0.11.2-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md TODO CONTRIBUTING.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Deep Freeze Ruby Objects"
+HOMEPAGE="https://rubygems.org/gems/ice_nine https://github.com/dkubb/ice_nine"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+RESTRICT="test"
diff --git a/dev-ruby/ice_nine/ice_nine-0.11.2-r2.ebuild b/dev-ruby/ice_nine/ice_nine-0.11.2-r2.ebuild
new file mode 100644
index 000000000000..f814a8391c0d
--- /dev/null
+++ b/dev-ruby/ice_nine/ice_nine-0.11.2-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md TODO CONTRIBUTING.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Deep Freeze Ruby Objects"
+HOMEPAGE="https://rubygems.org/gems/ice_nine https://github.com/dkubb/ice_nine"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+# Some tests are broken on Ruby 3 and require a new release upstream.
+RESTRICT="test"
+
+all_ruby_prepare() {
+ sed -e '/devtools/ s:^:#:' \
+ -e "/devtools/aDir['./spec/shared/**/*.rb'].each(&Kernel.method(:require))" \
+ -i spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/ice_nine/ice_nine-0.11.2.ebuild b/dev-ruby/ice_nine/ice_nine-0.11.2.ebuild
deleted file mode 100644
index a49400f81028..000000000000
--- a/dev-ruby/ice_nine/ice_nine-0.11.2.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md TODO CONTRIBUTING.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Deep Freeze Ruby Objects"
-HOMEPAGE="https://rubygems.org/gems/ice_nine https://github.com/dkubb/ice_nine"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-RESTRICT="test"
diff --git a/dev-ruby/ice_nine/metadata.xml b/dev-ruby/ice_nine/metadata.xml
index c52cc252cfcd..c67adf3a45fa 100644
--- a/dev-ruby/ice_nine/metadata.xml
+++ b/dev-ruby/ice_nine/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/idn-ruby/Manifest b/dev-ruby/idn-ruby/Manifest
index 11d0b8db0a7a..b538c79ade6d 100644
--- a/dev-ruby/idn-ruby/Manifest
+++ b/dev-ruby/idn-ruby/Manifest
@@ -1 +1 @@
-DIST idn-ruby-0.1.0.gem 17408 BLAKE2B 42bc51f28dbe02c1dcf111de00a52352adcb173be3634a20503708e38c48cb0290cd9861f7ffe7dd0442afd8874b5db4249c1b5956b0acb368fbfc30e6fc0029 SHA512 5356266daefabfc5213f91c419ee1beb91972510bb016e7beac9719c501c643f9c35335ea8a46da1c1905a30d02d4b1cbec0f0ebb080ce2683faf8f29422295c
+DIST idn-ruby-0.1.5.gem 18432 BLAKE2B 802929985a96b221dcd218cea444cffcd11ae0662ed759fcdef1e5d3dd616cfaa301890f9df1b5b65ec52514ec10d2da0e4e55abf0db2da367be5ad79b91b95e SHA512 8a6c88a822991dd0a6a75030e05998df15c937348afb7e868f8bfb3710203644aab0d9308cc4569e10653a289a37625652592f676897627b75afdd386ae18757
diff --git a/dev-ruby/idn-ruby/idn-ruby-0.1.0.ebuild b/dev-ruby/idn-ruby/idn-ruby-0.1.0.ebuild
deleted file mode 100644
index 4b270e212be7..000000000000
--- a/dev-ruby/idn-ruby/idn-ruby-0.1.0.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES README"
-
-inherit ruby-fakegem
-
-DESCRIPTION="LibIDN Ruby Bindings"
-HOMEPAGE="https://github.com/deepfryed/idn-ruby"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-RDEPEND+=" net-dns/libidn:0"
-DEPEND+=" net-dns/libidn:0"
-
-all_ruby_prepare() {
- # Avoid UTF-8 tests since we cannot guarantee a UTF-8 environment
- rm -f test/tc_Stringprep.rb || die
-}
-
-each_ruby_prepare() {
- mkdir lib || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext
- cp ext/idn.so lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/idn-ruby/idn-ruby-0.1.5.ebuild b/dev-ruby/idn-ruby/idn-ruby-0.1.5.ebuild
new file mode 100644
index 000000000000..6026de8d4005
--- /dev/null
+++ b/dev-ruby/idn-ruby/idn-ruby-0.1.5.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="LibIDN Ruby Bindings"
+HOMEPAGE="https://github.com/deepfryed/idn-ruby"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv"
+IUSE=""
+
+RDEPEND+=" net-dns/libidn:0"
+DEPEND+=" net-dns/libidn:0"
+
+all_ruby_prepare() {
+ # Avoid UTF-8 tests since we cannot guarantee a UTF-8 environment
+ rm -f test/tc_Stringprep.rb || die
+}
+
+each_ruby_prepare() {
+ mkdir lib || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'Dir["test/*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/idn-ruby/metadata.xml b/dev-ruby/idn-ruby/metadata.xml
index ced94d917291..5aabae938a87 100644
--- a/dev-ruby/idn-ruby/metadata.xml
+++ b/dev-ruby/idn-ruby/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/image_processing/Manifest b/dev-ruby/image_processing/Manifest
new file mode 100644
index 000000000000..79c86a5b9ae3
--- /dev/null
+++ b/dev-ruby/image_processing/Manifest
@@ -0,0 +1 @@
+DIST image_processing-1.12.2.tar.gz 986474 BLAKE2B 5e2ec69dde4964f2d4d814130c0f7b9401c75cda87b25fd29a2009921c4b9fe7f8a8aac209387b2d6702c5809196c00afb318337a48a7c672de2122bf55e242b SHA512 58067eff4c28893d6ac774a49b95183d2c294db283eb489fe9a201c93a8d3402bcd348027f5ebffcd11e5c4be2f527d233e0023a55d8713a81ebbc8b9536e0c1
diff --git a/dev-ruby/image_processing/image_processing-1.12.2.ebuild b/dev-ruby/image_processing/image_processing-1.12.2.ebuild
new file mode 100644
index 000000000000..0e84e582aef1
--- /dev/null
+++ b/dev-ruby/image_processing/image_processing-1.12.2.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md doc/*.md"
+
+RUBY_FAKEGEM_GEMSPEC="image_processing.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="High-level image processing helper methods with libvips and ImageMagick"
+HOMEPAGE="https://github.com/janko/image_processing"
+SRC_URI="https://github.com/janko/image_processing/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+DEPEND+=" test? ( media-gfx/imagemagick[jpeg,png,tiff,xml] )"
+
+ruby_add_rdepend "
+ >=dev-ruby/mini_magick-4.9.5:0
+"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/minitest-5.8:5
+ >=dev-ruby/minitest-hooks-1.4.2
+ dev-ruby/minispec-metadata
+)"
+
+all_ruby_prepare() {
+ # Only support imagemagick for now since vips is not packaged
+ sed -i -e '/ruby-vips/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+ rm -f test/{builder,pipeline,vips}_test.rb || die
+ sed -i -e '/assert_dimensions/ s:^:#:' test/*_test.rb || die
+
+ # phash is not packaged
+ sed -i -e '/\(assert\|refute\)_similar/ s:^:#:' test/*_test.rb || die
+
+ sed -i -e '/\(bundler\|phashion\|vips\)/ s:^:#:' Rakefile test/test_helper.rb || die
+
+ # Fix minitest deprecation
+ sed -i -e 's/MiniTest/Minitest/' test/test_helper.rb || die
+}
diff --git a/dev-ruby/image_processing/metadata.xml b/dev-ruby/image_processing/metadata.xml
new file mode 100644
index 000000000000..502a439568fd
--- /dev/null
+++ b/dev-ruby/image_processing/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">janko/image_processing</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/imagesize/imagesize-0.1.1_p20100902-r1.ebuild b/dev-ruby/imagesize/imagesize-0.1.1_p20100902-r1.ebuild
deleted file mode 100644
index c2c2dbb0d230..000000000000
--- a/dev-ruby/imagesize/imagesize-0.1.1_p20100902-r1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.txt"
-
-RUBY_FAKEGEM_VERSION="0.1.1.20100902"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Measure image size (GIF, PNG, JPEG, etc)"
-HOMEPAGE="http://imagesize.rubyforge.org/"
-COMMIT_ID="bd5be2afb088beba3f0d863cef4eac7db56ca804"
-SRC_URI="https://github.com/mattheworiordan/${PN}/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="amd64 ~ppc x86"
-IUSE=""
-
-RUBY_S="${PN}-${COMMIT_ID}"
-
-each_ruby_test() {
- ${RUBY} -Ilib -S test/test_image_size.rb || die
-}
diff --git a/dev-ruby/imagesize/imagesize-0.1.1_p20100902-r2.ebuild b/dev-ruby/imagesize/imagesize-0.1.1_p20100902-r2.ebuild
new file mode 100644
index 000000000000..bf44b0a2d785
--- /dev/null
+++ b/dev-ruby/imagesize/imagesize-0.1.1_p20100902-r2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.txt"
+RUBY_FAKEGEM_GEMSPEC="imagesize.gemspec"
+RUBY_FAKEGEM_VERSION="0.1.1.20100902"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Measure image size (GIF, PNG, JPEG, etc)"
+HOMEPAGE="http://imagesize.rubyforge.org/"
+COMMIT_ID="bd5be2afb088beba3f0d863cef4eac7db56ca804"
+SRC_URI="https://github.com/mattheworiordan/${PN}/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz"
+LICENSE="Ruby-BSD"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE=""
+
+RUBY_S="${PN}-${COMMIT_ID}"
+
+each_ruby_test() {
+ ${RUBY} -Ilib -S test/test_image_size.rb || die
+}
diff --git a/dev-ruby/imagesize/metadata.xml b/dev-ruby/imagesize/metadata.xml
index 5baaca1ac78d..34dec6adbaeb 100644
--- a/dev-ruby/imagesize/metadata.xml
+++ b/dev-ruby/imagesize/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/immutable-ruby/Manifest b/dev-ruby/immutable-ruby/Manifest
new file mode 100644
index 000000000000..80f3707a3c20
--- /dev/null
+++ b/dev-ruby/immutable-ruby/Manifest
@@ -0,0 +1,2 @@
+DIST immutable-ruby-0.1.0.tar.gz 134479 BLAKE2B c113ab9bf6b9accdc40eed351cc3177745e52926546d3c4c001786b47790b2c2eba97dfd0751000fd51ad11eb760039c82a2c6f0618776d87a460a16bfc1b9cf SHA512 3136884f791f0d9c1e460a848192723753f5c63f230faa2cec32445ea875392871d38de09222521fd78493397561a4dddbc61e9b020d5089d1c90694c46bde19
+DIST immutable-ruby-0.2.0.tar.gz 134294 BLAKE2B dd50a191e5cf22dc80a84cea0b74f16fe635b0ef5d6f0d33e6b2c340b29b2f555a740f1260bce48f1b568019cfbd2307160acd0d88bf256cfb38017f08dbc4b2 SHA512 b98f83f4c6631018dc8215f5374ad2997e2d704fb6ef023df04f8f9df35ebe7f4db6a4a5d93404d4af276cf9c3477707f42c2dc49e1fd305c473d65115ca6689
diff --git a/dev-ruby/immutable-ruby/immutable-ruby-0.1.0.ebuild b/dev-ruby/immutable-ruby/immutable-ruby-0.1.0.ebuild
new file mode 100644
index 000000000000..34beb9b43ee5
--- /dev/null
+++ b/dev-ruby/immutable-ruby/immutable-ruby-0.1.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_GEMSPEC="immutable-ruby.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+# Releases are not tagged upstream
+COMMIT=84dba7382284fe7e85816a65abf5c2fc9bbc089e
+
+inherit ruby-fakegem
+
+DESCRIPTION="Efficient, immutable, thread-safe collection classes for Ruby"
+HOMEPAGE="https://github.com/immutable-ruby/immutable-ruby"
+SRC_URI="https://github.com/immutable-ruby/immutable-ruby/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+RUBY_S="${PN}-${COMMIT}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/concurrent-ruby-1.1:1
+ dev-ruby/sorted_set:0
+"
+
+all_ruby_prepare() {
+ sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb spec/lib/immutable/vector/insert_spec.rb || die
+}
diff --git a/dev-ruby/immutable-ruby/immutable-ruby-0.2.0.ebuild b/dev-ruby/immutable-ruby/immutable-ruby-0.2.0.ebuild
new file mode 100644
index 000000000000..37733c45a68c
--- /dev/null
+++ b/dev-ruby/immutable-ruby/immutable-ruby-0.2.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_GEMSPEC="immutable-ruby.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Efficient, immutable, thread-safe collection classes for Ruby"
+HOMEPAGE="https://github.com/immutable-ruby/immutable-ruby"
+SRC_URI="https://github.com/immutable-ruby/immutable-ruby/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv"
+
+ruby_add_rdepend "
+ >=dev-ruby/concurrent-ruby-1.1:1
+ dev-ruby/sorted_set:0
+"
+
+all_ruby_prepare() {
+ sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb spec/lib/immutable/vector/insert_spec.rb || die
+}
diff --git a/dev-ruby/immutable-ruby/metadata.xml b/dev-ruby/immutable-ruby/metadata.xml
new file mode 100644
index 000000000000..061e7a1bb6bb
--- /dev/null
+++ b/dev-ruby/immutable-ruby/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">immutable-ruby/immutable-ruby</remote-id>
+ <remote-id type="rubygems">immutable-ruby</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/importmap-rails/Manifest b/dev-ruby/importmap-rails/Manifest
new file mode 100644
index 000000000000..4cf5d37a5e2b
--- /dev/null
+++ b/dev-ruby/importmap-rails/Manifest
@@ -0,0 +1,2 @@
+DIST importmap-rails-1.2.3.gem 78336 BLAKE2B e652cd14e87e0f2b05ddeb04d4a1339c30325b25e59e1645e55cfdbdbac514afe7d3ce3bf5f8a825bb365065ee665f5efda436a56dedb7290201c4cf4f3dc94e SHA512 a76b0c1d138c4302d6240be4984fc56f0700b59f73b33f5bb82b12e8b9d87f62a303d78f2a61e8305de12071581587687c6fcfac67a2ed9037c0698423da7415
+DIST importmap-rails-2.0.1.gem 16384 BLAKE2B 395671195092899210115195d3a6f1ad8b24b586d04e9a4b4d569c7be43c954b5fc9fad7743eacf2dce581e1466d7485dafb8cbf110ce63dfc95a2530f6cf802 SHA512 3b2f405fe1bf7e2945f0821ab316ecf1d1282ac1d29f6fa366bfc6abdf5afe0adcb26bfee62c868568d0e6785f252ac037180368eb486f2be6ebee32fdcf2a88
diff --git a/dev-ruby/importmap-rails/importmap-rails-1.2.3.ebuild b/dev-ruby/importmap-rails/importmap-rails-1.2.3.ebuild
new file mode 100644
index 000000000000..807850e92cad
--- /dev/null
+++ b/dev-ruby/importmap-rails/importmap-rails-1.2.3.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+# Depends on appraisals, unpackaged dependencies, and unpackaged rails
+# bits.
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Use ESM with importmap to manage JavaScript in Rails"
+HOMEPAGE="https://github.com/rails/importmap-rails"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/actionpack-6.0.0:*
+ >=dev-ruby/railties-6.0.0:*
+"
diff --git a/dev-ruby/importmap-rails/importmap-rails-2.0.1.ebuild b/dev-ruby/importmap-rails/importmap-rails-2.0.1.ebuild
new file mode 100644
index 000000000000..0fbb243022e8
--- /dev/null
+++ b/dev-ruby/importmap-rails/importmap-rails-2.0.1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+# Depends on appraisals, unpackaged dependencies, and unpackaged rails
+# bits.
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Use ESM with importmap to manage JavaScript in Rails"
+HOMEPAGE="https://github.com/rails/importmap-rails"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+ruby_add_rdepend "
+ >=dev-ruby/actionpack-6.0.0:*
+ >=dev-ruby/railties-6.0.0:*
+"
diff --git a/dev-ruby/importmap-rails/metadata.xml b/dev-ruby/importmap-rails/metadata.xml
new file mode 100644
index 000000000000..89e019a3c018
--- /dev/null
+++ b/dev-ruby/importmap-rails/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">rails/importmap-rails</remote-id>
+ <remote-id type="rubygems">importmap-rails</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/inflecto/Manifest b/dev-ruby/inflecto/Manifest
deleted file mode 100644
index c6afa1e8be10..000000000000
--- a/dev-ruby/inflecto/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST inflecto-0.0.2.gem 16384 BLAKE2B 08c23177c02459cd37f14dc39a838d587df775aa0ade13c9c0fc93749cc669534837f865ddff85cdc5f304d0c8582b28284d35b2061eae96469783137472b617 SHA512 dbd1aa3a199365aa301d2570894e347e4f4fe6202924d6337b936ce3e5ed934e7e5c57c6c4ade42d6e0ffa43c574f3ac530ec6dccc6ad8d16b6ff96e4d057628
diff --git a/dev-ruby/inflecto/inflecto-0.0.2.ebuild b/dev-ruby/inflecto/inflecto-0.0.2.ebuild
deleted file mode 100644
index f1c6f01aad97..000000000000
--- a/dev-ruby/inflecto/inflecto-0.0.2.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Inflector for ruby"
-HOMEPAGE="https://github.com/mbj/inflecto"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/inflecto/metadata.xml b/dev-ruby/inflecto/metadata.xml
deleted file mode 100644
index 61e93d02be5b..000000000000
--- a/dev-ruby/inflecto/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">mjb/inflecto</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/inifile/Manifest b/dev-ruby/inifile/Manifest
deleted file mode 100644
index ecb474f22dca..000000000000
--- a/dev-ruby/inifile/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST inifile-3.0.0.gem 18432 BLAKE2B 28c778b9dc49e618dd5f86ab6d87a21e6a1e8ff577ce98390a7767778033012fc3c4d5476de48d80807b0a74bace0b5f775317106949fe142e88854a95436e94 SHA512 d77344812bb62a5639b0a36e5ac2726280990210000b85bab700819fe0fb9f56415517c00436d0056ca090e3d568596bc30f8ed211a00aced5b929e534d0a72b
diff --git a/dev-ruby/inifile/inifile-3.0.0.ebuild b/dev-ruby/inifile/inifile-3.0.0.ebuild
deleted file mode 100644
index 5623638e05df..000000000000
--- a/dev-ruby/inifile/inifile-3.0.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md History.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Native Ruby package for reading and writing INI files"
-HOMEPAGE="https://github.com/TwP/inifile"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/inifile/metadata.xml b/dev-ruby/inifile/metadata.xml
deleted file mode 100644
index 7faba36c6af9..000000000000
--- a/dev-ruby/inifile/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">TwP/inifile</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/instance_storage/Manifest b/dev-ruby/instance_storage/Manifest
index ca6b42a1cf2f..461362a7d91b 100644
--- a/dev-ruby/instance_storage/Manifest
+++ b/dev-ruby/instance_storage/Manifest
@@ -1 +1,2 @@
DIST instance_storage-1.0.0.gem 7680 BLAKE2B e8c4f90c90c6efebcbaa577ab17824f4d759782f1b3985679200ca97b89f04245c562f6d9aa96ac894d488417f4e393bb7faf28ab18aa3f3ede1e03365706a29 SHA512 45ff98b3d0ab47d3459d868eb1b0075abb83b23bbc3a9b84f261077bdddc385ed016e81d01c19f93fa6cffd7cb9020ce1e22411636709f18af09a76c7d44598f
+DIST instance_storage-2.0.0.gem 8192 BLAKE2B e71926c7c35691d5d46a438b3ebcf2e138f079ece1d6ef0b8845927425acc86ff0f09a2afe17b5bca3d0c9beb9bfc69c61e3c3a6c9ccca9a9e9398a86f6fd9d4 SHA512 ad986dd1220b19f171c9808c4692bbb9a9e4f6cb59ab6bf403e5a53b4af5f753941b76cba754d9d56a300b8adef8937094764985a994e8a87c7f99949c0e264a
diff --git a/dev-ruby/instance_storage/instance_storage-1.0.0-r2.ebuild b/dev-ruby/instance_storage/instance_storage-1.0.0-r2.ebuild
new file mode 100644
index 000000000000..4969fc6b1dcf
--- /dev/null
+++ b/dev-ruby/instance_storage/instance_storage-1.0.0-r2.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+DESCRIPTION="Manage class instances with dictionary"
+HOMEPAGE="https://rubygems.org/gems/instance_storage/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile test/instance_storage_test.rb || die
+}
diff --git a/dev-ruby/instance_storage/instance_storage-1.0.0.ebuild b/dev-ruby/instance_storage/instance_storage-1.0.0.ebuild
deleted file mode 100644
index 60bd5f3f2516..000000000000
--- a/dev-ruby/instance_storage/instance_storage-1.0.0.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-DESCRIPTION="Manage class instances with dictionary"
-HOMEPAGE="https://rubygems.org/gems/instance_storage/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile test/instance_storage_test.rb || die
-}
diff --git a/dev-ruby/instance_storage/instance_storage-2.0.0-r1.ebuild b/dev-ruby/instance_storage/instance_storage-2.0.0-r1.ebuild
new file mode 100644
index 000000000000..0c942728ebeb
--- /dev/null
+++ b/dev-ruby/instance_storage/instance_storage-2.0.0-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+DESCRIPTION="Manage class instances with dictionary"
+HOMEPAGE="https://rubygems.org/gems/instance_storage/"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~riscv ~x86"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile test/instance_storage_test.rb || die
+
+ sed -e 's/MiniTest::Unit::TestCase/Minitest::Test/' \
+ -i test/instance_storage_test.rb || die
+}
diff --git a/dev-ruby/instance_storage/metadata.xml b/dev-ruby/instance_storage/metadata.xml
index 4a17d42e52bf..338012ce5ec9 100644
--- a/dev-ruby/instance_storage/metadata.xml
+++ b/dev-ruby/instance_storage/metadata.xml
@@ -1,14 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>naota@gentoo.org</email>
+ <name>Naohiro Aota</name>
</maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="rubygems">instance_storage</remote-id>
+ <remote-id type="github">toshia/instance_storage</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/instantiator/Manifest b/dev-ruby/instantiator/Manifest
deleted file mode 100644
index fc27de477aa6..000000000000
--- a/dev-ruby/instantiator/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST instantiator-0.0.7.gem 8192 BLAKE2B c1cc0bf4a3f2aaf9afd522e33fdd2b32d78ca114fc7b113f6ae297e825177827cb6aa5398917d6d05523f912bebf22e43709e53c0dfe4e1a941ebda4350d3098 SHA512 b37a9380d787252244d2b85bb99365f4a4ecdab58f76caf5e59df00b239f4981119eb5c2eb2fe6ddcf810bb0fb43695f8926370a101f4223fa28811953e6731d
diff --git a/dev-ruby/instantiator/instantiator-0.0.7.ebuild b/dev-ruby/instantiator/instantiator-0.0.7.ebuild
deleted file mode 100644
index 5170aa5e1bd5..000000000000
--- a/dev-ruby/instantiator/instantiator-0.0.7.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Instantiate an arbitrary Ruby class"
-HOMEPAGE="https://github.com/floehopper/introspection"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sparc x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/blankslate:*"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile test/test_helper.rb || die
-}
diff --git a/dev-ruby/instantiator/metadata.xml b/dev-ruby/instantiator/metadata.xml
deleted file mode 100644
index 6bdfd4e13513..000000000000
--- a/dev-ruby/instantiator/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">floehopper/introspection</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/introspection/introspection-0.0.4-r1.ebuild b/dev-ruby/introspection/introspection-0.0.4-r1.ebuild
new file mode 100644
index 000000000000..b8e10237506a
--- /dev/null
+++ b/dev-ruby/introspection/introspection-0.0.4-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+# No documentation task
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Dynamic inspection of the hierarchy of method definitions on a Ruby object"
+HOMEPAGE="http://jamesmead.org/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/metaclass-0.0.1"
+
+ruby_add_bdepend "test? ( dev-ruby/blankslate )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile test/test_helper.rb || die
+}
diff --git a/dev-ruby/introspection/introspection-0.0.4-r2.ebuild b/dev-ruby/introspection/introspection-0.0.4-r2.ebuild
new file mode 100644
index 000000000000..c4905a7fbaa9
--- /dev/null
+++ b/dev-ruby/introspection/introspection-0.0.4-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# No documentation task
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Dynamic inspection of the hierarchy of method definitions on a Ruby object"
+HOMEPAGE="https://jamesmead.org/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/metaclass-0.0.1"
+
+ruby_add_bdepend "test? ( dev-ruby/blankslate )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile test/test_helper.rb || die
+}
diff --git a/dev-ruby/introspection/introspection-0.0.4.ebuild b/dev-ruby/introspection/introspection-0.0.4.ebuild
deleted file mode 100644
index 1747257040d1..000000000000
--- a/dev-ruby/introspection/introspection-0.0.4.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# No documentation task
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Dynamic inspection of the hierarchy of method definitions on a Ruby object"
-HOMEPAGE="http://jamesmead.org/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/metaclass-0.0.1"
-
-ruby_add_bdepend "test? ( dev-ruby/blankslate )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile test/test_helper.rb || die
-}
diff --git a/dev-ruby/introspection/metadata.xml b/dev-ruby/introspection/metadata.xml
index 28ab0c15f206..20a0055e4484 100644
--- a/dev-ruby/introspection/metadata.xml
+++ b/dev-ruby/introspection/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">floehopper/introspection</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/io-console/Manifest b/dev-ruby/io-console/Manifest
new file mode 100644
index 000000000000..afa0c8095c3d
--- /dev/null
+++ b/dev-ruby/io-console/Manifest
@@ -0,0 +1 @@
+DIST io-console-0.7.2.tar.gz 37259 BLAKE2B 22f5f3cfedf477affa1452ce7eab862d49da1943255545f15dd519f7029e61b8747341606ebc1da7bbb020ba5f0ec7e48d08ab000da3b7192cf42ceb601b0b7c SHA512 1dd99c8e9681436a68f39f89f6104a45db2d17092f64985e36a7cd37418831b81f2749922e16ee43a633a90466a8916327a7f21249ceae2f889e70ae596c5b3b
diff --git a/dev-ruby/io-console/io-console-0.7.2.ebuild b/dev-ruby/io-console/io-console-0.7.2.ebuild
new file mode 100644
index 000000000000..322683634273
--- /dev/null
+++ b/dev-ruby/io-console/io-console-0.7.2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/io/console/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/io"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="io-console.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="add console capabilities to IO instances"
+HOMEPAGE="https://github.com/ruby/io-console"
+SRC_URI="https://github.com/ruby/io-console/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/__dir__/"."/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -e '/task :test/ s:^:#:' -i Rakefile || die
+
+ # Avoid test that require a proper TTY
+ sed -e '/test_\(bad_keyword\|failed_path\)/aomit "requires TTY"' \
+ -i test/io/console/test_io_console.rb || die
+
+ # Remove ruby and ffi files in accordance with the gemspec. These
+ # are only used when using a different ruby engine like jruby.
+ rm -fr lib/io/console.rb lib/io/console/ffi || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/io-console/metadata.xml b/dev-ruby/io-console/metadata.xml
new file mode 100644
index 000000000000..e316e22be118
--- /dev/null
+++ b/dev-ruby/io-console/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/io-console</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/io-event/Manifest b/dev-ruby/io-event/Manifest
new file mode 100644
index 000000000000..b3b20a3fcfaf
--- /dev/null
+++ b/dev-ruby/io-event/Manifest
@@ -0,0 +1,7 @@
+DIST io-event-1.1.7.tar.gz 35211 BLAKE2B d288ec902c4d775b49315d4eeda8bb0582b7444e7adc60846283fbffbe8ecec6e13c1bc7ce898c4aaf3e78d5eeee2602045f9bde561f6f50c797b7aecb3d7b01 SHA512 f61d0eb7203b4bd4b38d1f42a23c67d4ae04dbbb4c7018149d52db440d769131581347198f4a6da6e99aaa1ac526ad1c1cb9d56ecf48c1fc70fbf1b62fb161e7
+DIST io-event-1.2.2.tar.gz 35405 BLAKE2B 9fb96c920524db8111b8d3650f2559df71e262f2f4cd32080a3e04f09da5df3d0f0a6777b1d37aba7848b9f7298d9fe5c5684c3211ff39b5178d452d10dede70 SHA512 6ebffd24eb40392496f488ee578f17fcc2e713d3b90cea20899c82e26a6d601b0670d21383d5e33345cad9a33ae43120e8c1d017bb7bd44ff95be2c17bab6712
+DIST io-event-1.3.2.tar.gz 45587 BLAKE2B b4a6e03d6470e0e1fd214e8d4ec9c34b44590b949dd3c2206ace0d963a7eb5f0164d4ddddbe7524e3e050869e45fdccce391174342b6185e2a8c29aaa9e8c1fb SHA512 532dcaf2fb658f4770cc99a486adf1c2d853260c9f4b9bc9d411dc1a84f439881b96ba365523c7566f8a87cfb44a375642a92f327c9ea95803183dd552dabd7a
+DIST io-event-1.3.3.tar.gz 46284 BLAKE2B f2d6fe2a1eb3c1d0f26097847b9b0d464fa274d215f620ffa46e7718d89f97a7ff8bb00b145d29763caed527410d0e3040dab313445e11b26b2ef3891d05f604 SHA512 71391822d2664f9c9534cc474b2e9b052d98f44d7c985b768c93ff2956379f2c107094ba4ab9e376bb3820e085f15187f210566229a31ae493334cf4af073bad
+DIST io-event-1.4.0.tar.gz 46329 BLAKE2B ece30e2673f14f9529b0808f5725f45ee847c337d08b5547161fa7d9cd2f807cf969ff22a25a21c0869b12b9ccd47a3d12bc6694a97ea49ab18700a30bd8365b SHA512 a7002e6df70180208c2f617d59e72bce98c13b2bde6af459f72bdf7fc0045e989225ddf39acf0be9b33d1d252443cf6cfc0076114dfc2c832732c0f7baa06569
+DIST io-event-1.4.4.tar.gz 46919 BLAKE2B c66b410c1eb3e1b398b2ff8f1cad103f0d75e680b2b79ba8e0144ebfe0d0ce29de4996c2c758447c665231c07a939e31af5f3fc47725be33733dcfed8afcd12e SHA512 f8c7503d5d924de2847a57e6af0b01cb8c1638f4b3060a3afc58ca7cc3a719d5df2fa7b83252d1d761f4a3dc8da68b759797e1d1cd6168ad16421924ef3ef316
+DIST io-event-1.5.1.tar.gz 47618 BLAKE2B 239beebca88dac137ab826df0da9f4c7a0b910a9401e46a542dd73a151009ca6d3b0d94584421a039e693e1f5e3f40e37fa98611ff8f603dc5d4bd30bc0788e3 SHA512 71f343ffdcabde14f1737574e66c198934cdf5c88db0c9dc58106da588a7156d4b36cd2a3bd0552758468bcd78c8ee3ae1d59eb0432f7e66f57e3d9dfe75fa3d
diff --git a/dev-ruby/io-event/io-event-1.1.7.ebuild b/dev-ruby/io-event/io-event-1.1.7.ebuild
new file mode 100644
index 000000000000..f8abe7887f02
--- /dev/null
+++ b/dev-ruby/io-event/io-event-1.1.7.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An event loop"
+HOMEPAGE="https://github.com/socketry/io-event"
+SRC_URI="https://github.com/socketry/io-event/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( >=dev-ruby/sus-0.6:0 )"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid dependency on unpackaged covered package
+ rm -f config/sus.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -S sus-parallel || die
+}
diff --git a/dev-ruby/io-event/io-event-1.2.2.ebuild b/dev-ruby/io-event/io-event-1.2.2.ebuild
new file mode 100644
index 000000000000..337b2103b8db
--- /dev/null
+++ b/dev-ruby/io-event/io-event-1.2.2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An event loop"
+HOMEPAGE="https://github.com/socketry/io-event"
+SRC_URI="https://github.com/socketry/io-event/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="+io-uring"
+
+RDEPEND="io-uring? ( sys-libs/liburing:= )"
+DEPEND="${RDEPEND}"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid dependency on unpackaged covered package
+ rm -f config/sus.rb || die
+
+ if ! use io-uring ; then
+ sed -i -e "s:have_library('uring'):have_library('idonotexist_uring'):" ext/extconf.rb || die
+ fi
+}
diff --git a/dev-ruby/io-event/io-event-1.3.2.ebuild b/dev-ruby/io-event/io-event-1.3.2.ebuild
new file mode 100644
index 000000000000..03298eeac45f
--- /dev/null
+++ b/dev-ruby/io-event/io-event-1.3.2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An event loop"
+HOMEPAGE="https://github.com/socketry/io-event"
+SRC_URI="https://github.com/socketry/io-event/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="+io-uring"
+
+RDEPEND="io-uring? ( sys-libs/liburing:= )"
+DEPEND="${RDEPEND}"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid dependency on unpackaged covered package
+ rm -f config/sus.rb || die
+
+ if ! use io-uring ; then
+ sed -i -e "s:have_library('uring'):have_library('idonotexist_uring'):" ext/extconf.rb || die
+ fi
+}
diff --git a/dev-ruby/io-event/io-event-1.3.3.ebuild b/dev-ruby/io-event/io-event-1.3.3.ebuild
new file mode 100644
index 000000000000..c14052adaafa
--- /dev/null
+++ b/dev-ruby/io-event/io-event-1.3.3.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An event loop"
+HOMEPAGE="https://github.com/socketry/io-event"
+SRC_URI="https://github.com/socketry/io-event/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+IUSE="+io-uring"
+
+RDEPEND="io-uring? ( sys-libs/liburing:= )"
+DEPEND="${RDEPEND}"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid dependency on unpackaged covered package
+ rm -f config/sus.rb || die
+
+ if ! use io-uring ; then
+ sed -i -e "s:have_library('uring'):have_library('idonotexist_uring'):" ext/extconf.rb || die
+ fi
+}
diff --git a/dev-ruby/io-event/io-event-1.4.0.ebuild b/dev-ruby/io-event/io-event-1.4.0.ebuild
new file mode 100644
index 000000000000..9c7ed6bf4f25
--- /dev/null
+++ b/dev-ruby/io-event/io-event-1.4.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An event loop"
+HOMEPAGE="https://github.com/socketry/io-event"
+SRC_URI="https://github.com/socketry/io-event/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="+io-uring"
+
+RDEPEND="io-uring? ( sys-libs/liburing:= )"
+DEPEND="${RDEPEND}"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid dependency on unpackaged covered package
+ rm -f config/sus.rb || die
+
+ if ! use io-uring ; then
+ sed -i -e "s:have_library('uring'):have_library('idonotexist_uring'):" ext/extconf.rb || die
+ fi
+}
diff --git a/dev-ruby/io-event/io-event-1.4.4.ebuild b/dev-ruby/io-event/io-event-1.4.4.ebuild
new file mode 100644
index 000000000000..54d45037491d
--- /dev/null
+++ b/dev-ruby/io-event/io-event-1.4.4.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An event loop"
+HOMEPAGE="https://github.com/socketry/io-event"
+SRC_URI="https://github.com/socketry/io-event/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="+io-uring"
+
+RDEPEND="io-uring? ( sys-libs/liburing:= )"
+DEPEND="${RDEPEND}"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid dependency on unpackaged covered package
+ rm -f config/sus.rb || die
+
+ if ! use io-uring ; then
+ sed -i -e "s:have_library('uring'):have_library('idonotexist_uring'):" ext/extconf.rb || die
+ fi
+}
diff --git a/dev-ruby/io-event/io-event-1.5.1.ebuild b/dev-ruby/io-event/io-event-1.5.1.ebuild
new file mode 100644
index 000000000000..54d45037491d
--- /dev/null
+++ b/dev-ruby/io-event/io-event-1.5.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An event loop"
+HOMEPAGE="https://github.com/socketry/io-event"
+SRC_URI="https://github.com/socketry/io-event/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="+io-uring"
+
+RDEPEND="io-uring? ( sys-libs/liburing:= )"
+DEPEND="${RDEPEND}"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid dependency on unpackaged covered package
+ rm -f config/sus.rb || die
+
+ if ! use io-uring ; then
+ sed -i -e "s:have_library('uring'):have_library('idonotexist_uring'):" ext/extconf.rb || die
+ fi
+}
diff --git a/dev-ruby/io-event/metadata.xml b/dev-ruby/io-event/metadata.xml
new file mode 100644
index 000000000000..7e76e28a1d14
--- /dev/null
+++ b/dev-ruby/io-event/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <use>
+ <flag name="io-uring">Enable io_uring support, and use io_uring instead of epoll</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">socketry/io-event</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/io-wait/Manifest b/dev-ruby/io-wait/Manifest
new file mode 100644
index 000000000000..d52a4a63fe49
--- /dev/null
+++ b/dev-ruby/io-wait/Manifest
@@ -0,0 +1 @@
+DIST io-wait-0.2.3.tar.gz 22171 BLAKE2B 359bf268aafcb2dcbdf59912a0973b96bf396801678a3aa2780e3bd20e8a01471404a269eaaced939e47e4e99c417eadb86f0f2bd6ccd11fc3256bb04ca05f4f SHA512 2fbea3419152cd83e411742dd074491bd78b6a077b68a2ea5d802bac671b839bb484a06654ca11f18f45deb1e33a9019dfae0a33eeda0696c1c14b05706a95ba
diff --git a/dev-ruby/io-wait/io-wait-0.2.3.ebuild b/dev-ruby/io-wait/io-wait-0.2.3.ebuild
new file mode 100644
index 000000000000..80e425823662
--- /dev/null
+++ b/dev-ruby/io-wait/io-wait-0.2.3.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS="ext/io/wait/extconf.rb"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="io-wait.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Waits until IO is readable or writable without blocking"
+HOMEPAGE="https://github.com/ruby/io-wait"
+SRC_URI="https://github.com/ruby/io-wait/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -e '/task :test/ s:^:#:' -i Rakefile || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/io-wait/metadata.xml b/dev-ruby/io-wait/metadata.xml
new file mode 100644
index 000000000000..8e2d4cc9ea78
--- /dev/null
+++ b/dev-ruby/io-wait/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/io-wait</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/iobuffer/Manifest b/dev-ruby/iobuffer/Manifest
deleted file mode 100644
index fe1e2ddfeba5..000000000000
--- a/dev-ruby/iobuffer/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST iobuffer-git-1.1.2.tgz 9286 BLAKE2B 8e5a1fc5b33bfd40ba561c27259079c5511b7cba8b0a55bf120b1c6dcf5552cc0adcf6e08aa8f8cda083aba1013a7f690c20268908760e50ca6bc63a02ae020e SHA512 cec67ac42b3966c144fc61c8fa1a36f166d0a892ec4ebb2f6e0fc218eac5fd7bfb803973b05ae52ff05b04eb86caae0cfee4cc1430e876e58157b5bdc41723c7
diff --git a/dev-ruby/iobuffer/iobuffer-1.1.2-r3.ebuild b/dev-ruby/iobuffer/iobuffer-1.1.2-r3.ebuild
deleted file mode 100644
index 67c984fc720a..000000000000
--- a/dev-ruby/iobuffer/iobuffer-1.1.2-r3.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit multilib ruby-fakegem
-
-GITHUB_USER="tarcieri"
-
-DESCRIPTION="IO::Buffer is a byte queue which is intended for non-blocking I/O applications"
-HOMEPAGE="https://github.com/tarcieri/iobuffer"
-SRC_URI="https://github.com/${GITHUB_USER}/iobuffer/tarball/v${PV} -> ${PN}-git-${PV}.tgz"
-
-LICENSE="MIT"
-KEYWORDS="~amd64 ~x86 ~x86-macos"
-SLOT="0"
-IUSE=""
-
-RUBY_S="${GITHUB_USER}-${PN}-*"
-
-all_ruby_prepare() {
- rm .rspec lib/.gitignore Gemfile* || die
-}
-
-each_ruby_configure() {
- ${RUBY} -C ext extconf.rb || die
- sed -i -e "s/^ldflags = /ldflags = $\(LDFLAGS\) /" ext/Makefile || die
-}
-
-each_ruby_compile() {
- emake -C ext V=1
- cp ext/iobuffer_ext$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/iobuffer/metadata.xml b/dev-ruby/iobuffer/metadata.xml
deleted file mode 100644
index f9c82ffa5c69..000000000000
--- a/dev-ruby/iobuffer/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">tarcieri/iobuffer</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ipaddr/Manifest b/dev-ruby/ipaddr/Manifest
new file mode 100644
index 000000000000..f8af1ca1dfe5
--- /dev/null
+++ b/dev-ruby/ipaddr/Manifest
@@ -0,0 +1,2 @@
+DIST ipaddr-1.2.5.tar.gz 21795 BLAKE2B dfc4d50941dc9275ff45bcd35ac48ea678c6d6bd4e4227e5514ba7ba1ad2bde7e6692eb81dfc066332211fa20911c58573d9e6fd6842195cebea69f004cf4dd1 SHA512 d3741e6841ad78dba364227d7f0313843068c06dd13f2f459cc3c07e5f2a9ed7d9a9ebbeb2533235ba561a52966bbfc78375b8b0ab36a9275a49251658c6deab
+DIST ipaddr-1.2.6.tar.gz 11817 BLAKE2B fb2fefef581e372ce8130b3fef9e634218b5bd66bb579dc9909f641fb4dc7bd5f7b5252168cb0f0758874737119a163766b7c027c261f0eb386478b489633b82 SHA512 9850d26a8804a51587b7070be8bb932c312cb4d3619204df73a7d55b3f177891d18e5daf05b17f4271df9f04296f97aff607bcbc189b5c7238fd80376a13e3e7
diff --git a/dev-ruby/ipaddr/ipaddr-1.2.5.ebuild b/dev-ruby/ipaddr/ipaddr-1.2.5.ebuild
new file mode 100644
index 000000000000..befd16d48786
--- /dev/null
+++ b/dev-ruby/ipaddr/ipaddr-1.2.5.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="ipaddr.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="IPAddr provides a set of methods to manipulate an IPv4 or IPv6 address"
+HOMEPAGE="https://github.com/ruby/ipaddr"
+SRC_URI="https://github.com/ruby/ipaddr/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/ipaddr/ipaddr-1.2.6.ebuild b/dev-ruby/ipaddr/ipaddr-1.2.6.ebuild
new file mode 100644
index 000000000000..78f9a8016fd9
--- /dev/null
+++ b/dev-ruby/ipaddr/ipaddr-1.2.6.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="ipaddr.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="IPAddr provides a set of methods to manipulate an IPv4 or IPv6 address"
+HOMEPAGE="https://github.com/ruby/ipaddr"
+SRC_URI="https://github.com/ruby/ipaddr/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/ipaddr/metadata.xml b/dev-ruby/ipaddr/metadata.xml
new file mode 100644
index 000000000000..0057dde65dce
--- /dev/null
+++ b/dev-ruby/ipaddr/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/ipaddr</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/irb/Manifest b/dev-ruby/irb/Manifest
new file mode 100644
index 000000000000..bd873c1e4ebf
--- /dev/null
+++ b/dev-ruby/irb/Manifest
@@ -0,0 +1 @@
+DIST irb-1.11.1.tar.gz 128341 BLAKE2B ec2ebfd31b7d784668ed043d32b86bc0f77481b250170911332f4b9810f0ee5245ec65aac4d2fa4fc94f49c5d3fa59dd7c3a709f712d9f7f4c1ed6ddd7f0e2b3 SHA512 6b8eaf41410d43f4ab47961b56ce054f93e134e5cba51a08294baaa6de149a209e243a9cf649091f3176adfd0c22943fe222b61b0ab1215e0822d7007c154f17
diff --git a/dev-ruby/irb/irb-1.11.1.ebuild b/dev-ruby/irb/irb-1.11.1.ebuild
new file mode 100644
index 000000000000..a693b0845c3d
--- /dev/null
+++ b/dev-ruby/irb/irb-1.11.1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINDIR="exe"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="irb.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Interactive Ruby command-line tool for REPL (Read Eval Print Loop)"
+HOMEPAGE="https://github.com/ruby/irb"
+SRC_URI="https://github.com/ruby/irb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+# Ensure a new enough eselect-ruby is present to avoid clobbering the
+# irb bin and man page.
+ruby_add_rdepend "
+ dev-ruby/rdoc
+ >=dev-ruby/reline-0.3.8
+ !<app-eselect/eselect-ruby-20231008
+"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ dev-ruby/debug
+ dev-ruby/test-unit
+ dev-ruby/test-unit-ruby-core
+ )"
+
+all_ruby_prepare() {
+ sed -e 's:_relative ":"./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Skip test requiring specific character set
+ sed -e '/test_raise_exception_with_different_encoding_containing_invalid_byte_sequence/aomit "charset"' \
+ -i test/irb/test_raise_exception.rb || die
+
+ # Skip tests requiring a working console
+ rm -f test/irb/test_debug_cmd.rb || die
+}
+
+each_ruby_test() {
+ RUBYLIB=lib ${RUBY} -S rake test || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ doman man/irb.1
+}
diff --git a/dev-ruby/irb/metadata.xml b/dev-ruby/irb/metadata.xml
new file mode 100644
index 000000000000..860a8cf3bc11
--- /dev/null
+++ b/dev-ruby/irb/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/irb</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/itextomml/Manifest b/dev-ruby/itextomml/Manifest
index cdcb83045df2..07424ad820a8 100644
--- a/dev-ruby/itextomml/Manifest
+++ b/dev-ruby/itextomml/Manifest
@@ -1,2 +1 @@
-DIST itextomml-1.5.8.gem 125952 BLAKE2B 1fd68b00bed86e8f799d5cffd4de40d50151d18a11dbfbc91dbbc857295959d44c118bf39fcf4e7089e466d07f2ed03ad0d04c16c696fd6b7c4c8d101fd0c0ac SHA512 5fb1776ba7de3f0d09eed64bff8fc04c4a508cb7360d82853d65dc481bd0a43253c0a4edd4c9eaa0df835f9a21d6ed2c2d318f621c5d071b6566709d769c1312
-DIST itextomml-1.6.0.gem 125952 BLAKE2B 9422d7a7f0a872dc60fce6f5d217c8c085785787d40b1f976a0f3df04f49d8de37a6fb658d8960b27f27dec03401a013b51a9ebe2446f5deecd70cfab00a7756 SHA512 cabff2d8d36cea6b280c4c928675e368e02ce346870c2d933ebb5554722e729ef7a05132776d29e4a62f0fa89ef1ad2fdd729ac97a35d7aed6da24f90de75839
+DIST itextomml-1.6.1.gem 126976 BLAKE2B f66395ebc75f57b845897c9ec3cdabd93a67fd93561ad6fa2284c449518d4da08b3d4cb20529149b006228f0200ed73d3edca23fdc6cc943e0cdb4d09a14b47c SHA512 c122562e54618a2eda090c061d4b65c3d55cbd5325eb7f9d13249959219eeed75be5e172a1d2b8bdcc30eafc7700150eff3b7b09aaa2e5b9dd143f9e5752cd8e
diff --git a/dev-ruby/itextomml/itextomml-1.5.8.ebuild b/dev-ruby/itextomml/itextomml-1.5.8.ebuild
deleted file mode 100644
index 22fcbeb33d94..000000000000
--- a/dev-ruby/itextomml/itextomml-1.5.8.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Native Ruby bindings to itex2MML, which converts itex equations to MathML"
-HOMEPAGE="https://golem.ph.utexas.edu/~distler/blog/itex2MML.html"
-
-LICENSE="|| ( GPL-2+ MPL-1.1 LGPL-2+ )"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-#Tests don't fail here
-RESTRICT="test"
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext
- cp ext/itex2MML$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} test/test_itextomml.rb || die
-}
diff --git a/dev-ruby/itextomml/itextomml-1.6.0.ebuild b/dev-ruby/itextomml/itextomml-1.6.0.ebuild
deleted file mode 100644
index 22fcbeb33d94..000000000000
--- a/dev-ruby/itextomml/itextomml-1.6.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Native Ruby bindings to itex2MML, which converts itex equations to MathML"
-HOMEPAGE="https://golem.ph.utexas.edu/~distler/blog/itex2MML.html"
-
-LICENSE="|| ( GPL-2+ MPL-1.1 LGPL-2+ )"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-#Tests don't fail here
-RESTRICT="test"
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext
- cp ext/itex2MML$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} test/test_itextomml.rb || die
-}
diff --git a/dev-ruby/itextomml/itextomml-1.6.1.ebuild b/dev-ruby/itextomml/itextomml-1.6.1.ebuild
new file mode 100644
index 000000000000..11a462d3e562
--- /dev/null
+++ b/dev-ruby/itextomml/itextomml-1.6.1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_EXTRADOC="README"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Native Ruby bindings to itex2MML, which converts itex equations to MathML"
+HOMEPAGE="https://golem.ph.utexas.edu/~distler/blog/itex2MML.html"
+
+LICENSE="|| ( GPL-2+ MPL-1.1 LGPL-2+ )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+#Tests don't fail here
+RESTRICT="test"
+
+each_ruby_test() {
+ ${RUBY} test/test_itextomml.rb || die
+}
diff --git a/dev-ruby/itextomml/metadata.xml b/dev-ruby/itextomml/metadata.xml
index 3df5c34efc94..7a38fd1850ff 100644
--- a/dev-ruby/itextomml/metadata.xml
+++ b/dev-ruby/itextomml/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/jbuilder/Manifest b/dev-ruby/jbuilder/Manifest
index 4c704f1d1799..66af3a7b3c7c 100644
--- a/dev-ruby/jbuilder/Manifest
+++ b/dev-ruby/jbuilder/Manifest
@@ -1 +1 @@
-DIST jbuilder-2.9.1.gem 28160 BLAKE2B 52e8a6ed2e6be19d73c22eddc6bcf3817e89f390da3b5eb4bc3308fa0c588f910608cbc6586cab858a5fb9ae6eb22fbade3fb32a426bed665cae18c067d85116 SHA512 aa8607696f5f14f22d163438d876b2a3017af791fdf4d6afd0df6c736ef86294db71f21a719029a2c052c24623d86f05c7aa5315e6f5066c74bc6886c50873fb
+DIST jbuilder-2.11.5.gem 27648 BLAKE2B 0a40c82ad1f68df5748be4425605eafd03bcd0262957915bc491037c45c21f5542ffae3d3f4e7dc8a20874f96dc1a7c3c3dd348a4c09b08f15117ca45103d260 SHA512 65caea9426cfe146fd4aaf0c9313e04f8f9d23d72faf959da4042d090f4e31be6a7040418fa9e6dc3f02e8acb3a0e2b5d3216af4f2fed8761b70a35101f4eb96
diff --git a/dev-ruby/jbuilder/jbuilder-2.11.5.ebuild b/dev-ruby/jbuilder/jbuilder-2.11.5.ebuild
new file mode 100644
index 000000000000..859ae269b778
--- /dev/null
+++ b/dev-ruby/jbuilder/jbuilder-2.11.5.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/activesupport-5.0.0:*"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/activemodel-5.0.0
+ >=dev-ruby/railties-5.0.0
+)"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile test/test_helper.rb || die
+}
diff --git a/dev-ruby/jbuilder/jbuilder-2.9.1.ebuild b/dev-ruby/jbuilder/jbuilder-2.9.1.ebuild
deleted file mode 100644
index f71f5a9a2601..000000000000
--- a/dev-ruby/jbuilder/jbuilder-2.9.1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="TRAVIS=true test"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md 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"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-4.2.0:*"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile test/test_helper.rb || die
-}
diff --git a/dev-ruby/jbuilder/metadata.xml b/dev-ruby/jbuilder/metadata.xml
index d10e8cb6ead9..85b61883d094 100644
--- a/dev-ruby/jbuilder/metadata.xml
+++ b/dev-ruby/jbuilder/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="rubygems">jbuilder</remote-id>
- </upstream>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="rubygems">jbuilder</remote-id>
+ <remote-id type="github">rails/jbuilder</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/jeweler/Manifest b/dev-ruby/jeweler/Manifest
deleted file mode 100644
index cfc32ec6981e..000000000000
--- a/dev-ruby/jeweler/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST jeweler-2.3.9.gem 61952 BLAKE2B 2c802f27db9a5018473792c184c56b1d2262ec4e30ba24da964bd8dfebecc7551ea50f4a4c0f823907a14afc5358036ff2efb0d9e8404befb2c451688f578b1e SHA512 d8e91702cf046cd16b5b0f718966adecaa7777f2ce526e3fac3be97f8e91ffa32362a9a96d1c8b390b400f38d0d7a59860437487459cb0490366ef2d38fec6f2
diff --git a/dev-ruby/jeweler/jeweler-2.3.9.ebuild b/dev-ruby/jeweler/jeweler-2.3.9.ebuild
deleted file mode 100644
index e953d1d6e966..000000000000
--- a/dev-ruby/jeweler/jeweler-2.3.9.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC="-Ilib yard"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-# Tests and features also need the same set of dependencies present.
-RUBY_FAKEGEM_TASK_TEST="-Ilib test"
-
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.markdown README.markdown"
-
-RUBY_FAKEGEM_GEMSPEC="jeweler.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Rake tasks to manage gems, versioning and generate new projects"
-HOMEPAGE="https://wiki.github.com/technicalpickles/jeweler"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "
- dev-ruby/yard
- test? (
- dev-ruby/shoulda
- dev-ruby/rr
- dev-ruby/test-unit-rr
- dev-ruby/test_construct
- dev-ruby/test-unit:2
- )
-"
-
-ruby_add_rdepend "
- dev-ruby/builder:*
- >=dev-ruby/bundler-1.0
- >=dev-ruby/git-1.2.5
- >=dev-ruby/github_api-0.16.0
- >=dev-ruby/highline-1.6.15
- >=dev-ruby/nokogiri-1.5.10
- dev-ruby/psych:0
- dev-ruby/rake
- dev-ruby/rdoc
- dev-ruby/semver2
-"
-
-all_ruby_prepare() {
- # Remove bundler support.
- rm Gemfile || die
- sed -i -e '/bundler/d' -e '/Bundler.setup/d' Rakefile test/test_helper.rb features/support/env.rb || die
-
- sed -i -e '/coverall/I s:^:#:' \
- -e '1i gem "test-unit"' test/test_helper.rb || die
-
- # Avoid a test that only passes in the git repository.
- sed -i -e '/find the base repo/,/^ end/ s:^:#:' test/test_jeweler.rb || die
-
- # Avoid dependency on cucumber, make sure semver2 gem is used (puppet also provides "semver")
- sed -i -e '/cucumber/,$ s:^:#:' \
- -e '1igem "semver2"' Rakefile || die
-
- # Loosen github_api requirement
- sed -i -e '/github_api/ s/0.16.0/0.16/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/jeweler/metadata.xml b/dev-ruby/jeweler/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/jeweler/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/jmespath/Manifest b/dev-ruby/jmespath/Manifest
index 707b62513fad..de265a541451 100644
--- a/dev-ruby/jmespath/Manifest
+++ b/dev-ruby/jmespath/Manifest
@@ -1 +1 @@
-DIST jmespath-1.4.0.tar.gz 40899 BLAKE2B 45e52f649950b00205af6010084e009a7327600971fdf84e0569498a031e9307876e412a4491fc176724667246fe9f81317a80dd7ff6c44b7e24a135af224e01 SHA512 2b3923a5c853c527ae10ed95da49e3f4888f80ec4eec18fcec2eff16698765e6e875575994ce2fa681977fb5329b122d95cab77fb80ead3548fc26fcbfb33859
+DIST jmespath-1.6.2.tar.gz 40932 BLAKE2B e19a2bacb8e207f65e45d1ad8eaaceb5ab6cbd847dc1009b45c618d426e5cc5814a1b1a806ccd935a83e3dacff3bcefedf9c7241586a348f2b705d80e63ba27d SHA512 2118c348bb25285f002fce64d0f7a00a5850c9f1b39d71d16c0c4335469069861bc51a81a9aec95f5625ae6b2d9daaa8b40ada817ac83ef83349c33e906561e7
diff --git a/dev-ruby/jmespath/jmespath-1.4.0.ebuild b/dev-ruby/jmespath/jmespath-1.4.0.ebuild
deleted file mode 100644
index 86c0218678b9..000000000000
--- a/dev-ruby/jmespath/jmespath-1.4.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Implements JMESPath for Ruby"
-HOMEPAGE="https://github.com/jmespath/jmespath.rb"
-SRC_URI="https://github.com/jmespath/jmespath.rb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="${PN}.rb-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/I s:^:#:' \
- spec/{compliance_spec,compliance_without_errors_spec,spec_helper}.rb || die
- sed -i -e '/bundler/I s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/jmespath/jmespath-1.6.2.ebuild b/dev-ruby/jmespath/jmespath-1.6.2.ebuild
new file mode 100644
index 000000000000..dd77c9c1f73a
--- /dev/null
+++ b/dev-ruby/jmespath/jmespath-1.6.2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRAINSTALL="VERSION"
+RUBY_FAKEGEM_GEMSPEC="jmespath.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Implements JMESPath for Ruby"
+HOMEPAGE="https://github.com/jmespath/jmespath.rb"
+SRC_URI="https://github.com/jmespath/jmespath.rb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="${PN}.rb-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/I s:^:#:' \
+ spec/{compliance_spec,compliance_without_errors_spec,spec_helper}.rb || die
+ sed -i -e '/bundler/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/jmespath/metadata.xml b/dev-ruby/jmespath/metadata.xml
index e78875b136cf..d6cadd41a68d 100644
--- a/dev-ruby/jmespath/metadata.xml
+++ b/dev-ruby/jmespath/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/journey/Manifest b/dev-ruby/journey/Manifest
deleted file mode 100644
index e62bf9fefcb4..000000000000
--- a/dev-ruby/journey/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST journey-1.0.4.gem 28672 BLAKE2B fe78647c9f80ad4b9874eab9488cca199cd69d354e69f3f5b47b417452ca259790109d07a27c4c2d99778683d9264413399d4d7acd7eb4d8e78f7e37ccf2a8d7 SHA512 9e6a06da8b77f6efb9941c58f53254e8cf3a1ebb6f8261a66ef3fed9c21ff4e4a90567fee88507b8e2c1fecc0fbdf204a9d3c8473b671bbb4b8c6b9faa6f2a07
diff --git a/dev-ruby/journey/files/journey-1.0.4-fix-tests.patch b/dev-ruby/journey/files/journey-1.0.4-fix-tests.patch
deleted file mode 100644
index f977172e6464..000000000000
--- a/dev-ruby/journey/files/journey-1.0.4-fix-tests.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-From d836e960d9a20c4c5bc986630d2ba34a340959ea Mon Sep 17 00:00:00 2001
-From: Aaron Patterson <aaron.patterson@gmail.com>
-Date: Fri, 27 Jul 2012 11:20:58 -0700
-Subject: [PATCH] fix assertion calls
-
----
- test/path/test_pattern.rb | 22 +++++++++++-----------
- 1 file changed, 11 insertions(+), 11 deletions(-)
-
-diff --git a/test/path/test_pattern.rb b/test/path/test_pattern.rb
-index c684a0a..ec93471 100644
---- a/test/path/test_pattern.rb
-+++ b/test/path/test_pattern.rb
-@@ -85,9 +85,9 @@ def test_to_regexp_with_extended_group
- ["/", ".", "?"]
- )
- path = Pattern.new strexp
-- assert_match('/page/tender', path)
-- assert_match('/page/love', path)
-- refute_match('/page/loving', path)
-+ assert_match(path, '/page/tender')
-+ assert_match(path, '/page/love')
-+ refute_match(path, '/page/loving')
- end
-
- def test_optional_names
-@@ -108,8 +108,8 @@ def test_to_regexp_match_non_optional
- ["/", ".", "?"]
- )
- path = Pattern.new strexp
-- assert_match('/123', path)
-- refute_match('/', path)
-+ assert_match(path, '/123')
-+ refute_match(path, '/')
- end
-
- def test_to_regexp_with_group
-@@ -119,9 +119,9 @@ def test_to_regexp_with_group
- ["/", ".", "?"]
- )
- path = Pattern.new strexp
-- assert_match('/page/tender', path)
-- assert_match('/page/love', path)
-- refute_match('/page/loving', path)
-+ assert_match(path, '/page/tender')
-+ assert_match(path, '/page/love')
-+ refute_match(path, '/page/loving')
- end
-
- def test_ast_sets_regular_expressions
-@@ -186,9 +186,9 @@ def test_insensitive_regexp_with_group
- ["/", ".", "?"]
- )
- path = Pattern.new strexp
-- assert_match('/page/TENDER/aaron', path)
-- assert_match('/page/loVE/aaron', path)
-- refute_match('/page/loVE/AAron', path)
-+ assert_match(path, '/page/TENDER/aaron')
-+ assert_match(path, '/page/loVE/aaron')
-+ refute_match(path, '/page/loVE/AAron')
- end
-
- def test_to_regexp_with_strexp
---
-1.9.1
-
diff --git a/dev-ruby/journey/journey-1.0.4-r1.ebuild b/dev-ruby/journey/journey-1.0.4-r1.ebuild
deleted file mode 100644
index 1e510b67e67e..000000000000
--- a/dev-ruby/journey/journey-1.0.4-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc README.rdoc"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Journey is a router. It routes requests"
-HOMEPAGE="https://github.com/rails/journey"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x64-macos ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/hoe
- dev-ruby/json
- dev-ruby/minitest )"
-
-RUBY_PATCHES=( "${FILESDIR}"/${P}-fix-tests.patch )
diff --git a/dev-ruby/journey/metadata.xml b/dev-ruby/journey/metadata.xml
deleted file mode 100644
index 16111db641b1..000000000000
--- a/dev-ruby/journey/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rails/journey</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/jquery-rails/Manifest b/dev-ruby/jquery-rails/Manifest
index 9db74ca84e60..ff540dc45edd 100644
--- a/dev-ruby/jquery-rails/Manifest
+++ b/dev-ruby/jquery-rails/Manifest
@@ -1,3 +1 @@
-DIST jquery-rails-3.1.4.gem 190976 BLAKE2B d0f0177bce04ca49a41c4a12e3ec35b1e4e7c6194fbda7a5e6ca48ae4a1cd1bf6845196f7b001330d54e4c19a4d3730932bb36741077980fda8de1e1a47be1ba SHA512 fbec0e09bff90d4f21a512c628767ceaf85f311ac8bd81ca58a7b41f71c0a6b25d9ab9246c4043abf71f7afaf217d51a796f2207c2321583ddd14845248c9f1a
-DIST jquery-rails-4.3.3.gem 519168 BLAKE2B cfd1c9c9a18ea919966778d4172a6733faa102086598c8871f2c9aef5460b1806f2346d1624ba7c01315dcb1090ea81771838280c0b68ae2e57a9e97ad6f24a5 SHA512 55cef78f794da90ef1f7394f919810425589d3d92dc71375c3ec2f0cd6d207e0854826887e1a69503bc6609c60c10886e0b868d2d2df46ae052c90f322aef974
-DIST jquery-rails-4.3.5.gem 523776 BLAKE2B cf5338380f1551ee5bbec61dab818f4c45eef49947647dc41cc71cc06438a3454f793122eed7934b2288a9a895578770b236fcb5f1f5a2d0c8c211708e6452e6 SHA512 78afb6ad2cfa331ffed52ef6ba67bbd6e1fd7da210223e1b0cd097b0823455036aba58a1f31b70c8a9525f1f62508ec7f688924af7b0b18f262ab8d845c9ad78
+DIST jquery-rails-4.6.0.gem 523776 BLAKE2B c6d283ee2739ad7ba32eae8a629836ff766693cdefef86e027db491ea104f662897f4d689beee4df01a418f93e1a57146991db09321a6f1e59fc61befd7755d3 SHA512 3b5867036f0f415f1063b9cb393d8cb4ad1d28d3a97a7d623089111dcf0abbc3cf00bde5a4a35aa8b1d2351b0398c007c71c5dd8e5e51857f24f9d4a35fc9ca9
diff --git a/dev-ruby/jquery-rails/jquery-rails-3.1.4.ebuild b/dev-ruby/jquery-rails/jquery-rails-3.1.4.ebuild
deleted file mode 100644
index a72516c0402f..000000000000
--- a/dev-ruby/jquery-rails/jquery-rails-3.1.4.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="vendor"
-
-RUBY_FAKEGEM_GEMSPEC="jquery-rails.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="jQuery! For Rails! So great"
-HOMEPAGE="http://www.rubyonrails.org"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~x86 ~x64-macos"
-
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/railties-3.0:* <dev-ruby/railties-5.0:* >=dev-ruby/thor-0.14"
-
-all_ruby_prepare() {
- sed -i -e '/git ls-files/d' jquery-rails.gemspec || die
-}
diff --git a/dev-ruby/jquery-rails/jquery-rails-4.3.3.ebuild b/dev-ruby/jquery-rails/jquery-rails-4.3.3.ebuild
deleted file mode 100644
index 63b557803f02..000000000000
--- a/dev-ruby/jquery-rails/jquery-rails-4.3.3.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md VERSIONS.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="vendor"
-
-RUBY_FAKEGEM_GEMSPEC="jquery-rails.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="jQuery! For Rails! So great"
-HOMEPAGE="http://www.rubyonrails.org"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
-
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/railties-4.2.0:*
- >=dev-ruby/thor-0.14 <dev-ruby/thor-2
- || ( dev-ruby/rails-dom-testing:2 dev-ruby/rails-dom-testing:1 )"
-
-all_ruby_prepare() {
- sed -i -e '/git ls-files/d' jquery-rails.gemspec || die
-}
diff --git a/dev-ruby/jquery-rails/jquery-rails-4.3.5.ebuild b/dev-ruby/jquery-rails/jquery-rails-4.3.5.ebuild
deleted file mode 100644
index 61ac064c1834..000000000000
--- a/dev-ruby/jquery-rails/jquery-rails-4.3.5.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md VERSIONS.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="vendor"
-
-RUBY_FAKEGEM_GEMSPEC="jquery-rails.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="jQuery! For Rails! So great"
-HOMEPAGE="https://www.rubyonrails.org"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
-
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/railties-4.2.0:*
- >=dev-ruby/thor-0.14 <dev-ruby/thor-2
- || ( dev-ruby/rails-dom-testing:2 dev-ruby/rails-dom-testing:1 )"
-
-all_ruby_prepare() {
- sed -i -e '/git ls-files/d' jquery-rails.gemspec || die
-}
diff --git a/dev-ruby/jquery-rails/jquery-rails-4.6.0.ebuild b/dev-ruby/jquery-rails/jquery-rails-4.6.0.ebuild
new file mode 100644
index 000000000000..f237dda54e78
--- /dev/null
+++ b/dev-ruby/jquery-rails/jquery-rails-4.6.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md VERSIONS.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="vendor"
+
+RUBY_FAKEGEM_GEMSPEC="jquery-rails.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="jQuery! For Rails! So great"
+HOMEPAGE="https://github.com/rails/jquery-rails"
+
+LICENSE="MIT"
+SLOT="4"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
+
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/railties-4.2.0:*
+ >=dev-ruby/thor-0.14:* <dev-ruby/thor-2:*
+ dev-ruby/rails-dom-testing:2"
+
+all_ruby_prepare() {
+ sed -i -e '/git ls-files/d' jquery-rails.gemspec || die
+}
diff --git a/dev-ruby/jquery-rails/metadata.xml b/dev-ruby/jquery-rails/metadata.xml
index 28ab0c15f206..70355b65da80 100644
--- a/dev-ruby/jquery-rails/metadata.xml
+++ b/dev-ruby/jquery-rails/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">rails/jquery-rails</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/jquery-ui-rails/Manifest b/dev-ruby/jquery-ui-rails/Manifest
index 382b59a72b9b..33d2cf2cbc45 100644
--- a/dev-ruby/jquery-ui-rails/Manifest
+++ b/dev-ruby/jquery-ui-rails/Manifest
@@ -1,2 +1,2 @@
-DIST jquery-ui-rails-5.0.5.gem 163840 BLAKE2B 6eb6b788c826da95143a2d739732e1d1c18a13e76a71a0666f5b4163ca882b4b2b68f273610ccb340352b13c0f6763348fa4ae80b1f6a79d5e6d85110a06a36a SHA512 1db2e47d6a70d4326a25e89d3ff297e39bcbffbe644ddd97b95a837c3d4af7ff812bf165858382e0448f73406a4edf2b7e9c0e1622c1fdae68c52b1a60f77ff5
DIST jquery-ui-rails-6.0.1.gem 175104 BLAKE2B f990968bc75d5f2c5556363f41eafd9ce2207dc08e20bbf10f857656219253fd5f29e8b4d131f7a8b942682d6c32bb11797c08621b34847f77984e7fe57e111b SHA512 ec0fd8c15ef9dbdbef01bdaca22fb36251a2ced090ade6859cff7c72e183c3c750fc384fdf757db7160ec1c6426ce84c972cce255c3d42a2bb9ebe5539390485
+DIST jquery-ui-rails-7.0.0.tar.gz 210630 BLAKE2B 8a344e188fe8da945cfda93ab7351bc431f9c8c4a2ef3bcfec596b806be767710ea94eba3d94ac02f8e112e12aa443787b36c8111f1107c97b606f2a17e470d8 SHA512 a0a50fba56469d95529253cea45e4c2c6bec8b7eeae634ef0526149b0671bc2b84895e0d374f63c9661c44327dc635d58d41560061687ef34ef2783b37017161
diff --git a/dev-ruby/jquery-ui-rails/jquery-ui-rails-5.0.5-r1.ebuild b/dev-ruby/jquery-ui-rails/jquery-ui-rails-5.0.5-r1.ebuild
deleted file mode 100644
index f27e9179bbde..000000000000
--- a/dev-ruby/jquery-ui-rails/jquery-ui-rails-5.0.5-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.md VERSIONS.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="app"
-
-inherit ruby-fakegem
-
-DESCRIPTION="The jQuery UI assets for the Rails 3.2+ asset pipeline"
-HOMEPAGE="http://www.rubyonrails.org"
-
-LICENSE="MIT"
-SLOT="5"
-KEYWORDS="~amd64 ~arm ~x86 ~x64-macos"
-
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/railties-3.2.16:*"
diff --git a/dev-ruby/jquery-ui-rails/jquery-ui-rails-6.0.1-r1.ebuild b/dev-ruby/jquery-ui-rails/jquery-ui-rails-6.0.1-r1.ebuild
deleted file mode 100644
index 500c02e76f8d..000000000000
--- a/dev-ruby/jquery-ui-rails/jquery-ui-rails-6.0.1-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.md VERSIONS.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="app"
-
-inherit ruby-fakegem
-
-DESCRIPTION="The jQuery UI assets for the Rails 3.2+ asset pipeline"
-HOMEPAGE="https://github.com/joliss/jquery-ui-rails"
-
-LICENSE="MIT"
-SLOT="6"
-KEYWORDS="~amd64 ~arm ~x86 ~x64-macos"
-
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/railties-3.2.16:*"
diff --git a/dev-ruby/jquery-ui-rails/jquery-ui-rails-6.0.1-r2.ebuild b/dev-ruby/jquery-ui-rails/jquery-ui-rails-6.0.1-r2.ebuild
new file mode 100644
index 000000000000..e15b14158cda
--- /dev/null
+++ b/dev-ruby/jquery-ui-rails/jquery-ui-rails-6.0.1-r2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md VERSIONS.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The jQuery UI assets for the Rails 3.2+ asset pipeline"
+HOMEPAGE="https://github.com/jquery-ui-rails/jquery-ui-rails"
+
+LICENSE="MIT"
+SLOT="6"
+KEYWORDS="~amd64 ~arm ~x86 ~x64-macos"
+
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/railties-3.2.16:*"
diff --git a/dev-ruby/jquery-ui-rails/jquery-ui-rails-7.0.0.ebuild b/dev-ruby/jquery-ui-rails/jquery-ui-rails-7.0.0.ebuild
new file mode 100644
index 000000000000..dc6353a5fb2e
--- /dev/null
+++ b/dev-ruby/jquery-ui-rails/jquery-ui-rails-7.0.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md VERSIONS.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app"
+RUBY_FAKEGEM_GEMSPEC="jquery-ui-rails.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The jQuery UI assets for the Rails 3.2+ asset pipeline"
+HOMEPAGE="https://github.com/jquery-ui-rails/jquery-ui-rails"
+SRC_URI="https://github.com/jquery-ui-rails/jquery-ui-rails/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~x86 ~x64-macos"
+
+ruby_add_rdepend ">=dev-ruby/railties-3.2.16:*"
+
+all_ruby_prepare() {
+ sed -e '/executables/ s:^:#:' \
+ -e 's/git ls-files/find */' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/jquery-ui-rails/metadata.xml b/dev-ruby/jquery-ui-rails/metadata.xml
index e311b1c7b568..9700c4a28e2f 100644
--- a/dev-ruby/jquery-ui-rails/metadata.xml
+++ b/dev-ruby/jquery-ui-rails/metadata.xml
@@ -1,11 +1,11 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">joliss/jquery-ui-rails</remote-id>
+ <remote-id type="github">jquery-ui-rails/jquery-ui-rails</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/jsobfu/jsobfu-0.4.2-r1.ebuild b/dev-ruby/jsobfu/jsobfu-0.4.2-r1.ebuild
new file mode 100644
index 000000000000..63fdc38a7e28
--- /dev/null
+++ b/dev-ruby/jsobfu/jsobfu-0.4.2-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Javascript code obfuscator"
+HOMEPAGE="https://github.com/rapid7/jsobfu"
+
+LICENSE="BSD"
+#rapid7 gems are slotted so we can have multiple versions installed at once to support multiple versions of metasploit
+SLOT="${PV}"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+ruby_add_rdepend "!dev-ruby/jsobfu:0
+ >=dev-ruby/rkelly-remix-0.0.6:0"
+
+ruby_add_bdepend "test? ( dev-ruby/execjs )"
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/ s:^:#:' \
+ -e '/config.\(color\|tty\|formatter\)/ s:^:#:' \
+ spec/spec_helper.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ ruby_fakegem_binwrapper jsobfu jsobfu-${PV}
+}
diff --git a/dev-ruby/jsobfu/jsobfu-0.4.2.ebuild b/dev-ruby/jsobfu/jsobfu-0.4.2.ebuild
deleted file mode 100644
index f331460cbb79..000000000000
--- a/dev-ruby/jsobfu/jsobfu-0.4.2.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Javascript code obfuscator"
-HOMEPAGE="https://github.com/rapid7/jsobfu"
-
-LICENSE="BSD"
-#rapid7 gems are slotted so we can have multiple versions installed at once to support multiple versions of metasploit
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "!dev-ruby/jsobfu:0
- >=dev-ruby/rkelly-remix-0.0.6:0"
-
-ruby_add_bdepend "test? ( dev-ruby/execjs )"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/ s:^:#:' \
- -e '/config.\(color\|tty\|formatter\)/ s:^:#:' \
- spec/spec_helper.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- ruby_fakegem_binwrapper jsobfu jsobfu-${PV}
-}
diff --git a/dev-ruby/jsobfu/metadata.xml b/dev-ruby/jsobfu/metadata.xml
index f12ab92f0d9f..4c6f101dd94e 100644
--- a/dev-ruby/jsobfu/metadata.xml
+++ b/dev-ruby/jsobfu/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/json/Manifest b/dev-ruby/json/Manifest
index e112a4db9200..2e3ee93f1f48 100644
--- a/dev-ruby/json/Manifest
+++ b/dev-ruby/json/Manifest
@@ -1,3 +1,3 @@
-DIST json-1.8.6.gem 144384 BLAKE2B db9e407be4ac7e0cb2e09369637b88f70cdac7a659c600dc83a5390746dfd21b0a5243af62afaeeff013b5a4116a3b22c65a481cad89f1ca9be8904af87d0345 SHA512 8f393da080293965389df4a606e0604c500b4b267897b3c1b9007b7700dde8156f6598c25790e84fa20a7e03c7ae359a0b267c7b84e52dfe2a1ac83cf652ad9b
-DIST json-2.1.0.gem 140800 BLAKE2B 28bb5334358369351ec9f13f5fb609ce34eb429cfeffb8dfde70864541516a0c2abd00a640b4647f76dcef198f967456bae0a858a2f213e5a30272c1be1878c7 SHA512 bffbe462e952bca321d4325ecb9c5e9f61e51cad13758581ecfaa6a038bac4e30dc7db50bd897086a5592f6fc437d0e0909f91e279aaf4dd71cf127100c3550b
-DIST json-2.2.0.gem 112640 BLAKE2B 973fe22979f4e2fa64a1090e44e5e149029881f20ec2749ce040b79a94610003941f6f3471bbc71e581491df74201bc4201419081c04a03790caaed888dfed1c SHA512 855d5cbeb6e62a7deb009ad454944430c0370cc98c53a1126d8ca3cac4b11a191bfb2ded84a957d4caa0f59cc9b6308e320a58569bddba8d6984078ea34703f2
+DIST json-2.6.3.tar.gz 133077 BLAKE2B f6101f533159fb689b6bf22975137d34a77bd0926c164a9c14f2d5eab982778538ec40551709e8a6470f05e78584a3e5680be740314bb7829b48feb32fb258ae SHA512 1bf9125266d8cdc565deb9e2fe3c884a1fc8d2f3b31caae67a154d0c47e30305074c1c08b49d180dd785c766762b46d3b3ef85919d53388797fcc2f37675317c
+DIST json-2.7.1.tar.gz 125655 BLAKE2B 9921b8dd26123d27b752d3dd633f788437a1aa2003b09ad6d0f43e946362f48a8e5b8dcc70d08f61cc9affa2578750e40c5a78d3bf88e0417af8890100987c79 SHA512 81e7cf51363095088142a7ac15428765f296e9b8c205946abf9ab98ddf7c57aa732c8111e6b0e239606645dfbc24dd40fbe981a52ab2d9fac97c0e3fb08133a0
+DIST json-2.7.2.tar.gz 125814 BLAKE2B 450c9495053c762446e77997bdc7e0291f8baf160a4da7e56d04ed18aa5629a11f1309e40bab0849692433392cfba8a19dda905fe5044ab363591a49e6e18b60 SHA512 5c432c293eed69b9810b5d0ca782383ba3f206d561641c354515e357c663ed4a4fb5ae35d3336d48605f9e82156d2f14a7ec6fa26642351214f60d91bac84f0e
diff --git a/dev-ruby/json/files/json-1.8.6-heap-exposure.patch b/dev-ruby/json/files/json-1.8.6-heap-exposure.patch
deleted file mode 100644
index d3da7a0f86f9..000000000000
--- a/dev-ruby/json/files/json-1.8.6-heap-exposure.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-diff --git ext/json/generator/generator.c ext/json/generator/generator.c
-index a135e28348..2cdca5685f 100644
---- a/ext/json/ext/generator/generator.c
-+++ b/ext/json/ext/generator/generator.c
-@@ -301,7 +301,7 @@ static char *fstrndup(const char *ptr, unsigned long len) {
- char *result;
- if (len <= 0) return NULL;
- result = ALLOC_N(char, len);
-- memccpy(result, ptr, 0, len);
-+ memcpy(result, ptr, len);
- return result;
- }
-
-@@ -1055,7 +1055,7 @@ static VALUE cState_indent_set(VALUE self, VALUE indent)
- }
- } else {
- if (state->indent) ruby_xfree(state->indent);
-- state->indent = strdup(RSTRING_PTR(indent));
-+ state->indent = fstrndup(RSTRING_PTR(indent), len);
- state->indent_len = len;
- }
- return Qnil;
-@@ -1093,7 +1093,7 @@ static VALUE cState_space_set(VALUE self, VALUE space)
- }
- } else {
- if (state->space) ruby_xfree(state->space);
-- state->space = strdup(RSTRING_PTR(space));
-+ state->space = fstrndup(RSTRING_PTR(space), len);
- state->space_len = len;
- }
- return Qnil;
-@@ -1129,7 +1129,7 @@ static VALUE cState_space_before_set(VALUE self, VALUE space_before)
- }
- } else {
- if (state->space_before) ruby_xfree(state->space_before);
-- state->space_before = strdup(RSTRING_PTR(space_before));
-+ state->space_before = fstrndup(RSTRING_PTR(space_before), len);
- state->space_before_len = len;
- }
- return Qnil;
-@@ -1166,7 +1166,7 @@ static VALUE cState_object_nl_set(VALUE self, VALUE object_nl)
- }
- } else {
- if (state->object_nl) ruby_xfree(state->object_nl);
-- state->object_nl = strdup(RSTRING_PTR(object_nl));
-+ state->object_nl = fstrndup(RSTRING_PTR(object_nl), len);
- state->object_nl_len = len;
- }
- return Qnil;
-@@ -1201,7 +1201,7 @@ static VALUE cState_array_nl_set(VALUE self, VALUE array_nl)
- }
- } else {
- if (state->array_nl) ruby_xfree(state->array_nl);
-- state->array_nl = strdup(RSTRING_PTR(array_nl));
-+ state->array_nl = fstrndup(RSTRING_PTR(array_nl), len);
- state->array_nl_len = len;
- }
- return Qnil;
-diff --git ext/json/generator/generator.h ext/json/generator/generator.h
-index 298c0a4965..6bbf817b7d 100644
---- a/ext/json/ext/generator/generator.h
-+++ b/ext/json/ext/generator/generator.h
-@@ -1,7 +1,6 @@
- #ifndef _GENERATOR_H_
- #define _GENERATOR_H_
-
--#include <string.h>
- #include <math.h>
- #include <ctype.h>
-
-diff --git ext/json/lib/json/version.rb ext/json/lib/json/version.rb
-index b5748334b9..cd7ddf8777 100644
---- a/lib/json/version.rb
-+++ b/lib/json/version.rb
-@@ -1,7 +1,7 @@
- module JSON
- # JSON version
-- VERSION = '1.8.6'
-+ VERSION = '1.8.6.1'
- VERSION_ARRAY = VERSION.split(/\./).map { |x| x.to_i } # :nodoc:
- VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
- VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
diff --git a/dev-ruby/json/files/json-2.1.0-ruby26-1.patch b/dev-ruby/json/files/json-2.1.0-ruby26-1.patch
deleted file mode 100644
index e6f76a4be141..000000000000
--- a/dev-ruby/json/files/json-2.1.0-ruby26-1.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-commit bf226a9ac40e2296589004be89b4420b2121e000
-Author: eregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>
-Date: Fri Aug 3 15:11:22 2018 +0000
-
- Fix missed update of parser source in r62429
-
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64175 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
-diff --git a/ext/json/parser/parser.rl b/ext/json/parser/parser.rl
-index 29900a4a4a..fba01ac0e5 100644
---- a/ext/json/ext/parser/parser.rl
-+++ b/ext/json/ext/parser/parser.rl
-@@ -824,6 +824,7 @@ static VALUE cParser_source(VALUE self)
-
- void Init_parser(void)
- {
-+#undef rb_intern
- rb_require("json/common");
- mJSON = rb_define_module("JSON");
- mExt = rb_define_module_under(mJSON, "Ext");
diff --git a/dev-ruby/json/files/json-2.1.0-ruby26-2.patch b/dev-ruby/json/files/json-2.1.0-ruby26-2.patch
deleted file mode 100644
index 9f1bff9b691e..000000000000
--- a/dev-ruby/json/files/json-2.1.0-ruby26-2.patch
+++ /dev/null
@@ -1,105 +0,0 @@
-commit e7da0fc34e8ed7fa250fc38f1109e4944cbad808
-Author: eregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>
-Date: Fri Aug 3 15:11:36 2018 +0000
-
- ext/json/parser/parser.c: do not call rb_str_resize() on Time object
-
- * See https://github.com/flori/json/issues/342
-
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
-diff --git a/ext/json/parser/parser.c b/ext/json/parser/parser.c
-index b5ed093c1f..c8012796a4 100644
---- a/ext/json/ext/parser/parser.c
-+++ b/ext/json/ext/parser/parser.c
-@@ -1659,7 +1659,9 @@ case 7:
- if (json->symbolize_names && json->parsing_name) {
- *result = rb_str_intern(*result);
- } else {
-- rb_str_resize(*result, RSTRING_LEN(*result));
-+ if (RB_TYPE_P(*result, T_STRING)) {
-+ rb_str_resize(*result, RSTRING_LEN(*result));
-+ }
- }
- if (cs >= JSON_string_first_final) {
- return p + 1;
-@@ -1830,7 +1832,7 @@ static VALUE cParser_initialize(int argc, VALUE *argv, VALUE self)
- }
-
-
--#line 1834 "parser.c"
-+#line 1836 "parser.c"
- enum {JSON_start = 1};
- enum {JSON_first_final = 10};
- enum {JSON_error = 0};
-@@ -1838,7 +1840,7 @@ enum {JSON_error = 0};
- enum {JSON_en_main = 1};
-
-
--#line 742 "parser.rl"
-+#line 744 "parser.rl"
-
-
- /*
-@@ -1855,16 +1857,16 @@ static VALUE cParser_parse(VALUE self)
- GET_PARSER;
-
-
--#line 1859 "parser.c"
-+#line 1861 "parser.c"
- {
- cs = JSON_start;
- }
-
--#line 758 "parser.rl"
-+#line 760 "parser.rl"
- p = json->source;
- pe = p + json->len;
-
--#line 1868 "parser.c"
-+#line 1870 "parser.c"
- {
- if ( p == pe )
- goto _test_eof;
-@@ -1898,7 +1900,7 @@ st0:
- cs = 0;
- goto _out;
- tr2:
--#line 734 "parser.rl"
-+#line 736 "parser.rl"
- {
- char *np = JSON_parse_value(json, p, pe, &result, 0);
- if (np == NULL) { p--; {p++; cs = 10; goto _out;} } else {p = (( np))-1;}
-@@ -1908,7 +1910,7 @@ st10:
- if ( ++p == pe )
- goto _test_eof10;
- case 10:
--#line 1912 "parser.c"
-+#line 1914 "parser.c"
- switch( (*p) ) {
- case 13: goto st10;
- case 32: goto st10;
-@@ -1997,7 +1999,7 @@ case 9:
- _out: {}
- }
-
--#line 761 "parser.rl"
-+#line 763 "parser.rl"
-
- if (cs >= JSON_first_final && p == pe) {
- return result;
-diff --git a/ext/json/parser/parser.rl b/ext/json/parser/parser.rl
-index fba01ac0e5..edab32b78f 100644
---- a/ext/json/ext/parser/parser.rl
-+++ b/ext/json/ext/parser/parser.rl
-@@ -554,7 +554,9 @@ static char *JSON_parse_string(JSON_Parser *json, char *p, char *pe, VALUE *resu
- if (json->symbolize_names && json->parsing_name) {
- *result = rb_str_intern(*result);
- } else {
-- rb_str_resize(*result, RSTRING_LEN(*result));
-+ if (RB_TYPE_P(*result, T_STRING)) {
-+ rb_str_resize(*result, RSTRING_LEN(*result));
-+ }
- }
- if (cs >= JSON_string_first_final) {
- return p + 1;
diff --git a/dev-ruby/json/files/json-2.1.0-ruby26-3.patch b/dev-ruby/json/files/json-2.1.0-ruby26-3.patch
deleted file mode 100644
index cf16e235216c..000000000000
--- a/dev-ruby/json/files/json-2.1.0-ruby26-3.patch
+++ /dev/null
@@ -1,143 +0,0 @@
-commit a7e3516ff1116a15b3ed62f55143eceee27c4ce9
-Author: mrkn <mrkn@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>
-Date: Sun Dec 2 05:21:57 2018 +0000
-
- Fix JSON::Parser against bigdecimal updates
-
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66127 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
-diff --git a/ext/json/parser/parser.c b/ext/json/parser/parser.c
-index c8012796a4..b02aae8fb9 100644
---- a/ext/json/ext/parser/parser.c
-+++ b/ext/json/ext/parser/parser.c
-@@ -91,12 +91,13 @@ static int convert_UTF32_to_UTF8(char *buf, UTF32 ch)
-
- static VALUE mJSON, mExt, cParser, eParserError, eNestingError;
- static VALUE CNaN, CInfinity, CMinusInfinity;
-+static VALUE cBigDecimal = Qundef;
-
- static ID i_json_creatable_p, i_json_create, i_create_id, i_create_additions,
- i_chr, i_max_nesting, i_allow_nan, i_symbolize_names,
- i_object_class, i_array_class, i_decimal_class, i_key_p,
- i_deep_const_get, i_match, i_match_string, i_aset, i_aref,
-- i_leftshift, i_new;
-+ i_leftshift, i_new, i_BigDecimal;
-
-
- #line 125 "parser.rl"
-@@ -985,6 +986,19 @@ enum {JSON_float_en_main = 1};
- #line 340 "parser.rl"
-
-
-+static int is_bigdecimal_class(VALUE obj)
-+{
-+ if (cBigDecimal == Qundef) {
-+ if (rb_const_defined(rb_cObject, i_BigDecimal)) {
-+ cBigDecimal = rb_const_get_at(rb_cObject, i_BigDecimal);
-+ }
-+ else {
-+ return 0;
-+ }
-+ }
-+ return obj == cBigDecimal;
-+}
-+
- static char *JSON_parse_float(JSON_Parser *json, char *p, char *pe, VALUE *result)
- {
- int cs = EVIL;
-@@ -1136,7 +1150,11 @@ case 7:
- } else {
- VALUE text;
- text = rb_str_new2(FBUFFER_PTR(json->fbuffer));
-- *result = rb_funcall(json->decimal_class, i_new, 1, text);
-+ if (is_bigdecimal_class(json->decimal_class)) {
-+ *result = rb_funcall(Qnil, i_BigDecimal, 1, text);
-+ } else {
-+ *result = rb_funcall(json->decimal_class, i_new, 1, text);
-+ }
- }
- return p + 1;
- } else {
-@@ -2101,6 +2119,7 @@ void Init_parser(void)
- i_aref = rb_intern("[]");
- i_leftshift = rb_intern("<<");
- i_new = rb_intern("new");
-+ i_BigDecimal = rb_intern("BigDecimal");
- }
-
- /*
-diff --git a/ext/json/parser/parser.rl b/ext/json/parser/parser.rl
-index edab32b78f..d4e7a60e9d 100644
---- a/ext/json/ext/parser/parser.rl
-+++ b/ext/json/ext/parser/parser.rl
-@@ -89,12 +89,13 @@ static int convert_UTF32_to_UTF8(char *buf, UTF32 ch)
-
- static VALUE mJSON, mExt, cParser, eParserError, eNestingError;
- static VALUE CNaN, CInfinity, CMinusInfinity;
-+static VALUE cBigDecimal = Qundef;
-
- static ID i_json_creatable_p, i_json_create, i_create_id, i_create_additions,
- i_chr, i_max_nesting, i_allow_nan, i_symbolize_names,
- i_object_class, i_array_class, i_decimal_class, i_key_p,
- i_deep_const_get, i_match, i_match_string, i_aset, i_aref,
-- i_leftshift, i_new;
-+ i_leftshift, i_new, i_BigDecimal;
-
- %%{
- machine JSON_common;
-@@ -339,6 +340,19 @@ static char *JSON_parse_integer(JSON_Parser *json, char *p, char *pe, VALUE *res
- ) (^[0-9Ee.\-]? @exit );
- }%%
-
-+static int is_bigdecimal_class(VALUE obj)
-+{
-+ if (cBigDecimal == Qundef) {
-+ if (rb_const_defined(rb_cObject, i_BigDecimal)) {
-+ cBigDecimal = rb_const_get_at(rb_cObject, i_BigDecimal);
-+ }
-+ else {
-+ return 0;
-+ }
-+ }
-+ return obj == cBigDecimal;
-+}
-+
- static char *JSON_parse_float(JSON_Parser *json, char *p, char *pe, VALUE *result)
- {
- int cs = EVIL;
-@@ -357,7 +371,11 @@ static char *JSON_parse_float(JSON_Parser *json, char *p, char *pe, VALUE *resul
- } else {
- VALUE text;
- text = rb_str_new2(FBUFFER_PTR(json->fbuffer));
-- *result = rb_funcall(json->decimal_class, i_new, 1, text);
-+ if (is_bigdecimal_class(json->decimal_class)) {
-+ *result = rb_funcall(Qnil, i_BigDecimal, 1, text);
-+ } else {
-+ *result = rb_funcall(json->decimal_class, i_new, 1, text);
-+ }
- }
- return p + 1;
- } else {
-@@ -861,6 +879,7 @@ void Init_parser(void)
- i_aref = rb_intern("[]");
- i_leftshift = rb_intern("<<");
- i_new = rb_intern("new");
-+ i_BigDecimal = rb_intern("BigDecimal");
- }
-
- /*
-diff --git a/test/json/json_parser_test.rb b/test/json/json_parser_test.rb
-index 5f454eb121..68aeb572bb 100644
---- a/tests/json_parser_test.rb
-+++ b/tests/json_parser_test.rb
-@@ -110,8 +110,8 @@ def test_parse_numbers
- end
-
- def test_parse_bigdecimals
-- assert_equal(BigDecimal, JSON.parse('{"foo": 9.01234567890123456789}', decimal_class: BigDecimal)["foo"].class)
-- assert_equal(BigDecimal.new("0.901234567890123456789E1"),JSON.parse('{"foo": 9.01234567890123456789}', decimal_class: BigDecimal)["foo"] )
-+ assert_equal(BigDecimal, JSON.parse('{"foo": 9.01234567890123456789}', decimal_class: BigDecimal)["foo"].class)
-+ assert_equal(BigDecimal("0.901234567890123456789E1"),JSON.parse('{"foo": 9.01234567890123456789}', decimal_class: BigDecimal)["foo"] )
- end
-
- if Array.method_defined?(:permutation)
diff --git a/dev-ruby/json/json-1.8.6-r1.ebuild b/dev-ruby/json/json-1.8.6-r1.ebuild
deleted file mode 100644
index 642bdbdac71d..000000000000
--- a/dev-ruby/json/json-1.8.6-r1.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES TODO README.md README-json-jruby.markdown"
-
-RUBY_FAKEGEM_GEMSPEC="json.gemspec"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A JSON implementation as a Ruby extension"
-HOMEPAGE="https://github.com/flori/json"
-LICENSE="|| ( Ruby GPL-2 )"
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-RDEPEND="${RDEPEND}"
-DEPEND="${DEPEND}
- dev-util/ragel"
-
-ruby_add_bdepend "dev-ruby/rake
- doc? ( dev-ruby/rdoc )"
-
-PATCHES=( "${FILESDIR}/${P}-heap-exposure.patch" )
-
-all_ruby_prepare() {
- # Avoid building the extension twice!
- # And use rdoc instead of sdoc which we don't have packaged
- # And don't call git to list files. We're using the pregenerated spec anyway.
- sed -i \
- -e 's| => :compile||' \
- -e 's| => :clean||' \
- -e 's|sdoc|rdoc|' \
- -e 's|`git ls-files`|""|' \
- Rakefile || die "rakefile fix failed"
-
- # Remove hardcoded and broken -O setting.
- sed -i -e '/^ \(if\|unless\)/,/^ end/ s:^:#:' \
- -e '/^unless/,/^end/ s:^:#:' ext/json/ext/*/extconf.rb || die
-}
-
-each_ruby_compile() {
- # Since 1.5.0 a Java extension is provided but it does not compile.
- if [[ $(basename ${RUBY}) != "jruby" ]]; then
- ${RUBY} -S rake compile || die "extension compile failed"
- fi
-}
-
-each_ruby_test() {
- JSON=pure \
- ${RUBY} -Iext:lib -S testrb-2 tests/test_*.rb || die "pure ruby tests failed"
-
- if [[ $(basename ${RUBY}) != "jruby" ]]; then
- JSON=ext \
- ${RUBY} -Iext:lib -S testrb-2 tests/test_*.rb || die "ext ruby tests failed"
- fi
-}
-
-each_ruby_install() {
- each_fakegem_install
- if [[ $(basename ${RUBY}) != "jruby" ]]; then
- ruby_fakegem_newins ext/json/ext/generator$(get_modname) lib/json/ext/generator$(get_modname)
- ruby_fakegem_newins ext/json/ext/parser$(get_modname) lib/json/ext/parser$(get_modname)
- fi
-}
diff --git a/dev-ruby/json/json-2.1.0-r1.ebuild b/dev-ruby/json/json-2.1.0-r1.ebuild
deleted file mode 100644
index 74c58ff51b81..000000000000
--- a/dev-ruby/json/json-2.1.0-r1.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_GEMSPEC="json.gemspec"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A JSON implementation as a Ruby extension"
-HOMEPAGE="https://github.com/flori/json"
-LICENSE="Ruby"
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="2"
-IUSE=""
-
-RDEPEND="${RDEPEND}"
-DEPEND="${DEPEND}
- dev-util/ragel"
-
-PATCHES=(
- "${FILESDIR}/${P}-ruby26-1.patch"
- "${FILESDIR}/${P}-ruby26-2.patch"
- "${FILESDIR}/${P}-ruby26-3.patch"
-)
-
-ruby_add_bdepend "dev-ruby/rake
- doc? ( dev-ruby/rdoc )"
-
-all_ruby_prepare() {
- # Avoid building the extension twice!
- # And use rdoc instead of sdoc which we don't have packaged
- # And don't call git to list files. We're using the pregenerated spec anyway.
- sed -i \
- -e '/task :test/ s|:compile,||' \
- -e 's| => :clean||' \
- -e 's|sdoc|rdoc|' \
- -e 's|`git ls-files`|""|' \
- Rakefile || die "rakefile fix failed"
-
- # Remove hardcoded and broken -O setting.
- sed -i -e '/^ \(if\|unless\)/,/^ end/ s:^:#:' \
- -e '/^unless/,/^end/ s:^:#:' ext/json/ext/*/extconf.rb || die
-
- # Avoid setting gem since it will not be available yet when installing
- sed -i -e '/gem/ s:^:#:' tests/test_helper.rb || die
-}
-
-each_ruby_configure() {
- for ext in parser generator ; do
- ${RUBY} -Cext/json/ext/${ext} extconf.rb || die
- done
-}
-
-each_ruby_compile() {
- for ext in parser generator ; do
- emake V=1 -Cext/json/ext/${ext}
- cp ext/json/ext/${ext}/${ext}$(get_modname) ext/json/ext/ || die
- done
-}
-
-each_ruby_test() {
- for t in pure ext ; do
- JSON=${T} ${RUBY} -S rake do_test_${t} || die
- done
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- ruby_fakegem_newins ext/json/ext/generator$(get_modname) lib/json/ext/generator$(get_modname)
- ruby_fakegem_newins ext/json/ext/parser$(get_modname) lib/json/ext/parser$(get_modname)
-}
diff --git a/dev-ruby/json/json-2.1.0.ebuild b/dev-ruby/json/json-2.1.0.ebuild
deleted file mode 100644
index 0c96b2f44491..000000000000
--- a/dev-ruby/json/json-2.1.0.ebuild
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_GEMSPEC="json.gemspec"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A JSON implementation as a Ruby extension"
-HOMEPAGE="https://github.com/flori/json"
-LICENSE="Ruby"
-
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="2"
-IUSE=""
-
-RDEPEND="${RDEPEND}"
-DEPEND="${DEPEND}
- dev-util/ragel"
-
-ruby_add_bdepend "dev-ruby/rake
- doc? ( dev-ruby/rdoc )"
-
-all_ruby_prepare() {
- # Avoid building the extension twice!
- # And use rdoc instead of sdoc which we don't have packaged
- # And don't call git to list files. We're using the pregenerated spec anyway.
- sed -i \
- -e '/task :test/ s|:compile,||' \
- -e 's| => :clean||' \
- -e 's|sdoc|rdoc|' \
- -e 's|`git ls-files`|""|' \
- Rakefile || die "rakefile fix failed"
-
- # Remove hardcoded and broken -O setting.
- sed -i -e '/^ \(if\|unless\)/,/^ end/ s:^:#:' \
- -e '/^unless/,/^end/ s:^:#:' ext/json/ext/*/extconf.rb || die
-
- # Avoid setting gem since it will not be available yet when installing
- sed -i -e '/gem/ s:^:#:' tests/test_helper.rb || die
-}
-
-each_ruby_configure() {
- for ext in parser generator ; do
- ${RUBY} -Cext/json/ext/${ext} extconf.rb || die
- done
-}
-
-each_ruby_compile() {
- for ext in parser generator ; do
- emake V=1 -Cext/json/ext/${ext}
- cp ext/json/ext/${ext}/${ext}$(get_modname) ext/json/ext/ || die
- done
-}
-
-each_ruby_test() {
- for t in pure ext ; do
- JSON=${T} ${RUBY} -S rake do_test_${t} || die
- done
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- ruby_fakegem_newins ext/json/ext/generator$(get_modname) lib/json/ext/generator$(get_modname)
- ruby_fakegem_newins ext/json/ext/parser$(get_modname) lib/json/ext/parser$(get_modname)
-}
diff --git a/dev-ruby/json/json-2.2.0.ebuild b/dev-ruby/json/json-2.2.0.ebuild
deleted file mode 100644
index 23dd9b0de55c..000000000000
--- a/dev-ruby/json/json-2.2.0.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_GEMSPEC="json.gemspec"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A JSON implementation as a Ruby extension"
-HOMEPAGE="https://github.com/flori/json"
-LICENSE="Ruby"
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="2"
-IUSE=""
-
-RDEPEND="${RDEPEND}"
-DEPEND="${DEPEND}
- dev-util/ragel"
-
-ruby_add_bdepend "dev-ruby/rake
- doc? ( dev-ruby/rdoc )
- test? ( dev-ruby/test-unit:2 )"
-
-all_ruby_prepare() {
- # Avoid building the extension twice!
- # And use rdoc instead of sdoc which we don't have packaged
- # And don't call git to list files. We're using the pregenerated spec anyway.
- sed -i \
- -e '/task :test/ s|:compile,||' \
- -e 's| => :clean||' \
- -e 's|sdoc|rdoc|' \
- -e 's|`git ls-files`|""|' \
- Rakefile || die "rakefile fix failed"
-
- # Remove hardcoded and broken -O setting.
- sed -i -e '/^ \(if\|unless\)/,/^ end/ s:^:#:' \
- -e '/^unless/,/^end/ s:^:#:' ext/json/ext/*/extconf.rb || die
-
- # Avoid setting gem since it will not be available yet when installing
- sed -i -e '/gem/ s:^:#:' tests/test_helper.rb || die
-}
-
-each_ruby_configure() {
- for ext in parser generator ; do
- ${RUBY} -Cext/json/ext/${ext} extconf.rb || die
- done
-}
-
-each_ruby_compile() {
- for ext in parser generator ; do
- emake V=1 -Cext/json/ext/${ext}
- cp ext/json/ext/${ext}/${ext}$(get_modname) ext/json/ext/ || die
- done
-}
-
-each_ruby_test() {
- for t in pure ext ; do
- JSON=${T} ${RUBY} -S rake do_test_${t} || die
- done
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- ruby_fakegem_newins ext/json/ext/generator$(get_modname) lib/json/ext/generator$(get_modname)
- ruby_fakegem_newins ext/json/ext/parser$(get_modname) lib/json/ext/parser$(get_modname)
-}
diff --git a/dev-ruby/json/json-2.6.3.ebuild b/dev-ruby/json/json-2.6.3.ebuild
new file mode 100644
index 000000000000..73b8f0373091
--- /dev/null
+++ b/dev-ruby/json/json-2.6.3.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_GEMSPEC="json.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/json/ext/parser/extconf.rb ext/json/ext/generator/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="A JSON implementation as a Ruby extension"
+HOMEPAGE="https://github.com/flori/json"
+SRC_URI="https://github.com/flori/json/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="|| ( BSD-2 Ruby )"
+
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="2"
+IUSE=""
+
+RDEPEND="${RDEPEND}"
+DEPEND="${DEPEND}
+ dev-util/ragel"
+
+ruby_add_bdepend "dev-ruby/rake
+ doc? ( dev-ruby/rdoc )
+ test? ( dev-ruby/test-unit:2 )"
+
+all_ruby_prepare() {
+ # Avoid building the extension twice!
+ # And use rdoc instead of sdoc which we don't have packaged
+ # And don't call git to list files. We're using the pregenerated spec anyway.
+ sed -i \
+ -e '/task :test/ s|:compile,||' \
+ -e 's| => :clean||' \
+ -e 's|sdoc|rdoc|' \
+ -e 's|`git ls-files`|""|' \
+ Rakefile || die "rakefile fix failed"
+
+ # Avoid setting gem since it will not be available yet when installing
+ sed -i -e '/gem/ s:^:#:' tests/test_helper.rb || die
+}
diff --git a/dev-ruby/json/json-2.7.1-r1.ebuild b/dev-ruby/json/json-2.7.1-r1.ebuild
new file mode 100644
index 000000000000..e35c42b886fe
--- /dev/null
+++ b/dev-ruby/json/json-2.7.1-r1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_GEMSPEC="json.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/json/ext/parser/extconf.rb ext/json/ext/generator/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/json/ext
+
+inherit ruby-fakegem
+
+DESCRIPTION="A JSON implementation as a Ruby extension"
+HOMEPAGE="https://github.com/flori/json"
+SRC_URI="https://github.com/flori/json/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="|| ( BSD-2 Ruby )"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+RDEPEND="${RDEPEND}"
+DEPEND="${DEPEND}
+ dev-util/ragel"
+
+ruby_add_bdepend "dev-ruby/rake
+ doc? ( dev-ruby/rdoc )
+ test? (
+ dev-ruby/test-unit:2
+ dev-ruby/test-unit-ruby-core
+ )"
+
+all_ruby_prepare() {
+ # Avoid building the extension twice!
+ # And use rdoc instead of sdoc which we don't have packaged
+ # And don't call git to list files. We're using the pregenerated spec anyway.
+ sed -i \
+ -e '/task :test/ s|:compile,||' \
+ -e 's| => :clean||' \
+ -e 's|sdoc|rdoc|' \
+ -e 's|`git ls-files`|""|' \
+ Rakefile || die "rakefile fix failed"
+
+ sed -e 's/__dir__/"."/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid setting gem since it will not be available yet when installing
+ sed -i -e '/gem/ s:^:#:' tests/test_helper.rb || die
+}
diff --git a/dev-ruby/json/json-2.7.2.ebuild b/dev-ruby/json/json-2.7.2.ebuild
new file mode 100644
index 000000000000..35048694bea9
--- /dev/null
+++ b/dev-ruby/json/json-2.7.2.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_GEMSPEC="json.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/json/ext/parser/extconf.rb ext/json/ext/generator/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/json/ext
+
+inherit ruby-fakegem
+
+DESCRIPTION="A JSON implementation as a Ruby extension"
+HOMEPAGE="https://github.com/flori/json"
+SRC_URI="https://github.com/flori/json/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="|| ( BSD-2 Ruby )"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+IUSE="doc test"
+
+DEPEND="${DEPEND}
+ dev-util/ragel"
+
+ruby_add_bdepend "dev-ruby/rake
+ doc? ( dev-ruby/rdoc )
+ test? (
+ dev-ruby/test-unit:2
+ dev-ruby/test-unit-ruby-core
+ )"
+
+all_ruby_prepare() {
+ # Avoid building the extension twice!
+ # And use rdoc instead of sdoc which we don't have packaged
+ # And don't call git to list files. We're using the pregenerated spec anyway.
+ sed -i \
+ -e '/task :test/ s|:compile,||' \
+ -e 's| => :clean||' \
+ -e 's|sdoc|rdoc|' \
+ -e 's|`git ls-files`|""|' \
+ Rakefile || die "rakefile fix failed"
+
+ sed -e 's/__dir__/"."/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid setting gem since it will not be available yet when installing
+ sed -i -e '/gem/ s:^:#:' tests/test_helper.rb || die
+}
diff --git a/dev-ruby/json/metadata.xml b/dev-ruby/json/metadata.xml
index 892c8b0116a2..cb7297daf851 100644
--- a/dev-ruby/json/metadata.xml
+++ b/dev-ruby/json/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/json_schema/Manifest b/dev-ruby/json_schema/Manifest
index 0ae266d1d22c..32740d6deae1 100644
--- a/dev-ruby/json_schema/Manifest
+++ b/dev-ruby/json_schema/Manifest
@@ -1,2 +1 @@
-DIST json_schema-0.20.6.tar.gz 36231 BLAKE2B 79874e4e7af3c856783ad5eb4c3085ea087195d46ebcf41e12302025dd899e70c81808889ad8e417d3aba1384444beafbd747cddaa4740fd6be9fdd7a4aa2907 SHA512 09fc6f5574da27e69cc13e5b081e27a78425c41606d89e794d77b15f56a17f709ee6a0267b247535da1ee9e71f2b4da9e2e278052a5d53c7d6f9ebbe3e314936
-DIST json_schema-0.20.7.tar.gz 36421 BLAKE2B 4110d9781da9a95d0480fa88dfc8d94868574dec0e0a36ad11efedf3c50c98557dc8f561d1df8189ec4bd4453e86acbe5f76a8e2274fadcfae659d0fcc85943e SHA512 e35d3d580078051f3484eddd910744d1be5d1dc77a63b20db418a075a75e71961bd1d7459759ee8b40b1784640e69c626f76c73de02b3a07e37b4233ddb4e661
+DIST json_schema-0.21.0.tar.gz 36563 BLAKE2B a7c0eca9ef738cdd78e6549f7ad8ec41dbde9986f957688411d65a8198c19fa235ff08730370be2397fab7bc0032bef42824bdf276b14b78da54bfd62842266f SHA512 753bcd9715ad384676c9ebb7dcaff7cb63295dc58e31fe51064c6c11ff46fdd32a4c573d6bc4722ce1def290759f28a7706a75efbc1544a56e9585435084ad1d
diff --git a/dev-ruby/json_schema/json_schema-0.20.6.ebuild b/dev-ruby/json_schema/json_schema-0.20.6.ebuild
deleted file mode 100644
index 735e6565181b..000000000000
--- a/dev-ruby/json_schema/json_schema-0.20.6.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md TODO.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="schemas"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A JSON Schema V4 and Hyperschema V4 parser and validator"
-HOMEPAGE="https://github.com/brandur/json_schema"
-SRC_URI="https://github.com/brandur/json_schema/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/^if/,/^end/ s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/json_schema/json_schema-0.20.7.ebuild b/dev-ruby/json_schema/json_schema-0.20.7.ebuild
deleted file mode 100644
index 735e6565181b..000000000000
--- a/dev-ruby/json_schema/json_schema-0.20.7.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md TODO.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="schemas"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A JSON Schema V4 and Hyperschema V4 parser and validator"
-HOMEPAGE="https://github.com/brandur/json_schema"
-SRC_URI="https://github.com/brandur/json_schema/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/^if/,/^end/ s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/json_schema/json_schema-0.21.0.ebuild b/dev-ruby/json_schema/json_schema-0.21.0.ebuild
new file mode 100644
index 000000000000..ef72f4d04593
--- /dev/null
+++ b/dev-ruby/json_schema/json_schema-0.21.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md TODO.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="schemas"
+
+RUBY_FAKEGEM_GEMSPEC="json_schema.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A JSON Schema V4 and Hyperschema V4 parser and validator"
+HOMEPAGE="https://github.com/brandur/json_schema"
+SRC_URI="https://github.com/brandur/json_schema/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/ecma-re-validator )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+ sed -i -e '/^if/,/^end/ s:^:#:' test/test_helper.rb || die
+
+ sed -e '/validates date format successfully/askip "should fail like test after it"' \
+ -i test/json_schema/validator_test.rb || die
+}
diff --git a/dev-ruby/json_schema/metadata.xml b/dev-ruby/json_schema/metadata.xml
index 412bffe19eee..db43d014ef89 100644
--- a/dev-ruby/json_schema/metadata.xml
+++ b/dev-ruby/json_schema/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="rubygems">json_schema</remote-id>
- </upstream>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">brandur/json_schema</remote-id>
+ <remote-id type="rubygems">json_schema</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/jwt/Manifest b/dev-ruby/jwt/Manifest
index 9ca4091af1bc..dcb52c43aef6 100644
--- a/dev-ruby/jwt/Manifest
+++ b/dev-ruby/jwt/Manifest
@@ -1,4 +1,4 @@
-DIST jwt-1.5.6.tar.gz 28586 BLAKE2B d1fa2e735cf93126866c7a5eca14d63ee2646a66b9759fa59ec3191544efb2e0f502c7474e41a1b0d494ed8d692462db64efd718b8c6fa8acb4fcd9b58ab1c32 SHA512 f112bb815ef1af1f77d082574f5157f33469c2caba88716aa16b20dc48d279f8579730f75db81aa31480d6edd5deaa110adbaf3f52372b0397d5822a964a759e
-DIST jwt-2.1.0.tar.gz 34188 BLAKE2B 0022dbb76cd8570aee84b6590f24639320977ae8d6d5fa53ef1d260da12bc732f9fdc01d59f6c994dc36642a7b67786b607ae76aca8044b7d5f5c60dc300966a SHA512 ad65b6ddd5fb7f33efe0036103f8f7482fd35090b8545219141e8885298fb4809d2386fd6e986c9bca0f85c823c9d4a6500785c0c5964db22d023a99c603ec47
-DIST jwt-2.2.0.tar.gz 41060 BLAKE2B 80958a9a88ad0f281f0eb545e584bc1035d1f13ddd0e2c337896300981fcb09849dfdd97828a5820fd241a3387b545c67e600d9148314860380398819f321aff SHA512 66da3ea525041080ed6c1da50e61a7e5ec9c8de70d5dc592c781b89aab7feebcfc419ae4362504b793cdc8857b37797efaf2847eab9425a53628680f5acdc0ce
-DIST jwt-2.2.1.tar.gz 41269 BLAKE2B 51a47d07c9386c42dd22832d4b1c5a7c8c1b599dad15801d8192f023ee73336de4ee1c7c61c76ab9e181b26e168c661090cffca2d8db27a7a2f6a8be40dfb6e1 SHA512 cdcbbbb7af4bccc471a8a8ee3341c8b23d634b3f46522585fa51d228963c58305d16b45f3455c811a86bff13d3e4c3911e54d8a2932228d0feb5133ae43949c6
+DIST jwt-2.7.0.tar.gz 75020 BLAKE2B 2bfa009912f4037dc13672ef6d43557e70bc9a06d399d949a6c5ddee641dc550a218242482ec0a66eb470ab117d1e192dd1ca6fdb5a03926d85f4902d72500e7 SHA512 8e0bb9909d123b7b73fe01fafc4088e45140e417b1bff84b240a317f3dca8085b2b987bd1e93cb1506efc66a1f7371168f8202a590308ee0e4c52820983a9789
+DIST jwt-2.7.1.tar.gz 75003 BLAKE2B 5c43fd78cf22960749358cbfcbfb5c47dce935ef8fd83235137a963572b95b19583399e142136663d113df472ebfb5dd976ce60156b75cceeff387950b6190b0 SHA512 efcdd81bc472a18764e0033f1040e9e2506952cbfb691acfc1ad90a5b34ebac864911e0cfeb28b82ac2ce1da7e3578a6677c0b113d1e45a81a3f4c4f8fed1047
+DIST jwt-2.8.0.tar.gz 71132 BLAKE2B 195bce2da7598c2c16d22db6b0322b6b8b9ab76dba70bc66f88ae44a030acc4a2d70a9864c760ebabb6b6d6ae6256fe291be33aea4e67432258f4243e939d9b6 SHA512 d2ef3505aa38f0337a658fa365258195be118939ec300dc8d17ca6cb950358b2e9a7c64c0dea3ef50df250c70da4e2233a4daccbe8fac97e902e28b7e9dcfa0d
+DIST jwt-2.8.1.tar.gz 71939 BLAKE2B 07eb3df24165c72f13a77dfff658a94574e4fc5b5aed3b56041c58cf9bfb8eba663e76de7eb91e2870bbb8dcdeb79b9c2a7888d29f41feee06e2f07a825b90b9 SHA512 df4ad49f223bba0ace69a37d229868c2deabed5c09fd84e5e4ce4021242cef9e30c07a592b5bf54af6bdcfec552487d808620cf020d242757fc4310d201469c2
diff --git a/dev-ruby/jwt/jwt-1.5.6.ebuild b/dev-ruby/jwt/jwt-1.5.6.ebuild
deleted file mode 100644
index 2169431e738d..000000000000
--- a/dev-ruby/jwt/jwt-1.5.6.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Ruby implementation of JSON Web Token draft 06"
-HOMEPAGE="https://github.com/jwt/ruby-jwt"
-SRC_URI="https://github.com/jwt/ruby-jwt/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-RUBY_S="ruby-jwt-${PV}"
-
-all_ruby_prepare() {
- sed -i -e "/simplecov/ s:^:#:" \
- -e '/^SimpleCov.configure/,/^end/ s:^:#:' \
- -e '/codeclimate/I s:^:#:' \
- spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/jwt/jwt-2.1.0.ebuild b/dev-ruby/jwt/jwt-2.1.0.ebuild
deleted file mode 100644
index 0d2f10ce4f4c..000000000000
--- a/dev-ruby/jwt/jwt-2.1.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Ruby implementation of JSON Web Token draft 06"
-HOMEPAGE="https://github.com/jwt/ruby-jwt"
-SRC_URI="https://github.com/jwt/ruby-jwt/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-RUBY_S="ruby-jwt-${PV}"
-
-all_ruby_prepare() {
- sed -i -e "/simplecov/ s:^:#:" \
- -e '/^SimpleCov.configure/,/^end/ s:^:#:' \
- -e '/codeclimate/I s:^:#:' \
- -e '/codacy/I s:^:#:' \
- spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/jwt/jwt-2.2.0.ebuild b/dev-ruby/jwt/jwt-2.2.0.ebuild
deleted file mode 100644
index 297c32535e27..000000000000
--- a/dev-ruby/jwt/jwt-2.2.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Ruby implementation of JSON Web Token draft 06"
-HOMEPAGE="https://github.com/jwt/ruby-jwt"
-SRC_URI="https://github.com/jwt/ruby-jwt/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-RUBY_S="ruby-jwt-${PV}"
-
-all_ruby_prepare() {
- sed -i -e "/simplecov/ s:^:#:" \
- -e '/^SimpleCov.configure/,/^end/ s:^:#:' \
- -e '/codeclimate/I s:^:#:' \
- -e '/codacy/I s:^:#:' \
- spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/jwt/jwt-2.2.1.ebuild b/dev-ruby/jwt/jwt-2.2.1.ebuild
deleted file mode 100644
index 297c32535e27..000000000000
--- a/dev-ruby/jwt/jwt-2.2.1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Ruby implementation of JSON Web Token draft 06"
-HOMEPAGE="https://github.com/jwt/ruby-jwt"
-SRC_URI="https://github.com/jwt/ruby-jwt/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-RUBY_S="ruby-jwt-${PV}"
-
-all_ruby_prepare() {
- sed -i -e "/simplecov/ s:^:#:" \
- -e '/^SimpleCov.configure/,/^end/ s:^:#:' \
- -e '/codeclimate/I s:^:#:' \
- -e '/codacy/I s:^:#:' \
- spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/jwt/jwt-2.7.0.ebuild b/dev-ruby/jwt/jwt-2.7.0.ebuild
new file mode 100644
index 000000000000..5210e3c5ef34
--- /dev/null
+++ b/dev-ruby/jwt/jwt-2.7.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="ruby-jwt.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby implementation of JSON Web Token draft 06"
+HOMEPAGE="https://github.com/jwt/ruby-jwt"
+SRC_URI="https://github.com/jwt/ruby-jwt/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+RUBY_S="ruby-jwt-${PV}"
+
+ruby_add_bdepend "test? ( dev-ruby/rbnacl )"
+
+all_ruby_prepare() {
+ sed -i -e "/simplecov/ s:^:#:" \
+ -e '/^SimpleCov.start/,/^end/ s:^:#:' \
+ spec/spec_helper.rb || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/jwt/jwt-2.7.1.ebuild b/dev-ruby/jwt/jwt-2.7.1.ebuild
new file mode 100644
index 000000000000..3b4b7861793a
--- /dev/null
+++ b/dev-ruby/jwt/jwt-2.7.1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="ruby-jwt.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby implementation of JSON Web Token draft 06"
+HOMEPAGE="https://github.com/jwt/ruby-jwt"
+SRC_URI="https://github.com/jwt/ruby-jwt/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+RUBY_S="ruby-jwt-${PV}"
+
+ruby_add_bdepend "test? ( dev-ruby/rbnacl )"
+
+all_ruby_prepare() {
+ sed -i -e "/simplecov/ s:^:#:" \
+ -e '/^SimpleCov.start/,/^end/ s:^:#:' \
+ spec/spec_helper.rb || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/jwt/jwt-2.8.0.ebuild b/dev-ruby/jwt/jwt-2.8.0.ebuild
new file mode 100644
index 000000000000..e092f3ff6285
--- /dev/null
+++ b/dev-ruby/jwt/jwt-2.8.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="ruby-jwt.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby implementation of JSON Web Token draft 06"
+HOMEPAGE="https://github.com/jwt/ruby-jwt"
+SRC_URI="https://github.com/jwt/ruby-jwt/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="test"
+
+RUBY_S="ruby-jwt-${PV}"
+
+ruby_add_bdepend "test? ( dev-ruby/rbnacl )"
+
+all_ruby_prepare() {
+ sed -i -e "/simplecov/ s:^:#:" \
+ -e '/^SimpleCov.start/,/^end/ s:^:#:' \
+ spec/spec_helper.rb || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/jwt/jwt-2.8.1.ebuild b/dev-ruby/jwt/jwt-2.8.1.ebuild
new file mode 100644
index 000000000000..e092f3ff6285
--- /dev/null
+++ b/dev-ruby/jwt/jwt-2.8.1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="ruby-jwt.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby implementation of JSON Web Token draft 06"
+HOMEPAGE="https://github.com/jwt/ruby-jwt"
+SRC_URI="https://github.com/jwt/ruby-jwt/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="test"
+
+RUBY_S="ruby-jwt-${PV}"
+
+ruby_add_bdepend "test? ( dev-ruby/rbnacl )"
+
+all_ruby_prepare() {
+ sed -i -e "/simplecov/ s:^:#:" \
+ -e '/^SimpleCov.start/,/^end/ s:^:#:' \
+ spec/spec_helper.rb || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/jwt/metadata.xml b/dev-ruby/jwt/metadata.xml
index 6b514b09b8e4..e7fe56f5d26f 100644
--- a/dev-ruby/jwt/metadata.xml
+++ b/dev-ruby/jwt/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/kirbybase/Manifest b/dev-ruby/kirbybase/Manifest
deleted file mode 100644
index fb5c38be4203..000000000000
--- a/dev-ruby/kirbybase/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST KirbyBase-2.6.1.gem 304128 BLAKE2B 4fabc7d431b607d18b1474ba815ad1d19d3362734ac0a562858ab6deca6193e6fa13e668d17d84b228af4459b75d082aebbb04cc91c6dd7bfa667e9b38613032 SHA512 84a471b77ef9c91d50b61ad9993956fb25739155fe55049c1e20f1c87593f726604801ddb7968b19d8234d1d9ad9b112df53f1a2c8c85ec3559d88eedbd2314f
diff --git a/dev-ruby/kirbybase/kirbybase-2.6.1-r2.ebuild b/dev-ruby/kirbybase/kirbybase-2.6.1-r2.ebuild
deleted file mode 100644
index cf0c809a6905..000000000000
--- a/dev-ruby/kirbybase/kirbybase-2.6.1-r2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME="KirbyBase"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="changes.txt kirbybaserubymanual.html README"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple Ruby DBMS that stores data in plaintext files"
-HOMEPAGE="http://www.netpromi.com/kirbybase_ruby.html"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
-
-each_ruby_test() {
- ${RUBY} -I.:lib -S testrb-2 test/t*.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r examples images
-}
diff --git a/dev-ruby/kirbybase/metadata.xml b/dev-ruby/kirbybase/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/kirbybase/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/kissfft/kissfft-0.0.2-r1.ebuild b/dev-ruby/kissfft/kissfft-0.0.2-r1.ebuild
new file mode 100644
index 000000000000..a3bac09c7f68
--- /dev/null
+++ b/dev-ruby/kissfft/kissfft-0.0.2-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/kissfft/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="ruby interface to kissfft"
+HOMEPAGE="https://rubygems.org/gems/kissfft"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND=""
+
+each_ruby_perpare() {
+ mkdir lib || die
+}
diff --git a/dev-ruby/kissfft/kissfft-0.0.2.ebuild b/dev-ruby/kissfft/kissfft-0.0.2.ebuild
deleted file mode 100644
index 06f07ff6687a..000000000000
--- a/dev-ruby/kissfft/kissfft-0.0.2.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="ruby interface to kissfft"
-HOMEPAGE="https://rubygems.org/gems/kissfft"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-DEPEND=""
-RDEPEND=""
-
-each_ruby_configure() {
- ${RUBY} -Cext/${PN} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/${PN} V=1
- mkdir lib || die
- cp ext/${PN}/${PN}$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/kissfft/metadata.xml b/dev-ruby/kissfft/metadata.xml
index 6ab7b8af92d3..097958a36a9d 100644
--- a/dev-ruby/kissfft/metadata.xml
+++ b/dev-ruby/kissfft/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>zerochaos@gentoo.org</email>
diff --git a/dev-ruby/kpeg/Manifest b/dev-ruby/kpeg/Manifest
index 3bf97fa66a69..5472ec3af188 100644
--- a/dev-ruby/kpeg/Manifest
+++ b/dev-ruby/kpeg/Manifest
@@ -1 +1 @@
-DIST kpeg-1.1.0.gem 57856 BLAKE2B 6aab84aec59c4962ef39f31a7de89a7bb84f0ae2b64327206fefa8bc243e0dd405db121bfe2f50c72b18933c2f4ce7a47a842c741cbd53db1ad73415d41b95dc SHA512 4ca7007bea74485ceb7c3f53eef1cd2e162fed45872f8f078d5b5d2ffd1ecaa0e8fc65ed6f1b220bf6f4642d455a582cb754cdc6350edf856b33d9908510cb66
+DIST kpeg-1.3.3.gem 58368 BLAKE2B 335a5940207f81b2fc2e7de2f0c11fc7bd78073792e15e4e16f041ebefb5e0fec6ebfcffb407550e6e7e73e414b49239ab3eb66f3ad25eae67f1d3da776de4d2 SHA512 7495694cfceb715d5fb2e36e4dde5302a016bf03fd9b65f6ccf0ee8f9f1f856eecd8402cb4bcae4f25a74aba2b8c02f32cb6d7913a0b5397d8fbaccb87bd1110
diff --git a/dev-ruby/kpeg/files/kpeg-1.1.0-utf8.patch b/dev-ruby/kpeg/files/kpeg-1.1.0-utf8.patch
deleted file mode 100644
index 1b565c466c2d..000000000000
--- a/dev-ruby/kpeg/files/kpeg-1.1.0-utf8.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Ensure proper encoding in non-UTF-8 locales.
-
-https://bugs.gentoo.org/640150
-
---- a/lib/kpeg/grammar.rb.orig 2018-05-20 09:26:13.597648830 +0200
-+++ b/lib/kpeg/grammar.rb 2018-05-20 09:28:19.606460712 +0200
-@@ -130,6 +130,10 @@
- end
- end
-
-+ if reg =~ /\{[LMNPSZC][c-u]?\}/ && reg.encoding != Encoding::UTF_8
-+ reg.force_encoding('UTF-8')
-+ end
-+
- @regexp = Regexp.new(reg, flags, lang)
- else
- @regexp = reg
diff --git a/dev-ruby/kpeg/kpeg-1.1.0-r1.ebuild b/dev-ruby/kpeg/kpeg-1.1.0-r1.ebuild
deleted file mode 100644
index 2e7cec56d9ea..000000000000
--- a/dev-ruby/kpeg/kpeg-1.1.0-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple PEG library for Ruby"
-HOMEPAGE="https://github.com/evanphx/kpeg"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-PATCHES=( "${FILESDIR}/${P}-utf8.patch" )
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'gem "minitest", "~>5.0"; Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/kpeg/kpeg-1.3.3.ebuild b/dev-ruby/kpeg/kpeg-1.3.3.ebuild
new file mode 100644
index 000000000000..84720f10865a
--- /dev/null
+++ b/dev-ruby/kpeg/kpeg-1.3.3.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A simple PEG library for Ruby"
+HOMEPAGE="https://github.com/evanphx/kpeg"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'gem "minitest", "~>5.0"; Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/kpeg/metadata.xml b/dev-ruby/kpeg/metadata.xml
index 562c37fb77a6..d60d767a4ffc 100644
--- a/dev-ruby/kpeg/metadata.xml
+++ b/dev-ruby/kpeg/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/kramdown-parser-gfm/Manifest b/dev-ruby/kramdown-parser-gfm/Manifest
new file mode 100644
index 000000000000..1b412ffd7dbc
--- /dev/null
+++ b/dev-ruby/kramdown-parser-gfm/Manifest
@@ -0,0 +1 @@
+DIST kramdown-parser-gfm-1.1.0.gem 11776 BLAKE2B 99a77ea02d0f48421cc6c582629f6cdc7504174867cac8927bdc26fd50f851e294c0f71ab985e9d0d6e595906c458b1f96d06903d6765eabf8b6f617c6303f14 SHA512 5662c1a50da7c8e50fd50afb5fe1dcd3bd63f4282d9940f96bb56266b63841c0b09902ce90eb3162aa89c54047970667b17299b3a7cf475bab2641604aa15d8c
diff --git a/dev-ruby/kramdown-parser-gfm/kramdown-parser-gfm-1.1.0-r1.ebuild b/dev-ruby/kramdown-parser-gfm/kramdown-parser-gfm-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..cdd944d891ed
--- /dev/null
+++ b/dev-ruby/kramdown-parser-gfm/kramdown-parser-gfm-1.1.0-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit edo ruby-fakegem
+
+DESCRIPTION="A kramdown parser for the GFM dialect of Markdown"
+HOMEPAGE="https://github.com/kramdown/parser-gfm"
+LICENSE="MIT"
+
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+SLOT="$(ver_cut 1)"
+IUSE="doc"
+
+ruby_add_rdepend "dev-ruby/kramdown:2"
+ruby_add_bdepend "test? ( dev-ruby/kramdown[latex] )"
+
+all_ruby_prepare() {
+ # Avoid testcase which is no longer compatible with newer rouge
+ rm -f test/testcases/codeblock_fenced.text || die
+
+ # Avoid test broken with current kramdown versions
+ rm -r test/testcases/header_ids.text || die
+}
+
+each_ruby_test() {
+ edo ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/kramdown-parser-gfm/metadata.xml b/dev-ruby/kramdown-parser-gfm/metadata.xml
new file mode 100644
index 000000000000..c880b279c855
--- /dev/null
+++ b/dev-ruby/kramdown-parser-gfm/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">kramdown/parser-gfm</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/kramdown-syntax-coderay/Manifest b/dev-ruby/kramdown-syntax-coderay/Manifest
new file mode 100644
index 000000000000..1642437f57c0
--- /dev/null
+++ b/dev-ruby/kramdown-syntax-coderay/Manifest
@@ -0,0 +1 @@
+DIST kramdown-syntax-coderay-1.0.1.gem 7680 BLAKE2B 66385a651b4a03980984385d09a0076388bcf5f8506ab19267bd75824300c431630280ab5dc9bed41310e69938d2b1d9d42ecef2feace7a5b184c84e9614fdb1 SHA512 bd3e1d919cba7a797f43706f5b8543817654b10abb6c7eed56d99c3a8b75e91f7896db0c04ab999df9f39d21d7dfbc7a39a290e39129812fa5ed3cc8d674abad
diff --git a/dev-ruby/kramdown-syntax-coderay/kramdown-syntax-coderay-1.0.1-r1.ebuild b/dev-ruby/kramdown-syntax-coderay/kramdown-syntax-coderay-1.0.1-r1.ebuild
new file mode 100644
index 000000000000..d3b94f30cd48
--- /dev/null
+++ b/dev-ruby/kramdown-syntax-coderay/kramdown-syntax-coderay-1.0.1-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Uses coderay to highlight code blocks/spans"
+HOMEPAGE="https://github.com/kramdown/syntax-coderay"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm64"
+SLOT="$(ver_cut 1)"
+IUSE="doc"
+
+ruby_add_rdepend ">=dev-ruby/coderay-1.1:0 dev-ruby/kramdown:2"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/kramdown-syntax-coderay/metadata.xml b/dev-ruby/kramdown-syntax-coderay/metadata.xml
new file mode 100644
index 000000000000..28db3894ded5
--- /dev/null
+++ b/dev-ruby/kramdown-syntax-coderay/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">kramdown/syntax-coderay</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/kramdown/Manifest b/dev-ruby/kramdown/Manifest
index b6f42f560b9b..6d06c2bd7b17 100644
--- a/dev-ruby/kramdown/Manifest
+++ b/dev-ruby/kramdown/Manifest
@@ -1 +1 @@
-DIST kramdown-1.17.0.gem 260608 BLAKE2B 56f0abb2c94ab2de31bcd71940c22610efc8143c434295627513735b5983a369b0d9b36a88477a4e0b14bb23a3d314280702655c854cb7134e29bebc1f276966 SHA512 0f98f4234dec41b53d7f116be1075176c7fcbf21621c6f52a9e5b4055a777b01f1a0a912be81a651e85df022e7bab3ac183ee66cd87abeae092cd1920aceff04
+DIST kramdown-2.4.0.gem 122368 BLAKE2B 86b1232583dc88f8a576fb17e3e2ee756f109700634783815e8ba1f722dd8c872f2f6a978d33e1970814530090665eba3693206e57d3f274bb39655a7ac2d208 SHA512 8e52c5cc53d2f0085e30188aa7bf67f92dfe7f0801297c6a45293cca307e3442baa06443638c1161dad4a4aa332cbc5b4f9b6281ba4c6346122a9fff5a3743c7
diff --git a/dev-ruby/kramdown/kramdown-1.17.0.ebuild b/dev-ruby/kramdown/kramdown-1.17.0.ebuild
deleted file mode 100644
index ae8762dcc1ba..000000000000
--- a/dev-ruby/kramdown/kramdown-1.17.0.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md AUTHORS CONTRIBUTERS"
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Yet-another-markdown-parser but fast, pure Ruby, using strict syntax definition"
-HOMEPAGE="https://kramdown.gettalong.org/"
-
-LICENSE="MIT"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64"
-IUSE="latex"
-
-LATEX_DEPS="latex? ( dev-texlive/texlive-latex dev-texlive/texlive-latexextra )"
-RDEPEND+=" ${LATEX_DEPS}"
-DEPEND+=" test? ( ${LATEX_DEPS} app-text/htmltidy )"
-
-ruby_add_rdepend "dev-ruby/prawn:2
- >=dev-ruby/prawn-table-0.2.2 =dev-ruby/prawn-table-0.2*
- >=dev-ruby/rouge-1.8
- >=dev-ruby/itextomml-1.5
- >=dev-ruby/coderay-1.0.0
- >=dev-ruby/ritex-1.0
- >=dev-ruby/stringex-1.5.1"
-
-ruby_add_bdepend "doc? ( dev-ruby/rdoc )
- test? ( >=dev-ruby/minitest-5.0 )"
-
-all_ruby_prepare() {
- if ! use latex; then
- # Remove latex tests. They will fail gracefully when latex isn't
- # present at all, but not when components are missing (most
- # notable ucs.sty).
- sed -i -e '/latex -v/,/^ end/ s:^:#:' test/test_files.rb || die
- fi
-
- # Avoid tests requiring node to be installed with mathjaxnode or
- # unpackaged katex.
- rm -f test/testcases/span/math/{katex,mathjaxnode}* \
- test/testcases/block/15_math/{katex,mathjaxnode}* || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- doman man/man1/kramdown.1
-}
diff --git a/dev-ruby/kramdown/kramdown-2.4.0-r1.ebuild b/dev-ruby/kramdown/kramdown-2.4.0-r1.ebuild
new file mode 100644
index 000000000000..1e939b97f322
--- /dev/null
+++ b/dev-ruby/kramdown/kramdown-2.4.0-r1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md AUTHORS CONTRIBUTERS"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Yet-another-markdown-parser but fast, pure Ruby, using strict syntax definition"
+HOMEPAGE="https://kramdown.gettalong.org/"
+
+LICENSE="MIT"
+
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos"
+IUSE="latex unicode"
+
+LATEX_DEPS="latex? ( dev-texlive/texlive-latex dev-texlive/texlive-latexextra )"
+RDEPEND+=" ${LATEX_DEPS}"
+DEPEND+=" test? (
+ ${LATEX_DEPS}
+ >=app-text/htmltidy-5.0.0
+)"
+
+ruby_add_rdepend "
+ dev-ruby/rexml
+ >=dev-ruby/rouge-3.26.0:2
+ unicode? ( >=dev-ruby/stringex-1.5.1 )
+ !!<dev-ruby/kramdown-1.17.0-r2:0"
+
+ruby_add_bdepend "doc? ( dev-ruby/rdoc )
+ test? ( >=dev-ruby/minitest-5.0 )"
+
+all_ruby_prepare() {
+ if ! use latex; then
+ # Remove latex tests. They will fail gracefully when latex isn't
+ # present at all, but not when components are missing (most
+ # notable ucs.sty).
+ sed -i -e '/latex -v/,/^ end/ s:^:#:' test/test_files.rb || die
+ fi
+
+ if ! use unicode; then
+ rm -f test/testcases/block/04_header/with_auto_ids.* || die
+ fi
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true ${RUBY} -Ilib:. -e "Dir['test/test_*.rb'].each{|f| require f}" || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ doman man/man1/kramdown.1
+}
diff --git a/dev-ruby/kramdown/metadata.xml b/dev-ruby/kramdown/metadata.xml
index eb1e47f2edfb..f81794e60240 100644
--- a/dev-ruby/kramdown/metadata.xml
+++ b/dev-ruby/kramdown/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">gettalong/kramdown</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/launchy/Manifest b/dev-ruby/launchy/Manifest
index 1485928e64b1..24a854f7441e 100644
--- a/dev-ruby/launchy/Manifest
+++ b/dev-ruby/launchy/Manifest
@@ -1 +1,2 @@
-DIST launchy-2.4.3.gem 29184 BLAKE2B d6e8e26f37a811fc994ee762791ea9ddb424dc99d23790905f80416734677535aa8b2087eab233dc1535556c240f260c5995185e10642cd682bbe508e3e30654 SHA512 7c3e0377c9a310b2e7a4d1544b4790f6f959d24b6aba91660e979eb943f4bee641e0b5a44687b693ffe99304ceb96a9a6cf9fed142e231af01135bd2b73321d6
+DIST launchy-2.5.2.gem 30208 BLAKE2B 7e3c3464292026a93953995c5df7dd407b51bd36b363bb0c57fed6ebf2122390348f415273b6ce7ee2dcb89bd444a58458c0a95b84428fec02280654239223e0 SHA512 40777dabd25e6646c6673b33d9d296b66de7976fdf7454c9a7ae809a161ed992572b2232d94591731a7c8405875803172c6fafd09a5570f09e5eb119e23e7773
+DIST launchy-3.0.0.gem 27648 BLAKE2B 71fb8dadc37d9b25f861177c6579c9328786d16e64758d24ca297c8b6a773d307abd26b674c221b9a6318a2edd56e90d889fcf66cb1e3c279d85d045e9b1243d SHA512 6c4a8c320b4d149a3ab322f9cc03c73b7decb50d8dd2a8954bae27f5d265594fc6498af4a3d41a0693d232cbdce3dbbdf76cba3da2199a4bc85d8cda60e59187
diff --git a/dev-ruby/launchy/files/launchy-2.4.2-drop-failing-test.patch b/dev-ruby/launchy/files/launchy-2.4.2-drop-failing-test.patch
deleted file mode 100644
index 00a0d4bf27e0..000000000000
--- a/dev-ruby/launchy/files/launchy-2.4.2-drop-failing-test.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/spec/applications/browser_spec.rb b/spec/applications/browser_spec.rb
-index 8cfa8e7..3886ce3 100644
---- a/spec/applications/browser_spec.rb
-+++ b/spec/applications/browser_spec.rb
-@@ -12,20 +12,7 @@ describe Launchy::Application::Browser do
- ENV.delete( 'KDE_FULL_SESSION' )
- ENV.delete( 'BROWSER' )
- end
-
-- { 'windows' => 'start "launchy" /b' ,
-- 'darwin' => '/usr/bin/open',
-- 'cygwin' => 'cmd /C start "launchy" /b',
--
-- # when running these tests on a linux box, this test will fail
-- 'linux' => nil }.each do |host_os, cmdline|
-- it "when host_os is '#{host_os}' the appropriate 'app_list' method is called" do
-- Launchy.host_os = host_os
-- browser = Launchy::Application::Browser.new
-- browser.app_list.first.must_equal cmdline
-- end
-- end
--
- %w[ linux windows darwin cygwin ].each do |host_os|
- it "the BROWSER environment variable overrides any host defaults on '#{host_os}'" do
- ENV['BROWSER'] = "my_special_browser --new-tab '%s'"
diff --git a/dev-ruby/launchy/launchy-2.4.3-r2.ebuild b/dev-ruby/launchy/launchy-2.4.3-r2.ebuild
deleted file mode 100644
index 061b8cfc357f..000000000000
--- a/dev-ruby/launchy/launchy-2.4.3-r2.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md HISTORY.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Helper class for launching cross-platform applications"
-HOMEPAGE="https://github.com/copiousfreetime/launchy"
-
-LICENSE="ISC"
-
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~x86"
-IUSE=""
-
-# File collision conflict with x11-misc/launchy, bug 545170
-ruby_add_rdepend ">=dev-ruby/addressable-2.3 !!x11-misc/launchy"
-
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.0:5 )"
-
-# This test is expected to fail on linux, drop it
-RUBY_PATCHES=( "${FILESDIR}"/${PN}-2.4.2-drop-failing-test.patch )
-
-all_ruby_prepare() {
- sed -i -e "/[Ss]implecov/d" spec/spec_helper.rb || die
-
- # Avoid tests depending on the current user's desktop environment.
- sed -e '/returns NotFound if it cannot determine/askip "gentoo"' \
- -i spec/detect/nix_desktop_environment_spec.rb || die
- sed -e '/asssumes we open a local file if we have an exception/askip "gentoo"' \
- -i spec/launchy_spec.rb || die
-}
diff --git a/dev-ruby/launchy/launchy-2.5.2-r1.ebuild b/dev-ruby/launchy/launchy-2.5.2-r1.ebuild
new file mode 100644
index 000000000000..af9a65b0ed86
--- /dev/null
+++ b/dev-ruby/launchy/launchy-2.5.2-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md HISTORY.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Helper class for launching cross-platform applications"
+HOMEPAGE="https://github.com/copiousfreetime/launchy"
+
+LICENSE="ISC"
+
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/addressable-2.8"
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.0:5 )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Ss]implecov/d" spec/spec_helper.rb || die
+
+ # Avoid tests depending on the current user's desktop environment.
+ sed -e '/returns NotFound if it cannot determine/askip "gentoo"' \
+ -i spec/detect/nix_desktop_environment_spec.rb || die
+ sed -e '/asssumes we open a local file if we have an exception/askip "gentoo"' \
+ -i spec/launchy_spec.rb || die
+ sed -e "/'darwin'/ s:^:#:" \
+ -i spec/applications/browser_spec.rb || die
+}
diff --git a/dev-ruby/launchy/launchy-2.5.2.ebuild b/dev-ruby/launchy/launchy-2.5.2.ebuild
new file mode 100644
index 000000000000..221221fef512
--- /dev/null
+++ b/dev-ruby/launchy/launchy-2.5.2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md HISTORY.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Helper class for launching cross-platform applications"
+HOMEPAGE="https://github.com/copiousfreetime/launchy"
+
+LICENSE="ISC"
+
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/addressable-2.8"
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.0:5 )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Ss]implecov/d" spec/spec_helper.rb || die
+
+ # Avoid tests depending on the current user's desktop environment.
+ sed -e '/returns NotFound if it cannot determine/askip "gentoo"' \
+ -i spec/detect/nix_desktop_environment_spec.rb || die
+ sed -e '/asssumes we open a local file if we have an exception/askip "gentoo"' \
+ -i spec/launchy_spec.rb || die
+ sed -e "/'darwin'/ s:^:#:" \
+ -i spec/applications/browser_spec.rb || die
+}
diff --git a/dev-ruby/launchy/launchy-3.0.0.ebuild b/dev-ruby/launchy/launchy-3.0.0.ebuild
new file mode 100644
index 000000000000..87bd934b6635
--- /dev/null
+++ b/dev-ruby/launchy/launchy-3.0.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md HISTORY.md"
+
+inherit ruby-fakegem virtualx
+
+DESCRIPTION="Helper class for launching cross-platform applications"
+HOMEPAGE="https://github.com/copiousfreetime/launchy"
+
+LICENSE="ISC"
+
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/addressable-2.8
+ dev-ruby/childprocess:5
+ !<dev-ruby/launchy-2.5.2-r1
+"
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.0:5 )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Ss]implecov/d" spec/spec_helper.rb || die
+
+ # Avoid tests depending on the current user's desktop environment.
+ sed -e '/returns NotFound if it cannot determine/askip "gentoo"' \
+ -i spec/detect/nix_desktop_environment_spec.rb || die
+ sed -e '/asssumes we open a local file if we have an exception/askip "gentoo"' \
+ -i spec/launchy_spec.rb || die
+ sed -e "/'darwin'/ s:^:#:" \
+ -i spec/applications/browser_spec.rb || die
+}
+
+each_ruby_test() {
+ CI=true virtx each_fakegem_test
+}
diff --git a/dev-ruby/launchy/metadata.xml b/dev-ruby/launchy/metadata.xml
index 0895e7ad63dc..e32e29279a3c 100644
--- a/dev-ruby/launchy/metadata.xml
+++ b/dev-ruby/launchy/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/lemon/lemon-0.9.1-r1.ebuild b/dev-ruby/lemon/lemon-0.9.1-r1.ebuild
new file mode 100644
index 000000000000..65a2732648d8
--- /dev/null
+++ b/dev-ruby/lemon/lemon-0.9.1-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Lemon is a unit testing framework"
+HOMEPAGE="https://rubyworks.github.io/lemon/"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+
+ruby_add_bdepend "test? ( dev-ruby/qed )"
+ruby_add_rdepend "
+ dev-ruby/ae
+ >=dev-ruby/ansi-1.3
+ dev-ruby/rubytest
+"
+
+each_ruby_test() {
+ ${RUBY} -S qed || die 'tests failed'
+}
diff --git a/dev-ruby/lemon/lemon-0.9.1.ebuild b/dev-ruby/lemon/lemon-0.9.1.ebuild
deleted file mode 100644
index 72337f4e3f48..000000000000
--- a/dev-ruby/lemon/lemon-0.9.1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Lemon is a unit testing framework"
-HOMEPAGE="https://rubyworks.github.io/lemon/"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/qed )"
-ruby_add_rdepend "
- dev-ruby/ae
- >=dev-ruby/ansi-1.3
- dev-ruby/rubytest"
-
-each_ruby_test() {
- ${RUBY} -S qed || die 'tests failed'
-}
diff --git a/dev-ruby/lemon/metadata.xml b/dev-ruby/lemon/metadata.xml
index 28ab0c15f206..f3c13f7e202f 100644
--- a/dev-ruby/lemon/metadata.xml
+++ b/dev-ruby/lemon/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">rubyworks/lemon</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/leto/Manifest b/dev-ruby/leto/Manifest
new file mode 100644
index 000000000000..0fee1decd10d
--- /dev/null
+++ b/dev-ruby/leto/Manifest
@@ -0,0 +1 @@
+DIST leto-2.1.0.tar.gz 8874 BLAKE2B d7d39a13ad6ceed2d14d7e9c9a39c037115797ce00629a114bad832bc70397a90c3ba86bdc73789b0c0f852df059d15d026338324cd3de9f38a40bf4885d6a9a SHA512 c0bda72b32a96c83ad01281fd2a6e224f504aa45b030e4a203c2df0810bb6dd52dcb9c2633f2514d239a39b14b5c0428f912799eae756373dc0b15051be5e260
diff --git a/dev-ruby/leto/leto-2.1.0.ebuild b/dev-ruby/leto/leto-2.1.0.ebuild
new file mode 100644
index 000000000000..68ea6af43e47
--- /dev/null
+++ b/dev-ruby/leto/leto-2.1.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="leto.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Generic object traverser for Ruby"
+HOMEPAGE="https://github.com/jaynetics/leto"
+SRC_URI="https://github.com/jaynetics/leto/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's:_relative ": "./:' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -e 's/__dir__/"."/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/leto/metadata.xml b/dev-ruby/leto/metadata.xml
new file mode 100644
index 000000000000..8bb4371efdb1
--- /dev/null
+++ b/dev-ruby/leto/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jaynetics/leto</remote-id>
+ <remote-id type="rubygems">leto</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/letter_opener/Manifest b/dev-ruby/letter_opener/Manifest
index 421f6e5ee8a5..5e946ade9bc7 100644
--- a/dev-ruby/letter_opener/Manifest
+++ b/dev-ruby/letter_opener/Manifest
@@ -1,2 +1,3 @@
-DIST letter_opener-1.6.0.tar.gz 10457 BLAKE2B 6fbaaf60a8dcb939ab182767b1e44fa7c314c4320bb6989c8900b8caf496a04d73795f228be07be6676817b9641265cbf744720b3ef3223ad2d1d309a70cb463 SHA512 28418719b22e0e8138084544283f4b54912f7c5acb76881aa3cf60d4a004d2ea807cf17e139a2d28fc925129d5dae86b063a0ce141d2dfba8e2afb6577d61922
-DIST letter_opener-1.7.0.tar.gz 10907 BLAKE2B 0ac93d28a1eb0198d5d5c34a40dd03ac6406093c40d978ef35640893ce6feab672799cd628d4a43520c14277b50201d181aebb18819c8e0e5a561d108b08d3dc SHA512 99a62e4720e1b18085546b5ce09c136da951921e0a6436a37b747d3d8ce6f83fd6e35be23f1da0d49e7859967f06a479530845663665ce4abbac3938d3a4eae0
+DIST letter_opener-1.10.0.tar.gz 12789 BLAKE2B e9c5294f4bce2998b431d5547bf3e52ca219ad8da189f3d36c447465e6730ed5647dacde50e825f67dcb2376256698ec2d571f6470f35d9acec6612859d72ddf SHA512 5675150164c144273d73524c1c4acf62fecaf1495bbdfe5825497080569a2a51d8846c99d7270017c9f540da23fdc6e401626f30c368c8e57c40ee384363db15
+DIST letter_opener-1.8.1.tar.gz 12680 BLAKE2B 3204a5f6a33f722f255f126597655f6209d87764ff9b92ac770a35342906b9d192a62aade992709aaa55baa03046a342f48c4671d3a47a5fd5350bc2e7e7d0e1 SHA512 ce360bcb9f8c07e1319f74187ff85ef799d0a3387f0081ffe3cff2e8b52a9445c22b39fed4b729aee23fb67121c5e47b280ef502f95940aacbb6be31533185be
+DIST letter_opener-1.9.0.tar.gz 12776 BLAKE2B f9ad3358d65e4943f4bfa7d19ab870277d17cbe0ed99f203a262b5070b27386ce709d02e99b9f65ec61715791a599e93c020cfe06033081a2a16e742059b21e2 SHA512 55bed88be20280757347e38cfacc031b178f65a490f26caab5a981b186df8cff1a68dc154bddf091817e415a4760ed2d6487c3453d0df93c406e13924a5715eb
diff --git a/dev-ruby/letter_opener/letter_opener-1.10.0.ebuild b/dev-ruby/letter_opener/letter_opener-1.10.0.ebuild
new file mode 100644
index 000000000000..7e076a2e7904
--- /dev/null
+++ b/dev-ruby/letter_opener/letter_opener-1.10.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Preview mail in the browser instead of sending"
+HOMEPAGE="https://github.com/ryanb/letter_opener"
+SRC_URI="https://github.com/ryanb/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_bdepend "test? ( >=dev-ruby/mail-2.6:* )"
+ruby_add_rdepend "|| ( dev-ruby/launchy:3 >=dev-ruby/launchy-2.2:0 )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile spec/spec_helper.rb || die
+ sed -i -e '4irequire "letter_opener"' spec/spec_helper.rb || die
+
+ # Avoid tests that require some kind of browser
+ sed -i -e '/opens email/askip "requires installed browser"' spec/letter_opener/delivery_method_spec.rb || die
+}
diff --git a/dev-ruby/letter_opener/letter_opener-1.6.0.ebuild b/dev-ruby/letter_opener/letter_opener-1.6.0.ebuild
deleted file mode 100644
index 7dd51f4dbb3f..000000000000
--- a/dev-ruby/letter_opener/letter_opener-1.6.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Preview mail in the browser instead of sending"
-HOMEPAGE="https://github.com/ryanb/letter_opener"
-SRC_URI="https://github.com/ryanb/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/mail-2.6:* )"
-ruby_add_rdepend ">=dev-ruby/launchy-2.2:0"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile spec/spec_helper.rb || die
- sed -i -e '4irequire "letter_opener"' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/letter_opener/letter_opener-1.7.0.ebuild b/dev-ruby/letter_opener/letter_opener-1.7.0.ebuild
deleted file mode 100644
index c305ef3c816a..000000000000
--- a/dev-ruby/letter_opener/letter_opener-1.7.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Preview mail in the browser instead of sending"
-HOMEPAGE="https://github.com/ryanb/letter_opener"
-SRC_URI="https://github.com/ryanb/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/mail-2.6:* )"
-ruby_add_rdepend ">=dev-ruby/launchy-2.2:0"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile spec/spec_helper.rb || die
- sed -i -e '4irequire "letter_opener"' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/letter_opener/letter_opener-1.8.1.ebuild b/dev-ruby/letter_opener/letter_opener-1.8.1.ebuild
new file mode 100644
index 000000000000..8c45e7a6ed57
--- /dev/null
+++ b/dev-ruby/letter_opener/letter_opener-1.8.1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Preview mail in the browser instead of sending"
+HOMEPAGE="https://github.com/ryanb/letter_opener"
+SRC_URI="https://github.com/ryanb/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_bdepend "test? ( >=dev-ruby/mail-2.6:* )"
+ruby_add_rdepend ">=dev-ruby/launchy-2.2:0"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile spec/spec_helper.rb || die
+ sed -i -e '4irequire "letter_opener"' spec/spec_helper.rb || die
+
+ # Avoid tests that require some kind of browser
+ sed -i -e '/opens email/askip "requires installed browser"' spec/letter_opener/delivery_method_spec.rb || die
+}
diff --git a/dev-ruby/letter_opener/letter_opener-1.9.0.ebuild b/dev-ruby/letter_opener/letter_opener-1.9.0.ebuild
new file mode 100644
index 000000000000..c74236c24c85
--- /dev/null
+++ b/dev-ruby/letter_opener/letter_opener-1.9.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Preview mail in the browser instead of sending"
+HOMEPAGE="https://github.com/ryanb/letter_opener"
+SRC_URI="https://github.com/ryanb/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_bdepend "test? ( >=dev-ruby/mail-2.6:* )"
+ruby_add_rdepend ">=dev-ruby/launchy-2.2:0"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile spec/spec_helper.rb || die
+ sed -i -e '4irequire "letter_opener"' spec/spec_helper.rb || die
+
+ # Avoid tests that require some kind of browser
+ sed -i -e '/opens email/askip "requires installed browser"' spec/letter_opener/delivery_method_spec.rb || die
+}
diff --git a/dev-ruby/letter_opener/metadata.xml b/dev-ruby/letter_opener/metadata.xml
index 3a8416435b04..91d77aaf2e1a 100644
--- a/dev-ruby/letter_opener/metadata.xml
+++ b/dev-ruby/letter_opener/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/levenshtein/levenshtein-0.2.2-r2.ebuild b/dev-ruby/levenshtein/levenshtein-0.2.2-r2.ebuild
deleted file mode 100644
index 35246113aa41..000000000000
--- a/dev-ruby/levenshtein/levenshtein-0.2.2-r2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Levenshtein distance algorithm"
-HOMEPAGE="https://github.com/mbleigh/mash"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-each_ruby_configure() {
- ${RUBY} -Cext/levenshtein extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/levenshtein V=1
- cp ext/levenshtein/levenshtein_fast$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib test/test.rb || die
-}
diff --git a/dev-ruby/levenshtein/levenshtein-0.2.2-r3.ebuild b/dev-ruby/levenshtein/levenshtein-0.2.2-r3.ebuild
new file mode 100644
index 000000000000..b88ae985303a
--- /dev/null
+++ b/dev-ruby/levenshtein/levenshtein-0.2.2-r3.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/levenshtein/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Levenshtein distance algorithm"
+HOMEPAGE="https://github.com/mbleigh/mash"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+each_ruby_test() {
+ ${RUBY} -Ilib test/test.rb || die
+}
diff --git a/dev-ruby/levenshtein/metadata.xml b/dev-ruby/levenshtein/metadata.xml
index b4de8743d329..556b5ade1c75 100644
--- a/dev-ruby/levenshtein/metadata.xml
+++ b/dev-ruby/levenshtein/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/libusb/Manifest b/dev-ruby/libusb/Manifest
index e92d2a89f110..bb34cbccd709 100644
--- a/dev-ruby/libusb/Manifest
+++ b/dev-ruby/libusb/Manifest
@@ -1 +1,3 @@
DIST libusb-0.6.4.gem 762368 BLAKE2B daca8049b82cb56fb8cac350f6953ce292c74370bf468497773b34b6017eef9c0252daf2a0213e660db99120a53193ea67943bb1d851ae1ee723ea84dbe289e0 SHA512 433425f9cc2600615a3e4baec962ff0901e9c0eae7a77c410d099f22742995b23bf9c143797b393843b3de26b8336263cd5b3d3d1cdcd8f91266d90201a6a6de
+DIST libusb-0.7.0.gem 819712 BLAKE2B a8d85731b3cff2a5ddf9391a01c54250f11b9933e7ea429031cf8879e22ee79c8c3c8669735b73b7e32ca56c77245588511df1d486a17da67215af2d052082aa SHA512 cd17e40b34bf5015e43435f8f510ce63bc2434c77680dcc8079f123ec4bb12b22b92ae59a7c8646747e5be7f6d14bf3f3a1302549e686ab3735966987311481a
+DIST libusb-0.7.1.gem 815104 BLAKE2B c72bac1f43b9cc70e9d6e2c6e48b9e4fc95f62117d26e0925f5bc5d49fca88f6610254dd0c5ed11368397e2149706f78f9919c26f01c23fa84b97fc07edcd14d SHA512 eed881ea9658911aba93dfd5c72d74ad7e9fc333d890dff872ec5ee3e8262ccbdf0e19f8f4c918d6b67438a72cde51397c652d2b9215dce4f0725cd5c8031ff6
diff --git a/dev-ruby/libusb/libusb-0.6.4-r2.ebuild b/dev-ruby/libusb/libusb-0.6.4-r2.ebuild
new file mode 100644
index 000000000000..e46f91d5705a
--- /dev/null
+++ b/dev-ruby/libusb/libusb-0.6.4-r2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="binding that gives Ruby programmers access to arbitrary USB devices"
+HOMEPAGE="https://github.com/larskanis/libusb"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND+="virtual/libusb:1"
+RDEPEND+="${DEPEND}"
+
+ruby_add_rdepend "dev-ruby/ffi:0"
+ruby_add_bdepend "test? ( dev-ruby/eventmachine )"
+
+all_ruby_prepare() {
+ sed -e '/mini_portile2/d' \
+ -e 's/git ls-files --/find/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid tests that try to open devices or depend on specific hardware
+ rm -f test/test_libusb_{bos,descriptors}.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -I.:lib -e "Dir['test/test_*.rb'].each{|f| require f}" || die
+}
+
+each_ruby_install() {
+ each_fakegem_install
+
+ # This gem includes an extension that does not actually do anything
+ # when using the system libusb, but newer rubygems versions still
+ # require the marker to be present.
+ ruby_fakegem_extensions_installed
+}
diff --git a/dev-ruby/libusb/libusb-0.6.4.ebuild b/dev-ruby/libusb/libusb-0.6.4.ebuild
deleted file mode 100644
index 92f4a629ea74..000000000000
--- a/dev-ruby/libusb/libusb-0.6.4.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="binding that gives Ruby programmers access to arbitrary USB devices"
-HOMEPAGE="https://github.com/larskanis/libusb"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-DEPEND+="virtual/libusb:1"
-RDEPEND+="${DEPEND}"
-
-ruby_add_rdepend "dev-ruby/ffi:0"
-
-all_ruby_prepare() {
- sed -i '/mini_portile2/d' ${PN}.gemspec || die
-
- # Avoid tests that try to open devices
- rm -f test/test_libusb_bos.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -I.:lib -e "Dir['test/test_*.rb'].each{|f| require f}" || die
-}
diff --git a/dev-ruby/libusb/libusb-0.7.0.ebuild b/dev-ruby/libusb/libusb-0.7.0.ebuild
new file mode 100644
index 000000000000..d86ffb6892be
--- /dev/null
+++ b/dev-ruby/libusb/libusb-0.7.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="binding that gives Ruby programmers access to arbitrary USB devices"
+HOMEPAGE="https://github.com/larskanis/libusb"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND+=">=dev-libs/libusb-1.0.27:1"
+RDEPEND+="${DEPEND}"
+
+ruby_add_rdepend "dev-ruby/ffi:0"
+ruby_add_bdepend "test? ( dev-ruby/eventmachine )"
+
+all_ruby_prepare() {
+ sed -e '/mini_portile2/d' \
+ -e 's/git ls-files --/find/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid tests that try to open devices or depend on specific hardware
+ rm -f test/test_libusb_{bos,bulk_stream_transfer,descriptors}.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -I.:lib -e "Dir['test/test_*.rb'].each{|f| require f}" || die
+}
+
+each_ruby_install() {
+ each_fakegem_install
+
+ # This gem includes an extension that does not actually do anything
+ # when using the system libusb, but newer rubygems versions still
+ # require the marker to be present.
+ ruby_fakegem_extensions_installed
+}
diff --git a/dev-ruby/libusb/libusb-0.7.1.ebuild b/dev-ruby/libusb/libusb-0.7.1.ebuild
new file mode 100644
index 000000000000..d86ffb6892be
--- /dev/null
+++ b/dev-ruby/libusb/libusb-0.7.1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="binding that gives Ruby programmers access to arbitrary USB devices"
+HOMEPAGE="https://github.com/larskanis/libusb"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND+=">=dev-libs/libusb-1.0.27:1"
+RDEPEND+="${DEPEND}"
+
+ruby_add_rdepend "dev-ruby/ffi:0"
+ruby_add_bdepend "test? ( dev-ruby/eventmachine )"
+
+all_ruby_prepare() {
+ sed -e '/mini_portile2/d' \
+ -e 's/git ls-files --/find/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid tests that try to open devices or depend on specific hardware
+ rm -f test/test_libusb_{bos,bulk_stream_transfer,descriptors}.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -I.:lib -e "Dir['test/test_*.rb'].each{|f| require f}" || die
+}
+
+each_ruby_install() {
+ each_fakegem_install
+
+ # This gem includes an extension that does not actually do anything
+ # when using the system libusb, but newer rubygems versions still
+ # require the marker to be present.
+ ruby_fakegem_extensions_installed
+}
diff --git a/dev-ruby/libusb/metadata.xml b/dev-ruby/libusb/metadata.xml
index cb6b2f1b0c0e..1e7c1b5e79e2 100644
--- a/dev-ruby/libusb/metadata.xml
+++ b/dev-ruby/libusb/metadata.xml
@@ -1,10 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>zerochaos@gentoo.org</email>
<name>Rick Farina</name>
</maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
<upstream>
<remote-id type="github">larskanis/libusb</remote-id>
</upstream>
diff --git a/dev-ruby/libxml/Manifest b/dev-ruby/libxml/Manifest
deleted file mode 100644
index 61b5f39e00bb..000000000000
--- a/dev-ruby/libxml/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST libxml-ruby-2.9.0.gem 262144 BLAKE2B fb601a0be0aab7fdfd00ac7ef245e52413dbc6e4de71eecb4f0618843ee0621f96ef438df5ec20483a56686ec0ba7ed13fce29b13b779a04313337caa385ae8c SHA512 06ad42ce68c16715fc92a41439c3c27b49fc25b4f8829fac0a27f860d6c3df9a4cb964f1b4677d7587d31c0e5542c4d1c1c25ae3bcfcec889015618d22f6ff3c
diff --git a/dev-ruby/libxml/libxml-2.9.0.ebuild b/dev-ruby/libxml/libxml-2.9.0.ebuild
deleted file mode 100644
index 0d60009df211..000000000000
--- a/dev-ruby/libxml/libxml-2.9.0.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_NAME="libxml-ruby"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc HISTORY"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby libxml with a user friendly API, akin to REXML"
-HOMEPAGE="https://github.com/xml4r/libxml-ruby"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~hppa ppc ppc64 x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND="${RDEPEND} dev-libs/libxml2"
-DEPEND="${DEPEND} dev-libs/libxml2"
-
-ruby_add_bdepend "doc? ( dev-ruby/rdoc )"
-
-all_ruby_prepare() {
- # Remove grancher tasks only needed for publishing the website
- sed -i -e '/grancher/d' -e '/Grancher/,$d' Rakefile || die
-
- # We don't have the hanna template available.
- sed -i -e 's/hanna/rake/' Rakefile || die
-
- # Remove rake-compiler bits since we don't use it
- sed -i -e '/extensiontask/d' -e '/ExtensionTask/,/end/d' -e '/GemPackageTask/,/end/d' Rakefile || die
-
- # Avoid test that fails intermittently
- sed -i -e '/test_get_handler/,/^ end/ s:^:#:' test/tc_error.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -C ext/libxml extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -C ext/libxml V=1
- cp ext/libxml/libxml_ruby.so lib/ || die
-}
diff --git a/dev-ruby/libxml/metadata.xml b/dev-ruby/libxml/metadata.xml
deleted file mode 100644
index 53271e9caf26..000000000000
--- a/dev-ruby/libxml/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">xml4r/libxml-ruby</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/liquid-c/Manifest b/dev-ruby/liquid-c/Manifest
index 5c031f14cc10..2dd6f04c407b 100644
--- a/dev-ruby/liquid-c/Manifest
+++ b/dev-ruby/liquid-c/Manifest
@@ -1,2 +1,2 @@
-DIST liquid-c-3.0.0.gem 15360 BLAKE2B 2fa64ede17b25fb7e83f6b1b74dfc9b2777eda51773e1efdda2fff921ec740f7628e1a87a73896f0adaea5abd48bdb04331fcccd122ac35db5e8ca0ce4092bd9 SHA512 500afb4669555b0e7c8ac2ab46b3bfdcf4db2e67fd89369669125e5d4598edad6dff5270599e659c64abe33c254dde556ff12e74fe35f7baae3bbd9bf9c60b36
-DIST liquid-c-4.0.0.gem 15872 BLAKE2B 8083ae622da685db2aa557ffff0927a900a51c92227ea2523dcf4c408ff4df6f417cbf7fe019383220c3fe580d53f40d496787d8f7328a1e42c3f17a435eebe6 SHA512 a9f3618a7286c6417e9d22cad8c0716f84f33c43e9b12708711f9c4bdebb94a30e408b3dca99cdfe0a7c5b5e5b39ffa79e978ef6b44e5359975e3d74106932be
+DIST liquid-c-4.1.0.gem 48640 BLAKE2B 4fe526b48500349526ebeb2430f87fbb8ccea2f47dcfd32f16e3db803425180955c7ae81a707628ca377fd534882d71e06aece7d4119c16cc1386d4b3b222447 SHA512 72600a5b7962b91d63350adc9f3f355255ad9b9f93b6607064a896e1e3d109a9da897f442f9fc15a7a8c2c26ccb4674e491def9e7531ef9577b790ca9a3eb884
+DIST liquid-c-4.2.0.gem 51200 BLAKE2B 16c01f099263dc415cf185114c0ae8a4953fd2a599897a3ca69e2c220643e3599e908d426bf2ffc1cea8dbfe42d640e8da60282a0b39e0df5611467afab783b1 SHA512 4d349903e507eee30be7d04d2529628fc81a2091b5ac1f15094e2769d93b337769009f38e373378fac07ef32e8bc6f53a721984411ef6f6596363b77d96789d3
diff --git a/dev-ruby/liquid-c/liquid-c-3.0.0.ebuild b/dev-ruby/liquid-c/liquid-c-3.0.0.ebuild
deleted file mode 100644
index 4054dcd847e9..000000000000
--- a/dev-ruby/liquid-c/liquid-c-3.0.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Liquid performance extension in C"
-HOMEPAGE="https://github.com/Shopify/liquid-c"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-MY_PN=${PN/-/_}
-
-ruby_add_rdepend ">=dev-ruby/liquid-3.0.0:*"
-
-all_ruby_prepare() {
- sed -i -e "s/-Werror//" ext/${MY_PN}/extconf.rb || die
- sed -i -e "/[Bb]undler/d" Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/${MY_PN} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${MY_PN}
- cp ext/${MY_PN}/${MY_PN}$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/liquid-c/liquid-c-4.0.0.ebuild b/dev-ruby/liquid-c/liquid-c-4.0.0.ebuild
deleted file mode 100644
index 73f65f75946d..000000000000
--- a/dev-ruby/liquid-c/liquid-c-4.0.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Liquid performance extension in C"
-HOMEPAGE="https://github.com/Shopify/liquid-c"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64"
-IUSE=""
-
-MY_PN=${PN/-/_}
-
-ruby_add_rdepend ">=dev-ruby/liquid-3.0.0:*"
-
-all_ruby_prepare() {
- sed -i -e "s/-Werror//" ext/${MY_PN}/extconf.rb || die
- sed -i -e "/[Bb]undler/d" Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/${MY_PN} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${MY_PN}
- cp ext/${MY_PN}/${MY_PN}$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/liquid-c/liquid-c-4.1.0.ebuild b/dev-ruby/liquid-c/liquid-c-4.1.0.ebuild
new file mode 100644
index 000000000000..0bd66d04ffd9
--- /dev/null
+++ b/dev-ruby/liquid-c/liquid-c-4.1.0.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="test:unit"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+MY_PN=${PN/-/_}
+RUBY_FAKEGEM_EXTENSIONS=(ext/${MY_PN}/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Liquid performance extension in C"
+HOMEPAGE="https://github.com/Shopify/liquid-c"
+
+LICENSE="MIT"
+SLOT="4"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/liquid-5.0.1:*"
+
+all_ruby_prepare() {
+ sed -i -e "s/-Werror//" ext/${MY_PN}/extconf.rb || die
+
+ sed -i \
+ -e "/[Bb]undler/d" \
+ -e "/memcheck/Id" \
+ -e '/extensiontask/ s:^:#:' \
+ Rakefile || die
+ sed -i -e 's/unit: :compile/:unit/' rakelib/unit_test.rake || die
+ rm -r rakelib/compile.rake || die
+
+ sed -i -e 's/MiniTest/Minitest/' test/unit/*_test.rb || die
+
+ # ruby_memcheck is a gem just for running w/ valgrind.
+ # We don't run tests in ebuilds with Valgrind because it's
+ # non-portable and sometimes flaky under sandbox.
+ rm rakelib/integration_test.rake || die
+ sed -i -e '/memcheck/Id' rakelib/unit_test.rake || die
+}
+
+each_ruby_test() {
+ # Backup the original extension and hide it away
+ # The tests won't build if they detect an already-built ext
+ mkdir -p "${T}"/${RUBY}.orig || die
+ mv ext "${T}"/${RUBY}.orig/ext || die
+ cp -r "${WORKDIR}"/all/${P}/ext ext || die
+
+ nonfatal each_fakegem_test --trace || failed_tests=1
+
+ # Always restore the original extension we built, even if
+ # tests failed, as FEATURES=test-fail-continue may be enabled.
+ rm -rf ext || die
+ mv "${T}"/${RUBY}.orig/ext ext || die
+
+ if [[ ${failed_tests} == 1 ]] ; then
+ die "Tests failed with ${RUBY}!"
+ fi
+}
diff --git a/dev-ruby/liquid-c/liquid-c-4.2.0.ebuild b/dev-ruby/liquid-c/liquid-c-4.2.0.ebuild
new file mode 100644
index 000000000000..7e785cccf7ee
--- /dev/null
+++ b/dev-ruby/liquid-c/liquid-c-4.2.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="test:unit"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+MY_PN=${PN/-/_}
+RUBY_FAKEGEM_EXTENSIONS=(ext/${MY_PN}/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Liquid performance extension in C"
+HOMEPAGE="https://github.com/Shopify/liquid-c"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64"
+
+ruby_add_rdepend ">=dev-ruby/liquid-5.0.1:*"
+
+all_ruby_prepare() {
+ sed -i -e "s/-Werror//" ext/${MY_PN}/extconf.rb || die
+
+ sed -i \
+ -e "/[Bb]undler/d" \
+ -e "/memcheck/Id" \
+ -e '/extensiontask/ s:^:#:' \
+ Rakefile || die
+ sed -i -e 's/unit: :compile/:unit/' rakelib/unit_test.rake || die
+ rm -r rakelib/compile.rake || die
+
+ sed -i -e 's/MiniTest/Minitest/' test/unit/*_test.rb || die
+
+ # ruby_memcheck is a gem just for running w/ valgrind.
+ # We don't run tests in ebuilds with Valgrind because it's
+ # non-portable and sometimes flaky under sandbox.
+ rm rakelib/integration_test.rake || die
+ sed -i -e '/memcheck/Id' rakelib/unit_test.rake || die
+}
+
+each_ruby_test() {
+ # Backup the original extension and hide it away
+ # The tests won't build if they detect an already-built ext
+ mkdir -p "${T}"/${RUBY}.orig || die
+ mv ext "${T}"/${RUBY}.orig/ext || die
+ cp -r "${WORKDIR}"/all/${P}/ext ext || die
+
+ nonfatal each_fakegem_test --trace || failed_tests=1
+
+ # Always restore the original extension we built, even if
+ # tests failed, as FEATURES=test-fail-continue may be enabled.
+ rm -rf ext || die
+ mv "${T}"/${RUBY}.orig/ext ext || die
+
+ if [[ ${failed_tests} == 1 ]] ; then
+ die "Tests failed with ${RUBY}!"
+ fi
+}
diff --git a/dev-ruby/liquid-c/metadata.xml b/dev-ruby/liquid-c/metadata.xml
index 3ca6f71352e4..b67e14783be7 100644
--- a/dev-ruby/liquid-c/metadata.xml
+++ b/dev-ruby/liquid-c/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/liquid/Manifest b/dev-ruby/liquid/Manifest
index 2961ed92367d..5a4897c0df9d 100644
--- a/dev-ruby/liquid/Manifest
+++ b/dev-ruby/liquid/Manifest
@@ -1,5 +1,3 @@
-DIST liquid-2.6.2.gem 46592 BLAKE2B a20d7bd263dc983c5f23316ad4779ba50ea6a75f53602f687269d3a2b3644bdeb049de047fa69f29d919c84fa429fc343c989f6f014d5b739ca7cc523e7576f1 SHA512 bd369fe2e9bd89013f9bbd4a7f721b2db4376ac02c5ea4b4da6a08fa6af24fe782fae38b32d250edde548980f042c7187a673da47fa8d5569ed0959fd1569827
-DIST liquid-3.0.6.tar.gz 88159 BLAKE2B 58cc0efbf45622470b3edb1e6e04af4014b670490b577f53af1f4f87498ff3fd507784ad524bb03ed97cdee9192832f1eae5b2b9ba9ae32db1761ff2b2d83a07 SHA512 66e1be904f3dcd18e345bf3fedf314fdf4ae84a0e1354859ee8e33f82386e929b4c871ec3c37c2c752358d76017fb5b1fef59f4bad04d3e7e89672146a3f8229
-DIST liquid-4.0.1.tar.gz 99014 BLAKE2B dfe5b4bb76f67f070beff22f19fbf1c3825489d258493099522c78f370497cafddb70e895a3d0d9a84b9ec8ad4ef7343bfcea113a508fb7baeac5b5dd7f23661 SHA512 6d8a792ea2fa5cd723e826dc9dd26be60179ab3405e9f74bc47a068b863aa0233e3a570faff65c19e669663c4f30201cb4144d2ab4ed23176d695c3d7f0553d0
-DIST liquid-4.0.2.tar.gz 102151 BLAKE2B bd9f37c3d7c209edacdf8a1565ae235b0e18b5d15c02279de8c604a84cd1a000f96199e533d41597036cd7d3f8e5f3b67fc1b45d5eec7285484e5e283796fbcc SHA512 cdb8c808517d1e257202a36f672a1d67269ba44aa474a315699cab4ee67b766b01e2a1ae8e638d209adfaa87c7bb6438a1a47abb5ae925c78cfef944ec9d2d7c
DIST liquid-4.0.3.tar.gz 102242 BLAKE2B 4a025fd8501e237f7619ed989e185a6c55a234577c99423857a826b616c40625c1fd205d998a368488306a88c0b84fc3d3ac59bd01c1231055aa9f60a3d14338 SHA512 5aed3b98fa486a00744e0225f7a3b8004be8ded1e3347f9118fd062684fe33b725b84d1f88bdd5e881399e6efa60b4aa32f57cf10f4583aa27ec8c8288b52bf9
+DIST liquid-5.4.0.tar.gz 123661 BLAKE2B 96fbd0d92408e1deecfd198de4ab59287820e4f8d6e8cfeb080163781c82421a1fe5286354136a787db244c3821fd3e470d2ecdcddbde3344aa71be79799894d SHA512 45b394aa945206b200a2aa30e2e0b0f0937e7e59bd213f45f0484f2f6f3d68fca96f93a7ae64ac05249439048842b53e20a58d73be88470ed94cf40cc65c4cfb
+DIST liquid-5.5.0.tar.gz 129799 BLAKE2B d46c93ca0d968b080d1bda363badb629499fa3db6aeec0c73dc7c60ba82e70f478cf136ceddb3d600dae4e2645e9a6d61521695515f0cf5253c99d3e006bce98 SHA512 6afa798052371356100a22936ba716e285302080111e833ba48927bc63b358e6d6d8fe027ad6410d2171bef59f71e30f7ddd414bda3e45c91a0e2e459aa4919e
diff --git a/dev-ruby/liquid/files/liquid-4.0.3-ruby30.patch b/dev-ruby/liquid/files/liquid-4.0.3-ruby30.patch
new file mode 100644
index 000000000000..a25f4e217929
--- /dev/null
+++ b/dev-ruby/liquid/files/liquid-4.0.3-ruby30.patch
@@ -0,0 +1,23 @@
+From abfcec9a57543d9e1bdda7dab195607f8574d8b4 Mon Sep 17 00:00:00 2001
+From: Dylan Thacker-Smith <Dylan.Smith@shopify.com>
+Date: Tue, 31 Mar 2020 10:19:25 -0400
+Subject: [PATCH] Fix ParseTreeVisitorTest for ruby 3 compatibility
+
+(cherry picked from commit 81149344a5ba53b30e8ab7d77d605dc484a0a3ff)
+---
+ test/integration/parse_tree_visitor_test.rb | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/test/integration/parse_tree_visitor_test.rb b/test/integration/parse_tree_visitor_test.rb
+index 6ad6a2d00..933dbc3b0 100644
+--- a/test/integration/parse_tree_visitor_test.rb
++++ b/test/integration/parse_tree_visitor_test.rb
+@@ -238,7 +238,7 @@ def test_preserve_tree_structure
+ def traversal(template)
+ ParseTreeVisitor
+ .for(Template.parse(template).root)
+- .add_callback_for(VariableLookup, &:name)
++ .add_callback_for(VariableLookup) { |node| node.name } # rubocop:disable Style/SymbolProc
+ end
+
+ def visit(template)
diff --git a/dev-ruby/liquid/liquid-2.6.2.ebuild b/dev-ruby/liquid/liquid-2.6.2.ebuild
deleted file mode 100644
index cf42aa9c4b8c..000000000000
--- a/dev-ruby/liquid/liquid-2.6.2.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Template engine for Ruby"
-HOMEPAGE="http://www.liquidmarkup.org/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~x86-fbsd"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib:test test/liquid/*_test.rb
-}
diff --git a/dev-ruby/liquid/liquid-3.0.6.ebuild b/dev-ruby/liquid/liquid-3.0.6.ebuild
deleted file mode 100644
index db85e35d7ba6..000000000000
--- a/dev-ruby/liquid/liquid-3.0.6.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-inherit ruby-fakegem
-
-SRC_URI="https://github.com/Shopify/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-DESCRIPTION="Template engine for Ruby"
-HOMEPAGE="http://www.liquidmarkup.org/"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest
- dev-ruby/spy )"
diff --git a/dev-ruby/liquid/liquid-4.0.1.ebuild b/dev-ruby/liquid/liquid-4.0.1.ebuild
deleted file mode 100644
index c00ee1fe0cbb..000000000000
--- a/dev-ruby/liquid/liquid-4.0.1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-inherit ruby-fakegem
-
-SRC_URI="https://github.com/Shopify/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-DESCRIPTION="Template engine for Ruby"
-HOMEPAGE="https://shopify.github.io/liquid/"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest
- dev-ruby/spy )"
-
-all_ruby_prepare() {
- # liquid-c is not packaged
- sed -i -e '/LIQUID-C/ s:^:#:' Rakefile || die
-
- # Avoid test requiring unpackaged stackprof
- sed -i -e '/assert_no_object_allocations/askip "unpackaged stackprof"' test/unit/context_unit_test.rb
-}
diff --git a/dev-ruby/liquid/liquid-4.0.2.ebuild b/dev-ruby/liquid/liquid-4.0.2.ebuild
deleted file mode 100644
index c00ee1fe0cbb..000000000000
--- a/dev-ruby/liquid/liquid-4.0.2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-inherit ruby-fakegem
-
-SRC_URI="https://github.com/Shopify/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-DESCRIPTION="Template engine for Ruby"
-HOMEPAGE="https://shopify.github.io/liquid/"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest
- dev-ruby/spy )"
-
-all_ruby_prepare() {
- # liquid-c is not packaged
- sed -i -e '/LIQUID-C/ s:^:#:' Rakefile || die
-
- # Avoid test requiring unpackaged stackprof
- sed -i -e '/assert_no_object_allocations/askip "unpackaged stackprof"' test/unit/context_unit_test.rb
-}
diff --git a/dev-ruby/liquid/liquid-4.0.3-r1.ebuild b/dev-ruby/liquid/liquid-4.0.3-r1.ebuild
new file mode 100644
index 000000000000..639c5768b21c
--- /dev/null
+++ b/dev-ruby/liquid/liquid-4.0.3-r1.ebuild
@@ -0,0 +1,36 @@
+# 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_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+RUBY_FAKEGEM_GEMSPEC="liquid.gemspec"
+
+inherit ruby-fakegem
+
+SRC_URI="https://github.com/Shopify/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+DESCRIPTION="Template engine for Ruby"
+HOMEPAGE="https://shopify.github.io/liquid/"
+
+LICENSE="MIT"
+SLOT="4"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+PATCHES=( "${FILESDIR}/${P}-ruby30.patch" )
+
+ruby_add_bdepend "test? ( dev-ruby/minitest
+ dev-ruby/spy )"
+
+all_ruby_prepare() {
+ # liquid-c is not packaged
+ sed -i -e '/LIQUID-C/ s:^:#:' Rakefile || die
+
+ # Avoid test requiring unpackaged stackprof
+ sed -i -e '/assert_no_object_allocations/askip "unpackaged stackprof"' test/unit/context_unit_test.rb || die
+
+ # Avoid tests using taint since this is no longer supported in ruby 2.7+
+ sed -i -e '/test.*tainted_attr/askip "taint is no longer supported"' test/integration/drop_test.rb || die
+}
diff --git a/dev-ruby/liquid/liquid-4.0.3.ebuild b/dev-ruby/liquid/liquid-4.0.3.ebuild
deleted file mode 100644
index c00ee1fe0cbb..000000000000
--- a/dev-ruby/liquid/liquid-4.0.3.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-inherit ruby-fakegem
-
-SRC_URI="https://github.com/Shopify/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-DESCRIPTION="Template engine for Ruby"
-HOMEPAGE="https://shopify.github.io/liquid/"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest
- dev-ruby/spy )"
-
-all_ruby_prepare() {
- # liquid-c is not packaged
- sed -i -e '/LIQUID-C/ s:^:#:' Rakefile || die
-
- # Avoid test requiring unpackaged stackprof
- sed -i -e '/assert_no_object_allocations/askip "unpackaged stackprof"' test/unit/context_unit_test.rb
-}
diff --git a/dev-ruby/liquid/liquid-5.4.0.ebuild b/dev-ruby/liquid/liquid-5.4.0.ebuild
new file mode 100644
index 000000000000..ad5ef185e795
--- /dev/null
+++ b/dev-ruby/liquid/liquid-5.4.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="liquid.gemspec"
+
+inherit ruby-fakegem
+
+SRC_URI="https://github.com/Shopify/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+DESCRIPTION="Template engine for Ruby"
+HOMEPAGE="https://shopify.github.io/liquid/"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ # liquid-c is not packaged
+ sed -i -e '/LIQUID_C/ s:^:#:' Rakefile || die
+
+ # Avoid test requiring unpackaged stackprof
+ sed -i -e '/assert_no_object_allocations/askip "unpackaged stackprof"' test/integration/context_test.rb || die
+}
diff --git a/dev-ruby/liquid/liquid-5.5.0.ebuild b/dev-ruby/liquid/liquid-5.5.0.ebuild
new file mode 100644
index 000000000000..5db3f91925e7
--- /dev/null
+++ b/dev-ruby/liquid/liquid-5.5.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="liquid.gemspec"
+
+inherit ruby-fakegem
+
+SRC_URI="https://github.com/Shopify/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+DESCRIPTION="Template engine for Ruby"
+HOMEPAGE="https://shopify.github.io/liquid/"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ # liquid-c is not packaged
+ sed -i -e '/LIQUID_C/ s:^:#:' Rakefile || die
+
+ # Avoid test requiring unpackaged stackprof
+ sed -i -e '/assert_no_object_allocations/askip "unpackaged stackprof"' test/integration/context_test.rb || die
+}
diff --git a/dev-ruby/liquid/metadata.xml b/dev-ruby/liquid/metadata.xml
index 243cd6d1a904..d5e3a853414b 100644
--- a/dev-ruby/liquid/metadata.xml
+++ b/dev-ruby/liquid/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/listen/Manifest b/dev-ruby/listen/Manifest
index e3e6287b8edd..6ac01a9a06df 100644
--- a/dev-ruby/listen/Manifest
+++ b/dev-ruby/listen/Manifest
@@ -1,3 +1,2 @@
-DIST listen-0.7.3-git.tgz 34831 BLAKE2B 38ad9805080606f17cfe4073ce503985ee4a131258e4887c06901ac42da6ee5a987f1db97c26747e3f518d56336b074b485ac1e4c4d3cee6cf15ff9586e9a090 SHA512 9d4297f24b63449f3293f750d903170793b31c2a7d0a87c16bc4c3b741b993e0cc06ec5408d7a2c706505641fa3cd3f070cc09e7a7a5d358d8f18f26b41fb408
-DIST listen-1.3.1-git.tgz 35521 BLAKE2B 6b93daff2b3ba221d0c0f196c67353963e983610dd9deb3409c8ad270f7221d50e9eefee826c16c51ac0361cf7f5da727db216b1bd92a02077b0bee580fa368c SHA512 4676d030a3e676249a221cf4a136ce69651009ce5855821924be184460e404e4f33026627c9d524156a89344c826b48a690a249f1059493d7d214b922381bdd0
-DIST listen-3.1.5.tar.gz 51250 BLAKE2B 8ed941ed72293fad3327f2fb939920f82b02a9c0f25e8b1273961d9bff64830d619e9e97c184e353b69a78fe38be01a2fd2f0453cf94d3ca9fff66e40d18f59d SHA512 132266485d70002da5bd1e680530331db6b74e8ea12011d60a6ba7df0ec045459b5b3a6305bb2ea6a80ff6a4a1244ef935a4143f6c8709df7a176d6db69da08a
+DIST listen-3.8.0.tar.gz 56514 BLAKE2B 5b316487defe902f755bc53e40052289d03052d3fc54cf2431bb833204ea0fdee9dffa26e2d6d78267f96214a6d1ca3f097c175ec6ccf9cd3037eff64abd3169 SHA512 9f1cb065f3db96d3d416ba255b327a10dfdc6cd72f1509bd4fa95a157966bc436282fd37cf16df645ede1594e8eda62c7cc0934936db9d118d39a55521e7c35e
+DIST listen-3.9.0.tar.gz 57903 BLAKE2B 819ba309ab78179590946eca5cceb0bd8a82411f3b8af63c25a3735a7c33b1560b36d48fd0f1d4617fa84927adff0ff74cffa9682835c49089f545af68cabefb SHA512 abec4720db6331da5b3d7ea998a9e2cc77e55ad4919b473c0172f6e852dcb376671379b79cad88fb5a850cd2ba2178d36a3bd2534cd81408186805497d58238f
diff --git a/dev-ruby/listen/files/listen-3.1.5-ruby26.patch b/dev-ruby/listen/files/listen-3.1.5-ruby26.patch
deleted file mode 100644
index f90ab1ed213c..000000000000
--- a/dev-ruby/listen/files/listen-3.1.5-ruby26.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 2908365366792ac3ba010fa32bc3be2beaed451a Mon Sep 17 00:00:00 2001
-From: Samuel Williams <samuel.williams@oriontransfer.co.nz>
-Date: Sun, 16 Dec 2018 11:32:45 +1300
-Subject: [PATCH] Use raw Pathname to fix Linux specs.
-
----
- lib/listen/adapter/linux.rb | 2 +-
- spec/lib/listen/adapter/linux_spec.rb | 12 +-----------
- 2 files changed, 2 insertions(+), 12 deletions(-)
-
-diff --git a/spec/lib/listen/adapter/linux_spec.rb b/spec/lib/listen/adapter/linux_spec.rb
-index d77f0c0..da48319 100644
---- a/spec/lib/listen/adapter/linux_spec.rb
-+++ b/spec/lib/listen/adapter/linux_spec.rb
-@@ -10,17 +10,7 @@
- end
-
- if linux?
-- let(:dir1) do
-- instance_double(
-- Pathname,
-- 'dir1',
-- to_s: '/foo/dir1',
-- cleanpath: real_dir1
-- )
-- end
--
-- # just so cleanpath works in above double
-- let(:real_dir1) { instance_double(Pathname, 'dir1', to_s: '/foo/dir1') }
-+ let(:dir1) {Pathname.new("/foo/dir1")}
-
- let(:config) { instance_double(Listen::Adapter::Config) }
- let(:queue) { instance_double(Queue) }
diff --git a/dev-ruby/listen/listen-0.7.3-r2.ebuild b/dev-ruby/listen/listen-0.7.3-r2.ebuild
deleted file mode 100644
index 40d05b507c32..000000000000
--- a/dev-ruby/listen/listen-0.7.3-r2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Listens to file modifications and notifies you about the changes"
-HOMEPAGE="https://github.com/guard/listen"
-SRC_URI="https://github.com/guard/listen/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 x86 ~x64-macos"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rb-inotify-0.9.0"
-
-all_ruby_prepare() {
- # Avoid a spec with incorrect stubbing.
- sed -i -e '/loads all the registerd dependencies/,/ end/ s:^:#:' \
- -e '/return true when dependencies are loaded/,/ end/ s:^:#:' \
- spec/listen/dependency_manager_spec.rb || die
-}
diff --git a/dev-ruby/listen/listen-1.3.1-r4.ebuild b/dev-ruby/listen/listen-1.3.1-r4.ebuild
deleted file mode 100644
index 582ffb55e35f..000000000000
--- a/dev-ruby/listen/listen-1.3.1-r4.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Listens to file modifications and notifies you about the changes"
-HOMEPAGE="https://github.com/guard/listen"
-SRC_URI="https://github.com/guard/listen/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="amd64 arm ~arm64 ~hppa ppc ppc64 x86 ~amd64-linux ~x64-macos"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rb-inotify-0.9.0"
-
-all_ruby_prepare() {
- sed -i -e '/[Cc]overalls/d' spec/spec_helper.rb || die
- # Drop failing test
- sed -i -e '/#85/,+17d' spec/listen/directory_record_spec.rb || die
-
- # Drop dependencies for file system events not available on Gentoo.
- sed -i -e '/\(fsevent\|kqueue\)/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/listen/listen-3.1.5-r3.ebuild b/dev-ruby/listen/listen-3.1.5-r3.ebuild
deleted file mode 100644
index e92709eaed22..000000000000
--- a/dev-ruby/listen/listen-3.1.5-r3.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-SRC_URI="https://github.com/guard/listen/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-DESCRIPTION="Listens to file modifications and notifies you about the changes"
-HOMEPAGE="https://github.com/guard/listen"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE="test"
-
-# Block on other packages trying to install a /usr/bin/listen
-RDEPEND+="!!media-radio/ax25-apps !!<dev-ruby/listen-2.8.6-r1:2"
-
-ruby_add_rdepend ">=dev-ruby/rb-inotify-0.9.7 >=dev-ruby/ruby_dep-1.2:1"
-
-ruby_add_bdepend "test? ( dev-ruby/thor )"
-
-PATCHES=( "${FILESDIR}/${P}-ruby26.patch" )
-
-all_ruby_prepare() {
- rm -f Gemfile || die
- sed -i -e "/git/,+3d" -e "/rb-fsevent/d" ${PN}.gemspec || die
- sed -i -e "/rb-fsevent/d" lib/listen/adapter/darwin.rb || die
- rm -rf spec/lib/listen/adapter/darwin_spec.rb || die
-}
-
-each_ruby_prepare() {
- mkdir spec/.fixtures || die
-}
-
-each_ruby_test() {
- RSPEC_VERSION=3 ruby-ng_rspec
- rm -rf spec/.fixtures || die
-}
diff --git a/dev-ruby/listen/listen-3.8.0.ebuild b/dev-ruby/listen/listen-3.8.0.ebuild
new file mode 100644
index 000000000000..edde4af7f224
--- /dev/null
+++ b/dev-ruby/listen/listen-3.8.0.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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
+
+SRC_URI="https://github.com/guard/listen/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+DESCRIPTION="Listens to file modifications and notifies you about the changes"
+HOMEPAGE="https://github.com/guard/listen"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
+IUSE="test"
+
+# Block on other packages trying to install a /usr/bin/listen
+RDEPEND+="!!media-radio/ax25-apps"
+
+ruby_add_rdepend ">=dev-ruby/rb-inotify-0.9.10"
+
+ruby_add_bdepend "test? ( dev-ruby/thor )"
+
+all_ruby_prepare() {
+ rm -f Gemfile || die
+ sed -i -e "/git/,+3d" -e "/rb-fsevent/d" ${PN}.gemspec || die
+ sed -i -e "/rb-fsevent/d" lib/listen/adapter/darwin.rb || die
+ rm -rf spec/lib/listen/adapter/darwin_spec.rb || die
+}
+
+each_ruby_prepare() {
+ mkdir spec/.fixtures || die
+}
+
+each_ruby_test() {
+ RSPEC_VERSION=3 ruby-ng_rspec
+ rm -rf spec/.fixtures || die
+}
diff --git a/dev-ruby/listen/listen-3.9.0.ebuild b/dev-ruby/listen/listen-3.9.0.ebuild
new file mode 100644
index 000000000000..3f7e818cef6c
--- /dev/null
+++ b/dev-ruby/listen/listen-3.9.0.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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
+
+SRC_URI="https://github.com/guard/listen/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+DESCRIPTION="Listens to file modifications and notifies you about the changes"
+HOMEPAGE="https://github.com/guard/listen"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="test"
+
+# Block on other packages trying to install a /usr/bin/listen
+RDEPEND+="!!media-radio/ax25-apps"
+
+ruby_add_rdepend ">=dev-ruby/rb-inotify-0.9.10"
+
+ruby_add_bdepend "test? ( dev-ruby/thor )"
+
+all_ruby_prepare() {
+ rm -f Gemfile || die
+ sed -i -e "/git/,+3d" -e "/rb-fsevent/d" ${PN}.gemspec || die
+ sed -i -e "/rb-fsevent/d" lib/listen/adapter/darwin.rb || die
+ rm -rf spec/lib/listen/adapter/darwin_spec.rb || die
+}
+
+each_ruby_prepare() {
+ mkdir spec/.fixtures || die
+}
+
+each_ruby_test() {
+ RSPEC_VERSION=3 ruby-ng_rspec
+ rm -rf spec/.fixtures || die
+}
diff --git a/dev-ruby/listen/metadata.xml b/dev-ruby/listen/metadata.xml
index 5422b4c5a805..073280def565 100644
--- a/dev-ruby/listen/metadata.xml
+++ b/dev-ruby/listen/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/litc/Manifest b/dev-ruby/litc/Manifest
deleted file mode 100644
index 994c12971abd..000000000000
--- a/dev-ruby/litc/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST litc-1.0.3.gem 9216 BLAKE2B b7ca4224e3a0fe0d5b109ed1b2dd07e93faacb13779ec245b1e6e2357cee54af137d5fee0685705efdb10c19131ff9eb8142fc8e9a77eedb7702ee441300035e SHA512 7fb36a051d0056a8ae2c7c48a404b8fc71b3e8f40d6487c7ba5c8d3896ff6c936604c47f8ccbe011c4ba7c1fc4ef863f9a551cdb06f40a93896692b1375b8b31
diff --git a/dev-ruby/litc/litc-1.0.3-r1.ebuild b/dev-ruby/litc/litc-1.0.3-r1.ebuild
deleted file mode 100644
index 11587aedd582..000000000000
--- a/dev-ruby/litc/litc-1.0.3-r1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC="rerdoc"
-RUBY_FAKEGEM_DOCDIR="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A tiny ruby module for Amazon EC2 intance metadata"
-HOMEPAGE="https://github.com/bkaney/litc"
-
-IUSE=""
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-ruby_add_bdepend "test? ( dev-ruby/shoulda dev-ruby/fakeweb dev-ruby/minitest:0 )"
-
-all_ruby_prepare() {
- # Don't check dependencies since we provide slightly different packages.
- sed -i -e '/check_dependencies/d'\
- -e 's#rake/rdoctask#rdoc/task#' Rakefile || die
- sed -i -e '/ruby-debug/ s:^:#:' \
- -e '2agem "minitest", "~> 4.0"' test/helper.rb || die
-}
diff --git a/dev-ruby/litc/metadata.xml b/dev-ruby/litc/metadata.xml
deleted file mode 100644
index 28033edc57c0..000000000000
--- a/dev-ruby/litc/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">bkaney/litc</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/little-plugger/little-plugger-1.1.4-r1.ebuild b/dev-ruby/little-plugger/little-plugger-1.1.4-r1.ebuild
new file mode 100644
index 000000000000..94f82f18b1ff
--- /dev/null
+++ b/dev-ruby/little-plugger/little-plugger-1.1.4-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Module that provides Gem based plugin management"
+HOMEPAGE="https://github.com/TwP/little-plugger"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
diff --git a/dev-ruby/little-plugger/little-plugger-1.1.4.ebuild b/dev-ruby/little-plugger/little-plugger-1.1.4.ebuild
deleted file mode 100644
index 64d0a5d0af66..000000000000
--- a/dev-ruby/little-plugger/little-plugger-1.1.4.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Module that provides Gem based plugin management"
-HOMEPAGE="https://github.com/TwP/little-plugger"
-
-IUSE="test"
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
diff --git a/dev-ruby/little-plugger/metadata.xml b/dev-ruby/little-plugger/metadata.xml
index 5600a3e7b9e7..2e85cb371012 100644
--- a/dev-ruby/little-plugger/metadata.xml
+++ b/dev-ruby/little-plugger/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/llhttp-ffi/Manifest b/dev-ruby/llhttp-ffi/Manifest
new file mode 100644
index 000000000000..d0446b884529
--- /dev/null
+++ b/dev-ruby/llhttp-ffi/Manifest
@@ -0,0 +1,2 @@
+DIST llhttp-0.4.0.tar.gz 98406 BLAKE2B 9f7358d988ed00558a36ae80e3c7d38cabb41a2233f32f4e3e6e9ed49a205f85ed84cb76cb07984f3b73b0a67eade4844ed5f4ee98b2453fa5c25d36fcb0082c SHA512 56a491763500b1619492173a83a227e3228847f4b85b8dadab1a9de34d65d5c662615c18d6cc6d5e11226df83381fd7f79f67e12f89f0e437ada8f9fd083ec26
+DIST llhttp-2023-03-29.tar.gz 114103 BLAKE2B 7af75703a748518c2c4b8840ac08089d3c3e79f9652278bd41e591f09b9091f5fa8195c530992e51811f065004adbc533b92d49097e9f05a2aa98b44b47da9ac SHA512 058bf8a8bd7de6bf29794bc60bd9811d769acc9488cfc535d619ee24a79ba37edf3bcbdbffd40d747576024e7aca3c99cb71d9db1aa5af00991d7672c5f4bb70
diff --git a/dev-ruby/llhttp-ffi/files/llhttp-ffi-0.5.0-fix-rake-clean.patch b/dev-ruby/llhttp-ffi/files/llhttp-ffi-0.5.0-fix-rake-clean.patch
new file mode 100644
index 000000000000..23d85a4a3bbe
--- /dev/null
+++ b/dev-ruby/llhttp-ffi/files/llhttp-ffi-0.5.0-fix-rake-clean.patch
@@ -0,0 +1,18 @@
+https://github.com/bryanp/llhttp/commit/89551cd7fa539d7073e62ba8f6ba1dd70e73c36a
+
+From 89551cd7fa539d7073e62ba8f6ba1dd70e73c36a Mon Sep 17 00:00:00 2001
+From: Bryan Powell <bryan@metabahn.com>
+Date: Wed, 29 Mar 2023 07:27:08 -0700
+Subject: [PATCH] Fix ffi clean
+
+--- a/Rakefile
++++ b/Rakefile
+@@ -16,6 +16,8 @@ task :clean do
+ [
+ "./lib/llhttp/llhttp_ext.bundle"
+ ].each do |file|
++ next unless File.exist?(file)
++
+ FileUtils.rm(file)
+ end
+ end
diff --git a/dev-ruby/llhttp-ffi/llhttp-ffi-0.4.0.ebuild b/dev-ruby/llhttp-ffi/llhttp-ffi-0.4.0.ebuild
new file mode 100644
index 000000000000..661a110f4fd1
--- /dev/null
+++ b/dev-ruby/llhttp-ffi/llhttp-ffi-0.4.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 ruby32"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby FFI bindings for llhttp"
+HOMEPAGE="https://github.com/metabahn/llhttp"
+MY_PV="2021-09-09"
+SRC_URI="https://github.com/metabahn/llhttp/archive/refs/tags/${MY_PV}.tar.gz -> llhttp-${PV}.tar.gz"
+
+LICENSE="MPL-2.0"
+SLOT="$(ver_cut 1)/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+RUBY_S="llhttp-${MY_PV}/ffi"
+
+ruby_add_rdepend "=dev-ruby/ffi-compiler-1*"
+
+ruby_add_bdepend "test? (
+ dev-ruby/async-io
+ dev-ruby/rspec:3
+)"
+
+all_ruby_prepare() {
+ sed -i -e 's/gem "rake-compiler"//g' "Gemfile" || die
+}
+
+each_ruby_compile() {
+ cd ext && "${RUBY}" -S rake || die
+ local FFI_PLATFORM_NAME="$(${RUBY} --disable=did_you_mean -e "require 'ffi' ; p \"#{FFI::Platform::ARCH}-#{FFI::Platform::OS}\"" | tr -d "\"")"
+ install -D "${FFI_PLATFORM_NAME}/libllhttp-ext.so" "../lib/${FFI_PLATFORM_NAME}/libllhttp-ext.so" || die
+}
+
+each_ruby_install() {
+ each_fakegem_install
+ ruby_fakegem_extensions_installed
+}
diff --git a/dev-ruby/llhttp-ffi/llhttp-ffi-0.5.0.ebuild b/dev-ruby/llhttp-ffi/llhttp-ffi-0.5.0.ebuild
new file mode 100644
index 000000000000..6f5c38a6d836
--- /dev/null
+++ b/dev-ruby/llhttp-ffi/llhttp-ffi-0.5.0.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+MY_PV="2023-03-29"
+DESCRIPTION="Ruby FFI bindings for llhttp"
+HOMEPAGE="https://github.com/bryanp/llhttp"
+# Use -> ${MY_PV} in SRC_URI here to help spot forgotten MY_PV updates
+# (pkgcheck will warn on matching checksums)
+SRC_URI="https://github.com/bryanp/llhttp/archive/refs/tags/${MY_PV}.tar.gz -> llhttp-${MY_PV}.tar.gz"
+
+LICENSE="MPL-2.0"
+SLOT="$(ver_cut 1)/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+RUBY_S="llhttp-${MY_PV}/ffi"
+
+ruby_add_rdepend "=dev-ruby/ffi-compiler-1*"
+
+ruby_add_bdepend "test? (
+ dev-ruby/async-io
+ dev-ruby/rspec:3
+)"
+
+DEPEND+=" test? ( net-misc/curl )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.5.0-fix-rake-clean.patch
+)
+
+all_ruby_prepare() {
+ sed -i -e 's/gem "rake-compiler"//g' "Gemfile" || die
+}
+
+each_ruby_compile() {
+ cd ext && "${RUBY}" -S rake || die
+ local FFI_PLATFORM_NAME="$(${RUBY} --disable=did_you_mean -e "require 'ffi' ; p \"#{FFI::Platform::ARCH}-#{FFI::Platform::OS}\"" | tr -d "\"")"
+ install -D "${FFI_PLATFORM_NAME}/libllhttp-ext.so" "../lib/${FFI_PLATFORM_NAME}/libllhttp-ext.so" || die
+}
+
+each_ruby_install() {
+ each_fakegem_install
+ ruby_fakegem_extensions_installed
+}
diff --git a/dev-ruby/llhttp-ffi/metadata.xml b/dev-ruby/llhttp-ffi/metadata.xml
new file mode 100644
index 000000000000..3e85ab08b379
--- /dev/null
+++ b/dev-ruby/llhttp-ffi/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">bryanp/llhttp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/locale/Manifest b/dev-ruby/locale/Manifest
index 9587e5189898..5ab8984f0b2d 100644
--- a/dev-ruby/locale/Manifest
+++ b/dev-ruby/locale/Manifest
@@ -1 +1,2 @@
-DIST locale-2.1.2-git.tgz 99433 BLAKE2B b735d913e4a2f1f09131eb9aabc17cee93cd4b28f10458928942a3edd159cd1cde71226d4ad9aa9e340f5df5ba52a298805d1a4e73cb8dbc83d00bcecb7ceb85 SHA512 62a0c60f2102cd2d144126985748f4ab186b8f582c9597f7f4080e782196a39d72b9947b90aaecf5b208ccad0175064ac90e816472fb374d19cb5209da0f7ff4
+DIST locale-2.1.3-git.tgz 99648 BLAKE2B e395a442f674c73ed03d0d4d55d875c796add076132964ce2abb457d5d6e2ed8643395f283728735bbbf1ffee8b03549e882e5c66f6a589106a0a36f5b9e4ff1 SHA512 77877f15914dbee5ca83155f8cb84815296b4e2e4205218c9926e0265b40940cbdbe68fb048870ce4f53a6caeeb593813a2e16e8c130a19e44a28cb67c82fe25
+DIST locale-2.1.4-git.tgz 100263 BLAKE2B 3ae8db5e940c850a10adbbafdbceab0c0e956e19be3b4442851983da44857adb8752fe1251a99c53fe6c6cf14ae4f3eb741afed2923f5d2b1503e968fdd8e156 SHA512 65f5fde22c4ab4dc404204aea8d87b53d5a2bca01fa860ac7953de3806d4ca69b36bc4fce28d57a6a9d04be5a10c2fdeadbbe10fc48fa0a495b0da4ccfc71626
diff --git a/dev-ruby/locale/locale-2.1.2-r1.ebuild b/dev-ruby/locale/locale-2.1.2-r1.ebuild
deleted file mode 100644
index 33e4fc22c1fb..000000000000
--- a/dev-ruby/locale/locale-2.1.2-r1.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc/reference"
-RUBY_FAKEGEM_EXTRADOC="ChangeLog README.rdoc doc/text/news.md"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A pure ruby library which provides basic APIs for localization"
-HOMEPAGE="https://github.com/ruby-gettext/locale"
-LICENSE="|| ( Ruby GPL-2 )"
-SRC_URI="https://github.com/ruby-gettext/locale/archive/${PV}.tar.gz -> ${P}-git.tgz"
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-macos"
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "doc? ( dev-ruby/yard )"
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 dev-ruby/test-unit-rr )"
-
-all_ruby_prepare() {
- sed -i -e '/notify/ s:^:#:' test/run-test.rb || die
-}
-
-all_ruby_compile() {
- all_fakegem_compile
-
- if use doc ; then
- yard || die
- fi
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r samples || die
-}
diff --git a/dev-ruby/locale/locale-2.1.3-r1.ebuild b/dev-ruby/locale/locale-2.1.3-r1.ebuild
new file mode 100644
index 000000000000..8329fe6fb9e7
--- /dev/null
+++ b/dev-ruby/locale/locale-2.1.3-r1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_DOCDIR="doc/reference"
+RUBY_FAKEGEM_EXTRADOC="ChangeLog README.rdoc doc/text/news.md"
+
+RUBY_FAKEGEM_TASK_TEST="test"
+
+RUBY_FAKEGEM_GEMSPEC="locale.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A pure ruby library which provides basic APIs for localization"
+HOMEPAGE="https://github.com/ruby-gettext/locale"
+LICENSE="|| ( Ruby-BSD GPL-2 )"
+SRC_URI="https://github.com/ruby-gettext/locale/archive/${PV}.tar.gz -> ${P}-git.tgz"
+
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv sparc x86"
+SLOT="0"
+IUSE=""
+
+ruby_add_bdepend "doc? ( dev-ruby/yard )"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 dev-ruby/test-unit-rr )"
+
+all_ruby_prepare() {
+ sed -i -e '/notify/ s:^:#:' test/run-test.rb || die
+}
+
+all_ruby_compile() {
+ all_fakegem_compile
+
+ if use doc ; then
+ yard || die
+ fi
+}
+
+each_ruby_test() {
+ ${RUBY} test/run-test.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r samples
+}
diff --git a/dev-ruby/locale/locale-2.1.4.ebuild b/dev-ruby/locale/locale-2.1.4.ebuild
new file mode 100644
index 000000000000..3a5bbbf5a83c
--- /dev/null
+++ b/dev-ruby/locale/locale-2.1.4.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_DOCDIR="doc/reference"
+RUBY_FAKEGEM_EXTRADOC="ChangeLog README.rdoc doc/text/news.md"
+
+RUBY_FAKEGEM_TASK_TEST="test"
+
+RUBY_FAKEGEM_GEMSPEC="locale.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A pure ruby library which provides basic APIs for localization"
+HOMEPAGE="https://github.com/ruby-gettext/locale"
+LICENSE="|| ( Ruby-BSD GPL-2 )"
+SRC_URI="https://github.com/ruby-gettext/locale/archive/${PV}.tar.gz -> ${P}-git.tgz"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+SLOT="0"
+IUSE="test"
+
+ruby_add_bdepend "doc? ( dev-ruby/yard )"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 dev-ruby/test-unit-rr )"
+
+all_ruby_prepare() {
+ sed -i -e '/notify/ s:^:#:' test/run-test.rb || die
+}
+
+all_ruby_compile() {
+ all_fakegem_compile
+
+ if use doc ; then
+ yard || die
+ fi
+}
+
+each_ruby_test() {
+ ${RUBY} test/run-test.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r samples
+}
diff --git a/dev-ruby/locale/metadata.xml b/dev-ruby/locale/metadata.xml
index e76ec05153a6..2b2eb8fb071e 100644
--- a/dev-ruby/locale/metadata.xml
+++ b/dev-ruby/locale/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/localhost/Manifest b/dev-ruby/localhost/Manifest
new file mode 100644
index 000000000000..758a2dce2fa3
--- /dev/null
+++ b/dev-ruby/localhost/Manifest
@@ -0,0 +1,3 @@
+DIST localhost-1.1.10.tar.gz 2128142 BLAKE2B 06e4ab07bc273b8beba5fb3ee3f64e171a6c4a2e944c6d5e432417560283230277213732bf23ddd12e9737b2803582a11fdaa76356d14d2bdbd4e90d402c6204 SHA512 946ef247b256165cf5c849a32c0ba8dd2007164bd1549a20aca595328174709e9213ba8a98448dc41a57558b00147c3b7428b7bc625059ab24f89c94ff8850e9
+DIST localhost-1.2.0.tar.gz 2128359 BLAKE2B 793e43779ec0b1392104914d9adc1d468820f54b920a8ec4e4f538b313e607a6016a0d2d7b8db242571bdd561161bd71ef781eae310d1f57005c2b0a0fa5c5b4 SHA512 f60cf31a31ac43962e98e933955973ce4bdf76252e43ee3ef969fe104fb71bc5d2faa3213c93532acba28650cd453663785c15b33eed65309f8c235ce116b70d
+DIST localhost-1.3.0.tar.gz 2128850 BLAKE2B fe7db9958759be39107116b45ee1f8d3678a2407f25956ee551a41a18da2bb12b46add992ca2b9615b68f69156afc384c453318af5b77751095b643fb27b7344 SHA512 6196cf4ff79cd53c222e19158a7233b8ba384225f24fd791d92952c80b11c469e99d619c3825e0f831e99e2a822aaf69e3b3a9ed0dc2e1ad0316c8b6717165c5
diff --git a/dev-ruby/localhost/localhost-1.1.10.ebuild b/dev-ruby/localhost/localhost-1.1.10.ebuild
new file mode 100644
index 000000000000..29a9d0c56b27
--- /dev/null
+++ b/dev-ruby/localhost/localhost-1.1.10.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="localhost.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Manage a local CA for self-signed localhost development servers"
+HOMEPAGE="https://github.com/socketry/localhost"
+SRC_URI="https://github.com/socketry/localhost/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/async-io
+ dev-ruby/async-process
+ dev-ruby/sus-fixtures-async
+ )
+"
+
+all_ruby_prepare() {
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/covered/Id' config/sus.rb || die
+}
+
+each_ruby_test() {
+ # Tests fail in parallel as it tries to use the same port so
+ # manually replicate ruby-ng_sus for now, as ruby-ng_sus runs sus-parallel.
+ ${RUBY} -S sus || die
+}
diff --git a/dev-ruby/localhost/localhost-1.2.0.ebuild b/dev-ruby/localhost/localhost-1.2.0.ebuild
new file mode 100644
index 000000000000..889710b2d342
--- /dev/null
+++ b/dev-ruby/localhost/localhost-1.2.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="localhost.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Manage a local CA for self-signed localhost development servers"
+HOMEPAGE="https://github.com/socketry/localhost"
+SRC_URI="https://github.com/socketry/localhost/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/async-io
+ dev-ruby/async-process
+ dev-ruby/sus-fixtures-async
+ )
+"
+
+all_ruby_prepare() {
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/covered/Id' config/sus.rb || die
+}
+
+each_ruby_test() {
+ # Tests fail in parallel as it tries to use the same port so
+ # manually replicate ruby-ng_sus for now, as ruby-ng_sus runs sus-parallel.
+ ${RUBY} -S sus || die
+}
diff --git a/dev-ruby/localhost/localhost-1.3.0.ebuild b/dev-ruby/localhost/localhost-1.3.0.ebuild
new file mode 100644
index 000000000000..889710b2d342
--- /dev/null
+++ b/dev-ruby/localhost/localhost-1.3.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="localhost.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Manage a local CA for self-signed localhost development servers"
+HOMEPAGE="https://github.com/socketry/localhost"
+SRC_URI="https://github.com/socketry/localhost/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/async-io
+ dev-ruby/async-process
+ dev-ruby/sus-fixtures-async
+ )
+"
+
+all_ruby_prepare() {
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/covered/Id' config/sus.rb || die
+}
+
+each_ruby_test() {
+ # Tests fail in parallel as it tries to use the same port so
+ # manually replicate ruby-ng_sus for now, as ruby-ng_sus runs sus-parallel.
+ ${RUBY} -S sus || die
+}
diff --git a/dev-ruby/localhost/metadata.xml b/dev-ruby/localhost/metadata.xml
new file mode 100644
index 000000000000..56d29f0d02a8
--- /dev/null
+++ b/dev-ruby/localhost/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+</maintainer>
+<upstream>
+ <remote-id type="github">socketry/localhost</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/dev-ruby/lockfile/lockfile-2.1.3-r1.ebuild b/dev-ruby/lockfile/lockfile-2.1.3-r1.ebuild
new file mode 100644
index 000000000000..fcabfc184b4c
--- /dev/null
+++ b/dev-ruby/lockfile/lockfile-2.1.3-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A ruby library for creating NFS safe lockfiles"
+HOMEPAGE="https://github.com/ahoward/lockfile"
+
+LICENSE="Ruby-BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
diff --git a/dev-ruby/lockfile/lockfile-2.1.3.ebuild b/dev-ruby/lockfile/lockfile-2.1.3.ebuild
deleted file mode 100644
index d489db5b938a..000000000000
--- a/dev-ruby/lockfile/lockfile-2.1.3.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A ruby library for creating NFS safe lockfiles"
-HOMEPAGE="https://github.com/ahoward/lockfile"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/lockfile/metadata.xml b/dev-ruby/lockfile/metadata.xml
index 1176fcf92fad..0a6dc7d013dc 100644
--- a/dev-ruby/lockfile/metadata.xml
+++ b/dev-ruby/lockfile/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/log4r/log4r-1.1.10-r2.ebuild b/dev-ruby/log4r/log4r-1.1.10-r2.ebuild
deleted file mode 100644
index b602ba94eda7..000000000000
--- a/dev-ruby/log4r/log4r-1.1.10-r2.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-# There are no working tests atm, to be checked on next version bump.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_DOCDIR="doc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A comprehensive and flexible logging library written in Ruby"
-HOMEPAGE="http://log4r.sourceforge.net/"
-IUSE=""
-
-LICENSE="LGPL-3"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ppc ppc64 sparc x86"
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r examples
-}
diff --git a/dev-ruby/log4r/log4r-1.1.10-r3.ebuild b/dev-ruby/log4r/log4r-1.1.10-r3.ebuild
new file mode 100644
index 000000000000..9be30a52c1aa
--- /dev/null
+++ b/dev-ruby/log4r/log4r-1.1.10-r3.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+# There are no working tests atm, to be checked on next version bump.
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_DOCDIR="doc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A comprehensive and flexible logging library written in Ruby"
+HOMEPAGE="https://log4r.sourceforge.net/"
+IUSE=""
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 sparc x86"
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r examples
+}
diff --git a/dev-ruby/log4r/metadata.xml b/dev-ruby/log4r/metadata.xml
index a8b69daa7308..583be344d7e7 100644
--- a/dev-ruby/log4r/metadata.xml
+++ b/dev-ruby/log4r/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/log_buddy/Manifest b/dev-ruby/log_buddy/Manifest
deleted file mode 100644
index 84cbce50fc8e..000000000000
--- a/dev-ruby/log_buddy/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST log_buddy-0.7.0.gem 11264 BLAKE2B 688d8545a57361ecdecef3021db69d285a040b6439b2391337b8842408ad5e6d4b79d0d9391db07172e0bde6e27f151f6b6f93a3e4d9448730c32e4cf21a2c56 SHA512 ce7d068157f2fc3513f330a8616dbf126f218f2f5166a91d3cd0179cd5899a696acc364001a677324581eefc0ebbe20d1e01413b1f363fd424c25232f4a791e2
diff --git a/dev-ruby/log_buddy/log_buddy-0.7.0.ebuild b/dev-ruby/log_buddy/log_buddy-0.7.0.ebuild
deleted file mode 100644
index cc8079558618..000000000000
--- a/dev-ruby/log_buddy/log_buddy-0.7.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.markdown examples.rb"
-
-RUBY_FAKEGEM_EXTRAINSTALL="init.rb"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Log statements along with their name easily"
-HOMEPAGE="https://github.com/relevance/log_buddy"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_bdepend "test? ( >=dev-ruby/mocha-0.9 )"
-
-all_ruby_prepare() {
- rm Gemfile || die
-}
diff --git a/dev-ruby/log_buddy/metadata.xml b/dev-ruby/log_buddy/metadata.xml
deleted file mode 100644
index 79dea92abc84..000000000000
--- a/dev-ruby/log_buddy/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">relevance/log_buddy</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/logger/Manifest b/dev-ruby/logger/Manifest
new file mode 100644
index 000000000000..398f0ec1d788
--- /dev/null
+++ b/dev-ruby/logger/Manifest
@@ -0,0 +1 @@
+DIST logger-1.6.0.tar.gz 18954 BLAKE2B 6368cd85cc36819ec3b98719befbea84ed3bbf9866ddb06ea946e6cdd0109e7c771fda673f688566f22b9654bb2ace4e196d9385b645c1d5efaeb6f708cdee29 SHA512 e2aa950132f2bd2ae4b2f0f911d84eb8843c4403028c5ef4ed5e752f397263fe251fb6296b1d5b3eea26ed79fce5bcb0e1cb8dbdc3cf24cd954522f394f5ad6d
diff --git a/dev-ruby/logger/logger-1.6.0.ebuild b/dev-ruby/logger/logger-1.6.0.ebuild
new file mode 100644
index 000000000000..54abfe5e93cf
--- /dev/null
+++ b/dev-ruby/logger/logger-1.6.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="logger.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a simple logging utility for outputting messages"
+HOMEPAGE="https://github.com/ruby/logger"
+SRC_URI="https://github.com/ruby/logger/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/logger/metadata.xml b/dev-ruby/logger/metadata.xml
new file mode 100644
index 000000000000..cf66c83dd2fc
--- /dev/null
+++ b/dev-ruby/logger/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/logger</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/logue/Manifest b/dev-ruby/logue/Manifest
deleted file mode 100644
index 8c2bbc9e39d6..000000000000
--- a/dev-ruby/logue/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST logue-git-1.0.13.tgz 14389 BLAKE2B a6886989e561124904e6e6016c84b53abd1ea5be2f92958dffdc9b5ce9741728b9760034a9a7517ff35dfe0ebf10d6a6937aee426b85de3e71690098e9eec0ad SHA512 677ef2a8fecc50cb923dcf85ab0bdd984ea5806c31e11df9438af92912b94a4ce227837fac4baee05595f894f6a0fd4167f2984357628eb3e8036479103340c4
-DIST logue-git-1.0.16.tgz 13364 BLAKE2B 1eaedcd8cd2a45713a39fd2bfc59fa8234903e01495072d905d461c799fb210be828a5d9685e285c44858c2a10e6016b0053686c3a7c31df64d829ed1c216df9 SHA512 bb8168b69f614f8b2e85bac982dbc85a4a0705cb8cf2d13bf1c361c120c1f66155782bccefbc9069bd9cb4595d6ae8e090c882677d52245ca3478892ce226c56
-DIST logue-git-1.0.18.tgz 13310 BLAKE2B 42669cae48b5efe5785470410b694c7330dad5273d3a788612729d0e2efb9aabb8b3024727efddb4efedc1addd377242bc5a3ad5e9ede602f0f606be4db84608 SHA512 654681b2d1735790a08d8c53f9097ca28b64c37e902ff1260c8f2fa669067d404103944f0c78c5382a10b9491d8b0a10495516d3529d68be97c62027c2812c9b
diff --git a/dev-ruby/logue/logue-1.0.13-r1.ebuild b/dev-ruby/logue/logue-1.0.13-r1.ebuild
deleted file mode 100644
index 0c44d02ea4be..000000000000
--- a/dev-ruby/logue/logue-1.0.13-r1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A module that adds logging/trace functionality"
-HOMEPAGE="https://github.com/jpace/logue"
-
-SRC_URI="https://github.com/jpace/logue/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~hppa ~ppc ~sparc x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/rainbow:3"
-
-ruby_add_bdepend "test? ( dev-ruby/paramesan )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-
- # Fix path to match installed gem path
- sed -i -e 's:logue/lib/logue:/lib/logue:' lib/logue/stack.rb || die
-}
diff --git a/dev-ruby/logue/logue-1.0.16.ebuild b/dev-ruby/logue/logue-1.0.16.ebuild
deleted file mode 100644
index 509da71330aa..000000000000
--- a/dev-ruby/logue/logue-1.0.16.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A module that adds logging/trace functionality"
-HOMEPAGE="https://github.com/jpace/logue"
-
-SRC_URI="https://github.com/jpace/logue/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~ppc ~sparc ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/rainbow:3"
-
-ruby_add_bdepend "test? ( dev-ruby/paramesan )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-
- # Fix path to match installed gem path
- sed -i -e 's:logue/lib/logue:/lib/logue:' lib/logue/stack.rb || die
-}
diff --git a/dev-ruby/logue/logue-1.0.18.ebuild b/dev-ruby/logue/logue-1.0.18.ebuild
deleted file mode 100644
index dcef55f32fec..000000000000
--- a/dev-ruby/logue/logue-1.0.18.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A module that adds logging/trace functionality"
-HOMEPAGE="https://github.com/jpace/logue"
-
-SRC_URI="https://github.com/jpace/logue/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~ppc ~sparc ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/rainbow:3"
-
-ruby_add_bdepend "test? ( dev-ruby/paramesan )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-
- # Fix path to match installed gem path
- sed -i -e 's:logue/lib/logue:/lib/logue:' lib/logue/stack.rb || die
-}
diff --git a/dev-ruby/logue/metadata.xml b/dev-ruby/logue/metadata.xml
deleted file mode 100644
index c279baf7bbf0..000000000000
--- a/dev-ruby/logue/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jpace/logue</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/loofah/Manifest b/dev-ruby/loofah/Manifest
index 7b2fffcf3715..449e364000c2 100644
--- a/dev-ruby/loofah/Manifest
+++ b/dev-ruby/loofah/Manifest
@@ -1 +1,3 @@
-DIST loofah-2.2.3.gem 65536 BLAKE2B ce1dd5255b0089862d26926624ef6007416318b77f4eb818ff462d8f680f8ef901ecb6ae751e33e1881e303fd005a4bd776c0e6a575562ffb7fb0b62e376b753 SHA512 8e63e1d4e3719c2ffcc8cf3208dbdfa3eb6e328bb91fc8dc6de88c472aac47f1a22771928b08f3c6816c159c6a9672299823f5d48177ae543358e73444b8ac56
+DIST loofah-2.21.3.tar.gz 84775 BLAKE2B 89286feb0c1345d0ba5ff61f8dad4461a43afa3624cdf33787e3371f32154bc4814914f9725b48d70f5ce89f654cbbb656ff319b2aeadbbb74f9f60db386c5eb SHA512 7462bd703135bbf67dca6864169013a787cb9c16c3dc41e17ac70f8d182b9b1d2e763f719b9a52c02a6609d65f9497fe6e4b92481e95175060978009cb0aa362
+DIST loofah-2.21.4.tar.gz 85154 BLAKE2B 34357e03d32a8c3c144a596dd5a10780c9a3c930292c1130169031a6e15a2d73d1783c60f41ef49cf0938f39c8fc7fd0f0ab3d3ca6734d88a70e0cc954b181f2 SHA512 900133983a8a135e7bc52527b9e73aa640df632b16a82558b7648b3d411b61dfbd8a9d14eefd9e3acdef27466156d341d26969bc5d81243d7254eea039d58e50
+DIST loofah-2.22.0.tar.gz 85892 BLAKE2B d465dcc83cac2a994145f7840b8607f92a080fef7ef6860ae81a3eecaf41be6be7e3b59263c05d09c5a729844d4f2490ce3e39046fdd863647ac157367c16427 SHA512 b1b9ba490334563b935d8a176ba6eee8d98c5c3ebbecc878c654e64a48311c38d0684a9b8e2704797c36492a33bc1248137a7611eb9f796a5ea9aa4df1b5f90e
diff --git a/dev-ruby/loofah/loofah-2.2.3.ebuild b/dev-ruby/loofah/loofah-2.2.3.ebuild
deleted file mode 100644
index e908d36b4e76..000000000000
--- a/dev-ruby/loofah/loofah-2.2.3.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Library for manipulating and transforming HTML/XML documents and fragments."
-HOMEPAGE="https://github.com/flavorjones/loofah"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-ruby_add_rdepend "=dev-ruby/crass-1.0* >=dev-ruby/crass-1.0.2 >=dev-ruby/nokogiri-1.5.9"
-
-ruby_add_bdepend "test? ( >=dev-ruby/rr-1.1.0 )"
-
-all_ruby_prepare() {
- # Avoid unneeded development dependencies
- sed -i -e '/concourse/I s:^:#:' Rakefile || die
-
- # Avoid test failing on different whitespace.
- sed -i -e '/test_fragment_whitewash_on_microsofty_markup/askip "gentoo"' test/integration/test_ad_hoc.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/loofah/loofah-2.21.3.ebuild b/dev-ruby/loofah/loofah-2.21.3.ebuild
new file mode 100644
index 000000000000..e203ac98f0d9
--- /dev/null
+++ b/dev-ruby/loofah/loofah-2.21.3.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="loofah.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Library for manipulating and transforming HTML/XML documents and fragments."
+HOMEPAGE="https://github.com/flavorjones/loofah"
+SRC_URI="https://github.com/flavorjones/loofah/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
+IUSE=""
+
+ruby_add_rdepend "=dev-ruby/crass-1.0* >=dev-ruby/crass-1.0.2 >=dev-ruby/nokogiri-1.12.0"
+
+ruby_add_bdepend "test? ( >=dev-ruby/rr-1.1.0 )"
+
+all_ruby_prepare() {
+ # Fix version in gemspec
+ sed -i -e '/s\.version/ s/".*"/"'${PV}'"/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid unneeded development dependencies
+ sed -i -e '/concourse/I s:^:#:' Rakefile || die
+
+ # Avoid test failing on different whitespace.
+ sed -i -e '/test_fragment_whitewash_on_microsofty_markup/askip "gentoo"' test/integration/test_ad_hoc.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/loofah/loofah-2.21.4.ebuild b/dev-ruby/loofah/loofah-2.21.4.ebuild
new file mode 100644
index 000000000000..a17f239b0e23
--- /dev/null
+++ b/dev-ruby/loofah/loofah-2.21.4.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="loofah.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Library for manipulating and transforming HTML/XML documents and fragments."
+HOMEPAGE="https://github.com/flavorjones/loofah"
+SRC_URI="https://github.com/flavorjones/loofah/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
+IUSE=""
+
+ruby_add_rdepend "=dev-ruby/crass-1.0* >=dev-ruby/crass-1.0.2 >=dev-ruby/nokogiri-1.12.0"
+
+ruby_add_bdepend "test? ( >=dev-ruby/rr-1.1.0 )"
+
+all_ruby_prepare() {
+ # Fix version in gemspec
+ sed -i -e '/s\.version/ s/".*"/"'${PV}'"/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid unneeded development dependencies
+ sed -i -e '/concourse/I s:^:#:' Rakefile || die
+
+ # Avoid test failing on different whitespace.
+ sed -i -e '/test_fragment_whitewash_on_microsofty_markup/askip "gentoo"' test/integration/test_ad_hoc.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/loofah/loofah-2.22.0.ebuild b/dev-ruby/loofah/loofah-2.22.0.ebuild
new file mode 100644
index 000000000000..47b158d37fc8
--- /dev/null
+++ b/dev-ruby/loofah/loofah-2.22.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="loofah.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Library for manipulating and transforming HTML/XML documents and fragments."
+HOMEPAGE="https://github.com/flavorjones/loofah"
+SRC_URI="https://github.com/flavorjones/loofah/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
+IUSE=""
+
+ruby_add_rdepend "=dev-ruby/crass-1.0* >=dev-ruby/crass-1.0.2 >=dev-ruby/nokogiri-1.12.0"
+
+ruby_add_bdepend "test? ( >=dev-ruby/rr-1.1.0 )"
+
+all_ruby_prepare() {
+ # Fix version in gemspec
+ sed -i -e '/s\.version/ s/".*"/"'${PV}'"/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid unneeded development dependencies
+ sed -i -e '/concourse/I s:^:#:' Rakefile || die
+
+ # Avoid test failing on different whitespace.
+ sed -i -e '/test_fragment_whitewash_on_microsofty_markup/askip "gentoo"' test/integration/test_ad_hoc.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/loofah/metadata.xml b/dev-ruby/loofah/metadata.xml
index d1a9caad0ead..2724924c5ed9 100644
--- a/dev-ruby/loofah/metadata.xml
+++ b/dev-ruby/loofah/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/loquacious/loquacious-1.9.1-r2.ebuild b/dev-ruby/loquacious/loquacious-1.9.1-r2.ebuild
deleted file mode 100644
index 3150989e1cb8..000000000000
--- a/dev-ruby/loquacious/loquacious-1.9.1-r2.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Descriptive configuration files for Ruby written in Ruby"
-HOMEPAGE="https://github.com/TwP/loquacious"
-
-IUSE=""
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-all_ruby_compile() {
- if use doc; then
- rdoc lib || die "Documentation generation failed."
- fi
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc examples/*
-}
diff --git a/dev-ruby/loquacious/loquacious-1.9.1-r4.ebuild b/dev-ruby/loquacious/loquacious-1.9.1-r4.ebuild
new file mode 100644
index 000000000000..f7d7247862d8
--- /dev/null
+++ b/dev-ruby/loquacious/loquacious-1.9.1-r4.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Descriptive configuration files for Ruby written in Ruby"
+HOMEPAGE="https://github.com/TwP/loquacious"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+all_ruby_prepare() {
+ sed -i -e 's/be_true/be true/' -e 's/be_false/be false/' spec/*_spec.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+}
diff --git a/dev-ruby/loquacious/metadata.xml b/dev-ruby/loquacious/metadata.xml
index a5fa4282a423..bda7a68744b2 100644
--- a/dev-ruby/loquacious/metadata.xml
+++ b/dev-ruby/loquacious/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/lumberjack/Manifest b/dev-ruby/lumberjack/Manifest
index 87f4ef2a7a47..b30ae3eba8a9 100644
--- a/dev-ruby/lumberjack/Manifest
+++ b/dev-ruby/lumberjack/Manifest
@@ -1 +1 @@
-DIST lumberjack-1.0.13.gem 26624 BLAKE2B 16e911d832425d0adf8ee1bd18435733c5451b705c48493dd80e5e8f6b07cb462be2686dcce7a8c46b799fb8a4fa1a82d4d9c06e675cd6e7a990d93140cea395 SHA512 e9e9c65bdeb42de51ad27b70c86d36c5e63e8d73c3568661d52619ca9eeab36cf6aede5e6cd6ab8e8d30446c0b0e7a9702f696e03e06d8b7a73e1c028953eef4
+DIST lumberjack-1.2.10.tar.gz 44396 BLAKE2B 4916444660a1b7b1332582e4dec737c181dcd32947d1fa6fbea008b10c6762280bbffe4cf0419200c54e6a956260c25327b9d84b7c2dbda3bd2525d09401f3ce SHA512 f187125814fc8a54231bbfd4d8bfd684f3cf21e3f292598a002427a573838c259c3f12804d49ee4e2b708e734e84a354749a6219c7c9d3befcc1632d8c651d01
diff --git a/dev-ruby/lumberjack/lumberjack-1.0.13.ebuild b/dev-ruby/lumberjack/lumberjack-1.0.13.ebuild
deleted file mode 100644
index dd7457f682dd..000000000000
--- a/dev-ruby/lumberjack/lumberjack-1.0.13.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple, powerful, and very fast logging utility"
-HOMEPAGE="https://github.com/bdurand/lumberjack"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/timecop-0.8 )"
diff --git a/dev-ruby/lumberjack/lumberjack-1.2.10.ebuild b/dev-ruby/lumberjack/lumberjack-1.2.10.ebuild
new file mode 100644
index 000000000000..0c2dc83ef313
--- /dev/null
+++ b/dev-ruby/lumberjack/lumberjack-1.2.10.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="lumberjack.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A simple, powerful, and very fast logging utility"
+HOMEPAGE="https://github.com/bdurand/lumberjack"
+SRC_URI="https://github.com/bdurand/lumberjack/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_bdepend "test? ( >=dev-ruby/timecop-0.8 )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/lumberjack/metadata.xml b/dev-ruby/lumberjack/metadata.xml
index 0e012e0522a5..122d2a117ad2 100644
--- a/dev-ruby/lumberjack/metadata.xml
+++ b/dev-ruby/lumberjack/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/mab/mab-0.0.3-r2.ebuild b/dev-ruby/mab/mab-0.0.3-r2.ebuild
new file mode 100644
index 000000000000..e263676514bb
--- /dev/null
+++ b/dev-ruby/mab/mab-0.0.3-r2.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Markup as Ruby"
+HOMEPAGE="https://github.com/camping/mab"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
diff --git a/dev-ruby/mab/mab-0.0.3.ebuild b/dev-ruby/mab/mab-0.0.3.ebuild
deleted file mode 100644
index 2c6f119cdd8c..000000000000
--- a/dev-ruby/mab/mab-0.0.3.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Markup as Ruby"
-HOMEPAGE="https://github.com/camping/mab"
-LICENSE="MIT"
-
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
-
-IUSE="test"
-
-ruby_add_bdepend "
- test? ( >=dev-ruby/minitest-4:0 )"
-
-all_ruby_prepare() {
- sed -i -e '1igem "minitest", "~> 4.0"' test/helper.rb || die
-}
diff --git a/dev-ruby/mab/metadata.xml b/dev-ruby/mab/metadata.xml
index 1bf79df1c4fe..053e44f758a1 100644
--- a/dev-ruby/mab/metadata.xml
+++ b/dev-ruby/mab/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/magic/magic-0.2.9-r1.ebuild b/dev-ruby/magic/magic-0.2.9-r1.ebuild
deleted file mode 100644
index c3cef164eaed..000000000000
--- a/dev-ruby/magic/magic-0.2.9-r1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-inherit ruby-fakegem
-
-SRC_URI="https://github.com/qoobaa/magic/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-DESCRIPTION="Ruby FFI bindings to libmagic"
-HOMEPAGE="https://github.com/qoobaa/magic"
-
-IUSE="test"
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND+="sys-apps/file"
-DEPEND+="test? ( sys-apps/file )"
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
-ruby_add_rdepend "dev-ruby/ffi"
-
-each_ruby_test() {
- ${RUBY} -Ilib -Itest test/test_magic.rb || die
-}
diff --git a/dev-ruby/magic/magic-0.2.9-r2.ebuild b/dev-ruby/magic/magic-0.2.9-r2.ebuild
new file mode 100644
index 000000000000..0c4ee3c75584
--- /dev/null
+++ b/dev-ruby/magic/magic-0.2.9-r2.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="magic.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+inherit ruby-fakegem
+
+SRC_URI="https://github.com/qoobaa/magic/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+DESCRIPTION="Ruby FFI bindings to libmagic"
+HOMEPAGE="https://github.com/qoobaa/magic"
+
+IUSE="test"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND+="sys-apps/file"
+DEPEND+="test? ( sys-apps/file )"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
+ruby_add_rdepend "dev-ruby/ffi"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Fix File.exists? deprecation
+ sed -i -e 's/File.exists?/File.exist?/' lib/magic/database.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib -Itest test/test_magic.rb || die
+}
diff --git a/dev-ruby/magic/metadata.xml b/dev-ruby/magic/metadata.xml
index 5c70aa7e1b66..8b871ddc0462 100644
--- a/dev-ruby/magic/metadata.xml
+++ b/dev-ruby/magic/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/mail/Manifest b/dev-ruby/mail/Manifest
index a107bed00331..bd644fdbc596 100644
--- a/dev-ruby/mail/Manifest
+++ b/dev-ruby/mail/Manifest
@@ -1,2 +1 @@
-DIST mail-2.7.0-git.tar.gz 620982 BLAKE2B 67ecf6b362d74b265784d6b865eb1b2025e8e0834f46f46eb6d42973e39c2bd38a80f3cd066e58e81c87629f2df73a8afee89436d7020f8ae184587edd1221ff SHA512 13cc4ba3a49ff9ae74691da0fcba41064b3d5af4fbe34c6e83563a6da069fe006707460534f9ee5b0c613039cdf207044272944bc04eeffc5f8834332554ac63
-DIST mail-2.7.1-git.tar.gz 625251 BLAKE2B c1efbb259042155e983c1971fe9821eb0dd850089bd04cb0c74513f6f17dabf8ecc3155d9e5846ae657383f522872323f8fba37d51fba4318ac682d18a6d4c50 SHA512 17c601c86715135331f750048339a11a67a17f34486dbafa3ba7e9af9970d60927a2fa95c72a398418548df1fdf5addb2ed3afe9da7dff1f0bd949438726be1b
+DIST mail-2.8.1-git.tar.gz 621412 BLAKE2B f39c3087bf5d064fd9a96b93ccac2fd0060c53a53c900658e3907dce311aabba8136ce96bcd4937f5a9852ed3d046e1354c3c2757330d80f9b3d0542fc27cd12 SHA512 2c176361285b17b10ab3e518502b05ac582f033f81fc45df0b61bfcb5b645ea22139ef3abf67240adb27a39834dfee59bb0777c6de5448c2fe2e52d5dde3465a
diff --git a/dev-ruby/mail/mail-2.7.0.ebuild b/dev-ruby/mail/mail-2.7.0.ebuild
deleted file mode 100644
index e61194a31f04..000000000000
--- a/dev-ruby/mail/mail-2.7.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc README.md"
-
-RUBY_FAKEGEM_GEMSPEC="mail.gemspec"
-
-inherit ruby-fakegem versionator
-
-GITHUB_USER="mikel"
-
-DESCRIPTION="An email handling library"
-HOMEPAGE="https://github.com/mikel/mail"
-SRC_URI="https://github.com/${GITHUB_USER}/mail/archive/${PV}.tar.gz -> ${P}-git.tar.gz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/mini_mime-0.1.1"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/[Bb]undle/d' -e '6d' Rakefile || die "Unable to remove Bundler code."
-}
diff --git a/dev-ruby/mail/mail-2.7.1.ebuild b/dev-ruby/mail/mail-2.7.1.ebuild
deleted file mode 100644
index 2e6d61c66756..000000000000
--- a/dev-ruby/mail/mail-2.7.1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc README.md"
-
-RUBY_FAKEGEM_GEMSPEC="mail.gemspec"
-
-inherit ruby-fakegem eapi7-ver
-
-GITHUB_USER="mikel"
-
-DESCRIPTION="An email handling library"
-HOMEPAGE="https://github.com/mikel/mail"
-SRC_URI="https://github.com/${GITHUB_USER}/mail/archive/${PV}.tar.gz -> ${P}-git.tar.gz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/mini_mime-0.1.1"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/[Bb]undle/d' -e '6d' Rakefile || die "Unable to remove Bundler code."
-}
diff --git a/dev-ruby/mail/mail-2.8.1.ebuild b/dev-ruby/mail/mail-2.8.1.ebuild
new file mode 100644
index 000000000000..fd546683fa89
--- /dev/null
+++ b/dev-ruby/mail/mail-2.8.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc README.md"
+
+RUBY_FAKEGEM_GEMSPEC="mail.gemspec"
+
+inherit ruby-fakegem
+
+GITHUB_USER="mikel"
+
+DESCRIPTION="An email handling library"
+HOMEPAGE="https://github.com/mikel/mail"
+SRC_URI="https://github.com/${GITHUB_USER}/mail/archive/${PV}.tar.gz -> ${P}-git.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/mini_mime-0.1.1
+ dev-ruby/net-imap
+ dev-ruby/net-pop
+ dev-ruby/net-smtp
+"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -i -e '/[Bb]undle/d' -e '6d' Rakefile || die "Unable to remove Bundler code."
+
+ sed -i -e '/benchmark/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/mail/metadata.xml b/dev-ruby/mail/metadata.xml
index 8d88119743b5..6a529f5d58e9 100644
--- a/dev-ruby/mail/metadata.xml
+++ b/dev-ruby/mail/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/maildir/Manifest b/dev-ruby/maildir/Manifest
index 47c7eebf24fc..68f04eba34bb 100644
--- a/dev-ruby/maildir/Manifest
+++ b/dev-ruby/maildir/Manifest
@@ -1 +1 @@
-DIST maildir-2.2.1.gem 15360 BLAKE2B d3ea037ba38e83bc7b21bde9ccb2296fc922c3f657a73ad3637faf708cfa16ac75c2e6535714ba18b00aafc5a94265c56f6e086d25de5810c0a0112d6c876e1f SHA512 4c366333c802bbe0cbd19e6abaef1fa31ad84596518d24ddcc33aa3afe39890896d107bc864c68787c90c3a38115979f6a4fe8b442aecaead39306122d560f18
+DIST maildir-2.2.3.gem 15360 BLAKE2B 915abb1ee50a4151f22e0de4e92ff42d3f06b059478f6a4193866714e170cc88740a714bef54a530d3b85bf318c7f46dda6f42b48b7ceadf09c55eea31f5f5c2 SHA512 5dea021c49711f744429c6e5ea78bbb10e3aae1338f780107a1784f6ae8d3c598f9d17b8e0fa555dde4058041dbc7905d62f9d49375d6c4b822a7e88ca065a77
diff --git a/dev-ruby/maildir/maildir-2.2.1-r1.ebuild b/dev-ruby/maildir/maildir-2.2.1-r1.ebuild
deleted file mode 100644
index 79530e64c068..000000000000
--- a/dev-ruby/maildir/maildir-2.2.1-r1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="README.rdoc"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library for reading and writing arbitrary messages in DJB's maildir format"
-HOMEPAGE="https://github.com/ktheory/maildir"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="2"
-IUSE="test"
-
-ruby_add_bdepend "
- test? ( >=dev-ruby/fakefs-0.3.2 dev-ruby/mail dev-ruby/shoulda-context dev-ruby/test-unit:2 )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile test/helper.rb || die
- sed -i -e 's/shoulda/shoulda-context/' test/helper.rb || die
-
- # Avoid tests that appear to need activesupport for .blank? support
- sed -i -e '/add and remove flags/,/^ end/ s:^:#:' test/test_message.rb || die
- sed -i -e '/be removed from flag list/,/^ end/ s:^:#:' test/test_maildir.rb || die
-}
diff --git a/dev-ruby/maildir/maildir-2.2.3-r1.ebuild b/dev-ruby/maildir/maildir-2.2.3-r1.ebuild
new file mode 100644
index 000000000000..dd920095148a
--- /dev/null
+++ b/dev-ruby/maildir/maildir-2.2.3-r1.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRAINSTALL="README.rdoc"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library for reading and writing arbitrary messages in DJB's maildir format"
+HOMEPAGE="https://github.com/ktheory/maildir"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="2"
+IUSE="test"
+
+ruby_add_bdepend "
+ test? ( >=dev-ruby/fakefs-0.3.2 dev-ruby/mail dev-ruby/shoulda dev-ruby/test-unit:2 )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile test/helper.rb || die
+
+ # Avoid tests that appear to need activesupport for .blank? support
+ sed -i -e '/add and remove flags/,/^ end/ s:^:#:' test/test_message.rb || die
+ sed -i -e '/be removed from flag list/,/^ end/ s:^:#:' test/test_maildir.rb || die
+}
diff --git a/dev-ruby/maildir/metadata.xml b/dev-ruby/maildir/metadata.xml
index 524f23aed803..2cd162905043 100644
--- a/dev-ruby/maildir/metadata.xml
+++ b/dev-ruby/maildir/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/marcel/Manifest b/dev-ruby/marcel/Manifest
index a1304b1415da..b0f1ac5afb18 100644
--- a/dev-ruby/marcel/Manifest
+++ b/dev-ruby/marcel/Manifest
@@ -1 +1,2 @@
-DIST marcel-0.3.3.tar.gz 7845456 BLAKE2B e27d851119f434144a790cd1bfb1ca21662357b1875ae9193273e00c5abc6156c217efeb961356d4967d984b4c8fb4b4047620fa5d0448cc20651aa1ce05bb69 SHA512 d9be185fd6f5185fc67f3eed931ecf3084da671840b6e464bf341f51c9dec4ab1b4650abd1916e640b7caced230d6cb90370bffb559151e0047a8b03211dc751
+DIST marcel-1.0.2.tar.gz 8305198 BLAKE2B 264737cdb29852a186bf0e719748caca6c63626528f486dbefc3eedc7df6d7fe6f34e5cf68eb8b04f8b2b75c52bed59222d5f7bbcf60047cd5db7c4c935802ff SHA512 cd159545b246dcbd26ca07ac69e36ff13a965ac0e99ebd040c53b6a92f8ec8fd65786783c9a173d669fe6b32340a23d72c83c483011eec2e1097bdea73810ed6
+DIST marcel-1.0.4.tar.gz 8340487 BLAKE2B 6f5260408de9997f8515619a661ea5b5293182a73cb45671aa2b5302e99b73b0ecb148acbeca2b8afdab8991fdd7ff789d2d79075fb5d37b0166c6a776802d03 SHA512 68811c3116ecafdea322c97637b3566102c21363de05678862fe1d9f1300ff6c0056449440169a69a353d77b568d0401930fbeac1651e0fea8189ae4960ce189
diff --git a/dev-ruby/marcel/marcel-0.3.3-r1.ebuild b/dev-ruby/marcel/marcel-0.3.3-r1.ebuild
deleted file mode 100644
index 40fae2ec8e91..000000000000
--- a/dev-ruby/marcel/marcel-0.3.3-r1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Simple mime type detection using magic numbers, filenames, and extensions"
-HOMEPAGE="https://github.com/basecamp/marcel"
-SRC_URI="https://github.com/basecamp/marcel/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/mimemagic-0.3.2:0"
-
-all_ruby_prepare() {
- sed -i -e '2irequire "pathname"' test/test_helper.rb || die
-
- # Account for changes in shared-mime-info 1.10
- mkdir test/fixtures/{magic,name}/font || die
- mv test/fixtures/magic/application/x-font-ttf.ttf test/fixtures/magic/font/ttf.ttf || die
- mv test/fixtures/name/application/x-font-ttf.ttf test/fixtures/name/font/ttf.ttf || die
-}
diff --git a/dev-ruby/marcel/marcel-1.0.2.ebuild b/dev-ruby/marcel/marcel-1.0.2.ebuild
new file mode 100644
index 000000000000..5975b0f8af3d
--- /dev/null
+++ b/dev-ruby/marcel/marcel-1.0.2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple mime type detection using magic numbers, filenames, and extensions"
+HOMEPAGE="https://github.com/rails/marcel"
+SRC_URI="https://github.com/rails/marcel/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0 MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/rack:2.2 )"
+
+all_ruby_prepare() {
+ sed -i \
+ -e '1igem "rack", "~> 2.0"' \
+ -e '2irequire "pathname"' \
+ -e '/byebug/ s:^:#:' \
+ test/test_helper.rb || die
+
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+
+ sed -i -e 's/MiniTest/Minitest/' test/test_helper.rb || die
+}
diff --git a/dev-ruby/marcel/marcel-1.0.4.ebuild b/dev-ruby/marcel/marcel-1.0.4.ebuild
new file mode 100644
index 000000000000..14e9c91fdd92
--- /dev/null
+++ b/dev-ruby/marcel/marcel-1.0.4.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple mime type detection using magic numbers, filenames, and extensions"
+HOMEPAGE="https://github.com/rails/marcel"
+SRC_URI="https://github.com/rails/marcel/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0 MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/rack:2.2 )"
+
+all_ruby_prepare() {
+ sed -i \
+ -e '1igem "rack", "~> 2.0"' \
+ -e '2irequire "pathname"' \
+ test/test_helper.rb || die
+
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/marcel/metadata.xml b/dev-ruby/marcel/metadata.xml
index 75be751353ac..491a91b5d488 100644
--- a/dev-ruby/marcel/metadata.xml
+++ b/dev-ruby/marcel/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">basecamp/marcel</remote-id>
+ <remote-id type="github">rails/marcel</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/maruku/maruku-0.7.3-r1.ebuild b/dev-ruby/maruku/maruku-0.7.3-r1.ebuild
new file mode 100644
index 000000000000..6a6ff581e503
--- /dev/null
+++ b/dev-ruby/maruku/maruku-0.7.3-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="docs/div_syntax.md docs/entity_test.md
+ docs/markdown_syntax.md docs/maruku.md docs/math.md docs/other_stuff.md
+ docs/proposal.md"
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Markdown-superset interpreter written in Ruby"
+HOMEPAGE="https://github.com/bhollis/maruku"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 x86 ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="highlight test"
+
+ruby_add_bdepend "test? ( dev-ruby/nokogiri-diff dev-ruby/syntax )"
+ruby_add_rdepend "highlight? ( dev-ruby/syntax )"
+
+DEPEND+=" test? ( app-text/blahtexml )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Ss]imple[Cc]ov/ s:^:#:' spec/spec_helper.rb || die
+}
+
+pkg_postinst() {
+ elog
+ elog "You need to emerge app-text/texlive and dev-texlive/texlive-latexextra if"
+ elog "you want to use --pdf with Maruku. You may also want to emerge"
+ elog "dev-texlive/texlive-latexrecommended to enable LaTeX syntax highlighting."
+ elog
+}
diff --git a/dev-ruby/maruku/maruku-0.7.3.ebuild b/dev-ruby/maruku/maruku-0.7.3.ebuild
deleted file mode 100644
index 4d62a01cd0dd..000000000000
--- a/dev-ruby/maruku/maruku-0.7.3.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="docs/div_syntax.md docs/entity_test.md
- docs/markdown_syntax.md docs/maruku.md docs/math.md docs/other_stuff.md
- docs/proposal.md"
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Markdown-superset interpreter written in Ruby"
-HOMEPAGE="https://github.com/bhollis/maruku"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 arm ~arm64 ~hppa ppc ppc64 x86 ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="highlight test"
-
-ruby_add_bdepend "test? ( dev-ruby/nokogiri-diff )"
-ruby_add_rdepend "highlight? ( dev-ruby/syntax )"
-
-DEPEND+=" test? ( app-text/blahtexml )"
-
-all_ruby_prepare() {
- sed -i -e '/[Ss]imple[Cc]ov/ s:^:#:' spec/spec_helper.rb || die
-}
-
-pkg_postinst() {
- elog
- elog "You need to emerge app-text/texlive and dev-texlive/texlive-latexextra if"
- elog "you want to use --pdf with Maruku. You may also want to emerge"
- elog "dev-texlive/texlive-latexrecommended to enable LaTeX syntax highlighting."
- elog
-}
diff --git a/dev-ruby/maruku/metadata.xml b/dev-ruby/maruku/metadata.xml
index 81fd3736f4e8..ee55260e2a00 100644
--- a/dev-ruby/maruku/metadata.xml
+++ b/dev-ruby/maruku/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/mash/mash-0.1.1-r2.ebuild b/dev-ruby/mash/mash-0.1.1-r2.ebuild
deleted file mode 100644
index 32e76335fd59..000000000000
--- a/dev-ruby/mash/mash-0.1.1-r2.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Mash is an extended Hash that gives simple pseudo-object functionality"
-HOMEPAGE="https://github.com/mbleigh/mash"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
diff --git a/dev-ruby/mash/mash-0.1.1-r3.ebuild b/dev-ruby/mash/mash-0.1.1-r3.ebuild
new file mode 100644
index 000000000000..6bba1dcb06b8
--- /dev/null
+++ b/dev-ruby/mash/mash-0.1.1-r3.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Mash is an extended Hash that gives simple pseudo-object functionality"
+HOMEPAGE="https://github.com/mbleigh/mash"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's/be_true/be true/' -e 's/be_false/be false/' spec/mash_spec.rb || die
+}
diff --git a/dev-ruby/mash/metadata.xml b/dev-ruby/mash/metadata.xml
index b4de8743d329..556b5ade1c75 100644
--- a/dev-ruby/mash/metadata.xml
+++ b/dev-ruby/mash/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/matrix/Manifest b/dev-ruby/matrix/Manifest
new file mode 100644
index 000000000000..9ce047fbe16f
--- /dev/null
+++ b/dev-ruby/matrix/Manifest
@@ -0,0 +1 @@
+DIST matrix-0.4.2.tar.gz 42649 BLAKE2B 03b7f3482d6d5a48c626fee824039c182a35242a2c25875e7cada4d781d1939ed780b5cbf8c45645d07c81e4f5d5c5559a1ec236a5152e095a60228e4ed3c59e SHA512 b47d1d662acdca703afd323fe9293726e051b0ef87162ff45c26c62fad2f3158f71d943f36f7c6706702885e2fdea8483b37ee45f25295225e86dec5f88590a4
diff --git a/dev-ruby/matrix/matrix-0.4.2.ebuild b/dev-ruby/matrix/matrix-0.4.2.ebuild
new file mode 100644
index 000000000000..1df2d66edd6e
--- /dev/null
+++ b/dev-ruby/matrix/matrix-0.4.2.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An implementation of Matrix and Vector classes"
+HOMEPAGE="https://github.com/ruby/matrix"
+SRC_URI="https://github.com/ruby/matrix/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+
+all_ruby_prepare() {
+ sed -i -e 's:require_relative ":require "./:' -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/matrix/metadata.xml b/dev-ruby/matrix/metadata.xml
new file mode 100644
index 000000000000..c16f2db61922
--- /dev/null
+++ b/dev-ruby/matrix/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/matrix</remote-id>
+ <remote-id type="rubygems">matrix</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/maxitest/Manifest b/dev-ruby/maxitest/Manifest
index dd4275f5a12d..c7a70cb45168 100644
--- a/dev-ruby/maxitest/Manifest
+++ b/dev-ruby/maxitest/Manifest
@@ -1,4 +1,4 @@
-DIST maxitest-2.8.0.tar.gz 60742 BLAKE2B 313e7efeca866961f3ee4c43279557bf628bd5d6d75e119fc9723b16a4dc7d38784a34078a9c6c6c5893f4bd28723757658122794deeca70f1abf54187819acf SHA512 cf05087052bb9162d20cca5180808edc00606d0125d461968c033cc4ee44a193d45a337fa2d61f34e8c2097d71bad5eba16da6cf10166ee8afaacda29654ab89
-DIST maxitest-3.0.1.tar.gz 60926 BLAKE2B 9ef03af6e55e7565acfa89d64e04aab40ef11445f0266ee85e68daa7224000922b8107c72cf77e75c4ba630ec19207cab3f5b0ce08f42270756deabfa5124b28 SHA512 c71e8af37387a8dd8f73aa01cde1c5baf772a7fe6125df5962ffb1aaf07515ebcd6d0f8530f306cc60927a289f21e4c75e0fece674230d8cdab82f5bfecfb899
-DIST maxitest-3.1.0.tar.gz 60956 BLAKE2B 5819137a548dfe1ae1c641ea3ddb4fbdf522e08b35eddbeb5dd4f3cfe2f320d16779d48166be820215e3dedecbe1f77d2db475403d476e53d5019631a0972d09 SHA512 37fdba5658cd640de311efaaa50ca32b9415c0819b9adc919d6471ae9317f9a60eb5004afa29d67386b6b9524bda06791054b1d34e31ccbe160a56c315f44b76
-DIST maxitest-3.2.0.tar.gz 61272 BLAKE2B e67404333329cd32604a7bc064a7aaaa876b41dd47d0488c7ced107bcec16b127a8e29bd6129d2897efd49d446011d3c70a8b9c5f1c0d4e91f677f4a0bfa24f2 SHA512 9cf787067bed8db16148eca20494ca718a2bc6b034fb5d9c824022af4a8dbfd69cf4b605fddcd3a9ca09d18a699753738a50921befdf6134ec6c41ccc5170f91
+DIST maxitest-4.4.1.tar.gz 62757 BLAKE2B 0023472200643dcc17aa7fc3720ebdaccb988628eedd55d69c47a0702b4700760dcc9178f1d63a29d8b0a461ceb7195f9d13579cf0393a3ca669515bcf77239a SHA512 927c5619541f13b2af064f1adb01670ec43570252a62d32b98674b7d4dd72ebc02594c000f6dfae7b9de275086df23e418f13c4c21595d47f429b86d0941dbc2
+DIST maxitest-5.2.0.tar.gz 63610 BLAKE2B 98efc803f43d02cfdec0431279446e555650928442593be436e0ebfcb0d21e505e69b9e26fd8560b12c4feb2ce307d9d46954ff8a82a80b328c2d0442c451f5a SHA512 10251961613a6a014c868c3fd2a8c4c51253b2dee058561450e88ef628de25b6042b17d04d7338afd400ca30e8c3c12923f0976ec28578b726630699d2a0d5b5
+DIST maxitest-5.3.1.tar.gz 64755 BLAKE2B 8de322902638a284dadcf269fc16d82ee70a4b5fe4211c1859ce832a8b424c98347b005f103e9a2342df8384591ff98b23171bf2f61285177aa3bf1a0520bac9 SHA512 a287f880a1eb8695e716654c3921ffcf27430657285ec29002834145f87db620ae481f9dd5c023edec0473ce947c366eaeb78ddbbf556d26e08605f0b9341f69
+DIST maxitest-5.4.0.tar.gz 64727 BLAKE2B 99751c419386ab1b2a10233371c151f8d7a55315dca223e65a72ccab5b6aabb655c2e853190dc94c09dacb77542a0cdadc4121f45207d1d756f5d8b0d727f457 SHA512 7bdff3081b294fa43fc9a03352eb8c3be4b1a0010de5ea6a3027a9207ffcee09aeb69cec5faf430cba8ed094e76e75e6b46c6ab60f749cde1f4fcfe763ab1242
diff --git a/dev-ruby/maxitest/maxitest-2.8.0.ebuild b/dev-ruby/maxitest/maxitest-2.8.0.ebuild
deleted file mode 100644
index 5cae59d39770..000000000000
--- a/dev-ruby/maxitest/maxitest-2.8.0.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="Readme.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit versionator 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 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "<dev-ruby/minitest-5.12: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 '/\(bump\|wwtd\)/ s:^:#:' \
- -e 's/git ls-files/find/' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i -e '/byebug/ s:^:#:' Gemfile || 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}" RSPEC_VERSION=3 ruby-ng_rspec spec
-}
diff --git a/dev-ruby/maxitest/maxitest-3.0.1.ebuild b/dev-ruby/maxitest/maxitest-3.0.1.ebuild
deleted file mode 100644
index e82293c8bdc0..000000000000
--- a/dev-ruby/maxitest/maxitest-3.0.1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="Readme.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit versionator 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 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "<dev-ruby/minitest-5.12: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 '/\(bump\|wwtd\)/ s:^:#:' \
- -e 's/git ls-files/find/' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i -e '/byebug/ s:^:#:' Gemfile || 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}" RSPEC_VERSION=3 ruby-ng_rspec spec
-}
diff --git a/dev-ruby/maxitest/maxitest-3.1.0.ebuild b/dev-ruby/maxitest/maxitest-3.1.0.ebuild
deleted file mode 100644
index 0275150a1023..000000000000
--- a/dev-ruby/maxitest/maxitest-3.1.0.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="Readme.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit versionator 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 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "<dev-ruby/minitest-5.12: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 '/\(bump\|wwtd\)/ s:^:#:' \
- -e 's/git ls-files/find/' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i -e '/byebug/ s:^:#:' Gemfile || 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}" RSPEC_VERSION=3 ruby-ng_rspec spec
-}
diff --git a/dev-ruby/maxitest/maxitest-3.2.0.ebuild b/dev-ruby/maxitest/maxitest-3.2.0.ebuild
deleted file mode 100644
index bef598a11796..000000000000
--- a/dev-ruby/maxitest/maxitest-3.2.0.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-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 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "<dev-ruby/minitest-5.12: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 '/\(bump\|wwtd\)/ s:^:#:' \
- -e 's/git ls-files/find/' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i -e '/byebug/ s:^:#:' Gemfile || 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}" RSPEC_VERSION=3 ruby-ng_rspec spec
-}
diff --git a/dev-ruby/maxitest/maxitest-4.4.1-r1.ebuild b/dev-ruby/maxitest/maxitest-4.4.1-r1.ebuild
new file mode 100644
index 000000000000..2c0f44548410
--- /dev/null
+++ b/dev-ruby/maxitest/maxitest-4.4.1-r1.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 ruby32"
+
+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 ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "<dev-ruby/minitest-5.18:*"
+
+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/maxitest/maxitest-5.2.0.ebuild b/dev-ruby/maxitest/maxitest-5.2.0.ebuild
new file mode 100644
index 000000000000..254679bd2a01
--- /dev/null
+++ b/dev-ruby/maxitest/maxitest-5.2.0.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md 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 ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/minitest-5.14.0:* <dev-ruby/minitest-5.20.0:*"
+
+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 -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/\(debug\|bump\)/ s:^:#:' Gemfile || die
+
+ sed -e '/shows backtrace for/askip' \
+ -e '/describe.*line/ s/describe/xdescribe/' \
+ -e '/describe.*color/ s/describe/xdescribe/' \
+ -i spec/maxitest_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Use the correct target
+ sed -e '/\(run_cmd\|sh\)/ s:ruby:'${RUBY}':' \
+ -e '/\(run_cmd\|sh\)/ s:mtest:'${RUBY}' -S bin/mtest:' \
+ -i 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/maxitest/maxitest-5.3.1.ebuild b/dev-ruby/maxitest/maxitest-5.3.1.ebuild
new file mode 100644
index 000000000000..254679bd2a01
--- /dev/null
+++ b/dev-ruby/maxitest/maxitest-5.3.1.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md 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 ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/minitest-5.14.0:* <dev-ruby/minitest-5.20.0:*"
+
+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 -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/\(debug\|bump\)/ s:^:#:' Gemfile || die
+
+ sed -e '/shows backtrace for/askip' \
+ -e '/describe.*line/ s/describe/xdescribe/' \
+ -e '/describe.*color/ s/describe/xdescribe/' \
+ -i spec/maxitest_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Use the correct target
+ sed -e '/\(run_cmd\|sh\)/ s:ruby:'${RUBY}':' \
+ -e '/\(run_cmd\|sh\)/ s:mtest:'${RUBY}' -S bin/mtest:' \
+ -i 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/maxitest/maxitest-5.4.0.ebuild b/dev-ruby/maxitest/maxitest-5.4.0.ebuild
new file mode 100644
index 000000000000..014c2e859dc8
--- /dev/null
+++ b/dev-ruby/maxitest/maxitest-5.4.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md 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 ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/minitest-5.14.0:* <dev-ruby/minitest-5.21.0:*"
+
+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 -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -e '/\(debug\|bump\)/ s:^:#:' \
+ -e 'agem "mutex_m"' \
+ -i Gemfile || die
+
+ sed -e '/shows backtrace for/askip' \
+ -e '/describe.*line/ s/describe/xdescribe/' \
+ -e '/describe.*color/ s/describe/xdescribe/' \
+ -i spec/maxitest_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Use the correct target
+ sed -e '/\(run_cmd\|sh\)/ s:ruby:'${RUBY}':' \
+ -e '/\(run_cmd\|sh\)/ s:mtest:'${RUBY}' -S bin/mtest:' \
+ -i 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/maxitest/metadata.xml b/dev-ruby/maxitest/metadata.xml
index 53f6755680eb..8feeb90c37c8 100644
--- a/dev-ruby/maxitest/metadata.xml
+++ b/dev-ruby/maxitest/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/mecab-ruby/mecab-ruby-0.996-r1.ebuild b/dev-ruby/mecab-ruby/mecab-ruby-0.996-r1.ebuild
deleted file mode 100644
index 81506b330413..000000000000
--- a/dev-ruby/mecab-ruby/mecab-ruby-0.996-r1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng
-
-DESCRIPTION="Ruby binding for MeCab"
-HOMEPAGE="http://taku910.github.io/mecab/"
-SRC_URI="https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/${PN%-*}/${P}.tar.gz"
-
-LICENSE="|| ( BSD LGPL-2.1 GPL-2 )"
-SLOT="0"
-KEYWORDS="amd64 ppc ppc64 x86"
-IUSE=""
-
-DEPEND="~app-text/mecab-${PV}"
-RDEPEND="${DEPEND}"
-
-DOCS=( AUTHORS README test.rb )
-HTML_DOCS=( bindings.html )
-
-each_ruby_configure() {
- ${RUBY} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1
-}
-
-each_ruby_install() {
- emake DESTDIR="${D}" install
-}
-
-all_ruby_install() {
- einstalldocs
-}
diff --git a/dev-ruby/mecab-ruby/mecab-ruby-0.996-r2.ebuild b/dev-ruby/mecab-ruby/mecab-ruby-0.996-r2.ebuild
new file mode 100644
index 000000000000..d080cb6c7ec6
--- /dev/null
+++ b/dev-ruby/mecab-ruby/mecab-ruby-0.996-r2.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+inherit ruby-ng
+
+DESCRIPTION="Ruby binding for MeCab"
+HOMEPAGE="https://taku910.github.io/mecab/"
+SRC_URI="https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/${PN%-*}/${P}.tar.gz"
+
+LICENSE="|| ( BSD LGPL-2.1 GPL-2 )"
+SLOT="0"
+KEYWORDS="amd64 ppc ppc64 x86"
+IUSE=""
+
+DEPEND="~app-text/mecab-${PV}"
+RDEPEND="${DEPEND}"
+
+DOCS=( AUTHORS README test.rb )
+HTML_DOCS=( bindings.html )
+
+each_ruby_configure() {
+ ${RUBY} extconf.rb || die
+}
+
+each_ruby_compile() {
+ emake V=1
+}
+
+each_ruby_install() {
+ emake DESTDIR="${D}" install
+}
+
+all_ruby_install() {
+ einstalldocs
+}
diff --git a/dev-ruby/mecab-ruby/metadata.xml b/dev-ruby/mecab-ruby/metadata.xml
index 82adca0f7b81..eaec32deefa9 100644
--- a/dev-ruby/mecab-ruby/metadata.xml
+++ b/dev-ruby/mecab-ruby/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>cjk@gentoo.org</email>
diff --git a/dev-ruby/mechanize/Manifest b/dev-ruby/mechanize/Manifest
index dcda81211f1f..4306fd4784be 100644
--- a/dev-ruby/mechanize/Manifest
+++ b/dev-ruby/mechanize/Manifest
@@ -1 +1,3 @@
-DIST mechanize-2.7.6.gem 138752 BLAKE2B be4e8f53c3ad88ae5aac867f836a20b5bcd47aa61db07e2dfb7e2d0c72d368ddfa620411fdddd5c2a408eeceb3c4c1ed3a15f6086ec846cda3a3c3808977309d SHA512 e89eb75af169ba198e5a82ffe4ce3c0962bc3fb6793f88bc735b647b7816d0c78d8968c43d213071e017e7f836ab91ed0c546c9eb986647355a1d38b1ba18138
+DIST mechanize-2.10.0.gem 144384 BLAKE2B 8a317b78c28d85f957cc50e54139305b2e64409b992ad5558385609d28986b33bfcbd947e7be3688524be0b2840a978004f4ea89b5d68fa5c52b2130ece0fc48 SHA512 e97d2b29326a12c2f5a7e2d997997c95a814fc127097bfd0786d2388ffec43a5a5bca05d5c4956fed6833b5aee84913cc2a275f56712a66651d3993ae0a46cb9
+DIST mechanize-2.9.1.gem 143872 BLAKE2B 0e5d9f8e2f6eadf8de1f252518646b58117e1151be595edb5827a69b1bc83ce063690fe41ea3ec38a66565d44cb46141e4a0b34c878308c69dbc1249304d6f0a SHA512 6525cf8ea31c36fb20f5d83bebdb647942f24ddee979a832343ea964de11e31421e4f68943c1b15c9bb519b9b11cda9ab2a1c10ceca412e1854b5b20dda7ac78
+DIST mechanize-2.9.2.gem 144384 BLAKE2B 8271f86ad29f720f196941cf151690a7ee76600d5045c0ff672dedbb8cf852c954fa4b765d158525a1deee14f508915c03b4ab1a50d0a02655b037492dfb3fdb SHA512 1b7ef1acf41dc2080d64ca3052380b988403cb64ee748a1d052153c8e3bc167f3fe98f7d2c80a706906ca1a5abab5209a87ebda04cd8a068d8be8e8223a23829
diff --git a/dev-ruby/mechanize/files/mechanize-2.9.1-libxml2-1.patch b/dev-ruby/mechanize/files/mechanize-2.9.1-libxml2-1.patch
new file mode 100644
index 000000000000..e2b72f2d8adf
--- /dev/null
+++ b/dev-ruby/mechanize/files/mechanize-2.9.1-libxml2-1.patch
@@ -0,0 +1,64 @@
+From 762df0c71705d1c054aca4abd95a638774a47242 Mon Sep 17 00:00:00 2001
+From: Mike Dalessio <mike.dalessio@gmail.com>
+Date: Wed, 7 Jun 2023 10:30:37 -0400
+Subject: [PATCH] test: work around libxml2 encoding changes
+
+versions 2.11.0..2.11.4 do not recover from encoding errors. upcoming
+release will change the encoding of the resulting doc as a result of
+recovery changes in libxml2.
+
+See https://gitlab.gnome.org/GNOME/libxml2/-/issues/543 for more
+context.
+---
+ test/test_mechanize_page_link.rb | 14 ++++++++++++--
+ 1 file changed, 12 insertions(+), 2 deletions(-)
+
+diff --git a/test/test_mechanize_page_link.rb b/test/test_mechanize_page_link.rb
+index 5e77dcc0..988328cc 100644
+--- a/test/test_mechanize_page_link.rb
++++ b/test/test_mechanize_page_link.rb
+@@ -1,5 +1,7 @@
+ # coding: utf-8
+
++puts "Nokogiri::VERSION_INFO: #{Nokogiri::VERSION_INFO}"
++
+ require 'mechanize/test_case'
+
+ class TestMechanizePageLink < Mechanize::TestCase
+@@ -111,11 +113,15 @@ def test_encoding_charset_after_title
+ def test_encoding_charset_after_title_bad
+ skip_if_nkf_dependency
+
++ # https://gitlab.gnome.org/GNOME/libxml2/-/issues/543
++ skip if Nokogiri.uses_libxml?([">= 2.11.0", "<= 2.11.4"])
++ expected_encoding = Nokogiri.uses_libxml?("< 2.11.0") ? 'UTF-8' : 'Shift_JIS'
++
+ page = util_page UTF8
+
+ assert_equal false, page.encoding_error?
+
+- assert_equal 'UTF-8', page.encoding
++ assert_equal expected_encoding, page.encoding
+ end
+
+ def test_encoding_charset_after_title_double_bad
+@@ -131,6 +137,10 @@ def test_encoding_charset_after_title_double_bad
+ def test_encoding_charset_bad
+ skip_if_nkf_dependency
+
++ # https://gitlab.gnome.org/GNOME/libxml2/-/issues/543
++ skip if Nokogiri.uses_libxml?([">= 2.11.0", "<= 2.11.4"])
++ expected_encoding = Nokogiri.uses_libxml?("< 2.11.0") ? 'UTF-8' : 'Shift_JIS'
++
+ page = util_page "<title>#{UTF8_TITLE}</title>"
+ page.encodings.replace %w[
+ UTF-8
+@@ -139,7 +149,7 @@ def test_encoding_charset_bad
+
+ assert_equal false, page.encoding_error?
+
+- assert_equal 'UTF-8', page.encoding
++ assert_equal expected_encoding, page.encoding
+ end
+
+ def test_encoding_meta_charset
diff --git a/dev-ruby/mechanize/files/mechanize-2.9.1-libxml2-2.patch b/dev-ruby/mechanize/files/mechanize-2.9.1-libxml2-2.patch
new file mode 100644
index 000000000000..3fcd8a270b16
--- /dev/null
+++ b/dev-ruby/mechanize/files/mechanize-2.9.1-libxml2-2.patch
@@ -0,0 +1,34 @@
+From 0ba09f46be6f1ce4adb94baca9867ed769f6535a Mon Sep 17 00:00:00 2001
+From: Mike Dalessio <mike.dalessio@gmail.com>
+Date: Fri, 11 Aug 2023 09:29:06 -0400
+Subject: [PATCH] test: work around libxml2 encoding changes
+
+Related to 762df0c7, we're seeing the upstream fixes did not ship in
+v2.11.5 so let's change the version test to assume it won't land until
+v2.12.0.
+---
+ test/test_mechanize_page_link.rb | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/test/test_mechanize_page_link.rb b/test/test_mechanize_page_link.rb
+index 988328cc..04294420 100644
+--- a/test/test_mechanize_page_link.rb
++++ b/test/test_mechanize_page_link.rb
+@@ -114,7 +114,7 @@ def test_encoding_charset_after_title_bad
+ skip_if_nkf_dependency
+
+ # https://gitlab.gnome.org/GNOME/libxml2/-/issues/543
+- skip if Nokogiri.uses_libxml?([">= 2.11.0", "<= 2.11.4"])
++ skip if Nokogiri.uses_libxml?([">= 2.11.0", "< 2.12.0"])
+ expected_encoding = Nokogiri.uses_libxml?("< 2.11.0") ? 'UTF-8' : 'Shift_JIS'
+
+ page = util_page UTF8
+@@ -138,7 +138,7 @@ def test_encoding_charset_bad
+ skip_if_nkf_dependency
+
+ # https://gitlab.gnome.org/GNOME/libxml2/-/issues/543
+- skip if Nokogiri.uses_libxml?([">= 2.11.0", "<= 2.11.4"])
++ skip if Nokogiri.uses_libxml?([">= 2.11.0", "< 2.12.0"])
+ expected_encoding = Nokogiri.uses_libxml?("< 2.11.0") ? 'UTF-8' : 'Shift_JIS'
+
+ page = util_page "<title>#{UTF8_TITLE}</title>"
diff --git a/dev-ruby/mechanize/mechanize-2.10.0.ebuild b/dev-ruby/mechanize/mechanize-2.10.0.ebuild
new file mode 100644
index 000000000000..4a9eec5d11bb
--- /dev/null
+++ b/dev-ruby/mechanize/mechanize-2.10.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md EXAMPLES.rdoc GUIDE.rdoc README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby library used for automating interaction with websites"
+HOMEPAGE="https://github.com/sparklemotion/mechanize"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="test"
+
+ruby_add_bdepend ">=dev-ruby/hoe-3.7
+ test? ( dev-ruby/minitest:5 )"
+
+ruby_add_rdepend "
+ >=dev-ruby/addressable-2.8:0
+ dev-ruby/base64
+ >=dev-ruby/domain_name-0.5.20190701:0
+ >=dev-ruby/http-cookie-1.0.3:0
+ dev-ruby/mime-types:3
+ >=dev-ruby/net-http-digest_auth-1.4.1:0
+ dev-ruby/net-http-persistent:4
+ >=dev-ruby/nokogiri-1.11.2:0
+ >=dev-ruby/rubyntlm-0.6.3:0
+ >=dev-ruby/webrick-1.7:0
+ >=dev-ruby/webrobots-0.1.2 =dev-ruby/webrobots-0.1*
+"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e '$VERBOSE=true; Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+}
diff --git a/dev-ruby/mechanize/mechanize-2.7.6.ebuild b/dev-ruby/mechanize/mechanize-2.7.6.ebuild
deleted file mode 100644
index 7147dcc33b8b..000000000000
--- a/dev-ruby/mechanize/mechanize-2.7.6.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc EXAMPLES.rdoc GUIDE.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Ruby library used for automating interaction with websites"
-HOMEPAGE="https://github.com/sparklemotion/mechanize"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend ">=dev-ruby/hoe-3.7
- test? ( dev-ruby/minitest:5 )"
-ruby_add_rdepend ">=dev-ruby/nokogiri-1.6
- >=dev-ruby/net-http-digest_auth-1.1.1
- >=dev-ruby/net-http-persistent-2.5.2
- >=dev-ruby/ntlm-http-0.1.1
- >=dev-ruby/webrobots-0.0.9
- >=dev-ruby/http-cookie-1.0.2
- >=dev-ruby/mime-types-1.17.2:*
- >=dev-ruby/domain_name-0.5.1"
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc examples/* || die
-}
diff --git a/dev-ruby/mechanize/mechanize-2.9.1.ebuild b/dev-ruby/mechanize/mechanize-2.9.1.ebuild
new file mode 100644
index 000000000000..2c486d5111b9
--- /dev/null
+++ b/dev-ruby/mechanize/mechanize-2.9.1.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md EXAMPLES.rdoc GUIDE.rdoc README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby library used for automating interaction with websites"
+HOMEPAGE="https://github.com/sparklemotion/mechanize"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc64 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+
+PATCHES=(
+ "${FILESDIR}/${P}-libxml2-1.patch"
+ "${FILESDIR}/${P}-libxml2-2.patch"
+)
+
+ruby_add_bdepend ">=dev-ruby/hoe-3.7
+ test? ( dev-ruby/minitest:5 )"
+
+ruby_add_rdepend "
+ >=dev-ruby/addressable-2.8:0
+ >=dev-ruby/domain_name-0.5.20190701:0
+ >=dev-ruby/http-cookie-1.0.3:0
+ dev-ruby/mime-types:3
+ >=dev-ruby/net-http-digest_auth-1.4.1:0
+ dev-ruby/net-http-persistent:4
+ >=dev-ruby/nokogiri-1.11.2:0
+ >=dev-ruby/rubyntlm-0.6.3:0
+ >=dev-ruby/webrick-1.7:0
+ >=dev-ruby/webrobots-0.1.2 =dev-ruby/webrobots-0.1*
+"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e '$VERBOSE=true; Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+}
diff --git a/dev-ruby/mechanize/mechanize-2.9.2.ebuild b/dev-ruby/mechanize/mechanize-2.9.2.ebuild
new file mode 100644
index 000000000000..ae70fa37dc68
--- /dev/null
+++ b/dev-ruby/mechanize/mechanize-2.9.2.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md EXAMPLES.rdoc GUIDE.rdoc README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby library used for automating interaction with websites"
+HOMEPAGE="https://github.com/sparklemotion/mechanize"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+
+# PATCHES=(
+# "${FILESDIR}/${P}-libxml2-1.patch"
+# "${FILESDIR}/${P}-libxml2-2.patch"
+# )
+
+ruby_add_bdepend ">=dev-ruby/hoe-3.7
+ test? ( dev-ruby/minitest:5 )"
+
+ruby_add_rdepend "
+ >=dev-ruby/addressable-2.8:0
+ >=dev-ruby/domain_name-0.5.20190701:0
+ >=dev-ruby/http-cookie-1.0.3:0
+ dev-ruby/mime-types:3
+ >=dev-ruby/net-http-digest_auth-1.4.1:0
+ dev-ruby/net-http-persistent:4
+ >=dev-ruby/nokogiri-1.11.2:0
+ >=dev-ruby/rubyntlm-0.6.3:0
+ >=dev-ruby/webrick-1.7:0
+ >=dev-ruby/webrobots-0.1.2 =dev-ruby/webrobots-0.1*
+"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e '$VERBOSE=true; Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+}
diff --git a/dev-ruby/mechanize/metadata.xml b/dev-ruby/mechanize/metadata.xml
index 38845a0d1c2e..ea2c74519b45 100644
--- a/dev-ruby/mechanize/metadata.xml
+++ b/dev-ruby/mechanize/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/memo_wise/Manifest b/dev-ruby/memo_wise/Manifest
new file mode 100644
index 000000000000..a9936cddafb7
--- /dev/null
+++ b/dev-ruby/memo_wise/Manifest
@@ -0,0 +1,2 @@
+DIST memo_wise-1.7.0.tar.gz 185861 BLAKE2B 49ef04f4ef73ea24ac243c70d9545ed65c0fc8f4c6d9571d7f31c2728e82087cf1676aedd01aa1d0c1994a16ea7215b264a51fa2b8fe957cba3eb9088fd3a414 SHA512 3b87a1a81c060c34d4c91409ab6b2f8aa700e3313233e652e174f62c3dd826b675594d84d00ad21ae1f12dba4c6b0fe59431c54b4bbdf46430895635aa220b5f
+DIST memo_wise-1.8.0.tar.gz 186795 BLAKE2B afb1a027c6c981601d51262f13508fb8cd0074f6283bdb953537e300cc4970856765db60a92afa8331139ff98e50ba97529366f9adcd4d1ab93c93f52dcd2e48 SHA512 173dbab6fe93f21ad1ead34f4fbe8b0425747e1f2640472b9a1e4b79b935260cc0163d907d8ec423152d91165f32f2e8f1691dcdbd15830f375473415089ce6e
diff --git a/dev-ruby/memo_wise/memo_wise-1.7.0.ebuild b/dev-ruby/memo_wise/memo_wise-1.7.0.ebuild
new file mode 100644
index 000000000000..bfb5df0cd9f8
--- /dev/null
+++ b/dev-ruby/memo_wise/memo_wise-1.7.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="memo_wise.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The wise choice for Ruby memoization"
+HOMEPAGE="https://github.com/panorama-ed/memo_wise"
+SRC_URI="https://github.com/panorama-ed/memo_wise/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~riscv"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
+
+ # Avoid specs for an unmaintained package with old dependencies that is optional.
+ sed -e '/require.*values/ s:^:#:' \
+ -e '/when the class is a Value class/,/^ end/ s:^:#:' \
+ -i spec/memo_wise_spec.rb || die
+
+ sed -e 's:_relative ": "./:' \
+ -e 's/__dir__/"."/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/memo_wise/memo_wise-1.8.0.ebuild b/dev-ruby/memo_wise/memo_wise-1.8.0.ebuild
new file mode 100644
index 000000000000..32095482d139
--- /dev/null
+++ b/dev-ruby/memo_wise/memo_wise-1.8.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="memo_wise.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The wise choice for Ruby memoization"
+HOMEPAGE="https://github.com/panorama-ed/memo_wise"
+SRC_URI="https://github.com/panorama-ed/memo_wise/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~riscv"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
+
+ # Avoid specs for an unmaintained package with old dependencies that is optional.
+ sed -e '/require.*values/ s:^:#:' \
+ -e '/when the class is a Value class/,/^ end/ s:^:#:' \
+ -i spec/memo_wise_spec.rb || die
+
+ sed -e 's:_relative ": "./:' \
+ -e 's/__dir__/"."/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/memo_wise/metadata.xml b/dev-ruby/memo_wise/metadata.xml
new file mode 100644
index 000000000000..81df83f8cd67
--- /dev/null
+++ b/dev-ruby/memo_wise/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">panorama-ed/memo_wise</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/memoist/Manifest b/dev-ruby/memoist/Manifest
index 418883461b29..45157df71fba 100644
--- a/dev-ruby/memoist/Manifest
+++ b/dev-ruby/memoist/Manifest
@@ -1,2 +1 @@
-DIST memoist-0.15.0.gem 11776 BLAKE2B e25e4a203e9cda8028809b2b381ce0682909a3eca88034b6243c9f9fdb0dadcefc21eb62bd6b4723310956671238f25355edbf0cd796e8a4c694aebb3005970b SHA512 ee8ef99f78bc37c745be6ff156a9533eb1f288f8fd9b81a88520c1e2ace465379f3ac7c666d7cac2a3cf286bf3d0a85e2e2d10ab4fa17eced676b7072e3f592f
-DIST memoist-0.16.0.gem 12288 BLAKE2B 268d0ad8b197101b7a1af0e9c67fae7cabe7d4d91bbf7bbd4435f4390176faad46d2a2f0699830bed86eb39acceb698870cd7b0a79cb1038390478d37596c700 SHA512 55a560793cfb911ef15085de6fac2816e8340b9939394a4c2c01264e0da3ca4008081916a0431e6f76e6b90c0294305cbd0803643f159f946973ff4dc7c94df5
+DIST memoist-0.16.2.gem 13824 BLAKE2B c3ec292126cd5254a2561317554d4bfebd11155de88138bf82a2a09b4342a0833d87cad33dc149cd40bf962843230161b766fcd5b03c55c1d55fd705a5e768f1 SHA512 8de7c73362e621c420f04e1b37c27a21fdc46c5e341c8cfbfd835f1cb53eb1a763dc43565fcc9723bcbdaa439a7c6921a8541a741646db4ef127cb8f6018fb10
diff --git a/dev-ruby/memoist/memoist-0.15.0.ebuild b/dev-ruby/memoist/memoist-0.15.0.ebuild
deleted file mode 100644
index 771e46372abe..000000000000
--- a/dev-ruby/memoist/memoist-0.15.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-DESCRIPTION="ActiveSupport::Memoizable with a few enhancements"
-HOMEPAGE="https://github.com/matthewrudy/memoist"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/memoist/memoist-0.16.0.ebuild b/dev-ruby/memoist/memoist-0.16.0.ebuild
deleted file mode 100644
index a9e7a3fec0fd..000000000000
--- a/dev-ruby/memoist/memoist-0.16.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-DESCRIPTION="ActiveSupport::Memoizable with a few enhancements"
-HOMEPAGE="https://github.com/matthewrudy/memoist"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/memoist/memoist-0.16.2-r1.ebuild b/dev-ruby/memoist/memoist-0.16.2-r1.ebuild
new file mode 100644
index 000000000000..9de2ccbd5d71
--- /dev/null
+++ b/dev-ruby/memoist/memoist-0.16.2-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+DESCRIPTION="ActiveSupport::Memoizable with a few enhancements"
+HOMEPAGE="https://github.com/matthewrudy/memoist"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/memoist/metadata.xml b/dev-ruby/memoist/metadata.xml
index 7b013c97b9f3..7a6b26e0b75b 100644
--- a/dev-ruby/memoist/metadata.xml
+++ b/dev-ruby/memoist/metadata.xml
@@ -1,8 +1,9 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>naota@gentoo.org</email>
+ <name>Naohiro Aota</name>
</maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/memoizable/memoizable-0.4.2-r1.ebuild b/dev-ruby/memoizable/memoizable-0.4.2-r1.ebuild
new file mode 100644
index 000000000000..803484ba53bb
--- /dev/null
+++ b/dev-ruby/memoizable/memoizable-0.4.2-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Memoize method return values"
+HOMEPAGE="https://github.com/dkubb/memoizable"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/thread_safe-0.3.1:0"
+
+all_ruby_prepare() {
+ sed -i -e "/simplecov/,/^end$/d" spec/spec_helper.rb || die
+
+ # Avoid a failing test that also fails for upstream Travis.
+ rm spec/unit/memoizable/class_methods/included_spec.rb || die
+}
diff --git a/dev-ruby/memoizable/memoizable-0.4.2.ebuild b/dev-ruby/memoizable/memoizable-0.4.2.ebuild
deleted file mode 100644
index 1809cd0c6cda..000000000000
--- a/dev-ruby/memoizable/memoizable-0.4.2.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Memoize method return values"
-HOMEPAGE="https://github.com/dkubb/memoizable"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/thread_safe-0.3.1:0"
-
-all_ruby_prepare() {
- sed -i -e "/simplecov/,/^end$/d" spec/spec_helper.rb || die
-
- # Avoid a failing test that also fails for upstream Travis.
- rm spec/unit/memoizable/class_methods/included_spec.rb || die
-}
diff --git a/dev-ruby/memoizable/metadata.xml b/dev-ruby/memoizable/metadata.xml
index 18d906277b38..87d451d9ca50 100644
--- a/dev-ruby/memoizable/metadata.xml
+++ b/dev-ruby/memoizable/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/memoize/Manifest b/dev-ruby/memoize/Manifest
deleted file mode 100644
index 869ca7c0e6d3..000000000000
--- a/dev-ruby/memoize/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST memoize-1.3.1.gem 7680 BLAKE2B 3636f1911b6aac615a216edec8a154cf143174b63904f62120dd92123dd390193aea43967c60b3674f5ae2f81dcde9874e90c3222bb211e64db58a31eda174ab SHA512 048e1f6025519a32ca828cf1cf92c97ff94a0fb60ac64bf5b4d59ec715e610472307df8905f06f0be3d46529bf8eaaaf4d4874463b6e46934af0fea4766fd3ce
diff --git a/dev-ruby/memoize/memoize-1.3.1-r1.ebuild b/dev-ruby/memoize/memoize-1.3.1-r1.ebuild
deleted file mode 100644
index bd28a2486997..000000000000
--- a/dev-ruby/memoize/memoize-1.3.1-r1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README"
-
-inherit ruby-fakegem
-DESCRIPTION="A Ruby library that lets you memoize methods"
-HOMEPAGE="https://github.com/djberg96/memoize"
-
-LICENSE="Artistic-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 ) "
-
-all_ruby_prepare() {
- sed -i -e 's/Config/RbConfig/' Rakefile || die
-}
diff --git a/dev-ruby/memoize/metadata.xml b/dev-ruby/memoize/metadata.xml
deleted file mode 100644
index fe179c45fd0f..000000000000
--- a/dev-ruby/memoize/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>naota@gentoo.org</email>
- </maintainer>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">djberg96/memoize</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/mercenary/Manifest b/dev-ruby/mercenary/Manifest
index c856589474aa..d7d13bf8fe7c 100644
--- a/dev-ruby/mercenary/Manifest
+++ b/dev-ruby/mercenary/Manifest
@@ -1 +1 @@
-DIST mercenary-0.3.6.gem 16896 BLAKE2B 3109dd6e6469713ab11adabeb67eb949e5d343d43fbfa60a207c87d6731d872a0627b16cb237a96e57f59616e9844b19ddf176b0b80aa140f2d4ea36aaf957ae SHA512 90ec97ceaea74c511bcd8227e4f466e4e254ae868db0b61ad5703d0f78d9bb771e431eda0361cc224c721b150c3066d1796c333c41964f04d88ba22a4e7884be
+DIST mercenary-0.4.0.gem 17920 BLAKE2B 298d4f0e2e44e32d18d8043d0af41094a8ffc041690a022133d2418242d97d56979519d54041be213dbd97eb75217ec4a4f2c6a3335f5a7dfe04aeb9d765a3ed SHA512 1421bef136587f7c7cb3296b115a90f389ec7d61e7bbe6c396249cd5e090ac548c82166bbf2c43cc589725a740faef5b5f0e921fae8e9948fe506f80578045eb
diff --git a/dev-ruby/mercenary/mercenary-0.3.6.ebuild b/dev-ruby/mercenary/mercenary-0.3.6.ebuild
deleted file mode 100644
index a0406fee6dbe..000000000000
--- a/dev-ruby/mercenary/mercenary-0.3.6.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="History.markdown README.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Lightweight and flexible library for writing command-line apps"
-HOMEPAGE="https://github.com/jekyll/mercenary"
-
-IUSE=""
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
diff --git a/dev-ruby/mercenary/mercenary-0.4.0-r1.ebuild b/dev-ruby/mercenary/mercenary-0.4.0-r1.ebuild
new file mode 100644
index 000000000000..5109a31b4774
--- /dev/null
+++ b/dev-ruby/mercenary/mercenary-0.4.0-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.markdown README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Lightweight and flexible library for writing command-line apps"
+HOMEPAGE="https://github.com/jekyll/mercenary"
+
+IUSE=""
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
diff --git a/dev-ruby/mercenary/metadata.xml b/dev-ruby/mercenary/metadata.xml
index f9f950f5ebab..55e937b876f5 100644
--- a/dev-ruby/mercenary/metadata.xml
+++ b/dev-ruby/mercenary/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/metaclass/metaclass-0.0.4-r2.ebuild b/dev-ruby/metaclass/metaclass-0.0.4-r2.ebuild
new file mode 100644
index 000000000000..3173afd987be
--- /dev/null
+++ b/dev-ruby/metaclass/metaclass-0.0.4-r2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="metaclass.gemspec"
+
+inherit ruby-fakegem
+SRC_URI="https://github.com/floehopper/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+DESCRIPTION="Adds a __metaclass__ method to all Ruby objects"
+HOMEPAGE="https://github.com/floehopper/metaclass"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile test/test_helper.rb || die
+ sed -i -e 's/git ls-files/find */' -e '/\(test_files\|executables\)/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/metaclass/metaclass-0.0.4.ebuild b/dev-ruby/metaclass/metaclass-0.0.4.ebuild
deleted file mode 100644
index 30366f63d6ce..000000000000
--- a/dev-ruby/metaclass/metaclass-0.0.4.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-SRC_URI="https://github.com/floehopper/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-DESCRIPTION="Adds a __metaclass__ method to all Ruby objects"
-HOMEPAGE="https://github.com/floehopper/metaclass"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile test/test_helper.rb || die
-}
diff --git a/dev-ruby/metaclass/metadata.xml b/dev-ruby/metaclass/metadata.xml
index 93f030f9f724..e38ad4e196cb 100644
--- a/dev-ruby/metaclass/metadata.xml
+++ b/dev-ruby/metaclass/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/metadata.xml b/dev-ruby/metadata.xml
index 42a8e90ecd8e..8bdf32af0f50 100644
--- a/dev-ruby/metadata.xml
+++ b/dev-ruby/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE catmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<catmetadata>
<longdescription lang="en">
The dev-ruby category contains libraries and utilities relevant to the
@@ -37,4 +37,3 @@
programowania Ruby.
</longdescription>
</catmetadata>
-
diff --git a/dev-ruby/metaid/Manifest b/dev-ruby/metaid/Manifest
deleted file mode 100644
index cb1a336fe0ad..000000000000
--- a/dev-ruby/metaid/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST metaid-1.0.gem 3072 BLAKE2B 56a316b1cd56d918e6feedfe7f5a946415ed32d1f2ff9d43ccc31f9ecd8d80755492a52c1ce5aa1e71b8fcb33a8edbe316eee000d18757e22ff0eeb684bea08c SHA512 3c841a759568b9273b1e8addbe58a23df643e93a9d1f24a75a5686e26b7f16de1ab0573fd9f5032451ef813ab29c0801442a8bc74df94fc1d58f09062569ba33
diff --git a/dev-ruby/metaid/metadata.xml b/dev-ruby/metaid/metadata.xml
deleted file mode 100644
index e7651a17c247..000000000000
--- a/dev-ruby/metaid/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="rubygems">metaid</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/metaid/metaid-1.0-r3.ebuild b/dev-ruby/metaid/metaid-1.0-r3.ebuild
deleted file mode 100644
index 5a9091e803e2..000000000000
--- a/dev-ruby/metaid/metaid-1.0-r3.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRAINSTALL="metaid.rb"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An aid to Ruby metaprogramming"
-HOMEPAGE="https://rubygems.org/gems/metaid"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ia64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
-IUSE=""
diff --git a/dev-ruby/metasm/Manifest b/dev-ruby/metasm/Manifest
index 359c802b8fbd..a502ed66e23f 100644
--- a/dev-ruby/metasm/Manifest
+++ b/dev-ruby/metasm/Manifest
@@ -1,2 +1 @@
-DIST metasm-1.0.2.gem 746496 BLAKE2B e7248ba61702fa74d2f53b6f8f112d1cbc113742891478c932151771a6ec66bc560d1b6d2a886c018e48d64e515c5a09e4c9d98deea7608dc2579741117bb04b SHA512 b5f90e46be0d3b86c2b525823aa1fc1ea711a8abe9edaf2908af73d869e1f6dc5163f45ea20bd1034b0f10b17c25e7b7cd9af6a77ebfbf24d925a68a84d264e3
-DIST metasm-1.0.4.gem 802816 BLAKE2B 8950f4c3c0d56bc414795c5a348fb07767223163c1cece4a7b5f5374b1c9c901a576b6adbb10d28b6b4541649e176863ad68da3a7e2155025c7f1bc9eaadff90 SHA512 35fe98bfd9d8b2f0d6a69cce409319288d9a54458f22a308682c3ea432e2c34d50d33a3849c08f773e87ee0a67aa5cc6bb337ec99045f23b6aca43c9f5ce70cc
+DIST metasm-1.0.5.gem 803328 BLAKE2B 24ca2cff66257b063007b872028d4fad541584bee031dd4caacf2a89ee8f823e88dec8a2cf41815c72a5ef1b8db827b69fbb8ceaabee4d67de73aa04c15f354d SHA512 74a6eac47c06e7ff53f4e400fec6c6c73981bc58d09520ce7cdd657b6b74819fc5b9d6168edaf90eeb5c9b2087fd4924df1e21743809065cc1433428efbe1dd8
diff --git a/dev-ruby/metasm/metadata.xml b/dev-ruby/metasm/metadata.xml
index 1c481a1d6de1..7a38fd1850ff 100644
--- a/dev-ruby/metasm/metadata.xml
+++ b/dev-ruby/metasm/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
</maintainer>
</pkgmetadata>
diff --git a/dev-ruby/metasm/metasm-1.0.2-r4.ebuild b/dev-ruby/metasm/metasm-1.0.2-r4.ebuild
deleted file mode 100644
index ce2838ed056f..000000000000
--- a/dev-ruby/metasm/metasm-1.0.2-r4.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="BUGS README TODO"
-RUBY_FAKEGEM_EXTRAINSTALL="metasm metasm.rb misc samples"
-
-inherit ruby-fakegem
-
-DESCRIPTION="cross-architecture assembler, disassembler, linker, and debugger"
-HOMEPAGE="http://metasm.cr0.org/"
-
-LICENSE="LGPL-2.1"
-SLOT="${PV}"
-IUSE=""
-
-if [ "${PV}" = "9999" ]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/jjyg/metasm.git"
- KEYWORDS=""
- SRC_URI=""
- EGIT_CHECKOUT_DIR="${WORKDIR}/all"
-else
- KEYWORDS="~amd64 ~arm ~x86"
-fi
-
-QA_PREBUILT="usr/lib*/ruby/gems/*/gems/${P}/${PN}/dynldr-linux-x64-233.so"
-
-ruby_add_bdepend "dev-ruby/bundler"
-
-all_ruby_prepare() {
- if [ -f Gemfile.lock ]; then
- rm Gemfile.lock || die
- fi
-
- mkdir bin
- ln -s ../samples/disassemble.rb ./bin/disassemble
-}
-
-each_ruby_prepare() {
- if [ -f Gemfile ]
- then
- BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle install --local || die
- BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle check || die
- fi
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- ruby_fakegem_binwrapper disassemble
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e "Dir['tests/*.rb'].each{|f| require f}" || die
-}
diff --git a/dev-ruby/metasm/metasm-1.0.4.ebuild b/dev-ruby/metasm/metasm-1.0.4.ebuild
deleted file mode 100644
index c8698af680ca..000000000000
--- a/dev-ruby/metasm/metasm-1.0.4.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="BUGS README TODO"
-RUBY_FAKEGEM_EXTRAINSTALL="metasm metasm.rb misc samples"
-
-inherit ruby-fakegem
-
-DESCRIPTION="cross-architecture assembler, disassembler, linker, and debugger"
-HOMEPAGE="https://metasm.cr0.org/"
-
-LICENSE="LGPL-2.1"
-SLOT="${PV}"
-IUSE=""
-
-KEYWORDS="~amd64 ~arm ~x86"
-
-all_ruby_prepare() {
- mkdir bin
- ln -s ../samples/disassemble.rb ./bin/disassemble
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- ruby_fakegem_binwrapper disassemble
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e "Dir['tests/*.rb'].each{|f| require f}" || die
-}
diff --git a/dev-ruby/metasm/metasm-1.0.5-r1.ebuild b/dev-ruby/metasm/metasm-1.0.5-r1.ebuild
new file mode 100644
index 000000000000..abcd332d597f
--- /dev/null
+++ b/dev-ruby/metasm/metasm-1.0.5-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby26 ruby27 ruby30 ruby31"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="BUGS README TODO"
+RUBY_FAKEGEM_EXTRAINSTALL="metasm metasm.rb misc samples"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Cross-architecture assembler, disassembler, linker, and debugger"
+HOMEPAGE="https://metasm.cr0.org/"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+
+RDEPEND="!dev-ruby/metasm:1.0.5
+ !dev-ruby/metasm:1.0.4
+ !dev-ruby/metasm:1.0.2"
+DEPEND="${RDEPEND}"
+
+all_ruby_prepare() {
+ mkdir bin || die
+ ln -s ../samples/disassemble.rb ./bin/disassemble || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e "Dir['tests/*.rb'].each{|f| require f}" || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ ruby_fakegem_binwrapper disassemble
+}
diff --git a/dev-ruby/metasploit-concern/Manifest b/dev-ruby/metasploit-concern/Manifest
deleted file mode 100644
index 814c8de7c8d8..000000000000
--- a/dev-ruby/metasploit-concern/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST metasploit-concern-2.0.5.gem 18944 BLAKE2B 090dccb8e43426da0f51604b3257e717989d35e1430597734743df4447735cbf1dcc2e31124ae7012d6a945828dc55f80f095cf6b89584341fc5059f1275e2b8 SHA512 1d8025dd075475fcae1c663789154f7fc8dbb334f9a069a1c1a21f4b101e9b85dc7cdfc6097bbfa9387463d3050e7a715e68a0b09ebfa66aa27ccaa74a1ffe91
diff --git a/dev-ruby/metasploit-concern/metadata.xml b/dev-ruby/metasploit-concern/metadata.xml
deleted file mode 100644
index 0f151a8a9f1b..000000000000
--- a/dev-ruby/metasploit-concern/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/metasploit-concern</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/metasploit-concern/metasploit-concern-2.0.5.ebuild b/dev-ruby/metasploit-concern/metasploit-concern-2.0.5.ebuild
deleted file mode 100644
index eefc6d3c9a88..000000000000
--- a/dev-ruby/metasploit-concern/metasploit-concern-2.0.5.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24"
-
-RUBY_FAKEGEM_EXTRAINSTALL="app spec"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Metasploit concern allows you to define concerns in app/concerns. "
-HOMEPAGE="https://github.com/rapid7/metasploit-concern"
-SRC_URI="mirror://rubygems/${P}.gem"
-
-LICENSE="BSD"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-#IUSE="development test"
-RESTRICT=test
-IUSE=""
-
-RDEPEND="${RDEPEND} !dev-ruby/metasploit-concern:0"
-
-ruby_add_rdepend ">=dev-ruby/railties-4.2.6:4.2
- >=dev-ruby/activesupport-4.2.6:4.2
- >=dev-ruby/activemodel-2.4.6:4.2"
diff --git a/dev-ruby/metasploit-credential/Manifest b/dev-ruby/metasploit-credential/Manifest
deleted file mode 100644
index 5aaeab0850df..000000000000
--- a/dev-ruby/metasploit-credential/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST metasploit-credential-2.0.14.gem 110592 BLAKE2B 09f3eee0f288ab26695177b014b98dc871f6f009f34aaad4fbd7dfcda8acc63f75524fe7d181b1dccca863cc83eb50f249e0c07cbb0f07e9c79856a4389cdcd9 SHA512 66670fc89dc61d6d32577c9b46dc6ddfab15b9c0118ba15cc7398e10ec8de63cd7150fbfaddbd01a573ead6d98619dd9c19a5835be58baaa1fc4a9c777839b00
diff --git a/dev-ruby/metasploit-credential/metadata.xml b/dev-ruby/metasploit-credential/metadata.xml
deleted file mode 100644
index 98a26fb7079d..000000000000
--- a/dev-ruby/metasploit-credential/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/metasploit-credential</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/metasploit-credential/metasploit-credential-2.0.14.ebuild b/dev-ruby/metasploit-credential/metasploit-credential-2.0.14.ebuild
deleted file mode 100644
index 5220d95e6005..000000000000
--- a/dev-ruby/metasploit-credential/metasploit-credential-2.0.14.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-RUBY_FAKEGEM_EXTRAINSTALL="app config db spec"
-
-DESCRIPTION="Code for modeling and managing credentials in Metasploit"
-HOMEPAGE="https://github.com/rapid7/metasploit-credential"
-
-LICENSE="BSD"
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-RESTRICT=test
-
-ruby_add_rdepend "dev-ruby/metasploit-concern:2.0
- <=dev-ruby/metasploit_data_models-3.0.0:*
- >=dev-ruby/metasploit-model-1.0.0
- dev-ruby/rubyzip:1
- dev-ruby/rubyntlm
- >=dev-ruby/railties-4.2.6:4.2
- dev-ruby/pg:*"
diff --git a/dev-ruby/metasploit-model/Manifest b/dev-ruby/metasploit-model/Manifest
deleted file mode 100644
index 733c984f3fa5..000000000000
--- a/dev-ruby/metasploit-model/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST metasploit-model-2.0.4.gem 81408 BLAKE2B 5a4be9e61649710470618d4334279054cbefc1027a1d4674b6be0c6a4c632219fd2dc3ac5f9f56dc9018712e5cbcbe191d5749ed2ed10cf98f884a06e41ec736 SHA512 70f6d948227bc99f877c3b5631a964087c0ebfdb091f128c72bc5da276bf57a5055aea5cdda4dc66e1fb177606afec9b7b3ee4076211f43928a2defb93294ac5
diff --git a/dev-ruby/metasploit-model/metadata.xml b/dev-ruby/metasploit-model/metadata.xml
deleted file mode 100644
index 3534a5dd3a91..000000000000
--- a/dev-ruby/metasploit-model/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
-<longdescription lang="en">
-Common code, such as validators and mixins, that are shared between ActiveModels in metasploit-framework and ActiveRecords in metasploit_data_models
-</longdescription>
- <upstream>
- <remote-id type="github">rapid7/metasploit-model</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/metasploit-model/metasploit-model-2.0.4.ebuild b/dev-ruby/metasploit-model/metasploit-model-2.0.4.ebuild
deleted file mode 100644
index d3b004a03f63..000000000000
--- a/dev-ruby/metasploit-model/metasploit-model-2.0.4.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24"
-
-inherit ruby-fakegem eapi7-ver
-
-RUBY_FAKEGEM_EXTRAINSTALL="app config script spec"
-
-DESCRIPTION="Common code, such as validators and mixins"
-HOMEPAGE="https://github.com/rapid7/metasploit-model"
-SRC_URI="mirror://rubygems/${P}.gem"
-
-LICENSE="BSD"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-#IUSE="development test"
-RESTRICT=test
-IUSE=""
-
-RDEPEND="${RDEPEND} !dev-ruby/metasploit-model:0"
-
-ruby_add_rdepend ">=dev-ruby/railties-4.2.6:4.2
- >=dev-ruby/activesupport-4.2.6:4.2
- >=dev-ruby/activemodel-4.2.6:4.2"
-# development? ( dev-ruby/bundler
-# dev-ruby/rake
-# dev-ruby/i18n
-# dev-ruby/multi_json
-# dev-ruby/builder
-# dev-ruby/erubis
-# dev-ruby/journey
-# dev-ruby/rack
-# dev-ruby/rack-cache
-# dev-ruby/rack-test
-# dev-ruby/hike
-# dev-ruby/tilt
-# dev-ruby/sprockets:*
-# dev-ruby/actionpack:4.0
-# dev-ruby/json
-# dev-ruby/rack-ssl:*
-# dev-ruby/rdoc
-# dev-ruby/thor
-# dev-ruby/redcarpet
-# <dev-ruby/yard-0.8.7.4 )"
-
-ruby_add_bdepend "dev-ruby/bundler"
-
-all_ruby_prepare() {
- [ -f Gemfile.lock ] && rm Gemfile.lock
- #For now, we don't support development or testing at all
- #if ! use development; then
- sed -i -e "/^group :development do/,/^end$/d" Gemfile || die
- sed -i -e "/s.add_development_dependency/d" "${PN}".gemspec || die
- sed -i -e "/spec.add_development_dependency/d" "${PN}".gemspec || die
- #fi
- #if ! use test; then
- sed -i -e "/^group :test do/,/^end$/d" Gemfile || die
- #fi
- #if ! use test && ! use development; then
- sed -i -e "/^group :development, :test do/,/^end$/d" Gemfile || die
- #fi
-}
-
-each_ruby_prepare() {
- if [ -f Gemfile ]
- then
- BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle install --local || die
- BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle check || die
- fi
-}
diff --git a/dev-ruby/metasploit-payloads/Manifest b/dev-ruby/metasploit-payloads/Manifest
deleted file mode 100644
index 0fc3f30ac7e1..000000000000
--- a/dev-ruby/metasploit-payloads/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST metasploit-payloads-1.3.53.gem 12161024 BLAKE2B a98c24faeba68cc00240324235bfc887c31dde4240ee37a1decd38c0738a0ffdad9dbe2b3e6026dc99c4299e38025d3aa13a39589b948950d83ac9f69b6baa49 SHA512 698f91348ebcb2e0a74b506f391fa7eded7c5974821d283ce4890a8c63472db891c8837ef2f67fbe27996e72ec09ecbb4c32721311d57ab6633e5ed2fd426769
diff --git a/dev-ruby/metasploit-payloads/metadata.xml b/dev-ruby/metasploit-payloads/metadata.xml
deleted file mode 100644
index a08ccf4f3665..000000000000
--- a/dev-ruby/metasploit-payloads/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/metasploit-payloads</remote-id>
- <remote-id type="rubygems">metasploit-payloads</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/metasploit-payloads/metasploit-payloads-1.3.53.ebuild b/dev-ruby/metasploit-payloads/metasploit-payloads-1.3.53.ebuild
deleted file mode 100644
index 66b34890ecde..000000000000
--- a/dev-ruby/metasploit-payloads/metasploit-payloads-1.3.53.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Compiled binaries for Metasploit's Meterpreter"
-HOMEPAGE="https://rubygems.org/gems/metasploit-payloads"
-
-LICENSE="BSD"
-
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-#no tests
-RESTRICT="test strip"
-
-QA_PREBUILT="
- usr/lib*/ruby/gems/*/gems/${PN}-${SLOT}/data/meterpreter/msflinker_linux_x86.bin
- usr/lib*/ruby/gems/*/gems/${PN}-${SLOT}/data/meterpreter/ext_server_sniffer.lso
- usr/lib*/ruby/gems/*/gems/${PN}-${SLOT}/data/meterpreter/ext_server_networkpug.lso
- usr/lib*/ruby/gems/*/gems/${PN}-${SLOT}/data/meterpreter/ext_server_stdapi.lso
- usr/lib*/ruby/gems/*/gems/${PN}-${SLOT}/data/android/libs/armeabi/libndkstager.so
- usr/lib*/ruby/gems/*/gems/${PN}-${SLOT}/data/android/libs/mips/libndkstager.so
- usr/lib*/ruby/gems/*/gems/${PN}-${SLOT}/data/android/libs/x86/libndkstager.so
- "
-
-src_install() {
- ruby-ng_src_install
- #tell revdep-rebuild to ignore binaries meant for the target
- dodir /etc/revdep-rebuild
- cat <<-EOF > "${ED}"/etc/revdep-rebuild/99-${PN}-${SLOT} || die
- #These dirs contain prebuilt binaries for running on the TARGET not the HOST
- SEARCH_DIRS_MASK="/usr/lib*/ruby/gems/*/gems/${PN}-${SLOT}/data/android/libs"
- EOF
-}
diff --git a/dev-ruby/metasploit_data_models/Manifest b/dev-ruby/metasploit_data_models/Manifest
deleted file mode 100644
index d78bf8f08478..000000000000
--- a/dev-ruby/metasploit_data_models/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST metasploit_data_models-2.0.16.gem 182272 BLAKE2B 918c57e62552e2b3288ca24e8ff7abeb30b0b6221906890c7b2e15c674356de6861a10500735d5a912b0deefb6b378b64111bd18770c65b10dcdbc911e6439d6 SHA512 bf2c2c162d23750eceeb315b9a5ba9e8b80bf4ace9e32f8c1e97c35939338d026d640675b3e5eaf61c6897007db07e186d4d5be944dc3bca16c138f1f6ae6ada
diff --git a/dev-ruby/metasploit_data_models/metadata.xml b/dev-ruby/metasploit_data_models/metadata.xml
deleted file mode 100644
index 50c640c05438..000000000000
--- a/dev-ruby/metasploit_data_models/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/metasploit_data_models</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/metasploit_data_models/metasploit_data_models-2.0.16.ebuild b/dev-ruby/metasploit_data_models/metasploit_data_models-2.0.16.ebuild
deleted file mode 100644
index e99cda7e99d1..000000000000
--- a/dev-ruby/metasploit_data_models/metasploit_data_models-2.0.16.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24"
-
-inherit ruby-fakegem
-
-RUBY_FAKEGEM_EXTRAINSTALL="app config db script spec"
-RUBY_FAKEGEM_GEMSPEC="${PN}".gemspec
-DESCRIPTION="The database layer for Metasploit"
-HOMEPAGE="https://github.com/rapid7/metasploit_data_models"
-SRC_URI="mirror://rubygems/${P}.gem"
-
-LICENSE="BSD"
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-RESTRICT=test
-#IUSE="development test"
-IUSE=""
-
-RDEPEND="${RDEPEND} !dev-ruby/metasploit_data_models:0"
-
-ruby_add_rdepend "
- >=dev-ruby/activerecord-4.2.6:4.2[postgres]
- >=dev-ruby/activesupport-4.2.6:4.2
- dev-ruby/pg:*
- dev-ruby/postgres_ext
- >=dev-ruby/railties-4.2.6:4.2
- >=dev-ruby/recog-2.0.0:*
- dev-ruby/arel-helpers
- >=dev-ruby/metasploit-concern-2.0.0
- >=dev-ruby/metasploit-model-2.0.0
- <dev-ruby/thor-2.0"
-
-ruby_add_bdepend "dev-ruby/bundler"
-
-all_ruby_prepare() {
- [ -f Gemfile.lock ] && rm Gemfile.lock
- #if ! use development; then
- sed -i -e "/^group :development do/,/^end$/d" Gemfile || die
- sed -i -e "/s.add_development_dependency/d" "${PN}".gemspec || die
- #fi
- #if ! use test; then
- sed -i -e "/^group :test do/,/^end$/d" Gemfile || die
- #fi
- #if ! use test && ! use development; then
- sed -i -e "/^group :development, :test do/,/^end$/d" Gemfile || die
- #fi
- #use the stable version of pg
- sed -i "s/'pg', \"0.20.0\"/'pg', '0.21.0'/" metasploit_data_models.gemspec || die
-}
-
-each_ruby_prepare() {
- if [ -f Gemfile ]
- then
- BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle install --local || die
- BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle check || die
- fi
-}
-
-all_ruby_install() {
- ruby_fakegem_binwrapper mdm_console mdm_console-${SLOT}
-}
diff --git a/dev-ruby/metasploit_payloads-mettle/Manifest b/dev-ruby/metasploit_payloads-mettle/Manifest
deleted file mode 100644
index 8b54f9125978..000000000000
--- a/dev-ruby/metasploit_payloads-mettle/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST metasploit_payloads-mettle-0.4.2.gem 18293760 BLAKE2B 98de479bbc72fd2ac916efaa4ac64f1aaf0d7267926ee5b56bfc2ec2b91450039c0a4d9d4322174355b4b089e5f9951145d5cbf87759e2bfe4da78e5b8cceec4 SHA512 8a0f8c1ca75d7664d33392e6c0c5a3de56ddd0a5c0f97f96091041caee89e74a2f3a42277a1f0c3eb57ca68706b344f0235b8ebc92870c6b8a89fa7bc20de5f0
diff --git a/dev-ruby/metasploit_payloads-mettle/metadata.xml b/dev-ruby/metasploit_payloads-mettle/metadata.xml
deleted file mode 100644
index af9237fca3f1..000000000000
--- a/dev-ruby/metasploit_payloads-mettle/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/mettle</remote-id>
- <remote-id type="rubygems">metasploit_payloads-mettle</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/metasploit_payloads-mettle/metasploit_payloads-mettle-0.4.2.ebuild b/dev-ruby/metasploit_payloads-mettle/metasploit_payloads-mettle-0.4.2.ebuild
deleted file mode 100644
index 9dcb6f6f00cc..000000000000
--- a/dev-ruby/metasploit_payloads-mettle/metasploit_payloads-mettle-0.4.2.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRAINSTALL="build"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Compiled binaries for Metasploit's next-gen Meterpreter"
-HOMEPAGE="https://rubygems.org/gems/metasploit_payloads-mettle"
-
-LICENSE="BSD"
-
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-#no tests
-RESTRICT="test strip"
-
-QA_PREBUILT="
- usr/lib*/ruby/gems/*/gems/${P}/build/aarch64-linux-musl/bin/mettle
- usr/lib*/ruby/gems/*/gems/${P}/build/aarch64-linux-musl/bin/mettle.bin
- usr/lib*/ruby/gems/*/gems/${P}/build/armv5b-linux-musleabi/bin/mettle
- usr/lib*/ruby/gems/*/gems/${P}/build/armv5b-linux-musleabi/bin/mettle.bin
- usr/lib*/ruby/gems/*/gems/${P}/build/armv5l-linux-musleabi/bin/mettle
- usr/lib*/ruby/gems/*/gems/${P}/build/armv5l-linux-musleabi/bin/mettle.bin
- usr/lib*/ruby/gems/*/gems/${P}/build/i486-linux-musl/bin/mettle
- usr/lib*/ruby/gems/*/gems/${P}/build/i486-linux-musl/bin/mettle.bin
- usr/lib*/ruby/gems/*/gems/${P}/build/mips64-linux-muslsf/bin/mettle
- usr/lib*/ruby/gems/*/gems/${P}/build/mips64-linux-muslsf/bin/mettle.bin
- usr/lib*/ruby/gems/*/gems/${P}/build/mips64-linux-muslsf/bin/sniffer
- usr/lib*/ruby/gems/*/gems/${P}/build/mips64-linux-muslsf/bin/sniffer.bin
- usr/lib*/ruby/gems/*/gems/${P}/build/mipsel-linux-muslsf/bin/mettle
- usr/lib*/ruby/gems/*/gems/${P}/build/mipsel-linux-muslsf/bin/mettle.bin
- usr/lib*/ruby/gems/*/gems/${P}/build/mipsel-linux-muslsf/bin/sniffer
- usr/lib*/ruby/gems/*/gems/${P}/build/mipsel-linux-muslsf/bin/sniffer.bin
- usr/lib*/ruby/gems/*/gems/${P}/build/mips-linux-muslsf/bin/mettle
- usr/lib*/ruby/gems/*/gems/${P}/build/mips-linux-muslsf/bin/mettle.bin
- usr/lib*/ruby/gems/*/gems/${P}/build/mips-linux-muslsf/bin/sniffer
- usr/lib*/ruby/gems/*/gems/${P}/build/mips-linux-muslsf/bin/sniffer.bin
- usr/lib*/ruby/gems/*/gems/${P}/build/powerpc64le-linux-musl/bin/mettle
- usr/lib*/ruby/gems/*/gems/${P}/build/powerpc64le-linux-musl/bin/mettle.bin
- usr/lib*/ruby/gems/*/gems/${P}/build/powerpc-linux-muslsf/bin/mettle
- usr/lib*/ruby/gems/*/gems/${P}/build/powerpc-linux-muslsf/bin/mettle.bin
- usr/lib*/ruby/gems/*/gems/${P}/build/s390x-linux-musl/bin/mettle
- usr/lib*/ruby/gems/*/gems/${P}/build/s390x-linux-musl/bin/mettle.bin
- usr/lib*/ruby/gems/*/gems/${P}/build/x86_64-linux-musl/bin/mettle
- usr/lib*/ruby/gems/*/gems/${P}/build/x86_64-linux-musl/bin/mettle.bin
- "
-
-src_install() {
- ruby-ng_src_install
- #tell revdep-rebuild to ignore binaries meant for the target
- dodir /etc/revdep-rebuild
- cat <<-EOF > "${ED}"/etc/revdep-rebuild/99-${PN}-${SLOT} || die
- #These dirs contain prebuilt binaries for running on the TARGET not the HOST
- SEARCH_DIRS_MASK="/usr/lib*/ruby/gems/*/gems/${P}/build"
- EOF
-}
diff --git a/dev-ruby/meterpreter_bins/Manifest b/dev-ruby/meterpreter_bins/Manifest
deleted file mode 100644
index 3d1a14957232..000000000000
--- a/dev-ruby/meterpreter_bins/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST meterpreter_bins-0.0.22.gem 3565568 BLAKE2B 9f3b73908220dafc7e5b41fa09e86317658191cfd20acee8247d13671ce378fecb566177ac7cdc6243caddd10767952002f90eb433b9f5b5f855824468fd191d SHA512 80b7856bdab0ec91f6adae5497f8d119f21e8f36a2c1750e50f2dda9323dbaf7ebccf6f1a8e57f2459d8a2e6ab7b718454d35a653da6ec03e1e01c1d04c9288d
diff --git a/dev-ruby/meterpreter_bins/metadata.xml b/dev-ruby/meterpreter_bins/metadata.xml
deleted file mode 100644
index f01db371fe39..000000000000
--- a/dev-ruby/meterpreter_bins/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/meterpreter_bins</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/meterpreter_bins/meterpreter_bins-0.0.22.ebuild b/dev-ruby/meterpreter_bins/meterpreter_bins-0.0.22.ebuild
deleted file mode 100644
index 4191029c5777..000000000000
--- a/dev-ruby/meterpreter_bins/meterpreter_bins-0.0.22.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRAINSTALL="meterpreter"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Compiled binaries for Metasploit's Meterpreter"
-HOMEPAGE="https://github.com/rapid7/meterpreter_bins"
-
-#https://github.com/rapid7/meterpreter_bins/issues/5
-LICENSE="BSD"
-
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-#no tests
-RESTRICT=test
-
-RDEPEND="${RDEPEND} !dev-ruby/meterpreter_bins:0"
diff --git a/dev-ruby/method_source/Manifest b/dev-ruby/method_source/Manifest
index d29d07627cd8..00fae2ebd2db 100644
--- a/dev-ruby/method_source/Manifest
+++ b/dev-ruby/method_source/Manifest
@@ -1,3 +1,2 @@
-DIST method_source-0.9.0.gem 13312 BLAKE2B c3d3cd541b782a3e4e2aa2b1576d9206338988330a17e9770e82ff9fc3156f6feff9be970f5f5f0cef90ee160a3dfbbd20c1bac34593906a47daa7404895b08c SHA512 4ef6cdf3f4427a7910f9da8e569d9cc2711de449498fe88ea8782379330a5725a4800168b06fcc593c18faa52294836881852768306303ebc658f97c1bec8830
-DIST method_source-0.9.1.gem 13824 BLAKE2B cf56840a311f628e43888e7907f497ecca726a9211960d097d8a82f4220b2b825cd521a0da16ce9fb2aacdba04f129576fa1e9f77c15828c8d3fa60d8882b332 SHA512 950fe3ca8f4f2087133e23ab13d7a82ebacfcf873cde32d30f7601d48b37527570572012ed3bd06a04cdaa4e603444eab91f9b6287025460bead64105b913313
-DIST method_source-0.9.2.gem 13824 BLAKE2B 842277a0a38331430c3c6a9f45c01d965de1997d8e9aa291d1948103c9812a23c5e67f3e7b7a2e6ec982de2a5eb841a78f6b8d1633ed17c5b7fa916698737ffb SHA512 87bac1d9ef2f1b09a26358d6d2e7e1035703d1bee9b6689567e8967baa544a456b63b2a1271305979ba077ebae32062708666588500e5810dd9f8e282d444b8c
+DIST method_source-1.0.0.gem 13824 BLAKE2B 1b6b4c23b2e73972acb69bf488f39d88fae3bffdc4e28559d880ce817199b9c1da8183f10cf8be5122535415b938c9f3964c9b4bade1dfba7fb4457c052185dd SHA512 d3a2dace01d987203d0520583120bfe08812237602421efc3ec7ff8054f2403b0aac13f15b8b91dfdb6e6679a519f707ede67ea6fed72cd8242edacc828a9caa
+DIST method_source-1.1.0.gem 13824 BLAKE2B 9b626e3db19a4093a61505afb04c65a2fc497146639656b9fd204f87d17d91473b11327ff086c8f3e2e1c0a462fa19e3e9c39f0b2817f26918c9a7c4b7cdaf54 SHA512 37cf2ff685adb68d1dd9c72922aa5ee1691a98c049ee402f5d630a783cacf9c971b0f25ac5e67b8d97211a6763e6f81825cf887fe9b4aef3359bad88335110d9
diff --git a/dev-ruby/method_source/metadata.xml b/dev-ruby/method_source/metadata.xml
index 336cf6c41d8f..7e3f0b7951e6 100644
--- a/dev-ruby/method_source/metadata.xml
+++ b/dev-ruby/method_source/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/method_source/method_source-0.9.0.ebuild b/dev-ruby/method_source/method_source-0.9.0.ebuild
deleted file mode 100644
index 67e956a364a1..000000000000
--- a/dev-ruby/method_source/method_source-0.9.0.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Retrieve the source code for a method"
-HOMEPAGE="https://github.com/banister/method_source"
-IUSE=""
-SLOT="0"
-
-LICENSE="MIT"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86"
diff --git a/dev-ruby/method_source/method_source-0.9.1.ebuild b/dev-ruby/method_source/method_source-0.9.1.ebuild
deleted file mode 100644
index e3fc79ebe073..000000000000
--- a/dev-ruby/method_source/method_source-0.9.1.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Retrieve the source code for a method"
-HOMEPAGE="https://github.com/banister/method_source"
-IUSE=""
-SLOT="0"
-
-LICENSE="MIT"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86"
diff --git a/dev-ruby/method_source/method_source-0.9.2.ebuild b/dev-ruby/method_source/method_source-0.9.2.ebuild
deleted file mode 100644
index 892eed4a6816..000000000000
--- a/dev-ruby/method_source/method_source-0.9.2.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Retrieve the source code for a method"
-HOMEPAGE="https://github.com/banister/method_source"
-IUSE=""
-SLOT="0"
-
-LICENSE="MIT"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86"
diff --git a/dev-ruby/method_source/method_source-1.0.0-r1.ebuild b/dev-ruby/method_source/method_source-1.0.0-r1.ebuild
new file mode 100644
index 000000000000..1d2e9dad05b1
--- /dev/null
+++ b/dev-ruby/method_source/method_source-1.0.0-r1.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.markdown"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Retrieve the source code for a method"
+HOMEPAGE="https://github.com/banister/method_source"
+SLOT="0"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
diff --git a/dev-ruby/method_source/method_source-1.0.0.ebuild b/dev-ruby/method_source/method_source-1.0.0.ebuild
new file mode 100644
index 000000000000..a3930b32229b
--- /dev/null
+++ b/dev-ruby/method_source/method_source-1.0.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.markdown"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Retrieve the source code for a method"
+HOMEPAGE="https://github.com/banister/method_source"
+IUSE=""
+SLOT="0"
+
+LICENSE="MIT"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
diff --git a/dev-ruby/method_source/method_source-1.1.0.ebuild b/dev-ruby/method_source/method_source-1.1.0.ebuild
new file mode 100644
index 000000000000..09638baf92d5
--- /dev/null
+++ b/dev-ruby/method_source/method_source-1.1.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.markdown"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Retrieve the source code for a method"
+HOMEPAGE="https://github.com/banister/method_source"
+SLOT="0"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
diff --git a/dev-ruby/middleware/Manifest b/dev-ruby/middleware/Manifest
new file mode 100644
index 000000000000..e67082b1e616
--- /dev/null
+++ b/dev-ruby/middleware/Manifest
@@ -0,0 +1 @@
+DIST middleware-0.1.0.gem 11264 BLAKE2B 27d8db46ef95f30a751c26aade2331285887abf8360a07a99bce02ad1193650edf1d9dab30078ae9a6e56d8e1f3384f7c357d5a01d9a5ed52fedc9d3c4f559d3 SHA512 a485c254accefb915a56a6aaebb0bf5fa8520e5aefb1dca9945f4402fd6fb28cd69b34692d5d276f2f025c6f919d983acba44ef0ad9d8966fc571f7cfd64da12
diff --git a/dev-ruby/middleware/metadata.xml b/dev-ruby/middleware/metadata.xml
new file mode 100644
index 000000000000..4b8f1cb18d8a
--- /dev/null
+++ b/dev-ruby/middleware/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">mitchellh/middleware</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/middleware/middleware-0.1.0-r1.ebuild b/dev-ruby/middleware/middleware-0.1.0-r1.ebuild
new file mode 100644
index 000000000000..7eb5a85ee0a6
--- /dev/null
+++ b/dev-ruby/middleware/middleware-0.1.0-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md user_guide.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Generalized implementation of the middleware abstraction for Ruby"
+HOMEPAGE="https://github.com/mitchellh/middleware"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~s390 ~sparc ~x86"
+SLOT="0"
+IUSE=""
+
+all_ruby_prepare() {
+ # Avoid test failing with rspec 2.14+
+ sed -i -e '/should raise an error if an invalid middleware is given/,/^ end/ s:^:#:' spec/middleware/runner_spec.rb
+}
diff --git a/dev-ruby/mime-types-data/Manifest b/dev-ruby/mime-types-data/Manifest
index 0c87125982a4..ec2b333f3644 100644
--- a/dev-ruby/mime-types-data/Manifest
+++ b/dev-ruby/mime-types-data/Manifest
@@ -1,2 +1,4 @@
-DIST mime-types-data-3.2018.0812.gem 157184 BLAKE2B b43b7bd6200182c402fe74f9a3f8cb1bc39a643b1de098ec6427ec66e62b6f28732032f4d6305f1ff267a61f60a12d759950b1a8f25c396bb2a7a6acc27b88f5 SHA512 8c60151f044a03dbb28da231994e4d5e1961839774791ac9caf3332353000c7ab12671960f791a03417b4236b9b6c9f690a5d228b7c5ec0d2a19b1a8e59eadb1
-DIST mime-types-data-3.2019.0331.gem 158720 BLAKE2B 513716a6095208f63eb479497af4e713308a367ef24808d7dd05fae5844482d4eccae7fe32834302caf9a6161df0bbc2506e2f34395315dae98b32e96dba1af8 SHA512 e5b158a90ce78eba2e0f328bda98d3622d8114ab61bb9636069b5e89a507d39e4c41de7f6ab48a4f49e4b5976cad645928c5d1bcc79f09654dde87e5babeba03
+DIST mime-types-data-3.2023.0218.1.gem 201216 BLAKE2B 3ccd9fcdc70fe9b09f0e9ca61356dd4c2563ac7fe32d75fdbdbaace9ba0757b274fec98c56cfdcae7f2f9f0840cc83a7ea9f3c9e420b3c8de076c87abb1621d9 SHA512 db0c4fddfcdd21ed1d8bd05039a14406600611be7fabd5d0021e8972d89e85ef2dd2d4e75bafb4e9ac7cf15606b4d4f67d6c6760fca6569fb2e2d6ba0d3f8145
+DIST mime-types-data-3.2023.1205.gem 205312 BLAKE2B a385ba1fdbb76621f7c10704629950f6a549befed6e930cdf73120d3834e87a0f722e0b1d407c85634f9786d15adc31f2d71cc0d77fb9a29bd629018df10670d SHA512 5e4fdf1dffa3a7bd1391215e72a10f53fd3570bf2665c82a059d595473a2ade7c1ec58abb4e6624ba67dba58b28b32c7db87f04a2b2a44e027d719a2ef22d246
+DIST mime-types-data-3.2024.0206.gem 205824 BLAKE2B 520922a60b386119e1e1229a11befcbfbf28ba5e179213a68d9bd4f344f2033c283799c1f39a43827d96fddd8a91856a938da09d95225a54aea5a46968c24264 SHA512 765c8671ec68b2c43f0f9a91da455e7d7533ec85a40f2b251861b0b0eab992dcdd3cbd2bc81631f447d683e1ca38b42e2724af40d437939736aa29170b395c13
+DIST mime-types-data-3.2024.0305.gem 205824 BLAKE2B 822f04fa9a06e4566d04b153a20d807b6e9c835c394c310e15f62f87098a3c1491e9fd0d9b08de5577e0eda106a484161744df89b686b8044c48b5a4146f81e4 SHA512 e6ba917fbf779c6b4b474c19372c06aa64b1eafc66e275278300b296ad796e051074369f7d593f82b49270631f631be7e2f37d1498f875d20ba23d0a68273754
diff --git a/dev-ruby/mime-types-data/metadata.xml b/dev-ruby/mime-types-data/metadata.xml
index 0fbf58bd5c43..df0e5c1acf82 100644
--- a/dev-ruby/mime-types-data/metadata.xml
+++ b/dev-ruby/mime-types-data/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/mime-types-data/mime-types-data-3.2018.0812.ebuild b/dev-ruby/mime-types-data/mime-types-data-3.2018.0812.ebuild
deleted file mode 100644
index 0aad44fdff45..000000000000
--- a/dev-ruby/mime-types-data/mime-types-data-3.2018.0812.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Registry for information about MIME media type definitions"
-HOMEPAGE="https://github.com/mime-types/mime-types-data"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
diff --git a/dev-ruby/mime-types-data/mime-types-data-3.2019.0331.ebuild b/dev-ruby/mime-types-data/mime-types-data-3.2019.0331.ebuild
deleted file mode 100644
index f9a7bb2eccab..000000000000
--- a/dev-ruby/mime-types-data/mime-types-data-3.2019.0331.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Registry for information about MIME media type definitions"
-HOMEPAGE="https://github.com/mime-types/mime-types-data"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
diff --git a/dev-ruby/mime-types-data/mime-types-data-3.2023.0218.1.ebuild b/dev-ruby/mime-types-data/mime-types-data-3.2023.0218.1.ebuild
new file mode 100644
index 000000000000..b7863e0edc3a
--- /dev/null
+++ b/dev-ruby/mime-types-data/mime-types-data-3.2023.0218.1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Registry for information about MIME media type definitions"
+HOMEPAGE="https://github.com/mime-types/mime-types-data"
+
+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 ~x64-solaris"
+IUSE=""
diff --git a/dev-ruby/mime-types-data/mime-types-data-3.2023.1205.ebuild b/dev-ruby/mime-types-data/mime-types-data-3.2023.1205.ebuild
new file mode 100644
index 000000000000..8136a5a362cc
--- /dev/null
+++ b/dev-ruby/mime-types-data/mime-types-data-3.2023.1205.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Registry for information about MIME media type definitions"
+HOMEPAGE="https://github.com/mime-types/mime-types-data"
+
+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 ~x64-solaris"
+IUSE=""
diff --git a/dev-ruby/mime-types-data/mime-types-data-3.2024.0206.ebuild b/dev-ruby/mime-types-data/mime-types-data-3.2024.0206.ebuild
new file mode 100644
index 000000000000..122dc1ac578e
--- /dev/null
+++ b/dev-ruby/mime-types-data/mime-types-data-3.2024.0206.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Registry for information about MIME media type definitions"
+HOMEPAGE="https://github.com/mime-types/mime-types-data"
+
+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 ~x64-solaris"
diff --git a/dev-ruby/mime-types-data/mime-types-data-3.2024.0305.ebuild b/dev-ruby/mime-types-data/mime-types-data-3.2024.0305.ebuild
new file mode 100644
index 000000000000..122dc1ac578e
--- /dev/null
+++ b/dev-ruby/mime-types-data/mime-types-data-3.2024.0305.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Registry for information about MIME media type definitions"
+HOMEPAGE="https://github.com/mime-types/mime-types-data"
+
+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 ~x64-solaris"
diff --git a/dev-ruby/mime-types/Manifest b/dev-ruby/mime-types/Manifest
index ce2051116e38..5746dec98b58 100644
--- a/dev-ruby/mime-types/Manifest
+++ b/dev-ruby/mime-types/Manifest
@@ -1,3 +1,4 @@
-DIST mime-types-1.25.1.gem 61440 BLAKE2B ba28c605e910c41840645780ff42d2eea032fd9baaa5d758085ece8ae43dd33582e21c57fff791783424d3c4d666bc48b6f77a0312754bfbcb185e22b1d53f5f SHA512 50a79bc0378bb9bf694656b15ac69446447fc863a5a6556e68ad736768627c9f43e59c68b0ed141cee5dbd81a8ccca1a33a61aa01af7d0a5949b00d6edb6525e
-DIST mime-types-2.99.2.gem 149504 BLAKE2B d2088d606b0210a8607d351ce7b7e3b7f25c3d518eaa3cb32ccfbf56a16eea104c908614f315317cece175003261d240f43bbf203619b54da35702abb94be8ce SHA512 46b3add451c3a6879f0f5df5f1e09c41d78d5a5b3872c2fcae7c8b097008cb04a9f5606360af9cc9880d7d659fe2dad19a118e6dfca1774ec3f5a5b852e31720
-DIST mime-types-3.2.2.gem 35840 BLAKE2B dd77473793d68007a3f096971366b5c2120391f3bdd5c758d8e4fac2c1df509a9e367766ac8f1dd292e9b000beb6346d22f2e21c599d2d9117cee84ae7fee864 SHA512 e098df6001ddb53225cf2f48df4e13f2cb9c5e86f64dfaebfba82ed9f1d60149b05069800ea14d1d76554d760169f3c3cb506cc3c789c74da7e1c8df61d67b7c
+DIST mime-types-3.4.1.gem 36864 BLAKE2B 09c6c2fad3cad3535e5c357b49c84b2c1809903235f3bdbeeb766157c48bfc899f32fe95be535feab3c7835c4b535e25b49019c14f51dee1a812fdb735f0f7af SHA512 d0cec7afbe1685c008765997c3047f23bbb0bd10989cd82475805f932e61c400b3d2e60f5f95804c46919b57f0d3644c866be358b0c4c653ace43d62bbc98e4f
+DIST mime-types-3.5.0.gem 37888 BLAKE2B 1638dbe9dcb5cabf64a05d39d5069b10aad4c9749865a57e089e0e7a9ab6f4073833e6f86008506c634245755e2e66b44e204e68f0c4da4a0052d500e58bbf9e SHA512 c7177a2a54aaa8af88f14222c48011905379586ac160cab420dd7c49bfaa92159dd034398200908f5e18440ff69dbff767390948cbdb92fc325d552ca5087ea8
+DIST mime-types-3.5.1.gem 37888 BLAKE2B 51ae93cf8b3838c5b1353d7dc251ca34ff9519e4df36b4e05b34d9f981d441f7c8ad6952133d6706791a98946e3b3a67a083457fe7919c80ef6c64964ae92f3e SHA512 3bba16ed3ad8050fb4b62b65c3f087885178a2514c7375d949956df81a9ebdeaa7698dba9671ee8bfc958117b1d18dda9679ebf5253300a7ffafde53e8fdeeda
+DIST mime-types-3.5.2.gem 37888 BLAKE2B 1977922fe77029380a0adb3d3a12599e428cbf5abb8167595c3848c115f75046e69b1443e3644d506e0f434ff164ad75efcd3f7e663c9dbf89f81ec923735e05 SHA512 099e3b984d3637dfeaf00a76e56427c278ce3c48b77aaa45ed63521e73b1877d773d0ebe4fbe1ec21113987f7d39cda0deeefb7c9ded5f2a3024577e3e6ab6ff
diff --git a/dev-ruby/mime-types/metadata.xml b/dev-ruby/mime-types/metadata.xml
index 4d832e16661f..af0f1caef614 100644
--- a/dev-ruby/mime-types/metadata.xml
+++ b/dev-ruby/mime-types/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/mime-types/mime-types-1.25.1.ebuild b/dev-ruby/mime-types/mime-types-1.25.1.ebuild
deleted file mode 100644
index e6db30968360..000000000000
--- a/dev-ruby/mime-types/mime-types-1.25.1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides a mailcap-like MIME Content-Type lookup for Ruby"
-HOMEPAGE="https://github.com/halostatue/mime-types/"
-
-LICENSE="MIT Artistic GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm hppa ~ia64 ppc ppc64 x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
-
-all_ruby_prepare() {
- # Handle minitest ourselves to avoid bundler dependency.
- sed -i -e '2igem "minitest", "~> 5.0"; require "minitest/autorun"' test/test_*.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/mime-types/mime-types-2.99.2.ebuild b/dev-ruby/mime-types/mime-types-2.99.2.ebuild
deleted file mode 100644
index 1e48a7c773fd..000000000000
--- a/dev-ruby/mime-types/mime-types-2.99.2.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc History-Types.rdoc README.rdoc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides a mailcap-like MIME Content-Type lookup for Ruby"
-HOMEPAGE="https://github.com/mime-types/ruby-mime-types"
-
-LICENSE="MIT Artistic GPL-2"
-SLOT="2"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on minitest-focus.
- sed -i -e '/focus/ s:^:#:' \
- -e 's:fivemat/::' \
- test/minitest_helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/mime-types/mime-types-3.2.2.ebuild b/dev-ruby/mime-types/mime-types-3.2.2.ebuild
deleted file mode 100644
index 951620a12204..000000000000
--- a/dev-ruby/mime-types/mime-types-3.2.2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.md README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides a mailcap-like MIME Content-Type lookup for Ruby"
-HOMEPAGE="https://github.com/mime-types/ruby-mime-types"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 dev-ruby/minitest-bonus-assertions:2 dev-ruby/minitest-hooks:1 )"
-
-ruby_add_rdepend ">=dev-ruby/mime-types-data-3.2015:3"
-
-all_ruby_prepare() {
- # Avoid unneeded developer-only dependencies.
- sed -i -e '/\(focus\|rg\)/ s:^:#:' \
- -e 's:fivemat/::' test/minitest_helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/mime-types/mime-types-3.4.1.ebuild b/dev-ruby/mime-types/mime-types-3.4.1.ebuild
new file mode 100644
index 000000000000..12c4a6d4803a
--- /dev/null
+++ b/dev-ruby/mime-types/mime-types-3.4.1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a mailcap-like MIME Content-Type lookup for Ruby"
+HOMEPAGE="https://github.com/mime-types/ruby-mime-types"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/minitest:5 dev-ruby/minitest-bonus-assertions:2 dev-ruby/minitest-hooks:1 )"
+
+ruby_add_rdepend ">=dev-ruby/mime-types-data-3.2015:3"
+
+all_ruby_prepare() {
+ # Avoid unneeded developer-only dependencies.
+ sed -i -e '/\(focus\|rg\)/ s:^:#:' \
+ -e 's:fivemat/::' test/minitest_helper.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'require "minitest/autorun"; Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/mime-types/mime-types-3.5.0.ebuild b/dev-ruby/mime-types/mime-types-3.5.0.ebuild
new file mode 100644
index 000000000000..efb7bfe287e9
--- /dev/null
+++ b/dev-ruby/mime-types/mime-types-3.5.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a mailcap-like MIME Content-Type lookup for Ruby"
+HOMEPAGE="https://github.com/mime-types/ruby-mime-types"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/minitest:5 dev-ruby/minitest-bonus-assertions:2 dev-ruby/minitest-hooks:1 )"
+
+ruby_add_rdepend ">=dev-ruby/mime-types-data-3.2015:3"
+
+all_ruby_prepare() {
+ # Avoid unneeded developer-only dependencies.
+ sed -i -e '/\(focus\|rg\)/ s:^:#:' \
+ -e 's:fivemat/::' test/minitest_helper.rb || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=1 ${RUBY} -Ilib:test:. -e 'require "minitest/autorun"; Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/mime-types/mime-types-3.5.1.ebuild b/dev-ruby/mime-types/mime-types-3.5.1.ebuild
new file mode 100644
index 000000000000..bcab1e489937
--- /dev/null
+++ b/dev-ruby/mime-types/mime-types-3.5.1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a mailcap-like MIME Content-Type lookup for Ruby"
+HOMEPAGE="https://github.com/mime-types/ruby-mime-types"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/minitest:5 dev-ruby/minitest-bonus-assertions:2 dev-ruby/minitest-hooks:1 )"
+
+ruby_add_rdepend ">=dev-ruby/mime-types-data-3.2015:3"
+
+all_ruby_prepare() {
+ # Avoid unneeded developer-only dependencies.
+ sed -i -e '/\(focus\|rg\)/ s:^:#:' \
+ -e 's:fivemat/::' test/minitest_helper.rb || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=1 ${RUBY} -Ilib:test:. -e 'require "minitest/autorun"; Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/mime-types/mime-types-3.5.2.ebuild b/dev-ruby/mime-types/mime-types-3.5.2.ebuild
new file mode 100644
index 000000000000..820ebb8bda7d
--- /dev/null
+++ b/dev-ruby/mime-types/mime-types-3.5.2.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a mailcap-like MIME Content-Type lookup for Ruby"
+HOMEPAGE="https://github.com/mime-types/ruby-mime-types"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest:5 dev-ruby/minitest-hooks:1 )"
+
+ruby_add_rdepend ">=dev-ruby/mime-types-data-3.2015:3"
+
+all_ruby_prepare() {
+ # Avoid unneeded developer-only dependencies.
+ sed -i -e '/\(focus\|rg\)/ s:^:#:' \
+ -e 's:fivemat/::' test/minitest_helper.rb || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=1 ${RUBY} -Ilib:test:. -e 'require "minitest/autorun"; Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/mimemagic/Manifest b/dev-ruby/mimemagic/Manifest
index e69fae3602dd..bf481d9bd7c0 100644
--- a/dev-ruby/mimemagic/Manifest
+++ b/dev-ruby/mimemagic/Manifest
@@ -1,2 +1,2 @@
-DIST mimemagic-0.3.2.gem 366080 BLAKE2B a99db4fee3a41da872a95dcd31126a497ab47cf990d3c390ca1552f632d1dba5abf86378f2500b285f1cf9f78a56040ee6ee501f641de788e11fd693a655d839 SHA512 0d919ecf7f787c1b72ea337945089070db3647976192adeb510985542962a9efc9a2dc62c51024a9a32afbebf804c21745cc06d6d4738f570f1d2eee0b1ae181
-DIST mimemagic-0.3.3.gem 402944 BLAKE2B 422dd8bcadb2f04fcad2956339cf66a9b5c256462775be9c222b1be968ebde185e15c1fc0107d495dcad6dde59b7a35910d0139740d96a474ec037ccf181f2cc SHA512 ea62cf519af76324ed62863142422a4b5546927b243a9ac45c37ae0b8bfc97813b2276a1fd898bce470b091b1818190a0dc1637d167233a2e187d78e27bb8b77
+DIST mimemagic-0.3.10.tar.gz 56979 BLAKE2B 5a3113172747b911abe92ad8c20b04992ec4cea5eca91d6fe0c71c2aba14a0e5094a6d6cf710815ef8f728fe67c25151b5997e74b8dfb3c6de77b78960f054e2 SHA512 1c967509bb3ded1512859d9542fb56022debfe3864a63f2fd45c899a94e5c6aaab1e8714bfb797dc0719baf8bafbd3ba56c67d26d8c6c5f18c967ea6a2efea72
+DIST mimemagic-0.4.3.tar.gz 56539 BLAKE2B 7029842f12b80e4ede79209f7aa9b5b05ead3dc4cabdb3b170098b90d0c5a195cc934119507af0e622b4235b47c192e295aabb057ae6ede08ba422d0921ca26c SHA512 a3a960e0219cef0ad21d5e3541c99c190f1ae98da0e6a022a5acb235cee57f5b9ea4fa1f366114e82e6789668b7b000409a6f355b5e0fab12032c08b43fe556b
diff --git a/dev-ruby/mimemagic/files/mimemagic-0.3.9-path.rb b/dev-ruby/mimemagic/files/mimemagic-0.3.9-path.rb
new file mode 100644
index 000000000000..33e13fca2495
--- /dev/null
+++ b/dev-ruby/mimemagic/files/mimemagic-0.3.9-path.rb
@@ -0,0 +1,3 @@
+class MimeMagic
+ DATABASE_PATH="@GENTOO_PORTAGE_EPREFIX@/usr/share/mime/packages/freedesktop.org.xml"
+end
diff --git a/dev-ruby/mimemagic/metadata.xml b/dev-ruby/mimemagic/metadata.xml
index 9b819db3005d..f0fc4a061131 100644
--- a/dev-ruby/mimemagic/metadata.xml
+++ b/dev-ruby/mimemagic/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">minad/mimemagic</remote-id>
+ <remote-id type="github">mimemagicrb/mimemagic</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/mimemagic/mimemagic-0.3.10-r1.ebuild b/dev-ruby/mimemagic/mimemagic-0.3.10-r1.ebuild
new file mode 100644
index 000000000000..33422b38290c
--- /dev/null
+++ b/dev-ruby/mimemagic/mimemagic-0.3.10-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby26 ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC=mimemagic.gemspec
+
+inherit prefix ruby-fakegem
+
+DESCRIPTION="Fast mime detection by extension or content"
+HOMEPAGE="https://github.com/mimemagicrb/mimemagic"
+SRC_URI="https://github.com/mimemagicrb/mimemagic/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+RDEPEND+=" x11-misc/shared-mime-info"
+
+ruby_add_rdepend "
+ dev-ruby/nokogiri
+ dev-ruby/rake
+"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ cp "${FILESDIR}/${PN}-0.3.9-path.rb" lib/mimemagic/path.rb || die
+ eprefixify lib/mimemagic/path.rb
+
+ sed -i -e 's/git ls-files/find * -print/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_install() {
+ each_fakegem_install
+ ruby_fakegem_extensions_installed
+}
diff --git a/dev-ruby/mimemagic/mimemagic-0.3.2.ebuild b/dev-ruby/mimemagic/mimemagic-0.3.2.ebuild
deleted file mode 100644
index 0509dd0afdc0..000000000000
--- a/dev-ruby/mimemagic/mimemagic-0.3.2.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Fast mime detection by extension or content"
-HOMEPAGE="https://github.com/minad/mimemagic"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/bacon )"
-
-each_ruby_test() {
- ${RUBY} -S bacon -q -Ilib:test test/*_test.rb || die
-}
diff --git a/dev-ruby/mimemagic/mimemagic-0.3.3.ebuild b/dev-ruby/mimemagic/mimemagic-0.3.3.ebuild
deleted file mode 100644
index b7d599615b4d..000000000000
--- a/dev-ruby/mimemagic/mimemagic-0.3.3.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Fast mime detection by extension or content"
-HOMEPAGE="https://github.com/minad/mimemagic"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
diff --git a/dev-ruby/mimemagic/mimemagic-0.4.3-r1.ebuild b/dev-ruby/mimemagic/mimemagic-0.4.3-r1.ebuild
new file mode 100644
index 000000000000..303de304e2be
--- /dev/null
+++ b/dev-ruby/mimemagic/mimemagic-0.4.3-r1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC=mimemagic.gemspec
+
+inherit prefix ruby-fakegem
+
+DESCRIPTION="Fast mime detection by extension or content"
+HOMEPAGE="https://github.com/mimemagicrb/mimemagic"
+SRC_URI="https://github.com/mimemagicrb/mimemagic/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+RDEPEND+=" x11-misc/shared-mime-info"
+
+ruby_add_rdepend "
+ dev-ruby/nokogiri
+ dev-ruby/rake
+"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ cp "${FILESDIR}/${PN}-0.3.9-path.rb" lib/mimemagic/path.rb || die
+ eprefixify lib/mimemagic/path.rb
+
+ sed -i -e 's/git ls-files/find * -print/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each {|f| require f}' || die
+}
+
+each_ruby_install() {
+ each_fakegem_install
+ ruby_fakegem_extensions_installed
+}
diff --git a/dev-ruby/mimemagic/mimemagic-0.4.3-r2.ebuild b/dev-ruby/mimemagic/mimemagic-0.4.3-r2.ebuild
new file mode 100644
index 000000000000..e89f936c8497
--- /dev/null
+++ b/dev-ruby/mimemagic/mimemagic-0.4.3-r2.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC=mimemagic.gemspec
+
+inherit prefix ruby-fakegem
+
+DESCRIPTION="Fast mime detection by extension or content"
+HOMEPAGE="https://github.com/mimemagicrb/mimemagic"
+SRC_URI="https://github.com/mimemagicrb/mimemagic/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+
+RDEPEND+=" x11-misc/shared-mime-info"
+
+ruby_add_rdepend "
+ dev-ruby/nokogiri
+ dev-ruby/rake
+"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ cp "${FILESDIR}/${PN}-0.3.9-path.rb" lib/mimemagic/path.rb || die
+ eprefixify lib/mimemagic/path.rb
+
+ sed -i -e 's/git ls-files/find * -print/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each {|f| require f}' || die
+}
+
+each_ruby_install() {
+ each_fakegem_install
+ ruby_fakegem_extensions_installed
+}
diff --git a/dev-ruby/mini_magick/Manifest b/dev-ruby/mini_magick/Manifest
index a39349160c23..68f8553bec04 100644
--- a/dev-ruby/mini_magick/Manifest
+++ b/dev-ruby/mini_magick/Manifest
@@ -1,2 +1 @@
-DIST mini_magick-4.9.3.tar.gz 1187910 BLAKE2B d0eaa19da0d7310316ed6c11befa2e48ba75f441021f3ecd6533b0e04d9a44cc6da18c867cec87198abd3e433d63643ab61e21bd3c8b059a757634445f718207 SHA512 4a8cd953a8281229c36cb2482115a8fd127099729fbffd4be7db8967da90916e07c062c96ee066d9740d7261c07f263db8f020eabae59cf10fa6043e4be590c8
-DIST mini_magick-4.9.4.tar.gz 1188193 BLAKE2B bd3ae9eb2f5796c42093d9162cd7b1437eccd7ffc2fccd257e2f18b7d34709fa723e413d36045f50bdc13aff1ba5220a4d277d95e419cd37c5b22d304628403d SHA512 9d1bcd7925a26332ff35daba67d78dab88690ea403e70042485d3c1499a41080365b73c03116f26cf11f9cc05c75cf7a8c40f660764f45ece5fdb9ca8a521757
+DIST mini_magick-4.12.0.tar.gz 1331356 BLAKE2B 84d222424c354e83a041f2c6352f92d11889ed51126f90dd55ccbdbfa31974b79977bf3cf10d30c5f350d17a7dd2d20bf538c2eb78f65c58a29a81f71290acf8 SHA512 8801b4fe9cfed47eeae91cffd5364ca828f8b21d7040217d72d0f5ca9070e02f191b8f87b933c067c0d914332806f14e1b87621dbca06df047c43db8a72cd559
diff --git a/dev-ruby/mini_magick/metadata.xml b/dev-ruby/mini_magick/metadata.xml
index 829b08d87273..d8d8c2e82f24 100644
--- a/dev-ruby/mini_magick/metadata.xml
+++ b/dev-ruby/mini_magick/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/mini_magick/mini_magick-4.12.0.ebuild b/dev-ruby/mini_magick/mini_magick-4.12.0.ebuild
new file mode 100644
index 000000000000..47b68f055782
--- /dev/null
+++ b/dev-ruby/mini_magick/mini_magick-4.12.0.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Manipulate images with minimal use of memory"
+HOMEPAGE="https://github.com/minimagick/minimagick"
+SRC_URI="https://github.com/minimagick/minimagick/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="minimagick-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+# It's only used at runtime in this case because this extension only
+# _calls_ the commands. But when we run tests we're going to need tiff
+# and jpeg support at a minimum.
+RDEPEND+=" media-gfx/imagemagick"
+DEPEND+=" test? ( virtual/imagemagick-tools[jpeg,png,tiff] )"
+
+ruby_add_bdepend "test? ( dev-ruby/mocha dev-ruby/webmock )"
+
+all_ruby_prepare() {
+ # remove executable bit from all files
+ find "${S}" -type f -exec chmod -x {} +
+
+ sed -i -e '/\([Bb]undler\|pry\)/ s:^:#:' spec/spec_helper.rb || die
+
+ # Don't force a specific formatter but use overall Gentoo defaults.
+ sed -i -e '/config.formatter/d' spec/spec_helper.rb || die
+
+ # Avoid broken spec that does not assume . in path name
+ sed -i -e '/reformats a layer/,/end/ s:^:#:' spec/lib/mini_magick/image_spec.rb || die
+
+ # Avoid spec broken by recent imagemagick updates
+ sed -i -e '/cache files generated from .mpc/askip' spec/lib/mini_magick/image_spec.rb || die
+ sed -i -e '/does not hang when parsing verbose data/askip' spec/lib/mini_magick/image_spec.rb || die
+
+ # Avoid graphicsmagick tests because installing both in parallel for
+ # tests is hard.
+ sed -i -e 's/:graphicsmagick//' spec/spec_helper.rb || die
+ sed -i -e '/identifies when gm exists/,/^ end/ s:^:#:' spec/lib/mini_magick/utilities_spec.rb || die
+ sed -i -e '/returns GraphicsMagick/,/^ end/ s:^:#:' spec/lib/mini_magick_spec.rb || die
+ sed -i -e 's/"GraphicsMagick"//' spec/lib/mini_magick/image_spec.rb || die
+
+ # Avoid posix-spawn tests because is not the default, does not work with ruby30 and appears to be unmaintained.
+ sed -e '/SHELL_APIS.*posix-spawn/ s:^:#:' \
+ -e 's/"posix-spawn"//' \
+ -i spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/mini_magick/mini_magick-4.9.3.ebuild b/dev-ruby/mini_magick/mini_magick-4.9.3.ebuild
deleted file mode 100644
index 33f0ef57dcb9..000000000000
--- a/dev-ruby/mini_magick/mini_magick-4.9.3.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Manipulate images with minimal use of memory"
-HOMEPAGE="https://github.com/minimagick/minimagick"
-SRC_URI="https://github.com/minimagick/minimagick/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="minimagick-${PV}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-# It's only used at runtime in this case because this extension only
-# _calls_ the commands. But when we run tests we're going to need tiff
-# and jpeg support at a minimum.
-RDEPEND+=" media-gfx/imagemagick"
-DEPEND+=" test? ( virtual/imagemagick-tools[jpeg,png,tiff] )"
-
-ruby_add_bdepend "test? ( dev-ruby/mocha dev-ruby/posix-spawn dev-ruby/webmock )"
-
-all_ruby_prepare() {
- # remove executable bit from all files
- find "${S}" -type f -exec chmod -x {} +
-
- sed -i -e '/\([Bb]undler\|pry\)/ s:^:#:' spec/spec_helper.rb || die
-
- # Don't force a specific formatter but use overall Gentoo defaults.
- sed -i -e '/config.formatter/d' spec/spec_helper.rb || die
-
- # Avoid broken spec that does not assume . in path name
- sed -i -e '/reformats a layer/,/end/ s:^:#:' spec/lib/mini_magick/image_spec.rb || die
-
- # Avoid failing spec that also fails in upstream Travis
- sed -i -e '/returns a hash of verbose information/,/^ end/ s:^:#:' spec/lib/mini_magick/image_spec.rb || die
-
- # Make spec more lenient to imagemagick quoting
- sed -i -e "/unable to open image/ s/'foo'/.foo./" spec/lib/mini_magick/shell_spec.rb || die
-
- # Avoid graphicsmagick tests because installing both in parallel for
- # tests is hard.
- sed -i -e 's/:graphicsmagick//' spec/spec_helper.rb || die
- sed -i -e '/identifies when gm exists/,/^ end/ s:^:#:' spec/lib/mini_magick/utilities_spec.rb || die
- sed -i -e '/returns GraphicsMagick/,/^ end/ s:^:#:' spec/lib/mini_magick_spec.rb || die
-}
diff --git a/dev-ruby/mini_magick/mini_magick-4.9.4.ebuild b/dev-ruby/mini_magick/mini_magick-4.9.4.ebuild
deleted file mode 100644
index b8093b12ed23..000000000000
--- a/dev-ruby/mini_magick/mini_magick-4.9.4.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Manipulate images with minimal use of memory"
-HOMEPAGE="https://github.com/minimagick/minimagick"
-SRC_URI="https://github.com/minimagick/minimagick/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="minimagick-${PV}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-# It's only used at runtime in this case because this extension only
-# _calls_ the commands. But when we run tests we're going to need tiff
-# and jpeg support at a minimum.
-RDEPEND+=" media-gfx/imagemagick"
-DEPEND+=" test? ( virtual/imagemagick-tools[jpeg,png,tiff] )"
-
-ruby_add_bdepend "test? ( dev-ruby/mocha dev-ruby/posix-spawn dev-ruby/webmock )"
-
-all_ruby_prepare() {
- # remove executable bit from all files
- find "${S}" -type f -exec chmod -x {} +
-
- sed -i -e '/\([Bb]undler\|pry\)/ s:^:#:' spec/spec_helper.rb || die
-
- # Don't force a specific formatter but use overall Gentoo defaults.
- sed -i -e '/config.formatter/d' spec/spec_helper.rb || die
-
- # Avoid broken spec that does not assume . in path name
- sed -i -e '/reformats a layer/,/end/ s:^:#:' spec/lib/mini_magick/image_spec.rb || die
-
- # Avoid failing spec that also fails in upstream Travis
- sed -i -e '/returns a hash of verbose information/,/^ end/ s:^:#:' spec/lib/mini_magick/image_spec.rb || die
-
- # Make spec more lenient to imagemagick quoting
- sed -i -e "/unable to open image/ s/'foo'/.foo./" spec/lib/mini_magick/shell_spec.rb || die
-
- # Avoid graphicsmagick tests because installing both in parallel for
- # tests is hard.
- sed -i -e 's/:graphicsmagick//' spec/spec_helper.rb || die
- sed -i -e '/identifies when gm exists/,/^ end/ s:^:#:' spec/lib/mini_magick/utilities_spec.rb || die
- sed -i -e '/returns GraphicsMagick/,/^ end/ s:^:#:' spec/lib/mini_magick_spec.rb || die
-}
diff --git a/dev-ruby/mini_mime/Manifest b/dev-ruby/mini_mime/Manifest
index b3b7a8f4884e..0c6f38dbf8cd 100644
--- a/dev-ruby/mini_mime/Manifest
+++ b/dev-ruby/mini_mime/Manifest
@@ -1,3 +1 @@
-DIST mini_mime-1.0.0.tar.gz 31205 BLAKE2B c82b806dec4b726d997ebd916e41d8873919a2c53ef1a6b8b02a94ef174837079552058084999e870944885118ee37127c29aa46c602bdd58fdc85bf473fd0cf SHA512 dbb976fa23679a42a2e28b06eb33f61ec991e7115e9bbadca7d09cb4b247a2345b14a2cb4fd4897aab5ffb40c710e931302d07ea3dff4ee64e935a70c9e88fff
-DIST mini_mime-1.0.1.tar.gz 31329 BLAKE2B 970927c8bb2d00f2e0b71cbca9aa954f732eb9d46d2e9b35a6b042ade88aaea993b40023a189b4ce1515b2b476d123945b4ec2d3fef05d4444f3e1a0f492df65 SHA512 2002ed95fe49bf71a95987f35e25e9086a5365e6eff9f7cf8a33a742cbbbd31e5020fbcd0d35b31e7dc61c0e82390a03e5241f4e5a88e9f7d7a2d3020c0ea9ee
-DIST mini_mime-1.0.2.tar.gz 31971 BLAKE2B b2783f9376d5299ba77d1cab0326f706cc671a96aac58e8c65879f9180cf3f1f359eba1b8ed4028c775728d4d633d6e8cce06acee90cfe9b60cde2e53f9a2360 SHA512 644eefdc9277642b8b94ce8071826ec993f7da1a5bc8903bd17ece05a374f286014d05b5765ec5a5f7f0fa9252b56d3bdd03109a3702075f6e8ccb68a4cef98d
+DIST mini_mime-1.1.5.tar.gz 34890 BLAKE2B b5d5d35dec2dc4a5885443315fefedbce7bcd38a8193ebaba24ff0f6fd2173450eec0be669759f1831dbec646ac0a06e3b18d79704a901e602b7abe487fda189 SHA512 38da060c723ca21dfda783629ff065dfcc3634e7c0117f8f4af8e38abc1822656a5a62fabe154bed75cfc56637cfa65c596d354cfcdb673f98bce0653b47a816
diff --git a/dev-ruby/mini_mime/metadata.xml b/dev-ruby/mini_mime/metadata.xml
index 4aa48c66cfd0..4b307290b28b 100644
--- a/dev-ruby/mini_mime/metadata.xml
+++ b/dev-ruby/mini_mime/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/mini_mime/mini_mime-1.0.0.ebuild b/dev-ruby/mini_mime/mini_mime-1.0.0.ebuild
deleted file mode 100644
index 3403376f8144..000000000000
--- a/dev-ruby/mini_mime/mini_mime-1.0.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_GEMSPEC="mini_mime.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A lightweight mime type lookup toy"
-HOMEPAGE="https://github.com/discourse/mini_mime"
-SRC_URI="https://github.com/discourse/mini_mime/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/mini_mime/mini_mime-1.0.1.ebuild b/dev-ruby/mini_mime/mini_mime-1.0.1.ebuild
deleted file mode 100644
index 2507a39cb4b9..000000000000
--- a/dev-ruby/mini_mime/mini_mime-1.0.1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_GEMSPEC="mini_mime.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A lightweight mime type lookup toy"
-HOMEPAGE="https://github.com/discourse/mini_mime"
-SRC_URI="https://github.com/discourse/mini_mime/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # Avoid comparison with MIME::Types because types may vary over time
- # as they get reclassified leading to random harmless failures.
- sed -i -e '/test_full_parity_with_mime_types/askip "gentoo"' test/mini_mime_test.rb || die
-}
diff --git a/dev-ruby/mini_mime/mini_mime-1.0.2.ebuild b/dev-ruby/mini_mime/mini_mime-1.0.2.ebuild
deleted file mode 100644
index 91407328ec46..000000000000
--- a/dev-ruby/mini_mime/mini_mime-1.0.2.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_GEMSPEC="mini_mime.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A lightweight mime type lookup toy"
-HOMEPAGE="https://github.com/discourse/mini_mime"
-SRC_URI="https://github.com/discourse/mini_mime/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # Avoid comparison with MIME::Types because types may vary over time
- # as they get reclassified leading to random harmless failures.
- sed -i -e '/test_full_parity_with_mime_types/askip "gentoo"' test/mini_mime_test.rb || die
-}
diff --git a/dev-ruby/mini_mime/mini_mime-1.1.5.ebuild b/dev-ruby/mini_mime/mini_mime-1.1.5.ebuild
new file mode 100644
index 000000000000..008bc649708d
--- /dev/null
+++ b/dev-ruby/mini_mime/mini_mime-1.1.5.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="mini_mime.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A lightweight mime type lookup toy"
+HOMEPAGE="https://github.com/discourse/mini_mime"
+SRC_URI="https://github.com/discourse/mini_mime/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid comparison with MIME::Types because types may vary over time
+ # as they get reclassified leading to random harmless failures.
+ sed -i -e '/test_full_parity_with_mime_types/askip "gentoo"' test/mini_mime_test.rb || die
+}
diff --git a/dev-ruby/mini_portile2/Manifest b/dev-ruby/mini_portile2/Manifest
new file mode 100644
index 000000000000..5580d6a4a0ba
--- /dev/null
+++ b/dev-ruby/mini_portile2/Manifest
@@ -0,0 +1,3 @@
+DIST mini_portile2-2.8.4.gem 30720 BLAKE2B 33f5e67e1ef647c781cf4f5a4b04a2164b27fb6846e0d76ad42f1cdbdd04cae69c4e14cde4ce5bc36c392de74d256770f693485e896b443aab8cceb0a6cc28e9 SHA512 19e3e4908e54fb73d695f0674a5c95d96bfa2cf6f87c0d59c32f8a68941b729adc065b3bea2d5eaada489340d8c76e098b9db839d075cac5d183f47d2cee7d9c
+DIST mini_portile2-2.8.5.gem 35840 BLAKE2B f14d071bebf5f1d7160b5196564279ea46ae4ec306587a6ec550c3dbc105db0790b55aae1d7595d2d11d5d21826a07ac382c62e4c22ba15aa22323520040789e SHA512 fa09bc2c4aefc341cb249dc33b5ad3182aa582ef150645793e323bdef4d19cbeeced0348c3c962a7225a9aa91b40824347fa1499955326525eddcf867f6ff798
+DIST mini_portile2-2.8.6.gem 35840 BLAKE2B 0173084a911ecc6400c1d7cff9645cb7cc99db6e8aac934c7ee723300b3016286dc21dbd2299c9b703a817527a63cd86c31334c880e57a879f78ab24a109e844 SHA512 7131806ef5af09082e08a05000256ad7ce9fcd170ef3485f42618c69e0bee6cdf8f2e14b67e61d36b9efed5c1df970045720a01d9e0b7ffac434da651a28f238
diff --git a/dev-ruby/mini_portile2/metadata.xml b/dev-ruby/mini_portile2/metadata.xml
new file mode 100644
index 000000000000..7eb5329f4083
--- /dev/null
+++ b/dev-ruby/mini_portile2/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">flavorjones/mini_portile</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/mini_portile2/mini_portile2-2.8.4.ebuild b/dev-ruby/mini_portile2/mini_portile2-2.8.4.ebuild
new file mode 100644
index 000000000000..5b9425a057f2
--- /dev/null
+++ b/dev-ruby/mini_portile2/mini_portile2-2.8.4.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simplistic port-like solution for developers"
+HOMEPAGE="https://github.com/flavorjones/mini_portile"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos"
+IUSE=""
+
+BDEPEND="test? ( dev-build/cmake )"
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitar
+ dev-ruby/minitest-hooks
+ dev-ruby/net-ftp
+ dev-ruby/webrick
+)"
+
+each_ruby_test() {
+ ${RUBY} -w -W2 -I. -Ilib -e 'Dir["test/test_*.rb"].map{|f| require f}' || die
+}
diff --git a/dev-ruby/mini_portile2/mini_portile2-2.8.5.ebuild b/dev-ruby/mini_portile2/mini_portile2-2.8.5.ebuild
new file mode 100644
index 000000000000..ec718bb6b313
--- /dev/null
+++ b/dev-ruby/mini_portile2/mini_portile2-2.8.5.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simplistic port-like solution for developers"
+HOMEPAGE="https://github.com/flavorjones/mini_portile"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos"
+IUSE="test"
+
+BDEPEND="test? ( dev-build/cmake )"
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitar
+ dev-ruby/minitest-hooks
+ dev-ruby/net-ftp
+ dev-ruby/webrick
+)"
+
+all_ruby_prepare() {
+ # Avoid tests that expect gcc to be the main compiler, which we
+ # cannot guarantee.
+ sed -e '/test_configure_defaults_with/askip("Requires gcc to be the C/C++ compiler.")' \
+ -i test/test_cmake.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -w -W2 -I. -Ilib -e 'Dir["test/test_*.rb"].map{|f| require f}' || die
+}
diff --git a/dev-ruby/mini_portile2/mini_portile2-2.8.6.ebuild b/dev-ruby/mini_portile2/mini_portile2-2.8.6.ebuild
new file mode 100644
index 000000000000..ec718bb6b313
--- /dev/null
+++ b/dev-ruby/mini_portile2/mini_portile2-2.8.6.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simplistic port-like solution for developers"
+HOMEPAGE="https://github.com/flavorjones/mini_portile"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos"
+IUSE="test"
+
+BDEPEND="test? ( dev-build/cmake )"
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitar
+ dev-ruby/minitest-hooks
+ dev-ruby/net-ftp
+ dev-ruby/webrick
+)"
+
+all_ruby_prepare() {
+ # Avoid tests that expect gcc to be the main compiler, which we
+ # cannot guarantee.
+ sed -e '/test_configure_defaults_with/askip("Requires gcc to be the C/C++ compiler.")' \
+ -i test/test_cmake.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -w -W2 -I. -Ilib -e 'Dir["test/test_*.rb"].map{|f| require f}' || die
+}
diff --git a/dev-ruby/minispec-metadata/Manifest b/dev-ruby/minispec-metadata/Manifest
new file mode 100644
index 000000000000..c00d69942ef5
--- /dev/null
+++ b/dev-ruby/minispec-metadata/Manifest
@@ -0,0 +1 @@
+DIST minispec-metadata-3.5.0.gem 11776 BLAKE2B b4ba302c647035f87f941e5e796f75093122d5a5f365d41d3a402a5155b69bbb70cb1ad2bd6bc6b69373b955dc936b22c7cfefbe8035cfb007b7c825b5ee9b44 SHA512 3fe99b843c8d1c2600270793d213df44bc505b0f364112bd98068db18fc5a5b35d2271b6e51fbd8ce9e2556cafc25a5bb8570914a141e5a6f2506801e92053e1
diff --git a/dev-ruby/minispec-metadata/metadata.xml b/dev-ruby/minispec-metadata/metadata.xml
new file mode 100644
index 000000000000..7eb6b6155eb8
--- /dev/null
+++ b/dev-ruby/minispec-metadata/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ordinaryzelig/minispec-metadata</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/minispec-metadata/minispec-metadata-3.5.0.ebuild b/dev-ruby/minispec-metadata/minispec-metadata-3.5.0.ebuild
new file mode 100644
index 000000000000..5c1a82303c4a
--- /dev/null
+++ b/dev-ruby/minispec-metadata/minispec-metadata-3.5.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Define and access metadata in MiniTest::Spec descriptions and specs"
+HOMEPAGE="https://github.com/ordinaryzelig/minispec-metadata"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/minitest"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|awesome_print\)/ s:^:#:' Rakefile spec/helper.rb || die
+}
diff --git a/dev-ruby/minitar/Manifest b/dev-ruby/minitar/Manifest
index 4ad862807393..10a61594ff2f 100644
--- a/dev-ruby/minitar/Manifest
+++ b/dev-ruby/minitar/Manifest
@@ -1 +1 @@
-DIST minitar-0.8.tar.gz 33632 BLAKE2B b576c74cfd59893d4c0c935703453551f9a0ca6258bc6a2b1ecb3151a44ff166607931e554c811fffb489b6398123cd9e8e58372a94b303df45d88ef903868ad SHA512 cab4798b98d91a17dd5ce4aed3f6fd166dab61e8c9e3bef3df218944fe1657a9ec9d40a52ab2773430070e50410c401da799469b096dcc2b22d6466da1e50b8d
+DIST minitar-0.9.tar.gz 33873 BLAKE2B 6d285c181510c96f173d850a9411da8a214459da14895e2d186ce712387d390c8ac95e27e4e768005540fdfb7463f32206085a72faf4de6b24c31cb732234260 SHA512 e3aaf0e664a985704cf9dccb72250ea2a7ebb2db9b6120590fb8d5525fe2717e0a90b3020f461ae0c4dfb19dc8728b4eeb6ba2e24ab75d12fbd7f5d98b269c79
diff --git a/dev-ruby/minitar/metadata.xml b/dev-ruby/minitar/metadata.xml
index 6b698bf6db4e..e5cac1995243 100644
--- a/dev-ruby/minitar/metadata.xml
+++ b/dev-ruby/minitar/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/minitar/minitar-0.8.ebuild b/dev-ruby/minitar/minitar-0.8.ebuild
deleted file mode 100644
index 346189f49ddc..000000000000
--- a/dev-ruby/minitar/minitar-0.8.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides POSIX tarchive management from Ruby programs"
-HOMEPAGE="https://github.com/halostatue/minitar"
-SRC_URI="https://github.com/halostatue/minitar/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="minitar-${PV}"
-
-LICENSE="|| ( BSD-2 Ruby )"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.3:5 )"
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/minitar/minitar-0.9-r1.ebuild b/dev-ruby/minitar/minitar-0.9-r1.ebuild
new file mode 100644
index 000000000000..6cb57c047593
--- /dev/null
+++ b/dev-ruby/minitar/minitar-0.9-r1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="minitar.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides POSIX tarchive management from Ruby programs"
+HOMEPAGE="https://github.com/halostatue/minitar"
+SRC_URI="https://github.com/halostatue/minitar/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="minitar-${PV}"
+
+LICENSE="|| ( BSD-2 Ruby-BSD )"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.3:5 )"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/minitest-around/metadata.xml b/dev-ruby/minitest-around/metadata.xml
index 4cbe1280bf75..6cb46ec5b9ab 100644
--- a/dev-ruby/minitest-around/metadata.xml
+++ b/dev-ruby/minitest-around/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/minitest-around/minitest-around-0.5.0-r1.ebuild b/dev-ruby/minitest-around/minitest-around-0.5.0-r1.ebuild
new file mode 100644
index 000000000000..c1444d3859dc
--- /dev/null
+++ b/dev-ruby/minitest-around/minitest-around-0.5.0-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Alternative for setup/teardown dance"
+HOMEPAGE="https://github.com/splattael/minitest-around"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~sparc x86"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/minitest:5"
+
+ruby_add_bdepend "test? ( dev-ruby/bundler dev-util/cucumber )"
+
+all_ruby_prepare() {
+ sed -i -e '/bump/ s:^:#:' \
+ -e '/ls-files/d' \
+ -e '/cucumber/ s/,.*$//' minitest-around.gemspec Rakefile || die
+ sed -e '/bundler/ s:^:#:' \
+ -i test/helper.rb Rakefile || die
+}
+
+each_ruby_test() {
+ for f in test/*_{test,spec}.rb ; do
+ ${RUBY} -S rake test:isolated TEST="${f}" || die
+ done
+}
diff --git a/dev-ruby/minitest-around/minitest-around-0.5.0.ebuild b/dev-ruby/minitest-around/minitest-around-0.5.0.ebuild
deleted file mode 100644
index 286620470fb8..000000000000
--- a/dev-ruby/minitest-around/minitest-around-0.5.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Alternative for setup/teardown dance"
-HOMEPAGE="https://github.com/splattael/minitest-around"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/minitest:5"
-
-ruby_add_bdepend "test? ( dev-ruby/bundler dev-util/cucumber )"
-
-all_ruby_prepare() {
- sed -i -e '/bump/ s:^:#:' \
- -e '/ls-files/d' \
- -e '/cucumber/ s/,.*$//' minitest-around.gemspec Rakefile || die
-}
-
-each_ruby_test() {
- for f in test/*_{test,spec}.rb ; do
- ${RUBY} -S rake test:isolated TEST="${f}" || die
- done
-}
diff --git a/dev-ruby/minitest-bonus-assertions/metadata.xml b/dev-ruby/minitest-bonus-assertions/metadata.xml
index ec5eefb56f46..54573485765f 100644
--- a/dev-ruby/minitest-bonus-assertions/metadata.xml
+++ b/dev-ruby/minitest-bonus-assertions/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/minitest-bonus-assertions/minitest-bonus-assertions-3.0-r2.ebuild b/dev-ruby/minitest-bonus-assertions/minitest-bonus-assertions-3.0-r2.ebuild
new file mode 100644
index 000000000000..3847c4ce3cfa
--- /dev/null
+++ b/dev-ruby/minitest-bonus-assertions/minitest-bonus-assertions-3.0-r2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Bonus assertions for minitest"
+HOMEPAGE="https://github.com/halostatue/minitest-bonus-assertions"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest dev-ruby/minitest-pretty_diff )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bisect\|focus\|moar\)/ s:^:#:' test/minitest_config.rb || die
+
+ sed -e '/returns true if the \(keys are missing\|sets are not equal\)/askip "Flaky"' \
+ -i test/test_minitest-bonus-assertions.rb || die
+
+ # Avoid test that returns slightly different formatting on ruby31
+ sed -e '/is triggered with a different exception/askip "Fragile for output differences"' \
+ -i test/test_minitest-bonus-assertions.rb || die
+
+ # Avoid test that returns slightly different formatting with newer set versions.
+ sed -e '207iskip "Fragile for output differences"' \
+ -e '225iskip "Fragile for output differences"' \
+ -i test/test_minitest-bonus-assertions.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/minitest-bonus-assertions/minitest-bonus-assertions-3.0.ebuild b/dev-ruby/minitest-bonus-assertions/minitest-bonus-assertions-3.0.ebuild
deleted file mode 100644
index c0077ea0b499..000000000000
--- a/dev-ruby/minitest-bonus-assertions/minitest-bonus-assertions-3.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Bonus assertions for minitest"
-HOMEPAGE="https://github.com/halostatue/minitest-bonus-assertions"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest dev-ruby/minitest-pretty_diff )"
-
-all_ruby_prepare() {
- sed -i -e '/\(bisect\|focus\|moar\)/ s:^:#:' test/minitest_config.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:.:test -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/minitest-global_expectations/Manifest b/dev-ruby/minitest-global_expectations/Manifest
new file mode 100644
index 000000000000..2cc14329552b
--- /dev/null
+++ b/dev-ruby/minitest-global_expectations/Manifest
@@ -0,0 +1 @@
+DIST minitest-global_expectations-1.0.1.gem 6656 BLAKE2B 19df8ad02f9dad9711e219389fa2d0114d1b2b07b3d7e263eb69e48d78596184261c5de91d3f03d996bf45e897d1a7ac6bb3efb77cede34203f6712263eb573e SHA512 e63b50b02612d751b1bd0b3c9e100e0f6b674dfa5475434a213f78c5e556004c43f00b9bf5b9c479c2381be87015125a334308fae27d70a6aed1e9b392ece546
diff --git a/dev-ruby/minitest-global_expectations/metadata.xml b/dev-ruby/minitest-global_expectations/metadata.xml
new file mode 100644
index 000000000000..c2001aaeefc7
--- /dev/null
+++ b/dev-ruby/minitest-global_expectations/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jeremyevans/minitest-global_expectations</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/minitest-global_expectations/minitest-global_expectations-1.0.1-r1.ebuild b/dev-ruby/minitest-global_expectations/minitest-global_expectations-1.0.1-r1.ebuild
new file mode 100644
index 000000000000..12e9ff508800
--- /dev/null
+++ b/dev-ruby/minitest-global_expectations/minitest-global_expectations-1.0.1-r1.ebuild
@@ -0,0 +1,15 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Support minitest expectation methods for all objects"
+HOMEPAGE="https://github.com/jeremyevans/minitest-global_expectations"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
diff --git a/dev-ruby/minitest-hooks/Manifest b/dev-ruby/minitest-hooks/Manifest
index 0c9d9d2869a7..bafb507635e9 100644
--- a/dev-ruby/minitest-hooks/Manifest
+++ b/dev-ruby/minitest-hooks/Manifest
@@ -1 +1,2 @@
DIST minitest-hooks-1.5.0.gem 11264 BLAKE2B 740df3b75ade3372fbf75ed7bd861c70af6f11d8cd1f37819272b98bc8cd1fad6ea09375856cd48a75499e0a692411c6da4f5aec212ebae91b47531c4bedda54 SHA512 4e7c969485c6e8d3414710b787c8880ad26b71de9f0b4a93ca1bf343deba426feee1cc06fcc51eee05c4880d851664fff045026d44728e217607e4cb32aa8f4b
+DIST minitest-hooks-1.5.1.gem 8704 BLAKE2B 8513e7694aae942da83323075d048c0aaf5bf2d89c3994c7a2f3c17478f14abc29bf5ee67690e5cd50c8de2d06d60cb2e0de27c69edbc3d6b85946d2ee6e6c3d SHA512 1129205f68688747aa1fbe161cf436e7d82802ec02fe008d564b4266069b1fad014f438d0c16c7c42a98af3f0a89fc4681deea0ae7f421d94653274ce103bd10
diff --git a/dev-ruby/minitest-hooks/metadata.xml b/dev-ruby/minitest-hooks/metadata.xml
index 5f00328f3ad8..7ac30fa0bd8b 100644
--- a/dev-ruby/minitest-hooks/metadata.xml
+++ b/dev-ruby/minitest-hooks/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/minitest-hooks/minitest-hooks-1.5.0.ebuild b/dev-ruby/minitest-hooks/minitest-hooks-1.5.0.ebuild
index 8a94848081ef..62e45c33f352 100644
--- a/dev-ruby/minitest-hooks/minitest-hooks-1.5.0.ebuild
+++ b/dev-ruby/minitest-hooks/minitest-hooks-1.5.0.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
# Skip tests since they require unpackaged sequel
RUBY_FAKEGEM_RECIPE_TEST="none"
@@ -15,5 +15,5 @@ HOMEPAGE="https://github.com/jeremyevans/minitest-hooks"
LICENSE="MIT"
SLOT="1"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE=""
diff --git a/dev-ruby/minitest-hooks/minitest-hooks-1.5.1.ebuild b/dev-ruby/minitest-hooks/minitest-hooks-1.5.1.ebuild
new file mode 100644
index 000000000000..ec292c0b4544
--- /dev/null
+++ b/dev-ruby/minitest-hooks/minitest-hooks-1.5.1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# Skip tests since they require unpackaged sequel
+RUBY_FAKEGEM_RECIPE_TEST="none"
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Adds around and before_all/after_all/around_all hooks for Minitest"
+HOMEPAGE="https://github.com/jeremyevans/minitest-hooks"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
diff --git a/dev-ruby/minitest-power_assert/Manifest b/dev-ruby/minitest-power_assert/Manifest
index 2726f6fd06fe..37f41b76f666 100644
--- a/dev-ruby/minitest-power_assert/Manifest
+++ b/dev-ruby/minitest-power_assert/Manifest
@@ -1 +1 @@
-DIST minitest-power_assert-0.3.0.gem 8192 BLAKE2B 063bb33a29abc72ebc5a0efeed83b0ffe02864f41d25adc59d7e923469f3b690f5cbbca462107036d5678236c17c697215dd51ad1f0823ece428dd52e0b18e80 SHA512 570c54960682b33f27cc6046177142ea76a8910d9b977788e96594c1b746b642e13a4e4f824722d15f7dbe61e3c08784ea6266ab03031e54343940ee4c75e560
+DIST minitest-power_assert-0.3.1.gem 8192 BLAKE2B d5b9a862d19776d673fb510d2cc52b6741ac20c9b286228a672e49f681d37d2d2c3517253c70b5d1a8d8dc08ca2ac35f8105717edb74a28b6a2ed8667d94a9c3 SHA512 178c70dbe0db2b2248fa83437241d80c7054bf51e21afce74c61bc178907b98ae5b691e0cb644d5754a497d4944520e1ebf7727f1d7f286b4aa28b4560a54cbc
diff --git a/dev-ruby/minitest-power_assert/metadata.xml b/dev-ruby/minitest-power_assert/metadata.xml
index e221b61da84d..0b931da912c7 100644
--- a/dev-ruby/minitest-power_assert/metadata.xml
+++ b/dev-ruby/minitest-power_assert/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/minitest-power_assert/minitest-power_assert-0.3.0.ebuild b/dev-ruby/minitest-power_assert/minitest-power_assert-0.3.0.ebuild
deleted file mode 100644
index 7e1acbfd5439..000000000000
--- a/dev-ruby/minitest-power_assert/minitest-power_assert-0.3.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Power Assert for Minitest"
-HOMEPAGE="https://github.com/hsbt/minitest-power_assert"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/minitest:*
- >=dev-ruby/power_assert-1.1
-"
-
-# ruby_add_bdepend "test? ( dev-ruby/minitest dev-ruby/minitest-pretty_diff )"
-
-# all_ruby_prepare() {
-# sed -i -e '/\(bisect\|focus\|moar\)/ s:^:#:' test/minitest_config.rb || die
-# }
-
-# each_ruby_test() {
-# ${RUBY} -Ilib:.:test -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-# }
diff --git a/dev-ruby/minitest-power_assert/minitest-power_assert-0.3.1-r1.ebuild b/dev-ruby/minitest-power_assert/minitest-power_assert-0.3.1-r1.ebuild
new file mode 100644
index 000000000000..80790609b2cf
--- /dev/null
+++ b/dev-ruby/minitest-power_assert/minitest-power_assert-0.3.1-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Power Assert for Minitest"
+HOMEPAGE="https://github.com/hsbt/minitest-power_assert"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/minitest:*
+ >=dev-ruby/power_assert-1.1
+"
+
+all_ruby_prepare() {
+ sed -i -e '/bundle/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/minitest-pretty_diff/metadata.xml b/dev-ruby/minitest-pretty_diff/metadata.xml
index f3e0edd834ca..284257ae90f7 100644
--- a/dev-ruby/minitest-pretty_diff/metadata.xml
+++ b/dev-ruby/minitest-pretty_diff/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/minitest-pretty_diff/minitest-pretty_diff-0.1-r2.ebuild b/dev-ruby/minitest-pretty_diff/minitest-pretty_diff-0.1-r2.ebuild
new file mode 100644
index 000000000000..41ff835b3345
--- /dev/null
+++ b/dev-ruby/minitest-pretty_diff/minitest-pretty_diff-0.1-r2.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Pretty-print hashes and arrays before diffing them in MiniTest"
+HOMEPAGE="https://github.com/adammck/minitest-pretty_diff"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'require "minitest/autorun"; Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/minitest-pretty_diff/minitest-pretty_diff-0.1.ebuild b/dev-ruby/minitest-pretty_diff/minitest-pretty_diff-0.1.ebuild
deleted file mode 100644
index c5582036d09b..000000000000
--- a/dev-ruby/minitest-pretty_diff/minitest-pretty_diff-0.1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Pretty-print hashes and arrays before diffing them in MiniTest"
-HOMEPAGE="https://github.com/adammck/minitest-pretty_diff"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'require "minitest/autorun"; Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/minitest/Manifest b/dev-ruby/minitest/Manifest
index 06f0dc5ca31a..a1665637a75a 100644
--- a/dev-ruby/minitest/Manifest
+++ b/dev-ruby/minitest/Manifest
@@ -1,3 +1,7 @@
-DIST minitest-4.7.5.gem 57856 BLAKE2B d0ecb0a0693c35ebbda52e9c755b72f07e38d6ccc266312a3426f9de3c40165d68bf07d5ed162ce51e31b1bb8502dc844fe61d9e93733108501f156c3096af23 SHA512 7ea0a52d37f4631fb8b11d4389da2123e4207093f7b34c497fced8729c9086faaa35e997debdb53b694e05eb52b16e843960f0b54515c32207f87161a76c3851
-DIST minitest-5.10.3.gem 76288 BLAKE2B 2c4fa5bca17e8a6270923225cd91fa9b6374d2a00b278906faf4e3ead0baf5fb1572a3c75322befc35ad0016d86f49c905e7de0283b07c60585c4c0348d69701 SHA512 6a3b1c86471fd7bb6ca078de9f253aeb9533f8da027998c34cd7fb8165a1d3bb565c1f8df958bb0eef6b7e22658894175c5f54f475585f2c05bb667e812b7aa3
-DIST minitest-5.11.3.gem 79360 BLAKE2B c348957e094bd91e88c6dace522b8e88c37ec435d58b4f6f8c8b458cfd26b789cb00cd43fa9d515112a8f3c9a736756d59c46f4117d1c1948d08cab0a5eed6aa SHA512 387537aff51f8e8f9cc2feddadf6813d11f0ba623ae3d5929d7b7a88e180b60c961dfa1d2ba0f3a4ad7d2c1af250245376fa62b23f68c8b57812c7e86efba0c7
+DIST minitest-5.15.0.gem 87040 BLAKE2B 71e7a7952c25fd37067a449867d74a2f18a8a42d1fbd72f24d6db226c54a18e9a21958654d4176176804bedd09ef9d1d3be68f79e29312c3f85d0930d3d68d7b SHA512 5e97a7aa616966ffc60e10cdc0ba123a7e793f10283ec3b6bf36066177036788cb950ad566fbac49e613b93f08b9846534f463017cde966b4890c3a34a2286be
+DIST minitest-5.18.1.gem 95232 BLAKE2B 97743455cb893b8ccee7e5d40daa803500c243e59d78dcadde6e7af528f1f9b0a39db267b882f1b5467beb3dd5ecb5e0f5bc0d10ecf4901f10c368e5229b3fc2 SHA512 93095188dbde1020a8028e21023056ae9debe7bb868b26333d763958aa32f66910929a44c45c9656552c9efae2a9909cf8640f4c72b9cc53bd49fd5051c9b4a8
+DIST minitest-5.19.0.gem 95744 BLAKE2B b234f64e8957ca89c1cb76baea323874a74295c0fcb69b50efd1f720715d5d26e3d5ad5c0c1e350778f935d7d91f72d27f37e0c937172341b65c99843f983a26 SHA512 c9b5b234fe16127cb376c420a9e3ec111871d604bf7082d09b773637f5229c3b375eb224ae97a237cb3f436a24eb9f49d8d6dddf5d8e99a2806c83b543e10056
+DIST minitest-5.20.0.gem 95744 BLAKE2B b91a895b40a2703478300be236cff87888885099889c19358ccadc73c63d016a3e254c4dc52daa984204e801e3e6fffcb621e674d3e0e3c18b4b2b8fd9e4fece SHA512 906dba1226ed301ad0d7aae2fa138670101e87b11ced69e0c362e65d74fee58a5341756fed8be1f2900863e19c11adcae35ed6ebe7372bb93be0c131dae85a3c
+DIST minitest-5.21.2.gem 98304 BLAKE2B 09de6552a95a639b01a3935cf418301e453a9bb4a7edb85d4f2e27b5e8811db722adbc1ed37da1835c545065f8b4169e19e48c1b48a1778ec1c7bf2048628697 SHA512 4cf86dab870f1cb39ef8c9756fa843c6ddc03ff7738c404db37abc7bdb0ff0436e5a64ed15a733d72e7ae0b8412e4b44cbda0ef3d89ba487268f3550d9248e0c
+DIST minitest-5.22.2.gem 98816 BLAKE2B fcb519fbcf41f908a89608707ce7b2083ddecd3d5a1f8ec8d86e9d84df299997e5a424d201e3704234e695be6f969ab9182dcb0a2170c1277b3e8cd1b2c27b66 SHA512 aafeec582d60f580317f7d30319dd0c0fbb04269359e0aa4de62d0c598039d44dc9a28ce4f999550e7e3a2f48871e4cc563b45ebabf3f8ba7207b7e734b3b5d8
+DIST minitest-5.22.3.gem 99328 BLAKE2B c5d67807bd5e9fbe86be0f6f48886854dd7148ccc11062e511c8e354e2b789b3b7a6318cf5fcb06d1064d15378c2df1b2dca474b8eb2d37ba8e04d92a4f688b2 SHA512 11b5279cbedc1b4c6dc3997530f82a35b17a2fef258140332a21edcc0f880a4013514d811207dd8b79fe094e25fbfc5f8d2481b4313ec7dcdd5d8c70af9cf5bd
diff --git a/dev-ruby/minitest/metadata.xml b/dev-ruby/minitest/metadata.xml
index e1509620ced9..4116fc8fcb32 100644
--- a/dev-ruby/minitest/metadata.xml
+++ b/dev-ruby/minitest/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">seattlerb/minitest</remote-id>
+ <remote-id type="github">minitest/minitest</remote-id>
+ <remote-id type="rubygems">minitest</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/minitest/minitest-4.7.5-r2.ebuild b/dev-ruby/minitest/minitest-4.7.5-r2.ebuild
deleted file mode 100644
index 9186b641bc9c..000000000000
--- a/dev-ruby/minitest/minitest-4.7.5-r2.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.txt Manifest.txt README.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="minitest/unit is a small and fast replacement for ruby's huge and slow test/unit"
-HOMEPAGE="https://github.com/seattlerb/minitest"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc test"
-
-each_ruby_prepare() {
- case ${RUBY} in
- *ruby24|*ruby25|*ruby26)
- sed -i -e 's/Fixnum/Integer/' test/minitest/test_minitest_spec.rb || die
- ;;
- esac
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:bin:test:. -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/minitest/minitest-5.10.3.ebuild b/dev-ruby/minitest/minitest-5.10.3.ebuild
deleted file mode 100644
index 683ee160490d..000000000000
--- a/dev-ruby/minitest/minitest-5.10.3.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="minitest/unit is a small and fast replacement for ruby's huge and slow test/unit"
-HOMEPAGE="https://github.com/seattlerb/minitest"
-
-LICENSE="MIT"
-SLOT="5"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc test"
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e "Dir['**/test_*.rb'].each{|f| require f}" || die "Tests failed"
-}
diff --git a/dev-ruby/minitest/minitest-5.11.3.ebuild b/dev-ruby/minitest/minitest-5.11.3.ebuild
deleted file mode 100644
index 255fb224a312..000000000000
--- a/dev-ruby/minitest/minitest-5.11.3.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="minitest/unit is a small and fast replacement for ruby's huge and slow test/unit"
-HOMEPAGE="https://github.com/seattlerb/minitest"
-
-LICENSE="MIT"
-SLOT="5"
-KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc test"
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e "Dir['**/test_*.rb'].each{|f| require f}" || die "Tests failed"
-}
diff --git a/dev-ruby/minitest/minitest-5.15.0-r1.ebuild b/dev-ruby/minitest/minitest-5.15.0-r1.ebuild
new file mode 100644
index 000000000000..9c06ea51c931
--- /dev/null
+++ b/dev-ruby/minitest/minitest-5.15.0-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="minitest/unit is a small and fast replacement for ruby's huge and slow test/unit"
+HOMEPAGE="https://github.com/seattlerb/minitest"
+
+LICENSE="MIT"
+SLOT="5.15"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+RDEPEND="!~dev-ruby/minitest-5.15.0:5"
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true ${RUBY} -Ilib:test:. -e "Dir['**/test_*.rb'].each{|f| require f}" || die "Tests failed"
+}
diff --git a/dev-ruby/minitest/minitest-5.18.1.ebuild b/dev-ruby/minitest/minitest-5.18.1.ebuild
new file mode 100644
index 000000000000..a95082503039
--- /dev/null
+++ b/dev-ruby/minitest/minitest-5.18.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="minitest/unit is a small and fast replacement for ruby's huge and slow test/unit"
+HOMEPAGE="https://github.com/minitest/minitest"
+
+LICENSE="MIT"
+SLOT="5"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+all_ruby_prepare() {
+ # Avoid a test dependency on dev-ruby/hoe, leading to circular dependencies
+ rm -f test/minitest/test_minitest_test_task.rb || die
+}
+
+each_ruby_test() {
+ export -n A
+ MT_NO_PLUGINS=true ${RUBY} -Ilib:test:. -e "Dir['**/test_*.rb'].each{|f| require f}" || die "Tests failed"
+}
diff --git a/dev-ruby/minitest/minitest-5.19.0.ebuild b/dev-ruby/minitest/minitest-5.19.0.ebuild
new file mode 100644
index 000000000000..5ce8b74cb5ec
--- /dev/null
+++ b/dev-ruby/minitest/minitest-5.19.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="minitest/unit is a small and fast replacement for ruby's huge and slow test/unit"
+HOMEPAGE="https://github.com/minitest/minitest"
+
+LICENSE="MIT"
+SLOT="5"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+all_ruby_prepare() {
+ # Avoid a test dependency on dev-ruby/hoe, leading to circular dependencies
+ rm -f test/minitest/test_minitest_test_task.rb || die
+}
+
+each_ruby_test() {
+ export -n A
+ MT_NO_PLUGINS=true ${RUBY} -Ilib:test:. -e "Dir['**/test_*.rb'].each{|f| require f}" || die "Tests failed"
+}
diff --git a/dev-ruby/minitest/minitest-5.20.0.ebuild b/dev-ruby/minitest/minitest-5.20.0.ebuild
new file mode 100644
index 000000000000..77e5138f1324
--- /dev/null
+++ b/dev-ruby/minitest/minitest-5.20.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="minitest/unit is a small and fast replacement for ruby's huge and slow test/unit"
+HOMEPAGE="https://github.com/minitest/minitest"
+
+LICENSE="MIT"
+SLOT="5"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+all_ruby_prepare() {
+ # Avoid a test dependency on dev-ruby/hoe, leading to circular dependencies
+ rm -f test/minitest/test_minitest_test_task.rb || die
+}
+
+each_ruby_test() {
+ export -n A
+ MT_NO_PLUGINS=true ${RUBY} -Ilib:test:. -e "Dir['**/test_*.rb'].each{|f| require f}" || die "Tests failed"
+}
diff --git a/dev-ruby/minitest/minitest-5.21.2.ebuild b/dev-ruby/minitest/minitest-5.21.2.ebuild
new file mode 100644
index 000000000000..c6f3489eae50
--- /dev/null
+++ b/dev-ruby/minitest/minitest-5.21.2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="minitest/unit is a small and fast replacement for ruby's huge and slow test/unit"
+HOMEPAGE="https://github.com/minitest/minitest"
+
+LICENSE="MIT"
+SLOT="5"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+all_ruby_prepare() {
+ # Avoid a test dependency on dev-ruby/hoe, leading to circular dependencies
+ rm -f test/minitest/test_minitest_test_task.rb || die
+}
+
+each_ruby_test() {
+ export -n A
+ MT_NO_PLUGINS=true ${RUBY} -Ilib:test:. -e "Dir['**/test_*.rb'].each{|f| require f}" || die "Tests failed"
+}
diff --git a/dev-ruby/minitest/minitest-5.22.2.ebuild b/dev-ruby/minitest/minitest-5.22.2.ebuild
new file mode 100644
index 000000000000..c6f3489eae50
--- /dev/null
+++ b/dev-ruby/minitest/minitest-5.22.2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="minitest/unit is a small and fast replacement for ruby's huge and slow test/unit"
+HOMEPAGE="https://github.com/minitest/minitest"
+
+LICENSE="MIT"
+SLOT="5"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+all_ruby_prepare() {
+ # Avoid a test dependency on dev-ruby/hoe, leading to circular dependencies
+ rm -f test/minitest/test_minitest_test_task.rb || die
+}
+
+each_ruby_test() {
+ export -n A
+ MT_NO_PLUGINS=true ${RUBY} -Ilib:test:. -e "Dir['**/test_*.rb'].each{|f| require f}" || die "Tests failed"
+}
diff --git a/dev-ruby/minitest/minitest-5.22.3.ebuild b/dev-ruby/minitest/minitest-5.22.3.ebuild
new file mode 100644
index 000000000000..c6f3489eae50
--- /dev/null
+++ b/dev-ruby/minitest/minitest-5.22.3.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="minitest/unit is a small and fast replacement for ruby's huge and slow test/unit"
+HOMEPAGE="https://github.com/minitest/minitest"
+
+LICENSE="MIT"
+SLOT="5"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+all_ruby_prepare() {
+ # Avoid a test dependency on dev-ruby/hoe, leading to circular dependencies
+ rm -f test/minitest/test_minitest_test_task.rb || die
+}
+
+each_ruby_test() {
+ export -n A
+ MT_NO_PLUGINS=true ${RUBY} -Ilib:test:. -e "Dir['**/test_*.rb'].each{|f| require f}" || die "Tests failed"
+}
diff --git a/dev-ruby/mixlib-config/Manifest b/dev-ruby/mixlib-config/Manifest
new file mode 100644
index 000000000000..15e5172c6b73
--- /dev/null
+++ b/dev-ruby/mixlib-config/Manifest
@@ -0,0 +1 @@
+DIST mixlib-config-3.0.27.tar.gz 27147 BLAKE2B 867b736423b39c0c9960824936766a1b970eda30f2e69cb7031e1d63c28b05d387e0767f879f859e81d06cee1dbe426f23d4cfb71486f3235991520a532f72eb SHA512 7bf985f7ef15d3f96b148e3db591a0e4ba382f3c76103c7ef0f786cc6998bbea6a566e29cfedace2177e4e3444f69dac813bfbecddf932204dbe5a536c863037
diff --git a/dev-ruby/mixlib-config/metadata.xml b/dev-ruby/mixlib-config/metadata.xml
new file mode 100644
index 000000000000..901ce10b9cfe
--- /dev/null
+++ b/dev-ruby/mixlib-config/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version = '1.0' encoding = 'UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">chef/mixlib-config</remote-id>
+ <remote-id type="rubygems">mixlib-config</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/mixlib-config/mixlib-config-3.0.27.ebuild b/dev-ruby/mixlib-config/mixlib-config-3.0.27.ebuild
new file mode 100644
index 000000000000..c88f21a5d784
--- /dev/null
+++ b/dev-ruby/mixlib-config/mixlib-config-3.0.27.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRA_DOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="mixlib-config.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A class based configuration library"
+HOMEPAGE="https://github.com/chef/mixlib-config"
+SRC_URI="https://github.com/chef/mixlib-config/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/tomlrb"
diff --git a/dev-ruby/mixlib-shellout/Manifest b/dev-ruby/mixlib-shellout/Manifest
index d7ea49f8d4bc..06e59fc3300e 100644
--- a/dev-ruby/mixlib-shellout/Manifest
+++ b/dev-ruby/mixlib-shellout/Manifest
@@ -1,2 +1,2 @@
-DIST mixlib-shellout-2.4.4.tar.gz 38305 BLAKE2B 19e4211dee056e03f007971d4d77685a2d2d6a111439903bd33e0ed8dee62090b54b6f15e0bc6db168591491c2462869645174a909609b7499bdce251a6ceeef SHA512 e42217a6ced0fb8335cb2df60947168c629d637d280b36fe3d77f47593dc73eda72578b0e9ddf48498e27460cb878764c5dff1b5648a0c7d244c16558d57eef4
-DIST mixlib-shellout-3.0.4.tar.gz 42533 BLAKE2B 4d71cfb2d41120be04613749fd5c0e73d6939fe64410e46285a6f81ec61107b1e658ecc011c032621b433eb15e9ffd42b4f589419ffd8f68b7c5977691e011d1 SHA512 2ed866333874c8c40109de9bb4a1e5a3afea4f4c4cf537b11a1ccd670d374b9ce132717e87d43bb41065a9361e45de13bb1fa2db3e1f2d9f4af18253548f5811
+DIST mixlib-shellout-3.0.9.tar.gz 42476 BLAKE2B 4fab1d0f7d7ee5190f65d312304c7137d940b5cc19bb205d4de1d14eb5bc5829671560785b7f3179220246433b15b9022f8a1d16fb7491e180940c9dc6da5280 SHA512 7234c188e25cc6da3c4859eb12e4f86ce0d6538d17e4c90b1b5105fe677fcd13d884d7045be9767473c3ac63ffcfac7af25dc8efcec184928ba32852a5a760cc
+DIST mixlib-shellout-3.2.7.tar.gz 46666 BLAKE2B 0ee97eef27618d326487a3884115d0954147297a75001404c8df0717f71c6acde5ec9ebc9320d12493f1ce4e65b3d74ba1143ba7e4a631629de0d65e3b50bcb7 SHA512 de1d07e7a3f26ec934f57a37a82995b5522a5c196263b7ff1917c1a77cce3104d67a8dccab2aa907c3db854520ce6b5f78ef33fca8d4bffd0ba0cc659da1c16f
diff --git a/dev-ruby/mixlib-shellout/metadata.xml b/dev-ruby/mixlib-shellout/metadata.xml
index d4692422af46..7f479627fa46 100644
--- a/dev-ruby/mixlib-shellout/metadata.xml
+++ b/dev-ruby/mixlib-shellout/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">opscode/mixlib-shellout</remote-id>
+ <remote-id type="github">chef/mixlib-shellout</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/mixlib-shellout/mixlib-shellout-2.4.4.ebuild b/dev-ruby/mixlib-shellout/mixlib-shellout-2.4.4.ebuild
deleted file mode 100644
index bba0f8772a27..000000000000
--- a/dev-ruby/mixlib-shellout/mixlib-shellout-2.4.4.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRA_DOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Run external commands on Unix or Windows"
-HOMEPAGE="https://github.com/opscode/mixlib-shellout"
-SRC_URI="https://github.com/opscode/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-each_ruby_prepare() {
- # Make sure we actually use the right interpreter for testing
- sed -i -e "/ruby_eval/ s:ruby :${RUBY} :" spec/mixlib/shellout_spec.rb || die
-
- # Avoid spec that requires an interactive terminal
- sed -i -e '/with subprocess writing lots of data to both stdout and stderr/,/^ end/ s:^:#:' spec/mixlib/shellout_spec.rb || die
-}
diff --git a/dev-ruby/mixlib-shellout/mixlib-shellout-3.0.4.ebuild b/dev-ruby/mixlib-shellout/mixlib-shellout-3.0.4.ebuild
deleted file mode 100644
index 95d017b5ca3e..000000000000
--- a/dev-ruby/mixlib-shellout/mixlib-shellout-3.0.4.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRA_DOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Run external commands on Unix or Windows"
-HOMEPAGE="https://github.com/opscode/mixlib-shellout"
-SRC_URI="https://github.com/opscode/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-each_ruby_prepare() {
- # Make sure we actually use the right interpreter for testing
- sed -i -e "/ruby_eval/ s:ruby :${RUBY} :" spec/mixlib/shellout_spec.rb || die
-
- # Avoid spec that requires an interactive terminal
- sed -i -e '/with subprocess writing lots of data to both stdout and stderr/,/^ end/ s:^:#:' spec/mixlib/shellout_spec.rb || die
-}
diff --git a/dev-ruby/mixlib-shellout/mixlib-shellout-3.0.9-r1.ebuild b/dev-ruby/mixlib-shellout/mixlib-shellout-3.0.9-r1.ebuild
new file mode 100644
index 000000000000..d9f4e71b262f
--- /dev/null
+++ b/dev-ruby/mixlib-shellout/mixlib-shellout-3.0.9-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRA_DOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="mixlib-shellout.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Run external commands on Unix or Windows"
+HOMEPAGE="https://github.com/chef/mixlib-shellout"
+SRC_URI="https://github.com/chef/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+each_ruby_prepare() {
+ # Make sure we actually use the right interpreter for testing
+ sed -i -e "/ruby_eval/ s:ruby :${RUBY} :" spec/mixlib/shellout_spec.rb || die
+
+ # Avoid spec that requires an interactive terminal
+ sed -e '/with subprocess writing lots of data to both stdout and stderr/,/^ end/ s:^:#:' \
+ -i spec/mixlib/shellout_spec.rb || die
+}
diff --git a/dev-ruby/mixlib-shellout/mixlib-shellout-3.2.7.ebuild b/dev-ruby/mixlib-shellout/mixlib-shellout-3.2.7.ebuild
new file mode 100644
index 000000000000..dbfef33924a3
--- /dev/null
+++ b/dev-ruby/mixlib-shellout/mixlib-shellout-3.2.7.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRA_DOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="mixlib-shellout.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Run external commands on Unix or Windows"
+HOMEPAGE="https://github.com/chef/mixlib-shellout"
+SRC_URI="https://github.com/chef/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/chef-utils"
+
+each_ruby_prepare() {
+ # Make sure we actually use the right interpreter for testing
+ sed -i -e "/ruby_eval/ s:ruby :${RUBY} :" spec/mixlib/shellout_spec.rb || die
+
+ # Avoid spec that requires an interactive terminal
+ sed -e '/with subprocess writing lots of data to both stdout and stderr/,/^ end/ s:^:#:' \
+ -i spec/mixlib/shellout_spec.rb || die
+}
diff --git a/dev-ruby/mkmf-lite/Manifest b/dev-ruby/mkmf-lite/Manifest
new file mode 100644
index 000000000000..37d979ab70f9
--- /dev/null
+++ b/dev-ruby/mkmf-lite/Manifest
@@ -0,0 +1 @@
+DIST mkmf-lite-0.6.0.gem 20992 BLAKE2B fb52c99be00693409838a437a0715954551e9a9aecfad752d3e3f635d0b7992625d008a58da5b4b20bd03344d2cd861fc593d94bcb4a85012346eb534f5f851a SHA512 3baab933a75297dec89a254ffe33190bc991d7a6499b8cdf9abe612cb9837d2bcad8746aa008d394d910257518dc24cac6cd3c5adb6ed1f481088636e585d66f
diff --git a/dev-ruby/mkmf-lite/metadata.xml b/dev-ruby/mkmf-lite/metadata.xml
new file mode 100644
index 000000000000..21e14e5784be
--- /dev/null
+++ b/dev-ruby/mkmf-lite/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+ <name>Robin H. Johnson</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">djberg96/mkmf-lite</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/mkmf-lite/mkmf-lite-0.6.0.ebuild b/dev-ruby/mkmf-lite/mkmf-lite-0.6.0.ebuild
new file mode 100644
index 000000000000..94c3f14d02c9
--- /dev/null
+++ b/dev-ruby/mkmf-lite/mkmf-lite-0.6.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="light version of the the mkmf library designed for use as a library"
+HOMEPAGE="https://github.com/djberg96/mkmf-lite"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ =dev-ruby/memoist-0.16* >=dev-ruby/memoist-0.16.2
+ >=dev-ruby/ptools-1.4 <dev-ruby/ptools-2.0
+"
diff --git a/dev-ruby/mocha/Manifest b/dev-ruby/mocha/Manifest
index fce8a96da75e..879248fbf7f0 100644
--- a/dev-ruby/mocha/Manifest
+++ b/dev-ruby/mocha/Manifest
@@ -1,5 +1,7 @@
DIST mocha-0.14.0.gem 82944 BLAKE2B 50a066e2f5007df08a7f76785fd4c2b12327b4969c11324a0574c707bea3219d51edb9ab40635378c16b46ad826ec7eff42434a27cd61113a6f40251fa2e6930 SHA512 918e45f2ee761c7dc399c7958e4d406f9e186c90f479fd01a421aa542944b47e9b2c5e938f4fc5292a7da345726447b2d47dc5f417e114201f8a4d9893c4d461
-DIST mocha-1.4.0.gem 92672 BLAKE2B 8b8640038da40f2577431630ffbc773f5a9474a3a872a5f6c26d53b41d2827da59f32f6c7abab78cbf491bb6d58cabe0834e4b1706869cedd1e72f116817537a SHA512 54953d815cddf52deccdddcebc9a9880fa2f14cab9f4ee1e164bfa3afe095d56b409312149341d1bf84fb336ed23512e7acce371135f8a2a1bb16f1de7acff1d
-DIST mocha-1.7.0.gem 96768 BLAKE2B d6b2f14bb1277473c3393b06e2f4830331bcf4f2d02fa918a006eeb65a340e1f8bf25e354910bff1cdc3abae9b98bd53de272c628cec7bb59e30c5b02dc8ffc6 SHA512 b3fd656523e6ec1eb81e941cd43fe402254b6b15a00cdb459a900c94df02bd20f7ca8aafc796e418c6ba3e3b71c5bdc74a97e380f1c106e2831e78d9aaa7887e
-DIST mocha-1.8.0.gem 223744 BLAKE2B 625f38d6ec53cbf549cbace873172b8511f2e6a2ccb5d7fd4133c3d9a67a8e5d55626fead7a70de363c8564b687530d3e0515ed7fc167a65091d9e17d89dde47 SHA512 b0abd6234f34dfd92d44019001e97914dff80ece5fbe2b53ccc91192f99f06a79f9c96cdb136b2a389a1a1b7038076fce688d8d8ee8645538d3c58f73e345fe4
-DIST mocha-1.9.0.gem 224768 BLAKE2B cbba687669691c4771762fdc87285e1d2a2e9cd4a97f42111e0014118dd358e30b4cf3147c973631b491fa981fe4a3212a7eb160b1d7517db78e3f8647ebda15 SHA512 76aa6c1a59d98cf2e592b94785f102fae7d46923cd30494df944a322a6286fb854867ccb32c396f522008b8a0e368ff115693ec6dc63d7cbe84fa26a3a42d9e6
+DIST mocha-1.16.0.tar.gz 246370 BLAKE2B c2891021c33e4038ff965a470eda3be7eac2765f7c038fef33f38cd07b8501fdb88a1dcd8d291eabb124fb0fff50c40651bf29ac4a28012b57c7a02d2ff46b63 SHA512 b7d8825771f84245e7383e4081dcb42734b9716e7bef3c1b5d49ac28850590b4beabf8d0370992e100b6340ff3cfb3113610e303de74bc33c059bd9b9910cb8e
+DIST mocha-1.16.1.tar.gz 247461 BLAKE2B d4bce5f945018e527f6b19c6328d3687912a3ac9638b6d7b7bd5cd5bf1cca20fd34ae8261a56525dc11610711e590f6ae915a0a5a0555ec47e30e8e3cbbda63f SHA512 b65cf98ab39334ad86a6f375b648fc906d083e803afa5bd2a62aaed87ac625fcf94ed9b16b21dc1563ff67675e00bf008d43234bde0343604f6fce2841d8b2bb
+DIST mocha-2.0.2.tar.gz 245650 BLAKE2B 3bf56cacc99b5eeb17977cd1052c635df74aec10f20a76d843d703e68520ef434bc9111b739591dfa15b21ecdbdfb5b55037e9509683624349be83613528787f SHA512 93579390f4feaf034cd6e8905654fe8cc5c8a1f28f3d27488deeb84250114a5e04c4e7aa544f18f33b2c3887668d5fddb3a3f9bda5548d577be1522da2e09760
+DIST mocha-2.0.4.tar.gz 243542 BLAKE2B 4a9bb3f1493225f7eed7080661a168a90c56e4f737a8bc15402bf0a08ae7cc14e8e5cff9a090b6413633c37169e7ff9f45aedc3c5fd929ab32d359ad58d404f7 SHA512 4a72cd18e70608265bc20761848657b900a6d60c888ec4027e3b9f1884efa41d0d0591c4f3e26edd96a806ecdfc3b921d5871465a799a5ea5905627b7093f5b1
+DIST mocha-2.1.0.tar.gz 243730 BLAKE2B a99cb5b6d968e0612cfc4f2d766029d2f700c92b3e1f16f33341b8c5652db823d52fc34070acd0711ea94077eeed32d13e605982b93baa56e7d11dae7fcfe55f SHA512 8044065ebb2225f7aab117353b0a49c854768fd55f7165ccb5916027f6f8fc843665572ed786e41d5ec6affedf397f4de20fa31a9f9c1582a17a67555662a65e
+DIST mocha-2.2.0.tar.gz 247014 BLAKE2B 7be3453e30be305a27a3a9c9cde8cfc196ebbf07329afe82fbbb79c320dfd08aaeca17242e1432d0e1b437f20260ee1557768851553d2a5d7f7697d07081468d SHA512 1e611c31c311f9ff5f341c46a374eea16835cffeb2ff454e09c656503f05c1a2b7d7ff6d1bf33f8ea33cd1e5e53aca108d1f73fc46ca79029d09f8bdeb9036c6
diff --git a/dev-ruby/mocha/files/mocha-1.16.0-ruby32.patch b/dev-ruby/mocha/files/mocha-1.16.0-ruby32.patch
new file mode 100644
index 000000000000..a4f6b8c2fd7a
--- /dev/null
+++ b/dev-ruby/mocha/files/mocha-1.16.0-ruby32.patch
@@ -0,0 +1,53 @@
+https://github.com/freerange/mocha/commit/ae9fed4a9f2ef6267302494ae0edf515d4a8a921
+https://github.com/freerange/mocha/commit/26b106a540ad57cd73401461451aa2711c541e9d
+
+From ae9fed4a9f2ef6267302494ae0edf515d4a8a921 Mon Sep 17 00:00:00 2001
+From: James Mead <james@floehopper.org>
+Date: Thu, 24 Nov 2022 13:26:15 +0000
+Subject: [PATCH] DRY up regexp_matches test
+
+--- a/test/unit/parameter_matchers/regexp_matches_test.rb
++++ b/test/unit/parameter_matchers/regexp_matches_test.rb
+@@ -32,14 +32,18 @@ def test_should_not_match_on_empty_arguments
+ end
+
+ def test_should_not_raise_error_on_argument_that_does_not_respond_to_equals_tilde
+- object_not_responding_to_equals_tilde = Class.new { undef =~ }.new
+ matcher = regexp_matches(/oo/)
+ assert_nothing_raised { matcher.matches?([object_not_responding_to_equals_tilde]) }
+ end
+
+ def test_should_not_match_on_argument_that_does_not_respond_to_equals_tilde
+- object_not_responding_to_equals_tilde = Class.new { undef =~ }.new
+ matcher = regexp_matches(/oo/)
+ assert !matcher.matches?([object_not_responding_to_equals_tilde])
+ end
++
++ private
++
++ def object_not_responding_to_equals_tilde
++ Class.new { undef =~ }.new
++ end
+ end
+
+From 26b106a540ad57cd73401461451aa2711c541e9d Mon Sep 17 00:00:00 2001
+From: James Mead <james@floehopper.org>
+Date: Fri, 25 Nov 2022 09:04:43 +0000
+Subject: [PATCH] Fix regexp_matches tests in Ruby v3.2
+
+Object#~= has been removed from Ruby v3.2 [1].
+
+Closes #590.
+
+[1]: https://bugs.ruby-lang.org/issues/15231
+--- a/test/unit/parameter_matchers/regexp_matches_test.rb
++++ b/test/unit/parameter_matchers/regexp_matches_test.rb
+@@ -44,6 +44,6 @@ def test_should_not_match_on_argument_that_does_not_respond_to_equals_tilde
+ private
+
+ def object_not_responding_to_equals_tilde
+- Class.new { undef =~ }.new
++ Class.new { undef =~ if respond_to?(:=~) }.new
+ end
+ end
+
diff --git a/dev-ruby/mocha/metadata.xml b/dev-ruby/mocha/metadata.xml
index eb1e47f2edfb..73af35f9de54 100644
--- a/dev-ruby/mocha/metadata.xml
+++ b/dev-ruby/mocha/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">freerange/mocha</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/mocha/mocha-0.14.0-r1.ebuild b/dev-ruby/mocha/mocha-0.14.0-r1.ebuild
new file mode 100644
index 000000000000..d46ab5b47e50
--- /dev/null
+++ b/dev-ruby/mocha/mocha-0.14.0-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby26 ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="MOCHA_NO_DOCS=true test:units"
+
+RUBY_FAKEGEM_EXTRADOC="README.md RELEASE.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="init.rb"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Mocking and stubbing using a syntax like that of JMock and SchMock"
+HOMEPAGE="http://gofreerange.com/mocha/docs/"
+
+LICENSE="MIT"
+SLOT="0.14"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+ruby_add_bdepend "
+ test? ( >=dev-ruby/test-unit-2.5.1-r1 dev-ruby/introspection )"
+
+ruby_add_rdepend "dev-ruby/metaclass" #metaclass ~> 0.0.1
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.16.0-ruby32.patch
+)
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/ s:^:#:' -e '1iload "lib/mocha/version.rb"' Rakefile || die
+ sed -i -e '20irequire "mocha/setup"' test/test_helper.rb || die
+}
diff --git a/dev-ruby/mocha/mocha-0.14.0.ebuild b/dev-ruby/mocha/mocha-0.14.0.ebuild
deleted file mode 100644
index 69b702ba4987..000000000000
--- a/dev-ruby/mocha/mocha-0.14.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="MOCHA_NO_DOCS=true test:units"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md RELEASE.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="init.rb"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Mocking and stubbing using a syntax like that of JMock and SchMock"
-HOMEPAGE="http://gofreerange.com/mocha/docs/"
-
-LICENSE="MIT"
-SLOT="0.14"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 ~sparc x86"
-IUSE=""
-
-ruby_add_bdepend "
- test? ( >=dev-ruby/test-unit-2.5.1-r1 dev-ruby/introspection )"
-
-ruby_add_rdepend "dev-ruby/metaclass" #metaclass ~> 0.0.1
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/ s:^:#:' -e '1iload "lib/mocha/version.rb"' Rakefile || die
- sed -i -e '20irequire "mocha/setup"' test/test_helper.rb || die
-}
diff --git a/dev-ruby/mocha/mocha-1.16.0.ebuild b/dev-ruby/mocha/mocha-1.16.0.ebuild
new file mode 100644
index 000000000000..8c58c034b618
--- /dev/null
+++ b/dev-ruby/mocha/mocha-1.16.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="test:units test:acceptance"
+
+RUBY_FAKEGEM_EXTRADOC="README.md RELEASE.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="init.rb"
+
+RUBY_FAKEGEM_GEMSPEC="mocha.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Mocking and stubbing using a syntax like that of JMock and SchMock"
+HOMEPAGE="https://mocha.jamesmead.org/"
+SRC_URI="https://github.com/freerange/mocha/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1.0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+ruby_add_bdepend "
+ test? ( >=dev-ruby/test-unit-2.5.1-r1 dev-ruby/introspection )"
+
+PATCHES=(
+ "${FILESDIR}"/mocha-1.16.0-ruby32.patch
+)
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/ s:^:#:' -e '1iload "lib/mocha/version.rb"' Rakefile || die
+
+ sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ export MOCHA_NO_DOCS=true
+ each_fakegem_test
+}
diff --git a/dev-ruby/mocha/mocha-1.16.1.ebuild b/dev-ruby/mocha/mocha-1.16.1.ebuild
new file mode 100644
index 000000000000..01b505b918e2
--- /dev/null
+++ b/dev-ruby/mocha/mocha-1.16.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="test:units test:acceptance"
+
+RUBY_FAKEGEM_EXTRADOC="README.md RELEASE.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="init.rb"
+
+RUBY_FAKEGEM_GEMSPEC="mocha.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Mocking and stubbing using a syntax like that of JMock and SchMock"
+HOMEPAGE="https://mocha.jamesmead.org/"
+SRC_URI="https://github.com/freerange/mocha/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1.0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "
+ test? ( >=dev-ruby/test-unit-2.5.1-r1 dev-ruby/introspection )"
+
+PATCHES=(
+ "${FILESDIR}"/mocha-1.16.0-ruby32.patch
+)
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/ s:^:#:' -e '1iload "lib/mocha/version.rb"' Rakefile || die
+
+ sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ export MOCHA_NO_DOCS=true
+ each_fakegem_test
+}
diff --git a/dev-ruby/mocha/mocha-1.4.0.ebuild b/dev-ruby/mocha/mocha-1.4.0.ebuild
deleted file mode 100644
index a358c55805da..000000000000
--- a/dev-ruby/mocha/mocha-1.4.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST="test:units"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md RELEASE.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="init.rb"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Mocking and stubbing using a syntax like that of JMock and SchMock"
-HOMEPAGE="http://gofreerange.com/mocha/docs/"
-
-LICENSE="MIT"
-SLOT="1.0"
-KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ppc ppc64 sparc x86"
-IUSE=""
-
-ruby_add_bdepend "
- test? ( >=dev-ruby/test-unit-2.5.1-r1 dev-ruby/introspection )"
-
-ruby_add_rdepend "=dev-ruby/metaclass-0.0*"
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/ s:^:#:' -e '1iload "lib/mocha/version.rb"' Rakefile || die
-}
-
-each_ruby_test() {
- export MOCHA_NO_DOCS=true
- each_fakegem_test
-}
diff --git a/dev-ruby/mocha/mocha-1.7.0.ebuild b/dev-ruby/mocha/mocha-1.7.0.ebuild
deleted file mode 100644
index 6c4f2f0231e0..000000000000
--- a/dev-ruby/mocha/mocha-1.7.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test:units test:acceptance"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md RELEASE.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="init.rb"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Mocking and stubbing using a syntax like that of JMock and SchMock"
-HOMEPAGE="http://gofreerange.com/mocha/docs/"
-
-LICENSE="MIT"
-SLOT="1.0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-ruby_add_bdepend "
- test? ( >=dev-ruby/test-unit-2.5.1-r1 dev-ruby/introspection )"
-
-ruby_add_rdepend "=dev-ruby/metaclass-0.0*"
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/ s:^:#:' -e '1iload "lib/mocha/version.rb"' Rakefile || die
-}
-
-each_ruby_test() {
- export MOCHA_NO_DOCS=true
- each_fakegem_test
-}
diff --git a/dev-ruby/mocha/mocha-1.8.0.ebuild b/dev-ruby/mocha/mocha-1.8.0.ebuild
deleted file mode 100644
index e5ab9039824e..000000000000
--- a/dev-ruby/mocha/mocha-1.8.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test:units test:acceptance"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md RELEASE.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="init.rb"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Mocking and stubbing using a syntax like that of JMock and SchMock"
-HOMEPAGE="https://mocha.jamesmead.org/"
-
-LICENSE="MIT"
-SLOT="1.0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86"
-IUSE=""
-
-ruby_add_bdepend "
- test? ( >=dev-ruby/test-unit-2.5.1-r1 dev-ruby/introspection )"
-
-ruby_add_rdepend "=dev-ruby/metaclass-0.0*"
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/ s:^:#:' -e '1iload "lib/mocha/version.rb"' Rakefile || die
-}
-
-each_ruby_test() {
- export MOCHA_NO_DOCS=true
- each_fakegem_test
-}
diff --git a/dev-ruby/mocha/mocha-1.9.0.ebuild b/dev-ruby/mocha/mocha-1.9.0.ebuild
deleted file mode 100644
index 8faa3063b986..000000000000
--- a/dev-ruby/mocha/mocha-1.9.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test:units test:acceptance"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md RELEASE.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="init.rb"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Mocking and stubbing using a syntax like that of JMock and SchMock"
-HOMEPAGE="https://mocha.jamesmead.org/"
-
-LICENSE="MIT"
-SLOT="1.0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-ruby_add_bdepend "
- test? ( >=dev-ruby/test-unit-2.5.1-r1 dev-ruby/introspection )"
-
-ruby_add_rdepend "=dev-ruby/metaclass-0.0*"
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/ s:^:#:' -e '1iload "lib/mocha/version.rb"' Rakefile || die
-}
-
-each_ruby_test() {
- export MOCHA_NO_DOCS=true
- each_fakegem_test
-}
diff --git a/dev-ruby/mocha/mocha-2.0.2.ebuild b/dev-ruby/mocha/mocha-2.0.2.ebuild
new file mode 100644
index 000000000000..34b0910a8949
--- /dev/null
+++ b/dev-ruby/mocha/mocha-2.0.2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="test:units test:acceptance"
+
+RUBY_FAKEGEM_EXTRADOC="README.md RELEASE.md"
+
+RUBY_FAKEGEM_GEMSPEC="mocha.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Mocking and stubbing using a syntax like that of JMock and SchMock"
+HOMEPAGE="https://mocha.jamesmead.org/"
+SRC_URI="https://github.com/freerange/mocha/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/ruby2_keywords-0.0.5"
+
+ruby_add_bdepend "
+ test? ( >=dev-ruby/test-unit-2.5.1-r1 dev-ruby/introspection )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.16.0-ruby32.patch
+)
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/ s:^:#:' -e '1iload "lib/mocha/version.rb"' Rakefile || die
+
+ sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ export MOCHA_NO_DOCS=true
+ each_fakegem_test
+}
diff --git a/dev-ruby/mocha/mocha-2.0.4.ebuild b/dev-ruby/mocha/mocha-2.0.4.ebuild
new file mode 100644
index 000000000000..3b885a18a67d
--- /dev/null
+++ b/dev-ruby/mocha/mocha-2.0.4.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_TASK_TEST="test:units test:acceptance"
+RUBY_FAKEGEM_EXTRADOC="README.md RELEASE.md"
+RUBY_FAKEGEM_GEMSPEC="mocha.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Mocking and stubbing using a syntax like that of JMock and SchMock"
+HOMEPAGE="https://mocha.jamesmead.org/"
+SRC_URI="https://github.com/freerange/mocha/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+
+ruby_add_rdepend ">=dev-ruby/ruby2_keywords-0.0.5"
+
+ruby_add_bdepend "
+ test? ( >=dev-ruby/test-unit-2.5.1-r1 dev-ruby/introspection )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/ s:^:#:' -e '1iload "lib/mocha/version.rb"' Rakefile || die
+
+ sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ export MOCHA_NO_DOCS=true
+ each_fakegem_test
+}
diff --git a/dev-ruby/mocha/mocha-2.1.0.ebuild b/dev-ruby/mocha/mocha-2.1.0.ebuild
new file mode 100644
index 000000000000..06d86dc2ac9b
--- /dev/null
+++ b/dev-ruby/mocha/mocha-2.1.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_TASK_TEST="test:units test:acceptance"
+RUBY_FAKEGEM_EXTRADOC="README.md RELEASE.md"
+RUBY_FAKEGEM_GEMSPEC="mocha.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Mocking and stubbing using a syntax like that of JMock and SchMock"
+HOMEPAGE="https://mocha.jamesmead.org/"
+SRC_URI="https://github.com/freerange/mocha/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+ruby_add_rdepend ">=dev-ruby/ruby2_keywords-0.0.5"
+
+ruby_add_bdepend "
+ test? ( >=dev-ruby/test-unit-2.5.1-r1 dev-ruby/introspection )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/ s:^:#:' -e '1iload "lib/mocha/version.rb"' Rakefile || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ export MOCHA_NO_DOCS=true
+ each_fakegem_test
+}
diff --git a/dev-ruby/mocha/mocha-2.2.0.ebuild b/dev-ruby/mocha/mocha-2.2.0.ebuild
new file mode 100644
index 000000000000..06d86dc2ac9b
--- /dev/null
+++ b/dev-ruby/mocha/mocha-2.2.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_TASK_TEST="test:units test:acceptance"
+RUBY_FAKEGEM_EXTRADOC="README.md RELEASE.md"
+RUBY_FAKEGEM_GEMSPEC="mocha.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Mocking and stubbing using a syntax like that of JMock and SchMock"
+HOMEPAGE="https://mocha.jamesmead.org/"
+SRC_URI="https://github.com/freerange/mocha/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+ruby_add_rdepend ">=dev-ruby/ruby2_keywords-0.0.5"
+
+ruby_add_bdepend "
+ test? ( >=dev-ruby/test-unit-2.5.1-r1 dev-ruby/introspection )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/ s:^:#:' -e '1iload "lib/mocha/version.rb"' Rakefile || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ export MOCHA_NO_DOCS=true
+ each_fakegem_test
+}
diff --git a/dev-ruby/moneta/Manifest b/dev-ruby/moneta/Manifest
index 15d719746d25..b28d4aef51ef 100644
--- a/dev-ruby/moneta/Manifest
+++ b/dev-ruby/moneta/Manifest
@@ -1,2 +1 @@
-DIST moneta-1.1.0.tar.gz 113116 BLAKE2B 15e70515f112794e95a0e665bca161bf3d9d28b2f3cee6ca77d9bf9ece825669f71994b2b581e61cba6c2a97b6d8b779000ba0c17b9e3fe564ca85f2a59c6581 SHA512 5caec98088989ed0e7da526a831248c86d365de97582f78276199eaa099fc25b3139f7ec2dc65265073fc6826c9abf954e55e4fdc7ea11cd9b6cddcd65c40f2d
-DIST moneta-1.1.1.tar.gz 114959 BLAKE2B 8904f5cc1e247da878109370ab8483abc1f30a2834abe3ea4b56f7ce01a9dae7ffc9339ead2ef2d940cffa45727123876cf834cd5dfaea6569abb39b0d0669c9 SHA512 19a9b4965a62f49640b371baafb00fbdd34e142da56bc0243b4b2c79c94254720d644131bc4a37ad871abe4ccbf0d351d19998fb3fa401230eb9dc254e3e482e
+DIST moneta-1.6.0.tar.gz 136501 BLAKE2B 5682cfc265ac1c132f53d91c0cb6c2a99a08130d144d2eb8fb544952c29a77556066b36e9ea727df941b1768dec28e99bb3e3f4017ddf5e3cb38e690bcadbe0a SHA512 8f372bfd769205b88cd6f497266074784588ff04b99e3383641b4171cf586210a6655f003bb9e11fe5a2e9dfe5ebbb5fe372b415e2927ab50ee9c8f28bed6b5d
diff --git a/dev-ruby/moneta/metadata.xml b/dev-ruby/moneta/metadata.xml
index 9c60e824935c..15d5e5d493bf 100644
--- a/dev-ruby/moneta/metadata.xml
+++ b/dev-ruby/moneta/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">minad/moneta</remote-id>
+ <remote-id type="github">moneta-rb/moneta</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/moneta/moneta-1.1.0.ebuild b/dev-ruby/moneta/moneta-1.1.0.ebuild
deleted file mode 100644
index 08a5f6d1cba9..000000000000
--- a/dev-ruby/moneta/moneta-1.1.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_RECIPE_TEST="none"
-# test is disabled for now. It requires many packages. Test suite also
-# takes very long run time and has high memory consumption.
-
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md SPEC.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-GITHUB_USER="minad"
-
-DESCRIPTION="A unified interface to key/value stores"
-HOMEPAGE="https://github.com/minad/moneta"
-SRC_URI="https://github.com/${GITHUB_USER}/moneta/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/moneta/moneta-1.1.1.ebuild b/dev-ruby/moneta/moneta-1.1.1.ebuild
deleted file mode 100644
index 0cab3f2cc2ad..000000000000
--- a/dev-ruby/moneta/moneta-1.1.1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_RECIPE_TEST="none"
-# test is disabled for now. It requires many packages. Test suite also
-# takes very long run time and has high memory consumption.
-
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md SPEC.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-GITHUB_USER="minad"
-
-DESCRIPTION="A unified interface to key/value stores"
-HOMEPAGE="https://github.com/minad/moneta"
-SRC_URI="https://github.com/${GITHUB_USER}/moneta/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/moneta/moneta-1.6.0.ebuild b/dev-ruby/moneta/moneta-1.6.0.ebuild
new file mode 100644
index 000000000000..7baef16d4107
--- /dev/null
+++ b/dev-ruby/moneta/moneta-1.6.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_RECIPE_TEST="none"
+# test is disabled for now. It requires many packages. Test suite also
+# takes very long run time and has high memory consumption.
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md SPEC.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A unified interface to key/value stores"
+HOMEPAGE="https://github.com/moneta-rb/moneta"
+SRC_URI="https://github.com/moneta-rb/moneta/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e "s/__dir__/'.'/" \
+ -e "s/_relative//" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/mqtt/Manifest b/dev-ruby/mqtt/Manifest
index 46758110bb7a..da870b9da1e7 100644
--- a/dev-ruby/mqtt/Manifest
+++ b/dev-ruby/mqtt/Manifest
@@ -1 +1 @@
-DIST mqtt-0.5.0.tar.gz 43944 BLAKE2B 1bd1002a83af339627377ecd850980fc00788133da3393e999dd798ac7544d70a6fdd45129b03ae36402aac28a3212171b77df2223fdee45ea4778405e61543b SHA512 ad6e6cb4775e89725a9aa02f2a1d91871cd34f2e5bf35033456b93ec09ec90a6fdcf1cbaf8822e1f032f0a52cde23db55fbb1e4eff4540e331397c180e7c6ed0
+DIST mqtt-0.6.0.tar.gz 45975 BLAKE2B e3548db5a1d758168c86be8a1d313ccd0cc7ed7d5993f03688d6c68de7b28fc1c42f87de5d9cca459b0cb383d65640ba00c1015261fc777bb56811a51147924e SHA512 c9dbf86c583c9e57af97a1481b308a3d3fc796a6dd813dce83a8206d773a343242423fa116abc4b8ce34a1d6f0cb2026cc9189dd8b98af69c980c54501e130d8
diff --git a/dev-ruby/mqtt/metadata.xml b/dev-ruby/mqtt/metadata.xml
index 9e17fa25f647..1ee7124c3e4f 100644
--- a/dev-ruby/mqtt/metadata.xml
+++ b/dev-ruby/mqtt/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
diff --git a/dev-ruby/mqtt/mqtt-0.5.0.ebuild b/dev-ruby/mqtt/mqtt-0.5.0.ebuild
deleted file mode 100644
index bdaf7f122371..000000000000
--- a/dev-ruby/mqtt/mqtt-0.5.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Pure Ruby gem that implements the MQTT protocol"
-HOMEPAGE="https://github.com/njh/ruby-mqtt"
-SRC_URI="https://github.com/njh/ruby-mqtt/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="ruby-${P}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="test"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#: ; /SimpleCov/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/mqtt/mqtt-0.6.0.ebuild b/dev-ruby/mqtt/mqtt-0.6.0.ebuild
new file mode 100644
index 000000000000..2fb7e1aa98ab
--- /dev/null
+++ b/dev-ruby/mqtt/mqtt-0.6.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_GEMSPEC="mqtt.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_S="ruby-${P}"
+inherit ruby-fakegem
+
+DESCRIPTION="Pure Ruby gem that implements the MQTT protocol"
+HOMEPAGE="https://github.com/njh/ruby-mqtt"
+SRC_URI="https://github.com/njh/ruby-mqtt/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#: ; /SimpleCov/,/^ end/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/msgpack/Manifest b/dev-ruby/msgpack/Manifest
index 2fcc5b515b96..1d48369ddda1 100644
--- a/dev-ruby/msgpack/Manifest
+++ b/dev-ruby/msgpack/Manifest
@@ -1,3 +1,3 @@
-DIST msgpack-1.2.10.gem 79872 BLAKE2B 878d4bd0c1b9010389aa59358bbc70d2e771f5fa167d2eb659583cb116e94ed5c00578d89be96dd80dd458616336a2a1649ea9c7826cefe81d78ee0c2ac24299 SHA512 49186e0cbc375aaaa3174a488d2d47afc46d0618b0b3c3c7d60485672ba6e918e0607b18d9d7cfa9106478fb5250811fca4675dc482d4cf8e6c510acdcddeeb1
-DIST msgpack-1.3.0.gem 82432 BLAKE2B b6b4e6a3f3cb204b2d4997cefb5aa5f307a6c3db332663f7e89360d68e2d5dd9211316d6532141c0276becb2e5d227aad4943976953a285cbd691c31d8c5387b SHA512 aeb9376c7e2029812b7e6be7732c419792e79a2bf1ebef6b2feebbfacfefaa7063658fee7b7a9b8558f6a04b6c10fcdc325aa27d9c1b856db7af5b15cccb06a5
-DIST msgpack-1.3.1.gem 82432 BLAKE2B 661c2068b26db494bd068e223c1969d59d64478d5c05832bb6b6fcb9f14be7a3f4953b4a62ad23b622b2d06312bebe7d9ee5fdd173b23fe94f2228d6634aef0c SHA512 79a71725e337c37417b7b02d77a25d28c742daa539f7247fc50b7e146311d491a6a20b86aa2bdd0eae0c1dffab3ee35a1a7a775f7f5c6688be09ecd2149c187a
+DIST msgpack-1.6.1.tar.gz 88601 BLAKE2B 2ddb84afde00240cf446b06d8e7445cfd14fa3dabe67b96035ff09629884523df049d42c4e5250e275648d2bcad0fa56179994c9ea096a1ffc6c86b594968eba SHA512 b8a268a9c357ad5d2fec3fcee3d1a3e818708a51e5035105f245ee0d7cbafc145c6cac5e8bc3bfd12efa967f8ed275e2dfacedb5f3556166ba8e2354260f51ee
+DIST msgpack-1.7.1.tar.gz 89373 BLAKE2B c8f1a9312e8a3610ecb3d41aa5f375efb0f059af29419f8be8879865e5b67578c6ea5e684ea4828aac4c7f636e613b720cb79e5e092500f72210fb783c457cc5 SHA512 31d9262f4f9b2537e6982aa72b3d7c50d90a95422f8636425448eb160412eb39e34888d584eb5286cf3f69317c0c81c2a2360f6b633f771701603a6cec7849e4
+DIST msgpack-1.7.2.tar.gz 90108 BLAKE2B e5630ed36b9e6574bdd6c823afc15958d3b2a58e0e43738c84595d017274d7fc2761d0b4baac2fc8b5ba5ef0f6e1bf78e8c448ef81aa9841c8b3f875bb67c90e SHA512 c7ecf8031644c87debf6fab7d6b358a80cccefe4c0c795695056e5e82b1138641a5b94ea05b2b6edf20de2621ac59c059dce6a627a254742fbca8f73f0110c10
diff --git a/dev-ruby/msgpack/metadata.xml b/dev-ruby/msgpack/metadata.xml
index 6c33329090c7..f07561c32c76 100644
--- a/dev-ruby/msgpack/metadata.xml
+++ b/dev-ruby/msgpack/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge-jp">msgpack</remote-id>
+ <remote-id type="github">msgpack/msgpack-ruby</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/msgpack/msgpack-1.2.10.ebuild b/dev-ruby/msgpack/msgpack-1.2.10.ebuild
deleted file mode 100644
index 2fb63620569b..000000000000
--- a/dev-ruby/msgpack/msgpack-1.2.10.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Binary-based efficient data interchange format for ruby binding"
-HOMEPAGE="https://msgpack.org/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc64 ~x86 ~x86-fbsd"
-IUSE="doc"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
-
- # Remove jruby-specific specs that are run also for other rubies.
- rm -rf spec/jruby || die
-
- sed -i -e '/git ls-files/d' msgpack.gemspec || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/${PN} extconf.rb || die "Configuration of extension failed."
-
- # rb_num2int is not inlined on 32 bit arches but also not explicitly
- # defined, bug 582968
- sed -i -e 's:-Wl,--no-undefined::' ext/${PN}/Makefile || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/msgpack$(get_modname) lib/${PN} || die "Unable to install msgpack library."
-}
diff --git a/dev-ruby/msgpack/msgpack-1.3.0.ebuild b/dev-ruby/msgpack/msgpack-1.3.0.ebuild
deleted file mode 100644
index 822d7d1185dd..000000000000
--- a/dev-ruby/msgpack/msgpack-1.3.0.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Binary-based efficient data interchange format for ruby binding"
-HOMEPAGE="https://msgpack.org/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc64 ~x86 ~x86-fbsd"
-IUSE="doc"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
-
- # Remove jruby-specific specs that are run also for other rubies.
- rm -rf spec/jruby || die
-
- sed -i -e '/git ls-files/d' msgpack.gemspec || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/${PN} extconf.rb || die "Configuration of extension failed."
-
- # rb_num2int is not inlined on 32 bit arches but also not explicitly
- # defined, bug 582968
- sed -i -e 's:-Wl,--no-undefined::' ext/${PN}/Makefile || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/msgpack$(get_modname) lib/${PN} || die "Unable to install msgpack library."
-}
diff --git a/dev-ruby/msgpack/msgpack-1.3.1.ebuild b/dev-ruby/msgpack/msgpack-1.3.1.ebuild
deleted file mode 100644
index 25f1ba919b78..000000000000
--- a/dev-ruby/msgpack/msgpack-1.3.1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Binary-based efficient data interchange format for ruby binding"
-HOMEPAGE="https://msgpack.org/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc64 ~x86 ~x86-fbsd"
-IUSE="doc"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
-
- # Remove jruby-specific specs that are run also for other rubies.
- rm -rf spec/jruby || die
-
- sed -i -e '/git ls-files/d' msgpack.gemspec || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/${PN} extconf.rb || die "Configuration of extension failed."
-
- # rb_num2int is not inlined on 32 bit arches but also not explicitly
- # defined, bug 582968
- sed -i -e 's:-Wl,--no-undefined::' ext/${PN}/Makefile || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/msgpack$(get_modname) lib/${PN} || die "Unable to install msgpack library."
-}
diff --git a/dev-ruby/msgpack/msgpack-1.6.1.ebuild b/dev-ruby/msgpack/msgpack-1.6.1.ebuild
new file mode 100644
index 000000000000..b7184188713e
--- /dev/null
+++ b/dev-ruby/msgpack/msgpack-1.6.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="ChangeLog README.md"
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/msgpack/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/msgpack"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_S="${PN}-ruby-${PV}"
+inherit ruby-fakegem
+
+DESCRIPTION="Binary-based efficient data interchange format for ruby binding"
+HOMEPAGE="https://msgpack.org/"
+# In 1.6.1, they stopped shipping the specs in the gem :(
+# https://github.com/msgpack/msgpack-ruby/commit/9cbcd0b28527af5ca755f34dfb370e3f4474d129 (https://github.com/msgpack/msgpack-ruby/pull/311)
+SRC_URI="https://github.com/msgpack/msgpack-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc64 ~sparc ~x86"
+IUSE="doc"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+
+ # Remove jruby-specific specs that are run also for other rubies.
+ rm -rf spec/jruby || die
+
+ sed -i -e 's/git ls-files/find * -print/' msgpack.gemspec || die
+}
diff --git a/dev-ruby/msgpack/msgpack-1.7.1.ebuild b/dev-ruby/msgpack/msgpack-1.7.1.ebuild
new file mode 100644
index 000000000000..58f5c86c409b
--- /dev/null
+++ b/dev-ruby/msgpack/msgpack-1.7.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="ChangeLog README.md"
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/msgpack/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/msgpack"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_S="${PN}-ruby-${PV}"
+inherit ruby-fakegem
+
+DESCRIPTION="Binary-based efficient data interchange format for ruby binding"
+HOMEPAGE="https://msgpack.org/"
+# In 1.6.1, they stopped shipping the specs in the gem :(
+# https://github.com/msgpack/msgpack-ruby/commit/9cbcd0b28527af5ca755f34dfb370e3f4474d129
+# (https://github.com/msgpack/msgpack-ruby/pull/311)
+SRC_URI="https://github.com/msgpack/msgpack-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc64 ~sparc ~x86"
+IUSE="doc"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+
+ # Remove jruby-specific specs that are run also for other rubies.
+ rm -rf spec/jruby || die
+
+ sed -i -e 's/git ls-files/find * -print/' msgpack.gemspec || die
+}
diff --git a/dev-ruby/msgpack/msgpack-1.7.2.ebuild b/dev-ruby/msgpack/msgpack-1.7.2.ebuild
new file mode 100644
index 000000000000..ca768ea98361
--- /dev/null
+++ b/dev-ruby/msgpack/msgpack-1.7.2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="ChangeLog README.md"
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/msgpack/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/msgpack"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Binary-based efficient data interchange format for ruby binding"
+HOMEPAGE="https://msgpack.org/"
+SRC_URI="https://github.com/msgpack/msgpack-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="${PN}-ruby-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="doc"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+
+ # Remove jruby-specific specs that are run also for other rubies.
+ rm -rf spec/jruby || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' msgpack.gemspec || die
+}
diff --git a/dev-ruby/multi_json/Manifest b/dev-ruby/multi_json/Manifest
index d3350d818abc..40de1f29c265 100644
--- a/dev-ruby/multi_json/Manifest
+++ b/dev-ruby/multi_json/Manifest
@@ -1 +1 @@
-DIST multi_json-1.13.1.tar.gz 26098 BLAKE2B e82a08a747a092a9094cd7b35b4f933b5ac922a01f45a51b215ca9c4cdb9a083a4808d4bbe67a147ecb57e0b7b7e313c3d896f8cd80c79338c24abc3b90a09f9 SHA512 7c98392bd1c909fcc05249a02a010b561bf6c2d812ae42413d6e8dafa62926d8cb76226ded4c61558a00e5fa531ba33b6f4ef562648c52ba9b552ff7b7e27682
+DIST multi_json-1.15.0.tar.gz 24932 BLAKE2B c99c5c6b152c91dedc38fd24f8697f918064c603bfd72c55213f3ac8afd14d3c0ba31b7c3fb91c9998fcc8a5386f41a6983c53b40119558b99194ba58c06cc91 SHA512 55c873e45cdc59e75823aa031eb6d792cb9dc744b13a682fc279a8375b925db7a984256d61aa5454795a59722794a774a0ed5b6bf518db253152f4af67f46dea
diff --git a/dev-ruby/multi_json/metadata.xml b/dev-ruby/multi_json/metadata.xml
index a7d7d65cf54e..4505fa36e17a 100644
--- a/dev-ruby/multi_json/metadata.xml
+++ b/dev-ruby/multi_json/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/multi_json/multi_json-1.13.1.ebuild b/dev-ruby/multi_json/multi_json-1.13.1.ebuild
deleted file mode 100644
index da4329ed04f2..000000000000
--- a/dev-ruby/multi_json/multi_json-1.13.1.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC="yard"
-
-RUBY_FAKEGEM_DOCDIR="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="multi_json.gemspec"
-
-inherit ruby-fakegem
-
-SRC_URI="https://github.com/intridea/multi_json/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-DESCRIPTION="A gem to provide swappable JSON backends"
-HOMEPAGE="https://github.com/intridea/multi_json"
-LICENSE="MIT"
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend "|| ( >=dev-ruby/json-1.4:* >=dev-ruby/yajl-ruby-1.0 )"
-
-ruby_add_bdepend "doc? ( dev-ruby/rspec:3 dev-ruby/yard )"
-
-ruby_add_bdepend "test? ( dev-ruby/json
- dev-ruby/yajl-ruby )"
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/d' Rakefile spec/spec_helper.rb || die "Unable to remove bundler."
-
- # Remove unimportant rspec options not supported by rspec 2.6.
- rm .rspec || die
-
- # Remove specs specific to oj since we don't package oj yet.
- sed -i -e '/defaults to the best available gem/,/^ end/ s:^:#:' \
- -e '/Oj does not create symbols on parse/,/^ end/ s:^:#:' \
- -e '/with Oj.default_settings/,/^ end/ s:^:#:' \
- -e '/using one-shot parser/,/^ end/ s:^:#:' \
- spec/multi_json_spec.rb
-
- # Avoid simplecov which only works with ruby 1.9
- sed -i -e '/simplecov/d' -e '/SimpleCov.formatter/,/SimpleCov.start/ d' spec/spec_helper.rb || die
-
- # Remove unpackaged and for our purposes unneeded coveralls
- sed -i -e '/coveralls/d' spec/spec_helper.rb || die
-
- # Avoid testing unpackaged adapters
- rm spec/{gson,jr_jackson,oj}_adapter_spec.rb || die
-}
-
-each_ruby_test() {
- for t in spec/*_spec.rb; do
- ${RUBY} -S rspec-3 ${t} || die
- done
-}
diff --git a/dev-ruby/multi_json/multi_json-1.15.0.ebuild b/dev-ruby/multi_json/multi_json-1.15.0.ebuild
new file mode 100644
index 000000000000..ac82e36bb3ef
--- /dev/null
+++ b/dev-ruby/multi_json/multi_json-1.15.0.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_TASK_DOC="yard"
+
+RUBY_FAKEGEM_DOCDIR="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="multi_json.gemspec"
+
+inherit ruby-fakegem
+
+SRC_URI="https://github.com/intridea/multi_json/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+DESCRIPTION="A gem to provide swappable JSON backends"
+HOMEPAGE="https://github.com/intridea/multi_json"
+LICENSE="MIT"
+
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE=""
+
+ruby_add_rdepend "|| ( >=dev-ruby/json-1.4:* >=dev-ruby/yajl-ruby-1.0 )"
+
+ruby_add_bdepend "doc? ( dev-ruby/rspec:3 dev-ruby/yard )"
+
+ruby_add_bdepend "test? ( dev-ruby/json
+ dev-ruby/yajl-ruby )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/d' Rakefile spec/spec_helper.rb || die "Unable to remove bundler."
+
+ # Remove unimportant rspec options not supported by rspec 2.6.
+ rm .rspec || die
+
+ # Remove specs specific to oj since we don't package oj yet.
+ sed -i -e '/defaults to the best available gem/,/^ end/ s:^:#:' \
+ -e '/Oj does not create symbols on parse/,/^ end/ s:^:#:' \
+ -e '/with Oj.default_settings/,/^ end/ s:^:#:' \
+ -e '/using one-shot parser/,/^ end/ s:^:#:' \
+ -e '/jrjackson/askip "unpackaged"' \
+ spec/multi_json_spec.rb
+
+ # Avoid simplecov which only works with ruby 1.9
+ sed -i -e '/simplecov/d' -e '/SimpleCov.formatter/,/SimpleCov.start/ d' spec/spec_helper.rb || die
+
+ # Remove unpackaged and for our purposes unneeded coveralls
+ sed -i -e '/coveralls/d' spec/spec_helper.rb || die
+
+ # Avoid testing unpackaged adapters
+ rm spec/{gson,nsjsonserialization,jr_jackson,oj}_adapter_spec.rb || die
+
+ # Fix expectations confused by ruby30 kwargs
+ sed -e "/expect/ s/:foo => 'bar', :fizz => 'buzz'/{:foo => 'bar', :fizz => 'buzz'}/" \
+ -e "/expect/ s/:bar => :baz/{:bar => :baz}/" \
+ -i spec/shared/adapter.rb || die
+ sed -e '/expect/ s/:indent => "\\t"/{:indent => "\t"}/' \
+ -e '/expect/ s/:quirks_mode => false, :create_additions => false/{:quirks_mode => false, :create_additions => false}/' \
+ -i spec/shared/json_common_adapter.rb || die
+ sed -e "/expect/ s/:foo => 'bar'/{:foo => 'bar'}/" -i spec/multi_json_spec.rb || die
+}
+
+each_ruby_test() {
+ for t in spec/*_spec.rb; do
+ ${RUBY} -S rspec-3 ${t} || die
+ done
+}
diff --git a/dev-ruby/multi_test/Manifest b/dev-ruby/multi_test/Manifest
index 91e1502d8bbe..f5bb73e7ebe8 100644
--- a/dev-ruby/multi_test/Manifest
+++ b/dev-ruby/multi_test/Manifest
@@ -1 +1 @@
-DIST multi_test-0.1.2.gem 9216 BLAKE2B 9a5888937c82f87822445855eb15406b4250b3b42f00116a2c54360ab35b923d08c4015d90b14003679aac5d674baec8756b74aae4a5246beeefbae262edcc1f SHA512 a0d59f51dc959b7febe9c32853b5ac5cbbb3215e8810de5e46fe10fa42931c1ea89df477155cc8124264d608c5928e54fd4e1949e7d0940f927e1430bfd60a2b
+DIST multi_test-1.1.0.gem 9728 BLAKE2B 7fb610adfb24762d3a4e31d299bfcd387c7db3c7121b9f32c23f3f7cd8bed8dff1bd1e8fdb9a82411977581dac88a4513164d88dae83ce957747bcca507f6388 SHA512 593b7cec0c63b497df5d2f05da72a401656a71229070ee3bdfbc89fd95991a803915929df0c89781470a12c63ac621e7a5ee00b5e6f610c9279a6fe99668c959
diff --git a/dev-ruby/multi_test/metadata.xml b/dev-ruby/multi_test/metadata.xml
index 28ab0c15f206..0ddfd887d369 100644
--- a/dev-ruby/multi_test/metadata.xml
+++ b/dev-ruby/multi_test/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">cucumber/multi_test</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/multi_test/multi_test-0.1.2.ebuild b/dev-ruby/multi_test/multi_test-0.1.2.ebuild
deleted file mode 100644
index 09571760b0f8..000000000000
--- a/dev-ruby/multi_test/multi_test-0.1.2.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A uniform interface for Ruby testing libraries"
-HOMEPAGE="http://cukes.info/"
-LICENSE="MIT"
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86"
-SLOT="0"
-IUSE=""
-
-# Tests depend on specific versions of testing frameworks where bundler
-# downloads dependencies.
-RESTRICT="test"
diff --git a/dev-ruby/multi_test/multi_test-1.1.0.ebuild b/dev-ruby/multi_test/multi_test-1.1.0.ebuild
new file mode 100644
index 000000000000..060d3954e0d3
--- /dev/null
+++ b/dev-ruby/multi_test/multi_test-1.1.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A uniform interface for Ruby testing libraries"
+HOMEPAGE="https://cucumber.io/"
+LICENSE="MIT"
+
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+# Tests depend on specific versions of testing frameworks where bundler
+# downloads dependencies.
+RESTRICT="test"
diff --git a/dev-ruby/multi_xml/metadata.xml b/dev-ruby/multi_xml/metadata.xml
index bb62d2bf56f6..3ae9f109247d 100644
--- a/dev-ruby/multi_xml/metadata.xml
+++ b/dev-ruby/multi_xml/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/multi_xml/multi_xml-0.6.0-r1.ebuild b/dev-ruby/multi_xml/multi_xml-0.6.0-r1.ebuild
deleted file mode 100644
index 4ad8142a21e6..000000000000
--- a/dev-ruby/multi_xml/multi_xml-0.6.0-r1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC="yard"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A generic swappable back-end for XML parsing"
-HOMEPAGE="https://www.rubydoc.info/gems/multi_xml"
-SRC_URI="https://github.com/sferik/multi_xml/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-
-KEYWORDS="amd64 ~ppc ~ppc64 ~x86"
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "doc? ( dev-ruby/yard )"
-ruby_add_bdepend "test? ( dev-ruby/ox )"
-
-all_ruby_prepare() {
- eapply "${FILESDIR}/${P}-ox24.patch"
-
- sed -i -e '/simplecov/,/^end/ s:^:#:' spec/helper.rb || die
- sed -i -e '/bundler/I s:^:#:' -e '/yardstick/,/end/ s:^:#:' Rakefile || die
-}
-
-each_ruby_test() {
- CI=true each_fakegem_test
-}
diff --git a/dev-ruby/multi_xml/multi_xml-0.6.0-r2.ebuild b/dev-ruby/multi_xml/multi_xml-0.6.0-r2.ebuild
new file mode 100644
index 000000000000..743db1e19e19
--- /dev/null
+++ b/dev-ruby/multi_xml/multi_xml-0.6.0-r2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_TASK_DOC="yard"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A generic swappable back-end for XML parsing"
+HOMEPAGE="https://www.rubydoc.info/gems/multi_xml"
+SRC_URI="https://github.com/sferik/multi_xml/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_bdepend "doc? ( dev-ruby/yard )"
+ruby_add_bdepend "test? ( dev-ruby/ox )"
+
+all_ruby_prepare() {
+ eapply "${FILESDIR}/${P}-ox24.patch"
+
+ sed -i -e '/simplecov/,/^end/ s:^:#:' spec/helper.rb || die
+ sed -e '/bundler/I s:^:#:' \
+ -e '/yardstick/,/end/ s:^:#:' \
+ -e '/rubocop/I s:^:#:' \
+ -i Rakefile || die
+}
+
+each_ruby_test() {
+ CI=true each_fakegem_test
+}
diff --git a/dev-ruby/multipart-parser/Manifest b/dev-ruby/multipart-parser/Manifest
new file mode 100644
index 000000000000..19e97b137ddc
--- /dev/null
+++ b/dev-ruby/multipart-parser/Manifest
@@ -0,0 +1 @@
+DIST multipart-parser-0.1.1.gem 9728 BLAKE2B 2e3fff62f51ebba0fef3ad95d2098d0f3ef45f0fdc13acd9776f0cacbf308c13e5a95b634d6692c5a6b17c208aa05d90c8f0c8469292a8895c95598ac2839edf SHA512 06428785ade714cb5c78dacfb0054c0358a2ba96e3d27fd39c9395d76d32cb4dba92f58086571e0bb5f8f6cd877e61678ad9573be4035c854264418a0199ae69
diff --git a/dev-ruby/multipart-parser/files/multipart-parser-0.1.1-fix-tests.patch b/dev-ruby/multipart-parser/files/multipart-parser-0.1.1-fix-tests.patch
new file mode 100644
index 000000000000..16f614b62c36
--- /dev/null
+++ b/dev-ruby/multipart-parser/files/multipart-parser-0.1.1-fix-tests.patch
@@ -0,0 +1,45 @@
+From be3fda8863a84d6380ce08f8c17f9eae34260a1e Mon Sep 17 00:00:00 2001
+From: Akio Tajima <akio.tajima@robotfund.co.jp>
+Date: Wed, 17 Jan 2018 08:41:35 +0000
+Subject: [PATCH] test/fixtures/multipart: fix long boundary and
+ delimiter\ntest/multipart_parser/parser_test: fix require path as reader_test
+
+---
+ test/fixtures/multipart.rb | 10 +++++-----
+ test/multipart_parser/parser_test.rb | 4 ++--
+ 2 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/test/fixtures/multipart.rb b/test/fixtures/multipart.rb
+index 89b1bc6..acb737a 100644
+--- a/test/fixtures/multipart.rb
++++ b/test/fixtures/multipart.rb
+@@ -96,11 +96,11 @@ def parts
+ end
+
+ def raw
+- ['----------------------------5c4dc587f69f',
+- 'content-disposition: form-data; name="field1"',
+- '',
+- "Joe Blow\r\nalmost tricked you!",
+- '----------------------------5c4dc587f69f--'
++ ['------------------------------5c4dc587f69f',
++ 'content-disposition: form-data; name="field1"',
++ '',
++ "Joe Blow\r\nalmost tricked you!",
++ '------------------------------5c4dc587f69f--'
+ ].join("\r\n")
+ end
+ end
+diff --git a/test/multipart_parser/parser_test.rb b/test/multipart_parser/parser_test.rb
+index f477031..27455ec 100644
+--- a/test/multipart_parser/parser_test.rb
++++ b/test/multipart_parser/parser_test.rb
+@@ -1,6 +1,6 @@
+ require 'test/unit'
+-require "multipart_parser/parser"
+-require "fixtures/multipart"
++require File.dirname(__FILE__) + "/../../lib/multipart_parser/parser"
++require File.dirname(__FILE__) + "/../fixtures/multipart"
+
+ module MultipartParser
+ class ParserTest < Test::Unit::TestCase
diff --git a/dev-ruby/multipart-parser/metadata.xml b/dev-ruby/multipart-parser/metadata.xml
new file mode 100644
index 000000000000..75116a032393
--- /dev/null
+++ b/dev-ruby/multipart-parser/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">danabr/multipart-parser</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/multipart-parser/multipart-parser-0.1.1.ebuild b/dev-ruby/multipart-parser/multipart-parser-0.1.1.ebuild
new file mode 100644
index 000000000000..9e9543d01da9
--- /dev/null
+++ b/dev-ruby/multipart-parser/multipart-parser-0.1.1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README"
+
+#RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A multipart parser written in Ruby"
+HOMEPAGE="https://github.com/danabr/multipart-parser"
+#SRC_URI="https://github.com/lostisland/faraday-multipart/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+PATCHES=( "${FILESDIR}"/${P}-fix-tests.patch )
diff --git a/dev-ruby/multipart-post/Manifest b/dev-ruby/multipart-post/Manifest
index 989cc3e4ea53..a5203d6c07c4 100644
--- a/dev-ruby/multipart-post/Manifest
+++ b/dev-ruby/multipart-post/Manifest
@@ -1,3 +1,2 @@
-DIST multipart-post-2.0.0.gem 11264 BLAKE2B a842e810dd5ccc4a03509003ec1fe87ff7faed80501e776b7d10bf01d64405a4ff01812e9c6ca600207d268f0abe37dd164b54307cdb446719602bc81787b885 SHA512 4f48c815d82c139986f419cdb12efd2f3792f2ef0b2277b75533c8ddad17cc6a8c187deddadc82d29c9f7f8337fcc9ad23c40eb72053ac933911ec1457b01c18
-DIST multipart-post-2.1.0.gem 13824 BLAKE2B 7e528466826dff79235651ab7dfe20c7cfcc71d020d71ffa712d42dd63b5d825bba2ca5c8e881470c428d2eb0c81770457daca4c6522c15eb5d7e57d34785735 SHA512 0edc945e431c27d44402a3ec4fead41fd048f98d8f77d9caa97081a4b08b84efe820ada0279a61ecbdd48ccdccc8da0aa4d1ebb866a0671a63d8f408d0d6b273
-DIST multipart-post-2.1.1.gem 13824 BLAKE2B 70a706714d14d284e2fa69aa56a69682e16eece75eb1508c1707b0b7f03b0d1fb11d1a187c7b7681dc0654a280c59bc20a0754d30e80807a4dfe5e56976b4ccc SHA512 afa16717ee136f0bbbc20fe243252831604740bb61fa7288a2437a4a67638f660a4bd491b5326b034173e9e8352f2659f27dc8aaa761721f7111b7e9e704582f
+DIST multipart-post-2.3.0.tar.gz 13151 BLAKE2B 59ac6cfc743a6aaa285dd14a81fedfb123aa09720dc96a7243de94d45b3b23295d5a7de1cfb61c40c64881ad213fbf2debca49d3b1f6de7e1772c60b7d3c4d78 SHA512 ac15090cbf6dc629d57efe4810406571aec8782d021891f1f2764d4f00b735a2282162b06ee140c5b2ad21fd83f3d25028f386768166cef668bb508c235f04b2
+DIST multipart-post-2.4.0.tar.gz 13693 BLAKE2B 2340aed254d98dd6f2444eaa90009893fc6430aa8f9c1c000522afb7656de2545a734246316adf97d40b87078517005e9dd3f281532a1f966d371cff4875bc1d SHA512 9a96dc66424d8a0575f982c58bc016eda93c17195b968821b342873b4b6b02d8f53ae210fb9eea5adedfa0d9bdd70f78b37a0196782bddcd01bbbfd0e757ac38
diff --git a/dev-ruby/multipart-post/metadata.xml b/dev-ruby/multipart-post/metadata.xml
index 5b3bfe943553..7ec44ce8eeb0 100644
--- a/dev-ruby/multipart-post/metadata.xml
+++ b/dev-ruby/multipart-post/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">nicksieger/multipart-post</remote-id>
+ <remote-id type="github">socketry/multipart-post</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/multipart-post/multipart-post-2.0.0-r1.ebuild b/dev-ruby/multipart-post/multipart-post-2.0.0-r1.ebuild
deleted file mode 100644
index 5aab03552124..000000000000
--- a/dev-ruby/multipart-post/multipart-post-2.0.0-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.md"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Adds a streamy multipart form post capability to Net::HTTP"
-HOMEPAGE="https://github.com/nicksieger/multipart-post"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE="test"
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e "Dir['test/test_*.rb'].each{|f| require f}" || die
-}
diff --git a/dev-ruby/multipart-post/multipart-post-2.1.0.ebuild b/dev-ruby/multipart-post/multipart-post-2.1.0.ebuild
deleted file mode 100644
index c5f4406f295c..000000000000
--- a/dev-ruby/multipart-post/multipart-post-2.1.0.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.md"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Adds a streamy multipart form post capability to Net::HTTP"
-HOMEPAGE="https://github.com/nicksieger/multipart-post"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE="test"
diff --git a/dev-ruby/multipart-post/multipart-post-2.1.1.ebuild b/dev-ruby/multipart-post/multipart-post-2.1.1.ebuild
deleted file mode 100644
index 9ae05f6335b1..000000000000
--- a/dev-ruby/multipart-post/multipart-post-2.1.1.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.md"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Adds a streamy multipart form post capability to Net::HTTP"
-HOMEPAGE="https://github.com/nicksieger/multipart-post"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE="test"
diff --git a/dev-ruby/multipart-post/multipart-post-2.3.0.ebuild b/dev-ruby/multipart-post/multipart-post-2.3.0.ebuild
new file mode 100644
index 000000000000..d31229650ea3
--- /dev/null
+++ b/dev-ruby/multipart-post/multipart-post-2.3.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="changelog.md readme.md"
+RUBY_FAKEGEM_GEMSPEC="multipart-post.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Adds a streamy multipart form post capability to Net::HTTP"
+HOMEPAGE="https://github.com/socketry/multipart-post"
+SRC_URI="https://github.com/socketry/multipart-post/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="test"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|covered\)/ s:^:#:' spec/spec_helper.rb || die
+
+ sed -i -e 's:_relative ":"./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Remove warnings since these are only actionable for developers,
+ # not for people consuming this package as part of other tools.
+ sed -i -e '/Top level/ s/warn/# warn/' lib/*.rb || die
+}
diff --git a/dev-ruby/multipart-post/multipart-post-2.4.0.ebuild b/dev-ruby/multipart-post/multipart-post-2.4.0.ebuild
new file mode 100644
index 000000000000..3c8e0f964d0f
--- /dev/null
+++ b/dev-ruby/multipart-post/multipart-post-2.4.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="changelog.md readme.md"
+RUBY_FAKEGEM_GEMSPEC="multipart-post.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Adds a streamy multipart form post capability to Net::HTTP"
+HOMEPAGE="https://github.com/socketry/multipart-post"
+SRC_URI="https://github.com/socketry/multipart-post/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="test"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|covered\)/ s:^:#:' spec/spec_helper.rb || die
+
+ sed -i -e 's:_relative ":"./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Remove warnings since these are only actionable for developers,
+ # not for people consuming this package as part of other tools.
+ sed -i -e '/Top level/ s/warn/# warn/' lib/*.rb || die
+}
diff --git a/dev-ruby/mustache/Manifest b/dev-ruby/mustache/Manifest
index 5c35f594eab7..9302fca7f771 100644
--- a/dev-ruby/mustache/Manifest
+++ b/dev-ruby/mustache/Manifest
@@ -1,2 +1 @@
-DIST mustache-1.0.5.gem 41984 BLAKE2B c063af6c9464884114b55c30df6c6cb2685b0394aa9280f006b6c35cd0681c8776edddccd1a33de75e291a2e1992477c1d70f6cb1c603e800b08be5b989a9ca0 SHA512 d9b2c55d758bd4e317732307b513e2a079b04ec7a1203233834fd08a3a32f7b1bf8283d207af2f7082a8c4847f9c5955a557f19bad9b08a1dee2f32417eca190
-DIST mustache-1.1.0.gem 42496 BLAKE2B f2bef262238a6e335decf2295d1d55c7865d9e2181f7772d2359bde99441536c4f1b44a103f2ee9be8e6933027ea0241f7027410d9a506732ac8affe9a72ea22 SHA512 5e8daa7cfb6151e86e5d2223a026538194e03331bcd74f15704404795eb8c6c28899f29fa9fe421fe38e026b38ad734fe5574d2a6d4aa1e53ed5a566a8061c61
+DIST mustache-1.1.1.gem 42496 BLAKE2B bd1becb1c296abf03cdd6c7d5a6f29b71dc6328c126dbb27420872088b3b6988ac56d91c13f669cca94932f23f4290277d9ca6597ff842ff226e092c2532dccb SHA512 91a18a374a0348317d0801d6784fedd0782d7a08f128d3ab7050e631b34e45cecd49c4b1e2a9e17204f70bf169c107a92a1e210532bd3faa98edf8b1b5e8e43c
diff --git a/dev-ruby/mustache/files/mustache-1.1.1-test-ordering.patch b/dev-ruby/mustache/files/mustache-1.1.1-test-ordering.patch
new file mode 100644
index 000000000000..824825bacbd3
--- /dev/null
+++ b/dev-ruby/mustache/files/mustache-1.1.1-test-ordering.patch
@@ -0,0 +1,36 @@
+From 407c6a5db6c1f1cfb40bd6113f07f067d07885a4 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch@redhat.com>
+Date: Mon, 27 Apr 2020 11:16:17 +0200
+Subject: [PATCH] Fix test race condition.
+
+The test suite randomly fails with errors such as:
+
+~~~
+ 1) Failure:
+AutoloadingTest#test_autoload_lowercase [/builddir/build/BUILD/mustache-1.1.1/usr/share/gems/gems/mustache-1.1.1/test/autoloading_test.rb:17]:
+Expected: Comments
+ Actual: nil
+~~~
+
+This happens when `test_namespaced*` test cases are executed earlier
+than the remaining test cases, because they are defining
+`view_namespace` but not cleaning up afterwards.
+---
+ test/autoloading_test.rb | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/test/autoloading_test.rb b/test/autoloading_test.rb
+index 0a7ad762..77eb3557 100644
+--- a/test/autoloading_test.rb
++++ b/test/autoloading_test.rb
+@@ -7,6 +7,10 @@ def setup
+ Mustache.view_path = File.dirname(__FILE__) + '/fixtures'
+ end
+
++ def teardown
++ Mustache.remove_instance_variable(:@view_namespace) if Mustache.instance_variable_defined?(:@view_namespace)
++ end
++
+ def test_autoload
+ klass = Mustache.view_class(:Comments)
+ assert_equal Comments, klass
diff --git a/dev-ruby/mustache/metadata.xml b/dev-ruby/mustache/metadata.xml
index 28ab0c15f206..969ef434f599 100644
--- a/dev-ruby/mustache/metadata.xml
+++ b/dev-ruby/mustache/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">mustache/mustache</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/mustache/mustache-1.0.5.ebuild b/dev-ruby/mustache/mustache-1.0.5.ebuild
deleted file mode 100644
index a22b041c9db5..000000000000
--- a/dev-ruby/mustache/mustache-1.0.5.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC="man:build"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Mustache is a framework-agnostic way to render logic-free views"
-HOMEPAGE="https://mustache.github.com/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~x64-macos ~x64-solaris"
-IUSE=""
-
-ruby_add_bdepend "doc? ( app-text/ronn )"
-
-all_ruby_prepare() {
- # Fix rake deprecation
- sed -i -e 's:rake/rdoctask:rdoc/task:' Rakefile || die
-
- sed -i -e '/simplecov/,/^end/ s:^:#:' test/helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e "Dir['test/*.rb'].each{|f| require f}" || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- doman man/mustache.1 man/mustache.5
-}
diff --git a/dev-ruby/mustache/mustache-1.1.0.ebuild b/dev-ruby/mustache/mustache-1.1.0.ebuild
deleted file mode 100644
index dac6491d9dab..000000000000
--- a/dev-ruby/mustache/mustache-1.1.0.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC="man:build"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Mustache is a framework-agnostic way to render logic-free views"
-HOMEPAGE="https://mustache.github.com/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
-IUSE=""
-
-ruby_add_bdepend "doc? ( app-text/ronn )"
-
-all_ruby_prepare() {
- # Fix for renamed .ron files
- sed -i -e 's:\.ronn:.ron:' Rakefile || die
-
- sed -i -e '/simplecov/,/^end/ s:^:#:' test/helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e "Dir['test/*.rb'].each{|f| require f}" || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- doman man/mustache.1 man/mustache.5
-}
diff --git a/dev-ruby/mustache/mustache-1.1.1-r1.ebuild b/dev-ruby/mustache/mustache-1.1.1-r1.ebuild
new file mode 100644
index 000000000000..a8f4b32ff05e
--- /dev/null
+++ b/dev-ruby/mustache/mustache-1.1.1-r1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby26 ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_TASK_DOC="man:build"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit multilib ruby-fakegem
+
+DESCRIPTION="Mustache is a framework-agnostic way to render logic-free views"
+HOMEPAGE="https://mustache.github.io/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+PATCHES=( "${FILESDIR}/${P}-test-ordering.patch" )
+
+ruby_add_bdepend "doc? ( app-text/ronn-ng )"
+
+all_ruby_prepare() {
+ # Fix for renamed .ron files
+ sed -i -e 's:\.ronn:.ron:' Rakefile || die
+
+ sed -i -e '/simplecov/,/^end/ s:^:#:' test/helper.rb || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=1 ${RUBY} -Ilib:. -e "Dir['test/*.rb'].each{|f| require f}" || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ doman man/mustache.1 man/mustache.5
+}
diff --git a/dev-ruby/mustermann/Manifest b/dev-ruby/mustermann/Manifest
index b9a7402c39dd..f80e0a7b3bed 100644
--- a/dev-ruby/mustermann/Manifest
+++ b/dev-ruby/mustermann/Manifest
@@ -1 +1 @@
-DIST mustermann-1.0.3.gem 51712 BLAKE2B 03672295ec33dd5320a40a2c5e5f78ca83a055f73e1f2f8b127f13cd04e0ce5f7bf34eba68f49e253c209db4e169b2a51dd21541d86debca0797b3dc2b3670d9 SHA512 776ad3f24e1165155def04a6e1ff18ccaf536606dafc3fa19b8b2c2576cd316eaa9b72cac37bc6ede3c48c7ed6c90e99a4388f60cdeaef0bca461e9caa4bb4f5
+DIST mustermann-3.0.0.gem 50176 BLAKE2B fc77327de469f0886de782c577ac164b222bbe18074f1ec63c35a08344cfcdf9a2cb44b453c594e2b153db3055ff1e7bcf969240ade04e70be5cb85a73e486a3 SHA512 c33d41281fe2ac80c0af0c5c31dbab2068c73b9da19a4b82b387bbe551019fc115675634d932a8e56b070c3a06a85d830c982a103e6c5193aff8647f599be6e3
diff --git a/dev-ruby/mustermann/metadata.xml b/dev-ruby/mustermann/metadata.xml
index 28ab0c15f206..b4696bf49a2d 100644
--- a/dev-ruby/mustermann/metadata.xml
+++ b/dev-ruby/mustermann/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">sinatra/mustermann</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/mustermann/mustermann-1.0.3.ebuild b/dev-ruby/mustermann/mustermann-1.0.3.ebuild
deleted file mode 100644
index e6639671b473..000000000000
--- a/dev-ruby/mustermann/mustermann-1.0.3.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# There are specs but they depend heavily on unpackaged code.
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library implementing patterns that behave like regular expressions"
-HOMEPAGE="https://github.com/sinatra/mustermann"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
diff --git a/dev-ruby/mustermann/mustermann-3.0.0.ebuild b/dev-ruby/mustermann/mustermann-3.0.0.ebuild
new file mode 100644
index 000000000000..c7be5f34f92b
--- /dev/null
+++ b/dev-ruby/mustermann/mustermann-3.0.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# There are specs but they depend heavily on unpackaged code.
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library implementing patterns that behave like regular expressions"
+HOMEPAGE="https://github.com/sinatra/mustermann"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "=dev-ruby/ruby2_keywords-0.0*"
diff --git a/dev-ruby/mutex_m/Manifest b/dev-ruby/mutex_m/Manifest
new file mode 100644
index 000000000000..7edcf85a3ab1
--- /dev/null
+++ b/dev-ruby/mutex_m/Manifest
@@ -0,0 +1 @@
+DIST mutex_m-0.2.0.tar.gz 4199 BLAKE2B 853b68f856d43ac7172e9c4fc8dd144282e6879b75bdcb223c40ca0433e22c21e2343cb949c19d6aaafb9208650001b011e12954321e1223f40a3bbb62a8fbde SHA512 aba0c77ac7663925a856621dad89ed6afd9a70697373bbffa0c335a9aef4774c4114b45e4addd747fe2b751af689c2710e549398aa80176970c612d570730ee7
diff --git a/dev-ruby/mutex_m/metadata.xml b/dev-ruby/mutex_m/metadata.xml
new file mode 100644
index 000000000000..420f235d2335
--- /dev/null
+++ b/dev-ruby/mutex_m/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/mutex_m</remote-id>
+ <remote-id type="rubygems">mutex_m</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/mutex_m/mutex_m-0.2.0.ebuild b/dev-ruby/mutex_m/mutex_m-0.2.0.ebuild
new file mode 100644
index 000000000000..d06d22d412e7
--- /dev/null
+++ b/dev-ruby/mutex_m/mutex_m-0.2.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="mutex_m.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Mixin to extend objects to be handled like a Mutex"
+HOMEPAGE="https://github.com/ruby/mutex_m"
+SRC_URI="https://github.com/ruby/mutex_m/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/mysql2/Manifest b/dev-ruby/mysql2/Manifest
index 45a25257d4d7..465817ce280c 100644
--- a/dev-ruby/mysql2/Manifest
+++ b/dev-ruby/mysql2/Manifest
@@ -1,3 +1,2 @@
-DIST mysql2-0.4.10.gem 97792 BLAKE2B 4978a3fbc8e516e47907d73276b244e614248c031db7c0b7d76d20f1f845be11f7187795d3a989629ff849e2e1bd0454fd56bc7be6b692d9840838861bafdb4c SHA512 1f9c8eb1b120cfc940b3aa26b2dff54735ccdf54fd6e6745e347179d29803b4a4d1f3b80a86f92dd534089f625ffcd6055458f27aaefebe58f8332890a842b43
-DIST mysql2-0.5.1.gem 99328 BLAKE2B 1ed8d9688a78ee30f3f7b7a71317cbe92b39e2a1b6f9db710a328a4b9542ffcff4be9051c5fa440bbb93c1af56742755e4b70bbff895695102c126293b7d7ad7 SHA512 dd1934e4f8aa8a97b70dbe0f1436496892a155fa188930321e776d57ec72ec34f95f2665ad5db671fdba99304e279aa8a045dbc6126ab50d8cc2d84838bc145b
-DIST mysql2-0.5.2.gem 99328 BLAKE2B 0f1a0d4657e5933e14d445ceefc6ff605a8b07bc01686dd0a67e018c45857a92d25914e4f0aae1116ed1479583636cdbca2aaeb127b856b38052264d579991bf SHA512 6013b0c862f24f0c20b22c50a17390a7a22390e661d0f1afb613177febfbf854f63aea9bc9aa8defc9521896144fbc035a8e16b135abb47384453a23dfd99566
+DIST mysql2-0.5.5.tar.gz 124769 BLAKE2B 698b18434691b2b7734c6fa314c931a38e973813a1912166838541f35c181813bff2db2c0967df72e8d9108b9ea71a030af09f39354a9c902674fab287b82331 SHA512 fa43e464bfd495d335c6f95b1897009813b7d6fbfeebe8d9c533c4f88c664a61a140227df73eb892c0314f76ebb5d0f2e06265284512dd35950bbab78d20e0fc
+DIST mysql2-0.5.6.tar.gz 125108 BLAKE2B cdecc8912a5cd1c1cb9ea1a428c930cf0acad8832db3c8fcee93c8a3ef898fff47f09735d7b646e782e4a908e555c704a11e68ffc10ef735705438d0090e2883 SHA512 44b6e0bfe819d9a9ce056d4cd99b547dbb2bebe512a00eadf030885a8b7b147bc08a334dc583585bddf36998d46242aa0aadc9dc159f2296d6f3640a74362de9
diff --git a/dev-ruby/mysql2/metadata.xml b/dev-ruby/mysql2/metadata.xml
index 9ee135bb6b8f..193d5b7e30ab 100644
--- a/dev-ruby/mysql2/metadata.xml
+++ b/dev-ruby/mysql2/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/mysql2/mysql2-0.4.10-r1.ebuild b/dev-ruby/mysql2/mysql2-0.4.10-r1.ebuild
deleted file mode 100644
index a22fbdcd7a29..000000000000
--- a/dev-ruby/mysql2/mysql2-0.4.10-r1.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Tests require a live MySQL database but should all pass.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A modern, simple and very fast Mysql library for Ruby - binding to libmysql"
-HOMEPAGE="https://github.com/brianmario/mysql2"
-
-LICENSE="MIT"
-SLOT="0.4"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE="mysql mariadb"
-REQUIRED_USE="^^ ( mariadb mysql )"
-
-MDEPEND="mysql? ( dev-db/mysql-connector-c:= ) mariadb? ( dev-db/mariadb-connector-c:= )"
-DEPEND="${DEPEND} ${MDEPEND}"
-RDEPEND="${RDEPEND} ${MDEPEND}"
-
-each_ruby_configure() {
- local config
- if use mysql ; then
- config="${EPREFIX}/usr/bin/mysql_config"
- fi
- if use mariadb ; then
- config="${EPREFIX}/usr/bin/mariadb_config"
- fi
-
- ${RUBY} -Cext/mysql2 extconf.rb --with-mysql-config=${config} || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/mysql2
- cp ext/mysql2/mysql2$(get_modname) lib/mysql2/ || die
-}
diff --git a/dev-ruby/mysql2/mysql2-0.4.10.ebuild b/dev-ruby/mysql2/mysql2-0.4.10.ebuild
deleted file mode 100644
index db127e8a3933..000000000000
--- a/dev-ruby/mysql2/mysql2-0.4.10.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-# Tests require a live MySQL database but should all pass.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A modern, simple and very fast Mysql library for Ruby - binding to libmysql"
-HOMEPAGE="https://github.com/brianmario/mysql2"
-
-LICENSE="MIT"
-SLOT="0.4"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-DEPEND="${DEPEND} dev-db/mysql-connector-c"
-RDEPEND="${RDEPEND} dev-db/mysql-connector-c:="
-
-each_ruby_configure() {
- ${RUBY} -Cext/mysql2 extconf.rb --with-mysql-config "${EPREFIX}/usr/bin/mysqlconfig" || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/mysql2
- cp ext/mysql2/mysql2$(get_modname) lib/mysql2/ || die
-}
diff --git a/dev-ruby/mysql2/mysql2-0.5.1.ebuild b/dev-ruby/mysql2/mysql2-0.5.1.ebuild
deleted file mode 100644
index c9ce68fd9891..000000000000
--- a/dev-ruby/mysql2/mysql2-0.5.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-# Tests require a live MySQL database but should all pass.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A modern, simple and very fast Mysql library for Ruby - binding to libmysql"
-HOMEPAGE="https://github.com/brianmario/mysql2"
-
-LICENSE="MIT"
-SLOT="0.5"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-DEPEND="${DEPEND} dev-db/mysql-connector-c"
-RDEPEND="${RDEPEND} dev-db/mysql-connector-c:="
-
-each_ruby_configure() {
- ${RUBY} -Cext/mysql2 extconf.rb --with-mysql-config "${EPREFIX}/usr/bin/mysqlconfig" || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/mysql2
- cp ext/mysql2/mysql2$(get_modname) lib/mysql2/ || die
-}
diff --git a/dev-ruby/mysql2/mysql2-0.5.2-r1.ebuild b/dev-ruby/mysql2/mysql2-0.5.2-r1.ebuild
deleted file mode 100644
index c54019a08f5b..000000000000
--- a/dev-ruby/mysql2/mysql2-0.5.2-r1.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Tests require a live MySQL database but should all pass.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A modern, simple and very fast Mysql library for Ruby - binding to libmysql"
-HOMEPAGE="https://github.com/brianmario/mysql2"
-
-LICENSE="MIT"
-SLOT="0.5"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE="mysql mariadb"
-REQUIRED_USE="^^ ( mariadb mysql )"
-
-MDEPEND="mysql? ( dev-db/mysql-connector-c:= ) mariadb? ( dev-db/mariadb-connector-c:= )"
-DEPEND="${DEPEND} ${MDEPEND}"
-RDEPEND="${RDEPEND} ${MDEPEND}"
-
-each_ruby_configure() {
- local config
- if use mysql ; then
- config="${EPREFIX}/usr/bin/mysql_config"
- fi
- if use mariadb ; then
- config="${EPREFIX}/usr/bin/mariadb_config"
- fi
-
- ${RUBY} -Cext/mysql2 extconf.rb --with-mysql-config="${config}" || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/mysql2
- cp ext/mysql2/mysql2$(get_modname) lib/mysql2/ || die
-}
diff --git a/dev-ruby/mysql2/mysql2-0.5.2.ebuild b/dev-ruby/mysql2/mysql2-0.5.2.ebuild
deleted file mode 100644
index 93e6a4196626..000000000000
--- a/dev-ruby/mysql2/mysql2-0.5.2.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-# Tests require a live MySQL database but should all pass.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A modern, simple and very fast Mysql library for Ruby - binding to libmysql"
-HOMEPAGE="https://github.com/brianmario/mysql2"
-
-LICENSE="MIT"
-SLOT="0.5"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-DEPEND="${DEPEND} dev-db/mysql-connector-c"
-RDEPEND="${RDEPEND} dev-db/mysql-connector-c:="
-
-each_ruby_configure() {
- ${RUBY} -Cext/mysql2 extconf.rb --with-mysql-config "${EPREFIX}/usr/bin/mysqlconfig" || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/mysql2
- cp ext/mysql2/mysql2$(get_modname) lib/mysql2/ || die
-}
diff --git a/dev-ruby/mysql2/mysql2-0.5.5.ebuild b/dev-ruby/mysql2/mysql2-0.5.5.ebuild
new file mode 100644
index 000000000000..baec9e3c8882
--- /dev/null
+++ b/dev-ruby/mysql2/mysql2-0.5.5.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/mysql2/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/mysql2
+
+RUBY_FAKEGEM_GEMSPEC="mysql2.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A modern, simple and very fast Mysql library for Ruby - binding to libmysql"
+HOMEPAGE="https://github.com/brianmario/mysql2"
+SRC_URI="https://github.com/brianmario/mysql2/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="mysql mariadb"
+REQUIRED_USE="^^ ( mariadb mysql )"
+
+SQL_DEPEND="mysql? ( dev-db/mysql-connector-c:= ) mariadb? ( dev-db/mariadb-connector-c:= )"
+DEPEND="${DEPEND} ${SQL_DEPEND}"
+RDEPEND="${RDEPEND} ${SQL_DEPEND}"
+BDEPEND="
+ test? (
+ mariadb? ( dev-db/mariadb:* )
+ mysql? ( >=dev-db/mysql-8:* )
+ )
+"
+
+all_ruby_prepare() {
+ sed -i -e '/s.version/ s/Mysql2::VERSION/"'${PV}'"/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_configure() {
+ local config
+ if use mysql ; then
+ config="${EPREFIX}/usr/bin/mysql_config"
+ fi
+ if use mariadb ; then
+ config="${EPREFIX}/usr/bin/mariadb_config"
+ fi
+
+ ${RUBY} -Cext/mysql2 extconf.rb --with-mysql-config="${config}" || die
+}
+
+each_ruby_test() {
+ local -x USER=$(whoami)
+
+ einfo "Creating mysql test instance ..."
+ mkdir -p "${T}"/mysql || die
+ if use mariadb ; then
+ local -x PATH="${BROOT}/usr/share/mariadb/scripts:${PATH}"
+
+ mysql_install_db \
+ --no-defaults \
+ --auth-root-authentication-method=normal \
+ --basedir="${EPREFIX}/usr" \
+ --datadir="${T}"/mysql 1>"${T}"/mysqld_install.log || die
+ else
+ mysqld \
+ --no-defaults \
+ --initialize-insecure \
+ --user ${USER} \
+ --basedir="${EPREFIX}/usr" \
+ --datadir="${T}"/mysql 1>"${T}"/mysqld_install.log || die
+ fi
+
+ einfo "Starting mysql test instance ..."
+ mysqld \
+ --no-defaults \
+ --character-set-server=utf8 \
+ --bind-address=127.0.0.1 \
+ --pid-file="${T}"/mysqld.pid \
+ --socket="${T}"/mysqld.sock \
+ --datadir="${T}"/mysql 1>"${T}"/mysqld.log 2>&1 &
+
+ # wait for it to start
+ local i
+ for (( i = 0; i < 10; i++ )); do
+ [[ -S ${T}/mysqld.sock ]] && break
+ sleep 1
+ done
+ [[ ! -S ${T}/mysqld.sock ]] && die "mysqld failed to start"
+
+ einfo "Configuring test mysql instance ..."
+
+ mysql -u root --socket="${T}"/mysqld.sock -s -e '
+ CREATE DATABASE test1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
+ ' || die "Failed to create test databases"
+
+ # https://github.com/brianmario/mysql2/blob/master/ci/setup.sh
+ mysql -u root \
+ -e 'CREATE DATABASE /*M!50701 IF NOT EXISTS */ test' \
+ -S "${T}"/mysqld.sock || die
+
+ # https://github.com/brianmario/mysql2/blob/master/tasks/rspec.rake
+ cat <<-EOF > spec/configuration.yml || die
+ root:
+ host: localhost
+ username: root
+ password:
+ database: test
+ socket: ${T}/mysqld.sock
+
+ user:
+ host: localhost
+ username: root
+ password:
+ database: mysql2_test
+ socket: ${T}/mysqld.sock
+ EOF
+
+ nonfatal each_fakegem_test
+ local ret=${?}
+
+ einfo "Stopping mysql test instance ..."
+ pkill -F "${T}"/mysqld.pid || die
+ # wait for it to stop
+ local i
+ for (( i = 0; i < 10; i++ )); do
+ [[ -S ${T}/mysqld.sock ]] || break
+ sleep 1
+ done
+
+ rm -rf "${T}"/mysql || die
+
+ [[ ${ret} -ne 0 ]] && die
+}
diff --git a/dev-ruby/mysql2/mysql2-0.5.6.ebuild b/dev-ruby/mysql2/mysql2-0.5.6.ebuild
new file mode 100644
index 000000000000..380f6a06f03d
--- /dev/null
+++ b/dev-ruby/mysql2/mysql2-0.5.6.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/mysql2/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/mysql2
+
+RUBY_FAKEGEM_GEMSPEC="mysql2.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A modern, simple and very fast Mysql library for Ruby - binding to libmysql"
+HOMEPAGE="https://github.com/brianmario/mysql2"
+SRC_URI="https://github.com/brianmario/mysql2/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="mysql mariadb"
+REQUIRED_USE="^^ ( mariadb mysql )"
+
+SQL_DEPEND="mysql? ( dev-db/mysql-connector-c:= ) mariadb? ( dev-db/mariadb-connector-c:= )"
+DEPEND="${DEPEND} ${SQL_DEPEND}"
+RDEPEND="${RDEPEND} ${SQL_DEPEND}"
+BDEPEND="
+ test? (
+ mariadb? ( dev-db/mariadb:* )
+ mysql? ( >=dev-db/mysql-8:* )
+ )
+"
+
+all_ruby_prepare() {
+ sed -i -e '/s.version/ s/Mysql2::VERSION/"'${PV}'"/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_configure() {
+ local config
+ if use mysql ; then
+ config="${EPREFIX}/usr/bin/mysql_config"
+ fi
+ if use mariadb ; then
+ config="${EPREFIX}/usr/bin/mariadb_config"
+ fi
+
+ ${RUBY} -Cext/mysql2 extconf.rb --with-mysql-config="${config}" || die
+}
+
+each_ruby_test() {
+ local -x USER=$(whoami)
+
+ einfo "Creating mysql test instance ..."
+ mkdir -p "${T}"/mysql || die
+ if use mariadb ; then
+ local -x PATH="${BROOT}/usr/share/mariadb/scripts:${PATH}"
+
+ mysql_install_db \
+ --no-defaults \
+ --auth-root-authentication-method=normal \
+ --basedir="${EPREFIX}/usr" \
+ --datadir="${T}"/mysql 1>"${T}"/mysqld_install.log || die
+ else
+ mysqld \
+ --no-defaults \
+ --initialize-insecure \
+ --user ${USER} \
+ --basedir="${EPREFIX}/usr" \
+ --datadir="${T}"/mysql 1>"${T}"/mysqld_install.log || die
+ fi
+
+ einfo "Starting mysql test instance ..."
+ mysqld \
+ --no-defaults \
+ --character-set-server=utf8 \
+ --bind-address=127.0.0.1 \
+ --pid-file="${T}"/mysqld.pid \
+ --socket="${T}"/mysqld.sock \
+ --datadir="${T}"/mysql 1>"${T}"/mysqld.log 2>&1 &
+
+ # wait for it to start
+ local i
+ for (( i = 0; i < 10; i++ )); do
+ [[ -S ${T}/mysqld.sock ]] && break
+ sleep 1
+ done
+ [[ ! -S ${T}/mysqld.sock ]] && die "mysqld failed to start"
+
+ einfo "Configuring test mysql instance ..."
+
+ mysql -u root --socket="${T}"/mysqld.sock -s -e '
+ CREATE DATABASE test1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
+ ' || die "Failed to create test databases"
+
+ # https://github.com/brianmario/mysql2/blob/master/ci/setup.sh
+ mysql -u root \
+ -e 'CREATE DATABASE /*M!50701 IF NOT EXISTS */ test' \
+ -S "${T}"/mysqld.sock || die
+
+ # https://github.com/brianmario/mysql2/blob/master/tasks/rspec.rake
+ cat <<-EOF > spec/configuration.yml || die
+ root:
+ host: localhost
+ username: root
+ password:
+ database: test
+ socket: ${T}/mysqld.sock
+
+ user:
+ host: localhost
+ username: root
+ password:
+ database: mysql2_test
+ socket: ${T}/mysqld.sock
+ EOF
+
+ nonfatal each_fakegem_test
+ local ret=${?}
+
+ einfo "Stopping mysql test instance ..."
+ pkill -F "${T}"/mysqld.pid || die
+ # wait for it to stop
+ local i
+ for (( i = 0; i < 10; i++ )); do
+ [[ -S ${T}/mysqld.sock ]] || break
+ sleep 1
+ done
+
+ rm -rf "${T}"/mysql || die
+
+ [[ ${ret} -ne 0 ]] && die
+}
diff --git a/dev-ruby/nagios/Manifest b/dev-ruby/nagios/Manifest
deleted file mode 100644
index c317e5447810..000000000000
--- a/dev-ruby/nagios/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST nagios-0.0.4.gem 6144 BLAKE2B f4ffbffcc5b934a3cdd987e86cb52aedce386ae1ce1de753f8f0503a64267245ce43ab42abdfbb662db0b933e80029f4c875afcfab222eb2be4c74c80903ca70 SHA512 7903e3f02deaa0e8f7c5e5b9b09afc5a1907c7c3a3157f6b100add3b9461ddca36cb442a3465124be3e65dae2112caaaca089e82d7dda41d31813c2963553ec2
diff --git a/dev-ruby/nagios/metadata.xml b/dev-ruby/nagios/metadata.xml
deleted file mode 100644
index 2346ff1da5e2..000000000000
--- a/dev-ruby/nagios/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jcsalterego/nagios-rb</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/nagios/nagios-0.0.4-r1.ebuild b/dev-ruby/nagios/nagios-0.0.4-r1.ebuild
deleted file mode 100644
index 52f7f277daf8..000000000000
--- a/dev-ruby/nagios/nagios-0.0.4-r1.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Nagios-rb is a compact framework for writing Nagios plugins"
-HOMEPAGE="https://github.com/jcsalterego/nagios-rb"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
diff --git a/dev-ruby/nagios_analyzer/Manifest b/dev-ruby/nagios_analyzer/Manifest
deleted file mode 100644
index a0c72b8c6bb4..000000000000
--- a/dev-ruby/nagios_analyzer/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST nagios_analyzer-0.0.5.gem 11264 BLAKE2B 16e90e269f73e7f717fcde574fd729efd0ab5a0c1892ffe1692e5bb0c87ed6e6909f45381d8021b24540ef3f99d80d9564c37476bbbba7ed11743616b065c6b0 SHA512 052ad107bf39d35b0c21392f4d5905ddcf009e3fa4b780706c23b9d6a45bf6a7b0a64dad596c8a32aedb332ee069f062c30b47479289569fb5f13b5705b03303
diff --git a/dev-ruby/nagios_analyzer/metadata.xml b/dev-ruby/nagios_analyzer/metadata.xml
deleted file mode 100644
index a96cd07d8f84..000000000000
--- a/dev-ruby/nagios_analyzer/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jbbarth/nagios_analyzer</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/nagios_analyzer/nagios_analyzer-0.0.5-r1.ebuild b/dev-ruby/nagios_analyzer/nagios_analyzer-0.0.5-r1.ebuild
deleted file mode 100644
index 28d52b0cceb6..000000000000
--- a/dev-ruby/nagios_analyzer/nagios_analyzer-0.0.5-r1.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.textile"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple parser for Nagios status files"
-HOMEPAGE="https://github.com/jbbarth/nagios_analyzer"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-IUSE=""
diff --git a/dev-ruby/nanotest/metadata.xml b/dev-ruby/nanotest/metadata.xml
index 8484558cfc31..0d2aec46c32c 100644
--- a/dev-ruby/nanotest/metadata.xml
+++ b/dev-ruby/nanotest/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/nanotest/nanotest-0.9.4.1-r2.ebuild b/dev-ruby/nanotest/nanotest-0.9.4.1-r2.ebuild
new file mode 100644
index 000000000000..463f215eb6d8
--- /dev/null
+++ b/dev-ruby/nanotest/nanotest-0.9.4.1-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Extremely mynymal test framework"
+HOMEPAGE="https://github.com/mynyml/nanotest"
+LICENSE="MIT"
+
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+SLOT="0"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
+
+all_ruby_prepare() {
+ sed -e 's/MiniTest::Unit::TestCase/Minitest::Test/' \
+ -i test/test_helper.rb test/test_nanotest.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -I.:lib test/test_nanotest.rb || die
+}
diff --git a/dev-ruby/nanotest/nanotest-0.9.4.1.ebuild b/dev-ruby/nanotest/nanotest-0.9.4.1.ebuild
deleted file mode 100644
index 8acdc49179f0..000000000000
--- a/dev-ruby/nanotest/nanotest-0.9.4.1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Extremely mynymal test framework"
-HOMEPAGE="https://github.com/mynyml/nanotest"
-LICENSE="MIT"
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86"
-SLOT="0"
-IUSE=""
-
-each_ruby_test() {
- ${RUBY} -I.:lib test/test_nanotest.rb || die
-}
diff --git a/dev-ruby/narray/metadata.xml b/dev-ruby/narray/metadata.xml
index 27c7e23b9b09..cdfa4b570c03 100644
--- a/dev-ruby/narray/metadata.xml
+++ b/dev-ruby/narray/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/narray/narray-0.6.1.2-r2.ebuild b/dev-ruby/narray/narray-0.6.1.2-r2.ebuild
new file mode 100644
index 000000000000..3def3445048e
--- /dev/null
+++ b/dev-ruby/narray/narray-0.6.1.2-r2.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="ChangeLog README.md README.ja.md SPEC.en.txt SPEC.ja.txt"
+
+RUBY_FAKEGEM_GEMSPEC="narray.gemspec"
+RUBY_FAKEGEM_VERSION="${PV/_p/.}"
+
+RUBY_FAKEGEM_EXTENSIONS=(./extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Numerical N-dimensional Array class"
+HOMEPAGE="https://masa16.github.io/narray/"
+SRC_URI="https://github.com/masa16/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Ruby-BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~hppa ~mips ppc ~ppc64 x86"
+
+IUSE=""
+
+all_ruby_prepare() {
+ # the tests aren't really written to be a testsuite, so the
+ # failure cases will literally fail; ignore all of those and
+ # instead expect that the rest won't fail.
+ sed -i -e '/[fF]ollowing will fail/,$ s:^:#:' \
+ -e '/next will fail/,$ s:^:#:' \
+ test/*.rb || die "sed failed"
+
+ sed -i -e 's:src/narray.h:narray.h:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ for unit in test/*; do
+ ${RUBY} -Ilib ${unit} || die "test ${unit} failed"
+ done
+}
diff --git a/dev-ruby/narray/narray-0.6.1.2.ebuild b/dev-ruby/narray/narray-0.6.1.2.ebuild
deleted file mode 100644
index 8972cc9b257f..000000000000
--- a/dev-ruby/narray/narray-0.6.1.2.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="ChangeLog README.md README.ja.md SPEC.en.txt SPEC.ja.txt"
-
-RUBY_FAKEGEM_VERSION="${PV/_p/.}"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Numerical N-dimensional Array class"
-HOMEPAGE="http://www.ir.isas.ac.jp/~masa/ruby/index-e.html"
-SRC_URI="https://github.com/masa16/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="amd64 hppa ~mips ppc ~ppc64 x86"
-
-IUSE=""
-
-all_ruby_prepare() {
- # the tests aren't really written to be a testsuite, so the
- # failure cases will literally fail; ignore all of those and
- # instead expect that the rest won't fail.
- sed -i -e '/[fF]ollowing will fail/,$ s:^:#:' \
- -e '/next will fail/,$ s:^:#:' \
- test/*.rb || die "sed failed"
-}
-
-each_ruby_configure() {
- ${RUBY} extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake V=1 CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}"
- cp -l ${PN}$(get_modname) ${PN}.h ${PN}_config.h lib/ || die "copy of ${PN}$(get_modname) failed"
-}
-
-each_ruby_test() {
- for unit in test/*; do
- ${RUBY} -Ilib ${unit} || die "test ${unit} failed"
- done
-}
diff --git a/dev-ruby/naught/metadata.xml b/dev-ruby/naught/metadata.xml
index 84250ba2ce52..de8c94724523 100644
--- a/dev-ruby/naught/metadata.xml
+++ b/dev-ruby/naught/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/naught/naught-1.1.0-r1.ebuild b/dev-ruby/naught/naught-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..38c82ed74117
--- /dev/null
+++ b/dev-ruby/naught/naught-1.1.0-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.markdown"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A toolkit for building Null Objects in Ruby"
+HOMEPAGE="https://github.com/avdi/naught"
+
+LICENSE="MIT"
+SLOT="5"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/,/^end/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/naught/naught-1.1.0.ebuild b/dev-ruby/naught/naught-1.1.0.ebuild
deleted file mode 100644
index 1e684e63188f..000000000000
--- a/dev-ruby/naught/naught-1.1.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A toolkit for building Null Objects in Ruby"
-HOMEPAGE="https://github.com/avdi/naught"
-
-LICENSE="MIT"
-SLOT="5"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/^end/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/necromancer/Manifest b/dev-ruby/necromancer/Manifest
index d22fab9a51d7..ee9c8917db5c 100644
--- a/dev-ruby/necromancer/Manifest
+++ b/dev-ruby/necromancer/Manifest
@@ -1 +1 @@
-DIST necromancer-0.5.0.gem 19968 BLAKE2B c9cce66c913443ee3b74f603e72f05347de052416499aed65b3b06f4062497d0dbe6a0b8a50cc853096878acf524d0125ca9f76770f7fee122df6a2fc6bd6a3b SHA512 582f566eec1bbf418d4466ba334e20a28b4e44c53ecdb41b62637e58b1a9337faf7af9c8af6a32ab9e49241ec1f5fde5f54d27d227e196478580c1c814e7c0ce
+DIST necromancer-0.7.0.tar.gz 22784 BLAKE2B b895677d0293adabd9c30d44c33131c69b9b30c24deca41d257c75d586cf44e34d68a090c8618a3040622be93fca3c4e637bb7510ff5db586c0392c47ee4e389 SHA512 873284964e55a0be0265675860b22345f7d46d8b49ccebb5cbe7a2103bfcb639443c3ad3af5d6d6f07d1bb2bc16dd945dc8c0a39b803640e866b82317d5f67b9
diff --git a/dev-ruby/necromancer/metadata.xml b/dev-ruby/necromancer/metadata.xml
index 6049d3460002..de958f18a220 100644
--- a/dev-ruby/necromancer/metadata.xml
+++ b/dev-ruby/necromancer/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/necromancer/necromancer-0.5.0.ebuild b/dev-ruby/necromancer/necromancer-0.5.0.ebuild
deleted file mode 100644
index 2bf99910c6c2..000000000000
--- a/dev-ruby/necromancer/necromancer-0.5.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Conversion from one object type to another with a bit of black magic"
-HOMEPAGE="https://github.com/piotrmurach/necromancer"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- echo '-rspec_helper' > .rspec || die
-}
diff --git a/dev-ruby/necromancer/necromancer-0.7.0-r1.ebuild b/dev-ruby/necromancer/necromancer-0.7.0-r1.ebuild
new file mode 100644
index 000000000000..9705fe252424
--- /dev/null
+++ b/dev-ruby/necromancer/necromancer-0.7.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="necromancer.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Conversion from one object type to another with a bit of black magic"
+HOMEPAGE="https://github.com/piotrmurach/necromancer"
+SRC_URI="https://github.com/piotrmurach/necromancer/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/nenv/metadata.xml b/dev-ruby/nenv/metadata.xml
index fa716ece13f8..a851b70d197b 100644
--- a/dev-ruby/nenv/metadata.xml
+++ b/dev-ruby/nenv/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/nenv/nenv-0.3.0-r1.ebuild b/dev-ruby/nenv/nenv-0.3.0-r1.ebuild
new file mode 100644
index 000000000000..9d193bedb683
--- /dev/null
+++ b/dev-ruby/nenv/nenv-0.3.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="nenv.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Convenient wrapper for Ruby's ENV"
+HOMEPAGE="https://github.com/e2/nenv"
+SRC_URI="https://github.com/e2/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e "/[Cc]overalls/d" spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/nenv/nenv-0.3.0.ebuild b/dev-ruby/nenv/nenv-0.3.0.ebuild
deleted file mode 100644
index 702d96607518..000000000000
--- a/dev-ruby/nenv/nenv-0.3.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-inherit ruby-fakegem
-
-DESCRIPTION="Convenient wrapper for Ruby's ENV"
-HOMEPAGE="https://github.com/e2/nenv"
-SRC_URI="https://github.com/e2/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e "/[Cc]overalls/d" spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/neovim-ruby-client/Manifest b/dev-ruby/neovim-ruby-client/Manifest
index 71c58d99dbd6..027ace499b09 100644
--- a/dev-ruby/neovim-ruby-client/Manifest
+++ b/dev-ruby/neovim-ruby-client/Manifest
@@ -1,2 +1 @@
-DIST neovim-0.7.1.gem 40960 BLAKE2B 9f23c0f754c696b28679c839132c8fe4d9d7095249966187c1d378cd89b5468ae98349e7ef044a9ae3749443a0cb97206f1fed3617192afea31680a86b3124b7 SHA512 075de15135ab11f268211a2db90766d1de9e7581d945513c0fe2a1abb4f9dcba1f5814b62e91f2a615015eeb1dbd54ffa0f4edd0acd71ea635046963074ad32a
-DIST neovim-0.8.1.gem 43520 BLAKE2B 0b7401c1dfb1675725dbf50c45626d88b1a5932ccd4836e8a33974b8e71e44bafa10bf1a43e51b7f42e2702facec776cbcef3093c5cf86e500a5e94be9486b08 SHA512 2d56cd56c0817491622f9a4beee4cdc9244e9fd6a4a6b78d69b51f160b1a24395730f153800279b7fdebc99d61c55e3b8944d4b16c1028cfbf5d8c95308d0f53
+DIST neovim-0.9.1.gem 45568 BLAKE2B 1d04ebae7ac708ed8d170ae0652e6b2d5e008efe82c4239479fefac10a23ce3f258d0b501ab72c529c158ad5129324259037804554dd7de26998c1dfbfe9d187 SHA512 93ad413b745ff337036cfe82581575f2f3392212b020323545c8bbd63ecf0d4bb119316a3adce036b4e7d1a5b563501c27934b9eb32b854088920a511115d66d
diff --git a/dev-ruby/neovim-ruby-client/metadata.xml b/dev-ruby/neovim-ruby-client/metadata.xml
index 60964a1230fe..e05710b6f148 100644
--- a/dev-ruby/neovim-ruby-client/metadata.xml
+++ b/dev-ruby/neovim-ruby-client/metadata.xml
@@ -1,15 +1,11 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>tranquility@gentoo.org</email>
- <name>Ole Reifschneider</name>
- </maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">alexgenco/neovim-ruby</remote-id>
+ <remote-id type="github">neovim/neovim-ruby</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/neovim-ruby-client/neovim-ruby-client-0.7.1.ebuild b/dev-ruby/neovim-ruby-client/neovim-ruby-client-0.7.1.ebuild
deleted file mode 100644
index 890ccc5b5580..000000000000
--- a/dev-ruby/neovim-ruby-client/neovim-ruby-client-0.7.1.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_NAME="neovim"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby bindings for Neovim"
-HOMEPAGE="https://github.com/alexgenco/neovim-ruby"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-
-ruby_add_rdepend ">=dev-ruby/msgpack-1.0.0"
-ruby_add_rdepend ">=dev-ruby/multi_json-1.0.0"
diff --git a/dev-ruby/neovim-ruby-client/neovim-ruby-client-0.8.1.ebuild b/dev-ruby/neovim-ruby-client/neovim-ruby-client-0.8.1.ebuild
deleted file mode 100644
index da03866f0f56..000000000000
--- a/dev-ruby/neovim-ruby-client/neovim-ruby-client-0.8.1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME="neovim"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby bindings for Neovim"
-HOMEPAGE="https://github.com/alexgenco/neovim-ruby"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-
-ruby_add_rdepend "
- >=dev-ruby/msgpack-1.1:0
- =dev-ruby/multi_json-1*
-"
-
-all_ruby_prepare() {
- sed -i -e '/\(bundler\|pry\)/ s:^:#:' spec/helper.rb || die
-
- # Avoid tests that result in a unix socket path that is too long
- sed -i -e '/\(establishes an RPC connection\|sets appropriate client info\)/askip "socket path length"' spec/neovim_spec.rb || die
-}
diff --git a/dev-ruby/neovim-ruby-client/neovim-ruby-client-0.9.1.ebuild b/dev-ruby/neovim-ruby-client/neovim-ruby-client-0.9.1.ebuild
new file mode 100644
index 000000000000..c2e80576a5c7
--- /dev/null
+++ b/dev-ruby/neovim-ruby-client/neovim-ruby-client-0.9.1.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_NAME="neovim"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINDIR="exe"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby bindings for Neovim"
+HOMEPAGE="https://github.com/neovim/neovim-ruby"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+
+RDEPEND+=" app-editors/neovim"
+DEPEND+=" test? ( app-editors/neovim )"
+
+ruby_add_rdepend "
+ >=dev-ruby/msgpack-1.1:0
+ =dev-ruby/multi_json-1*
+"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|pry\)/ s:^:#:' spec/helper.rb || die
+
+ # Avoid tests that result in a unix socket path that is too long
+ sed -e '/\(establishes an RPC connection\|sets appropriate client info\)/askip "socket path length"' \
+ -i spec/neovim_spec.rb || die
+}
diff --git a/dev-ruby/net-ftp/Manifest b/dev-ruby/net-ftp/Manifest
new file mode 100644
index 000000000000..ca4d33dab28d
--- /dev/null
+++ b/dev-ruby/net-ftp/Manifest
@@ -0,0 +1,4 @@
+DIST net-ftp-0.2.0.tar.gz 29845 BLAKE2B 710ad47552242dfc30fd971cff683d67e0e1cda73086e3504b0e45ab650ad4666c19c46d221bb5b64fab2d507a9063c64fc8da17de9221de4fd487acb0cb3514 SHA512 a6b2f30bde4c39568690db7f57e917e0fab046d456acfe68eb22a0ee81ad71b4be4a6c7752dc556bb2481f3e0fe5fc81193e194e2b5056087abce633e0d2f7e9
+DIST net-ftp-0.3.0.tar.gz 29793 BLAKE2B 392182d7942b4c983816be1933a5b1ce0e35fb4d55adbd768e3b3306f680a20f0fcc43ef76cad6f0dcca49ac20d6539ce237cccedbe7290dee4b230c06042d10 SHA512 b6fcfd013e91c31752e44179a0cc2a115e261fcba12a0656654d52cdd216ec5d0b115108cba15b795c106d257bb34277c6dbed9153362a061510efddc7bc2494
+DIST net-ftp-0.3.3.tar.gz 29810 BLAKE2B 8677e55b4159ea072d90b1c12f992bbe66e8164bc866e80c0a216024c004a5a6971ae5a39c5eba5de35f9a85bab4b53da962ccb40e1049bf4df24377fb1ee874 SHA512 ace1a56de83f1369842e62a5164367281e7d10072a684ab0ad37591429623dd75de6ab672aa893651705ac62f74c12404b124a982b920142d3a5ff1296c24ec6
+DIST net-ftp-0.3.4.tar.gz 28020 BLAKE2B 2962f61c17b4314a044d3a80c62693948d1241f783b6f948a056ca34b8f076c8357dc150f04e09a245236b402c6e711e02f6a3717b60aa816a6ca419cfa1ed08 SHA512 1f289b8b0481abf66bbe000cfdc08d8f32559d02ccee186159696e1b563aecc1178d975946d969064bdb8abf8f76d50b5d5bde0423e12bf2ba0b757796c9b046
diff --git a/dev-ruby/net-ftp/metadata.xml b/dev-ruby/net-ftp/metadata.xml
new file mode 100644
index 000000000000..0d14d070cf6a
--- /dev/null
+++ b/dev-ruby/net-ftp/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/net-ftp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/net-ftp/net-ftp-0.2.0.ebuild b/dev-ruby/net-ftp/net-ftp-0.2.0.ebuild
new file mode 100644
index 000000000000..87b1ff8c5865
--- /dev/null
+++ b/dev-ruby/net-ftp/net-ftp-0.2.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="net-ftp.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Support for the File Transfer Protocol"
+HOMEPAGE="https://github.com/ruby/net-ftp"
+SRC_URI="https://github.com/ruby/net-ftp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/net-protocol
+ dev-ruby/time
+"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/net-ftp/net-ftp-0.3.0.ebuild b/dev-ruby/net-ftp/net-ftp-0.3.0.ebuild
new file mode 100644
index 000000000000..74b0e783b4dc
--- /dev/null
+++ b/dev-ruby/net-ftp/net-ftp-0.3.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="net-ftp.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Support for the File Transfer Protocol"
+HOMEPAGE="https://github.com/ruby/net-ftp"
+SRC_URI="https://github.com/ruby/net-ftp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/net-protocol
+ dev-ruby/time
+"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/net-ftp/net-ftp-0.3.3.ebuild b/dev-ruby/net-ftp/net-ftp-0.3.3.ebuild
new file mode 100644
index 000000000000..cf7130d30ce1
--- /dev/null
+++ b/dev-ruby/net-ftp/net-ftp-0.3.3.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="net-ftp.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Support for the File Transfer Protocol"
+HOMEPAGE="https://github.com/ruby/net-ftp"
+SRC_URI="https://github.com/ruby/net-ftp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/net-protocol
+ dev-ruby/time
+"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/net-ftp/net-ftp-0.3.4.ebuild b/dev-ruby/net-ftp/net-ftp-0.3.4.ebuild
new file mode 100644
index 000000000000..506af331b8a7
--- /dev/null
+++ b/dev-ruby/net-ftp/net-ftp-0.3.4.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="net-ftp.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Support for the File Transfer Protocol"
+HOMEPAGE="https://github.com/ruby/net-ftp"
+SRC_URI="https://github.com/ruby/net-ftp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+ruby_add_rdepend "
+ dev-ruby/net-protocol
+ dev-ruby/time
+"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/net-http-digest_auth/metadata.xml b/dev-ruby/net-http-digest_auth/metadata.xml
index 5dda55a7dd19..ad99b20d1bca 100644
--- a/dev-ruby/net-http-digest_auth/metadata.xml
+++ b/dev-ruby/net-http-digest_auth/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/net-http-digest_auth/net-http-digest_auth-1.4.1-r2.ebuild b/dev-ruby/net-http-digest_auth/net-http-digest_auth-1.4.1-r2.ebuild
new file mode 100644
index 000000000000..5fa9bed2ea02
--- /dev/null
+++ b/dev-ruby/net-http-digest_auth/net-http-digest_auth-1.4.1-r2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An implementation of RFC 2617 - Digest Access Authentication"
+HOMEPAGE="https://github.com/drbrain/net-http-digest_auth"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/net-http-digest_auth/net-http-digest_auth-1.4.1.ebuild b/dev-ruby/net-http-digest_auth/net-http-digest_auth-1.4.1.ebuild
deleted file mode 100644
index 2337b056f830..000000000000
--- a/dev-ruby/net-http-digest_auth/net-http-digest_auth-1.4.1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An implementation of RFC 2617 - Digest Access Authentication"
-HOMEPAGE="https://github.com/drbrain/net-http-digest_auth"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/net-http-persistent/Manifest b/dev-ruby/net-http-persistent/Manifest
index 35a42c9ebb1d..f4c1d3d39969 100644
--- a/dev-ruby/net-http-persistent/Manifest
+++ b/dev-ruby/net-http-persistent/Manifest
@@ -1,3 +1 @@
-DIST net-http-persistent-3.0.0.gem 30208 BLAKE2B 2bbd87d66e65081c76bc9cddaeb38f3ffd8a92b5b64f7717f77c7a927e2032fa732c2e82e220a75a63ddc10dfaa6a0f24e4fa7e0964e2ebd3d0729127f1fb452 SHA512 a601d3abde43b196406e3cdd6b704796ed70db67dfb67c9b510e0164ce7355cc925cac37fbf4c5889f41b069890ba2e2c15440fb40294ed21891fd08d9f87894
-DIST net-http-persistent-3.0.1.gem 26112 BLAKE2B 987e7c690d1e08e6be490aaecbd42ec8dc95fe5d2dc3609313b5be301453e4a30a66486334419e2ce9af9bd08158c3b78600cd8364fc6f489529ca1657436ee3 SHA512 33f23c6d23a8d2e44c0268e720200e4e19ba50bbfb9268a3c7af653fbfff62e606f1d10b2ff35ea345f4f7c0456892a901753257da87e9a2bb329edd36030761
-DIST net-http-persistent-3.1.0.gem 31744 BLAKE2B fdd9c36ab5216c1cd1fe358207a689276e109845ac374ea16011469b6cb2b165115e78e701cce98c280e7f878c23d8016e75cac4508c7e579209012671b64101 SHA512 65b5afc4ad0729ec14b642e0e36363cecfff3dc25b26308d632866e93fed3eccfb83ce85da78f631553c6a1fe3ee834fcbc9d3681c85db6387463abbc30e60fa
+DIST net-http-persistent-4.0.2.tar.gz 23779 BLAKE2B 7ea0140ed9baf97f05f13816ddd836cc874a1861a0ca4d84d98fd8d5665163e96d74c6eef602088a12577addda8fad5c2194c7f679c59917255979c5618c1c8d SHA512 4ef028245092a15f5e017ed6f2723cb82a2ed1fdbcb55217e5807068a40601151c29f929c95ffb5bdaae12fe34dca6658e674e282be42e7b0909c0ff2ea984fd
diff --git a/dev-ruby/net-http-persistent/metadata.xml b/dev-ruby/net-http-persistent/metadata.xml
index f46d15fc98a1..73a341a35cca 100644
--- a/dev-ruby/net-http-persistent/metadata.xml
+++ b/dev-ruby/net-http-persistent/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/net-http-persistent/net-http-persistent-3.0.0.ebuild b/dev-ruby/net-http-persistent/net-http-persistent-3.0.0.ebuild
deleted file mode 100644
index d4c2f3f92f4a..000000000000
--- a/dev-ruby/net-http-persistent/net-http-persistent-3.0.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Manages persistent connections using Net::HTTP plus a speed fix for Ruby 1.8"
-HOMEPAGE="https://github.com/drbrain/net-http-persistent"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="amd64 ~arm ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="doc test"
-
-ruby_add_rdepend ">=dev-ruby/connection_pool-2.2:0"
-
-ruby_add_bdepend "
- test? ( dev-ruby/hoe dev-ruby/minitest )"
-
-all_ruby_prepare() {
- # avoid test with implicit dependency on net-http-pipeline which
- # fails and is not tested upstream
- sed -i -e '/net-http-pipeline not installed/ s/unless.*$//' test/test_net_http_persistent.rb || die
-}
diff --git a/dev-ruby/net-http-persistent/net-http-persistent-3.0.1.ebuild b/dev-ruby/net-http-persistent/net-http-persistent-3.0.1.ebuild
deleted file mode 100644
index b1b172d1e070..000000000000
--- a/dev-ruby/net-http-persistent/net-http-persistent-3.0.1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Manages persistent connections using Net::HTTP plus a speed fix for Ruby 1.8"
-HOMEPAGE="https://github.com/drbrain/net-http-persistent"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="doc test"
-
-ruby_add_rdepend ">=dev-ruby/connection_pool-2.2:0"
-
-ruby_add_bdepend "
- test? ( dev-ruby/hoe dev-ruby/minitest )"
-
-all_ruby_prepare() {
- # avoid test with implicit dependency on net-http-pipeline which
- # fails and is not tested upstream
- sed -i -e '/net-http-pipeline not installed/ s/unless.*$//' test/test_net_http_persistent.rb || die
-}
diff --git a/dev-ruby/net-http-persistent/net-http-persistent-3.1.0.ebuild b/dev-ruby/net-http-persistent/net-http-persistent-3.1.0.ebuild
deleted file mode 100644
index b1b172d1e070..000000000000
--- a/dev-ruby/net-http-persistent/net-http-persistent-3.1.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Manages persistent connections using Net::HTTP plus a speed fix for Ruby 1.8"
-HOMEPAGE="https://github.com/drbrain/net-http-persistent"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="doc test"
-
-ruby_add_rdepend ">=dev-ruby/connection_pool-2.2:0"
-
-ruby_add_bdepend "
- test? ( dev-ruby/hoe dev-ruby/minitest )"
-
-all_ruby_prepare() {
- # avoid test with implicit dependency on net-http-pipeline which
- # fails and is not tested upstream
- sed -i -e '/net-http-pipeline not installed/ s/unless.*$//' test/test_net_http_persistent.rb || die
-}
diff --git a/dev-ruby/net-http-persistent/net-http-persistent-4.0.2.ebuild b/dev-ruby/net-http-persistent/net-http-persistent-4.0.2.ebuild
new file mode 100644
index 000000000000..a6a8499e31f1
--- /dev/null
+++ b/dev-ruby/net-http-persistent/net-http-persistent-4.0.2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Manages persistent connections using Net::HTTP plus a speed fix for Ruby 1.8"
+HOMEPAGE="https://github.com/drbrain/net-http-persistent"
+SRC_URI="https://github.com/drbrain/net-http-persistent/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="doc test"
+
+ruby_add_rdepend ">=dev-ruby/connection_pool-2.2:0"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ # Not relevant for us (we're just using rake for the tests)
+ sed -i -e '/require "rake\/manifest"/,/^end/ s:^:#:' Rakefile || die
+
+ # avoid test with implicit dependency on net-http-pipeline which
+ # fails and is not tested upstream
+ sed -i -e '/net-http-pipeline not installed/ s/unless.*$//' test/test_net_http_persistent.rb || die
+}
diff --git a/dev-ruby/net-http-pipeline/metadata.xml b/dev-ruby/net-http-pipeline/metadata.xml
index 10bd8f038881..f97031782aee 100644
--- a/dev-ruby/net-http-pipeline/metadata.xml
+++ b/dev-ruby/net-http-pipeline/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/net-http-pipeline/net-http-pipeline-1.0.1-r1.ebuild b/dev-ruby/net-http-pipeline/net-http-pipeline-1.0.1-r1.ebuild
new file mode 100644
index 000000000000..97042d4f6d06
--- /dev/null
+++ b/dev-ruby/net-http-pipeline/net-http-pipeline-1.0.1-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An HTTP/1.1 pipelining implementation atop Net::HTTP"
+HOMEPAGE="https://docs.seattlerb.org/net-http-pipeline/"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_bdepend "
+ test? ( dev-ruby/minitest )
+"
+
+all_ruby_prepare() {
+ eapply -p0 "${FILESDIR}/${PN}-accept-encoding.patch"
+
+ sed -e 's/MiniTest::Unit::TestCase/Minitest::Test/' \
+ -i test/test_net_http_pipeline.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/net-http-pipeline/net-http-pipeline-1.0.1.ebuild b/dev-ruby/net-http-pipeline/net-http-pipeline-1.0.1.ebuild
deleted file mode 100644
index 0f4ded070376..000000000000
--- a/dev-ruby/net-http-pipeline/net-http-pipeline-1.0.1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An HTTP/1.1 pipelining implementation atop Net::HTTP"
-HOMEPAGE="http://docs.seattlerb.org/net-http-pipeline/"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-RUBY_PATCHES=( ${PN}-accept-encoding.patch )
-
-ruby_add_bdepend "
- test? ( dev-ruby/minitest )
-"
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/net-imap/Manifest b/dev-ruby/net-imap/Manifest
new file mode 100644
index 000000000000..a6f87a9061e8
--- /dev/null
+++ b/dev-ruby/net-imap/Manifest
@@ -0,0 +1,2 @@
+DIST net-imap-0.3.7.tar.gz 138906 BLAKE2B d6bc143d3947ec8a97cd7e0628e05447574f83296c78275dc7414d9cc744e820bcb6b8917de9215152be8b6141f69d4d6a1ea9e2265791eb4989dcdcce09b10c SHA512 6917d3bd980bbca86938232a59104dd924ffe7ec2f095e8c997165c726ada8020c821b26a0e8748433df49cf8802c4a434c805bd27f415d1f2644ddea1a94db8
+DIST net-imap-0.4.10.tar.gz 241688 BLAKE2B 459581055564669e99f40436b454a1a072de57fb64fc81ee55bee602ca6e3ed97c81cda1975d462b5d583264adad72803cfe801319ba8724fd8ae229cfb7ec68 SHA512 0f05588dc80cef7f121cbb40e2e9ddd6cd44e5ba96ca8451ea32339275d394f1233bc6a8bc30aa1de6852f49a469e0ee64a3821d08e12199e4af51fca4e79ccf
diff --git a/dev-ruby/net-imap/metadata.xml b/dev-ruby/net-imap/metadata.xml
new file mode 100644
index 000000000000..46975a288425
--- /dev/null
+++ b/dev-ruby/net-imap/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/net-imap</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/net-imap/net-imap-0.3.7.ebuild b/dev-ruby/net-imap/net-imap-0.3.7.ebuild
new file mode 100644
index 000000000000..c4f12ebdde0c
--- /dev/null
+++ b/dev-ruby/net-imap/net-imap-0.3.7.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="net-imap.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby client api for Internet Message Access Protocol"
+HOMEPAGE="https://github.com/ruby/net-imap"
+SRC_URI="https://github.com/ruby/net-imap/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/date
+ dev-ruby/net-protocol
+"
+
+ruby_add_bdepend "test? ( dev-ruby/digest dev-ruby/strscan )"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/net-imap/net-imap-0.4.10.ebuild b/dev-ruby/net-imap/net-imap-0.4.10.ebuild
new file mode 100644
index 000000000000..78de90b9b8ae
--- /dev/null
+++ b/dev-ruby/net-imap/net-imap-0.4.10.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="net-imap.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby client api for Internet Message Access Protocol"
+HOMEPAGE="https://github.com/ruby/net-imap"
+SRC_URI="https://github.com/ruby/net-imap/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_rdepend "
+ dev-ruby/date
+ dev-ruby/net-protocol
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/digest
+ dev-ruby/strscan
+ dev-ruby/test-unit
+ dev-ruby/test-unit-ruby-core
+)"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/net-pop/Manifest b/dev-ruby/net-pop/Manifest
new file mode 100644
index 000000000000..f9d3cc684256
--- /dev/null
+++ b/dev-ruby/net-pop/Manifest
@@ -0,0 +1 @@
+DIST net-pop-0.1.2.tar.gz 21598 BLAKE2B 6d5082f135804a72f2b09f9107601f0dd6b42f33a9d46cd36eec1759b3376f82564e305596cfd519ae64a8c820fcbf57ab9ff29cc16ab9298b9ce069a1405b60 SHA512 5f7e78cb5499f1049c93732f88857d0b2bf9e864bcfc897beddd3fc86883204ff6c153ae9fc24715b1625fec5e2ec673e913a1495e43ec0e077e52d88aaf3448
diff --git a/dev-ruby/net-pop/metadata.xml b/dev-ruby/net-pop/metadata.xml
new file mode 100644
index 000000000000..ae944adb3a9c
--- /dev/null
+++ b/dev-ruby/net-pop/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/net-pop</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/net-pop/net-pop-0.1.2.ebuild b/dev-ruby/net-pop/net-pop-0.1.2.ebuild
new file mode 100644
index 000000000000..65f27a0463d9
--- /dev/null
+++ b/dev-ruby/net-pop/net-pop-0.1.2.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="net-pop.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby client library for POP3"
+HOMEPAGE="https://github.com/ruby/net-pop"
+SRC_URI="https://github.com/ruby/net-pop/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/net-protocol
+"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/net-protocol/Manifest b/dev-ruby/net-protocol/Manifest
new file mode 100644
index 000000000000..61cf20c2a202
--- /dev/null
+++ b/dev-ruby/net-protocol/Manifest
@@ -0,0 +1,2 @@
+DIST net-protocol-0.2.1.tar.gz 17713 BLAKE2B dc5abe229e6900a41af786f6e617c27a8fec2fc720afaf95ae72a1614017c43617eb207a57a6460dd6b589c392ec6cb65ff4a3b6e3f09e04f765295f5d41a3ff SHA512 e3990b64826c681efac2bcb5cbe4f120e730ddac8e1a62690e575de5037c7a9ddb80bf6cc051c98319c37013fef7f4f331adbcd51e96f32ecf4c3804fcd1f7c5
+DIST net-protocol-0.2.2.tar.gz 7863 BLAKE2B fe3fb6657d0efc9e9ca0d2bde4d32098d221c9a36c0d7f2160d39fe49d080ae4bb399c32709165684c8942bb1ea2fe60aa7144e161ad0a7962fd932dc5c20e32 SHA512 15698d9a88bca73edaa4d0db6ea9fabf2e09e7bfc6d08c2f03e3e1f0afe4f07c642af0d1272795c0907cacec0fc4b9a7844c5cb803f19082cdec420668a05aa8
diff --git a/dev-ruby/net-protocol/metadata.xml b/dev-ruby/net-protocol/metadata.xml
new file mode 100644
index 000000000000..ef1fa334805f
--- /dev/null
+++ b/dev-ruby/net-protocol/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/net-protocol</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/net-protocol/net-protocol-0.2.1.ebuild b/dev-ruby/net-protocol/net-protocol-0.2.1.ebuild
new file mode 100644
index 000000000000..092435ee0737
--- /dev/null
+++ b/dev-ruby/net-protocol/net-protocol-0.2.1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="net-protocol.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The abstruct interface for net-* client"
+HOMEPAGE="https://github.com/ruby/net-protocol"
+SRC_URI="https://github.com/ruby/net-protocol/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/timeout
+"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/net-protocol/net-protocol-0.2.2.ebuild b/dev-ruby/net-protocol/net-protocol-0.2.2.ebuild
new file mode 100644
index 000000000000..0bd59921fc38
--- /dev/null
+++ b/dev-ruby/net-protocol/net-protocol-0.2.2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="net-protocol.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The abstruct interface for net-* client"
+HOMEPAGE="https://github.com/ruby/net-protocol"
+SRC_URI="https://github.com/ruby/net-protocol/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/timeout
+"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/net-scp/Manifest b/dev-ruby/net-scp/Manifest
index 790a5263e9e4..c612a8faf0de 100644
--- a/dev-ruby/net-scp/Manifest
+++ b/dev-ruby/net-scp/Manifest
@@ -1,2 +1 @@
-DIST net-scp-1.2.1.gem 32768 BLAKE2B 67abf0b66aa6e8f28bdfa314a20f594eedafc5aeaf5d0ae8884cb7e27203699a791623968da98aaebda1630d47bf5859cc3e38875fe17dc8c7ce7926b50848a5 SHA512 64645a4517d6e408e3acfdb24576c8ded3b6ff981035ca10a2e081f9e3ab093f97b4848da4acca03ade364483766677e31296d09a31db4c81eb40123fc966829
-DIST net-scp-2.0.0.tar.gz 27835 BLAKE2B 2f5c9504ade26226a31fd766869f4deef3b344e99e71f780f184361efc75cad880c0dd266779d7f2550f176a86e89740edf27943c9ed81691378e5c3bf3241f0 SHA512 cd3470dfb2afba91911c429828d158e97e4feb17e211807abb05ab251622dc066e392521de250a8f2d4cf9d53c79598d636ef70c559b6aca7e1e7aa59ea3b36e
+DIST net-scp-4.0.0.tar.gz 27962 BLAKE2B 0531fccad790e5466da9bf5c4cdcfa6416d84e759b096fcaabebc6403293be8ad8f15546126fb51bc76929d871b6ec067302dd88859c09e9c177bbbb4ecd6ae3 SHA512 9691f707c83d2b24954670e73b306f1262437d9c10561f4ceaa4979e3b06a237d97cba9f517f73931cd44a494fd04306ded077284927dcab313ce669037a1cdf
diff --git a/dev-ruby/net-scp/files/net-scp-1.2.1-fix-common.path b/dev-ruby/net-scp/files/net-scp-1.2.1-fix-common.path
deleted file mode 100644
index ee262d238cbf..000000000000
--- a/dev-ruby/net-scp/files/net-scp-1.2.1-fix-common.path
+++ /dev/null
@@ -1,28 +0,0 @@
---- test/common.rb 2018-01-21 16:23:07.384173147 +0100
-+++ test/common.rb 2018-01-21 16:20:34.084172782 +0100
-@@ -1,11 +1,11 @@
- require 'test/unit'
- require 'mocha/setup'
-
--begin
-- gem 'net-ssh', ">= 2.0.0"
-- require 'net/ssh'
--rescue LoadError
-- $LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../../net-ssh/lib"
-+#begin
-+# #gem 'net-ssh', ">= 2.0.0"
-+# require 'net/ssh'
-+#rescue LoadError
-+# $LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../../net-ssh/lib"
-
- begin
- require 'net/ssh'
-@@ -14,7 +14,7 @@
- rescue LoadError => e
- abort "could not load net/ssh v2 (#{e.inspect})"
- end
--end
-+#end
-
- $LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../lib"
-
diff --git a/dev-ruby/net-scp/files/net-scp-1.2.1-fix-download_test.patch b/dev-ruby/net-scp/files/net-scp-1.2.1-fix-download_test.patch
deleted file mode 100644
index a138fcdb5573..000000000000
--- a/dev-ruby/net-scp/files/net-scp-1.2.1-fix-download_test.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- test/test_download.rb 2018-01-22 02:08:00.000013728 +0100
-+++ test/test_download.rb.1 2018-01-22 02:11:49.820014276 +0100
-@@ -70,12 +70,12 @@
- end
-
- error = nil
-- assert_scripted do
-- begin
-- scp.download!("/path/to/remote.txt")
-- rescue
-- error = $!
-- end
-+ Net::SSH::Test::Extensions::IO.with_test_extension do
-+ begin
-+ scp.download!("/path/to/remote.txt")
-+ rescue
-+ error = $!
-+ end
- end
- assert_equal Net::SCP::Error, error.class
- assert_equal "SCP did not finish successfully (1): File not found: /path/to/remote.txt\n", error.message
diff --git a/dev-ruby/net-scp/files/net-scp-1.2.1-fix-download_test_2.patch b/dev-ruby/net-scp/files/net-scp-1.2.1-fix-download_test_2.patch
deleted file mode 100644
index 55a8e5f16bcd..000000000000
--- a/dev-ruby/net-scp/files/net-scp-1.2.1-fix-download_test_2.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- test/test_download.rb 2018-01-22 02:26:56.440016436 +0100
-+++ test/test_download.rb 2018-01-22 02:32:46.076017270 +0100
-@@ -116,7 +116,9 @@
-
- def test_download_io_with_recursive_should_raise_error
- expect_scp_session "-f -r /path/to/remote.txt"
-- assert_raises(Net::SCP::Error) { scp.download!("/path/to/remote.txt", StringIO.new, :recursive => true) }
-+ Net::SSH::Test::Extensions::IO.with_test_extension do
-+ assert_raises(Net::SCP::Error) { scp.download!("/path/to/remote.txt", StringIO.new, :recursive => true) }
-+ end
- end
-
- def test_download_io_with_preserve_should_ignore_preserve
-@@ -154,8 +156,9 @@
- channel.sends_ok
- channel.gets_data "D0755 0 remote\n"
- end
--
-- assert_raises(Net::SCP::Error) { scp.download!("/path/to/remote") }
-+ Net::SSH::Test::Extensions::IO.with_test_extension do
-+ assert_raises(Net::SCP::Error) { scp.download!("/path/to/remote") }
-+ end
- end
-
- def test_download_should_raise_error_if_gets_not_ok
diff --git a/dev-ruby/net-scp/files/net-scp-1.2.1-fix-download_test_3.patch b/dev-ruby/net-scp/files/net-scp-1.2.1-fix-download_test_3.patch
deleted file mode 100644
index 12df02c1f00e..000000000000
--- a/dev-ruby/net-scp/files/net-scp-1.2.1-fix-download_test_3.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- test/test_download.rb 2018-01-22 02:35:45.200017696 +0100
-+++ test/test_download.rb.1 2018-01-22 02:38:40.000018113 +0100
-@@ -217,8 +217,10 @@
- channel.gets_data "E\n"
- channel.sends_ok
- end
--
-- scp.download!("/path/to/remote", "/path/to/local", :recursive => true, :ssh => { :verbose => :debug })
-+
-+ Net::SSH::Test::Extensions::IO.with_test_extension do
-+ scp.download!("/path/to/remote", "/path/to/local", :recursive => true, :ssh => { :verbose => :debug })
-+ end
- assert_equal "a" * 1234, file.io.string
- end
-
diff --git a/dev-ruby/net-scp/files/net-scp-1.2.1-fix-upload_tests.patch b/dev-ruby/net-scp/files/net-scp-1.2.1-fix-upload_tests.patch
deleted file mode 100644
index 73c34359afc2..000000000000
--- a/dev-ruby/net-scp/files/net-scp-1.2.1-fix-upload_tests.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- test/test_upload.rb 2018-01-22 08:15:30.996002204 +0100
-+++ test/test_upload.rb.1 2018-01-22 08:18:09.328002581 +0100
-@@ -155,8 +155,9 @@
- expect_scp_session("-t /path/to/remote") do |channel|
- channel.gets_ok
- end
--
-- assert_raises(Net::SCP::Error) { scp.upload!("/path/to/local", "/path/to/remote") }
-+ Net::SSH::Test::Extensions::IO.with_test_extension do
-+ assert_raises(Net::SCP::Error) { scp.upload!("/path/to/local", "/path/to/remote") }
-+ end
- end
-
- def test_upload_empty_directory_should_create_directory_and_finish
diff --git a/dev-ruby/net-scp/files/net-scp-1.2.1-raise-correct-errors-net-ssh-4.0-compat.patch b/dev-ruby/net-scp/files/net-scp-1.2.1-raise-correct-errors-net-ssh-4.0-compat.patch
deleted file mode 100644
index 3431f06b7cff..000000000000
--- a/dev-ruby/net-scp/files/net-scp-1.2.1-raise-correct-errors-net-ssh-4.0-compat.patch
+++ /dev/null
@@ -1,30 +0,0 @@
---- test/test_download.rb 2018-01-22 01:47:38.932010818 +0100
-+++ test/test_download.rb.1 2018-01-22 01:49:14.552011046 +0100
-@@ -205,9 +205,11 @@
- channel.sends_ok
- channel.gets_data "\1"
- end
--
-- e = assert_raises(Net::SCP::Error) { scp.download!("/path/to/remote.txt", "/path/to/local.txt") }
-- assert_equal("\1", e.message)
-+
-+ Net::SSH::Test::Extensions::IO.with_test_extension do
-+ e = assert_raises(Net::SCP::Error) { scp.download!("/path/to/remote.txt", "/path/to/local.txt") }
-+ assert_equal("\1", e.message)
-+ end
- end
-
- def test_download_directory_should_raise_error_if_local_exists_and_is_not_directory
-@@ -223,8 +225,10 @@
- channel.sends_ok
- end
-
-- e = assert_raises(Net::SCP::Error) { scp.download!("/path/to/remote", "/path/to/local", :recursive => true) }
-- assert_match(/exists and is not a directory/, e.message)
-+ Net::SSH::Test::Extensions::IO.with_test_extension do
-+ e = assert_raises(Net::SCP::Error) { scp.download!("/path/to/remote", "/path/to/local", :recursive => true) }
-+ assert_match(/exists and is not a directory/, e.message)
-+ end
- end
-
- def test_download_directory_should_create_directory_and_files_locally
diff --git a/dev-ruby/net-scp/files/net-scp-1.2.1-raise-correct-errors.patch b/dev-ruby/net-scp/files/net-scp-1.2.1-raise-correct-errors.patch
deleted file mode 100644
index a23164ef8185..000000000000
--- a/dev-ruby/net-scp/files/net-scp-1.2.1-raise-correct-errors.patch
+++ /dev/null
@@ -1,80 +0,0 @@
---- README.rdoc
-+++ README.rdoc
-@@ -42,7 +42,7 @@ In a nutshell:
- data = Net::SCP::download!("remote.host.com", "username", "/remote/path")
-
- # use a persistent connection to transfer files
-- Net::SCP.start("remote.host.com", "username", :ssh => { :password => "password" }) do |scp|
-+ Net::SCP.start("remote.host.com", "username", :password => "password") do |scp|
- # upload a file to a remote server
- scp.upload! "/local/path", "/remote/path"
-
---- lib/net/scp.rb
-+++ lib/net/scp.rb
-@@ -395,7 +395,7 @@ module Net
- def await_response_state(channel)
- return if channel[:buffer].available == 0
- c = channel[:buffer].read_byte
-- raise "#{c.chr}#{channel[:buffer].read}" if c != 0
-+ raise Net::SCP::Error, "#{c.chr}#{channel[:buffer].read}" if c != 0
- channel[:next], channel[:state] = nil, channel[:next]
- send("#{channel[:state]}_state", channel)
- end
---- lib/net/scp/download.rb
-+++ lib/net/scp/download.rb
-@@ -129,7 +129,7 @@ module Net; class SCP
- channel[:local] = File.join(channel[:local], directive[:name])
-
- if File.exists?(channel[:local]) && !File.directory?(channel[:local])
-- raise "#{channel[:local]} already exists and is not a directory"
-+ raise Net::SCP::Error, "#{channel[:local]} already exists and is not a directory"
- elsif !File.exists?(channel[:local])
- Dir.mkdir(channel[:local], directive[:mode] | 0700)
- end
-@@ -162,4 +162,4 @@ module Net; class SCP
- end
- end
-
--end; end
-\ No newline at end of file
-+end; end
---- test/test_download.rb
-+++ test/test_download.rb
-@@ -158,6 +158,37 @@ class TestDownload < Net::SCP::TestCase
- assert_raises(Net::SCP::Error) { scp.download!("/path/to/remote") }
- end
-
-+ def test_download_should_raise_error_if_gets_not_ok
-+ prepare_file("/path/to/local.txt", "")
-+
-+ expect_scp_session "-f /path/to/remote.txt" do |channel|
-+ channel.sends_ok
-+ channel.gets_data "C0666 0 remote.txt\n"
-+ channel.sends_ok
-+ channel.gets_data "\1"
-+ end
-+
-+ e = assert_raises(Net::SCP::Error) { scp.download!("/path/to/remote.txt", "/path/to/local.txt") }
-+ assert_equal("\1", e.message)
-+ end
-+
-+ def test_download_directory_should_raise_error_if_local_exists_and_is_not_directory
-+ File.stubs(:exists?).with("/path/to/local").returns(true)
-+ File.stubs(:exists?).with("/path/to/local/remote").returns(true)
-+ File.stubs(:directory?).with("/path/to/local/remote").returns(false)
-+
-+ expect_scp_session "-f -r /path/to/remote" do |channel|
-+ channel.sends_ok
-+ channel.gets_data "D0755 0 remote\n"
-+ channel.sends_ok
-+ channel.gets_data "E\n"
-+ channel.sends_ok
-+ end
-+
-+ e = assert_raises(Net::SCP::Error) { scp.download!("/path/to/remote", "/path/to/local", :recursive => true) }
-+ assert_match(/exists and is not a directory/, e.message)
-+ end
-+
- def test_download_directory_should_create_directory_and_files_locally
- file = nil
- prepare_directory "/path/to/local" do |dir|
diff --git a/dev-ruby/net-scp/metadata.xml b/dev-ruby/net-scp/metadata.xml
index 55c46cfd74e3..7e916a2dc86a 100644
--- a/dev-ruby/net-scp/metadata.xml
+++ b/dev-ruby/net-scp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/net-scp/net-scp-1.2.1-r1.ebuild b/dev-ruby/net-scp/net-scp-1.2.1-r1.ebuild
deleted file mode 100644
index d717fa4a1aa6..000000000000
--- a/dev-ruby/net-scp/net-scp-1.2.1-r1.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.rdoc"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A pure Ruby implementation of the SCP client protocol"
-HOMEPAGE="https://github.com/net-ssh/net-scp"
-
-LICENSE="GPL-2"
-SLOT="2"
-KEYWORDS="amd64 ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RUBY_PATCHES=(
- ${P}-raise-correct-errors.patch
- ${P}-fix-common.path
- ${P}-fix-download_test.patch
- ${P}-fix-download_test_2.patch
- ${P}-fix-download_test_3.patch
- ${P}-fix-upload_tests.patch
- ${P}-raise-correct-errors-net-ssh-4.0-compat.patch
- )
-
-ruby_add_bdepend "
- doc? ( || ( dev-ruby/net-ssh:5 dev-ruby/net-ssh:4 ) )
- test? (
- || ( dev-ruby/net-ssh:5 dev-ruby/net-ssh:4 )
- dev-ruby/mocha
- )"
-
-ruby_add_rdepend "|| ( dev-ruby/net-ssh:5 dev-ruby/net-ssh:4 )"
-
-all_ruby_prepare() {
- sed -i -e 's/>= 2.0.0/~> 2.0/' test/common.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test test/test_all.rb || die
-}
diff --git a/dev-ruby/net-scp/net-scp-2.0.0.ebuild b/dev-ruby/net-scp/net-scp-2.0.0.ebuild
deleted file mode 100644
index 8c3e84358cc6..000000000000
--- a/dev-ruby/net-scp/net-scp-2.0.0.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.rdoc"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A pure Ruby implementation of the SCP client protocol"
-HOMEPAGE="https://github.com/net-ssh/net-scp"
-SRC_URI="https://github.com/net-ssh/net-scp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="2"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RUBY_PATCHES=(
- ${P}-raise-correct-errors.patch
- ${P}-fix-common.path
- ${P}-fix-download_test.patch
- ${P}-fix-download_test_2.patch
- ${P}-fix-download_test_3.patch
- ${P}-fix-upload_tests.patch
- ${P}-raise-correct-errors-net-ssh-4.0-compat.patch
- )
-
-ruby_add_bdepend "
- doc? ( || ( dev-ruby/net-ssh:5 dev-ruby/net-ssh:4 ) )
- test? (
- || ( dev-ruby/net-ssh:5 dev-ruby/net-ssh:4 )
- dev-ruby/mocha
- )"
-
-ruby_add_rdepend "|| ( dev-ruby/net-ssh:5 dev-ruby/net-ssh:4 )"
-
-each_ruby_test() {
- ${RUBY} -Ilib:test test/test_all.rb || die
-}
diff --git a/dev-ruby/net-scp/net-scp-4.0.0.ebuild b/dev-ruby/net-scp/net-scp-4.0.0.ebuild
new file mode 100644
index 000000000000..4ab4f1e3f33c
--- /dev/null
+++ b/dev-ruby/net-scp/net-scp-4.0.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.rdoc"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_GEMSPEC="net-scp.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A pure Ruby implementation of the SCP client protocol"
+HOMEPAGE="https://github.com/net-ssh/net-scp"
+SRC_URI="https://github.com/net-ssh/net-scp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="2"
+KEYWORDS="amd64 ~arm64 ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+ruby_add_bdepend "
+ doc? ( dev-ruby/net-ssh:7 )
+ test? (
+ <dev-ruby/mocha-2.2.0:2
+ dev-ruby/test-unit
+ )"
+
+ruby_add_rdepend "dev-ruby/net-ssh:7"
+
+all_ruby_prepare() {
+ sed -e "s:_relative ': './:" \
+ -e 's/git ls-files -z/find -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -e '/mocha/ s/setup/test_unit/' \
+ -i test/common.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test test/test_all.rb || die
+}
diff --git a/dev-ruby/net-sftp/Manifest b/dev-ruby/net-sftp/Manifest
index 4204780738c9..178923b318b0 100644
--- a/dev-ruby/net-sftp/Manifest
+++ b/dev-ruby/net-sftp/Manifest
@@ -1 +1 @@
-DIST net-sftp-2.1.2.gem 67584 BLAKE2B 6b8e15f42c7a18f8c9aa7118e5822281eda6505c34697282cc9c52375ea0e4042f3045f41c2e9a15b8fd20f02946bfe6f3ad557aa5859a8e54e4c0ae8bd1d53d SHA512 126a9537a4ac45150096db4d46ad19e0d8a1833fef3733a1b66ff01463c0d109415f0ef807706ff88be8c5c1395bbd4620e529f06e3c9f746a4ed6ec2cb7d18d
+DIST net-sftp-4.0.0.tar.gz 63896 BLAKE2B d63d32d3810c05c6ed19d156c87854d09a585a63e651be5984aed22b9a2b82c6c1464dd90fcc07d5586cd171d388dd6874ebe9e4e871012fee1620701f1d648e SHA512 8c4284da3b9143a02d597fc1c2824e5ab96abb38fef932682326443ea949733c4e7513184fb6b5c870d3ff802928e34580d423c98c594cb7a07ad17a50fb5c56
diff --git a/dev-ruby/net-sftp/files/net-sftp-2.1.2-net-ssh-4.patch b/dev-ruby/net-sftp/files/net-sftp-2.1.2-net-ssh-4.patch
deleted file mode 100644
index d510153ba8d5..000000000000
--- a/dev-ruby/net-sftp/files/net-sftp-2.1.2-net-ssh-4.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 9870b32d31bbe5cddceead54c64f71e4fd91779e Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch@redhat.com>
-Date: Mon, 27 Feb 2017 15:00:30 +0100
-Subject: [PATCH] Fix compatiblity with net-ssh 4.0+
-
----
- test/test_download.rb | 4 +++-
- test/test_session.rb | 6 ++++--
- 2 files changed, 7 insertions(+), 3 deletions(-)
-
-diff --git a/test/test_download.rb b/test/test_download.rb
-index d4a5f0b..d9582b6 100644
---- a/test/test_download.rb
-+++ b/test/test_download.rb
-@@ -139,7 +139,9 @@ def test_download_file_should_transfer_remote_to_local_buffer
-
- def test_download_directory_to_buffer_should_fail
- expect_sftp_session :server_version => 3
-- assert_raises(ArgumentError) { sftp.download("/path/to/remote", StringIO.new, :recursive => true) }
-+ Net::SSH::Test::Extensions::IO.with_test_extension do
-+ assert_raises(ArgumentError) { sftp.download("/path/to/remote", StringIO.new, :recursive => true) }
-+ end
- end
-
- private
-diff --git a/test/test_session.rb b/test/test_session.rb
-index a59058a..c398436 100644
---- a/test/test_session.rb
-+++ b/test/test_session.rb
-@@ -660,8 +660,10 @@ def test_unblock_bang_should_block_and_return_response
-
- def assert_not_implemented(server_version, command, *args)
- expect_sftp_session :server_version => 1
-- sftp.connect!
-- assert_raises(NotImplementedError) { sftp.send(command, *args) }
-+ Net::SSH::Test::Extensions::IO.with_test_extension do
-+ sftp.connect!
-+ assert_raises(NotImplementedError) { sftp.send(command, *args) }
-+ end
- end
-
- def assert_command_with_callback(command, *args)
diff --git a/dev-ruby/net-sftp/metadata.xml b/dev-ruby/net-sftp/metadata.xml
index cf6139ba278e..ba3c13db3fa4 100644
--- a/dev-ruby/net-sftp/metadata.xml
+++ b/dev-ruby/net-sftp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/net-sftp/net-sftp-2.1.2-r2.ebuild b/dev-ruby/net-sftp/net-sftp-2.1.2-r2.ebuild
deleted file mode 100644
index 99deb87ee5c4..000000000000
--- a/dev-ruby/net-sftp/net-sftp-2.1.2-r2.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="SFTP in pure Ruby"
-HOMEPAGE="https://github.com/net-ssh/net-sftp"
-
-LICENSE="GPL-2"
-SLOT="2"
-KEYWORDS="amd64 ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RUBY_PATCHES=( "${FILESDIR}/${P}-net-ssh-4.patch" )
-
-ruby_add_rdepend "dev-ruby/net-ssh:4"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/mocha-0.13
- )"
diff --git a/dev-ruby/net-sftp/net-sftp-2.1.2-r4.ebuild b/dev-ruby/net-sftp/net-sftp-2.1.2-r4.ebuild
deleted file mode 100644
index c86ffe16ec9f..000000000000
--- a/dev-ruby/net-sftp/net-sftp-2.1.2-r4.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="SFTP in pure Ruby"
-HOMEPAGE="https://github.com/net-ssh/net-sftp"
-
-LICENSE="GPL-2"
-SLOT="2"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-PATCHES=( "${FILESDIR}/${P}-net-ssh-4.patch" )
-
-ruby_add_rdepend "dev-ruby/net-ssh:4"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/mocha-0.13
- )"
diff --git a/dev-ruby/net-sftp/net-sftp-4.0.0.ebuild b/dev-ruby/net-sftp/net-sftp-4.0.0.ebuild
new file mode 100644
index 000000000000..e1c163dd6524
--- /dev/null
+++ b/dev-ruby/net-sftp/net-sftp-4.0.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="net-sftp.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="SFTP in pure Ruby"
+HOMEPAGE="https://github.com/net-ssh/net-sftp"
+SRC_URI="https://github.com/net-ssh/net-sftp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="2"
+KEYWORDS="amd64 ~arm64 ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/net-ssh:7"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ >=dev-ruby/mocha-0.13
+ )"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ': './:" -e 's/git ls-files -z/find -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=1 ${RUBY} -Ilib:test:. -e 'Dir["test/**/test_*.rb"].each { require _1 }' || die
+}
diff --git a/dev-ruby/net-smtp/Manifest b/dev-ruby/net-smtp/Manifest
new file mode 100644
index 000000000000..5aa2be16ab64
--- /dev/null
+++ b/dev-ruby/net-smtp/Manifest
@@ -0,0 +1,3 @@
+DIST net-smtp-0.3.3.tar.gz 25297 BLAKE2B 29339faf7c7a3870b2eed7d2b9058ad7b3beaae9bddd3fe718cbcba0c65faa3e118916ac2e2a8cfc9e52c602bde301929c037856b68e42881bdab3ecbb90b01f SHA512 1936cede296d899f2cbcf5874b1472e808255cca21788037f6e8f38f8b1ef05779fec0c4f51a3970c09191078fee84c85e909eb9223034bdc293a1215b004ad1
+DIST net-smtp-0.4.0.tar.gz 26695 BLAKE2B 4ae79a5288ccb55b9a9bcd377ef3c85123a55b9269815730b2fb394ba98469ecaa7a5fc3230bc4a2e9117bff62453a69b627a397db1ca4f63f0cbd4856510d4e SHA512 3a130daac6392dd9328bdc644e1089eb34f290658b06f4aee48ab9f407086446af9fe674c5f417251ffb04478e5a6f14829f2b13b3e62fadb65ac09a2fa35bc1
+DIST net-smtp-0.5.0.tar.gz 26026 BLAKE2B 9969354a7f0fc4a32beac965bfc325aa54a1687d28ee7a4828005bbee1cabcaeefb4ffcdd019761c9162c7623efeccc8a4cb7222df004c75cbc1cced5242df3f SHA512 bf497150a4b7f59307ddedd02b1b210b971ba0de0d7459872d01a7db8175bb42c29598b5e9b6efdbdf90cc012696da2e000149246e1142a5695e7fe646aa6fa8
diff --git a/dev-ruby/net-smtp/metadata.xml b/dev-ruby/net-smtp/metadata.xml
new file mode 100644
index 000000000000..2473cb180fd5
--- /dev/null
+++ b/dev-ruby/net-smtp/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/net-smtp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/net-smtp/net-smtp-0.3.3.ebuild b/dev-ruby/net-smtp/net-smtp-0.3.3.ebuild
new file mode 100644
index 000000000000..fc25cb4c581a
--- /dev/null
+++ b/dev-ruby/net-smtp/net-smtp-0.3.3.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+RUBY_FAKEGEM_GEMSPEC="net-smtp.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple Mail Transfer Protocol client library for Ruby"
+HOMEPAGE="https://github.com/ruby/net-smtp"
+SRC_URI="https://github.com/ruby/net-smtp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/net-protocol
+"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/net-smtp/net-smtp-0.4.0.ebuild b/dev-ruby/net-smtp/net-smtp-0.4.0.ebuild
new file mode 100644
index 000000000000..ec05e4f513c7
--- /dev/null
+++ b/dev-ruby/net-smtp/net-smtp-0.4.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+RUBY_FAKEGEM_GEMSPEC="net-smtp.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple Mail Transfer Protocol client library for Ruby"
+HOMEPAGE="https://github.com/ruby/net-smtp"
+SRC_URI="https://github.com/ruby/net-smtp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/net-protocol
+"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/net-smtp/net-smtp-0.5.0.ebuild b/dev-ruby/net-smtp/net-smtp-0.5.0.ebuild
new file mode 100644
index 000000000000..8fe426c506ae
--- /dev/null
+++ b/dev-ruby/net-smtp/net-smtp-0.5.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+RUBY_FAKEGEM_GEMSPEC="net-smtp.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple Mail Transfer Protocol client library for Ruby"
+HOMEPAGE="https://github.com/ruby/net-smtp"
+SRC_URI="https://github.com/ruby/net-smtp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+ruby_add_rdepend "
+ dev-ruby/net-protocol
+"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/net-ssh-gateway/metadata.xml b/dev-ruby/net-ssh-gateway/metadata.xml
index b6582c997604..2460d8004bd4 100644
--- a/dev-ruby/net-ssh-gateway/metadata.xml
+++ b/dev-ruby/net-ssh-gateway/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/net-ssh-gateway/net-ssh-gateway-2.0.0-r2.ebuild b/dev-ruby/net-ssh-gateway/net-ssh-gateway-2.0.0-r2.ebuild
new file mode 100644
index 000000000000..6bfe49fb154c
--- /dev/null
+++ b/dev-ruby/net-ssh-gateway/net-ssh-gateway-2.0.0-r2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.md"
+RUBY_FAKEGEM_GEMSPEC="net-ssh-gateway.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A simple library to assist in enabling tunneled Net::SSH connections"
+HOMEPAGE="https://github.com/net-ssh/net-ssh-gateway"
+SRC_URI="https://github.com/net-ssh/net-ssh-gateway/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="2.0"
+KEYWORDS="amd64 ppc ppc64 x86"
+IUSE=""
+
+ruby_add_depend "dev-ruby/minitest:5
+ dev-ruby/mocha:2"
+
+ruby_add_rdepend ">=dev-ruby/net-ssh-4.0.0:*"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '/bundler/ s:^:#:' Rakefile test/net/ssh/gateway_test.rb || die
+ sed -e 's:mocha/mini_test:mocha/minitest:' \
+ -e 's/MiniTest/Minitest/' \
+ -i test/net/ssh/gateway_test.rb || die
+}
diff --git a/dev-ruby/net-ssh-gateway/net-ssh-gateway-2.0.0.ebuild b/dev-ruby/net-ssh-gateway/net-ssh-gateway-2.0.0.ebuild
deleted file mode 100644
index 65120c82e5f9..000000000000
--- a/dev-ruby/net-ssh-gateway/net-ssh-gateway-2.0.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple library to assist in enabling tunneled Net::SSH connections"
-HOMEPAGE="https://github.com/net-ssh/net-ssh-gateway"
-SRC_URI="https://github.com/net-ssh/net-ssh-gateway/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="2.0"
-KEYWORDS="amd64 ppc ppc64 x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/minitest:5
- dev-ruby/mocha:1.0"
-
-ruby_add_rdepend ">=dev-ruby/net-ssh-4.0.0:*"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile test/net/ssh/gateway_test.rb || die
-}
diff --git a/dev-ruby/net-ssh/Manifest b/dev-ruby/net-ssh/Manifest
index a1ced490ccb1..8ae33fd07332 100644
--- a/dev-ruby/net-ssh/Manifest
+++ b/dev-ruby/net-ssh/Manifest
@@ -1,4 +1,3 @@
-DIST net-ssh-git-4.2.0.tgz 197417 BLAKE2B 5714185d9b83d3010e6b9baa07ac541e9227379cbfecc3a506d870d8d9fa528f59b605df4ff02ae6bfc16893bfb22734395096a77fcbe19fb939ecc1a343a9b5 SHA512 0a3609590d797a8cb4732e8cf743606a4919f57475b6eb2447a3db0c28f1bd405804fdc47a4062e503acdd4b785a1de9794a6db433cabb884105166eff6a8c5b
-DIST net-ssh-git-5.0.2.tgz 206757 BLAKE2B ac9a317dc238f7e3e794e4d8fcccc063d5d34dbe2e50a142e701957ad5c754985523624e97ca0b7d5773d2fefc3f10f3d61b2976997abd29511cd3934ea0e0bd SHA512 6e96d4b3cb2f4f14aa046af72b70a5e3b218153db40dc64996ad0061ea89cc9ac0dc0510a4231734c7385c03436d4116dfe4c9ac4b313c9fc5b029fc8a6c04d6
-DIST net-ssh-git-5.1.0.tgz 208940 BLAKE2B f4661bb8d0071717d342521126c0b8a834ab7775b67ad21b3d381205fc74aa1bb39f0cb406f0b90815be13c430eb5f69af2a86fe10214ec8db7829425e9c0399 SHA512 49f8f749f5e711af8002c8eb281505eb249362d58f870aabe55e8043bb8d1e94b1428246bd488508b58ec2fe089aeaf46ef758625af0573201e2ae830846525d
-DIST net-ssh-git-5.2.0.tgz 209986 BLAKE2B 6a1bc97da733420607c6ebe69a01f42d58998297a12394a29c9b4f5af425781d6b1b3535cecef21a0918eefc2e032f519fce9c5691c0a735c7810452f468d780 SHA512 cf2fa9817b124f0f35115abef51a4865073b3126b94d66cd307994bba06745513aaab1c1bcf64907a7b3bbce793b272b3f521cfa93f9339ca78ec8cef09cbeeb
+DIST net-ssh-git-7.1.0.tgz 229217 BLAKE2B ab3c46d3d8831335495ae72dc60f2659109b66566f04117a16e4fd41085203b6a2d333e65ffcda4e390c96a2b808c68baeb168be1a2e23d4c797ad63b5af93f9 SHA512 723f487e77526a7acba8a9c8f09dd85c8c0bb21577d148f6c4280c79d603d3d364e29fb55b2b282064b5c108465efb2b1da061a2ba5872d575b0be264f493745
+DIST net-ssh-git-7.2.1.tgz 233338 BLAKE2B 14696b3c5de24219b0e5d5ad345aa46a1576183f4836ccdaf1d5feb78cb932232da1890c55d8c39dbf1d47b1fc0c19acf53eedd1f87bf8acb0d62ae10045e828 SHA512 9b13c33ed76a9ac346c610e8eb04fba5b327c9f79d2a28ca7d2c9b6fa94d3979f68b43f3fd2b83eb2ea0e3ada5e200373848b5f7abdee7922d77aa30d148b88b
+DIST net-ssh-git-7.2.3.tgz 233375 BLAKE2B d8eda3964b66e7a7c55f70a1ba763bacf192edcb6f32f679d36b4c589c6184af9911db6db4cb28e273a27ac4bd68afc4b0a0767d98955b2e37bcd65444c77d8a SHA512 621eb0c8080347614e924c236646cadaaceefb0894a818dc60cebc7c09c87d6ae6117f33628ed48fa8598fdb74146c9d2f114b178bd119908df8396103ceb4d9
diff --git a/dev-ruby/net-ssh/metadata.xml b/dev-ruby/net-ssh/metadata.xml
index b6f4d7853048..bc9c39fc40f7 100644
--- a/dev-ruby/net-ssh/metadata.xml
+++ b/dev-ruby/net-ssh/metadata.xml
@@ -1,15 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">net-ssh/net-ssh</remote-id>
- </upstream>
- <use>
- <flag name="ed25519">Use <pkg>dev-ruby/ed25519</pkg> for Ed25519 support</flag>
- <flag name="sodium">Use <pkg>dev-libs/libsodium</pkg> via <pkg>dev-ruby/rbnacl</pkg> for Ed25519 support</flag>
- </use>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">net-ssh/net-ssh</remote-id>
+ </upstream>
+ <use>
+ <flag name="chacha20">Use <pkg>dev-ruby/rbnacl</pkg> for chacha20-poly1305@openssh.com support</flag>
+ <flag name="ed25519">Use <pkg>dev-ruby/ed25519</pkg> for Ed25519 support</flag>
+ </use>
</pkgmetadata>
diff --git a/dev-ruby/net-ssh/net-ssh-4.2.0.ebuild b/dev-ruby/net-ssh/net-ssh-4.2.0.ebuild
deleted file mode 100644
index a1cd8e45c46a..000000000000
--- a/dev-ruby/net-ssh/net-ssh-4.2.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.rdoc THANKS.txt"
-RUBY_FAKEGEM_EXTRAINSTALL="support"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Non-interactive SSH processing in pure Ruby"
-HOMEPAGE="https://github.com/net-ssh/net-ssh"
-SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> net-ssh-git-${PV}.tgz"
-
-LICENSE="GPL-2"
-SLOT="4"
-KEYWORDS="amd64 ~arm ppc ppc64 x86"
-IUSE="sodium test"
-
-ruby_add_rdepend "virtual/ruby-ssl sodium? ( dev-ruby/rbnacl:4 dev-ruby/bcrypt_pbkdf )"
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 >=dev-ruby/mocha-0.13 )"
-
-all_ruby_prepare() {
- # Don't use a ruby-bundled version of libsodium
- sed -i -e '/rbnacl\/libsodium/ s:^:#:' lib/net/ssh/authentication/ed25519.rb || die
-
- # Don' try to use libsodium-related tests with USE=-sodium
- if ! use sodium ; then
- rm -f test/authentication/test_ed25519.rb
- fi
-
- # Avoid bundler dependency
- sed -i -e '/\(bundler\|:release\)/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/net-ssh/net-ssh-5.0.2.ebuild b/dev-ruby/net-ssh/net-ssh-5.0.2.ebuild
deleted file mode 100644
index 5709cd84bd9c..000000000000
--- a/dev-ruby/net-ssh/net-ssh-5.0.2.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.rdoc THANKS.txt"
-RUBY_FAKEGEM_EXTRAINSTALL="support"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Non-interactive SSH processing in pure Ruby"
-HOMEPAGE="https://github.com/net-ssh/net-ssh"
-SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> net-ssh-git-${PV}.tgz"
-
-LICENSE="GPL-2"
-SLOT="5"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE="ed25519 test"
-
-ruby_add_rdepend "virtual/ruby-ssl ed25519? ( dev-ruby/ed25519 dev-ruby/bcrypt_pbkdf )"
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 >=dev-ruby/mocha-0.13 )"
-
-all_ruby_prepare() {
- # Avoid bundler dependency
- sed -i -e '/\(bundler\|:release\)/ s:^:#:' Rakefile || die
-}
-
-src_test() {
- # prevent tests from trying to connect to ssh-agent socket and failing
- unset SSH_AUTH_SOCK
- if ! use ed25519; then
- export NET_SSH_NO_ED25519=true
- fi
- ruby-ng_src_test
-}
diff --git a/dev-ruby/net-ssh/net-ssh-5.1.0.ebuild b/dev-ruby/net-ssh/net-ssh-5.1.0.ebuild
deleted file mode 100644
index f2c12b44739c..000000000000
--- a/dev-ruby/net-ssh/net-ssh-5.1.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.rdoc THANKS.txt"
-RUBY_FAKEGEM_EXTRAINSTALL="support"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Non-interactive SSH processing in pure Ruby"
-HOMEPAGE="https://github.com/net-ssh/net-ssh"
-SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> net-ssh-git-${PV}.tgz"
-
-LICENSE="GPL-2"
-SLOT="5"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE="ed25519 test"
-
-ruby_add_rdepend "virtual/ruby-ssl ed25519? ( dev-ruby/ed25519 dev-ruby/bcrypt_pbkdf )"
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 >=dev-ruby/mocha-0.13 )"
-
-all_ruby_prepare() {
- # Avoid bundler dependency
- sed -i -e '/\(bundler\|:release\)/ s:^:#:' Rakefile || die
-}
-
-src_test() {
- # prevent tests from trying to connect to ssh-agent socket and failing
- unset SSH_AUTH_SOCK
- if ! use ed25519; then
- export NET_SSH_NO_ED25519=true
- fi
- ruby-ng_src_test
-}
diff --git a/dev-ruby/net-ssh/net-ssh-5.2.0.ebuild b/dev-ruby/net-ssh/net-ssh-5.2.0.ebuild
deleted file mode 100644
index f2c12b44739c..000000000000
--- a/dev-ruby/net-ssh/net-ssh-5.2.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.rdoc THANKS.txt"
-RUBY_FAKEGEM_EXTRAINSTALL="support"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Non-interactive SSH processing in pure Ruby"
-HOMEPAGE="https://github.com/net-ssh/net-ssh"
-SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> net-ssh-git-${PV}.tgz"
-
-LICENSE="GPL-2"
-SLOT="5"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE="ed25519 test"
-
-ruby_add_rdepend "virtual/ruby-ssl ed25519? ( dev-ruby/ed25519 dev-ruby/bcrypt_pbkdf )"
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 >=dev-ruby/mocha-0.13 )"
-
-all_ruby_prepare() {
- # Avoid bundler dependency
- sed -i -e '/\(bundler\|:release\)/ s:^:#:' Rakefile || die
-}
-
-src_test() {
- # prevent tests from trying to connect to ssh-agent socket and failing
- unset SSH_AUTH_SOCK
- if ! use ed25519; then
- export NET_SSH_NO_ED25519=true
- fi
- ruby-ng_src_test
-}
diff --git a/dev-ruby/net-ssh/net-ssh-7.1.0.ebuild b/dev-ruby/net-ssh/net-ssh-7.1.0.ebuild
new file mode 100644
index 000000000000..d5c87deb7de9
--- /dev/null
+++ b/dev-ruby/net-ssh/net-ssh-7.1.0.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 ruby32"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.md THANKS.txt"
+RUBY_FAKEGEM_EXTRAINSTALL="support"
+
+RUBY_FAKEGEM_GEMSPEC="net-ssh.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Non-interactive SSH processing in pure Ruby"
+HOMEPAGE="https://github.com/net-ssh/net-ssh"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> net-ssh-git-${PV}.tgz"
+
+LICENSE="GPL-2"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86"
+IUSE="ed25519 test"
+RESTRICT="!test? ( test )"
+
+ruby_add_rdepend "virtual/ruby-ssl ed25519? ( >=dev-ruby/ed25519-1.2:1 dev-ruby/x25519 dev-ruby/bcrypt_pbkdf:1 )"
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 >=dev-ruby/mocha-0.13 )"
+
+all_ruby_prepare() {
+ # Avoid bundler dependency
+ sed -i -e '/\(bundler\|:release\)/ s:^:#:' Rakefile || die
+
+ sed -e "s:require_relative ':require './:" \
+ -e 's/git ls-files -z/find -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+src_test() {
+ # prevent tests from trying to connect to ssh-agent socket and failing
+ unset SSH_AUTH_SOCK
+ if ! use ed25519; then
+ export NET_SSH_NO_ED25519=true
+ fi
+ ruby-ng_src_test
+}
diff --git a/dev-ruby/net-ssh/net-ssh-7.2.1.ebuild b/dev-ruby/net-ssh/net-ssh-7.2.1.ebuild
new file mode 100644
index 000000000000..dd43d42338d9
--- /dev/null
+++ b/dev-ruby/net-ssh/net-ssh-7.2.1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.md THANKS.txt"
+RUBY_FAKEGEM_EXTRAINSTALL="support"
+
+RUBY_FAKEGEM_GEMSPEC="net-ssh.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Non-interactive SSH processing in pure Ruby"
+HOMEPAGE="https://github.com/net-ssh/net-ssh"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> net-ssh-git-${PV}.tgz"
+
+LICENSE="GPL-2"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="chacha20 ed25519 test"
+RESTRICT="!test? ( test )"
+
+ruby_add_rdepend "
+ virtual/ruby-ssl
+ chacha20? ( dev-ruby/rbnacl )
+ ed25519? ( >=dev-ruby/ed25519-1.2:1 dev-ruby/x25519 dev-ruby/bcrypt_pbkdf:1 )
+"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 >=dev-ruby/mocha-0.13 )"
+
+all_ruby_prepare() {
+ # Avoid bundler dependency
+ sed -i -e '/\(bundler\|:release\)/ s:^:#:' Rakefile || die
+
+ sed -e "s:require_relative ':require './:" \
+ -e 's/git ls-files -z/find -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+src_test() {
+ # prevent tests from trying to connect to ssh-agent socket and failing
+ unset SSH_AUTH_SOCK
+ if ! use ed25519; then
+ export NET_SSH_NO_ED25519=true
+ fi
+ ruby-ng_src_test
+}
diff --git a/dev-ruby/net-ssh/net-ssh-7.2.3.ebuild b/dev-ruby/net-ssh/net-ssh-7.2.3.ebuild
new file mode 100644
index 000000000000..3d9b5e520a7c
--- /dev/null
+++ b/dev-ruby/net-ssh/net-ssh-7.2.3.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGES.txt README.md THANKS.txt"
+RUBY_FAKEGEM_EXTRAINSTALL="support"
+
+RUBY_FAKEGEM_GEMSPEC="net-ssh.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Non-interactive SSH processing in pure Ruby"
+HOMEPAGE="https://github.com/net-ssh/net-ssh"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> net-ssh-git-${PV}.tgz"
+
+LICENSE="GPL-2"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="chacha20 ed25519 test"
+RESTRICT="!test? ( test )"
+
+ruby_add_rdepend "
+ virtual/ruby-ssl
+ chacha20? ( dev-ruby/rbnacl )
+ ed25519? ( >=dev-ruby/ed25519-1.2:1 dev-ruby/x25519 dev-ruby/bcrypt_pbkdf:1 )
+"
+
+ruby_add_bdepend "test? ( dev-ruby/base64 dev-ruby/test-unit:2 >=dev-ruby/mocha-0.13 )"
+
+all_ruby_prepare() {
+ # Avoid bundler dependency
+ sed -i -e '/\(bundler\|:release\)/ s:^:#:' Rakefile || die
+
+ sed -e "s:require_relative ':require './:" \
+ -e 's/git ls-files -z/find -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+src_test() {
+ # prevent tests from trying to connect to ssh-agent socket and failing
+ unset SSH_AUTH_SOCK
+ if ! use ed25519; then
+ export NET_SSH_NO_ED25519=true
+ fi
+ ruby-ng_src_test
+}
diff --git a/dev-ruby/net-telnet/Manifest b/dev-ruby/net-telnet/Manifest
index 87721afe849c..7a4dcb6d4cc7 100644
--- a/dev-ruby/net-telnet/Manifest
+++ b/dev-ruby/net-telnet/Manifest
@@ -1,2 +1 @@
-DIST net-telnet-0.1.1.tar.gz 12794 BLAKE2B 5a82e62e47cb9153b17dd6042c7e5c767ae3a9cbe0739ad769aab2fe798c7766819b89bc325f148791ce37a55ae267eb5854142d2fcb7d387fd29c32e118c169 SHA512 769d83bae55826bb99f189d06a8fb8a6d497d6c7687289f5aad2efced6f282484e5f766dc95f0158045b824532cd8f0a674ecc69883018814a009bc29d6fe29d
DIST net-telnet-0.2.0.tar.gz 13299 BLAKE2B 6b87974281b4e1857a1e05efdfc751a5149f9057598c89b8b288219b95268955ee3f80e21cc787ac767ef3126c9ee23d9b62e29ebcb8c317def703f0e0dc1fe6 SHA512 a4473c42d33c10594c4445c29db73f4d611555710228cce263f7fc273e71140423dcbc2e89eec2a26f35f98de48aa72eca9f44cf0cd4626d702709963ce7b02d
diff --git a/dev-ruby/net-telnet/metadata.xml b/dev-ruby/net-telnet/metadata.xml
index e50ca70331b7..52f9d557bc56 100644
--- a/dev-ruby/net-telnet/metadata.xml
+++ b/dev-ruby/net-telnet/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/net-telnet/net-telnet-0.1.1-r1.ebuild b/dev-ruby/net-telnet/net-telnet-0.1.1-r1.ebuild
deleted file mode 100644
index 353154de745d..000000000000
--- a/dev-ruby/net-telnet/net-telnet-0.1.1-r1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-# Don't install the binaries since they don't seem to be intended for
-# general use and they have very generic names leading to collisions,
-# e.g. bug 571186
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides telnet client functionality"
-HOMEPAGE="https://github.com/ruby/net-telnet"
-SRC_URI="https://github.com/ruby/net-telnet/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="|| ( Ruby-BSD BSD-2 )"
-SLOT="1"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/net-telnet/net-telnet-0.2.0-r1.ebuild b/dev-ruby/net-telnet/net-telnet-0.2.0-r1.ebuild
new file mode 100644
index 000000000000..065a731a8a02
--- /dev/null
+++ b/dev-ruby/net-telnet/net-telnet-0.2.0-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="net-telnet.gemspec"
+
+# Don't install the binaries since they don't seem to be intended for
+# general use and they have very generic names leading to collisions,
+# e.g. bug 571186
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides telnet client functionality"
+HOMEPAGE="https://github.com/ruby/net-telnet"
+SRC_URI="https://github.com/ruby/net-telnet/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( Ruby-BSD BSD-2 )"
+SLOT="1"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/net-telnet/net-telnet-0.2.0.ebuild b/dev-ruby/net-telnet/net-telnet-0.2.0.ebuild
deleted file mode 100644
index 1a8bbaedbe75..000000000000
--- a/dev-ruby/net-telnet/net-telnet-0.2.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-# Don't install the binaries since they don't seem to be intended for
-# general use and they have very generic names leading to collisions,
-# e.g. bug 571186
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides telnet client functionality"
-HOMEPAGE="https://github.com/ruby/net-telnet"
-SRC_URI="https://github.com/ruby/net-telnet/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="|| ( Ruby-BSD BSD-2 )"
-SLOT="1"
-KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/netrc/metadata.xml b/dev-ruby/netrc/metadata.xml
index a46722fec9b3..a4e59258615f 100644
--- a/dev-ruby/netrc/metadata.xml
+++ b/dev-ruby/netrc/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">geemus/netrc</remote-id>
+ <remote-id type="github">heroku/netrc</remote-id>
+ <remote-id type="rubygems">netrc</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/netrc/netrc-0.11.0-r2.ebuild b/dev-ruby/netrc/netrc-0.11.0-r2.ebuild
new file mode 100644
index 000000000000..ace5e4bfd7cb
--- /dev/null
+++ b/dev-ruby/netrc/netrc-0.11.0-r2.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="changelog.txt Readme.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="This library reads and writes .netrc files"
+HOMEPAGE="https://github.com/heroku/netrc"
+LICENSE="MIT"
+
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~riscv x86"
+SLOT="0"
+IUSE=""
+
+all_ruby_prepare() {
+ # Avoid broken test that wrongly tests ruby internal code, bug 643922
+ sed -e '/test_encrypted_roundtrip/,/^ end/ s:^:#:' \
+ -e '/test_missing_environment/,/^ end/ s:^:#:' \
+ -e "s:/tmp/:${T}/:" \
+ -i test/test_netrc.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e "Dir['test/test_*.rb'].each{|f| require f}" || die
+}
diff --git a/dev-ruby/netrc/netrc-0.11.0.ebuild b/dev-ruby/netrc/netrc-0.11.0.ebuild
deleted file mode 100644
index c76c9950e2a2..000000000000
--- a/dev-ruby/netrc/netrc-0.11.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="changelog.txt Readme.md"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="This library reads and writes .netrc files"
-HOMEPAGE="https://github.com/geemus/netrc"
-LICENSE="MIT"
-
-KEYWORDS="amd64 ~arm x86"
-SLOT="0"
-IUSE=""
-
-all_ruby_prepare() {
- # Avoid broken test that wrongly tests ruby internal code, bug 643922
- sed -e '/test_encrypted_roundtrip/,/^ end/ s:^:#:' \
- -e '/test_missing_environment/,/^ end/ s:^:#:' \
- -e "s:/tmp/:${T}/:" \
- -i test/test_netrc.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e "Dir['test/test_*.rb'].each{|f| require f}" || die
-}
diff --git a/dev-ruby/network_interface/Manifest b/dev-ruby/network_interface/Manifest
index 821ffa0b5e11..61c848fe6c93 100644
--- a/dev-ruby/network_interface/Manifest
+++ b/dev-ruby/network_interface/Manifest
@@ -1 +1,3 @@
DIST network_interface-0.0.2.gem 16896 BLAKE2B a0e7898aa5989ea38c8a9214f3aaf5f9d0dbdf39e86f7e9a4d62ec6c94f29f9612a08c1465513b62351a4c62ed776e427800eabe562062ce7c9b4b75ec757a3b SHA512 8850325e7e0c5ab51b060270220099c2c00cf7031083a511ae9f8dd6d1b9219b37169fa7620e9648eb071784a840e14ce965f8d1cf5d475ff82691bfba25a202
+DIST network_interface-0.0.3.tar.gz 13584 BLAKE2B 61cd72974e9ec1b72adb9c6a7f77e43ff3a025e4bfddb70b1e899ee34ca0fe42a56f81095ee0cff66e2da1712af7854ee811d26d7af316cb6c5fb905b3a8ad4b SHA512 9a2c9ae4a49666f27a1afdd188bd3be614f5aba7ec548f6b081627a9aaff5b5cdb2d7f5b98e8687eb78ea05ee3e90cf8f942403256076d80710945b5f2a429c2
+DIST network_interface-0.0.4.tar.gz 14231 BLAKE2B 140db70e0ed3091b0b76af046a46827d7cf660dd0823157d5c4e67be8e7d158a532392c499a4734b5f412b7ae58aca422428712e5cd5dc966429c7fc75108843 SHA512 68e19a657d95a49cd771447687d74991d7e1e58191c94c69ab594d11ee2491c89b8ddad7c2708021eedd093ec6a5bdd2434a5ecb9d695663d11aa5b9971c9584
diff --git a/dev-ruby/network_interface/metadata.xml b/dev-ruby/network_interface/metadata.xml
index cdf4c46e6328..e351964dbdb9 100644
--- a/dev-ruby/network_interface/metadata.xml
+++ b/dev-ruby/network_interface/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
<remote-id type="github">rapid7/network_interface</remote-id>
diff --git a/dev-ruby/network_interface/network_interface-0.0.2-r1.ebuild b/dev-ruby/network_interface/network_interface-0.0.2-r1.ebuild
new file mode 100644
index 000000000000..31336f43d376
--- /dev/null
+++ b/dev-ruby/network_interface/network_interface-0.0.2-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTENSIONS=(ext/network_interface_ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="network_interface layer from metasploit pcaprub"
+HOMEPAGE="https://github.com/rapid7/network_interface"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+
+# Tests are brittle as they cannot deal with all network interface configurations.
+RESTRICT="test"
+
+all_ruby_prepare() {
+ sed -i -e 's:/sbin/ifconfig:/bin/ifconfig:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/network_interface/network_interface-0.0.2.ebuild b/dev-ruby/network_interface/network_interface-0.0.2.ebuild
deleted file mode 100644
index cdf61eb691fd..000000000000
--- a/dev-ruby/network_interface/network_interface-0.0.2.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="network_interface layer from metasploit pcaprub"
-HOMEPAGE="https://github.com/rapid7/network_interface"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-# Tests are brittle as they cannot deal with all network interface configurations.
-RESTRICT="test"
-
-all_ruby_prepare() {
- sed -i -e 's:/sbin/ifconfig:/bin/ifconfig:' spec/spec_helper.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -C ext/network_interface_ext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -C ext/network_interface_ext V=1
- cp ext/network_interface_ext/network_interface_ext.so lib/ || die
-}
diff --git a/dev-ruby/network_interface/network_interface-0.0.3.ebuild b/dev-ruby/network_interface/network_interface-0.0.3.ebuild
new file mode 100644
index 000000000000..97db0fdc051c
--- /dev/null
+++ b/dev-ruby/network_interface/network_interface-0.0.3.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="network_interface.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTENSIONS=(ext/network_interface_ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="network_interface layer from metasploit pcaprub"
+HOMEPAGE="https://github.com/rapid7/network_interface"
+SRC_URI="https://github.com/rapid7/network_interface/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+
+# Tests are brittle as they cannot deal with all network interface configurations.
+RESTRICT="test"
+
+all_ruby_prepare() {
+ sed -i -e 's:/sbin/ifconfig:/bin/ifconfig:' spec/spec_helper.rb || die
+
+ sed --i -e 's/__dir__/"."/' -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/network_interface/network_interface-0.0.4.ebuild b/dev-ruby/network_interface/network_interface-0.0.4.ebuild
new file mode 100644
index 000000000000..c7225e1e0d96
--- /dev/null
+++ b/dev-ruby/network_interface/network_interface-0.0.4.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_GEMSPEC="network_interface.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTENSIONS=(ext/network_interface_ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="network_interface layer from metasploit pcaprub"
+HOMEPAGE="https://github.com/rapid7/network_interface"
+SRC_URI="https://github.com/rapid7/network_interface/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+
+# Tests are brittle as they cannot deal with all network interface configurations.
+RESTRICT="test"
+
+all_ruby_prepare() {
+ sed -i -e 's:/sbin/ifconfig:/bin/ifconfig:' spec/spec_helper.rb || die
+
+ sed --i -e 's/__dir__/"."/' -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/nexpose/Manifest b/dev-ruby/nexpose/Manifest
deleted file mode 100644
index 89fc5e36fc45..000000000000
--- a/dev-ruby/nexpose/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST nexpose-7.2.1.tar.gz 123143 BLAKE2B 2bf9a022c6695fa759c5193510c2cfa793b8014b36914c7806f1ee888ac8eb21466efa46539a9e9b7dab31454b8604b10b71d59faffd001254ee0561f456b707 SHA512 8c0d8b4537513396c9c7cb01330310ed30f8995890c60fdb956ad4760fda6e89a4d1d400e6b71cad1fd2d8c5f2176074c415d35597b1c8740233ebcccbc7d870
diff --git a/dev-ruby/nexpose/metadata.xml b/dev-ruby/nexpose/metadata.xml
deleted file mode 100644
index 1dd105102ebb..000000000000
--- a/dev-ruby/nexpose/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/nexpose-client</remote-id>
- <remote-id type="rubygems">nexpose</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/nexpose/nexpose-7.2.1.ebuild b/dev-ruby/nexpose/nexpose-7.2.1.ebuild
deleted file mode 100644
index 5fc4cc695cc0..000000000000
--- a/dev-ruby/nexpose/nexpose-7.2.1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="API client for Nexpose vulnerability managment product"
-HOMEPAGE="https://github.com/rapid7/nexpose-client https://rubygems.org/gems/nexpose"
-SRC_URI="https://github.com/rapid7/nexpose-client/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="${PN}-client-${PV}"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? (
- dev-ruby/vcr:3
- dev-ruby/webmock
-)"
-
-all_ruby_prepare() {
- sed -i -e '/\(codeclimate\|simplecov\)/ s:^:#:' \
- -e '/SimpleCov/,/^]/ s:^:#:' \
- -e '1irequire "nexpose"' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/niceogiri/metadata.xml b/dev-ruby/niceogiri/metadata.xml
index 4e8ba958aa58..c103c2322c11 100644
--- a/dev-ruby/niceogiri/metadata.xml
+++ b/dev-ruby/niceogiri/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/niceogiri/niceogiri-1.1.2-r1.ebuild b/dev-ruby/niceogiri/niceogiri-1.1.2-r1.ebuild
new file mode 100644
index 000000000000..a064e92f5569
--- /dev/null
+++ b/dev-ruby/niceogiri/niceogiri-1.1.2-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_TASK_DOC="doc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Some wrappers around and helpers for XML manipulation using Nokogiri"
+HOMEPAGE="https://github.com/benlangfeld/Niceogiri"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="0"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/nokogiri"
+
+ruby_add_bdepend "doc? ( dev-ruby/yard )"
+
+all_ruby_prepare() {
+ sed -i -e '/guard-rspec/d' ${PN}.gemspec || die
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+}
diff --git a/dev-ruby/niceogiri/niceogiri-1.1.2.ebuild b/dev-ruby/niceogiri/niceogiri-1.1.2.ebuild
deleted file mode 100644
index 2397c35a09d7..000000000000
--- a/dev-ruby/niceogiri/niceogiri-1.1.2.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC="doc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Some wrappers around and helpers for XML manipulation using Nokogiri"
-HOMEPAGE="https://github.com/benlangfeld/Niceogiri"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/nokogiri"
-
-ruby_add_bdepend "doc? ( dev-ruby/yard )"
-
-all_ruby_prepare() {
- sed -i -e '/guard-rspec/d' ${PN}.gemspec || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
-}
diff --git a/dev-ruby/nio4r/Manifest b/dev-ruby/nio4r/Manifest
index 3a81f615dd69..64efc36e79ed 100644
--- a/dev-ruby/nio4r/Manifest
+++ b/dev-ruby/nio4r/Manifest
@@ -1,3 +1,4 @@
-DIST nio4r-1.2.1.gem 94208 BLAKE2B 229c1c690004444a6701ad765af26e592b9dbdb3646f155dc2114ea677b40097c0158c615efb25506c2ae59316e4ecdd7ec8747bf4f18a3ec2ca1be6bf028b85 SHA512 3136863955bd6f4d489955bae9baf2fb527447c0e71dade1a05402f3e7c8570bf1dd9b8335d70d7303ec4df0a236b13e4ede74ce9154be00a108afcd7c6b7f40
-DIST nio4r-2.3.1.gem 101888 BLAKE2B 1891581eaa8659ed86f13e365664974ea55921e0107b7ce9757961cebe27f290995e90c17d375b35cf15245856c7c1d61fd05a332dc09032fffc1599bc2474ab SHA512 6e8fbc744f17b42a0a5c9f8f6db79ce3c9c0dbf6cb047f0b48faab813effc9f5dabe7405475a755bea9f0eb49037f6f26bdc6b8ff3fc7ab3bca61fc238e4eb6d
-DIST nio4r-2.4.0.gem 101888 BLAKE2B 05f0223ccf493d3566d370e3199b26136b4158939fcd7102d5d513ae0988c3691fedb00fe47f9884396bc333ed2b88b605c583048ad6a2ebe70eb7aa4b70a6df SHA512 2cd77c4af934c10cbcc23e926d0111a319bd9be69b0ead9c5c5614911f2cd3127ffa9fb103907d961b59e6f846cc83ac9a97722a85dac390dbf2f2a20976a0c0
+DIST nio4r-2.5.9.gem 122368 BLAKE2B 4238e2963604539207e1adc7ee78430e4f501ea8b71d807ee4f3c44322d16612779777f11b76313aaad6d252321435854f5b4905f83a2fe03c9d71be20b7a718 SHA512 d1c52896f186d19eb089a94d74ccadb427e64c204af149aa83a5a4dda3f0edd1bd2bae94afd21fcd58e3c2b9e2c17278a18717c0905de80e45540d13eeefd9e5
+DIST nio4r-2.6.1.gem 123904 BLAKE2B 5fbfe2a67fbd9fb6f49607358827391a56760c79435748f8fca0cbe6408f145cba224641b77afa8f6f49b1cd7e2fdd93e46e5aa3c75496f6539d66216ec3430b SHA512 bebf7f737f5e63107d77c4237a5750aa10f9bd1136deaa6bb1a8e5cab703d425a3a94a8f617df144e603f4f1f85ef62852740604a981e7dda41f0c43ae250406
+DIST nio4r-2.7.0.gem 124416 BLAKE2B f02a16cf45dc2ea547dd8e036ddff5c37c24e9188db9ab4f817a55243f87f78264ed11bcd8d055e244c655aea08fa4922cd53dcae39e090031c87d0d78909c7b SHA512 aeb0bd3e727fa6999a314cd2b15a35035694f41294f7e9c406a72fd50a7a7a02311efec8c5795a116fd3793bf6b81e17d884e156b844722933e45d056f0cbeb9
+DIST nio4r-2.7.1.gem 124416 BLAKE2B 4ae03731b0ae51bc51cfd12049e4d9beb9141feeb4196edafb26dd5ea4cc88e3cecaf0b121cd28c142cb509f991d22af5befe593443f7ecc420eb403fa83c0a1 SHA512 acade5696fe343b92f35f4bcfb7fbda48c8d9bbacff8e0571cffa193ade48d0c8f184db3480084bf3d796e5bd9176b285be4a52e4470c406bf867f538f1bfd4a
diff --git a/dev-ruby/nio4r/metadata.xml b/dev-ruby/nio4r/metadata.xml
index a365cae4e615..4b9602e449cd 100644
--- a/dev-ruby/nio4r/metadata.xml
+++ b/dev-ruby/nio4r/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">celluloid/nio4r</remote-id>
+ <remote-id type="github">socketry/nio4r</remote-id>
+ <remote-id type="rubygems">nio4r</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/nio4r/nio4r-1.2.1-r1.ebuild b/dev-ruby/nio4r/nio4r-1.2.1-r1.ebuild
deleted file mode 100644
index 409bbfb67a6a..000000000000
--- a/dev-ruby/nio4r/nio4r-1.2.1-r1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A high performance selector API for monitoring IO objects"
-HOMEPAGE="https://github.com/celluloid/nio4r"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-# Note that nio4r bundles a patched copy of libev, and without these
-# patches the tests fail: https://github.com/celluloid/nio4r/issues/15
-
-all_ruby_prepare() {
- sed -i -e '/[Cc]overalls/d' -e '/[Bb]undler/d' spec/spec_helper.rb || die
- sed -e '/extension/ s:^:#:' -i Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/${PN} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/*$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/nio4r/nio4r-2.3.1.ebuild b/dev-ruby/nio4r/nio4r-2.3.1.ebuild
deleted file mode 100644
index 823f0b88dc1c..000000000000
--- a/dev-ruby/nio4r/nio4r-2.3.1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A high performance selector API for monitoring IO objects"
-HOMEPAGE="https://github.com/socketry/nio4r"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-# Note that nio4r bundles a patched copy of libev, and without these
-# patches the tests fail: https://github.com/celluloid/nio4r/issues/15
-
-ruby_add_bdepend "test? ( dev-ruby/rspec-retry )"
-
-all_ruby_prepare() {
- sed -i -e '/[Cc]overalls/d' -e '/[Bb]undler/d' spec/spec_helper.rb || die
- sed -e '/extension/ s:^:#:' -i Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/${PN} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/*$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/nio4r/nio4r-2.4.0.ebuild b/dev-ruby/nio4r/nio4r-2.4.0.ebuild
deleted file mode 100644
index 2af24f78f803..000000000000
--- a/dev-ruby/nio4r/nio4r-2.4.0.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A high performance selector API for monitoring IO objects"
-HOMEPAGE="https://github.com/socketry/nio4r"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-# Note that nio4r bundles a patched copy of libev, and without these
-# patches the tests fail: https://github.com/celluloid/nio4r/issues/15
-
-ruby_add_bdepend "test? ( dev-ruby/rspec-retry )"
-
-all_ruby_prepare() {
- sed -i -e '/[Cc]overalls/d' -e '/[Bb]undler/d' spec/spec_helper.rb || die
- sed -e '/extension/ s:^:#:' -i Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/${PN} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/*$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/nio4r/nio4r-2.5.9.ebuild b/dev-ruby/nio4r/nio4r-2.5.9.ebuild
new file mode 100644
index 000000000000..a6b35ed1088d
--- /dev/null
+++ b/dev-ruby/nio4r/nio4r-2.5.9.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/nio4r/extconf.rb)
+
+inherit flag-o-matic ruby-fakegem
+
+DESCRIPTION="A high performance selector API for monitoring IO objects"
+HOMEPAGE="https://github.com/socketry/nio4r"
+
+LICENSE="MIT || ( BSD GPL-2 )"
+SLOT="2"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86 ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+# Note that nio4r bundles a patched copy of libev, and without these
+# patches the tests fail: https://github.com/celluloid/nio4r/issues/15
+
+all_ruby_prepare() {
+ # See bug #855869 and its large number of dupes in bundled libev copies.
+ filter-lto
+ append-flags -fno-strict-aliasing
+
+ sed -i -e '/[Bb]undler/d' spec/spec_helper.rb || die
+ sed -e '/extension/ s:^:#:' -i Rakefile || die
+}
diff --git a/dev-ruby/nio4r/nio4r-2.6.1.ebuild b/dev-ruby/nio4r/nio4r-2.6.1.ebuild
new file mode 100644
index 000000000000..6fe4a3605cb9
--- /dev/null
+++ b/dev-ruby/nio4r/nio4r-2.6.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="changes.md readme.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/nio4r/extconf.rb)
+
+inherit flag-o-matic ruby-fakegem
+
+DESCRIPTION="A high performance selector API for monitoring IO objects"
+HOMEPAGE="https://github.com/socketry/nio4r"
+
+LICENSE="MIT || ( BSD GPL-2 )"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+# Note that nio4r bundles a patched copy of libev, and without these
+# patches the tests fail: https://github.com/celluloid/nio4r/issues/15
+
+all_ruby_prepare() {
+ # See bug #855869 and its large number of dupes in bundled libev copies.
+ filter-lto
+ append-flags -fno-strict-aliasing
+
+ sed -i -e '/[Bb]undler/d' spec/spec_helper.rb || die
+ sed -e '/extension/ s:^:#:' -i Rakefile || die
+}
diff --git a/dev-ruby/nio4r/nio4r-2.7.0.ebuild b/dev-ruby/nio4r/nio4r-2.7.0.ebuild
new file mode 100644
index 000000000000..8196c914fa21
--- /dev/null
+++ b/dev-ruby/nio4r/nio4r-2.7.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="changes.md readme.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/nio4r/extconf.rb)
+
+inherit flag-o-matic ruby-fakegem
+
+DESCRIPTION="A high performance selector API for monitoring IO objects"
+HOMEPAGE="https://github.com/socketry/nio4r"
+
+LICENSE="MIT || ( BSD GPL-2 )"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+# Note that nio4r bundles a patched copy of libev, and without these
+# patches the tests fail: https://github.com/celluloid/nio4r/issues/15
+
+all_ruby_prepare() {
+ # See bug #855869 and its large number of dupes in bundled libev copies.
+ filter-lto
+ append-flags -fno-strict-aliasing
+
+ sed -i -e '/[Bb]undler/d' spec/spec_helper.rb || die
+ sed -e '/extension/ s:^:#:' -i Rakefile || die
+}
diff --git a/dev-ruby/nio4r/nio4r-2.7.1.ebuild b/dev-ruby/nio4r/nio4r-2.7.1.ebuild
new file mode 100644
index 000000000000..71be4cfe731f
--- /dev/null
+++ b/dev-ruby/nio4r/nio4r-2.7.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="changes.md readme.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/nio4r/extconf.rb)
+
+inherit flag-o-matic ruby-fakegem
+
+DESCRIPTION="A high performance selector API for monitoring IO objects"
+HOMEPAGE="https://github.com/socketry/nio4r"
+
+LICENSE="MIT || ( BSD GPL-2 )"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~ppc-macos ~x64-macos ~x64-solaris"
+
+# Note that nio4r bundles a patched copy of libev, and without these
+# patches the tests fail: https://github.com/celluloid/nio4r/issues/15
+
+all_ruby_prepare() {
+ # See bug #855869 and its large number of dupes in bundled libev copies.
+ filter-lto
+ append-flags -fno-strict-aliasing
+
+ sed -i -e '/[Bb]undler/d' spec/spec_helper.rb || die
+ sed -e '/extension/ s:^:#:' -i Rakefile || die
+}
diff --git a/dev-ruby/nokogiri-diff/Manifest b/dev-ruby/nokogiri-diff/Manifest
index 6ca08c15b9c1..946c9622acd3 100644
--- a/dev-ruby/nokogiri-diff/Manifest
+++ b/dev-ruby/nokogiri-diff/Manifest
@@ -1 +1,2 @@
DIST nokogiri-diff-0.2.0.gem 8704 BLAKE2B e1df47db2e6e7fcd29eb229245cb9a9a7b31fded319a6fe28d04722f457f0ea7bc19e13ee49b2233f3c072eedf3c83c7e38cd8b19d5ecbc4937f709a9f4cf3a7 SHA512 9b2b6f266c9c7d01153c345567086b4cd1092a5984e6867ea81d15e00467936f296fd5e2c3ab7dc18e44d1dd2af022d250234fb4311a9be80fd3ca32b3d201ca
+DIST nokogiri-diff-0.3.0.gem 10240 BLAKE2B 2e90a279926c6fc33089a679f4a25d40a7075fbee2481291bbec1f936bf436595bfa8a967050249df29c1b34211529bdff0c8f847c6f88964164a93c9864b216 SHA512 da28e7c2ae03fc66a5b4d9ce6b266ca20dc47a84445bb5a109d40d8153d41c98e7c6547efe35484fc7dbe0e30507e6588894dfc0c4b0fc297c3b24fc4ebbb41e
diff --git a/dev-ruby/nokogiri-diff/files/nokogiri-diff-0.2.0-rspec3.patch b/dev-ruby/nokogiri-diff/files/nokogiri-diff-0.2.0-rspec3.patch
new file mode 100644
index 000000000000..c47bda03ec11
--- /dev/null
+++ b/dev-ruby/nokogiri-diff/files/nokogiri-diff-0.2.0-rspec3.patch
@@ -0,0 +1,436 @@
+From 4683f35469dbb69fa291ea35be4e7a74090a8b24 Mon Sep 17 00:00:00 2001
+From: Balasankar C <balasankarc@autistici.org>
+Date: Sat, 28 Nov 2015 17:55:09 +0530
+Subject: [PATCH] Port tests to RSpec 3
+
+---
+ Rakefile | 2 +-
+ gemspec.yml | 2 +-
+ spec/diff_spec.rb | 226 ++++++++++++++++++++++----------------------
+ spec/spec_helper.rb | 2 +-
+ 4 files changed, 116 insertions(+), 116 deletions(-)
+
+diff --git a/Rakefile b/Rakefile
+index 1b8a92d..7fb967c 100644
+--- a/Rakefile
++++ b/Rakefile
+@@ -12,7 +12,7 @@ rescue LoadError => e
+ end
+
+ begin
+- gem 'rspec', '~> 2.4'
++ gem 'rspec', '~> 3.0'
+ require 'rspec/core/rake_task'
+
+ RSpec::Core::RakeTask.new
+diff --git a/gemspec.yml b/gemspec.yml
+index 5ae611d..d775248 100644
+--- a/gemspec.yml
++++ b/gemspec.yml
+@@ -18,5 +18,5 @@ dependencies:
+
+ development_dependencies:
+ rubygems-tasks: ~> 0.1
+- rspec: ~> 2.4
++ rspec: ~> 3.0
+ yard: ~> 0.7
+diff --git a/spec/diff_spec.rb b/spec/diff_spec.rb
+index 6450c49..adfaaa8 100644
+--- a/spec/diff_spec.rb
++++ b/spec/diff_spec.rb
+@@ -21,197 +21,197 @@
+ let(:removed_attr) { Nokogiri::XML('<div><p>one</p></div>') }
+
+ it "should add #diff to Nokogiri::XML::Docuemnt" do
+- doc.should respond_to(:diff)
++ expect(doc).to respond_to(:diff)
+ end
+
+ it "should add #diff to Nokogiri::XML::Element" do
+- added_element.at('div').should respond_to(:diff)
++ expect(added_element.at('div')).to respond_to(:diff)
+ end
+
+ it "should add #diff to Nokogiri::XML::Text" do
+- added_text.at('p/text()').should respond_to(:diff)
++ expect(added_text.at('p/text()')).to respond_to(:diff)
+ end
+
+ it "should add #diff to Nokogiri::XML::Attr" do
+- added_attr.at('p/@id').should respond_to(:diff)
++ expect(added_attr.at('p/@id')).to respond_to(:diff)
+ end
+
+ it "should not compare the Document objects" do
+ change = doc.diff(doc).first
+
+- change[0].should == ' '
+- change[1].should == doc.root
++ expect(change[0]).to eq(' ')
++ expect(change[1]).to eq(doc.root)
+ end
+
+ it "should determine when two different documents are identical" do
+- doc.diff(Nokogiri::XML(contents)).all? { |change,node|
++ expect(doc.diff(Nokogiri::XML(contents)).all? { |change,node|
+ change == ' '
+- }.should == true
++ }).to eq(true)
+ end
+
+ it "should search down within Nokogiri::XML::Document objects" do
+- doc.diff(changed_text).any? { |change,node|
++ expect(doc.diff(changed_text).any? { |change,node|
+ change != ' '
+- }.should == true
++ }).to eq(true)
+ end
+
+ it "should determine when text nodes are added" do
+ changes = doc.at('div').diff(added_text.at('div')).to_a
+
+- changes.length.should == 4
++ expect(changes.length).to eq(4)
+
+- changes[0][0].should == ' '
+- changes[0][1].should == doc.at('div')
++ expect(changes[0][0]).to eq(' ')
++ expect(changes[0][1]).to eq(doc.at('div'))
+
+- changes[1][0].should == ' '
+- changes[1][1].should == doc.at('//p')
++ expect(changes[1][0]).to eq(' ')
++ expect(changes[1][1]).to eq(doc.at('//p'))
+
+- changes[2][0].should == '+'
+- changes[2][1].should == added_text.at('//div/text()')
++ expect(changes[2][0]).to eq('+')
++ expect(changes[2][1]).to eq(added_text.at('//div/text()'))
+
+- changes[3][0].should == ' '
+- changes[3][1].should == doc.at('//p/text()')
++ expect(changes[3][0]).to eq(' ')
++ expect(changes[3][1]).to eq(doc.at('//p/text()'))
+ end
+
+ it "should determine when elements are added" do
+ changes = doc.at('div').diff(added_element.at('div')).to_a
+
+- changes.length.should == 5
++ expect(changes.length).to eq(5)
+
+- changes[0][0].should == ' '
+- changes[0][1].should == doc.at('div')
++ expect(changes[0][0]).to eq(' ')
++ expect(changes[0][1]).to eq(doc.at('div'))
+
+- changes[1][0].should == '+'
+- changes[1][1].should == added_element.at('//p[1]')
++ expect(changes[1][0]).to eq('+')
++ expect(changes[1][1]).to eq(added_element.at('//p[1]'))
+
+- changes[2][0].should == ' '
+- changes[2][1].should == doc.at('//p')
++ expect(changes[2][0]).to eq(' ')
++ expect(changes[2][1]).to eq(doc.at('//p'))
+
+- changes[3][0].should == '-'
+- changes[3][1].should == doc.at('//p/text()')
++ expect(changes[3][0]).to eq('-')
++ expect(changes[3][1]).to eq(doc.at('//p/text()'))
+
+- changes[4][0].should == '+'
+- changes[4][1].should == added_element.at('//p[2]/text()')
++ expect(changes[4][0]).to eq('+')
++ expect(changes[4][1]).to eq(added_element.at('//p[2]/text()'))
+ end
+
+ it "should ignore when attribute order changes" do
+ changes = added_attrs.at('p').diff(changed_attr_order.at('p')).to_a
+
+- changes.all? { |change| change[0] == ' ' }.should be_true
++ expect(changes.all? { |change| change[0] == ' ' }).to be_truthy
+ end
+
+ it "should determine when attributes are added" do
+ changes = doc.at('p').diff(added_attr.at('p')).to_a
+
+- changes.length.should == 3
++ expect(changes.length).to eq(3)
+
+- changes[0][0].should == ' '
+- changes[0][1].should == doc.at('p')
++ expect(changes[0][0]).to eq(' ')
++ expect(changes[0][1]).to eq(doc.at('p'))
+
+- changes[1][0].should == '+'
+- changes[1][1].should == added_attr.at('//p/@id')
++ expect(changes[1][0]).to eq('+')
++ expect(changes[1][1]).to eq(added_attr.at('//p/@id'))
+
+- changes[2][0].should == ' '
+- changes[2][1].should == doc.at('//p/text()')
++ expect(changes[2][0]).to eq(' ')
++ expect(changes[2][1]).to eq(doc.at('//p/text()'))
+ end
+
+ it "should determine when text nodes differ" do
+ changes = doc.at('p').diff(changed_text.at('p')).to_a
+
+- changes.length.should == 3
++ expect(changes.length).to eq(3)
+
+- changes[0][0].should == ' '
+- changes[0][1].should == doc.at('p')
++ expect(changes[0][0]).to eq(' ')
++ expect(changes[0][1]).to eq(doc.at('p'))
+
+- changes[1][0].should == '-'
+- changes[1][1].should == doc.at('//p/text()')
++ expect(changes[1][0]).to eq('-')
++ expect(changes[1][1]).to eq(doc.at('//p/text()'))
+
+- changes[2][0].should == '+'
+- changes[2][1].should == changed_text.at('//p/text()')
++ expect(changes[2][0]).to eq('+')
++ expect(changes[2][1]).to eq(changed_text.at('//p/text()'))
+ end
+
+ it "should determine when element names differ" do
+ changes = doc.at('div').diff(changed_element.at('div')).to_a
+
+- changes.length.should == 3
++ expect(changes.length).to eq(3)
+
+- changes[0][0].should == ' '
+- changes[0][1].should == doc.at('div')
++ expect(changes[0][0]).to eq(' ')
++ expect(changes[0][1]).to eq(doc.at('div'))
+
+- changes[1][0].should == '-'
+- changes[1][1].should == doc.at('p')
++ expect(changes[1][0]).to eq('-')
++ expect(changes[1][1]).to eq(doc.at('p'))
+
+- changes[2][0].should == '+'
+- changes[2][1].should == changed_element.at('span')
++ expect(changes[2][0]).to eq('+')
++ expect(changes[2][1]).to eq(changed_element.at('span'))
+ end
+
+ it "should determine when attribute names differ" do
+ changes = added_attr.at('p').diff(changed_attr_name.at('p')).to_a
+
+- changes.length.should == 4
++ expect(changes.length).to eq(4)
+
+- changes[0][0].should == ' '
+- changes[0][1].should == added_attr.at('p')
++ expect(changes[0][0]).to eq(' ')
++ expect(changes[0][1]).to eq(added_attr.at('p'))
+
+- changes[1][0].should == '-'
+- changes[1][1].should == added_attr.at('//p/@id')
++ expect(changes[1][0]).to eq('-')
++ expect(changes[1][1]).to eq(added_attr.at('//p/@id'))
+
+- changes[2][0].should == '+'
+- changes[2][1].should == changed_attr_name.at('//p/@i')
++ expect(changes[2][0]).to eq('+')
++ expect(changes[2][1]).to eq(changed_attr_name.at('//p/@i'))
+
+- changes[3][0].should == ' '
+- changes[3][1].should == added_attr.at('//p/text()')
++ expect(changes[3][0]).to eq(' ')
++ expect(changes[3][1]).to eq(added_attr.at('//p/text()'))
+ end
+
+ it "should determine when attribute values differ" do
+ changes = added_attr.at('p').diff(changed_attr_value.at('p')).to_a
+
+- changes.length.should == 4
++ expect(changes.length).to eq(4)
+
+- changes[0][0].should == ' '
+- changes[0][1].should == added_attr.at('p')
++ expect(changes[0][0]).to eq(' ')
++ expect(changes[0][1]).to eq(added_attr.at('p'))
+
+- changes[1][0].should == '-'
+- changes[1][1].should == added_attr.at('//p/@id')
++ expect(changes[1][0]).to eq('-')
++ expect(changes[1][1]).to eq(added_attr.at('//p/@id'))
+
+- changes[2][0].should == '+'
+- changes[2][1].should == changed_attr_value.at('//p/@id')
++ expect(changes[2][0]).to eq('+')
++ expect(changes[2][1]).to eq(changed_attr_value.at('//p/@id'))
+
+- changes[3][0].should == ' '
+- changes[3][1].should == added_attr.at('//p/text()')
++ expect(changes[3][0]).to eq(' ')
++ expect(changes[3][1]).to eq(added_attr.at('//p/text()'))
+ end
+
+ it "should determine when text nodes are removed" do
+ changes = added_text.at('div').diff(removed_text.at('div')).to_a
+
+- changes.length.should == 4
++ expect(changes.length).to eq(4)
+
+- changes[0][0].should == ' '
+- changes[0][1].should == added_text.at('div')
++ expect(changes[0][0]).to eq(' ')
++ expect(changes[0][1]).to eq(added_text.at('div'))
+
+- changes[1][0].should == ' '
+- changes[1][1].should == added_text.at('p')
++ expect(changes[1][0]).to eq(' ')
++ expect(changes[1][1]).to eq(added_text.at('p'))
+
+- changes[2][0].should == ' '
+- changes[2][1].should == added_text.at('//div/text()')
++ expect(changes[2][0]).to eq(' ')
++ expect(changes[2][1]).to eq(added_text.at('//div/text()'))
+
+- changes[3][0].should == '-'
+- changes[3][1].should == added_text.at('//p/text()')
++ expect(changes[3][0]).to eq('-')
++ expect(changes[3][1]).to eq(added_text.at('//p/text()'))
+ end
+
+ it "should determine when elements are removed" do
+ changes = added_element.at('div').diff(removed_element.at('div')).to_a
+
+- changes.length.should == 3
++ expect(changes.length).to eq(3)
+
+- changes[0][0].should == ' '
+- changes[0][1].should == added_element.at('div')
++ expect(changes[0][0]).to eq(' ')
++ expect(changes[0][1]).to eq(added_element.at('div'))
+
+- changes[1][0].should == '-'
+- changes[1][1].should == added_element.at('//p[1]')
++ expect(changes[1][0]).to eq('-')
++ expect(changes[1][1]).to eq(added_element.at('//p[1]'))
+
+- changes[2][0].should == '-'
+- changes[2][1].should == added_element.at('//p[2]')
++ expect(changes[2][0]).to eq('-')
++ expect(changes[2][1]).to eq(added_element.at('//p[2]'))
+ end
+
+ it "should ignore when attributes change order" do
+@@ -220,47 +220,47 @@
+ it "should determine when attributes are removed" do
+ changes = added_attr.at('div').diff(removed_attr.at('div')).to_a
+
+- changes.length.should == 4
++ expect(changes.length).to eq(4)
+
+- changes[0][0].should == ' '
+- changes[0][1].should == added_attr.at('div')
++ expect(changes[0][0]).to eq(' ')
++ expect(changes[0][1]).to eq(added_attr.at('div'))
+
+- changes[1][0].should == ' '
+- changes[1][1].should == added_attr.at('p')
++ expect(changes[1][0]).to eq(' ')
++ expect(changes[1][1]).to eq(added_attr.at('p'))
+
+- changes[2][0].should == '-'
+- changes[2][1].should == added_attr.at('//p/@id')
++ expect(changes[2][0]).to eq('-')
++ expect(changes[2][1]).to eq(added_attr.at('//p/@id'))
+
+- changes[3][0].should == ' '
+- changes[3][1].should == added_attr.at('//p/text()')
++ expect(changes[3][0]).to eq(' ')
++ expect(changes[3][1]).to eq(added_attr.at('//p/text()'))
+ end
+
+ context ":added" do
+ it "should determine only when text nodes are added" do
+ changes = doc.at('div').diff(added_text.at('div'), :added => true).to_a
+
+- changes.length.should == 1
++ expect(changes.length).to eq(1)
+
+- changes[0][0].should == '+'
+- changes[0][1].should == added_text.at('//div/text()')
++ expect(changes[0][0]).to eq('+')
++ expect(changes[0][1]).to eq(added_text.at('//div/text()'))
+ end
+
+ it "should determine only when elements are added" do
+ changes = doc.at('div').diff(added_element.at('div'), :added => true).to_a
+
+- changes.length.should == 1
++ expect(changes.length).to eq(1)
+
+- changes[0][0].should == '+'
+- changes[0][1].should == added_element.at('//div/p[2]')
++ expect(changes[0][0]).to eq('+')
++ expect(changes[0][1]).to eq(added_element.at('//div/p[2]'))
+ end
+
+ it "should determine only when attributes are added" do
+ changes = doc.at('div').diff(added_attr.at('div'), :added => true).to_a
+
+- changes.length.should == 1
++ expect(changes.length).to eq(1)
+
+- changes[0][0].should == '+'
+- changes[0][1].should == added_attr.at('//p/@id')
++ expect(changes[0][0]).to eq('+')
++ expect(changes[0][1]).to eq(added_attr.at('//p/@id'))
+ end
+ end
+
+@@ -268,28 +268,28 @@
+ it "should determine only when text nodes are removed" do
+ changes = doc.at('div').diff(removed_text.at('div'), :removed => true).to_a
+
+- changes.length.should == 1
++ expect(changes.length).to eq(1)
+
+- changes[0][0].should == '-'
+- changes[0][1].should == doc.at('//p/text()')
++ expect(changes[0][0]).to eq('-')
++ expect(changes[0][1]).to eq(doc.at('//p/text()'))
+ end
+
+ it "should determine only when elements are removed" do
+ changes = doc.at('div').diff(removed_element.at('div'), :removed => true).to_a
+
+- changes.length.should == 1
++ expect(changes.length).to eq(1)
+
+- changes[0][0].should == '-'
+- changes[0][1].should == doc.at('//div/p')
++ expect(changes[0][0]).to eq('-')
++ expect(changes[0][1]).to eq(doc.at('//div/p'))
+ end
+
+ it "should determine only when attributes are removed" do
+ changes = added_attr.at('div').diff(removed_attr.at('div'), :removed => true).to_a
+
+- changes.length.should == 1
++ expect(changes.length).to eq(1)
+
+- changes[0][0].should == '-'
+- changes[0][1].should == added_attr.at('//p/@id')
++ expect(changes[0][0]).to eq('-')
++ expect(changes[0][1]).to eq(added_attr.at('//p/@id'))
+ end
+ end
+ end
+diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb
+index 4b9ecea..5f26cbb 100644
+--- a/spec/spec_helper.rb
++++ b/spec/spec_helper.rb
+@@ -1,2 +1,2 @@
+-gem 'rspec', '~> 2.4'
++gem 'rspec', '~> 3.0'
+ require 'rspec'
diff --git a/dev-ruby/nokogiri-diff/metadata.xml b/dev-ruby/nokogiri-diff/metadata.xml
index e6bc1f81df13..08361040e6cf 100644
--- a/dev-ruby/nokogiri-diff/metadata.xml
+++ b/dev-ruby/nokogiri-diff/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/nokogiri-diff/nokogiri-diff-0.2.0-r2.ebuild b/dev-ruby/nokogiri-diff/nokogiri-diff-0.2.0-r2.ebuild
deleted file mode 100644
index 21d6766994d7..000000000000
--- a/dev-ruby/nokogiri-diff/nokogiri-diff-0.2.0-r2.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Calculate the differences between two XML/HTML documents"
-HOMEPAGE="https://github.com/postmodern/nokogiri-diff"
-LICENSE="MIT"
-
-KEYWORDS="amd64 arm ~arm64 ~hppa ppc ppc64 x86 ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/nokogiri-1.5 >=dev-ruby/tdiff-0.3.2"
diff --git a/dev-ruby/nokogiri-diff/nokogiri-diff-0.2.0-r3.ebuild b/dev-ruby/nokogiri-diff/nokogiri-diff-0.2.0-r3.ebuild
new file mode 100644
index 000000000000..9352ba1e585a
--- /dev/null
+++ b/dev-ruby/nokogiri-diff/nokogiri-diff-0.2.0-r3.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Calculate the differences between two XML/HTML documents"
+HOMEPAGE="https://github.com/postmodern/nokogiri-diff"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 x86 ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+PATCHES=( "${FILESDIR}/${P}-rspec3.patch" )
+
+ruby_add_rdepend ">=dev-ruby/nokogiri-1.5 >=dev-ruby/tdiff-0.3.2"
diff --git a/dev-ruby/nokogiri-diff/nokogiri-diff-0.3.0.ebuild b/dev-ruby/nokogiri-diff/nokogiri-diff-0.3.0.ebuild
new file mode 100644
index 000000000000..9e76ad01ffb3
--- /dev/null
+++ b/dev-ruby/nokogiri-diff/nokogiri-diff-0.3.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Calculate the differences between two XML/HTML documents"
+HOMEPAGE="https://github.com/postmodern/nokogiri-diff"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~x86 ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+ruby_add_rdepend ">=dev-ruby/nokogiri-1.5 >=dev-ruby/tdiff-0.4.0:0"
+
+all_ruby_prepare() {
+ sed -e '/simplecov/I s:^:#:' -i spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/nokogiri/Manifest b/dev-ruby/nokogiri/Manifest
index bfaf0d40a6eb..07f5c6691d5f 100644
--- a/dev-ruby/nokogiri/Manifest
+++ b/dev-ruby/nokogiri/Manifest
@@ -1,2 +1,5 @@
-DIST nokogiri-1.10.4-git.tgz 5792963 BLAKE2B 80223c7bda39c56ced8e98d1d9f6858907f2814eb2d9f28d13c9f26fe29ae7f057e5a19765a3b304ffc4f9edd3dd0f77b99d5a673923ce95a8f02135aa9882ca SHA512 c27877297d432b9a9baf3e0639600d6ca5b382a87ff0dc1efb5d9bb3c79aaa31a589a4491f938283e4f9d35e8d29b6f88a60e27a5d4c81e7b491e100f8d06a9d
-DIST nokogiri-1.8.4-git.tgz 5754921 BLAKE2B 189dc8ffe4df67b04fa8436799bd6d64e4f8c1f93206b619bda8e153afffb3091fdfab9a3a4da28fcaa2650711aad6e37232e4e948a74c217f7fdc8b061dd4cd SHA512 ed409daeb4e13f93e13bc6901ee27bf5d1155e24fb306b5b9e8ba462517d26d4514413b9728d4a8f2514015c54436b9689a11449030c7bb5826d2ca7bf7eb97a
+DIST nokogiri-1.15.3-git.tgz 10767496 BLAKE2B d9d2abd3f57fd3f9e3e49e38de7559d5d9bad278166b4108d2edf4f90884256c01bf574cec8a15b6f30420c9f4d501707b710e3af0f32dc5cbcc01b4433c6662 SHA512 9084e97c81bca52c19cf2cd47dcf0d3377705ceda559399aa1cbf1e112845b2a796e34576f08a073377fb523a7a298254bda91563929535734700c31c473cb49
+DIST nokogiri-1.15.5-git.tgz 10768080 BLAKE2B 25d24799c69a4271ea5283b264061c05f6907635ed55de196f76684d2db3c6c226e7f09f02f30de049b282c17cdea69154dec9a06813cb4f63adaac4876e160c SHA512 1df3f6bf4508a7c84fa22ce774cb878ca47154e69730f1cedb403fad270df42c580526ac03b47e73bf2267ad50d2999ed1341079b10043b450f51ea6b0565da7
+DIST nokogiri-1.16.2-git.tgz 11014186 BLAKE2B 8b34c586f3326278299786fec8b7513f61d7c147b453d984107d1d6896b42e8e59f078ac32577bebd71fc510e99087e80f8ea4eef822c73a41fc17c0ec079108 SHA512 844a47fcc9ad8677bed5486fd3437e9a685143afc8c8d71464301c14cc09e93827f3a91713df22f741434989adb24ed6d9144b3a4d0f3cb7f63fc83c2d3130a9
+DIST nokogiri-1.16.3-git.tgz 11014282 BLAKE2B fbda2a863374e25a9dae0e7ab145419b759e1ec615a8e87418825ed1d188801d535be87bb9e36bb717062080bb2a9f7cb179fdb311dd4dda61b019a41d4df6b8 SHA512 e86d5d2cb47720b9f2e72ced13e07e6d9a2bda808e05d9d151ffba92820e148bb6cd8cfe148d15247b13c23feb2abe64942f2665431e66dc821b9655425df8e3
+DIST nokogiri-1.16.4-git.tgz 11014494 BLAKE2B c07d75af189a8f897b885c111bb43258d039c31c8134df4dff65162fb5d3c24c48ec1194af24d816d8c5cc405b8384ae6430ffdce0a8687504f1de2b784b70dd SHA512 76a179fa7c907d5ffd548e472b9d03d02ba1afbd80c58f8c2760a0e342c2d3db75bd973e7a2f3751c671b68dd63ea3da95a6631f4963e18f85d5c5e7b9b877f4
diff --git a/dev-ruby/nokogiri/metadata.xml b/dev-ruby/nokogiri/metadata.xml
index 5f066fb994d6..06ce51090399 100644
--- a/dev-ruby/nokogiri/metadata.xml
+++ b/dev-ruby/nokogiri/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/nokogiri/nokogiri-1.10.4.ebuild b/dev-ruby/nokogiri/nokogiri-1.10.4.ebuild
deleted file mode 100644
index de747099c26c..000000000000
--- a/dev-ruby/nokogiri/nokogiri-1.10.4.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md ROADMAP.md STANDARD_RESPONSES.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="ext"
-
-inherit ruby-fakegem eutils multilib
-
-DESCRIPTION="Nokogiri is an HTML, XML, SAX, and Reader parser"
-HOMEPAGE="https://www.nokogiri.org/"
-LICENSE="MIT"
-SRC_URI="https://github.com/sparklemotion/nokogiri/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ppc ppc64 ~s390 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-RDEPEND="${RDEPEND}
- >=dev-libs/libxml2-2.9.9:=
- >=dev-libs/libxslt-1.1.33
- virtual/libiconv"
-DEPEND="${DEPEND}
- >=dev-libs/libxml2-2.9.9
- >=dev-libs/libxslt-1.1.33
- virtual/libiconv"
-
-ruby_add_bdepend "
- >=dev-ruby/pkg-config-1.1.7
- >=dev-ruby/rexical-1.0.7
- dev-ruby/rdoc
- dev-ruby/racc
- test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i \
- -e '/tasks\/cross_compile/s:^:#:' \
- -e '/:test.*prerequisites/s:^:#:' \
- -e '/license/ s:^:#:' \
- Rakefile || die
- # Remove the cross compilation options since they interfere with
- # native building.
- sed -i -e 's/cross_compile = true/cross_compile = false/' Rakefile || die
- sed -i -e '/cross_config_options/d' Rakefile || die
-}
-
-each_ruby_configure() {
- NOKOGIRI_USE_SYSTEM_LIBRARIES=true \
- ${RUBY} -Cext/${PN} extconf.rb \
- --with-zlib-include="${EPREFIX}"/usr/include \
- --with-zlib-lib="${EPREFIX}"/$(get_libdir) \
- --with-iconv-include="${EPREFIX}"/usr/include \
- --with-iconv-lib="${EPREFIX}"/$(get_libdir) \
- --with-xml2-include="${EPREFIX}"/usr/include/libxml2 \
- --with-xml2-lib="${EPREFIX}"/usr/$(get_libdir) \
- --with-xslt-dir="${EPREFIX}"/usr \
- --with-iconvlib=iconv \
- || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- if ! [[ -f lib/nokogiri/css/tokenizer.rb ]]; then
- ${RUBY} -S rake lib/nokogiri/css/tokenizer.rb || die "rexical failed"
- fi
-
- if ! [[ -f lib/nokogiri/css/parser.rb ]]; then
- ${RUBY} -S rake lib/nokogiri/css/parser.rb || die "racc failed"
- fi
-
- emake -Cext/${PN} \
- V=1 \
- CFLAGS="${CFLAGS} -fPIC" \
- archflag="${LDFLAGS}" || die "make extension failed"
- cp -l ext/${PN}/${PN}$(get_modname) lib/${PN}/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:.:test -e 'Dir["test/**/test_*.rb"].each {|f| require f}' || die
-}
-
-each_ruby_install() {
- # Clean up "ext" directory before installing it. nokogumbo expects
- # the header files and shared object to be in ext.
- rm -rf ext/java ext/nokogiri/*.o ext/nokogiri/{mkmf.log,Makefile} || die
-
- each_fakegem_install
-}
diff --git a/dev-ruby/nokogiri/nokogiri-1.15.3.ebuild b/dev-ruby/nokogiri/nokogiri-1.15.3.ebuild
new file mode 100644
index 000000000000..201ad4a00c77
--- /dev/null
+++ b/dev-ruby/nokogiri/nokogiri-1.15.3.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md ROADMAP.md SECURITY.md"
+
+RUBY_FAKEGEM_GEMSPEC="nokogiri.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/nokogiri/extconf.rb)
+
+inherit ruby-fakegem multilib
+
+DESCRIPTION="Nokogiri is an HTML, XML, SAX, and Reader parser"
+HOMEPAGE="https://nokogiri.org/"
+LICENSE="MIT"
+SRC_URI="https://github.com/sparklemotion/nokogiri/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos"
+SLOT="0"
+IUSE=""
+
+RDEPEND="${RDEPEND}
+ >=dev-libs/libxml2-2.11.4
+ >=dev-libs/libxslt-1.1.37
+ sys-libs/zlib
+ virtual/libiconv"
+DEPEND="${DEPEND}
+ >=dev-libs/libxml2-2.11.4
+ >=dev-libs/libxslt-1.1.38
+ >=sys-libs/zlib-1.2.13
+ virtual/libiconv"
+
+ruby_add_rdepend ">=dev-ruby/racc-1.4:0"
+
+ruby_add_bdepend "
+ dev-ruby/mini_portile2:2.8
+ >=dev-ruby/rexical-1.0.7
+ dev-ruby/rdoc
+ test? ( dev-ruby/minitest dev-ruby/rubyzip )"
+
+all_ruby_prepare() {
+ sed -i \
+ -e '/tasks\/cross_compile/s:^:#:' \
+ -e '/:test.*prerequisites/s:^:#:' \
+ -e '/license/ s:^:#:' \
+ Rakefile || die
+ # Remove the cross compilation options since they interfere with
+ # native building.
+ sed -i -e 's/cross_compile = true/cross_compile = false/' Rakefile || die
+ sed -i -e '/cross_config_options/d' Rakefile || die
+
+ sed -e '/simplecov/,/^end/ s:^:#:' \
+ -e '/reporters/I s:^:#:' \
+ -i test/helper.rb || die
+
+ # There is no need for mini_portile2 to be a runtime dependency on Gentoo
+ sed -i -e '/mini_portile2/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_configure() {
+ NOKOGIRI_USE_SYSTEM_LIBRARIES=true \
+ ${RUBY} -Cext/${PN} extconf.rb \
+ --with-zlib-include="${EPREFIX}"/usr/include \
+ --with-zlib-lib="${EPREFIX}"/$(get_libdir) \
+ --with-iconv-include="${EPREFIX}"/usr/include \
+ --with-iconv-lib="${EPREFIX}"/$(get_libdir) \
+ --with-xml2-include="${EPREFIX}"/usr/include/libxml2 \
+ --with-xml2-lib="${EPREFIX}"/usr/$(get_libdir) \
+ --with-xslt-dir="${EPREFIX}"/usr \
+ --with-iconvlib=iconv \
+ || die "extconf.rb failed"
+}
+
+each_ruby_compile() {
+ if ! [[ -f lib/nokogiri/css/tokenizer.rb ]]; then
+ ${RUBY} -S rake lib/nokogiri/css/tokenizer.rb || die "rexical failed"
+ fi
+
+ if ! [[ -f lib/nokogiri/css/parser.rb ]]; then
+ ${RUBY} -S rake lib/nokogiri/css/parser.rb || die "racc failed"
+ fi
+
+ emake -Cext/${PN} \
+ V=1 \
+ CFLAGS="${CFLAGS} -fPIC" \
+ archflag="${LDFLAGS}" || die "make extension failed"
+ cp -l ext/${PN}/${PN}$(get_modname) lib/${PN}/ || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/test_*.rb"].each {|f| require f}' || die
+}
diff --git a/dev-ruby/nokogiri/nokogiri-1.15.5.ebuild b/dev-ruby/nokogiri/nokogiri-1.15.5.ebuild
new file mode 100644
index 000000000000..408df7c220cf
--- /dev/null
+++ b/dev-ruby/nokogiri/nokogiri-1.15.5.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md ROADMAP.md SECURITY.md"
+
+RUBY_FAKEGEM_GEMSPEC="nokogiri.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/nokogiri/extconf.rb)
+
+inherit ruby-fakegem multilib
+
+DESCRIPTION="Nokogiri is an HTML, XML, SAX, and Reader parser"
+HOMEPAGE="https://nokogiri.org/"
+LICENSE="MIT"
+SRC_URI="https://github.com/sparklemotion/nokogiri/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos"
+SLOT="0"
+IUSE=""
+
+RDEPEND="${RDEPEND}
+ >=dev-libs/libxml2-2.11.6
+ >=dev-libs/libxslt-1.1.39
+ sys-libs/zlib
+ virtual/libiconv"
+DEPEND="${DEPEND}
+ >=dev-libs/libxml2-2.11.6
+ >=dev-libs/libxslt-1.1.39
+ >=sys-libs/zlib-1.2.13
+ virtual/libiconv"
+
+ruby_add_rdepend ">=dev-ruby/racc-1.4:0"
+
+ruby_add_bdepend "
+ dev-ruby/mini_portile2:2.8
+ >=dev-ruby/rexical-1.0.7
+ dev-ruby/rdoc
+ test? ( dev-ruby/minitest dev-ruby/rubyzip )"
+
+all_ruby_prepare() {
+ sed -i \
+ -e '/tasks\/cross_compile/s:^:#:' \
+ -e '/:test.*prerequisites/s:^:#:' \
+ -e '/license/ s:^:#:' \
+ Rakefile || die
+ # Remove the cross compilation options since they interfere with
+ # native building.
+ sed -i -e 's/cross_compile = true/cross_compile = false/' Rakefile || die
+ sed -i -e '/cross_config_options/d' Rakefile || die
+
+ sed -e '/simplecov/,/^end/ s:^:#:' \
+ -e '/reporters/I s:^:#:' \
+ -i test/helper.rb || die
+
+ # There is no need for mini_portile2 to be a runtime dependency on Gentoo
+ sed -i -e '/mini_portile2/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_configure() {
+ NOKOGIRI_USE_SYSTEM_LIBRARIES=true \
+ ${RUBY} -Cext/${PN} extconf.rb \
+ --with-zlib-include="${EPREFIX}"/usr/include \
+ --with-zlib-lib="${EPREFIX}"/$(get_libdir) \
+ --with-iconv-include="${EPREFIX}"/usr/include \
+ --with-iconv-lib="${EPREFIX}"/$(get_libdir) \
+ --with-xml2-include="${EPREFIX}"/usr/include/libxml2 \
+ --with-xml2-lib="${EPREFIX}"/usr/$(get_libdir) \
+ --with-xslt-dir="${EPREFIX}"/usr \
+ --with-iconvlib=iconv \
+ || die "extconf.rb failed"
+}
+
+each_ruby_compile() {
+ if ! [[ -f lib/nokogiri/css/tokenizer.rb ]]; then
+ ${RUBY} -S rake lib/nokogiri/css/tokenizer.rb || die "rexical failed"
+ fi
+
+ if ! [[ -f lib/nokogiri/css/parser.rb ]]; then
+ ${RUBY} -S rake lib/nokogiri/css/parser.rb || die "racc failed"
+ fi
+
+ emake -Cext/${PN} \
+ V=1 \
+ CFLAGS="${CFLAGS} -fPIC" \
+ archflag="${LDFLAGS}" || die "make extension failed"
+ cp -l ext/${PN}/${PN}$(get_modname) lib/${PN}/ || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=1 ${RUBY} -Ilib:.:test -e 'Dir["test/**/test_*.rb"].each {|f| require f}' || die
+}
diff --git a/dev-ruby/nokogiri/nokogiri-1.16.2.ebuild b/dev-ruby/nokogiri/nokogiri-1.16.2.ebuild
new file mode 100644
index 000000000000..6842350c158e
--- /dev/null
+++ b/dev-ruby/nokogiri/nokogiri-1.16.2.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md ROADMAP.md SECURITY.md"
+
+RUBY_FAKEGEM_GEMSPEC="nokogiri.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/nokogiri/extconf.rb)
+
+inherit ruby-fakegem multilib
+
+DESCRIPTION="Nokogiri is an HTML, XML, SAX, and Reader parser"
+HOMEPAGE="https://nokogiri.org/"
+LICENSE="MIT"
+SRC_URI="https://github.com/sparklemotion/nokogiri/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos"
+SLOT="0"
+IUSE="test"
+
+RDEPEND="${RDEPEND}
+ >=dev-libs/libxml2-2.12.5
+ >=dev-libs/libxslt-1.1.39
+ sys-libs/zlib
+ virtual/libiconv"
+DEPEND="${DEPEND}
+ >=dev-libs/libxml2-2.12.5
+ >=dev-libs/libxslt-1.1.39
+ >=sys-libs/zlib-1.2.13
+ virtual/libiconv"
+
+ruby_add_rdepend ">=dev-ruby/racc-1.4:0"
+
+ruby_add_bdepend "
+ dev-ruby/mini_portile2:2.8
+ >=dev-ruby/rexical-1.0.7
+ dev-ruby/rdoc
+ test? ( dev-ruby/minitest dev-ruby/rubyzip )"
+
+all_ruby_prepare() {
+ sed -i \
+ -e '/tasks\/cross_compile/s:^:#:' \
+ -e '/:test.*prerequisites/s:^:#:' \
+ -e '/license/ s:^:#:' \
+ Rakefile || die
+ # Remove the cross compilation options since they interfere with
+ # native building.
+ sed -i -e 's/cross_compile = true/cross_compile = false/' Rakefile || die
+ sed -i -e '/cross_config_options/d' Rakefile || die
+
+ sed -e '/reporters/I s:^:#:' \
+ -i test/helper.rb || die
+
+ # There is no need for mini_portile2 to be a runtime dependency on Gentoo
+ sed -i -e '/mini_portile2/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_configure() {
+ NOKOGIRI_USE_SYSTEM_LIBRARIES=true \
+ ${RUBY} -Cext/${PN} extconf.rb \
+ --with-zlib-include="${EPREFIX}"/usr/include \
+ --with-zlib-lib="${EPREFIX}"/$(get_libdir) \
+ --with-iconv-include="${EPREFIX}"/usr/include \
+ --with-iconv-lib="${EPREFIX}"/$(get_libdir) \
+ --with-xml2-include="${EPREFIX}"/usr/include/libxml2 \
+ --with-xml2-lib="${EPREFIX}"/usr/$(get_libdir) \
+ --with-xslt-dir="${EPREFIX}"/usr \
+ --with-iconvlib=iconv \
+ || die "extconf.rb failed"
+}
+
+each_ruby_compile() {
+ if ! [[ -f lib/nokogiri/css/tokenizer.rb ]]; then
+ ${RUBY} -S rake lib/nokogiri/css/tokenizer.rb || die "rexical failed"
+ fi
+
+ if ! [[ -f lib/nokogiri/css/parser.rb ]]; then
+ ${RUBY} -S rake lib/nokogiri/css/parser.rb || die "racc failed"
+ fi
+
+ emake -Cext/${PN} \
+ V=1 \
+ CFLAGS="${CFLAGS} -fPIC" \
+ archflag="${LDFLAGS}" || die "make extension failed"
+ cp -l ext/${PN}/${PN}$(get_modname) lib/${PN}/ || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=1 \
+ RUBY_MEMCHECK_RUNNING=true \
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/test_*.rb"].each {|f| require f}' || die
+}
diff --git a/dev-ruby/nokogiri/nokogiri-1.16.3.ebuild b/dev-ruby/nokogiri/nokogiri-1.16.3.ebuild
new file mode 100644
index 000000000000..e3afcfa435ee
--- /dev/null
+++ b/dev-ruby/nokogiri/nokogiri-1.16.3.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md ROADMAP.md SECURITY.md"
+
+RUBY_FAKEGEM_GEMSPEC="nokogiri.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/nokogiri/extconf.rb)
+
+inherit ruby-fakegem multilib
+
+DESCRIPTION="Nokogiri is an HTML, XML, SAX, and Reader parser"
+HOMEPAGE="https://nokogiri.org/"
+LICENSE="MIT"
+SRC_URI="https://github.com/sparklemotion/nokogiri/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos"
+SLOT="0"
+IUSE="test"
+
+RDEPEND="${RDEPEND}
+ >=dev-libs/libxml2-2.12.6
+ >=dev-libs/libxslt-1.1.39
+ sys-libs/zlib
+ virtual/libiconv"
+DEPEND="${DEPEND}
+ >=dev-libs/libxml2-2.12.6
+ >=dev-libs/libxslt-1.1.39
+ >=sys-libs/zlib-1.2.13
+ virtual/libiconv"
+
+ruby_add_rdepend ">=dev-ruby/racc-1.4:0"
+
+ruby_add_bdepend "
+ dev-ruby/mini_portile2:2.8
+ >=dev-ruby/rexical-1.0.7
+ dev-ruby/rdoc
+ test? ( dev-ruby/minitest dev-ruby/rubyzip )"
+
+all_ruby_prepare() {
+ sed -i \
+ -e '/tasks\/cross_compile/s:^:#:' \
+ -e '/:test.*prerequisites/s:^:#:' \
+ -e '/license/ s:^:#:' \
+ Rakefile || die
+ # Remove the cross compilation options since they interfere with
+ # native building.
+ sed -i -e 's/cross_compile = true/cross_compile = false/' Rakefile || die
+ sed -i -e '/cross_config_options/d' Rakefile || die
+
+ sed -e '/reporters/I s:^:#:' \
+ -i test/helper.rb || die
+
+ # There is no need for mini_portile2 to be a runtime dependency on Gentoo
+ sed -i -e '/mini_portile2/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_configure() {
+ NOKOGIRI_USE_SYSTEM_LIBRARIES=true \
+ ${RUBY} -Cext/${PN} extconf.rb \
+ --with-zlib-include="${EPREFIX}"/usr/include \
+ --with-zlib-lib="${EPREFIX}"/$(get_libdir) \
+ --with-iconv-include="${EPREFIX}"/usr/include \
+ --with-iconv-lib="${EPREFIX}"/$(get_libdir) \
+ --with-xml2-include="${EPREFIX}"/usr/include/libxml2 \
+ --with-xml2-lib="${EPREFIX}"/usr/$(get_libdir) \
+ --with-xslt-dir="${EPREFIX}"/usr \
+ --with-iconvlib=iconv \
+ || die "extconf.rb failed"
+}
+
+each_ruby_compile() {
+ if ! [[ -f lib/nokogiri/css/tokenizer.rb ]]; then
+ ${RUBY} -S rake lib/nokogiri/css/tokenizer.rb || die "rexical failed"
+ fi
+
+ if ! [[ -f lib/nokogiri/css/parser.rb ]]; then
+ ${RUBY} -S rake lib/nokogiri/css/parser.rb || die "racc failed"
+ fi
+
+ emake -Cext/${PN} \
+ V=1 \
+ CFLAGS="${CFLAGS} -fPIC" \
+ archflag="${LDFLAGS}" || die "make extension failed"
+ cp -l ext/${PN}/${PN}$(get_modname) lib/${PN}/ || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=1 \
+ RUBY_MEMCHECK_RUNNING=true \
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/test_*.rb"].each {|f| require f}' || die
+}
diff --git a/dev-ruby/nokogiri/nokogiri-1.16.4.ebuild b/dev-ruby/nokogiri/nokogiri-1.16.4.ebuild
new file mode 100644
index 000000000000..44e350cce0d1
--- /dev/null
+++ b/dev-ruby/nokogiri/nokogiri-1.16.4.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md ROADMAP.md SECURITY.md"
+
+RUBY_FAKEGEM_GEMSPEC="nokogiri.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/nokogiri/extconf.rb)
+
+inherit ruby-fakegem multilib
+
+DESCRIPTION="Nokogiri is an HTML, XML, SAX, and Reader parser"
+HOMEPAGE="https://nokogiri.org/"
+LICENSE="MIT"
+SRC_URI="https://github.com/sparklemotion/nokogiri/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos"
+SLOT="0"
+IUSE="test"
+
+RDEPEND="${RDEPEND}
+ >=dev-libs/libxml2-2.12.6
+ >=dev-libs/libxslt-1.1.39
+ >=sys-libs/zlib-1.3.1
+ virtual/libiconv"
+DEPEND="${DEPEND}
+ >=dev-libs/libxml2-2.12.6
+ >=dev-libs/libxslt-1.1.39
+ >=sys-libs/zlib-1.3.1
+ virtual/libiconv"
+
+ruby_add_rdepend ">=dev-ruby/racc-1.4:0"
+
+ruby_add_bdepend "
+ dev-ruby/mini_portile2:2.8
+ >=dev-ruby/rexical-1.0.7
+ dev-ruby/rdoc
+ test? ( dev-ruby/minitest dev-ruby/rubyzip )"
+
+all_ruby_prepare() {
+ sed -i \
+ -e '/tasks\/cross_compile/s:^:#:' \
+ -e '/:test.*prerequisites/s:^:#:' \
+ -e '/license/ s:^:#:' \
+ Rakefile || die
+ # Remove the cross compilation options since they interfere with
+ # native building.
+ sed -i -e 's/cross_compile = true/cross_compile = false/' Rakefile || die
+ sed -i -e '/cross_config_options/d' Rakefile || die
+
+ sed -e '/reporters/I s:^:#:' \
+ -i test/helper.rb || die
+
+ # There is no need for mini_portile2 to be a runtime dependency on Gentoo
+ sed -i -e '/mini_portile2/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_configure() {
+ NOKOGIRI_USE_SYSTEM_LIBRARIES=true \
+ ${RUBY} -Cext/${PN} extconf.rb \
+ --with-zlib-include="${EPREFIX}"/usr/include \
+ --with-zlib-lib="${EPREFIX}"/$(get_libdir) \
+ --with-iconv-include="${EPREFIX}"/usr/include \
+ --with-iconv-lib="${EPREFIX}"/$(get_libdir) \
+ --with-xml2-include="${EPREFIX}"/usr/include/libxml2 \
+ --with-xml2-lib="${EPREFIX}"/usr/$(get_libdir) \
+ --with-xslt-dir="${EPREFIX}"/usr \
+ --with-iconvlib=iconv \
+ || die "extconf.rb failed"
+}
+
+each_ruby_compile() {
+ if ! [[ -f lib/nokogiri/css/tokenizer.rb ]]; then
+ ${RUBY} -S rake lib/nokogiri/css/tokenizer.rb || die "rexical failed"
+ fi
+
+ if ! [[ -f lib/nokogiri/css/parser.rb ]]; then
+ ${RUBY} -S rake lib/nokogiri/css/parser.rb || die "racc failed"
+ fi
+
+ emake -Cext/${PN} \
+ V=1 \
+ CFLAGS="${CFLAGS} -fPIC" \
+ archflag="${LDFLAGS}" || die "make extension failed"
+ cp -l ext/${PN}/${PN}$(get_modname) lib/${PN}/ || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=1 \
+ RUBY_MEMCHECK_RUNNING=true \
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/test_*.rb"].each {|f| require f}' || die
+}
diff --git a/dev-ruby/nokogiri/nokogiri-1.8.4.ebuild b/dev-ruby/nokogiri/nokogiri-1.8.4.ebuild
deleted file mode 100644
index a7cdd2b51859..000000000000
--- a/dev-ruby/nokogiri/nokogiri-1.8.4.ebuild
+++ /dev/null
@@ -1,93 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md ROADMAP.md STANDARD_RESPONSES.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="ext"
-
-inherit ruby-fakegem eutils multilib
-
-DESCRIPTION="Nokogiri is an HTML, XML, SAX, and Reader parser"
-HOMEPAGE="https://www.nokogiri.org/"
-LICENSE="MIT"
-SRC_URI="https://github.com/sparklemotion/nokogiri/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-RDEPEND="${RDEPEND}
- >=dev-libs/libxml2-2.9.8:=
- >=dev-libs/libxslt-1.1.30
- virtual/libiconv"
-DEPEND="${DEPEND}
- >=dev-libs/libxml2-2.9.8
- >=dev-libs/libxslt-1.1.30
- virtual/libiconv"
-
-ruby_add_bdepend "
- dev-ruby/hoe
- >=dev-ruby/pkg-config-1.1.7
- dev-ruby/rexical
- dev-ruby/rdoc
- dev-ruby/racc
- test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i \
- -e '/tasks\/cross_compile/s:^:#:' \
- -e '/:test.*prerequisites/s:^:#:' \
- -e '/license/ s:^:#:' \
- Rakefile || die
- # Remove the cross compilation options since they interfere with
- # native building.
- sed -i -e 's/cross_compile = true/cross_compile = false/' Rakefile || die
- sed -i -e '/cross_config_options/d' Rakefile || die
-}
-
-each_ruby_configure() {
- NOKOGIRI_USE_SYSTEM_LIBRARIES=true \
- ${RUBY} -Cext/${PN} extconf.rb \
- --with-zlib-include="${EPREFIX}"/usr/include \
- --with-zlib-lib="${EPREFIX}"/$(get_libdir) \
- --with-iconv-include="${EPREFIX}"/usr/include \
- --with-iconv-lib="${EPREFIX}"/$(get_libdir) \
- --with-xml2-include="${EPREFIX}"/usr/include/libxml2 \
- --with-xml2-lib="${EPREFIX}"/usr/$(get_libdir) \
- --with-xslt-dir="${EPREFIX}"/usr \
- --with-iconvlib=iconv \
- || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- if ! [[ -f lib/nokogiri/css/tokenizer.rb ]]; then
- ${RUBY} -S rake lib/nokogiri/css/tokenizer.rb || die "rexical failed"
- fi
-
- if ! [[ -f lib/nokogiri/css/parser.rb ]]; then
- ${RUBY} -S rake lib/nokogiri/css/parser.rb || die "racc failed"
- fi
-
- emake -Cext/${PN} \
- V=1 \
- CFLAGS="${CFLAGS} -fPIC" \
- archflag="${LDFLAGS}" || die "make extension failed"
- cp -l ext/${PN}/${PN}$(get_modname) lib/${PN}/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:.:test -e 'Dir["test/**/test_*.rb"].each {|f| require f}' || die
-}
-
-each_ruby_install() {
- # Clean up "ext" directory before installing it. nokogumbo expects
- # the header files and shared object to be in ext.
- rm -rf ext/java ext/nokogiri/*.o ext/nokogiri/{mkmf.log,Makefile} || die
-
- each_fakegem_install
-}
diff --git a/dev-ruby/nokogumbo/Manifest b/dev-ruby/nokogumbo/Manifest
deleted file mode 100644
index 83e964aa8a19..000000000000
--- a/dev-ruby/nokogumbo/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST nokogumbo-1.5.0.gem 228352 BLAKE2B 66740dfb9bd9edea13c6bc872e1cadf855116ee7247c7691210d3eaa81ad4c7b972fe8edd02a6f7ade6c172c870923c9af3fc24b10c5594cd0255b2fa0c2cd82 SHA512 a89ec7ae4d42cce5431070e790f0f10734655654f6f680c0b949fab7527b6a811953f1c3c13d633427b40980f9e9bd434a9afe1a9d1f1e504af05246d96be77e
-DIST nokogumbo-2.0.1.tar.gz 295763 BLAKE2B e8d864cbe637dd239c96e5e67a58d08fbd561f981d0daf68e285591e8b9a044b4512766744e6f625f6bdd973176079f328f0f7246584359c3e9caf677bb2f37f SHA512 688cf6c4abdc3987c14ef6215eb5d1c88cca49af614b7ca143361465ad78ac3373bc6a876247d6d989c21a43ec55d21f680c1a8ccf1326cf33778424b556cb4e
diff --git a/dev-ruby/nokogumbo/metadata.xml b/dev-ruby/nokogumbo/metadata.xml
deleted file mode 100644
index bdff4b791873..000000000000
--- a/dev-ruby/nokogumbo/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rubys/nokogumbo</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/nokogumbo/nokogumbo-1.5.0.ebuild b/dev-ruby/nokogumbo/nokogumbo-1.5.0.ebuild
deleted file mode 100644
index 5f07eb3fc6c9..000000000000
--- a/dev-ruby/nokogumbo/nokogumbo-1.5.0.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Nokogiri interface to the Gumbo HTML5 parser"
-HOMEPAGE="https://github.com/rubys/nokogumbo"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND+=">=dev-libs/gumbo-0.10"
-
-ruby_add_rdepend ">=dev-ruby/nokogiri-1.6.5-r1"
-
-all_ruby_prepare() {
- # Define rakehome in scope
- sed -i -e "1irakehome=File.expand_path('../../')" ext/nokogumboc/extconf.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/nokogumboc extconf.rb || die
- sed -i -e 's:-Wl,--no-undefined::' ext/nokogumboc/Makefile || die
-}
-
-each_ruby_compile() {
- emake -Cext/nokogumboc V=1
- cp ext/nokogumboc/nokogumboc.so lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib test-nokogumbo.rb || die
-}
diff --git a/dev-ruby/nokogumbo/nokogumbo-2.0.1.ebuild b/dev-ruby/nokogumbo/nokogumbo-2.0.1.ebuild
deleted file mode 100644
index 53a7309de9da..000000000000
--- a/dev-ruby/nokogumbo/nokogumbo-2.0.1.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Nokogiri interface to the Gumbo HTML5 parser"
-HOMEPAGE="https://github.com/rubys/nokogumbo"
-SRC_URI="https://github.com/rubys/nokogumbo/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="~amd64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-# Contains a bundled and patched version of dev-libs/gumbo.
-
-ruby_add_rdepend ">=dev-ruby/nokogiri-1.8.4"
-
-all_ruby_prepare() {
- # Define rakehome in scope
- sed -i -e "1irakehome=File.expand_path('../../')" ext/nokogumbo/extconf.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/nokogumbo extconf.rb || die
- sed -i -e 's:-Wl,--no-undefined::' ext/nokogumbo/Makefile || die
-}
-
-each_ruby_compile() {
- emake -Cext/nokogumbo V=1
- cp ext/nokogumbo/nokogumbo.so lib/nokogumbo/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/notify/Manifest b/dev-ruby/notify/Manifest
deleted file mode 100644
index 0ab84412d622..000000000000
--- a/dev-ruby/notify/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST notify-0.5.2.gem 7168 BLAKE2B 2476cf4a3f174b5f1003e25782ae5bd3838ef1adcca7556f30c609d335ed707fddf1d41e3699ed85eaed54d548f8152bbc079c07538538d4c459e794a2d7c283 SHA512 f64ea5f265acc970f145e1c43e27d6608b1d90b8da6b7236c001808ab690ca302af501d08bda62e66b69434ef1940b6fa19faae3f9ef37c5cc9cebc4b5310564
diff --git a/dev-ruby/notify/metadata.xml b/dev-ruby/notify/metadata.xml
deleted file mode 100644
index 027ebb3ed547..000000000000
--- a/dev-ruby/notify/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>naota@gentoo.org</email>
- </maintainer>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jugyo/notify</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/notify/notify-0.5.2-r1.ebuild b/dev-ruby/notify/notify-0.5.2-r1.ebuild
deleted file mode 100644
index 9d77ec93ce5f..000000000000
--- a/dev-ruby/notify/notify-0.5.2-r1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_RECIPE_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md sample.rb"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A function to notify on cross platform"
-HOMEPAGE="https://github.com/jugyo/notify"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND+=" x11-libs/libnotify" # For notify-send support.
diff --git a/dev-ruby/ntlm-http/Manifest b/dev-ruby/ntlm-http/Manifest
deleted file mode 100644
index d79a0fed0040..000000000000
--- a/dev-ruby/ntlm-http/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ntlm-http-0.1.1.gem 13824 BLAKE2B 179baff2b4b00306b15aa42bad3e91bb41bdc6070ad2eb4681075474839dafea06c54ef7b3fb9f997951ad7b4ddcfa78caf5345b35e5944366b60f27bea63530 SHA512 1d2868582a194fb3a3dcb48a7dfb031014e51a93d57afb83aaef98be8e57789506b71e6440770ca7bc48979d9dd730f398d01d554d6d0575ff01046a227c7669
diff --git a/dev-ruby/ntlm-http/files/ntlm-http-0.1.1+ruby-1.9.patch b/dev-ruby/ntlm-http/files/ntlm-http-0.1.1+ruby-1.9.patch
deleted file mode 100644
index b5e35a7210c5..000000000000
--- a/dev-ruby/ntlm-http/files/ntlm-http-0.1.1+ruby-1.9.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Index: ntlm-http-0.1.1/lib/net/ntlm_http.rb
-===================================================================
---- ntlm-http-0.1.1.orig/lib/net/ntlm_http.rb
-+++ ntlm-http-0.1.1/lib/net/ntlm_http.rb
-@@ -45,6 +45,7 @@
- require 'base64'
- require 'openssl'
- require 'openssl/digest'
-+require 'kconv'
-
- module Net #:nodoc:
- module NTLM
-Index: ntlm-http-0.1.1/lib/net/ntlm.rb
-===================================================================
---- ntlm-http-0.1.1.orig/lib/net/ntlm.rb
-+++ ntlm-http-0.1.1/lib/net/ntlm.rb
-@@ -45,6 +45,7 @@
- require 'base64'
- require 'openssl'
- require 'openssl/digest'
-+require 'kconv'
-
- module Net #:nodoc:
- module NTLM
diff --git a/dev-ruby/ntlm-http/metadata.xml b/dev-ruby/ntlm-http/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/ntlm-http/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/ntlm-http/ntlm-http-0.1.1-r2.ebuild b/dev-ruby/ntlm-http/ntlm-http-0.1.1-r2.ebuild
deleted file mode 100644
index 005ceae39aa5..000000000000
--- a/dev-ruby/ntlm-http/ntlm-http-0.1.1-r2.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOC_SOURCES="lib README"
-RUBY_FAKEGEM_EXTRADOC="README"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Ruby/NTLM HTTP provides NTLM authentication over http"
-HOMEPAGE="http://www.mindflowsolutions.net/"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="amd64 ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="test"
-
-ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
-
-all_ruby_prepare() {
- find . -name '*.rb' -exec sed -i -e 's:\r$::' {} +
-
- # We can't use RUBY_PATCHES for this because we need first to convert the files
- epatch "${FILESDIR}"/${P}+ruby-1.9.patch
-}
-
-each_ruby_test() {
- ruby-ng_testrb-2 test/*_test.rb
-}
diff --git a/dev-ruby/oauth/Manifest b/dev-ruby/oauth/Manifest
index c8aed657606f..a022ef58f36a 100644
--- a/dev-ruby/oauth/Manifest
+++ b/dev-ruby/oauth/Manifest
@@ -1 +1 @@
-DIST oauth-0.5.4.tar.gz 59141 BLAKE2B 1e588d411795b7c5b4ae5b7b3c9928b69aaa005bef858137759757e9f06d6de144408e4dba33d7fbf82a3f2586238a71b85b89c681f5d633453dfe0da954a2fb SHA512 f114f80255944934a276d0f9556ed37e4a0a72b221269cf7792f2c3a5a1504c5ec726fd5b7437b1102c648a6cf451a1c83de4689f53d30ea8c6a1d62662de535
+DIST oauth-0.6.2.tar.gz 81702 BLAKE2B 2775c0711beb9f3612844ae07ff59953d4db72c0f9a797c6eac49132a021a48481a13f4b1428b2037b0a04b83b5d79e621cccd4a794fe3a339a1ceb468f0b165 SHA512 22f4f734daa42339bbaed1d1d449a4591ef4404aaf8cf1753ba705735a176f6142853b2c4f5e8ff3afa3e9899163af1c5598685664326d58a5b529d94b65441f
diff --git a/dev-ruby/oauth/metadata.xml b/dev-ruby/oauth/metadata.xml
index f20a3a8fdaf9..92bec6e53833 100644
--- a/dev-ruby/oauth/metadata.xml
+++ b/dev-ruby/oauth/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/oauth/oauth-0.5.4.ebuild b/dev-ruby/oauth/oauth-0.5.4.ebuild
deleted file mode 100644
index d674b5571b49..000000000000
--- a/dev-ruby/oauth/oauth-0.5.4.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="HISTORY README.rdoc TODO"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A RubyGem for implementing both OAuth clients and servers"
-HOMEPAGE="https://github.com/oauth-xx/oauth-ruby"
-SRC_URI="https://github.com/oauth-xx/oauth-ruby/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="${PN}-ruby-${PV}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86 ~x86-macos"
-IUSE=""
-
-ruby_add_bdepend "test? (
- dev-ruby/test-unit:2
- dev-ruby/mocha:1.0
- dev-ruby/webmock
- dev-ruby/rack
- dev-ruby/actionpack:5.2
-)"
-
-all_ruby_prepare() {
- # Require a compatible version of mocha
- sed -i -e '1igem "mocha", "~> 1.0"; gem "actionpack", "~>5.2.0"' \
- -e '2i gem "test-unit"; require "test/unit"' \
- -e '/\(byebug\|minitest_helpers\|simplecov\)/I s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/oauth/oauth-0.6.2-r1.ebuild b/dev-ruby/oauth/oauth-0.6.2-r1.ebuild
new file mode 100644
index 000000000000..7b74b5dfd58c
--- /dev/null
+++ b/dev-ruby/oauth/oauth-0.6.2-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP="oauth"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md TODO"
+
+RUBY_FAKEGEM_GEMSPEC="oauth.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A RubyGem for implementing both OAuth clients and servers"
+HOMEPAGE="https://github.com/oauth-xx/oauth-ruby"
+SRC_URI="https://github.com/oauth-xx/oauth-ruby/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="${PN}-ruby-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~riscv ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/snaky_hash:1
+ >=dev-ruby/version_gem-1.1:1
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ dev-ruby/test-unit:2
+ dev-ruby/mocha:2
+ dev-ruby/webmock
+ dev-ruby/rack
+ dev-ruby/rest-client
+ dev-ruby/actionpack:6.1
+ dev-ruby/railties:6.1
+)"
+
+all_ruby_prepare() {
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Require compatible versions of dependencies
+ sed -i -e '1igem "railties", "~>6.1.0" ; gem "actionpack", "~>6.1.0"; require "action_dispatch"' \
+ -e '/mocha/ s/mini_test/minitest/' \
+ -e 's/if RUN_COVERAGE/if false/' test/test_helper.rb || die
+
+ # Avoid test tripped up by kwargs confusion
+ sed -e '/test_authorize/askip "kwargs confusion"' \
+ -e 's/MiniTest/Minitest/' \
+ -i test/units/cli_test.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'Dir["test/**/*test*.rb"].each {|f| require f}' || die
+}
diff --git a/dev-ruby/oauth2/Manifest b/dev-ruby/oauth2/Manifest
index ed24c22bbb59..0226b5624afc 100644
--- a/dev-ruby/oauth2/Manifest
+++ b/dev-ruby/oauth2/Manifest
@@ -1,2 +1 @@
-DIST oauth2-1.4.0.tar.gz 21299 BLAKE2B 1fe4640b374450279e556477c23972030d3aecac4c96e9174e57458deaccfbfa012e3bb66fe3db5e845a4004b91b763dab6f68b885ed7c1ddb2710cda29a8486 SHA512 2db67cba2403be8ea5d6f88f9818f295c29c08201f8ea5876c55cffe2fa926be465a11061654adffd77d13da9c7e56353ece7e4595cd9501acdcfeb58573b300
-DIST oauth2-1.4.1.tar.gz 27946 BLAKE2B e6edd113db26bdad09697c45efa5490bfb49b5c3fafdb7337c5f5c2b135025cc43fe7de450b3e106c6abfb8acb3afd676181ebd6aa1c18f6c5255597b04006df SHA512 14c039d19bcd177506e2f6189797b1791b54bd3fbe53973ad471c44744e3179c02e2f7a855a0cafe332e66819f1708d86c1dd89cbe57668ad642efa49e924b25
+DIST oauth2-1.4.11.tar.bz2 65622 BLAKE2B 9a09e69eb2389289d5b048388dd52dd6edcf289c4d7262ead05cca7dd27b261b6f432e023ac3c34aa77d6fa33bca5d870726b96cf5bf85eeec3561e9b53f9501 SHA512 12a9133cd5813eed00c2a22995630a7fdb611b0d76b06eeb8c938fd826831ea37556822246f21a739ba427c74135e6c2046edc1fb008725c55f3b1000ab5a945
diff --git a/dev-ruby/oauth2/metadata.xml b/dev-ruby/oauth2/metadata.xml
index 6a31450fb065..09a70a6befc5 100644
--- a/dev-ruby/oauth2/metadata.xml
+++ b/dev-ruby/oauth2/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">intridea/oauth2</remote-id>
+ <remote-id type="gitlab">oauth-xx/oauth2</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/oauth2/oauth2-1.4.0-r2.ebuild b/dev-ruby/oauth2/oauth2-1.4.0-r2.ebuild
deleted file mode 100644
index 283663a9010b..000000000000
--- a/dev-ruby/oauth2/oauth2-1.4.0-r2.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST="none"
-RUBY_FAKEGEM_TASK_DOC="doc:rdoc"
-
-RUBY_FAKEGEM_DOCDIR="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="oauth2.gemspec"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Wrapper for the OAuth 2.0 protocol with a similar style to the OAuth gem"
-HOMEPAGE="https://github.com/intridea/oauth2"
-SRC_URI="https://github.com/intridea/oauth2/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/faraday-0.8 <dev-ruby/faraday-0.16
- >=dev-ruby/jwt-1.0 =dev-ruby/jwt-1*
- >=dev-ruby/multi_json-1.3 =dev-ruby/multi_json-1*
- >=dev-ruby/multi_xml-0.5:0
- >=dev-ruby/rack-1.2:* <dev-ruby/rack-3:*"
-ruby_add_bdepend "test? ( dev-ruby/rspec:3 )"
-
-all_ruby_prepare() {
- sed -i -e '/faraday/ s/0.13/0.16/' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- sed -i -e '/simplecov/,/^ end/ s:^:#:' \
- -e '1irequire "uri"' spec/helper.rb || die
-
- sed -i -e '/yardstick/,/^end/ s:^:#:' \
- -e '/bundler/I s:^:#:' Rakefile || die
-
- # Avoid spec that is too fragile in relation to ENV
- sed -i -e '/outputs to $stdout when OAUTH_DEBUG=true/a skip "fragile ENV stubbing"' spec/oauth2/client_spec.rb || die
-}
-
-each_ruby_test() {
- CI=true ${RUBY} -S rspec-3 spec || die
-}
diff --git a/dev-ruby/oauth2/oauth2-1.4.1.ebuild b/dev-ruby/oauth2/oauth2-1.4.1.ebuild
deleted file mode 100644
index 93742d94245a..000000000000
--- a/dev-ruby/oauth2/oauth2-1.4.1.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_DOCDIR="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="oauth2.gemspec"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Wrapper for the OAuth 2.0 protocol with a similar style to the OAuth gem"
-HOMEPAGE="https://github.com/intridea/oauth2"
-SRC_URI="https://github.com/intridea/oauth2/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/faraday-0.8 <dev-ruby/faraday-0.16
- || ( dev-ruby/jwt:2 dev-ruby/jwt:0 )
- >=dev-ruby/multi_json-1.3 =dev-ruby/multi_json-1*
- >=dev-ruby/multi_xml-0.5:0
- >=dev-ruby/rack-1.2:* <dev-ruby/rack-3:*"
-ruby_add_bdepend "test? ( dev-ruby/rspec:3 )"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/^ end/ s:^:#:' \
- -e '1irequire "uri"' spec/helper.rb || die
-
- sed -i -e '/yardstick/,/^end/ s:^:#:' \
- -e '/bundler/I s:^:#:' Rakefile || die
-
- # Avoid spec that is too fragile in relation to ENV
- sed -i -e '/outputs to $stdout when OAUTH_DEBUG=true/a skip "fragile ENV stubbing"' spec/oauth2/client_spec.rb || die
-
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- CI=true ${RUBY} -S rspec-3 spec || die
-}
diff --git a/dev-ruby/oauth2/oauth2-1.4.11.ebuild b/dev-ruby/oauth2/oauth2-1.4.11.ebuild
new file mode 100644
index 000000000000..286c19cd9e96
--- /dev/null
+++ b/dev-ruby/oauth2/oauth2-1.4.11.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_TASK_TEST="none"
+
+RUBY_FAKEGEM_DOCDIR="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="oauth2.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Wrapper for the OAuth 2.0 protocol with a similar style to the OAuth gem"
+HOMEPAGE="https://gitlab.com/oauth-xx/oauth2"
+SRC_URI="https://gitlab.com/oauth-xx/oauth2/-/archive/v${PV}/oauth2-${PV}.tar.bz2"
+RUBY_S="oauth2-v${PV}-d41fb6e8feef3b0b0382dedc0ede82f5ca7854cd"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ || ( dev-ruby/faraday:2 dev-ruby/faraday:1 )
+ dev-ruby/jwt:2
+ >=dev-ruby/multi_json-1.3 =dev-ruby/multi_json-1*
+ >=dev-ruby/multi_xml-0.5:0
+ >=dev-ruby/rack-1.2:* <dev-ruby/rack-4:*"
+ruby_add_bdepend "test? (
+ >=dev-ruby/addressable-2.3
+ >=dev-ruby/rexml-3.2:3
+ dev-ruby/rspec:3
+ dev-ruby/rspec-pending_for
+ dev-ruby/rspec-stubbed_env
+)"
+
+all_ruby_prepare() {
+ sed \
+ -e '/silent/I s:^:#:' \
+ -e '/require.*oauth2/arequire "oauth2/version"' \
+ -i spec/helper.rb || die
+
+ sed -i -e '/yardstick/,/^end/ s:^:#:' \
+ -e '/bundler/I s:^:#:' Rakefile || die
+
+ # Avoid spec that is too fragile in relation to ENV
+ sed -i -e '/outputs to $stdout when OAUTH_DEBUG=true/a skip "fragile ENV stubbing"' spec/oauth2/client_spec.rb || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ CI=true ${RUBY} -S rspec-3 --format progress spec || die
+}
diff --git a/dev-ruby/octokit/Manifest b/dev-ruby/octokit/Manifest
index 0cb48c7244dc..087167e26c06 100644
--- a/dev-ruby/octokit/Manifest
+++ b/dev-ruby/octokit/Manifest
@@ -1 +1,4 @@
-DIST octokit-4.14.0.tar.gz 3068165 BLAKE2B e50efa246273422daf5aed8e619465886962d361d129a310974c21bbc683c7444ee99e3dc01c184497683d07a48d852c006ab56c6cd4bea8660f16e7ec5eee98 SHA512 2aff18492c0207b8c7ced23adf0e76260d2976331563e22f7a130445b19b816a00281a86b4161d6709025d058c848ef3f7d1a5c64323954f8c03a59be6f6b132
+DIST octokit-6.1.1.tar.gz 3193336 BLAKE2B 890afac205992c25dd8b48f63ea7a4cf250687318ecb9c0980fc50ff1583943074cea1d9260f139b1a5f86295483f44120421dba8294eba641104301f0188123 SHA512 d91b326d892f80f08598ebb0a03edfd1fb85d36e40dac49593291a6b2ff6a957f5cd2283655c20ff0299f40c75ad7472ff55a14b182bec5f92693b560c2d3c87
+DIST octokit-7.2.0.tar.gz 3293244 BLAKE2B 6c24add01107868d64b0409d7a4eaf5bc5b90a9932d10f46e091aa5f4a512dd64a70047e2615c4a064b33e66e48e724ca0c85a4dec523c8df6c4968ecae83b55 SHA512 91abe7e64a75da5ef4f93a891aedbd1a047f744fed695dfb843f5d6f7416d4e08c7cad192b60d3aead43e38095c0985239a364a70a51042dca1b74bbc3529e8a
+DIST octokit-8.0.0.tar.gz 3306271 BLAKE2B f2bdfebd6f6df3dc507f534947b9cac68ff970d333958a8c7624b01ca090a49294ea2f2fb7b2f0f595f2e4fa37b082d19a3cf346b3634856dfd6c79981c1dcc9 SHA512 7894d8fb3f318827bbac3d8fa4787510195e5c583e256c96b8dd98ccb9ed2126f66f00799547e7db8f565f6c72d7af346c2558a31b8ad5b711c9db240e138878
+DIST octokit-8.1.0.tar.gz 3324751 BLAKE2B 84cc09d122e7a7269272b453f1042158329804bc25bc918fafdc382264b4db7c0264f4d1978521fc5b438e50abc4b879cfe287032998d337ba05c0eae27f4229 SHA512 77552e71fcf149a7aafa94c93210dcf9462cf8269be89e16248c47cf3bf40ab4cc754a9d989599822fc06c29a7edc7e9a16ae3cba696155175710ae7cf845567
diff --git a/dev-ruby/octokit/metadata.xml b/dev-ruby/octokit/metadata.xml
index fd61014adc35..87ae33e1f199 100644
--- a/dev-ruby/octokit/metadata.xml
+++ b/dev-ruby/octokit/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/octokit/octokit-4.14.0.ebuild b/dev-ruby/octokit/octokit-4.14.0.ebuild
deleted file mode 100644
index b1c8864589a7..000000000000
--- a/dev-ruby/octokit/octokit-4.14.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_EXTRADOC="README.md CONTRIBUTING.md"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby toolkit for the Github API"
-HOMEPAGE="https://github.com/octokit/octokit.rb"
-SRC_URI="https://github.com/octokit/octokit.rb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-RUBY_S=octokit.rb-${PV}
-
-ruby_add_rdepend ">=dev-ruby/sawyer-0.8.0"
-ruby_add_bdepend "test? ( dev-ruby/mime-types
- >=dev-ruby/netrc-0.7.7
- dev-ruby/vcr:3
- dev-ruby/webmock:3 )"
-
-all_ruby_prepare() {
- sed -i -e '/if RUBY_ENGINE/,/^end/ s:^:#: ; 1igem "webmock", "~>3.0"' spec/helper.rb || die
-}
diff --git a/dev-ruby/octokit/octokit-6.1.1.ebuild b/dev-ruby/octokit/octokit-6.1.1.ebuild
new file mode 100644
index 000000000000..7d06ff6f153c
--- /dev/null
+++ b/dev-ruby/octokit/octokit-6.1.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md CONTRIBUTING.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby toolkit for the Github API"
+HOMEPAGE="https://github.com/octokit/octokit.rb"
+SRC_URI="https://github.com/octokit/octokit.rb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+RUBY_S=octokit.rb-${PV}
+
+ruby_add_rdepend "
+ dev-ruby/faraday:1
+ >=dev-ruby/sawyer-0.9:0
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/jwt
+ dev-ruby/mime-types
+ >=dev-ruby/netrc-0.7.7
+ >=dev-ruby/rbnacl-7.1.1:6
+ dev-ruby/vcr[json]
+ dev-ruby/webmock:3 )"
+
+all_ruby_prepare() {
+ sed -e '/if RUBY_ENGINE/,/^end/ s:^:#: ; 1igem "webmock", "~>3.0"; gem "faraday", "<2"' \
+ -e '/pry/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/octokit/octokit-7.2.0.ebuild b/dev-ruby/octokit/octokit-7.2.0.ebuild
new file mode 100644
index 000000000000..cc3f96e0c08e
--- /dev/null
+++ b/dev-ruby/octokit/octokit-7.2.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md CONTRIBUTING.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby toolkit for the Github API"
+HOMEPAGE="https://github.com/octokit/octokit.rb"
+SRC_URI="https://github.com/octokit/octokit.rb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+RUBY_S=octokit.rb-${PV}
+
+ruby_add_rdepend "
+ || ( dev-ruby/faraday:2 dev-ruby/faraday:1 )
+ >=dev-ruby/sawyer-0.9:0
+"
+
+ruby_add_bdepend "test? (
+ || ( ( dev-ruby/faraday:2 dev-ruby/faraday-multipart ) dev-ruby/faraday:1 )
+ dev-ruby/jwt
+ dev-ruby/mime-types
+ >=dev-ruby/netrc-0.7.7
+ >=dev-ruby/rbnacl-7.1.1:6
+ dev-ruby/vcr[json]
+ dev-ruby/webmock:3 )"
+
+all_ruby_prepare() {
+ sed -e '/if RUBY_ENGINE/,/^end/ s:^:#: ; 1igem "webmock", "~>3.0"' \
+ -e '/pry/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/octokit/octokit-8.0.0.ebuild b/dev-ruby/octokit/octokit-8.0.0.ebuild
new file mode 100644
index 000000000000..b153005e9e76
--- /dev/null
+++ b/dev-ruby/octokit/octokit-8.0.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md CONTRIBUTING.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby toolkit for the Github API"
+HOMEPAGE="https://github.com/octokit/octokit.rb"
+SRC_URI="https://github.com/octokit/octokit.rb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+RUBY_S=octokit.rb-${PV}
+
+ruby_add_rdepend "
+ || ( dev-ruby/faraday:2 dev-ruby/faraday:1 )
+ >=dev-ruby/sawyer-0.9:0
+"
+
+ruby_add_bdepend "test? (
+ || ( ( dev-ruby/faraday:2 dev-ruby/faraday-multipart ) dev-ruby/faraday:1 )
+ dev-ruby/jwt
+ dev-ruby/mime-types
+ >=dev-ruby/netrc-0.7.7
+ >=dev-ruby/rbnacl-7.1.1:6
+ dev-ruby/vcr[json]
+ dev-ruby/webmock:3 )"
+
+all_ruby_prepare() {
+ sed -e '/if RUBY_ENGINE/,/^end/ s:^:#: ; 1igem "webmock", "~>3.0"' \
+ -e '/pry/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/octokit/octokit-8.1.0.ebuild b/dev-ruby/octokit/octokit-8.1.0.ebuild
new file mode 100644
index 000000000000..c197bf7af4ed
--- /dev/null
+++ b/dev-ruby/octokit/octokit-8.1.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md CONTRIBUTING.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby toolkit for the Github API"
+HOMEPAGE="https://github.com/octokit/octokit.rb"
+SRC_URI="https://github.com/octokit/octokit.rb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="test"
+
+RUBY_S=octokit.rb-${PV}
+
+ruby_add_rdepend "
+ || ( dev-ruby/faraday:2 dev-ruby/faraday:1 )
+ >=dev-ruby/sawyer-0.9:0
+"
+
+ruby_add_bdepend "test? (
+ || ( ( dev-ruby/faraday:2 dev-ruby/faraday-multipart ) dev-ruby/faraday:1 )
+ dev-ruby/jwt
+ dev-ruby/mime-types
+ >=dev-ruby/netrc-0.7.7
+ >=dev-ruby/rbnacl-7.1.1:6
+ dev-ruby/vcr[json]
+ dev-ruby/webmock:3 )"
+
+all_ruby_prepare() {
+ sed -e '/if RUBY_ENGINE/,/^end/ s:^:#: ; 1igem "webmock", "~>3.0"' \
+ -e '/pry/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/omniauth/Manifest b/dev-ruby/omniauth/Manifest
index f650a6618a82..a06ad6dd5df9 100644
--- a/dev-ruby/omniauth/Manifest
+++ b/dev-ruby/omniauth/Manifest
@@ -1,2 +1,2 @@
-DIST omniauth-1.8.1.tar.gz 26016 BLAKE2B ad7f22a847bd91385ddce44efc89fb312b07ffe43d2b0fab3773e7c809959eb8a8b4567af5ba1a1e9fb9d559b692dec358bf16d6b1cb21b85f13521c20fa3415 SHA512 ad085d067971f3fef40e99be7f2e58a9bb006b404f8d7289c5c00be4ed7314ff9d40409053d2bda0a5072035d6e09295d22b8ae6b5d2a84384b245b5a0ae225a
-DIST omniauth-1.9.0.tar.gz 26060 BLAKE2B d0b7cd7536fc19184f56cc2b383ff70d7556d4794fb2981738216b770c340cc14025f1241a40260c0620a7bae73906c4baad1a9ce68402f0e7882128b620005d SHA512 8505fb5081f9f4daa143925b56804d81f656523c2e65c066668f2bc5c1da50cd17a06c86856e9f6560a71ee440804a536d3e814eb5dd34a0fd0c4ababe2fdadf
+DIST omniauth-2.1.1.tar.gz 31414 BLAKE2B 180ee40499a61e8b6360dc4c462ca10933dc7bac976f76dd8c9579e73da6618ffae71ed532fab024f0eb65c3830db1e52f866c40b6e160e65c8fa403c7c1ab37 SHA512 e86fbd3c1f239b4950f17fdfe4ebd97a9a135831b63892dd009bae97f4372b3a6fa2452233e414c6097c3b835ee4e75821e795599da9613affdaf163d31964a3
+DIST omniauth-2.1.2.tar.gz 31631 BLAKE2B 73faa82db781c3980eae55f3fa8a099d3ec0769326201f51f57840566a3b2da2331bdaaddd4ef17d957e389ea8863fc7bfdc11f0278753c27f3a7eabc01ec138 SHA512 bd0c65af815502f3df2dbb104ede35de093c6cc6f25285e9bbcdd58df3d31ac6c05d410888a40aca86a00b17a4851856d158593b06415e8b69ff426f171b9857
diff --git a/dev-ruby/omniauth/metadata.xml b/dev-ruby/omniauth/metadata.xml
index ac37f7432587..290d53d7f6af 100644
--- a/dev-ruby/omniauth/metadata.xml
+++ b/dev-ruby/omniauth/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">intridea/omniauth</remote-id>
+ <remote-id type="github">omniauth/omniauth</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/omniauth/omniauth-1.8.1.ebuild b/dev-ruby/omniauth/omniauth-1.8.1.ebuild
deleted file mode 100644
index 6292d39c3831..000000000000
--- a/dev-ruby/omniauth/omniauth-1.8.1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A generalized Rack framework for multiple-provider authentication"
-HOMEPAGE="https://github.com/intridea/omniauth"
-SRC_URI="https://github.com/intridea/omniauth/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/rack-1.6.2:* <dev-ruby/rack-3:*
- >=dev-ruby/hashie-3.4.6:3 <dev-ruby/hashie-3.6.0:3"
-ruby_add_bdepend "doc? ( dev-ruby/yard )
- test? ( dev-ruby/rack-test )"
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/d' \
- Rakefile ${PN}.gemspec || die "sed failed"
- sed -i -e '/RUBY_VERSION/,/^end/ s:^:#:' spec/helper.rb || die "sed failed"
- # maruku fails, resorting to default markdown implementation
- sed -i -e '/maruku/d' .yardopts || die "sed failed"
-
- sed -i -e '/s.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-all_ruby_compile() {
- all_fakegem_compile
-
- if use doc ; then
- yard || die "yard failed"
- fi
-}
diff --git a/dev-ruby/omniauth/omniauth-1.9.0.ebuild b/dev-ruby/omniauth/omniauth-1.9.0.ebuild
deleted file mode 100644
index 83b0ae242f0d..000000000000
--- a/dev-ruby/omniauth/omniauth-1.9.0.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A generalized Rack framework for multiple-provider authentication"
-HOMEPAGE="https://github.com/intridea/omniauth"
-SRC_URI="https://github.com/intridea/omniauth/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/rack-1.6.2:* <dev-ruby/rack-3:*
- >=dev-ruby/hashie-3.4.6:3 <dev-ruby/hashie-3.7.0:3"
-ruby_add_bdepend "doc? ( dev-ruby/yard )
- test? ( dev-ruby/rack-test )"
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/d' \
- Rakefile ${PN}.gemspec || die "sed failed"
- sed -i -e '/RUBY_VERSION/,/^end/ s:^:#:' spec/helper.rb || die "sed failed"
- # maruku fails, resorting to default markdown implementation
- sed -i -e '/maruku/d' .yardopts || die "sed failed"
-
- sed -i -e '/s.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-all_ruby_compile() {
- all_fakegem_compile
-
- if use doc ; then
- yard || die "yard failed"
- fi
-}
diff --git a/dev-ruby/omniauth/omniauth-2.1.1.ebuild b/dev-ruby/omniauth/omniauth-2.1.1.ebuild
new file mode 100644
index 000000000000..ece4591244e5
--- /dev/null
+++ b/dev-ruby/omniauth/omniauth-2.1.1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A generalized Rack framework for multiple-provider authentication"
+HOMEPAGE="https://github.com/omniauth/omniauth"
+SRC_URI="https://github.com/omniauth/omniauth/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+KEYWORDS="~amd64"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/rack-2.2.3
+ dev-ruby/rack-protection
+ >=dev-ruby/hashie-3.4.6:*"
+ruby_add_bdepend "doc? ( dev-ruby/yard )
+ test? ( dev-ruby/rack-test dev-ruby/rack:2.2 )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/d' \
+ Rakefile ${PN}.gemspec || die "sed failed"
+ sed -e '/RUBY_VERSION/,/^end/ s:^:#: ; /freeze/ s:^:#:' \
+ -e '2igem "rack", "<3"' \
+ -i spec/helper.rb || die "sed failed"
+ # maruku fails, resorting to default markdown implementation
+ sed -i -e '/maruku/d' .yardopts || die "sed failed"
+
+ sed -i -e '/s.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_compile() {
+ all_fakegem_compile
+
+ if use doc ; then
+ yard || die "yard failed"
+ fi
+}
diff --git a/dev-ruby/omniauth/omniauth-2.1.2.ebuild b/dev-ruby/omniauth/omniauth-2.1.2.ebuild
new file mode 100644
index 000000000000..0ff88ca09fd5
--- /dev/null
+++ b/dev-ruby/omniauth/omniauth-2.1.2.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A generalized Rack framework for multiple-provider authentication"
+HOMEPAGE="https://github.com/omniauth/omniauth"
+SRC_URI="https://github.com/omniauth/omniauth/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+KEYWORDS="~amd64"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/rack-2.2.3
+ dev-ruby/rack-protection
+ >=dev-ruby/hashie-3.4.6:*"
+ruby_add_bdepend "doc? ( dev-ruby/yard )
+ test? ( dev-ruby/rack-test dev-ruby/rack:2.2 )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/d' \
+ Rakefile ${PN}.gemspec || die "sed failed"
+ sed -e '/RUBY_VERSION/,/^end/ s:^:#: ; /freeze/ s:^:#:' \
+ -e '2igem "rack", "<3"' \
+ -e '/simplecov/,/^end/ s:^:#:' \
+ -i spec/helper.rb || die "sed failed"
+ # maruku fails, resorting to default markdown implementation
+ sed -i -e '/maruku/d' .yardopts || die "sed failed"
+
+ sed -i -e '/s.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_compile() {
+ all_fakegem_compile
+
+ if use doc ; then
+ yard || die "yard failed"
+ fi
+}
diff --git a/dev-ruby/open4/metadata.xml b/dev-ruby/open4/metadata.xml
index 65351e599675..dba97b1c5290 100644
--- a/dev-ruby/open4/metadata.xml
+++ b/dev-ruby/open4/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/open4/open4-1.3.4-r1.ebuild b/dev-ruby/open4/open4-1.3.4-r1.ebuild
new file mode 100644
index 000000000000..be68fc392186
--- /dev/null
+++ b/dev-ruby/open4/open4-1.3.4-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Open3::popen3 with exit status"
+HOMEPAGE="https://github.com/ahoward/open4"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ mv rakefile Rakefile || die
+
+ # Fix minitest deprecation
+ sed -e 's/MiniTest::Unit::TestCase/Minitest::Test/' \
+ -i test/lib/test_case.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r samples
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib -Itest/lib test/*.rb || die
+}
diff --git a/dev-ruby/open4/open4-1.3.4.ebuild b/dev-ruby/open4/open4-1.3.4.ebuild
deleted file mode 100644
index 3a751a66106b..000000000000
--- a/dev-ruby/open4/open4-1.3.4.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Open3::popen3 with exit status"
-HOMEPAGE="https://github.com/ahoward/open4"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- mv rakefile Rakefile || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}/samples
- doins samples/*
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib -Itest/lib test/*.rb || die
-}
diff --git a/dev-ruby/openssl-ccm/Manifest b/dev-ruby/openssl-ccm/Manifest
index c4f85fc2bfb8..d33cd8b90874 100644
--- a/dev-ruby/openssl-ccm/Manifest
+++ b/dev-ruby/openssl-ccm/Manifest
@@ -1,2 +1 @@
-DIST openssl-ccm-1.2.1.gem 24576 BLAKE2B 8fa23198b9c4c324e6306382b4e5eaefcec33ca34cf4177faad5b10ff17111864a08ca77bfc3e1f10c71b4888bcbc2ec788120b1c1a4428ced0b03a7554bdde7 SHA512 9cb2d7d0bc97b41f217f79b8488c5b4381754cf429dc07fe89bd51aea432c5eb19a1992b7bf9c7a402308949a734599f07dbf818e72550cbd584849946e4b0ba
-DIST openssl-ccm-1.2.2.gem 24576 BLAKE2B b94a205ce3b9d557ad649c0391428526339b050dd7a85633ee955b3532a94637e7c40a7cbb9bd739ff50f2922c97721e4dadf7e392c2aaaa38f35123858c01f2 SHA512 5f04af1ac65608e519fcf68259b2690f12882781cdba411939f809e1a6cb602723bf23d9cb920949e8eb7c4bfddb3e65446ae16d0276af78992de21cbfcdfc49
+DIST openssl-ccm-1.2.3.gem 24576 BLAKE2B 7df1a1cbd0570eed4165931b6f236a96050bc0e27a9b12d68e42e2578bbb3fe319e28eae1752571275ff35ee25a77617d0d74a7dbff5c197c5ab11a0dac1d96b SHA512 4070a570da5864dce582d02916dffccea74db279dd8f4f419a29a4837e66bd6778ba742f6e06037ee5bc5542954e52b2271384b0a321ea282024bc60df3b81e1
diff --git a/dev-ruby/openssl-ccm/metadata.xml b/dev-ruby/openssl-ccm/metadata.xml
index d1cc55a4df68..d9e1718ffdfe 100644
--- a/dev-ruby/openssl-ccm/metadata.xml
+++ b/dev-ruby/openssl-ccm/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
<remote-id type="github">SmallLars/openssl-ccm</remote-id>
diff --git a/dev-ruby/openssl-ccm/openssl-ccm-1.2.1.ebuild b/dev-ruby/openssl-ccm/openssl-ccm-1.2.1.ebuild
deleted file mode 100644
index e19ea531d646..000000000000
--- a/dev-ruby/openssl-ccm/openssl-ccm-1.2.1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="OpenSSL CBC-MAC (CCM) ruby gem"
-HOMEPAGE="https://github.com/SmallLars/openssl-ccm"
-
-LICENSE="BSD"
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
- sed -i -e '/coverall/I s:^:#:' test/test_ccm.rb || die
-}
diff --git a/dev-ruby/openssl-ccm/openssl-ccm-1.2.2.ebuild b/dev-ruby/openssl-ccm/openssl-ccm-1.2.2.ebuild
deleted file mode 100644
index 388921ca3c8e..000000000000
--- a/dev-ruby/openssl-ccm/openssl-ccm-1.2.2.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="OpenSSL CBC-MAC (CCM) ruby gem"
-HOMEPAGE="https://github.com/SmallLars/openssl-ccm"
-
-LICENSE="BSD"
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
- sed -i -e '/coverall/I s:^:#:' test/test_ccm.rb || die
-}
diff --git a/dev-ruby/openssl-ccm/openssl-ccm-1.2.3.ebuild b/dev-ruby/openssl-ccm/openssl-ccm-1.2.3.ebuild
new file mode 100644
index 000000000000..4ffa7539b5c2
--- /dev/null
+++ b/dev-ruby/openssl-ccm/openssl-ccm-1.2.3.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="OpenSSL CBC-MAC (CCM) ruby gem"
+HOMEPAGE="https://github.com/SmallLars/openssl-ccm"
+
+LICENSE="BSD"
+SLOT="${PV}"
+KEYWORDS="~amd64 ~arm ~x86"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+ sed -i -e '/coverall/I s:^:#:' test/test_ccm.rb || die
+}
diff --git a/dev-ruby/openssl-cmac/Manifest b/dev-ruby/openssl-cmac/Manifest
new file mode 100644
index 000000000000..5cf7c654150c
--- /dev/null
+++ b/dev-ruby/openssl-cmac/Manifest
@@ -0,0 +1 @@
+DIST openssl-cmac-2.0.2.gem 9728 BLAKE2B 0113459326d6d42f256848cee682607a3d7a03778bd6963eaf86519d263c8295726acd462600bf047cca0c92704c8dfa6e0edd34b93dcb1673c232bb73c9331f SHA512 dbe4083ee3e1f2d1254a035d7d6c46a927e4dcde69d466ae9af5fa53ded89519f58c30095019fc5fa258f0c14493870e05c2b32cfba0921c451c6709710be3b4
diff --git a/dev-ruby/openssl-cmac/metadata.xml b/dev-ruby/openssl-cmac/metadata.xml
new file mode 100644
index 000000000000..ba63e44acdc2
--- /dev/null
+++ b/dev-ruby/openssl-cmac/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">SmallLars/openssl-cmac</remote-id>
+ <remote-id type="rubygems">openssl-cmac</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/openssl-cmac/openssl-cmac-2.0.2.ebuild b/dev-ruby/openssl-cmac/openssl-cmac-2.0.2.ebuild
new file mode 100644
index 000000000000..451946c94d04
--- /dev/null
+++ b/dev-ruby/openssl-cmac/openssl-cmac-2.0.2.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Gem for RFC 4493, 4494, 4615 - The AES-CMAC Algorithm"
+HOMEPAGE="https://github.com/SmallLars/openssl-cmac"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+ sed -i -e '/coverall/I s:^:#:' test/test_cmac.rb || die
+}
diff --git a/dev-ruby/openvas-omp/Manifest b/dev-ruby/openvas-omp/Manifest
deleted file mode 100644
index d25a3b2ec721..000000000000
--- a/dev-ruby/openvas-omp/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST openvas-omp-0.0.4.gem 10752 BLAKE2B 866f04895551ecace2183b1125deb727083d1427e4326ad5123e660586e26af40632a8e68b0390720fc39449ff8c3143a25edf22d2e015c31697ce6c24464030 SHA512 cb62ec9e480ad009eb9f47cd4ac77d385b8d5855748509466e5227e9d729067b279c277d3d53f2de1a89cccba75bccdd1e23b7ae858adeb35e0958fdb004c0e1
diff --git a/dev-ruby/openvas-omp/metadata.xml b/dev-ruby/openvas-omp/metadata.xml
deleted file mode 100644
index d29753faaa0f..000000000000
--- a/dev-ruby/openvas-omp/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">kost/openvas-omp-ruby</remote-id>
- <remote-id type="rubygems">openvas-omp</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/openvas-omp/openvas-omp-0.0.4.ebuild b/dev-ruby/openvas-omp/openvas-omp-0.0.4.ebuild
deleted file mode 100644
index 4de270ec8451..000000000000
--- a/dev-ruby/openvas-omp/openvas-omp-0.0.4.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Communicate with OpenVAS manager through OMP"
-HOMEPAGE="https://rubygems.org/gems/openvas-omp"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-RESTRICT="test"
-
-PDEPEND="net-analyzer/openvas"
-
-all_ruby_prepare() {
- sed -i '/bundler/d' Rakefile
-}
diff --git a/dev-ruby/optimist/Manifest b/dev-ruby/optimist/Manifest
index bd19de733bb8..3ae11c590978 100644
--- a/dev-ruby/optimist/Manifest
+++ b/dev-ruby/optimist/Manifest
@@ -1 +1 @@
-DIST optimist-3.0.0.gem 29696 BLAKE2B d078a21fc95d64827e3f9a4539339ba3e3ba9f9649cb70d4e5a830f2523b02c4bb6aa1dca159a913d852aa2a320002beb6276d920ae1804bf65c9cf1535fc341 SHA512 1fcdc4dd01fb26d5b1d181913ad28314df05e60277bcf73b98e04a7463430a6c73396fb729e3cf34bc89e2eb8387d4d3294e93fcd530129a7bcd7efdcef5223f
+DIST optimist-3.1.0.gem 31744 BLAKE2B 0fc27447a6263e2e7acde502f4b4a23d891f08f57c70655ac1057b0e2c3e33c54c215d6d27079d09305771028347473f39e4d0f547ad002237fa8808e0a8cf63 SHA512 adadc1722d970cc4c002a0983d0ab2dbb3683777310c7085950e07fa18c94e4ab788bd10bca9e1d076cf77637d09e2d6bb969f5d5b35f0b648881e744f42c785
diff --git a/dev-ruby/optimist/metadata.xml b/dev-ruby/optimist/metadata.xml
index 5e9369be77e1..ea1cd824407a 100644
--- a/dev-ruby/optimist/metadata.xml
+++ b/dev-ruby/optimist/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/optimist/optimist-3.0.0.ebuild b/dev-ruby/optimist/optimist-3.0.0.ebuild
deleted file mode 100644
index 2da197f04833..000000000000
--- a/dev-ruby/optimist/optimist-3.0.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="FAQ.txt History.txt README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A commandline option parser for Ruby that just gets out of your way."
-HOMEPAGE="https://manageiq.github.io/optimist/"
-LICENSE="MIT"
-
-KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="3"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/chronic )"
-
-all_ruby_prepare() {
- sed -i -e '/bundle/ s:^:#:' Rakefile || die
-}
-
-each_ruby_test() {
- MUTANT=true ${RUBY} -S rake test || die "Tests failed."
-}
diff --git a/dev-ruby/optimist/optimist-3.1.0.ebuild b/dev-ruby/optimist/optimist-3.1.0.ebuild
new file mode 100644
index 000000000000..60e85b618317
--- /dev/null
+++ b/dev-ruby/optimist/optimist-3.1.0.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="FAQ.txt History.txt README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A commandline option parser for Ruby that just gets out of your way"
+HOMEPAGE="https://www.manageiq.org/optimist/"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="3"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/chronic )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundle/ s:^:#:' Rakefile || die
+ sed -i -e 's/MiniTest/Minitest/' test/*_test.rb test/optimist/*_test.rb || die
+}
+
+each_ruby_test() {
+ MUTANT=true ${RUBY} -S rake test || die "Tests failed."
+}
diff --git a/dev-ruby/optionable/metadata.xml b/dev-ruby/optionable/metadata.xml
index e7d5ab8ca00d..04b550e82b96 100644
--- a/dev-ruby/optionable/metadata.xml
+++ b/dev-ruby/optionable/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/optionable/optionable-0.2.0-r1.ebuild b/dev-ruby/optionable/optionable-0.2.0-r1.ebuild
new file mode 100644
index 000000000000..6a2b56311d9a
--- /dev/null
+++ b/dev-ruby/optionable/optionable-0.2.0-r1.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Robust options validation for Ruby methods"
+HOMEPAGE="https://github.com/durran/optionable"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
diff --git a/dev-ruby/optionable/optionable-0.2.0.ebuild b/dev-ruby/optionable/optionable-0.2.0.ebuild
deleted file mode 100644
index 5022ef6d17da..000000000000
--- a/dev-ruby/optionable/optionable-0.2.0.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Robust options validation for Ruby methods"
-HOMEPAGE="https://github.com/durran/optionable"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/org-ruby/Manifest b/dev-ruby/org-ruby/Manifest
index 64b9d2e10763..bc589b0ee50e 100644
--- a/dev-ruby/org-ruby/Manifest
+++ b/dev-ruby/org-ruby/Manifest
@@ -1 +1 @@
-DIST org-ruby-0.9.12.tar.gz 143472 BLAKE2B c90e0f664f64be0449e63d717441f3c8aac9957c3b892392c8425847ea42dd23e3b7a598f57969432601ba9c6208633c7aa6e101a4684db2f68c07511bcb0458 SHA512 040c7bc9d9727fcec9bbd7ed4994ca489121c103d58242f98d340b4149f94cb97fc0bbc670bbd5dfba5a11de53930b579a33b6b1ffa343c7f2602674ec65aa07
+DIST org-ruby-0.9.12_p20200519.tar.gz 151533 BLAKE2B 8a4f11ffc6ddf8019a4df5924d64c31f2a50786d2b4871967f0b178095cbb3ca46084824293568b974e1d79aa6a4207558da0dcb08569de12a89d0b6aac3344e SHA512 ff55464fff4a0e20bf9aaa7fecb4622f1a322228add113e7b9e465009c6177b7c97332c6681c57d5d6e2967e7215a915e5eb99148eb311a0b890d8e48acf6e70
diff --git a/dev-ruby/org-ruby/files/org-ruby-0.9.12-file-exists.patch b/dev-ruby/org-ruby/files/org-ruby-0.9.12-file-exists.patch
new file mode 100644
index 000000000000..04d3c8ba9ad4
--- /dev/null
+++ b/dev-ruby/org-ruby/files/org-ruby-0.9.12-file-exists.patch
@@ -0,0 +1,36 @@
+commit c80af35e142d7705a367b5b39545fbba5b1f9bc2
+Author: Hans de Graaff <hans@degraaff.org>
+Date: Sat Dec 9 09:23:29 2023 +0100
+
+ Use non-deprecated File.exist? method
+
+ File.exists? has been deprecated for some time and is no longer
+ present in Ruby 3.2. With this change the specs pass again on Ruby
+ 3.2.
+
+diff --git a/lib/org-ruby/output_buffer.rb b/lib/org-ruby/output_buffer.rb
+index 90a0aae..3179cd5 100644
+--- a/lib/org-ruby/output_buffer.rb
++++ b/lib/org-ruby/output_buffer.rb
+@@ -137,7 +137,7 @@ module Orgmode
+ end
+
+ def do_custom_markup
+- if File.exists? @options[:markup_file]
++ if File.exist? @options[:markup_file]
+ load_custom_markup
+ if @custom_blocktags.empty?
+ no_valid_markup_found
+diff --git a/lib/org-ruby/parser.rb b/lib/org-ruby/parser.rb
+index a57fd9e..192b855 100644
+--- a/lib/org-ruby/parser.rb
++++ b/lib/org-ruby/parser.rb
+@@ -129,7 +129,7 @@ module Orgmode
+
+ # Check include file availability and permissions
+ def check_include_file(file_path)
+- can_be_included = File.exists? file_path
++ can_be_included = File.exist? file_path
+
+ if not ENV['ORG_RUBY_INCLUDE_ROOT'].nil?
+ # Ensure we have full paths
diff --git a/dev-ruby/org-ruby/metadata.xml b/dev-ruby/org-ruby/metadata.xml
index 79189180821c..8aae3a0d2c45 100644
--- a/dev-ruby/org-ruby/metadata.xml
+++ b/dev-ruby/org-ruby/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/org-ruby/org-ruby-0.9.12.ebuild b/dev-ruby/org-ruby/org-ruby-0.9.12.ebuild
deleted file mode 100644
index 67e280f6fe86..000000000000
--- a/dev-ruby/org-ruby/org-ruby-0.9.12.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="README.org History.org"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby routines for parsing org-mode files"
-HOMEPAGE="https://github.com/wallyqs/org-ruby"
-SRC_URI="https://github.com/wallyqs/${PN}/archive/version-${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-RUBY_S="${PN}-version-${PV}"
-
-ruby_add_rdepend ">=dev-ruby/rubypants-0.2:0"
-ruby_add_bdepend "test? ( dev-ruby/tilt )"
-
-all_ruby_prepare() {
- #Fix tests until rspec:3 is available in the tree
- sed -i -e "s/truthy/true/" -e "s/falsy/false/" spec/headline_spec.rb spec/parser_spec.rb spec/line_spec.rb || die
-}
diff --git a/dev-ruby/org-ruby/org-ruby-0.9.12_p20200519.ebuild b/dev-ruby/org-ruby/org-ruby-0.9.12_p20200519.ebuild
new file mode 100644
index 000000000000..9be117c667cd
--- /dev/null
+++ b/dev-ruby/org-ruby/org-ruby-0.9.12_p20200519.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+COMMIT=7a28c2e6e91cdaceb1fddc2d870f4458632816e8
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="README.org History.org"
+RUBY_FAKEGEM_GEMSPEC="org-ruby.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby routines for parsing org-mode files"
+HOMEPAGE="https://github.com/wallyqs/org-ruby"
+SRC_URI="https://github.com/wallyqs/org-ruby/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+RUBY_S="${PN}-${COMMIT}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+PATCHES=( "${FILESDIR}/org-ruby-0.9.12-file-exists.patch" )
+
+ruby_add_rdepend ">=dev-ruby/rubypants-0.2:0"
+ruby_add_bdepend "test? ( dev-ruby/tilt )"
+
+all_ruby_prepare() {
+ sed -i -e '1irequire "pathname"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/origin/Manifest b/dev-ruby/origin/Manifest
deleted file mode 100644
index 54f738a065cc..000000000000
--- a/dev-ruby/origin/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST origin-2.3.1.tar.gz 44392 BLAKE2B f58b5f977070a3e14a3b80c5ce7fb2860eda6ea41a0b403e67ff6159ccc86d078e3cc42f7269cc9640f2e3f71d66a4c0ea02935efa6d6096c6eccf622595589c SHA512 f74e3ed163b2c9a6184be624f85bc810fcb414290c5701beee291f1c227f889bc75d78ab3cc008f92780823217c7cefe916ebb3e902e807a40f4d901465343fd
diff --git a/dev-ruby/origin/metadata.xml b/dev-ruby/origin/metadata.xml
deleted file mode 100644
index b2f25e11a292..000000000000
--- a/dev-ruby/origin/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">mongoid/origin</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/origin/origin-2.3.1.ebuild b/dev-ruby/origin/origin-2.3.1.ebuild
deleted file mode 100644
index da49a47b3807..000000000000
--- a/dev-ruby/origin/origin-2.3.1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-GITHUB_USER="mongoid"
-GITHUB_PROJECT="${PN}"
-
-MY_PV="${PV/_rc/.rc}"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Origin is a simple DSL for generating MongoDB selectors and options"
-HOMEPAGE="http://mongoid.org/"
-SRC_URI="https://github.com/${GITHUB_USER}/${GITHUB_PROJECT}/archive/v${MY_PV}.tar.gz -> ${GITHUB_PROJECT}-${MY_PV}.tar.gz"
-LICENSE="MIT"
-
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- || ( dev-ruby/i18n:1 dev-ruby/i18n:0.9 dev-ruby/i18n:0.7 )
- dev-ruby/tzinfo
- )"
diff --git a/dev-ruby/ox/Manifest b/dev-ruby/ox/Manifest
index d560352d7f46..056dd3a57b51 100644
--- a/dev-ruby/ox/Manifest
+++ b/dev-ruby/ox/Manifest
@@ -1,4 +1,2 @@
-DIST ox-2.10.0.tar.gz 199144 BLAKE2B e2d175c379e4c860d540313642ab4ea39cca1eed7d5a0a896f6eb09786d0c421f5a2a0e4af5880c07b757a1604a8ede47ef4737739eaf53f9ba733b67b3e0091 SHA512 0fc7809f86528c745cc6719fd92bb51fe7c895c62b2cd27c02f2b596c19078f04aacfee90e489bede0ecd47876e36280e6852509f6d34f9b4a6292441745763a
-DIST ox-2.10.1.tar.gz 200165 BLAKE2B 46daff5d1f0b4230fddfe72217b25a77de03f3a9431a6daa93e7bc88c46482b80717f1f2bc623fbf94f3bee90e2c3655aa1b6f6d48cb9b31cc5e530c14aef25a SHA512 b1f6ec2337e5d7db96cb2b3bacb4850b9b2b64426250203de7613845fa83ce68dddba0bb6a6560c8e04f0a6416a0dc9443a469d40261e6d6bc42b14239a1eaff
-DIST ox-2.11.0.tar.gz 201028 BLAKE2B 52c908be2a1d08ad563137f99e68f7734c2fa6aa87391ddd5efddc60d2e4efcea93cba9097e3bf0373ee9d22fa101d6117e092414c7266045ed6d93a32951b12 SHA512 4a755f6d1f832ec41b50b92deb686307d177c35eb1e27bb1e61c0b0a698db7730239fa4167f8a84892a9fb81cc67abeef059b1138b01759ba993a57471e4eff7
-DIST ox-2.9.4.tar.gz 198547 BLAKE2B 4a088fb9d8ff0aa89c6496f8d1228ca33445e34fd66476de288c4373401421b27fceced671d4754b23ddc4da0b49b1ddba1ce060c5468723a146e4d5d10b7a0f SHA512 babb1e4a88596553ddba79afeaa2bad0221e90e08cc0505c8297b61b6a1acb7c9e458ee71da420ee49378c4ac8d3b8545d1ab7e05710da556c452f3f7bb133f1
+DIST ox-2.14.17.tar.gz 224636 BLAKE2B 9a8df3430a4eeeb74df1d930caba7ed84a6eacad28515e908781fbea9503f722cf9165e4498367f6838fad60bc976dd6621b69f7036a902a26c75cd6afa3a3bf SHA512 919da1884033af0e44c7dbef78a5d08dc473967bd23a9ab445b295ae57a6f1495cc95ed88794164d96d6f000b9262fa0abce9c8b4b93d27ee4c68997c820f0c1
+DIST ox-2.14.18.tar.gz 224697 BLAKE2B 2add505ebaefc8d8915d2c64f7717073df2c2792efffa75d7e4653c7ebda91390fbb1929099506119535b939a365cecf902e7405d2d84f9240e45ceadeeb38f3 SHA512 9be6c2c6a5e0bc02ec86b1495455112930737d74c1771098b68089e45c2acf897c94a8c8c0b9fdc70ccf584a692eb6aece440d4f7bece9d75bde1cea595853dc
diff --git a/dev-ruby/ox/metadata.xml b/dev-ruby/ox/metadata.xml
index 2881d656a30e..d764ab0844ca 100644
--- a/dev-ruby/ox/metadata.xml
+++ b/dev-ruby/ox/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ox/ox-2.10.0.ebuild b/dev-ruby/ox/ox-2.10.0.ebuild
deleted file mode 100644
index 997658880e31..000000000000
--- a/dev-ruby/ox/ox-2.10.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A fast XML parser and Object marshaller"
-HOMEPAGE="http://www.ohler.com/ox/ https://github.com/ohler55/ox"
-SRC_URI="https://github.com/ohler55/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="BSD"
-
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-SLOT="0"
-IUSE=""
-
-all_ruby_prepare() {
- # Avoid test that depends on did_you_mean implementation details
- sed -i -e '/test_nameerror/aomit' test/tests.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/ox extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/ox
- cp ext/ox/ox$(get_modname) lib/ox/ || die
-}
-
-each_ruby_test() {
- ${RUBY} test/tests.rb || die
-}
diff --git a/dev-ruby/ox/ox-2.10.1.ebuild b/dev-ruby/ox/ox-2.10.1.ebuild
deleted file mode 100644
index 801336f6f2e8..000000000000
--- a/dev-ruby/ox/ox-2.10.1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A fast XML parser and Object marshaller"
-HOMEPAGE="http://www.ohler.com/ox/ https://github.com/ohler55/ox"
-SRC_URI="https://github.com/ohler55/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="BSD"
-
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-SLOT="0"
-IUSE=""
-
-each_ruby_configure() {
- ${RUBY} -Cext/ox extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/ox
- cp ext/ox/ox$(get_modname) lib/ox/ || die
-}
-
-each_ruby_test() {
- ${RUBY} test/tests.rb || die
-}
diff --git a/dev-ruby/ox/ox-2.11.0.ebuild b/dev-ruby/ox/ox-2.11.0.ebuild
deleted file mode 100644
index 801336f6f2e8..000000000000
--- a/dev-ruby/ox/ox-2.11.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A fast XML parser and Object marshaller"
-HOMEPAGE="http://www.ohler.com/ox/ https://github.com/ohler55/ox"
-SRC_URI="https://github.com/ohler55/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="BSD"
-
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-SLOT="0"
-IUSE=""
-
-each_ruby_configure() {
- ${RUBY} -Cext/ox extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/ox
- cp ext/ox/ox$(get_modname) lib/ox/ || die
-}
-
-each_ruby_test() {
- ${RUBY} test/tests.rb || die
-}
diff --git a/dev-ruby/ox/ox-2.14.17.ebuild b/dev-ruby/ox/ox-2.14.17.ebuild
new file mode 100644
index 000000000000..29d90dc7c93d
--- /dev/null
+++ b/dev-ruby/ox/ox-2.14.17.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="ox.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/ox/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/ox
+
+inherit ruby-fakegem
+
+DESCRIPTION="A fast XML parser and Object marshaller"
+HOMEPAGE="https://www.ohler.com/ox/ https://github.com/ohler55/ox"
+SRC_URI="https://github.com/ohler55/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="BSD"
+
+KEYWORDS="amd64 ~ppc ~ppc64 ~x86"
+SLOT="0"
+IUSE=""
+
+each_ruby_test() {
+ ${RUBY} test/tests.rb || die
+}
diff --git a/dev-ruby/ox/ox-2.14.18.ebuild b/dev-ruby/ox/ox-2.14.18.ebuild
new file mode 100644
index 000000000000..1dec90e7cf25
--- /dev/null
+++ b/dev-ruby/ox/ox-2.14.18.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="ox.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/ox/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/ox
+
+inherit ruby-fakegem
+
+DESCRIPTION="A fast XML parser and Object marshaller"
+HOMEPAGE="https://www.ohler.com/ox/ https://github.com/ohler55/ox"
+SRC_URI="https://github.com/ohler55/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="BSD"
+
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+SLOT="0"
+
+each_ruby_test() {
+ ${RUBY} test/tests.rb || die
+}
diff --git a/dev-ruby/ox/ox-2.9.4.ebuild b/dev-ruby/ox/ox-2.9.4.ebuild
deleted file mode 100644
index 61a6f743a6dc..000000000000
--- a/dev-ruby/ox/ox-2.9.4.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A fast XML parser and Object marshaller"
-HOMEPAGE="http://www.ohler.com/ox/ https://github.com/ohler55/ox"
-SRC_URI="https://github.com/ohler55/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="BSD"
-
-KEYWORDS="amd64 ~ppc ~ppc64 ~x86"
-SLOT="0"
-IUSE=""
-
-each_ruby_configure() {
- ${RUBY} -Cext/ox extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/ox
- cp ext/ox/ox$(get_modname) lib/ox/ || die
-}
-
-each_ruby_test() {
- ${RUBY} test/tests.rb || die
-}
diff --git a/dev-ruby/packetfu/Manifest b/dev-ruby/packetfu/Manifest
deleted file mode 100644
index a9be91484249..000000000000
--- a/dev-ruby/packetfu/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST packetfu-1.1.13.gem 769024 BLAKE2B 6fa53680dec76c14c6cd73cac4e57acf2da5aaa2a9a6371d0b9fbea1e764d9e2eda09fcf0ad245eb62340fa0d3047e525ba290d4c45ff4739e28fd5782659cd6 SHA512 c3ee67bfd597dcd197f213361ab94c614136304d8746de45b99322c1b6878eaef7c4a2ebc19be658d891df3e7d261476def27ae14990157dc6cb466815bd6f15
diff --git a/dev-ruby/packetfu/metadata.xml b/dev-ruby/packetfu/metadata.xml
deleted file mode 100644
index ec8cfaae2294..000000000000
--- a/dev-ruby/packetfu/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="rubygems">packetfu</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/packetfu/packetfu-1.1.13.ebuild b/dev-ruby/packetfu/packetfu-1.1.13.ebuild
deleted file mode 100644
index c065d55b827f..000000000000
--- a/dev-ruby/packetfu/packetfu-1.1.13.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRAINSTALL="examples"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A mid-level packet manipulation library"
-HOMEPAGE="https://rubygems.org/gems/packetfu"
-
-LICENSE="BSD"
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-
-ruby_add_rdepend "
- dev-ruby/network_interface:0
- dev-ruby/pcaprub:*
-"
-
-ruby_add_bdepend "test? ( >=dev-ruby/rspec-its-1.2.0:1 )
- dev-ruby/bundler"
-DEPEND="${DEPEND} !dev-ruby/packetfu:0"
-
-all_ruby_prepare() {
- [ -f Gemfile.lock ] && rm Gemfile.lock
- #For now, we don't support development or testing at all
- #if ! use development; then
- sed -i -e "/^group :development do/,/^end$/d" Gemfile || die
- sed -i -e "/s.add_development_dependency/d" "${PN}".gemspec || die
- sed -i -e "/spec.add_development_dependency/d" "${PN}".gemspec || die
- #fi
- #if ! use test; then
- sed -i -e "/^group :test do/,/^end$/d" Gemfile || die
- #fi
- #if ! use test && ! use development; then
- sed -i -e "/^group :development, :test do/,/^end$/d" Gemfile || die
- #fi
- sed -i -e '/[Cc]overalls/d' spec/spec_helper.rb || die
-}
-
-each_ruby_prepare() {
- if [ -f Gemfile ]
- then
- BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle install --local || die
- BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle check || die
- fi
-}
diff --git a/dev-ruby/paint/Manifest b/dev-ruby/paint/Manifest
index e7a70a375645..209b8d7cb226 100644
--- a/dev-ruby/paint/Manifest
+++ b/dev-ruby/paint/Manifest
@@ -1,3 +1 @@
-DIST paint-2.0.1.tar.gz 21724 BLAKE2B 771a832465a48f9230d4687f28aaa852ace02831a72134c75b732dc446750650fb122a6bbac110d70aa586257f907642cfbfdb2a4c8b95e3358f1e1b7344664c SHA512 49db2bdca0b3b6236669219dadb8b72fb0f68102c6f93658e9b032d1da8e5be154458979425a793355efcfc90968c9cca7a1caacd087a67a5c486cd7495235ff
-DIST paint-2.0.3.tar.gz 21903 BLAKE2B d0d96813a12a992a0742eae22ffbbbde5545d9cd1df534a345eb36c522320b920e0da2e0c4b023647bb835f4e0bae7697f48f19cb0e1d167d95ba9d5a9fede90 SHA512 6a02a277e621c053f9b9f9465d0bdff981489ea14a2f127255a32b7caecb56f4acb09ef69ee892b8a6d939b83aad8b177f9f1531e84ec48a9ef833b97f89d0f1
-DIST paint-2.1.0.tar.gz 21894 BLAKE2B f67302d32e81a0e259e6ddc25afd945abe93b9dd921a3ed93271f1aeadf7ed0697c1f79869985e7714ac588f37e9e9d35564dd22baf4d909f59bf9adcc3354a3 SHA512 0de206c78c678d77cfdff0f26e42f2a045fc98a982943f7104d11e47cd4db9b196dba6a14eb09d98c103b3b70e13b84e48fe6261d2b03a9a0f4d4f10037a39cb
+DIST paint-2.3.0.tar.gz 24208 BLAKE2B 6f9028c26966ba5c7e0b7de0e9957b2cd73585679347f281a07d2ac95ab5d12f043580cc5afba8f68fd416854c1824b18ed1f53e11f24277f1718786729e66b9 SHA512 296c73ae3066f2114fdadfbaab81bb0f4b4893c8ab5b41d5dc8ef511104541df2a1bfd9f35582742769cb32e11ad22527fef7938952147eec6d4d36526fb5f60
diff --git a/dev-ruby/paint/metadata.xml b/dev-ruby/paint/metadata.xml
index 15250c401cd2..517e4f428cc2 100644
--- a/dev-ruby/paint/metadata.xml
+++ b/dev-ruby/paint/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/paint/paint-2.0.1.ebuild b/dev-ruby/paint/paint-2.0.1.ebuild
deleted file mode 100644
index aebec5054eac..000000000000
--- a/dev-ruby/paint/paint-2.0.1.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md SHORTCUTS.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Terminal painter"
-HOMEPAGE="https://github.com/janlelis/paint"
-SRC_URI="https://github.com/janlelis/paint/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test doc"
diff --git a/dev-ruby/paint/paint-2.0.3.ebuild b/dev-ruby/paint/paint-2.0.3.ebuild
deleted file mode 100644
index 188fb3ec4660..000000000000
--- a/dev-ruby/paint/paint-2.0.3.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md SHORTCUTS.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Terminal painter"
-HOMEPAGE="https://github.com/janlelis/paint"
-SRC_URI="https://github.com/janlelis/paint/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test doc"
diff --git a/dev-ruby/paint/paint-2.1.0.ebuild b/dev-ruby/paint/paint-2.1.0.ebuild
deleted file mode 100644
index ab4a0db2f6c8..000000000000
--- a/dev-ruby/paint/paint-2.1.0.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md SHORTCUTS.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Terminal painter"
-HOMEPAGE="https://github.com/janlelis/paint"
-SRC_URI="https://github.com/janlelis/paint/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test doc"
diff --git a/dev-ruby/paint/paint-2.3.0-r1.ebuild b/dev-ruby/paint/paint-2.3.0-r1.ebuild
new file mode 100644
index 000000000000..a4b747c6e88d
--- /dev/null
+++ b/dev-ruby/paint/paint-2.3.0-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md SHORTCUTS.md"
+
+RUBY_FAKEGEM_GEMSPEC=paint.gemspec
+
+inherit ruby-fakegem
+
+DESCRIPTION="Terminal painter"
+HOMEPAGE="https://github.com/janlelis/paint"
+SRC_URI="https://github.com/janlelis/paint/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test doc"
diff --git a/dev-ruby/pairing_heap/Manifest b/dev-ruby/pairing_heap/Manifest
new file mode 100644
index 000000000000..21e6162b7005
--- /dev/null
+++ b/dev-ruby/pairing_heap/Manifest
@@ -0,0 +1,2 @@
+DIST pairing_heap-3.0.1.tar.gz 16965 BLAKE2B 80200dd98676c8ee9258ef96d296a4169b56d104875368bb8401b0f7d53494e3bbff8cfc5a536bdb24d844893ebe6962af709614b399c8c56980ee578ec2740b SHA512 0d22ccd42275aec54ff6960094c7ef14ad487835ba23217882a649c66585fc6c21af8a2f27f7a0a410fba6daf157ffdae6b74f1fdd798903ac597851945dee41
+DIST pairing_heap-3.1.0.tar.gz 17034 BLAKE2B 45d093df803b02109b2f8c339ac2f138606c3f2edf6c0430acedec0691c938d9bc38ff6c822267c7bceaa0ff9537070411db1ffba2c9565aaa7427a39d9b242e SHA512 b41f11d31c92bc9946bafe9d2be9d13df2cc3b67d7266e6bc7efa1c28c4a7a1ad6f4809070ba874594beb3146cc07a928034d29fd4247f139039bf03cf0c4809
diff --git a/dev-ruby/pairing_heap/metadata.xml b/dev-ruby/pairing_heap/metadata.xml
new file mode 100644
index 000000000000..dfe26ba04abc
--- /dev/null
+++ b/dev-ruby/pairing_heap/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <longdescription>
+ Performant priority queue in pure ruby with support for changing priority using pairing heap data structure
+ </longdescription>
+ <upstream>
+ <remote-id type="github">mhib/pairing_heap</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/pairing_heap/pairing_heap-3.0.1-r1.ebuild b/dev-ruby/pairing_heap/pairing_heap-3.0.1-r1.ebuild
new file mode 100644
index 000000000000..9e71f07dc62b
--- /dev/null
+++ b/dev-ruby/pairing_heap/pairing_heap-3.0.1-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="pairing_heap.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Performant priority queue with support for changing priority"
+HOMEPAGE="https://github.com/mhib/pairing_heap"
+SRC_URI="https://github.com/mhib/pairing_heap/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+# We normally patch out simplecov but the test suite does not work
+# correctly without it.
+ruby_add_bdepend "test? ( dev-ruby/minitest dev-ruby/simplecov )"
+
+all_ruby_prepare() {
+ sed -i -e '/require.*\(bundler\|standard\)/ s:^:#:' Rakefile || die
+
+ sed -e 's:_relative ": "./:' \
+ -e 's/__dir__/"."/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/pairing_heap/pairing_heap-3.1.0.ebuild b/dev-ruby/pairing_heap/pairing_heap-3.1.0.ebuild
new file mode 100644
index 000000000000..fc19294ce516
--- /dev/null
+++ b/dev-ruby/pairing_heap/pairing_heap-3.1.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="pairing_heap.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Performant priority queue with support for changing priority"
+HOMEPAGE="https://github.com/mhib/pairing_heap"
+SRC_URI="https://github.com/mhib/pairing_heap/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+
+# We normally patch out simplecov but the test suite does not work
+# correctly without it.
+ruby_add_bdepend "test? ( dev-ruby/minitest dev-ruby/simplecov )"
+
+all_ruby_prepare() {
+ sed -i -e '/require.*\(bundler\|standard\)/ s:^:#:' Rakefile || die
+
+ sed -e 's:_relative ": "./:' \
+ -e 's/__dir__/"."/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/parallel/Manifest b/dev-ruby/parallel/Manifest
index db917a36f46e..adc556b648f1 100644
--- a/dev-ruby/parallel/Manifest
+++ b/dev-ruby/parallel/Manifest
@@ -1,2 +1,2 @@
-DIST parallel-1.16.2.tar.gz 20853 BLAKE2B 4d30dd43f854ca9c3a6b739a36f250374a527d00c12e1221e5cb5a9da06fda66b0fadaaf7b9b5f5ac69549e9b1c75eb8f1c17a4bcd160ba15086013884176c07 SHA512 0d3cd59527ab1ff9da995f71cf2c04d6eec5276d5dcbab8b62844e18c3cf83de9b288c0f184d26dcf2897539bba2a6ac58fd0efb02952cc7999f411c3efb5b33
-DIST parallel-1.17.0.tar.gz 20882 BLAKE2B a8afb329de1d8d0d577c1b53d990c4f1cd8ec9f23b8cc1005310903954f180c52535e3d8a5901862f1504da0981f3e16cf73a848403ed49872aa3dc45781b888 SHA512 92c7f4475a791da4feb0afda3686a4f9e9cc397ac278560c177552abf586054594d29a67b583845b69433e7824c0ce36bcffe98e13051242db0e5ee4a3c7a17c
+DIST parallel-1.23.0.tar.gz 23359 BLAKE2B f7c505484a8ebade97efb61eb18474625ee994e3a4a16e85b264988212e3de093ae7b8cb03de2a6f97f8205b41264b72c13f32d81ed9ddcd2241d3aab15c7564 SHA512 fd80b928ad4c34c71abb62a2e27da6bdcabb425ed68cfef190c0e9f56c853147b1c96d7e9b5ec0ef2e7909dd2303892cb293c40a170241158286f9422b6bc780
+DIST parallel-1.24.0.tar.gz 23944 BLAKE2B 9e14b8551416c74a16f34db0616c487841368b6834c6848c929e480b3bbeaa3d378c96ccb26496bdef35448e583ab8d029d84f54408a29385e6809d0f013cf71 SHA512 9b1bd00fa16cae4938642e2834c57ce71c5f51bbbec695c40107a02f1af4a1528ef27ce002f3a3290e21a6c045c739ac3844c586e4f1976ac5616d8fae03a5af
diff --git a/dev-ruby/parallel/metadata.xml b/dev-ruby/parallel/metadata.xml
index 9342377f9242..33b61664d037 100644
--- a/dev-ruby/parallel/metadata.xml
+++ b/dev-ruby/parallel/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/parallel/parallel-1.16.2.ebuild b/dev-ruby/parallel/parallel-1.16.2.ebuild
deleted file mode 100644
index 471513dfe1f1..000000000000
--- a/dev-ruby/parallel/parallel-1.16.2.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="Readme.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Run any code in parallel Processes or Threads"
-HOMEPAGE="https://github.com/grosser/parallel"
-LICENSE="MIT"
-SRC_URI="https://github.com/grosser/parallel/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-KEYWORDS="~amd64"
-SLOT="1"
-IUSE="test"
-
-DEPEND+="test? ( sys-process/lsof )"
-
-ruby_add_bdepend "
- test? ( dev-ruby/ruby-progressbar dev-ruby/activerecord:5.2 dev-ruby/sqlite3 )"
-
-each_ruby_prepare() {
- # Make sure the correct ruby is used for testing
- sed -e 's:ruby :'${RUBY}' :' -i spec/parallel_spec.rb || die
-}
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' \
- -e '1i require "tempfile"; gem "activerecord", "~>5.2.0"' spec/cases/helper.rb || die
- sed -i -e '3irequire "timeout"' spec/spec_helper.rb || die
-
- # Avoid a failing spec regarding to pipes. The spec seems like it
- # should always fail.
- sed -e '/does not open unnecessary pipes/,/end/ s:^:#:' \
- -i spec/parallel_spec.rb || die
-
- # Avoid fragile ar sqlite tests. They throw ReadOnly errors every now and then.
- sed -i -e '/works with SQLite in/,/end/ s:^:#:' spec/parallel_spec.rb || die
-
- # Avoid spec broken on Ruby 2.1 that clearly doesn't match code and doesn't really test anything
- sed -i -e '/doesnt use Etc.nprocessors in Ruby 2.1 and below/,/end/ s:^:#:' spec/parallel_spec.rb || die
-}
-
-each_ruby_test() {
- # Set RUBYLIB explicitly for the ruby's that get started from the specs.
- TRAVIS=true RUBYLIB="lib" ${RUBY} -S rspec-3 spec || die
-}
diff --git a/dev-ruby/parallel/parallel-1.17.0.ebuild b/dev-ruby/parallel/parallel-1.17.0.ebuild
deleted file mode 100644
index 0f45111f5dfa..000000000000
--- a/dev-ruby/parallel/parallel-1.17.0.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRAINSTALL="Readme.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Run any code in parallel Processes or Threads"
-HOMEPAGE="https://github.com/grosser/parallel"
-LICENSE="MIT"
-SRC_URI="https://github.com/grosser/parallel/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-KEYWORDS="~amd64"
-SLOT="1"
-IUSE="test"
-
-DEPEND+="test? ( sys-process/lsof )"
-
-ruby_add_bdepend "
- test? ( dev-ruby/ruby-progressbar dev-ruby/activerecord:5.2 dev-ruby/sqlite3 )"
-
-each_ruby_prepare() {
- # Make sure the correct ruby is used for testing
- sed -e 's:ruby :'${RUBY}' :' -i spec/parallel_spec.rb || die
-}
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' \
- -e '1i require "tempfile"; gem "activerecord", "~>5.2.0"' spec/cases/helper.rb || die
- sed -i -e '3irequire "timeout"' spec/spec_helper.rb || die
-
- # Avoid a failing spec regarding to pipes. The spec seems like it
- # should always fail.
- sed -e '/does not open unnecessary pipes/,/end/ s:^:#:' \
- -i spec/parallel_spec.rb || die
-
- # Avoid fragile ar sqlite tests. They throw ReadOnly errors every now and then.
- sed -i -e '/works with SQLite in/,/end/ s:^:#:' spec/parallel_spec.rb || die
-
- # Avoid spec broken on Ruby 2.1 that clearly doesn't match code and doesn't really test anything
- sed -i -e '/doesnt use Etc.nprocessors in Ruby 2.1 and below/,/end/ s:^:#:' spec/parallel_spec.rb || die
-}
-
-each_ruby_test() {
- # Set RUBYLIB explicitly for the ruby's that get started from the specs.
- TRAVIS=true RUBYLIB="lib" ${RUBY} -S rspec-3 spec || die
-}
diff --git a/dev-ruby/parallel/parallel-1.23.0.ebuild b/dev-ruby/parallel/parallel-1.23.0.ebuild
new file mode 100644
index 000000000000..99e9eac66f1e
--- /dev/null
+++ b/dev-ruby/parallel/parallel-1.23.0.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRAINSTALL="Readme.md"
+
+RUBY_FAKEGEM_GEMSPEC="parallel.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Run any code in parallel Processes or Threads"
+HOMEPAGE="https://github.com/grosser/parallel"
+SRC_URI="https://github.com/grosser/parallel/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="amd64 ~riscv"
+
+DEPEND+="test? ( sys-process/lsof sys-process/procps )"
+
+ruby_add_bdepend "
+ test? ( dev-ruby/ruby-progressbar )
+"
+
+# Rails isn't yet ruby32-ready in Gentoo
+USE_RUBY="ruby30 ruby31" ruby_add_bdepend "
+ test? ( dev-ruby/activerecord[sqlite] )
+"
+
+each_ruby_prepare() {
+ # Make sure the correct ruby is used for testing
+ sed -e 's:ruby :'${RUBY}' :' -i spec/parallel_spec.rb || die
+}
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/ s:^:#:' \
+ -e '1i require "tempfile"' spec/cases/helper.rb || die
+ sed -i -e '3irequire "timeout"' spec/spec_helper.rb || die
+
+ # Avoid fragile ar sqlite tests. They throw ReadOnly errors every now and then.
+ sed -i -e '/works with SQLite in/,/end/ s:^:#:' spec/parallel_spec.rb || die
+}
+
+each_ruby_test() {
+ if ! has_version -b "dev-ruby/activerecord[sqlite]" ; then
+ rm spec/cases/map_with_ar.rb spec/cases/each_with_ar_sqlite.rb || die
+ fi
+
+ # Set RUBYLIB explicitly for the ruby's that get started from the specs.
+ TRAVIS=true RUBYLIB="lib" ${RUBY} -S rspec-3 spec || die
+}
diff --git a/dev-ruby/parallel/parallel-1.24.0.ebuild b/dev-ruby/parallel/parallel-1.24.0.ebuild
new file mode 100644
index 000000000000..28bfb2ad8c7d
--- /dev/null
+++ b/dev-ruby/parallel/parallel-1.24.0.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRAINSTALL="Readme.md"
+
+RUBY_FAKEGEM_GEMSPEC="parallel.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Run any code in parallel Processes or Threads"
+HOMEPAGE="https://github.com/grosser/parallel"
+SRC_URI="https://github.com/grosser/parallel/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~amd64 ~riscv"
+
+DEPEND+="test? ( sys-process/lsof sys-process/procps )"
+
+ruby_add_bdepend "
+ test? ( dev-ruby/ruby-progressbar )
+"
+
+# Rails isn't yet ruby32-ready in Gentoo
+USE_RUBY="ruby30 ruby31" ruby_add_bdepend "
+ test? ( dev-ruby/activerecord[sqlite] )
+"
+
+each_ruby_prepare() {
+ # Make sure the correct ruby is used for testing
+ sed -e 's:ruby :'${RUBY}' :' -i spec/parallel_spec.rb || die
+}
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/ s:^:#:' \
+ -e '1i require "tempfile"' spec/cases/helper.rb || die
+ sed -i -e '3irequire "timeout"' spec/spec_helper.rb || die
+
+ # Avoid fragile ar sqlite tests. They throw ReadOnly errors every now and then.
+ sed -i -e '/works with SQLite in/,/end/ s:^:#:' spec/parallel_spec.rb || die
+}
+
+each_ruby_test() {
+ if ! has_version -b "dev-ruby/activerecord[sqlite]" ; then
+ rm spec/cases/map_with_ar.rb spec/cases/each_with_ar_sqlite.rb || die
+ fi
+
+ # Set RUBYLIB explicitly for the ruby's that get started from the specs.
+ TRAVIS=true RUBYLIB="lib" ${RUBY} -S rspec-3 spec || die
+}
diff --git a/dev-ruby/paramesan/Manifest b/dev-ruby/paramesan/Manifest
index 00177c3f5ff6..c629fdfe873d 100644
--- a/dev-ruby/paramesan/Manifest
+++ b/dev-ruby/paramesan/Manifest
@@ -1 +1 @@
-DIST paramesan-0.1.1.tgz 4064 BLAKE2B f6c0e8b0df885e9dda4d5c2a3f0226703a94237707b877a7b82d5b8b0fdc812fcf289019a1ed550640a7f99a59a0b0389407857bc0e21987c7dd734734d32c0d SHA512 927595ed9686fb8833beaabf4421cb2c4908bf6e2e1c656034a79c839c292b503ca0ae211f8bdd3916501a281eb2f0b374fc5f4c90615629170e1ba767f0e7fc
+DIST paramesan-1.0.1.tgz 4981 BLAKE2B 3447281084a1d79d46f2a8b80c9b6d2ee63d9ef245e07ef07799a2ab2c730a1f99075bfb5c632c409fe412e277cfe354c8e59e99ffd38c2f1d671b7db3ace34a SHA512 6353006a26e8a7d4790d8bee88e4968df6d79ebca1f0855262eee1679789dfe1404fc345f6965377d5eadf03b88b9b8e1764a84065dde312d29fc0bae323b8a0
diff --git a/dev-ruby/paramesan/metadata.xml b/dev-ruby/paramesan/metadata.xml
index f7b84e9623c4..9b2c1175d46a 100644
--- a/dev-ruby/paramesan/metadata.xml
+++ b/dev-ruby/paramesan/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/paramesan/paramesan-0.1.1.ebuild b/dev-ruby/paramesan/paramesan-0.1.1.ebuild
deleted file mode 100644
index 0c42565d823e..000000000000
--- a/dev-ruby/paramesan/paramesan-0.1.1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_GEMSPEC="paramesan.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Parameterized tests in Ruby"
-HOMEPAGE="https://github.com/jpace/paramesan"
-
-SRC_URI="https://github.com/jpace/paramesan/archive/v${PV}.tar.gz -> ${P}.tgz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~hppa ~ppc ~sparc x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/paramesan/paramesan-1.0.1-r1.ebuild b/dev-ruby/paramesan/paramesan-1.0.1-r1.ebuild
new file mode 100644
index 000000000000..be3439c7fccd
--- /dev/null
+++ b/dev-ruby/paramesan/paramesan-1.0.1-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="paramesan.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Parameterized tests in Ruby"
+HOMEPAGE="https://github.com/jpace/paramesan"
+
+SRC_URI="https://github.com/jpace/paramesan/archive/v${PV}.tar.gz -> ${P}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~hppa ~ppc ~sparc x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/parser/Manifest b/dev-ruby/parser/Manifest
index f3fad85ecfd9..265f2c86f132 100644
--- a/dev-ruby/parser/Manifest
+++ b/dev-ruby/parser/Manifest
@@ -1,4 +1,4 @@
-DIST parser-2.5.3.0.gem 654336 BLAKE2B dff1b0e0b593a5603f1b0fd9c39f59b6126ad9575d8c077d5a7e2feb16e6f9ef72321a3c7d3a0c21e2f7c26446132c8c30120785390f2b450a0f42a1b2d11128 SHA512 3721b5064ebd9a7de4e50f299001f1640ecdb27b99d932f0a509b89c0b5bf2b337b0298466e6267c61d2b5fcf2e556e0d1a10f6c29dc6f64bd042667f9d79d5b
-DIST parser-2.6.2.0.gem 701952 BLAKE2B 5c9fd1479c7bf95e43877a39c07697b766452bd9d712b140a313384adc50356949479f6a24e6d0dcba5238d8281cba952aed97ed002142c084fc73a64e96c3ec SHA512 c729767d8d2e7ddf293e6945226e219e297862a39bb22c52be0ae02e288cdf1a468cf372caef48cb858cd130b407e531efe9b1462a169c1f8ad3f3e56085e4ca
-DIST parser-2.6.2.1.gem 701952 BLAKE2B bce964f69d80b8385e1c3c5f7fb3b549b418536cf2b617bf278d776878da516c6922553e66cbd0ba7e26b8d4253a138e15f61fa602639cf639f74e1f0521b0f6 SHA512 339e3a3c4eb6d1d7b2008d7aa49a7857f06e767a23b148a68edd2509b3540a442ea6c62fcab2dce72416b15a7b80e448546589b0e82105a83514c66496edc636
-DIST parser-2.6.3.0.gem 702976 BLAKE2B 139264c11a043d52479d76bba50b877d1c5d9a7644d0863a8733887d6bb52b82e05ac1df44669fde86d863f92f545de1782ad4214619528265396c27d4a82524 SHA512 46823097d05550cd0dabf58d442560588d0757c85d44678836abd4c048ce2e5c2124ff8a30be6fd636906fecfcd8cefc500990ed26b4361669a8644ea860e7a0
+DIST parser-3.2.2.4.tar.gz 315784 BLAKE2B 4dadbc75ef6f3b7598d7e51222bac37cdbcb0ef2c9d156f910080d2f1a77ec568d34f57198f54e261ffc97faf0fffcd0d9f84f0710e1fbb31ac680cf08764608 SHA512 dc755f4acf9bdbe9312e622eaae96e44efd5a4db5e9cb31cc93ca225b5e8f8cb7f9bb408225ceeaa63d543a9f47e89aba00d1b1353a558ab53219f4611d19955
+DIST parser-3.3.0.3.tar.gz 318017 BLAKE2B 3322de46055839d6be751914c4d1cf020ed6a62795432427aac2c267df2a46af5e970e757ee4d7d357660d65fc14fbc143239f33a6f83905f9457c5eda523e13 SHA512 8248009f285b727b029596c931f067b14e5e5811c940dbdce41155ea2489c0a348a4f4a425cc0af7c1bcea5fafbdfa48fd97ef448be3092a879abfcfd2c2438c
+DIST parser-3.3.0.4.tar.gz 329872 BLAKE2B 966c5fc12b2b4ba9fa94b93d2f9b0fd1f18d1f1f5d2fe80299099f04dc28874e0b9a1235bdd2ccc5e2bbb5b4033529a24721337cba9bedf23843109adf19f928 SHA512 c3ffca4978b3f156663a3cac72c9629107a92e2a40dd2dbdea4d14a72d9b48af832b33fad0bc81707f0c8e49e14ac9e3f832c02d94c424db17aee9009fb79386
+DIST parser-3.3.0.5.tar.gz 329827 BLAKE2B 6e7872134d6591a378192d12424a9314a3fe580c187db8e1adcf75a377acd4dd12389222d25a044b8fc22df4c3a251796bb8bf073a1ac6f6130f5709c25ef9f4 SHA512 ef6c9eed9ffc42e1cbee662bc1305bd2ce28ba8e7a06d3c77ecdb07fb6244ea65d2b402bd2cd7cf49af3336976e81d288caf0e1da144d837e36b25dc406ee81d
diff --git a/dev-ruby/parser/metadata.xml b/dev-ruby/parser/metadata.xml
index 98ac20c53fac..cdfaf179aa3d 100644
--- a/dev-ruby/parser/metadata.xml
+++ b/dev-ruby/parser/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/parser/parser-2.5.3.0.ebuild b/dev-ruby/parser/parser-2.5.3.0.ebuild
deleted file mode 100644
index 6a974f1af34e..000000000000
--- a/dev-ruby/parser/parser-2.5.3.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_TASK_TEST="test"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_VERSION="${PV/_pre/.pre.}"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A production-ready Ruby parser written in pure Ruby"
-HOMEPAGE="https://github.com/whitequark/parser"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? (
- dev-ruby/minitest:5
- dev-ruby/racc
- dev-ruby/cliver )"
-ruby_add_rdepend "=dev-ruby/ast-2.4*"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
- sed -i -e '/simplecov/ s:^:#:' test/helper.rb || die
-}
diff --git a/dev-ruby/parser/parser-2.6.2.0.ebuild b/dev-ruby/parser/parser-2.6.2.0.ebuild
deleted file mode 100644
index eea51db58bc4..000000000000
--- a/dev-ruby/parser/parser-2.6.2.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_TASK_TEST="test"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_VERSION="${PV/_pre/.pre.}"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A production-ready Ruby parser written in pure Ruby"
-HOMEPAGE="https://github.com/whitequark/parser"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? (
- dev-ruby/minitest:5
- dev-ruby/racc
- dev-ruby/cliver )"
-ruby_add_rdepend "=dev-ruby/ast-2.4*"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
- sed -i -e '/simplecov/ s:^:#:' test/helper.rb || die
-}
diff --git a/dev-ruby/parser/parser-2.6.2.1.ebuild b/dev-ruby/parser/parser-2.6.2.1.ebuild
deleted file mode 100644
index eea51db58bc4..000000000000
--- a/dev-ruby/parser/parser-2.6.2.1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_TASK_TEST="test"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_VERSION="${PV/_pre/.pre.}"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A production-ready Ruby parser written in pure Ruby"
-HOMEPAGE="https://github.com/whitequark/parser"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? (
- dev-ruby/minitest:5
- dev-ruby/racc
- dev-ruby/cliver )"
-ruby_add_rdepend "=dev-ruby/ast-2.4*"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
- sed -i -e '/simplecov/ s:^:#:' test/helper.rb || die
-}
diff --git a/dev-ruby/parser/parser-2.6.3.0.ebuild b/dev-ruby/parser/parser-2.6.3.0.ebuild
deleted file mode 100644
index cf7f39e70f98..000000000000
--- a/dev-ruby/parser/parser-2.6.3.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_TASK_TEST="test"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_VERSION="${PV/_pre/.pre.}"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A production-ready Ruby parser written in pure Ruby"
-HOMEPAGE="https://github.com/whitequark/parser"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? (
- dev-ruby/minitest:5
- dev-ruby/racc
- dev-ruby/cliver )"
-ruby_add_rdepend "=dev-ruby/ast-2.4*"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
- sed -i -e '/simplecov/ s:^:#:' test/helper.rb || die
-}
diff --git a/dev-ruby/parser/parser-3.2.2.4.ebuild b/dev-ruby/parser/parser-3.2.2.4.ebuild
new file mode 100644
index 000000000000..ae52a5886cef
--- /dev/null
+++ b/dev-ruby/parser/parser-3.2.2.4.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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/cliver
+"
+ruby_add_rdepend "=dev-ruby/ast-2.4* >=dev-ruby/ast-2.4.1 dev-ruby/racc"
+
+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/parser/parser-3.3.0.3.ebuild b/dev-ruby/parser/parser-3.3.0.3.ebuild
new file mode 100644
index 000000000000..48b258f91620
--- /dev/null
+++ b/dev-ruby/parser/parser-3.3.0.3.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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"
+
+DEPEND+=" =dev-util/ragel-6*"
+
+ruby_add_bdepend "
+ test? ( dev-ruby/minitest:5 )
+ dev-ruby/cliver
+"
+ruby_add_rdepend "=dev-ruby/ast-2.4* >=dev-ruby/ast-2.4.1 dev-ruby/racc"
+
+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/parser/parser-3.3.0.4.ebuild b/dev-ruby/parser/parser-3.3.0.4.ebuild
new file mode 100644
index 000000000000..48b258f91620
--- /dev/null
+++ b/dev-ruby/parser/parser-3.3.0.4.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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"
+
+DEPEND+=" =dev-util/ragel-6*"
+
+ruby_add_bdepend "
+ test? ( dev-ruby/minitest:5 )
+ dev-ruby/cliver
+"
+ruby_add_rdepend "=dev-ruby/ast-2.4* >=dev-ruby/ast-2.4.1 dev-ruby/racc"
+
+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/parser/parser-3.3.0.5.ebuild b/dev-ruby/parser/parser-3.3.0.5.ebuild
new file mode 100644
index 000000000000..0d50425d80a7
--- /dev/null
+++ b/dev-ruby/parser/parser-3.3.0.5.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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"
+
+DEPEND+=" =dev-util/ragel-6*"
+
+ruby_add_bdepend "
+ test? ( dev-ruby/minitest:5 )
+ dev-ruby/cliver
+"
+ruby_add_rdepend "=dev-ruby/ast-2.4* >=dev-ruby/ast-2.4.1 dev-ruby/racc"
+
+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/parslet/Manifest b/dev-ruby/parslet/Manifest
deleted file mode 100644
index 667d4ebcc338..000000000000
--- a/dev-ruby/parslet/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST parslet-1.8.2.tar.gz 244557 BLAKE2B efd5355672a148189176349946e7cf3b9f11d16e75739792b42a89d538ae100bf0f2e36d0b25ea281f2559b3f37d2b4043c8216c4d52f8df289e9df3f6b3d3fe SHA512 7b6ccfcb7651c7844241a99747a97c822facf1fd84cf2b680cb044623d600a5bd10ddf5db76ab25208b18949bc2041306740931da4327934b241a5b1f706ca20
diff --git a/dev-ruby/parslet/metadata.xml b/dev-ruby/parslet/metadata.xml
deleted file mode 100644
index 1d1c657088a7..000000000000
--- a/dev-ruby/parslet/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">kschiess/parslet</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/parslet/parslet-1.8.2.ebuild b/dev-ruby/parslet/parslet-1.8.2.ebuild
deleted file mode 100644
index 589b70c4941e..000000000000
--- a/dev-ruby/parslet/parslet-1.8.2.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="HISTORY.txt README"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A small PEG based parser library"
-HOMEPAGE="https://github.com/kschiess/parslet"
-SRC_URI="https://github.com/kschiess/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-IUSE=""
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-ruby_add_bdepend "test? ( dev-ruby/ae dev-ruby/ansi dev-ruby/flexmock )"
-
-all_ruby_prepare() {
- sed -i -e "/sdoc/d" Rakefile || die
-}
diff --git a/dev-ruby/pastel/Manifest b/dev-ruby/pastel/Manifest
index 535982918250..df3b0908ba9c 100644
--- a/dev-ruby/pastel/Manifest
+++ b/dev-ruby/pastel/Manifest
@@ -1,2 +1 @@
-DIST pastel-0.7.2.gem 49152 BLAKE2B 37380dd9f44f2e816628bda1ed359aeaa961c9b1c18a0e76b4b04fea39906e53601aba17fd2c1cd0571357697296ee1afce3a52fbdc33475a1560c3c2f52e567 SHA512 83cf7ef04800a77ee91692de5b89c6bfe6590be72f24dda74ee53809b14b7e2e9c6e70e9a829eff7aa8dd02a191057dc5f5c5528d36fe2bfd211e1c499d276f0
-DIST pastel-0.7.3.gem 22016 BLAKE2B 0e883969446c9c64389a6280de3f94c6e4970321051bfa718698ea0ce2594ac9a36e32f29946fbceb98015644d529c8dbdafb9f1fdb2fe0825b3d9477b75f4b8 SHA512 71cefdac478c709c8d4899021438945c841e4eada2411aae3165e8444835bd9aed27ad9083fe223b115206311fa579d4160cde136bd7a21df5bdcf2589234177
+DIST pastel-0.8.0.tar.gz 49560 BLAKE2B 646cdf5f7cd1e62e83d87cdcdbbdc2cb2619fd570b4715191825344346053b7bf8f8f18b177a8bad6416c13858ab007d94ccf5c16b71c123e4a3d2fd03cd0720 SHA512 8066b372f08e1d6312b87744309692e3e6fd5e2737374bce53087af45141ea4f14e67ead6dccb11df70f73cbb0611ab9e20f7fb553d87a349996bda0f7a3862d
diff --git a/dev-ruby/pastel/metadata.xml b/dev-ruby/pastel/metadata.xml
index 5cb98c9c1082..f8e210217252 100644
--- a/dev-ruby/pastel/metadata.xml
+++ b/dev-ruby/pastel/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/pastel/pastel-0.7.2.ebuild b/dev-ruby/pastel/pastel-0.7.2.ebuild
deleted file mode 100644
index 6d9396841321..000000000000
--- a/dev-ruby/pastel/pastel-0.7.2.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Terminal strings styling with intuitive and clean API"
-HOMEPAGE="https://github.com/piotrmurach/pastel"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- =dev-ruby/equatable-0.5*
- =dev-ruby/tty-color-0.4*
-"
-
-all_ruby_prepare() {
- echo '-rspec_helper' > .rspec || die
-}
diff --git a/dev-ruby/pastel/pastel-0.7.3.ebuild b/dev-ruby/pastel/pastel-0.7.3.ebuild
deleted file mode 100644
index e76bba5ba9fa..000000000000
--- a/dev-ruby/pastel/pastel-0.7.3.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Terminal strings styling with intuitive and clean API"
-HOMEPAGE="https://github.com/piotrmurach/pastel"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/equatable-0.6:0
- >=dev-ruby/tty-color-0.5:0
-"
-
-all_ruby_prepare() {
- echo '-rspec_helper' > .rspec || die
-}
diff --git a/dev-ruby/pastel/pastel-0.8.0-r1.ebuild b/dev-ruby/pastel/pastel-0.8.0-r1.ebuild
new file mode 100644
index 000000000000..372c20ae05ff
--- /dev/null
+++ b/dev-ruby/pastel/pastel-0.8.0-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="pastel.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Terminal strings styling with intuitive and clean API"
+HOMEPAGE="https://github.com/piotrmurach/pastel"
+SRC_URI="https://github.com/piotrmurach/pastel/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/tty-color-0.5:0
+"
+
+all_ruby_prepare() {
+ echo '-rspec_helper' > .rspec || die
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/pastel/pastel-0.8.0.ebuild b/dev-ruby/pastel/pastel-0.8.0.ebuild
new file mode 100644
index 000000000000..1729283a9c9f
--- /dev/null
+++ b/dev-ruby/pastel/pastel-0.8.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="pastel.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Terminal strings styling with intuitive and clean API"
+HOMEPAGE="https://github.com/piotrmurach/pastel"
+SRC_URI="https://github.com/piotrmurach/pastel/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/tty-color-0.5:0
+"
+
+all_ruby_prepare() {
+ echo '-rspec_helper' > .rspec || die
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/patch_finder/Manifest b/dev-ruby/patch_finder/Manifest
deleted file mode 100644
index e564c2e13a94..000000000000
--- a/dev-ruby/patch_finder/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST patch_finder-1.0.2.gem 14848 BLAKE2B d876bb130d0174f762032aba3c1326633fc10ed539b697a83dcf7999d1ae0f5045e5d12ad409d60bebff894dee315bd19523a225885fa8d99d489ccd88434cf8 SHA512 24b269fcf9d379ca07aaecb8a9282086767eed0dfa9a12cd2523eda488621a81e90c4cb386600f3120bd503e0de1887f6826da33df4e77c5c8eb3fae61e7ca8f
diff --git a/dev-ruby/patch_finder/metadata.xml b/dev-ruby/patch_finder/metadata.xml
deleted file mode 100644
index cd2760d3f464..000000000000
--- a/dev-ruby/patch_finder/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">wchen-r7/patch-finder</remote-id>
- <remote-id type="rubygems">patch_finder</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/patch_finder/patch_finder-1.0.2.ebuild b/dev-ruby/patch_finder/patch_finder-1.0.2.ebuild
deleted file mode 100644
index 4e7103536d10..000000000000
--- a/dev-ruby/patch_finder/patch_finder-1.0.2.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Generic Patch Finder"
-HOMEPAGE="https://github.com/wchen-r7/patch-finder"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-
-IUSE=""
diff --git a/dev-ruby/path_expander/Manifest b/dev-ruby/path_expander/Manifest
index b55ff52abb5c..ae36185b00fc 100644
--- a/dev-ruby/path_expander/Manifest
+++ b/dev-ruby/path_expander/Manifest
@@ -1,2 +1 @@
-DIST path_expander-1.0.3.gem 13312 BLAKE2B 79be135b73f192e86cbdfae7a203434c4c8b1535c2db959141db79fd6a2eedd92c6436376485ccf3f8c15efcda31de40a7dd5a8c71eece17ca1e72f7bd7e95b7 SHA512 e05d66759a863f69845e41da1677f2020111e85e206d58acb93d18e044833f70b9420929e731884e6bcd156988ca3ae836f9913697ec85756a71f68499469ef2
-DIST path_expander-1.0.4.gem 13312 BLAKE2B 9372b904a490cc07a29430a397d84d09484486517769a7803e983af31f6a181c7a5f8c2af15e5fcdfd9b794c9bfa1f5bd908c39d22c2b2e2dc7b8eb0a929592c SHA512 69d45724f3ba406a6dc96df06be1dd9cc869a52c4ea19eac9b900a8db083ce04fad4dbb37e5e75f5a229114f7b65023df2edd7c367a0670432e74105cd3c298c
+DIST path_expander-1.1.1.gem 13312 BLAKE2B d22b7253be821f7bf73bef48843b64356e5a4c66fb532844e4de25e9f4e01486560defda00d8cbc698a3d3b936cff742bdd3005afb32f9a41318d380d2f575cc SHA512 bd670b45bf8a265faf0ab9e845782e7bb6fa62e4360d3b5109b83b27afc54d3d372db1d0df9a098eb6935d24d29a973848c7b914b5ee0d67069ddc88c0aa79b7
diff --git a/dev-ruby/path_expander/metadata.xml b/dev-ruby/path_expander/metadata.xml
index fa8d63e31a9d..826541e44c47 100644
--- a/dev-ruby/path_expander/metadata.xml
+++ b/dev-ruby/path_expander/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/path_expander/path_expander-1.0.3.ebuild b/dev-ruby/path_expander/path_expander-1.0.3.ebuild
deleted file mode 100644
index e197c8a5c3a4..000000000000
--- a/dev-ruby/path_expander/path_expander-1.0.3.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Pre-process CLI arguments expanding directories into their constituent files"
-HOMEPAGE="https://github.com/seattlerb/path_expander"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~x86"
-SLOT="1"
-IUSE=""
-
-all_ruby_prepare() {
- # Fix tests depending on sort order
- sed -i -e '/test_process_args_dir/,/^ end/ s:^:#:' \
- -e '33 s/$/.sort/' \
- -e '83 s/act/act.sort/' \
- test/test_path_expander.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:.:test -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/path_expander/path_expander-1.0.4.ebuild b/dev-ruby/path_expander/path_expander-1.0.4.ebuild
deleted file mode 100644
index 8bca9466ad0d..000000000000
--- a/dev-ruby/path_expander/path_expander-1.0.4.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Pre-process CLI arguments expanding directories into their constituent files"
-HOMEPAGE="https://github.com/seattlerb/path_expander"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~x86"
-SLOT="1"
-IUSE=""
-
-all_ruby_prepare() {
- # Fix tests depending on sort order
- sed -i -e '/test_process_args_dir/,/^ end/ s:^:#:' \
- -e '33 s/$/.sort/' \
- -e '83 s/act/act.sort/' \
- test/test_path_expander.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:.:test -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/path_expander/path_expander-1.1.1.ebuild b/dev-ruby/path_expander/path_expander-1.1.1.ebuild
new file mode 100644
index 000000000000..a7ddd0c6c45e
--- /dev/null
+++ b/dev-ruby/path_expander/path_expander-1.1.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Pre-process CLI arguments expanding directories into their constituent files"
+HOMEPAGE="https://github.com/seattlerb/path_expander"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~amd64 ~x86"
+
+all_ruby_prepare() {
+ # Fix tests depending on sort order
+ sed -i -e '/test_process_args_dir/,/^ end/ s:^:#:' \
+ -e '33 s/$/.sort/' \
+ -e '83 s/act/act.sort/' \
+ test/test_path_expander.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/pathutil/files/pathutil-0.16.2-ruby30.patch b/dev-ruby/pathutil/files/pathutil-0.16.2-ruby30.patch
new file mode 100644
index 000000000000..9bb290d4bf24
--- /dev/null
+++ b/dev-ruby/pathutil/files/pathutil-0.16.2-ruby30.patch
@@ -0,0 +1,197 @@
+https://github.com/envygeeks/pathutil/pull/5
+
+From 3451a10c362fc867b20c7e471a551b31c40a0246 Mon Sep 17 00:00:00 2001
+From: Tom Dunlap <tom@motevets.com>
+Date: Tue, 9 Jun 2020 12:59:32 -0400
+Subject: [PATCH] Fix ruby keyword parameter deprecation warnings
+
+In ruby 2.7, using the last argument as keyword parameters became
+deprecated in preparation for ruby 3.0. When running the tests, we saw
+numerous deprecation warnings. This commit fixes up those deprecation
+warnings by explicitly passing the last argument(s) as keyword
+argument(s).
+
+See: https://www.ruby-lang.org/en/news/2019/12/12/separation-of-positional-and-keyword-arguments-in-ruby-3-0/
+
+Fixes #4
+
+Side note: this commit did not fix the `#binread` method because it was
+untested, and when attempting to add tests, we got the following failing
+test:
+
+```
+1) Pathutil#binread when set to normalize should use encode to convert CRLF to LF
+ Failure/Error:
+ File.binread(self, *args, kwd).encode({
+ :universal_newline => true
+ })
+
+ TypeError:
+ no implicit conversion of Hash into Integer
+ # ./lib/pathutil.rb:509:in `binread'
+ # ./lib/pathutil.rb:509:in `binread'
+ # ./spec/tests/lib/pathutil_spec.rb:943:in `block (4 levels) in <top (required)>'
+```
+
+...which appears to be occuring because of an interface mismatch as
+`IO#binread` does not take keyword arguments.
+
+https://ruby-doc.org/core-2.7.1/IO.html#method-c-binread
+---
+ lib/pathutil.rb | 36 ++++++++-----------------
+ spec/tests/lib/pathutil/helpers_spec.rb | 4 +--
+ spec/tests/lib/pathutil_spec.rb | 13 +++------
+ 3 files changed, 16 insertions(+), 37 deletions(-)
+
+diff --git a/lib/pathutil.rb b/lib/pathutil.rb
+index 1a15873..80913f2 100644
+--- a/lib/pathutil.rb
++++ b/lib/pathutil.rb
+@@ -456,14 +456,10 @@ def safe_copy(to, root: nil, ignore: [])
+ to = self.class.new(to)
+
+ if directory?
+- safe_copy_directory(to, {
+- :root => root, :ignore => ignore
+- })
++ safe_copy_directory(to, root: root, ignore: ignore)
+
+ else
+- safe_copy_file(to, {
+- :root => root
+- })
++ safe_copy_file(to, root: root)
+ end
+ end
+
+@@ -494,14 +490,10 @@ def read(*args, **kwd)
+ kwd[:encoding] ||= encoding
+
+ if normalize[:read]
+- File.read(self, *args, kwd).encode({
+- :universal_newline => true
+- })
++ File.read(self, *args, **kwd).encode(universal_newline: true)
+
+ else
+- File.read(
+- self, *args, kwd
+- )
++ File.read(self, *args, **kwd)
+ end
+ end
+
+@@ -534,13 +526,13 @@ def readlines(*args, **kwd)
+ kwd[:encoding] ||= encoding
+
+ if normalize[:read]
+- File.readlines(self, *args, kwd).encode({
++ File.readlines(self, *args, **kwd).encode({
+ :universal_newline => true
+ })
+
+ else
+ File.readlines(
+- self, *args, kwd
++ self, *args, **kwd
+ )
+ end
+ end
+@@ -556,11 +548,11 @@ def write(data, *args, **kwd)
+ if normalize[:write]
+ File.write(self, data.encode(
+ :crlf_newline => true
+- ), *args, kwd)
++ ), *args, **kwd)
+
+ else
+ File.write(
+- self, data, *args, kwd
++ self, data, *args, **kwd
+ )
+ end
+ end
+@@ -670,9 +662,7 @@ def expanded_paths(path)
+ private
+ def safe_copy_file(to, root: nil)
+ raise Errno::EPERM, "#{self} not in #{root}" unless in_path?(root)
+- FileUtils.cp(self, to, {
+- :preserve => true
+- })
++ FileUtils.cp(self, to, preserve: true)
+ end
+
+ # --
+@@ -697,15 +687,11 @@ def safe_copy_directory(to, root: nil, ignore: [])
+ }"
+
+ elsif file.file?
+- FileUtils.cp(file, to, {
+- :preserve => true
+- })
++ FileUtils.cp(file, to, preserve: true)
+
+ else
+ path = file.realpath
+- path.safe_copy(to.join(file.basename), {
+- :root => root, :ignore => ignore
+- })
++ path.safe_copy(to.join(file.basename), root: root, ignore: ignore)
+ end
+ end
+ end
+diff --git a/spec/tests/lib/pathutil/helpers_spec.rb b/spec/tests/lib/pathutil/helpers_spec.rb
+index 4d64d0a..0dfbc00 100644
+--- a/spec/tests/lib/pathutil/helpers_spec.rb
++++ b/spec/tests/lib/pathutil/helpers_spec.rb
+@@ -76,9 +76,7 @@
+ #
+
+ after do
+- described_class.load_yaml("hello: world", {
+- :aliases => true
+- })
++ described_class.load_yaml("hello: world", aliases: true)
+ end
+ end
+
+diff --git a/spec/tests/lib/pathutil_spec.rb b/spec/tests/lib/pathutil_spec.rb
+index 784a16b..0ee7a12 100644
+--- a/spec/tests/lib/pathutil_spec.rb
++++ b/spec/tests/lib/pathutil_spec.rb
+@@ -944,9 +944,7 @@
+
+ context "with an encoding argument" do
+ before do
+- file.write("hello", {
+- :encoding => "ASCII"
+- })
++ file.write("hello", encoding: "ASCII")
+ end
+
+ #
+@@ -1050,11 +1048,10 @@
+ name1.join(name2.basename, name1.basename).touch
+ name1.join(name1.basename).touch
+
+- name1.safe_copy(name2, {
+- :root => tmpdir1, :ignore => [
++ name1.safe_copy(name2, root: tmpdir1, ignore: [
+ name1.join(name2.basename, name1.basename)
+ ]
+- })
++ )
+ end
+
+ #
+@@ -1077,9 +1074,7 @@
+ name1.join(name2.basename, name1.basename).touch
+ name1.join(name1.basename).touch
+
+- name1.safe_copy(name2, {
+- :root => tmpdir1
+- })
++ name1.safe_copy(name2, root: tmpdir1)
+ end
+
+ #
diff --git a/dev-ruby/pathutil/files/pathutil-0.16.2-ruby31.patch b/dev-ruby/pathutil/files/pathutil-0.16.2-ruby31.patch
new file mode 100644
index 000000000000..0bfc4c5919b5
--- /dev/null
+++ b/dev-ruby/pathutil/files/pathutil-0.16.2-ruby31.patch
@@ -0,0 +1,247 @@
+https://github.com/envygeeks/pathutil/pull/7
+
+From c0ecc9a516ed43facfb3a80735034c892d517d1a Mon Sep 17 00:00:00 2001
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Sun, 3 Apr 2022 20:20:44 +0200
+Subject: [PATCH 1/2] Fix usage of YAML.safe_load for compatibility with Ruby
+ >=2.4
+
+YAML.safe_load in Ruby 3.1.1 doesn't accept deprecated positional parameters anymore:
+
+ 1) Pathutil::Helpers#load_yaml should be able to parse YAML
+ Failure/Error:
+ YAML.safe_load(
+ data,
+ whitelist_classes,
+ whitelist_symbols,
+ aliases
+ )
+
+ ArgumentError:
+ wrong number of arguments (given 4, expected 1)
+ # ./lib/pathutil/helpers.rb:44:in `load_yaml'
+ # ./spec/tests/lib/pathutil/helpers_spec.rb:25:in `block (3 levels) in <top (required)>'
+
+From 868efe4022f944cef81b05ae01e00fab2d51ee5c Mon Sep 17 00:00:00 2001
+From: Jakub Jirutka <jakub@jirutka.cz>
+Date: Sun, 3 Apr 2022 20:35:50 +0200
+Subject: [PATCH 2/2] Remove deprecated SafeYAML support
+
+SafeYAML has been deprecated a very long time ago.
+--- a/Gemfile
++++ b/Gemfile
+@@ -7,7 +7,6 @@ gem "rake", :require => false
+ gemspec
+
+ group :test do
+- gem "safe_yaml", :require => false
+ gem "luna-rspec-formatters", :require => false
+ gem "simplecov", :require => false
+ end
+--- a/README.md
++++ b/README.md
+@@ -26,7 +26,7 @@ but only if they originate from the given root.
+ - `>=`, `>` - Check if a file is in but ahead of a path: `Pathutil.new("/tmp/hello") > "/tmp" # => true`
+ - `in_path?` - Check if a file is within a given path: `Pathutil.new("/tmp/hello").in_path?("/tmp") # => true`
+ - `<=`, `<` - Check if a file is in but below a path: `Pathutil.new("/tmp") < "/tmp/hello" # => true`
+-- `read_yaml` - a wrapper around `Yaml.safe_load` and `SafeYAML` to make reading `YAML` easy.
++- `read_yaml` - a wrapper around `Yaml.safe_load` to make reading `YAML` easy.
+ - `children` - behaves like Pathname, except it accepts a block to work on the path.
+ - `safe_copy` - Copy files, disallowing symlinks unless `in_path?`
+ - `enforce_root` - Force a root if not already in that root.
+--- a/benchmark/yaml.rb
++++ /dev/null
+@@ -1,16 +0,0 @@
+-# Frozen-string-literal: true
+-# Copyright: 2015 - 2017 Jordon Bedwell - MIT License
+-# Encoding: utf-8
+-
+-require "bundler/setup"
+-require "safe_yaml/load"
+-require "benchmark/ips"
+-require "pathutil"
+-
+-data = "hello: world\nworld: hello"
+-Benchmark.ips :quiet => true do |x|
+- x.json! "benchmark.json"
+- x.report("A:SafeYAML.load") { SafeYAML.load(data) }
+- x.report("B:Pathutil::Helpers.load_yaml") { Pathutil::Helpers.load_yaml(data) }
+- x.compare!
+-end
+--- a/lib/pathutil/helpers.rb
++++ b/lib/pathutil/helpers.rb
+@@ -20,7 +20,7 @@ class Pathutil
+ end
+
+ # --
+- # Wraps around YAML and SafeYAML to provide alternatives to Rubies.
++ # Wraps around YAMLto provide alternatives to Rubies.
+ # @note We default aliases to yes so we can detect if you explicit true.
+ # @return Hash
+ # --
+@@ -34,20 +34,12 @@ class Pathutil
+ )
+ end
+
+- if !YAML.respond_to?(:safe_load)
+- setup_safe_yaml whitelist_classes, aliases
+- SafeYAML.load(
+- data
+- )
+-
+- else
+- YAML.safe_load(
+- data,
+- whitelist_classes,
+- whitelist_symbols,
+- aliases
+- )
+- end
++ YAML.safe_load(
++ data,
++ permitted_classes: whitelist_classes,
++ permitted_symbols: whitelist_symbols,
++ aliases: aliases
++ )
+ end
+
+ # --
+@@ -109,21 +101,5 @@ class Pathutil
+ prefix, ext || ""
+ ]
+ end
+-
+- # --
+- # Wrap around, cleanup, deprecate and use SafeYAML.
+- # rubocop:enable Style/ParallelAssignment
+- # --
+- private
+- def setup_safe_yaml(whitelist_classes, aliases)
+- warn "WARN: SafeYAML does not support disabling of aliases." if aliases && aliases != :yes
+- warn "WARN: SafeYAML will be removed when Ruby 2.0 goes EOL."
+- require "safe_yaml/load"
+-
+- SafeYAML.restore_defaults!
+- whitelist_classes.map(&SafeYAML.method(
+- :whitelist_class!
+- ))
+- end
+ end
+ end
+--- a/spec/tests/lib/pathutil/helpers_spec.rb
++++ b/spec/tests/lib/pathutil/helpers_spec.rb
+@@ -26,113 +26,10 @@ describe Pathutil::Helpers do
+ "hello" => "world"
+ })
+ end
++ end
+
+ #
+
+- context "when safe" do
+- it "should reject any special classes", :disable => :oldest_ruby do
+- expect { described_class.load_yaml(":hello: :world") }.to raise_error(
+- Psych::DisallowedClass
+- )
+- end
+-
+- #
+-
+- context "when using SafeYAML" do
+- before do
+- allow(YAML).to receive(:respond_to?).with(:safe_load).and_return(false)
+- expect_any_instance_of(described_class).to receive(:warn).and_return(
+- nil
+- )
+- end
+-
+- #
+-
+- context do
+- it "should warn it's deprecated" do
+- expect(described_class).to receive(:warn).and_return(
+- nil
+- )
+- end
+-
+- #
+-
+- after do
+- described_class.load_yaml(
+- ":hello: :world"
+- )
+- end
+- end
+-
+- #
+-
+- context "when trying to disable aliases" do
+- it "should warn that you cannot disable them in SafeYAML" do
+- expect(described_class).to receive(:warn).exactly(2).times.and_return(
+- nil
+- )
+- end
+-
+- #
+-
+- after do
+- described_class.load_yaml("hello: world", aliases: true)
+- end
+- end
+-
+- #
+-
+- it "should parse with SafeYAML" do
+- expect(described_class.load_yaml(":hello: :world")).to eq({
+- ":hello" => ":world"
+- })
+- end
+- end
+- end
+-
+- #
+-
+- context "when whitelisting classes" do
+- it "should allow that class to be loaded" do
+- expect(described_class.load_yaml(":hello: :world", :whitelist_classes => [Symbol])).to eq({
+- :hello => :world
+- })
+- end
+- end
+-
+- #
+-
+- context "when diallowing aliases" do
+- it "should throw the parse" do
+- yaml = "version: &version 1\nother_version: *version"
+- expect { described_class.load_yaml(yaml, :aliases => false) }.to raise_error(
+- Psych::BadAlias
+- )
+- end
+- end
+-
+- #
+-
+- context do
+- it "should allow aliases by default" do
+- expect(described_class.load_yaml("version: &version 1\nother_version: *version")).to eq({
+- "version" => 1, "other_version" => 1
+- })
+- end
+- end
+-
+- #
+-
+- context do
+- it "should parse YAML" do
+- expect(described_class.load_yaml("hello: world\nworld: hello")).to eq({
+- "hello" => "world",
+- "world" => "hello"
+- })
+- end
+- end
+- end
+-
+ #
+
+ describe ".make_tmpname" do
diff --git a/dev-ruby/pathutil/metadata.xml b/dev-ruby/pathutil/metadata.xml
index 051f5bee9269..e32ad2383b1f 100644
--- a/dev-ruby/pathutil/metadata.xml
+++ b/dev-ruby/pathutil/metadata.xml
@@ -1,12 +1,12 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">envygeeks/pathutils</remote-id>
+ <remote-id type="github">envygeeks/pathutil</remote-id>
<remote-id type="rubygems">pathutil</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/pathutil/pathutil-0.16.2-r2.ebuild b/dev-ruby/pathutil/pathutil-0.16.2-r2.ebuild
new file mode 100644
index 000000000000..296caa499f17
--- /dev/null
+++ b/dev-ruby/pathutil/pathutil-0.16.2-r2.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_GEMSPEC="Gem.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Like Pathname but a little less insane"
+HOMEPAGE="https://rubygems.org/gems/pathutil https://github.com/envygeeks/pathutil"
+SRC_URI="https://github.com/envygeeks/pathutil/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+ruby_add_rdepend "
+ >=dev-ruby/forwardable-extended-2.6
+ <dev-ruby/forwardable-extended-3
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-ruby30.patch"
+ "${FILESDIR}/${P}-ruby31.patch"
+)
+
+all_ruby_prepare() {
+ sed -i -e '/\(coverage\|luna\|rspec\/helpers\)/ s:^:#:' \
+ -e '1irequire "pathname"; require "tempfile"; require "tmpdir"; require "json" ; gem "psych", "~> 5.0"' \
+ spec/rspec/helper.rb || die
+ rm -f spec/support/coverage.rb || die
+}
diff --git a/dev-ruby/pathutil/pathutil-0.16.2.ebuild b/dev-ruby/pathutil/pathutil-0.16.2.ebuild
deleted file mode 100644
index 8b97ba38abb5..000000000000
--- a/dev-ruby/pathutil/pathutil-0.16.2.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_GEMSPEC="Gem.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Like Pathname but a little less insane"
-HOMEPAGE="https://rubygems.org/gems/pathutil https://github.com/envygeeks/pathutils"
-SRC_URI="https://github.com/envygeeks/pathutil/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/forwardable-extended-2.6
- <dev-ruby/forwardable-extended-3"
-
-ruby_add_bdepend "test? ( dev-ruby/safe_yaml )"
-
-all_ruby_prepare() {
- sed -i -e '/\(coverage\|luna\|rspec\/helpers\)/ s:^:#:' \
- -e '1irequire "pathname"; require "tempfile"; require "tmpdir"; require "json"' \
- spec/rspec/helper.rb || die
- rm -f spec/support/coverage.rb || die
-}
diff --git a/dev-ruby/patron/Manifest b/dev-ruby/patron/Manifest
index b22add4d380b..9eafcd30ce72 100644
--- a/dev-ruby/patron/Manifest
+++ b/dev-ruby/patron/Manifest
@@ -1,2 +1 @@
-DIST patron-0.13.1.gem 64512 BLAKE2B 14f691cb0fd1c863a1ef634ba8aee94751095138e940f13bf09860e9e0061872fe14fa33416f59f82d4adc53963721d653936a3f058b27654ea7593d6068d0b7 SHA512 7b082ff7442c2635c38b37132cd61f6cd18d4792d41cbf3bed1201fb7371b75bb628a295f4e3dd173c23e086d3c1f54f0217df3f7d1a30c1031fcca86269e1e7
DIST patron-0.13.3.gem 65024 BLAKE2B 87aa69aab49978d14a80ed9e09d74d7853da3512875cc3aecd3f387d1523b85c84625b57a5826e5f5f999cec4feaae58c1aaae96582144a5c9dc537c9d5a4224 SHA512 afbbbd9570e338a5d1b97b4ebeda76ac95a22c29d908629723d345a47400183c2ccee67ebcaf5b6f9ecb032eb3b847e70ec9eebff75b33045a3665c215abfbd0
diff --git a/dev-ruby/patron/metadata.xml b/dev-ruby/patron/metadata.xml
index 28ab0c15f206..3381fedd792f 100644
--- a/dev-ruby/patron/metadata.xml
+++ b/dev-ruby/patron/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">toland/patron</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/patron/patron-0.13.1-r1.ebuild b/dev-ruby/patron/patron-0.13.1-r1.ebuild
deleted file mode 100644
index f80cf6aa85ad..000000000000
--- a/dev-ruby/patron/patron-0.13.1-r1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Patron is a Ruby HTTP client library based on libcurl"
-HOMEPAGE="https://toland.github.com/patron/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND+=" net-misc/curl"
-RDEPEND+=" net-misc/curl"
-
-ruby_add_bdepend "test? ( www-servers/puma )"
-
-all_ruby_prepare() {
- # Fix Rakefile
- sed -i -e 's:rake/rdoctask:rdoc/task:' \
- -e 's/README.txt/README.md/' \
- -e '/bundler/I s:^:#:' \
- -e '/extensiontask/ s:^:#:' \
- -e '/ExtensionTask/,/^end/ s:^:#:' \
- Rakefile || die
-
- # Avoid specs with failures. We were not running any specs before.
- rm spec/session_ssl_spec.rb spec/session_spec.rb spec/response_spec.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/patron extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/patron V=1
- cp ext/patron/session_ext$(get_modname) lib/patron/ || die "Unable to cp shared object file"
-}
diff --git a/dev-ruby/patron/patron-0.13.3-r2.ebuild b/dev-ruby/patron/patron-0.13.3-r2.ebuild
new file mode 100644
index 000000000000..2293e2a96eb0
--- /dev/null
+++ b/dev-ruby/patron/patron-0.13.3-r2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/patron/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_DIR="lib/patron"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Patron is a Ruby HTTP client library based on libcurl"
+HOMEPAGE="https://github.com/toland/patron"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 x86"
+IUSE=""
+
+DEPEND+=" net-misc/curl"
+RDEPEND+=" net-misc/curl"
+
+ruby_add_bdepend "test? ( dev-ruby/rack:2.2 www-servers/puma )"
+
+all_ruby_prepare() {
+ # Fix Rakefile
+ sed -i -e 's:rake/rdoctask:rdoc/task:' \
+ -e 's/README.txt/README.md/' \
+ -e '/bundler/I s:^:#:' \
+ -e '/extensiontask/ s:^:#:' \
+ -e '/ExtensionTask/,/^end/ s:^:#:' \
+ Rakefile || die
+
+ # Avoid specs with failures. We were not running any specs before.
+ rm spec/session_ssl_spec.rb spec/session_spec.rb spec/response_spec.rb || die
+
+ # Ensure a compatible rack version
+ sed -i -e '1igem "rack", "~> 2.2.0"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/patron/patron-0.13.3.ebuild b/dev-ruby/patron/patron-0.13.3.ebuild
deleted file mode 100644
index cedf0130468e..000000000000
--- a/dev-ruby/patron/patron-0.13.3.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Patron is a Ruby HTTP client library based on libcurl"
-HOMEPAGE="https://toland.github.com/patron/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND+=" net-misc/curl"
-RDEPEND+=" net-misc/curl"
-
-ruby_add_bdepend "test? ( www-servers/puma )"
-
-all_ruby_prepare() {
- # Fix Rakefile
- sed -i -e 's:rake/rdoctask:rdoc/task:' \
- -e 's/README.txt/README.md/' \
- -e '/bundler/I s:^:#:' \
- -e '/extensiontask/ s:^:#:' \
- -e '/ExtensionTask/,/^end/ s:^:#:' \
- Rakefile || die
-
- # Avoid specs with failures. We were not running any specs before.
- rm spec/session_ssl_spec.rb spec/session_spec.rb spec/response_spec.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/patron extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/patron V=1
- cp ext/patron/session_ext$(get_modname) lib/patron/ || die "Unable to cp shared object file"
-}
diff --git a/dev-ruby/pcaprub/Manifest b/dev-ruby/pcaprub/Manifest
index 8983ed69ca5d..fc224458750d 100644
--- a/dev-ruby/pcaprub/Manifest
+++ b/dev-ruby/pcaprub/Manifest
@@ -1,2 +1,2 @@
-DIST pcaprub-0.12.4.gem 36864 BLAKE2B c2e86624431cc758059a997ebae716adb1d7de74ba62a375787608f6c68f7b85a614ec5859e251724475e1b68e8e90108f408a2e833f896461a95bda04d4d9ad SHA512 707221429dcdf95eba24076589054dd022ba8a479148c3ec8ce9667016225ee64bed13d3fdf8ebd46027244feec8e77a484c67f040d0439bfa44d9212997645b
-DIST pcaprub-0.13.0.gem 36864 BLAKE2B 0a0ca07da261de2e8bd7aaa131bbda9f6ee3cd5eb5fa214c552179c707d20345bcedc8db5d49590e69c41220e69f93a6d9f0b1c1b6f768c25ab648d50dead388 SHA512 6099996cca317194582a50ac89769d11ba802a9658c67f707e342b3c345bcaab26fba5ca2dc245a39eeb01f9ff6fdde1ae64a3a1ee4dd0e5243bae2ebed37e5f
+DIST pcaprub-0.13.1.gem 36864 BLAKE2B 8a0f035d2d66cb21b8314e1f855f18fa71824ffaaa3260faa90f71dbd55172701cf0105f8dce91f3107dd455b5480170a2490a2b5a13f25b46a390401fc8b8e0 SHA512 3079a5f7b29df502b5bbf0afdb7c670c9a43fbb4024163001018ebffd660597197cb0c146005f1ce027f00f2ba4c2e0430a8574cb10c4fac310a8b04411c53dd
+DIST pcaprub-0.13.2.gem 36864 BLAKE2B 1bb0f37faa0752a7cb9b5c76f071596cf11b2c52dc3d16cd1fb577d7467afff3b46a7e4bb53436677231418ed8c0f91c91970366d4040f9ddf0491e50c52dfe5 SHA512 1be60a684ead0a91bd113150ac426f86f30b906bc2a300ac334ac9cc323406e4680d9578070d9f39cb479d9a45c2e4f42c11db9ca5531f8d5dee8d1dfc01425f
diff --git a/dev-ruby/pcaprub/metadata.xml b/dev-ruby/pcaprub/metadata.xml
index bca5d997b08e..99d63f2af350 100644
--- a/dev-ruby/pcaprub/metadata.xml
+++ b/dev-ruby/pcaprub/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>zerochaos@gentoo.org</email>
@@ -11,5 +11,6 @@
</maintainer>
<upstream>
<remote-id type="rubygems">pcaprub</remote-id>
+ <remote-id type="github">pcaprub/pcaprub</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/pcaprub/pcaprub-0.12.4.ebuild b/dev-ruby/pcaprub/pcaprub-0.12.4.ebuild
deleted file mode 100644
index 0583d22c61a2..000000000000
--- a/dev-ruby/pcaprub/pcaprub-0.12.4.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="FAQ.rdoc README.rdoc USAGE.rdoc"
-
-inherit multilib ruby-fakegem versionator
-
-DESCRIPTION="Libpcap bindings for ruby compat"
-HOMEPAGE="https://rubygems.org/gems/pcaprub"
-
-LICENSE="LGPL-2.1"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-
-DEPEND+="net-libs/libpcap"
-RDEPEND+="net-libs/libpcap"
-
-# Tests require live access to a network device as root.
-RESTRICT="test"
-
-each_ruby_configure() {
- ${RUBY} -Cext/pcaprub_c extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -C ext/pcaprub_c V=1
- cp ext/pcaprub_c/pcaprub_c$(get_modname) lib || die
-}
diff --git a/dev-ruby/pcaprub/pcaprub-0.13.0.ebuild b/dev-ruby/pcaprub/pcaprub-0.13.0.ebuild
deleted file mode 100644
index 77eb258180f0..000000000000
--- a/dev-ruby/pcaprub/pcaprub-0.13.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="FAQ.rdoc README.rdoc USAGE.rdoc"
-
-inherit multilib ruby-fakegem eapi7-ver
-
-DESCRIPTION="Libpcap bindings for ruby compat"
-HOMEPAGE="https://rubygems.org/gems/pcaprub"
-
-LICENSE="LGPL-2.1"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-
-DEPEND+="net-libs/libpcap"
-RDEPEND+="net-libs/libpcap"
-
-# Tests require live access to a network device as root.
-RESTRICT="test"
-
-each_ruby_configure() {
- ${RUBY} -Cext/pcaprub_c extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -C ext/pcaprub_c V=1
- cp ext/pcaprub_c/pcaprub_c$(get_modname) lib || die
-}
diff --git a/dev-ruby/pcaprub/pcaprub-0.13.1.ebuild b/dev-ruby/pcaprub/pcaprub-0.13.1.ebuild
new file mode 100644
index 000000000000..db30184a51d2
--- /dev/null
+++ b/dev-ruby/pcaprub/pcaprub-0.13.1.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="FAQ.rdoc README.rdoc USAGE.rdoc"
+RUBY_FAKEGEM_EXTENSIONS=(ext/pcaprub_c/extconf.rb)
+RUBY_FAKEGEM_TASK_TEST="test"
+inherit ruby-fakegem
+
+DESCRIPTION="Libpcap bindings for ruby compat"
+HOMEPAGE="https://rubygems.org/gems/pcaprub"
+
+LICENSE="LGPL-2.1"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~x86"
+
+DEPEND+="net-libs/libpcap"
+RDEPEND+="net-libs/libpcap"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/rake-compiler-0.6.0
+ dev-ruby/shoulda-context
+ )
+"
+
+all_ruby_prepare() {
+ sed -i \
+ -e '/\(minitest\|shoulda-context\)/s:~>:>=:' \
+ -e '/coveralls/d' \
+ -e '/rubygems-tasks/d' \
+ -e '/gem.*git/d' \
+ Gemfile || die
+
+ sed -i \
+ -e '/rubygems\/tasks/d' \
+ -e '/Gem::Tasks/d' \
+ -e "/^require 'git'/,/end/ s/^/#/" \
+ Rakefile || die
+
+ sed -i -e '/coveralls/Id' test/test_helper.rb || die
+
+ # Tests which need escalated privileges
+ local privileged_tests=(
+ test_set_datalink
+ test_create_from_primitives
+ test_filter
+ test_pcap_stats
+ test_pcap_datalink
+ test_pcap_inject
+ test_pcap_next
+ test_pcap_setfilter
+ test_pcap_snapshot
+ )
+
+ local privileged_tests_expr=$(printf "%s\|" "${privileged_tests[@]}")
+ privileged_tests_expr="${privileged_tests_expr::-2}"
+
+ sed -i \
+ -e "/def \(${privileged_tests_expr}\)/,/^ end/s/^/#/" \
+ test/test_pcaprub_unit.rb || die
+}
diff --git a/dev-ruby/pcaprub/pcaprub-0.13.2.ebuild b/dev-ruby/pcaprub/pcaprub-0.13.2.ebuild
new file mode 100644
index 000000000000..f06aad2bf9b2
--- /dev/null
+++ b/dev-ruby/pcaprub/pcaprub-0.13.2.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="FAQ.rdoc README.rdoc USAGE.rdoc"
+RUBY_FAKEGEM_EXTENSIONS=(ext/pcaprub_c/extconf.rb)
+RUBY_FAKEGEM_TASK_TEST="test"
+inherit ruby-fakegem
+
+DESCRIPTION="Libpcap bindings for ruby compat"
+HOMEPAGE="https://rubygems.org/gems/pcaprub"
+
+LICENSE="LGPL-2.1"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~x86"
+
+DEPEND+="net-libs/libpcap"
+RDEPEND+="net-libs/libpcap"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/rake-compiler-0.6.0
+ dev-ruby/shoulda-context
+ )
+"
+
+all_ruby_prepare() {
+ sed -i \
+ -e '/\(minitest\|shoulda-context\)/s:~>:>=:' \
+ -e '/coveralls/d' \
+ -e '/rubygems-tasks/d' \
+ -e '/gem.*git/d' \
+ Gemfile || die
+
+ sed -i \
+ -e '/rubygems\/tasks/d' \
+ -e '/Gem::Tasks/d' \
+ -e "/^require 'git'/,/end/ s/^/#/" \
+ Rakefile || die
+
+ sed -i -e '/coveralls/Id' test/test_helper.rb || die
+
+ # Tests which need escalated privileges, network interfaces or other devices
+ local privileged_tests=(
+ test_set_datalink
+ test_create_from_primitives
+ test_filter
+ test_lookupdev
+ test_lookupnet
+ test_monitor
+ test_pcap_stats
+ test_pcap_datalink
+ test_pcap_inject
+ test_pcap_next
+ test_pcap_setfilter
+ test_pcap_snapshot
+ )
+
+ local privileged_tests_expr=$(printf "%s\|" "${privileged_tests[@]}")
+ privileged_tests_expr="${privileged_tests_expr::-2}"
+
+ sed -i \
+ -e "/def \(${privileged_tests_expr}\)/,/^ end/s/^/#/" \
+ test/test_pcaprub_unit.rb || die
+}
diff --git a/dev-ruby/pdf-core/Manifest b/dev-ruby/pdf-core/Manifest
index ef1ff37254b9..0f644c5c0ee2 100644
--- a/dev-ruby/pdf-core/Manifest
+++ b/dev-ruby/pdf-core/Manifest
@@ -1,2 +1,2 @@
-DIST pdf-core-0.7.0.tar.gz 43382 BLAKE2B 55116d0d997d5e76d94fab0be9bbea273bcd677fee951a71e3209bd764560c4f14fcd55ccb11748041582a12d4a06819a6203453f0e440718533a92287dfcad7 SHA512 c99409284e9f7f929902d88ff7943b3dc6b37c32d67ceaa15ad79e1f9a02b561af59889dae4344a1a7749edbb6705e06f6ca356f08ca38742a2623168d53d29d
-DIST pdf-core-0.8.1.tar.gz 44159 BLAKE2B 9f199a76434ba1813a9d23f1d489a7aa9eea2bb76dcaccbf35323b1d36beb88ee2a2d642eeab872c3ae4911ff461cb3335d8a5d7a90b880c3b5bf52fa40a15ed SHA512 83d5adfb77938caa1458c262ea466377bc5185ff35e18eb365ce8e20f4f317fe17cc50043c2eb76d863bbadcf13f91cd792b2bbb4828d5383fa0e8b8c20cc8d0
+DIST pdf-core-0.10.0.tar.gz 51497 BLAKE2B 014c753e7adda2762862b721322679ab415b56fbadc1a82b02cf55e40eec4d1f88d3b622a2e312236187c5ec8b7d227fa4b8c73cf9fe7fb5527e8bb973b5e288 SHA512 07dbd2ea685a28933a4498e3d1e3a0d98691372d5fdd15238c74c68f49ce781535a77c055ae703ac32160e9ca35d115690cb40d26a56147a086181c0163d2e84
+DIST pdf-core-0.9.0.tar.gz 45772 BLAKE2B 860d0995af759315564b91264f5d6072b8a1530f4c994700e5d2632e0d8c09fd48c9b0991ff8026f68db07c43c412bf13ad73913a82977dad0bf6477fff81dfe SHA512 668b19cd722c56c00330ed81ad4fb8fb8bfa7290c2a8a3d23ab4ca92e7f9ea44729314aaaf68da9cb02dd73643b650ea87437d8d8aba5075342917ebd7ffa2be
diff --git a/dev-ruby/pdf-core/metadata.xml b/dev-ruby/pdf-core/metadata.xml
index 30929a6d637f..a412245b248b 100644
--- a/dev-ruby/pdf-core/metadata.xml
+++ b/dev-ruby/pdf-core/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/pdf-core/pdf-core-0.10.0.ebuild b/dev-ruby/pdf-core/pdf-core-0.10.0.ebuild
new file mode 100644
index 000000000000..0e04f853bc04
--- /dev/null
+++ b/dev-ruby/pdf-core/pdf-core-0.10.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Implements low level PDF features for Prawn"
+HOMEPAGE="https://github.com/prawnpdf/pdf-core/"
+SRC_URI="https://github.com/prawnpdf/pdf-core/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( Ruby GPL-2 GPL-3 )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( =dev-ruby/pdf-inspector-1*
+ || ( dev-ruby/pdf-reader:2 >=dev-ruby/pdf-reader-1.2:0 )
+)"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/pdf-core/pdf-core-0.7.0.ebuild b/dev-ruby/pdf-core/pdf-core-0.7.0.ebuild
deleted file mode 100644
index 15965f164eee..000000000000
--- a/dev-ruby/pdf-core/pdf-core-0.7.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Implements low level PDF features for Prawn"
-HOMEPAGE="https://github.com/prawnpdf/pdf-core/"
-SRC_URI="https://github.com/prawnpdf/pdf-core/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="|| ( Ruby GPL-2 GPL-3 )"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE="test"
-
-ruby_add_bdepend "test? ( =dev-ruby/pdf-inspector-1*
- >=dev-ruby/pdf-reader-1.2 =dev-ruby/pdf-reader-1* )"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/pdf-core/pdf-core-0.8.1.ebuild b/dev-ruby/pdf-core/pdf-core-0.8.1.ebuild
deleted file mode 100644
index 355127426864..000000000000
--- a/dev-ruby/pdf-core/pdf-core-0.8.1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Implements low level PDF features for Prawn"
-HOMEPAGE="https://github.com/prawnpdf/pdf-core/"
-SRC_URI="https://github.com/prawnpdf/pdf-core/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="|| ( Ruby GPL-2 GPL-3 )"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE="test"
-
-ruby_add_bdepend "test? ( =dev-ruby/pdf-inspector-1*
- >=dev-ruby/pdf-reader-1.2 =dev-ruby/pdf-reader-1* )"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/pdf-core/pdf-core-0.9.0-r1.ebuild b/dev-ruby/pdf-core/pdf-core-0.9.0-r1.ebuild
new file mode 100644
index 000000000000..c89ee63c7c2b
--- /dev/null
+++ b/dev-ruby/pdf-core/pdf-core-0.9.0-r1.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Implements low level PDF features for Prawn"
+HOMEPAGE="https://github.com/prawnpdf/pdf-core/"
+SRC_URI="https://github.com/prawnpdf/pdf-core/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( Ruby GPL-2 GPL-3 )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( =dev-ruby/pdf-inspector-1*
+ || ( dev-ruby/pdf-reader:2 >=dev-ruby/pdf-reader-1.2:0 )
+)"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/pdf-inspector/metadata.xml b/dev-ruby/pdf-inspector/metadata.xml
index 06659b5400e5..e3b90c45d9fd 100644
--- a/dev-ruby/pdf-inspector/metadata.xml
+++ b/dev-ruby/pdf-inspector/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/pdf-inspector/pdf-inspector-1.3.0-r1.ebuild b/dev-ruby/pdf-inspector/pdf-inspector-1.3.0-r1.ebuild
new file mode 100644
index 000000000000..0b7ca848aa7e
--- /dev/null
+++ b/dev-ruby/pdf-inspector/pdf-inspector-1.3.0-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A tool for analyzing PDF output"
+HOMEPAGE="https://github.com/prawnpdf/pdf-inspector"
+
+LICENSE="|| ( Ruby GPL-2 GPL-3 )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/pdf-reader-1.0:* <dev-ruby/pdf-reader-3:*"
diff --git a/dev-ruby/pdf-inspector/pdf-inspector-1.3.0.ebuild b/dev-ruby/pdf-inspector/pdf-inspector-1.3.0.ebuild
deleted file mode 100644
index f24647aaca82..000000000000
--- a/dev-ruby/pdf-inspector/pdf-inspector-1.3.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A tool for analyzing PDF output"
-HOMEPAGE="https://github.com/prawnpdf/pdf-inspector"
-
-LICENSE="|| ( Ruby GPL-2 GPL-3 )"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/pdf-reader-1.0:* <dev-ruby/pdf-reader-3:*"
diff --git a/dev-ruby/pdf-reader/Manifest b/dev-ruby/pdf-reader/Manifest
index 24dfb9935e66..e706c929686a 100644
--- a/dev-ruby/pdf-reader/Manifest
+++ b/dev-ruby/pdf-reader/Manifest
@@ -1,3 +1,3 @@
DIST pdf-reader-1.4.1.tar.gz 10236680 BLAKE2B 86fb137c65b47717e758473b94ddbbf52def3ae0edaecd7b5eb3f0d880f664c9ff6097221f43d64247b006ed18220f4f9a469d6b8574592750a1d8a468ce7ddb SHA512 aaa53dafc2d58dc591f708941907ecf14b1ee73362a7bd6d34659103d51effa90888560733747ca1bfe3d217cb6834109e06b024f40a95214880ca42f54054e5
-DIST pdf-reader-2.2.0.tar.gz 10976940 BLAKE2B 1323310319e841f1498adc9f88cef9a3dd624482310f81bfc471e95df16113df931d76d6023fe1830c4e678e65b54a57fdbca6af2c91cbd2ea00d0b96c785917 SHA512 e8e58a64f3a474752b5b49cde0b48cf99c09c1aaafbf539eba87c74394e060c2a09d911a250e11b32833ed3e905dd2b5ed5b75bdf71115b07e6bb0001fc59329
-DIST pdf-reader-2.2.1.tar.gz 10977334 BLAKE2B ee972dcfecd8beb46c55a38e493825fb248409abad04d7040cac0fde63206b3c13fb99ce5214ead88d6cc998a7abe5ac9889cb05389d23780ad7f4edfb33fdec SHA512 3032c1b9286d967f48867d3c81ddb6478e4876af0accaaf2b2b7fdf29709425b788c09af87b4953d6483ca11a5ebce6b9fa8d83d2274eb91173e06df1801dfde
+DIST pdf-reader-2.11.0.tar.gz 26136409 BLAKE2B 4ecd75046483c194c4af643e06da23f5efabe5b7e7a81a8c66479eab4f7c231474280ac253f54ca5a4932649c495f146cdb373b8233f43735f7b4219672b0f59 SHA512 a6e7c915170ba31f4889b854cbdcf02e3733b8ba9f0673e057f6b27021c1385c2099e073c82563f2c411174efe646c3f1c656ba7f56ab3fe30f9615acdd597fa
+DIST pdf-reader-2.12.0.tar.gz 26530597 BLAKE2B 77cdac5f998b0e3f2a61406937483f1dc81dc982af47ad4b7fc59cb0e3e776fc082d54adc9f241c31aede3533e1efadffb43144f949927f2f5af7dd5e62a0558 SHA512 47ea75b2e773cee27fa2e395c29346b2ba9b0d542c46bf953fe875548f0788f945ef1dd466d7c519130a05e01e52e6aa0c905cfd2c406041ffa8f92c6e15b407
diff --git a/dev-ruby/pdf-reader/metadata.xml b/dev-ruby/pdf-reader/metadata.xml
index e7eebca2a8a2..b5f365e311a9 100644
--- a/dev-ruby/pdf-reader/metadata.xml
+++ b/dev-ruby/pdf-reader/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/pdf-reader/pdf-reader-1.4.1-r2.ebuild b/dev-ruby/pdf-reader/pdf-reader-1.4.1-r2.ebuild
deleted file mode 100644
index 52cba668f8a4..000000000000
--- a/dev-ruby/pdf-reader/pdf-reader-1.4.1-r2.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-GITHUB_USER=yob
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc TODO"
-
-RUBY_FAKEGEM_GEMSPEC="pdf-reader.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="PDF parser conforming as much as possible to the PDF specification from Adobe"
-HOMEPAGE="https://github.com/yob/pdf-reader/"
-
-# We cannot use the gem distributions because they don't contain the
-# tests' data, we have to rely on the git tags.
-SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/afm-0.2.1
- =dev-ruby/ascii85-1*
- =dev-ruby/hashery-2*
- dev-ruby/ttfunk:*
- dev-ruby/ruby-rc4"
-
-all_ruby_prepare() {
- # Remove bundler support
- sed -i -e '/[Bb]undler/d' spec/spec_helper.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc examples/* || die
-}
diff --git a/dev-ruby/pdf-reader/pdf-reader-1.4.1-r4.ebuild b/dev-ruby/pdf-reader/pdf-reader-1.4.1-r4.ebuild
new file mode 100644
index 000000000000..26fa61c5e1c6
--- /dev/null
+++ b/dev-ruby/pdf-reader/pdf-reader-1.4.1-r4.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+GITHUB_USER=yob
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc TODO"
+
+RUBY_FAKEGEM_GEMSPEC="pdf-reader.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="PDF parser conforming as much as possible to the PDF specification from Adobe"
+HOMEPAGE="https://github.com/yob/pdf-reader/"
+
+# We cannot use the gem distributions because they don't contain the
+# tests' data, we have to rely on the git tags.
+SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/afm-0.2.1
+ =dev-ruby/ascii85-1*
+ =dev-ruby/hashery-2*
+ dev-ruby/ttfunk:*
+ dev-ruby/ruby-rc4"
+
+all_ruby_prepare() {
+ # Remove bundler support
+ sed -i -e '/[Bb]undler/d' spec/spec_helper.rb || die
+
+ sed -i -e '/Ascii85/ s/1.0.0/1.0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+}
diff --git a/dev-ruby/pdf-reader/pdf-reader-2.11.0.ebuild b/dev-ruby/pdf-reader/pdf-reader-2.11.0.ebuild
new file mode 100644
index 000000000000..259f7a087e5a
--- /dev/null
+++ b/dev-ruby/pdf-reader/pdf-reader-2.11.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+GITHUB_USER=yob
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md TODO"
+
+RUBY_FAKEGEM_GEMSPEC="pdf-reader.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="PDF parser conforming as much as possible to the PDF specification from Adobe"
+HOMEPAGE="https://github.com/yob/pdf-reader/"
+
+# We cannot use the gem distributions because they don't contain the
+# tests' data, we have to rely on the git tags.
+SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/afm-0.2.1 =dev-ruby/afm-0.2*
+ =dev-ruby/ascii85-1*
+ =dev-ruby/hashery-2*
+ dev-ruby/ttfunk:*
+ dev-ruby/ruby-rc4"
+
+all_ruby_prepare() {
+ # Remove bundler support
+ sed -i -e '/[Bb]undler/d' spec/spec_helper.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+}
diff --git a/dev-ruby/pdf-reader/pdf-reader-2.12.0.ebuild b/dev-ruby/pdf-reader/pdf-reader-2.12.0.ebuild
new file mode 100644
index 000000000000..3136b0ae3d6d
--- /dev/null
+++ b/dev-ruby/pdf-reader/pdf-reader-2.12.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+GITHUB_USER=yob
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md TODO"
+
+RUBY_FAKEGEM_GEMSPEC="pdf-reader.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="PDF parser conforming as much as possible to the PDF specification from Adobe"
+HOMEPAGE="https://github.com/yob/pdf-reader/"
+
+# We cannot use the gem distributions because they don't contain the
+# tests' data, we have to rely on the git tags.
+SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/afm-0.2.1 =dev-ruby/afm-0.2*
+ =dev-ruby/ascii85-1*
+ =dev-ruby/hashery-2*
+ dev-ruby/ttfunk:*
+ dev-ruby/ruby-rc4"
+
+all_ruby_prepare() {
+ # Remove bundler support
+ sed -i -e '/[Bb]undler/d' spec/spec_helper.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+}
diff --git a/dev-ruby/pdf-reader/pdf-reader-2.2.0.ebuild b/dev-ruby/pdf-reader/pdf-reader-2.2.0.ebuild
deleted file mode 100644
index b66eff2497cc..000000000000
--- a/dev-ruby/pdf-reader/pdf-reader-2.2.0.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-GITHUB_USER=yob
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md TODO"
-
-RUBY_FAKEGEM_GEMSPEC="pdf-reader.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="PDF parser conforming as much as possible to the PDF specification from Adobe"
-HOMEPAGE="https://github.com/yob/pdf-reader/"
-
-# We cannot use the gem distributions because they don't contain the
-# tests' data, we have to rely on the git tags.
-SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-RDEPEND+=" !!<dev-ruby/pdf-reader-1.4.1-r2"
-
-ruby_add_rdepend ">=dev-ruby/afm-0.2.1 =dev-ruby/afm-0.2*
- =dev-ruby/ascii85-1*
- =dev-ruby/hashery-2*
- dev-ruby/ttfunk:*
- dev-ruby/ruby-rc4"
-
-all_ruby_prepare() {
- # Remove bundler support
- sed -i -e '/[Bb]undler/d' spec/spec_helper.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc examples/* || die
-}
diff --git a/dev-ruby/pdf-reader/pdf-reader-2.2.1.ebuild b/dev-ruby/pdf-reader/pdf-reader-2.2.1.ebuild
deleted file mode 100644
index 0c7ee56b3dad..000000000000
--- a/dev-ruby/pdf-reader/pdf-reader-2.2.1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-GITHUB_USER=yob
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md TODO"
-
-RUBY_FAKEGEM_GEMSPEC="pdf-reader.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="PDF parser conforming as much as possible to the PDF specification from Adobe"
-HOMEPAGE="https://github.com/yob/pdf-reader/"
-
-# We cannot use the gem distributions because they don't contain the
-# tests' data, we have to rely on the git tags.
-SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-RDEPEND+=" !!<dev-ruby/pdf-reader-1.4.1-r2"
-
-ruby_add_rdepend ">=dev-ruby/afm-0.2.1 =dev-ruby/afm-0.2*
- =dev-ruby/ascii85-1*
- =dev-ruby/hashery-2*
- dev-ruby/ttfunk:*
- dev-ruby/ruby-rc4"
-
-all_ruby_prepare() {
- # Remove bundler support
- sed -i -e '/[Bb]undler/d' spec/spec_helper.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc examples/* || die
-}
diff --git a/dev-ruby/permutation/metadata.xml b/dev-ruby/permutation/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/permutation/metadata.xml
+++ b/dev-ruby/permutation/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/permutation/permutation-0.1.8-r1.ebuild b/dev-ruby/permutation/permutation-0.1.8-r1.ebuild
deleted file mode 100644
index 605ec839f5a8..000000000000
--- a/dev-ruby/permutation/permutation-0.1.8-r1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGES README"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Library performing operations with permutations of sequences (strings, arrays)"
-HOMEPAGE="https://flori.github.com/permutation"
-
-LICENSE="|| ( Ruby-BSD BSD-2 )"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="doc"
-
-each_ruby_test() {
- ${RUBY} -Ilib test/test.rb || die
-}
diff --git a/dev-ruby/permutation/permutation-0.1.8-r3.ebuild b/dev-ruby/permutation/permutation-0.1.8-r3.ebuild
new file mode 100644
index 000000000000..466b0063ab7a
--- /dev/null
+++ b/dev-ruby/permutation/permutation-0.1.8-r3.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES README"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Library performing operations with permutations of sequences (strings, arrays)"
+HOMEPAGE="https://flori.github.io/permutation/"
+
+LICENSE="|| ( Ruby-BSD BSD-2 )"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="doc"
+
+each_ruby_test() {
+ ${RUBY} -Ilib test/test.rb || die
+}
diff --git a/dev-ruby/pg/Manifest b/dev-ruby/pg/Manifest
index 7e6f051fc1dc..9af8e3ee4321 100644
--- a/dev-ruby/pg/Manifest
+++ b/dev-ruby/pg/Manifest
@@ -1,3 +1,4 @@
-DIST pg-0.21.0.gem 214016 BLAKE2B 9e27646cd85bc97dedfb980f4851b19a1ef2aad17f6a5c60726c1683642af5c4cf87d518b300fb4c894e1580f808f8af6158b57f1ac25971c1fc55818abee6f4 SHA512 590a8c34487d2cf030082cfff87b2cc83b636df06a931e394acfb098ecb5728e793d777f125b036ee9953bbd21ec5facf91c932930acccb507d3394f2fc4cc5b
-DIST pg-1.0.0.gem 213504 BLAKE2B eecaa632c7903f89c503ad92ccff058bbc6c2c80cbf83d656eeb9a5b919b84bb270671ad4e0fa08f55be1bcfc69eb8e13b815c37c601d300de503383f1ba5908 SHA512 1cac025ab8a95b4429534b98377eedeb1e3f8b2c4a859363c4174d477577caf39557b002cde4e745189fa9a29e9181ff9d564d822f15ff5c4f03f7389b0d0398
-DIST pg-1.1.4.gem 233984 BLAKE2B 5a92ca49f8e471905286c07dc468f2932461f73fba13d2786c50883b271e2528b4476a81737023c252e75784c49113aacc50e1722fa100d5e97494fe60965a41 SHA512 442eadb4e9fe51aaef71cb5bbe8786c61dc4cfaa1241491270cb251f062abae88b6b2ef88dec7ab6ba2baa6390e954a2fcf4862cc95be4bc516e029c788fa1d9
+DIST pg-1.4.6.tar.gz 282608 BLAKE2B 73616b6ba0373ae81394188fd96d7ca37144b76e5e89d0267e076ea39b9e33d19851d3881e70d9d5934ea26671c07635a22e7e530dd0094a243de8e9d9793fb5 SHA512 5cde5441f9864f89e7f44fd72d8becc60c223ba90793812c4756764f9807610d393ecca5ba05187e8aefb0d3530d67a7525b4e2c638160161410b369937e912a
+DIST pg-1.5.4.tar.gz 298368 BLAKE2B 1028fac00371f9f769ee6c484a518149dc7c89e78ee8c05754a4412c4fec062f958de75bfbfb3f8c570e9598e439156e1d53ba00a8bc6e1be93d00412d153281 SHA512 87d950d2240e4d9d540f19ce89b945cb2b4a6d96e79dc7aa67a2dae014f1b20b307d2c195bfe3afe5c86894b94d379980fa2b7c4cf0e6a68a15c58b8d6d469f8
+DIST pg-1.5.5.tar.gz 299336 BLAKE2B 40410091a24929ee79c14cae8ec6e526a8db569f3f0d5c0637389a099caf8085189bec3fee69c52a07097e1aec62d8da0ee87cdc11118be5c7daefebd9e0019e SHA512 4cd12f2b30d9f853f9707d3329eda0999a7ed0f5ebdbbcb3110996db6d80ef6bb4331b3f6648b19f6fd3f63d928552b58190b34808ca714cbd72c54aeed43478
+DIST pg-1.5.6.tar.gz 300559 BLAKE2B 5430789943f107e18f9b509ab7963d6a5dc702782c30a218f5e648397ccc9f07128bae1beccf47172860fe97ae935308841876f26dad0d9ac223adb96722a302 SHA512 5c4cda39699f17864b3dc4daed4ab2096d64245fc2262b948a94c3269b0572a9fab2a42dcba692daf6eeba3354d6a0b05eb5db0f0ca5382b0f8315c1837a0206
diff --git a/dev-ruby/pg/files/postgresql10-tests.patch b/dev-ruby/pg/files/postgresql10-tests.patch
deleted file mode 100644
index f9b7c1579a91..000000000000
--- a/dev-ruby/pg/files/postgresql10-tests.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-# HG changeset patch
-# User Lars Kanis <kanis@comcard.de>
-# Date 1508756565 -7200
-# Node ID fe63160e8a9803e257231d879fab2841ba44c37a
-# Parent d6d5533dfca85b618232fe3e9e56e59dbee99de6
-Adjust tests for PostgreSQL-10
-
-diff --git a/spec/helpers.rb b/spec/helpers.rb
---- a/spec/helpers.rb
-+++ b/spec/helpers.rb
-@@ -251,7 +251,7 @@
-
- def check_for_lingering_connections( conn )
- conn.exec( "SELECT * FROM pg_stat_activity" ) do |res|
-- conns = res.find_all {|row| row['pid'].to_i != conn.backend_pid }
-+ conns = res.find_all {|row| row['pid'].to_i != conn.backend_pid && ["client backend", nil].include?(row["backend_type"]) }
- unless conns.empty?
- puts "Lingering connections remain:"
- conns.each do |row|
-diff --git a/spec/pg/connection_spec.rb b/spec/pg/connection_spec.rb
---- a/spec/pg/connection_spec.rb
-+++ b/spec/pg/connection_spec.rb
-@@ -232,7 +232,7 @@
- described_class.connect(@conninfo).finish
- sleep 0.5
- res = @conn.exec(%[SELECT COUNT(*) AS n FROM pg_stat_activity
-- WHERE usename IS NOT NULL])
-+ WHERE usename IS NOT NULL AND application_name != ''])
- # there's still the global @conn, but should be no more
- expect( res[0]['n'] ).to eq( '1' )
- end
-@@ -1537,9 +1537,14 @@
- end
-
- it "shouldn't type map params unless requested" do
-- expect{
-- @conn.exec_params( "SELECT $1", [5] )
-- }.to raise_error(PG::IndeterminateDatatype)
-+ if @conn.server_version < 100000
-+ expect{
-+ @conn.exec_params( "SELECT $1", [5] )
-+ }.to raise_error(PG::IndeterminateDatatype)
-+ else
-+ # PostgreSQL-10 maps to TEXT type (OID 25)
-+ expect( @conn.exec_params( "SELECT $1", [5] ).ftype(0)).to eq(25)
-+ end
- end
-
- it "should raise an error on invalid encoder to put_copy_data" do
diff --git a/dev-ruby/pg/metadata.xml b/dev-ruby/pg/metadata.xml
index d5e99f21621d..6b437f9ba54e 100644
--- a/dev-ruby/pg/metadata.xml
+++ b/dev-ruby/pg/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="bitbucket">ged/ruby-pg</remote-id>
+ <remote-id type="github">ged/ruby-pg</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/pg/pg-0.21.0.ebuild b/dev-ruby/pg/pg-0.21.0.ebuild
deleted file mode 100644
index a54007476b16..000000000000
--- a/dev-ruby/pg/pg-0.21.0.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="ChangeLog Contributors.rdoc README.rdoc History.rdoc"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby extension library providing an API to PostgreSQL"
-HOMEPAGE="https://bitbucket.org/ged/ruby-pg/"
-
-LICENSE="|| ( GPL-2 Ruby )"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ppc ppc64 x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND+=" dev-db/postgresql:*"
-DEPEND+=" dev-db/postgresql
- test? ( >=dev-db/postgresql-9.4[server,threads] )"
-
-PATCHES=( "${FILESDIR}/postgresql10-tests.patch" )
-
-all_ruby_prepare() {
- # hack the Rakefile to make it sure that it doesn't load
- # rake-compiler (so that we don't have to depend on it and it
- # actually works when building with USE=doc).
- sed -i \
- -e '/Rakefile.cross/s:^:#:' \
- -e '/ExtensionTask/,/^end$/ s:^:#:' \
- Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -C ext extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake V=1 -C ext CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}"
- cp ext/*$(get_libname) lib || die
-}
-
-each_ruby_test() {
- if [[ "${EUID}" -ne "0" ]]; then
- # Make the rspec call explicit, this way we don't have to depend
- # on rake-compiler (nor rubygems) _and_ we don't have to rebuild
- # the whole extension from scratch.
- RSPEC_VERSION=3 ruby-ng_rspec
- else
- ewarn "The userpriv feature must be enabled to run tests."
- eerror "Testsuite will not be run."
- fi
-}
diff --git a/dev-ruby/pg/pg-1.0.0.ebuild b/dev-ruby/pg/pg-1.0.0.ebuild
deleted file mode 100644
index dbbd6e9e775f..000000000000
--- a/dev-ruby/pg/pg-1.0.0.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="ChangeLog Contributors.rdoc README.rdoc History.rdoc"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby extension library providing an API to PostgreSQL"
-HOMEPAGE="https://bitbucket.org/ged/ruby-pg/"
-
-LICENSE="|| ( GPL-2 Ruby )"
-SLOT="1"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND+=" dev-db/postgresql:*"
-DEPEND+=" dev-db/postgresql
- test? ( >=dev-db/postgresql-9.4[server,threads] )"
-
-all_ruby_prepare() {
- # hack the Rakefile to make it sure that it doesn't load
- # rake-compiler (so that we don't have to depend on it and it
- # actually works when building with USE=doc).
- sed -i \
- -e '/Rakefile.cross/s:^:#:' \
- -e '/ExtensionTask/,/^end$/ s:^:#:' \
- Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -C ext extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake V=1 -C ext CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}"
- cp ext/*$(get_libname) lib || die
-}
-
-each_ruby_test() {
- if [[ "${EUID}" -ne "0" ]]; then
- # Make the rspec call explicit, this way we don't have to depend
- # on rake-compiler (nor rubygems) _and_ we don't have to rebuild
- # the whole extension from scratch.
- RSPEC_VERSION=3 ruby-ng_rspec
- else
- ewarn "The userpriv feature must be enabled to run tests."
- eerror "Testsuite will not be run."
- fi
-}
diff --git a/dev-ruby/pg/pg-1.1.4.ebuild b/dev-ruby/pg/pg-1.1.4.ebuild
deleted file mode 100644
index 8bd2d9802d5e..000000000000
--- a/dev-ruby/pg/pg-1.1.4.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="ChangeLog Contributors.rdoc README.rdoc History.rdoc"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby extension library providing an API to PostgreSQL"
-HOMEPAGE="https://bitbucket.org/ged/ruby-pg/"
-
-LICENSE="|| ( GPL-2 Ruby )"
-SLOT="1"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND+=" dev-db/postgresql:*"
-DEPEND+=" dev-db/postgresql
- test? ( >=dev-db/postgresql-9.4[server,threads] )"
-
-all_ruby_prepare() {
- # hack the Rakefile to make it sure that it doesn't load
- # rake-compiler (so that we don't have to depend on it and it
- # actually works when building with USE=doc).
- sed -i \
- -e '/Rakefile.cross/s:^:#:' \
- -e '/ExtensionTask/,/^end$/ s:^:#:' \
- Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -C ext extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake V=1 -C ext CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}"
- cp ext/*$(get_libname) lib || die
-}
-
-each_ruby_test() {
- if [[ "${EUID}" -ne "0" ]]; then
- # Make the rspec call explicit, this way we don't have to depend
- # on rake-compiler (nor rubygems) _and_ we don't have to rebuild
- # the whole extension from scratch.
- RSPEC_VERSION=3 ruby-ng_rspec
- else
- ewarn "The userpriv feature must be enabled to run tests."
- eerror "Testsuite will not be run."
- fi
-}
diff --git a/dev-ruby/pg/pg-1.4.6-r1.ebuild b/dev-ruby/pg/pg-1.4.6-r1.ebuild
new file mode 100644
index 000000000000..5bddbc743385
--- /dev/null
+++ b/dev-ruby/pg/pg-1.4.6-r1.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_GEMSPEC="pg.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="Contributors.rdoc README.md History.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby extension library providing an API to PostgreSQL"
+HOMEPAGE="https://github.com/ged/ruby-pg"
+SRC_URI="https://github.com/ged/ruby-pg/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="ruby-${P}"
+
+LICENSE="|| ( BSD-2 Ruby-BSD )"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+RDEPEND+=" dev-db/postgresql:*"
+DEPEND+=" dev-db/postgresql
+ test? ( >=dev-db/postgresql-9.4[server(+),threads(+)] )"
+
+all_ruby_prepare() {
+ # hack the Rakefile to make it sure that it doesn't load
+ # rake-compiler (so that we don't have to depend on it and it
+ # actually works when building with USE=doc).
+ sed -i \
+ -e '/Rakefile.cross/s:^:#:' \
+ -e '/ExtensionTask/,/^end$/ s:^:#:' \
+ Rakefile || die
+
+ sed -e 's/git ls-files -z/find * -print0/' \
+ -e "s:_relative ': './:" \
+ -e 's/__dir__/"."/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid tests that assume IPv4
+ sed -i -e '/expect.*hostaddr/ s:^:#:' spec/pg/connection_spec.rb || die
+
+ # Fails with network-sandbox
+ sed -i -e '/connects using without host but envirinment variables/askip "gentoo"' spec/pg/scheduler_spec.rb || die
+
+ # Avoid test that only works with bundled pg
+ sed -i -e '/tells about the libpq library path/askip "gentoo"' spec/pg_spec.rb || die
+}
+
+each_ruby_test() {
+ if [[ "${EUID}" -ne "0" ]]; then
+ # Make the rspec call explicit, this way we don't have to depend
+ # on rake-compiler (nor rubygems) _and_ we don't have to rebuild
+ # the whole extension from scratch.
+ RSPEC_VERSION=3 ruby-ng_rspec
+ else
+ ewarn "The userpriv feature must be enabled to run tests."
+ eerror "Testsuite will not be run."
+ fi
+}
diff --git a/dev-ruby/pg/pg-1.5.4-r1.ebuild b/dev-ruby/pg/pg-1.5.4-r1.ebuild
new file mode 100644
index 000000000000..26fac2d5da84
--- /dev/null
+++ b/dev-ruby/pg/pg-1.5.4-r1.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_GEMSPEC="pg.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="Contributors.rdoc README.md History.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby extension library providing an API to PostgreSQL"
+HOMEPAGE="https://github.com/ged/ruby-pg"
+SRC_URI="https://github.com/ged/ruby-pg/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="ruby-${P}"
+
+LICENSE="|| ( BSD-2 Ruby-BSD )"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+RDEPEND+=" dev-db/postgresql:*"
+DEPEND+=" dev-db/postgresql
+ test? ( >=dev-db/postgresql-9.4[server(+),threads(+)] )"
+
+all_ruby_prepare() {
+ # hack the Rakefile to make it sure that it doesn't load
+ # rake-compiler (so that we don't have to depend on it and it
+ # actually works when building with USE=doc).
+ sed -i \
+ -e '/Rakefile.cross/s:^:#:' \
+ -e '/ExtensionTask/,/^end$/ s:^:#:' \
+ Rakefile || die
+
+ sed -e 's/git ls-files -z/find * -print0/' \
+ -e "s:_relative ': './:" \
+ -e 's/__dir__/"."/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid tests that assume IPv4
+ sed -i -e '/expect.*hostaddr/ s:^:#:' spec/pg/connection_spec.rb || die
+
+ # Fails with network-sandbox
+ sed -i -e '/connects using without host but envirinment variables/askip "gentoo"' spec/pg/scheduler_spec.rb || die
+
+ # Avoid test that only works with bundled pg
+ sed -i -e '/tells about the libpq library path/askip "gentoo"' spec/pg_spec.rb || die
+}
+
+each_ruby_test() {
+ if [[ "${EUID}" -ne "0" ]]; then
+ # Make the rspec call explicit, this way we don't have to depend
+ # on rake-compiler (nor rubygems) _and_ we don't have to rebuild
+ # the whole extension from scratch.
+ RSPEC_VERSION=3 ruby-ng_rspec
+ else
+ ewarn "The userpriv feature must be enabled to run tests."
+ eerror "Testsuite will not be run."
+ fi
+}
diff --git a/dev-ruby/pg/pg-1.5.5.ebuild b/dev-ruby/pg/pg-1.5.5.ebuild
new file mode 100644
index 000000000000..2f148b514659
--- /dev/null
+++ b/dev-ruby/pg/pg-1.5.5.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_GEMSPEC="pg.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="Contributors.rdoc README.md History.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby extension library providing an API to PostgreSQL"
+HOMEPAGE="https://github.com/ged/ruby-pg"
+SRC_URI="https://github.com/ged/ruby-pg/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="ruby-${P}"
+
+LICENSE="|| ( BSD-2 Ruby-BSD )"
+SLOT="1"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+RDEPEND+=" dev-db/postgresql:*"
+DEPEND+=" dev-db/postgresql
+ test? ( >=dev-db/postgresql-9.4[server(+),threads(+)] )"
+
+all_ruby_prepare() {
+ # hack the Rakefile to make it sure that it doesn't load
+ # rake-compiler (so that we don't have to depend on it and it
+ # actually works when building with USE=doc).
+ sed -i \
+ -e '/Rakefile.cross/s:^:#:' \
+ -e '/ExtensionTask/,/^end$/ s:^:#:' \
+ Rakefile || die
+
+ sed -e 's/git ls-files -z/find * -print0/' \
+ -e "s:_relative ': './:" \
+ -e 's/__dir__/"."/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid tests that assume IPv4
+ sed -i -e '/expect.*hostaddr/ s:^:#:' spec/pg/connection_spec.rb || die
+
+ # Fails with network-sandbox
+ sed -i -e '/connects using without host but envirinment variables/askip "gentoo"' spec/pg/scheduler_spec.rb || die
+
+ # Avoid test that only works with bundled pg
+ sed -i -e '/tells about the libpq library path/askip "gentoo"' spec/pg_spec.rb || die
+}
+
+each_ruby_test() {
+ if [[ "${EUID}" -ne "0" ]]; then
+ # Make the rspec call explicit, this way we don't have to depend
+ # on rake-compiler (nor rubygems) _and_ we don't have to rebuild
+ # the whole extension from scratch.
+ RSPEC_VERSION=3 ruby-ng_rspec
+ else
+ ewarn "The userpriv feature must be enabled to run tests."
+ eerror "Testsuite will not be run."
+ fi
+}
diff --git a/dev-ruby/pg/pg-1.5.6.ebuild b/dev-ruby/pg/pg-1.5.6.ebuild
new file mode 100644
index 000000000000..2f148b514659
--- /dev/null
+++ b/dev-ruby/pg/pg-1.5.6.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_GEMSPEC="pg.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="Contributors.rdoc README.md History.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby extension library providing an API to PostgreSQL"
+HOMEPAGE="https://github.com/ged/ruby-pg"
+SRC_URI="https://github.com/ged/ruby-pg/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="ruby-${P}"
+
+LICENSE="|| ( BSD-2 Ruby-BSD )"
+SLOT="1"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+RDEPEND+=" dev-db/postgresql:*"
+DEPEND+=" dev-db/postgresql
+ test? ( >=dev-db/postgresql-9.4[server(+),threads(+)] )"
+
+all_ruby_prepare() {
+ # hack the Rakefile to make it sure that it doesn't load
+ # rake-compiler (so that we don't have to depend on it and it
+ # actually works when building with USE=doc).
+ sed -i \
+ -e '/Rakefile.cross/s:^:#:' \
+ -e '/ExtensionTask/,/^end$/ s:^:#:' \
+ Rakefile || die
+
+ sed -e 's/git ls-files -z/find * -print0/' \
+ -e "s:_relative ': './:" \
+ -e 's/__dir__/"."/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid tests that assume IPv4
+ sed -i -e '/expect.*hostaddr/ s:^:#:' spec/pg/connection_spec.rb || die
+
+ # Fails with network-sandbox
+ sed -i -e '/connects using without host but envirinment variables/askip "gentoo"' spec/pg/scheduler_spec.rb || die
+
+ # Avoid test that only works with bundled pg
+ sed -i -e '/tells about the libpq library path/askip "gentoo"' spec/pg_spec.rb || die
+}
+
+each_ruby_test() {
+ if [[ "${EUID}" -ne "0" ]]; then
+ # Make the rspec call explicit, this way we don't have to depend
+ # on rake-compiler (nor rubygems) _and_ we don't have to rebuild
+ # the whole extension from scratch.
+ RSPEC_VERSION=3 ruby-ng_rspec
+ else
+ ewarn "The userpriv feature must be enabled to run tests."
+ eerror "Testsuite will not be run."
+ fi
+}
diff --git a/dev-ruby/pg_array_parser/metadata.xml b/dev-ruby/pg_array_parser/metadata.xml
index 73a500e8ee90..40bbe04f73e3 100644
--- a/dev-ruby/pg_array_parser/metadata.xml
+++ b/dev-ruby/pg_array_parser/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">dockyard/pg_array_parser</remote-id>
+ <remote-id type="github">DavyJonesLocker/pg_array_parser</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/pg_array_parser/pg_array_parser-0.0.9-r2.ebuild b/dev-ruby/pg_array_parser/pg_array_parser-0.0.9-r2.ebuild
deleted file mode 100644
index 760466076b4e..000000000000
--- a/dev-ruby/pg_array_parser/pg_array_parser-0.0.9-r2.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Simple library to parse PostgreSQL arrays into a array of strings"
-HOMEPAGE="https://github.com/dockyard/pg_array_parser"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-3)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/bundler"
-
-all_ruby_prepare() {
- [ -f Gemfile.lock ] && rm Gemfile.lock
- #if ! use development; then
- sed -i -e "/^group :development do/,/^end$/d" Gemfile || die
- sed -i -e "/s.add_development_dependency/d" "${PN}".gemspec || die
- sed -i -e "/gem.add_development_dependency/d" "${PN}".gemspec || die
- #fi
- #if ! use test; then
- sed -i -e "/^group :test do/,/^end$/d" Gemfile || die
- #fi
- #if ! use test && ! use development; then
- sed -i -e "/^group :development, :test do/,/^end$/d" Gemfile || die
- #fi
-}
-
-each_ruby_prepare() {
- if [ -f Gemfile ]; then
- BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle install --local || die
- BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle check || die
- fi
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/pg_array_parser extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/pg_array_parser V=1
- cp ext/pg_array_parser/pg_array_parser.so lib/
-}
diff --git a/dev-ruby/pg_array_parser/pg_array_parser-0.0.9-r3.ebuild b/dev-ruby/pg_array_parser/pg_array_parser-0.0.9-r3.ebuild
new file mode 100644
index 000000000000..85358ae218a7
--- /dev/null
+++ b/dev-ruby/pg_array_parser/pg_array_parser-0.0.9-r3.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/pg_array_parser/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple library to parse PostgreSQL arrays into a array of strings"
+HOMEPAGE="https://github.com/DavyJonesLocker/pg_array_parser"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-3)"
+KEYWORDS="~amd64 ~arm ~x86"
+
+ruby_add_bdepend "dev-ruby/bundler"
+
+all_ruby_prepare() {
+ [ -f Gemfile.lock ] && rm Gemfile.lock
+ #if ! use development; then
+ sed -i -e "/^group :development do/,/^end$/d" Gemfile || die
+ sed -i -e "/s.add_development_dependency/d" "${PN}".gemspec || die
+ sed -i -e "/gem.add_development_dependency/d" "${PN}".gemspec || die
+ #fi
+ #if ! use test; then
+ sed -i -e "/^group :test do/,/^end$/d" Gemfile || die
+ #fi
+ #if ! use test && ! use development; then
+ sed -i -e "/^group :development, :test do/,/^end$/d" Gemfile || die
+ #fi
+}
diff --git a/dev-ruby/pkg-config/Manifest b/dev-ruby/pkg-config/Manifest
index 00c14c0a3d62..d1098afbe733 100644
--- a/dev-ruby/pkg-config/Manifest
+++ b/dev-ruby/pkg-config/Manifest
@@ -1,3 +1,3 @@
-DIST pkg-config-1.2.8.gem 20480 BLAKE2B cc11b5eff30f0f5e1a91e64902931ed540da108fd326fe731b71527c9c4310f55e9002617e1baae4f71a4b705b20cf10f6fa112f8ef56971e82868145d372a47 SHA512 d83a599a48c7d404946054c6846b6cfd9fce2a264c288519a6eccd9787f05d45397dd46300bf97c80700921456318154ea6d44ba32cd159803471073c2a2b065
-DIST pkg-config-1.3.7.gem 20992 BLAKE2B 4927cbe744b88e11ece71e554b07092d671a1b0775aa0c647abab6718c1903b888d98aa97ce5eae89033c13a542e45880b28fc886225c226d6e525c0004ec05f SHA512 cceef2b8f0b92582256660f50be21b446e6ef8ca9edd3c7736d2dbcbf2bf8ab60a1ef8f2fed21448d01ab155fd92fe9a3e8cf1f8bda4f80a8e0a8896f1eedd60
-DIST pkg-config-1.3.8.gem 21504 BLAKE2B 6959487c26b562978e00c4f6b7362c84f78f83e3ad2821b27a23feb76d1bc948832d898b81cd1347a3dec0d04bce0abf427df96420280ec721ded45619339361 SHA512 893b8804abbc295bb678e539a22c23f4bac571b5d29cdeb825f0ed2b6be1efa7f50403b97718b38034bc3d1e5bc709d9fa6e26894fb90fe0d6789b8bcc4f19ee
+DIST pkg-config-1.5.2.gem 23040 BLAKE2B 32670e823980888b3cc679afa61cb71092b559ad12ab0cd4485ccc191353426af23f0007fd844cc8a71ad7c4c1c190587eb7643f19f68623ecad182270606141 SHA512 f4aa101ff6bbfce5bf23b6c83f61e186424c097f889e51fe337d158753fc8af26ee918bb509653ea70487a7d92a24b66cc96c1c0ea4bed2cfab5cd9380317679
+DIST pkg-config-1.5.5.gem 23040 BLAKE2B c23e7904d9a9630d684bbfb0ac85893d5539c3eff7f5a12ca8703095ec076415ff938c9e0d74e873a5a31581c3f28a60bfd65df1466bae2a109259748a921b69 SHA512 d796999a6a1745ddbd9b816d8d7ba714097538803f85864b41745c48730a6fa27ced405837500e6d35edc9dad432e86da0d8e788fd18e8b9d507fa0ac0fb7b81
+DIST pkg-config-1.5.6.gem 23040 BLAKE2B dad69e21b43fd8b97ea0f01973b89bf5182664b4170fcff7aacb40db045da313579920750450e1b2fa90a955d4c9a64b8eb9bb5618d2728db1114f4e9e173354 SHA512 cff5b2e3ed19ea6f8ea554990ba51a6313a663a258d9962c951ae75016fd181bc35593a871086c7f1fa4347e3f15949ad1621ea8fa86ca0d330db19c84a80ee4
diff --git a/dev-ruby/pkg-config/metadata.xml b/dev-ruby/pkg-config/metadata.xml
index 7e7d9af15e10..91e59e9e6f53 100644
--- a/dev-ruby/pkg-config/metadata.xml
+++ b/dev-ruby/pkg-config/metadata.xml
@@ -1,14 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>naota@gentoo.org</email>
+ <name>Naohiro Aota</name>
</maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">rcairo/pkg-config</remote-id>
+ <remote-id type="github">ruby-gnome/pkg-config</remote-id>
+ <remote-id type="rubygems">pkg-config</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/pkg-config/pkg-config-1.2.8.ebuild b/dev-ruby/pkg-config/pkg-config-1.2.8.ebuild
deleted file mode 100644
index 3bf988ebe25c..000000000000
--- a/dev-ruby/pkg-config/pkg-config-1.2.8.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="README.rdoc NEWS"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A pkg-config implementation by Ruby"
-HOMEPAGE="https://github.com/rcairo/pkg-config"
-LICENSE="|| ( LGPL-2 LGPL-2.1 LGPL-3 )"
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86"
-SLOT="0"
-IUSE="test"
-
-ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
-# this is used for testing
-DEPEND+=" test? ( x11-libs/cairo )"
-
-all_ruby_prepare() {
- # drop failing tests
- sed -i -e "/test_cflags/,/end/d"\
- -e "/test_cflags_only_I/,/end/d" test/test_pkg_config.rb || die
-}
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib test/test_${PN/-/_}.rb || die
-}
diff --git a/dev-ruby/pkg-config/pkg-config-1.3.7.ebuild b/dev-ruby/pkg-config/pkg-config-1.3.7.ebuild
deleted file mode 100644
index 600fa391e78f..000000000000
--- a/dev-ruby/pkg-config/pkg-config-1.3.7.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.rdoc NEWS"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A pkg-config implementation by Ruby"
-HOMEPAGE="https://github.com/rcairo/pkg-config"
-LICENSE="|| ( LGPL-2 LGPL-2.1 LGPL-3 )"
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-SLOT="0"
-IUSE="test"
-
-ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
-# this is used for testing
-DEPEND+=" test? ( x11-libs/cairo )"
-
-all_ruby_prepare() {
- # drop failing tests
- sed -i -e "/test_cflags/,/end/d"\
- -e "/test_cflags_only_I/,/end/d" test/test_pkg_config.rb || die
-}
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib test/test_${PN/-/_}.rb || die
-}
diff --git a/dev-ruby/pkg-config/pkg-config-1.3.8.ebuild b/dev-ruby/pkg-config/pkg-config-1.3.8.ebuild
deleted file mode 100644
index a8f0cfce739b..000000000000
--- a/dev-ruby/pkg-config/pkg-config-1.3.8.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.rdoc NEWS"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A pkg-config implementation by Ruby"
-HOMEPAGE="https://github.com/rcairo/pkg-config"
-LICENSE="|| ( LGPL-2 LGPL-2.1 LGPL-3 )"
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-SLOT="0"
-IUSE="test"
-
-ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
-# this is used for testing
-DEPEND+=" test? ( x11-libs/cairo )"
-
-all_ruby_prepare() {
- # drop failing tests
- sed -i -e "/test_cflags/,/end/d"\
- -e "/test_cflags_only_I/,/end/d" test/test_pkg_config.rb || die
-}
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib test/test_${PN/-/_}.rb || die
-}
diff --git a/dev-ruby/pkg-config/pkg-config-1.5.2.ebuild b/dev-ruby/pkg-config/pkg-config-1.5.2.ebuild
new file mode 100644
index 000000000000..f0907abf5103
--- /dev/null
+++ b/dev-ruby/pkg-config/pkg-config-1.5.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc NEWS"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A pkg-config implementation by Ruby"
+HOMEPAGE="https://github.com/ruby-gnome/pkg-config"
+LICENSE="|| ( LGPL-2 LGPL-2.1 LGPL-3 )"
+
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 sparc x86"
+SLOT="0"
+IUSE="test"
+
+ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
+# this is used for testing
+DEPEND+=" test? ( x11-libs/cairo )"
+
+all_ruby_prepare() {
+ sed -e '/test_cflags/aomit "Fragile on Gentoo"' -i test/test-pkg-config.rb || die
+}
+
+each_ruby_test() {
+ ruby-ng_testrb-2 -Ilib test/test-pkg-config.rb || die
+}
diff --git a/dev-ruby/pkg-config/pkg-config-1.5.5.ebuild b/dev-ruby/pkg-config/pkg-config-1.5.5.ebuild
new file mode 100644
index 000000000000..846afc769643
--- /dev/null
+++ b/dev-ruby/pkg-config/pkg-config-1.5.5.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc NEWS"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A pkg-config implementation by Ruby"
+HOMEPAGE="https://github.com/ruby-gnome/pkg-config"
+LICENSE="|| ( LGPL-2 LGPL-2.1 LGPL-3 )"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+SLOT="0"
+IUSE="test"
+
+ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
+# this is used for testing
+DEPEND+=" test? ( x11-libs/cairo )"
+
+all_ruby_prepare() {
+ sed -e '/test_cflags/aomit "Fragile on Gentoo"' -i test/test-pkg-config.rb || die
+}
+
+each_ruby_test() {
+ ruby-ng_testrb-2 -Ilib test/test-pkg-config.rb || die
+}
diff --git a/dev-ruby/pkg-config/pkg-config-1.5.6.ebuild b/dev-ruby/pkg-config/pkg-config-1.5.6.ebuild
new file mode 100644
index 000000000000..89913d40ba0c
--- /dev/null
+++ b/dev-ruby/pkg-config/pkg-config-1.5.6.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc NEWS"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A pkg-config implementation by Ruby"
+HOMEPAGE="https://github.com/ruby-gnome/pkg-config"
+LICENSE="|| ( LGPL-2 LGPL-2.1 LGPL-3 )"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+SLOT="0"
+IUSE="test"
+
+ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
+# this is used for testing
+DEPEND+=" test? ( x11-libs/cairo )"
+
+all_ruby_prepare() {
+ sed -e '/test_cflags/aomit "Fragile on Gentoo"' -i test/test-pkg-config.rb || die
+}
+
+each_ruby_test() {
+ ruby-ng_testrb-2 -Ilib test/test-pkg-config.rb || die
+}
diff --git a/dev-ruby/plist/Manifest b/dev-ruby/plist/Manifest
index a56d24dfff1c..5781efaa89bb 100644
--- a/dev-ruby/plist/Manifest
+++ b/dev-ruby/plist/Manifest
@@ -1,2 +1,2 @@
-DIST plist-3.4.0.tar.gz 36637 BLAKE2B 8ea6b11c9adca311d91cf22f7ca11cdcb3acbbb97e18a813de754acc4474183fdd7cdb569b8fe64da06170219ef2fdcabec1d2349399006254c7f399365d1f97 SHA512 01dc47b183b7dce1f20fad8d68d1bebbb6d509c62b77f41855305bf5aafd1abf7960d74f1cb9d2467648a166fbb1747bbdd57f228f10ac091d16ab1a7189525b
-DIST plist-3.5.0.tar.gz 36650 BLAKE2B 8f93f8ef2fdedd9da50c4bdf9c473d3b199cd828909ea1572b761bc4e8d0508e997a60737ea21c7fa96764787ecefd41aa0b0046f94d3f89de796a746a794e21 SHA512 b1c9ccd66db1e0d1ebef3931f6db0f57ace2a1bb417885da48e9658c66af28997b6675a8050db78fe0083f05afc91e1313cb823d79553288d7c0c4a3a9762920
+DIST plist-3.7.0.tar.gz 38215 BLAKE2B a92cb0e4902c4e7a76ab9aca32a340c69f196bfb2c8836deab897e7cf9b653e74bae1aa0ad4de0eee71876bcc787bbc7caaa0ba61d4a716bff3cf202d14a6a12 SHA512 138ff5d9890f3da2add2f2d7935d7cacfcd57314ae92bf04b1ca4d37fe00d586a40629e84c8b9ef871db277587efe2375d934ca5a7e7b92eaffb441ee361e533
+DIST plist-3.7.1.tar.gz 38307 BLAKE2B 7c03af0a1567f6f8f0543626e1993d8a921f7330b560d618754d396fb282298ccdee35e9992b8a6e1131479ce09a9fa0c37b906547ff636109d0e38035abc53f SHA512 cd1c88027bccaa3005837e06df4f300005691fdda97d0e8d62cc7babacb6d1f3f80d7a446978f234b2f883246de34f29265578aba10a1d2995f65918bf1f7c9e
diff --git a/dev-ruby/plist/metadata.xml b/dev-ruby/plist/metadata.xml
index d2a2918c128c..01be5abd948c 100644
--- a/dev-ruby/plist/metadata.xml
+++ b/dev-ruby/plist/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/plist/plist-3.4.0.ebuild b/dev-ruby/plist/plist-3.4.0.ebuild
deleted file mode 100644
index e61a98bd1f1a..000000000000
--- a/dev-ruby/plist/plist-3.4.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library to manipulate Property List files, also known as plists"
-HOMEPAGE="https://github.com/patsplat/plist"
-SRC_URI="https://github.com/patsplat/plist/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/plist/plist-3.5.0.ebuild b/dev-ruby/plist/plist-3.5.0.ebuild
deleted file mode 100644
index 3208cf05db0b..000000000000
--- a/dev-ruby/plist/plist-3.5.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library to manipulate Property List files, also known as plists"
-HOMEPAGE="https://github.com/patsplat/plist"
-SRC_URI="https://github.com/patsplat/plist/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/plist/plist-3.7.0.ebuild b/dev-ruby/plist/plist-3.7.0.ebuild
new file mode 100644
index 000000000000..276d44a0fb73
--- /dev/null
+++ b/dev-ruby/plist/plist-3.7.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library to manipulate Property List files, also known as plists"
+HOMEPAGE="https://github.com/patsplat/plist"
+SRC_URI="https://github.com/patsplat/plist/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/plist/plist-3.7.1.ebuild b/dev-ruby/plist/plist-3.7.1.ebuild
new file mode 100644
index 000000000000..c0b029420060
--- /dev/null
+++ b/dev-ruby/plist/plist-3.7.1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library to manipulate Property List files, also known as plists"
+HOMEPAGE="https://github.com/patsplat/plist"
+SRC_URI="https://github.com/patsplat/plist/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+
+ruby_add_rdepend "test? ( dev-ruby/base64 )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/pluggaloid/Manifest b/dev-ruby/pluggaloid/Manifest
index 5b22cc920727..fd772e320627 100644
--- a/dev-ruby/pluggaloid/Manifest
+++ b/dev-ruby/pluggaloid/Manifest
@@ -1,2 +1 @@
-DIST pluggaloid-1.1.2.gem 14848 BLAKE2B 72bbcfe71c3c2e6a96425639b0db2af9a10f92888af09093861879529458e51ef3793a614a8d573829a4cc34be6e56721bd3f01523f3e5feb722800538ed097c SHA512 e381adf34e918c7d9e1b1ca88cc7eba585f2d88937fc7e2fbb6ffc7e276ecea42f27e101bb0d0a80ce5d365cdbaca9aab0c8f2ba33899cc3e1ba6729514de1da
-DIST pluggaloid-1.2.0.gem 14848 BLAKE2B ee092768b9aac2c64a0ded18f328f0f1a5d67d073da28a3029c9be13554f77565ed2338fe9630115067ecc1d0d712273642e0679a43f822995faaff48cdd7849 SHA512 b17bd264c2e8027ae1a9288b5b9a12f5c0e4c91bebf9cee5328bfe61aaa32662f55901d5ece030702780756474d54028272c7cef18fc79982d9d7c48f04b5acb
+DIST pluggaloid-1.7.0.gem 20992 BLAKE2B 8e5dca33d4e724ce264cf94d3494d452dfa6aaa3dc373c50ac7a5e1931358484e984bb0f3e170243d7e3daf10ba6a7e15b1e7b0cc77b6394c2349e6e36e7a77d SHA512 f4ebf9fa60bf29366cafeeab09cd1cddd3c46903757f55a6b0a1326499c1b5e917258eb07a7f95934ab2ff32626dfffc2738c847eb6090725f90dce7ac90c550
diff --git a/dev-ruby/pluggaloid/metadata.xml b/dev-ruby/pluggaloid/metadata.xml
index 4b45643bc78b..390f01005cf0 100644
--- a/dev-ruby/pluggaloid/metadata.xml
+++ b/dev-ruby/pluggaloid/metadata.xml
@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>naota@gentoo.org</email>
+ <name>Naohiro Aota</name>
</maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/pluggaloid/pluggaloid-1.1.2.ebuild b/dev-ruby/pluggaloid/pluggaloid-1.1.2.ebuild
deleted file mode 100644
index 56d0bd4fe5a6..000000000000
--- a/dev-ruby/pluggaloid/pluggaloid-1.1.2.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-DESCRIPTION="Pluggaloid is extensible plugin system for mikutter"
-HOMEPAGE="https://rubygems.org/gems/pluggaloid/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/delayer
- dev-ruby/instance_storage:0
-"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile test/*_test.rb || die
-}
diff --git a/dev-ruby/pluggaloid/pluggaloid-1.2.0.ebuild b/dev-ruby/pluggaloid/pluggaloid-1.2.0.ebuild
deleted file mode 100644
index 750c3f247644..000000000000
--- a/dev-ruby/pluggaloid/pluggaloid-1.2.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-DESCRIPTION="Pluggaloid is extensible plugin system for mikutter"
-HOMEPAGE="https://rubygems.org/gems/pluggaloid/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/delayer:1
- dev-ruby/instance_storage:0
-"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile test/*_test.rb || die
-}
diff --git a/dev-ruby/pluggaloid/pluggaloid-1.7.0-r1.ebuild b/dev-ruby/pluggaloid/pluggaloid-1.7.0-r1.ebuild
new file mode 100644
index 000000000000..6195f7a62c4a
--- /dev/null
+++ b/dev-ruby/pluggaloid/pluggaloid-1.7.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+DESCRIPTION="Pluggaloid is extensible plugin system for mikutter"
+HOMEPAGE="https://rubygems.org/gems/pluggaloid/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/delayer-1.1.0:1
+ dev-ruby/instance_storage:0
+"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile test/*_test.rb || die
+}
diff --git a/dev-ruby/podcast/metadata.xml b/dev-ruby/podcast/metadata.xml
index eb1e47f2edfb..266783412a06 100644
--- a/dev-ruby/podcast/metadata.xml
+++ b/dev-ruby/podcast/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">boncey/ruby-podcast</remote-id>
+ <remote-id type="rubygems">podcast</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/podcast/podcast-0.0.4-r2.ebuild b/dev-ruby/podcast/podcast-0.0.4-r2.ebuild
deleted file mode 100644
index 801480697d65..000000000000
--- a/dev-ruby/podcast/podcast-0.0.4-r2.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A pure Ruby library for generating podcasts from mp3 files"
-HOMEPAGE="http://podcast.rubyforge.org/"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-IUSE="test"
-
-ruby_add_rdepend "dev-ruby/ruby-mp3info"
-
-each_ruby_test() {
- ${RUBY} -Ilib test/ts_podcast.rb || die "Tests failed."
-}
diff --git a/dev-ruby/podcast/podcast-0.0.4-r3.ebuild b/dev-ruby/podcast/podcast-0.0.4-r3.ebuild
new file mode 100644
index 000000000000..4aa3435ce502
--- /dev/null
+++ b/dev-ruby/podcast/podcast-0.0.4-r3.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_EXTRADOC="README"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A pure Ruby library for generating podcasts from mp3 files"
+HOMEPAGE="https://github.com/boncey/ruby-podcast"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/ruby-mp3info"
+
+each_ruby_test() {
+ ${RUBY} -Ilib test/ts_podcast.rb || die "Tests failed."
+}
diff --git a/dev-ruby/poltergeist/Manifest b/dev-ruby/poltergeist/Manifest
deleted file mode 100644
index 6362d5799832..000000000000
--- a/dev-ruby/poltergeist/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST poltergeist-1.14.0.tar.gz 185946 BLAKE2B 0f5d95437ad5c2509264ef0230624ac257e8901e98bd4494576c3dc6895fc38c64572b287eb9842c8af2ddbaf0b3c48ecb0a1fb4a2cb72711abba40646dcaeec SHA512 82ab8aec7e5e091fa2924765e077d8b9816319833d438d9246f8ef3d0045d158de6bce1d14e929cc5cb8d0970ea380d44a51511b17623479f3cd64853580ce71
diff --git a/dev-ruby/poltergeist/metadata.xml b/dev-ruby/poltergeist/metadata.xml
deleted file mode 100644
index 1ec3a890fb3a..000000000000
--- a/dev-ruby/poltergeist/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jonleighton/poltergeist</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/poltergeist/poltergeist-1.14.0.ebuild b/dev-ruby/poltergeist/poltergeist-1.14.0.ebuild
deleted file mode 100644
index 46bac159004c..000000000000
--- a/dev-ruby/poltergeist/poltergeist-1.14.0.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby21 ruby22 ruby23 ruby24"
-
-# There are tests but they require several unpackaged dependencies.
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A PhantomJS driver for Capybara"
-HOMEPAGE="https://github.com/jonleighton/poltergeist"
-SRC_URI="https://github.com/jonleighton/poltergeist/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-RDEPEND+=" www-client/phantomjs"
-
-ruby_add_rdepend ">=dev-ruby/cliver-0.3.1
- >=dev-ruby/capybara-2.1
- >=dev-ruby/websocket-driver-0.2.0"
-
-ruby_add_bdepend "test? ( dev-ruby/sinatra:0 )"
-
-all_ruby_prepare() {
- # Fix cliver versioning to accept all 0.x versions
- sed -i -e 's/0.3.1/0.3/' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
- sed -i -e '2igem "sinatra", "~>1.0"; gem "rack", "~>1.5"' spec/spec_helper.rb || die
-
- # Remove integration tests for now since they require additional dependencies.
- rm -rf spec/integration
-
- # Avoid a spec failing only in our ebuild test environment
- sed -i -e '/can pause indefinitely/,/^ end/ s:^:#:' spec/unit/driver_spec.rb || die
-}
diff --git a/dev-ruby/polyglot/metadata.xml b/dev-ruby/polyglot/metadata.xml
index ba3d9272319e..92cdcad5348c 100644
--- a/dev-ruby/polyglot/metadata.xml
+++ b/dev-ruby/polyglot/metadata.xml
@@ -1,13 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <longdescription>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <longdescription>
Polyglot provides support for fully-custom DSLs by providing a
registry of file types that can be loaded by its improved version of
'require', using a custom loader for each file type.
- </longdescription>
+ </longdescription>
+ <upstream>
+ <remote-id type="github">cjheath/polyglot</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/polyglot/polyglot-0.3.5-r1.ebuild b/dev-ruby/polyglot/polyglot-0.3.5-r1.ebuild
new file mode 100644
index 000000000000..d280bbd80eec
--- /dev/null
+++ b/dev-ruby/polyglot/polyglot-0.3.5-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Polyglot provides support for fully-custom DSLs"
+HOMEPAGE="https://github.com/cjheath/polyglot"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE=""
diff --git a/dev-ruby/polyglot/polyglot-0.3.5.ebuild b/dev-ruby/polyglot/polyglot-0.3.5.ebuild
deleted file mode 100644
index e91fd98f7053..000000000000
--- a/dev-ruby/polyglot/polyglot-0.3.5.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Polyglot provides support for fully-custom DSLs"
-HOMEPAGE="http://polyglot.rubyforge.org/"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-all_ruby_prepare() {
- # jruby has trouble parsing this metadata and there are no dependencies.
- rm -f ../metadata || die
-}
diff --git a/dev-ruby/posix-spawn/Manifest b/dev-ruby/posix-spawn/Manifest
deleted file mode 100644
index 7178a486198c..000000000000
--- a/dev-ruby/posix-spawn/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST posix-spawn-0.3.13.gem 28160 BLAKE2B 68b1c241310c7b35bf8bea055e63a60320ae3fc877f9bc9f4e2dc0d30c1484eb5081be8c7d60309ed04900c410d52624dae6e37a0f134993f334526f2d9de98d SHA512 a9cd878571440cc0aaee541cbb97b6f4dcb03e48a8ef8588693f4c68990eb530e3b1685d615546763c9bba5d3109134442285023938eb2f116e9749f0da12bb9
diff --git a/dev-ruby/posix-spawn/files/posix-spawn-0.3.13-x86.patch b/dev-ruby/posix-spawn/files/posix-spawn-0.3.13-x86.patch
deleted file mode 100644
index b96579b18281..000000000000
--- a/dev-ruby/posix-spawn/files/posix-spawn-0.3.13-x86.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From 5201e921a788fbb97f14ea0c617a2213dc3da1ca Mon Sep 17 00:00:00 2001
-From: Pascal Terjan <pterjan@google.com>
-Date: Sun, 20 Aug 2017 12:13:15 +0100
-Subject: [PATCH] Fix build when SIZEOF_INT == SIZEOF_LONG
-
-Signed-off-by: Aman Gupta <aman@tmm1.net>
----
- ext/posix-spawn.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/ext/posix-spawn.c b/ext/posix-spawn.c
-index 1659bed..2e4c4de 100644
---- a/ext/posix-spawn.c
-+++ b/ext/posix-spawn.c
-@@ -61,7 +61,7 @@ posixspawn_obj_to_fd(VALUE obj)
- * rb_fix2int takes care of raising if the provided object is a
- * Bignum and is out of range of an int
- */
-- fd = (int)rb_fix2int(obj);
-+ fd = FIX2INT(obj);
- break;
-
- case T_SYMBOL:
diff --git a/dev-ruby/posix-spawn/metadata.xml b/dev-ruby/posix-spawn/metadata.xml
deleted file mode 100644
index 24012d63e9a0..000000000000
--- a/dev-ruby/posix-spawn/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rtomayko/posix-spawn</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/posix-spawn/posix-spawn-0.3.13-r1.ebuild b/dev-ruby/posix-spawn/posix-spawn-0.3.13-r1.ebuild
deleted file mode 100644
index 6818b5a420e1..000000000000
--- a/dev-ruby/posix-spawn/posix-spawn-0.3.13-r1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md TODO HACKING"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Library that implements a subset of the Ruby 1.9 Process::spawn"
-HOMEPAGE="https://github.com/rtomayko/posix-spawn/"
-
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-
-LICENSE="MIT LGPL-2.1"
-SLOT="0"
-IUSE="test"
-
-all_ruby_prepare() {
- eapply "${FILESDIR}/${P}-x86.patch"
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext
- cp ext/*$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:.:test -e 'Dir["test/test_*.rb"].each {|f| require f}' || die
-}
diff --git a/dev-ruby/posix-spawn/posix-spawn-0.3.13.ebuild b/dev-ruby/posix-spawn/posix-spawn-0.3.13.ebuild
deleted file mode 100644
index 4f7272325470..000000000000
--- a/dev-ruby/posix-spawn/posix-spawn-0.3.13.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-KEYWORDS="~amd64"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md TODO HACKING"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Library that implements a subset of the Ruby 1.9 Process::spawn"
-HOMEPAGE="https://github.com/rtomayko/posix-spawn/"
-
-LICENSE="MIT LGPL-2.1"
-SLOT="0"
-IUSE="test"
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext
- cp ext/*$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:.:test -e 'Dir["test/test_*.rb"].each {|f| require f}' || die
-}
diff --git a/dev-ruby/postgres_ext/Manifest b/dev-ruby/postgres_ext/Manifest
deleted file mode 100644
index 03c18a592bdb..000000000000
--- a/dev-ruby/postgres_ext/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST postgres_ext-3.0.1.gem 24064 BLAKE2B 013a5b146474006f5bf15c5336b84b279a2d92afa632faa8e2c237f02bd4d899fb7ce7f7bda401df7b686ee7e952248db1278aeced9067a15343d13f5a5f832d SHA512 da1f47e90e12229f675955491d21eea56a349213db963e7a6e29886c1f5b8773a1988ca224be4abf5163e66e4189d98e9adf85d61e201488e5c13b36bc6f7b4f
diff --git a/dev-ruby/postgres_ext/metadata.xml b/dev-ruby/postgres_ext/metadata.xml
deleted file mode 100644
index 3d9ac2a2fc57..000000000000
--- a/dev-ruby/postgres_ext/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">dockyard/postgres_ext</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/postgres_ext/postgres_ext-3.0.1.ebuild b/dev-ruby/postgres_ext/postgres_ext-3.0.1.ebuild
deleted file mode 100644
index 907385a5ddb1..000000000000
--- a/dev-ruby/postgres_ext/postgres_ext-3.0.1.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Native PostgreSQL data types and querying extensions for ActiveRecord and Arel"
-HOMEPAGE="https://github.com/dockyard/postgres_ext"
-
-LICENSE="BSD"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-# Requires live database connection
-RESTRICT=test
-
-ruby_add_rdepend "
- dev-ruby/activerecord:4.2
- >=dev-ruby/arel-4.0.1:*
- dev-ruby/pg_array_parser:0.0.9"
-
-ruby_add_bdepend "dev-ruby/bundler"
-
-all_ruby_prepare() {
- [ -f Gemfile.lock ] && rm Gemfile.lock
- #if ! use development; then
- sed -i -e "/^group :development do/,/^end$/d" Gemfile || die
- sed -i -e "/s.add_development_dependency/d" "${PN}".gemspec || die
- sed -i -e "/gem.add_development_dependency/d" "${PN}".gemspec || die
- #fi
- #if ! use test; then
- sed -i -e "/^group :test do/,/^end$/d" Gemfile || die
- #fi
- #if ! use test && ! use development; then
- sed -i -e "/^group :development, :test do/,/^end$/d" Gemfile || die
- #fi
- #https://github.com/dockyard/postgres_ext/issues/166
- #ugh, thanks
- sed -i -e "/byebug/d" Gemfile || die
- sed -i -e "/fivemat/d" Gemfile || die
-}
-
-each_ruby_prepare() {
- if [ -f Gemfile ]; then
- BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle install --local || die
- BUNDLE_GEMFILE=Gemfile ${RUBY} -S bundle check || die
- fi
-}
diff --git a/dev-ruby/power_assert/Manifest b/dev-ruby/power_assert/Manifest
index 35f7a5917f4b..7fe6fbe42b95 100644
--- a/dev-ruby/power_assert/Manifest
+++ b/dev-ruby/power_assert/Manifest
@@ -1,5 +1 @@
-DIST power_assert-1.1.1.tar.gz 16799 BLAKE2B df5f688d4242373f1a5de95fcbcdd63d23a14314a890a32839ba88494d04a09ad6b9c1dedea23f43d53cb708b3e5eee8d0a2307be16a1c11cf3cbf22ea254344 SHA512 a33429bf918c71a5b75e56940d46dfd05ed3c87f909d6f09ebf2d8b2cd43a3c5c37b5ac13c334383f1b3f52817ecd4ccf68cd649c53bebdfbc464a18c88b702c
-DIST power_assert-1.1.2.tar.gz 17140 BLAKE2B a690365b60ff1dbcb9eb70807b4c9c772e7f809190f1fa7dfef449ff01656bc31bd59f0d291ff158bdac1e2accaf376a45fc1dd480fd864fe84ba1ab4baf3743 SHA512 716edf1e2885e2e4d760f9b09aa97be1eee353f4f50297d0009ebc9fa3e16599ae094b78911915f20d295a6232d6c14844f43bf843b25e90f7c76bfa1d7776fc
-DIST power_assert-1.1.3.tar.gz 17169 BLAKE2B 05e916cafafc6c90abd9fec30d4439bc4b02cb83267c37528c018eb367a402cd42aefdd050b388d3bc1735f0320109b0c1a078db3718c0d3b2a033c32536c441 SHA512 8612e08c3e30ddfccc6be30f2df101ddcee0d2338b9438fb44e922115c683b31f41b699ca998e088488da94eb5d80da360429fb2ba374c31a9b57a60ebc8c732
-DIST power_assert-1.1.4.tar.gz 17330 BLAKE2B 5d5e22c436c8e25612326e8d33a6ca10e8ddacf6d2b5266bdcd61c04abdcde231872ee7589985926153c58872714dd9ac4d66cf1bc0b02ce863968e0215a050c SHA512 1c7b98623710ad037aad4a399b80f28130b76ad38ee4bf0613fe6cfc9080bdcc9c6765358830bcd713201d6e14e33761a34e4434f41f3e8995d8d91d3809a61a
-DIST power_assert-1.1.5.tar.gz 17326 BLAKE2B bd5e0627b681ccebc546a8b95170a3fe20ba919ff19405552e47c8e8f7faebe0c638a71e303e63e04a88b7d48a6ccd3e1117fea863275abbd5182d66e9634db1 SHA512 bc1f98b9b8c3ac327a744a28c54c747177eef187cd998778244f3dce59d2909e94960a50179552a9a687b973bcef49f26fffa67d75e9b3b92ea9959d40b93298
+DIST power_assert-2.0.3.tar.gz 17228 BLAKE2B 6a7927102deaf6daf0e4f17e7183ec4a862a57607b965c0051b1ecd22a4bf555c6f6195911405d2839a725f38e1e1b49ef6ca3a4209452ca149996071d28e47b SHA512 f5658d18b3b78e7757ddfc1ccdabc011076c009a7343eaad2748ca7aeb4d112bf19c70621cb938e7dcf1582c8bb7c5512017885ea51503b3ed274980b7d7c0b1
diff --git a/dev-ruby/power_assert/metadata.xml b/dev-ruby/power_assert/metadata.xml
index 685de59d7fba..222ac729ad35 100644
--- a/dev-ruby/power_assert/metadata.xml
+++ b/dev-ruby/power_assert/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">k-tsj/power_assert</remote-id>
+ <remote-id type="github">ruby/power_assert</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/power_assert/power_assert-1.1.1.ebuild b/dev-ruby/power_assert/power_assert-1.1.1.ebuild
deleted file mode 100644
index 892be1449fca..000000000000
--- a/dev-ruby/power_assert/power_assert-1.1.1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Shows each value of variables and method calls in the expression"
-HOMEPAGE="https://github.com/k-tsj/power_assert"
-SRC_URI="https://github.com/k-tsj/power_assert/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="|| ( Ruby BSD-2 )"
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile test/test_helper.rb || die
- sed -i -e '1igem "test-unit"' \
- -e '/byebug/ s:^:#:' test/test_helper.rb || die
-
- # Avoid circular dependency on byebug when bootstrapping ruby
- sed -i -e '/byebug/ s:^:#:' -e '/test_core_ext_helper/ s:^:#:' test/test_helper.rb || die
- rm test/test_core_ext_helper.rb test/trace_test.rb || die
-
- # Avoid circular dependency on pry when bootstrapping ruby
- sed -i -e '/pry/ s:^:#:' -e '/test_colorized_pp/,/^ end/ s:^:#:' test/block_test.rb || die
-}
diff --git a/dev-ruby/power_assert/power_assert-1.1.2.ebuild b/dev-ruby/power_assert/power_assert-1.1.2.ebuild
deleted file mode 100644
index d7094d7ebe93..000000000000
--- a/dev-ruby/power_assert/power_assert-1.1.2.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Shows each value of variables and method calls in the expression"
-HOMEPAGE="https://github.com/k-tsj/power_assert"
-SRC_URI="https://github.com/k-tsj/power_assert/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="|| ( Ruby BSD-2 )"
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile test/test_helper.rb || die
- sed -i -e '1igem "test-unit"' \
- -e '/byebug/ s:^:#:' test/test_helper.rb || die
-
- # Avoid circular dependency on byebug when bootstrapping ruby
- sed -i -e '/byebug/ s:^:#:' -e '/test_core_ext_helper/ s:^:#:' test/test_helper.rb || die
- rm test/test_core_ext_helper.rb test/trace_test.rb || die
-
- # Avoid circular dependency on pry when bootstrapping ruby
- sed -i -e '/pry/ s:^:#:' -e '/test_colorized_pp/,/^ end/ s:^:#:' test/block_test.rb || die
-}
diff --git a/dev-ruby/power_assert/power_assert-1.1.3.ebuild b/dev-ruby/power_assert/power_assert-1.1.3.ebuild
deleted file mode 100644
index ac1f12c73ec7..000000000000
--- a/dev-ruby/power_assert/power_assert-1.1.3.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Shows each value of variables and method calls in the expression"
-HOMEPAGE="https://github.com/k-tsj/power_assert"
-SRC_URI="https://github.com/k-tsj/power_assert/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="|| ( Ruby BSD-2 )"
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile test/test_helper.rb || die
- sed -i -e '1igem "test-unit"' \
- -e '/byebug/ s:^:#:' test/test_helper.rb || die
-
- # Avoid circular dependency on byebug when bootstrapping ruby
- sed -i -e '/byebug/ s:^:#:' -e '/test_core_ext_helper/ s:^:#:' test/test_helper.rb || die
- rm test/test_core_ext_helper.rb test/trace_test.rb || die
-
- # Avoid circular dependency on pry when bootstrapping ruby
- sed -i -e '/pry/ s:^:#:' -e '/test_colorized_pp/,/^ end/ s:^:#:' test/block_test.rb || die
-}
diff --git a/dev-ruby/power_assert/power_assert-1.1.4.ebuild b/dev-ruby/power_assert/power_assert-1.1.4.ebuild
deleted file mode 100644
index 636377560786..000000000000
--- a/dev-ruby/power_assert/power_assert-1.1.4.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Shows each value of variables and method calls in the expression"
-HOMEPAGE="https://github.com/k-tsj/power_assert"
-SRC_URI="https://github.com/k-tsj/power_assert/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="|| ( Ruby BSD-2 )"
-
-KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile test/test_helper.rb || die
- sed -i -e '1igem "test-unit"' \
- -e '/byebug/ s:^:#:' test/test_helper.rb || die
-
- # Avoid circular dependency on byebug when bootstrapping ruby
- sed -i -e '/byebug/ s:^:#:' -e '/test_core_ext_helper/ s:^:#:' test/test_helper.rb || die
- rm test/test_core_ext_helper.rb test/trace_test.rb || die
-
- # Avoid circular dependency on pry when bootstrapping ruby
- sed -i -e '/pry/ s:^:#:' -e '/test_colorized_pp/,/^ end/ s:^:#:' test/block_test.rb || die
-}
diff --git a/dev-ruby/power_assert/power_assert-1.1.5.ebuild b/dev-ruby/power_assert/power_assert-1.1.5.ebuild
deleted file mode 100644
index c79d9077379e..000000000000
--- a/dev-ruby/power_assert/power_assert-1.1.5.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_GEMSPEC="power_assert.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Shows each value of variables and method calls in the expression"
-HOMEPAGE="https://github.com/k-tsj/power_assert"
-SRC_URI="https://github.com/k-tsj/power_assert/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="|| ( Ruby BSD-2 )"
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile test/test_helper.rb || die
- sed -i -e '1igem "test-unit"' \
- -e '/byebug/ s:^:#:' test/test_helper.rb || die
-
- # Avoid git dependency
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # Avoid circular dependency on byebug when bootstrapping ruby
- sed -i -e '/byebug/ s:^:#:' -e '/test_core_ext_helper/ s:^:#:' test/test_helper.rb || die
- rm test/test_core_ext_helper.rb test/trace_test.rb || die
-
- # Avoid circular dependency on pry when bootstrapping ruby
- sed -i -e '/pry/ s:^:#:' -e '/test_colorized_pp/,/^ end/ s:^:#:' test/block_test.rb || die
-}
diff --git a/dev-ruby/power_assert/power_assert-2.0.3.ebuild b/dev-ruby/power_assert/power_assert-2.0.3.ebuild
new file mode 100644
index 000000000000..938100be1fb0
--- /dev/null
+++ b/dev-ruby/power_assert/power_assert-2.0.3.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="power_assert.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Shows each value of variables and method calls in the expression"
+HOMEPAGE="https://github.com/ruby/power_assert"
+SRC_URI="https://github.com/ruby/power_assert/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="|| ( Ruby BSD-2 )"
+
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+SLOT="0"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile test/test_helper.rb || die
+ sed -i -e '1igem "test-unit"' \
+ -e '/byebug/ s:^:#:' test/test_helper.rb || die
+
+ # Avoid git dependency
+ sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid circular dependency on byebug when bootstrapping ruby
+ sed -i -e '/byebug/ s:^:#:' -e '/test_core_ext_helper/ s:^:#:' test/test_helper.rb || die
+ rm test/test_core_ext_helper.rb test/trace_test.rb || die
+
+ # Avoid circular dependency on pry when bootstrapping ruby
+ sed -i -e '/pry/ s:^:#:' -e '/test_colorized_pp/,/^ end/ s:^:#:' test/block_test.rb || die
+}
diff --git a/dev-ruby/prawn-table/metadata.xml b/dev-ruby/prawn-table/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/prawn-table/metadata.xml
+++ b/dev-ruby/prawn-table/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/prawn-table/prawn-table-0.2.2-r1.ebuild b/dev-ruby/prawn-table/prawn-table-0.2.2-r1.ebuild
deleted file mode 100644
index 07de526ec66b..000000000000
--- a/dev-ruby/prawn-table/prawn-table-0.2.2-r1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides support for tables in Prawn"
-HOMEPAGE="http://prawn.majesticseacreature.com/"
-LICENSE="|| ( GPL-2+ Ruby )"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/mocha
- >=dev-ruby/pdf-inspector-1.1.0
- >=dev-ruby/pdf-reader-1.2
- >=dev-ruby/prawn-1.3.0
- )"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/s/^/#/" spec/spec_helper.rb || die
- # Remove failing test
- # See https://github.com/prawnpdf/prawn-table/issues/10
- sed -i -e "/Prints table on one page when using subtable with colspan > 1/,+24 s/^/#/" spec/table_spec.rb || die
-}
diff --git a/dev-ruby/prawn-table/prawn-table-0.2.2-r2.ebuild b/dev-ruby/prawn-table/prawn-table-0.2.2-r2.ebuild
new file mode 100644
index 000000000000..a73d4daa132d
--- /dev/null
+++ b/dev-ruby/prawn-table/prawn-table-0.2.2-r2.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides support for tables in Prawn"
+HOMEPAGE="http://prawn.majesticseacreature.com/"
+LICENSE="|| ( GPL-2+ Ruby )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/mocha
+ >=dev-ruby/pdf-inspector-1.1.0
+ >=dev-ruby/pdf-reader-1.2
+ >=dev-ruby/prawn-1.3.0
+ )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/s/^/#/" spec/spec_helper.rb || die
+ # Remove failing test
+ # See https://github.com/prawnpdf/prawn-table/issues/10
+ sed -i -e "/Prints table on one page when using subtable with colspan > 1/,+24 s/^/#/" spec/table_spec.rb || die
+}
diff --git a/dev-ruby/prawn/Manifest b/dev-ruby/prawn/Manifest
index fa0294f1b912..89379d489135 100644
--- a/dev-ruby/prawn/Manifest
+++ b/dev-ruby/prawn/Manifest
@@ -1 +1,2 @@
-DIST prawn-2.2.0.tar.gz 5215662 BLAKE2B 7130aaa4e9e9de2f15148f9c3a7a713ebb9808047e59fc156566f3a44705055b907284ce6690ff2e803702ddc3eb304b32e8f8c0049badda348bf4242df7e14c SHA512 a714f3cf47439d2603afda66cf4202ab9fdda0b6aaec120fd65df4e29d4b26155d95392487131c16d451ebe8f774aa6d64227670fad7b151cd0a514d3ed40b06
+DIST prawn-2.4.0.tar.gz 5239492 BLAKE2B 5435d7715d2b3020316a04cbf2db1b7793435f2d05d34aae4832e12908a928f689c86d358562e7cd1c2675171a1743757097f0af3357eb667e4e2b9462890590 SHA512 e9fcc31ad2b5aa23592a8bf9419153fcb3080e00e53c9a91b50edc526631227fe86769eeb09336d267ea8f0a94f12336f71b24adc4d5cd9e750367d51f07c867
+DIST prawn-2.5.0.tar.gz 5254375 BLAKE2B e523522868716a3d4926cbbeb33b6d71ce8211065b66a1633e351465e9a9e5c6b62e2de066302c366964df468d6c494393c3afb011f7b91392bc6d0940e55ec9 SHA512 1feb425867c276dd4dcf27f5086c75700ef191e68a1a91756cfd4058540b268dfc29b0d249d281e7ded6e2d2bf7aa56065e6173c4c9caf4d568dc8e4ad66e08d
diff --git a/dev-ruby/prawn/metadata.xml b/dev-ruby/prawn/metadata.xml
index a3d9c2d392d8..e518061b4e8b 100644
--- a/dev-ruby/prawn/metadata.xml
+++ b/dev-ruby/prawn/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/prawn/prawn-2.2.0.ebuild b/dev-ruby/prawn/prawn-2.2.0.ebuild
deleted file mode 100644
index 1f8468811515..000000000000
--- a/dev-ruby/prawn/prawn-2.2.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Fast, Nimble PDF Generation For Ruby"
-HOMEPAGE="http://prawn.majesticseacreature.com/"
-SRC_URI="https://github.com/prawnpdf/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="|| ( GPL-2 Ruby )"
-SLOT="2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-ruby_add_rdepend "=dev-ruby/pdf-core-0.7*
- >=dev-ruby/ttfunk-1.5"
-ruby_add_bdepend "test? ( dev-ruby/coderay
- >=dev-ruby/pdf-inspector-1.2.1
- >=dev-ruby/pdf-reader-1.2
- )"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile spec/spec_helper.rb || die
-
- # Remove test that needs unpackaged dependency
- rm -f spec/manual_spec.rb || die
-}
diff --git a/dev-ruby/prawn/prawn-2.4.0-r3.ebuild b/dev-ruby/prawn/prawn-2.4.0-r3.ebuild
new file mode 100644
index 000000000000..4c63deb9ceee
--- /dev/null
+++ b/dev-ruby/prawn/prawn-2.4.0-r3.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+RUBY_FAKEGEM_GEMSPEC="prawn.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Fast, Nimble PDF Generation For Ruby"
+HOMEPAGE="https://prawnpdf.org/"
+SRC_URI="https://github.com/prawnpdf/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="|| ( GPL-2 GPL-3 Ruby )"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ =dev-ruby/matrix-0.4*
+ =dev-ruby/pdf-core-0.9*
+ >=dev-ruby/ttfunk-1.7:*
+"
+ruby_add_bdepend "test? ( dev-ruby/coderay
+ >=dev-ruby/pdf-inspector-1.2.1
+ >=dev-ruby/pdf-reader-1.4
+ )"
+
+all_ruby_prepare() {
+ sed -i -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e "/[Bb]undler/d" Rakefile spec/spec_helper.rb || die
+
+ # Remove test that needs unpackaged dependency
+ rm -f spec/prawn_manual_spec.rb || die
+}
diff --git a/dev-ruby/prawn/prawn-2.5.0.ebuild b/dev-ruby/prawn/prawn-2.5.0.ebuild
new file mode 100644
index 000000000000..f0f67e5ce12b
--- /dev/null
+++ b/dev-ruby/prawn/prawn-2.5.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+RUBY_FAKEGEM_GEMSPEC="prawn.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Fast, Nimble PDF Generation For Ruby"
+HOMEPAGE="https://prawnpdf.org/"
+SRC_URI="https://github.com/prawnpdf/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="|| ( GPL-2 GPL-3 Ruby )"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ =dev-ruby/matrix-0.4*
+ =dev-ruby/pdf-core-0.10*
+ >=dev-ruby/ttfunk-1.8:*
+"
+ruby_add_bdepend "test? ( dev-ruby/coderay
+ >=dev-ruby/pdf-inspector-1.2.1
+ >=dev-ruby/pdf-reader-1.4
+ )"
+
+all_ruby_prepare() {
+ sed -i -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e "/[Bb]undler/d" Rakefile spec/spec_helper.rb || die
+
+ # Remove test that needs unpackaged dependency
+ rm -f spec/prawn_manual_spec.rb || die
+}
diff --git a/dev-ruby/prime/Manifest b/dev-ruby/prime/Manifest
new file mode 100644
index 000000000000..6c571fc28d5f
--- /dev/null
+++ b/dev-ruby/prime/Manifest
@@ -0,0 +1 @@
+DIST prime-0.1.2.tar.gz 9485 BLAKE2B 88db1d22a33405de0bd216baa0a8fa28abc61fe031ae6042a19f0a5c66cf7733b946a52f94165112b45b23331dc68e3168541ec89329ad8d2c016bbf1e33f425 SHA512 a766426884d6b3cd7a586676799db146974ec9a4a7c30ca53b5f279ad55ee9960c9b5bb26988cb66253b4fe974f9b5087f48ef5b216772464d03b8ed78a817d6
diff --git a/dev-ruby/prime/metadata.xml b/dev-ruby/prime/metadata.xml
new file mode 100644
index 000000000000..82f9f0cd0cba
--- /dev/null
+++ b/dev-ruby/prime/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/prime</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/prime/prime-0.1.2-r1.ebuild b/dev-ruby/prime/prime-0.1.2-r1.ebuild
new file mode 100644
index 000000000000..32120ce607cb
--- /dev/null
+++ b/dev-ruby/prime/prime-0.1.2-r1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="prime.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Prime numbers and factorization library"
+HOMEPAGE="https://github.com/ruby/prime"
+SRC_URI="https://github.com/ruby/prime/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/forwardable
+ dev-ruby/singleton
+"
+
+all_ruby_prepare() {
+ sed -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/priorityqueue/Manifest b/dev-ruby/priorityqueue/Manifest
deleted file mode 100644
index d3b2de910471..000000000000
--- a/dev-ruby/priorityqueue/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST PriorityQueue-0.1.2.gem 59392 BLAKE2B c28fbda358b79eb9f662944d80e578484c1380c1ac6490b2610eb8cdbb5c1b8ed79053a0faa301cb0c62d36c883d431deb5f4bb9248a133fc9e8ccaadb6df37c SHA512 67ae4507882e7635bef387b0df63ac7724b285cda5e23a06572477de71c98fd10b7718d966f2d5dba1f8cad29df112929d6b0ca30c042c843d364e5c8abccf23
diff --git a/dev-ruby/priorityqueue/metadata.xml b/dev-ruby/priorityqueue/metadata.xml
deleted file mode 100644
index bc6621ce376e..000000000000
--- a/dev-ruby/priorityqueue/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="rubygems">PriorityQueue</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/priorityqueue/priorityqueue-0.1.2.ebuild b/dev-ruby/priorityqueue/priorityqueue-0.1.2.ebuild
deleted file mode 100644
index 2946adc65a87..000000000000
--- a/dev-ruby/priorityqueue/priorityqueue-0.1.2.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-# ruby25: fails tests
-USE_RUBY="ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README"
-RUBY_FAKEGEM_NAME="PriorityQueue"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A fibonacci-heap priority-queue implementation"
-HOMEPAGE="https://rubygems.org/gems/PriorityQueue"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- rm Makefile *.o *.so || die
- sed -i -e "s/::Config/RbConfig/" setup.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} setup.rb config || die
-}
-
-each_ruby_compile() {
- ${RUBY} setup.rb setup || die
- cp ext/priority_queue/*$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib test/priority_queue_test.rb || die
-}
diff --git a/dev-ruby/propshaft/Manifest b/dev-ruby/propshaft/Manifest
new file mode 100644
index 000000000000..98444331380f
--- /dev/null
+++ b/dev-ruby/propshaft/Manifest
@@ -0,0 +1,2 @@
+DIST propshaft-0.7.0-git.tgz 247111 BLAKE2B aecf4dcab9b57f1933e8f7066f4b229348cf60e4104cc82e14edb945e797a263012fe5b7b65de8ff0165e652256a0bd8fba24af8f08d8e9391050e36e56d5f31 SHA512 3d6dba7a3b5b522f3e4a9f43dc6b9981fbb475374be0b90c8abb2f19c587d025b58876ddb6a9e1b9992e3f357a96b50b6138173d10b8ae131e9457309b8cc0c9
+DIST propshaft-0.8.0-git.tgz 247518 BLAKE2B fe57104a1abd683d74a3166931256f2cdc8e942fffe80c286acfc6db6fa105810bc929f03dd959a660835f030acb580dbd18e7b20f16cfb168b0953731bb2f90 SHA512 3a40355063edb912107ec27ac43ba76746bbd04da04096a4480b43f6fd103bfaec53957d1bbc2bf3d0e08237d965af4d3bf8067b558c4e417ffb506a84f1abff
diff --git a/dev-ruby/propshaft/metadata.xml b/dev-ruby/propshaft/metadata.xml
new file mode 100644
index 000000000000..51bcb44a79fe
--- /dev/null
+++ b/dev-ruby/propshaft/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">rails/propshaft</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/propshaft/propshaft-0.7.0-r1.ebuild b/dev-ruby/propshaft/propshaft-0.7.0-r1.ebuild
new file mode 100644
index 000000000000..fec829a55e50
--- /dev/null
+++ b/dev-ruby/propshaft/propshaft-0.7.0-r1.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 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.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 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/actionpack-7.0.0:*
+ >=dev-ruby/activesupport-7.0.0:*
+ dev-ruby/rack:*
+ >=dev-ruby/railties-7.0.0:*
+"
+
+ruby_add_bdepend "test? ( >=dev-ruby/rails-7.0.0 )"
+
+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/propshaft/propshaft-0.8.0.ebuild b/dev-ruby/propshaft/propshaft-0.8.0.ebuild
new file mode 100644
index 000000000000..9f12429acd24
--- /dev/null
+++ b/dev-ruby/propshaft/propshaft-0.8.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.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 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/actionpack-7.0.0:*
+ >=dev-ruby/activesupport-7.0.0:*
+ dev-ruby/rack:*
+ >=dev-ruby/railties-7.0.0:*
+"
+
+ruby_add_bdepend "test? ( >=dev-ruby/rails-7.0.0 )"
+
+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/protected_attributes/Manifest b/dev-ruby/protected_attributes/Manifest
deleted file mode 100644
index 22bf0849810a..000000000000
--- a/dev-ruby/protected_attributes/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST protected_attributes-1.1.4.tar.gz 23562 BLAKE2B 8b8c8a9f533344c6344de0e389807e39c06f53948d9206f965d0f954a9e8e8f4de61aebcbf96d95186b94e600ceceb48fd258087dfcc3baf15e65d588569829f SHA512 02c55825ec21dde386e31b25e71df4ac48c2356bad303a82cc33703b930c5f8e36b57193761dba59dff3868d39a3b5458fb2a2c49809019e72ed4b4f4313bed3
diff --git a/dev-ruby/protected_attributes/metadata.xml b/dev-ruby/protected_attributes/metadata.xml
deleted file mode 100644
index 242f40c6e3a2..000000000000
--- a/dev-ruby/protected_attributes/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rails/protected_attributes</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/protected_attributes/protected_attributes-1.1.4.ebuild b/dev-ruby/protected_attributes/protected_attributes-1.1.4.ebuild
deleted file mode 100644
index e23b1df20ff0..000000000000
--- a/dev-ruby/protected_attributes/protected_attributes-1.1.4.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Protect attributes from mass-assignment in ActiveRecord models"
-HOMEPAGE="https://github.com/rails/protected_attributes"
-SRC_URI="https://github.com/rails/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-SLOT="1"
-
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_rdepend "
- =dev-ruby/activemodel-4*:* >=dev-ruby/activemodel-4.0.1:*
-"
-
-ruby_add_bdepend "test? (
- dev-ruby/bundler
- =dev-ruby/actionpack-4*
- =dev-ruby/activerecord-4*
- =dev-ruby/rails-4*
- dev-ruby/mocha
- dev-ruby/sqlite3
-)"
-
-all_ruby_prepare() {
- sed -i -e '/github/ s:^:#:' Gemfile || die
-}
diff --git a/dev-ruby/pry/Manifest b/dev-ruby/pry/Manifest
index bef25e9fc93a..6684ca7b9907 100644
--- a/dev-ruby/pry/Manifest
+++ b/dev-ruby/pry/Manifest
@@ -1 +1 @@
-DIST pry-0.12.2.tar.gz 237824 BLAKE2B 2a99e6092968150f2c685bc93004bd596adbe5e289bd52ee68f11b52512ac43d0e7079b8129445160652c668c355edae97f1fd0fd2ead940f769831ac9ecf4ff SHA512 b3a2a9a26d7062b994760fc5ca6c8b477813e215624d88ae56d23703429d3d8d21357b5d89583c1af1c7654f892c0c57ffbc6dd6b6f126e0a6b786c7c48df6af
+DIST pry-0.14.2.tar.gz 239170 BLAKE2B a6370affcee671b293f33f65613607009d46b361fa241e47a1828c85e484dc82909ab8d307c2d20545253dd19115875788d1ab151b793e90246df4a7fec28cff SHA512 890ab8399899864c109919637e2641cafaf2d895db6ab4912bf856799708e08a68f4c9fbb5c505a75c160af30c4eabccfd52fa92cfa1dd3be7ae776ba0476660
diff --git a/dev-ruby/pry/metadata.xml b/dev-ruby/pry/metadata.xml
index 65bb685ca482..350f7b8a9f18 100644
--- a/dev-ruby/pry/metadata.xml
+++ b/dev-ruby/pry/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/pry/pry-0.12.2.ebuild b/dev-ruby/pry/pry-0.12.2.ebuild
deleted file mode 100644
index ce7a95a69257..000000000000
--- a/dev-ruby/pry/pry-0.12.2.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-RUBY_FAKEGEM_GEMSPEC=${PN}.gemspec
-
-inherit ruby-fakegem
-
-DESCRIPTION="Pry is a powerful alternative to the standard IRB shell for Ruby"
-HOMEPAGE="https://github.com/pry/pry/wiki"
-SRC_URI="https://github.com/pry/pry/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-IUSE=""
-SLOT="ruby19"
-
-LICENSE="MIT"
-KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86"
-
-ruby_add_rdepend "
- >=dev-ruby/coderay-1.1.0 =dev-ruby/coderay-1.1*
- >=dev-ruby/method_source-0.9.0 =dev-ruby/method_source-0.9*"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/open4-1.3
- >=dev-ruby/rake-0.9
- >=dev-ruby/mocha-1.0
- )"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on git.
- # Loosen coderay dependency.
- sed -e '/git ls-files/d' \
- -e '/coderay/s/~>/>=/' \
- -e '/bundler/d' \
- -i ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -e '/[Bb]undler/d' -e "1irequire 'mocha/api'\ " -i spec/helper.rb || die
- # Out of date tests
- rm spec/commands/gist_spec.rb || die
-}
diff --git a/dev-ruby/pry/pry-0.14.2.ebuild b/dev-ruby/pry/pry-0.14.2.ebuild
new file mode 100644
index 000000000000..a0d156fd38c1
--- /dev/null
+++ b/dev-ruby/pry/pry-0.14.2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
+RUBY_FAKEGEM_GEMSPEC=${PN}.gemspec
+
+inherit ruby-fakegem
+
+DESCRIPTION="Pry is a powerful alternative to the standard IRB shell for Ruby"
+HOMEPAGE="https://github.com/pry/pry/wiki"
+SRC_URI="https://github.com/pry/pry/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+IUSE=""
+SLOT="ruby19"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+ruby_add_rdepend "
+ >=dev-ruby/coderay-1.1:0
+ =dev-ruby/method_source-1*"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/open4-1.3
+ >=dev-ruby/rake-0.9
+ >=dev-ruby/mocha-1.0
+ )"
+
+all_ruby_prepare() {
+ # Avoid unneeded dependency on git.
+ # Loosen coderay dependency.
+ sed -e '/git ls-files/d' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -e '/[Bb]undler/d' -i spec/spec_helper.rb || die
+
+ # Skip integration tests because they depend to much on specifics of the environment.
+ rm -f spec/integration/* || die
+ sed -i -e '/loads files through repl and exits/askip "depends on parent directory"' spec/cli_spec.rb || die
+}
diff --git a/dev-ruby/psych/Manifest b/dev-ruby/psych/Manifest
index ea7e8655cfb4..c9090fc54232 100644
--- a/dev-ruby/psych/Manifest
+++ b/dev-ruby/psych/Manifest
@@ -1,2 +1,4 @@
-DIST psych-3.0.3.tar.gz 133778 BLAKE2B c28ba4ca2fa8b042bd8f13294330c7704401d861ff082fc2b97c59b7f5ab29001a44184992eadd78fa125ec14ca71c9e79c5e71bafe46471643ed0fd62180165 SHA512 cc2289dcdcaa7f812d03580bd05894fb66c7c3c161535c8f17f790a6a9c35c5623462102276f63c54b884a82d86359b3e0f455b2427db3b6987ac5d71010c8b4
-DIST psych-3.1.0.tar.gz 137194 BLAKE2B ab2678d44ee0824ac64cffd03f7d3e204c1c097c27f6aefe5701f663fc4e6f8adfc898f3c666c1485e6719b2902d284e8191c72cc4b35cec0982e31188b3319b SHA512 c2919840462502bca6c1619409005f3904816048caa08f9637ff6e306542afc566bb3f873e615581d9d6fcb6ace8a30c080a21523714c18d8e639d70026ed153
+DIST psych-4.0.6.gem 93696 BLAKE2B f5bea8262b401c0c291514dbd5ddc4aff389aeadb0b6483901b70a9562d267460260ddc5991e1540e51fb371a79d3a4a831bfdb8cb0b5dd9bd53cac939287545 SHA512 31f0ff5cd48e80ae81977f9519aa7952685b2da4a88b202aeb7214a364932cb1ca256f0934bed158d44a7d4d6e8cbb34928d33e731d0a8ba1a9885733ed32cd1
+DIST psych-5.1.0.gem 39936 BLAKE2B f4d1b2b3699e36cf5f5101ad038ac3fd2e44b434df3e91516b850511684daeeb1eda32901ffbff870f533b8bda859b09bbd63e5ebe8a5ca3ce271ce869ef3a16 SHA512 94dd2a7b98d9d452fb24ba14d42d91969aa0d93f5737728e41a5032d76bad45d0e0b365f53447664cece448559d2e47ab35d95b4989016d9f0daf03b76d8a5cc
+DIST psych-5.1.1.tar.gz 84699 BLAKE2B 5b45ddf8964c6bbbc7cac641d80c2967805125dfe338a2383a4f2c413b75b74d6ff5f2c0885ec1ad75c8f406afeaa5ba4fbf12e2bbc6abffb0d41cd88cc570a3 SHA512 a417459b038c1b9c66a93e7666c62c556ea0d2728405fb3ddde309ccd87a92992b82cca1f6be592395cfac75f6ac24e8ee52b8aa0c0cf28233e1cab0bf8a3a2f
+DIST psych-5.1.2.tar.gz 84689 BLAKE2B 868b653f28aa158777db34f33a76059e3f9565293328874af72ead5c2495fcdfabc145acfa5da8aecb0f4549f1012ad54e126274a7b8623188542363616099f7 SHA512 ed5440088c50bab86757b642f444903c804628ec361d138f54d2416def9c9fdd9728ece61fd6b4b56f47b13ab604aa99afb5710f49fcee0cf4ca3492f8cd7013
diff --git a/dev-ruby/psych/metadata.xml b/dev-ruby/psych/metadata.xml
index 3b82d1915150..d8a98a8fa324 100644
--- a/dev-ruby/psych/metadata.xml
+++ b/dev-ruby/psych/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">tenderlove/psych</remote-id>
+ <remote-id type="github">ruby/psych</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/psych/psych-3.0.3.ebuild b/dev-ruby/psych/psych-3.0.3.ebuild
deleted file mode 100644
index 8d17eb10b18c..000000000000
--- a/dev-ruby/psych/psych-3.0.3.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A libyaml wrapper for Ruby"
-HOMEPAGE="https://github.com/tenderlove/psych"
-SRC_URI="https://github.com/tenderlove/psych/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-IUSE=""
-
-DEPEND+=" >=dev-libs/libyaml-0.2.1"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
-
-all_ruby_prepare() {
- sed -i -e '1igem "minitest", "~>5.0"' test/psych/helper.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/${PN} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/${PN}$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:test/${PN}:. -e "Dir['test/psych/**/test_*.rb'].each {|f| require f}" || die
-}
diff --git a/dev-ruby/psych/psych-3.1.0.ebuild b/dev-ruby/psych/psych-3.1.0.ebuild
deleted file mode 100644
index ea60d8cf5d06..000000000000
--- a/dev-ruby/psych/psych-3.1.0.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A libyaml wrapper for Ruby"
-HOMEPAGE="https://github.com/tenderlove/psych"
-SRC_URI="https://github.com/tenderlove/psych/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-IUSE=""
-
-DEPEND+=" >=dev-libs/libyaml-0.2.1"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
-
-all_ruby_prepare() {
- sed -i -e '1igem "minitest", "~>5.0"' test/psych/helper.rb || die
-
- sed -i -e 's/require_relative/require/ ; s:lib/psych/versions:./lib/psych/versions:' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/${PN} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/${PN}$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:test/${PN}:. -e "Dir['test/psych/**/test_*.rb'].each {|f| require f}" || die
-}
diff --git a/dev-ruby/psych/psych-4.0.6.ebuild b/dev-ruby/psych/psych-4.0.6.ebuild
new file mode 100644
index 000000000000..9650d7d5a646
--- /dev/null
+++ b/dev-ruby/psych/psych-4.0.6.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/psych/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A YAML parser and emitter"
+HOMEPAGE="https://github.com/ruby/psych"
+
+LICENSE="BSD-2"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+RDEPEND+=" >=dev-libs/libyaml-0.2.5"
+BDEPEND+=" >=dev-libs/libyaml-0.2.5"
+
+ruby_add_rdepend "dev-ruby/stringio"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/psych/psych-5.1.0.ebuild b/dev-ruby/psych/psych-5.1.0.ebuild
new file mode 100644
index 000000000000..bb50d15c44e8
--- /dev/null
+++ b/dev-ruby/psych/psych-5.1.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/psych/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A YAML parser and emitter"
+HOMEPAGE="https://github.com/ruby/psych"
+
+LICENSE="BSD-2"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+IUSE="test"
+
+RDEPEND+=" >=dev-libs/libyaml-0.2.5"
+BDEPEND+=" >=dev-libs/libyaml-0.2.5"
+
+ruby_add_rdepend "dev-ruby/stringio"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/psych/psych-5.1.1.ebuild b/dev-ruby/psych/psych-5.1.1.ebuild
new file mode 100644
index 000000000000..43ecf2660829
--- /dev/null
+++ b/dev-ruby/psych/psych-5.1.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/psych/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="psych.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A YAML parser and emitter"
+HOMEPAGE="https://github.com/ruby/psych"
+SRC_URI="https://github.com/ruby/psych/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+IUSE="test"
+
+RDEPEND+=" >=dev-libs/libyaml-0.2.5"
+BDEPEND+=" >=dev-libs/libyaml-0.2.5"
+
+ruby_add_rdepend "dev-ruby/stringio"
+
+ruby_add_bdepend "test? (
+ dev-ruby/test-unit
+ dev-ruby/test-unit-ruby-core
+)"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC}
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'require "lib/helper"; Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/psych/psych-5.1.2.ebuild b/dev-ruby/psych/psych-5.1.2.ebuild
new file mode 100644
index 000000000000..554a73d1edcc
--- /dev/null
+++ b/dev-ruby/psych/psych-5.1.2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTENSIONS=(ext/psych/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="psych.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A YAML parser and emitter"
+HOMEPAGE="https://github.com/ruby/psych"
+SRC_URI="https://github.com/ruby/psych/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+IUSE="test"
+
+RDEPEND+=" >=dev-libs/libyaml-0.2.5"
+BDEPEND+=" >=dev-libs/libyaml-0.2.5"
+
+ruby_add_rdepend "dev-ruby/stringio"
+
+ruby_add_bdepend "test? (
+ dev-ruby/test-unit
+ dev-ruby/test-unit-ruby-core
+)"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC}
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'require "lib/helper"; Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/ptools/Manifest b/dev-ruby/ptools/Manifest
new file mode 100644
index 000000000000..37a92028caee
--- /dev/null
+++ b/dev-ruby/ptools/Manifest
@@ -0,0 +1 @@
+DIST ptools-1.5.0.gem 53760 BLAKE2B 49de9513c33dc2840138a88cfc3ab85639426f731138a62c746612715509b6426032e72d59f7789deb3a932de88e81fd0762f744a7abc5be09e782b68eb22647 SHA512 e79b069dc50796ba979c34028d11e65804b398c60328edb349ef6dec6c133166aecc1255fe583bdb06f7b2a7d835de77dd7ec38180d3b23e3f7d321d7e0724e9
diff --git a/dev-ruby/ptools/metadata.xml b/dev-ruby/ptools/metadata.xml
new file mode 100644
index 000000000000..d79192dd637e
--- /dev/null
+++ b/dev-ruby/ptools/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+ <name>Robin H. Johnson</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">djberg96/ptools</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/ptools/ptools-1.5.0.ebuild b/dev-ruby/ptools/ptools-1.5.0.ebuild
new file mode 100644
index 000000000000..15540d481f24
--- /dev/null
+++ b/dev-ruby/ptools/ptools-1.5.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Several handy methods to Ruby's core File class"
+HOMEPAGE="https://github.com/djberg96/ptools"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+#ruby_add_bdepend "test? ( dev-ruby/mkmf-lite )"
diff --git a/dev-ruby/public_suffix/Manifest b/dev-ruby/public_suffix/Manifest
index aa62955bbdc4..e9633b432ebd 100644
--- a/dev-ruby/public_suffix/Manifest
+++ b/dev-ruby/public_suffix/Manifest
@@ -1,4 +1,4 @@
-DIST public_suffix-3.0.2.gem 95744 BLAKE2B 5c06af572214760f7d2a176e1b6603ea9bf0f45c91633cdead841ef8289b7c9ae7ae5b0400d5248d3df4c3bc81d9bb357de622fb85a9c3a67f4973872bdee94a SHA512 eafab08d0114212798390b4b5e9472fab98c91b38ea836c76254673e48bd068afeeb5ec4a2685bdb030ea78e4e5ea0be10dc3b742ed30352e11ec7a7cc1e7bc2
-DIST public_suffix-3.1.1.gem 99840 BLAKE2B ef86b7ecb834a855dbb44b8a0f934de3715edb6d67faefd20f99054898b35bfedffd490b60fbe80236905826868611aa96e13766577bb98ab997321cf9c49b39 SHA512 1e266ed7fa224fa94a49a51dae2868bdadb80ca2de660d2cda9a1e146ccad5aaba2cf68d75272e333a4b1a80e47863d388d85d3a86bddf8f649a320e5e700078
-DIST public_suffix-4.0.0.gem 99840 BLAKE2B 198ba6107c9577e20438c9f5eeba33b740d194e491374ea336043e5f731b6cc956323c746ece0665943269d336cdaf1d94d9ca64022c8ada1d28ca00a12fa209 SHA512 ed4eae1e2ca1e7af08317bc82b4dbb7b1f1e4de9889f4e510a9f347b2212010da956ebc53cdc45f08b7f1f805d814a96f7da305f0b85434a0417fb740ab5e410
-DIST public_suffix-4.0.1.gem 100352 BLAKE2B 00e71f881b30316f42d9a16c22c71e1a7f7f183ae3bf6662a49a0bb2d2caab7345ca1c5c7a9034cb479d95836db83e1d389551333187d9949addd70fdf6ff39c SHA512 03255a82e084758b78308606c028d86cef6231af0a769af97e8207d777370ba5951fcc2914d19708db996e92e53e5689ac7d628ca3c4f604250e46a274bbaf3a
+DIST public_suffix-4.0.7.gem 113664 BLAKE2B 5da86713da01f59e7f311985a36b835e02807ca5f186ffc5e41e42cae7781cc10d96a4aca77dafb77050c78e6fb03e10f7ac55dace776c5cca68bca9f4bd7d75 SHA512 acdfe135684277a669ceaa61ea78fc70b979614f63daf27d145e78e4013221eac106651838a27b6694844f4fc33521ecc9f81102582ca1f1232fa80ce8191207
+DIST public_suffix-5.0.3.gem 113152 BLAKE2B e14a5c343f4db466a31c3a84c95f810d82b5bf64d6be9e0690d9639aaae8feec91ffb1e867dcb3664027426c436396a090a7051189308414b76c4f962c899930 SHA512 7d8c1c0ff951458060dfee4247cfdb04a3f875f97e8451e2955b05335c9ea8480612be1455280ee86c9b2a1c62d0dac663d67b68825d8ce3a99ef63c5841017d
+DIST public_suffix-5.0.4.tar.gz 111469 BLAKE2B 6719dc40206f5dc2bb8152576ca82d1321b1789fd8b085d20d1246d4f5f44f64116f9a62cbd55053a066c6b99fbe200951f13862d0a4136a62c235147f65fd4a SHA512 d42bd895387739d87579249ff4799fb5a49c49a2e4cbf4f22dd0b42a252b264d813549bf86d6c327d85e7d38fbdd97681d777adf2ff8398025dafd9eac655654
+DIST public_suffix-5.0.5.tar.gz 112703 BLAKE2B aa23f94cbccb380e38fd63521516038f180f32a2e5c1c4fd800063f9cd1859c388cdd2e0bca13f76c9cf1ff16f03a34eb5ea1a6ac75e4eb98970d516e01df6a5 SHA512 4b785474b7fb726dbfe66b6c1c801eb9a75d5e555c69e678cf8253112facd9dc98fd76c07f43ff74eb310beaf7e063344e8a6484dfe4b8cfea2557510f22ae9f
diff --git a/dev-ruby/public_suffix/metadata.xml b/dev-ruby/public_suffix/metadata.xml
index 5dbad245f320..b17b67fa1af7 100644
--- a/dev-ruby/public_suffix/metadata.xml
+++ b/dev-ruby/public_suffix/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/public_suffix/public_suffix-3.0.2.ebuild b/dev-ruby/public_suffix/public_suffix-3.0.2.ebuild
deleted file mode 100644
index 16f21ff15835..000000000000
--- a/dev-ruby/public_suffix/public_suffix-3.0.2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Parse and decompose a domain name into top level domain, domain and subdomains"
-HOMEPAGE="https://simonecarletti.com/code/publicsuffix-ruby/"
-
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-LICENSE="MIT"
-SLOT="3"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/mocha )"
-
-all_ruby_prepare() {
- sed -i -e '/rubocop/I s:^:#:' \
- -e '/yardoc/,/CLOBBER.include/ s:^:#:' \
- -e '/bundler/ s:^:#:' Rakefile || die
- sed -i -e '/reporters/I s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/public_suffix/public_suffix-3.1.1.ebuild b/dev-ruby/public_suffix/public_suffix-3.1.1.ebuild
deleted file mode 100644
index 9fc3ac8c6519..000000000000
--- a/dev-ruby/public_suffix/public_suffix-3.1.1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Parse and decompose a domain name into top level domain, domain and subdomains"
-HOMEPAGE="https://simonecarletti.com/code/publicsuffix-ruby/"
-
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-LICENSE="MIT"
-SLOT="3"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/mocha )"
-
-all_ruby_prepare() {
- sed -i -e '/rubocop/I s:^:#:' \
- -e '/yardoc/,/CLOBBER.include/ s:^:#:' \
- -e '/bundler/ s:^:#:' Rakefile || die
- sed -i -e '/reporters/I s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/public_suffix/public_suffix-4.0.0.ebuild b/dev-ruby/public_suffix/public_suffix-4.0.0.ebuild
deleted file mode 100644
index a04ea04fcd7b..000000000000
--- a/dev-ruby/public_suffix/public_suffix-4.0.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Parse and decompose a domain name into top level domain, domain and subdomains"
-HOMEPAGE="https://simonecarletti.com/code/publicsuffix-ruby/"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-LICENSE="MIT"
-SLOT="4"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/mocha )"
-
-all_ruby_prepare() {
- sed -i -e '/rubocop/I s:^:#:' \
- -e '/yardoc/,/CLOBBER.include/ s:^:#:' \
- -e '/bundler/ s:^:#:' Rakefile || die
- sed -i -e '/reporters/I s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/public_suffix/public_suffix-4.0.1.ebuild b/dev-ruby/public_suffix/public_suffix-4.0.1.ebuild
deleted file mode 100644
index dbf7b8c559eb..000000000000
--- a/dev-ruby/public_suffix/public_suffix-4.0.1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Parse and decompose a domain name into top level domain, domain and subdomains"
-HOMEPAGE="https://simonecarletti.com/code/publicsuffix-ruby/"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-LICENSE="MIT"
-SLOT="4"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/mocha )"
-
-all_ruby_prepare() {
- sed -i -e '/rubocop/I s:^:#:' \
- -e '/yardoc/,/CLOBBER.include/ s:^:#:' \
- -e '/bundler/ s:^:#:' Rakefile || die
- sed -i -e '/reporters/I s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/public_suffix/public_suffix-4.0.7.ebuild b/dev-ruby/public_suffix/public_suffix-4.0.7.ebuild
new file mode 100644
index 000000000000..30c96ea38f8b
--- /dev/null
+++ b/dev-ruby/public_suffix/public_suffix-4.0.7.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Parse and decompose a domain name into top level domain, domain and subdomains"
+HOMEPAGE="https://simonecarletti.com/code/publicsuffix-ruby/"
+
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/mocha:2 )"
+
+all_ruby_prepare() {
+ sed -i -e '/rubocop/I s:^:#:' \
+ -e '/yard/,/CLOBBER.include/ s:^:#:' \
+ -e '/bundler/ s:^:#:' Rakefile || die
+ sed -i -e '/reporters/I s:^:#:' test/test_helper.rb || die
+}
diff --git a/dev-ruby/public_suffix/public_suffix-5.0.3.ebuild b/dev-ruby/public_suffix/public_suffix-5.0.3.ebuild
new file mode 100644
index 000000000000..30c96ea38f8b
--- /dev/null
+++ b/dev-ruby/public_suffix/public_suffix-5.0.3.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Parse and decompose a domain name into top level domain, domain and subdomains"
+HOMEPAGE="https://simonecarletti.com/code/publicsuffix-ruby/"
+
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/mocha:2 )"
+
+all_ruby_prepare() {
+ sed -i -e '/rubocop/I s:^:#:' \
+ -e '/yard/,/CLOBBER.include/ s:^:#:' \
+ -e '/bundler/ s:^:#:' Rakefile || die
+ sed -i -e '/reporters/I s:^:#:' test/test_helper.rb || die
+}
diff --git a/dev-ruby/public_suffix/public_suffix-5.0.4.ebuild b/dev-ruby/public_suffix/public_suffix-5.0.4.ebuild
new file mode 100644
index 000000000000..6492c9b38017
--- /dev/null
+++ b/dev-ruby/public_suffix/public_suffix-5.0.4.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+RUBY_FAKEGEM_GEMSPEC="public_suffix.gemspec"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Parse and decompose a domain name into top level domain, domain and subdomains"
+HOMEPAGE="https://simonecarletti.com/code/publicsuffix-ruby/"
+SRC_URI="https://github.com/weppos/publicsuffix-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="publicsuffix-ruby-${PV}"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/mocha:2 )"
+
+all_ruby_prepare() {
+ sed -e 's:_relative ": "./:' \
+ -e 's/__dir__/"."/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '/rubocop/I s:^:#:' \
+ -e '/yard/,/CLOBBER.include/ s:^:#:' \
+ -e '/bundler/ s:^:#:' Rakefile || die
+ sed -i -e '/reporters/I s:^:#:' test/test_helper.rb || die
+}
diff --git a/dev-ruby/public_suffix/public_suffix-5.0.5.ebuild b/dev-ruby/public_suffix/public_suffix-5.0.5.ebuild
new file mode 100644
index 000000000000..005e30ea60ff
--- /dev/null
+++ b/dev-ruby/public_suffix/public_suffix-5.0.5.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+RUBY_FAKEGEM_GEMSPEC="public_suffix.gemspec"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Parse and decompose a domain name into top level domain, domain and subdomains"
+HOMEPAGE="https://simonecarletti.com/code/publicsuffix-ruby/"
+SRC_URI="https://github.com/weppos/publicsuffix-ruby/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="publicsuffix-ruby-${PV}"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+
+ruby_add_bdepend "test? ( dev-ruby/mocha:2 )"
+
+all_ruby_prepare() {
+ sed -e 's:_relative ": "./:' \
+ -e 's/__dir__/"."/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '/rubocop/I s:^:#:' \
+ -e '/yard/,/CLOBBER.include/ s:^:#:' \
+ -e '/bundler/ s:^:#:' Rakefile || die
+ sed -i -e '/reporters/I s:^:#:' test/test_helper.rb || die
+}
diff --git a/dev-ruby/pundit/Manifest b/dev-ruby/pundit/Manifest
index 9b54a0c4f7f9..313c1c6b5db3 100644
--- a/dev-ruby/pundit/Manifest
+++ b/dev-ruby/pundit/Manifest
@@ -1,4 +1,2 @@
-DIST pundit-1.1.0.gem 22016 BLAKE2B 912f359cb4530c4f65622c3a7bee48a7d84757e4c8327398dbb4e4e170a35f4811c018224aac752b6c2ae54bc93e65b5e0b46f0bb191da57355b55ea0e8d0eaa SHA512 ea7e8ef9e4b280f451810ba193dc5b27a75ecfb050eed674246034ebb687e8302aee8826c022090553b643b41c85adec4d3234f545ab2a59ececa461fe4e4b3a
-DIST pundit-2.0.0.gem 25088 BLAKE2B 8fc4e0d40a56fa05f04b7a79e33039d08987a0df3b150f77c7428cdc10fb847477f1a04e7cd7772c86063d3095904202207e11e87a01766bc643e7befaee9957 SHA512 e6b37896e107a14fe40380a3a4e00f90fe7ef4f62bab252b4cb8b9854e5cba062d0d9680f9c9cb224384dc186f9ff3d5acca367d93a1cea297d63b422da689eb
-DIST pundit-2.0.1.gem 25088 BLAKE2B 6304a2ae057edf14131d93ec85d879dfd93491c2bcce159522e166743bf0498425996db203c25d0bb7e57c3ba5c5db6c1db2722e7c3f940f5ef2b7ec6ec5f561 SHA512 8a4efe44741d13696555e18b8f2b0f5ceaafd0b38d6cdf24b9f64596fdf1c0aa9cec607fd3771c634b7817d204e4217f52902e69057174cd1bf06833483e373f
-DIST pundit-2.1.0.gem 25600 BLAKE2B f8284e326a68475fe4c733de85597ba91e376d37e5dd24d97c1a8da2ab7f15d2cf35cf76688370f1a96c00f8ce89df2d2bb6b3c6de1ae33d6cdfe1ffd1926e3f SHA512 3201cb3acca8301a0e07fa9bd58617ee32074842e873a85a31d9b56fac5bd93c4a78d94d8b57556a011f1713712eb484ef3281d68ae3acf1c8bf1bce13f47e0c
+DIST pundit-2.3.0.gem 27136 BLAKE2B 651f008426ce010c8a5be8543cde5c91f1bb8c6513e08cde4c4fda965fa95647f130d0a68094107be0b0c639ab520a74da0c2a50715ec5bd86a7a9243cf53686 SHA512 5a2c8563ab8402d3454afae499368b06d0a7ce23b59fdade3034da06604b025a567c4f9bc745bbc8a51226d768fad99b9057ff38c2930258d943265053a09636
+DIST pundit-2.3.1.gem 27648 BLAKE2B f81bececa11fb4df90779e7a92abb3854f77e47207afb162fdbaac1b23448018b04a35808bac7857e4f766eab949802a58b16ba8ed2331ccd3457a88826fda0d SHA512 dc919a8879aa613efa1b3ebf0c9a3673a060d50814a5ec6b3cc4120dceda407e483d9c265d08d5bf4a1cbe56a0ea698ecbc485f24fe0325a9b90635bc1cc125a
diff --git a/dev-ruby/pundit/metadata.xml b/dev-ruby/pundit/metadata.xml
index fd876cbc8d90..a4b9e2f5d6cf 100644
--- a/dev-ruby/pundit/metadata.xml
+++ b/dev-ruby/pundit/metadata.xml
@@ -1,12 +1,12 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">elabs/pundit</remote-id>
+ <remote-id type="github">varvet/pundit</remote-id>
<remote-id type="rubygems">pundit</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/pundit/pundit-1.1.0.ebuild b/dev-ruby/pundit/pundit-1.1.0.ebuild
deleted file mode 100644
index 4188266e157f..000000000000
--- a/dev-ruby/pundit/pundit-1.1.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="doc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Object oriented authorization for Rails applications"
-HOMEPAGE="https://github.com/elabs/pundit https://rubygems.org/gems/pundit"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-3.0.0:*"
-
-ruby_add_bdepend "test? ( >=dev-ruby/actionpack-3.0.0
- >=dev-ruby/activemodel-3.0.0 )"
-
-all_ruby_prepare() {
- sed -i -e "/pry/d" spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/pundit/pundit-2.0.0.ebuild b/dev-ruby/pundit/pundit-2.0.0.ebuild
deleted file mode 100644
index f26d3265c8b5..000000000000
--- a/dev-ruby/pundit/pundit-2.0.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="doc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Object oriented authorization for Rails applications"
-HOMEPAGE="https://github.com/elabs/pundit https://rubygems.org/gems/pundit"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-3.0.0:*"
-
-ruby_add_bdepend "test? ( >=dev-ruby/actionpack-3.0.0
- >=dev-ruby/activemodel-3.0.0 )"
-
-all_ruby_prepare() {
- sed -i -e "/pry/d" spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/pundit/pundit-2.0.1.ebuild b/dev-ruby/pundit/pundit-2.0.1.ebuild
deleted file mode 100644
index 9c4761ec8ec0..000000000000
--- a/dev-ruby/pundit/pundit-2.0.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="doc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Object oriented authorization for Rails applications"
-HOMEPAGE="https://github.com/elabs/pundit https://rubygems.org/gems/pundit"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-3.0.0:*"
-
-ruby_add_bdepend "test? ( >=dev-ruby/actionpack-3.0.0
- >=dev-ruby/activemodel-3.0.0 )"
-
-all_ruby_prepare() {
- sed -i -e "/pry/d" spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/pundit/pundit-2.1.0.ebuild b/dev-ruby/pundit/pundit-2.1.0.ebuild
deleted file mode 100644
index 494728cf157b..000000000000
--- a/dev-ruby/pundit/pundit-2.1.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Object oriented authorization for Rails applications"
-HOMEPAGE="https://github.com/elabs/pundit https://rubygems.org/gems/pundit"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-3.0.0:*"
-
-ruby_add_bdepend "test? ( >=dev-ruby/actionpack-3.0.0
- >=dev-ruby/activemodel-3.0.0 )"
-
-all_ruby_prepare() {
- sed -i -e "/pry/d" spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/pundit/pundit-2.3.0.ebuild b/dev-ruby/pundit/pundit-2.3.0.ebuild
new file mode 100644
index 000000000000..4c7a17a0feb1
--- /dev/null
+++ b/dev-ruby/pundit/pundit-2.3.0.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Object oriented authorization for Rails applications"
+HOMEPAGE="https://github.com/varvet/pundit https://rubygems.org/gems/pundit"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/activesupport-3.0.0:*"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/actionpack-3.0.0
+ >=dev-ruby/activemodel-3.0.0
+ >=dev-ruby/railties-3.0.0
+)"
+
+all_ruby_prepare() {
+ sed -i -e "/pry/d" -e '/simplecov/,/^end/ s:^:#:' -e '2igem "rack", "~> 2.0"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/pundit/pundit-2.3.1.ebuild b/dev-ruby/pundit/pundit-2.3.1.ebuild
new file mode 100644
index 000000000000..4c7a17a0feb1
--- /dev/null
+++ b/dev-ruby/pundit/pundit-2.3.1.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Object oriented authorization for Rails applications"
+HOMEPAGE="https://github.com/varvet/pundit https://rubygems.org/gems/pundit"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/activesupport-3.0.0:*"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/actionpack-3.0.0
+ >=dev-ruby/activemodel-3.0.0
+ >=dev-ruby/railties-3.0.0
+)"
+
+all_ruby_prepare() {
+ sed -i -e "/pry/d" -e '/simplecov/,/^end/ s:^:#:' -e '2igem "rack", "~> 2.0"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/puppet-resource_api/Manifest b/dev-ruby/puppet-resource_api/Manifest
new file mode 100644
index 000000000000..264c8fd200e7
--- /dev/null
+++ b/dev-ruby/puppet-resource_api/Manifest
@@ -0,0 +1,2 @@
+DIST puppet-resource_api-1.8.16.tar.gz 167691 BLAKE2B 58aad4a73ef76fbccab580c1500b4af6a472f9bc9b7b0b1c592626abb837af6b34697194b5da884f87ce306f00f23d6f17ff7926e88ca2df3b0cd5770c819e9c SHA512 b60575d0e4f87425d028429403dd5524e39cb5ffea338871f7c5296d7e632d4eebc6786bdb7005e5c1be5e962115903b11dc9645dacd4d040d3afa43606a3ea2
+DIST puppet-resource_api-1.9.0.tar.gz 168292 BLAKE2B 469c59c07e22d7bb9cd9c00bb95b3efe5af8a1a985155ec5a0286f912a5afa95504d7fa9f24c6b00307d88e06dce035021f4c8570c9a7a81de7f5e195d1a4719 SHA512 009900910fc83bbc5d96d51d5d069a527c271786143c080774d90d6ba89f5451a2a949965f852a83a7d4ac964a9db0756c7f698d4f3f6c7631e4164ff545f9c6
diff --git a/dev-ruby/puppet-resource_api/metadata.xml b/dev-ruby/puppet-resource_api/metadata.xml
new file mode 100644
index 000000000000..706558282ad9
--- /dev/null
+++ b/dev-ruby/puppet-resource_api/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+ <name>Robin H. Johnson</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">puppetlabs/puppet-resource_api</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/puppet-resource_api/puppet-resource_api-1.8.16-r1.ebuild b/dev-ruby/puppet-resource_api/puppet-resource_api-1.8.16-r1.ebuild
new file mode 100644
index 000000000000..9c04a8628ae6
--- /dev/null
+++ b/dev-ruby/puppet-resource_api/puppet-resource_api-1.8.16-r1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md CONTRIBUTING.md HISTORY.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+# rspec tests have dependencies not packaged in Gentoo at this time:
+# puppetlabs_spec_helper
+# CFPropertyList
+# simplecov-console
+# spec-puppet
+# rubocop
+# rubocop-rspec
+# license_finder
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="This library provides a simple way to write new native resources for puppet."
+HOMEPAGE="https://rubygems.org/gems/puppet-resource_api https://github.com/puppetlabs/puppet-resource_api"
+LICENSE="MIT"
+# 2023/03/19: .gem does not contain specfiles, and lags behind GitHub releases.
+SRC_URI="https://github.com/puppetlabs/puppet-resource_api/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ # the gemspec tries to system(git ls-files) but has a meaningful fallback, so just make it not run git.
+ sed -i -e '/git --help/s,git,false git,g' \
+ "${RUBY_FAKEGEM_GEMSPEC}" \
+ || die
+}
+
+ruby_add_rdepend ">=dev-ruby/hocon-1.0"
diff --git a/dev-ruby/puppet-resource_api/puppet-resource_api-1.9.0.ebuild b/dev-ruby/puppet-resource_api/puppet-resource_api-1.9.0.ebuild
new file mode 100644
index 000000000000..194148a7cf54
--- /dev/null
+++ b/dev-ruby/puppet-resource_api/puppet-resource_api-1.9.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md CONTRIBUTING.md HISTORY.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+# rspec tests have dependencies not packaged in Gentoo at this time:
+# puppetlabs_spec_helper
+# CFPropertyList
+# simplecov-console
+# spec-puppet
+# rubocop
+# rubocop-rspec
+# license_finder
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="This library provides a simple way to write new native resources for puppet."
+HOMEPAGE="https://rubygems.org/gems/puppet-resource_api https://github.com/puppetlabs/puppet-resource_api"
+LICENSE="MIT"
+# 2023/03/19: .gem does not contain specfiles, and lags behind GitHub releases.
+SRC_URI="https://github.com/puppetlabs/puppet-resource_api/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ # the gemspec tries to system(git ls-files) but has a meaningful fallback, so just make it not run git.
+ sed -e 's:__FILE__:"puppet-resource_api.gemspec":' \
+ -e 's/__dir__/"."/' \
+ -i "${RUBY_FAKEGEM_GEMSPEC}" \
+ || die
+}
+
+ruby_add_rdepend ">=dev-ruby/hocon-1.0"
diff --git a/dev-ruby/puppet_forge/Manifest b/dev-ruby/puppet_forge/Manifest
index bf3e113a4622..d4bcf25582ce 100644
--- a/dev-ruby/puppet_forge/Manifest
+++ b/dev-ruby/puppet_forge/Manifest
@@ -1,2 +1,5 @@
-DIST puppet_forge-2.2.9.gem 772608 BLAKE2B 15cad2cc183688262b96a35af46324a3264b8a615fa414bddb6b55587ac30f4fdcc64ddaa0f18b66571bde1a1eb17339bf1fad1630f3a06b6c1575cdbf1c9140 SHA512 753ad4b95db25c1ad284ceb802b03db9724f2a1c1f4522f252428f8ae7c6771361b6a38d070c2ce989bec9538471529cdd92c925501a0f8f4f1bb5e6d8ef3733
-DIST puppet_forge-2.3.0.gem 773632 BLAKE2B 6024eed4c7b62c19c04d4f45a03dd40fa14bf074a1c44c14c766527bc3f4937bd9ac553df14b432834fd3bafa8f680d8b677ccfe6b366b954336888cb9f25aff SHA512 7b14b006562874524c7a5045ae44fc7c3ac932aa32beb3751a6c18e3498401dc22294a81386d2ee25d5f8618efaa425b51798daec6f12193916c76dd28aafe85
+DIST puppet_forge-3.2.0.gem 771072 BLAKE2B dd304297aa65dc0f36f837e27abf255a0474fc2216fa72ac3203febeb4085024f4d155e93a91646d1e7828fe67a5a421b2c75bb638deb846c5d337dfe11eafc9 SHA512 dfa82d96f44fb8247f39155c942bf20aec6a4a2833959c877ec98b150553076dd72112b6d1230fa7ae1acef7f648017a8446c3e952680f8d4a6411d2fc8055dc
+DIST puppet_forge-4.1.0.gem 772096 BLAKE2B 2d6f0af8baa067f79eb113f0de9596c562cdda678587fdd1cb14960535ded5fdbafb2b5ff0ebbd6ae676fb10d766f949b599b43c9b04dac55fc28b8163ef1383 SHA512 f752069d8b1998b3d27745abe3e6ad87a24ef614a68b52af2235a0587f98c69d8e39d2637640431f64d5c91ce468e3a2e2452b6ce8fa91d83b00c20ad047ae33
+DIST puppet_forge-5.0.1.gem 774144 BLAKE2B 2770c0609d93b3518017b36344025dbd7ab51360fea4af8f7ee610f4117f31de25698ad192ab00755564f0a57d9e6b041a7568440dbc5b47e2830a8cb00cd8f8 SHA512 3d29c166e1c22d7b4d45251866fbd8e6756a3026be5e17b1abe8cd6baaa7af4ddde7f2d07b75c21c5716c545cc6df82e36b1070a43a3d3c363214d3a5102843b
+DIST puppet_forge-5.0.2.gem 774144 BLAKE2B 6b01872246dc4791f78cefcb9df213df5768df483c8fac4bad12ddf358210ecb2b827ad129790e37d636ce4d7d0abb381097ffd2ee518a8472b067f5ba6de0a5 SHA512 861ac99a3e5234a8555fe37329b621135140d41c0fbad69648f56b901b10254d0474494c64525ebc4a0b730dfa91e9889ea4cf6ca7e2d5e40453221dd2e7370d
+DIST puppet_forge-5.0.3.gem 776704 BLAKE2B 2ea9e6a17fb5231629551b4dc2ca02f4843d67ded114f43a9891dba6a7ce03ab0b1b8ed38b434e8bcdfc73e940a263964a8254ba18493a137bd14600c3251a18 SHA512 17cb9aaf9c911608b90f2eb3e2561d94bffdfec559cb22bb0fa53d799f4a53f77c332ec261270135a924a4996d35b39945a4a94f7163b44dd9bb10f6ea72366f
diff --git a/dev-ruby/puppet_forge/files/puppet_forge-5.0.1-typhoeus.patch b/dev-ruby/puppet_forge/files/puppet_forge-5.0.1-typhoeus.patch
new file mode 100644
index 000000000000..3f39e97afe8c
--- /dev/null
+++ b/dev-ruby/puppet_forge/files/puppet_forge-5.0.1-typhoeus.patch
@@ -0,0 +1,14 @@
+Typhoeus support only works then the faraday-typhoeus package is installed.
+https://github.com/typhoeus/typhoeus/issues/709
+
+--- a/lib/puppet_forge/connection.rb 2023-09-09 09:02:03.981164238 +0200
++++ b/lib/puppet_forge/connection.rb 2023-09-09 09:03:56.506144279 +0200
+@@ -82,7 +82,7 @@
+
+ begin
+ # Use Typhoeus if available.
+- Gem::Specification.find_by_name('typhoeus', '~> 1.4')
++ Gem::Specification.find_by_name('typhoeus', '~> 1.4') && Gem::Specification.find_by_name('faraday-typhoeus')
+ require 'typhoeus/adapters/faraday'
+ adapter = :typhoeus
+ rescue Gem::LoadError
diff --git a/dev-ruby/puppet_forge/metadata.xml b/dev-ruby/puppet_forge/metadata.xml
index 4c2806a19ef9..657bae65d2f0 100644
--- a/dev-ruby/puppet_forge/metadata.xml
+++ b/dev-ruby/puppet_forge/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/puppet_forge/puppet_forge-2.2.9-r1.ebuild b/dev-ruby/puppet_forge/puppet_forge-2.2.9-r1.ebuild
deleted file mode 100644
index 6b44120c448e..000000000000
--- a/dev-ruby/puppet_forge/puppet_forge-2.2.9-r1.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL=locales
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Tools to access Forge API information on Modules, Users, and Releases"
-HOMEPAGE="https://github.com/puppetlabs/forge-ruby"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/faraday-0.9.0:0
- >=dev-ruby/faraday_middleware-0.9.0:0
- >=dev-ruby/gettext-setup-0.11:0
- dev-ruby/minitar
- =dev-ruby/semantic_puppet-1*
-"
-
-all_ruby_prepare() {
- # Avoid integration and user specs since they all require network access
- rm -rf spec/integration spec/unit/forge/v3/user_spec.rb || die
-
- # Fix overly restrictive dependencies
- sed -i \
- -e '/faraday/ s/0.14.0/0.99.0/' \
- -e '/faraday_middleware/ s/0.13.0/0.99.0/' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
-
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/puppet_forge/puppet_forge-2.3.0.ebuild b/dev-ruby/puppet_forge/puppet_forge-2.3.0.ebuild
deleted file mode 100644
index b506f5ec6bf9..000000000000
--- a/dev-ruby/puppet_forge/puppet_forge-2.3.0.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL=locales
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Tools to access Forge API information on Modules, Users, and Releases"
-HOMEPAGE="https://github.com/puppetlabs/forge-ruby"
-
-LICENSE="Apache-2.0"
-SLOT="2"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/faraday-0.9.0:0
- >=dev-ruby/faraday_middleware-0.9.0:0
- >=dev-ruby/gettext-setup-0.11:0
- dev-ruby/minitar
- =dev-ruby/semantic_puppet-1*
-"
-
-all_ruby_prepare() {
- # Avoid integration and user specs since they all require network access
- rm -rf spec/integration spec/unit/forge/v3/user_spec.rb || die
-
- # Fix overly restrictive dependencies
- sed -i \
- -e '/faraday/ s/0.14.0/0.99.0/' \
- -e '/faraday_middleware/ s/0.13.0/0.99.0/' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
-
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/puppet_forge/puppet_forge-3.2.0.ebuild b/dev-ruby/puppet_forge/puppet_forge-3.2.0.ebuild
new file mode 100644
index 000000000000..bb3d5751ca63
--- /dev/null
+++ b/dev-ruby/puppet_forge/puppet_forge-3.2.0.ebuild
@@ -0,0 +1,37 @@
+# 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_EXTRADOC="README.md CHANGELOG.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tools to access Forge API information on Modules, Users, and Releases"
+HOMEPAGE="https://github.com/puppetlabs/forge-ruby"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/faraday-1.3:1
+ dev-ruby/faraday_middleware:1
+ dev-ruby/minitar
+ =dev-ruby/semantic_puppet-1*
+"
+
+all_ruby_prepare() {
+ # Avoid integration and user specs since they all require network access
+ rm -rf spec/integration spec/unit/forge/v3/user_spec.rb || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '1igem "faraday", "<2"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/puppet_forge/puppet_forge-4.1.0.ebuild b/dev-ruby/puppet_forge/puppet_forge-4.1.0.ebuild
new file mode 100644
index 000000000000..ff6f1063b086
--- /dev/null
+++ b/dev-ruby/puppet_forge/puppet_forge-4.1.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="ruby31"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tools to access Forge API information on Modules, Users, and Releases"
+HOMEPAGE="https://github.com/puppetlabs/forge-ruby"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/faraday:2
+ >=dev-ruby/faraday-follow_redirects-0.3.0:0.3
+ dev-ruby/minitar
+ =dev-ruby/semantic_puppet-1*
+"
+
+all_ruby_prepare() {
+ # Avoid integration and user specs since they all require network access
+ rm -rf spec/integration spec/unit/forge/v3/user_spec.rb || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid specs that are broken when typhoeus is installed
+ rm -f spec/unit/forge/connection_spec.rb spec/unit/forge/v3/{base,release}_spec.rb || die
+}
diff --git a/dev-ruby/puppet_forge/puppet_forge-5.0.1-r1.ebuild b/dev-ruby/puppet_forge/puppet_forge-5.0.1-r1.ebuild
new file mode 100644
index 000000000000..dc80c18aca40
--- /dev/null
+++ b/dev-ruby/puppet_forge/puppet_forge-5.0.1-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tools to access Forge API information on Modules, Users, and Releases"
+HOMEPAGE="https://github.com/puppetlabs/forge-ruby"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+PATCHES=( "${FILESDIR}/${P}-typhoeus.patch" )
+
+ruby_add_rdepend "
+ dev-ruby/faraday:2
+ >=dev-ruby/faraday-follow_redirects-0.3.0:0.3
+ dev-ruby/minitar
+ =dev-ruby/semantic_puppet-1*
+"
+
+all_ruby_prepare() {
+ # Avoid integration and user specs since they all require network access
+ rm -rf spec/integration spec/unit/forge/v3/user_spec.rb || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/puppet_forge/puppet_forge-5.0.2.ebuild b/dev-ruby/puppet_forge/puppet_forge-5.0.2.ebuild
new file mode 100644
index 000000000000..642b012de688
--- /dev/null
+++ b/dev-ruby/puppet_forge/puppet_forge-5.0.2.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tools to access Forge API information on Modules, Users, and Releases"
+HOMEPAGE="https://github.com/puppetlabs/forge-ruby"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+PATCHES=( "${FILESDIR}/${PN}-5.0.1-typhoeus.patch" )
+
+ruby_add_rdepend "
+ dev-ruby/faraday:2
+ >=dev-ruby/faraday-follow_redirects-0.3.0:0.3
+ dev-ruby/minitar
+ =dev-ruby/semantic_puppet-1*
+"
+
+all_ruby_prepare() {
+ # Avoid integration and user specs since they all require network access
+ rm -rf spec/integration spec/unit/forge/v3/user_spec.rb || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/puppet_forge/puppet_forge-5.0.3.ebuild b/dev-ruby/puppet_forge/puppet_forge-5.0.3.ebuild
new file mode 100644
index 000000000000..ece4d8e764fe
--- /dev/null
+++ b/dev-ruby/puppet_forge/puppet_forge-5.0.3.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tools to access Forge API information on Modules, Users, and Releases"
+HOMEPAGE="https://github.com/puppetlabs/forge-ruby"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+
+PATCHES=( "${FILESDIR}/${PN}-5.0.1-typhoeus.patch" )
+
+ruby_add_rdepend "
+ dev-ruby/faraday:2
+ >=dev-ruby/faraday-follow_redirects-0.3.0:0.3
+ dev-ruby/minitar
+ =dev-ruby/semantic_puppet-1*
+"
+
+all_ruby_prepare() {
+ # Avoid integration and user specs since they all require network access
+ rm -rf spec/integration spec/unit/forge/v3/user_spec.rb || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/puppetdb-termini/Manifest b/dev-ruby/puppetdb-termini/Manifest
index 398f7e24a809..499d174ef44d 100644
--- a/dev-ruby/puppetdb-termini/Manifest
+++ b/dev-ruby/puppetdb-termini/Manifest
@@ -1,3 +1,4 @@
-DIST puppetdb-termini_6.3.4-1stretch_all.deb 20680 BLAKE2B 41d64eb7a13a0036323b916a70cebdc1d522175e1b6460a0df577b35d57bdfd2eba76784e7af314336d618e7445639e12ec369f243d10b5120ef5006fa21efd3 SHA512 06ce200b4d919d99c28f5361993ca9a641f38d27b1e775db7f1edd10515b75ea131770f3e03a1e3f9d3b32cb8e6f32f6995a6df1e6b3f24d4601585db48a9d8b
-DIST puppetdb-termini_6.4.0-1stretch_all.deb 20680 BLAKE2B ccd129eb8510794c165b6fa88ed391006e583e58fb43fe1be72e1b976d75f30aee0775552f6460840b805e1e4ceb03a6c77dba70afeed75dc2ea3ebcfd4bee77 SHA512 948b5ccd1ddc1f0d52174a073cd13af9e1ba0f713c5326c4d3cbfae7daeeb16cb05efdfb7ac572f9d79e34842fca0a95e054ee49239d593bf4429223c18bb58c
-DIST puppetdb-termini_6.5.0-1stretch_all.deb 20870 BLAKE2B 41cf79f2b7ce218fdfbce2588d8e206a3751ffb07a133bc5ddef3f5662c51eb9d12cda3017921edd4aafc064ff35713daaea9542dac687b3f399f2706657131f SHA512 956952bbc81cbcabd8ef3e37b9ebc7c489c90da7b75ff2c9a3e36cd312ee3f7eb3350cbf21a8b44f1d6722ddd3168f5795ba7258147f340a111b9dc29796cd84
+DIST puppetdb-termini_7.13.0-1bullseye_all.deb 22548 BLAKE2B 535a3f846a7a10dcfaec4447ae852c6c4d870a573169f84e31f61c361164caea989f911df2d18e183c391dd0130a10b9422057eecaab304bebbb022f78e22a21 SHA512 3c8e440bfc55579d0c9a03ecae516d4cef49512ad9fdd6fceef37618c163ecac6d77a2b17b6cbb7131ceb3787904486bb78eef84a36a5f76672918db6d30db86
+DIST puppetdb-termini_8.2.0-1focal_all.deb 21850 BLAKE2B 3f2d35a24c3884fdc985cd22e2c27d159dbea80272f5d1510634fc3b93079fd33e2b4f19963e2e122eb25829aa118ac13a84d6838c73ccb54305afc7876f8fc6 SHA512 ebf05f85d4bd455498a40b0210a6fc0cbfed4d0991d5a3d5780eb1b99a2f93f64407d6465d010c53ff55a0a3fcfab6f411c851d95a9e028945634644baef5163
+DIST puppetdb-termini_8.4.1-1focal_all.deb 21900 BLAKE2B 9d17deaaa0bc27aafdd20cc91aff9d7b9fac92fe6c7c536d6f606eedee5e30870325cd50e3f26e29c70865d7d0c9e5f6774179d6a9c10e84c7f08886837a5f91 SHA512 9f261efc3f6140cc8fc637fd7c9ee69c64bf06591581dada8b2aa95d25621b1165673786f8ee55d669e134fcf3676557adf5cbcad30c4e8a1447dd111dc486e4
+DIST puppetdb-termini_8.5.0-1focal_all.deb 22142 BLAKE2B e32985eee15ffc44dee5626c51edd09de2a6b2b936c8fb9308d34884871d693b246983056d2791a29341e450ba525a419c818b22390aa22cc9efd85696a1e007 SHA512 c4afc5618f83db64b083953a38070660ff4087141e09ff02ce218416eda53e6c16bf6c9f5eab2ebd2721f086c477902ebb1b34b2556eafdeb8f4d4260d9e9f00
diff --git a/dev-ruby/puppetdb-termini/metadata.xml b/dev-ruby/puppetdb-termini/metadata.xml
index 85d0a4939e43..cfd043dcb1fb 100644
--- a/dev-ruby/puppetdb-termini/metadata.xml
+++ b/dev-ruby/puppetdb-termini/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>prometheanfire@gentoo.org</email>
@@ -9,7 +9,4 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
- <longdescription lang="en">
- puppet plugin used to connect to puppetdb
- </longdescription>
</pkgmetadata>
diff --git a/dev-ruby/puppetdb-termini/puppetdb-termini-6.3.4.ebuild b/dev-ruby/puppetdb-termini/puppetdb-termini-6.3.4.ebuild
deleted file mode 100644
index 5dea78fa68fc..000000000000
--- a/dev-ruby/puppetdb-termini/puppetdb-termini-6.3.4.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit unpacker
-
-DESCRIPTION="Library needed to connect puppet to puppetdb"
-HOMEPAGE="http://docs.puppetlabs.com/puppetdb/"
-SRC_URI="http://apt.puppetlabs.com/pool/stretch/puppet/${PN:0:1}/${PN}/${PN}_${PV}-1stretch_all.deb"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE=""
-# will need the same keywords as puppet
-KEYWORDS="amd64 ~ppc x86"
-
-RDEPEND+=""
-DEPEND+=""
-
-S=${WORKDIR}
-
-src_install() {
- insinto opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/
- doins -r opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/*
-}
diff --git a/dev-ruby/puppetdb-termini/puppetdb-termini-6.4.0.ebuild b/dev-ruby/puppetdb-termini/puppetdb-termini-6.4.0.ebuild
deleted file mode 100644
index 5dea78fa68fc..000000000000
--- a/dev-ruby/puppetdb-termini/puppetdb-termini-6.4.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit unpacker
-
-DESCRIPTION="Library needed to connect puppet to puppetdb"
-HOMEPAGE="http://docs.puppetlabs.com/puppetdb/"
-SRC_URI="http://apt.puppetlabs.com/pool/stretch/puppet/${PN:0:1}/${PN}/${PN}_${PV}-1stretch_all.deb"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE=""
-# will need the same keywords as puppet
-KEYWORDS="amd64 ~ppc x86"
-
-RDEPEND+=""
-DEPEND+=""
-
-S=${WORKDIR}
-
-src_install() {
- insinto opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/
- doins -r opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/*
-}
diff --git a/dev-ruby/puppetdb-termini/puppetdb-termini-6.5.0.ebuild b/dev-ruby/puppetdb-termini/puppetdb-termini-6.5.0.ebuild
deleted file mode 100644
index 6d51b944dfdb..000000000000
--- a/dev-ruby/puppetdb-termini/puppetdb-termini-6.5.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit unpacker
-
-DESCRIPTION="Library needed to connect puppet to puppetdb"
-HOMEPAGE="http://docs.puppetlabs.com/puppetdb/"
-SRC_URI="http://apt.puppetlabs.com/pool/stretch/puppet/${PN:0:1}/${PN}/${PN}_${PV}-1stretch_all.deb"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-IUSE=""
-# will need the same keywords as puppet
-KEYWORDS="~amd64 ~ppc ~x86"
-
-RDEPEND+=""
-DEPEND+=""
-
-S=${WORKDIR}
-
-src_install() {
- insinto opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/
- doins -r opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/*
-}
diff --git a/dev-ruby/puppetdb-termini/puppetdb-termini-7.13.0.ebuild b/dev-ruby/puppetdb-termini/puppetdb-termini-7.13.0.ebuild
new file mode 100644
index 000000000000..a2b827c8e1b2
--- /dev/null
+++ b/dev-ruby/puppetdb-termini/puppetdb-termini-7.13.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby26 ruby27 ruby30 ruby31"
+
+inherit unpacker
+
+DESCRIPTION="Library needed to connect puppet to puppetdb"
+HOMEPAGE="https://puppet.com/docs/puppetdb/latest/index.html"
+SRC_URI="http://apt.puppetlabs.com/pool/bullseye/puppet/${PN:0:1}/${PN}/${PN}_${PV}-1bullseye_all.deb"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+# will need the same keywords as puppet
+KEYWORDS="amd64 ~arm64 ~ppc x86"
+
+RDEPEND+=""
+DEPEND+=""
+
+S=${WORKDIR}
+
+src_install() {
+ insinto opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/
+ doins -r opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/*
+}
diff --git a/dev-ruby/puppetdb-termini/puppetdb-termini-8.2.0.ebuild b/dev-ruby/puppetdb-termini/puppetdb-termini-8.2.0.ebuild
new file mode 100644
index 000000000000..c55da78154ac
--- /dev/null
+++ b/dev-ruby/puppetdb-termini/puppetdb-termini-8.2.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby31 ruby32"
+
+inherit unpacker
+
+DESCRIPTION="Library needed to connect puppet to puppetdb"
+HOMEPAGE="https://puppet.com/docs/puppetdb/latest/index.html"
+SRC_URI="http://apt.puppetlabs.com/pool/focal/puppet8/${PN:0:1}/${PN}/${PN}_${PV}-1focal_all.deb"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+# will need the same keywords as puppet
+KEYWORDS="amd64 ~arm64 ~ppc x86"
+
+RDEPEND+=""
+DEPEND+=""
+
+S=${WORKDIR}
+
+src_install() {
+ insinto opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/
+ doins -r opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/*
+}
diff --git a/dev-ruby/puppetdb-termini/puppetdb-termini-8.4.1.ebuild b/dev-ruby/puppetdb-termini/puppetdb-termini-8.4.1.ebuild
new file mode 100644
index 000000000000..c55da78154ac
--- /dev/null
+++ b/dev-ruby/puppetdb-termini/puppetdb-termini-8.4.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby31 ruby32"
+
+inherit unpacker
+
+DESCRIPTION="Library needed to connect puppet to puppetdb"
+HOMEPAGE="https://puppet.com/docs/puppetdb/latest/index.html"
+SRC_URI="http://apt.puppetlabs.com/pool/focal/puppet8/${PN:0:1}/${PN}/${PN}_${PV}-1focal_all.deb"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+# will need the same keywords as puppet
+KEYWORDS="amd64 ~arm64 ~ppc x86"
+
+RDEPEND+=""
+DEPEND+=""
+
+S=${WORKDIR}
+
+src_install() {
+ insinto opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/
+ doins -r opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/*
+}
diff --git a/dev-ruby/puppetdb-termini/puppetdb-termini-8.5.0.ebuild b/dev-ruby/puppetdb-termini/puppetdb-termini-8.5.0.ebuild
new file mode 100644
index 000000000000..c55da78154ac
--- /dev/null
+++ b/dev-ruby/puppetdb-termini/puppetdb-termini-8.5.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby31 ruby32"
+
+inherit unpacker
+
+DESCRIPTION="Library needed to connect puppet to puppetdb"
+HOMEPAGE="https://puppet.com/docs/puppetdb/latest/index.html"
+SRC_URI="http://apt.puppetlabs.com/pool/focal/puppet8/${PN:0:1}/${PN}/${PN}_${PV}-1focal_all.deb"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+# will need the same keywords as puppet
+KEYWORDS="amd64 ~arm64 ~ppc x86"
+
+RDEPEND+=""
+DEPEND+=""
+
+S=${WORKDIR}
+
+src_install() {
+ insinto opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/
+ doins -r opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/*
+}
diff --git a/dev-ruby/pusher-client/metadata.xml b/dev-ruby/pusher-client/metadata.xml
index dc2cba2c9909..66051dec5269 100644
--- a/dev-ruby/pusher-client/metadata.xml
+++ b/dev-ruby/pusher-client/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/pusher-client/pusher-client-0.6.2-r1.ebuild b/dev-ruby/pusher-client/pusher-client-0.6.2-r1.ebuild
new file mode 100644
index 000000000000..5e0cbfcbbf0a
--- /dev/null
+++ b/dev-ruby/pusher-client/pusher-client-0.6.2-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Client for consuming WebSockets from http://pusher.com"
+HOMEPAGE="https://github.com/pusher-community/pusher-websocket-ruby"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/websocket-1:0
+ dev-ruby/json:*
+"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/pusher-client/pusher-client-0.6.2.ebuild b/dev-ruby/pusher-client/pusher-client-0.6.2.ebuild
deleted file mode 100644
index c5cef72939f2..000000000000
--- a/dev-ruby/pusher-client/pusher-client-0.6.2.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Client for consuming WebSockets from http://pusher.com"
-HOMEPAGE="https://github.com/pusher-community/pusher-websocket-ruby"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/websocket-1:0
- dev-ruby/json:*
-"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/pygments_rb/Manifest b/dev-ruby/pygments_rb/Manifest
deleted file mode 100644
index 3b91e511ceee..000000000000
--- a/dev-ruby/pygments_rb/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pygments.rb-1.2.1.gem 1176064 BLAKE2B 7a6651606a433a9f15853ee06c3fe9a02d266f9441a08cc92c0db4ba679a97a2a25aaa4e96a621fbda0553e9b0c995ce53c6f828793f4937de12b3089f12963c SHA512 f0fc63ec028169872e28e2181c6a10c8a3f5e7f07074ba9f43475a0b5aa403a03d7045abb03433b600ef3d74c460556355b4ee64be598d3b93ddb1e0bb306259
diff --git a/dev-ruby/pygments_rb/metadata.xml b/dev-ruby/pygments_rb/metadata.xml
deleted file mode 100644
index 29c1a796cb32..000000000000
--- a/dev-ruby/pygments_rb/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">tmm1/pygments.rb</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/pygments_rb/pygments_rb-1.2.1.ebuild b/dev-ruby/pygments_rb/pygments_rb-1.2.1.ebuild
deleted file mode 100644
index 1e51b2fb94b3..000000000000
--- a/dev-ruby/pygments_rb/pygments_rb-1.2.1.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-PYTHON_COMPAT=( python2_7 )
-
-RUBY_FAKEGEM_NAME="pygments.rb"
-MY_P="${RUBY_FAKEGEM_NAME}-${PV}"
-
-RUBY_FAKEGEM_RECIPE_TEST="rake"
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${RUBY_FAKEGEM_NAME}.gemspec"
-
-inherit ruby-fakegem python-single-r1
-
-DESCRIPTION="Pygments syntax highlighting in ruby"
-HOMEPAGE="https://github.com/tmm1/pygments.rb"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-REQUIRED_USE+=" ${PYTHON_REQUIRED_USE}"
-
-RUBY_S="${MY_P}"
-
-RDEPEND+="
- ${PYTHON_DEPS}
- >=dev-python/pygments-2.2.0[${PYTHON_USEDEP}]
- dev-python/simplejson[${PYTHON_USEDEP}]"
-DEPEND+=" test? ( ${RDEPEND} )"
-
-ruby_add_rdepend ">=dev-ruby/multi_json-1.0.0"
-ruby_add_bdepend "dev-ruby/rake-compiler"
-
-pkg_setup() {
- ruby-ng_pkg_setup
- python-single-r1_pkg_setup
-}
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -i -e '/s.files/d' pygments.rb.gemspec || die
- python_fix_shebang lib/pygments/mentos.py
- # we are loosing a "custom github lexer here", no idea what it is,
- # but if we need it, it should go into dev-python/pygments
- rm -r vendor lexers || die "removing bundled libs failed"
-}
-
-each_ruby_compile() {
- # regenerate the lexer cache, based on the system pygments pkg
- ${RUBY} cache-lexers.rb || die "regenerating lexer cache failed"
-}
-
-each_ruby_install() {
- each_fakegem_install
- ruby_fakegem_doins lexers
-}
diff --git a/dev-ruby/qed/metadata.xml b/dev-ruby/qed/metadata.xml
index 28ab0c15f206..fa82c8089219 100644
--- a/dev-ruby/qed/metadata.xml
+++ b/dev-ruby/qed/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">rubyworks/qed</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/qed/qed-2.9.2-r1.ebuild b/dev-ruby/qed/qed-2.9.2-r1.ebuild
new file mode 100644
index 000000000000..623d32188c97
--- /dev/null
+++ b/dev-ruby/qed/qed-2.9.2-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="QED (Quality Ensured Demonstrations) is a TDD/BDD framework"
+HOMEPAGE="https://rubyworks.github.io/qed/"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/ae )"
+ruby_add_rdepend "
+ dev-ruby/ansi
+ dev-ruby/brass
+"
+
+each_ruby_test() {
+ ${RUBY} -Ilib bin/qed || die 'tests failed'
+}
diff --git a/dev-ruby/qed/qed-2.9.2.ebuild b/dev-ruby/qed/qed-2.9.2.ebuild
deleted file mode 100644
index 796cc4fc924a..000000000000
--- a/dev-ruby/qed/qed-2.9.2.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="QED (Quality Ensured Demonstrations) is a TDD/BDD framework"
-HOMEPAGE="https://rubyworks.github.io/qed/"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/ae )"
-ruby_add_rdepend "
- dev-ruby/ansi
- dev-ruby/brass"
-
-each_ruby_test() {
- ${RUBY} -Ilib bin/qed || die 'tests failed'
-}
diff --git a/dev-ruby/racc/Manifest b/dev-ruby/racc/Manifest
index 046d2c037557..bf9733c9080c 100644
--- a/dev-ruby/racc/Manifest
+++ b/dev-ruby/racc/Manifest
@@ -1 +1,4 @@
-DIST racc-1.4.14.gem 116224 BLAKE2B 67abd0e9bed46d7c589c62426943c8594d3b119328cd08576247727b11beb9e32ea45c54d0aadefc26691972fc40aad1b009c55bcd90a5b89aaf37e37a1097c1 SHA512 7401ad1722c92101c24f881226e44bd8b21033c7bae8b13cbf329f9b426c312ce61d14ce584b4f94d6863b77f30d6ebccf26f9fca2de724f8e0659f0e2d2173f
+DIST racc-1.6.2.tar.gz 470740 BLAKE2B c21e01cd7a11573774218ba97de3f58ebdbc4b138def4dfb2620b626d68e71a72f66a7e7f7644707942d4ec5f387b848aa00aa1d7dd81fc98f50b1c23ce118cb SHA512 ef577d0da440361702d15cf2127142e57d5af4146f120cd9d94ee8c8b4380810c8913c373a9969f09b50e0850a8ac04ffd22729c4abdab0670765c7379b549f6
+DIST racc-1.7.0.tar.gz 472347 BLAKE2B 329761dcdde47180e15f0ceea09b071c2387569364690ff4dc76631c4f3a5c8d8e5482fdc9a451c9c521fb902007c0974d6596287e73f5e9bf8b51f59a31e09d SHA512 8a198a73132f8a97468aaf2078d493899473cefd67cb8065e2d3f35730577e98cd19682e6d4b0f8a2347c77edfb9acfc5649a527c6361a47ae836c3ec2d01085
+DIST racc-1.7.1.tar.gz 460849 BLAKE2B 88caea7f176111678ee7245af72c8689912d413b400c0299da9239d245d0e4d06511e554cbf00f0b9b248baff240d359492fa9c7bbc623d693ef54d135d6ed35 SHA512 266e4cc81bebe5d7331d42f9e2becc3c02c8fd15b5d70d424d04d37ffea35c802c382e88933cfb0f80331c3504b39ab4c59308c9a86de57a8fc7a8bae9d20882
+DIST racc-1.7.3.tar.gz 455515 BLAKE2B c2eea87b804ae8675ff253682c1720b006d1edd7c08b2f34dfb731f787aede88175f478c8afdd7d6c28fb1f59d6ec460a1d365e5c282d10c370b78f45c76f7a0 SHA512 8412c021d3fc7f25ccf3a61d56c11df0d8c0b09852d99cc314c8b4931f9c22939dc43ef599801de9a64a69acbd897fb6f215f56702634f2c8b6d69ae3bdfa2b3
diff --git a/dev-ruby/racc/metadata.xml b/dev-ruby/racc/metadata.xml
index 7dd42da3c16a..cbe1b685cb46 100644
--- a/dev-ruby/racc/metadata.xml
+++ b/dev-ruby/racc/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">tenderlove/racc</remote-id>
+ <remote-id type="github">ruby/racc</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/racc/racc-1.4.14.ebuild b/dev-ruby/racc/racc-1.4.14.ebuild
deleted file mode 100644
index 1f48b014e3d6..000000000000
--- a/dev-ruby/racc/racc-1.4.14.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_TASK_DOC="docs"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc README.ja.rdoc TODO ChangeLog"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A LALR(1) parser generator for Ruby"
-HOMEPAGE="https://github.com/tenderlove/racc"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc test"
-
-ruby_add_bdepend "dev-ruby/rake
- test? ( >=dev-ruby/minitest-4.0:0 )"
-
-all_ruby_prepare() {
- sed -i -e 's|/tmp/out|${TMPDIR:-/tmp}/out|' test/helper.rb || die "tests fix failed"
-
- # Avoid depending on rake-compiler since we don't use it to compile
- # the extension.
- sed -i -e '/rake-compiler/ s:^:#:' -e '/extensiontask/ s:^:#:' Rakefile
- sed -i -e '/ExtensionTask/,/^ end/ s:^:#:' Rakefile
-
- # Avoid isolation since dependencies are not properly declared.
- sed -i -e 's/, :isolate//' Rakefile || die
-
- # Use a version of the minitest gem that works consistently accross
- # all ruby versions.
- sed -i -e '2i gem "minitest", "~>4.0"' test/helper.rb || die
-}
-
-each_ruby_prepare() {
- ${RUBY} -Cext/racc extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/racc
- # Copy over the file here so that we don't have to do
- # special ruby install for JRuby and the other
- # implementations.
- cp -l ext/racc/cparse$(get_modname) lib/racc/cparse$(get_modname) || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e "Dir['test/test_*.rb'].each{|f| require f}" || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- dodoc -r rdoc
-
- docinto examples
- dodoc -r sample
-}
diff --git a/dev-ruby/racc/racc-1.6.2.ebuild b/dev-ruby/racc/racc-1.6.2.ebuild
new file mode 100644
index 000000000000..897d31aae5a1
--- /dev/null
+++ b/dev-ruby/racc/racc-1.6.2.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="README.rdoc README.ja.rdoc TODO ChangeLog"
+
+RUBY_FAKEGEM_GEMSPEC="racc.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/racc/cparse/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/racc/cparse"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A LALR(1) parser generator for Ruby"
+HOMEPAGE="https://github.com/tenderlove/racc"
+SRC_URI="https://github.com/tenderlove/racc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend "virtual/ruby-ssl"
+
+ruby_add_bdepend "dev-ruby/rake
+ test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e 's/, :isolate//' Rakefile || die
+ sed -i -e '/bundler/ s:^:#:' -e '/rdoc/,/^end/ s:^:#:' Rakefile || die
+
+ # Avoid depending on rake-compiler since we don't use it to compile
+ # the extension.
+ sed -i -e '/rake-compiler/ s:^:#:' -e '/extensiontask/ s:^:#:' Rakefile || die
+ sed -i -e '/ExtensionTask/,/^ end/ s:^:#:' Rakefile || die
+
+ # ...which means we need to generate the parser file here
+ for ruby in $(ruby_get_use_implementations) ; do
+ if has_version -b "virtual/rubygems[ruby_targets_${ruby}(-)]" && has_version -b "dev-ruby/rake[ruby_targets_${ruby}(-)]" ; then
+ ${ruby} -S rake lib/racc/parser-text.rb || die
+ break
+ fi
+ done
+
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r doc
+
+ docinto examples
+ dodoc -r sample
+}
diff --git a/dev-ruby/racc/racc-1.7.0.ebuild b/dev-ruby/racc/racc-1.7.0.ebuild
new file mode 100644
index 000000000000..c8e2fec31475
--- /dev/null
+++ b/dev-ruby/racc/racc-1.7.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="README.rdoc README.ja.rdoc TODO ChangeLog"
+
+RUBY_FAKEGEM_GEMSPEC="racc.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/racc/cparse/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/racc/cparse"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A LALR(1) parser generator for Ruby"
+HOMEPAGE="https://github.com/tenderlove/racc"
+SRC_URI="https://github.com/tenderlove/racc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend "virtual/ruby-ssl"
+
+ruby_add_bdepend "dev-ruby/rake
+ test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e 's/, :isolate//' Rakefile || die
+ sed -i -e '/bundler/ s:^:#:' -e '/rdoc/,/^end/ s:^:#:' Rakefile || die
+
+ # Avoid depending on rake-compiler since we don't use it to compile
+ # the extension.
+ sed -i -e '/rake-compiler/ s:^:#:' -e '/extensiontask/ s:^:#:' Rakefile || die
+ sed -i -e '/ExtensionTask/,/^ end/ s:^:#:' Rakefile || die
+
+ # ...which means we need to generate the parser file here
+ for ruby in $(ruby_get_use_implementations) ; do
+ if has_version -b "virtual/rubygems[ruby_targets_${ruby}(-)]" &&
+ has_version -b "dev-ruby/rake[ruby_targets_${ruby}(-)]" ; then
+ ${ruby} -S rake lib/racc/parser-text.rb || die
+ break
+ fi
+ done
+
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r doc
+
+ docinto examples
+ dodoc -r sample
+}
diff --git a/dev-ruby/racc/racc-1.7.1.ebuild b/dev-ruby/racc/racc-1.7.1.ebuild
new file mode 100644
index 000000000000..bc1bfd4f7a78
--- /dev/null
+++ b/dev-ruby/racc/racc-1.7.1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="README.rdoc README.ja.rdoc TODO ChangeLog"
+
+RUBY_FAKEGEM_GEMSPEC="racc.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/racc/cparse/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/racc/cparse"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A LALR(1) parser generator for Ruby"
+HOMEPAGE="https://github.com/ruby/racc"
+SRC_URI="https://github.com/ruby/racc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend "virtual/ruby-ssl"
+
+ruby_add_bdepend "dev-ruby/rake
+ test? ( dev-ruby/minitest dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -i -e 's/, :isolate//' Rakefile || die
+ sed -i -e '/bundler/ s:^:#:' -e '/rdoc/,/^end/ s:^:#:' Rakefile || die
+
+ # Avoid depending on rake-compiler since we don't use it to compile
+ # the extension.
+ sed -i -e '/rake-compiler/ s:^:#:' -e '/extensiontask/ s:^:#:' Rakefile || die
+ sed -i -e '/ExtensionTask/,/^ end/ s:^:#:' Rakefile || die
+
+ # ...which means we need to generate the parser file here
+ for ruby in $(ruby_get_use_implementations) ; do
+ if has_version -b "virtual/rubygems[ruby_targets_${ruby}(-)]" &&
+ has_version -b "dev-ruby/rake[ruby_targets_${ruby}(-)]" ; then
+ ${ruby} -S rake lib/racc/parser-text.rb || die
+ break
+ fi
+ done
+
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r doc
+
+ docinto examples
+ dodoc -r sample
+}
diff --git a/dev-ruby/racc/racc-1.7.3.ebuild b/dev-ruby/racc/racc-1.7.3.ebuild
new file mode 100644
index 000000000000..771e3b3bd591
--- /dev/null
+++ b/dev-ruby/racc/racc-1.7.3.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="README.rdoc README.ja.rdoc TODO ChangeLog"
+
+RUBY_FAKEGEM_GEMSPEC="racc.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/racc/cparse/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/racc/cparse"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A LALR(1) parser generator for Ruby"
+HOMEPAGE="https://github.com/ruby/racc"
+SRC_URI="https://github.com/ruby/racc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend "virtual/ruby-ssl"
+
+ruby_add_bdepend "dev-ruby/rake
+ test? ( dev-ruby/minitest dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -i -e 's/, :isolate//' Rakefile || die
+ sed -e '/bundler/ s:^:#:' \
+ -e '/require.*rdoc/ s:^:#:' \
+ -e '/RDoc/,/^end/ s:^:#:' \
+ -i Rakefile || die
+
+ # Avoid depending on rake-compiler since we don't use it to compile
+ # the extension.
+ sed -i -e '/rake-compiler/ s:^:#:' -e '/require.*extensiontask/ s:^:#:' Rakefile || die
+ sed -i -e '/ExtensionTask/,/^ end/ s:^:#:' Rakefile || die
+
+ # ...which means we need to generate the parser file here
+ for ruby in $(ruby_get_use_implementations) ; do
+ if has_version -b "virtual/rubygems[ruby_targets_${ruby}(-)]" &&
+ has_version -b "dev-ruby/rake[ruby_targets_${ruby}(-)]" ; then
+ ${ruby} -S rake lib/racc/parser-text.rb || die
+ break
+ fi
+ done
+
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r doc
+
+ docinto examples
+ dodoc -r sample
+}
diff --git a/dev-ruby/rack-attack/Manifest b/dev-ruby/rack-attack/Manifest
index a789fa323b57..0dbfa8ddf524 100644
--- a/dev-ruby/rack-attack/Manifest
+++ b/dev-ruby/rack-attack/Manifest
@@ -1,3 +1,2 @@
-DIST rack-attack-5.4.2.gem 23040 BLAKE2B 7af950339f03139e6a3ac9e8349e6d2af5182a29f643a08a9ea0806349c02965d05e99d95421f14ba827c9c942a6824f710dbaf06adbb0aa07dde03d74e629ed SHA512 a4af12c2c436a3634108494e2a5b9c5751c0fa2e87af6efa326d9c09fdae54b5bd8a8974c48785dfef64565ff9ee0a6704c90acf1277c8e80849ff30f9fbb67b
-DIST rack-attack-6.0.0.gem 23552 BLAKE2B ffd558e6a8b4b03fb332ef84f74c77f3f6dbfbaa8ce819c9522c02791ae35acc177b07a5f52f1888ccf25feb068e1812d1d61ddb7ebc9ea34da7ae1fe6275c27 SHA512 dca8ab20a3c4e5ac1214b232674fbf164a4c05f7ebb219193608b235583cdea5367d402d32a60d6a92c534a04d328714c673a7c93c50423a038e653561023f87
-DIST rack-attack-6.1.0.gem 23552 BLAKE2B 91f1c83659ea906732c6ab39904a5b01710fba3bf82e6c9b5bf88d9c992bd1f5d69c71e6487e85874f9c4527ac0f053bb648d600e8ac17569f0b6331089f0fc0 SHA512 b03050f15f05a27ee9a4f997c9de0c34a548f9fbd8e46d52f071c138f31c4bfc65196873a0bebce3c8d3862809b75295ab0f30c97afb128051cfa9b161d3dbe2
+DIST rack-attack-6.6.1.gem 26624 BLAKE2B 3182da7b9fef4506fbbcf6fe8bcf175701b6999728c3b0ef2491cad426047540bc0e9a992db6f18f4f3947d2659e6db2e692a2a015e107c44106696086ffbb2d SHA512 65973550e1639527c4b00fb2743008b7ad9438faf5b70b490585966cf02f9733b215cff1826663ad6d770bac35dbe665cf901a5c4778de8e7f02e29ae1fb2772
+DIST rack-attack-6.7.0.gem 27136 BLAKE2B 9321bf2512655267887d1a216d59bef1f1f4d556ebc8141e079e5bc77168eb2021a03f5212f0feb04f0da04ca7486f170ce3bdd3c493f5da9c6125d6a5699560 SHA512 2620cec8d3d81c413db6eb6b62bbcf70c5815d2a8d05d7bdf9d100b5dcd9a0b832e382c2de2b13266966800d9cd6060d7a6cb087a438131dd50c96ffd4fc043b
diff --git a/dev-ruby/rack-attack/metadata.xml b/dev-ruby/rack-attack/metadata.xml
index 83a58a4a6604..32bd9929c454 100644
--- a/dev-ruby/rack-attack/metadata.xml
+++ b/dev-ruby/rack-attack/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">kickstarter/rack-attack</remote-id>
+ <remote-id type="github">rack/rack-attack</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rack-attack/rack-attack-5.4.2.ebuild b/dev-ruby/rack-attack/rack-attack-5.4.2.ebuild
deleted file mode 100644
index debf6466148f..000000000000
--- a/dev-ruby/rack-attack/rack-attack-5.4.2.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-# Skip integration tests since they require additional unpackaged
-# dependencies and running daemons.
-RUBY_FAKEGEM_TASK_TEST="test:units"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A DSL for blocking & throttling abusive clients"
-HOMEPAGE="https://github.com/kickstarter/rack-attack"
-
-LICENSE="MIT"
-SLOT="5"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_rdepend "dev-ruby/rack:*"
-ruby_add_bdepend "test? (
- dev-ruby/actionpack
- dev-ruby/activesupport
- dev-ruby/rack-test
- dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i -e '/\(bundler\|byebug\)/ s:^:#:' Rakefile spec/spec_helper.rb || die
- sed -i -e '3igem "actionpack"' spec/spec_helper.rb || die
- sed -i -e '/rubocop/I s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/rack-attack/rack-attack-6.0.0.ebuild b/dev-ruby/rack-attack/rack-attack-6.0.0.ebuild
deleted file mode 100644
index dbabb18b825a..000000000000
--- a/dev-ruby/rack-attack/rack-attack-6.0.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-# Skip integration tests since they require additional unpackaged
-# dependencies and running daemons.
-RUBY_FAKEGEM_TASK_TEST="test:units"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A DSL for blocking & throttling abusive clients"
-HOMEPAGE="https://github.com/kickstarter/rack-attack"
-
-LICENSE="MIT"
-SLOT="6"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_rdepend "dev-ruby/rack:*"
-ruby_add_bdepend "test? (
- dev-ruby/actionpack
- dev-ruby/activesupport
- dev-ruby/rack-test
- dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i -e '/\(bundler\|byebug\)/ s:^:#:' Rakefile spec/spec_helper.rb || die
- sed -i -e '3igem "actionpack"' spec/spec_helper.rb || die
- sed -i -e '/rubocop/I s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/rack-attack/rack-attack-6.1.0.ebuild b/dev-ruby/rack-attack/rack-attack-6.1.0.ebuild
deleted file mode 100644
index dbabb18b825a..000000000000
--- a/dev-ruby/rack-attack/rack-attack-6.1.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-# Skip integration tests since they require additional unpackaged
-# dependencies and running daemons.
-RUBY_FAKEGEM_TASK_TEST="test:units"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A DSL for blocking & throttling abusive clients"
-HOMEPAGE="https://github.com/kickstarter/rack-attack"
-
-LICENSE="MIT"
-SLOT="6"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_rdepend "dev-ruby/rack:*"
-ruby_add_bdepend "test? (
- dev-ruby/actionpack
- dev-ruby/activesupport
- dev-ruby/rack-test
- dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i -e '/\(bundler\|byebug\)/ s:^:#:' Rakefile spec/spec_helper.rb || die
- sed -i -e '3igem "actionpack"' spec/spec_helper.rb || die
- sed -i -e '/rubocop/I s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/rack-attack/rack-attack-6.6.1.ebuild b/dev-ruby/rack-attack/rack-attack-6.6.1.ebuild
new file mode 100644
index 000000000000..7e04839295dc
--- /dev/null
+++ b/dev-ruby/rack-attack/rack-attack-6.6.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+# Skip integration tests since they require additional unpackaged
+# dependencies and running daemons.
+RUBY_FAKEGEM_TASK_TEST="test:units"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="A DSL for blocking & throttling abusive clients"
+HOMEPAGE="https://github.com/rack/rack-attack"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/rack:*"
+ruby_add_bdepend "test? (
+ dev-ruby/actionpack
+ dev-ruby/activesupport
+ dev-ruby/railties
+ dev-ruby/rack-test
+ dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|byebug\)/ s:^:#:' Rakefile spec/spec_helper.rb || die
+ sed -i -e '3igem "actionpack"' spec/spec_helper.rb || die
+ sed -i -e '/rubocop/I s:^:#:' Rakefile || die
+
+ # Avoid specs requiring a live redis service
+ sed -i -e '/should delete rack attack key/askip "requires redis service"' spec/rack_attack_spec.rb || die
+}
diff --git a/dev-ruby/rack-attack/rack-attack-6.7.0.ebuild b/dev-ruby/rack-attack/rack-attack-6.7.0.ebuild
new file mode 100644
index 000000000000..9992f6f3d30a
--- /dev/null
+++ b/dev-ruby/rack-attack/rack-attack-6.7.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# Skip integration tests since they require additional unpackaged
+# dependencies and running daemons.
+RUBY_FAKEGEM_TASK_TEST="test:units"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="A DSL for blocking & throttling abusive clients"
+HOMEPAGE="https://github.com/rack/rack-attack"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/rack:*"
+ruby_add_bdepend "test? (
+ dev-ruby/actionpack
+ dev-ruby/activesupport
+ dev-ruby/railties
+ dev-ruby/rack-test
+ dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|byebug\)/ s:^:#:' Rakefile spec/spec_helper.rb || die
+ sed -i -e '3igem "actionpack"' spec/spec_helper.rb || die
+ sed -i -e '/rubocop/I s:^:#:' Rakefile || die
+
+ # Fix minitest deprecation
+ sed -i -e 's/MiniTest/Minitest/' spec/spec_helper.rb || die
+
+ # Avoid specs requiring a live redis service
+ sed -i -e '/should delete rack attack key/askip "requires redis service"' spec/rack_attack_spec.rb || die
+}
diff --git a/dev-ruby/rack-cache/Manifest b/dev-ruby/rack-cache/Manifest
index b265f706d625..dd3c598e5bf1 100644
--- a/dev-ruby/rack-cache/Manifest
+++ b/dev-ruby/rack-cache/Manifest
@@ -1,2 +1,3 @@
-DIST rack-cache-1.8.0.tar.gz 260732 BLAKE2B 79104b2dd82ec1a95abbe84a97e8a7cea918f87e3845816d6252610ed24e82c4bb38fa7dc34ddea9517af06d21091c23b5316ce87a9f80d49fcd3be1a7764b22 SHA512 b5235c0b3d2a3476555bb2420bc5d69ae12d8d650fb9ea1d8d8fd4f1dff0c45f47e920c58c1e44d1e565eb45248d4e63e7643c8c50d43706365a36ae80f2eec8
-DIST rack-cache-1.9.0.tar.gz 260825 BLAKE2B 58f3bfbf6af9c515ef1dc7406c6b41ba8ce37c3cc9533a21f0480565fa72b72acb517a161a7d00bfd21e1e2b2379ab85796e507fe478c601c287031a70858bff SHA512 da998796a26338af2a484a8bb87f152706f33de719cc546f7bd4c4222ca5c52297d0b4dbe233e4362d6b5e6fedb7b527ce9a29cc03a6fbeee12e760afc070a93
+DIST rack-cache-1.15.0.tar.gz 264051 BLAKE2B 0e9de0d7bd82c553f448f6fe9273465f9b7ac68aab814543ccb13644137f9f6ad9a279a0d71fa61ce8198e1f579f2b1f9118e4b0e017b8c75d8e385d32c1826f SHA512 eaeb2e52e5bedce3f5ddeab9e32ec73ac67786a12d3abbd5469b1072c50ac54b236dfd03420152f1e86fd55950bb9f4e243bec3541309bf7e8dbd410fd777967
+DIST rack-cache-1.16.0.tar.gz 264119 BLAKE2B 7affde4d1e72cd4f7cecec36aea753f7e8aeb42ac2e41bf8a3a2132b6736b137ed9f1969f630b12fca60d34e8390f97c8cdfe0e33cc847589f03d6aede48b8e3 SHA512 c2e41b8382f060d85d67ddcc5a4edd899e58a0438c94cccf2b6e00013442d1b2914744916880ea9740cd4f5c80045b873f17e00222b3f03d18719e78656ec7c5
+DIST rack-cache-1.17.0.tar.gz 264229 BLAKE2B 935e9d539dd130d62486326ef4f6b4ed2576a13262af40914a4de5251601872e29fc68134fe04f8f5eed656d17957257d8a502e02853838a30772a354ff8f921 SHA512 41b3d28c577f241c57c74623f37ef36efcc059f9b8499cdc2c08d15ab68fbd06b736140594c6860708e0fa6590027b0e64ab539d2d2ae243d1a1150e7e64959f
diff --git a/dev-ruby/rack-cache/metadata.xml b/dev-ruby/rack-cache/metadata.xml
index bb0d49d5f48b..99bf54904f42 100644
--- a/dev-ruby/rack-cache/metadata.xml
+++ b/dev-ruby/rack-cache/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">rtomayko/rack-cache</remote-id>
+ <remote-id type="github">rack/rack-cache</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rack-cache/rack-cache-1.15.0.ebuild b/dev-ruby/rack-cache/rack-cache-1.15.0.ebuild
new file mode 100644
index 000000000000..dcf4c92952ac
--- /dev/null
+++ b/dev-ruby/rack-cache/rack-cache-1.15.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+# no documentation is generable, it needs hanna, which is broken
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_TASK_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md doc/*"
+
+RUBY_FAKEGEM_GEMSPEC="rack-cache.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Enable HTTP caching for Rack-based applications that produce freshness info"
+HOMEPAGE="https://github.com/rack/rack-cache"
+SRC_URI="https://github.com/rack/rack-cache/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1.2"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/rack:*"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/maxitest-3.4.0
+ >=dev-ruby/minitest-5.7.0:5
+ >=dev-ruby/mocha-2 )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files/find */' -e "s:_relative ': './:" ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/ s:^:#:' test/test_helper.rb || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true ${RUBY} -I.:lib:test -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/rack-cache/rack-cache-1.16.0.ebuild b/dev-ruby/rack-cache/rack-cache-1.16.0.ebuild
new file mode 100644
index 000000000000..81b6b20841c5
--- /dev/null
+++ b/dev-ruby/rack-cache/rack-cache-1.16.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# no documentation can be generated. It needs hanna, which is broken.
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_TASK_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md doc/*"
+
+RUBY_FAKEGEM_GEMSPEC="rack-cache.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Enable HTTP caching for Rack-based applications that produce freshness info"
+HOMEPAGE="https://github.com/rack/rack-cache"
+SRC_URI="https://github.com/rack/rack-cache/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1.2"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/rack:*"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/maxitest-3.4.0
+ >=dev-ruby/minitest-5.7.0:5
+ >=dev-ruby/mocha-2 )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files/find */' -e "s:_relative ': './:" ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/ s:^:#:' test/test_helper.rb || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true ${RUBY} -I.:lib:test -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/rack-cache/rack-cache-1.17.0.ebuild b/dev-ruby/rack-cache/rack-cache-1.17.0.ebuild
new file mode 100644
index 000000000000..81b6b20841c5
--- /dev/null
+++ b/dev-ruby/rack-cache/rack-cache-1.17.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# no documentation can be generated. It needs hanna, which is broken.
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_TASK_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md doc/*"
+
+RUBY_FAKEGEM_GEMSPEC="rack-cache.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Enable HTTP caching for Rack-based applications that produce freshness info"
+HOMEPAGE="https://github.com/rack/rack-cache"
+SRC_URI="https://github.com/rack/rack-cache/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1.2"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/rack:*"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/maxitest-3.4.0
+ >=dev-ruby/minitest-5.7.0:5
+ >=dev-ruby/mocha-2 )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files/find */' -e "s:_relative ': './:" ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/ s:^:#:' test/test_helper.rb || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true ${RUBY} -I.:lib:test -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/rack-cache/rack-cache-1.8.0.ebuild b/dev-ruby/rack-cache/rack-cache-1.8.0.ebuild
deleted file mode 100644
index c377e43b3b2a..000000000000
--- a/dev-ruby/rack-cache/rack-cache-1.8.0.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# no documentation is generable, it needs hanna, which is broken
-RUBY_FAKEGEM_RECIPE_DOC="none"
-
-RUBY_FAKEGEM_TASK_TEST="none"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md doc/*"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Enable HTTP caching for Rack-based applications that produce freshness info"
-HOMEPAGE="https://github.com/rtomayko/rack-cache"
-SRC_URI="https://github.com/rtomayko/rack-cache/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1.2"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/rack:*"
-
-ruby_add_bdepend "test? (
- dev-ruby/maxitest
- >=dev-ruby/minitest-5.7.0:5
- >=dev-ruby/mocha-0.13.0 )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' \
- -e "2i require 'timeout'" \
- test/test_helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -I.:lib:test -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/rack-cache/rack-cache-1.9.0.ebuild b/dev-ruby/rack-cache/rack-cache-1.9.0.ebuild
deleted file mode 100644
index c377e43b3b2a..000000000000
--- a/dev-ruby/rack-cache/rack-cache-1.9.0.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# no documentation is generable, it needs hanna, which is broken
-RUBY_FAKEGEM_RECIPE_DOC="none"
-
-RUBY_FAKEGEM_TASK_TEST="none"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md doc/*"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Enable HTTP caching for Rack-based applications that produce freshness info"
-HOMEPAGE="https://github.com/rtomayko/rack-cache"
-SRC_URI="https://github.com/rtomayko/rack-cache/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1.2"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/rack:*"
-
-ruby_add_bdepend "test? (
- dev-ruby/maxitest
- >=dev-ruby/minitest-5.7.0:5
- >=dev-ruby/mocha-0.13.0 )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' \
- -e "2i require 'timeout'" \
- test/test_helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -I.:lib:test -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/rack-mount/Manifest b/dev-ruby/rack-mount/Manifest
deleted file mode 100644
index 46c78169ab75..000000000000
--- a/dev-ruby/rack-mount/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rack-mount-0.8.3.tgz 33944 BLAKE2B 7763b55aaff25168924c9e237b762231e346b757b56919e454db52485cfa015989a03c93b9d1f0ae0802ab35773d646d70bc87e5d02307052c3c2c9ffa295d60 SHA512 5f1d10b951c967bc4c36a81b5c7dae5c5ec8d5253ee804fa1e1b4446c962fa0882d4c59773bca9373d5eb37a18646aff0a2dff2b1636d3d9126cae0f1e10a638
diff --git a/dev-ruby/rack-mount/files/rack-mount-fix-ruby20.patch b/dev-ruby/rack-mount/files/rack-mount-fix-ruby20.patch
deleted file mode 100644
index f1e37faa21d6..000000000000
--- a/dev-ruby/rack-mount/files/rack-mount-fix-ruby20.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 42e7ae47c2dac2d98272ac99239e40bd59398891 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <v.ondruch@tiscali.cz>
-Date: Tue, 9 Apr 2013 11:12:02 +0300
-Subject: [PATCH] Fix Ruby 2.0.0 compatibility
-
-#respond_to? now exclude protected methods.
----
- lib/rack/mount/multimap.rb | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/rack/mount/multimap.rb b/lib/rack/mount/multimap.rb
-index 6b773e2..b88630b 100644
---- a/lib/rack/mount/multimap.rb
-+++ b/lib/rack/mount/multimap.rb
-@@ -125,7 +125,7 @@ def update_container(key)
- end
-
- def iterate_over_container(container)
-- if container.respond_to?(:each_container_with_default)
-+ if container.respond_to?(:each_container_with_default, true)
- container.each_container_with_default do |value|
- yield value
- end
---
-1.9.3
-
diff --git a/dev-ruby/rack-mount/metadata.xml b/dev-ruby/rack-mount/metadata.xml
deleted file mode 100644
index 4179f349bdb5..000000000000
--- a/dev-ruby/rack-mount/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <longdescription>
-Rack provides a common API for connecting web frameworks, web servers and layers
-of software inbetween.
-</longdescription>
- <upstream>
- <remote-id type="github">josh/rack-mount</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rack-mount/rack-mount-0.8.3-r2.ebuild b/dev-ruby/rack-mount/rack-mount-0.8.3-r2.ebuild
deleted file mode 100644
index 1630b971e17c..000000000000
--- a/dev-ruby/rack-mount/rack-mount-0.8.3-r2.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-inherit versionator ruby-fakegem
-
-DESCRIPTION="A stackable dynamic tree based Rack router"
-HOMEPAGE="https://github.com/josh/rack-mount"
-SRC_URI="https://github.com/josh/rack-mount/tarball/v${PV} -> ${P}.tgz"
-RUBY_S="josh-${PN}-*"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rack-1.0.0:*"
-
-RUBY_PATCHES=( ${PN}-fix-ruby20.patch )
-
-all_ruby_prepare() {
- # Avoid fragile test depending on hash ordering.
- sed -i -e '/foo=1&bar=2/ s:^:#:' test/test_utils.rb || die
-}
diff --git a/dev-ruby/rack-openid/metadata.xml b/dev-ruby/rack-openid/metadata.xml
index bd8ea54ad350..9d3df1792213 100644
--- a/dev-ruby/rack-openid/metadata.xml
+++ b/dev-ruby/rack-openid/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rack-openid/rack-openid-1.4.2-r1.ebuild b/dev-ruby/rack-openid/rack-openid-1.4.2-r1.ebuild
new file mode 100644
index 000000000000..cbe158d0c8a0
--- /dev/null
+++ b/dev-ruby/rack-openid/rack-openid-1.4.2-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="Readme.md"
+RUBY_FAKEGEM_GEMSPEC="rack-openid.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a more HTTPish API around the ruby-openid library"
+SRC_URI="https://github.com/grosser/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+HOMEPAGE="https://github.com/grosser/rack-openid"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+ruby_add_rdepend ">=dev-ruby/ruby-openid-2.1.8 >=dev-ruby/rack-1.1.0:*"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/d' -e '/minitest\/rg/d' -e '/[Ll]og/d' test/helper.rb || die
+
+ sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib test/test_rack_openid.rb || die
+ # Needs unpackaged rots dependency https://github.com/roman/rots
+ # No release available right now
+ #${RUBY} -Ilib test/test_integration.rb || die
+}
diff --git a/dev-ruby/rack-openid/rack-openid-1.4.2.ebuild b/dev-ruby/rack-openid/rack-openid-1.4.2.ebuild
deleted file mode 100644
index bc00e0c81446..000000000000
--- a/dev-ruby/rack-openid/rack-openid-1.4.2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="Readme.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides a more HTTPish API around the ruby-openid library"
-SRC_URI="https://github.com/grosser/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-HOMEPAGE="https://github.com/grosser/rack-openid"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/ruby-openid-2.1.8 >=dev-ruby/rack-1.1.0:*"
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/d' -e '/minitest\/rg/d' -e '/[Ll]og/d' test/helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib test/test_rack_openid.rb || die
- # Needs unpackaged rots dependency https://github.com/roman/rots
- # No release available right now
- #${RUBY} -Ilib test/test_integration.rb || die
-}
diff --git a/dev-ruby/rack-protection/Manifest b/dev-ruby/rack-protection/Manifest
index 6fa2c52715a8..bb5be98d1139 100644
--- a/dev-ruby/rack-protection/Manifest
+++ b/dev-ruby/rack-protection/Manifest
@@ -1,3 +1,4 @@
-DIST rack-protection-1.5.5.gem 18432 BLAKE2B abda1313e7e0d04299a689c55241cd92d0f5ed2048395ab79f09ba271100a8dc99fbf5f924e3b3cbe28f318090144539eb0174cc1813d371d9f37df31ab04315 SHA512 c4066a50771247fc89d4ddee44ff87e40a24bad95e914ed2f72cbf9c45152e67e51d2ccc7d1725ade637296a080b06f304157a1a024613a97595b144e03e2e70
-DIST rack-protection-2.0.5.gem 16896 BLAKE2B 144888ca499739017ffec494785ca5cba0d1cbfabdf08b11aad4fc88aaaa737408d1801412f05919830c65fd11b2f344f0f758a0334b109174805d5089352521 SHA512 9c4c80a8f70042bea81a67260e26aa25c0a33c73835e4e49cd44c83930f97d8c4d63004d3e39ed631f016e44d66fba238f9c509b0e44eddb2f484d174adea9b4
-DIST rack-protection-2.0.7.gem 16896 BLAKE2B e9d6c91cebc62e6f1efa91a790edc218c78b8336ebcb03ac086e070360be0e5ded4a897042b85bef8e5625dd8c1bf035a825202f0a619f10e584fafce1ab0d0d SHA512 9001bee93859c87060450b83171eab80bf085c0238f978673ac6e31e3e1884a0de1a6d789a61900d1fc429e64f2eb3893e88cf32bef0b3e2a9f58e6f3a3abea1
+DIST rack-protection-3.0.5.gem 20480 BLAKE2B 1fa11760c6ddac58234ffe2e6d783c985e29b5e2bd10ea21b0782f7824b5930351c8e32c9401b6276ef028adcd8b25ca4458333d8008a554c413f54315ff8809 SHA512 4ed0ee9e8fe08532ff7f2905251af110f3fff0e419da5be50ae3e5a90906e43c39cf8edc219fcfe3e27a72591500c040afcc9552da875773375b170fb91aa9ff
+DIST rack-protection-3.0.6.gem 20480 BLAKE2B b29d8b87dd7bc4629d97923a448feacb53ae62f8d3753b44a627db742e3065eb1d09846e0be9131b02c83a32e1241154a844fcd5a5a7e708039cae7f6938fbb8 SHA512 4763a0439a3d99cfd799325004c7e6cb46783b3fcd77ea0df08caa6b5cdfc95c6ec96791d79261a0d7df26eb0b084e7ead2cceb05b589617159e948b3172e564
+DIST rack-protection-3.1.0.gem 20480 BLAKE2B ae5a784eb7420b756d15b251ebc981197f11979e76fed2ad42eb0bcf84719f4b9ab9d68a40ac9ee8db392ad7a8c45c8d4f03de2efb0375dbaa131ec5ff2022e2 SHA512 18a5ffe614a906ca876926bff3e4d1657f0b6963005ee32de80d0ab987b9465f603b30d69f07fd8d8a1ebf4fa85eb89bfd0b607d72387b360d13bea113a63ef7
+DIST rack-protection-3.2.0.gem 20480 BLAKE2B ac471dd39e8aad633bf20835f8dbeb9ca53b314b038391a8b334b1e5f2dd2c88983b1988655b5c946211883956318e50a7c2990386a0a43881f29bca474c8789 SHA512 8c8a715e031bbba3a572dc70e3ebc75357e43860fb8c3c88d15c9f07c07b3d6d27b335abc2eebb29c12a78871ef7be9788231f7ccfafca692afea49397310fee
diff --git a/dev-ruby/rack-protection/metadata.xml b/dev-ruby/rack-protection/metadata.xml
index 40799dad60fe..f2a92a716a0a 100644
--- a/dev-ruby/rack-protection/metadata.xml
+++ b/dev-ruby/rack-protection/metadata.xml
@@ -1,15 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<longdescription>
-Rack provides a common API for connecting web frameworks, web servers and layers
-of software inbetween.
-</longdescription>
+ Rack provides a common API for connecting web frameworks, web servers and layers
+ of software inbetween.
+ </longdescription>
<upstream>
- <remote-id type="github">rkh/rack-protection</remote-id>
+ <remote-id type="github">sinatra/rack-protection</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rack-protection/rack-protection-1.5.5.ebuild b/dev-ruby/rack-protection/rack-protection-1.5.5.ebuild
deleted file mode 100644
index 947c453c7e41..000000000000
--- a/dev-ruby/rack-protection/rack-protection-1.5.5.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="rack-protection.gemspec"
-
-inherit ruby-fakegem eapi7-ver
-
-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 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/rack-test )"
diff --git a/dev-ruby/rack-protection/rack-protection-2.0.5.ebuild b/dev-ruby/rack-protection/rack-protection-2.0.5.ebuild
deleted file mode 100644
index 1ebe85670644..000000000000
--- a/dev-ruby/rack-protection/rack-protection-2.0.5.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# There are no specs in the gem and the source cannot be downloaded separately.
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem eapi7-ver
-
-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 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-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.0.7.ebuild b/dev-ruby/rack-protection/rack-protection-2.0.7.ebuild
deleted file mode 100644
index 424f35c8363e..000000000000
--- a/dev-ruby/rack-protection/rack-protection-2.0.7.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-# 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 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-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-3.0.5.ebuild b/dev-ruby/rack-protection/rack-protection-3.0.5.ebuild
new file mode 100644
index 000000000000..41a0cc7dac0f
--- /dev/null
+++ b/dev-ruby/rack-protection/rack-protection-3.0.5.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+# 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 ~x64-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-3.0.6.ebuild b/dev-ruby/rack-protection/rack-protection-3.0.6.ebuild
new file mode 100644
index 000000000000..fe0df221df36
--- /dev/null
+++ b/dev-ruby/rack-protection/rack-protection-3.0.6.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+# 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://sinatrarb.com/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 ~x64-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-3.1.0.ebuild b/dev-ruby/rack-protection/rack-protection-3.1.0.ebuild
new file mode 100644
index 000000000000..084831e63ebe
--- /dev/null
+++ b/dev-ruby/rack-protection/rack-protection-3.1.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# 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://sinatrarb.com/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 ~x64-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-3.2.0.ebuild b/dev-ruby/rack-protection/rack-protection-3.2.0.ebuild
new file mode 100644
index 000000000000..b79877ef8fa3
--- /dev/null
+++ b/dev-ruby/rack-protection/rack-protection-3.2.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# 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://sinatrarb.com/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 ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/rack:*"
+
+# ruby_add_bdepend "test? ( dev-ruby/rack-test )"
diff --git a/dev-ruby/rack-session/Manifest b/dev-ruby/rack-session/Manifest
new file mode 100644
index 000000000000..0b6be764241e
--- /dev/null
+++ b/dev-ruby/rack-session/Manifest
@@ -0,0 +1,2 @@
+DIST rack-session-1.0.1.tar.gz 3120 BLAKE2B a36fefd25da9bbab26a58419782baf7606171fcdf9d033b3abb52ee225f5bd3f8b52d18c11947cceae8f00f278c832412b3babb8c2d7088f2a6554dcb0293689 SHA512 fa8362689cd49d55e24c82699eca9a45dd408b5e8978f6aee11f3f107e8d0a1f36ad319f4dd92e4fe5fd83e985382a43c41a353e9366d03b41f28e826d65483f
+DIST rack-session-2.0.0.tar.gz 23964 BLAKE2B 457210c3588c31d2d0d9251e6b12fe1f606545c4593c9be50a42110f99f7d15840553cac7e35653f2ef86d88f881a0a91537948bfca5b34e3d507cef8134c52b SHA512 8975a85845fa4dbdf22c10793fb2bb1a69aed3242c70c45b1d436448243e65ad77ecbfb17c8f2ef6f780b81ef480f8a46c5623e36dacc95401cd59a1510748f8
diff --git a/dev-ruby/rack-session/metadata.xml b/dev-ruby/rack-session/metadata.xml
new file mode 100644
index 000000000000..f90b9e380825
--- /dev/null
+++ b/dev-ruby/rack-session/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">rack/rack-session</remote-id>
+ <remote-id type="rubygems">rack-session</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/rack-session/rack-session-1.0.1.ebuild b/dev-ruby/rack-session/rack-session-1.0.1.ebuild
new file mode 100644
index 000000000000..ecc25cc0d96a
--- /dev/null
+++ b/dev-ruby/rack-session/rack-session-1.0.1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="rack-session.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A session implementation for Rack"
+HOMEPAGE="https://github.com/rack/rack-session"
+SRC_URI="https://github.com/rack/rack-session/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "<dev-ruby/rack-3"
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitest:5
+ dev-ruby/minitest-global_expectations
+)"
+
+all_ruby_prepare() {
+ sed -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/rack-session/rack-session-2.0.0.ebuild b/dev-ruby/rack-session/rack-session-2.0.0.ebuild
new file mode 100644
index 000000000000..b9c1619948b2
--- /dev/null
+++ b/dev-ruby/rack-session/rack-session-2.0.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="rack-session.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A session implementation for Rack"
+HOMEPAGE="https://github.com/rack/rack-session"
+SRC_URI="https://github.com/rack/rack-session/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/rack-3.0.0"
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitest:5
+ dev-ruby/minitest-global_expectations
+)"
+
+all_ruby_prepare() {
+ sed -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/rack-ssl/Manifest b/dev-ruby/rack-ssl/Manifest
deleted file mode 100644
index 2c4103fb37b0..000000000000
--- a/dev-ruby/rack-ssl/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rack-ssl-1.4.1-git.tgz 3238 BLAKE2B 7861fff6dd7b15505e008d150a515dee6749767b3e2056553baa85e3696f4c9fb63a5a0d03b99588ee09d79163c0463763824a9bb53fdc86f857f9c472c9fb2e SHA512 700a2cbc848be8e410186e6af709c5d7a8bae65ada02b405711dc60f8c6e1fe4fb00c3acc55ddc76a1d79e9468ba8f92d0350c983d5c1b83e4cee2b91aa68f23
diff --git a/dev-ruby/rack-ssl/metadata.xml b/dev-ruby/rack-ssl/metadata.xml
deleted file mode 100644
index 950e526f18a6..000000000000
--- a/dev-ruby/rack-ssl/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <longdescription>
-Rack provides a common API for connecting web frameworks, web servers and layers
-of software inbetween.
-</longdescription>
- <upstream>
- <remote-id type="github">josh/rack-ssl</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rack-ssl/rack-ssl-1.4.1.ebuild b/dev-ruby/rack-ssl/rack-ssl-1.4.1.ebuild
deleted file mode 100644
index 60cab0626573..000000000000
--- a/dev-ruby/rack-ssl/rack-ssl-1.4.1.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem eutils versionator
-
-DESCRIPTION="Force SSL/TLS in your app"
-HOMEPAGE="https://github.com/josh/rack-ssl/"
-SRC_URI="https://github.com/josh/rack-ssl/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-ruby_add_rdepend "virtual/ruby-ssl"
-
-ruby_add_bdepend "test? ( dev-ruby/rack-test )"
diff --git a/dev-ruby/rack-test/Manifest b/dev-ruby/rack-test/Manifest
index 56cacd55288a..9b4545c8800a 100644
--- a/dev-ruby/rack-test/Manifest
+++ b/dev-ruby/rack-test/Manifest
@@ -1,3 +1 @@
-DIST rack-test-0.6.3.gem 23552 BLAKE2B d494f7fa3d2f7ed6fc6d33e507c445990613425826ec2e3d059d978b09d316ab93685aa5fd00ea89d00002ec7ec242f7fa64a42ce214fa7e9c40334d7e7a3750 SHA512 a5ad0f20130eedc153515127d2483cb1322c230ab772307943ec6eb295706f3aab26c8599cba69323b3cdc5692b284ba0609d8db957ade7085a95d94ccdf8b41
-DIST rack-test-1.0.0.tar.gz 26188 BLAKE2B e1df3e0d0e9cb8757bc898a2780a45f808921638a01a9ade0c8ac3233745992fbec1780ca36d4595e5a89bf124dcec0fc74fc33e9b22c46723e851aa371a73b8 SHA512 e654a10359b771607eb5295f574ac4a7b42afafc9a85c65e87a54559db1b5221b6e4b5ace18db05acfec1f381caa93c4b3be1912c3f08fbb74861d6053a2d242
-DIST rack-test-1.1.0.tar.gz 27035 BLAKE2B 640de2303850662c3b6a8fc17f2344223c9928b48abde6d1b251a634689793158f35498c4736e4e2d069efa921d37bc32da92a7e17c0761a6f6111b345b54c1a SHA512 36d947d9b13d33ee8322e5b9d18fe8266787ccb7703f1fafadc040123e34dd44e98e7faf8b6dd816e51ed167065b2ffe79e9bcee74564dc324ba2b7dba76f82a
+DIST rack-test-2.1.0.tar.gz 30099 BLAKE2B 212f23cf1d65f8840e04bc895d511b1b35e0344e5074e7ef3a15c5184a55285cb495b54489512ba7757cfbbe4ce9886db9f6dd36e092f5653c3c5bc8fb84ea7a SHA512 0d9d1e2b74ff8acca1c97d08c068022345556758c3c0dcf81b87c2f7caa8ca5730af2adc89e5c2bcf8f598f08df056c39f7c348f13a1ce44c4bcf0f84fe2bc11
diff --git a/dev-ruby/rack-test/metadata.xml b/dev-ruby/rack-test/metadata.xml
index 5ae2f7cb9f0b..0bc53df14b4f 100644
--- a/dev-ruby/rack-test/metadata.xml
+++ b/dev-ruby/rack-test/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">brynary/rack-test</remote-id>
+ <remote-id type="github">rack/rack-test</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rack-test/rack-test-0.6.3.ebuild b/dev-ruby/rack-test/rack-test-0.6.3.ebuild
deleted file mode 100644
index ee177cee78d2..000000000000
--- a/dev-ruby/rack-test/rack-test-0.6.3.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby21 ruby22 ruby23 ruby24"
-
-# no documentation is generable, it needs hanna, which is broken
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc"
-
-inherit versionator ruby-fakegem
-
-DESCRIPTION="Rack::Test is a small, simple testing API for Rack apps"
-HOMEPAGE="https://github.com/brynary/rack-test"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rack-1.0:*"
-ruby_add_bdepend "
- test? ( >=dev-ruby/sinatra-1.2.6 )"
-
-all_ruby_prepare() {
- rm Gemfile* || die
- sed -i -e '/bundler/d' -e '/[Cc]ode[Cc]limate/d' -e '1igem "rack", "~>1.0"' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/rack-test/rack-test-1.0.0.ebuild b/dev-ruby/rack-test/rack-test-1.0.0.ebuild
deleted file mode 100644
index d15d7a3cbbde..000000000000
--- a/dev-ruby/rack-test/rack-test-1.0.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit versionator ruby-fakegem
-
-DESCRIPTION="Rack::Test is a small, simple testing API for Rack apps"
-HOMEPAGE="https://github.com/rack-test/rack-test"
-SRC_URI="https://github.com/rack-test/rack-test/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rack-1.0:* <dev-ruby/rack-3:*"
-ruby_add_bdepend "
- test? ( >=dev-ruby/sinatra-1.2.6 =dev-ruby/rack-1* )"
-
-all_ruby_prepare() {
- rm Gemfile* || die
- sed -i -e '/bundler/d' -e '/[Cc]ode[Cc]limate/d' \
- -e '1igem "rack", "~>1.0"' spec/spec_helper.rb || die
-
- # Use correct version
- sed -i -e 's/0.8.2/0.8.3/' lib/rack/test/version.rb || die
-}
diff --git a/dev-ruby/rack-test/rack-test-1.1.0.ebuild b/dev-ruby/rack-test/rack-test-1.1.0.ebuild
deleted file mode 100644
index 5e84bb40bf11..000000000000
--- a/dev-ruby/rack-test/rack-test-1.1.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Rack::Test is a small, simple testing API for Rack apps"
-HOMEPAGE="https://github.com/rack-test/rack-test"
-SRC_URI="https://github.com/rack-test/rack-test/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1.0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rack-1.0:* <dev-ruby/rack-3:*"
-ruby_add_bdepend "
- test? ( dev-ruby/sinatra:2 dev-ruby/rack:2.0 )"
-
-all_ruby_prepare() {
- rm Gemfile* || die
- sed -i -e '/bundler/d' -e '/[Cc]ode[Cc]limate/d' -e '/simplecov/,/^end/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/rack-test/rack-test-2.1.0.ebuild b/dev-ruby/rack-test/rack-test-2.1.0.ebuild
new file mode 100644
index 000000000000..d5b45167ab51
--- /dev/null
+++ b/dev-ruby/rack-test/rack-test-2.1.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Rack::Test is a small, simple testing API for Rack apps"
+HOMEPAGE="https://github.com/rack/rack-test"
+SRC_URI="https://github.com/rack/rack-test/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/rack-1.3:*"
+ruby_add_bdepend "
+ test? ( dev-ruby/minitest:5 dev-ruby/minitest-global_expectations )"
+
+all_ruby_prepare() {
+ sed -e 's/git ls-files --/find/' \
+ -e "s:_relative ': './:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -w spec/all.rb || die
+}
diff --git a/dev-ruby/rack/Manifest b/dev-ruby/rack/Manifest
index 7eac82197246..cfbd893f1d2c 100644
--- a/dev-ruby/rack/Manifest
+++ b/dev-ruby/rack/Manifest
@@ -1,3 +1,7 @@
-DIST rack-1.6.11.gem 230400 BLAKE2B 923a0a1ee7c3ea86c76e632764a678d47be4d4d953d3166488fdea6c198a64603017ff0bd21597dc633dbcb1f108363c52480a98ac0b80991fc4a759dd374f6f SHA512 f54d9c4d72d22c57624bb745399ac0d4f155185d01f956ad395bee2a0add6f11e8d9d25fcd330ec6aa97409ba10c2246424d067999b86f2e5cb1fd74a43c6529
-DIST rack-2.0.6.gem 255488 BLAKE2B 7b23ad825e3e82f5010e810acde5eb6f3696489a78c3c67d7ac6cd73574236f83107b8a5fc0dbd4c932e2bf866c03208933d4e5bd78bf8d57aff02f96bccf6e8 SHA512 f1b93bbd16b7e44423c0977444183d9685e3c82e806304f304620731e5b4590920dcc363026277aa4b9ee0a2151c54570be341dcb9265517c7315ca4a504ef22
-DIST rack-2.0.7.gem 254976 BLAKE2B a005cfcfb4bbd6884c415a8604aeea5a93f2c182e8fda25a64af2393485c09e06fa16b2e5905274d3c9ae8d91c9f451d7f5949a9c3c7fb6592a210f8ce1fbbea SHA512 caefa4c3b6a76dd3f57f229fa0a6b0e1d84b7e9a029c6b473695b44467ae1400d098132b206092cd900e636af6d734117fba02ec21a90500f7fab8aa9dd84cd2
+DIST rack-2.2.8.1.tar.gz 279646 BLAKE2B 2e466bb3052266fa3cba5551af128d6723d9acd281962bbc84cb6c4c9a0aaaf018417c5549ae9cd8ae74df12726e1d62346b22cc1217248be488a63449cf870d SHA512 3dc99071ff5e68954824e6af57524222d4f0014e1cdf04dafc2131e5a2c208c6aa925a2ad053e2d26204383b20395ab499e8236a1d92c8c4e7d7959225bd5dc6
+DIST rack-2.2.8.tar.gz 279555 BLAKE2B 798d6d1e0877a895c0b4d33c5dc20e6cfab88745abd4cb76166484df355b283a9e842791b0d874c53ffb8600258d169e24a4570850f4f0994b596c6ebf76937e SHA512 e3055483c8f6f7a9a6aeb5654865a004b02bef781dd95072b84402a98549c13c66b5591b25b1a35fb6915af4b39adf88aa716e3edef7d0e41dbebf2a2a79ffcb
+DIST rack-2.2.9.tar.gz 280594 BLAKE2B 669eb4b979183a23474600003f18580e8f3ccfe9677db0c5e93a86f1f6c00cfdecf1e0481249199470dbb1ae3423c2e883cd8149d7fc65c5e8be88a83473aa32 SHA512 a9d6fdeb5603217a0208d383875613b86072da44e14b0e6ce0811ec55b80a0abd7448bd8f0c94bfef900fcd632e85228d74094efd88c829ebd6c565076ff47f8
+DIST rack-3.0.10.tar.gz 789469 BLAKE2B 2c9781301034f30524243727ada5450f613d474210f4f0edbafec994fd6705b8e777295e3066b4a5f698065ffa57c0d0a2bd75450c07047fd6313b5df70e4fad SHA512 9f165fb81c648cdcf973ad0e03a8ffcf0785dbdaf063f11b0b8c3a124af5765b9dfde57f728d1e13b50c3f9efa375fe7e0b7b0f2c044e7a074ab96d577021c98
+DIST rack-3.0.8.tar.gz 788610 BLAKE2B 9a591242e37f10021a2779bc495ab0ef954eb6474efe279f2bc6417e4255d83a92f156a9bc52fe90c098dc23c26eddf802119fdcd739a05332bc398db1c12456 SHA512 045a1de846e984d2067ce647d0b3652c810a264fa4f84e9791a623ac5c5cfa5ab4b961c4cb0328b51a71f66082190741dbaac3f4dbafad7c5a8e97a71b169448
+DIST rack-3.0.9.1.tar.gz 789318 BLAKE2B 300be59512a1497b832fe553ae9d957e380c5399707c891b67a950db32682ee8e2539dab02e656fdc855a8c821d7a5d8674b9208d4cc701f534eb8f1a8767fcf SHA512 0aacf814463dc03a95aaa7ec979caf3464d9e19d5ab9c3842978c2c94b81e8b2ed040f3f4028fd046c73e0632ee7754755cd35afc81ca47e22d43d4882086dc0
+DIST rack-3.0.9.tar.gz 789232 BLAKE2B b71eb67ff796a1389bba79c3132608bec30a65d44fa8dd302a5c4e40a42b30b0284aeea6b0b5a1c73ec823e134c25ce426375bfa8772242a8f6b05a4187ee36b SHA512 0a69f4755119aae5c6e0ab8b1541eade221a701a9cdba3b10afd2bbd2a37e8b0faa80aad92304cf29793b2536b05e8a5ae3c0e0e986b021af1566bda8d387353
diff --git a/dev-ruby/rack/files/rack-1.2.1-gentoo.patch b/dev-ruby/rack/files/rack-1.2.1-gentoo.patch
deleted file mode 100644
index 82ea127a8cb7..000000000000
--- a/dev-ruby/rack/files/rack-1.2.1-gentoo.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/lib/rack/rewindable_input.rb b/lib/rack/rewindable_input.rb
-index accd96b..d71fde6 100644
---- a/lib/rack/rewindable_input.rb
-+++ b/lib/rack/rewindable_input.rb
-@@ -94,7 +94,7 @@ module Rack
- end
-
- def filesystem_has_posix_semantics?
-- RUBY_PLATFORM !~ /(mswin|mingw|cygwin|java)/
-+ RUBY_PLATFORM !~ /(mswin|mingw|cygwin|java)/ && RUBY_VERSION < '1.9.1'
- end
- end
- end
diff --git a/dev-ruby/rack/files/rack-1.6-rewindable-ruby23.patch b/dev-ruby/rack/files/rack-1.6-rewindable-ruby23.patch
deleted file mode 100644
index 9d36a7328e2c..000000000000
--- a/dev-ruby/rack/files/rack-1.6-rewindable-ruby23.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 11b5a15dd1c8a41d87eb73df7bb99a3affecd787 Mon Sep 17 00:00:00 2001
-From: deepj <deepjungle.maca@gmail.com>
-Date: Mon, 25 May 2015 22:41:31 +0200
-Subject: [PATCH] Clean up Rack::Rewindable
-
----
- lib/rack/rewindable_input.rb | 11 -----------
- 1 file changed, 11 deletions(-)
-
-diff --git a/lib/rack/rewindable_input.rb b/lib/rack/rewindable_input.rb
-index 64efdda..dd6b784 100644
---- a/lib/rack/rewindable_input.rb
-+++ b/lib/rack/rewindable_input.rb
-@@ -57,15 +57,6 @@ def close
-
- private
-
-- # Ruby's Tempfile class has a bug. Subclass it and fix it.
-- class Tempfile < ::Tempfile
-- def _close
-- @tmpfile.close if @tmpfile
-- @data[1] = nil if @data
-- @tmpfile = nil
-- end
-- end
--
- def make_rewindable
- # Buffer all data into a tempfile. Since this tempfile is private to this
- # RewindableInput object, we chmod it so that nobody else can read or write
-@@ -77,8 +68,6 @@ def make_rewindable
- @rewindable_io.set_encoding(Encoding::BINARY) if @rewindable_io.respond_to?(:set_encoding)
- @rewindable_io.binmode
- if filesystem_has_posix_semantics?
-- # Use ::File.unlink as 1.9.1 Tempfile has a bug where unlink closes the file!
-- ::File.unlink @rewindable_io.path
- raise 'Unlink failed. IO closed.' if @rewindable_io.closed?
- @unlinked = true
- end
diff --git a/dev-ruby/rack/metadata.xml b/dev-ruby/rack/metadata.xml
index a4972c900d78..416ec8c431ca 100644
--- a/dev-ruby/rack/metadata.xml
+++ b/dev-ruby/rack/metadata.xml
@@ -1,10 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <longdescription>Rack provides a common API for connecting web frameworks, web servers and layers
-of software inbetween.</longdescription>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <longdescription>
+ Rack provides a common API for connecting web frameworks, web servers and layers
+ of software inbetween.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">rack/rack</remote-id>
+ <remote-id type="rubygems">rack</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/rack/rack-1.6.11.ebuild b/dev-ruby/rack/rack-1.6.11.ebuild
deleted file mode 100644
index 1805ef2e37db..000000000000
--- a/dev-ruby/rack/rack-1.6.11.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="HISTORY.md KNOWN-ISSUES README.rdoc SPEC"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="A modular Ruby webserver interface"
-HOMEPAGE="https://rack.github.com/"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RUBY_PATCHES=( ${PN}-1.2.1-gentoo.patch ${PN}-1.6-rewindable-ruby23.patch )
-
-ruby_add_rdepend "virtual/ruby-ssl"
-
-# 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.
-ruby_add_bdepend "test? ( dev-ruby/bacon )"
-
-# Block against versions in older slots that also try to install a binary.
-RDEPEND="${RDEPEND} !<dev-ruby/rack-1.4.5-r1:1.4 !<dev-ruby/rack-1.5.2-r4:1.5"
-
-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
-
- # Skip test also failing upstream in preference of making a security release available.
- sed -i -e '/knows to prefer plaintext for non-html/,/^ end/ s:^:#:' test/spec_showexceptions.rb || die
-}
-
-each_ruby_test() {
- # Since the Rakefile calls specrb directly rather than loading it, we
- # cannot use it to launch the tests or only the currently-selected
- # RUBY interpreter will be tested.
- ${RUBY} -S bacon -Ilib -w -a \
- -q -t '^(?!Rack::Handler|Rack::Adapter|Rack::Session::Memcache|Rack::Server)' \
- || die "test failed for ${RUBY}"
-}
diff --git a/dev-ruby/rack/rack-2.0.6.ebuild b/dev-ruby/rack/rack-2.0.6.ebuild
deleted file mode 100644
index 6e4cb7682a2a..000000000000
--- a/dev-ruby/rack/rack-2.0.6.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="HISTORY.md README.rdoc SPEC"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="A modular Ruby webserver interface"
-HOMEPAGE="https://rack.github.com/"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "virtual/ruby-ssl"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 dev-ruby/concurrent-ruby )"
-
-# 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.
-
-# Block against versions in older slots that also try to install a binary.
-RDEPEND="${RDEPEND} !<dev-ruby/rack-1.4.5-r1:1.4 !<dev-ruby/rack-1.5.2-r4:1.5 !<dev-ruby/rack-1.6.4-r2:1.6"
-
-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
-
- # Avoid development dependency
- sed -i -e '/minitest-sprint/ s:^:#:' 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/rack/rack-2.0.7.ebuild b/dev-ruby/rack/rack-2.0.7.ebuild
deleted file mode 100644
index 705fdd07effb..000000000000
--- a/dev-ruby/rack/rack-2.0.7.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="HISTORY.md README.rdoc SPEC"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="A modular Ruby webserver interface"
-HOMEPAGE="https://rack.github.com/"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "virtual/ruby-ssl"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 dev-ruby/concurrent-ruby )"
-
-# 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.
-
-# Block against versions in older slots that also try to install a binary.
-RDEPEND="${RDEPEND} !<dev-ruby/rack-1.4.5-r1:1.4 !<dev-ruby/rack-1.5.2-r4:1.5 !<dev-ruby/rack-1.6.4-r2:1.6"
-
-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
-
- # Avoid development dependency
- sed -i -e '/minitest-sprint/ s:^:#:' 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/rack/rack-2.2.8.1.ebuild b/dev-ruby/rack/rack-2.2.8.1.ebuild
new file mode 100644
index 000000000000..6877ce8eef40
--- /dev/null
+++ b/dev-ruby/rack/rack-2.2.8.1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc SPEC.rdoc"
+
+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="test"
+
+ruby_add_rdepend "virtual/ruby-ssl"
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitest:5
+ dev-ruby/minitest-global_expectations
+ || ( dev-ruby/psych:5 dev-ruby/psych:0 )
+ 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
+
+ # Avoid development dependency
+ sed -i -e '/minitest-sprint/ s:^:#:' -e "s:require_relative ':require './:" rack.gemspec || die
+
+ # Rename rackup command and force gem version to allow rack 2.x applications to work
+ mv bin/rackup bin/rackup-2 || die
+ sed -i -e '4igem "rack", "~> 2.2.0"' bin/rackup-2
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e "require 'test/gemloader.rb'; Dir['test/spec_*.rb'].each{|f| require f}" || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ einfo "The rackup command is installed as 'rackup-2' to allow parallel installation with rack 3"
+}
diff --git a/dev-ruby/rack/rack-2.2.8.ebuild b/dev-ruby/rack/rack-2.2.8.ebuild
new file mode 100644
index 000000000000..f39f092872f5
--- /dev/null
+++ b/dev-ruby/rack/rack-2.2.8.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc SPEC.rdoc"
+
+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/psych:5 dev-ruby/psych:0 )
+ 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
+
+ # Avoid development dependency
+ sed -i -e '/minitest-sprint/ s:^:#:' -e "s:require_relative ':require './:" rack.gemspec || die
+
+ # Rename rackup command and force gem version to allow rack 2.x applications to work
+ mv bin/rackup bin/rackup-2 || die
+ sed -i -e '4igem "rack", "~> 2.2.0"' bin/rackup-2
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e "require 'test/gemloader.rb'; Dir['test/spec_*.rb'].each{|f| require f}" || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ einfo "The rackup command is installed as 'rackup-2' to allow parallel installation with rack 3"
+}
diff --git a/dev-ruby/rack/rack-2.2.9.ebuild b/dev-ruby/rack/rack-2.2.9.ebuild
new file mode 100644
index 000000000000..6877ce8eef40
--- /dev/null
+++ b/dev-ruby/rack/rack-2.2.9.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc SPEC.rdoc"
+
+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="test"
+
+ruby_add_rdepend "virtual/ruby-ssl"
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitest:5
+ dev-ruby/minitest-global_expectations
+ || ( dev-ruby/psych:5 dev-ruby/psych:0 )
+ 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
+
+ # Avoid development dependency
+ sed -i -e '/minitest-sprint/ s:^:#:' -e "s:require_relative ':require './:" rack.gemspec || die
+
+ # Rename rackup command and force gem version to allow rack 2.x applications to work
+ mv bin/rackup bin/rackup-2 || die
+ sed -i -e '4igem "rack", "~> 2.2.0"' bin/rackup-2
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e "require 'test/gemloader.rb'; Dir['test/spec_*.rb'].each{|f| require f}" || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ einfo "The rackup command is installed as 'rackup-2' to allow parallel installation with rack 3"
+}
diff --git a/dev-ruby/rack/rack-3.0.10.ebuild b/dev-ruby/rack/rack-3.0.10.ebuild
new file mode 100644
index 000000000000..34788801390b
--- /dev/null
+++ b/dev-ruby/rack/rack-3.0.10.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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="test"
+
+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/rack/rack-3.0.8.ebuild b/dev-ruby/rack/rack-3.0.8.ebuild
new file mode 100644
index 000000000000..baa821ead480
--- /dev/null
+++ b/dev-ruby/rack/rack-3.0.8.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="ruby31 ruby32 ruby33"
+
+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/rack/rack-3.0.9.1.ebuild b/dev-ruby/rack/rack-3.0.9.1.ebuild
new file mode 100644
index 000000000000..34788801390b
--- /dev/null
+++ b/dev-ruby/rack/rack-3.0.9.1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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="test"
+
+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/rack/rack-3.0.9.ebuild b/dev-ruby/rack/rack-3.0.9.ebuild
new file mode 100644
index 000000000000..34788801390b
--- /dev/null
+++ b/dev-ruby/rack/rack-3.0.9.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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="test"
+
+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/rackup/Manifest b/dev-ruby/rackup/Manifest
new file mode 100644
index 000000000000..912a9a7fbbc1
--- /dev/null
+++ b/dev-ruby/rackup/Manifest
@@ -0,0 +1 @@
+DIST rackup-2.1.0.tar.gz 25009 BLAKE2B 56de2ad40a1e4dbd0d7efb6583ceea6836eea4fa37b81c0f670dfe91b1c18e9cc4eed21c9057e027d8eb5b04a0cb148b6f5bd540ec3491e2381976902178aa24 SHA512 c470af246388243d2c48f244ccdc72aa8888539f5561fb1352c68ae3946713f14853820348b9a96f9507c316e0f619f111cd3cde077f6ee7f9dadc4bb2f2396d
diff --git a/dev-ruby/rackup/metadata.xml b/dev-ruby/rackup/metadata.xml
new file mode 100644
index 000000000000..2b0a4ab4ca80
--- /dev/null
+++ b/dev-ruby/rackup/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">rack/rackup</remote-id>
+ <remote-id type="rubygems">rackup</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/rackup/rackup-2.1.0-r1.ebuild b/dev-ruby/rackup/rackup-2.1.0-r1.ebuild
new file mode 100644
index 000000000000..0946a2ddc09d
--- /dev/null
+++ b/dev-ruby/rackup/rackup-2.1.0-r1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md security.md"
+
+RUBY_FAKEGEM_GEMSPEC="rackup.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A general server command for Rack applications"
+HOMEPAGE="https://github.com/rack/rackup"
+SRC_URI="https://github.com/rack/rackup/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/rack:3.0
+ >=dev-ruby/webrick-1.8:0
+ virtual/ruby-ssl
+ !<dev-ruby/rack-2.2.7-r1
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitest:5
+ dev-ruby/minitest-global_expectations
+)"
+
+all_ruby_prepare() {
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true ${RUBY} -Ilib:test:. -e "Dir['test/spec_*.rb'].each{ require _1 }" || die
+}
diff --git a/dev-ruby/radius/metadata.xml b/dev-ruby/radius/metadata.xml
index 7abc0783f5ba..8baedcda0f50 100644
--- a/dev-ruby/radius/metadata.xml
+++ b/dev-ruby/radius/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/radius/radius-0.7.5-r1.ebuild b/dev-ruby/radius/radius-0.7.5-r1.ebuild
new file mode 100644
index 000000000000..6dea83697e4f
--- /dev/null
+++ b/dev-ruby/radius/radius-0.7.5-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG QUICKSTART.rdoc README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Powerful tag-based template system"
+HOMEPAGE="https://github.com/jlong/radius"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/kramdown )"
+
+all_ruby_prepare() {
+ sed -i -e "/simplecov/,/end/d" -e "/coveralls/d" test/test_helper.rb || die
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/radius/radius-0.7.5.ebuild b/dev-ruby/radius/radius-0.7.5.ebuild
deleted file mode 100644
index 37012dc8126f..000000000000
--- a/dev-ruby/radius/radius-0.7.5.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG QUICKSTART.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Powerful tag-based template system"
-HOMEPAGE="https://github.com/jlong/radius"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/kramdown )"
-
-all_ruby_prepare() {
- sed -i -e "/simplecov/,/end/d" -e "/coveralls/d" test/test_helper.rb || die
-}
diff --git a/dev-ruby/rails-deprecated_sanitizer/Manifest b/dev-ruby/rails-deprecated_sanitizer/Manifest
deleted file mode 100644
index e7c3abb28fc0..000000000000
--- a/dev-ruby/rails-deprecated_sanitizer/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rails-deprecated_sanitizer-1.0.3.gem 25600 BLAKE2B 2b97f2cc3e40b8e50d62dea51de340a2d6624fd89c5a8f9a9f60215604137b169c69834d5131212ad3a61b1902aab61d01b287b9b2394f5e24a1fefe79049500 SHA512 017ea5aac0ce1fe41e51e4e957c3ce0c4c44b92e50c81740529a86d915483b8755253138d918c556383ecf0469ac83a7d30aaf8947e4768be33c3695ef4afaf1
diff --git a/dev-ruby/rails-deprecated_sanitizer/metadata.xml b/dev-ruby/rails-deprecated_sanitizer/metadata.xml
deleted file mode 100644
index 871f510d6abc..000000000000
--- a/dev-ruby/rails-deprecated_sanitizer/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rails/rails-deprecated_sanitizer</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rails-deprecated_sanitizer/rails-deprecated_sanitizer-1.0.3-r2.ebuild b/dev-ruby/rails-deprecated_sanitizer/rails-deprecated_sanitizer-1.0.3-r2.ebuild
deleted file mode 100644
index d5b424d43675..000000000000
--- a/dev-ruby/rails-deprecated_sanitizer/rails-deprecated_sanitizer-1.0.3-r2.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby21 ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Deprecated sanitizer API extracted from Action View"
-HOMEPAGE="https://github.com/rails/rails-deprecated_sanitizer"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-4.2"
-
-ruby_add_bdepend "test? ( >=dev-ruby/actionview-4.2 )"
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/rails-dom-testing/Manifest b/dev-ruby/rails-dom-testing/Manifest
index e3396093b118..8c37a71cbc7f 100644
--- a/dev-ruby/rails-dom-testing/Manifest
+++ b/dev-ruby/rails-dom-testing/Manifest
@@ -1,2 +1,2 @@
-DIST rails-dom-testing-1.0.8.gem 17408 BLAKE2B 50d786712c8d85426e773d66c6f7ae0f687b6be02579ae52e2a3b61637fd27be08519bee0fd00ca687e7ea2c21ec5633b26e9ef1fefddbe48ea38127349fc1f3 SHA512 313ee52e68878264122aeeb264f2a25eed3b7b1122e1e7ebe0223407e67b6c17e1ce98e6822b5a28fc8b0f3457bbdbe7e3f60cc9d03447a0a1034c151392dab4
-DIST rails-dom-testing-2.0.3.gem 14336 BLAKE2B 8740433474e88a7cb5be14b4357dd0b69d45a39972136cfe9a4d695d2478b5b535e2b407eb0acc9ec3abd633cb1f8591a634abe6eacd8ec38bba865ad32ed92e SHA512 910549bd42e6651b7160af0a4aaffbbdeaee829aa7c3f3552a73ba985ef1230d5586f5bf723018f2cd8c6d5c6238d045a8f3e686704b6989e5a56664061f6c72
+DIST rails-dom-testing-2.1.1.gem 14848 BLAKE2B 6923e861ed19bb920fc8e356a9f568f6c9048e87e9bc7adbc804f7fcba92bb8e636b71e4a4594b845e220f19614169d4466a4151df27a45025eb839fea539364 SHA512 c820925858b0ea1c4f978743f0f1c2cb9104f66f82fb2b75ec1219d8d68d5766a3e3e571950e2a436d951d183877f5eed4c6d4d9039cee298ee15e568bea43fc
+DIST rails-dom-testing-2.2.0.gem 16896 BLAKE2B 7d2c17970b69a21d971a93d7a93f7ccdb269c609f53fcb573406f7670d17bc49e6313e723288a9e389c582c2331fa1088f1a4e8c10daf2d48cfdaec2b6e00e04 SHA512 90607b42d0239933f34aac803e090802ea823fd6c980149395860d50e8361428d6c5a4a3e9fedd5c7870c896864d3e797d5180b9796c9132ed2755d21e55de98
diff --git a/dev-ruby/rails-dom-testing/metadata.xml b/dev-ruby/rails-dom-testing/metadata.xml
index 4334593ccf54..f6fd46bfebc0 100644
--- a/dev-ruby/rails-dom-testing/metadata.xml
+++ b/dev-ruby/rails-dom-testing/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rails-dom-testing/rails-dom-testing-1.0.8-r1.ebuild b/dev-ruby/rails-dom-testing/rails-dom-testing-1.0.8-r1.ebuild
deleted file mode 100644
index d7f1ca77ce09..000000000000
--- a/dev-ruby/rails-dom-testing/rails-dom-testing-1.0.8-r1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby21 ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Compare doms and assert certain elements exists in doms using Nokogiri"
-HOMEPAGE="https://github.com/kaspth/rails-dom-testing"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/activesupport:4.2
- >=dev-ruby/nokogiri-1.6.0 =dev-ruby/nokogiri-1*
- >=dev-ruby/rails-deprecated_sanitizer-1.0.1"
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/rails-dom-testing/rails-dom-testing-2.0.3.ebuild b/dev-ruby/rails-dom-testing/rails-dom-testing-2.0.3.ebuild
deleted file mode 100644
index 965725798989..000000000000
--- a/dev-ruby/rails-dom-testing/rails-dom-testing-2.0.3.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Compare doms and assert certain elements exists in doms using Nokogiri"
-HOMEPAGE="https://github.com/kaspth/rails-dom-testing"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/activesupport-4.2.0:*
- >=dev-ruby/nokogiri-1.6"
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/rails-dom-testing/rails-dom-testing-2.1.1.ebuild b/dev-ruby/rails-dom-testing/rails-dom-testing-2.1.1.ebuild
new file mode 100644
index 000000000000..ea3ed52cd8ee
--- /dev/null
+++ b/dev-ruby/rails-dom-testing/rails-dom-testing-2.1.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Compare doms and assert certain elements exists in doms using Nokogiri"
+HOMEPAGE="https://github.com/kaspth/rails-dom-testing"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/activesupport-5.0.0:*
+ >=dev-ruby/nokogiri-1.6
+ dev-ruby/minitest
+"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/rails-dom-testing/rails-dom-testing-2.2.0.ebuild b/dev-ruby/rails-dom-testing/rails-dom-testing-2.2.0.ebuild
new file mode 100644
index 000000000000..272b5586675b
--- /dev/null
+++ b/dev-ruby/rails-dom-testing/rails-dom-testing-2.2.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Compare doms and assert certain elements exists in doms using Nokogiri"
+HOMEPAGE="https://github.com/kaspth/rails-dom-testing"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/activesupport-5.0.0:*
+ >=dev-ruby/nokogiri-1.6
+ dev-ruby/minitest
+"
+
+each_ruby_test() {
+ MT_NO_PLUGINS=1 ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/rails-html-sanitizer/Manifest b/dev-ruby/rails-html-sanitizer/Manifest
index e8cf1880015b..002418af9a5f 100644
--- a/dev-ruby/rails-html-sanitizer/Manifest
+++ b/dev-ruby/rails-html-sanitizer/Manifest
@@ -1,2 +1,2 @@
-DIST rails-html-sanitizer-1.0.4.gem 15872 BLAKE2B 4408a494f75bedb4e4286e053536abf62f094873d9e0a8c21f9de6f42b2826f187c9919fb86c84380c1eff241c62f077d48cc21912c93fe85ac2b6039089a84d SHA512 f608f2b642869606fc2c3986298a8ae3e36c676a7eda5e3cce419700961bfed011f8d4a2dcb59e5d32a41f556815ca5f214ec19f8940ce71d1217ba84686b8e1
-DIST rails-html-sanitizer-1.2.0.gem 16384 BLAKE2B f5a5ededf15c199b59dfcd7b2da234f766cd46cf46834b458940d7b68fe27dd97602a6a673d8c0f700cf9c593a8375c97e74da0ac0db355af93bf951540ac368 SHA512 efe006ad2857a21d466375f630fe269cceb78aa467d91cdf193ec5eab8fdb0d58443696989b920840f6aafcb9ddfa6a72972f0e09456b2aa57018d86791cc38f
+DIST rails-html-sanitizer-1.5.0.gem 19456 BLAKE2B 7f8b0270d9006b975fed28941139e176af4738954bd56e7b34dbc4f778521d770ff0c2c92cb365d1a671fc69d1da79f4d3bd4d90e37913c61084139ba7ff9893 SHA512 533a203d34b0f77b70258fc1b610caf1d4910da48224b136774d094ee8fa74b5cd9f3b1719118334489a41d743b97592539935b05b07770cd745e03634422214
+DIST rails-html-sanitizer-1.6.0.gem 23552 BLAKE2B 7bc00cada4bb10a6f3b264a20f555b1e3e81a09d528339f20961ebbd5c958c23a7b14febf8a2e1c07d36e8d67aff30317d2ebc0f9cd009a1b519d24b18a0171b SHA512 265c093872b43794be02a8b1d2574be8270762b46c2b0d930159d3b41e06b897ed8b6edf3b219e0e71591fa5f7d38107ed8d332cebd3dfe4c37c6d06b7b5fa12
diff --git a/dev-ruby/rails-html-sanitizer/metadata.xml b/dev-ruby/rails-html-sanitizer/metadata.xml
index a4fcd6097795..62317cbe4271 100644
--- a/dev-ruby/rails-html-sanitizer/metadata.xml
+++ b/dev-ruby/rails-html-sanitizer/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">rafaelfranca/rails-html-sanitizer</remote-id>
+ <remote-id type="github">rails/rails-html-sanitizer</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.0.4.ebuild b/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.0.4.ebuild
deleted file mode 100644
index 5c500c2ef61f..000000000000
--- a/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.0.4.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Sanitize HTML fragments in Rails applications"
-HOMEPAGE="https://github.com/rafaelfranca/rails-html-sanitizer"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/loofah-2.2.2:0"
-
-ruby_add_bdepend "test? ( dev-ruby/rails-dom-testing )"
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.2.0.ebuild b/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.2.0.ebuild
deleted file mode 100644
index aed8ae6608b6..000000000000
--- a/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.2.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Sanitize HTML fragments in Rails applications"
-HOMEPAGE="https://github.com/rafaelfranca/rails-html-sanitizer"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/loofah-2.2.2:0"
-
-ruby_add_bdepend "test? ( dev-ruby/rails-dom-testing )"
-
-all_ruby_prepare() {
- # Avoid tests that depend on nokogiri patches to libxml2.
- sed -i -e '/\(name_action\|attr\)_in_a_tag_in_safe_list_sanitizer/askip "libxml2"' test/sanitizer_test.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.5.0.ebuild b/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.5.0.ebuild
new file mode 100644
index 000000000000..1b3a9b71d304
--- /dev/null
+++ b/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.5.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Sanitize HTML fragments in Rails applications"
+HOMEPAGE="https://github.com/rafaelfranca/rails-html-sanitizer"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/loofah-2.19.1:0"
+
+ruby_add_bdepend "test? ( dev-ruby/rails-dom-testing )"
+
+all_ruby_prepare() {
+ # Avoid tests that depend on nokogiri patches to libxml2.
+# sed -i -e '/\(name_action\|attr\)_in_a_tag_in_safe_list_sanitizer/askip "libxml2"' test/sanitizer_test.rb || die
+:
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.6.0.ebuild b/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.6.0.ebuild
new file mode 100644
index 000000000000..0daf562b836c
--- /dev/null
+++ b/dev-ruby/rails-html-sanitizer/rails-html-sanitizer-1.6.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Sanitize HTML fragments in Rails applications"
+HOMEPAGE="https://github.com/rails/rails-html-sanitizer"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/loofah-2.21:0 >=dev-ruby/nokogiri-1.14:0"
+
+ruby_add_bdepend "test? ( dev-ruby/rails-dom-testing )"
+
+all_ruby_prepare() {
+ # Avoid tests that depend on nokogiri patches to libxml2.
+# sed -i -e '/\(name_action\|attr\)_in_a_tag_in_safe_list_sanitizer/askip "libxml2"' test/sanitizer_test.rb || die
+:
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/rails/Manifest b/dev-ruby/rails/Manifest
index f1ac0d388ea9..a595834c296c 100644
--- a/dev-ruby/rails/Manifest
+++ b/dev-ruby/rails/Manifest
@@ -1,3 +1,6 @@
-DIST rails-4.2.11.1.gem 1476096 BLAKE2B 18fbaea1b955e586bf84db43dd24998e18175895385b7d360f0b87b8ff283313b360180adba73f1172ce7a3633813e8e59b3dfa18111f439afd54f3ed576440f SHA512 55cd57fdd9d8f1efa0f8c7e7c1dbcadc1a7c2bdcb6230a1c88cea5c4bb567916d1c511749a08162e509c6fe15d4f57634bcedd4e2a32fe6ed5a726a229a6ecab
-DIST rails-5.1.7.gem 6656 BLAKE2B fcd98f59c8386585048f085add74e8349f9145e72c3edb8a96e839521034f53aa4d67cd0e2ced82eb9382fe956166ed846807f1c31dac442bf8d4962cf4e7121 SHA512 6ac4450256ba9c88dbf37cdb5b4306f2822a6c9c336d5ca4c4afce6f240827a53a70d4fd839118011c538793e448bb2bccf4ac4df62240b9312cec88ff42b9a1
-DIST rails-5.2.3.gem 6656 BLAKE2B 74798f554234d7eab2498912a3c263d83a1bc6c2e0744025cddd44804bf34247de77fc9c8e6a6e17b0cc0db47c60e4fea5581284b1d31a7dbcee0c0990665057 SHA512 18387ec05fa1ab29c361518ec9c8fa0b55a65ed1da6391bed291ef82048b3e81230e1cae4b7f805ed7c56cc336d1bea8feec5aaa703eea4bc6c18912e75f78de
+DIST rails-6.1.7.6.gem 6656 BLAKE2B 2ff137655bcf6e504a217bc5f796f5dbf935b8c7fd57ace8abb79f3e0473ef52e1cbcef969423d9bf00bf5606d0260049bfbfc389beae0b5b9d4127093420fcf SHA512 c2233f8e92d2d4ad02f03c189a5a94cc97c40e35ca1423cfcdbea92f46f7cb73be595ef979c8a7f734c92bb76dbb85b4653d92a7d91f51361693b2369a184a22
+DIST rails-6.1.7.7.gem 6656 BLAKE2B bf183f9c7749ec4c3938db63b262a220991a0aeea4da9e3500e9ccca1e5c712585ccc31447aba6da8aa0f91e2696a5fc45e6a6bd73e2eb3bddb3767452213be5 SHA512 3566fe89b223227e337d23e8a863a12d7b9557bc80e90aef8ae44c30c270348569b78d83c5f9667a81656440f41161aa0e982f0840f4d3846b787a436bdc3e89
+DIST rails-7.0.8.1.gem 7168 BLAKE2B 71f0837f3190aa5d781ed3ea98ee1f5c9c87e09719f0954e948e3ab763a035479e9f9a25c4f727d948b83023200c4f0ef6bf2964be336f5361d4a16fbdf012f3 SHA512 bec52a2d8b086d9b6ec0a7351286b4d8a6cdbf60f332db5be738fd30bd0cf3bedca582803c951dee6501c327ae9f45b51dfeaa3d5c5665195fa66ce41bcc10d0
+DIST rails-7.0.8.gem 7168 BLAKE2B 247aa3e46d5c1037982d65ad720a3c7aedba682b8773acda7f6fd724e6c5b009b45854b6509a062c95c577eeca92f485eed2bc94f3cb5d0b8b275be61d39b152 SHA512 511cc43c1dbb992fed684ade1505d9a9d1aca4ad48de5134d3b9f7e825ec60425b6418d0b6382741bcfd5d43fd4ad6d5035f7ff01f170b457f9822e2cc78eeeb
+DIST rails-7.1.3.2.gem 7168 BLAKE2B 6b67a2eb87d1a51e17b7fb015de73a438656fda729dd091413176ce0c53e08a3bc1de77cbd92810478de69aab31f380193bf906f4aecc0b9cb77a7c8ad2677ec SHA512 b3c87c79f585680a3f55dc583a914863a8ad7ee60271560efa86a2ff8dd88b0d48c09242aa705a2f62867c75030dd312201c3f8897e2406dda03f36ea1d13ca3
+DIST rails-7.1.3.gem 7168 BLAKE2B a14f2ee96ef793fb8eb6eebf6afc4113492796a1f580deb7b8ee54075293bddb0903cc59875bdd1863ee210869bd22704952641535349beddd226f728ffe0c5d SHA512 e832193b30b9abba746f71604d0821d374d7457c53c78bf97c68415721f852d70ceeb79c1c77e31c0dc7f6df6769c5a00838ab55a7dfbbbe0a80e51ee93e33cc
diff --git a/dev-ruby/rails/metadata.xml b/dev-ruby/rails/metadata.xml
index 34dab8d5db88..7a38fd1850ff 100644
--- a/dev-ruby/rails/metadata.xml
+++ b/dev-ruby/rails/metadata.xml
@@ -1,15 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
- <use>
- <flag name="asset-pipeline">
- Also install the default components for the asset pipeline.
- These are not required but they are activated automatically
- in new Rails projects by default.
- </flag>
- </use>
</pkgmetadata>
diff --git a/dev-ruby/rails/rails-4.2.11.1.ebuild b/dev-ruby/rails/rails-4.2.11.1.ebuild
deleted file mode 100644
index 2ee74fb1984a..000000000000
--- a/dev-ruby/rails/rails-4.2.11.1.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-# The guides are now here but we'd need to rebuilt them first.
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md guides/CHANGELOG.md"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="ruby on rails is a web-application and persistance framework"
-HOMEPAGE="http://www.rubyonrails.org"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux"
-
-IUSE="+asset-pipeline"
-
-ruby_add_rdepend "
- ~dev-ruby/actionmailer-${PV}
- ~dev-ruby/actionpack-${PV}
- ~dev-ruby/actionview-${PV}
- ~dev-ruby/activejob-${PV}
- ~dev-ruby/activemodel-${PV}
- ~dev-ruby/activerecord-${PV}
- ~dev-ruby/activesupport-${PV}
- ~dev-ruby/railties-${PV}
- >=dev-ruby/bundler-1.3 =dev-ruby/bundler-1*
- dev-ruby/sprockets-rails:*
- asset-pipeline? (
- dev-ruby/jquery-rails:*
- >=dev-ruby/sass-rails-5.0:5.0
- >=dev-ruby/uglifier-1.3.0:*
- >=dev-ruby/coffee-rails-4.1.0:*
- )"
-
-# also: turbolinks, >=jbuilder-1.2:1
diff --git a/dev-ruby/rails/rails-5.1.7.ebuild b/dev-ruby/rails/rails-5.1.7.ebuild
deleted file mode 100644
index b886f9c5d44b..000000000000
--- a/dev-ruby/rails/rails-5.1.7.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="ruby on rails is a web-application and persistance framework"
-HOMEPAGE="http://www.rubyonrails.org"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux"
-
-IUSE="+asset-pipeline"
-
-ruby_add_rdepend "
- ~dev-ruby/actioncable-${PV}
- ~dev-ruby/actionmailer-${PV}
- ~dev-ruby/actionpack-${PV}
- ~dev-ruby/actionview-${PV}
- ~dev-ruby/activejob-${PV}
- ~dev-ruby/activemodel-${PV}
- ~dev-ruby/activerecord-${PV}
- ~dev-ruby/activesupport-${PV}
- ~dev-ruby/railties-${PV}
- >=dev-ruby/bundler-1.3 =dev-ruby/bundler-1*
- >=dev-ruby/sprockets-rails-2.0.0:*
- asset-pipeline? (
- dev-ruby/jquery-rails:*
- >=dev-ruby/sass-rails-5.0:5.0
- >=dev-ruby/uglifier-1.3.0:*
- >=dev-ruby/coffee-rails-4.1.0:*
- )"
-
-# also: turbolinks, >=jbuilder-1.2:1
diff --git a/dev-ruby/rails/rails-5.2.3.ebuild b/dev-ruby/rails/rails-5.2.3.ebuild
deleted file mode 100644
index e9a81875a301..000000000000
--- a/dev-ruby/rails/rails-5.2.3.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="ruby on rails is a web-application and persistance framework"
-HOMEPAGE="https://rubyonrails.org"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-
-IUSE="+asset-pipeline"
-
-ruby_add_rdepend "
- ~dev-ruby/actioncable-${PV}
- ~dev-ruby/actionmailer-${PV}
- ~dev-ruby/actionpack-${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/railties-${PV}
- >=dev-ruby/bundler-1.3 =dev-ruby/bundler-1*
- >=dev-ruby/sprockets-rails-2.0.0:*
- asset-pipeline? (
- dev-ruby/jquery-rails:*
- >=dev-ruby/sass-rails-5.0:5.0
- >=dev-ruby/uglifier-1.3.0:*
- >=dev-ruby/coffee-rails-4.1.0:*
- )"
-
-# also: turbolinks, >=jbuilder-1.2:1
diff --git a/dev-ruby/rails/rails-6.1.7.6.ebuild b/dev-ruby/rails/rails-6.1.7.6.ebuild
new file mode 100644
index 000000000000..9fce0d61a8cc
--- /dev/null
+++ b/dev-ruby/rails/rails-6.1.7.6.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+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 ~riscv"
+
+IUSE=""
+
+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/railties-${PV}
+ >=dev-ruby/bundler-1.15.0:*
+ >=dev-ruby/sprockets-rails-2.0.0:*
+"
diff --git a/dev-ruby/rails/rails-6.1.7.7.ebuild b/dev-ruby/rails/rails-6.1.7.7.ebuild
new file mode 100644
index 000000000000..962a25c5c669
--- /dev/null
+++ b/dev-ruby/rails/rails-6.1.7.7.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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 ~riscv"
+
+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/railties-${PV}
+ >=dev-ruby/bundler-1.15.0:*
+ >=dev-ruby/sprockets-rails-2.0.0:*
+"
diff --git a/dev-ruby/rails/rails-7.0.8.1.ebuild b/dev-ruby/rails/rails-7.0.8.1.ebuild
new file mode 100644
index 000000000000..72d44b0d9e7c
--- /dev/null
+++ b/dev-ruby/rails/rails-7.0.8.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="ruby on rails is a web-application and persistence framework"
+HOMEPAGE="https://rubyonrails.org"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+ruby_add_rdepend "
+ ~dev-ruby/actioncable-${PV}
+ ~dev-ruby/actionmailbox-${PV}
+ ~dev-ruby/actionmailer-${PV}
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/actiontext-${PV}
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activejob-${PV}
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/activestorage-${PV}
+ ~dev-ruby/activesupport-${PV}
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/bundler-1.15.0:*
+"
diff --git a/dev-ruby/rails/rails-7.0.8.ebuild b/dev-ruby/rails/rails-7.0.8.ebuild
new file mode 100644
index 000000000000..e329129af729
--- /dev/null
+++ b/dev-ruby/rails/rails-7.0.8.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="ruby on rails is a web-application and persistence framework"
+HOMEPAGE="https://rubyonrails.org"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+IUSE=""
+
+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/railties-${PV}
+ >=dev-ruby/bundler-1.15.0:*
+"
diff --git a/dev-ruby/rails/rails-7.1.3.2.ebuild b/dev-ruby/rails/rails-7.1.3.2.ebuild
new file mode 100644
index 000000000000..fe1a57d76293
--- /dev/null
+++ b/dev-ruby/rails/rails-7.1.3.2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="ruby on rails is a web-application and persistence framework"
+HOMEPAGE="https://rubyonrails.org"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+ruby_add_rdepend "
+ ~dev-ruby/actioncable-${PV}
+ ~dev-ruby/actionmailbox-${PV}
+ ~dev-ruby/actionmailer-${PV}
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/actiontext-${PV}
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activejob-${PV}
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/activestorage-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/bundler-1.15.0:*
+ ~dev-ruby/railties-${PV}
+"
diff --git a/dev-ruby/rails/rails-7.1.3.ebuild b/dev-ruby/rails/rails-7.1.3.ebuild
new file mode 100644
index 000000000000..fe1a57d76293
--- /dev/null
+++ b/dev-ruby/rails/rails-7.1.3.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="ruby on rails is a web-application and persistence framework"
+HOMEPAGE="https://rubyonrails.org"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+ruby_add_rdepend "
+ ~dev-ruby/actioncable-${PV}
+ ~dev-ruby/actionmailbox-${PV}
+ ~dev-ruby/actionmailer-${PV}
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/actiontext-${PV}
+ ~dev-ruby/actionview-${PV}
+ ~dev-ruby/activejob-${PV}
+ ~dev-ruby/activemodel-${PV}
+ ~dev-ruby/activerecord-${PV}
+ ~dev-ruby/activestorage-${PV}
+ ~dev-ruby/activesupport-${PV}
+ >=dev-ruby/bundler-1.15.0:*
+ ~dev-ruby/railties-${PV}
+"
diff --git a/dev-ruby/railties/Manifest b/dev-ruby/railties/Manifest
index e3b53c8c8150..5a38fea999e2 100644
--- a/dev-ruby/railties/Manifest
+++ b/dev-ruby/railties/Manifest
@@ -1,4 +1,6 @@
-DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
-DIST rails-5.1.7.tgz 6146668 BLAKE2B 494a12d79037010333c06d14573474f0d0c1e62ce5252e8fbe4eb4c6935dc660614c2ff29fd168bbc66d74bfa64b92abb84d02645cb3b2950db5c166111b7b19 SHA512 6595eb19f174c9e46a937d6028d9bb2bfdcda06f35ec2a0499bc5deff05d8cfc8f8fc725e664496d3b431c8724141a1410201b57945b98ca211aea15c990d621
-DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
-DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
+DIST rails-6.1.7.6.tgz 11040086 BLAKE2B 8b5311752952403cf8eae31b5d8e8d376c4b449f512e86df66b3e921375ffa3ea11e15f1d74a7f8ec9179ff70c32a6d4f8de75be5f92fe6315ee97164e22d2d0 SHA512 c4163565b2324ce97317d252f3d9e2e673a12b6ae7f54571645c958ce30221f1b357887ade80e46abdd47a422736b9946e49850d52ffd72d8acc87f35224e69f
+DIST rails-6.1.7.7.tgz 11041447 BLAKE2B 3f59325aa86d3b7d6e0773b9eb2b895a26b644109be8df0b0d9abbab8e6c77f76d316c717ecce4e2d79d3247559504a7452a8037d2d52a6cf95fbacd7f8b8612 SHA512 f9af4eebb3bffec78832f92be6158c71c147e265b54e8e368a06c762bfd1a7992256b3e9286aeb59eee69ba56be28d381a715eb13f99b9babfd9b7ce8051e210
+DIST rails-7.0.8.1.tgz 11089378 BLAKE2B 5d92087402d8aa2b86759ec92c44091a7a0f8a22959e0510f10417f88e54f9e1e6a14c4e9519033cd63bdd1f54f72b91bff8a3318a3264c39311317fb67e8b63 SHA512 74f467f7d3e5ec88560448e206a8f0cdf55bad60dd9eac019224fce86a766ee9d0c4afbd4eaae30dacfe34beebcff6aa9d3c5c99be9c8ad5c385817fe409afc8
+DIST rails-7.0.8.tgz 11073254 BLAKE2B 2aee047a365acb0890ef3afbccfe323fedccf7b54214aa1c2f92b7a7aaa64c275c1e03f8f97e6a2e30281224ba30703d18b40aeee9b4e7fb6f035a4a7716a054 SHA512 0e9feb5bd0360868c3109152d8ea414b65d36d33a5dbb96b199cfa6c4335800d6c392e0fbcbfa453a02fd75924a297a65caf04948895de53db43700478dbeb11
+DIST rails-7.1.3.2.tgz 10914950 BLAKE2B 419e6817958efcc5dbbb47d24498decff48fca9748c9f4069bcd353a4644fa623caf79c4072db0944139ac991d14623013683f69cef3126fa63348cc0612655b SHA512 0a58e7b125eb97f94a8a75bacd421d7197e6ad78d24651aecfe82e41c024ccfa42a9de0664099f55cd6ac6a41fd7f09cdc3177ed2b809b0be7d7df1639424f9d
+DIST rails-7.1.3.tgz 10900323 BLAKE2B a83ca4ee656e93241fa0460d8df197904a4eef310cf25bce6db6167bad87c8d0644533fa6e224ec959a4e10005164e0f981e14e8b23cee14e2747117be9da712 SHA512 df1128d1403ab82d218d2057c7c86e646594f97a8c6fcf5648a66440d52e5c20a4ceb0c13e70b6153152b44f62d8a1e20f3776acff5c55bc54d006cb7da32d12
diff --git a/dev-ruby/railties/metadata.xml b/dev-ruby/railties/metadata.xml
index 42d41e33d990..fbd27c03d85b 100644
--- a/dev-ruby/railties/metadata.xml
+++ b/dev-ruby/railties/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/railties/railties-4.2.11.1.ebuild b/dev-ruby/railties/railties-4.2.11.1.ebuild
deleted file mode 100644
index 791e8e0731a8..000000000000
--- a/dev-ruby/railties/railties-4.2.11.1.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_TEST="test:regular"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem versionator
-
-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="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-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.21"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- ~dev-ruby/actionpack-${PV}
- >=dev-ruby/thor-0.18.1 <dev-ruby/thor-2
- >=dev-ruby/rake-0.8.7"
-
-ruby_add_bdepend "
- test? (
- ~dev-ruby/actionview-${PV}
- dev-ruby/mocha:0.14
- )"
-
-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
-
- # Also allow rdoc 4.x
- sed -i -e 's/~> 3.4/>= 3.4/' ${RUBY_FAKEGEM_GEMSPEC} || 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-5.1.7.ebuild b/dev-ruby/railties/railties-5.1.7.ebuild
deleted file mode 100644
index d7469965e2b7..000000000000
--- a/dev-ruby/railties/railties-5.1.7.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_TEST="test:regular"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
-
-RUBY_FAKEGEM_BINDIR="exe"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem versionator
-
-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="$(get_version_component_range 1-2)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-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.23"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- ~dev-ruby/actionpack-${PV}
- >=dev-ruby/thor-0.18.1
- >=dev-ruby/rake-0.8.7
- dev-ruby/method_source
-"
-
-ruby_add_bdepend "
- test? (
- ~dev-ruby/actionview-${PV}
- dev-ruby/mocha:0.14
- )"
-
-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-5.2.3.ebuild b/dev-ruby/railties/railties-5.2.3.ebuild
deleted file mode 100644
index a69a3122d75d..000000000000
--- a/dev-ruby/railties/railties-5.2.3.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test:regular"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
-
-RUBY_FAKEGEM_BINDIR="exe"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Tools for creating, working with, and running Rails applications"
-HOMEPAGE="https://github.com/rails/rails"
-SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE=""
-
-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.24"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- ~dev-ruby/actionpack-${PV}
- >=dev-ruby/thor-0.18.1
- >=dev-ruby/rake-0.8.7
- dev-ruby/method_source
-"
-
-ruby_add_bdepend "
- test? (
- ~dev-ruby/actionview-${PV}
- dev-ruby/mocha:0.14
- )"
-
-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-6.0.0.ebuild b/dev-ruby/railties/railties-6.0.0.ebuild
deleted file mode 100644
index 0917e9af46eb..000000000000
--- a/dev-ruby/railties/railties-6.0.0.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby25 ruby26"
-
-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 ~arm64"
-IUSE=""
-
-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.24"
-
-ruby_add_rdepend "
- ~dev-ruby/activesupport-${PV}
- ~dev-ruby/actionpack-${PV}
- >=dev-ruby/thor-0.20.3
- >=dev-ruby/rake-0.8.7
- dev-ruby/method_source
-"
-
-ruby_add_bdepend "
- test? (
- ~dev-ruby/actionview-${PV}
- dev-ruby/mocha:0.14
- )"
-
-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-6.1.7.6.ebuild b/dev-ruby/railties/railties-6.1.7.6.ebuild
new file mode 100644
index 000000000000..e8dc95135054
--- /dev/null
+++ b/dev-ruby/railties/railties-6.1.7.6.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="test:regular"
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
+
+RUBY_FAKEGEM_BINDIR="exe"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tools for creating, working with, and running Rails applications"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+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.25"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ ~dev-ruby/actionpack-${PV}
+ dev-ruby/thor:1
+ >=dev-ruby/rake-0.8.7
+ dev-ruby/method_source
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/actionview-${PV}
+ dev-ruby/mocha:0.14
+ )"
+
+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-6.1.7.7.ebuild b/dev-ruby/railties/railties-6.1.7.7.ebuild
new file mode 100644
index 000000000000..991a334c4c47
--- /dev/null
+++ b/dev-ruby/railties/railties-6.1.7.7.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="test:regular"
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
+
+RUBY_FAKEGEM_BINDIR="exe"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tools for creating, working with, and running Rails applications"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~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.25"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ ~dev-ruby/actionpack-${PV}
+ dev-ruby/thor:1
+ >=dev-ruby/rake-0.8.7
+ dev-ruby/method_source
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/actionview-${PV}
+ dev-ruby/mocha:0.14
+ )"
+
+all_ruby_prepare() {
+ rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
+ sed -i -e '/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths"
+ sed -i -e '1igem "minitest", "~>4.0"' test/abstract_unit.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ ruby_fakegem_binwrapper rails rails-${PV}
+}
+
+pkg_postinst() {
+ elog "To select between slots of rails, use:"
+ elog "\teselect rails"
+
+ eselect rails update
+}
+
+pkg_postrm() {
+ eselect rails update
+}
diff --git a/dev-ruby/railties/railties-7.0.8.1.ebuild b/dev-ruby/railties/railties-7.0.8.1.ebuild
new file mode 100644
index 000000000000..e1fb14649e81
--- /dev/null
+++ b/dev-ruby/railties/railties-7.0.8.1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="test:regular"
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
+
+RUBY_FAKEGEM_BINDIR="exe"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tools for creating, working with, and running Rails applications"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+# The test suite has many failures, most likely due to a mismatch in
+# exact dependencies or environment specifics. Needs further
+# investigation.
+RESTRICT="test"
+
+RDEPEND+=">=app-eselect/eselect-rails-0.25"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ ~dev-ruby/actionpack-${PV}
+ dev-ruby/thor:1
+ >=dev-ruby/rake-12.2
+ dev-ruby/method_source
+ >=dev-ruby/zeitwerk-2.5:2
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/actionview-${PV}
+ dev-ruby/mocha:0.14
+ )"
+
+all_ruby_prepare() {
+ rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
+ sed -i -e '/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths"
+ sed -i -e '1igem "minitest", "~>4.0"' test/abstract_unit.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ ruby_fakegem_binwrapper rails rails-${PV}
+}
+
+pkg_postinst() {
+ elog "To select between slots of rails, use:"
+ elog "\teselect rails"
+
+ eselect rails update
+}
+
+pkg_postrm() {
+ eselect rails update
+}
diff --git a/dev-ruby/railties/railties-7.0.8.ebuild b/dev-ruby/railties/railties-7.0.8.ebuild
new file mode 100644
index 000000000000..e848f0b517aa
--- /dev/null
+++ b/dev-ruby/railties/railties-7.0.8.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="test:regular"
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
+
+RUBY_FAKEGEM_BINDIR="exe"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tools for creating, working with, and running Rails applications"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+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.25"
+
+ruby_add_rdepend "
+ ~dev-ruby/activesupport-${PV}
+ ~dev-ruby/actionpack-${PV}
+ dev-ruby/thor:1
+ >=dev-ruby/rake-12.2
+ dev-ruby/method_source
+ >=dev-ruby/zeitwerk-2.5:2
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/actionview-${PV}
+ dev-ruby/mocha:0.14
+ )"
+
+all_ruby_prepare() {
+ rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
+ sed -i -e '/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths"
+ sed -i -e '1igem "minitest", "~>4.0"' test/abstract_unit.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ ruby_fakegem_binwrapper rails rails-${PV}
+}
+
+pkg_postinst() {
+ elog "To select between slots of rails, use:"
+ elog "\teselect rails"
+
+ eselect rails update
+}
+
+pkg_postrm() {
+ eselect rails update
+}
diff --git a/dev-ruby/railties/railties-7.1.3.2.ebuild b/dev-ruby/railties/railties-7.1.3.2.ebuild
new file mode 100644
index 000000000000..5934d5cc6827
--- /dev/null
+++ b/dev-ruby/railties/railties-7.1.3.2.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="test:regular"
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
+
+RUBY_FAKEGEM_BINDIR="exe"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tools for creating, working with, and running Rails applications"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+# The test suite has many failures, most likely due to a mismatch in
+# exact dependencies or environment specifics. Needs further
+# investigation.
+RESTRICT="test"
+
+RDEPEND+=">=app-eselect/eselect-rails-0.25"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activesupport-${PV}
+ dev-ruby/irb
+ >=dev-ruby/rackup-1.0.0
+ >=dev-ruby/rake-12.2
+ >=dev-ruby/thor-1.2.2:1
+ >=dev-ruby/zeitwerk-2.6:2
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/actionview-${PV}
+ dev-ruby/mocha
+ )"
+
+all_ruby_prepare() {
+ rm "${S}/../Gemfile" || die "Unable to remove Gemfile"
+ sed -i -e '/load_paths/d' test/abstract_unit.rb || die "Unable to remove load paths"
+ sed -i -e '1igem "minitest", "~>4.0"' test/abstract_unit.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ ruby_fakegem_binwrapper rails rails-${PV}
+}
+
+pkg_postinst() {
+ elog "To select between slots of rails, use:"
+ elog "\teselect rails"
+
+ eselect rails update
+}
+
+pkg_postrm() {
+ eselect rails update
+}
diff --git a/dev-ruby/railties/railties-7.1.3.ebuild b/dev-ruby/railties/railties-7.1.3.ebuild
new file mode 100644
index 000000000000..38757014ee94
--- /dev/null
+++ b/dev-ruby/railties/railties-7.1.3.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="test:regular"
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="railties.gemspec"
+
+RUBY_FAKEGEM_BINDIR="exe"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tools for creating, working with, and running Rails applications"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+# The test suite has many failures, most likely due to a mismatch in
+# exact dependencies or environment specifics. Needs further
+# investigation.
+RESTRICT="test"
+
+RDEPEND+=">=app-eselect/eselect-rails-0.25"
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}
+ ~dev-ruby/activesupport-${PV}
+ dev-ruby/irb
+ >=dev-ruby/rackup-1.0.0
+ >=dev-ruby/rake-12.2
+ >=dev-ruby/thor-1.2.2:1
+ >=dev-ruby/zeitwerk-2.6:2
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/actionview-${PV}
+ dev-ruby/mocha:0.14
+ )"
+
+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/rainbow/Manifest b/dev-ruby/rainbow/Manifest
index 2a4e1ae4b355..d3225cecb213 100644
--- a/dev-ruby/rainbow/Manifest
+++ b/dev-ruby/rainbow/Manifest
@@ -1,3 +1 @@
-DIST rainbow-git-1.1.4.tgz 10301 BLAKE2B db89785e5147148a91dfed4dedbadf96bd9912b337fe7b5d1f5249029741ebc43b74183abdebf92e2cfa1ae9624cc57a2145a8f3d20d5996c2d4a7e495220ed5 SHA512 ca46337628a93530ccb10d66fad428248bea62c5a103485afff68584370a325a31f4d1f2a52e1228c1faa65c6f3cc2e19af22ee24ef3a61aa707899f04c4f546
-DIST rainbow-git-2.2.2.tgz 14295 BLAKE2B e89cb8d72d8b90f71967ee714098a133244673f00af39d7202d2a7fa1aa92c55af307d08417f83f63c967e568e9e9a15e47cc9dfd672dd8e6974e3eb4b630a4e SHA512 fac9a8cc39f23a1b268f3a01d755a5ccb79f8ee11a28228d958a5b77472c5b3fbaac748c917f7d4afebb911cbef0e0242c5224c8df29672073c1f54bf44c9307
-DIST rainbow-git-3.0.0.tgz 15105 BLAKE2B bc2c91b8ac726c080dbed45584adcdf4a4a496de070a92291042490009ae490efc4ab91cdd12d338f0cda156811358550507ad629e27dd54445a68427f8d4d2d SHA512 863b89152696b6a13606a1e92b68a788b9b5bcd6f521f02f26fb189fc6c9613e5db032dd5deed1aa95247ab0aa08a44981756f941af6eb786076c271881a38c1
+DIST rainbow-git-3.1.1.tgz 15785 BLAKE2B 9c5dffab817fa2b2b5f70acbe642990c6417de7a5b4347f7921ea57ea5c1017fea63656696544d870a3589f9ac8049e56baa6f4e70b8af902883d62046480d11 SHA512 5aff955e8baf78d99960ec9caa11626f07460085f35966c410bb867dd6454a932d2ee8742729a32eeca186fa338bbb02bce3ee8a452a8b4fb0044bb6ec751bc3
diff --git a/dev-ruby/rainbow/metadata.xml b/dev-ruby/rainbow/metadata.xml
index 3fec70c1e415..f1c7194f359a 100644
--- a/dev-ruby/rainbow/metadata.xml
+++ b/dev-ruby/rainbow/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rainbow/rainbow-1.1.4-r1.ebuild b/dev-ruby/rainbow/rainbow-1.1.4-r1.ebuild
deleted file mode 100644
index f661e80ff65a..000000000000
--- a/dev-ruby/rainbow/rainbow-1.1.4-r1.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="Changelog README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Extends ruby's String class with colored text on ANSI terminals"
-HOMEPAGE="https://github.com/sickill/rainbow"
-
-SRC_URI="https://github.com/sickill/rainbow/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 hppa ppc ~sparc x86"
-IUSE=""
diff --git a/dev-ruby/rainbow/rainbow-2.2.2.ebuild b/dev-ruby/rainbow/rainbow-2.2.2.ebuild
deleted file mode 100644
index e12e259e0565..000000000000
--- a/dev-ruby/rainbow/rainbow-2.2.2.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Colorize printed text on ANSI terminals"
-HOMEPAGE="https://github.com/sickill/rainbow"
-
-SRC_URI="https://github.com/sickill/rainbow/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="amd64 ~hppa ~ppc ~sparc x86"
-IUSE=""
diff --git a/dev-ruby/rainbow/rainbow-3.0.0.ebuild b/dev-ruby/rainbow/rainbow-3.0.0.ebuild
deleted file mode 100644
index 526c6a811f5b..000000000000
--- a/dev-ruby/rainbow/rainbow-3.0.0.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Colorize printed text on ANSI terminals"
-HOMEPAGE="https://github.com/sickill/rainbow"
-
-SRC_URI="https://github.com/sickill/rainbow/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="amd64 ~hppa ~ppc ~sparc x86"
-IUSE=""
diff --git a/dev-ruby/rainbow/rainbow-3.1.1.ebuild b/dev-ruby/rainbow/rainbow-3.1.1.ebuild
new file mode 100644
index 000000000000..f90ccf16ba5e
--- /dev/null
+++ b/dev-ruby/rainbow/rainbow-3.1.1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.markdown"
+RUBY_FAKEGEM_GEMSPEC="rainbow.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Colorize printed text on ANSI terminals"
+HOMEPAGE="https://github.com/sickill/rainbow"
+
+SRC_URI="https://github.com/sickill/rainbow/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="amd64 ~hppa ~ppc ~sparc x86"
+IUSE=""
diff --git a/dev-ruby/rake-compiler/Manifest b/dev-ruby/rake-compiler/Manifest
index 14721e8f1ca1..cf6abdcb8b00 100644
--- a/dev-ruby/rake-compiler/Manifest
+++ b/dev-ruby/rake-compiler/Manifest
@@ -1 +1,4 @@
-DIST rake-compiler-1.0.7.tar.gz 33444 BLAKE2B c3a92206d4d7defdf21295aaf094f704596962a3ee79c3517ea1058732e1f9f378b5f14bbe3b9652572564d11c566e26014e187dcdb488409bf95ea9a52e0a7c SHA512 fa901f5cc48891f07bd8d9a27cf4e745e87d5a667dbee0c9f4b43f9564fdfe3067b9c658f10ea8bcacd32ea7320a542ef0fca9373147057472f5572a4a4c5268
+DIST rake-compiler-1.2.3.tar.gz 38603 BLAKE2B d6cb1714ec3983051d794307e0516c01379a1d2a59430fad9780cc4b037a159c924a4edc1abf6cfbfa1b245203e4cfd4ea7bf887dbf2ea02ca93138629012062 SHA512 3dd3374630dbf0ce9d31caf62d399481622ed55aa15184073836043b907d40994b3284c40945f89c604296cc0cd2b588245e2310cef80846da48883c0e6a2f34
+DIST rake-compiler-1.2.5.tar.gz 38723 BLAKE2B 9f619026574467e6abd31a449f1825c49e0df691b1f139c7a8829a9361df3401bab65312303ab7a566eaf73f4a3a6b78674c73abe6f1cc72d1f1bbb6f619e51a SHA512 843b9286f874b487f23a3558b0a7565eea5e2a22144a8ece944b4b69d40945eee16cca8341e2ea3678418df7f36637574c6832899215676ca3294ae61b24ff5a
+DIST rake-compiler-1.2.6.tar.gz 38890 BLAKE2B 0d0e854b86fda590ea80cdff548195fda09f8851aad444546f88b8bd3594766b459e94185398d99c0322ca4314bee5b8ae9ebdc573ff1df1e3b78c3af651498b SHA512 29ad4a756149788676cf8f33dd419f0c306390d098f22b88aee211e61593b69f53e7f2b566d28c32cf3676478c0c2dba73a360715db1a9d6d50dedbbddb97379
+DIST rake-compiler-1.2.7.tar.gz 39664 BLAKE2B 457359489e5c3c2155d0b2118b146bdf0ed0249b642859d34950640f472e4ed1d166ff3491ba5f739612f4a32e537b8319ee0eca2cd85cd5bfb61aec7a7daecc SHA512 7405037092446e245028f73494acbeeb9b67cdcbc4e90832180d3c53d36df008b05a83e88e1919b884754e39365ca5685aa22cf8caf9e7f96786c11ac7208ead
diff --git a/dev-ruby/rake-compiler/metadata.xml b/dev-ruby/rake-compiler/metadata.xml
index 4d8e101d0e15..499364daa9ff 100644
--- a/dev-ruby/rake-compiler/metadata.xml
+++ b/dev-ruby/rake-compiler/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">luislavena/rake-compiler</remote-id>
+ <remote-id type="github">rake-compiler/rake-compiler</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rake-compiler/rake-compiler-1.0.7.ebuild b/dev-ruby/rake-compiler/rake-compiler-1.0.7.ebuild
deleted file mode 100644
index 8557f3df146e..000000000000
--- a/dev-ruby/rake-compiler/rake-compiler-1.0.7.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Provide a standard and simplified way to build and package Ruby extensions"
-HOMEPAGE="https://github.com/luislavena/rake-compiler"
-LICENSE="MIT"
-
-SRC_URI="https://github.com/luislavena/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/rake"
-
-ruby_add_bdepend "test? ( dev-ruby/rspec:3 )"
-
-USE_RUBY="ruby23 ruby24 ruby25" ruby_add_bdepend "test? ( dev-util/cucumber dev-ruby/rspec:2 )"
-
-all_ruby_prepare() {
- # Make sure the right rspec version is used in cucumber.
- sed -i -e "1igem 'rspec', '~>2.0'" features/support/env.rb || die
-
- # Avoid failing features for native gems, this also fails with rubygems
- sed -i -e '/generate native gem/,$ s:^:#:' features/package.feature || die
-}
-
-each_ruby_test() {
- # Skip cucumber for new ruby versions (not ready yet)
- case ${RUBY} in
- *ruby23|*ruby24|*ruby25)
- RSPEC_VERSION=3 ruby-ng_rspec
- ruby-ng_cucumber
- ;;
- *)
- RSPEC_VERSION=3 ruby-ng_rspec
- ;;
- esac
-}
diff --git a/dev-ruby/rake-compiler/rake-compiler-1.2.3.ebuild b/dev-ruby/rake-compiler/rake-compiler-1.2.3.ebuild
new file mode 100644
index 000000000000..b31740aa8098
--- /dev/null
+++ b/dev-ruby/rake-compiler/rake-compiler-1.2.3.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rake-compiler.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provide a standard and simplified way to build and package Ruby extensions"
+HOMEPAGE="https://github.com/luislavena/rake-compiler"
+LICENSE="MIT"
+
+SRC_URI="https://github.com/luislavena/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/rake"
+
+ruby_add_bdepend "test? ( dev-ruby/rspec:3 )"
+
+USE_RUBY="ruby27 ruby30 ruby31" ruby_add_bdepend "test? ( dev-util/cucumber )"
+
+all_ruby_prepare() {
+ # Avoid failing features for native gems, this also fails with rubygems
+ sed -i -e '/generate native gem/,$ s:^:#:' features/package.feature || die
+
+ # Fix compatibility with newer cucumber versions. The not syntax has
+ # been supported since cucumber 3.x.
+ sed -i -e "s/~@java/'not @java'/" cucumber.yml || die
+
+ # Fix compatibility with newer rspec versions.
+ sed -i -e 's/be_true/be true/ ; s/be_false/be false/' features/step_definitions/*.rb || die
+}
+
+each_ruby_test() {
+ # Skip cucumber for new ruby versions (not ready yet due to rspec 2 usage)
+ case ${RUBY} in
+ *ruby27|*ruby30|*ruby31)
+ RSPEC_VERSION=3 ruby-ng_rspec
+ ruby-ng_cucumber
+ ;;
+ *)
+ RSPEC_VERSION=3 ruby-ng_rspec
+ ;;
+ esac
+}
diff --git a/dev-ruby/rake-compiler/rake-compiler-1.2.5.ebuild b/dev-ruby/rake-compiler/rake-compiler-1.2.5.ebuild
new file mode 100644
index 000000000000..ef97f6e94f3e
--- /dev/null
+++ b/dev-ruby/rake-compiler/rake-compiler-1.2.5.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rake-compiler.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provide a standard and simplified way to build and package Ruby extensions"
+HOMEPAGE="https://github.com/rake-compiler/rake-compiler"
+LICENSE="MIT"
+
+SRC_URI="https://github.com/rake-compiler/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/rake"
+
+ruby_add_bdepend "test? ( dev-ruby/rspec:3 )"
+
+USE_RUBY="ruby30 ruby31 ruby32" ruby_add_bdepend "test? ( dev-util/cucumber )"
+
+all_ruby_prepare() {
+ # Avoid failing features for native gems, this also fails with rubygems
+ sed -i -e '/generate native gem/,$ s:^:#:' features/package.feature || die
+
+ # Fix compatibility with newer cucumber versions. The not syntax has
+ # been supported since cucumber 3.x.
+ sed -i -e "s/~@java/'not @java'/" cucumber.yml || die
+
+ # Fix compatibility with newer rspec versions.
+ sed -i -e 's/be_true/be true/ ; s/be_false/be false/' features/step_definitions/*.rb || die
+}
+
+each_ruby_test() {
+ # Skip cucumber for new ruby versions (not ready yet due to rspec 2 usage)
+ case ${RUBY} in
+ *ruby30|*ruby31|*ruby32)
+ RSPEC_VERSION=3 ruby-ng_rspec
+ ruby-ng_cucumber
+ ;;
+ *)
+ RSPEC_VERSION=3 ruby-ng_rspec
+ ;;
+ esac
+}
diff --git a/dev-ruby/rake-compiler/rake-compiler-1.2.6.ebuild b/dev-ruby/rake-compiler/rake-compiler-1.2.6.ebuild
new file mode 100644
index 000000000000..810b46de41d0
--- /dev/null
+++ b/dev-ruby/rake-compiler/rake-compiler-1.2.6.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rake-compiler.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provide a standard and simplified way to build and package Ruby extensions"
+HOMEPAGE="https://github.com/rake-compiler/rake-compiler"
+LICENSE="MIT"
+
+SRC_URI="https://github.com/rake-compiler/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/rake"
+
+ruby_add_bdepend "test? ( dev-ruby/rspec:3 )"
+
+USE_RUBY="ruby30 ruby31 ruby32" ruby_add_bdepend "test? ( dev-util/cucumber )"
+
+all_ruby_prepare() {
+ # Avoid failing features for native gems, this also fails with rubygems
+ sed -i -e '/generate native gem/,$ s:^:#:' features/package.feature || die
+
+ # Fix compatibility with newer cucumber versions. The not syntax has
+ # been supported since cucumber 3.x.
+ sed -i -e "s/~@java/'not @java'/" cucumber.yml || die
+
+ # Fix compatibility with newer rspec versions.
+ sed -i -e 's/be_true/be true/ ; s/be_false/be false/' features/step_definitions/*.rb || die
+}
+
+each_ruby_test() {
+ # Skip cucumber for new ruby versions (not ready yet due to rspec 2 usage)
+ case ${RUBY} in
+ *ruby30|*ruby31|*ruby32)
+ RSPEC_VERSION=3 ruby-ng_rspec
+ ruby-ng_cucumber
+ ;;
+ *)
+ RSPEC_VERSION=3 ruby-ng_rspec
+ ;;
+ esac
+}
diff --git a/dev-ruby/rake-compiler/rake-compiler-1.2.7.ebuild b/dev-ruby/rake-compiler/rake-compiler-1.2.7.ebuild
new file mode 100644
index 000000000000..810b46de41d0
--- /dev/null
+++ b/dev-ruby/rake-compiler/rake-compiler-1.2.7.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="History.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rake-compiler.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provide a standard and simplified way to build and package Ruby extensions"
+HOMEPAGE="https://github.com/rake-compiler/rake-compiler"
+LICENSE="MIT"
+
+SRC_URI="https://github.com/rake-compiler/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/rake"
+
+ruby_add_bdepend "test? ( dev-ruby/rspec:3 )"
+
+USE_RUBY="ruby30 ruby31 ruby32" ruby_add_bdepend "test? ( dev-util/cucumber )"
+
+all_ruby_prepare() {
+ # Avoid failing features for native gems, this also fails with rubygems
+ sed -i -e '/generate native gem/,$ s:^:#:' features/package.feature || die
+
+ # Fix compatibility with newer cucumber versions. The not syntax has
+ # been supported since cucumber 3.x.
+ sed -i -e "s/~@java/'not @java'/" cucumber.yml || die
+
+ # Fix compatibility with newer rspec versions.
+ sed -i -e 's/be_true/be true/ ; s/be_false/be false/' features/step_definitions/*.rb || die
+}
+
+each_ruby_test() {
+ # Skip cucumber for new ruby versions (not ready yet due to rspec 2 usage)
+ case ${RUBY} in
+ *ruby30|*ruby31|*ruby32)
+ RSPEC_VERSION=3 ruby-ng_rspec
+ ruby-ng_cucumber
+ ;;
+ *)
+ RSPEC_VERSION=3 ruby-ng_rspec
+ ;;
+ esac
+}
diff --git a/dev-ruby/rake-remote_task/Manifest b/dev-ruby/rake-remote_task/Manifest
index ed725038c54f..2099e768cf31 100644
--- a/dev-ruby/rake-remote_task/Manifest
+++ b/dev-ruby/rake-remote_task/Manifest
@@ -1 +1 @@
-DIST rake-remote_task-2.4.3.gem 18944 BLAKE2B 65105ded7e7c98f13c33376887220fae849a0077fa05d65f17079512f1290b1049373d130b50c756523c1562a7fdd608cf28d7fe32355ce4b52e1e09982a6b98 SHA512 0c81a4156853e6a58c094723eb5748a6aba826c62624c9a04b63e505e8c4bfab1b8fdfb80c0d28d6ab84e6a06280c52b263b515c17cab9d248d1eb9abbe78ac8
+DIST rake-remote_task-2.4.4.gem 18944 BLAKE2B 3157d38346cbefe1ac522fe3d33638e65c44f58bb35ca822e5e7eab5988abbe0ed788ee22ac6f7ec2b104c72145bbd4d259effab7c2d6584f688d1b5055aaf2b SHA512 885cda1754c2f8e4a4f2ab4d688bdaf3f06924f8d5e491b9cbd61af39373a95884d2cdd78b0f964e69941f56bf0a1dac0a586cd3c7fb729fcb96ecd37715ccd8
diff --git a/dev-ruby/rake-remote_task/metadata.xml b/dev-ruby/rake-remote_task/metadata.xml
index 7e666bcc80a2..4c9cf62f6bd9 100644
--- a/dev-ruby/rake-remote_task/metadata.xml
+++ b/dev-ruby/rake-remote_task/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rake-remote_task/rake-remote_task-2.4.3.ebuild b/dev-ruby/rake-remote_task/rake-remote_task-2.4.3.ebuild
deleted file mode 100644
index 1f2271a6002d..000000000000
--- a/dev-ruby/rake-remote_task/rake-remote_task-2.4.3.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Extends Rake with remote task goodness"
-HOMEPAGE="https://github.com/seattlerb/rake-remote_task"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "
- test? ( dev-ruby/minitest )"
-ruby_add_rdepend ">=dev-ruby/open4-1.0 >=dev-ruby/rake-0.8 <dev-ruby/rake-13"
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/rake-remote_task/rake-remote_task-2.4.4-r1.ebuild b/dev-ruby/rake-remote_task/rake-remote_task-2.4.4-r1.ebuild
new file mode 100644
index 000000000000..dd093c41c7a5
--- /dev/null
+++ b/dev-ruby/rake-remote_task/rake-remote_task-2.4.4-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Extends Rake with remote task goodness"
+HOMEPAGE="https://github.com/seattlerb/rake-remote_task"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+ruby_add_bdepend "
+ test? ( dev-ruby/minitest )"
+ruby_add_rdepend ">=dev-ruby/open4-1.0 >=dev-ruby/rake-0.8 <dev-ruby/rake-15"
+
+RDEPEND+=" net-misc/rsync"
+DEPEND+=" test? ( net-misc/rsync )"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/rake/Manifest b/dev-ruby/rake/Manifest
index ad60d73b25e8..3d3b4acd4012 100644
--- a/dev-ruby/rake/Manifest
+++ b/dev-ruby/rake/Manifest
@@ -1,3 +1,4 @@
-DIST rake-12.3.1.tar.gz 120170 BLAKE2B c0d087911f33ccd5256462501d175e1f92fa104a3c89b62a5bc434836d5abb277a61fb12269778d0a6e3b9b831e78c0a94d9d1cd885906980fdb55e0402e398b SHA512 49736059713d609b0786d4ea89866fd5d58076977aabeda3eeee0440f10edad708cc10ba91b5224f59a8ab87ee2ab8e2674e9115f90f035c16e1fa8cba3f7649
-DIST rake-12.3.2.tar.gz 121854 BLAKE2B 76d52fbb08f626232bb829da5d125236f99ade886e26a65c8faa7126cb0a902659160971520b1106064371b55f1bf3f27f77ad10c6879200bfbc8e724d57874f SHA512 ed96decf4414eeee0ea79726a5862c8850cbf4db56702a6a7326784249efe432b37f16d4d96ef2c2886fdd693966f5770838802f1bc3446b0724617b8d0869a4
-DIST rake-12.3.3.tar.gz 122233 BLAKE2B e6c913b833092ef5d4203265bb5daf725bfc34ff3abef5a4871845ba9ee322bb8ec668564ed7fe5a2d9ce219d5b7cb00fa22d0b76fb9721f2138d2d963f16c22 SHA512 de15ea4428e845de214d35ad2155bd55cab51354feb5c7ae4c2cde5365d7a3959ee96d913346bdafacdb0542ab2d0e4c2e905514a7f97cfb18e630794bba3a3b
+DIST rake-13.0.6.tar.gz 123485 BLAKE2B 39c99b9d125ba7519bd8eaadac85646e785cc01fafad549becea5b2801f14d74085365743f1c5eb1126d0ae32b19ebcde636badc06670a0ad0dba419082e691f SHA512 1b438be96d8cedaf70e961b0bbd2217692b0b5537b2e1d5f599158e7da3e300cf6ab0c5f0c52fea89be0beb675effbbf563d24e55c84fb673b4982013355e03c
+DIST rake-13.1.0.tar.gz 124144 BLAKE2B 753995c99c165c2f7fb58da698c8599bed700503fe887062c984f20f0792c8d27aa9e7bb00b4c234aa493437f569d389068c6ace1cd72be9c21f7a4b515df584 SHA512 aaea4566834e588ff5cf9f48892cb7aea40f0057db949eb0053755b2f601d5c19073128aedb1f3c98cace441518bbf9bc215ba45d9135123d5b3a48a1625a995
+DIST rake-13.2.0.tar.gz 124514 BLAKE2B 07765d63d46e2044bf571491aea70a9a74156c8a68d524339c443e38ad298efc53bc9cbba288039ec7ad02cf6984ca3a1008c22478188bab0e2a7c4bda82ccb4 SHA512 c1c36de667c92a5e627b29d6d504aa22bf845f27d04eace5fbc13b10845932fe6ba58b4d64d6aca45436f6db6f2b4fbab4c155120d4818db0870c8d58e957d9c
+DIST rake-13.2.1.tar.gz 124565 BLAKE2B c9ec38d3808705aa583d815966c026ee891f4af8860267515b92e14e4a9c2f85f6d08c338546837cd01cda6f4398bf5001017838561b4b8abeba5aa54ce6f19b SHA512 23948361713d751c6ed83fa84ce2c02031604d2c6f2f8d4db92a50ba2b614214f58b3c156066bb2653dd9728243493100cefbc76ee95ba377ccb90f696974952
diff --git a/dev-ruby/rake/metadata.xml b/dev-ruby/rake/metadata.xml
index 6416fcf0a57d..a1358eb22c76 100644
--- a/dev-ruby/rake/metadata.xml
+++ b/dev-ruby/rake/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rake/rake-12.3.1.ebuild b/dev-ruby/rake/rake-12.3.1.ebuild
deleted file mode 100644
index 3a8fac384dd6..000000000000
--- a/dev-ruby/rake/rake-12.3.1.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.rdoc TODO"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_BINDIR="exe"
-
-inherit bash-completion-r1 ruby-fakegem
-
-DESCRIPTION="Make-like scripting in Ruby"
-HOMEPAGE="https://github.com/ruby/rake"
-SRC_URI="https://github.com/ruby/rake/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc"
-
-DEPEND+=" app-arch/gzip"
-
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.8 )
- doc? ( dev-ruby/rdoc )"
-
-all_ruby_prepare() {
- sed -i -e '/coverall/I s:^:#:' test/helper.rb || die
-}
-
-all_ruby_compile() {
- if use doc; then
- rdoc --title "Rake - Ruby Make" --main README.rdoc --out html lib *.rdoc doc/*/*.rdoc || die
- fi
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'gem "minitest", "~>5.8"; require "minitest/autorun"; Dir["test/test_*.rb"].each{|f| require f}' || die
-}
-
-all_ruby_install() {
- ruby_fakegem_binwrapper rake
-
- if use doc; then
- pushd html
- dodoc -r *
- popd
- fi
-
- doman doc/rake.1
-
- newbashcomp "${FILESDIR}"/rake.bash-completion ${PN}
-}
diff --git a/dev-ruby/rake/rake-12.3.2.ebuild b/dev-ruby/rake/rake-12.3.2.ebuild
deleted file mode 100644
index fd7a9d42b88a..000000000000
--- a/dev-ruby/rake/rake-12.3.2.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.rdoc TODO"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_BINDIR="exe"
-
-inherit bash-completion-r1 ruby-fakegem
-
-DESCRIPTION="Make-like scripting in Ruby"
-HOMEPAGE="https://github.com/ruby/rake"
-SRC_URI="https://github.com/ruby/rake/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc"
-
-DEPEND+=" app-arch/gzip"
-
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.8 )
- doc? ( dev-ruby/rdoc )"
-
-all_ruby_compile() {
- if use doc; then
- rdoc --title "Rake - Ruby Make" --main README.rdoc --out html lib *.rdoc doc/*/*.rdoc || die
- fi
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'gem "minitest", "~>5.8"; require "minitest/autorun"; Dir["test/test_*.rb"].each{|f| require f}' || die
-}
-
-all_ruby_install() {
- ruby_fakegem_binwrapper rake
-
- if use doc; then
- pushd html
- dodoc -r *
- popd
- fi
-
- doman doc/rake.1
-
- newbashcomp "${FILESDIR}"/rake.bash-completion ${PN}
-}
diff --git a/dev-ruby/rake/rake-12.3.3.ebuild b/dev-ruby/rake/rake-12.3.3.ebuild
deleted file mode 100644
index a65e0ab0ae4b..000000000000
--- a/dev-ruby/rake/rake-12.3.3.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.rdoc TODO"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_BINDIR="exe"
-
-inherit bash-completion-r1 ruby-fakegem
-
-DESCRIPTION="Make-like scripting in Ruby"
-HOMEPAGE="https://github.com/ruby/rake"
-SRC_URI="https://github.com/ruby/rake/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc"
-
-DEPEND+=" app-arch/gzip"
-
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.8 )
- doc? ( dev-ruby/rdoc )"
-
-all_ruby_compile() {
- if use doc; then
- rdoc --title "Rake - Ruby Make" --main README.rdoc --out html lib *.rdoc doc/*/*.rdoc || die
- fi
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'gem "minitest", "~>5.8"; require "minitest/autorun"; Dir["test/test_*.rb"].each{|f| require f}' || die
-}
-
-all_ruby_install() {
- ruby_fakegem_binwrapper rake
-
- if use doc; then
- pushd html
- dodoc -r *
- popd
- fi
-
- doman doc/rake.1
-
- newbashcomp "${FILESDIR}"/rake.bash-completion ${PN}
-}
diff --git a/dev-ruby/rake/rake-13.0.6-r2.ebuild b/dev-ruby/rake/rake-13.0.6-r2.ebuild
new file mode 100644
index 000000000000..dccfcd88769a
--- /dev/null
+++ b/dev-ruby/rake/rake-13.0.6-r2.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.rdoc TODO"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_BINDIR="exe"
+
+RUBY_FAKEGEM_GEMSPEC="rake.gemspec"
+
+inherit bash-completion-r1 ruby-fakegem
+
+DESCRIPTION="Make-like scripting in Ruby"
+HOMEPAGE="https://github.com/ruby/rake"
+SRC_URI="https://github.com/ruby/rake/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc"
+
+BDEPEND+=" app-alternatives/gzip"
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.8 )
+ doc? ( dev-ruby/rdoc )"
+
+all_ruby_prepare() {
+ sed -e 's/git ls-files -z/find * -type f -print0/' \
+ -e "s:_relative ': './:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_compile() {
+ if use doc; then
+ rdoc --title "Rake - Ruby Make" --main README.rdoc --out html lib *.rdoc doc/*/*.rdoc || die
+ rm -f html/js/*.js.gz
+ fi
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'gem "minitest", "~>5.8"; require "minitest/autorun"; Dir["test/test_*.rb"].each{|f| require f}' || die
+}
+
+all_ruby_install() {
+ ruby_fakegem_binwrapper rake
+
+ if use doc; then
+ pushd html
+ dodoc -r *
+ popd
+ fi
+
+ doman doc/rake.1
+
+ newbashcomp "${FILESDIR}"/rake.bash-completion ${PN}
+}
diff --git a/dev-ruby/rake/rake-13.1.0.ebuild b/dev-ruby/rake/rake-13.1.0.ebuild
new file mode 100644
index 000000000000..2b254de6cfb7
--- /dev/null
+++ b/dev-ruby/rake/rake-13.1.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.rdoc TODO"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_BINDIR="exe"
+
+RUBY_FAKEGEM_GEMSPEC="rake.gemspec"
+
+inherit bash-completion-r1 ruby-fakegem
+
+DESCRIPTION="Make-like scripting in Ruby"
+HOMEPAGE="https://github.com/ruby/rake"
+SRC_URI="https://github.com/ruby/rake/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc"
+
+BDEPEND+=" app-alternatives/gzip"
+
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.8 )
+ doc? ( dev-ruby/rdoc )"
+
+all_ruby_prepare() {
+ sed -e 's/git ls-files -z/find * -type f -print0/' \
+ -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_compile() {
+ if use doc; then
+ rdoc --title "Rake - Ruby Make" --main README.rdoc --out html lib *.rdoc doc/*/*.rdoc || die
+ rm -f html/js/*.js.gz
+ fi
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true RUBYLIB="$(pwd)/lib" ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
+
+all_ruby_install() {
+ ruby_fakegem_binwrapper rake
+
+ if use doc; then
+ pushd html
+ dodoc -r *
+ popd
+ fi
+
+ doman doc/rake.1
+
+ newbashcomp "${FILESDIR}"/rake.bash-completion ${PN}
+}
diff --git a/dev-ruby/rake/rake-13.2.0.ebuild b/dev-ruby/rake/rake-13.2.0.ebuild
new file mode 100644
index 000000000000..9f9e0a5bc533
--- /dev/null
+++ b/dev-ruby/rake/rake-13.2.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.rdoc TODO"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_BINDIR="exe"
+
+RUBY_FAKEGEM_GEMSPEC="rake.gemspec"
+
+inherit bash-completion-r1 ruby-fakegem
+
+DESCRIPTION="Make-like scripting in Ruby"
+HOMEPAGE="https://github.com/ruby/rake"
+SRC_URI="https://github.com/ruby/rake/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc"
+
+BDEPEND+=" app-alternatives/gzip"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit )
+ doc? ( dev-ruby/rdoc )"
+
+all_ruby_prepare() {
+ sed -e 's/git ls-files -z/find * -type f -print0/' \
+ -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_compile() {
+ if use doc; then
+ rdoc --title "Rake - Ruby Make" --main README.rdoc --out html lib *.rdoc doc/*/*.rdoc || die
+ rm -f html/js/*.js.gz
+ fi
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true RUBYLIB="$(pwd)/lib" ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
+
+all_ruby_install() {
+ ruby_fakegem_binwrapper rake
+
+ if use doc; then
+ pushd html
+ dodoc -r *
+ popd
+ fi
+
+ doman doc/rake.1
+
+ newbashcomp "${FILESDIR}"/rake.bash-completion ${PN}
+}
diff --git a/dev-ruby/rake/rake-13.2.1.ebuild b/dev-ruby/rake/rake-13.2.1.ebuild
new file mode 100644
index 000000000000..9f9e0a5bc533
--- /dev/null
+++ b/dev-ruby/rake/rake-13.2.1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.rdoc TODO"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_BINDIR="exe"
+
+RUBY_FAKEGEM_GEMSPEC="rake.gemspec"
+
+inherit bash-completion-r1 ruby-fakegem
+
+DESCRIPTION="Make-like scripting in Ruby"
+HOMEPAGE="https://github.com/ruby/rake"
+SRC_URI="https://github.com/ruby/rake/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc"
+
+BDEPEND+=" app-alternatives/gzip"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit )
+ doc? ( dev-ruby/rdoc )"
+
+all_ruby_prepare() {
+ sed -e 's/git ls-files -z/find * -type f -print0/' \
+ -e 's:_relative ": "./:' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_compile() {
+ if use doc; then
+ rdoc --title "Rake - Ruby Make" --main README.rdoc --out html lib *.rdoc doc/*/*.rdoc || die
+ rm -f html/js/*.js.gz
+ fi
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true RUBYLIB="$(pwd)/lib" ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
+
+all_ruby_install() {
+ ruby_fakegem_binwrapper rake
+
+ if use doc; then
+ pushd html
+ dodoc -r *
+ popd
+ fi
+
+ doman doc/rake.1
+
+ newbashcomp "${FILESDIR}"/rake.bash-completion ${PN}
+}
diff --git a/dev-ruby/rantly/Manifest b/dev-ruby/rantly/Manifest
new file mode 100644
index 000000000000..9d56297e35c4
--- /dev/null
+++ b/dev-ruby/rantly/Manifest
@@ -0,0 +1 @@
+DIST rantly-2.0.0.gem 18944 BLAKE2B a124204157953780dfcc97c4777dc3fb7e152eb3f0e208dd18aff80f8252b4f41285ce7870d927433e034678e679e0a735b8796601dd061ce43693f2c3760d50 SHA512 f3eb10eb3fea3135797c57d40bfe6a2ac9d64d4f449850b89072c527913f13eca34507f62ce611831497954b1c28bf5592dc46b73b510503223d029b4b442b74
diff --git a/dev-ruby/rantly/metadata.xml b/dev-ruby/rantly/metadata.xml
new file mode 100644
index 000000000000..0d00e2d18bdb
--- /dev/null
+++ b/dev-ruby/rantly/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">rantly-rb/rantly</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/rantly/rantly-2.0.0-r1.ebuild b/dev-ruby/rantly/rantly-2.0.0-r1.ebuild
new file mode 100644
index 000000000000..2e5c1c5be21a
--- /dev/null
+++ b/dev-ruby/rantly/rantly-2.0.0-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby Imperative Random Data Generator and Quickcheck"
+HOMEPAGE="https://github.com/rantly-rb/rantly"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/,/^end/ s:^:#:' test/test_helper.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'Dir["test/**/*_test.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/rash/Manifest b/dev-ruby/rash/Manifest
deleted file mode 100644
index c83c6941d301..000000000000
--- a/dev-ruby/rash/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rash-0.4.0.gem 7168 BLAKE2B 6746ea697664627a56fd9d9430f3b15391ace7a389289a1e79703a914c1bfb334d79f58fca635c49d14f2f0c2b3f59d710f4fe5c22b2b9f50b72e2d37eab5edd SHA512 18308a44829961411bd0f91356d6a1d6ad95b1c34ad9f77185fdc62e5f5f8f52658f2d80638054786acddf8dbd201e166cad8e12c5b4d19e0e9d978f3c9f340b
diff --git a/dev-ruby/rash/metadata.xml b/dev-ruby/rash/metadata.xml
deleted file mode 100644
index a46d539bd042..000000000000
--- a/dev-ruby/rash/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">tcocca/rash</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rash/rash-0.4.0-r2.ebuild b/dev-ruby/rash/rash-0.4.0-r2.ebuild
deleted file mode 100644
index 2a6dca1326b5..000000000000
--- a/dev-ruby/rash/rash-0.4.0-r2.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Rash is an extension to Hashie"
-HOMEPAGE="https://github.com/tcocca/rash"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/hashie-2.0.0:0"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
-
- sed -i -e '/hashie/ s/2.0.0/2.0/' \
- -e '/git ls-files/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/rash_alt/Manifest b/dev-ruby/rash_alt/Manifest
index aafdac5a3b37..89e0bd54daba 100644
--- a/dev-ruby/rash_alt/Manifest
+++ b/dev-ruby/rash_alt/Manifest
@@ -1 +1 @@
-DIST rash_alt-0.4.7.gem 8704 BLAKE2B 4b3280fbb630af8a0b3eaa3f3ec03788e9a0420e6e511acce1c038f5197b10afb40e8620023141a89ab65dfb3af318df61fa073fd29aa6d2d7863663498a192c SHA512 c6b58da46e6c05a575482dfecc6e40f3f832595979bb5497f90496a57517a09d123dab691d4493e32937f58337bec37df2d1d342fdd7ed8c8befefcdd388b4ae
+DIST rash_alt-0.4.12.gem 9216 BLAKE2B 2785eee275672beeb04bdf42126c889185a0400e2d2838a2bc7d2212c617fac97b6d11319b4f45022bf87119cb55dd9ad9579731541c650bd26114cb3bfd68c9 SHA512 a337521ef6522f2a2bcb30bbeecd9c3a45f8f2915299080ad13f3f544950ab482980e106b217f146034a15af93fc4efc013edb5a73f831ac053d09f536df337d
diff --git a/dev-ruby/rash_alt/metadata.xml b/dev-ruby/rash_alt/metadata.xml
index 26567bbc1b4a..3cab8d285f27 100644
--- a/dev-ruby/rash_alt/metadata.xml
+++ b/dev-ruby/rash_alt/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rash_alt/rash_alt-0.4.12.ebuild b/dev-ruby/rash_alt/rash_alt-0.4.12.ebuild
new file mode 100644
index 000000000000..58428c73e398
--- /dev/null
+++ b/dev-ruby/rash_alt/rash_alt-0.4.12.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rash.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Rash alt version for Hashie's own Rash"
+HOMEPAGE="https://github.com/shishi/rash_alt"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/hashie-3.4:*"
+
+all_ruby_prepare() {
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+
+ sed -i -e '/git ls-files/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/rash_alt/rash_alt-0.4.7.ebuild b/dev-ruby/rash_alt/rash_alt-0.4.7.ebuild
deleted file mode 100644
index 2e68a3c4ddf3..000000000000
--- a/dev-ruby/rash_alt/rash_alt-0.4.7.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="rash.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Rash alt version for Hashie's own Rash"
-HOMEPAGE="https://github.com/shishi/rash_alt"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/hashie-3.5.6:3 =dev-ruby/hashie-3*"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
-
- sed -i -e '/git ls-files/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/rb-gsl/Manifest b/dev-ruby/rb-gsl/Manifest
deleted file mode 100644
index cdf1eadc348b..000000000000
--- a/dev-ruby/rb-gsl/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST gsl-2.1.0.2.gem 735232 BLAKE2B bb8aa488b5d3bf7c2f3facf34093c985c63bfe692933b21eb8273af38e6788691593bdcc6fd52b9e22635d1b8195f81d1302edab7c2915a19ce9574cab184d84 SHA512 c07adfb44980ca813e114db2b0917f6b2dcb7d3bbe0ccfd9561519b4e574991f3c72f3e7115218f473154690f9284bf89c968d3c6d52d29fa0a232a1160d2704
diff --git a/dev-ruby/rb-gsl/metadata.xml b/dev-ruby/rb-gsl/metadata.xml
deleted file mode 100644
index 32e472e5de41..000000000000
--- a/dev-ruby/rb-gsl/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">SciRuby/rb-gsl</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rb-gsl/rb-gsl-2.1.0.2.ebuild b/dev-ruby/rb-gsl/rb-gsl-2.1.0.2.ebuild
deleted file mode 100644
index 1cb52c80d9a7..000000000000
--- a/dev-ruby/rb-gsl/rb-gsl-2.1.0.2.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME="gsl"
-inherit ruby-fakegem multilib
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="ChangeLog README.md"
-
-DESCRIPTION="Ruby interface to GNU Scientific Library"
-HOMEPAGE="https://github.com/SciRuby/rb-gsl"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="doc"
-
-DEPEND+=" >=sci-libs/gsl-2.3[deprecated]"
-RDEPEND+=" >=sci-libs/gsl-2.3[deprecated]"
-
-RUBY_S="${PN}-${P}"
-
-ruby_add_bdepend "dev-ruby/narray"
-ruby_add_rdepend "dev-ruby/narray"
-
-all_ruby_prepare() {
- sed -i -e '/LOCAL_LIBS/ s: -l: -L#{path.gsub("ext", "lib")} -l:' ext/gsl_native/extconf.rb || die
- # nmatrix only tests
- rm -r test/gsl/nmatrix_tests || die
-}
-
-each_ruby_configure() {
- NARRAY=1 ${RUBY} -Cext/gsl_native extconf.rb || die
- sed -i -e 's:-Wl,--no-undefined::' ext/gsl_native/Makefile || die
-}
-
-each_ruby_compile() {
- NARRAY=1 emake -Cext/gsl_native V=1
- cp ext/gsl_native/*$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- NARRAY=1 ${RUBY} -Ilib:test:. -e 'Dir["test/**/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/rb-inotify/Manifest b/dev-ruby/rb-inotify/Manifest
index 56d6ca8cf84d..a8dc2f0fc559 100644
--- a/dev-ruby/rb-inotify/Manifest
+++ b/dev-ruby/rb-inotify/Manifest
@@ -1 +1 @@
-DIST rb-inotify-0.10.0.gem 15872 BLAKE2B 52647ff17994287810efa9c04bc9553b101c42cdd27cf42d530565127dfce104a589ad729d7019409079731577d327221ec3423fa7a5f746aefa3d817b93d898 SHA512 16aa7fb21e5ed713335e583299cfc72676e3ef66de3d349f74a14885b88020b79e031839b193dc140036a0b6539a45ef3a0c3c6027a7211508d388137d22a13b
+DIST rb-inotify-0.10.1.gem 15872 BLAKE2B 1ddf4fe8de7cdd348e007ac29ab7b41667092439f9b70eeae49d7e917351c73512e43a7ccf6679af1c9225b19efadb6a1581f63e1958d2a31d61f2bce5a13664 SHA512 7831a6228f2d6363e634b8d6b4a12206f19b96098e5dfba1d27b1e994a7284a5cb58cd0299d861a6ff275fc8248c0e68faaaf786d6222ad68f3e6b43ccea29ec
diff --git a/dev-ruby/rb-inotify/metadata.xml b/dev-ruby/rb-inotify/metadata.xml
index c64444050bee..fa5e396eaf26 100644
--- a/dev-ruby/rb-inotify/metadata.xml
+++ b/dev-ruby/rb-inotify/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rb-inotify/rb-inotify-0.10.0.ebuild b/dev-ruby/rb-inotify/rb-inotify-0.10.0.ebuild
deleted file mode 100644
index 47b70841bae5..000000000000
--- a/dev-ruby/rb-inotify/rb-inotify-0.10.0.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A thorough inotify wrapper for Ruby using FFI"
-HOMEPAGE="https://github.com/nex3/rb-inotify"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ppc ppc64 sparc x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/ffi"
-
-ruby_add_bdepend "test? ( dev-ruby/concurrent-ruby )"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on jeweler.
- sed -i -e '/:build/ s:^:#:' -e '/module Jeweler/,/^end/ s:^:#:' -e '/class Jeweler/,/^end/ s:^:#:' Rakefile || die
-
- # Remove mandatory markup processor from yard options, bug 436112.
- sed -i -e '/maruku/d' .yardopts || die
-
- sed -i -e '/bundler/ s:^:#:' -e '1irequire "pathname"' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/rb-inotify/rb-inotify-0.10.1-r1.ebuild b/dev-ruby/rb-inotify/rb-inotify-0.10.1-r1.ebuild
new file mode 100644
index 000000000000..823ea839dedd
--- /dev/null
+++ b/dev-ruby/rb-inotify/rb-inotify-0.10.1-r1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A thorough inotify wrapper for Ruby using FFI"
+HOMEPAGE="https://github.com/nex3/rb-inotify"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/ffi"
+
+ruby_add_bdepend "test? ( dev-ruby/concurrent-ruby )"
+
+all_ruby_prepare() {
+ # Avoid unneeded dependency on jeweler.
+ sed -i -e '/:build/ s:^:#:' -e '/module Jeweler/,/^end/ s:^:#:' -e '/class Jeweler/,/^end/ s:^:#:' Rakefile || die
+
+ # Remove mandatory markup processor from yard options, bug 436112.
+ sed -i -e '/maruku/d' .yardopts || die
+
+ sed -i -e '/bundler/ s:^:#:' -e '1irequire "pathname"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/rb-inotify/rb-inotify-0.10.1.ebuild b/dev-ruby/rb-inotify/rb-inotify-0.10.1.ebuild
new file mode 100644
index 000000000000..0b4e3bf2558c
--- /dev/null
+++ b/dev-ruby/rb-inotify/rb-inotify-0.10.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A thorough inotify wrapper for Ruby using FFI"
+HOMEPAGE="https://github.com/nex3/rb-inotify"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/ffi"
+
+ruby_add_bdepend "test? ( dev-ruby/concurrent-ruby )"
+
+all_ruby_prepare() {
+ # Avoid unneeded dependency on jeweler.
+ sed -i -e '/:build/ s:^:#:' -e '/module Jeweler/,/^end/ s:^:#:' -e '/class Jeweler/,/^end/ s:^:#:' Rakefile || die
+
+ # Remove mandatory markup processor from yard options, bug 436112.
+ sed -i -e '/maruku/d' .yardopts || die
+
+ sed -i -e '/bundler/ s:^:#:' -e '1irequire "pathname"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/rb-readline-r7/Manifest b/dev-ruby/rb-readline-r7/Manifest
deleted file mode 100644
index f17bedb98105..000000000000
--- a/dev-ruby/rb-readline-r7/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rb-readline-r7-0.5.2.0.gem 96256 BLAKE2B 0afa90a210233630f9d5068636efaf5874294b524d7abee4a7560436cdcccd9785ea356d0ebe50a4c191e57a111c7301f9b42d787e9a1760d241ff1c14e90834 SHA512 e94b60e368104f5e626a5c98dbe894cea52294b9c2061aa0cf32c34b7575a1ba9b0c514221ce266be89553d7936fc82696fc979710b9e8bb2503fc8b3cc0a938
diff --git a/dev-ruby/rb-readline-r7/metadata.xml b/dev-ruby/rb-readline-r7/metadata.xml
deleted file mode 100644
index c1095bd03fb2..000000000000
--- a/dev-ruby/rb-readline-r7/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rb-readline</remote-id>
- <remote-id type="rubygems">rb-readline-r7</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rb-readline-r7/rb-readline-r7-0.5.2.0.ebuild b/dev-ruby/rb-readline-r7/rb-readline-r7-0.5.2.0.ebuild
deleted file mode 100644
index b3626129b202..000000000000
--- a/dev-ruby/rb-readline-r7/rb-readline-r7-0.5.2.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby implementation of the GNU readline C library forked by r7"
-HOMEPAGE="https://rubygems.org/gems/rb-readline-r7"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-DEPEND="test? ( dev-ruby/minitest
- dev-ruby/rake )"
-
-all_ruby_prepare() {
- # Skip a test that fails when run in the ebuild environment.
- sed -i -e '/test_readline_with_default_parameters_does_not_error/,/end/ s:^:#:' test/test_readline.rb || die
-}
diff --git a/dev-ruby/rb-readline/metadata.xml b/dev-ruby/rb-readline/metadata.xml
index 5ec5e3567682..9358dcfd75a1 100644
--- a/dev-ruby/rb-readline/metadata.xml
+++ b/dev-ruby/rb-readline/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
diff --git a/dev-ruby/rb-readline/rb-readline-0.5.5-r1.ebuild b/dev-ruby/rb-readline/rb-readline-0.5.5-r1.ebuild
new file mode 100644
index 000000000000..3935d8f0f76c
--- /dev/null
+++ b/dev-ruby/rb-readline/rb-readline-0.5.5-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby implementation of the GNU readline C library"
+HOMEPAGE="https://rubygems.org/gems/rb-readline"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+
+ruby_add_bdepend "dev-ruby/rake
+ >=dev-ruby/minitest-5.2"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+
+ # Skip a test that fails when run in the ebuild environment.
+ sed -i -e '/test_readline_with_default_parameters_does_not_error/,/end/ s:^:#:' test/test_readline.rb || die
+}
diff --git a/dev-ruby/rb-readline/rb-readline-0.5.5.ebuild b/dev-ruby/rb-readline/rb-readline-0.5.5.ebuild
deleted file mode 100644
index ca674a29505f..000000000000
--- a/dev-ruby/rb-readline/rb-readline-0.5.5.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby implementation of the GNU readline C library"
-HOMEPAGE="https://rubygems.org/gems/rb-readline"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/rake
- >=dev-ruby/minitest-5.2"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-
- # Skip a test that fails when run in the ebuild environment.
- sed -i -e '/test_readline_with_default_parameters_does_not_error/,/end/ s:^:#:' test/test_readline.rb || die
-}
diff --git a/dev-ruby/rbnacl/Manifest b/dev-ruby/rbnacl/Manifest
index 0042247ba417..2af7a2868eb2 100644
--- a/dev-ruby/rbnacl/Manifest
+++ b/dev-ruby/rbnacl/Manifest
@@ -1,4 +1 @@
-DIST rbnacl-4.0.2.gem 220160 BLAKE2B a4a3a7b0346bdc3d0e1930bf9b1c6c05182456837c53c8a56f5d8eec831df8768589affb00450088c4ccc3de37f474a359e9ea362655ea66ada63467936abcbe SHA512 d13d36e4248d5e40bb5d9496e08823438d312c16d14e3068be89a62dd7f80ec7f99fa5995752b183656b6ae863af77645b16ce45d05a74ad0dfbd4a93c8854d4
-DIST rbnacl-5.0.0.gem 221184 BLAKE2B f64a754c478c57af901432e9cef335d9f01c1acadcd9d860dacca2ed5d59bdb71f3a431488357b57cbe7af61cf03b50b95ab5421a9ac59f63242a0ddd693e373 SHA512 d6c0c90587beae9f5086c442f4b7b9f430d527576307c5a5cdc5532b231245e5615434a001b3a4b47d1fb7d7148a167d77f12e7b4f5bd1c25c7ce5d361eb42f6
-DIST rbnacl-6.0.1.gem 225792 BLAKE2B dd2f3ab1996b51f905016df9a21d2c4dce69246727efa35444a9f88f3d071607d122aaa7e61e5283f491e3e8e9deb0897844fc4d8f8562c3b855b6489ff8ee71 SHA512 f30161cf38972c94f00200bdc0790b7b3b6c5a7b0b2663fab0a11b488477424e5b57280479cd28e2736eeaa1e524227e6aa688e814a1b4af274f1c82a5d553ab
-DIST rbnacl-7.0.0.gem 225792 BLAKE2B f489e0f8521ca01d49676ba4d06b28b449743dad309a0ff9ab30499b76ab132b1d176144d24bc0eada1bbc2cb13e83d332105a0010946cff0b02baf4d4b3c246 SHA512 49cb3587ce183349234be7ec7db83b797c1e6d09535e4e692d01a307e221baf7af6009ae8aed5fd36bbcd8f1847c49a0cf599160e89dc2f2cb3eefdbadc2bb09
+DIST rbnacl-7.1.1.gem 226304 BLAKE2B 4c7c356cc3414c1b49302ff16af701bffbeaaa18b49bcdb4c9d0c10fe2e1f693e7917f8031c90d5c4362d95ffe5a8d471a48476788f64f97092adbcdce0d9f72 SHA512 da7e406bd2b5112e51d2c15cab35d955b65091ed745fbd027750eaca8ff1d11d982c82f497fc15b9ee9aa6536dbd21ff9ac285bb2a2d1fb39c3374fd0f3dca5a
diff --git a/dev-ruby/rbnacl/files/rbnacl-buffer-size.patch b/dev-ruby/rbnacl/files/rbnacl-buffer-size.patch
deleted file mode 100644
index 3725c8550e0b..000000000000
--- a/dev-ruby/rbnacl/files/rbnacl-buffer-size.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Patches based on upstream patch below but reworked to apply to 5.0.0
-
-From 299e0ddbb8fcafc99214c26d6002da145cc84a0c Mon Sep 17 00:00:00 2001
-From: Sergei Trofimovich <slyfox@gentoo.org>
-Date: Sun, 18 Mar 2018 21:13:09 +0000
-Subject: [PATCH] rbnacl: fix byffer size type in randombytes_buf binding
-
----
- lib/rbnacl/random.rb | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/rbnacl/random.rb b/lib/rbnacl/random.rb
-index 9742186..db85d6d 100644
---- a/lib/rbnacl/random.rb
-+++ b/lib/rbnacl/random.rb
-@@ -13,7 +13,7 @@ module Random
-
- sodium_function :c_random_bytes,
- :randombytes_buf,
-- [:pointer, :ulong_long]
-+ %i[pointer size_t]
-
- # Returns a string of random bytes
- #
diff --git a/dev-ruby/rbnacl/metadata.xml b/dev-ruby/rbnacl/metadata.xml
index 22da0070927f..7901e664f629 100644
--- a/dev-ruby/rbnacl/metadata.xml
+++ b/dev-ruby/rbnacl/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">cryptosphere/rbnacl</remote-id>
+ <remote-id type="github">RubyCrypto/rbnacl</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rbnacl/rbnacl-4.0.2-r1.ebuild b/dev-ruby/rbnacl/rbnacl-4.0.2-r1.ebuild
deleted file mode 100644
index adb077bd30a8..000000000000
--- a/dev-ruby/rbnacl/rbnacl-4.0.2-r1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides a high-level toolkit for building cryptographic systems and protocols"
-HOMEPAGE="https://github.com/cryptosphere/rbnacl"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="amd64 ~arm ppc ppc64 x86"
-IUSE=""
-
-RDEPEND+=" dev-libs/libsodium"
-DEPEND+=" test? ( dev-libs/libsodium )"
-
-ruby_add_rdepend "dev-ruby/ffi"
-
-PATCHES=( "${FILESDIR}/rbnacl-buffer-size.patch" )
-
-all_ruby_prepare() {
- sed -i -e '/coveralls/I s:^:#:' \
- -e '/bundler/ s:^:#:' \
- -e 's:rbnacl/libsodium:rbnacl:' spec/spec_helper.rb
-}
diff --git a/dev-ruby/rbnacl/rbnacl-5.0.0-r1.ebuild b/dev-ruby/rbnacl/rbnacl-5.0.0-r1.ebuild
deleted file mode 100644
index 231a1413e65e..000000000000
--- a/dev-ruby/rbnacl/rbnacl-5.0.0-r1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides a high-level toolkit for building cryptographic systems and protocols"
-HOMEPAGE="https://github.com/cryptosphere/rbnacl"
-
-LICENSE="MIT"
-SLOT="5"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE=""
-
-RDEPEND+=" dev-libs/libsodium"
-DEPEND+=" test? ( dev-libs/libsodium )"
-
-ruby_add_rdepend "dev-ruby/ffi"
-
-PATCHES=( "${FILESDIR}/rbnacl-buffer-size.patch" )
-
-all_ruby_prepare() {
- sed -i -e '/coveralls/I s:^:#:' \
- -e '/bundler/ s:^:#:' \
- -e 's:rbnacl/libsodium:rbnacl:' spec/spec_helper.rb
-}
diff --git a/dev-ruby/rbnacl/rbnacl-6.0.1.ebuild b/dev-ruby/rbnacl/rbnacl-6.0.1.ebuild
deleted file mode 100644
index 1207ef481838..000000000000
--- a/dev-ruby/rbnacl/rbnacl-6.0.1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides a high-level toolkit for building cryptographic systems and protocols"
-HOMEPAGE="https://github.com/cryptosphere/rbnacl"
-
-LICENSE="MIT"
-SLOT="6"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE=""
-
-RDEPEND+=" dev-libs/libsodium"
-DEPEND+=" test? ( dev-libs/libsodium )"
-
-ruby_add_rdepend "dev-ruby/ffi"
-
-all_ruby_prepare() {
- sed -i -e '/coveralls/I s:^:#:' \
- -e '/bundler/ s:^:#:' \
- -e 's:rbnacl/libsodium:rbnacl:' spec/spec_helper.rb
-}
diff --git a/dev-ruby/rbnacl/rbnacl-7.0.0.ebuild b/dev-ruby/rbnacl/rbnacl-7.0.0.ebuild
deleted file mode 100644
index 191075d0bb4e..000000000000
--- a/dev-ruby/rbnacl/rbnacl-7.0.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides a high-level toolkit for building cryptographic systems and protocols"
-HOMEPAGE="https://github.com/cryptosphere/rbnacl"
-
-LICENSE="MIT"
-SLOT="6"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE=""
-
-RDEPEND+=" dev-libs/libsodium"
-DEPEND+=" test? ( dev-libs/libsodium )"
-
-ruby_add_rdepend "dev-ruby/ffi"
-
-all_ruby_prepare() {
- sed -i -e '/coveralls/I s:^:#:' \
- -e '/bundler/ s:^:#:' \
- -e 's:rbnacl/libsodium:rbnacl:' spec/spec_helper.rb
-}
diff --git a/dev-ruby/rbnacl/rbnacl-7.1.1-r1.ebuild b/dev-ruby/rbnacl/rbnacl-7.1.1-r1.ebuild
new file mode 100644
index 000000000000..fe46f32b4f0b
--- /dev/null
+++ b/dev-ruby/rbnacl/rbnacl-7.1.1-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a high-level toolkit for building cryptographic systems and protocols"
+HOMEPAGE="https://github.com/RubyCrypto/rbnacl"
+
+LICENSE="MIT"
+SLOT="6"
+KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86"
+IUSE=""
+
+RDEPEND+=" dev-libs/libsodium"
+DEPEND+=" test? ( dev-libs/libsodium )"
+
+ruby_add_rdepend "dev-ruby/ffi"
+
+all_ruby_prepare() {
+ sed -i -e '/coveralls/I s:^:#:' \
+ -e '/bundler/ s:^:#:' \
+ -e 's:rbnacl/libsodium:rbnacl:' spec/spec_helper.rb
+}
diff --git a/dev-ruby/rbpdf-font/Manifest b/dev-ruby/rbpdf-font/Manifest
index 7cc2dbe5d1a0..37d3f2d5b2cc 100644
--- a/dev-ruby/rbpdf-font/Manifest
+++ b/dev-ruby/rbpdf-font/Manifest
@@ -1 +1 @@
-DIST rbpdf-font-1.19.1.gem 9571840 BLAKE2B 6e362148514e2c4f5794e81b01bd725ffc5c89dbaec30b053979e87206a137151aabfb7a577344144cbd225ece695e49e8b43595b6e5a89eaca300d468ae96bc SHA512 e678df3b58f32f6670bd79e8ebed0856a5fdbab766c32c8667c80358f899625445e9f6829652f13b64d4c79c5af15dd3dde9849dfe86c4f14e45b8750e71e3b7
+DIST rbpdf-font-1.19.1.tar.gz 12021768 BLAKE2B edc3a9a88300bcd89c7fe30f19081cfe478897aa6aced2b94dcd55cfd4fa29ba72ce8c582579f90cc8e1d66017ea2f163a6aa9e06d50476be77b09a686900683 SHA512 a3f137f937c2a33c68c7dd9990215a64762b5bdd736dec8c3208c285719aa5bc79d2ea5687c5b224e950b95ed4772ce0ebde0d883fb3c911ad7fa442c4f18e7b
diff --git a/dev-ruby/rbpdf-font/metadata.xml b/dev-ruby/rbpdf-font/metadata.xml
index df2f1744c5f0..4eb67167f885 100644
--- a/dev-ruby/rbpdf-font/metadata.xml
+++ b/dev-ruby/rbpdf-font/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rbpdf-font/rbpdf-font-1.19.1-r2.ebuild b/dev-ruby/rbpdf-font/rbpdf-font-1.19.1-r2.ebuild
new file mode 100644
index 000000000000..1d97bbe90fdf
--- /dev/null
+++ b/dev-ruby/rbpdf-font/rbpdf-font-1.19.1-r2.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# This gem bundles dejavu fonts, freefonts
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG"
+RUBY_FAKEGEM_GEMSPEC="rbpdf-font.gemspec"
+
+inherit ruby-fakegem toolchain-funcs
+
+DESCRIPTION="Font files for the Ruby on Rails RBPDF plugin"
+HOMEPAGE="https://github.com/naitoh/rbpdf"
+SRC_URI="https://github.com/naitoh/rbpdf/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="rbpdf-${PV}/rbpdf-font"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+ruby_add_bdepend ">=dev-ruby/test-unit-3:2"
+
+all_ruby_prepare() {
+ sed -i -e "/bundler/d" Rakefile || die
+ sed -i -e '2igem "test-unit", "~>3.0"' test/test_helper.rb || die
+
+ pushd lib/fonts/src || die
+ tar xf ttf2ufm-src.tar.gz || die
+ emake -C ttf2ufm-src clean
+ sed -e '/^CFLAGS_SYS=/ s/-O/$(CFLAGS)/' \
+ -e '/CFLAGS.*LIBS/ s/CFLAGS/LDFLAGS/' \
+ -i ttf2ufm-src/Makefile || die
+ sed -e '/limits.h/a#include <getopt.h>' -i ttf2ufm-src/t1asm.c || die
+ popd || die
+}
+
+each_ruby_prepare() {
+ rm -rf lib/fonts/src || die
+}
+
+all_ruby_compile() {
+ emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" -C lib/fonts/src/ttf2ufm-src
+}
+
+each_ruby_install() {
+ cp "${WORKDIR}/all/${RUBY_S}/lib/fonts/src/ttf2ufm-src/ttf2pt1" lib/fonts/ttf2ufm/ttf2ufm || die
+
+ each_fakegem_install
+}
diff --git a/dev-ruby/rbpdf-font/rbpdf-font-1.19.1.ebuild b/dev-ruby/rbpdf-font/rbpdf-font-1.19.1.ebuild
deleted file mode 100644
index 731357405222..000000000000
--- a/dev-ruby/rbpdf-font/rbpdf-font-1.19.1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-# This gem bundles dejavu fonts, freefonts, and ttf2ufm
-# ttf2ufm is a precompiled 32-bit binary
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Font files for the Ruby on Rails RBPDF plugin"
-HOMEPAGE="https://github.com/naitoh/rbpdf"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_bdepend ">=dev-ruby/test-unit-3:2"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" Rakefile || die
- sed -i -e '2igem "test-unit", "~>3.0"' test/test_helper.rb || die
-}
diff --git a/dev-ruby/rbpdf/Manifest b/dev-ruby/rbpdf/Manifest
index 3231ed0bf010..e06708a453f1 100644
--- a/dev-ruby/rbpdf/Manifest
+++ b/dev-ruby/rbpdf/Manifest
@@ -1,3 +1,2 @@
-DIST rbpdf-1.19.8.tar.gz 12026547 BLAKE2B 4989bee6f35d74a703539c6d209c14730e2674d94454b1794172f147dd01af20bdea5c4ed3e68a047f7ddad17083d74ea061dc5b0c28e66acdbf56ab1e335dd3 SHA512 e3015e80b26f9de2727ebd1a97ff5fd3937b7e133d9d39c2e1b3e9fe326354ca66ef569fa35bdf4c8b495b40df1ceec26d043e6f86be8ce741068a2c28ff8a28
-DIST rbpdf-1.20.0.tar.gz 12026312 BLAKE2B add83c3bc2fde2dd0b839fedabcc49b40839d17a3c6b4eb0d17f688840a7fae1bef23660bc810176b23042475bf6ba40cac6f08f4f0468ba6f1dcc6ada4520da SHA512 5324bfc115e168a9ec4972aea21539d1e41a3799bf3beaa2cf0764734eb152f6325879ebb0aee80276825842d8c4d15fdc337874b1237342adc425554e96a9d4
-DIST rbpdf-1.20.1.tar.gz 12026190 BLAKE2B 5a468e974bc0a15a9a8f621a6ee635a8cf4f81cc94b88a6bf8afd90c4a665c0892381e903158e66ec4a68676491faa80fd99b7d4ffcf0c86defc4a4114603b08 SHA512 19b4fbd8a0c4650c73ba299721a0fe03a10f223da5e0dd2b97549972ea8f381b2d5b4837369d0667cd325392edae1ec795ec67bc852c9b3588ec0c5e686844d7
+DIST rbpdf-1.21.2.tar.gz 12055483 BLAKE2B 24aa5acff343c70769a6644abd68967333bf1d121a6ac85ece8d040439bf096983806613529a84d42b295e729134181a1ac2d0828b1ed337e91c8732a67ef30a SHA512 0da1f5bdc538cbb8e8f27373debb81634cfc407b4bd6c84301719f2faec196df7dc40a18e01a56fc9d373b0bb00523f574be1b0cb98f713c76e7987a8f5d0a98
+DIST rbpdf-1.21.3.tar.gz 12071239 BLAKE2B bcfc19ab707b2e2b03752f723bb8c971b131bde2e6841832c958ea329681aaa36edb13c453173db05c2748de33962f756fc0bcf4959dda385eb4f6f081290fd9 SHA512 f169c3694df9af7fea76ed8415c79658ed12bacad4b2f3fda0ce632ced98fcf9bc256278dea52283907d33aed1632a453e4dadc43522003ab2f1a471d9818041
diff --git a/dev-ruby/rbpdf/metadata.xml b/dev-ruby/rbpdf/metadata.xml
index 3300d1b32153..ec7ec41c0344 100644
--- a/dev-ruby/rbpdf/metadata.xml
+++ b/dev-ruby/rbpdf/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mjo@gentoo.org</email>
diff --git a/dev-ruby/rbpdf/rbpdf-1.19.8.ebuild b/dev-ruby/rbpdf/rbpdf-1.19.8.ebuild
deleted file mode 100644
index cec0aa03e682..000000000000
--- a/dev-ruby/rbpdf/rbpdf-1.19.8.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-# Avoid the complexity of the "rake" recipe and run the tests manually.
-RUBY_FAKEGEM_RECIPE_TEST=none
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby on Rails RBPDF plugin"
-HOMEPAGE="https://github.com/naitoh/rbpdf"
-SRC_URI="https://github.com/naitoh/rbpdf/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-
-ruby_add_bdepend "test? ( >=dev-ruby/test-unit-3 )"
-ruby_add_rdepend "
- dev-ruby/htmlentities
- =dev-ruby/rbpdf-font-1.19*"
-
-all_ruby_prepare() {
- default
-
- # This test is enabled automagically in the presence of rmagick, and
- # then fails.
- rm -f test/rbpdf_image_rmagick_test.rb \
- || die "failed to remove rmagick tests"
-
- # Loosen very restrictive htmlentities dependency
- sed -i -e '/htmlentities/ s/=/>=/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- local cmd='gem "test-unit", ">= 3.0"'
- cmd+=' and '
- cmd+='require "test/unit"'
- cmd+=' and '
- cmd+='Dir["test/rbpdf_*.rb"].each{|f| require("./" + f)}'
- ${RUBY} -Ilib:.:test -e "${cmd}" || die "test suite failed"
-}
diff --git a/dev-ruby/rbpdf/rbpdf-1.20.0.ebuild b/dev-ruby/rbpdf/rbpdf-1.20.0.ebuild
deleted file mode 100644
index 0a1de1e4c101..000000000000
--- a/dev-ruby/rbpdf/rbpdf-1.20.0.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-# Avoid the complexity of the "rake" recipe and run the tests manually.
-RUBY_FAKEGEM_RECIPE_TEST=none
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby on Rails RBPDF plugin"
-HOMEPAGE="https://github.com/naitoh/rbpdf"
-SRC_URI="https://github.com/naitoh/rbpdf/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-
-ruby_add_bdepend "test? ( >=dev-ruby/test-unit-3 )"
-ruby_add_rdepend "
- dev-ruby/htmlentities
- =dev-ruby/rbpdf-font-1.19*"
-
-all_ruby_prepare() {
- default
-
- # This test is enabled automagically in the presence of rmagick, and
- # then fails.
- rm -f test/rbpdf_image_rmagick_test.rb \
- || die "failed to remove rmagick tests"
-}
-
-each_ruby_test() {
- local cmd='gem "test-unit", ">= 3.0"'
- cmd+=' and '
- cmd+='require "test/unit"'
- cmd+=' and '
- cmd+='Dir["test/rbpdf_*.rb"].each{|f| require("./" + f)}'
- ${RUBY} -Ilib:.:test -e "${cmd}" || die "test suite failed"
-}
diff --git a/dev-ruby/rbpdf/rbpdf-1.20.1.ebuild b/dev-ruby/rbpdf/rbpdf-1.20.1.ebuild
deleted file mode 100644
index 0a1de1e4c101..000000000000
--- a/dev-ruby/rbpdf/rbpdf-1.20.1.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-# Avoid the complexity of the "rake" recipe and run the tests manually.
-RUBY_FAKEGEM_RECIPE_TEST=none
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby on Rails RBPDF plugin"
-HOMEPAGE="https://github.com/naitoh/rbpdf"
-SRC_URI="https://github.com/naitoh/rbpdf/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-
-ruby_add_bdepend "test? ( >=dev-ruby/test-unit-3 )"
-ruby_add_rdepend "
- dev-ruby/htmlentities
- =dev-ruby/rbpdf-font-1.19*"
-
-all_ruby_prepare() {
- default
-
- # This test is enabled automagically in the presence of rmagick, and
- # then fails.
- rm -f test/rbpdf_image_rmagick_test.rb \
- || die "failed to remove rmagick tests"
-}
-
-each_ruby_test() {
- local cmd='gem "test-unit", ">= 3.0"'
- cmd+=' and '
- cmd+='require "test/unit"'
- cmd+=' and '
- cmd+='Dir["test/rbpdf_*.rb"].each{|f| require("./" + f)}'
- ${RUBY} -Ilib:.:test -e "${cmd}" || die "test suite failed"
-}
diff --git a/dev-ruby/rbpdf/rbpdf-1.21.2.ebuild b/dev-ruby/rbpdf/rbpdf-1.21.2.ebuild
new file mode 100644
index 000000000000..62ceeefdb1f1
--- /dev/null
+++ b/dev-ruby/rbpdf/rbpdf-1.21.2.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+# Avoid the complexity of the "rake" recipe and run the tests manually.
+RUBY_FAKEGEM_RECIPE_TEST=none
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby on Rails RBPDF plugin"
+HOMEPAGE="https://github.com/naitoh/rbpdf"
+SRC_URI="https://github.com/naitoh/rbpdf/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( >=dev-ruby/test-unit-3 dev-ruby/webrick )"
+ruby_add_rdepend "
+ dev-ruby/actionview
+ dev-ruby/htmlentities
+ =dev-ruby/rbpdf-font-1.19*
+ || ( dev-ruby/mini_magick dev-ruby/rmagick )
+"
+
+# Two of the tests require png/jpeg support in "magick identify",
+# see bug 738784.
+BDEPEND+=" test? ( virtual/imagemagick-tools[jpeg,png] )"
+
+all_ruby_prepare() {
+ default
+
+ # This test is enabled automagically in the presence of rmagick, and
+ # then fails.
+ rm -f test/rbpdf_image_rmagick_test.rb \
+ || die "failed to remove rmagick tests"
+}
+
+each_ruby_test() {
+ local cmd='gem "test-unit", ">= 3.0"'
+ cmd+=' and '
+ cmd+='require "test/unit"'
+ cmd+=' and '
+ cmd+='Dir["test/rbpdf_*.rb"].each{|f| require("./" + f)}'
+ ${RUBY} -Ilib:.:test -e "${cmd}" || die "test suite failed"
+}
diff --git a/dev-ruby/rbpdf/rbpdf-1.21.3.ebuild b/dev-ruby/rbpdf/rbpdf-1.21.3.ebuild
new file mode 100644
index 000000000000..62ceeefdb1f1
--- /dev/null
+++ b/dev-ruby/rbpdf/rbpdf-1.21.3.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+# Avoid the complexity of the "rake" recipe and run the tests manually.
+RUBY_FAKEGEM_RECIPE_TEST=none
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby on Rails RBPDF plugin"
+HOMEPAGE="https://github.com/naitoh/rbpdf"
+SRC_URI="https://github.com/naitoh/rbpdf/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( >=dev-ruby/test-unit-3 dev-ruby/webrick )"
+ruby_add_rdepend "
+ dev-ruby/actionview
+ dev-ruby/htmlentities
+ =dev-ruby/rbpdf-font-1.19*
+ || ( dev-ruby/mini_magick dev-ruby/rmagick )
+"
+
+# Two of the tests require png/jpeg support in "magick identify",
+# see bug 738784.
+BDEPEND+=" test? ( virtual/imagemagick-tools[jpeg,png] )"
+
+all_ruby_prepare() {
+ default
+
+ # This test is enabled automagically in the presence of rmagick, and
+ # then fails.
+ rm -f test/rbpdf_image_rmagick_test.rb \
+ || die "failed to remove rmagick tests"
+}
+
+each_ruby_test() {
+ local cmd='gem "test-unit", ">= 3.0"'
+ cmd+=' and '
+ cmd+='require "test/unit"'
+ cmd+=' and '
+ cmd+='Dir["test/rbpdf_*.rb"].each{|f| require("./" + f)}'
+ ${RUBY} -Ilib:.:test -e "${cmd}" || die "test suite failed"
+}
diff --git a/dev-ruby/rbs/Manifest b/dev-ruby/rbs/Manifest
new file mode 100644
index 000000000000..60e0564225b3
--- /dev/null
+++ b/dev-ruby/rbs/Manifest
@@ -0,0 +1,8 @@
+DIST rbs-2.8.4.tar.gz 1069703 BLAKE2B a7b97e2ba7b8bd5afca303d69262cd54169bfad8e716cb5c452a1f20c36708f62c36382d5d3111856aa130e5d198960117ad47ca444ac3e042e99e534b3c2204 SHA512 e698b64ffc5c5e53ed84ab9fb6a5d83cc17738ec2114f72cadd0d9e062d8017ee91dc4d1afe254646c30659f3af57d6606f555881951fae7cc399b1bbd428824
+DIST rbs-3.0.4.tar.gz 1123563 BLAKE2B 335ba5d438b74ef36a65c1bd5d41508bb4d89a5273d413899f96684e6d97a6911ab157ad5b8acde97e23b832ebd2bd04517c37a3edc2fd66703442333d3fa5b1 SHA512 17dff709693c2b554178a31580ed48e863490fc527c86a8d823928379483665076c498e402c1dcb85c0ba401e6754e9c2d8cb9a48655952136521e6e7b47025f
+DIST rbs-3.1.3.tar.gz 1133033 BLAKE2B d9727a757bab41dc2deb4570b6fe325ec9dd6b50190fff9995d2054125ba5e05536a31b7961c068c78071c9039858b64bc73195bb40a26d12f6d7f9031e40e53 SHA512 76bce2c0a2377e2eca16877de7082c90b8df4fd7d9f89d74751e62d25f94a3418a71bcc7ea30e646ce548f675002358dc700c5d598379d8c744fa4fb0454f40c
+DIST rbs-3.2.2.tar.gz 1148293 BLAKE2B a585a942d48217aa574629ace472dc57a6c876a67e8e521f3eaa00996c65f45836140b3c888e2a0e4e6d7ab9abf48337565978ec9b3950f9bbcce9f885fbb459 SHA512 758787ef7decd889ed3abcf9f06cd612299823e16b446568e729d76ba41cd66c36d626d7618ed360ff4b15b16c9d6f172fe55d9053810106f731c74f4cca3fe4
+DIST rbs-3.4.0.tar.gz 1233005 BLAKE2B 66486849627ae75842b58abb24b4148146384f0a3e69ecb968eaf6c67afe0a5a6769d6263cb8f2499c899831280f4030f8fe545e3ed39a79129ff5651e9abdc4 SHA512 fde44bec1eba699323c3173508e2c026d9a61bccf4a4c55d0ed74dbf7306d8e1416fe9e115e3bb70d1027262ee26fb47b644571efbc9aed0b67ccb9d9ee59152
+DIST rbs-3.4.1.tar.gz 1236509 BLAKE2B da51d9c8eed72fb5f4b4b31950db5d39b0fc18a55a3d7999f92d3c5d23ed3d0b0572e65d212483442796093a3941a404e2babd0b55581135d1c77c3521ddc00e SHA512 d98217535091f6af5ff102d8b7126bcd881e22b64c240b5e443a965ccdb0f812a755d3da5db6b65964f6e0e798491bd17ba76d4221e46fbbb26ad0674cd1dca0
+DIST rbs-3.4.2.tar.gz 1236528 BLAKE2B 65c6c218d65db323171af85bbce2f18bbc502c5e0611739ce96d7490afa91090d3fe308fdec253bdb61f41877b4691686fd8a9c8f4be4ec270713f47d5b18a79 SHA512 ec22ef5c27750d2762b0e50bc6623d9dabd7afb11dcae641e76776ca9a12cda9c73657e5be84fadd05998e065174f785df238415c7f4a3bb3e71aff89dffc620
+DIST rbs-3.4.4.tar.gz 1236977 BLAKE2B 19b95e7b162714738c37d9d8f740d11e5e4694f6e2c7e9ba9f01c74d8d318d0b848251276e421a80d8a5680ed60fa510d04d4a57ac72d0c376f1e9cfef2fe773 SHA512 c6be887af1c89e7b9d8f01e248a24f571c189fc81f55d1625957434a3d1e74c5d23f9ba2089750cb742a82560165d9bab309cff8cdb6c9e455076051301c7dd4
diff --git a/dev-ruby/rbs/metadata.xml b/dev-ruby/rbs/metadata.xml
new file mode 100644
index 000000000000..a3321ebab9a4
--- /dev/null
+++ b/dev-ruby/rbs/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/rbs</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/rbs/rbs-2.8.4.ebuild b/dev-ruby/rbs/rbs-2.8.4.ebuild
new file mode 100644
index 000000000000..6071d0555ffc
--- /dev/null
+++ b/dev-ruby/rbs/rbs-2.8.4.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 ruby32"
+
+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 ~x64-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/rbs/rbs-3.0.4.ebuild b/dev-ruby/rbs/rbs-3.0.4.ebuild
new file mode 100644
index 000000000000..be6531da78bd
--- /dev/null
+++ b/dev-ruby/rbs/rbs-3.0.4.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 ruby32"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-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/rbs/rbs-3.1.3.ebuild b/dev-ruby/rbs/rbs-3.1.3.ebuild
new file mode 100644
index 000000000000..0e69e175d355
--- /dev/null
+++ b/dev-ruby/rbs/rbs-3.1.3.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-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 subtract tests with additonal unpackaged dependencies
+ sed -i -e '/def test_subtract/aomit "Skipped due to additional dependencies"' test/rbs/cli_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/rbs/rbs-3.2.2.ebuild b/dev-ruby/rbs/rbs-3.2.2.ebuild
new file mode 100644
index 000000000000..c66d09f9c28c
--- /dev/null
+++ b/dev-ruby/rbs/rbs-3.2.2.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-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 subtract tests with additonal unpackaged dependencies
+ sed -i -e '/def test_subtract/aomit "Skipped due to additional dependencies"' test/rbs/cli_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/rbs/rbs-3.4.0.ebuild b/dev-ruby/rbs/rbs-3.4.0.ebuild
new file mode 100644
index 000000000000..5302c97c811c
--- /dev/null
+++ b/dev-ruby/rbs/rbs-3.4.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/abbrev"
+
+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 subtract tests with additonal unpackaged dependencies
+ sed -i -e '/def test_subtract/aomit "Skipped due to additional dependencies"' test/rbs/cli_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_\(method\|paths\)/aomit "Different paths in Gentoo test environment"' test/rbs/cli_test.rb || die
+}
diff --git a/dev-ruby/rbs/rbs-3.4.1.ebuild b/dev-ruby/rbs/rbs-3.4.1.ebuild
new file mode 100644
index 000000000000..5302c97c811c
--- /dev/null
+++ b/dev-ruby/rbs/rbs-3.4.1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/abbrev"
+
+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 subtract tests with additonal unpackaged dependencies
+ sed -i -e '/def test_subtract/aomit "Skipped due to additional dependencies"' test/rbs/cli_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_\(method\|paths\)/aomit "Different paths in Gentoo test environment"' test/rbs/cli_test.rb || die
+}
diff --git a/dev-ruby/rbs/rbs-3.4.2.ebuild b/dev-ruby/rbs/rbs-3.4.2.ebuild
new file mode 100644
index 000000000000..46da666c978d
--- /dev/null
+++ b/dev-ruby/rbs/rbs-3.4.2.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/abbrev"
+
+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 subtract tests with additonal unpackaged dependencies
+ sed -i -e '/def test_subtract/aomit "Skipped due to additional dependencies"' test/rbs/cli_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_\(method\|paths\)/aomit "Different paths in Gentoo test environment"' test/rbs/cli_test.rb || die
+}
diff --git a/dev-ruby/rbs/rbs-3.4.4.ebuild b/dev-ruby/rbs/rbs-3.4.4.ebuild
new file mode 100644
index 000000000000..46da666c978d
--- /dev/null
+++ b/dev-ruby/rbs/rbs-3.4.4.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/abbrev"
+
+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 subtract tests with additonal unpackaged dependencies
+ sed -i -e '/def test_subtract/aomit "Skipped due to additional dependencies"' test/rbs/cli_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_\(method\|paths\)/aomit "Different paths in Gentoo test environment"' test/rbs/cli_test.rb || die
+}
diff --git a/dev-ruby/rbst/Manifest b/dev-ruby/rbst/Manifest
index 178c9b36d7e8..97279cd541f3 100644
--- a/dev-ruby/rbst/Manifest
+++ b/dev-ruby/rbst/Manifest
@@ -1 +1 @@
-DIST rbst-0.5.1.tar.gz 14039 BLAKE2B 7399e92f98c650842464ea9240775ad776ec8d574c578d8da764778bbe8050be429e2521df82b3b04a0bf9cd18bef4f114890d54ef8d6f34c797f0f2f2e35bc2 SHA512 a7fffc1ccf495c1858d6d9fadd38a4d6a2c27a2da8eda8dad038f4ab881f4521223a35f97d4018d25b32c2621132a623040ba930494b36e1385356ecb87fecdc
+DIST rbst-0.6.5.tar.gz 15760 BLAKE2B 3bace4401c8c92eba286f242c1e074aa833094c21e4b00bfa2eee982ad8cbb94024dda2210eb1c72ab88293b1a63a62a5bdeafde2615b0430bd0a7cc21ced14c SHA512 2d4a28c70a4925e1ffe0cd2ff10c275f67cae4a918c1064bd73cb8e7e490be251acff09670d78fef1edeb1a7dab8995aa0b4737563a0797ff66c0fee3f89bba2
diff --git a/dev-ruby/rbst/metadata.xml b/dev-ruby/rbst/metadata.xml
index 0319eec4c8be..afeb8ebab6c7 100644
--- a/dev-ruby/rbst/metadata.xml
+++ b/dev-ruby/rbst/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>mgorny@gentoo.org</email>
- <name>Michał Górny</name>
- </maintainer>
+ <maintainer type="person">
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">xwmx/rbst</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/rbst/rbst-0.5.1.ebuild b/dev-ruby/rbst/rbst-0.5.1.ebuild
deleted file mode 100644
index 91ea2a1703ab..000000000000
--- a/dev-ruby/rbst/rbst-0.5.1.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-PYTHON_COMPAT=( python{2_7,3_5,3_6,3_7} )
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME="RbST"
-RUBY_FAKEGEM_GEMSPEC="RbST.gemspec"
-
-inherit python-single-r1 ruby-fakegem
-
-DESCRIPTION="A simple Ruby wrapper for processing rST via docutils"
-HOMEPAGE="https://github.com/alphabetum/rbst"
-SRC_URI="https://github.com/alphabetum/rbst/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-RDEPEND="dev-python/docutils ${PYTHON_DEPS}"
-DEPEND="test? ( ${RDEPEND} )"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/mocha-1.1.0:1.0
- >=dev-ruby/shoulda-3.5.0:3
- >=dev-ruby/test-unit-3.0.9:2
- )"
-
-# Tests are pretty much useless as they depend on very specific output
-# from an unknown docutils version.
-RESTRICT="test"
-
-pkg_setup() {
- python-single-r1_pkg_setup
- ruby-ng_pkg_setup
-}
-
-all_ruby_prepare() {
- # do not use bundler
- sed -i -e '/bundler/,/end/d' \
- Rakefile test/helper.rb || die
-
- # force our python version
- sed -i -e "s:\(python_path=\"\)python:\1${EPYTHON}:" lib/rbst.rb || die
- python_fix_shebang lib/rst2parts
-}
diff --git a/dev-ruby/rbst/rbst-0.6.5-r1.ebuild b/dev-ruby/rbst/rbst-0.6.5-r1.ebuild
new file mode 100644
index 000000000000..8b44aba69e0c
--- /dev/null
+++ b/dev-ruby/rbst/rbst-0.6.5-r1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_NAME="RbST"
+RUBY_FAKEGEM_GEMSPEC="RbST.gemspec"
+
+inherit python-single-r1 ruby-fakegem
+
+DESCRIPTION="A simple Ruby wrapper for processing rST via docutils"
+HOMEPAGE="https://github.com/xwmx/rbst/"
+SRC_URI="
+ https://github.com/xwmx/rbst/archive/${PV}.tar.gz -> ${P}.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ dev-python/docutils
+ ${PYTHON_DEPS}
+"
+DEPEND="
+ test? ( ${RDEPEND} )
+"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/minitest-5.14.0:5
+ >=dev-ruby/mocha-1.1.0:1.0
+ )
+"
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+ ruby-ng_pkg_setup
+}
+
+all_ruby_prepare() {
+ # do not use bundler
+ sed -i -e '/bundler/,/end/d' \
+ Rakefile test/helper.rb || die
+ # do not use python2
+ sed -i -e '/python2/,/end/d' \
+ test/test_rbst.rb || die
+ # broken by new docutils
+ sed -i -e '/it.*LaTeX/,/end/d' \
+ test/test_rbst.rb || die
+
+ # force our python version
+ sed -i -e "s:\(python_path=\"\)python:\1${EPYTHON}:" lib/rbst.rb || die
+ python_fix_shebang lib/rst2parts
+}
diff --git a/dev-ruby/rbtree/Manifest b/dev-ruby/rbtree/Manifest
new file mode 100644
index 000000000000..b5133d6bcc4e
--- /dev/null
+++ b/dev-ruby/rbtree/Manifest
@@ -0,0 +1 @@
+DIST rbtree-0.4.6.gem 30720 BLAKE2B cd44852f8de9138d9f590825c62b1863e8a4fc51a3f150317f929e200430b9a4fcc7f7b83deb0904def84cfe3debf102e7b200fe1e894422b0515297ed44baff SHA512 7c9f5ac83ee78191efe3fb7fd6ef0afaa7506245191dbe92f3eb9e5f19b9fcd8157f19901d49d5ff9b4661a498a67d79e39ca86c79d8df99fcf11603b54a0158
diff --git a/dev-ruby/rbtree/metadata.xml b/dev-ruby/rbtree/metadata.xml
new file mode 100644
index 000000000000..7a38fd1850ff
--- /dev/null
+++ b/dev-ruby/rbtree/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-ruby/rbtree/rbtree-0.4.6.ebuild b/dev-ruby/rbtree/rbtree-0.4.6.ebuild
new file mode 100644
index 000000000000..194148a21e7f
--- /dev/null
+++ b/dev-ruby/rbtree/rbtree-0.4.6.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTENSIONS=(./extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="A sorted associative collection that is implemented with a Red-Black Tree"
+HOMEPAGE="https://rubygems.org/gems/rbtree"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/test_pp/aomit "Fragile for whitespace"' test.rb || die
+}
+
+each_ruby_test() {
+ RUBY_LIB=lib ${RUBY} test.rb || die
+}
diff --git a/dev-ruby/rcairo/Manifest b/dev-ruby/rcairo/Manifest
index efda01b28549..b60a56ba94ba 100644
--- a/dev-ruby/rcairo/Manifest
+++ b/dev-ruby/rcairo/Manifest
@@ -1,3 +1,3 @@
-DIST cairo-1.15.11.gem 103424 BLAKE2B da4598d64d57ebe9245d892c25cfed0198d4a2c6adc440e7547314bb01adfde20118f17c6a07b0342a78c5e86b18e5c4b51782f99a61b34deeab0bdff12649ce SHA512 3c21468511eac323b27a86e1c5188b5444d3bf2de244f4dc35d0ae297cb3f1756ec8333555bb7c4178e9f4ebcfd1600e6fd77fa7fe76055bf633bb2f8c69271c
-DIST cairo-1.16.2.gem 100352 BLAKE2B b8b02e949b33c60ebe05852efd1cd775a79dab5ab6837f973ecf1b2c1af653a7c09221892b92210b9e5a0d615732116a91e5e1e9f93229f98987c18b36514dcc SHA512 b711399ddd7afa958e3faee87b2a768f55af9ec0cef486d9edcf082a0c7a5ec90610d9a52784d55608a70befe4571e4cb1abc401a8a5b5357fa0bfff9159d239
-DIST cairo-1.16.4.gem 196608 BLAKE2B f7cc8d9e2dc5e3f6dc5a6e259f5594bd7a6cfb13c3577a870949696c25c5139b69d6809cceda664ccf7b7278536b2d551bbd42e4471154a302eb1710324c2792 SHA512 5af8536cd374255386fdc84b265deebb7ed21ef270538f0c2d6a5cdf3dcf1c913633f1ca813f197460968b20b6e592f24334b872cf822584d4de28c589160da8
+DIST cairo-1.17.12.gem 199168 BLAKE2B 3183fc448cf15d0437f1b846670dc7494479bf81ba84a2ae475bb5a0683f1012d0e44c95b3311cea5d0ec9cdd75faa7159d7d0649dbe0813166a8d6a16ddda74 SHA512 6bad8c0f15e8617266a85f0ba0bf41db1b508bdb174aa8dbfad8a560a1510cec852502cf39e93b0317c046035bfd97552b92167debb7de4d887c319648b10b56
+DIST cairo-1.17.13.gem 199168 BLAKE2B 07472d8c3cb71ee6351b0d3fc3a8b22eef586f44677d38dcd2fa848afecca20a1d8c66397eac70ced9c24ccee60a83721fc7cc3a6cf7c1c1beae69935fde5a9b SHA512 82fb621f97b6eb292565fd0f90f5e686c2cd4cd8aa61fa0ab6e25aac665aa9f7e780481a6571fd443be8c53070f29a2dfea5a54949350fe783b12aeb6aba3769
+DIST cairo-1.17.8.gem 198656 BLAKE2B c999f862753d17c186f766f82ede6c7fb3c773018c314825762b68025bf806e6a466b8895ddfa3046f7ac3f3af501d6feaebcb8241779de9c3a0d153589d0993 SHA512 a2b756dc1cf1abb98e4b60b9b56f5f610058bd840b67c991d6bfb3da2523b0f77a5854147f9d14ca461d573e51fbe3ba35c83659af5c031086710970fac6665a
diff --git a/dev-ruby/rcairo/metadata.xml b/dev-ruby/rcairo/metadata.xml
index 28ab0c15f206..58fa413cca59 100644
--- a/dev-ruby/rcairo/metadata.xml
+++ b/dev-ruby/rcairo/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">rcairo/rcairo</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rcairo/rcairo-1.15.11.ebuild b/dev-ruby/rcairo/rcairo-1.15.11.ebuild
deleted file mode 100644
index 8ebaa5b814ce..000000000000
--- a/dev-ruby/rcairo/rcairo-1.15.11.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_NAME="cairo"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRADOC="AUTHORS NEWS"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby bindings for cairo"
-HOMEPAGE="https://cairographics.org/rcairo/"
-
-IUSE=""
-
-SLOT="0"
-LICENSE="|| ( Ruby GPL-2 )"
-KEYWORDS="amd64 ~ppc ~x86"
-
-RDEPEND="${RDEPEND}
- >=x11-libs/cairo-1.2.0[svg]"
-DEPEND="${DEPEND}
- >=x11-libs/cairo-1.2.0[svg]"
-
-ruby_add_bdepend "
- >=dev-ruby/pkg-config-1.2.2
- dev-ruby/ruby-glib2
- test? ( >=dev-ruby/test-unit-2.1.0-r1:2 )"
-
-all_ruby_prepare() {
- # Avoid development dependency.
- sed -i -e '/notify/ s:^:#:' test/cairo-test-utils.rb || die
-
- # Avoid unneeded dependency
- sed -i -e '/native-package-installer/ s:^:#:' ext/cairo/extconf.rb || die
- sed -i -e '/native-package-installer/,/Gem::Dependency/ d' ../metadata || die
-
- # Avoid test that requires unpackaged fixture
- sed -i -e '/sub_test_case..FreeTypeFontFace/,/^ end/ s:^:#:' test/test_font_face.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/cairo extconf.rb || die "extconf failed"
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/cairo
-
- # again, try to make it more standard, to install it more easily.
- cp ext/cairo/cairo$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- # don't rely on the Rakefile because it's a mess to load with
- # their hierarchy, do it manually.
- ${RUBY} -Ilib -r ./test/cairo-test-utils.rb \
- -e 'gem "test-unit"; require "test/unit"; Dir.glob("test/**/test_*.rb") {|f| load f}' || die "tests failed"
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- insinto $(ruby_get_hdrdir)
- doins ext/cairo/rb_cairo.h
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}/samples
- doins -r samples/*
-}
diff --git a/dev-ruby/rcairo/rcairo-1.16.2.ebuild b/dev-ruby/rcairo/rcairo-1.16.2.ebuild
deleted file mode 100644
index c321ceda4620..000000000000
--- a/dev-ruby/rcairo/rcairo-1.16.2.ebuild
+++ /dev/null
@@ -1,78 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME="cairo"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRADOC="AUTHORS NEWS"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby bindings for cairo"
-HOMEPAGE="https://cairographics.org/rcairo/"
-
-IUSE=""
-
-SLOT="0"
-LICENSE="|| ( Ruby GPL-2 )"
-KEYWORDS="amd64 ~ppc ~x86"
-
-RDEPEND="${RDEPEND}
- >=x11-libs/cairo-1.2.0[svg]"
-DEPEND="${DEPEND}
- >=x11-libs/cairo-1.2.0[svg]"
-
-ruby_add_bdepend "
- >=dev-ruby/pkg-config-1.2.2
- dev-ruby/ruby-glib2
- test? ( >=dev-ruby/test-unit-2.1.0-r1:2 dev-ruby/ruby-poppler )"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency
- sed -i -e '/native-package-installer/ s:^:#:' ext/cairo/extconf.rb || die
- sed -i -e '/native-package-installer/,/Gem::Dependency/ d' ../metadata || die
-
- # Avoid test that requires unpackaged fixture
- sed -i -e '/sub_test_case..FreeTypeFontFace/,/^ end/ s:^:#:' test/test_font_face.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/cairo extconf.rb || die "extconf failed"
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/cairo
-
- # again, try to make it more standard, to install it more easily.
- cp ext/cairo/cairo$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- # don't rely on the Rakefile because it's a mess to load with
- # their hierarchy, do it manually.
- ${RUBY} -Ilib -r ./test/helper \
- -e 'gem "test-unit"; require "test/unit"; Dir.glob("test/**/test_*.rb") {|f| load f}' || die "tests failed"
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- insinto $(ruby_get_hdrdir)
- doins ext/cairo/rb_cairo.h
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}/samples
- doins -r samples/*
-}
diff --git a/dev-ruby/rcairo/rcairo-1.16.4.ebuild b/dev-ruby/rcairo/rcairo-1.16.4.ebuild
deleted file mode 100644
index e11b75bfaf57..000000000000
--- a/dev-ruby/rcairo/rcairo-1.16.4.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME="cairo"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRADOC="AUTHORS NEWS"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby bindings for cairo"
-HOMEPAGE="https://cairographics.org/rcairo/"
-
-IUSE=""
-
-SLOT="0"
-LICENSE="|| ( Ruby GPL-2 )"
-KEYWORDS="~amd64 ~ppc ~x86"
-
-RDEPEND="${RDEPEND}
- >=x11-libs/cairo-1.2.0[svg]"
-DEPEND="${DEPEND}
- >=x11-libs/cairo-1.2.0[svg]"
-
-ruby_add_bdepend "
- >=dev-ruby/pkg-config-1.2.2
- dev-ruby/ruby-glib2
- test? ( >=dev-ruby/test-unit-2.1.0-r1:2 dev-ruby/ruby-poppler )"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency
- sed -e '/native-package-installer/ s:^:#:' \
- -e '/def required_pkg_config_package/areturn true' \
- -e '/checking_for/,/^end/ s:^:#:' \
- -i ext/cairo/extconf.rb || die
- sed -i -e '/native-package-installer/,/Gem::Dependency/ d' ../metadata || die
-
- # Avoid test that requires unpackaged fixture
- sed -i -e '/sub_test_case..FreeTypeFontFace/,/^ end/ s:^:#:' test/test_font_face.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/cairo extconf.rb || die "extconf failed"
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/cairo
-
- # again, try to make it more standard, to install it more easily.
- cp ext/cairo/cairo$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- # don't rely on the Rakefile because it's a mess to load with
- # their hierarchy, do it manually.
- ${RUBY} -Ilib -r ./test/helper \
- -e 'gem "test-unit"; require "test/unit"; Dir.glob("test/**/test_*.rb") {|f| load f}' || die "tests failed"
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- insinto $(ruby_get_hdrdir)
- doins ext/cairo/rb_cairo.h
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}/samples
- doins -r samples/*
-}
diff --git a/dev-ruby/rcairo/rcairo-1.17.12.ebuild b/dev-ruby/rcairo/rcairo-1.17.12.ebuild
new file mode 100644
index 000000000000..1d22ef0b81d7
--- /dev/null
+++ b/dev-ruby/rcairo/rcairo-1.17.12.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_NAME="cairo"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_EXTRADOC="AUTHORS NEWS"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/cairo/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby bindings for cairo"
+HOMEPAGE="https://cairographics.org/rcairo/"
+
+IUSE=""
+
+SLOT="0"
+LICENSE="|| ( Ruby-BSD GPL-2 )"
+KEYWORDS="amd64 ~ppc ~riscv ~x86"
+
+RDEPEND="${RDEPEND}
+ >=x11-libs/cairo-1.2.0[svg(+)]"
+DEPEND="${DEPEND}
+ >=x11-libs/cairo-1.2.0[svg(+)]"
+
+ruby_add_rdepend "dev-ruby/red-colors"
+
+ruby_add_bdepend "
+ >=dev-ruby/pkg-config-1.2.2
+ dev-ruby/ruby-glib2
+ test? ( >=dev-ruby/test-unit-2.1.0-r1:2 dev-ruby/ruby-poppler )"
+
+all_ruby_prepare() {
+ # Avoid unneeded dependency
+ sed -e '/native-package-installer/ s:^:#:' \
+ -e '/def required_pkg_config_package/areturn true' \
+ -e '/checking_for/,/^end/ s:^:#:' \
+ -i ext/cairo/extconf.rb || die
+ sed -i -e '/native-package-installer/,/Gem::Dependency/ d' ../metadata || die
+
+ # Avoid test that requires unpackaged fixture
+ sed -i -e '/sub_test_case..FreeTypeFontFace/,/^ end/ s:^:#:' test/test_font_face.rb || die
+
+ # Bug 790131
+ sed -i -e '/^install-headers:/s!$! $(TIMESTAMP_DIR)/.sitearchdir.time!' \
+ ext/cairo/depend || die
+}
+
+each_ruby_test() {
+ # don't rely on the Rakefile because it's a mess to load with
+ # their hierarchy, do it manually.
+ ${RUBY} -Ilib -r ./test/helper \
+ -e 'gem "test-unit"; require "test/unit"; Dir.glob("test/**/test_*.rb") {|f| load f}' || die "tests failed"
+}
+
+each_ruby_install() {
+ each_fakegem_install
+
+ insinto $(ruby_get_hdrdir)
+ doins ext/cairo/rb_cairo.h
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r samples
+}
diff --git a/dev-ruby/rcairo/rcairo-1.17.13.ebuild b/dev-ruby/rcairo/rcairo-1.17.13.ebuild
new file mode 100644
index 000000000000..ff39b20efaa2
--- /dev/null
+++ b/dev-ruby/rcairo/rcairo-1.17.13.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_NAME="cairo"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_EXTRADOC="AUTHORS NEWS"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/cairo/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby bindings for cairo"
+HOMEPAGE="https://cairographics.org/rcairo/"
+
+IUSE=""
+
+SLOT="0"
+LICENSE="|| ( Ruby-BSD GPL-2 )"
+KEYWORDS="~amd64 ~ppc ~riscv ~x86"
+
+RDEPEND="${RDEPEND}
+ >=x11-libs/cairo-1.2.0[svg(+)]"
+DEPEND="${DEPEND}
+ >=x11-libs/cairo-1.2.0[svg(+)]"
+
+ruby_add_rdepend "dev-ruby/red-colors"
+
+ruby_add_bdepend "
+ >=dev-ruby/pkg-config-1.2.2
+ dev-ruby/ruby-glib2
+ test? ( >=dev-ruby/test-unit-2.1.0-r1:2 dev-ruby/ruby-poppler )"
+
+all_ruby_prepare() {
+ # Avoid unneeded dependency
+ sed -e '/native-package-installer/ s:^:#:' \
+ -e '/def required_pkg_config_package/areturn true' \
+ -e '/checking_for/,/^end/ s:^:#:' \
+ -i ext/cairo/extconf.rb || die
+ sed -i -e '/native-package-installer/,/Gem::Dependency/ d' ../metadata || die
+
+ # Avoid test that requires unpackaged fixture
+ sed -i -e '/sub_test_case..FreeTypeFontFace/,/^ end/ s:^:#:' test/test_font_face.rb || die
+
+ # Bug 790131
+ sed -i -e '/^install-headers:/s!$! $(TIMESTAMP_DIR)/.sitearchdir.time!' \
+ ext/cairo/depend || die
+}
+
+each_ruby_test() {
+ # don't rely on the Rakefile because it's a mess to load with
+ # their hierarchy, do it manually.
+ ${RUBY} -Ilib -r ./test/helper \
+ -e 'gem "test-unit"; require "test/unit"; Dir.glob("test/**/test_*.rb") {|f| load f}' || die "tests failed"
+}
+
+each_ruby_install() {
+ each_fakegem_install
+
+ insinto $(ruby_get_hdrdir)
+ doins ext/cairo/rb_cairo.h
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r samples
+}
diff --git a/dev-ruby/rcairo/rcairo-1.17.8.ebuild b/dev-ruby/rcairo/rcairo-1.17.8.ebuild
new file mode 100644
index 000000000000..8b30f8949ac7
--- /dev/null
+++ b/dev-ruby/rcairo/rcairo-1.17.8.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_NAME="cairo"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_EXTRADOC="AUTHORS NEWS"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/cairo/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby bindings for cairo"
+HOMEPAGE="https://cairographics.org/rcairo/"
+
+IUSE=""
+
+SLOT="0"
+LICENSE="|| ( Ruby-BSD GPL-2 )"
+KEYWORDS="amd64 ~ppc ~riscv ~x86"
+
+RDEPEND="${RDEPEND}
+ >=x11-libs/cairo-1.2.0[svg(+)]"
+DEPEND="${DEPEND}
+ >=x11-libs/cairo-1.2.0[svg(+)]"
+
+ruby_add_rdepend "dev-ruby/red-colors"
+
+ruby_add_bdepend "
+ >=dev-ruby/pkg-config-1.2.2
+ dev-ruby/ruby-glib2
+ test? ( >=dev-ruby/test-unit-2.1.0-r1:2 dev-ruby/ruby-poppler )"
+
+all_ruby_prepare() {
+ # Avoid unneeded dependency
+ sed -e '/native-package-installer/ s:^:#:' \
+ -e '/def required_pkg_config_package/areturn true' \
+ -e '/checking_for/,/^end/ s:^:#:' \
+ -i ext/cairo/extconf.rb || die
+ sed -i -e '/native-package-installer/,/Gem::Dependency/ d' ../metadata || die
+
+ # Avoid test that requires unpackaged fixture
+ sed -i -e '/sub_test_case..FreeTypeFontFace/,/^ end/ s:^:#:' test/test_font_face.rb || die
+
+ # Bug 790131
+ sed -i -e '/^install-headers:/s!$! $(TIMESTAMP_DIR)/.sitearchdir.time!' \
+ ext/cairo/depend || die
+}
+
+each_ruby_test() {
+ # don't rely on the Rakefile because it's a mess to load with
+ # their hierarchy, do it manually.
+ ${RUBY} -Ilib -r ./test/helper \
+ -e 'gem "test-unit"; require "test/unit"; Dir.glob("test/**/test_*.rb") {|f| load f}' || die "tests failed"
+}
+
+each_ruby_install() {
+ each_fakegem_install
+
+ insinto $(ruby_get_hdrdir)
+ doins ext/cairo/rb_cairo.h
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r samples
+}
diff --git a/dev-ruby/rchardet/Manifest b/dev-ruby/rchardet/Manifest
new file mode 100644
index 000000000000..1dafa1dd6c98
--- /dev/null
+++ b/dev-ruby/rchardet/Manifest
@@ -0,0 +1 @@
+DIST rchardet-1.8.0.tar.gz 1903004 BLAKE2B d5860bc17f3a9dae9d6194156f1707e833ec0c440992c7b933b2e4eaca6bbc01f9964bcd7eb1dd054ff633124b863a0b797103297d6d2ff75e6d13040aa0813c SHA512 419eac7d4d4fb4a9cbe102199b5767d826f968943da9dfbfd029d03603bede596fb59d9747e590447b6848ae42c733dd0efdea57140e03d92bdcbac317dd0c6f
diff --git a/dev-ruby/rchardet/metadata.xml b/dev-ruby/rchardet/metadata.xml
new file mode 100644
index 000000000000..3d41721faa39
--- /dev/null
+++ b/dev-ruby/rchardet/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jmhodges/rchardet</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/rchardet/rchardet-1.8.0-r1.ebuild b/dev-ruby/rchardet/rchardet-1.8.0-r1.ebuild
new file mode 100644
index 000000000000..b4da2af9c347
--- /dev/null
+++ b/dev-ruby/rchardet/rchardet-1.8.0-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="Readme.md"
+
+RUBY_FAKEGEM_GEMSPEC="rchardet.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Character encoding auto-detection in Ruby"
+HOMEPAGE="https://github.com/jmhodges/rchardet"
+SRC_URI="https://github.com/jmhodges/rchardet/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' -e '/minitest\/rg/ s:^:#:' test/test_helper.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/*_test.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/rdiscount/Manifest b/dev-ruby/rdiscount/Manifest
index d598e19c6364..5db221ea2c40 100644
--- a/dev-ruby/rdiscount/Manifest
+++ b/dev-ruby/rdiscount/Manifest
@@ -1 +1,2 @@
-DIST rdiscount-2.2.0.1.gem 68096 BLAKE2B 71ea7010116739e8c61aab91c2cc4a86cf679b4ae10221135c0bad854822a9a81969e927ef898c0ebf753811205ad98258c4e7c4b16f9e18a81bb01137a79fc9 SHA512 81a477782b9829ac5e68ab390ef00b7f470bb4bd84e86ce28dd9abbb71aab6fd17b67416078dd7d4e0fc7e0c8eb78250b7a71a2f24d2bd236e861cb445f9feb6
+DIST rdiscount-2.2.7.1.gem 74240 BLAKE2B 06779a601c8d13b90f5d9fb1c38712431671eab1cb2ef012dee284ddb6da254a0c788f16295438913d68f3641db2ec48c7cea3bade4f36fdc55b7a6049119fd4 SHA512 e67bbbb7f19ef14a729642e2059f0920b65a3f254507204955ab6d34529ade643ee7adecc3db2c61ca5462d266f88ea336bd228401e3cd0fad98e2e7763dd8d3
+DIST rdiscount-2.2.7.3.gem 75776 BLAKE2B 6dc3110d0acf1adf86450e520e43e9d6602ca8980e85d5d0122f2e49026e6b6a32eca72a44631fa1fa03e6c649b21941a820cb07a1d8cc30d3bde3d3fdc74c5e SHA512 525791f2be10e118f556676a1645d2805ba6ad920e4f4c8761362c5aa09cf1f773f0216f7b6c2e1f78acbc1de1ac85c6088cc85729af70a28f537fdff3434786
diff --git a/dev-ruby/rdiscount/metadata.xml b/dev-ruby/rdiscount/metadata.xml
index 3ae80c3decbd..b0f9999b842e 100644
--- a/dev-ruby/rdiscount/metadata.xml
+++ b/dev-ruby/rdiscount/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">rtomayko/rdiscount</remote-id>
+ <remote-id type="github">davidfstr/rdiscount</remote-id>
+ <remote-id type="rubygems">rdiscount</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rdiscount/rdiscount-2.2.0.1.ebuild b/dev-ruby/rdiscount/rdiscount-2.2.0.1.ebuild
deleted file mode 100644
index 28e30f07be3a..000000000000
--- a/dev-ruby/rdiscount/rdiscount-2.2.0.1.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test:unit"
-
-RUBY_FAKEGEM_TASK_DOC="doc man"
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Implementation of John Gruber's Markdown"
-HOMEPAGE="https://github.com/rtomayko/rdiscount"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- # Hanna is broken for us and therefore we don't have it in portage.
- sed -i -e 's/hanna/rdoc/' Rakefile || die
-
- # Remove rule that will force a rebuild when running tests.
- sed -i -e "/task 'test:unit' => \[:build\]/d" Rakefile || die
-
- # Provide RUBY variable no longer provided by rake.
- sed -i -e "1 iRUBY=${RUBY}" Rakefile || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext || die
- cp ext/*$(get_modname) lib/ || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- doman man/rdiscount.1
-}
diff --git a/dev-ruby/rdiscount/rdiscount-2.2.7.1.ebuild b/dev-ruby/rdiscount/rdiscount-2.2.7.1.ebuild
new file mode 100644
index 000000000000..e115ba7a39f3
--- /dev/null
+++ b/dev-ruby/rdiscount/rdiscount-2.2.7.1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="test:unit"
+
+RUBY_FAKEGEM_TASK_DOC="doc man"
+RUBY_FAKEGEM_EXTRADOC="README.markdown"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Implementation of John Gruber's Markdown"
+HOMEPAGE="https://github.com/davidfstr/rdiscount"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ # Hanna is broken for us and therefore we don't have it in portage.
+ sed -i -e 's/hanna/rdoc/' Rakefile || die
+
+ # Remove rule that will force a rebuild when running tests.
+ sed -i -e "/task 'test:unit' => \[:build\]/d" Rakefile || die
+
+ # Provide RUBY variable no longer provided by rake.
+ sed -i -e "1 iRUBY=${RUBY}" Rakefile || die
+
+ # Remove obsolete -rubygems argument, bug 775377
+ sed -i -e '/-rubygems/ s:^:#:' Rakefile || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ doman man/rdiscount.1
+}
diff --git a/dev-ruby/rdiscount/rdiscount-2.2.7.3.ebuild b/dev-ruby/rdiscount/rdiscount-2.2.7.3.ebuild
new file mode 100644
index 000000000000..1e2af68e91bb
--- /dev/null
+++ b/dev-ruby/rdiscount/rdiscount-2.2.7.3.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="test:unit"
+
+RUBY_FAKEGEM_TASK_DOC="doc man"
+RUBY_FAKEGEM_EXTRADOC="README.markdown"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Implementation of John Gruber's Markdown"
+HOMEPAGE="https://github.com/davidfstr/rdiscount"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ # Hanna is broken for us and therefore we don't have it in portage.
+ sed -i -e 's/hanna/rdoc/' Rakefile || die
+
+ # Remove rule that will force a rebuild when running tests.
+ sed -i -e "/task 'test:unit' => \[:build\]/d" Rakefile || die
+
+ # Provide RUBY variable no longer provided by rake.
+ sed -i -e "1 iRUBY=${RUBY}" Rakefile || die
+
+ # Remove obsolete -rubygems argument, bug 775377
+ sed -i -e '/-rubygems/ s:^:#:' Rakefile || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ doman man/rdiscount.1
+}
diff --git a/dev-ruby/rdoc/Manifest b/dev-ruby/rdoc/Manifest
index 6814d79343f8..24c0d3edac48 100644
--- a/dev-ruby/rdoc/Manifest
+++ b/dev-ruby/rdoc/Manifest
@@ -1,2 +1,3 @@
-DIST rdoc-5.1.0.tar.gz 702376 BLAKE2B 733d77a341ddad10f5b648b6bb492e0f79daa392e2ca371d38236e4c85a1c409699e35dd3f5bc8bc48551b399603bb0a747cb3c5f7f1fbf4765aabffaad575aa SHA512 cd2ed37e8502a3e9093c88c258ac5e39542a23c3dcaedb9b5eb48ce391a694e5b35fbcfd62f01ec6353ac9c40a4b7043b2ff11bbc403d2e03de9a84c52bcefe7
-DIST rdoc-6.1.1.tar.gz 701297 BLAKE2B cd1494303d5bf4f81804e40a43252a589a6fa141316a573c1e321bf2dbd71330fabd547e09f5c84937cc45b3f79e2936d90813c29fc11b4a514a9cb498b9c98d SHA512 01e32d6e7ffcb5c0e138068867e6d995210d0123cb87c2754994be1a5e0aede0e05114746e6bd788fd0b4299e9a005dcfc863ef07000f1f9fcbf6ed11e44947b
+DIST rdoc-6.5.0.tar.gz 762645 BLAKE2B cecade491f0d18b2c50ec710cb27a28b6cb946f321503e0508e8d4802e93033a78867346eb1d68ca56884ea0d68d51d6fdb92eb61fa63034a01332e8b572dbcf SHA512 10382e66ca778f85f236614fe071b2b0d598065d3aab8f5a89cb0839da7713b5e16a66e3f7a2bff2e2125d26a42f088a86c6d339dc36479a943bb7023c1cad0c
+DIST rdoc-6.6.2.tar.gz 765932 BLAKE2B 39bcb0f1af6ee4d53b9011179556d8f1a6b09e20716e60a5d57ca7dcede54797946517e7321004e41d440f26d39e9f3c7c80aaf3b24212ce6a650cddc23d69f3 SHA512 326ead5d4ec5b9328f9feaf3434351911a3dda18d739c8657d9025f7b3387139e1b63ea8fc649870ca474e4a0560ad87cb9e2a13fbbecd240a8aad652d061d42
+DIST rdoc-6.6.3.1.tar.gz 766103 BLAKE2B 15cef9df763e40e105155d49c6c0c1a449c366ac35ab6036c43773c52114f00b19109b056033366b873b5b3317a3bf11c574dd76094d8f606fa0916a84257d0a SHA512 c6f3aae83e895e2de28e5a7c27456160dd53007ceb4464a045e0211473eb3d51f49a7c2ac28f2e44e807c5b36447140d15eadff65bfa52335e94adc9c8b56d2e
diff --git a/dev-ruby/rdoc/metadata.xml b/dev-ruby/rdoc/metadata.xml
index d98a9045e998..ed72bc33b342 100644
--- a/dev-ruby/rdoc/metadata.xml
+++ b/dev-ruby/rdoc/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">rdoc/rdoc</remote-id>
+ <remote-id type="github">ruby/rdoc</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rdoc/rdoc-5.1.0.ebuild b/dev-ruby/rdoc/rdoc-5.1.0.ebuild
deleted file mode 100644
index fc8b7303f2dc..000000000000
--- a/dev-ruby/rdoc/rdoc-5.1.0.ebuild
+++ /dev/null
@@ -1,93 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc RI.rdoc TODO.rdoc"
-
-RUBY_FAKEGEM_BINWRAP=""
-RUBY_FAKEGEM_BINDIR="exe"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="An extended version of the RDoc library from Ruby 1.8"
-HOMEPAGE="https://github.com/rdoc/rdoc/"
-SRC_URI="https://github.com/rdoc/rdoc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Ruby MIT"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-RDEPEND+=">=app-eselect/eselect-ruby-20161226"
-
-ruby_add_bdepend "
- dev-ruby/kpeg
- dev-ruby/racc
- test? (
- dev-ruby/bundler
- >=dev-ruby/minitest-5.8:5
- )"
-
-ruby_add_rdepend "dev-ruby/json:2"
-
-all_ruby_prepare() {
- # Other packages also have use for a nonexistent directory, bug 321059
- sed -i -e 's#/nonexistent#/nonexistent_rdoc_tests#g' test/test_rdoc*.rb || die
-
- # Avoid unneeded dependency on bundler, bug 603696
- sed -i -e '/bundler/ s:^:#:' \
- -e 's/Bundler::GemHelper.gemspec.full_name/"rdoc"/' 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/test_rdoc_options.rb || die
-
- # Remove test depending on FEATURES=userpriv, bug 361959
- sed -i -e '/def test_check_files/,/^ end/ s:^:#:' test/test_rdoc_options.rb || die
-
- # Remove tests for code that is not included and not listed in Manifest.txt
- rm -f test/test_rdoc_i18n_{locale,text}.rb \
- test/test_rdoc_generator_pot* || die
-}
-
-all_ruby_compile() {
- all_fakegem_compile
-
- if use doc ; then
- ruby -Ilib -S exe/rdoc || die
- fi
-}
-
-each_ruby_compile() {
- ${RUBY} -S rake generate || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'gem "json", "~>2.0"; Dir["test/test_*.rb"].each{|f| require f}' || 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/rdoc/rdoc-6.1.1.ebuild b/dev-ruby/rdoc/rdoc-6.1.1.ebuild
deleted file mode 100644
index 63bf6f7f46c7..000000000000
--- a/dev-ruby/rdoc/rdoc-6.1.1.ebuild
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc RI.rdoc TODO.rdoc"
-
-RUBY_FAKEGEM_BINWRAP=""
-RUBY_FAKEGEM_BINDIR="exe"
-
-inherit ruby-fakegem eutils
-
-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="Ruby MIT"
-KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-RDEPEND+=">=app-eselect/eselect-ruby-20181225"
-
-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/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
-
- # Remove test that is depending on the locale, which we can't garantuee.
- sed -i -e '/def test_encode_with/,/^ end/ s:^:#:' test/test_rdoc_options.rb || die
-
- # Remove test depending on FEATURES=userpriv, bug 361959
- sed -i -e '/def test_check_files/,/^ end/ s:^:#:' test/test_rdoc_options.rb || die
-
- # Remove tests for code that is not included and not listed in Manifest.txt
- rm -f test/test_rdoc_i18n_{locale,text}.rb \
- test/test_rdoc_generator_pot* || die
-}
-
-all_ruby_compile() {
- all_fakegem_compile
-
- if use doc ; then
- ruby -Ilib -S exe/rdoc || die
- fi
-}
-
-each_ruby_compile() {
- ${RUBY} -S rake generate || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || 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/rdoc/rdoc-6.5.0.ebuild b/dev-ruby/rdoc/rdoc-6.5.0.ebuild
new file mode 100644
index 000000000000..a49d07120345
--- /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 ruby32"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-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() {
+ LANG=C.UTF-8 ${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/rdoc/rdoc-6.6.2.ebuild b/dev-ruby/rdoc/rdoc-6.6.2.ebuild
new file mode 100644
index 000000000000..aad01097472a
--- /dev/null
+++ b/dev-ruby/rdoc/rdoc-6.6.2.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="ruby31 ruby32 ruby33"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-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() {
+ LANG=C.UTF-8 ${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/rdoc/rdoc-6.6.3.1-r1.ebuild b/dev-ruby/rdoc/rdoc-6.6.3.1-r1.ebuild
new file mode 100644
index 000000000000..0d2b95bf4f0e
--- /dev/null
+++ b/dev-ruby/rdoc/rdoc-6.6.3.1-r1.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-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
+ dev-ruby/test-unit-ruby-core
+ )"
+
+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() {
+ LANG=C.UTF-8 ${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/rdoc/rdoc-6.6.3.1.ebuild b/dev-ruby/rdoc/rdoc-6.6.3.1.ebuild
new file mode 100644
index 000000000000..7a774a7cbd0e
--- /dev/null
+++ b/dev-ruby/rdoc/rdoc-6.6.3.1.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-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() {
+ LANG=C.UTF-8 ${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/rdtool/metadata.xml b/dev-ruby/rdtool/metadata.xml
index 7b3df0a77765..c97379af2f7d 100644
--- a/dev-ruby/rdtool/metadata.xml
+++ b/dev-ruby/rdtool/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rdtool/rdtool-0.6.38-r2.ebuild b/dev-ruby/rdtool/rdtool-0.6.38-r2.ebuild
deleted file mode 100644
index 4f90940a75eb..000000000000
--- a/dev-ruby/rdtool/rdtool-0.6.38-r2.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC="doc"
-RUBY_FAKEGEM_EXTRADOC="HISTORY README.*"
-
-inherit elisp-common ruby-fakegem
-
-DESCRIPTION="A multipurpose documentation format for Ruby"
-HOMEPAGE="https://github.com/uwabami/rdtool"
-
-LICENSE="Ruby GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 ia64 ppc ppc64 ~sparc x86 ~x86-fbsd"
-IUSE="emacs"
-
-RDEPEND="${RDEPEND} emacs? ( virtual/emacs )"
-
-SITEFILE=50${PN}-gentoo.el
-
-all_ruby_install() {
- all_fakegem_install
-
- if use emacs ; then
- elisp-install ${PN} utils/rd-mode.el
- elisp-site-file-install "${FILESDIR}/${SITEFILE}"
- fi
-}
-
-pkg_postinst() {
- use emacs && elisp-site-regen
-}
-
-pkg_postrm() {
- use emacs && elisp-site-regen
-}
diff --git a/dev-ruby/rdtool/rdtool-0.6.38-r3.ebuild b/dev-ruby/rdtool/rdtool-0.6.38-r3.ebuild
new file mode 100644
index 000000000000..39489b7cfc39
--- /dev/null
+++ b/dev-ruby/rdtool/rdtool-0.6.38-r3.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="HISTORY README.*"
+
+inherit elisp-common ruby-fakegem
+
+DESCRIPTION="A multipurpose documentation format for Ruby"
+HOMEPAGE="https://github.com/uwabami/rdtool"
+
+LICENSE="Ruby GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 ppc ppc64 ~sparc x86"
+IUSE="emacs"
+
+RDEPEND="${RDEPEND} emacs? ( >=app-editors/emacs-23.1:* )"
+
+SITEFILE=50${PN}-gentoo.el
+
+all_ruby_install() {
+ all_fakegem_install
+
+ if use emacs ; then
+ elisp-install ${PN} utils/rd-mode.el
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-ruby/recog/Manifest b/dev-ruby/recog/Manifest
index 28ea4559c6ad..b70cdfbbad3f 100644
--- a/dev-ruby/recog/Manifest
+++ b/dev-ruby/recog/Manifest
@@ -1,3 +1,3 @@
-DIST recog-2.1.31.gem 236032 BLAKE2B 5e6b4ffe163985ff437c2fbaf203e1d07796ead0c20b233703fcb66bfed45930463dc1b7b2bc0c6c9ec1089730589cf996b59382ad4fd63d4913b118035fc852 SHA512 eeabae2684d4fb616d7ea272dd9c4fda0b1a2ea7776cd664fa237989b68e277943642267359a2671ee180e1a5f0cda8f0be24bfa2b4d7729b469664700955ada
-DIST recog-2.1.46.gem 246784 BLAKE2B 1b151fb6944371d186154ecc28eb74f6727b92394bf3686fb7230603e64a37438dc63293929b63025794ae053304ced7f74da4d530d24f77a6274ffe69cfff7d SHA512 aae48fc9a91e7f750944a97e562789efde14474b42d063dcb2dacd038e78fd20222719e0f17d66c8a13b7261e2e58567bad4db0a84893724a5c04504d35efbc0
-DIST recog-2.3.2.gem 259584 BLAKE2B 035cdcb23fa837798fd256d00eb3cfa11b6ebeefd218c3c00a0f68ad1311efc6ce62a3db537cdc7a692d77e10b45c63f7c391314b05ca93c9afc269e67e7ba24 SHA512 0deb0e2354bab3ae190b0b71d370755de802d679a37a2d907fcc6503a12120e27d607bd3f31db62f678e4488228977132f3816a4586e5e85ba37f7ff6cd27733
+DIST recog-2.3.23.gem 392704 BLAKE2B 6b7ccfa2921fb7d643531c66970e757a01478b3990bbb2d05687a5364ed8b57317d16d0b116c2175cf0e667b12ea7a978c947b73d04db16fbd1a9db651ba4abf SHA512 34cb222dbc25f5da0581cb85aa92a3e6fa67b9af9d0b7b99cb3e358b1be5d71a25f582a669a06f4cadd4b6ac464c7f3d2b3856c24d5ecea0d1d6027758905774
+DIST recog-3.1.4.gem 375808 BLAKE2B 59bfe273242ecad54ac1de6d3aaade86310dabfc252ac087734e867a762b287d31b9dd1669536ab3e59d18d2342b3ab070e2406b41ca9281cbb6e5b2a9270330 SHA512 6fe086b16f9b9ee3579bade83da815973f4043b49b9869db18677b6d8378efa1024b2ecf414172ea62f35160da2d080406fb0f9c2ae001a6748c29f33f505d83
+DIST recog-3.1.5.gem 376832 BLAKE2B 99bb76f301eb7216bc586f4bea59d729dca68ccccb58053ae2757277db4ac96aa80ad490915fd31f30acd46f2f2642bb078b1174d716adba76ca1d6b16a0ef43 SHA512 e02904c42ebf1b671df65fcfc38527ab2b09c3e7bfeb1d2c2a29b45715eab1f0475c83ac66667fb38737e79a6158f456fe45ac3a6b881eaa4a5b52efd37b47ab
diff --git a/dev-ruby/recog/metadata.xml b/dev-ruby/recog/metadata.xml
index 4b7ab3533444..9c8ce608b3bc 100644
--- a/dev-ruby/recog/metadata.xml
+++ b/dev-ruby/recog/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/recog</remote-id>
- </upstream>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">rapid7/recog</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/recog/recog-2.1.31.ebuild b/dev-ruby/recog/recog-2.1.31.ebuild
deleted file mode 100644
index 979c69af3ee8..000000000000
--- a/dev-ruby/recog/recog-2.1.31.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24"
-RUBY_FAKEGEM_BINWRAP=""
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="xml"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Pattern recognition for hosts, services, and content"
-HOMEPAGE="https://github.com/rapid7/recog"
-
-LICENSE="BSD-2"
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/nokogiri
- !<dev-ruby/recog-2.0.6-r1"
-
-ruby_add_bdepend "test? (
- dev-ruby/regexp_parser
- dev-ruby/rspec:3
- dev-util/aruba
- dev-util/cucumber
-)"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
-}
-
-each_ruby_test() {
- RSPEC_VERSION=3 ruby-ng_rspec
- ruby-ng_cucumber
-}
diff --git a/dev-ruby/recog/recog-2.1.46.ebuild b/dev-ruby/recog/recog-2.1.46.ebuild
deleted file mode 100644
index 1f8f71315a9d..000000000000
--- a/dev-ruby/recog/recog-2.1.46.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25"
-RUBY_FAKEGEM_BINWRAP=""
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="xml"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Pattern recognition for hosts, services, and content"
-HOMEPAGE="https://github.com/rapid7/recog"
-
-LICENSE="BSD-2"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/nokogiri
- !<dev-ruby/recog-2.0.6-r1"
-
-ruby_add_bdepend "test? (
- dev-ruby/regexp_parser:0
- dev-ruby/rspec:3
- dev-util/aruba
- dev-util/cucumber
-)"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/I s:^:#:' -e '1igem "regexp_parser", "~>0.2"' spec/spec_helper.rb || die
-}
-
-each_ruby_test() {
- RSPEC_VERSION=3 ruby-ng_rspec
- ruby-ng_cucumber
-}
diff --git a/dev-ruby/recog/recog-2.3.2.ebuild b/dev-ruby/recog/recog-2.3.2.ebuild
deleted file mode 100644
index e041a3e28841..000000000000
--- a/dev-ruby/recog/recog-2.3.2.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_BINWRAP=""
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="xml"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Pattern recognition for hosts, services, and content"
-HOMEPAGE="https://github.com/rapid7/recog"
-
-LICENSE="BSD-2"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/nokogiri"
-
-ruby_add_bdepend "test? (
- dev-ruby/regexp_parser:0
- dev-ruby/rspec:3
- dev-util/aruba
- dev-util/cucumber
-)"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/I s:^:#:' -e '1igem "regexp_parser", "~>0.2"' spec/spec_helper.rb || die
-}
-
-each_ruby_test() {
- RSPEC_VERSION=3 ruby-ng_rspec
- ruby-ng_cucumber
-}
diff --git a/dev-ruby/recog/recog-2.3.23.ebuild b/dev-ruby/recog/recog-2.3.23.ebuild
new file mode 100644
index 000000000000..a7e9828eece6
--- /dev/null
+++ b/dev-ruby/recog/recog-2.3.23.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="xml"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Pattern recognition for hosts, services, and content"
+HOMEPAGE="https://github.com/rapid7/recog"
+
+LICENSE="BSD-2"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/nokogiri"
+
+ruby_add_bdepend "test? (
+ dev-ruby/regexp_parser
+ dev-ruby/rspec:3
+ dev-util/aruba:2
+ dev-util/cucumber
+)"
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+}
+
+each_ruby_test() {
+ RSPEC_VERSION=3 ruby-ng_rspec
+ ruby-ng_cucumber
+}
diff --git a/dev-ruby/recog/recog-3.1.4.ebuild b/dev-ruby/recog/recog-3.1.4.ebuild
new file mode 100644
index 000000000000..5c67d5b524f1
--- /dev/null
+++ b/dev-ruby/recog/recog-3.1.4.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="ruby31 ruby32"
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="recog"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Pattern recognition for hosts, services, and content"
+HOMEPAGE="https://github.com/rapid7/recog"
+
+LICENSE="BSD-2"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/nokogiri"
+
+ruby_add_bdepend "test? (
+ dev-ruby/regexp_parser
+)"
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/recog/recog-3.1.5.ebuild b/dev-ruby/recog/recog-3.1.5.ebuild
new file mode 100644
index 000000000000..35ef2a4232d6
--- /dev/null
+++ b/dev-ruby/recog/recog-3.1.5.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="recog"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Pattern recognition for hosts, services, and content"
+HOMEPAGE="https://github.com/rapid7/recog"
+
+LICENSE="BSD-2"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/nokogiri"
+
+ruby_add_bdepend "test? (
+ dev-ruby/regexp_parser
+)"
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/red-colors/Manifest b/dev-ruby/red-colors/Manifest
new file mode 100644
index 000000000000..519ce080e51c
--- /dev/null
+++ b/dev-ruby/red-colors/Manifest
@@ -0,0 +1,2 @@
+DIST red-colors-0.3.0.gem 104448 BLAKE2B 46b99c755e745eadfc1af61c024df66d54b583c9fbad37522971d44ee42b1db9a5148529a37252ad50cdb276fee8e58aca2afdc190bac3098baa67857eac0d6a SHA512 baa05634213a46da968a42e478db097c5bc47187e61807a3b3c30b8109a0fae63d587e5a3227b5bca75b921304b9d5e24a5ba945361dd5eba1c25235889c2cf1
+DIST red-colors-0.4.0.gem 107008 BLAKE2B e9396e16719514fa6ffee2de5f24f5668c6df10122264b967133f29a0c6b3fb949babb4d343948afba74a8226979677061ef1b28f1fef3e1e002d6d3b643ab78 SHA512 ce142c8f0b0e0a3d676b8460938c788595d15a84f268ac80a70543f81d4042d60f6f5703c91a496be8d27eed504207525bd3c4b72909b3dfc1ea2599515aafe8
diff --git a/dev-ruby/red-colors/metadata.xml b/dev-ruby/red-colors/metadata.xml
new file mode 100644
index 000000000000..721a3d872641
--- /dev/null
+++ b/dev-ruby/red-colors/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+</maintainer>
+<upstream>
+ <remote-id type="github">red-data-tools/red-colors</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/dev-ruby/red-colors/red-colors-0.3.0-r2.ebuild b/dev-ruby/red-colors/red-colors-0.3.0-r2.ebuild
new file mode 100644
index 000000000000..9f4866b65574
--- /dev/null
+++ b/dev-ruby/red-colors/red-colors-0.3.0-r2.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Color features for Ruby"
+HOMEPAGE="https://github.com/red-data-tools/red-colors"
+
+IUSE=""
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="amd64 ~ppc ~riscv ~x86"
+
+ruby_add_rdepend "dev-ruby/matrix"
diff --git a/dev-ruby/red-colors/red-colors-0.4.0.ebuild b/dev-ruby/red-colors/red-colors-0.4.0.ebuild
new file mode 100644
index 000000000000..9ff66585041a
--- /dev/null
+++ b/dev-ruby/red-colors/red-colors-0.4.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Color features for Ruby"
+HOMEPAGE="https://github.com/red-data-tools/red-colors"
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~amd64 ~ppc ~riscv ~x86"
+
+ruby_add_rdepend "
+ dev-ruby/json
+ dev-ruby/matrix
+"
diff --git a/dev-ruby/redcarpet/Manifest b/dev-ruby/redcarpet/Manifest
index 038ffbd14222..f6a55632b78b 100644
--- a/dev-ruby/redcarpet/Manifest
+++ b/dev-ruby/redcarpet/Manifest
@@ -1,2 +1 @@
-DIST redcarpet-3.4.0.tar.gz 105525 BLAKE2B 38b28f400b7300ea49cebda9b4739193b54c322c1c20ecba50938893286ad87e44ba9e9da83eab8433af0790d76bc0db4189fc0b70a4438480fe784570809e1a SHA512 25ed1fd35ebf815f396ed819baec69aae366bafab3983a53d364b1ef0d3f18cecaa523953d12cb0e5b896c30ac86e000318f33c633047bd271362474b9b8f877
-DIST redcarpet-3.5.0.tar.gz 106773 BLAKE2B 34c72d21c8ea4d841c9728e3c7e66be02c69943e5e0ee091688992c400748cf0a0900fa15de7bbaf18db8a89bc0309160fd5c2b2ca83ee86f6d46dd5d13d9770 SHA512 8d48f1b437297aa556d7f3c5e69c8dde04c63388e78ffe15ea3c36e4764790b5cb75a8baaf75ad64317bccc63384fa0a42251d05718902096229f9f6a24f06c9
+DIST redcarpet-3.6.0.tar.gz 108308 BLAKE2B 0dc15dc6ee17fdc8a0a171eb268315c4682b95145c5e79168e004c38cd856bd68f78e48b1b0c14a1d20676630d197fce86905cf15be5a1af0a83103855a63e6b SHA512 6d20340b10ee495319c6d3d24a42daf6ce78d5daafd1a650793f6743cc06b0523a560f2dd3d13030025e3592bbf05663e4b9393607b81b1d76b8a0da5be2dbce
diff --git a/dev-ruby/redcarpet/metadata.xml b/dev-ruby/redcarpet/metadata.xml
index 9034bfdd3418..3392b1dcc861 100644
--- a/dev-ruby/redcarpet/metadata.xml
+++ b/dev-ruby/redcarpet/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/redcarpet/redcarpet-3.4.0.ebuild b/dev-ruby/redcarpet/redcarpet-3.4.0.ebuild
deleted file mode 100644
index 1eb5fa7864a5..000000000000
--- a/dev-ruby/redcarpet/redcarpet-3.4.0.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOCS="README.markdown CONTRIBUTING.md CHANGELOG.md doc"
-RUBY_FAKEGEM_TASK_TEST="test:unit"
-inherit multilib ruby-fakegem
-
-SRC_URI="https://github.com/vmg/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-DESCRIPTION="A Ruby wrapper for Upskirt"
-HOMEPAGE="https://github.com/vmg/redcarpet"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm ~arm64 ~hppa ppc ppc64 x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/nokogiri )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' -e 's/=> :compile//' Rakefile || die
-
- # Avoid unneeded dependency on rake-compiler
- sed -i -e '/extensiontask/I s:^:#:' Rakefile || die
-}
-
-each_ruby_prepare() {
- sed -i -e "s#ruby#${RUBY}#" bin/redcarpet || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/redcarpet extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/*$(get_modname) lib || die
-}
diff --git a/dev-ruby/redcarpet/redcarpet-3.5.0.ebuild b/dev-ruby/redcarpet/redcarpet-3.5.0.ebuild
deleted file mode 100644
index 182d1bb7d601..000000000000
--- a/dev-ruby/redcarpet/redcarpet-3.5.0.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOCS="README.markdown CONTRIBUTING.md CHANGELOG.md doc"
-RUBY_FAKEGEM_TASK_TEST="test:unit"
-
-RUBY_FAKEGEM_GEMSPEC="redcarpet.gemspec"
-
-inherit multilib ruby-fakegem
-
-SRC_URI="https://github.com/vmg/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-DESCRIPTION="A Ruby wrapper for Upskirt"
-HOMEPAGE="https://github.com/vmg/redcarpet"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/nokogiri )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' -e 's/=> :compile//' Rakefile || die
-
- # Avoid unneeded dependency on rake-compiler
- sed -i -e '/extensiontask/I s:^:#:' Rakefile || die
-}
-
-each_ruby_prepare() {
- sed -i -e "s#ruby#${RUBY}#" bin/redcarpet || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/redcarpet extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/*$(get_modname) lib || die
-}
diff --git a/dev-ruby/redcarpet/redcarpet-3.6.0.ebuild b/dev-ruby/redcarpet/redcarpet-3.6.0.ebuild
new file mode 100644
index 000000000000..5f491f7c2a44
--- /dev/null
+++ b/dev-ruby/redcarpet/redcarpet-3.6.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOCS="README.markdown CONTRIBUTING.md CHANGELOG.md doc"
+RUBY_FAKEGEM_TASK_TEST="test:unit"
+
+RUBY_FAKEGEM_GEMSPEC="redcarpet.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/redcarpet/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby wrapper for Upskirt"
+HOMEPAGE="https://github.com/vmg/redcarpet"
+SRC_URI="https://github.com/vmg/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/d' -e 's/=> :compile//' Rakefile || die
+
+ # Avoid unneeded dependency on rake-compiler
+ sed -i -e '/extensiontask/I s:^:#:' Rakefile || die
+}
+
+each_ruby_prepare() {
+ sed -i -e "s#ruby#${RUBY}#" bin/redcarpet || die
+}
diff --git a/dev-ruby/redcloth/Manifest b/dev-ruby/redcloth/Manifest
index ef9bc8995d3e..a4f4e1c41299 100644
--- a/dev-ruby/redcloth/Manifest
+++ b/dev-ruby/redcloth/Manifest
@@ -1 +1,3 @@
DIST RedCloth-4.3.2.tar.gz 91880 BLAKE2B 0feac1ec59e23fcff39e2fdf9beff896be7949764e53a5a834c5f4e7d18813dc59bf354103d4fab82a709341a0f1b6919bbd3a463fd601564888672dbe73d343 SHA512 377fef21e646beb1658a4b8b8d0228e9730c6c8f33075a14137afcf80e8d37501ede8c05b720d0dfb36a680017f4dedd01565fe9b326ae06ead77afee6f122ca
+DIST RedCloth-4.3.3.tar.gz 92704 BLAKE2B 8de97317fa8ed3644a858376cbc73b4dfa91db565ef0a8a9dbbc2002da563eafd0ac975fe2c466519c38df7bb7be40f1f99ac4a7f2217c4a639760a95a32c79e SHA512 d45bad056e7d3d18bc123cc932ee35a808ab19dcee436a715dcccdd081dc6fbc06bbb56f792037fae031951c5b69f864c2fa0e80bf9ccece79789260bf69ca8b
+DIST RedCloth-4.3.4.tar.gz 93256 BLAKE2B d18146010b506ad6bbe78d28578bd7543c67c3c4ad001f0ccc4aa2bf791957283602282a0cc651d0454d02e84594b8df6e82cfbddd525805d5fb7636732108b0 SHA512 f6ec16056b60c3469e628558dbe4a9412f7338c57fc9bf70064946d532def1e3220686e5f726ed9d7e44c9ee902623a3e2ed625d483ff0e9b40ab0624c977cea
diff --git a/dev-ruby/redcloth/files/redcloth-4.3.2-cve-2023-31606-1.patch b/dev-ruby/redcloth/files/redcloth-4.3.2-cve-2023-31606-1.patch
new file mode 100644
index 000000000000..f5de833dafb3
--- /dev/null
+++ b/dev-ruby/redcloth/files/redcloth-4.3.2-cve-2023-31606-1.patch
@@ -0,0 +1,22 @@
+From 8d3b5c730596d254d0bbcfbab52f4158f03397b3 Mon Sep 17 00:00:00 2001
+From: Kornelius Kalnbach <murphy@rubychan.de>
+Date: Wed, 28 Jun 2023 17:24:55 +0200
+Subject: [PATCH] make regex faster with Atomic Grouping
+
+---
+ lib/redcloth/formatters/html.rb | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/redcloth/formatters/html.rb b/lib/redcloth/formatters/html.rb
+index b241c99..aaeae34 100644
+--- a/lib/redcloth/formatters/html.rb
++++ b/lib/redcloth/formatters/html.rb
+@@ -324,7 +324,7 @@ def before_transform(text)
+ # Clean unauthorized tags.
+ def clean_html( text, allowed_tags = BASIC_TAGS )
+ text.gsub!( /<!\[CDATA\[/, '' )
+- text.gsub!( /<(\/*)([A-Za-z]\w*)([^>]*?)(\s?\/?)>/ ) do |m|
++ text.gsub!( /<(\/*)(?>[A-Za-z]\w*)([^>]*?)(\s?\/?)>/ ) do |m|
+ raw = $~
+ tag = raw[2].downcase
+ if allowed_tags.has_key? tag
diff --git a/dev-ruby/redcloth/files/redcloth-4.3.2-cve-2023-31606-2.patch b/dev-ruby/redcloth/files/redcloth-4.3.2-cve-2023-31606-2.patch
new file mode 100644
index 000000000000..fd8de28f0e71
--- /dev/null
+++ b/dev-ruby/redcloth/files/redcloth-4.3.2-cve-2023-31606-2.patch
@@ -0,0 +1,22 @@
+From 7429f32bdac4fccf9f5ab702afc9c47092a7b3df Mon Sep 17 00:00:00 2001
+From: Kornelius Kalnbach <murphy@rubychan.de>
+Date: Thu, 29 Jun 2023 00:31:50 +0200
+Subject: [PATCH] simplify fix
+
+---
+ lib/redcloth/formatters/html.rb | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/redcloth/formatters/html.rb b/lib/redcloth/formatters/html.rb
+index aaeae34..396c2d0 100644
+--- a/lib/redcloth/formatters/html.rb
++++ b/lib/redcloth/formatters/html.rb
+@@ -324,7 +324,7 @@ def before_transform(text)
+ # Clean unauthorized tags.
+ def clean_html( text, allowed_tags = BASIC_TAGS )
+ text.gsub!( /<!\[CDATA\[/, '' )
+- text.gsub!( /<(\/*)(?>[A-Za-z]\w*)([^>]*?)(\s?\/?)>/ ) do |m|
++ text.gsub!( /<(\/*)([A-Za-z]\w*+)([^>]*?)(\s?\/?)>/ ) do |m|
+ raw = $~
+ tag = raw[2].downcase
+ if allowed_tags.has_key? tag
diff --git a/dev-ruby/redcloth/metadata.xml b/dev-ruby/redcloth/metadata.xml
index 1246bb351a87..13820832b4d8 100644
--- a/dev-ruby/redcloth/metadata.xml
+++ b/dev-ruby/redcloth/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/redcloth/redcloth-4.3.2-r1.ebuild b/dev-ruby/redcloth/redcloth-4.3.2-r1.ebuild
deleted file mode 100644
index 061dff80235f..000000000000
--- a/dev-ruby/redcloth/redcloth-4.3.2-r1.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME="RedCloth"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRADOC="README.rdoc CHANGELOG"
-
-RUBY_FAKEGEM_REQUIRE_PATHS="lib/case_sensitive_require"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="A module for using Textile in Ruby"
-HOMEPAGE="http://redcloth.org/"
-
-GITHUB_USER=jgarber
-SRC_URI="https://github.com/${GITHUB_USER}/redcloth/archive/v${PV}.tar.gz -> ${RUBY_FAKEGEM_NAME}-${PV}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-DEPEND+=" =dev-util/ragel-6*"
-
-PATCHES=( "${FILESDIR}/${P}-load-documents.patch" )
-
-ruby_add_bdepend "
- >=dev-ruby/rake-0.8.7
- >=dev-ruby/rake-compiler-0.7.1
- test? ( >=dev-ruby/diff-lcs-1.1.2 )"
-
-pkg_setup() {
- ruby-ng_pkg_setup
-
- # Export the VERBOSE variable to avoid remapping of stdout and
- # stderr, and that breaks because of bad interactions between
- # echoe, Ruby and Gentoo.
- export VERBOSE=1
-}
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/d' Rakefile ${PN}.gemspec || die
- rm -f tasks/{release,rspec,rvm}.rake || die
-}
-
-each_ruby_compile() {
- # We cannot run this manually easily, because Ragel re-generation
- # is a mess
- ${RUBY} -S rake compile || die "rake compile failed"
-}
diff --git a/dev-ruby/redcloth/redcloth-4.3.2-r5.ebuild b/dev-ruby/redcloth/redcloth-4.3.2-r5.ebuild
new file mode 100644
index 000000000000..ffd15f954018
--- /dev/null
+++ b/dev-ruby/redcloth/redcloth-4.3.2-r5.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_NAME="RedCloth"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc CHANGELOG"
+
+RUBY_FAKEGEM_REQUIRE_PATHS="lib/case_sensitive_require"
+
+RUBY_FAKEGEM_GEMSPEC=redcloth.gemspec
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/redcloth_scan/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="A module for using Textile in Ruby"
+HOMEPAGE="https://github.com/jgarber/redcloth"
+SRC_URI="https://github.com/jgarber/redcloth/archive/v${PV}.tar.gz -> ${RUBY_FAKEGEM_NAME}-${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm ~arm64 ~hppa ~loong ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+DEPEND+=" =dev-util/ragel-6*"
+
+PATCHES=(
+ "${FILESDIR}/${P}-load-documents.patch"
+ "${FILESDIR}/${P}-cve-2023-31606-1.patch"
+ "${FILESDIR}/${P}-cve-2023-31606-2.patch"
+)
+
+ruby_add_bdepend "
+ >=dev-ruby/rake-0.8.7
+ >=dev-ruby/rake-compiler-0.7.1
+ test? ( >=dev-ruby/diff-lcs-1.1.2 )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/d' Rakefile ${PN}.gemspec || die
+ rm -f tasks/{release,rspec,rvm}.rake || die
+
+ # Fix version
+ sed -i -e '/TINY/ s/1/2/' lib/redcloth/version.rb || die
+}
+
+each_ruby_prepare() {
+ ${RUBY} -S rake ext/redcloth_scan/extconf.rb || die
+}
diff --git a/dev-ruby/redcloth/redcloth-4.3.3.ebuild b/dev-ruby/redcloth/redcloth-4.3.3.ebuild
new file mode 100644
index 000000000000..719391936535
--- /dev/null
+++ b/dev-ruby/redcloth/redcloth-4.3.3.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_NAME="RedCloth"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc CHANGELOG"
+
+RUBY_FAKEGEM_REQUIRE_PATHS="lib/case_sensitive_require"
+
+RUBY_FAKEGEM_GEMSPEC=redcloth.gemspec
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/redcloth_scan/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="A module for using Textile in Ruby"
+HOMEPAGE="https://github.com/jgarber/redcloth"
+SRC_URI="https://github.com/jgarber/redcloth/archive/v${PV}.tar.gz -> ${RUBY_FAKEGEM_NAME}-${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+DEPEND+=" =dev-util/ragel-6*"
+
+ruby_add_bdepend "
+ >=dev-ruby/rake-0.8.7
+ >=dev-ruby/rake-compiler-0.7.1
+ test? ( >=dev-ruby/diff-lcs-1.1.2 )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/d' Rakefile ${PN}.gemspec || die
+ rm -f tasks/{release,rspec,rvm}.rake || die
+
+ # Fix version
+ sed -i -e '/TINY/ s/1/2/' lib/redcloth/version.rb || die
+}
+
+each_ruby_prepare() {
+ ${RUBY} -S rake ext/redcloth_scan/extconf.rb || die
+}
diff --git a/dev-ruby/redcloth/redcloth-4.3.4.ebuild b/dev-ruby/redcloth/redcloth-4.3.4.ebuild
new file mode 100644
index 000000000000..719391936535
--- /dev/null
+++ b/dev-ruby/redcloth/redcloth-4.3.4.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_NAME="RedCloth"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc CHANGELOG"
+
+RUBY_FAKEGEM_REQUIRE_PATHS="lib/case_sensitive_require"
+
+RUBY_FAKEGEM_GEMSPEC=redcloth.gemspec
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/redcloth_scan/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="A module for using Textile in Ruby"
+HOMEPAGE="https://github.com/jgarber/redcloth"
+SRC_URI="https://github.com/jgarber/redcloth/archive/v${PV}.tar.gz -> ${RUBY_FAKEGEM_NAME}-${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+DEPEND+=" =dev-util/ragel-6*"
+
+ruby_add_bdepend "
+ >=dev-ruby/rake-0.8.7
+ >=dev-ruby/rake-compiler-0.7.1
+ test? ( >=dev-ruby/diff-lcs-1.1.2 )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/d' Rakefile ${PN}.gemspec || die
+ rm -f tasks/{release,rspec,rvm}.rake || die
+
+ # Fix version
+ sed -i -e '/TINY/ s/1/2/' lib/redcloth/version.rb || die
+}
+
+each_ruby_prepare() {
+ ${RUBY} -S rake ext/redcloth_scan/extconf.rb || die
+}
diff --git a/dev-ruby/redis/Manifest b/dev-ruby/redis/Manifest
index 6cc25c079ef9..8ab85f36947a 100644
--- a/dev-ruby/redis/Manifest
+++ b/dev-ruby/redis/Manifest
@@ -1,2 +1 @@
-DIST redis-rb-3.3.5.tar.gz 88500 BLAKE2B a06e0e08dba211edb6393dd85f7957e56ad928bbd3be105ddeb6ad4f2cfa1d354289ad67f3c8c27d5fd9f8560167708a6937e2950ae12ee0d42d3321940d1e85 SHA512 b79f535b6dff26ae2b0213dd77d53b952fd877ef5193c8bf0f6e5cd0da1934d79711bf611b839ce8b97d7cf145e7e912d2956087501a2f841d42775dc0105a0c
-DIST redis-rb-4.0.1.tar.gz 87859 BLAKE2B c53f9a4ae96195eeab9f8fd0eae1ec8bcfeee7b717faf5b85c127ff90a88fbf9a0cfcef9d4c002ef7ee07f12a8e813bfd3e4d284a616d8637029d51a6c067f34 SHA512 c377512e0103a1aadb4aef3e64983fd4b20a26d67320ff0c500b7617c8b3bd5b4ba2240488a7d55be1301bb0b926398835f5c242ae97afe9141b3499da358eb9
+DIST redis-rb-4.8.0.tar.gz 143136 BLAKE2B 6d70985d5e2a749b931e5bf1f74f04d1e748a9b65cc1b1e644d9ecfa633978bef9c6418308425b6996779ff65fbbb66cacbf464cdf6d00e2736b20089aa0889c SHA512 e9d454d0416091d0c5629b6ed826e70879ea2f93501bae7db19570bfbf4bdae2ed36b357390afcfca427531d997acc7f5ae004d55d0e87ddb67c909db2b181d5
diff --git a/dev-ruby/redis/files/redis-3.2.1-local-redis-server.patch b/dev-ruby/redis/files/redis-3.2.1-local-redis-server.patch
deleted file mode 100644
index 3c6b351db485..000000000000
--- a/dev-ruby/redis/files/redis-3.2.1-local-redis-server.patch
+++ /dev/null
@@ -1,68 +0,0 @@
---- a/Rakefile 2015-08-11 22:16:04.474139810 +0100
-+++ b/Rakefile 2015-08-11 22:19:01.024398679 +0100
-@@ -1,14 +1,11 @@
- require "rake/testtask"
-
--ENV["REDIS_BRANCH"] ||= "unstable"
--
- REDIS_DIR = File.expand_path(File.join("..", "test"), __FILE__)
- REDIS_CNF = File.join(REDIS_DIR, "test.conf")
- REDIS_CNF_TEMPLATE = File.join(REDIS_DIR, "test.conf.erb")
- REDIS_PID = File.join(REDIS_DIR, "db", "redis.pid")
- REDIS_LOG = File.join(REDIS_DIR, "db", "redis.log")
- REDIS_SOCKET = File.join(REDIS_DIR, "db", "redis.sock")
--BINARY = "tmp/redis-#{ENV["REDIS_BRANCH"]}/src/redis-server"
-
- task :default => :run
-
-@@ -16,9 +13,7 @@
- task :run => [:start, :test, :stop]
-
- desc "Start the Redis server"
--task :start => [BINARY, REDIS_CNF] do
-- sh "#{BINARY} --version"
--
-+task :start => [REDIS_CNF] do
- redis_running = \
- begin
- File.exists?(REDIS_PID) && Process.kill(0, File.read(REDIS_PID).to_i)
-@@ -27,10 +22,14 @@
- false
- end
-
-- unless redis_running
-- unless system("#{BINARY} #{REDIS_CNF}")
-- abort "could not start redis-server"
-- end
-+ unless system("which redis-server")
-+ STDERR.puts "redis-server not in PATH"
-+ exit 1
-+ end
-+
-+ unless system("redis-server #{REDIS_CNF}")
-+ STDERR.puts "could not start redis-server"
-+ exit 1
- end
-
- at_exit do
-@@ -52,20 +51,6 @@
- FileUtils.rm_f(REDIS_CNF)
- end
-
--file BINARY do
-- branch = ENV.fetch("REDIS_BRANCH")
--
-- sh <<-SH
-- mkdir -p tmp;
-- cd tmp;
-- rm -rf redis-#{branch};
-- wget https://github.com/antirez/redis/archive/#{branch}.tar.gz -O #{branch}.tar.gz;
-- tar xf #{branch}.tar.gz;
-- cd redis-#{branch};
-- make
-- SH
--end
--
- file REDIS_CNF => [REDIS_CNF_TEMPLATE, __FILE__] do |t|
- require 'erb'
-
diff --git a/dev-ruby/redis/files/redis-4.0.1-local-redis-server.patch b/dev-ruby/redis/files/redis-4.0.1-local-redis-server.patch
deleted file mode 100644
index 3bd1b03f494a..000000000000
--- a/dev-ruby/redis/files/redis-4.0.1-local-redis-server.patch
+++ /dev/null
@@ -1,40 +0,0 @@
---- a/makefile.~1~ 2017-09-28 18:11:35.000000000 +0200
-+++ b/makefile 2018-04-10 20:45:58.307407705 +0200
-@@ -3,7 +3,7 @@
--TMP := tmp
-+TMP := ${T}
- BUILD_DIR := ${TMP}/redis-${REDIS_BRANCH}
- TARBALL := ${TMP}/redis-${REDIS_BRANCH}.tar.gz
--BINARY := ${BUILD_DIR}/src/redis-server
-+BINARY := /usr/sbin/redis-server
--PID_PATH := ${BUILD_DIR}/redis.pid
-+PID_PATH := ${TMP}/redis.pid
--SOCKET_PATH := ${BUILD_DIR}/redis.sock
-+SOCKET_PATH := ${TMP}/redis.sock
- PORT := 6381
-@@ -11,7 +11,7 @@
- test: ${TEST_FILES}
- make start
- env SOCKET_PATH=${SOCKET_PATH} \
-- ruby -v $$(echo $? | tr ' ' '\n' | awk '{ print "-r./" $$0 }') -e ''
-+ ${RUBY} -v $$(echo $? | tr ' ' '\n' | awk '{ print "-r./" $$0 }') -e ''
- make stop
-
- ${TMP}:
-@@ -20,11 +20,11 @@
- ${TARBALL}: ${TMP}
- wget https://github.com/antirez/redis/archive/${REDIS_BRANCH}.tar.gz -O $@
-
--${BINARY}: ${TARBALL} ${TMP}
-- rm -rf ${BUILD_DIR}
-- mkdir -p ${BUILD_DIR}
-- tar xf ${TARBALL} -C ${TMP}
-- cd ${BUILD_DIR} && make
-+# ${BINARY}: ${TARBALL} ${TMP}
-+# rm -rf ${BUILD_DIR}
-+# mkdir -p ${BUILD_DIR}
-+# tar xf ${TARBALL} -C ${TMP}
-+# cd ${BUILD_DIR} && make
-
- stop:
- (test -f ${PID_PATH} && (kill $$(cat ${PID_PATH}) || true) && rm -f ${PID_PATH}) || true
diff --git a/dev-ruby/redis/files/redis-4.8.0-local-redis-server.patch b/dev-ruby/redis/files/redis-4.8.0-local-redis-server.patch
new file mode 100644
index 000000000000..faf382ac5aee
--- /dev/null
+++ b/dev-ruby/redis/files/redis-4.8.0-local-redis-server.patch
@@ -0,0 +1,49 @@
+Gentoo specific patch adapted from redis-4.7.1-local-redis-server.patch
+
+diff --git a/makefile b/makefile
+index df25e4b..57bc941 100644
+--- a/makefile
++++ b/makefile
+@@ -1,18 +1,17 @@
+ REDIS_BRANCH ?= 7.0
+ ROOT_DIR :=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST))))
+-TMP := tmp
+ CONF := ${ROOT_DIR}/test/support/conf/redis-${REDIS_BRANCH}.conf
+ BUILD_DIR := ${TMP}/cache/redis-${REDIS_BRANCH}
+ TARBALL := ${TMP}/redis-${REDIS_BRANCH}.tar.gz
+-BINARY := ${BUILD_DIR}/src/redis-server
+-REDIS_CLIENT := ${BUILD_DIR}/src/redis-cli
++BINARY := /usr/sbin/redis-server
++REDIS_CLIENT := /usr/bin/redis-cli
+ REDIS_TRIB := ${BUILD_DIR}/src/redis-trib.rb
+-PID_PATH := ${BUILD_DIR}/redis.pid
++PID_PATH := ${TMP}/redis.pid
+ SOCKET_PATH := ${TMP}/redis.sock
+ PORT := 6381
+ SLAVE_PORT := 6382
+-SLAVE_PID_PATH := ${BUILD_DIR}/redis_slave.pid
+-SLAVE_SOCKET_PATH := ${BUILD_DIR}/redis_slave.sock
++SLAVE_PID_PATH := ${TMP}/redis_slave.pid
++SLAVE_SOCKET_PATH := ${TMP}/redis_slave.sock
+ HA_GROUP_NAME := master1
+ SENTINEL_PORTS := 6400 6401 6402
+ SENTINEL_PID_PATHS := $(addprefix ${TMP}/redis,$(addsuffix .pid,${SENTINEL_PORTS}))
+@@ -31,14 +30,8 @@ start_all: start start_slave start_sentinel wait_for_sentinel start_cluster crea
+
+ stop_all: stop_sentinel stop_slave stop stop_cluster
+
+-${TMP}:
+- @mkdir -p $@
+-
+-${BINARY}: ${TMP}
+- @bin/build ${REDIS_BRANCH} $<
+-
+ test:
+- @env REDIS_SOCKET_PATH=${SOCKET_PATH} bundle exec rake test
++ @env REDIS_SOCKET_PATH=${SOCKET_PATH} ${RUBY} -S rake test
+
+ stop:
+ @$(call kill-redis,${PID_PATH});\
+--
+2.35.1
+
diff --git a/dev-ruby/redis/metadata.xml b/dev-ruby/redis/metadata.xml
index d079bc0c5a52..c4f42bae9b49 100644
--- a/dev-ruby/redis/metadata.xml
+++ b/dev-ruby/redis/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/redis/redis-3.3.5.ebuild b/dev-ruby/redis/redis-3.3.5.ebuild
deleted file mode 100644
index 21dfc6a7a708..000000000000
--- a/dev-ruby/redis/redis-3.3.5.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-MY_P="redis-rb-${PV}"
-RUBY_FAKEGEM_RECIPE_TEST="rake"
-RUBY_FAKEGEM_TASK_TEST="run"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Ruby client library for Redis"
-HOMEPAGE="https://github.com/redis/redis-rb"
-SRC_URI="https://github.com/redis/redis-rb/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="doc test"
-
-DEPEND="test? ( >=dev-db/redis-3.2.0 )"
-
-RUBY_S="${MY_P}"
-
-all_ruby_prepare() {
- # call me impatient, but this way we don't need netcat
- sed -i \
- -e '/test_subscribe_past_a_timeout/,+18d' \
- test/publish_subscribe_test.rb || die "sed failed"
-
- # Version 3.0.6 downloads and compiles redis-server to test against.
- # This patch reverts it to the way 3.0.5 does it, using the local server.
- # https://github.com/redis/redis-rb/commit/351a1294fe33f79c23495b7568045e9f484918f2
- epatch "${FILESDIR}/${PN}-3.2.1-local-redis-server.patch"
-}
diff --git a/dev-ruby/redis/redis-4.0.1.ebuild b/dev-ruby/redis/redis-4.0.1.ebuild
deleted file mode 100644
index e74cfcf17fb7..000000000000
--- a/dev-ruby/redis/redis-4.0.1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-MY_P="redis-rb-${PV}"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Ruby client library for Redis"
-HOMEPAGE="https://github.com/redis/redis-rb"
-SRC_URI="https://github.com/redis/redis-rb/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64"
-IUSE="doc test"
-
-DEPEND="test? ( >=dev-db/redis-3.2.0 )"
-
-RUBY_S="${MY_P}"
-
-PATCHES=( "${FILESDIR}/${P}-local-redis-server.patch" )
-
-all_ruby_prepare() {
- # call me impatient, but this way we don't need netcat
- sed -i \
- -e '/test_subscribe_past_a_timeout/,+18d' \
- test/publish_subscribe_test.rb || die "sed failed"
-}
-
-each_ruby_test() {
- RUBY=${RUBY} emake test
-}
diff --git a/dev-ruby/redis/redis-4.8.0.ebuild b/dev-ruby/redis/redis-4.8.0.ebuild
new file mode 100644
index 000000000000..7a131619ca89
--- /dev/null
+++ b/dev-ruby/redis/redis-4.8.0.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="ruby30 ruby31 ruby32"
+
+MY_P="redis-rb-${PV}"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="redis.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby client library for Redis"
+HOMEPAGE="https://github.com/redis/redis-rb"
+SRC_URI="https://github.com/redis/redis-rb/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="4"
+KEYWORDS="~amd64 ~arm64"
+IUSE="doc test"
+
+DEPEND="test? ( >=dev-db/redis-7 )"
+
+RUBY_S="${MY_P}"
+
+PATCHES=( "${FILESDIR}/${PN}-4.8.0-local-redis-server.patch" )
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitest
+ dev-ruby/mocha
+)"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files --/echo/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '/test_connection_timeout/askip "requires network"' test/redis/internals_test.rb || die
+
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+}
+
+each_ruby_test() {
+ RUBY=${RUBY} TMP=${T} MT_NO_PLUGINS=true VERBOSE=true emake -j1 all
+ einfo "Wait 5 seconds for servers to stop"
+ sleep 5
+}
diff --git a/dev-ruby/ref/metadata.xml b/dev-ruby/ref/metadata.xml
index 6b2a6a85c39f..c54b88663167 100644
--- a/dev-ruby/ref/metadata.xml
+++ b/dev-ruby/ref/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ref/ref-2.0.0-r1.ebuild b/dev-ruby/ref/ref-2.0.0-r1.ebuild
new file mode 100644
index 000000000000..d728b0a9e178
--- /dev/null
+++ b/dev-ruby/ref/ref-2.0.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="HISTORY.txt README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Implements weak, soft, and strong references in Ruby"
+HOMEPAGE="https://github.com/ruby-concurrency/ref"
+SRC_URI="https://github.com/ruby-concurrency/ref/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64 ~riscv"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/,/^end/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/ref/ref-2.0.0.ebuild b/dev-ruby/ref/ref-2.0.0.ebuild
deleted file mode 100644
index 3896a1c8cc08..000000000000
--- a/dev-ruby/ref/ref-2.0.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="HISTORY.txt README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Implements weak, soft, and strong references in Ruby"
-HOMEPAGE="https://github.com/ruby-concurrency/ref"
-SRC_URI="https://github.com/ruby-concurrency/ref/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/^end/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/regexp_parser/Manifest b/dev-ruby/regexp_parser/Manifest
index edccc2d76077..633178f00ce0 100644
--- a/dev-ruby/regexp_parser/Manifest
+++ b/dev-ruby/regexp_parser/Manifest
@@ -1,4 +1,3 @@
-DIST regexp_parser-0.5.0.tar.gz 80554 BLAKE2B 7890e6850e3ffbb927c5e72430ab29e6aeec4f8684eb56f4153414aca62702faa57f48887618e84b1d087e2ba366ec9d6b2e92200cc34472b7bbb5a8b0043415 SHA512 0d1c43fda01077b9b3d9c28ce9cb01772f10817e42d9c0ff28e6ea5cd059ad4869b940498c6a4e77d4fc6acb6ac0aba293ae67dd012650cdb58989b90868be16
-DIST regexp_parser-1.4.0.tar.gz 82874 BLAKE2B b758f5c16c163d43fbf856af20ac6146e9fa81b2945fe7bed8ce66bb3f46586ca03d680a98ea3c2a2deab825adf5d7589856c666b763dc9e688e37e555bbeb1f SHA512 0d350df94cce0812e721d9b2d3b3dc2f5fdadf87eda3824e05121cbb6aceea9b99783bba771af74d9b5606e99e64e23af13abfb000f925440095d612b579c8b3
-DIST regexp_parser-1.5.1.tar.gz 82482 BLAKE2B ff1746e52e786e273923dd222ea8c8276eb1e4ffe9bf899068160dec229784709ba679983c1e43736c128ec094861174bd43e0aceea704ee2d38aff4a53e6775 SHA512 4856fbcac800083b417880c30b5d6a5ea445bb85950bdd7898f368bfa2d44b01b1e2058b279f1640cf1cf4d7b28e225d25bc2d356d2c4a7c1be0a2c621dd3827
-DIST regexp_parser-1.6.0.tar.gz 82909 BLAKE2B bbf36af3686165c7d0d439cc22181519a79e46853d7e185577026e4e200c1dda9d8696fa2d83a3cb90f78cb2f13632ff0ba9996b7f4a029780d840ba8211507c SHA512 96214654e56bd17a5b79cd979e87ca4cbd86bf9070fb0646dcea913d482e731c8190e17eb31668eb5d429b7ee6f9a13ef3111c60d2d9b87adddfb760859241e9
+DIST regexp_parser-2.8.2.tar.gz 102450 BLAKE2B ff932e91dfa01226e4b528f5d4bd9aeb42a04f52fe067879d54c05bbdad8dd26ab442e64e9f439d0466a4654057805f0073463f7498929205030eed940bf9afd SHA512 78a76fe3d049e840f8539ad013c682c58f6cac11305579a8e11601f20d4cd7f6a4de86e4da16109b6f95fd86c084ddf02ed67e6fe706fb8f023ec535c0944e30
+DIST regexp_parser-2.8.3.tar.gz 102631 BLAKE2B 667a1bfb5cb71d84868d851686cda5601cebaceeea57e53cdd00cef59b7f78cf7c4051019e48367c9f053fb175079802c05ac0ac76e0fcc0273c811ccfadb107 SHA512 cb818d30387acf4604370ed7ada928e59bf2714905b1252e7a29a3b3cf3b53ef1c0fec53b9ec262716c872ca330f556f7beb28d75a043fc9b2343e76b80e5a38
+DIST regexp_parser-2.9.0.tar.gz 103509 BLAKE2B 722dec7d2d98ee2773b0c109195e20e154fbbd7c2b8fb737a35e85c138e3372407c36c9e488f199345acb84d20768a71ced7334aa76fb09ee329f83e088a301b SHA512 e6c1cb75f90e23e8c43d0c53a4aa185b0f4dcc2e02d6c4e334fd9e5aadb875cf79966934b4c7e3a13fe16f9b1fa069d39ef90b307da731eb634bed27d0a1ba4d
diff --git a/dev-ruby/regexp_parser/metadata.xml b/dev-ruby/regexp_parser/metadata.xml
index 6b7828b117ca..e0e2342aa00d 100644
--- a/dev-ruby/regexp_parser/metadata.xml
+++ b/dev-ruby/regexp_parser/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/regexp_parser/regexp_parser-0.5.0.ebuild b/dev-ruby/regexp_parser/regexp_parser-0.5.0.ebuild
deleted file mode 100644
index 061c75e89e37..000000000000
--- a/dev-ruby/regexp_parser/regexp_parser-0.5.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="ChangeLog README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library for tokenizing, lexing, and parsing Ruby regular expressions"
-HOMEPAGE="https://github.com/ammar/regexp_parser"
-SRC_URI="https://github.com/ammar/regexp_parser/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-DEPEND+=" =dev-util/ragel-6*"
-
-ruby_add_bdepend "dev-ruby/rake"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
- sed -i -e '1irequire "delegate"' test/support/warning_extractor.rb || die
-}
-
-each_ruby_compile() {
- ${RUBY} -S rake ragel:rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib bin/test || die
-}
diff --git a/dev-ruby/regexp_parser/regexp_parser-1.4.0.ebuild b/dev-ruby/regexp_parser/regexp_parser-1.4.0.ebuild
deleted file mode 100644
index 2167d9769c71..000000000000
--- a/dev-ruby/regexp_parser/regexp_parser-1.4.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library for tokenizing, lexing, and parsing Ruby regular expressions"
-HOMEPAGE="https://github.com/ammar/regexp_parser"
-SRC_URI="https://github.com/ammar/regexp_parser/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="amd64 ~arm ~x86"
-IUSE=""
-
-DEPEND+=" =dev-util/ragel-6*"
-
-ruby_add_bdepend "dev-ruby/rake test? ( dev-ruby/regexp_property_values )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
- sed -i -e '1irequire "delegate"' test/support/warning_extractor.rb || die
-}
-
-each_ruby_compile() {
- ${RUBY} -S rake ragel:rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib bin/test || die
-}
diff --git a/dev-ruby/regexp_parser/regexp_parser-1.5.1.ebuild b/dev-ruby/regexp_parser/regexp_parser-1.5.1.ebuild
deleted file mode 100644
index ad468130a34c..000000000000
--- a/dev-ruby/regexp_parser/regexp_parser-1.5.1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library for tokenizing, lexing, and parsing Ruby regular expressions"
-HOMEPAGE="https://github.com/ammar/regexp_parser"
-SRC_URI="https://github.com/ammar/regexp_parser/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~x86"
-IUSE=""
-
-DEPEND+=" =dev-util/ragel-6*"
-
-ruby_add_bdepend "dev-ruby/rake
- test? ( dev-ruby/regexp_property_values dev-ruby/rspec:3 )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
-}
-
-each_ruby_compile() {
- ${RUBY} -S rake ragel:rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib bin/test || die
-}
diff --git a/dev-ruby/regexp_parser/regexp_parser-1.6.0.ebuild b/dev-ruby/regexp_parser/regexp_parser-1.6.0.ebuild
deleted file mode 100644
index 93081217b06e..000000000000
--- a/dev-ruby/regexp_parser/regexp_parser-1.6.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library for tokenizing, lexing, and parsing Ruby regular expressions"
-HOMEPAGE="https://github.com/ammar/regexp_parser"
-SRC_URI="https://github.com/ammar/regexp_parser/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~x86"
-IUSE=""
-
-DEPEND+=" =dev-util/ragel-6*"
-
-ruby_add_bdepend "dev-ruby/rake
- test? ( dev-ruby/regexp_property_values dev-ruby/rspec:3 )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
-}
-
-each_ruby_compile() {
- ${RUBY} -S rake ragel:rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib bin/test || die
-}
diff --git a/dev-ruby/regexp_parser/regexp_parser-2.8.2.ebuild b/dev-ruby/regexp_parser/regexp_parser-2.8.2.ebuild
new file mode 100644
index 000000000000..6a1a5443fa90
--- /dev/null
+++ b/dev-ruby/regexp_parser/regexp_parser-2.8.2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="regexp_parser.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library for tokenizing, lexing, and parsing Ruby regular expressions"
+HOMEPAGE="https://github.com/ammar/regexp_parser"
+SRC_URI="https://github.com/ammar/regexp_parser/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc"
+IUSE=""
+
+DEPEND+=" =dev-util/ragel-6*"
+
+ruby_add_bdepend "dev-ruby/rake dev-ruby/rspec:3
+ test? ( dev-ruby/leto:2 dev-ruby/regexp_property_values dev-ruby/rspec:3 )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+}
+
+each_ruby_compile() {
+ CI=true ${RUBY} -S rake ragel:rb || die
+}
diff --git a/dev-ruby/regexp_parser/regexp_parser-2.8.3.ebuild b/dev-ruby/regexp_parser/regexp_parser-2.8.3.ebuild
new file mode 100644
index 000000000000..e3cde62471a5
--- /dev/null
+++ b/dev-ruby/regexp_parser/regexp_parser-2.8.3.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="regexp_parser.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library for tokenizing, lexing, and parsing Ruby regular expressions"
+HOMEPAGE="https://github.com/ammar/regexp_parser"
+SRC_URI="https://github.com/ammar/regexp_parser/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc"
+IUSE=""
+
+DEPEND+=" =dev-util/ragel-6*"
+
+ruby_add_bdepend "dev-ruby/rake dev-ruby/rspec:3
+ test? ( dev-ruby/leto:2 dev-ruby/regexp_property_values dev-ruby/rspec:3 )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+}
+
+each_ruby_compile() {
+ CI=true ${RUBY} -S rake ragel:rb || die
+}
diff --git a/dev-ruby/regexp_parser/regexp_parser-2.9.0.ebuild b/dev-ruby/regexp_parser/regexp_parser-2.9.0.ebuild
new file mode 100644
index 000000000000..24715aaf7a43
--- /dev/null
+++ b/dev-ruby/regexp_parser/regexp_parser-2.9.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="regexp_parser.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library for tokenizing, lexing, and parsing Ruby regular expressions"
+HOMEPAGE="https://github.com/ammar/regexp_parser"
+SRC_URI="https://github.com/ammar/regexp_parser/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+DEPEND+=" =dev-util/ragel-6*"
+
+ruby_add_bdepend "dev-ruby/rake dev-ruby/rspec:3
+ test? ( dev-ruby/leto:2 dev-ruby/regexp_property_values dev-ruby/rspec:3 )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+}
+
+each_ruby_compile() {
+ CI=true ${RUBY} -S rake ragel:rb || die
+}
diff --git a/dev-ruby/regexp_property_values/Manifest b/dev-ruby/regexp_property_values/Manifest
index f06e1574995e..f4fb3307ca6c 100644
--- a/dev-ruby/regexp_property_values/Manifest
+++ b/dev-ruby/regexp_property_values/Manifest
@@ -1,3 +1,2 @@
-DIST regexp_property_values-0.3.4.tar.gz 11273 BLAKE2B a52ab11676b58a752741240912da5fa312661a583dd74a4321f8184fef2864c74e0d5f709cb68e3ce64a3e19e9320305e80bf7614a40142c4855ccec1c40b5a5 SHA512 01ca50f831bf3364e38559e06cb54faef59fdb0b995a6bfa0aaa3943591d98f97939a47911bf8b075b34b3c401b5de51e42a71088400112ee8afd8d39f164465
-DIST regexp_property_values-0.3.5.tar.gz 11410 BLAKE2B adcf7848af9df53707a878ee35443583b03f96f60f9b23fd5f146e81b4b12a4e3ada2c48d6509b15c848b15c668d9430ef93b34f08491ce13249ec458b2be0eb SHA512 5ac91331deb12fd77ee6a5ca8f942c2b2ea0ccb42bc63548444ecfe85c3a60bad385831b408f21c848f0c0ac2db3c68f8391fd68074acb0187ae9de51ca76e47
-DIST regexp_property_values-1.0.0.tar.gz 12884 BLAKE2B 82f63d21a1e1508cef79afc2f1b5cca842c1e5bc96b197efa90ec0d02e7bd213cc67ae99f4f71cae6e632e0804fa2d6e935c7d30f27a940c767f5a83dd9edd21 SHA512 f51946d93c255c3b51bfb8055d2c0548c9656db9f208de74b569df8799fa97712a76b509546e149f71e3176ae0e979f295b225c171cedc687e1871f204c1e0d3
+DIST regexp_property_values-1.4.0.tar.gz 13719 BLAKE2B e0569e5387d5186829e40a8fdeec1fbd8534356ec73cce5525b6259938534fe8d1e3a15664faa7903a93e5a7330e6cbc6281b79be74cd4d1b13865084e1f42a4 SHA512 f8b425f001f4b9f6b373d9b47d7b87baf369719c2ae1385d68932f31d0a392086d3ed8b48461cbf59568668722975a98935c56fa470ce7ba466c29a30442bf6e
+DIST regexp_property_values-1.5.1.tar.gz 13901 BLAKE2B 32236b67ff4fc932fc30638a8fc85745d2c74445d4009c06de94652b82238599dd90e73d9ebd63690604fd1c3d413cddba3290a732150726126dcd3361f5eb47 SHA512 0787105195c22cfb499d37e5a2adb7ca52d23d291280ed9b5dcc38e6b03d260e341bdf56ba1bf643cc6cdf9436fe2287e5f139cdbd11cf4c71da256767f75754
diff --git a/dev-ruby/regexp_property_values/metadata.xml b/dev-ruby/regexp_property_values/metadata.xml
index 28ab0c15f206..aa236c49ae4b 100644
--- a/dev-ruby/regexp_property_values/metadata.xml
+++ b/dev-ruby/regexp_property_values/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">jaynetics/regexp_property_values</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/regexp_property_values/regexp_property_values-0.3.4.ebuild b/dev-ruby/regexp_property_values/regexp_property_values-0.3.4.ebuild
deleted file mode 100644
index f75f71df624a..000000000000
--- a/dev-ruby/regexp_property_values/regexp_property_values-0.3.4.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="See which property values are supported by the regular expression engine"
-HOMEPAGE="https://github.com/janosch-x/regexp_property_values"
-SRC_URI="https://github.com/janosch-x/regexp_property_values/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
-
- # Avoid dependency on character_set which would lead to circular
- # dependencies.
- sed -i -e '/returns a CharacterSet/askip "gentoo circular dependencies"' spec/regexp_property_values/extension_spec.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/regexp_property_values extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/regexp_property_values V=1
- cp ext/regexp_property_values/regexp_property_values.so lib/regexp_property_values/ || die
-}
diff --git a/dev-ruby/regexp_property_values/regexp_property_values-0.3.5.ebuild b/dev-ruby/regexp_property_values/regexp_property_values-0.3.5.ebuild
deleted file mode 100644
index eb80ae2c375a..000000000000
--- a/dev-ruby/regexp_property_values/regexp_property_values-0.3.5.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="See which property values are supported by the regular expression engine"
-HOMEPAGE="https://github.com/janosch-x/regexp_property_values"
-SRC_URI="https://github.com/janosch-x/regexp_property_values/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
-
- # Avoid dependency on character_set which would lead to circular
- # dependencies.
- sed -i -e '/returns a CharacterSet/askip "gentoo circular dependencies"' spec/regexp_property_values/extension_spec.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/regexp_property_values extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/regexp_property_values V=1
- cp ext/regexp_property_values/regexp_property_values.so lib/regexp_property_values/ || die
-}
diff --git a/dev-ruby/regexp_property_values/regexp_property_values-1.0.0.ebuild b/dev-ruby/regexp_property_values/regexp_property_values-1.0.0.ebuild
deleted file mode 100644
index ebf2956d18d2..000000000000
--- a/dev-ruby/regexp_property_values/regexp_property_values-1.0.0.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="See which property values are supported by the regular expression engine"
-HOMEPAGE="https://github.com/janosch-x/regexp_property_values"
-SRC_URI="https://github.com/janosch-x/regexp_property_values/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
-
- # Avoid dependency on character_set which would lead to circular
- # dependencies.
- sed -i -e '/returns a CharacterSet/askip "gentoo circular dependencies"' spec/regexp_property_values/value_spec.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/regexp_property_values extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/regexp_property_values V=1
- cp ext/regexp_property_values/regexp_property_values.so lib/regexp_property_values/ || die
-}
diff --git a/dev-ruby/regexp_property_values/regexp_property_values-1.4.0.ebuild b/dev-ruby/regexp_property_values/regexp_property_values-1.4.0.ebuild
new file mode 100644
index 000000000000..0de77ef85071
--- /dev/null
+++ b/dev-ruby/regexp_property_values/regexp_property_values-1.4.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/regexp_property_values/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/regexp_property_values"
+
+inherit ruby-fakegem
+
+DESCRIPTION="See which property values are supported by the regular expression engine"
+HOMEPAGE="https://github.com/jaynetics/regexp_property_values"
+SRC_URI="https://github.com/jaynetics/regexp_property_values/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
+
+ # Avoid dependency on character_set which would lead to circular
+ # dependencies.
+ sed -e '/returns a CharacterSet/askip "gentoo circular dependencies"' \
+ -i spec/regexp_property_values/value_spec.rb || die
+}
diff --git a/dev-ruby/regexp_property_values/regexp_property_values-1.5.1.ebuild b/dev-ruby/regexp_property_values/regexp_property_values-1.5.1.ebuild
new file mode 100644
index 000000000000..dd0be2885d42
--- /dev/null
+++ b/dev-ruby/regexp_property_values/regexp_property_values-1.5.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/regexp_property_values/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/regexp_property_values"
+
+inherit ruby-fakegem
+
+DESCRIPTION="See which property values are supported by the regular expression engine"
+HOMEPAGE="https://github.com/jaynetics/regexp_property_values"
+SRC_URI="https://github.com/jaynetics/regexp_property_values/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
+
+ # Avoid dependency on character_set which would lead to circular
+ # dependencies.
+ sed -e '/returns a CharacterSet/askip "gentoo circular dependencies"' \
+ -i spec/regexp_property_values/value_spec.rb || die
+}
diff --git a/dev-ruby/reline/Manifest b/dev-ruby/reline/Manifest
new file mode 100644
index 000000000000..37ffa1b48216
--- /dev/null
+++ b/dev-ruby/reline/Manifest
@@ -0,0 +1,4 @@
+DIST reline-0.4.3.tar.gz 93606 BLAKE2B 9faf8e2db40e75285163a6b8d587198b96faa67284b276e2a96d03b074d2f1abed01aa49a770bad96e066d0d6214319fb84b09a07754b93e2298896641babd73 SHA512 7a6c054dd187ed804ea730845af1eaace094d25e5fc5a9c02395e3886f493a79922cb624dd16d9000f193baf2d3cb147a57737235b289e1382a92e34c59d7dfe
+DIST reline-0.5.0.tar.gz 88882 BLAKE2B 822c8b4d73fee5545c8b6e6ad0a7f4e3ecf0c67f6493835f47b7cf2c3d653296463cd3cd0f085d182cd5c2ab33551a125bcfc048bb288e602b812ec921de2e9a SHA512 ff988a5007385d50c4f29403be2f85d3a3d559121b4ffc0bffd697b061efcaaa49e1bdaa36bd3b505a8f3cdfacd4b4198f3dd84e0d91014b56deec34a66bd153
+DIST reline-0.5.1.tar.gz 89528 BLAKE2B 24a7747abacdc1c9fbf95b31b1981c63f9eed1b3c701d938127d0b3a09212f05e6849722f77efb95a70ad1ebf442d4e0bacb18a01d42a2887f1c70a8a10f96d1 SHA512 0248ab4fac21ac8009c053ed982c943430d4aa899a0b76ccd02fa4f2d1e4174c29dd1d6176a002bf12d838399e30db681b205ae74c74e8a5139ce098641a9c69
+DIST reline-0.5.2.tar.gz 90163 BLAKE2B 12ff435da396a19e62b8ba972568c39697ff7024fe5deeb209958cf85b5a7a8fd3986eff2f6f66282af23997566955b195a354a875efe6a77350f8b103dd9aef SHA512 bd8722e524333ab84c12c97c3e335a075f36379301b9c35a52f459ff55a853f779218ec24d691dc0a1eea1525693b18c49053b13eb79a8db903905659735bb74
diff --git a/dev-ruby/reline/metadata.xml b/dev-ruby/reline/metadata.xml
new file mode 100644
index 000000000000..1ca926c896fd
--- /dev/null
+++ b/dev-ruby/reline/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/reline</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/reline/reline-0.4.3.ebuild b/dev-ruby/reline/reline-0.4.3.ebuild
new file mode 100644
index 000000000000..a779c43093ce
--- /dev/null
+++ b/dev-ruby/reline/reline-0.4.3.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md doc/reline/face.md"
+RUBY_FAKEGEM_GEMSPEC="reline.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Alternative readline implementation in pure Ruby"
+HOMEPAGE="https://github.com/ruby/reline"
+SRC_URI="https://github.com/ruby/reline/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+ruby_add_rdepend ">=dev-ruby/io-console-0.5.0:0"
+
+all_ruby_prepare() {
+ sed -e "s:_relative ':'./:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test/reline -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/reline/reline-0.5.0.ebuild b/dev-ruby/reline/reline-0.5.0.ebuild
new file mode 100644
index 000000000000..a779c43093ce
--- /dev/null
+++ b/dev-ruby/reline/reline-0.5.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md doc/reline/face.md"
+RUBY_FAKEGEM_GEMSPEC="reline.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Alternative readline implementation in pure Ruby"
+HOMEPAGE="https://github.com/ruby/reline"
+SRC_URI="https://github.com/ruby/reline/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+ruby_add_rdepend ">=dev-ruby/io-console-0.5.0:0"
+
+all_ruby_prepare() {
+ sed -e "s:_relative ':'./:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test/reline -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/reline/reline-0.5.1.ebuild b/dev-ruby/reline/reline-0.5.1.ebuild
new file mode 100644
index 000000000000..a779c43093ce
--- /dev/null
+++ b/dev-ruby/reline/reline-0.5.1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md doc/reline/face.md"
+RUBY_FAKEGEM_GEMSPEC="reline.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Alternative readline implementation in pure Ruby"
+HOMEPAGE="https://github.com/ruby/reline"
+SRC_URI="https://github.com/ruby/reline/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+ruby_add_rdepend ">=dev-ruby/io-console-0.5.0:0"
+
+all_ruby_prepare() {
+ sed -e "s:_relative ':'./:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test/reline -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/reline/reline-0.5.2.ebuild b/dev-ruby/reline/reline-0.5.2.ebuild
new file mode 100644
index 000000000000..a779c43093ce
--- /dev/null
+++ b/dev-ruby/reline/reline-0.5.2.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md doc/reline/face.md"
+RUBY_FAKEGEM_GEMSPEC="reline.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Alternative readline implementation in pure Ruby"
+HOMEPAGE="https://github.com/ruby/reline"
+SRC_URI="https://github.com/ruby/reline/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+ruby_add_rdepend ">=dev-ruby/io-console-0.5.0:0"
+
+all_ruby_prepare() {
+ sed -e "s:_relative ':'./:" \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test/reline -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/request_store/Manifest b/dev-ruby/request_store/Manifest
index 2ec37379a764..a266786179f9 100644
--- a/dev-ruby/request_store/Manifest
+++ b/dev-ruby/request_store/Manifest
@@ -1,2 +1,2 @@
-DIST request_store-1.0.5.gem 6656 BLAKE2B 2bd96d3dd40e846e8b36cae338c1f95ec812d6121db332e60c85b4c8e043fe81229e9e2f7f8f3c1ef3d7c592515bb69d5dae3cc4755f181fd29a1eb7e7c6254d SHA512 0d69ebdb8d3f6df11f89780c250b5fcc702258e19d7fbf8e2273614ecc220ee25e059a596a8a7e39bcc426f8d834cab38c161c0c1a800cc7ebdba3daa810e727
-DIST request_store-1.4.1.gem 9216 BLAKE2B 06d88b26dfb1834e1a30bd17780e19db75dacfb07a18324efc06dfe17aecad6232f7d1bf7a42bf152c5350926e2d64cfcd8d86f12178d2deb0f8c2f4ea6d95c3 SHA512 83e75e866b838e79c99c60197f5fe5da106619f645d9f244c55e1f1ca4bfa82f0bd67d6f10f74be857b8a359484799d44ec9c4f0b926bba2e2699de231360537
+DIST request_store-1.5.1.gem 9728 BLAKE2B df83be1ecdb8b6158133925167df19cff59eab3cdb2ea1b5f970359a19a79dcd114f9c8d42856a1bf0173bb69df8f89efe54c29f5c6a9dd58d4b8bb7ccfa76d2 SHA512 89ba2df4169a23c60546081c5d872c26f09ce6edbb6bfdb9bb03ba3e194ca36b7f588e3f77deaa82ae6465e2ab8c372c9199fd49232ba37bd8e5d0cdcac785f1
+DIST request_store-1.6.0.gem 9728 BLAKE2B a7b4beae76bb7704bd02cd1a64d4e53579b8fab23e70a59dc7f241ca80b86f43c0bc0827ead56320a40a6041ccc61144e15ece26f4897e523eb902f845e2b072 SHA512 7c18d3e7164837ab7e538f5a5e243f24650f70cb801e108381b46da5122217d959371a439b8359dfc39950efcd1941c5d9cde9121fdb3350b16a36e59101338c
diff --git a/dev-ruby/request_store/metadata.xml b/dev-ruby/request_store/metadata.xml
index 036d47a56a38..344100350185 100644
--- a/dev-ruby/request_store/metadata.xml
+++ b/dev-ruby/request_store/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/request_store/request_store-1.0.5.ebuild b/dev-ruby/request_store/request_store-1.0.5.ebuild
deleted file mode 100644
index 2a630a4ab724..000000000000
--- a/dev-ruby/request_store/request_store-1.0.5.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Per-request global storage for Rack"
-HOMEPAGE="https://github.com/steveklabnik/request_store"
-
-LICENSE="MIT"
-SLOT="1.0.5"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_all_prepare() {
- sed -i -e "/bundler/d" Rakefile || die
-}
diff --git a/dev-ruby/request_store/request_store-1.4.1.ebuild b/dev-ruby/request_store/request_store-1.4.1.ebuild
deleted file mode 100644
index 45fd904cde59..000000000000
--- a/dev-ruby/request_store/request_store-1.4.1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Per-request global storage for Rack"
-HOMEPAGE="https://github.com/steveklabnik/request_store"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rack-1.4:*"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/ s:^:#:" Rakefile || die
-}
diff --git a/dev-ruby/request_store/request_store-1.5.1.ebuild b/dev-ruby/request_store/request_store-1.5.1.ebuild
new file mode 100644
index 000000000000..248253f10206
--- /dev/null
+++ b/dev-ruby/request_store/request_store-1.5.1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Per-request global storage for Rack"
+HOMEPAGE="https://github.com/steveklabnik/request_store"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/rack-1.4:*"
+
+all_ruby_prepare() {
+ sed -i -e "/bundler/ s:^:#:" Rakefile || die
+}
diff --git a/dev-ruby/request_store/request_store-1.6.0.ebuild b/dev-ruby/request_store/request_store-1.6.0.ebuild
new file mode 100644
index 000000000000..405c3fc00680
--- /dev/null
+++ b/dev-ruby/request_store/request_store-1.6.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Per-request global storage for Rack"
+HOMEPAGE="https://github.com/steveklabnik/request_store"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+ruby_add_rdepend ">=dev-ruby/rack-1.4:*"
+
+all_ruby_prepare() {
+ sed -i -e "/bundler/ s:^:#:" Rakefile || die
+}
diff --git a/dev-ruby/rest-client/Manifest b/dev-ruby/rest-client/Manifest
index 78b11caa859c..6d1b71d727f5 100644
--- a/dev-ruby/rest-client/Manifest
+++ b/dev-ruby/rest-client/Manifest
@@ -1 +1 @@
-DIST rest-client-2.0.2.gem 149504 BLAKE2B 839003255545ad8d67b0fd896f56b628d647a90fdf9eaf4e27f6c5d0179f15a1c17683e81ff7f288ffac55dcd523f5b01b4217a277b6c260bf45df8cef3998e2 SHA512 c132518a9ff0029e79826cf90de442b01f6f422b464e04914947c2f757cb7046b96c915f0248a82172f7980519fa9fe5f7bcb9dcfe28889abc62dbb48cee1030
+DIST rest-client-2.1.0.gem 147456 BLAKE2B 602e3cea1bdb117ad8b783d30741f699b18085fd6dd4f0d26a8a8f3b658bc6f807357a7412eaae312566f1b4d5ee7e311f51d5fd4a8eb9063e8552335b019a2e SHA512 fe5d44409dfe607566b4c0324441d9a3981776699027bfbc92283b1cd425f204211fc872593cb0784e0ca7a5e061e98793540eedfeb1891d9a8afd53a5ce01de
diff --git a/dev-ruby/rest-client/metadata.xml b/dev-ruby/rest-client/metadata.xml
index d6afa2d27d72..d075b4cd5618 100644
--- a/dev-ruby/rest-client/metadata.xml
+++ b/dev-ruby/rest-client/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">archiloque/rest-client</remote-id>
+ <remote-id type="github">rest-client/rest-client</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rest-client/rest-client-2.0.2.ebuild b/dev-ruby/rest-client/rest-client-2.0.2.ebuild
deleted file mode 100644
index 55c30dadcb44..000000000000
--- a/dev-ruby/rest-client/rest-client-2.0.2.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="history.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Simple Simple HTTP and REST client for Ruby"
-HOMEPAGE="https://github.com/archiloque/rest-client"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/webmock:3 )"
-
-ruby_add_rdepend "
- >=dev-ruby/http-cookie-1.0.2:0
- >=dev-ruby/mime-types-1.16:* <dev-ruby/mime-types-4:*
- >=dev-ruby/netrc-0.8:0
- !!<dev-ruby/rest-client-1.8.0-r3:0"
-
-all_ruby_prepare() {
- sed -e '/bundler/I s:^:#:' \
- -e '/namespace :windows/,/^end/ s:^:#:' -i Rakefile || die
-
- # Remove specs that requires network access.
- rm spec/integration/{httpbin,request}_spec.rb || die
-}
diff --git a/dev-ruby/rest-client/rest-client-2.1.0-r1.ebuild b/dev-ruby/rest-client/rest-client-2.1.0-r1.ebuild
new file mode 100644
index 000000000000..8ad89ea60d3d
--- /dev/null
+++ b/dev-ruby/rest-client/rest-client-2.1.0-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="history.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple Simple HTTP and REST client for Ruby"
+HOMEPAGE="https://github.com/rest-client/rest-client"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="amd64 ~arm64 ~ppc ~riscv ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/webmock:3 )"
+
+ruby_add_rdepend "
+ >=dev-ruby/http-accept-1.7.0:1
+ >=dev-ruby/http-cookie-1.0.2:0
+ >=dev-ruby/mime-types-1.16:* <dev-ruby/mime-types-4:*
+ >=dev-ruby/netrc-0.8:0
+"
+
+all_ruby_prepare() {
+ sed -e '/bundler/I s:^:#:' \
+ -e '/namespace :windows/,/^end/ s:^:#:' -i Rakefile || die
+
+ # Remove specs that requires network access.
+ rm spec/integration/{httpbin,request}_spec.rb || die
+
+ # Fix specs confused by ruby30 keyword arguments
+ sed -i -e 's/with(/with({/' -e '/with/ s/)$/})/' spec/unit/resource_spec.rb || die
+ sed -i -e '508 s/1 => 2/{1 => 2}/' spec/unit/request_spec.rb || die
+
+ # Avoid spec where ruby semantics changed with ruby31
+ sed -e '/should reject valid URIs with no hostname/askip "different in ruby30 and ruby31"' \
+ -i spec/unit/request_spec.rb || die
+}
diff --git a/dev-ruby/rex-arch/Manifest b/dev-ruby/rex-arch/Manifest
deleted file mode 100644
index 341fbaead86a..000000000000
--- a/dev-ruby/rex-arch/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rex-arch-0.1.13.gem 19968 BLAKE2B 6bceb0c2c08c58d3557d4d72ffcd017c58ddf2bf2d622e576a9e9cc41893416965df9508fe94ec9def1826b2f7f2bf5d9d0715e1f118bba016ad4364ecce99b0 SHA512 23f24d407bb2d34390a892f258005498c373062da883059e9e92df14c9dc18a0381f075d2df0ef8763d9bf3595b8cf578655efd3a613810b83bd6d8425a162c7
diff --git a/dev-ruby/rex-arch/metadata.xml b/dev-ruby/rex-arch/metadata.xml
deleted file mode 100644
index 84171b9257ef..000000000000
--- a/dev-ruby/rex-arch/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-arch</remote-id>
- <remote-id type="rubygems">rex-arch</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-arch/rex-arch-0.1.13.ebuild b/dev-ruby/rex-arch/rex-arch-0.1.13.ebuild
deleted file mode 100644
index 17c9a180946e..000000000000
--- a/dev-ruby/rex-arch/rex-arch-0.1.13.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="architecture specific information for Rex"
-HOMEPAGE="https://rubygems.org/gems/rex-arch"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/rex-text"
diff --git a/dev-ruby/rex-bin_tools/Manifest b/dev-ruby/rex-bin_tools/Manifest
deleted file mode 100644
index 15e5b3377c69..000000000000
--- a/dev-ruby/rex-bin_tools/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rex-bin_tools-0.1.6.gem 81920 BLAKE2B 543e9c293b7589792c5cad55dbe7b760b97194a6adb01953ca81ee603e1c576c7f391012dc669fb03d7cf18ceab0ec88e0b4b6e0ac56fe21ffc4c6bc8b937fd1 SHA512 30e9137194b97aae0a0972a10cf415ebd28a11699ce03dda2c32529d985d0376a6028c40bc8570ea8328e076c51b7a52d26872c43074db2a98ed4b2db1969c2d
diff --git a/dev-ruby/rex-bin_tools/metadata.xml b/dev-ruby/rex-bin_tools/metadata.xml
deleted file mode 100644
index 27cee0e97677..000000000000
--- a/dev-ruby/rex-bin_tools/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-bin_tools</remote-id>
- <remote-id type="rubygems">rex-bin_tools</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-bin_tools/rex-bin_tools-0.1.6.ebuild b/dev-ruby/rex-bin_tools/rex-bin_tools-0.1.6.ebuild
deleted file mode 100644
index ac87d48570e1..000000000000
--- a/dev-ruby/rex-bin_tools/rex-bin_tools-0.1.6.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="suite of tools for analyzing executables to find specific chunks of code"
-HOMEPAGE="https://rubygems.org/gems/rex-bin_tools"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/rex-arch
- dev-ruby/metasm:*
- dev-ruby/rex-core
- dev-ruby/rex-struct2
- dev-ruby/rex-text"
-
-all_ruby_prepare() {
- sed -i '/bundler/d' Rakefile
-}
diff --git a/dev-ruby/rex-core/Manifest b/dev-ruby/rex-core/Manifest
deleted file mode 100644
index 56ce9e7c09ac..000000000000
--- a/dev-ruby/rex-core/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rex-core-0.1.13.gem 30208 BLAKE2B 3de93b7869e751574979160d458406cdb83f6683383b6e60e7defe7e02fd7fe02c39589983f6800d07d48527572869f685e57fa8dc3f2a0ba9fb1cf1cbf6ad84 SHA512 d7a402f732620a7ce25d3401fea9c97b4dbac8d37fc8d9183d621bfc16004e2f7171e0346b05fcb64a9c2af8b2b17e32d6ae11268a5300cc31111ab83dabfa9a
diff --git a/dev-ruby/rex-core/metadata.xml b/dev-ruby/rex-core/metadata.xml
deleted file mode 100644
index 8d9b75a1a3c8..000000000000
--- a/dev-ruby/rex-core/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-core</remote-id>
- <remote-id type="rubygems">rex-core</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-core/rex-core-0.1.13.ebuild b/dev-ruby/rex-core/rex-core-0.1.13.ebuild
deleted file mode 100644
index 48969fa3f4f4..000000000000
--- a/dev-ruby/rex-core/rex-core-0.1.13.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_RECIPE_DOC=""
-RUBY_FAKEGEM_BINWRAP=""
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Core libraries required for the Ruby Exploitation(Rex) Suite"
-HOMEPAGE="https://rubygems.org/gems/rex-core"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i '/bundler/d' Rakefile
-}
diff --git a/dev-ruby/rex-encoder/Manifest b/dev-ruby/rex-encoder/Manifest
deleted file mode 100644
index c8e778dfb5b8..000000000000
--- a/dev-ruby/rex-encoder/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rex-encoder-0.1.4.gem 40960 BLAKE2B 8ed2e19dc422249ae71f6725e475c7fa695791ee2d4d79ebc0a9c1a2b44a8e90728fce12d6c5eabc3aab472277038d465acd0e430f8cc81947756c1374acb184 SHA512 30c83308cba74ff3204d5b923370b80e22817b824341d6544ddd68e7f86465d52ee1eacae16c8276bdd7f785efd74de2423a9f4866e8b50e17b3424c96ef0ba4
diff --git a/dev-ruby/rex-encoder/metadata.xml b/dev-ruby/rex-encoder/metadata.xml
deleted file mode 100644
index 53331bbbfdcd..000000000000
--- a/dev-ruby/rex-encoder/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-encoder</remote-id>
- <remote-id type="rubygems">rex-encoder</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-encoder/rex-encoder-0.1.4.ebuild b/dev-ruby/rex-encoder/rex-encoder-0.1.4.ebuild
deleted file mode 100644
index 4ab72064dbb4..000000000000
--- a/dev-ruby/rex-encoder/rex-encoder-0.1.4.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Specs are not provided in the gem
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="provides the basis for all of the polymorphic encoders that Metasploit uses"
-HOMEPAGE="https://rubygems.org/gems/rex-encoder"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-RESTRICT="test"
-
-ruby_add_rdepend "dev-ruby/metasm:*
- dev-ruby/rex-arch
- dev-ruby/rex-text"
-
-all_ruby_prepare() {
- sed -i '/bundler/d' Rakefile
-}
diff --git a/dev-ruby/rex-exploitation/Manifest b/dev-ruby/rex-exploitation/Manifest
deleted file mode 100644
index 83da3323cf47..000000000000
--- a/dev-ruby/rex-exploitation/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST rex-exploitation-0.1.19.gem 79360 BLAKE2B 47043054ee9d08775c67d54b31861ad3a454a487bdc47beb135942e267040de7611308c62a23cbf853d190fb8f88c52998dfe3b24f66a698e76e273b6a69d822 SHA512 244de5259e3f4f645df09d1843c34d9ea4f9ea56ba22498495792f192b79a0451810f5c7e73516da5a455c27e61b66f8ccfbc485372946fcedd179b75ff9b31e
-DIST rex-exploitation-0.1.20.gem 79360 BLAKE2B 59dea65582647444e21cc1b0ae744c857b3007b8215c81244d37c6f3d8abcb1ef1b1d01428f306b4c5f6fdd1b3db0326de3c50fa38fa50505b4de9c05ba518e1 SHA512 e1df4ffde57ab40bf4b2492370d44bf064f39f657c7a8140416f51560a0be9b31ef95b1bdadaae6f6ec75c86e0978b41112a18caa1f69262c67945d3529f9990
-DIST rex-exploitation-0.1.21.gem 79360 BLAKE2B 78c31cf2255b8cc5fc9e7886d20bbad85f48877798ff68efaa72e22de9d62f3a78bc980a2ba1507e5aee6b35ba9fdc7b352f11985202584d10584fd84018f0bd SHA512 81cd2e8ab8a8230be66f8597a85894cf92e969c21864c04525eed93a614eb467e6ac6d1bb2bfc91ff68b1795be7a27c03c136c5976f9f76736e972bf2e7b890a
diff --git a/dev-ruby/rex-exploitation/metadata.xml b/dev-ruby/rex-exploitation/metadata.xml
deleted file mode 100644
index ca2ed33abcc1..000000000000
--- a/dev-ruby/rex-exploitation/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-exploitation</remote-id>
- <remote-id type="rubygems">rex-exploitation</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-exploitation/rex-exploitation-0.1.19.ebuild b/dev-ruby/rex-exploitation/rex-exploitation-0.1.19.ebuild
deleted file mode 100644
index 58d9ec259d80..000000000000
--- a/dev-ruby/rex-exploitation/rex-exploitation-0.1.19.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="various helper mechanisms for creating exploits"
-HOMEPAGE="https://rubygems.org/gems/rex-exploitation"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/jsobfu:*
- dev-ruby/metasm:*
- dev-ruby/rex-arch
- dev-ruby/rex-encoder
- dev-ruby/rex-text"
-
-all_ruby_prepare() {
- sed -i '/bundler/d' Rakefile
-}
diff --git a/dev-ruby/rex-exploitation/rex-exploitation-0.1.20.ebuild b/dev-ruby/rex-exploitation/rex-exploitation-0.1.20.ebuild
deleted file mode 100644
index 4ae9822adb15..000000000000
--- a/dev-ruby/rex-exploitation/rex-exploitation-0.1.20.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="various helper mechanisms for creating exploits"
-HOMEPAGE="https://rubygems.org/gems/rex-exploitation"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/jsobfu:*
- dev-ruby/metasm:*
- dev-ruby/rex-arch
- dev-ruby/rex-encoder
- dev-ruby/rex-text"
-
-all_ruby_prepare() {
- sed -i '/bundler/d' Rakefile
-}
diff --git a/dev-ruby/rex-exploitation/rex-exploitation-0.1.21.ebuild b/dev-ruby/rex-exploitation/rex-exploitation-0.1.21.ebuild
deleted file mode 100644
index b729da79ae96..000000000000
--- a/dev-ruby/rex-exploitation/rex-exploitation-0.1.21.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="various helper mechanisms for creating exploits"
-HOMEPAGE="https://rubygems.org/gems/rex-exploitation"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/jsobfu:*
- dev-ruby/metasm:*
- dev-ruby/rex-arch
- dev-ruby/rex-encoder
- dev-ruby/rex-text"
-
-all_ruby_prepare() {
- sed -i '/bundler/d' Rakefile
-}
diff --git a/dev-ruby/rex-java/Manifest b/dev-ruby/rex-java/Manifest
deleted file mode 100644
index ce1762112eec..000000000000
--- a/dev-ruby/rex-java/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rex-java-0.1.5.gem 23040 BLAKE2B 27789a55c6922770211285ef665221c9619a956ea874534f029a450760fca8c5034a715d9aaf91864e624363efe5d9f966be7b00c5c7133284b0eb591034b36d SHA512 990f989a19cdb5c6f87ac5b57e500fa1bd7031dd867e43c6b451f538c1b581b57ee9908b40d8a37727c45883ba17f466272e739913ccc2406b69c1e818de5c7b
diff --git a/dev-ruby/rex-java/metadata.xml b/dev-ruby/rex-java/metadata.xml
deleted file mode 100644
index 1d50cd098c59..000000000000
--- a/dev-ruby/rex-java/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-java</remote-id>
- <remote-id type="rubygems">rex-java</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-java/rex-java-0.1.5.ebuild b/dev-ruby/rex-java/rex-java-0.1.5.ebuild
deleted file mode 100644
index 082e9586811f..000000000000
--- a/dev-ruby/rex-java/rex-java-0.1.5.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation(Rex) library for parsing Java serialized streams"
-HOMEPAGE="https://rubygems.org/gems/rex-java"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
diff --git a/dev-ruby/rex-mime/Manifest b/dev-ruby/rex-mime/Manifest
deleted file mode 100644
index 23a825f1f206..000000000000
--- a/dev-ruby/rex-mime/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rex-mime-0.1.5.gem 16384 BLAKE2B 1c1cf22a8233420f8b29d8c58356192053f109c6372201ec8485261928ce32d7e65ac8395f7399ff4f1b64c6a5505f6fae35c2f263bfa7f55e25b784bbc3bf7a SHA512 695d2c411b26cbbd50ffa5b184ac464af2560b9e36d39c9c3ea17ceaf4e8d5052500162cbd9395259cc3c426df50a56c21c4d0f63e238e56454c6666c3d10b5e
diff --git a/dev-ruby/rex-mime/metadata.xml b/dev-ruby/rex-mime/metadata.xml
deleted file mode 100644
index 8b25661ebbc7..000000000000
--- a/dev-ruby/rex-mime/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-mime</remote-id>
- <remote-id type="rubygems">rex-mime</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-mime/rex-mime-0.1.5.ebuild b/dev-ruby/rex-mime/rex-mime-0.1.5.ebuild
deleted file mode 100644
index 7da5945b6b4d..000000000000
--- a/dev-ruby/rex-mime/rex-mime-0.1.5.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="library is for creating and/or parsing MIME messages"
-HOMEPAGE="https://rubygems.org/gems/rex-mime"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/rex-text"
-
-all_ruby_prepare() {
- sed -i '/bundler/d' Rakefile
-}
diff --git a/dev-ruby/rex-nop/Manifest b/dev-ruby/rex-nop/Manifest
deleted file mode 100644
index 0d08b097bb69..000000000000
--- a/dev-ruby/rex-nop/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rex-nop-0.1.1.gem 27648 BLAKE2B f0fc6452929255c9fe25af2045e72ac4f38540519a7e51fffad83613bf3886e1da3f7c8949c1d6668e4483eb58e48a2f68d0517c366c49c5c2da397577dc6544 SHA512 f0a80f948189eb3c775739e7a492882ed7a647f9a79d1cfe3658f8905b8316a386dd0c89da5158eaab351f6122bf5bbb0c8270424617940fe48a1270cb363da5
diff --git a/dev-ruby/rex-nop/metadata.xml b/dev-ruby/rex-nop/metadata.xml
deleted file mode 100644
index 543564f42dd4..000000000000
--- a/dev-ruby/rex-nop/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-nop</remote-id>
- <remote-id type="rubygems">rex-nop</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-nop/rex-nop-0.1.1.ebuild b/dev-ruby/rex-nop/rex-nop-0.1.1.ebuild
deleted file mode 100644
index ee3c4ed0c561..000000000000
--- a/dev-ruby/rex-nop/rex-nop-0.1.1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Rex library for dynamic generation of x86 multi-byte NOPs"
-HOMEPAGE="https://rubygems.org/gems/rex-nop"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/rex-arch"
-
-all_ruby_prepare() {
- sed -i '/bundler/d' Rakefile
-}
diff --git a/dev-ruby/rex-ole/Manifest b/dev-ruby/rex-ole/Manifest
deleted file mode 100644
index 2850cfda81cd..000000000000
--- a/dev-ruby/rex-ole/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rex-ole-0.1.6.gem 26112 BLAKE2B 1812b3f3c9b0b4f115efd66d1fa29cb39370e58e780695127390987dbb4b87647f2e0744b88ba4ee7b9ed7857155c8f1d32dbe6d090a7d3166ae5928d18686e5 SHA512 5fae70ec85058e3dca08fdedd595fb27b46de263aa727fd291606d4f8f226bc0d9a2f135bf4673a8e389d6a2e932e7514eb97954f765c1ce9401233ac2cd7da1
diff --git a/dev-ruby/rex-ole/metadata.xml b/dev-ruby/rex-ole/metadata.xml
deleted file mode 100644
index 07c44cdc9792..000000000000
--- a/dev-ruby/rex-ole/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-ole</remote-id>
- <remote-id type="rubygems">rex-ole</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-ole/rex-ole-0.1.6.ebuild b/dev-ruby/rex-ole/rex-ole-0.1.6.ebuild
deleted file mode 100644
index f449feca15c2..000000000000
--- a/dev-ruby/rex-ole/rex-ole-0.1.6.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation(Rex) library gem for reading/writing OLE files and streams"
-HOMEPAGE="https://rubygems.org/gems/rex-ole"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/rex-text"
diff --git a/dev-ruby/rex-powershell/Manifest b/dev-ruby/rex-powershell/Manifest
deleted file mode 100644
index 567e1d5af503..000000000000
--- a/dev-ruby/rex-powershell/Manifest
+++ /dev/null
@@ -1,5 +0,0 @@
-DIST rex-powershell-0.1.77.gem 28160 BLAKE2B d1fb9f6e9f66e6b55b09bdda329037ea7da135b9eaec9f1437ca374f3be5da1b5ee63f7c92d56447c88964a4c1a4bef68b2d6b64a4e507b7c2a7010f1ff09d40 SHA512 99e3a8394c580b07580f8c230f049b15fd80b02db4b940208a1086e1c3d679ab1b757fee56356d6b25a6876ccb21c50d1037b7bbadc486a7c38b10b9b81a09d3
-DIST rex-powershell-0.1.78.gem 28160 BLAKE2B 922a4a6f8605335c664fbdad7e6214bdd48dff5d648eb324f92a5f48dd62d2a0b98283f4cddd4ccb8190b78b1c1a637190a836d0d0b486c80b18e383fa49820a SHA512 db3e1cf0e10d6454fb5b5b76e346fa7f299f14e8d2399ee7f863708444bd6404984a16bc2fccedcc1f06a1eac7add63fc75c5f1d2b8c9fb5c421817e385000cc
-DIST rex-powershell-0.1.79.gem 28160 BLAKE2B 0c8deee7ff50741d7ec868f1726b2e3a705ab6d623221b15a0cba831fc0b5ab1143da9186940f73f48dfd7f448e018421a098b673ffc846c5b726128e5a533df SHA512 e7b8680b291827700f0b1eb150205ee2e6bf795029ab7fa0d2323ca345b7a73edfbd5f848dbc5b001354d1649e0c207e5b96d55e9b68b0021457b63d97e64213
-DIST rex-powershell-0.1.80.gem 28160 BLAKE2B 2af2e6c868e77bf37772c8bb31e69c4288b69315d6285b215682f2a09af6fd98f7281d4a9c70c310159ba981104ed627020f9082ade90294bb36e036dc2fde73 SHA512 ff5c8b0af774c16398fc78c434840a4e150cadca8b1f76b887fd1f59150a18d2d6c7f1b7adad5f367f3a5eac9db5448ab82abba5fcf05c30fa3fa34da14948a7
-DIST rex-powershell-0.1.82.gem 28672 BLAKE2B 108ef69d9cf09c8fa44efaa360712448b79b694012116a35ad5bda6cdcb6351fa26ad274343176a1e5bdb5c78d9187526dedde83ec2071bcace33ae16ffd8b28 SHA512 a6c8436f131d04561324172adcf91f2425a375703b731a1f817ddcbece292ecc8cd6ff3af1de6d94cee05fef27a7adef51fe9edc25825638fdeb89b501f3fa55
diff --git a/dev-ruby/rex-powershell/metadata.xml b/dev-ruby/rex-powershell/metadata.xml
deleted file mode 100644
index 48105fc5a97b..000000000000
--- a/dev-ruby/rex-powershell/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-powershell</remote-id>
- <remote-id type="rubygems">rex-powershell</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-powershell/rex-powershell-0.1.77.ebuild b/dev-ruby/rex-powershell/rex-powershell-0.1.77.ebuild
deleted file mode 100644
index d44f1014de16..000000000000
--- a/dev-ruby/rex-powershell/rex-powershell-0.1.77.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation(Rex) library for generating/manipulating Powershell scripts"
-HOMEPAGE="https://rubygems.org/gems/rex-powershell"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/rex-random_identifier
- dev-ruby/rex-text"
diff --git a/dev-ruby/rex-powershell/rex-powershell-0.1.78.ebuild b/dev-ruby/rex-powershell/rex-powershell-0.1.78.ebuild
deleted file mode 100644
index d44f1014de16..000000000000
--- a/dev-ruby/rex-powershell/rex-powershell-0.1.78.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation(Rex) library for generating/manipulating Powershell scripts"
-HOMEPAGE="https://rubygems.org/gems/rex-powershell"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/rex-random_identifier
- dev-ruby/rex-text"
diff --git a/dev-ruby/rex-powershell/rex-powershell-0.1.79.ebuild b/dev-ruby/rex-powershell/rex-powershell-0.1.79.ebuild
deleted file mode 100644
index dcab5e40de58..000000000000
--- a/dev-ruby/rex-powershell/rex-powershell-0.1.79.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation(Rex) library for generating/manipulating Powershell scripts"
-HOMEPAGE="https://rubygems.org/gems/rex-powershell"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/rex-random_identifier
- dev-ruby/rex-text"
diff --git a/dev-ruby/rex-powershell/rex-powershell-0.1.80.ebuild b/dev-ruby/rex-powershell/rex-powershell-0.1.80.ebuild
deleted file mode 100644
index dcab5e40de58..000000000000
--- a/dev-ruby/rex-powershell/rex-powershell-0.1.80.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation(Rex) library for generating/manipulating Powershell scripts"
-HOMEPAGE="https://rubygems.org/gems/rex-powershell"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/rex-random_identifier
- dev-ruby/rex-text"
diff --git a/dev-ruby/rex-powershell/rex-powershell-0.1.82.ebuild b/dev-ruby/rex-powershell/rex-powershell-0.1.82.ebuild
deleted file mode 100644
index 4313ff18634e..000000000000
--- a/dev-ruby/rex-powershell/rex-powershell-0.1.82.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation(Rex) library for generating/manipulating Powershell scripts"
-HOMEPAGE="https://rubygems.org/gems/rex-powershell"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/rex-random_identifier
- dev-ruby/rex-text"
diff --git a/dev-ruby/rex-random_identifier/Manifest b/dev-ruby/rex-random_identifier/Manifest
deleted file mode 100644
index 508c0bda4659..000000000000
--- a/dev-ruby/rex-random_identifier/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rex-random_identifier-0.1.4.gem 16896 BLAKE2B 37c1011b91dd16a82c0ee8ff1c96b0263c4842503826bae327d3a6d3b61dac77620cbd28cba350c0cf56bc5fc480bc37663a78674d0c7c8d8d6bb95e046e9559 SHA512 8e302a511a0540f826ddfa6e51c5b29da0c42ef6bd3dc433d6624688efba245c1df3903dbf37aacaecdd39b53f721e3d6b4fa8247f8cd31e7679ff96293094f7
diff --git a/dev-ruby/rex-random_identifier/metadata.xml b/dev-ruby/rex-random_identifier/metadata.xml
deleted file mode 100644
index b1f9fbc92743..000000000000
--- a/dev-ruby/rex-random_identifier/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-random_identifier</remote-id>
- <remote-id type="rubygems">rex-random_identifier</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-random_identifier/rex-random_identifier-0.1.4.ebuild b/dev-ruby/rex-random_identifier/rex-random_identifier-0.1.4.ebuild
deleted file mode 100644
index d59ef975207f..000000000000
--- a/dev-ruby/rex-random_identifier/rex-random_identifier-0.1.4.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Upstream has specs but they are not released and upstream is not tagged
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation(Rex) library for generating Random identifier strings"
-HOMEPAGE="https://rubygems.org/gems/rex-random_identifier"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/rex-text"
diff --git a/dev-ruby/rex-registry/Manifest b/dev-ruby/rex-registry/Manifest
deleted file mode 100644
index 52c43f707616..000000000000
--- a/dev-ruby/rex-registry/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rex-registry-0.1.3.gem 16384 BLAKE2B 9db5f9674b8d341797ea797f5c5a1e43900f6f4c4e563658fbe55fcf43ba1126067d0e822df3cf21695143bd70309d7499d708cf48b80e6c903e06e7d0e8acfc SHA512 cde5350945e8aa7cfa0dc01c78e7a375d1aa7174c2954b658ffeba39c81d638b1d614866cbd0f8f8f417f1831281cd43126cde158944903e36c8dc5ce79773e6
diff --git a/dev-ruby/rex-registry/metadata.xml b/dev-ruby/rex-registry/metadata.xml
deleted file mode 100644
index 0cc60f7b4ffd..000000000000
--- a/dev-ruby/rex-registry/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-registry</remote-id>
- <remote-id type="rubygems">rex-registry</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-registry/rex-registry-0.1.3.ebuild b/dev-ruby/rex-registry/rex-registry-0.1.3.ebuild
deleted file mode 100644
index 56c2a97dc4af..000000000000
--- a/dev-ruby/rex-registry/rex-registry-0.1.3.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Upstream has specs but they are not packaged and upstream is not tagged
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Rex library for parsing offline registry files from a Windows machine"
-HOMEPAGE="https://rubygems.org/gems/rex-registry"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
diff --git a/dev-ruby/rex-rop_builder/Manifest b/dev-ruby/rex-rop_builder/Manifest
deleted file mode 100644
index 8818bef437bb..000000000000
--- a/dev-ruby/rex-rop_builder/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rex-rop_builder-0.1.3.gem 17920 BLAKE2B 065ab39805966db515da08a1c321cde39e07b140aa58c48eaeba15ba12d6ae9da6455d924aff3355fe1c89d1b0ab54704f18b60cec13f5267e9f6b7bfaa0b312 SHA512 c01c82761bd317fcdf0de4cd03b834c3e3d2638a9bf72e7c47643fc8faab179dfa639b319fd1de7691d0dc2ccb7578bebbd567e03e8efe24553cc481456ad4d6
diff --git a/dev-ruby/rex-rop_builder/metadata.xml b/dev-ruby/rex-rop_builder/metadata.xml
deleted file mode 100644
index bbcf71b64dde..000000000000
--- a/dev-ruby/rex-rop_builder/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-rop_builder</remote-id>
- <remote-id type="rubygems">rex-rop_builder</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-rop_builder/rex-rop_builder-0.1.3.ebuild b/dev-ruby/rex-rop_builder/rex-rop_builder-0.1.3.ebuild
deleted file mode 100644
index 776b98e5c24c..000000000000
--- a/dev-ruby/rex-rop_builder/rex-rop_builder-0.1.3.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation(Rex) Library for building ROP chains"
-HOMEPAGE="https://rubygems.org/gems/rex-rop_builder"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-RESTRICT="test"
-
-ruby_add_rdepend "dev-ruby/metasm:*
- dev-ruby/rex-core
- dev-ruby/rex-text"
-
-all_ruby_prepare() {
- sed -i '/bundler/d' Rakefile
-}
diff --git a/dev-ruby/rex-socket/Manifest b/dev-ruby/rex-socket/Manifest
deleted file mode 100644
index 6dc75f111200..000000000000
--- a/dev-ruby/rex-socket/Manifest
+++ /dev/null
@@ -1,4 +0,0 @@
-DIST rex-socket-0.1.15.gem 40960 BLAKE2B c452a0e8f95d3a5e2820d55e25d077aa594c9eba4982a953d4312bac4d5d32bdfec8dfc6b2a1f77ce9cbaaa60d7c3f0f5eb9da7407c131c89cf1eaffd4dca03c SHA512 edcc01e5c1235abc41a5579b56a04cdcb34710d24225fa9e925ecd91555429071eed281591df1a97cb8db035d63aae0c7a86aa93dc96289f42d1a56241b95fbb
-DIST rex-socket-0.1.16.gem 40960 BLAKE2B d4953d8a5ed3b58326e0bd4e916895b669dd6b62f76f3a719eeeaa237451562d7dbcf57ee90b2837f301e7a362d866d88c7cbf10bb480060ae6ece40478ab4be SHA512 6d78bf24c68d2416bdd2c9953a18095799fd4c6e5d79803accec3aa7159b00a0676553e91d38250f83f3e36846070cf2842e318a93b53e5a979ef8ad86b2f3ef
-DIST rex-socket-0.1.17.gem 40960 BLAKE2B af549e3c6bc6ab8f99a18eab8f8be5156211be468f4d55e234199d5b5985a8ac11817f245a6bafa421c0b8c908cfedf7e58503157c460fee76ec989ff628a8bd SHA512 2d7dc563d24ef99930ad6fc62ce69ced2a7d2cec881222edf889c6850b8ce48a49eb435acd1bd57637d07ab0434032e44084dc86d18a52c33c3f8df57928958e
-DIST rex-socket-0.1.18.gem 40960 BLAKE2B 0e38d508d11ff03c3e658935d2f569d40b5460a259b86f08250893a5a111da1580b2badc4ed45d9db8fa737d7ffb4639a312af683539b6eab2e8fab18fde5297 SHA512 74568a58434b784336bdb99ba7ca43ff84ced905f7d7d165eb9e2eed84076c49710f9d09dfaf3aa65fa672a7bbc177ff9e6c3e3af4d7001576f3c1430b714461
diff --git a/dev-ruby/rex-socket/metadata.xml b/dev-ruby/rex-socket/metadata.xml
deleted file mode 100644
index 84171b9257ef..000000000000
--- a/dev-ruby/rex-socket/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-arch</remote-id>
- <remote-id type="rubygems">rex-arch</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-socket/rex-socket-0.1.15.ebuild b/dev-ruby/rex-socket/rex-socket-0.1.15.ebuild
deleted file mode 100644
index e5f80844af5d..000000000000
--- a/dev-ruby/rex-socket/rex-socket-0.1.15.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation (Rex) Socket Abstraction Library"
-HOMEPAGE="https://rubygems.org/gems/rex-socket"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/rex-core"
diff --git a/dev-ruby/rex-socket/rex-socket-0.1.16.ebuild b/dev-ruby/rex-socket/rex-socket-0.1.16.ebuild
deleted file mode 100644
index e5f80844af5d..000000000000
--- a/dev-ruby/rex-socket/rex-socket-0.1.16.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation (Rex) Socket Abstraction Library"
-HOMEPAGE="https://rubygems.org/gems/rex-socket"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/rex-core"
diff --git a/dev-ruby/rex-socket/rex-socket-0.1.17.ebuild b/dev-ruby/rex-socket/rex-socket-0.1.17.ebuild
deleted file mode 100644
index e5f80844af5d..000000000000
--- a/dev-ruby/rex-socket/rex-socket-0.1.17.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation (Rex) Socket Abstraction Library"
-HOMEPAGE="https://rubygems.org/gems/rex-socket"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/rex-core"
diff --git a/dev-ruby/rex-socket/rex-socket-0.1.18.ebuild b/dev-ruby/rex-socket/rex-socket-0.1.18.ebuild
deleted file mode 100644
index 968617f5cfcc..000000000000
--- a/dev-ruby/rex-socket/rex-socket-0.1.18.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation (Rex) Socket Abstraction Library"
-HOMEPAGE="https://rubygems.org/gems/rex-socket"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_bdepend "dev-ruby/rex-core"
diff --git a/dev-ruby/rex-sslscan/Manifest b/dev-ruby/rex-sslscan/Manifest
deleted file mode 100644
index c600d038f4c9..000000000000
--- a/dev-ruby/rex-sslscan/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rex-sslscan-0.1.5.gem 17920 BLAKE2B 735fc522593cc1caf41c5000232afa64e88a9be83cb756b91d662b9bc8ed1ca81b1a2302325a687e851b22d7914b66fafbf7d18fdf3ea3562dd25b64543c0383 SHA512 05c7606c722fad7be5f21f28de34de23882a31bf4fde1000f11d556740b14102e495efd0bc3ac478aee64ae417e761ce9b5ae80f1c10f2410828610611fc3dab
diff --git a/dev-ruby/rex-sslscan/metadata.xml b/dev-ruby/rex-sslscan/metadata.xml
deleted file mode 100644
index b818a2e1a186..000000000000
--- a/dev-ruby/rex-sslscan/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-sslscan</remote-id>
- <remote-id type="rubygems">rex-sslscan</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-sslscan/rex-sslscan-0.1.5.ebuild b/dev-ruby/rex-sslscan/rex-sslscan-0.1.5.ebuild
deleted file mode 100644
index 78e5105a29ef..000000000000
--- a/dev-ruby/rex-sslscan/rex-sslscan-0.1.5.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="ruby implmenetation of the SSLScan tool "
-HOMEPAGE="https://rubygems.org/gems/rex-sslscan"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-PDEPEND="dev-libs/openssl"
-
-ruby_add_rdepend "dev-ruby/rex-core dev-ruby/rex-socket dev-ruby/rex-text"
diff --git a/dev-ruby/rex-struct2/Manifest b/dev-ruby/rex-struct2/Manifest
deleted file mode 100644
index e4999dce9ee4..000000000000
--- a/dev-ruby/rex-struct2/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rex-struct2-0.1.2.gem 18432 BLAKE2B 1ff9196e38ae67b87f4348394da3b05759548dbfa29b8e1a4a891a02cc75a1e02b890bf3a53bb7f274f9a5336aa46330efc38dcd50fa5da25e74392bc78a2b91 SHA512 c8b549c89e5b884a6ec6ef9a04dd2a3400bfeb885b742f1bc256a200387bcbd8ba848ad1e69a4c0c349516a62c04067a8bbffff04cb5c581f51d0ff91a142e6b
diff --git a/dev-ruby/rex-struct2/metadata.xml b/dev-ruby/rex-struct2/metadata.xml
deleted file mode 100644
index 6337b9706e53..000000000000
--- a/dev-ruby/rex-struct2/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-struct2</remote-id>
- <remote-id type="rubygems">rex-struct2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-struct2/rex-struct2-0.1.2.ebuild b/dev-ruby/rex-struct2/rex-struct2-0.1.2.ebuild
deleted file mode 100644
index 0326cbd303c2..000000000000
--- a/dev-ruby/rex-struct2/rex-struct2-0.1.2.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# No tests in gem and upstream git is not tagged
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation(Rex) library for generating/manipulating C-Style structs"
-HOMEPAGE="https://rubygems.org/gems/rex-struct2"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
diff --git a/dev-ruby/rex-text/Manifest b/dev-ruby/rex-text/Manifest
deleted file mode 100644
index cc7157841e14..000000000000
--- a/dev-ruby/rex-text/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST rex-text-0.2.20.gem 44544 BLAKE2B c446dfcbb54ed9cf57f019f2158fdfe37ae6815f3e02627564e0a0e472f56ab301a805e12f4aafb3f1e8e3052b35737add225c16979bb6dd4a7988b08062ff99 SHA512 0043abccc14dc70c750edf42f405368ac305158bcad98586f169b3edb808a5565101a302b32afd5d916a96a7cce4e2e27f2b0e1bcaf152367aac8bafdfbf1474
-DIST rex-text-0.2.21.gem 44544 BLAKE2B d905973b190b84f048ab26774651e394d8902b81377cab92298800b462e009b7ed8b8ac8f8c10f3726475bfe2a696a40655cbbd6efbf820974c503df37f07d10 SHA512 9504b78f77f4c00cc42e43313f48b058ecb5fb8c183225e580b8750810c26eaf22949793b46d90e5e36276d25a419153b38ea387fd28bc9414de62843e3efcba
-DIST rex-text-0.2.22.gem 44544 BLAKE2B c83976b7ccb2d33a94e61735f0234bcb29b1fffdd464bd2f10e40f45eb6e270979a26bcb0299de9af76edb44198803b26f601eaab18b3c5a9d8e5c3a07324ff9 SHA512 02a94c791fcc3c745d0728d767e82cfd20024db461c407f608ae8198f50c27d3b211baa791d7ca42fd6b5542453fedc8e57f2b421e88f1099d1247249e660efc
diff --git a/dev-ruby/rex-text/metadata.xml b/dev-ruby/rex-text/metadata.xml
deleted file mode 100644
index 47170675ac16..000000000000
--- a/dev-ruby/rex-text/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-text</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-text/rex-text-0.2.20.ebuild b/dev-ruby/rex-text/rex-text-0.2.20.ebuild
deleted file mode 100644
index bb5e58149f4c..000000000000
--- a/dev-ruby/rex-text/rex-text-0.2.20.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-# Specs are not bundled in the gem and upstream source is not tagged
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Rex library for text generation and manipulation"
-HOMEPAGE="https://github.com/rapid7/rex-text"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
diff --git a/dev-ruby/rex-text/rex-text-0.2.21.ebuild b/dev-ruby/rex-text/rex-text-0.2.21.ebuild
deleted file mode 100644
index c5432e9cea92..000000000000
--- a/dev-ruby/rex-text/rex-text-0.2.21.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Specs are not bundled in the gem and upstream source is not tagged
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Rex library for text generation and manipulation"
-HOMEPAGE="https://github.com/rapid7/rex-text"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
diff --git a/dev-ruby/rex-text/rex-text-0.2.22.ebuild b/dev-ruby/rex-text/rex-text-0.2.22.ebuild
deleted file mode 100644
index 8d0e3e188689..000000000000
--- a/dev-ruby/rex-text/rex-text-0.2.22.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-# Specs are not bundled in the gem and upstream source is not tagged
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Rex library for text generation and manipulation"
-HOMEPAGE="https://github.com/rapid7/rex-text"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
diff --git a/dev-ruby/rex-zip/Manifest b/dev-ruby/rex-zip/Manifest
deleted file mode 100644
index b1abe3ba67fc..000000000000
--- a/dev-ruby/rex-zip/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rex-zip-0.1.3.gem 23040 BLAKE2B bc823e7d53c8a7245d568ee2cec013e7bf8b7c508409a0668481e323ea5343230c5bc64a7173f48a7ff966d6af5a9e50e3a0e2d64dec06a699923dc3182a89a1 SHA512 f92d64779ddf943ca4855c5b9c567a0d995ebb6ace93ac8da12a7f1dc3ea350d492d3d229d3950ffec32bbba29fcd226c27a5be81e3f45d6f0edaa35ebc70047
diff --git a/dev-ruby/rex-zip/metadata.xml b/dev-ruby/rex-zip/metadata.xml
deleted file mode 100644
index 2c6f27eec48e..000000000000
--- a/dev-ruby/rex-zip/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rapid7/rex-zip</remote-id>
- <remote-id type="rubygems">rex-zip</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rex-zip/rex-zip-0.1.3.ebuild b/dev-ruby/rex-zip/rex-zip-0.1.3.ebuild
deleted file mode 100644
index 8e4c1d256ce4..000000000000
--- a/dev-ruby/rex-zip/rex-zip-0.1.3.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Upstream has specs but they are not included in the gem or tagged upstream
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Exploitation(Rex) library for working with zip and related files"
-HOMEPAGE="https://rubygems.org/gems/rex-zip"
-
-LICENSE="BSD"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/rex-text"
diff --git a/dev-ruby/rexical/Manifest b/dev-ruby/rexical/Manifest
index 232ad795b1d6..5744ff0cc72b 100644
--- a/dev-ruby/rexical/Manifest
+++ b/dev-ruby/rexical/Manifest
@@ -1,2 +1 @@
-DIST rexical-1.0.5.gem 20480 BLAKE2B 6ed81f9247410aa68cec1ad02a49774da839679fa3f535691f79da42144fbcda4b0f0dac74c7c02bb08d262b66bd543a8bde05ac5871454b96a7582c228e5fff SHA512 6cf5eac36953203a2de66eccbbc8679a4d695c3f0540ab8adf7a3db37eb4e94889c64c3ce4e4e88ea52738a6733680be2105e0604d01a2e07bae10939deb03c1
DIST rexical-1.0.7.gem 22016 BLAKE2B aaadf4131fbc4958a6a17be02b970070e511dcb031fd6432fb62fb841eff36b4d5c41d8f8f295aed4ac376c49e736e5d795166f71957578c6cbe14fd6cea26be SHA512 f71c86bd9764e65ebe0c66acd5446b5da7a1b38aae9d33367d70bfa253eb53c178634ce90c883c5459622219670d4d32f375b216c3023a3109329d6930dec1fc
diff --git a/dev-ruby/rexical/metadata.xml b/dev-ruby/rexical/metadata.xml
index 470062faa6ed..3f02a42da76f 100644
--- a/dev-ruby/rexical/metadata.xml
+++ b/dev-ruby/rexical/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rexical/rexical-1.0.5-r3.ebuild b/dev-ruby/rexical/rexical-1.0.5-r3.ebuild
deleted file mode 100644
index a580c3ffa346..000000000000
--- a/dev-ruby/rexical/rexical-1.0.5-r3.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc DOCUMENTATION.en.rdoc DOCUMENTATION.ja.rdoc README.ja README.rdoc"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Rexical is a lexical scanner generator"
-HOMEPAGE="https://github.com/tenderlove/rexical/tree/master"
-LICENSE="LGPL-2" # plus exception
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-# File collision, bug 459116
-RDEPEND+=" !!app-admin/rex"
-
-ruby_add_bdepend "
- doc? ( >=dev-ruby/hoe-2.6.2 )
- test? (
- >=dev-ruby/hoe-2.6.2
- dev-ruby/test-unit:2
- )"
-
-all_ruby_prepare() {
- sed -i -e '1igem "test-unit"' test/test_generator.rb || die
-
- sed -i -e '/rubyforge_name/d' Rakefile || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc sample/* || die
-}
diff --git a/dev-ruby/rexical/rexical-1.0.7-r1.ebuild b/dev-ruby/rexical/rexical-1.0.7-r1.ebuild
new file mode 100644
index 000000000000..a0faf8b5c956
--- /dev/null
+++ b/dev-ruby/rexical/rexical-1.0.7-r1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc DOCUMENTATION.en.rdoc DOCUMENTATION.ja.rdoc README.ja README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Rexical is a lexical scanner generator"
+HOMEPAGE="https://github.com/tenderlove/rexical/tree/master"
+LICENSE="LGPL-2" # plus exception
+
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE=""
+
+# File collision, bug 459116
+RDEPEND+=" !!app-admin/rex"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/minitest
+ )"
+
+all_ruby_prepare() {
+ # Avoid dependency on unpackaged rubocop
+ sed -i -e '/test_rubocop_security/askip "not packaged"' test/test_generator.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc sample/*
+}
diff --git a/dev-ruby/rexical/rexical-1.0.7.ebuild b/dev-ruby/rexical/rexical-1.0.7.ebuild
deleted file mode 100644
index afa4a0506bd1..000000000000
--- a/dev-ruby/rexical/rexical-1.0.7.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc DOCUMENTATION.en.rdoc DOCUMENTATION.ja.rdoc README.ja README.rdoc"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="Rexical is a lexical scanner generator"
-HOMEPAGE="https://github.com/tenderlove/rexical/tree/master"
-LICENSE="LGPL-2" # plus exception
-
-KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-# File collision, bug 459116
-RDEPEND+=" !!app-admin/rex"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/hoe
- dev-ruby/minitest
- )"
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc sample/* || die
-}
diff --git a/dev-ruby/rexml/Manifest b/dev-ruby/rexml/Manifest
new file mode 100644
index 000000000000..f3b992c26447
--- /dev/null
+++ b/dev-ruby/rexml/Manifest
@@ -0,0 +1 @@
+DIST rexml-3.2.6.tar.gz 459069 BLAKE2B 737b4a8836cae8614bc7a8e579f5c141e3d0e2114a6f6084a186795fa2d0a0008a7cb5d5a8c493b3a4204a901a26c617054ef3b93a7ed845b2f3398f5e25f5ca SHA512 bbf278ed25fbf4d814de9df3cbca691ab43d4e502a02b081e894ce82c161b1931d850df54074ef81c9cb470dca10a81c631da7ccbf908401818fca4c9a4aa5c4
diff --git a/dev-ruby/rexml/metadata.xml b/dev-ruby/rexml/metadata.xml
new file mode 100644
index 000000000000..db83ebe51721
--- /dev/null
+++ b/dev-ruby/rexml/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/rexml</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/rexml/rexml-3.2.6.ebuild b/dev-ruby/rexml/rexml-3.2.6.ebuild
new file mode 100644
index 000000000000..93593f0bec77
--- /dev/null
+++ b/dev-ruby/rexml/rexml-3.2.6.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An XML toolkit for Ruby"
+HOMEPAGE="https://github.com/ruby/rexml"
+SRC_URI="https://github.com/ruby/rexml/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="3"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit )"
+
+all_ruby_prepare() {
+ sed -i -e 's:require_relative ":require "./:' -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+}
+
+each_ruby_test() {
+ ${RUBY} test/run.rb || die
+}
diff --git a/dev-ruby/rgen/Manifest b/dev-ruby/rgen/Manifest
deleted file mode 100644
index 4e7fef8cc91a..000000000000
--- a/dev-ruby/rgen/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST rgen-0.8.3.tar.gz 275845 BLAKE2B 90addb8511646ac1bcfce113b39bc6998704a7e92319b7854c56fb85276adee86b64e847f940769076967090fe62024aa641c6d194c9dd57acecb855eafa8cae SHA512 74f6ed04c49b880bee8c6ed126874f8def43c8ff7a58a8e09743fbd8e255707f6b947b37205c4c35508aec983729fdec228c30e297d7ac6e3bd7f8c2167c63e1
-DIST rgen-0.8.4.tar.gz 277720 BLAKE2B bf7c5f017f056d05464d7f15a4faa8dee41eb857b1ff026be6ea9185d1e4bc2162d0548eb061bf99b2564b61303b4c5204a2db376ff7610ba2c1bbb85cbe9ca4 SHA512 7a1691624a88468674fe3988c3eb098f3c955ab380401cc43f55ab5a84dae81b25d9d19e237b1c9e0251165f298138ca58f9a358124fe4fe8fd233e622d28015
diff --git a/dev-ruby/rgen/metadata.xml b/dev-ruby/rgen/metadata.xml
deleted file mode 100644
index e43317ea38d4..000000000000
--- a/dev-ruby/rgen/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">mthiede/rgen</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/rgen/rgen-0.8.3.ebuild b/dev-ruby/rgen/rgen-0.8.3.ebuild
deleted file mode 100644
index 1355937454ba..000000000000
--- a/dev-ruby/rgen/rgen-0.8.3.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
-RUBY_FAKEGEM_GEMSPEC="rgen.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Modelling and Generator Framework"
-HOMEPAGE="https://github.com/mthiede/rgen"
-SRC_URI="https://github.com/mthiede/rgen/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-IUSE=""
-KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc x86"
-
-ruby_add_bdepend "doc? ( >=dev-ruby/rdoc-4.2.0 )
- test? ( >=dev-ruby/minitest-5.10:5 >=dev-ruby/nokogiri-1.6.8.1 )
-"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-}
-
-each_ruby_prepare() {
- case ${RUBY} in
- *ruby24|*ruby25)
- sed -i -e 's/Can not use a Fixnum/Can not use a Integer/' test/metamodel_builder_test.rb || die
- ;;
- esac
-}
diff --git a/dev-ruby/rgen/rgen-0.8.4.ebuild b/dev-ruby/rgen/rgen-0.8.4.ebuild
deleted file mode 100644
index e9ebe043be52..000000000000
--- a/dev-ruby/rgen/rgen-0.8.4.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
-RUBY_FAKEGEM_GEMSPEC="rgen.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Modelling and Generator Framework"
-HOMEPAGE="https://github.com/mthiede/rgen"
-SRC_URI="https://github.com/mthiede/rgen/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-IUSE=""
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86"
-
-ruby_add_bdepend "
- test? ( >=dev-ruby/minitest-5.10:5 >=dev-ruby/nokogiri-1.6.8.1 )
-"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
- sed -i -e 's/Can not use a Fixnum/Can not use a Integer/' test/metamodel_builder_test.rb || die
-}
diff --git a/dev-ruby/rgl/Manifest b/dev-ruby/rgl/Manifest
new file mode 100644
index 000000000000..0c5fad92c402
--- /dev/null
+++ b/dev-ruby/rgl/Manifest
@@ -0,0 +1 @@
+DIST rgl-0.6.6.tar.gz 256889 BLAKE2B 9859541abb49f241d5aa9ed5b16c200abda810b3ac93fb610f000bf023c35a3bbe15dc3e42dc3d070a041ca6f5fbd0c36ef180031667d3bae2c5cb770a9072fc SHA512 71f058b05856e49ea4e13f6cffc356ca730a6a9d3ecb551dba4afa5420491d91770b87a7e37847a4bf2335c6f33fdc38c623c9de5480a51753abf162c741544c
diff --git a/dev-ruby/rgl/metadata.xml b/dev-ruby/rgl/metadata.xml
new file mode 100644
index 000000000000..4f9fdab3efd2
--- /dev/null
+++ b/dev-ruby/rgl/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">monora/rgl</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/rgl/rgl-0.6.6.ebuild b/dev-ruby/rgl/rgl-0.6.6.ebuild
new file mode 100644
index 000000000000..3beff03442d9
--- /dev/null
+++ b/dev-ruby/rgl/rgl-0.6.6.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="rgl.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="RGL is a framework for graph data structures and algorithms"
+HOMEPAGE="https://github.com/monora/rgl"
+SRC_URI="https://github.com/monora/rgl/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+DEPEND+=" test? ( media-gfx/graphviz )"
+
+ruby_add_rdepend "
+ dev-ruby/pairing_heap:0
+ >=dev-ruby/rexml-3.2.4:3
+ >=dev-ruby/stream-0.5.3 =dev-ruby/stream-0.5*
+"
+
+ruby_add_bdepend "dev-ruby/yard test? ( dev-ruby/test-unit )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+ sed -i -e '/simplecov/I s:^:#:' test/test_helper.rb || die
+}
diff --git a/dev-ruby/riel/Manifest b/dev-ruby/riel/Manifest
deleted file mode 100644
index e7a1a756d386..000000000000
--- a/dev-ruby/riel/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST riel-git-1.2.0.tgz 436358 BLAKE2B 1ec3a3b8891ec4e108e3c7dff7061a36637827a8c4472d73da040da7850ffb55e9efae0022b3a51e8b0ccfec7424493769f1cf90513fdb4a95601e0bac3c9268 SHA512 d95261556756f32d8546e9fcd20a5cd7c1efde17c542dd3a1900eb282b2c43e2c74a069ecb860816e726f52fe26fb225a046e3e927f658bf1520510da8959358
diff --git a/dev-ruby/riel/metadata.xml b/dev-ruby/riel/metadata.xml
deleted file mode 100644
index f7b84e9623c4..000000000000
--- a/dev-ruby/riel/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">jpace/riel</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/riel/riel-1.2.0-r2.ebuild b/dev-ruby/riel/riel-1.2.0-r2.ebuild
deleted file mode 100644
index b9e4619a1c97..000000000000
--- a/dev-ruby/riel/riel-1.2.0-r2.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby21 ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="Features.txt History.txt README.md README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="This library extends the core Ruby libraries"
-HOMEPAGE="https://github.com/jpace/riel"
-
-SRC_URI="https://github.com/jpace/riel/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~hppa ~ppc ~sparc x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rainbow-1.1.4:* dev-ruby/logue"
diff --git a/dev-ruby/rinku/Manifest b/dev-ruby/rinku/Manifest
index 702ac1f30ffc..c8ee11ecbd9e 100644
--- a/dev-ruby/rinku/Manifest
+++ b/dev-ruby/rinku/Manifest
@@ -1,3 +1 @@
-DIST rinku-2.0.4.gem 21504 BLAKE2B cabb91710eca3f6d4985042045c1ebd37063abc466a2071c9a1c2f16f6efcdb80914eec855cc5c0795b428b285fcd6d760437ab2716cb3358e9a8e96b7916367 SHA512 fab4b47a22153d96f71e8b3c6e91595ba3ce97002233b035ab8ebcd6fb46a8e4ca2f82e49ed6d7a510338bd2ebec1b2e67d9146e589535fc8a072ae69e39d58f
-DIST rinku-2.0.5.gem 22016 BLAKE2B 962b2e369ec91022f61d640ed604939e4a5db561cc594d54199ed83fd166302c2a0b5dba5976af4b7fb048ed6ab78e578a7ba33933005ecd19ac8be3269ed652 SHA512 7a0f3c906ddb190344033fbc19aeace137bc234a164fcbc4311ce31972f98398bc6fc10ad89926a212544a0c67369af333a9f7e1d865bfe1119447de44f6e588
DIST rinku-2.0.6.gem 22016 BLAKE2B 9ba678996110a219e4a5121879597f5024c5bfe475af187d9557092ac871f16528e473b41d20742847127b9c7ae665b91e5db7b9aab42dddd32e2a51f20815bb SHA512 5acb6de775e050a92c7b1040af52c5399b3fea654f7569d58aa1b5db10e4f17a2e1ae7ecc05f3753be4e18bbdf63ccd8e62d4060c0c6693981c8bab7115b2ff7
diff --git a/dev-ruby/rinku/metadata.xml b/dev-ruby/rinku/metadata.xml
index 348fa6731d05..1dccfc4b6e1c 100644
--- a/dev-ruby/rinku/metadata.xml
+++ b/dev-ruby/rinku/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rinku/rinku-2.0.4.ebuild b/dev-ruby/rinku/rinku-2.0.4.ebuild
deleted file mode 100644
index 7731dbfffa0c..000000000000
--- a/dev-ruby/rinku/rinku-2.0.4.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A Ruby library that does autolinking"
-HOMEPAGE="https://github.com/vmg/rinku"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-each_ruby_configure() {
- ${RUBY} -Cext/${PN} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/${PN}$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib test/autolink_test.rb || die
-}
diff --git a/dev-ruby/rinku/rinku-2.0.5.ebuild b/dev-ruby/rinku/rinku-2.0.5.ebuild
deleted file mode 100644
index 7731dbfffa0c..000000000000
--- a/dev-ruby/rinku/rinku-2.0.5.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A Ruby library that does autolinking"
-HOMEPAGE="https://github.com/vmg/rinku"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-each_ruby_configure() {
- ${RUBY} -Cext/${PN} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/${PN}$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib test/autolink_test.rb || die
-}
diff --git a/dev-ruby/rinku/rinku-2.0.6-r1.ebuild b/dev-ruby/rinku/rinku-2.0.6-r1.ebuild
new file mode 100644
index 000000000000..e384373cd017
--- /dev/null
+++ b/dev-ruby/rinku/rinku-2.0.6-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.markdown"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/rinku/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby library that does autolinking"
+HOMEPAGE="https://github.com/vmg/rinku"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' test/autolink_test.rb || die
+}
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true ${RUBY} -Ilib test/autolink_test.rb || die
+}
diff --git a/dev-ruby/rinku/rinku-2.0.6.ebuild b/dev-ruby/rinku/rinku-2.0.6.ebuild
deleted file mode 100644
index 22158d3edb46..000000000000
--- a/dev-ruby/rinku/rinku-2.0.6.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A Ruby library that does autolinking"
-HOMEPAGE="https://github.com/vmg/rinku"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-each_ruby_configure() {
- ${RUBY} -Cext/${PN} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/${PN}
- cp ext/${PN}/${PN}$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- MT_NO_PLUGINS=true ${RUBY} -Ilib test/autolink_test.rb || die
-}
diff --git a/dev-ruby/ritex/metadata.xml b/dev-ruby/ritex/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/ritex/metadata.xml
+++ b/dev-ruby/ritex/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ritex/ritex-1.0.1-r1.ebuild b/dev-ruby/ritex/ritex-1.0.1-r1.ebuild
new file mode 100644
index 000000000000..0b35e5334ac0
--- /dev/null
+++ b/dev-ruby/ritex/ritex-1.0.1-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README ReleaseNotes"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Converts expressions from WebTeX into MathML"
+HOMEPAGE="http://masanjin.net/ritex/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/racc"
+DEPEND+=" test? ( app-text/itex2mml )"
+
+all_ruby_prepare() {
+ # Fix tests
+ sed -e "s#\./itex2MML#/usr/bin/itex2MML#;142d" \
+ -e 's/File.exists/File.exist/' \
+ -i test/mathml.rb || die
+ sed -i -e "12d" test/answer-key.yaml || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. test/all.rb || die
+}
diff --git a/dev-ruby/ritex/ritex-1.0.1.ebuild b/dev-ruby/ritex/ritex-1.0.1.ebuild
deleted file mode 100644
index 8e9b5b28d765..000000000000
--- a/dev-ruby/ritex/ritex-1.0.1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README ReleaseNotes"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Converts expressions from WebTeX into MathML"
-HOMEPAGE="http://masanjin.net/ritex/"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/racc"
-DEPEND+=" test? ( app-text/itex2mml )"
-
-all_ruby_prepare() {
- # Fix tests
- sed -i -e "s#\./itex2MML#/usr/bin/itex2MML#;142d" test/mathml.rb || die
- sed -i -e "12d" test/answer-key.yaml || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. test/all.rb || die
-}
diff --git a/dev-ruby/rjb/Manifest b/dev-ruby/rjb/Manifest
index 9f89d8afbb0c..63df550819d0 100644
--- a/dev-ruby/rjb/Manifest
+++ b/dev-ruby/rjb/Manifest
@@ -1,2 +1 @@
-DIST rjb-1.5.5.gem 73216 BLAKE2B 3bee34d033e5d85150740df1e30d93d54a3078824c76535e1300d2be0a2ecfc6aac2b30762a6b85fd1449df45b49550c0627f6cd588af712d0dfdaab2ca4e68c SHA512 a1a8f6e6b75555ce228fe8d58b467f783e55ddb12371485d45ad32597ea7ec60d30e3870671455e4e22fd680b5aa21bd952b8abfa36531c030747573e5d43cea
-DIST rjb-1.5.7.gem 72704 BLAKE2B 9a4f2b304c05f65c0d78ca4909814da366de717f518017c73d23cfcf188d653141d6c4549200c4bd3e55421f59cf8442cf2d01c1c5c1be813964ee7fb4a7b501 SHA512 0ccdbb5bc6f9f5d914d5b117c96310d709965b81a4bd2d0d7c428aabf4e32672572d4187660bc1b509fa3c92ac4cbe97cbd98412253d4ec9a7e4981f3b7a3131
+DIST rjb-1.6.9.gem 74752 BLAKE2B c8264fd0401044d9099717ae8770a30ce6bdfd12c3acfc2024b21330e3fdb07604bba69600a8808aa179c6459eb2d140e7b5822cbf58c3ea8ce47569bc92463b SHA512 c1ccae10361be881af4a129c0640ced00d00e909442b517150036cd44d5927cf24dc87bc0c30f3703f96955f114e0c0a5ff2d0f5fc555b71ade0f98e6b388426
diff --git a/dev-ruby/rjb/metadata.xml b/dev-ruby/rjb/metadata.xml
index 33ee57fbbc36..455dc39531ce 100644
--- a/dev-ruby/rjb/metadata.xml
+++ b/dev-ruby/rjb/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
diff --git a/dev-ruby/rjb/rjb-1.5.5.ebuild b/dev-ruby/rjb/rjb-1.5.5.ebuild
deleted file mode 100644
index a74a3e9d5581..000000000000
--- a/dev-ruby/rjb/rjb-1.5.5.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="readme.txt ChangeLog"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit java-pkg-2 ruby-ng ruby-fakegem
-
-DESCRIPTION="Rjb is a Ruby-Java software bridge"
-HOMEPAGE="https://github.com/arton/rjb"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="examples hardened"
-
-DEPEND=">=virtual/jdk-1.5
- hardened? ( sys-apps/paxctl )"
-RDEPEND="virtual/jre"
-
-pkg_setup() {
- ruby-ng_pkg_setup
- java-pkg-2_pkg_setup
-}
-
-all_ruby_prepare() {
- # The console is not available for testing.
- sed -i -e '/test_noarg_sinvoke/,/end/ s:^:#:' test/test.rb || die
-
- # Avoid encoding tests since not all locales may be available.
- sed -i -e '/test_kjconv/,/^ end/ s:^:#:' test/test.rb || die
-}
-
-each_ruby_prepare() {
- #dev-lang/ruby might need the "hardened" flag to enforce the following:
- if use hardened; then
- paxctl -v /usr/bin/ruby 2>/dev/null | grep MPROTECT | grep disabled || ewarn '!!! rjb will only work if ruby is MPROTECT disabled\n please disable it if required using paxctl -m /usr/bin/ruby'
- fi
- # force compilation of class file for our JVM
- rm -rf data
-}
-
-each_ruby_configure() {
- ${RUBY} -C ext extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake V=1 -C ext CFLAGS="${CFLAGS} -fPIC" archflags="${LDFLAGS}"
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- # currently no elegant way to do this (bug #352765)
- ruby_fakegem_newins ext/rjbcore.so lib/rjbcore.so
-
- if use examples; then
- insinto /usr/share/doc/${PF}
- doins -r samples
- fi
-}
-
-each_ruby_test() {
- if use hardened; then
- paxctl -v ${RUBY} 2>/dev/null | grep MPROTECT | grep -q disabled
- if [ $? = 0 ]; then
- ${RUBY} -C test -I../lib:.:../ext test.rb || die
- else
- ewarn "${RUBY} has MPROTECT enabled, rjb will not work until it is disabled, skipping tests."
- fi
- else
- ${RUBY} -C test -I../lib:.:../ext test.rb || die
- fi
-}
diff --git a/dev-ruby/rjb/rjb-1.5.7.ebuild b/dev-ruby/rjb/rjb-1.5.7.ebuild
deleted file mode 100644
index c2f79b950d94..000000000000
--- a/dev-ruby/rjb/rjb-1.5.7.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="readme.txt ChangeLog"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRAINSTALL="data"
-
-inherit java-pkg-2 ruby-ng ruby-fakegem
-
-DESCRIPTION="Rjb is a Ruby-Java software bridge"
-HOMEPAGE="https://github.com/arton/rjb"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="examples hardened"
-
-DEPEND=">=virtual/jdk-1.5
- hardened? ( sys-apps/paxctl )"
-RDEPEND="virtual/jre"
-
-pkg_setup() {
- ruby-ng_pkg_setup
- java-pkg-2_pkg_setup
-}
-
-all_ruby_prepare() {
- # The console is not available for testing.
- sed -i -e '/test_noarg_sinvoke/,/end/ s:^:#:' test/test.rb || die
-
- # Avoid encoding tests since not all locales may be available.
- sed -i -e '/test_kjconv/,/^ end/ s:^:#:' test/test.rb || die
-}
-
-each_ruby_prepare() {
- #dev-lang/ruby might need the "hardened" flag to enforce the following:
- if use hardened; then
- paxctl -v /usr/bin/ruby 2>/dev/null | grep MPROTECT | grep disabled || ewarn '!!! rjb will only work if ruby is MPROTECT disabled\n please disable it if required using paxctl -m /usr/bin/ruby'
- fi
- # force compilation of class file for our JVM
- rm -rf data
-}
-
-each_ruby_configure() {
- ${RUBY} -C ext extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake V=1 -C ext CFLAGS="${CFLAGS} -fPIC" archflags="${LDFLAGS}"
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- # currently no elegant way to do this (bug #352765)
- ruby_fakegem_newins ext/rjbcore.so lib/rjbcore.so
-
- if use examples; then
- insinto /usr/share/doc/${PF}
- doins -r samples
- fi
-}
-
-each_ruby_test() {
- if use hardened; then
- paxctl -v ${RUBY} 2>/dev/null | grep MPROTECT | grep -q disabled
- if [ $? = 0 ]; then
- ${RUBY} -C test -I../lib:.:../ext test.rb || die
- else
- ewarn "${RUBY} has MPROTECT enabled, rjb will not work until it is disabled, skipping tests."
- fi
- else
- ${RUBY} -C test -I../lib:.:../ext test.rb || die
- fi
-}
diff --git a/dev-ruby/rjb/rjb-1.6.9.ebuild b/dev-ruby/rjb/rjb-1.6.9.ebuild
new file mode 100644
index 000000000000..ef80fb653497
--- /dev/null
+++ b/dev-ruby/rjb/rjb-1.6.9.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="readme.txt ChangeLog"
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRAINSTALL="data"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+
+inherit java-pkg-2 ruby-fakegem
+
+DESCRIPTION="Rjb is a Ruby-Java software bridge"
+HOMEPAGE="https://github.com/arton/rjb"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="examples hardened"
+
+DEPEND="|| ( virtual/jdk:17 virtual/jdk:11 virtual/jdk:1.8 )
+ hardened? ( sys-apps/paxctl )"
+RDEPEND="|| ( virtual/jre:17 virtual/jre:11 virtual/jre:1.8 )"
+
+pkg_setup() {
+ ruby-ng_pkg_setup
+ java-pkg-2_pkg_setup
+}
+
+all_ruby_prepare() {
+ # The console is not available for testing.
+ sed -i -e '/test_noarg_sinvoke/,/end/ s:^:#:' test/test.rb || die
+
+ # Avoid encoding tests since not all locales may be available.
+ sed -i -e '/test_kjconv/,/^ end/ s:^:#:' test/test.rb || die
+
+ # Fix build on openjdk-11
+ sed -i -e 's#javah -classpath ../data/rjb jp.co.infoseek.hp.arton.rjb.RBridge#javac -h . -classpath ../data/rjb RBridge.java#g' ext/extconf.rb || die
+}
+
+each_ruby_prepare() {
+ #dev-lang/ruby might need the "hardened" flag to enforce the following:
+ if use hardened; then
+ paxctl -v /usr/bin/ruby 2>/dev/null | grep MPROTECT | grep disabled || ewarn '!!! rjb will only work if ruby is MPROTECT disabled\n please disable it if required using paxctl -m /usr/bin/ruby'
+ fi
+ # force compilation of class file for our JVM
+ rm -rf data
+}
+
+each_ruby_install() {
+ each_fakegem_install
+
+ if use examples; then
+ dodoc -r samples
+ fi
+}
+
+each_ruby_test() {
+ if use hardened; then
+ paxctl -v ${RUBY} 2>/dev/null | grep MPROTECT | grep -q disabled
+ if [ $? = 0 ]; then
+ ${RUBY} -C test -I../lib:.:../ext test.rb || die
+ else
+ ewarn "${RUBY} has MPROTECT enabled, rjb will not work until it is disabled, skipping tests."
+ fi
+ else
+ ${RUBY} -C test -I../lib:.:../ext test.rb || die
+ fi
+}
diff --git a/dev-ruby/rkelly-remix/metadata.xml b/dev-ruby/rkelly-remix/metadata.xml
index 415b8787cb8f..82044ed2c0aa 100644
--- a/dev-ruby/rkelly-remix/metadata.xml
+++ b/dev-ruby/rkelly-remix/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
diff --git a/dev-ruby/rkelly-remix/rkelly-remix-0.0.7-r1.ebuild b/dev-ruby/rkelly-remix/rkelly-remix-0.0.7-r1.ebuild
new file mode 100644
index 000000000000..223af8009310
--- /dev/null
+++ b/dev-ruby/rkelly-remix/rkelly-remix-0.0.7-r1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="RKelly Remix is a fork of the RKelly JavaScript parser"
+HOMEPAGE="https://github.com/nene/rkelly-remix"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~arm ~x86"
+SLOT="0"
+IUSE="doc"
+
+each_ruby_test() {
+ ${RUBY} -S testrb-2 -Ilib:. test/test_*.rb test/*/test_*.rb || die
+}
diff --git a/dev-ruby/rkelly-remix/rkelly-remix-0.0.7.ebuild b/dev-ruby/rkelly-remix/rkelly-remix-0.0.7.ebuild
deleted file mode 100644
index d2cc03ac3aea..000000000000
--- a/dev-ruby/rkelly-remix/rkelly-remix-0.0.7.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="RKelly Remix is a fork of the RKelly JavaScript parser"
-HOMEPAGE="https://github.com/nene/rkelly-remix"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~x86"
-SLOT="0"
-IUSE="doc"
-
-each_ruby_test() {
- ${RUBY} -S testrb-2 -Ilib:. test/test_*.rb test/*/test_*.rb || die
-}
diff --git a/dev-ruby/rmagick/Manifest b/dev-ruby/rmagick/Manifest
index 5090af104be5..fc7deac332a0 100644
--- a/dev-ruby/rmagick/Manifest
+++ b/dev-ruby/rmagick/Manifest
@@ -1,5 +1,4 @@
-DIST rmagick-2.16.0.gem 1545728 BLAKE2B 2f5396b5d5c6a60fabf7f67d104e68443c038a8e9431fbc8252a3ca915b4fb353d6a0740f00fbaac91cf3bbaff84c0dfb45d4adca6a81622fc1d2e395ed04cac SHA512 e37fdd9c1e45d7ef7000602f495c3951ee2abcae83a87f68702a51a2183edb6fd8e576ca1a5ac8b64e05ae0287141137b505bf27fddc579e753f9310cb4d653c
-DIST rmagick-3.0.0.gem 1551360 BLAKE2B 3234231762bcdda60533f0b7479def61f592a7c06570ef6865b9eb488ac44d58edd6b6ebc914c88c51632dbba55ea79887a6ad816be4ac32b470c34003f3a2ce SHA512 7d8c2ae731e9565f168cb13adb8b454acb51d42b237f6bfb721735f9198d2546fbf0117d3296ac57bcd59b0a03eff611b7508d6684e533f203fdd7a6816adee4
-DIST rmagick-3.1.0.gem 1552896 BLAKE2B 192a09d080b328f5a2f942bf02f96a618f7f8fdf2dac899b66ece65f69b421aeb96edcbd660ef1e699db543c44b997a4330540086facc19c3fb96a1c285f644a SHA512 4fa02bf3fd3e3f423e638b700412c32cd30ac306c4126bdeaa6d192994f9f467837cf96cb98937cfba4a9180d6da2d94d4ee798dfc57378cc1861e8e27208057
-DIST rmagick-3.2.0.gem 1950208 BLAKE2B 5d4255fec8fcfb8ec2f6f361fd54a3371935dbae323918b2fe1aea47645f160024a8dd16582acf5c930639a50f702b2062e475d231c3bb0acc0bd83ac9ea00ed SHA512 f6f15b013699da5c61e83ecf4ca16d64e7e2f447dc721c7db55cad6b880f9805eb8bdcbf70aef3e30a82f38bbab8ca093d8c6d2ce761cde4f47209e3f99a9f16
-DIST rmagick-4.0.0.gem 1946624 BLAKE2B f1cec7bf1dffa94ca2803dfd64eb4a7b1cb269c935482ed42df3a8d9e3f9599b24e6d07f7268e5c641734c8e8a8984f2f0cf2a80ced0f29ee36d154a4eb1a341 SHA512 2b9e72a3f8560b8530397406d086c0d3ffa6c6ec0b8d3ec0eb9d05528f108da6023462948738bd1f420f130250fa4bf8757a9c94335b223ad1ea3e279797b0ae
+DIST rmagick-4.3.0.tar.gz 1986554 BLAKE2B bf6afb0b19a98f45dd9f3a8261b67ad05ed774784e9fb19009a83c266c16362b4938acd8b0af6a07d3a37fb255fb5bee7a33b7f26c2c49460d546665a98a7871 SHA512 1b108d61b836bf382c9776badc45614ff88ca74176595765c3caba00cc6af0f955dd6f7649a9f97698832193d85292bc22ff0bf290d0bfbf9e8faa58b99b0b1c
+DIST rmagick-5.3.0.tar.gz 2018036 BLAKE2B 204ece4d3794ef43b02855cce2f11e0194d2a81e400c1c2ef2af824359b8b4566eda93caba6269ad6b283af60d99ad403ab6ba8e972153e8f20d208ce0c48ad6 SHA512 dcc9e0d7cd77ebd3859871f26449c37839f9102e7aa4f0746698cbd6fe93579c3adbe6cfefeba6cdcb53e573f5113b872d03fcd568bb80edda5c8ca9c1ab1665
+DIST rmagick-5.4.4.tar.gz 2019830 BLAKE2B 0eb8d8c7edb885f5cddab586532eb95dadaaa20bab78707ffe80ce486c073d8d552e610c4e0cc5671d4832768614891e4fe73426c62689ef281586bce49643c9 SHA512 95559d1138b46ecbe2adea5cdbb18ed1cb5076f879de560af8a35b567d82c81fc78258e57bf58f8d3657bd9a2333b813471d85b37a459056bfb00a76428b7536
+DIST rmagick-5.5.0.tar.gz 2045116 BLAKE2B 018d4e940043210238b6026a8bc0b65656633aaaf559954b666c75dda74c0f0fd33319a13fd6c494a6a51a3cfac67aac283e3e79d06dc90b6d4581464805e476 SHA512 f813104c347867b14281b044135fd626805d35d2afa3167c25d5e31179b31e985c5cc75deb630f8a64d20b877d8c42ce13e31e137f573467d3c5f3f2453d514f
diff --git a/dev-ruby/rmagick/metadata.xml b/dev-ruby/rmagick/metadata.xml
index 4638889dd839..fac7a178d4d8 100644
--- a/dev-ruby/rmagick/metadata.xml
+++ b/dev-ruby/rmagick/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">gemhome/rmagick</remote-id>
+ <remote-id type="github">rmagick/rmagick</remote-id>
+ <remote-id type="rubygems">rmagick</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rmagick/rmagick-2.16.0.ebuild b/dev-ruby/rmagick/rmagick-2.16.0.ebuild
deleted file mode 100644
index 6f0b1054a1af..000000000000
--- a/dev-ruby/rmagick/rmagick-2.16.0.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.textile"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="An interface between Ruby and the ImageMagick(TM) image processing library"
-HOMEPAGE="https://github.com/gemhome/rmagick"
-
-LICENSE="Artistic"
-SLOT="0"
-KEYWORDS="amd64 ~hppa ppc ppc64 x86 ~x86-macos"
-IUSE="doc"
-
-RDEPEND+=" >=media-gfx/imagemagick-6.4.9:= =media-gfx/imagemagick-6*"
-DEPEND+=" >=media-gfx/imagemagick-6.4.9:=[jpeg] =media-gfx/imagemagick-6*"
-
-ruby_add_bdepend "test? ( dev-ruby/rspec:3 )"
-
-all_ruby_prepare() {
- # Avoid unused dependency on rake-compiler. This also avoids an
- # extra compile during tests.
- sed -i -e '/extensiontask/ s:^:#:' \
- -e '/ExtensionTask/,/end/ s:^:#:' \
- -e '/compile/ s:^:#:' Rakefile || die
-
- # Avoid simplecov dependency
- sed -i -e '/simplecov/ s:^:#:' Rakefile test/test_all_basic.rb || die
-
- # Squelch harmless warning about imagemagick installation.
- sed -i -e '/prefix/ s:ImageMagick:ImageMagick-6:' ext/RMagick/extconf.rb || die
-
- # Avoid some tests that seem to be very dependent on specific
- # imagemagick versions. color defs?
- sed -i -e '/test_\(gray\|compress_colormap\)/,/^ end/ s:^:#:' test/Image2.rb || die
- sed -i -e '/test_iterations/,/^ end/ s:^:#:' test/ImageList1.rb || die
- sed -i -e '/test_\(optimize_layers\|montage\)/,/^ end/ s:^:#:' test/ImageList2.rb || die
- sed -i -e '/test_\(background_color\|border_color\|colors\|image_type\)/,/^ end/ s:^:#:' test/Image_attributes.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/RMagick extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake -Cext/RMagick V=1
- cp ext/RMagick/RMagick2$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -S rake test || die
- RSPEC_VERSION=3 ruby-ng_rspec spec || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc examples/*
-
- if use doc ; then
- dohtml -r doc
- fi
-}
diff --git a/dev-ruby/rmagick/rmagick-3.0.0.ebuild b/dev-ruby/rmagick/rmagick-3.0.0.ebuild
deleted file mode 100644
index 3d58426000b5..000000000000
--- a/dev-ruby/rmagick/rmagick-3.0.0.ebuild
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.textile"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="An interface between Ruby and the ImageMagick(TM) image processing library"
-HOMEPAGE="https://github.com/gemhome/rmagick"
-
-LICENSE="Artistic"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~x86-macos"
-IUSE="doc"
-
-RDEPEND+=" >=media-gfx/imagemagick-6.9.0:= =media-gfx/imagemagick-6*"
-DEPEND+=" >=media-gfx/imagemagick-6.9.0:=[jpeg] =media-gfx/imagemagick-6*"
-
-ruby_add_bdepend "test? ( dev-ruby/rspec:3 )"
-
-all_ruby_prepare() {
- # Avoid unused dependency on rake-compiler. This also avoids an
- # extra compile during tests.
- sed -i -e '/extensiontask/ s:^:#:' \
- -e '/ExtensionTask/,/end/ s:^:#:' \
- -e '/compile/ s:^:#:' Rakefile || die
-
- # Avoid simplecov dependency
- #sed -i -e '/simplecov/ s:^:#:' Rakefile test/test_all_basic.rb || die
-
- # Squelch harmless warning about imagemagick installation.
- sed -i -e '/prefix/ s:ImageMagick:ImageMagick-6:' ext/RMagick/extconf.rb || die
-
- # Avoid some tests that seem to be very dependent on specific
- # imagemagick versions. color defs?
- sed -i -e '/test_\(gray\|compress_colormap\)/,/^ end/ s:^:#:' test/Image2.rb || die
- sed -i -e '/test_\(delete_if\|iterations\|reject\)/,/^ end/ s:^:#:' test/ImageList1.rb || die
- sed -i -e '/test_\(optimize_layers\|montage\)/,/^ end/ s:^:#:' test/ImageList2.rb || die
- sed -i -e '/test_\(background_color\|border_color\|colors\|image_type\|number_colors\|total_colors\)/,/^ end/ s:^:#:' test/Image_attributes.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/RMagick extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake -Cext/RMagick V=1
- cp ext/RMagick/RMagick2$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -S rake test || die
- RSPEC_VERSION=3 ruby-ng_rspec spec || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc examples/*
-
- if use doc ; then
- dohtml -r doc
- fi
-}
diff --git a/dev-ruby/rmagick/rmagick-3.1.0.ebuild b/dev-ruby/rmagick/rmagick-3.1.0.ebuild
deleted file mode 100644
index 6a3e016dc25b..000000000000
--- a/dev-ruby/rmagick/rmagick-3.1.0.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.textile"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="An interface between Ruby and the ImageMagick(TM) image processing library"
-HOMEPAGE="https://github.com/gemhome/rmagick"
-
-LICENSE="Artistic"
-SLOT="0"
-KEYWORDS="amd64 ~hppa ~ppc ~ppc64 x86 ~x86-macos"
-IUSE="doc"
-
-RDEPEND+=" >=media-gfx/imagemagick-6.9.0:= =media-gfx/imagemagick-6*"
-DEPEND+=" >=media-gfx/imagemagick-6.9.0:=[jpeg] =media-gfx/imagemagick-6*"
-
-ruby_add_bdepend "test? ( dev-ruby/rspec:3 )"
-
-all_ruby_prepare() {
- # Avoid unused dependency on rake-compiler. This also avoids an
- # extra compile during tests.
- sed -i -e '/extensiontask/ s:^:#:' \
- -e '/ExtensionTask/,/end/ s:^:#:' \
- -e '/compile/ s:^:#:' Rakefile || die
-
- # Avoid simplecov dependency
- sed -i -e '/simplecov/ s:^:#:' Rakefile test/test_all_basic.rb || die
-
- # Squelch harmless warning about imagemagick installation.
- sed -i -e '/prefix/ s:ImageMagick:ImageMagick-6:' ext/RMagick/extconf.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/RMagick extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake -Cext/RMagick V=1
- cp ext/RMagick/RMagick2$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -S rake test || die
- RSPEC_VERSION=3 ruby-ng_rspec spec || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc examples/*
-
- if use doc ; then
- dohtml -r doc
- fi
-}
diff --git a/dev-ruby/rmagick/rmagick-3.2.0.ebuild b/dev-ruby/rmagick/rmagick-3.2.0.ebuild
deleted file mode 100644
index f496880e396f..000000000000
--- a/dev-ruby/rmagick/rmagick-3.2.0.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.textile"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="An interface between Ruby and the ImageMagick(TM) image processing library"
-HOMEPAGE="https://github.com/gemhome/rmagick"
-
-LICENSE="Artistic"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~x86-macos"
-IUSE="doc"
-
-RDEPEND+=" >=media-gfx/imagemagick-6.9.0:= =media-gfx/imagemagick-6*"
-DEPEND+=" >=media-gfx/imagemagick-6.9.0:=[jpeg] =media-gfx/imagemagick-6*"
-
-ruby_add_bdepend "test? ( dev-ruby/rspec:3 )"
-
-all_ruby_prepare() {
- # Avoid unused dependency on rake-compiler. This also avoids an
- # extra compile during tests.
- sed -i -e '/extensiontask/ s:^:#:' \
- -e '/ExtensionTask/,/end/ s:^:#:' \
- -e '/compile/ s:^:#:' Rakefile || die
-
- # Avoid simplecov dependency
- sed -i -e '/simplecov/ s:^:#:' Rakefile test/test_all_basic.rb || die
-
- # Squelch harmless warning about imagemagick installation.
- sed -i -e '/prefix/ s:ImageMagick:ImageMagick-6:' ext/RMagick/extconf.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/RMagick extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake -Cext/RMagick V=1
- cp ext/RMagick/RMagick2$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -S rake test || die
- RSPEC_VERSION=3 ruby-ng_rspec spec || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc examples/*
-
- if use doc ; then
- docinto .
- dodoc -r doc
- fi
-}
diff --git a/dev-ruby/rmagick/rmagick-4.0.0.ebuild b/dev-ruby/rmagick/rmagick-4.0.0.ebuild
deleted file mode 100644
index 0b4aa2062622..000000000000
--- a/dev-ruby/rmagick/rmagick-4.0.0.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.textile"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="An interface between Ruby and the ImageMagick(TM) image processing library"
-HOMEPAGE="https://github.com/gemhome/rmagick"
-
-LICENSE="Artistic"
-SLOT="4"
-KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~x86-macos"
-IUSE="doc"
-
-RDEPEND+=" >=media-gfx/imagemagick-6.9.0:= =media-gfx/imagemagick-6*"
-DEPEND+=" >=media-gfx/imagemagick-6.9.0:=[jpeg] =media-gfx/imagemagick-6*"
-
-ruby_add_bdepend "test? ( dev-ruby/rspec:3 )"
-
-all_ruby_prepare() {
- # Avoid unused dependency on rake-compiler. This also avoids an
- # extra compile during tests.
- sed -i -e '/extensiontask/ s:^:#:' \
- -e '/ExtensionTask/,/end/ s:^:#:' \
- -e '/compile/ s:^:#:' Rakefile || die
-
- # Avoid simplecov dependency
- sed -i -e '/simplecov/ s:^:#:' Rakefile test/test_all_basic.rb || die
-
- # Squelch harmless warning about imagemagick installation.
- sed -i -e '/prefix/ s:ImageMagick:ImageMagick-6:' ext/RMagick/extconf.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/RMagick extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake -Cext/RMagick V=1
- cp ext/RMagick/RMagick2$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -S rake test || die
- RSPEC_VERSION=3 ruby-ng_rspec spec || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc examples/*
-
- if use doc ; then
- docinto .
- dodoc -r doc
- fi
-}
diff --git a/dev-ruby/rmagick/rmagick-4.3.0.ebuild b/dev-ruby/rmagick/rmagick-4.3.0.ebuild
new file mode 100644
index 000000000000..d49338658934
--- /dev/null
+++ b/dev-ruby/rmagick/rmagick-4.3.0.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rmagick.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/RMagick/extconf.rb)
+
+MY_PV=RMagick_${PV//\./-}
+
+inherit ruby-fakegem
+
+DESCRIPTION="An interface between Ruby and the ImageMagick(TM) image processing library"
+HOMEPAGE="https://github.com/rmagick/rmagick"
+SRC_URI="https://github.com/rmagick/rmagick/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="rmagick-${MY_PV}"
+
+LICENSE="Artistic"
+SLOT="4"
+KEYWORDS="amd64 ~hppa ppc ppc64 x86"
+IUSE="doc"
+
+RDEPEND+=" >=media-gfx/imagemagick-6.9.0:="
+DEPEND+=" >=media-gfx/imagemagick-6.9.0 test? ( >=media-gfx/imagemagick-7.1.0:=[jpeg,lqr,lcms,postscript,tiff,webp] media-fonts/dejavu )"
+
+all_ruby_prepare() {
+ # Avoid unused dependency on rake-compiler. This also avoids an
+ # extra compile during tests.
+ sed -i -e '/extensiontask/ s:^:#:' \
+ -e '/ExtensionTask/,/end/ s:^:#:' \
+ -e '/compile/ s:^:#:' Rakefile || die
+ sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb || die
+ sed -i -e 's/git ls-files/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Squelch harmless warning about imagemagick installation.
+ sed -i -e '/prefix/ s:ImageMagick:ImageMagick-6:' ext/RMagick/extconf.rb || die
+
+ # Reading PDFs is not allowed by the default Gentoo security policy for imagemagick
+ #sed -i -e '/can read PDF file/askip "Not allowed by Gentoo security policy"' spec/rmagick/image/read_spec.rb || die
+
+ # Update version number hardcoded in tests
+ sed -i -e 's/"7.0"/"7.1"/' spec/rmagick/image/channel_mean_spec.rb || die
+
+ # Create directory used for a test
+ mkdir tmp
+}
+
+each_ruby_test() {
+ # Borrowed from media-gfx/gscan2pdf
+ # Needed to avoid test failures on e.g. ppc, bug #815856
+ # (Unclear why it doesn't manifest on amd64 here at least)
+ local confdir="${HOME}/.config/ImageMagick"
+ mkdir -p "${confdir}" || die
+ cat > "${confdir}/policy.xml" <<-EOT || die
+ <policymap>
+ <policy domain="coder" rights="read|write" pattern="PDF" />
+ <policy domain="coder" rights="read" pattern="PS" />
+ </policymap>
+ EOT
+
+ RSPEC_VERSION="3" ruby-ng_rspec
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+
+ if use doc ; then
+ docinto .
+ dodoc -r doc
+ fi
+}
diff --git a/dev-ruby/rmagick/rmagick-5.3.0.ebuild b/dev-ruby/rmagick/rmagick-5.3.0.ebuild
new file mode 100644
index 000000000000..d0e9cf4710ab
--- /dev/null
+++ b/dev-ruby/rmagick/rmagick-5.3.0.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rmagick.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/RMagick/extconf.rb)
+
+MY_PV=RMagick_${PV//\./-}
+
+inherit ruby-fakegem
+
+DESCRIPTION="An interface between Ruby and the ImageMagick(TM) image processing library"
+HOMEPAGE="https://github.com/rmagick/rmagick"
+SRC_URI="https://github.com/rmagick/rmagick/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="rmagick-${MY_PV}"
+
+LICENSE="Artistic"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~hppa ~ppc ~ppc64 x86"
+IUSE="doc"
+
+RDEPEND+=" >=media-gfx/imagemagick-6.9.0:="
+DEPEND+=" >=media-gfx/imagemagick-6.9.0 test? ( >=media-gfx/imagemagick-7.1.0:=[jpeg,lqr,lcms,postscript,tiff,webp] media-fonts/dejavu )"
+
+ruby_add_bdepend "dev-ruby/pkg-config"
+
+all_ruby_prepare() {
+ # Avoid unused dependency on rake-compiler. This also avoids an
+ # extra compile during tests.
+ sed -i -e '/extensiontask/ s:^:#:' \
+ -e '/ExtensionTask/,/end/ s:^:#:' \
+ -e '/compile/ s:^:#:' Rakefile || die
+ sed -i -e '/pry/ s:^:#:' -e '5irequire "tempfile"' spec/spec_helper.rb || die
+ sed -i -e 's/git ls-files/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Squelch harmless warning about imagemagick installation.
+ sed -i -e '/prefix/ s:ImageMagick:ImageMagick-6:' ext/RMagick/extconf.rb || die
+
+ # Avoid some tests that fails due to minor implementation changes in
+ # imagemagick.
+ rm -f spec/rmagick/class_methods/limit_resources_spec.rb spec/rmagick/image/gamma_spec.rb || die
+
+ # Create directory used for a test
+ mkdir tmp
+}
+
+each_ruby_test() {
+ # Borrowed from media-gfx/gscan2pdf
+ # Needed to avoid test failures on e.g. ppc, bug #815856
+ # (Unclear why it doesn't manifest on amd64 here at least)
+ local confdir="${HOME}/.config/ImageMagick"
+ mkdir -p "${confdir}" || die
+ cat > "${confdir}/policy.xml" <<-EOT || die
+ <policymap>
+ <policy domain="coder" rights="read|write" pattern="PDF" />
+ <policy domain="coder" rights="read" pattern="PS" />
+ </policymap>
+ EOT
+
+ RSPEC_VERSION="3" ruby-ng_rspec
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+
+ if use doc ; then
+ docinto .
+ dodoc -r doc
+ fi
+}
diff --git a/dev-ruby/rmagick/rmagick-5.4.4.ebuild b/dev-ruby/rmagick/rmagick-5.4.4.ebuild
new file mode 100644
index 000000000000..b649ed32d45b
--- /dev/null
+++ b/dev-ruby/rmagick/rmagick-5.4.4.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rmagick.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/RMagick/extconf.rb)
+
+MY_PV=RMagick_${PV//\./-}
+
+inherit ruby-fakegem
+
+DESCRIPTION="An interface between Ruby and the ImageMagick(TM) image processing library"
+HOMEPAGE="https://github.com/rmagick/rmagick"
+SRC_URI="https://github.com/rmagick/rmagick/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="rmagick-${MY_PV}"
+
+LICENSE="Artistic"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86"
+IUSE="doc"
+
+RDEPEND+=" >=media-gfx/imagemagick-6.9.0:="
+DEPEND+=" >=media-gfx/imagemagick-6.9.0 test? ( >=media-gfx/imagemagick-7.1.0:=[jpeg,lqr,lcms,postscript,tiff,webp] media-fonts/dejavu )"
+
+# observer is a default gem packaged with ruby
+
+ruby_add_bdepend "dev-ruby/pkg-config"
+
+all_ruby_prepare() {
+ # Avoid unused dependency on rake-compiler. This also avoids an
+ # extra compile during tests.
+ sed -i -e '/extensiontask/ s:^:#:' \
+ -e '/ExtensionTask/,/end/ s:^:#:' \
+ -e '/compile/ s:^:#:' Rakefile || die
+ sed -i -e '/pry/ s:^:#:' -e '5irequire "tempfile"' spec/spec_helper.rb || die
+ sed -i -e 's/git ls-files/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Squelch harmless warning about imagemagick installation.
+ sed -i -e '/prefix/ s:ImageMagick:ImageMagick-6:' ext/RMagick/extconf.rb || die
+
+ # Create directory used for a test
+ mkdir tmp
+}
+
+each_ruby_test() {
+ # Borrowed from media-gfx/gscan2pdf
+ # Needed to avoid test failures on e.g. ppc, bug #815856
+ # (Unclear why it doesn't manifest on amd64 here at least)
+ local confdir="${HOME}/.config/ImageMagick"
+ mkdir -p "${confdir}" || die
+ cat > "${confdir}/policy.xml" <<-EOT || die
+ <policymap>
+ <policy domain="coder" rights="read|write" pattern="PDF" />
+ <policy domain="coder" rights="read" pattern="PS" />
+ </policymap>
+ EOT
+
+ RSPEC_VERSION="3" ruby-ng_rspec
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+
+ if use doc ; then
+ docinto .
+ dodoc -r doc
+ fi
+}
diff --git a/dev-ruby/rmagick/rmagick-5.5.0.ebuild b/dev-ruby/rmagick/rmagick-5.5.0.ebuild
new file mode 100644
index 000000000000..b649ed32d45b
--- /dev/null
+++ b/dev-ruby/rmagick/rmagick-5.5.0.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rmagick.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/RMagick/extconf.rb)
+
+MY_PV=RMagick_${PV//\./-}
+
+inherit ruby-fakegem
+
+DESCRIPTION="An interface between Ruby and the ImageMagick(TM) image processing library"
+HOMEPAGE="https://github.com/rmagick/rmagick"
+SRC_URI="https://github.com/rmagick/rmagick/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="rmagick-${MY_PV}"
+
+LICENSE="Artistic"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86"
+IUSE="doc"
+
+RDEPEND+=" >=media-gfx/imagemagick-6.9.0:="
+DEPEND+=" >=media-gfx/imagemagick-6.9.0 test? ( >=media-gfx/imagemagick-7.1.0:=[jpeg,lqr,lcms,postscript,tiff,webp] media-fonts/dejavu )"
+
+# observer is a default gem packaged with ruby
+
+ruby_add_bdepend "dev-ruby/pkg-config"
+
+all_ruby_prepare() {
+ # Avoid unused dependency on rake-compiler. This also avoids an
+ # extra compile during tests.
+ sed -i -e '/extensiontask/ s:^:#:' \
+ -e '/ExtensionTask/,/end/ s:^:#:' \
+ -e '/compile/ s:^:#:' Rakefile || die
+ sed -i -e '/pry/ s:^:#:' -e '5irequire "tempfile"' spec/spec_helper.rb || die
+ sed -i -e 's/git ls-files/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Squelch harmless warning about imagemagick installation.
+ sed -i -e '/prefix/ s:ImageMagick:ImageMagick-6:' ext/RMagick/extconf.rb || die
+
+ # Create directory used for a test
+ mkdir tmp
+}
+
+each_ruby_test() {
+ # Borrowed from media-gfx/gscan2pdf
+ # Needed to avoid test failures on e.g. ppc, bug #815856
+ # (Unclear why it doesn't manifest on amd64 here at least)
+ local confdir="${HOME}/.config/ImageMagick"
+ mkdir -p "${confdir}" || die
+ cat > "${confdir}/policy.xml" <<-EOT || die
+ <policymap>
+ <policy domain="coder" rights="read|write" pattern="PDF" />
+ <policy domain="coder" rights="read" pattern="PS" />
+ </policymap>
+ EOT
+
+ RSPEC_VERSION="3" ruby-ng_rspec
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+
+ if use doc ; then
+ docinto .
+ dodoc -r doc
+ fi
+}
diff --git a/dev-ruby/roadie-rails/Manifest b/dev-ruby/roadie-rails/Manifest
index 02a6fb9defae..d08879a8828e 100644
--- a/dev-ruby/roadie-rails/Manifest
+++ b/dev-ruby/roadie-rails/Manifest
@@ -1,2 +1,2 @@
-DIST roadie-rails-1.2.1.tar.gz 42998 BLAKE2B 939eb1f448dcecdc80c15cd8072858bccfaeaf3f95549bd6568947612f70a9a12676526226d2800b88dc75fcd734d29b9ce6f755a7ad1be864a0866164423f6c SHA512 9c51f03aadd8a1fb3b07b1d8fb5f069b3a5d84e9bbf0b04cb21ca28e5f43e4943ce941ad55045ccf46f077f3dfd179a742ef73d84132a3aafb20f4c9be4e6f4a
-DIST roadie-rails-1.3.0.tar.gz 56899 BLAKE2B d4d4f1d56c581b0af894959ee985f522b6470ff27bf22c4589032b0cf049337556377bf5decbd3ca1882762d80371df372bd7c7ad811fb087bd720f26eeeb6c7 SHA512 af08f0a877993d5b3f6d13e80a4aacd4d2d13f8940a554f2f91289e119d754015773a67ef14052717244374e3636069fa8b39078cac2145c86cb35ec54ad53fd
+DIST roadie-rails-3.0.0.tar.gz 62724 BLAKE2B d9e960f97a491724b80d3064304e4875b1a12e7570e6c6ed8c373bf0dc73cf0828d1c5f3cb2ea57c485bbca832ce9cd9ba5c7ca798c4695a36b0c7925826eb91 SHA512 061635e9d5d6c4f752f8f105c0fef0b0ac9cd46cec7669b43295fecb80fd2232e211f033af9f9fe457a3c2c6ea04921ffcc9abe6f8b375f2df8b8bc8bfa64512
+DIST roadie-rails-3.1.0.tar.gz 76608 BLAKE2B b0adffa2ca6e5416a9f9e77cb86e3ba8766f1cc18a68edbf9f7c0dd5197e2d888c98ad6a46b6cb8b2dd75e0cf1abe59c528b49571144c895f357bbe07c3348d7 SHA512 d12a024eccce273558aaedc6100050c424fd564b5f2b88b27e14cc2d7817e79e5f36d8a4f8dae78104d6d57f0ce11dfe926d08109573d9c0f4e77bfd866683b3
diff --git a/dev-ruby/roadie-rails/metadata.xml b/dev-ruby/roadie-rails/metadata.xml
index 2b1c09cb5aa3..e5a234140fe6 100644
--- a/dev-ruby/roadie-rails/metadata.xml
+++ b/dev-ruby/roadie-rails/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/roadie-rails/roadie-rails-1.2.1.ebuild b/dev-ruby/roadie-rails/roadie-rails-1.2.1.ebuild
deleted file mode 100644
index 5553775ef4bb..000000000000
--- a/dev-ruby/roadie-rails/roadie-rails-1.2.1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Hooks Roadie into your Rails application to help with email generation"
-HOMEPAGE="https://github.com/Mange/roadie-rails"
-SRC_URI="https://github.com/Mange/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-#RESTRICT="test"
-
-ruby_add_rdepend ">=dev-ruby/roadie-3.1
- >=dev-ruby/railties-3.0:* <dev-ruby/railties-5.1:*"
-ruby_add_bdepend "
- test? (
- dev-ruby/bundler
- dev-ruby/rspec-rails
- dev-ruby/rspec-collection_matchers )"
-
-all_ruby_prepare() {
- sed -i -e '/development/,$ d' Gemfile || die
- sed -i -e 's/git ls-files/find . -print/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- ${RUBY} -S bundle exec rspec-3 spec || die
-}
diff --git a/dev-ruby/roadie-rails/roadie-rails-1.3.0.ebuild b/dev-ruby/roadie-rails/roadie-rails-1.3.0.ebuild
deleted file mode 100644
index 90657c5ec6ac..000000000000
--- a/dev-ruby/roadie-rails/roadie-rails-1.3.0.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Hooks Roadie into your Rails application to help with email generation"
-HOMEPAGE="https://github.com/Mange/roadie-rails"
-SRC_URI="https://github.com/Mange/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-#RESTRICT="test"
-
-ruby_add_rdepend ">=dev-ruby/roadie-3.1
- >=dev-ruby/railties-3.0:* <dev-ruby/railties-5.3:*"
-ruby_add_bdepend "
- test? (
- dev-ruby/bundler
- dev-ruby/rspec-rails
- dev-ruby/rspec-collection_matchers )"
-
-all_ruby_prepare() {
- sed -i -e '/development/,$ d' Gemfile || die
- sed -i -e 's/git ls-files/find . -print/' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # Avoid already removed rails version
- sed -i -e '/rails_50/ s:^:#:' spec/integration_spec.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -S bundle exec rspec-3 spec || die
-}
diff --git a/dev-ruby/roadie-rails/roadie-rails-3.0.0-r1.ebuild b/dev-ruby/roadie-rails/roadie-rails-3.0.0-r1.ebuild
new file mode 100644
index 000000000000..63a9f9b64558
--- /dev/null
+++ b/dev-ruby/roadie-rails/roadie-rails-3.0.0-r1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Hooks Roadie into your Rails application to help with email generation"
+HOMEPAGE="https://github.com/Mange/roadie-rails"
+SRC_URI="https://github.com/Mange/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+
+ruby_add_rdepend "dev-ruby/roadie:5
+ || ( dev-ruby/railties:7.0 dev-ruby/railties:6.1 )"
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ || ( dev-ruby/rails:7.0 dev-ruby/rails:6.1 )
+ dev-ruby/rspec-rails
+ dev-ruby/rspec-collection_matchers
+ dev-ruby/sass-rails )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(simplecov\|standard\)/ s:^:#:' Gemfile || die
+ sed -i -e 's/git ls-files/find * -print/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid already removed rails version
+ sed -i -e '/rails_51/ s:^:#:' spec/integration_spec.rb || die
+
+ # Avoid dependency on optional bootsnap
+ sed -i -e '/bootsnap/ s:^:#:' spec/railsapps/rails_*/Gemfile spec/railsapps/rails_*/config/boot.rb || die
+
+ # Fix versioned sass-rails dependency
+ sed -i -e '/sass-rails/ s/>= 6/>=5/' spec/railsapps/*/Gemfile || die
+
+ # Revert https://github.com/Mange/roadie-rails/commit/03acd8fddf651d43919e92db35d541ec4281c5fc for now
+ # Fragile test which is affected by dependency versions (unclear which)
+ sed -e 's/cd95a25e70dfe61add5a96e11d3fee0f29e9ba2b05099723d57bba7dfa725c8a/322506f9917889126e81df2833a6eecdf2e394658d53dad347e9882dd4dbf28e/' \
+ -i spec/integration_spec.rb || die
+
+}
+
+each_ruby_prepare() {
+ sed -i -e '/run_in_app_context/ s:bin/rails:'${RUBY}' -S bin/rails:' spec/support/rails_app.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -S bundle exec rspec-3 spec || die
+}
diff --git a/dev-ruby/roadie-rails/roadie-rails-3.1.0.ebuild b/dev-ruby/roadie-rails/roadie-rails-3.1.0.ebuild
new file mode 100644
index 000000000000..9c5504299029
--- /dev/null
+++ b/dev-ruby/roadie-rails/roadie-rails-3.1.0.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Hooks Roadie into your Rails application to help with email generation"
+HOMEPAGE="https://github.com/Mange/roadie-rails"
+SRC_URI="https://github.com/Mange/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+
+ruby_add_rdepend "dev-ruby/roadie:5
+ || ( dev-ruby/railties:7.0 dev-ruby/railties:6.1 )"
+ruby_add_bdepend "
+ test? (
+ dev-ruby/bundler
+ || ( dev-ruby/rails:7.0 dev-ruby/rails:6.1 )
+ dev-ruby/rspec-rails
+ dev-ruby/rspec-collection_matchers
+ dev-ruby/sass-rails )"
+
+all_ruby_prepare() {
+ sed -i -e '/\(simplecov\|standard\)/ s:^:#:' Gemfile || die
+ sed -i -e 's/git ls-files/find * -print/' -e '/standard/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid already removed rails or versions incompatible with sass-rails
+ sed -i -e '/rails_\(51\|52\|60\|71\)/ s:^:#:' spec/integration_spec.rb || die
+
+ # Avoid dependency on optional bootsnap
+ sed -i -e '/bootsnap/ s:^:#:' spec/railsapps/rails_*/Gemfile spec/railsapps/rails_*/config/boot.rb || die
+
+ # Fix versioned sass-rails dependency
+ sed -i -e '/sass-rails/ s/>= 6/>=5/' spec/railsapps/*/Gemfile || die
+
+ # Revert https://github.com/Mange/roadie-rails/commit/03acd8fddf651d43919e92db35d541ec4281c5fc for now
+ # Fragile test which is affected by dependency versions (unclear which)
+ sed -e 's/cd95a25e70dfe61add5a96e11d3fee0f29e9ba2b05099723d57bba7dfa725c8a/322506f9917889126e81df2833a6eecdf2e394658d53dad347e9882dd4dbf28e/' \
+ -i spec/integration_spec.rb || die
+
+}
+
+each_ruby_prepare() {
+ sed -i -e '/run_in_app_context/ s:bin/rails:'${RUBY}' -S bin/rails:' spec/support/rails_app.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -S bundle exec rspec-3 spec || die
+}
diff --git a/dev-ruby/roadie/Manifest b/dev-ruby/roadie/Manifest
index 6966a52344a9..b7cf0b01988e 100644
--- a/dev-ruby/roadie/Manifest
+++ b/dev-ruby/roadie/Manifest
@@ -1,2 +1,3 @@
-DIST roadie-3.4.0.tar.gz 50719 BLAKE2B 7e3948e1c9c052ac72ef462a6a4452d6831d99d0134a9716adcf8cd67d261f2c330a6309e7c8a6e00c7489f62cd2b7253f4db48f7daadee4bf57fb1c40cd181c SHA512 cc25986dbe054b18189dad46f2dbde4f325c7391f5cb8ba598f504a465b99cb84339b2fdad3ef663d50275a186620dd60753df3fccfd5bcada52b74ee4c7c55e
-DIST roadie-3.5.0.tar.gz 50687 BLAKE2B 4d48c7989798977e74ebfb3959c5d1b52ff5aa91c1e81075b7b631a70893f344965ffc838f1debe0dbcc807c588e7e4da93937beb4fcef8f4bd9f3eaf7b81407 SHA512 d0602ccee1b642dcda0644afb762a56c97715472e7dfdd63115fc595e1ccbbf3192114e32e25b3c0e6c8c9db37bfc57b75f66bf9ac1e4656b27972f0d4fcd98b
+DIST roadie-5.1.0.tar.gz 50866 BLAKE2B efab67901951f36877cf5f4a41e604e69f672f4ba3b774a26992de947d52b8e1f1c1bf10b4d36212b80542942d29be066184fe4237ac31895ac5bbb2ca27ae80 SHA512 490a5def87bd2a33eff732fc144881fc23e8838ccbd7392a0ecabcde2eb7736445a94eb0580080d616f7c6594c63da6455f1b55636dd542372569bee4a70de78
+DIST roadie-5.2.0.tar.gz 50870 BLAKE2B ba78087e07d9135341dbe6cee3b4ff2c9a54ae8a98315447ac38b4af1f0a19b61151c209f28e5c279d87d0de97de8da517aa8313fb867babfa400e6c8f3f07cd SHA512 76123aa4d01fe847693358ceae26048510fa5c18a1489a09f09ffeffcc021baf156330a5d75fc1326936b9605a034dfa8987bb29deaa11c1e8b7bd0493054e5e
+DIST roadie-5.2.1.tar.gz 50799 BLAKE2B 9a3a228a5242d6260604ddf44fb3d804c65bf391091b3b54ff63f19b794a46cce6a963490afe497b0bb0c763204d47f33e30d0e86954d1ef50c09bc28773b764 SHA512 3cbd7026f2a4712ff1541c9584590d5bd9f1a45f18d5275ecd16b8300ae87acab47756626f9eb4b6dba200d57e040f38e0ae9e6a3bac6a0fdf3815605d2ded80
diff --git a/dev-ruby/roadie/metadata.xml b/dev-ruby/roadie/metadata.xml
index 93485c021309..8a46cdc5b500 100644
--- a/dev-ruby/roadie/metadata.xml
+++ b/dev-ruby/roadie/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/roadie/roadie-3.4.0.ebuild b/dev-ruby/roadie/roadie-3.4.0.ebuild
deleted file mode 100644
index 8a6ae6c862c6..000000000000
--- a/dev-ruby/roadie/roadie-3.4.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Making HTML emails comfortable for the Rails rockstars"
-HOMEPAGE="https://github.com/Mange/roadie"
-SRC_URI="https://github.com/Mange/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/nokogiri-1.5.0
- >=dev-ruby/css_parser-1.4.5 =dev-ruby/css_parser-1*"
-ruby_add_bdepend "test? ( dev-ruby/rspec-collection_matchers dev-ruby/webmock )"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
- sed -i -e 's/git ls-files/find . -type f -print/' \
- -e '/test_files/d' \
- -e '/css_parser/ s/~>/>=/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/roadie/roadie-3.5.0.ebuild b/dev-ruby/roadie/roadie-3.5.0.ebuild
deleted file mode 100644
index 2b52aaddc5ca..000000000000
--- a/dev-ruby/roadie/roadie-3.5.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Making HTML emails comfortable for the Rails rockstars"
-HOMEPAGE="https://github.com/Mange/roadie"
-SRC_URI="https://github.com/Mange/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/nokogiri-1.8:0
- >=dev-ruby/css_parser-1.4.5 =dev-ruby/css_parser-1*"
-ruby_add_bdepend "test? ( dev-ruby/rspec-collection_matchers dev-ruby/webmock )"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
- sed -i -e 's/git ls-files/find . -type f -print/' \
- -e '/test_files/d' \
- -e '/css_parser/ s/~>/>=/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/roadie/roadie-5.1.0.ebuild b/dev-ruby/roadie/roadie-5.1.0.ebuild
new file mode 100644
index 000000000000..e88322619eae
--- /dev/null
+++ b/dev-ruby/roadie/roadie-5.1.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Making HTML emails comfortable for the Rails rockstars"
+HOMEPAGE="https://github.com/Mange/roadie"
+SRC_URI="https://github.com/Mange/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/nokogiri-1.8:0
+ >=dev-ruby/css_parser-1.4.5 =dev-ruby/css_parser-1*"
+ruby_add_bdepend "test? ( dev-ruby/rspec-collection_matchers dev-ruby/webmock )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile || die
+ sed -i -e 's/git ls-files/find * -type f -print/' \
+ -e '/test_files/d' \
+ -e '/css_parser/ s/~>/>=/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/roadie/roadie-5.2.0.ebuild b/dev-ruby/roadie/roadie-5.2.0.ebuild
new file mode 100644
index 000000000000..756b73a5b1fe
--- /dev/null
+++ b/dev-ruby/roadie/roadie-5.2.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Making HTML emails comfortable for the Rails rockstars"
+HOMEPAGE="https://github.com/Mange/roadie"
+SRC_URI="https://github.com/Mange/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/nokogiri-1.15:0
+ >=dev-ruby/css_parser-1.4.5 =dev-ruby/css_parser-1*"
+ruby_add_bdepend "test? ( dev-ruby/rspec-collection_matchers dev-ruby/webmock )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile || die
+ sed -i -e 's/git ls-files/find * -type f -print/' \
+ -e '/test_files/d' \
+ -e '/css_parser/ s/~>/>=/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/roadie/roadie-5.2.1.ebuild b/dev-ruby/roadie/roadie-5.2.1.ebuild
new file mode 100644
index 000000000000..a2ca9a82584f
--- /dev/null
+++ b/dev-ruby/roadie/roadie-5.2.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Making HTML emails comfortable for the Rails rockstars"
+HOMEPAGE="https://github.com/Mange/roadie"
+SRC_URI="https://github.com/Mange/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/nokogiri-1.15:0
+ >=dev-ruby/css_parser-1.4.5 =dev-ruby/css_parser-1*"
+ruby_add_bdepend "test? ( dev-ruby/rspec-collection_matchers dev-ruby/webmock )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile || die
+ sed -i -e 's/git ls-files/find * -type f -print/' \
+ -e '/test_files/d' \
+ -e '/css_parser/ s/~>/>=/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/robots/metadata.xml b/dev-ruby/robots/metadata.xml
index 3a540d414e6c..58ae4abf30f4 100644
--- a/dev-ruby/robots/metadata.xml
+++ b/dev-ruby/robots/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
diff --git a/dev-ruby/robots/robots-0.10.1-r2.ebuild b/dev-ruby/robots/robots-0.10.1-r2.ebuild
deleted file mode 100644
index f49f4db9f13d..000000000000
--- a/dev-ruby/robots/robots-0.10.1-r2.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple Ruby library to parse robots.txt"
-HOMEPAGE="https://rubygems.org/gems/robots"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e 's:rake/rdoctask:rdoc/task:' Rakefile || die
-}
diff --git a/dev-ruby/robots/robots-0.10.1-r3.ebuild b/dev-ruby/robots/robots-0.10.1-r3.ebuild
new file mode 100644
index 000000000000..71e73cbf203e
--- /dev/null
+++ b/dev-ruby/robots/robots-0.10.1-r3.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A simple Ruby library to parse robots.txt"
+HOMEPAGE="https://rubygems.org/gems/robots"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+
+all_ruby_prepare() {
+ sed -i -e 's:rake/rdoctask:rdoc/task:' Rakefile || die
+}
diff --git a/dev-ruby/rotp/Manifest b/dev-ruby/rotp/Manifest
new file mode 100644
index 000000000000..5d8388b777d2
--- /dev/null
+++ b/dev-ruby/rotp/Manifest
@@ -0,0 +1,2 @@
+DIST rotp-6.2.2.tar.gz 16554 BLAKE2B ba6688238c1e0f0674cc38f8ee0a9f4db2396afbe8a66c47f309ab5b14ef80be039e76d610cd29cad7ce15f6ce2de5be4edc40f2a27841227910a71ec9c56bfc SHA512 88292c80122eec53ed9a45682263b66f1ff6aaad04e0247e235a94faa5d27c1f12398445d81152b6da5565039810f7d5a6974af4bb179a6b8e0a3282fbd6437e
+DIST rotp-6.3.0.tar.gz 17931 BLAKE2B 123ea8b4e855f4fca5edb4f752446c09e65c8a030ee684c32d34aa76db014c54e9d159ced47a2b7f39b92d97453c4ebe728ca65f70ccda0b7ebbf3c966eb4941 SHA512 99f41db28e87541a8318285efc1b57357bfeec72c62e3e8386bb4c75eda6273a992764cebf04b8548aa617fdeec6555cdd29cebe6c5fd8860cb93af62275e30f
diff --git a/dev-ruby/rotp/metadata.xml b/dev-ruby/rotp/metadata.xml
new file mode 100644
index 000000000000..8335c1abecca
--- /dev/null
+++ b/dev-ruby/rotp/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>azamat.hackimov@gmail.com</email>
+ <name>Azamat H. Hackimov</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">mdp/rotp</remote-id>
+ <remote-id type="rubygems">rotp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/rotp/rotp-6.2.2.ebuild b/dev-ruby/rotp/rotp-6.2.2.ebuild
new file mode 100644
index 000000000000..989365b43b73
--- /dev/null
+++ b/dev-ruby/rotp/rotp-6.2.2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The Ruby One Time Password Library"
+HOMEPAGE="https://github.com/mdp/rotp"
+SRC_URI="https://github.com/mdp/rotp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-libs/openssl"
+
+ruby_add_bdepend "
+ test? ( >=dev-ruby/timecop-0.8 )
+"
+
+all_ruby_prepare() {
+ # Remove simplecov
+ sed -i -e '/simplecov/,/^end/ s:^:#:' spec/spec_helper.rb || die
+ # Don't require git
+ sed -i \
+ -e 's/git ls-files/find/' \
+ -e 's/{test,spec,features}/spec/' \
+ ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/rotp/rotp-6.3.0.ebuild b/dev-ruby/rotp/rotp-6.3.0.ebuild
new file mode 100644
index 000000000000..4f99b2736ab5
--- /dev/null
+++ b/dev-ruby/rotp/rotp-6.3.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The Ruby One Time Password Library"
+HOMEPAGE="https://github.com/mdp/rotp"
+SRC_URI="https://github.com/mdp/rotp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-libs/openssl"
+
+ruby_add_bdepend "
+ test? ( >=dev-ruby/timecop-0.8 )
+"
+
+all_ruby_prepare() {
+ # Remove simplecov
+ sed -i -e '/simplecov/,/^end/ s:^:#:' -e '2irequire "uri"; require "cgi"' spec/spec_helper.rb || die
+ # Don't require git
+ sed -i \
+ -e 's/git ls-files/find/' \
+ -e 's/{test,spec,features}/spec/' \
+ ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/rouge/Manifest b/dev-ruby/rouge/Manifest
index 7f192c8e2be0..87ed71c0d291 100644
--- a/dev-ruby/rouge/Manifest
+++ b/dev-ruby/rouge/Manifest
@@ -1,4 +1,5 @@
-DIST rouge-3.6.0.tar.gz 727487 BLAKE2B d5430e0dec82244c8c5fc0df3de318556f3b6c24579b34a724f20953765ab9fabfd79c5aeab3ff9d16f5f4c7db531b0b9d511938b8836207f4a64050a4bff112 SHA512 b5ec4d6325a752033d8c1e1bbe1618840bf2b5c556391ae8d978971a520f83a49d7244f0386193c947689d84d61d98137b8d8a06ed83e3c1d6769923a1c6c1c1
-DIST rouge-3.7.0.tar.gz 761581 BLAKE2B 681b8447a0f56e774f155ca735fa57b18a58f7ba3a55f995c3b42927392c91891facee557ed85a9faae86a9fa3301aedca995cff9a9b3d729c1be8e0cbdb8b97 SHA512 9360a4e0d564435da1481503222794e4b5649b4ece1b410d079c69f10e89e20bdf08c9d04663919cfbb7ce7b7cf0688604649c42c2442750bb1301d68e78248f
-DIST rouge-3.8.0.tar.gz 755720 BLAKE2B aca1ccbd601ee080958ccf09ab8932dc556065945f4cc2ee9b9bf5531ff41cec676005b0c7540aa058b3346c5eabac4351dd6a291ff148c9b5dfc682f7579336 SHA512 16a1cf9e9eae466c55f236f10d10bf0f5f4d523f6a680c1130b02115384691c1e2fbb14b59a6be1b9df77cc67fdb0ffe026cff6d0150230afe53f26b4c254dde
-DIST rouge-3.9.0.tar.gz 771945 BLAKE2B 855a9a7b7bc5af5c19265570d7cfbb699ac3c9e355ef1a0ccba2a8a5e93ccf3dac5bc1c6e8ab1e251c29eb4eada403862c31f905d6de86bd3b6ae1d1868231c0 SHA512 da132ed07889f6dfda9199cfd6eb8f1af8e0c68b666452f0bafc86417bc153d11967138de49f299f4ae9d2f868dd7349a4089b235fceea80e32b1af3e3200172
+DIST rouge-3.30.0.tar.gz 1036048 BLAKE2B 79dde9ed8a282b22aa044bef1a17cdde705e5361aa9298789d1de155260a69a200d8039c400d22db5719039d67f0d9179c31574190684da50ea64fba92c63ec8 SHA512 f21ff96d2d1f248dfffb02ea2312b4c01090b2b5664588e00763d0ede0d8af701efe0cdabb551a2debff26a301dfaffa7a07aa579d73806c6635f03dd15dcfe1
+DIST rouge-4.1.2.tar.gz 1054462 BLAKE2B 8f0aff31c6c184a9f264e27d95804c88f8a1ab43ae25237c8e24c646d46aa5e59ca1c32efb7c6c6e59b0a6edd531ae67edd7fa87906ec2f244e0086590c255a1 SHA512 835ac4b75c4c8be9d11486e2a6f5a9ecff03180bf6657d2486638f562a99420d97dd518a65fd6ffe20e7994386174887575e02f77d9c3af3aa895ff4d3a4b7f3
+DIST rouge-4.1.3.tar.gz 1056133 BLAKE2B 4c5134caf28c5bc5f8edc5aef903139f86bc6dedd268970a8a368afa6be6df2b176ab4ddd5c287482333a4863e16ccdc50de7f3830ebb57c6db3285f544f9b6c SHA512 4fa62b46477055e19070c86a5ca0164f84ec8d2d4a3a5bc5b3c84fd514353153d4caf3b3968da6dc357475f3048c684059b9ce419aa3f9986e1c9838a00d8564
+DIST rouge-4.2.0.tar.gz 1059813 BLAKE2B b6add86c73729ed3df8f24ff2b454c520416f0640e090ca04372f8f00184bbf432119993ea6b809e1aec50899bd05bccebde0ca6d35f420c8d2a1e57c61a84d2 SHA512 b0dd5fb3ec2ebb1e7cd50460ea589026e70e5ee8b7b55a9a9c48990f22d3845a5a1bb7ce83001f5316852568c8bc7bca3ee2db9deacd60cde2b42ea9ba391d18
+DIST rouge-4.2.1.tar.gz 1061430 BLAKE2B 8dcaf5f4ef17e5e44eaa3251877ddd44d8a99a36e2b7e0624910de2c21e0272b7f1f022257136be5090eebe3cab826eed7a740e5cbe50bbdd72dcd0aad9eb955 SHA512 3545e41e5815acf96fc2e48531bebf50424425bbc13816daf03376882f41319905db6fee609b2bea5c629c6056cb50ae40dd7e3dcd088cc7403506cbde5351f7
diff --git a/dev-ruby/rouge/metadata.xml b/dev-ruby/rouge/metadata.xml
index 6610059a0393..98198ea0fe7c 100644
--- a/dev-ruby/rouge/metadata.xml
+++ b/dev-ruby/rouge/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">jneen/rouge</remote-id>
+ <remote-id type="github">rouge-ruby/rouge</remote-id>
+ <remote-id type="rubygems">rouge</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rouge/rouge-3.30.0-r1.ebuild b/dev-ruby/rouge/rouge-3.30.0-r1.ebuild
new file mode 100644
index 000000000000..09285206f50f
--- /dev/null
+++ b/dev-ruby/rouge/rouge-3.30.0-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_TASK_TEST="spec"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+RUBY_FAKEGEM_GEMSPEC="rouge.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Yet-another-markdown-parser using a strict syntax definition in pure Ruby"
+HOMEPAGE="https://github.com/jneen/rouge"
+SRC_URI="https://github.com/jneen/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+
+SLOT="2"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos"
+IUSE=""
+
+ruby_add_bdepend "doc? ( dev-ruby/redcarpet )
+ test? ( dev-ruby/minitest-power_assert )
+ dev-ruby/yard
+"
+
+ruby_add_rdepend "dev-ruby/redcarpet"
+
+all_ruby_prepare() {
+ rm -f tasks/{check/style,update/changelog}.rake || die
+
+ sed -i -e '/bundler/I s:^:#: ; 5irequire "minitest-power_assert"' spec/spec_helper.rb || die
+ sed -i -e '/\(changelog\|bundler\|rubocop\)/ s:^:#: ; 1irequire "pathname"' Rakefile || die
+}
diff --git a/dev-ruby/rouge/rouge-3.6.0.ebuild b/dev-ruby/rouge/rouge-3.6.0.ebuild
deleted file mode 100644
index fb11aff5040d..000000000000
--- a/dev-ruby/rouge/rouge-3.6.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="spec"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Yet-another-markdown-parser using a strict syntax definition in pure Ruby"
-HOMEPAGE="https://github.com/jneen/rouge"
-SRC_URI="https://github.com/jneen/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-
-SLOT="2"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "doc? ( dev-ruby/redcarpet )"
-ruby_add_rdepend "dev-ruby/redcarpet
- !!<dev-ruby/rouge-1.11.1-r2:0"
-
-all_ruby_prepare() {
- rm -f tasks/changelog.rake || die
-
- sed -i -e '/bundler/I s:^:#: ; 5irequire "minitest-power_assert"' spec/spec_helper.rb || die
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/rouge/rouge-3.7.0.ebuild b/dev-ruby/rouge/rouge-3.7.0.ebuild
deleted file mode 100644
index ffabec94cfef..000000000000
--- a/dev-ruby/rouge/rouge-3.7.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="spec"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Yet-another-markdown-parser using a strict syntax definition in pure Ruby"
-HOMEPAGE="https://github.com/jneen/rouge"
-SRC_URI="https://github.com/jneen/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-
-SLOT="2"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "doc? ( dev-ruby/redcarpet )"
-ruby_add_rdepend "dev-ruby/redcarpet
- !!<dev-ruby/rouge-1.11.1-r2:0"
-
-all_ruby_prepare() {
- rm -f tasks/update/changelog.rake || die
-
- sed -i -e '/bundler/I s:^:#: ; 5irequire "minitest-power_assert"' spec/spec_helper.rb || die
- sed -i -e '/\(changelog\|bundler\)/ s:^:#: ; 1irequire "pathname"' Rakefile || die
-}
diff --git a/dev-ruby/rouge/rouge-3.8.0.ebuild b/dev-ruby/rouge/rouge-3.8.0.ebuild
deleted file mode 100644
index 6bb5004eb3fa..000000000000
--- a/dev-ruby/rouge/rouge-3.8.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="spec"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-RUBY_FAKEGEM_GEMSPEC="rouge.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Yet-another-markdown-parser using a strict syntax definition in pure Ruby"
-HOMEPAGE="https://github.com/jneen/rouge"
-SRC_URI="https://github.com/jneen/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-
-SLOT="2"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "doc? ( dev-ruby/redcarpet )"
-ruby_add_rdepend "dev-ruby/redcarpet
- !!<dev-ruby/rouge-1.11.1-r2:0"
-
-all_ruby_prepare() {
- rm -f tasks/update/changelog.rake || die
-
- sed -i -e '/bundler/I s:^:#: ; 5irequire "minitest-power_assert"' spec/spec_helper.rb || die
- sed -i -e '/\(changelog\|bundler\)/ s:^:#: ; 1irequire "pathname"' Rakefile || die
-}
diff --git a/dev-ruby/rouge/rouge-3.9.0.ebuild b/dev-ruby/rouge/rouge-3.9.0.ebuild
deleted file mode 100644
index 88e1aab311a3..000000000000
--- a/dev-ruby/rouge/rouge-3.9.0.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="spec"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-RUBY_FAKEGEM_GEMSPEC="rouge.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Yet-another-markdown-parser using a strict syntax definition in pure Ruby"
-HOMEPAGE="https://github.com/jneen/rouge"
-SRC_URI="https://github.com/jneen/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-
-SLOT="2"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "doc? ( dev-ruby/redcarpet )
- test? ( dev-ruby/minitest-power_assert )
-"
-
-ruby_add_rdepend "dev-ruby/redcarpet"
-
-all_ruby_prepare() {
- rm -f tasks/update/changelog.rake || die
-
- sed -i -e '/bundler/I s:^:#: ; 5irequire "minitest-power_assert"' spec/spec_helper.rb || die
- sed -i -e '/\(changelog\|bundler\)/ s:^:#: ; 1irequire "pathname"' Rakefile || die
-}
diff --git a/dev-ruby/rouge/rouge-4.1.2.ebuild b/dev-ruby/rouge/rouge-4.1.2.ebuild
new file mode 100644
index 000000000000..746231b87f4a
--- /dev/null
+++ b/dev-ruby/rouge/rouge-4.1.2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="spec"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+RUBY_FAKEGEM_GEMSPEC="rouge.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Yet-another-markdown-parser using a strict syntax definition in pure Ruby"
+HOMEPAGE="https://github.com/rouge-ruby/rouge"
+SRC_URI="https://github.com/rouge-ruby/${PN}/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=""
+
+ruby_add_bdepend "doc? ( dev-ruby/redcarpet )
+ test? ( dev-ruby/minitest-power_assert )
+ dev-ruby/yard
+"
+
+ruby_add_rdepend "dev-ruby/redcarpet !<dev-ruby/rouge-3.30.0-r1"
+
+all_ruby_prepare() {
+ rm -f tasks/{check/style,update/changelog}.rake || die
+
+ sed -i -e '/bundler/I s:^:#: ; 5irequire "minitest-power_assert"' spec/spec_helper.rb || die
+ sed -i -e '/\(changelog\|bundler\|rubocop\)/ s:^:#: ; 1irequire "pathname"' Rakefile || die
+}
diff --git a/dev-ruby/rouge/rouge-4.1.3.ebuild b/dev-ruby/rouge/rouge-4.1.3.ebuild
new file mode 100644
index 000000000000..bbe0e3381dad
--- /dev/null
+++ b/dev-ruby/rouge/rouge-4.1.3.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="spec"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+RUBY_FAKEGEM_GEMSPEC="rouge.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Yet-another-markdown-parser using a strict syntax definition in pure Ruby"
+HOMEPAGE="https://github.com/rouge-ruby/rouge"
+SRC_URI="https://github.com/rouge-ruby/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "doc? ( dev-ruby/redcarpet )
+ test? ( dev-ruby/minitest-power_assert )
+ dev-ruby/yard
+"
+
+ruby_add_rdepend "dev-ruby/redcarpet !<dev-ruby/rouge-3.30.0-r1"
+
+all_ruby_prepare() {
+ rm -f tasks/{check/style,update/changelog}.rake || die
+
+ sed -i -e '/bundler/I s:^:#: ; 5irequire "minitest-power_assert"' spec/spec_helper.rb || die
+ sed -i -e '/\(changelog\|bundler\|rubocop\)/ s:^:#: ; 1irequire "pathname"' Rakefile || die
+}
diff --git a/dev-ruby/rouge/rouge-4.2.0.ebuild b/dev-ruby/rouge/rouge-4.2.0.ebuild
new file mode 100644
index 000000000000..da8fd295fe7b
--- /dev/null
+++ b/dev-ruby/rouge/rouge-4.2.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="spec"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+RUBY_FAKEGEM_GEMSPEC="rouge.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Yet-another-markdown-parser using a strict syntax definition in pure Ruby"
+HOMEPAGE="https://github.com/rouge-ruby/rouge"
+SRC_URI="https://github.com/rouge-ruby/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2 MIT"
+
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "doc? ( dev-ruby/redcarpet )
+ test? ( dev-ruby/minitest-power_assert )
+ dev-ruby/yard
+"
+
+ruby_add_rdepend "dev-ruby/redcarpet !<dev-ruby/rouge-3.30.0-r1"
+
+all_ruby_prepare() {
+ rm -f tasks/{check/style,update/changelog}.rake || die
+
+ sed -i -e '/bundler/I s:^:#: ; 5irequire "minitest-power_assert"' spec/spec_helper.rb || die
+ sed -i -e '/\(changelog\|bundler\|rubocop\)/ s:^:#: ; 1irequire "pathname"' Rakefile || die
+}
diff --git a/dev-ruby/rouge/rouge-4.2.1.ebuild b/dev-ruby/rouge/rouge-4.2.1.ebuild
new file mode 100644
index 000000000000..dd5ef6a25191
--- /dev/null
+++ b/dev-ruby/rouge/rouge-4.2.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="spec"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+RUBY_FAKEGEM_GEMSPEC="rouge.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Yet-another-markdown-parser using a strict syntax definition in pure Ruby"
+HOMEPAGE="https://github.com/rouge-ruby/rouge"
+SRC_URI="https://github.com/rouge-ruby/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2 MIT"
+
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="doc test"
+
+ruby_add_bdepend "doc? ( dev-ruby/redcarpet )
+ test? ( dev-ruby/minitest-power_assert )
+ dev-ruby/yard
+"
+
+ruby_add_rdepend "dev-ruby/redcarpet !<dev-ruby/rouge-3.30.0-r1"
+
+all_ruby_prepare() {
+ rm -f tasks/{check/style,update/changelog}.rake || die
+
+ sed -i -e '/bundler/I s:^:#: ; 5irequire "minitest-power_assert"' spec/spec_helper.rb || die
+ sed -i -e '/\(changelog\|bundler\|rubocop\)/ s:^:#: ; 1irequire "pathname"' Rakefile || die
+}
diff --git a/dev-ruby/rqrcode/Manifest b/dev-ruby/rqrcode/Manifest
index 48fa896503af..ef4a661473c6 100644
--- a/dev-ruby/rqrcode/Manifest
+++ b/dev-ruby/rqrcode/Manifest
@@ -1 +1 @@
-DIST rqrcode-0.10.1.gem 27136 BLAKE2B 7fea719d6e76d340dd6db386994bffc5e7002afbc61e0b476dc639003757f5932598b81274a5ab74bc6dd25d10c61bc023668c8271e9387f7bcc02c6f4dc879b SHA512 5b2d6e63bc069a1cf436d2df159bef673ef621a73d72c52bbdec1c2d820f4553172d5c3499b9347e0939d422bffa8f39ecaae123ce0be360d25ab6c08a6eb583
+DIST rqrcode-2.2.0.tar.gz 109070 BLAKE2B 91a74a9c547f62f0cd83dd60d00b7af2c9363bd34f3987e43b637f906975f3e2b1f95ac67df80a0065fdd9fa3a7801e639fff1d2b36bcc4dc4abbc996fb6c919 SHA512 41d6882b28d15154b9cc5dc6aba30cad404aabad2b9101309bea0812b776cdb540fec3152ec5bb075f19c77a1aa67bc44d9b35e2161d189bd64a7d2517cafa63
diff --git a/dev-ruby/rqrcode/metadata.xml b/dev-ruby/rqrcode/metadata.xml
index 28ab0c15f206..12fa9670bac5 100644
--- a/dev-ruby/rqrcode/metadata.xml
+++ b/dev-ruby/rqrcode/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">whomwah/rqrcode</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rqrcode/rqrcode-0.10.1.ebuild b/dev-ruby/rqrcode/rqrcode-0.10.1.ebuild
deleted file mode 100644
index 88198e0dcffd..000000000000
--- a/dev-ruby/rqrcode/rqrcode-0.10.1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Library for encoding QR Codes"
-HOMEPAGE="https://whomwah.github.com/rqrcode/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/chunky_png:0"
-
-all_ruby_prepare() {
- sed -i -e '1igem "minitest"' test/test_helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e "Dir['test/test_r*.rb'].each{|f| require f}" || die
-}
diff --git a/dev-ruby/rqrcode/rqrcode-2.2.0.ebuild b/dev-ruby/rqrcode/rqrcode-2.2.0.ebuild
new file mode 100644
index 000000000000..5d2f0af80d0f
--- /dev/null
+++ b/dev-ruby/rqrcode/rqrcode-2.2.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="rqrcode.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Library for encoding QR Codes"
+HOMEPAGE="https://whomwah.com/rqrcode/"
+SRC_URI="https://github.com/whomwah/rqrcode/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/chunky_png:0
+ dev-ruby/rqrcode_core:1
+"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
+
+ sed -i -e "s:/tmp:${TMPDIR}:" spec/rqrcode/export_png_spec.rb || die
+}
diff --git a/dev-ruby/rqrcode_core/Manifest b/dev-ruby/rqrcode_core/Manifest
new file mode 100644
index 000000000000..c0ee56f98eba
--- /dev/null
+++ b/dev-ruby/rqrcode_core/Manifest
@@ -0,0 +1 @@
+DIST rqrcode_core-1.2.0.tar.gz 21103 BLAKE2B 9988dc999b2853888e91b6346af074defe59dbd1be097e6c058fb7e8e68a779aedef14458ac14aa06e57e8cccdd1240e5eb003944951b47c174a1239cc35d77f SHA512 423a492b29ed8cb4e2f037305121a77f22e76dafc93675d0a24e2c6ad1918522003a8d404d55fa28e007bbb9be6d2038eafab76b2dd5e5e59c0d9adb7ab4626c
diff --git a/dev-ruby/rqrcode_core/metadata.xml b/dev-ruby/rqrcode_core/metadata.xml
new file mode 100644
index 000000000000..658c72b1920d
--- /dev/null
+++ b/dev-ruby/rqrcode_core/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-ruby/rqrcode_core/rqrcode_core-1.2.0.ebuild b/dev-ruby/rqrcode_core/rqrcode_core-1.2.0.ebuild
new file mode 100644
index 000000000000..5dd454a709bc
--- /dev/null
+++ b/dev-ruby/rqrcode_core/rqrcode_core-1.2.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="rqrcode_core.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Library for encoding QR Codes"
+HOMEPAGE="https://github.com/whomwah/rqrcode_core/"
+SRC_URI="https://github.com/whomwah/rqrcode_core/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile test/test_helper.rb || die
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each {|f| require f}' || die
+}
diff --git a/dev-ruby/rr/Manifest b/dev-ruby/rr/Manifest
index 22faf1eec3b2..2c6f1034cecc 100644
--- a/dev-ruby/rr/Manifest
+++ b/dev-ruby/rr/Manifest
@@ -1 +1 @@
-DIST rr-1.2.1.tar.gz 137497 BLAKE2B 3db6751d15e54da6ee6777fb7d383c1bfea2e68482dda03ceda9a70f66382cf9aa7c39f27fca9f0ce92b19858b5324bdbb5811809b3ae146e213bb03ddca0772 SHA512 df2d05ff732908da55878cb89cb7d1c4442a18c19f71940244f5bd7dc55632467a1824f55d7fade4b5122486a61277090d7ad05df9f99098030c21aa45b36dd2
+DIST rr-3.1.0.tar.gz 140388 BLAKE2B 0994ae589d1d9ebe6b4a334c1e93f959b63280beff8f2a6b1696722ac908ac5a21954e65d20216c239587abdbff3a1b3110f6f1eb3f17bd5e0f169a4892e750c SHA512 d05d8421d5cd6e9225cbf5ca183c54cc510a3212f0629f7cee60887b18c874618cb67836503aed7665cef8443cc579306b84e030ae1ec0834f56298f5044a2fa
diff --git a/dev-ruby/rr/metadata.xml b/dev-ruby/rr/metadata.xml
index 81917229658a..50516bec9d6a 100644
--- a/dev-ruby/rr/metadata.xml
+++ b/dev-ruby/rr/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rr/rr-1.2.1.ebuild b/dev-ruby/rr/rr-1.2.1.ebuild
deleted file mode 100644
index 1e80eded01d2..000000000000
--- a/dev-ruby/rr/rr-1.2.1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="none"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A double framework featuring a selection of double techniques and a terse syntax"
-HOMEPAGE="https://rr.github.io/rr"
-SRC_URI="https://github.com/rr/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? (
- dev-ruby/rspec:2
- dev-ruby/minitest
- dev-ruby/diff-lcs )"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '1,2 s:^:#:' spec/suites/rspec_2/spec_helper.rb || die
-}
-
-each_ruby_test() {
- # Only run the rspec 2 case since we don't have appraisals. Setting
- # up everything correctly without it seems very complicated.
- ruby-ng_rspec --format progress spec/suites/rspec_2/unit || die
-}
diff --git a/dev-ruby/rr/rr-3.1.0.ebuild b/dev-ruby/rr/rr-3.1.0.ebuild
new file mode 100644
index 000000000000..3b3e44be3275
--- /dev/null
+++ b/dev-ruby/rr/rr-3.1.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC=rr.gemspec
+
+inherit ruby-fakegem
+
+DESCRIPTION="A double framework featuring a selection of double techniques and a terse syntax"
+HOMEPAGE="https://rr.github.io/rr/"
+SRC_URI="https://github.com/rr/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitest
+ dev-ruby/diff-lcs
+ dev-ruby/test-unit-rr )"
+
+each_ruby_test() {
+ ${RUBY} test/run-test.rb || die
+}
diff --git a/dev-ruby/rrdtool-bindings/Manifest b/dev-ruby/rrdtool-bindings/Manifest
index 861a05f0b6a0..e3ece643a7cd 100644
--- a/dev-ruby/rrdtool-bindings/Manifest
+++ b/dev-ruby/rrdtool-bindings/Manifest
@@ -1,4 +1 @@
-DIST rrdtool-1.6.0.tar.gz 2186538 BLAKE2B b56ef79b9d45a65cacd7c1d8da2158dcaaff3ebc2ffc0640081cdc2fa3ac643be1ce48a2cac60427a836dc3e457ddb042c95533d0ffbcdefa2978f5659150391 SHA512 45a8f16a2bda9d497c5f39de80236adb7a5bd054a14755c4d130f21cd6430bd0a76caef9632994be56fd1ea2364eb218687ea8ebf945a71ca411221c248f3ebd
-DIST rrdtool-1.7.0.tar.gz 2849994 BLAKE2B f7a91fa661728850af55356a69b61ea1d4343c79579823e025e0a0757d1dab0d2cda6387197ece20e07f33a657743350cadfaf6504500f13be472d18e8826a3f SHA512 36d979561601135d74622eaf183701de15cba5e25118f7a308926a695ba84ecb33c3d16511bf4bc80cff055853e2eb85065bc4ed8aef19fc0277c6430ecd319f
-DIST rrdtool-1.7.1.tar.gz 2881346 BLAKE2B e538c6ba3fb6726f0515ed655aa8d5e184f6d3066bb32e981b3254e41c53e29529698da5ef73f8365391180c76d15808d1d727a0834b8025893b01c3b9af8f46 SHA512 ee5c9ff234493442ccd9bfc7031700483011de3e05c01e026509b699cb0d7d3e286e2046357c5fff5807f3e709043c8f218b48b43f8b126a23e228a3927d7b14
-DIST rrdtool-1.7.2.tar.gz 2883737 BLAKE2B f3ff6cc4e325cdec42a6f9e67a1644f501c11edc47bc281df58c2e1d7be4c01767c35166f4301f68cf9c22dcd5c159bb51ee704a5e36776acdf166100122cebb SHA512 453230efc68aeb4a12842d20a9d246ba478a79c2f6bfd9693a91837c1c1136abe8af177be64fe29aa40bf84ccfce7f2f15296aefe095e89b8b62aef5a7623e29
+DIST rrdtool-1.8.0.tar.gz 2955398 BLAKE2B d821d662af432c53760bc0e9636b84d9209933a810fa71091fc4c2b44518c89c7ad509bde7955d952279ee41464c3bfa4f631662dde61b6fff46699bb382653f SHA512 8ae6f94d119e8d0e1ba7f2d0738f1ba008a4880d1022f1c0c5436f662d961fceec5c42e01c241493ece3d6f55c60fd7d1d264f93e678f3cf1251201dcde027c1
diff --git a/dev-ruby/rrdtool-bindings/metadata.xml b/dev-ruby/rrdtool-bindings/metadata.xml
index 8a2c1bd406e6..4f711c39bd4e 100644
--- a/dev-ruby/rrdtool-bindings/metadata.xml
+++ b/dev-ruby/rrdtool-bindings/metadata.xml
@@ -1,15 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
-<email>ruby@gentoo.org</email>
-<name>Gentoo Ruby Project</name>
- </maintainer>
-<maintainer type="project">
-<email>netmon@gentoo.org</email>
-<name>Gentoo network monitoring and analysis project</name>
- </maintainer>
-<use>
-<flag name="graph">Enable support for graphing functions</flag>
-</use>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>netmon@gentoo.org</email>
+ <name>Gentoo network monitoring and analysis project</name>
+ </maintainer>
+ <use>
+ <flag name="graph">Enable support for graphing functions</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">oetiker/rrdtool-1.x</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.6.0.ebuild b/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.6.0.ebuild
deleted file mode 100644
index 50bf714fd428..000000000000
--- a/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.6.0.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit ruby-ng
-
-MY_P=${P/-bindings}
-MY_P=${MY_P/_/-}
-
-DESCRIPTION="Ruby bindings for rrdtool"
-HOMEPAGE="https://oss.oetiker.ch/rrdtool/"
-SRC_URI="${HOMEPAGE}pub/${MY_P}.tar.gz"
-RUBY_S="$MY_P"/bindings/ruby
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos ~x86-solaris"
-IUSE="graph test"
-REQUIRED_USE="test? ( graph )"
-
-# Block on older versions of rrdtool that install the bindings themselves.
-# requires rrd_xport which requires rrd_graph
-RDEPEND="
- ~net-analyzer/rrdtool-${PV}[graph=]
-"
-DEPEND="
- test? ( ~net-analyzer/rrdtool-${PV}[graph] )
-"
-
-RUBY_PATCHES=(
- "${FILESDIR}"/${PN}-1.4.8-graph-ruby.patch
-)
-
-each_ruby_configure() {
- rm ../../src/rrd_config.h || die
- touch ../../src/rrd_config.h || die
-
- ${RUBY} extconf.rb \
- --with-cflags="${CFLAGS} $(usex graph -DHAVE_RRD_GRAPH -UHAVE_RRD_GRAPH)" || die
-}
-
-each_ruby_compile() {
- emake V=1 ABS_TOP_SRCDIR="${PWD}/../.."
-}
-
-each_ruby_test() {
- if use graph; then
- ${RUBY} -I. test.rb || die
- fi
-}
-
-all_ruby_install() {
- dodoc CHANGES README
-}
-
-each_ruby_install() {
- DESTDIR=${D} emake install
-}
diff --git a/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.0.ebuild b/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.0.ebuild
deleted file mode 100644
index 1f8d1af39fcc..000000000000
--- a/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.0.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_TASK_DOC=""
-inherit ruby-ng
-
-MY_P=${P/-bindings}
-MY_P=${MY_P/_/-}
-
-DESCRIPTION="Ruby bindings for rrdtool"
-HOMEPAGE="https://oss.oetiker.ch/rrdtool/"
-SRC_URI="${HOMEPAGE}pub/${MY_P}.tar.gz"
-RUBY_S="$MY_P"/bindings/ruby
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos ~x86-solaris"
-IUSE="graph test"
-REQUIRED_USE="test? ( graph )"
-
-# Block on older versions of rrdtool that install the bindings themselves.
-# requires rrd_xport which requires rrd_graph
-RDEPEND="
- ~net-analyzer/rrdtool-${PV}[graph=]
-"
-DEPEND="
- test? ( ~net-analyzer/rrdtool-${PV}[graph] )
-"
-
-RUBY_PATCHES=(
- "${FILESDIR}"/${PN}-1.4.8-graph-ruby.patch
-)
-
-each_ruby_configure() {
- rm ../../src/rrd_config.h || die
- touch ../../src/rrd_config.h || die
-
- ${RUBY} extconf.rb \
- --with-cflags="${CFLAGS} $(usex graph -DHAVE_RRD_GRAPH -UHAVE_RRD_GRAPH)" || die
-}
-
-each_ruby_compile() {
- emake V=1 ABS_TOP_SRCDIR="${PWD}/../.."
-}
-
-each_ruby_test() {
- if use graph; then
- ${RUBY} -I. test.rb || die
- fi
-}
-
-all_ruby_install() {
- dodoc CHANGES README
-}
-
-each_ruby_install() {
- DESTDIR=${D} emake install
-}
diff --git a/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.1-r1.ebuild b/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.1-r1.ebuild
deleted file mode 100644
index 113be286f9b9..000000000000
--- a/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.1-r1.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_TASK_DOC=""
-inherit ruby-ng
-
-MY_P=${P/-bindings}
-MY_P=${MY_P/_/-}
-
-DESCRIPTION="Ruby bindings for rrdtool"
-HOMEPAGE="https://oss.oetiker.ch/rrdtool/"
-SRC_URI="${HOMEPAGE}pub/${MY_P}.tar.gz"
-RUBY_S="$MY_P"/bindings/ruby
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos ~x86-solaris"
-IUSE="graph test"
-REQUIRED_USE="test? ( graph )"
-
-# Block on older versions of rrdtool that install the bindings themselves.
-# requires rrd_xport which requires rrd_graph
-RDEPEND="
- ~net-analyzer/rrdtool-${PV}[graph=]
-"
-DEPEND="
- test? ( ~net-analyzer/rrdtool-${PV}[graph] )
-"
-
-all_ruby_prepare() {
- epatch "${FILESDIR}"/${PN}-1.4.8-graph-ruby.patch
-}
-
-each_ruby_configure() {
- rm ../../src/rrd_config.h || die
- touch ../../src/rrd_config.h || die
-
- ${RUBY} extconf.rb \
- --with-cflags="${CFLAGS} $(usex graph -DHAVE_RRD_GRAPH -UHAVE_RRD_GRAPH)" || die
-}
-
-each_ruby_compile() {
- emake V=1 ABS_TOP_SRCDIR="${PWD}/../.."
-}
-
-each_ruby_test() {
- if use graph; then
- ${RUBY} -I. test.rb || die
- fi
-}
-
-all_ruby_install() {
- dodoc CHANGES README
-}
-
-each_ruby_install() {
- DESTDIR=${D} emake install
-}
diff --git a/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.1.ebuild b/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.1.ebuild
deleted file mode 100644
index 4ed42759a6cb..000000000000
--- a/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.1.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_TASK_DOC=""
-inherit ruby-ng
-
-MY_P=${P/-bindings}
-MY_P=${MY_P/_/-}
-
-DESCRIPTION="Ruby bindings for rrdtool"
-HOMEPAGE="https://oss.oetiker.ch/rrdtool/"
-SRC_URI="${HOMEPAGE}pub/${MY_P}.tar.gz"
-RUBY_S="$MY_P"/bindings/ruby
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos ~x86-solaris"
-IUSE="graph test"
-REQUIRED_USE="test? ( graph )"
-
-# Block on older versions of rrdtool that install the bindings themselves.
-# requires rrd_xport which requires rrd_graph
-RDEPEND="
- ~net-analyzer/rrdtool-${PV}[graph=]
-"
-DEPEND="
- test? ( ~net-analyzer/rrdtool-${PV}[graph] )
-"
-RUBY_PATCHES=(
- "${FILESDIR}"/${PN}-1.4.8-graph-ruby.patch
-)
-
-each_ruby_configure() {
- rm ../../src/rrd_config.h || die
- touch ../../src/rrd_config.h || die
-
- ${RUBY} extconf.rb \
- --with-cflags="${CFLAGS} $(usex graph -DHAVE_RRD_GRAPH -UHAVE_RRD_GRAPH)" || die
-}
-
-each_ruby_compile() {
- emake V=1 ABS_TOP_SRCDIR="${PWD}/../.."
-}
-
-each_ruby_test() {
- if use graph; then
- ${RUBY} -I. test.rb || die
- fi
-}
-
-all_ruby_install() {
- dodoc CHANGES README
-}
-
-each_ruby_install() {
- DESTDIR=${D} emake install
-}
diff --git a/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.2.ebuild b/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.2.ebuild
deleted file mode 100644
index 113be286f9b9..000000000000
--- a/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.7.2.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-RUBY_FAKEGEM_TASK_DOC=""
-inherit ruby-ng
-
-MY_P=${P/-bindings}
-MY_P=${MY_P/_/-}
-
-DESCRIPTION="Ruby bindings for rrdtool"
-HOMEPAGE="https://oss.oetiker.ch/rrdtool/"
-SRC_URI="${HOMEPAGE}pub/${MY_P}.tar.gz"
-RUBY_S="$MY_P"/bindings/ruby
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos ~x86-solaris"
-IUSE="graph test"
-REQUIRED_USE="test? ( graph )"
-
-# Block on older versions of rrdtool that install the bindings themselves.
-# requires rrd_xport which requires rrd_graph
-RDEPEND="
- ~net-analyzer/rrdtool-${PV}[graph=]
-"
-DEPEND="
- test? ( ~net-analyzer/rrdtool-${PV}[graph] )
-"
-
-all_ruby_prepare() {
- epatch "${FILESDIR}"/${PN}-1.4.8-graph-ruby.patch
-}
-
-each_ruby_configure() {
- rm ../../src/rrd_config.h || die
- touch ../../src/rrd_config.h || die
-
- ${RUBY} extconf.rb \
- --with-cflags="${CFLAGS} $(usex graph -DHAVE_RRD_GRAPH -UHAVE_RRD_GRAPH)" || die
-}
-
-each_ruby_compile() {
- emake V=1 ABS_TOP_SRCDIR="${PWD}/../.."
-}
-
-each_ruby_test() {
- if use graph; then
- ${RUBY} -I. test.rb || die
- fi
-}
-
-all_ruby_install() {
- dodoc CHANGES README
-}
-
-each_ruby_install() {
- DESTDIR=${D} emake install
-}
diff --git a/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.8.0.ebuild b/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.8.0.ebuild
new file mode 100644
index 000000000000..e28cb8409d5d
--- /dev/null
+++ b/dev-ruby/rrdtool-bindings/rrdtool-bindings-1.8.0.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P="${P/-bindings}"
+MY_P="${MY_P/_/-}"
+
+USE_RUBY="ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_TASK_DOC=""
+
+inherit ruby-ng
+
+DESCRIPTION="Ruby bindings for rrdtool"
+HOMEPAGE="https://oss.oetiker.ch/rrdtool/"
+SRC_URI="https://github.com/oetiker/${PN/-bindings}-1.x/releases/download/v${PV}/${MY_P}.tar.gz"
+RUBY_S="${MY_P}/bindings/ruby"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="graph test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="test? ( graph )"
+
+# Block on older versions of rrdtool that install the bindings themselves.
+# requires rrd_xport which requires rrd_graph
+RDEPEND="
+ ~net-analyzer/rrdtool-${PV}[graph=]
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( ~net-analyzer/rrdtool-${PV}[graph] )
+"
+
+all_ruby_prepare() {
+ eapply -p3 "${FILESDIR}"/${PN}-1.4.8-graph-ruby.patch
+}
+
+each_ruby_configure() {
+ rm ../../src/rrd_config.h || die
+ touch ../../src/rrd_config.h || die
+
+ ${RUBY} extconf.rb \
+ --with-cflags="${CFLAGS} $(usex graph -DHAVE_RRD_GRAPH -UHAVE_RRD_GRAPH)" || die
+}
+
+each_ruby_compile() {
+ emake V=1 ABS_TOP_SRCDIR="${PWD}/../.."
+}
+
+each_ruby_test() {
+ if use graph; then
+ ${RUBY} -I. test.rb || die
+ fi
+}
+
+all_ruby_install() {
+ dodoc CHANGES README
+}
+
+each_ruby_install() {
+ DESTDIR=${D} emake install
+}
diff --git a/dev-ruby/rspec-block_is_expected/Manifest b/dev-ruby/rspec-block_is_expected/Manifest
new file mode 100644
index 000000000000..b3989f62ba64
--- /dev/null
+++ b/dev-ruby/rspec-block_is_expected/Manifest
@@ -0,0 +1 @@
+DIST rspec-block_is_expected-1.0.5.tar.gz 20486 BLAKE2B 6ec1ffb606c646aae6f63845697d461946a7a3574b82506207f81f49c6d50282370b716f1d124b98cb19b79591522caf408fa978b2c0b423a3d6c9b986b32272 SHA512 4423948605ca58e15d4b6994cce6850487e72c265feda6461e6614374af4a6fef22329e1d62668b4930273c3f0f68348fdacaf67acbd4eeff771c8779d007194
diff --git a/dev-ruby/rspec-block_is_expected/metadata.xml b/dev-ruby/rspec-block_is_expected/metadata.xml
new file mode 100644
index 000000000000..c672ba5197f4
--- /dev/null
+++ b/dev-ruby/rspec-block_is_expected/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">pboling/rspec-block_is_expected</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/rspec-block_is_expected/rspec-block_is_expected-1.0.5.ebuild b/dev-ruby/rspec-block_is_expected/rspec-block_is_expected-1.0.5.ebuild
new file mode 100644
index 000000000000..5958292deed3
--- /dev/null
+++ b/dev-ruby/rspec-block_is_expected/rspec-block_is_expected-1.0.5.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="rspec-block_is_expected.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simplify testing of blocks in RSpec"
+HOMEPAGE="https://github.com/pboling/rspec-block_is_expected"
+SRC_URI="https://github.com/pboling/rspec-block_is_expected/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+IUSE=""
+SLOT="1"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv ~x86"
+
+ruby_add_depend "test? ( >=dev-ruby/rspec-pending_for-0.1:0 )"
diff --git a/dev-ruby/rspec-collection_matchers/Manifest b/dev-ruby/rspec-collection_matchers/Manifest
index 9dbea62d19b7..bde768f97edf 100644
--- a/dev-ruby/rspec-collection_matchers/Manifest
+++ b/dev-ruby/rspec-collection_matchers/Manifest
@@ -1 +1,2 @@
-DIST rspec-collection_matchers-1.1.3.gem 16896 BLAKE2B 76f020d986f7098b873c8d3c2d087a2399f863d6a2ebbc70c2b6cf38a120bd956b85e0c60ad736539972a3f5ad26095ec1bcebf9b6dacf0d2e8979bb84356a5c SHA512 3af81c016f259f363c126ac829c8bd51b9c67d54c5c8b2def317b430b852c27eabbd538b79f0a5a919d5edba66f9501c38de560a7ac26023fae7b5588b57439d
+DIST rspec-collection_matchers-1.2.0.gem 17408 BLAKE2B 9ad83ec161d5cee74e6017a137c955a55262e05e4a82b14270887e0433b88ff3aec7245ea1a1707035dc6d2de19b2d6c27b952ad43882cc516a770bafd0b5a0d SHA512 0988cabcd8873cbb7161fda3500ae77ae299024a25a1f3faa71cad673777097518db5fddc9ff0ca8e25653c4e790b7ba76fe234596848816276defddef2e308c
+DIST rspec-collection_matchers-1.2.1.gem 17920 BLAKE2B 51920d0bc10503c64d4033e098b8c58ddac91cd3c89124aba712c965fe65f979ebc5de67527d4ec80867ce5045833f0169bf95ed61370d836a4f3d0493d80efc SHA512 7b514f4935e2e1f4612cb3e0138f8735e856f23bd6acdf99c452671441529ec70d5caedaf42fa48b3f64bbeb9addf7d87f5955d9ca460cf074a6218db0e36c4f
diff --git a/dev-ruby/rspec-collection_matchers/metadata.xml b/dev-ruby/rspec-collection_matchers/metadata.xml
index b034e2128499..301e971306d8 100644
--- a/dev-ruby/rspec-collection_matchers/metadata.xml
+++ b/dev-ruby/rspec-collection_matchers/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rspec-collection_matchers/rspec-collection_matchers-1.1.3-r1.ebuild b/dev-ruby/rspec-collection_matchers/rspec-collection_matchers-1.1.3-r1.ebuild
deleted file mode 100644
index a747b6bca1d8..000000000000
--- a/dev-ruby/rspec-collection_matchers/rspec-collection_matchers-1.1.3-r1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
-HOMEPAGE="https://github.com/rspec/rspec-collection_matchers"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rspec-expectations-3.0.0"
-
-ruby_add_bdepend "test? ( >=dev-ruby/activemodel-3.0 )"
diff --git a/dev-ruby/rspec-collection_matchers/rspec-collection_matchers-1.2.0.ebuild b/dev-ruby/rspec-collection_matchers/rspec-collection_matchers-1.2.0.ebuild
new file mode 100644
index 000000000000..c06fd5801fd6
--- /dev/null
+++ b/dev-ruby/rspec-collection_matchers/rspec-collection_matchers-1.2.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
+HOMEPAGE="https://github.com/rspec/rspec-collection_matchers"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="amd64 ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/rspec-expectations-3.0.0"
+
+ruby_add_bdepend "test? ( >=dev-ruby/activemodel-3.0 )"
diff --git a/dev-ruby/rspec-collection_matchers/rspec-collection_matchers-1.2.1.ebuild b/dev-ruby/rspec-collection_matchers/rspec-collection_matchers-1.2.1.ebuild
new file mode 100644
index 000000000000..bbf149011430
--- /dev/null
+++ b/dev-ruby/rspec-collection_matchers/rspec-collection_matchers-1.2.1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
+HOMEPAGE="https://github.com/rspec/rspec-collection_matchers"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/rspec-expectations-3.0.0"
+
+ruby_add_bdepend "test? ( >=dev-ruby/activemodel-3.0 )"
diff --git a/dev-ruby/rspec-core/Manifest b/dev-ruby/rspec-core/Manifest
index fd0a13129bd7..4f88efb198e9 100644
--- a/dev-ruby/rspec-core/Manifest
+++ b/dev-ruby/rspec-core/Manifest
@@ -1,3 +1,3 @@
-DIST rspec-core-2.99.2-git.tgz 212935 BLAKE2B 37195012f79aca3a1959f9143e2f5cbab63230ab07ea97928d6f66face8d07ab54d87f19535f5f235c441b2da6dec17ef2a889e9ccd7e83d987086e24afd1b82 SHA512 e13bc3384fd85c367481a8651c14be4a412cba5f58e12a8f4ab14b5d2768a7b92191b81e000e7dbf6a28275b41044d8b3eb70a04e4b30b5bf88db98cbec4cc44
-DIST rspec-core-3.7.1-git.tgz 376819 BLAKE2B 6747ffd8f2d426718376b51356d8838a7db0d0246ee619e8edef30bd9f7aeeb80bd0488e4fc73b0a00d119074c35055f6b9d0cbbe6160ae78d0727ce9848a710 SHA512 1561d044281c1b8b97cc89033ad991548fa74abbc5f20d3951d3f3de754c581a027f9ccb2bd0107c05e744d3b2804555cf4cf207e72adf365b28fc7ce052dab8
-DIST rspec-core-3.8.2-git.tgz 387788 BLAKE2B e6cf93f5cef70f53039b6c22fc875cff58eaff4c0c7d4e75d23dedfbe16081980c6fe575d3082dbe6ed9edc8e81f0cbb9e29618da78af40a94c517a859f9d793 SHA512 2fe88ee3d66ecf134562dfa7b1001f23a1a750640c4f65cdec64d85dd735e0fde9d91479286f8f9c38064746813f41632d12d21b3926724ccd7c9ded50d2a7c8
+DIST rspec-core-3.12.2-git.tgz 409039 BLAKE2B 087b08b6a5231a050d89dc8ec1648509b47078b54c05e5effc02cfcdd0f4cae9fa85f7dc02d643a6e81eb9e4c1dca54d6f4e0b0f79a5d91072c1934fddac9169 SHA512 6ecd39355a5060dbf820b89f2f5958b7e75a185e003036cb0ceb8dd6021d79fa14495a300acdc019b55e174bf8a6be42022bfeb0f22a35c461c0f81cd1a742fd
+DIST rspec-core-3.12.3-git.tgz 409316 BLAKE2B 7d7ab38346895499403ff5ce7770f7605ebefa9ffcdb3feee4a01df27731fea3d98f22481a242f3799ff104c040312cbb7794b947b6f95ba69e8b571971e056b SHA512 d2e6ee6638dacc629e6f772840e2d384e07408e2d459dbd8c68404398df466afad9df1929b6a4e23ca10beab22b7f24efa725806bb9a6dd855adc5ad3eb17c4e
+DIST rspec-core-3.13.0-git.tgz 412734 BLAKE2B a3808e96fa58250f606aab757d0b09dc8bd06c9cc7ce375b5ffb97f4a0fbde456f4d3b3f190b1f70393ae6765c2f29dbd7876c92d9e19318460b8956772f04bd SHA512 4d84384c8a8d22b72d1cdab40f1fe43dec7a5c0dd1ab2ce11739e1a52510c6deea6417130bf100d582cae7293aabee6217f21cd80d4b92f976119bba465650bb
diff --git a/dev-ruby/rspec-core/files/rspec-core-3.8.0-ruby26.patch b/dev-ruby/rspec-core/files/rspec-core-3.8.0-ruby26.patch
deleted file mode 100644
index 7c4bc9f7e50d..000000000000
--- a/dev-ruby/rspec-core/files/rspec-core-3.8.0-ruby26.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From 5e6171ee7dadd520991153009eb01d7be3c82e7e Mon Sep 17 00:00:00 2001
-From: "Keiji, Yoshimi" <walf443@gmail.com>
-Date: Mon, 10 Dec 2018 22:40:16 +0900
-Subject: [PATCH] Fixed warnings: lib/rspec/core/metadata.rb:172: warning:
- Object#=~ is deprecated; it always returns nil (#2582)
-
----
- lib/rspec/core/metadata.rb | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/rspec/core/metadata.rb b/lib/rspec/core/metadata.rb
-index 094a7a3b3..c68627ac5 100644
---- a/lib/rspec/core/metadata.rb
-+++ b/lib/rspec/core/metadata.rb
-@@ -169,7 +169,7 @@ def file_path_and_line_number_from(backtrace)
- end
-
- def description_separator(parent_part, child_part)
-- if parent_part.is_a?(Module) && child_part =~ /^(#|::|\.)/
-+ if parent_part.is_a?(Module) && /^(?:#|::|\.)/.match(child_part.to_s)
- ''.freeze
- else
- ' '.freeze
diff --git a/dev-ruby/rspec-core/metadata.xml b/dev-ruby/rspec-core/metadata.xml
index fdbde4a837df..04a043685ef5 100644
--- a/dev-ruby/rspec-core/metadata.xml
+++ b/dev-ruby/rspec-core/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rspec-core/rspec-core-2.99.2-r2.ebuild b/dev-ruby/rspec-core/rspec-core-2.99.2-r2.ebuild
deleted file mode 100644
index 3d8d64036b5e..000000000000
--- a/dev-ruby/rspec-core/rspec-core-2.99.2-r2.ebuild
+++ /dev/null
@@ -1,106 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-# Also install this custom path since internal paths depend on it.
-RUBY_FAKEGEM_EXTRAINSTALL="exe"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_GEMSPEC="rspec-core.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
-HOMEPAGE="https://github.com/rspec/rspec-core"
-SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? (
- >=dev-ruby/nokogiri-1.5.2
- dev-ruby/syntax
- >=dev-ruby/zentest-4.6.2
- >=dev-ruby/rspec-expectations-2.14.0:2
- >=dev-ruby/rspec-mocks-2.99.0:2
- dev-ruby/rspec:2
- )"
-
-all_ruby_prepare() {
- # Don't set up bundler: it doesn't understand our setup.
- sed -i -e '/[Bb]undler/d' Rakefile || die
-
- # Avoid dependency on cucumber since we can't run the features anyway.
- sed -i -e '/[Cc]ucumber/ s:^:#:' Rakefile || die
-
- # Duplicate exe also in bin. We can't change it since internal stuff
- # also depends on this and fixing that is going to be fragile. This
- # way we can at least install proper bin scripts.
- cp -R exe bin || die
-
- # Avoid unneeded dependency on git.
- sed -i -e '/git ls-files/ s:^:#:' rspec-core.gemspec || die
-
- # Avoid aruba dependency so that we don't end up in dependency hell.
- sed -i -e '/aruba/ s:^:#:' -e '/Aruba/,/}/ s:^:#:' spec/spec_helper.rb || die
- rm spec/command_line/order_spec.rb || die
-
- # Avoid testing issues with rspec 3 installed
- sed -i -e '2igem "rspec", "~> 2.0"' bin/rspec || die
-
- # Remove minor functionality to remain compatible with rake 12
- sed -i -e '/last_comment/ s:^:#:' lib/rspec/core/rake_task.rb || die
-}
-
-each_ruby_prepare() {
- sed -i -e 's:ruby -e:'${RUBY}' -e:' spec/rspec/core_spec.rb || die
-
- case ${RUBY} in
- *ruby23)
- sed -i -e 's/SAFE = 3/SAFE = 1/' spec/support/helper_methods.rb || die
- ;;
- *ruby24)
- sed -i -e 's/SAFE = 3/SAFE = 1/' spec/support/helper_methods.rb || die
- sed -i -e 's/Fixnum: 4/Integer: 4/' spec/rspec/core/memoized_helpers_spec.rb || die
- sed -i -e '/warns when HOME env var is not set/,/^ end/ s:^:#:' spec/rspec/core/configuration_options_spec.rb || die
- ;;
- *ruby25)
- sed -i -e 's/SAFE = 3/SAFE = 1/' spec/support/helper_methods.rb || die
- sed -i -e 's/Fixnum: 4/Integer: 4/' spec/rspec/core/memoized_helpers_spec.rb || die
- sed -i -e '/warns when HOME env var is not set/,/^ end/ s:^:#:' spec/rspec/core/configuration_options_spec.rb || die
- sed -i -e '/with mathn loaded/,/^ end/ s:^:#:' spec/rspec/core/formatters/html_formatter_spec.rb || die
- sed -i -e '/with mathn loaded/,/^ end/ s:^:#:' spec/rspec/core/formatters/helpers_spec.rb || die
- sed -i -e '/is still a private method/,/end/ s:^:#:' spec/rspec/core/memoized_helpers_spec.rb || die
- sed -i -e '/leaves a raised exception unmodified/,/^ end/ s:^:#:' spec/rspec/core/example_spec.rb || die
- ;;
- *ruby26)
- sed -i -e 's/SAFE = 3/SAFE = 0/' spec/support/helper_methods.rb || die
- sed -i -e 's/Fixnum: 4/Integer: 4/' spec/rspec/core/memoized_helpers_spec.rb || die
- sed -i -e '/warns when HOME env var is not set/,/^ end/ s:^:#:' spec/rspec/core/configuration_options_spec.rb || die
- sed -i -e '/with mathn loaded/,/^ end/ s:^:#:' spec/rspec/core/formatters/html_formatter_spec.rb || die
- sed -i -e '/with mathn loaded/,/^ end/ s:^:#:' spec/rspec/core/formatters/helpers_spec.rb || die
- sed -i -e '/is still a private method/,/end/ s:^:#:' spec/rspec/core/memoized_helpers_spec.rb || die
- sed -i -e '/leaves a raised exception unmodified/,/^ end/ s:^:#:' spec/rspec/core/example_spec.rb || die
- ;;
- esac
-}
-
-each_ruby_test() {
- PATH="${S}/bin:${PATH}" RUBYLIB="${S}/lib" ${RUBY} -Ilib bin/rspec spec || die "Tests failed."
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- ruby_fakegem_binwrapper rspec /usr/bin/rspec-2 'gem "rspec", "~>2.0"'
-}
diff --git a/dev-ruby/rspec-core/rspec-core-3.12.2.ebuild b/dev-ruby/rspec-core/rspec-core-3.12.2.ebuild
new file mode 100644
index 000000000000..2f60929f76dc
--- /dev/null
+++ b/dev-ruby/rspec-core/rspec-core-3.12.2.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+# Also install this custom path since internal paths depend on it.
+RUBY_FAKEGEM_EXTRAINSTALL="exe"
+
+RUBY_FAKEGEM_GEMSPEC="rspec-core.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
+HOMEPAGE="https://github.com/rspec/rspec-core"
+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 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="highlight"
+
+SUBVERSION="$(ver_cut 1-2)"
+
+DEPEND+="test? ( dev-vcs/git )"
+
+ruby_add_rdepend "
+ =dev-ruby/rspec-support-${SUBVERSION}*
+ highlight? ( >=dev-ruby/coderay-1.1.1 )
+"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/nokogiri-1.5.2
+ >=dev-ruby/coderay-1.1.1
+ dev-ruby/syntax
+ >=dev-ruby/thread_order-1.1.0
+ >=dev-ruby/rspec-expectations-3.8.0:3
+ >=dev-ruby/rspec-mocks-2.99.0:3
+ >=dev-ruby/rspec-support-3.9.1:3
+ )"
+
+all_ruby_prepare() {
+ # Don't set up bundler: it doesn't understand our setup.
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+
+ # Avoid dependency on cucumber since we can't run the features anyway.
+ sed -i -e '/[Cc]ucumber/ s:^:#:' Rakefile || die
+
+ # Duplicate exe also in bin. We can't change it since internal stuff
+ # also depends on this and fixing that is going to be fragile. This
+ # way we can at least install proper bin scripts.
+ cp -R exe bin || die
+
+ # Avoid unneeded dependency on git.
+ sed -i -e 's/git ls-files --/find/' rspec-core.gemspec || die
+
+ # Avoid aruba dependency so that we don't end up in dependency hell.
+ sed -i -e '/ArubaLoader/,/^end/ s:^:#:' -e '/Aruba/ s:^:#:' spec/spec_helper.rb || die
+ rm -f spec/support/aruba_support.rb || die
+ rm -f spec/integration/{bisect_runners,failed_line_detection,filtering,order,persistence_failures,suite_hooks_errors}_spec.rb || die
+ rm -f spec/integration/{spec_file_load_errors,output_stream,fail_if_no_examples}_spec.rb || die
+
+ # Avoid a spec failing due to path issues
+ sed -i -e '/does not load files in the default path when run by ruby/,/end/ s:^:#:' \
+ spec/rspec/core/configuration_spec.rb || die
+
+ # Avoid a spec that depends on dev-ruby/rspec to lessen circular
+ # dependencies, bug 662328
+ sed -e '/loads mocks and expectations when the constants are referenced/askip "gentoo: bug 662328"' \
+ -i spec/rspec/core_spec.rb || die
+
+ # Avoid a spec depending on specifics on local networks
+ # This fails when localhost resolves to ::1 which may be a
+ # ruby regression in the drb/acl code.
+ rm -f spec/rspec/core/bisect/server_spec.rb || die
+
+ # Avoid old regression check (already fixed upstream)
+ sed -i -e '/uses only one thread local variable/askip "old safety check"' spec/rspec/core_spec.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby -e:'${RUBY}' -e:' spec/rspec/core_spec.rb || die
+}
+
+each_ruby_test() {
+ PATH="${S}/bin:${PATH}" RUBYLIB="${S}/lib" ${RUBY} -Ilib bin/rspec spec || die "Tests failed."
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ ruby_fakegem_binwrapper rspec /usr/bin/rspec-3 'gem "rspec", "~>3.0"'
+}
diff --git a/dev-ruby/rspec-core/rspec-core-3.12.3.ebuild b/dev-ruby/rspec-core/rspec-core-3.12.3.ebuild
new file mode 100644
index 000000000000..13e66548c64d
--- /dev/null
+++ b/dev-ruby/rspec-core/rspec-core-3.12.3.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+# Also install this custom path since internal paths depend on it.
+RUBY_FAKEGEM_EXTRAINSTALL="exe"
+
+RUBY_FAKEGEM_GEMSPEC="rspec-core.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
+HOMEPAGE="https://github.com/rspec/rspec-core"
+SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="highlight test"
+
+SUBVERSION="$(ver_cut 1-2)"
+
+DEPEND+="test? ( dev-vcs/git )"
+
+ruby_add_rdepend "
+ =dev-ruby/rspec-support-${SUBVERSION}*
+ highlight? ( >=dev-ruby/coderay-1.1.1 )
+"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/nokogiri-1.5.2
+ >=dev-ruby/coderay-1.1.1
+ dev-ruby/syntax
+ >=dev-ruby/thread_order-1.1.0
+ >=dev-ruby/rspec-expectations-3.8.0:3
+ >=dev-ruby/rspec-mocks-2.99.0:3
+ >=dev-ruby/rspec-support-3.9.1:3
+ )"
+
+all_ruby_prepare() {
+ # Don't set up bundler: it doesn't understand our setup.
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+
+ # Avoid dependency on cucumber since we can't run the features anyway.
+ sed -i -e '/[Cc]ucumber/ s:^:#:' Rakefile || die
+
+ # Duplicate exe also in bin. We can't change it since internal stuff
+ # also depends on this and fixing that is going to be fragile. This
+ # way we can at least install proper bin scripts.
+ cp -R exe bin || die
+
+ # Avoid unneeded dependency on git.
+ sed -i -e 's/git ls-files --/find/' rspec-core.gemspec || die
+
+ # Avoid aruba dependency so that we don't end up in dependency hell.
+ sed -i -e '/ArubaLoader/,/^end/ s:^:#:' -e '/Aruba/ s:^:#:' spec/spec_helper.rb || die
+ rm -f spec/support/aruba_support.rb || die
+ rm -f spec/integration/{bisect_runners,failed_line_detection,filtering,order,persistence_failures,suite_hooks_errors}_spec.rb || die
+ rm -f spec/integration/{spec_file_load_errors,output_stream,fail_if_no_examples}_spec.rb || die
+
+ # Avoid a spec failing due to path issues
+ sed -i -e '/does not load files in the default path when run by ruby/,/end/ s:^:#:' \
+ spec/rspec/core/configuration_spec.rb || die
+
+ # Avoid a spec that depends on dev-ruby/rspec to lessen circular
+ # dependencies, bug 662328
+ sed -e '/loads mocks and expectations when the constants are referenced/askip "gentoo: bug 662328"' \
+ -i spec/rspec/core_spec.rb || die
+
+ # Avoid a spec depending on specifics on local networks
+ # This fails when localhost resolves to ::1 which may be a
+ # ruby regression in the drb/acl code.
+ rm -f spec/rspec/core/bisect/server_spec.rb || die
+
+ # Avoid old regression check (already fixed upstream)
+ sed -i -e '/uses only one thread local variable/askip "old safety check"' spec/rspec/core_spec.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby -e:'${RUBY}' -e:' spec/rspec/core_spec.rb || die
+}
+
+each_ruby_test() {
+ PATH="${S}/bin:${PATH}" RUBYLIB="${S}/lib" ${RUBY} -Ilib bin/rspec spec || die "Tests failed."
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ ruby_fakegem_binwrapper rspec /usr/bin/rspec-3 'gem "rspec", "~>3.0"'
+}
diff --git a/dev-ruby/rspec-core/rspec-core-3.13.0.ebuild b/dev-ruby/rspec-core/rspec-core-3.13.0.ebuild
new file mode 100644
index 000000000000..13e66548c64d
--- /dev/null
+++ b/dev-ruby/rspec-core/rspec-core-3.13.0.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+# Also install this custom path since internal paths depend on it.
+RUBY_FAKEGEM_EXTRAINSTALL="exe"
+
+RUBY_FAKEGEM_GEMSPEC="rspec-core.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
+HOMEPAGE="https://github.com/rspec/rspec-core"
+SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="highlight test"
+
+SUBVERSION="$(ver_cut 1-2)"
+
+DEPEND+="test? ( dev-vcs/git )"
+
+ruby_add_rdepend "
+ =dev-ruby/rspec-support-${SUBVERSION}*
+ highlight? ( >=dev-ruby/coderay-1.1.1 )
+"
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/nokogiri-1.5.2
+ >=dev-ruby/coderay-1.1.1
+ dev-ruby/syntax
+ >=dev-ruby/thread_order-1.1.0
+ >=dev-ruby/rspec-expectations-3.8.0:3
+ >=dev-ruby/rspec-mocks-2.99.0:3
+ >=dev-ruby/rspec-support-3.9.1:3
+ )"
+
+all_ruby_prepare() {
+ # Don't set up bundler: it doesn't understand our setup.
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+
+ # Avoid dependency on cucumber since we can't run the features anyway.
+ sed -i -e '/[Cc]ucumber/ s:^:#:' Rakefile || die
+
+ # Duplicate exe also in bin. We can't change it since internal stuff
+ # also depends on this and fixing that is going to be fragile. This
+ # way we can at least install proper bin scripts.
+ cp -R exe bin || die
+
+ # Avoid unneeded dependency on git.
+ sed -i -e 's/git ls-files --/find/' rspec-core.gemspec || die
+
+ # Avoid aruba dependency so that we don't end up in dependency hell.
+ sed -i -e '/ArubaLoader/,/^end/ s:^:#:' -e '/Aruba/ s:^:#:' spec/spec_helper.rb || die
+ rm -f spec/support/aruba_support.rb || die
+ rm -f spec/integration/{bisect_runners,failed_line_detection,filtering,order,persistence_failures,suite_hooks_errors}_spec.rb || die
+ rm -f spec/integration/{spec_file_load_errors,output_stream,fail_if_no_examples}_spec.rb || die
+
+ # Avoid a spec failing due to path issues
+ sed -i -e '/does not load files in the default path when run by ruby/,/end/ s:^:#:' \
+ spec/rspec/core/configuration_spec.rb || die
+
+ # Avoid a spec that depends on dev-ruby/rspec to lessen circular
+ # dependencies, bug 662328
+ sed -e '/loads mocks and expectations when the constants are referenced/askip "gentoo: bug 662328"' \
+ -i spec/rspec/core_spec.rb || die
+
+ # Avoid a spec depending on specifics on local networks
+ # This fails when localhost resolves to ::1 which may be a
+ # ruby regression in the drb/acl code.
+ rm -f spec/rspec/core/bisect/server_spec.rb || die
+
+ # Avoid old regression check (already fixed upstream)
+ sed -i -e '/uses only one thread local variable/askip "old safety check"' spec/rspec/core_spec.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e 's:ruby -e:'${RUBY}' -e:' spec/rspec/core_spec.rb || die
+}
+
+each_ruby_test() {
+ PATH="${S}/bin:${PATH}" RUBYLIB="${S}/lib" ${RUBY} -Ilib bin/rspec spec || die "Tests failed."
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ ruby_fakegem_binwrapper rspec /usr/bin/rspec-3 'gem "rspec", "~>3.0"'
+}
diff --git a/dev-ruby/rspec-core/rspec-core-3.7.1.ebuild b/dev-ruby/rspec-core/rspec-core-3.7.1.ebuild
deleted file mode 100644
index dcaf66c0833c..000000000000
--- a/dev-ruby/rspec-core/rspec-core-3.7.1.ebuild
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-# Also install this custom path since internal paths depend on it.
-RUBY_FAKEGEM_EXTRAINSTALL="exe"
-
-RUBY_FAKEGEM_GEMSPEC="rspec-core.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
-HOMEPAGE="https://github.com/rspec/rspec-core"
-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 ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="highlight"
-
-SUBVERSION="$(get_version_component_range 1-2)"
-
-ruby_add_rdepend "
- =dev-ruby/rspec-support-${SUBVERSION}*
- !!<dev-ruby/rspec-core-2.14.8-r4
- highlight? ( >=dev-ruby/coderay-1.0.9 )
-"
-
-ruby_add_bdepend "test? (
- >=dev-ruby/nokogiri-1.5.2
- >=dev-ruby/coderay-1.0.9
- dev-ruby/syntax
- >=dev-ruby/thread_order-1.1.0
- >=dev-ruby/rspec-expectations-3.3.0:3
- >=dev-ruby/rspec-mocks-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
-
- # Avoid dependency on cucumber since we can't run the features anyway.
- sed -i -e '/[Cc]ucumber/ s:^:#:' Rakefile || die
-
- # Duplicate exe also in bin. We can't change it since internal stuff
- # also depends on this and fixing that is going to be fragile. This
- # way we can at least install proper bin scripts.
- cp -R exe bin || die
-
- # Avoid unneeded dependency on git.
- sed -i -e 's/git ls-files --/find/' rspec-core.gemspec || die
-
- # Avoid aruba dependency so that we don't end up in dependency hell.
- sed -i -e '/ArubaLoader/,/^end/ s:^:#:' -e '/Aruba/ s:^:#:' spec/spec_helper.rb || die
- rm -f spec/support/aruba_support.rb || die
- rm -f spec/integration/{failed_line_detection,filtering,order,persistence_failures,suite_hooks_errors}_spec.rb || die
- rm -f spec/integration/{spec_file_load_errors,output_stream,fail_if_no_examples}_spec.rb || die
-
- # Avoid a spec failing due to path issues
- sed -i -e '/does not load files in the default path when run by ruby/,/end/ s:^:#:' \
- spec/rspec/core/configuration_spec.rb || die
-
- # Work around coderay incompatibilities
- sed -i -e '/be_highlighted/,/end/ s/32/33/' \
- -e '/highlights core RSpec keyword-like methods/,/^ end/ s:^:#:' \
- spec/rspec/core/formatters/syntax_highlighter_spec.rb || die
-
- # Avoid a spec that depens on dev-ruby/rspec to lessen circular
- # dependencies, bug 662328
- sed -i -e '/loads mocks and expectations when the constants are referenced/askip "gentoo: bug 662328"' spec/rspec/core_spec.rb || die
-}
-
-each_ruby_prepare() {
- sed -i -e 's:ruby -e:'${RUBY}' -e:' spec/rspec/core_spec.rb || die
-
- # case ${RUBY} in
- # *ruby22)
- # # The rubygems version bundled with ruby 2.2 causes warnings.
- # sed -i -e '/a library that issues no warnings when loaded/,/^ end/ s:^:#:' spec/rspec/core_spec.rb || die
- # ;;
- # esac
-}
-
-each_ruby_test() {
- PATH="${S}/bin:${PATH}" RUBYLIB="${S}/lib" ${RUBY} -Ilib bin/rspec spec || die "Tests failed."
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- ruby_fakegem_binwrapper rspec /usr/bin/rspec-3 'gem "rspec", "~>3.0"'
-}
diff --git a/dev-ruby/rspec-core/rspec-core-3.8.2.ebuild b/dev-ruby/rspec-core/rspec-core-3.8.2.ebuild
deleted file mode 100644
index d32e455db9b1..000000000000
--- a/dev-ruby/rspec-core/rspec-core-3.8.2.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-# Also install this custom path since internal paths depend on it.
-RUBY_FAKEGEM_EXTRAINSTALL="exe"
-
-RUBY_FAKEGEM_GEMSPEC="rspec-core.gemspec"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
-HOMEPAGE="https://github.com/rspec/rspec-core"
-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 ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="highlight"
-
-SUBVERSION="$(ver_cut 1-2)"
-
-ruby_add_rdepend "
- =dev-ruby/rspec-support-${SUBVERSION}*
- !!<dev-ruby/rspec-core-2.14.8-r4
- highlight? ( >=dev-ruby/coderay-1.1.1 )
-"
-
-ruby_add_bdepend "test? (
- >=dev-ruby/nokogiri-1.5.2
- >=dev-ruby/coderay-1.1.1
- dev-ruby/syntax
- >=dev-ruby/thread_order-1.1.0
- >=dev-ruby/rspec-expectations-3.8.0:3
- >=dev-ruby/rspec-mocks-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
-
- # Avoid dependency on cucumber since we can't run the features anyway.
- sed -i -e '/[Cc]ucumber/ s:^:#:' Rakefile || die
-
- # Duplicate exe also in bin. We can't change it since internal stuff
- # also depends on this and fixing that is going to be fragile. This
- # way we can at least install proper bin scripts.
- cp -R exe bin || die
-
- # Avoid unneeded dependency on git.
- sed -i -e 's/git ls-files --/find/' rspec-core.gemspec || die
-
- # Avoid aruba dependency so that we don't end up in dependency hell.
- sed -i -e '/ArubaLoader/,/^end/ s:^:#:' -e '/Aruba/ s:^:#:' spec/spec_helper.rb || die
- rm -f spec/support/aruba_support.rb || die
- rm -f spec/integration/{bisect_runners,failed_line_detection,filtering,order,persistence_failures,suite_hooks_errors}_spec.rb || die
- rm -f spec/integration/{spec_file_load_errors,output_stream,fail_if_no_examples}_spec.rb || die
-
- # Avoid a spec failing due to path issues
- sed -i -e '/does not load files in the default path when run by ruby/,/end/ s:^:#:' \
- spec/rspec/core/configuration_spec.rb || die
-
- # Avoid a spec that depends on dev-ruby/rspec to lessen circular
- # dependencies, bug 662328
- sed -i -e '/loads mocks and expectations when the constants are referenced/askip "gentoo: bug 662328"' spec/rspec/core_spec.rb || die
-
- # Avoid a spec depending on specifics on local networks
- # This fails when localhost resolves to ::1 which may be a
- # ruby regression in the drb/acl code.
- rm -f spec/rspec/core/bisect/server_spec.rb || die
-}
-
-each_ruby_prepare() {
- sed -i -e 's:ruby -e:'${RUBY}' -e:' spec/rspec/core_spec.rb || die
-}
-
-each_ruby_test() {
- PATH="${S}/bin:${PATH}" RUBYLIB="${S}/lib" ${RUBY} -Ilib bin/rspec spec || die "Tests failed."
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- ruby_fakegem_binwrapper rspec /usr/bin/rspec-3 'gem "rspec", "~>3.0"'
-}
diff --git a/dev-ruby/rspec-expectations/Manifest b/dev-ruby/rspec-expectations/Manifest
index 27fc7a6593e2..8b3f0c3b82f1 100644
--- a/dev-ruby/rspec-expectations/Manifest
+++ b/dev-ruby/rspec-expectations/Manifest
@@ -1,3 +1,3 @@
-DIST rspec-expectations-2.99.2-git.tgz 106884 BLAKE2B 5b31c8681306d5c688f62fc3fc6adf7be6cabad6df6fd16195c71787d73495924233d793633fa041a94d796f63c9ff97c58e6f4a75bdc09dfbe56e770bb6a5c9 SHA512 6042cafe225b2b16df458c7bf69e1694b637afcac6f6195e35a0be199432610457ccaa3e7e4bd114b27a7a6c3d530d94f4c0603c65f469cbadc55bd3f75b6f3a
-DIST rspec-expectations-3.7.0-git.tgz 194071 BLAKE2B 67c8db15c43cc1141b19c6eb99390eaaf2535ec03f0fdc7b05576daa463d252f56ff251d40f5771726ee6451d57eef206c893f2593b01d413b5d96cdf21f0daf SHA512 bdd3222089299e9bfdd6f17a2b8af81d5e695290a3ce976630d586d51ff2df5baf76a3887b8adb31294bd6623ba85f8c2a4a31ac520046515aeeb81fa3a1bd5a
-DIST rspec-expectations-3.8.4-git.tgz 200149 BLAKE2B 45fe4cdc4b032bb773ef0e7d3e9b75e6d14a6e8c1850ad6fd84991d85a61860730caa9f191aa9d1ce4e21c85dadd2c52bb69bd0a1454f5ab918dc1e563fc54f1 SHA512 0ecb16f11ccf19c02c40ce587f33846fb2241f1663dd87f012b9b782338c213362dac624c434dee6e00ad2cc7ec4a1cd0af7f2edf1a8e9ebb0a0dfb31cd244d8
+DIST rspec-expectations-3.12.3-git.tgz 218754 BLAKE2B be6c6c50115bec39758f792030363de88abf5affa8a4df1161a386fee3dfb620542fca6225779e76aa2e72d1f782b65ef9db393be061e9ed47c72d96f47cf981 SHA512 37f85555e0ba16b1a76f8d59571312febfc802eab1a27ff788d57bb34f410867e753dcfee83ca3d70367b77ad9f823341c653901c8ff02c75df6863937c71315
+DIST rspec-expectations-3.12.4-git.tgz 219529 BLAKE2B 8858b586cb2b50f06c93530304ca554ddff9f3fe7078e1e2f263ab352e8315d3529bd8028b835d8b83d49bc06345a0723d2fbf31849552ef53567f2162eb503c SHA512 9317d91fb5fb02c1319010517df6f28bc117cccb3b8fd4226bd1adde00fbf13d1505be89cd036bd1849b9a142e24ec966afa536144e384700f8d11e640e2eaf9
+DIST rspec-expectations-3.13.0-git.tgz 220792 BLAKE2B 526282d357f47d82163b8a44f5fffc0ce24f0fef0d0f5c5f33da93c91680ae704a065c4903a8b7eb3b619d3910314ff137d1c7b636207c0a3383ed0520e2ffaa SHA512 9e1e502d12704fd7573a57b7f01cf4ffe97e2eefe83dc3144842f460165304dc234a1b1946147f2cbcae105d755c8b42b25aec815f9af0c67844baf858c0a6c7
diff --git a/dev-ruby/rspec-expectations/files/rspec-expectations-3.7.0-ruby25.patch b/dev-ruby/rspec-expectations/files/rspec-expectations-3.7.0-ruby25.patch
deleted file mode 100644
index feeddb0eff1b..000000000000
--- a/dev-ruby/rspec-expectations/files/rspec-expectations-3.7.0-ruby25.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 5999ad46df4782a3136c4bad0c2353daede2cbbd Mon Sep 17 00:00:00 2001
-From: Myron Marston <myron.marston@gmail.com>
-Date: Sat, 30 Dec 2017 17:36:55 -0800
-Subject: [PATCH] Disable Ruby 2.5 feature to avoid test failures on 2.5.
-
----
- spec/rspec/expectations/failure_aggregator_spec.rb | 13 +++++++++++++
- 1 file changed, 13 insertions(+)
-
-diff --git a/spec/rspec/expectations/failure_aggregator_spec.rb b/spec/rspec/expectations/failure_aggregator_spec.rb
-index 6628aa75..40a1ae35 100644
---- a/spec/rspec/expectations/failure_aggregator_spec.rb
-+++ b/spec/rspec/expectations/failure_aggregator_spec.rb
-@@ -216,6 +216,19 @@ def expect_error_included_in_aggregated_failure(error)
- end
-
- context "when an expectation failure happens in another thread" do
-+ # On Ruby 2.5+, the new `report_on_exception` causes the errors in the threads
-+ # to print warnings, which our rspec-support test harness converts into a test
-+ # failure since we want to enforce warnings-free code. To prevent the warning,
-+ # we need to disable the setting here.
-+ if Thread.respond_to?(:report_on_exception)
-+ around do |example|
-+ orig = Thread.report_on_exception
-+ Thread.report_on_exception = false
-+ example.run
-+ Thread.report_on_exception = orig
-+ end
-+ end
-+
- it "includes the failure in the failures array if there are other failures" do
- expect {
- aggregate_failures do
diff --git a/dev-ruby/rspec-expectations/metadata.xml b/dev-ruby/rspec-expectations/metadata.xml
index 9f015a44d664..7b6aebf082d4 100644
--- a/dev-ruby/rspec-expectations/metadata.xml
+++ b/dev-ruby/rspec-expectations/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rspec-expectations/rspec-expectations-2.99.2.ebuild b/dev-ruby/rspec-expectations/rspec-expectations-2.99.2.ebuild
deleted file mode 100644
index 91635a06d902..000000000000
--- a/dev-ruby/rspec-expectations/rspec-expectations-2.99.2.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_TASK_DOC=""
-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="http://rspec.rubyforge.org/"
-SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/diff-lcs-1.1.3"
-
-ruby_add_bdepend "test? (
- >=dev-ruby/rspec-core-2.99.0:2
- >=dev-ruby/rspec-mocks-2.14.0:2
- )"
-
-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
-
- # fix up the gemspecs
- sed -i \
- -e '/git ls/d' \
- -e '/add_development_dependency/d' \
- "${RUBY_FAKEGEM_GEMSPEC}" || die
-
- # Avoid a weird, and failing, test testing already installed code.
- sed -e '/has an up-to-date caller_filter file/,/end/ s:^:#:' -i spec/rspec/expectations_spec.rb || die
-}
-
-each_ruby_prepare() {
- case ${RUBY} in
- *ruby24|*ruby25|*ruby26)
- sed -i -e 's/of Fixnum/of Integer/' spec/rspec/expectations/expectation_target_spec.rb spec/rspec/matchers/be_instance_of_spec.rb || die
- ;;
- esac
-}
diff --git a/dev-ruby/rspec-expectations/rspec-expectations-3.12.3.ebuild b/dev-ruby/rspec-expectations/rspec-expectations-3.12.3.ebuild
new file mode 100644
index 000000000000..b51feaceeda1
--- /dev/null
+++ b/dev-ruby/rspec-expectations/rspec-expectations-3.12.3.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="ruby30 ruby31 ruby32 ruby33"
+
+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 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-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
+
+ # Fix minitest deprecation
+ sed -i -e 's/MiniTest/Minitest/' spec/rspec/expectations/minitest_integration_spec.rb || 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-expectations/rspec-expectations-3.12.4.ebuild b/dev-ruby/rspec-expectations/rspec-expectations-3.12.4.ebuild
new file mode 100644
index 000000000000..96e2fb7e5b11
--- /dev/null
+++ b/dev-ruby/rspec-expectations/rspec-expectations-3.12.4.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+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
+
+ # Fix minitest deprecation
+ sed -i -e 's/MiniTest/Minitest/' spec/rspec/expectations/minitest_integration_spec.rb || 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-expectations/rspec-expectations-3.13.0.ebuild b/dev-ruby/rspec-expectations/rspec-expectations-3.13.0.ebuild
new file mode 100644
index 000000000000..96e2fb7e5b11
--- /dev/null
+++ b/dev-ruby/rspec-expectations/rspec-expectations-3.13.0.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+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
+
+ # Fix minitest deprecation
+ sed -i -e 's/MiniTest/Minitest/' spec/rspec/expectations/minitest_integration_spec.rb || 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-expectations/rspec-expectations-3.7.0.ebuild b/dev-ruby/rspec-expectations/rspec-expectations-3.7.0.ebuild
deleted file mode 100644
index f7e06817c865..000000000000
--- a/dev-ruby/rspec-expectations/rspec-expectations-3.7.0.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem versionator
-
-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 ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-SUBVERSION="$(get_version_component_range 1-2)"
-
-PATCHES=( "${FILESDIR}/${P}-ruby25.patch" )
-
-ruby_add_rdepend ">=dev-ruby/diff-lcs-1.2.0 <dev-ruby/diff-lcs-2
- =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-expectations/rspec-expectations-3.8.4.ebuild b/dev-ruby/rspec-expectations/rspec-expectations-3.8.4.ebuild
deleted file mode 100644
index 511285081a90..000000000000
--- a/dev-ruby/rspec-expectations/rspec-expectations-3.8.4.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem eapi7-ver
-
-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 ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-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-2
- =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-files/Manifest b/dev-ruby/rspec-files/Manifest
new file mode 100644
index 000000000000..756ecf8ff710
--- /dev/null
+++ b/dev-ruby/rspec-files/Manifest
@@ -0,0 +1 @@
+DIST rspec-files-1.1.3.tar.gz 6006 BLAKE2B 30f648f1d364532f81ed169a9f1e32d0cd9cd641093f8aad90b3aa4b239ee30d38ef3331136c47787203dceeada25a499bb0b1f42b08dacffb431835dbfa9698 SHA512 c2c79d0b0cef7db64e83e3335a552f437f2e1a12d703936a2d9dc8b8c81ebf69913302d1d5f65e1485fb0295af8b098c8b25ad4c335a7f8f3d31e0f086d46d2d
diff --git a/dev-ruby/rspec-files/metadata.xml b/dev-ruby/rspec-files/metadata.xml
new file mode 100644
index 000000000000..dfae27f7746a
--- /dev/null
+++ b/dev-ruby/rspec-files/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">socketry/rspec-files</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/rspec-files/rspec-files-1.1.3.ebuild b/dev-ruby/rspec-files/rspec-files-1.1.3.ebuild
new file mode 100644
index 000000000000..26bbbd9b8ac3
--- /dev/null
+++ b/dev-ruby/rspec-files/rspec-files-1.1.3.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="RSpec helpers for buffering and detecting file descriptor leaks"
+HOMEPAGE="https://github.com/socketry/rspec-files"
+SRC_URI="https://github.com/socketry/rspec-files/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+
+ruby_add_rdepend "dev-ruby/rspec:3"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid a test dependency on unpackaged covered
+ sed -i -e '/covered/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/rspec-its/Manifest b/dev-ruby/rspec-its/Manifest
index f30f6fbd515f..7dd46040d4ba 100644
--- a/dev-ruby/rspec-its/Manifest
+++ b/dev-ruby/rspec-its/Manifest
@@ -1,2 +1 @@
-DIST rspec-its-1.2.0.gem 12800 BLAKE2B ac9cb1899c2c1c88ab61617bb4fb30fffba572623dede0c6bbecebb12f36d12d7e7aa94ebe584333228d63fe3332ea978a8b8b95489cc7530942d3ec33c12faa SHA512 6b390f92654f8e6482f0da30d4e721ee127f628eb305268e474d4c9fb14fca1d0fb8922cabc9a8c1372976b5a52349c5a5a774e3026f32d8050c5aea2bc9ccae
DIST rspec-its-1.3.0.gem 14336 BLAKE2B 3dabe36bd329ee4bb9134958b1727aec2eb4e15140d3197917bebc69f7a65a7558efea8cd5fdbfa670688fdc4f5db3c6ab5fcf5bf1e5a0995668681442cf1dc0 SHA512 beff75fc84f9879095f02f4515bfd749dded877b8b4d5186423ddd78c6c16d6c5e810ebac80f3500cc7b1d23db119c72780c32888385d21d20672a26499ae94a
diff --git a/dev-ruby/rspec-its/metadata.xml b/dev-ruby/rspec-its/metadata.xml
index 6b588d02ba14..e77fb497e024 100644
--- a/dev-ruby/rspec-its/metadata.xml
+++ b/dev-ruby/rspec-its/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rspec-its/rspec-its-1.2.0-r1.ebuild b/dev-ruby/rspec-its/rspec-its-1.2.0-r1.ebuild
deleted file mode 100644
index 266cad6ecefb..000000000000
--- a/dev-ruby/rspec-its/rspec-its-1.2.0-r1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
-HOMEPAGE="https://github.com/rspec/rspec-its"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~ppc ~ppc64 x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rspec-core-3.0.0 >=dev-ruby/rspec-expectations-3.0.0"
-
-each_ruby_prepare() {
- case ${RUBY} in
- *ruby24|*ruby25|*ruby26)
- sed -i -e 's/Fixnum/Integer/' spec/rspec/its_spec.rb || die
- ;;
- esac
-}
diff --git a/dev-ruby/rspec-its/rspec-its-1.3.0-r1.ebuild b/dev-ruby/rspec-its/rspec-its-1.3.0-r1.ebuild
new file mode 100644
index 000000000000..b74125a2ffbb
--- /dev/null
+++ b/dev-ruby/rspec-its/rspec-its-1.3.0-r1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
+HOMEPAGE="https://github.com/rspec/rspec-its"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/rspec-core-3.0.0 >=dev-ruby/rspec-expectations-3.0.0"
diff --git a/dev-ruby/rspec-its/rspec-its-1.3.0.ebuild b/dev-ruby/rspec-its/rspec-its-1.3.0.ebuild
deleted file mode 100644
index f592d6285a7d..000000000000
--- a/dev-ruby/rspec-its/rspec-its-1.3.0.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
-HOMEPAGE="https://github.com/rspec/rspec-its"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rspec-core-3.0.0 >=dev-ruby/rspec-expectations-3.0.0"
diff --git a/dev-ruby/rspec-json_expectations/Manifest b/dev-ruby/rspec-json_expectations/Manifest
index faa62da97cf6..5baf536e7e0f 100644
--- a/dev-ruby/rspec-json_expectations/Manifest
+++ b/dev-ruby/rspec-json_expectations/Manifest
@@ -1,2 +1 @@
-DIST rspec-json_expectations-2.1.0.gem 14848 BLAKE2B 2c359351ba457297f7d561059183a8e32fa5762dbdc97c8ddb2432acb00c092fcc14a45e8f7625812420b926c4f177afdf4ff124f9b35d15b60fb58861c1f46a SHA512 1b09b959d6ecbc76c13b37fbf89cba381feb00505ce3a5701ad87ef1ed2ee178ea760508af809ac7dc8285c24d86dd7e33a7fb903a7f74472ca59d59f8df0daf
DIST rspec-json_expectations-2.2.0.gem 14848 BLAKE2B c2f77e908eb0f473a5bae0ed49e133ebe71d4c471e2b32a9620f84e3881ca6aa92d188b8aafae8d92ee9111edcf2cc3636598c59e9f92747422f3c43c7e14563 SHA512 90da15c4c02404ac518955d65612fc7db28e8f91a756e5a25d0e5667026113f7a1be69cdc9bc656eeb89ccc7cb41069dd241401a2680f69528fb77d5491f2a83
diff --git a/dev-ruby/rspec-json_expectations/metadata.xml b/dev-ruby/rspec-json_expectations/metadata.xml
index 3d3fa1d37b90..dd690a9fdd6f 100644
--- a/dev-ruby/rspec-json_expectations/metadata.xml
+++ b/dev-ruby/rspec-json_expectations/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rspec-json_expectations/rspec-json_expectations-2.1.0.ebuild b/dev-ruby/rspec-json_expectations/rspec-json_expectations-2.1.0.ebuild
deleted file mode 100644
index e7d2d403f5b2..000000000000
--- a/dev-ruby/rspec-json_expectations/rspec-json_expectations-2.1.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Set of matchers and helpers to allow you test your APIs responses."
-HOMEPAGE="https://github.com/waterlink/rspec-json_expectations"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-util/cucumber )"
-
-all_ruby_prepare() {
- sed -i -e '1irequire "forwardable"' lib/rspec/json_expectations/matchers.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -S cucumber --format progress features || die
-}
diff --git a/dev-ruby/rspec-json_expectations/rspec-json_expectations-2.2.0-r1.ebuild b/dev-ruby/rspec-json_expectations/rspec-json_expectations-2.2.0-r1.ebuild
new file mode 100644
index 000000000000..7e11048e3ef8
--- /dev/null
+++ b/dev-ruby/rspec-json_expectations/rspec-json_expectations-2.2.0-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Set of matchers and helpers to allow you test your APIs responses"
+HOMEPAGE="https://github.com/waterlink/rspec-json_expectations"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="amd64 ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/rspec dev-util/cucumber )"
+
+each_ruby_test() {
+ ${RUBY} -S cucumber --format progress features || die
+}
diff --git a/dev-ruby/rspec-json_expectations/rspec-json_expectations-2.2.0.ebuild b/dev-ruby/rspec-json_expectations/rspec-json_expectations-2.2.0.ebuild
deleted file mode 100644
index fdeb97e9ab4a..000000000000
--- a/dev-ruby/rspec-json_expectations/rspec-json_expectations-2.2.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Set of matchers and helpers to allow you test your APIs responses."
-HOMEPAGE="https://github.com/waterlink/rspec-json_expectations"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-util/cucumber )"
-
-each_ruby_test() {
- ${RUBY} -S cucumber --format progress features || die
-}
diff --git a/dev-ruby/rspec-memory/Manifest b/dev-ruby/rspec-memory/Manifest
new file mode 100644
index 000000000000..e645830dffeb
--- /dev/null
+++ b/dev-ruby/rspec-memory/Manifest
@@ -0,0 +1 @@
+DIST rspec-memory-1.0.4.tar.gz 9329 BLAKE2B e67f8c2a9b788dc606ba31667065910a8dc4e68bf7a6fd0866c75eeba61851d1a1d8f93068bfc8449906120edc22d465733852ba75e6978e7f39131077907c90 SHA512 2d5f5dcd17572e17a37b59c08f1a8e6f23aa5228fea127f3a7d92afc15b54c0b067c697b5817dcbe1b4bc4d3839eccda13928cea23d83c308e57f0d06d9321b1
diff --git a/dev-ruby/rspec-memory/metadata.xml b/dev-ruby/rspec-memory/metadata.xml
new file mode 100644
index 000000000000..87c955dadfb9
--- /dev/null
+++ b/dev-ruby/rspec-memory/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">socketry/rspec-memory</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/rspec-memory/rspec-memory-1.0.4.ebuild b/dev-ruby/rspec-memory/rspec-memory-1.0.4.ebuild
new file mode 100644
index 000000000000..e1be5caded9b
--- /dev/null
+++ b/dev-ruby/rspec-memory/rspec-memory-1.0.4.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="RSpec helpers for checking memory allocations"
+HOMEPAGE="https://github.com/socketry/rspec-memory"
+SRC_URI="https://github.com/socketry/rspec-memory/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/rspec:3"
+
+all_ruby_prepare() {
+ sed -i -E 's/require_relative "(.+)"/require File.expand_path("\1")/g' "${RUBY_FAKEGEM_GEMSPEC}" || die
+
+ # Avoid test dependency on unpackaged covered
+ sed -i -e '/covered/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/rspec-mocks/Manifest b/dev-ruby/rspec-mocks/Manifest
index 49e5bebd8254..f8b1647486ee 100644
--- a/dev-ruby/rspec-mocks/Manifest
+++ b/dev-ruby/rspec-mocks/Manifest
@@ -1,3 +1,3 @@
-DIST rspec-mocks-2.99.2-git.tgz 101731 BLAKE2B 27ae180381d427b642c53c351e7b53602caba4252ddf5393949d940be8474110eb0697901afaaa878cd8d368f081c6644c0fcbce86d9d14b9f93f48c027ae808 SHA512 dd3b9394d56de8d3089db7777cda1e1a5bbdc46486876a99a8a83b602b84ba0320913d8e8dabe5e0367645eb01b943607b93e67d87cc26e380c8db6e048e4e0d
-DIST rspec-mocks-3.7.0-git.tgz 189170 BLAKE2B a0a622ac593660c673cd80b3f3caddd2ac389000f42a7ed1745e1fcfd28d1986e61e83c265d736f3ad0649531973719bc9c5f6ab07e289cb2da89c4482e64184 SHA512 8673726571ccf8a901281e44faeb25ffcb59579dc380138f0557cd9310192cd340081e5e8ad65ae281777727b502cca2f6877134b0fb48f2e0ea40b133002aff
-DIST rspec-mocks-3.8.1-git.tgz 191543 BLAKE2B dae8b22a011a3563eb65d1709006169bf5dcf310749cb858f4ff20c7b82e7675a616fc427136fe5e0edeef1db0b42a1d0af1c5623eed35807e84dc355131c8cc SHA512 ec71c4b815beef315f8db329bd2b0e60cdbb1fa37939c624799c1589d94dd28f74b3d1a4c0b9025bc98a809f80d625315458351fe7dec8291bad20e79beecca8
+DIST rspec-mocks-3.12.6-git.tgz 207213 BLAKE2B 0b8bded9c6a04bb79910784e67f97028b9935b9e20e6934c3d1cccdf7b981b386a8dfb2e5e0c1f58fbbc2006fb68dabb108444b0f284b7f7f3b39bb73cb01cdc SHA512 f11ef99bdef109e3b332e0cc79e0d9c46db906b0c939ec6a89782219cea03e6282fe867212caaf2bf2eb272ed7ae1f4fe059a5626d131141925f731fcda3e91d
+DIST rspec-mocks-3.12.7-git.tgz 208127 BLAKE2B 86ef82c47ae7ef4992c6394718ee29f91fde70967b7f8ba3101c6f0233ab32be22c9e0e69e9041e94b4e5a587e3e936f89a14dbf464c2bdd8f6ce7d827cc5448 SHA512 c168eb653b585a37052870521e88be0723eba1b2f7f373a04557813e75a62c67448577809fbe1c0d04b21311b29c9874ed7509800bc7c05cb618f208066c8eac
+DIST rspec-mocks-3.13.0-git.tgz 208594 BLAKE2B c84b606094f8aba49cb32c07caedccaf4592110b3dbade60990c5bc7e6927576b57acd071ae43171328cb47ab9591aacef341389f3dcd6aa671f69511a5ce54a SHA512 5d7f52ac3594b37a87d377fcd2300fa1811490fff392ed0bbb4a6de471ae5cc627a7f9e7e7c351031558b87f78e3fcc2fff77ba2fffbb838972a9eb28b6c53da
diff --git a/dev-ruby/rspec-mocks/files/rspec-mocks-3.7.0-ruby25-1.patch b/dev-ruby/rspec-mocks/files/rspec-mocks-3.7.0-ruby25-1.patch
deleted file mode 100644
index 6b545ae3cf7a..000000000000
--- a/dev-ruby/rspec-mocks/files/rspec-mocks-3.7.0-ruby25-1.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 871eb31e3bfe50705ca57e754771aa1e0164f12d Mon Sep 17 00:00:00 2001
-From: Myron Marston <myron.marston@gmail.com>
-Date: Sat, 30 Dec 2017 17:45:43 -0800
-Subject: [PATCH] Skip spec that does not apply to Ruby 2.5.
-
-Ruby 2.5 has removed the ability to access top-level constants
-via a confusing nested form (e.g. `MyClass::Hash`), so we no
-longer need this spec there.
-
-For #1192.
----
- spec/rspec/mocks/mutate_const_spec.rb | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/spec/rspec/mocks/mutate_const_spec.rb b/spec/rspec/mocks/mutate_const_spec.rb
-index fe8d4128..9d80dd73 100644
---- a/spec/rspec/mocks/mutate_const_spec.rb
-+++ b/spec/rspec/mocks/mutate_const_spec.rb
-@@ -170,7 +170,7 @@ def change_const_value_to(value)
- expect(::Hash).to equal(top_level_hash)
- end
-
-- it 'does not affect the ability to access the top-level constant from nested contexts', :silence_warnings do
-+ it 'does not affect the ability to access the top-level constant from nested contexts', :silence_warnings, :if => RUBY_VERSION < '2.5' do
- top_level_hash = ::Hash
-
- hide_const("TestClass::Hash")
diff --git a/dev-ruby/rspec-mocks/files/rspec-mocks-3.7.0-ruby25-2.patch b/dev-ruby/rspec-mocks/files/rspec-mocks-3.7.0-ruby25-2.patch
deleted file mode 100644
index 3ac448938416..000000000000
--- a/dev-ruby/rspec-mocks/files/rspec-mocks-3.7.0-ruby25-2.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 783923d6879a2f9df9fee8ef24cecca6ac21136e Mon Sep 17 00:00:00 2001
-From: Myron Marston <myron.marston@gmail.com>
-Date: Sat, 30 Dec 2017 23:35:27 -0800
-Subject: [PATCH] Make spec less brittle.
-
-On Ruby 2.5, this spec failed, apparently due to the fact that
-Method equality has changed on 2.5 slightly. The method instances
-have always been different but 2.4 and before considered them
-equivalent. Instead, we can show that the two method objects
-_behave_ the same, which is what we really care about.
-
-Fixes #1192.
----
- spec/rspec/mocks/and_wrap_original_spec.rb | 9 +++++----
- 1 file changed, 5 insertions(+), 4 deletions(-)
-
-diff --git a/spec/rspec/mocks/and_wrap_original_spec.rb b/spec/rspec/mocks/and_wrap_original_spec.rb
-index df9cae46..2d4d0a8b 100644
---- a/spec/rspec/mocks/and_wrap_original_spec.rb
-+++ b/spec/rspec/mocks/and_wrap_original_spec.rb
-@@ -26,12 +26,13 @@ def results
- }.to raise_error NameError
- end
-
-- it "passes in the original method" do
-- value = nil
-+ it "passes along the original method" do
-+ passed_method = nil
- original_method = instance.method(:results)
-- allow_it.to receive(:results).and_wrap_original { |m| value = m }
-+ allow_it.to receive(:results).and_wrap_original { |m| passed_method = m }
- instance.results
-- expect(value).to eq original_method
-+
-+ expect(passed_method.call).to eq(original_method.call)
- end
-
- it "passes along the message arguments" do
diff --git a/dev-ruby/rspec-mocks/metadata.xml b/dev-ruby/rspec-mocks/metadata.xml
index d03bbc3db5c7..59757792b2fe 100644
--- a/dev-ruby/rspec-mocks/metadata.xml
+++ b/dev-ruby/rspec-mocks/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rspec-mocks/rspec-mocks-2.99.2.ebuild b/dev-ruby/rspec-mocks/rspec-mocks-2.99.2.ebuild
deleted file mode 100644
index 14fb4e6a03c4..000000000000
--- a/dev-ruby/rspec-mocks/rspec-mocks-2.99.2.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
-HOMEPAGE="http://rspec.rubyforge.org/"
-SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/rspec-core-2.10.0:2
- >=dev-ruby/rspec-expectations-2.99.0:2
- )"
-
-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
-
- # Avoid a weird, and failing, test testing already installed code.
- sed -e '/has an up-to-date caller_filter file/,/end/ s:^:#:' -i spec/rspec/mocks_spec.rb || die
-
- # Psych and Syck are not supported by default anymore on ruby22.
- rm spec/rspec/mocks/serialization_spec.rb || die
-
- sed -i -e '/does not affect the ability to access the top-level constant/,/end/ s:^:#:' spec/rspec/mocks/mutate_const_spec.rb || die
-}
diff --git a/dev-ruby/rspec-mocks/rspec-mocks-3.12.6.ebuild b/dev-ruby/rspec-mocks/rspec-mocks-3.12.6.ebuild
new file mode 100644
index 000000000000..346d017433e8
--- /dev/null
+++ b/dev-ruby/rspec-mocks/rspec-mocks-3.12.6.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32 ruby33"
+
+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 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-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
+
+ # And consequently avoid specs using bundler. This also avoids a
+ # circular dependency on aruba.
+ rm -f spec/integration/rails_support_spec.rb spec/support/aruba.rb || 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/rspec-mocks/rspec-mocks-3.12.7.ebuild b/dev-ruby/rspec-mocks/rspec-mocks-3.12.7.ebuild
new file mode 100644
index 000000000000..113c3889a987
--- /dev/null
+++ b/dev-ruby/rspec-mocks/rspec-mocks-3.12.7.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+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
+
+ # And consequently avoid specs using bundler. This also avoids a
+ # circular dependency on aruba.
+ rm -f spec/integration/rails_support_spec.rb spec/support/aruba.rb || 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/rspec-mocks/rspec-mocks-3.13.0.ebuild b/dev-ruby/rspec-mocks/rspec-mocks-3.13.0.ebuild
new file mode 100644
index 000000000000..113c3889a987
--- /dev/null
+++ b/dev-ruby/rspec-mocks/rspec-mocks-3.13.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+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
+
+ # And consequently avoid specs using bundler. This also avoids a
+ # circular dependency on aruba.
+ rm -f spec/integration/rails_support_spec.rb spec/support/aruba.rb || 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/rspec-mocks/rspec-mocks-3.7.0.ebuild b/dev-ruby/rspec-mocks/rspec-mocks-3.7.0.ebuild
deleted file mode 100644
index c348ca0f575e..000000000000
--- a/dev-ruby/rspec-mocks/rspec-mocks-3.7.0.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-inherit ruby-fakegem versionator
-
-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 ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-SUBVERSION="$(get_version_component_range 1-2)"
-
-PATCHES=( "${FILESDIR}/${P}-ruby25-1.patch" "${FILESDIR}/${P}-ruby25-2.patch" )
-
-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.3.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
-}
diff --git a/dev-ruby/rspec-mocks/rspec-mocks-3.8.1.ebuild b/dev-ruby/rspec-mocks/rspec-mocks-3.8.1.ebuild
deleted file mode 100644
index 3a5a625c388d..000000000000
--- a/dev-ruby/rspec-mocks/rspec-mocks-3.8.1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-inherit ruby-fakegem eapi7-ver
-
-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 ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-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.3.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
-}
diff --git a/dev-ruby/rspec-pending_for/Manifest b/dev-ruby/rspec-pending_for/Manifest
new file mode 100644
index 000000000000..2bac2e90cb2c
--- /dev/null
+++ b/dev-ruby/rspec-pending_for/Manifest
@@ -0,0 +1 @@
+DIST rspec-pending_for-0.1.16.tar.gz 12841 BLAKE2B fb95f7e21e681454252e6dd625c7a7766ee5853ec60f3280c25e591d91a6163dd307ed8583d6e966cca9f1eeac3e3d8543a539f557abaaf41ae424dc8d91d68a SHA512 4d87c82814a2b8f51f79d1c22030870dce98b846add8cab8897d211129ab2116dd28fffe4999e42c35f70393d90448b11067be424af28594600c7dd461de2e80
diff --git a/dev-ruby/rspec-pending_for/metadata.xml b/dev-ruby/rspec-pending_for/metadata.xml
new file mode 100644
index 000000000000..b04340acafd3
--- /dev/null
+++ b/dev-ruby/rspec-pending_for/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">pboling/rspec-pending_for</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/rspec-pending_for/rspec-pending_for-0.1.16.ebuild b/dev-ruby/rspec-pending_for/rspec-pending_for-0.1.16.ebuild
new file mode 100644
index 000000000000..f5be95bd68d4
--- /dev/null
+++ b/dev-ruby/rspec-pending_for/rspec-pending_for-0.1.16.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="rspec-pending_for.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Mark specs pending or skipped for specific Ruby engine / version combinations"
+HOMEPAGE="https://github.com/pboling/rspec-pending_for"
+SRC_URI="https://github.com/pboling/rspec-pending_for/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/rspec-core
+ dev-ruby/ruby_engine:2
+ dev-ruby/ruby_version:1
+"
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/rspec-rails/Manifest b/dev-ruby/rspec-rails/Manifest
index be071f5a5e3d..4d7a4dc61789 100644
--- a/dev-ruby/rspec-rails/Manifest
+++ b/dev-ruby/rspec-rails/Manifest
@@ -1,2 +1,5 @@
-DIST rspec-rails-3.7.2.tar.gz 129851 BLAKE2B b37619b4a953fa44ef402a0dea1531837932dc7bc147c08b29bf85dcad61c7ca72b30f28edc391ae05d5040dcc902d6571342bb51559de84ed0c93244deffbec SHA512 a1dbbde3539b09c33d85c9307126df09c508fcf39abc25a6438fb0582ec19049ee1888d7d17d256d33bba08c29792a0ec30dabc37d870a369580a58cb7ef03df
-DIST rspec-rails-3.8.2.tar.gz 135513 BLAKE2B deae49ce0ce97c78fafe910cb73a196a404711adadb896a13bb40c82ecd6f2fd28129c0267057ce739d648ffe19bdf61799512bac97e9da3be03e0f8dd43d130 SHA512 02d60a0135b4f4b52e2721f9a79363310b60acb8252d4bb44220d37dd346605a6cd3db6525d2d8d77b9471dd91888c9a3dd02e541012f39d0d47c33f38c98bbe
+DIST rspec-rails-5.1.2.tar.gz 157523 BLAKE2B b500aa53f8bd965f7b95e90403d46096073780fa4e318295bffba44211cfb9d5eab36549e6fc3afc144700a8224ebe808489959a172f1d9e76c43320b7022979 SHA512 f9ef3a3812590a7cd50bd34e9e6cd9669fab24736ac7693b3fffe3f8be9b8313e31b0c7b7571a735f20bc5d9194a94c2f447e69f6491190536b6534211e1b070
+DIST rspec-rails-6.0.3.tar.gz 161663 BLAKE2B 02fdd54524e469387264013e5da9035014533b01ba1164ffe8e3038679585af0943ad82c074f987230b98f837395e57817134466ad33e02c42650dd3ebafb707 SHA512 cf0e34fbc8f653713dd1ba184f01c9ad33ea8739b8c46d5e377387b7c6fc0ebc7999d1a7abbb0581735297ff8a3aa9c665d13616a1eefd6abd4a85cd657203d5
+DIST rspec-rails-6.0.4.tar.gz 163654 BLAKE2B d8680bc410a63b746d568b3a71a1eb4cdac4b620740fe87e898187855e2340fb0fc0dd9e12d02ae738e2c4f68e085e75b58640c77dca0221901104ad8a6de40d SHA512 1090a76fcad4deeb2a9b8a4895dbe3a884887768f607e26e1b8903a2968c187dcf3361492cfa19a2638b1516948a94e5b0a6688a02041d94357ebe0f724f7039
+DIST rspec-rails-6.1.1.tar.gz 165310 BLAKE2B a8c40c203a756a23344c480afd59a9fbd626a6ba4de3716510797269d51d2060d3a719182a174d6225ceb18581f74cde2ad3cc5b71553e71634dbb0894500c55 SHA512 063de268b98aede351437829ecf27151b6015943bc27aa32b01968713a365f75036f357b0516c33a452c2ba5f35c7629de602774054e455eb642a7c67bd57441
+DIST rspec-rails-6.1.2.tar.gz 165532 BLAKE2B ade1da3b3fa080d05b664aff2806e5f95ce873ca777676d4e4d761b541a5ab40308f2c0a12d1d29961e39029fb7918227fafc3d3a0f7d3d7438755462f2d623d SHA512 a25424fa2443c49ebec238d30a059a2ce3cc051a391179abd77aacd96ee532963f0804cf75c27fa233b97638d6a2022ebf678b2dc44451ce3a0b54425bf25d2d
diff --git a/dev-ruby/rspec-rails/metadata.xml b/dev-ruby/rspec-rails/metadata.xml
index b4a7718e18d4..f45996a5c68c 100644
--- a/dev-ruby/rspec-rails/metadata.xml
+++ b/dev-ruby/rspec-rails/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rspec-rails/rspec-rails-3.7.2.ebuild b/dev-ruby/rspec-rails/rspec-rails-3.7.2.ebuild
deleted file mode 100644
index bb19436f8e13..000000000000
--- a/dev-ruby/rspec-rails/rspec-rails-3.7.2.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="RSpec's official Ruby on Rails plugin"
-HOMEPAGE="http://rspec.info/"
-SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64"
-IUSE=""
-
-SUBVERSION="$(get_version_component_range 1-2)"
-
-ruby_add_rdepend ">=dev-ruby/activesupport-3.0:*
- >=dev-ruby/actionpack-3.0:*
- >=dev-ruby/railties-3.0:*
- =dev-ruby/rspec-${SUBVERSION}*"
-
-# Depend on the package being already installed for tests, because
-# requiring ammeter will load it, and we need a consistent set of rspec
-# and rspec-rails for that to work.
-ruby_add_bdepend "test? (
- >=dev-ruby/capybara-2.2.0
- >=dev-ruby/ammeter-1.1.2
- ~dev-ruby/rspec-rails-${PV}
-)"
-
-all_ruby_prepare() {
- # Remove .rspec options to avoid dependency on newer rspec when
- # bootstrapping.
- rm -f .rspec || die
-
- # Avoid bundler-specific specs.
- rm -f spec/sanity_check_spec.rb || die
-
- # Avoid broken controller generator specs for now.
- rm -fr spec/generators/rspec || die
-
- # Avoid loading rspec/rails explicitly since ammeter/init will also
- # do this and loading it twice causes an error
- sed -i -e '/rspec\/rails/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/rspec-rails/rspec-rails-3.8.2.ebuild b/dev-ruby/rspec-rails/rspec-rails-3.8.2.ebuild
deleted file mode 100644
index 5b324600b8df..000000000000
--- a/dev-ruby/rspec-rails/rspec-rails-3.8.2.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="RSpec's official Ruby on Rails plugin"
-HOMEPAGE="https://rspec.info/"
-SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64"
-IUSE=""
-
-SUBVERSION="$(ver_cut 1-2)"
-
-ruby_add_rdepend ">=dev-ruby/activesupport-3.0:*
- >=dev-ruby/actionpack-3.0:*
- >=dev-ruby/railties-3.0:*
- =dev-ruby/rspec-${SUBVERSION}*"
-
-# Depend on the package being already installed for tests, because
-# requiring ammeter will load it, and we need a consistent set of rspec
-# and rspec-rails for that to work.
-ruby_add_bdepend "test? (
- >=dev-ruby/capybara-2.2.0
- >=dev-ruby/ammeter-1.1.2
- ~dev-ruby/rspec-rails-${PV}
-)"
-
-all_ruby_prepare() {
- # Remove .rspec options to avoid dependency on newer rspec when
- # bootstrapping.
- rm -f .rspec || die
-
- # Avoid bundler-specific specs.
- rm -f spec/sanity_check_spec.rb || die
-
- # Avoid broken controller generator specs for now.
- rm -fr spec/generators/rspec || die
-
- # Avoid loading rspec/rails explicitly since ammeter/init will also
- # do this and loading it twice causes an error
- sed -i -e '/rspec\/rails/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/rspec-rails/rspec-rails-5.1.2.ebuild b/dev-ruby/rspec-rails/rspec-rails-5.1.2.ebuild
new file mode 100644
index 000000000000..b6042f93e71f
--- /dev/null
+++ b/dev-ruby/rspec-rails/rspec-rails-5.1.2.ebuild
@@ -0,0 +1,60 @@
+# 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_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rspec-rails.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="RSpec's official Ruby on Rails plugin"
+HOMEPAGE="https://rspec.info/"
+SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ || ( dev-ruby/activerecord:6.1[sqlite] )
+ || ( dev-ruby/activesupport:6.1 )
+ || ( dev-ruby/actionpack:6.1 )
+ || ( dev-ruby/railties:6.1 )
+ >=dev-ruby/rspec-3.10:3"
+
+# Depend on the package being already installed for tests, because
+# requiring ammeter will load it, and we need a consistent set of rspec
+# and rspec-rails for that to work.
+ruby_add_bdepend "test? (
+ >=dev-ruby/capybara-2.2.0
+ >=dev-ruby/ammeter-1.1.5
+ ~dev-ruby/rspec-rails-${PV}
+ dev-ruby/rails:6.1
+)"
+
+all_ruby_prepare() {
+ # Remove .rspec options to avoid dependency on newer rspec when
+ # bootstrapping.
+ echo "--require spec_helper" > .rspec || die
+
+ # Avoid bundler-specific specs.
+ rm -f spec/sanity_check_spec.rb || die
+
+ # Avoid broken controller generator specs for now.
+ rm -fr spec/generators/rspec || die
+
+ # Test with a compatible rails version
+ sed -i -e '1igem "rails", "<7.0"' spec/spec_helper.rb || die
+
+ # Fix gemspec.
+ sed -e 's/git ls-files --/find */' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/rspec-rails/rspec-rails-6.0.3.ebuild b/dev-ruby/rspec-rails/rspec-rails-6.0.3.ebuild
new file mode 100644
index 000000000000..2736fb5e3cd5
--- /dev/null
+++ b/dev-ruby/rspec-rails/rspec-rails-6.0.3.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+#RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rspec-rails.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="RSpec's official Ruby on Rails plugin"
+HOMEPAGE="https://rspec.info/"
+SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ || ( dev-ruby/activesupport:7.0 dev-ruby/activesupport:6.1 )
+ || ( dev-ruby/actionpack:7.0 dev-ruby/actionpack:6.1 )
+ || ( dev-ruby/railties:7.0 dev-ruby/railties:6.1 )
+ >=dev-ruby/rspec-3.12:3"
+
+# Depend on the package being already installed for tests, because
+# requiring ammeter will load it, and we need a consistent set of rspec
+# and rspec-rails for that to work.
+ruby_add_bdepend "test? (
+ || ( dev-ruby/activerecord:7.0[sqlite] dev-ruby/activerecord:6.1[sqlite] )
+ >=dev-ruby/capybara-2.2.0
+ >=dev-ruby/ammeter-1.1.5
+ ~dev-ruby/rspec-rails-${PV}
+)"
+
+all_ruby_prepare() {
+ # Remove .rspec options to avoid dependency on newer rspec when
+ # bootstrapping.
+ echo "--require spec_helper" > .rspec || die
+
+ # Avoid bundler-specific specs.
+ rm -f spec/sanity_check_spec.rb || die
+
+ # Avoid broken controller generator specs for now.
+ rm -fr spec/generators/rspec || die
+
+ # Test with a compatible rails version
+ #sed -i -e '1igem "rails", "<7.0"' spec/spec_helper.rb || die
+
+ # Fix gemspec.
+ sed -e 's/git ls-files --/find */' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/rspec-rails/rspec-rails-6.0.4.ebuild b/dev-ruby/rspec-rails/rspec-rails-6.0.4.ebuild
new file mode 100644
index 000000000000..7daef9df667b
--- /dev/null
+++ b/dev-ruby/rspec-rails/rspec-rails-6.0.4.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+#RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rspec-rails.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="RSpec's official Ruby on Rails plugin"
+HOMEPAGE="https://rspec.info/"
+SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ || ( dev-ruby/activesupport:7.0 dev-ruby/activesupport:6.1 )
+ || ( dev-ruby/actionpack:7.0 dev-ruby/actionpack:6.1 )
+ || ( dev-ruby/railties:7.0 dev-ruby/railties:6.1 )
+ >=dev-ruby/rspec-3.12:3"
+
+# Depend on the package being already installed for tests, because
+# requiring ammeter will load it, and we need a consistent set of rspec
+# and rspec-rails for that to work.
+ruby_add_bdepend "test? (
+ || ( dev-ruby/activerecord:7.0[sqlite] dev-ruby/activerecord:6.1[sqlite] )
+ >=dev-ruby/capybara-2.2.0
+ >=dev-ruby/ammeter-1.1.5
+ ~dev-ruby/rspec-rails-${PV}
+)"
+
+all_ruby_prepare() {
+ # Remove .rspec options to avoid dependency on newer rspec when
+ # bootstrapping.
+ echo "--require spec_helper" > .rspec || die
+
+ # Avoid bundler-specific specs.
+ rm -f spec/sanity_check_spec.rb || die
+
+ # Avoid broken controller generator specs for now.
+ rm -fr spec/generators/rspec || die
+
+ # Test with a compatible rails version
+ #sed -i -e '1igem "rails", "<7.0"' spec/spec_helper.rb || die
+
+ # Fix gemspec.
+ sed -e 's/git ls-files --/find */' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/rspec-rails/rspec-rails-6.1.1.ebuild b/dev-ruby/rspec-rails/rspec-rails-6.1.1.ebuild
new file mode 100644
index 000000000000..97a54c4cf41b
--- /dev/null
+++ b/dev-ruby/rspec-rails/rspec-rails-6.1.1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+#RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rspec-rails.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="RSpec's official Ruby on Rails plugin"
+HOMEPAGE="https://rspec.info/"
+SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "
+ || ( dev-ruby/activesupport:7.1 dev-ruby/activesupport:7.0 dev-ruby/activesupport:6.1 )
+ || ( dev-ruby/actionpack:7.1 dev-ruby/actionpack:7.0 dev-ruby/actionpack:6.1 )
+ || ( dev-ruby/railties:7.1 dev-ruby/railties:7.0 dev-ruby/railties:6.1 )
+ >=dev-ruby/rspec-3.12:3"
+
+# Depend on the package being already installed for tests, because
+# requiring ammeter will load it, and we need a consistent set of rspec
+# and rspec-rails for that to work.
+ruby_add_bdepend "test? (
+ || ( dev-ruby/activerecord:7.1[sqlite] dev-ruby/activerecord:7.0[sqlite] dev-ruby/activerecord:6.1[sqlite] )
+ >=dev-ruby/capybara-2.2.0
+ >=dev-ruby/ammeter-1.1.5
+ ~dev-ruby/rspec-rails-${PV}
+)"
+
+all_ruby_prepare() {
+ # Remove .rspec options to avoid dependency on newer rspec when
+ # bootstrapping.
+ echo "--require spec_helper" > .rspec || die
+
+ # Avoid bundler-specific specs.
+ rm -f spec/sanity_check_spec.rb || die
+
+ # Avoid broken controller generator specs for now.
+ rm -fr spec/generators/rspec || die
+
+ # Test with a compatible rails version
+ #sed -i -e '1igem "rails", "<7.0"' spec/spec_helper.rb || die
+
+ # Fix gemspec.
+ sed -e 's/git ls-files --/find */' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/rspec-rails/rspec-rails-6.1.2-r1.ebuild b/dev-ruby/rspec-rails/rspec-rails-6.1.2-r1.ebuild
new file mode 100644
index 000000000000..36279a08e464
--- /dev/null
+++ b/dev-ruby/rspec-rails/rspec-rails-6.1.2-r1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+#RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rspec-rails.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="RSpec's official Ruby on Rails plugin"
+HOMEPAGE="https://rspec.info/"
+SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "
+ || ( dev-ruby/activesupport:7.1 dev-ruby/activesupport:7.0 dev-ruby/activesupport:6.1 )
+ || ( dev-ruby/actionpack:7.1 dev-ruby/actionpack:7.0 dev-ruby/actionpack:6.1 )
+ || ( dev-ruby/railties:7.1 dev-ruby/railties:7.0 dev-ruby/railties:6.1 )
+ >=dev-ruby/rspec-3.13:3"
+
+# Depend on the package being already installed for tests, because
+# requiring ammeter will load it, and we need a consistent set of rspec
+# and rspec-rails for that to work.
+ruby_add_bdepend "test? (
+ || ( dev-ruby/activerecord:7.1[sqlite] dev-ruby/activerecord:7.0[sqlite] dev-ruby/activerecord:6.1[sqlite] )
+ || ( dev-ruby/actionmailer:7.1 dev-ruby/actionmailer:7.0 dev-ruby/actionmailer:6.1 )
+ >=dev-ruby/capybara-2.2.0
+ >=dev-ruby/ammeter-1.1.5
+ ~dev-ruby/rspec-rails-${PV}
+)"
+
+all_ruby_prepare() {
+ # Remove .rspec options to avoid dependency on newer rspec when
+ # bootstrapping.
+ echo "--require spec_helper" > .rspec || die
+
+ # Avoid bundler-specific specs.
+ rm -f spec/sanity_check_spec.rb || die
+
+ # Avoid broken controller generator specs for now.
+ rm -fr spec/generators/rspec || die
+
+ # Test with a compatible rails version
+ #sed -i -e '1igem "rails", "<7.0"' spec/spec_helper.rb || die
+
+ # Fix gemspec.
+ sed -e 's/git ls-files --/find */' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/rspec-retry/Manifest b/dev-ruby/rspec-retry/Manifest
index 7c16303771be..368068de09b3 100644
--- a/dev-ruby/rspec-retry/Manifest
+++ b/dev-ruby/rspec-retry/Manifest
@@ -1 +1 @@
-DIST rspec-retry-0.6.1.gem 13824 BLAKE2B 5d5cebbfb8e5b85d2bcd4b05c2538fd083800b1b3fbf3140ec7e0535e4dcc3c270e45c1112e110315d517c48c300b96fa7d2c6c9fd553fe8de40e40acd9cd59b SHA512 a5801bf0a4e9f4b8e20cc2b6087ec3b205a8a3c2aa0ff2c31b46927fa6a34aec6a2f525673cf06d9e474477e35db9f5c994639b399240fc680c5c820f51c3ffa
+DIST rspec-retry-0.6.2.gem 14336 BLAKE2B f619f075c13f054dd73f893a37d2da644e4a77b2cdecef886b8fb2b8616b5c89b9aebb8506b94319e0873fd798c0361a8defeae9e651c1a17b9d2f7b26364134 SHA512 a14874f6589c78a00baf9d50d2415bd5533559457de313a5b56be77f4e226d8885f7e976bd6926b8be669f44ec672a6b16dbcf4dff26c26ca8eac64a25fd1b5b
diff --git a/dev-ruby/rspec-retry/metadata.xml b/dev-ruby/rspec-retry/metadata.xml
index 6b6463b35351..011bdd8f3bf1 100644
--- a/dev-ruby/rspec-retry/metadata.xml
+++ b/dev-ruby/rspec-retry/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rspec-retry/rspec-retry-0.6.1.ebuild b/dev-ruby/rspec-retry/rspec-retry-0.6.1.ebuild
deleted file mode 100644
index 303cb3dba37d..000000000000
--- a/dev-ruby/rspec-retry/rspec-retry-0.6.1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Retry intermittently failing rspec examples"
-HOMEPAGE="https://github.com/NoRedInk/rspec-retry"
-IUSE=""
-SLOT="0"
-
-LICENSE="MIT"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-ruby_add_rdepend ">=dev-ruby/rspec-core-3.3:3"
-
-all_ruby_prepare() {
- sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/rspec-retry/rspec-retry-0.6.2.ebuild b/dev-ruby/rspec-retry/rspec-retry-0.6.2.ebuild
new file mode 100644
index 000000000000..4d3c3a18ab54
--- /dev/null
+++ b/dev-ruby/rspec-retry/rspec-retry-0.6.2.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="changelog.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Retry randomly failing rspec example"
+HOMEPAGE="https://github.com/NoRedInk/rspec-retry"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/rspec-core-3.3"
+
+all_ruby_prepare() {
+ sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb || die
+
+ # Avoid specs accessing class variables from the top level
+ sed -e '/with :retry => 0/ s/context/xcontext/' \
+ -e '/should be exposed/ s/it/xit/' \
+ -i spec/lib/rspec/retry_spec.rb || die
+}
diff --git a/dev-ruby/rspec-stubbed_env/Manifest b/dev-ruby/rspec-stubbed_env/Manifest
new file mode 100644
index 000000000000..c7e1cbae15a1
--- /dev/null
+++ b/dev-ruby/rspec-stubbed_env/Manifest
@@ -0,0 +1 @@
+DIST rspec-stubbed_env-1.0.1.tar.gz 21188 BLAKE2B b84dfd729b0f8f362b10ac36a18e7469d137d05108f031d6d96b6f8da658b20e9c11fea8f70f2f217c511505e41ea69ffbfb182582615798804ddc22e9bc136b SHA512 7ac1b2ece0812edd8e884c025300eb693fe22da22f1ca126ad62107c2ca1559b25311be588e7839e97b84fc98a9a5aa161e3f1718a4a42c69a23b8a2301d7593
diff --git a/dev-ruby/rspec-stubbed_env/metadata.xml b/dev-ruby/rspec-stubbed_env/metadata.xml
new file mode 100644
index 000000000000..383b10d7cac4
--- /dev/null
+++ b/dev-ruby/rspec-stubbed_env/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">pboling/rspec-stubbed_env</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/rspec-stubbed_env/rspec-stubbed_env-1.0.1.ebuild b/dev-ruby/rspec-stubbed_env/rspec-stubbed_env-1.0.1.ebuild
new file mode 100644
index 000000000000..c324ee9636f3
--- /dev/null
+++ b/dev-ruby/rspec-stubbed_env/rspec-stubbed_env-1.0.1.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="rspec-stubbed_env.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Stub environment variables in a scoped context for testing"
+HOMEPAGE="https://github.com/pboling/rspec-stubbed_env"
+SRC_URI="https://github.com/pboling/rspec-stubbed_env/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+IUSE=""
+SLOT="1"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+
+ruby_add_rdepend ">=dev-ruby/rspec-3.0"
+
+ruby_add_bdepend "test? ( dev-ruby/rspec-block_is_expected )"
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/rspec-support/Manifest b/dev-ruby/rspec-support/Manifest
index c5f3ed17edab..1c3c458b9e9d 100644
--- a/dev-ruby/rspec-support/Manifest
+++ b/dev-ruby/rspec-support/Manifest
@@ -1,2 +1,4 @@
-DIST rspec-support-3.7.1-git.tgz 65831 BLAKE2B 8595c496bc8d13e36fdfd4a8be8e055db4ac1e85af63f99158d191c9ef9e0a6ba0a2972ad7661a63eeda959e2969139a99ded71219777fd493544b711b6fea53 SHA512 a5760d696048897d76c665a756474bbb1a1995891e577c989cf68a205644c8608c538bf3d87c558428e2c412e02d3552d47567a0679cd4f8793c06f43eccf459
-DIST rspec-support-3.8.2-git.tgz 69112 BLAKE2B 84600d3e2b4d847618f7f53efdf60be3836c7ba6c586de88cdf085e84749e616ad556683b1e7b588b9aec08adee10054e64ae1daf69c6ad58a00d1c2447171f7 SHA512 9fb9f8f2507edee5e7c414d32c1641803eed7a5e17fd300308449277ec6efb786f07207d8f28bcea0a669b8d76a2da53057488d149990ae973c0f7a0343180dc
+DIST rspec-support-3.12.1-git.tgz 78764 BLAKE2B f3e6cd0123096971ee2793a69d02e4c34289904285ee9fe7081f7697c724ecc4195a3cc0e8042bd0c76ff070d6c332fbe41862c31afad9089f68f3846a613dd6 SHA512 88577e184a90f9f48ea97a53e5bd0bd6a2fd5e43275c4bd5cf52a4f8a36637ddb0a1043723b5902d3c0b5bd0cfe0c17a035af702cb094fb8c9543fae6401768a
+DIST rspec-support-3.12.2-git.tgz 79544 BLAKE2B 874196a4c6fded0254c33d3959a7827d1bf9a85976b9cb975ecc7767d2e1bf094cdf3d95b0533560505dc80dfcd4b945cb88d673430b85a239936735844706ef SHA512 76748d3ca1d9415e15f0be8f14b99f9d16fd6b20548913915ab3e2d56dfe94fa744a9c97ec0747bfa66360cebd6584881e8997ecf46baf45c508f14f96bc644a
+DIST rspec-support-3.13.0-git.tgz 79720 BLAKE2B 53302f0b13bf4e36be452e4b548a4a2161a2550e46ab1c8660ebcbcbafc136311cb770943f33162a7379c79df1777a39ad973420a5aa4b62716eff30ab1d0906 SHA512 7d86016c69e8b1c85543d5a0017b37bdddc1f6ec4f0bf887e94dc94b5609511505ea0ff33044cf627903efd3d3261b045dae40d80dabf314c6a3985dcc8a1ed7
+DIST rspec-support-3.13.1-git.tgz 79672 BLAKE2B 73a1b7c8508fd361ca06a647b3291e51eb5cd7f5ea3061b41b81daa724a8811a4891a8b0fadd440b163cf7cf8c43cb2e81e440da57613e82f791cb656913ecf5 SHA512 afbd76d937c5e2bfff8eccd69f4cd5081befc667fdef699743f809bf3f3bdda2404a24fb2408bce3373d7995406ca11a76c734d973957aeb6ada3d41fa59249c
diff --git a/dev-ruby/rspec-support/metadata.xml b/dev-ruby/rspec-support/metadata.xml
index bd86f0bb84fa..fdcffcfb24a2 100644
--- a/dev-ruby/rspec-support/metadata.xml
+++ b/dev-ruby/rspec-support/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rspec-support/rspec-support-3.12.1.ebuild b/dev-ruby/rspec-support/rspec-support-3.12.1.ebuild
new file mode 100644
index 000000000000..7a33ee949ce0
--- /dev/null
+++ b/dev-ruby/rspec-support/rspec-support-3.12.1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+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-support"
+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 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "test? ( >=dev-ruby/rspec-3.9.0:3 >=dev-ruby/thread_order-1.1.0 )"
+
+all_ruby_prepare() {
+ sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Remove spec that, by following symlinks, tries to scan pretty much
+ # the whole filesystem.
+ rm spec/rspec/support/caller_filter_spec.rb || die
+
+ # Avoid spec that requires a dependency on git
+ sed -i -e '/library wide checks/,/]/ s:^:#:' spec/rspec/support_spec.rb || die
+
+ # Avoid a spec requiring a specific locale
+ sed -i -e '/copes with encoded strings/ s/RSpec::Support::OS.windows?/true/' spec/rspec/support/differ_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Use the ruby version being tested
+ sed -i -e '/shell_out/ s:ruby:'${RUBY}':' spec/rspec/support/spec/shell_out_spec.rb || die
+
+ case ${RUBY} in
+ *ruby31|*ruby32|*ruby33)
+ # Avoid specs failing when run in Gentoo, possibly due to different IO
+ sed -e '/outputs unified diff message of two arrays/askip "ruby31 IO"' \
+ -e '/outputs unified diff message for hashes inside arrays with differing key orders/askip "ruby31 IO"' \
+ -i spec/rspec/support/differ_spec.rb || die
+ ;;
+ esac
+}
+
+each_ruby_test() {
+ RUBYLIB=lib ${RUBY} -S rspec spec || die
+}
diff --git a/dev-ruby/rspec-support/rspec-support-3.12.2.ebuild b/dev-ruby/rspec-support/rspec-support-3.12.2.ebuild
new file mode 100644
index 000000000000..ba109801fee2
--- /dev/null
+++ b/dev-ruby/rspec-support/rspec-support-3.12.2.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+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-support"
+SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_bdepend "test? ( >=dev-ruby/rspec-3.9.0:3 >=dev-ruby/thread_order-1.1.0 )"
+
+all_ruby_prepare() {
+ sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Remove spec that, by following symlinks, tries to scan pretty much
+ # the whole filesystem.
+ rm spec/rspec/support/caller_filter_spec.rb || die
+
+ # Avoid spec that requires a dependency on git
+ sed -i -e '/library wide checks/,/]/ s:^:#:' spec/rspec/support_spec.rb || die
+
+ # Avoid a spec requiring a specific locale
+ sed -i -e '/copes with encoded strings/ s/RSpec::Support::OS.windows?/true/' spec/rspec/support/differ_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Use the ruby version being tested
+ sed -i -e '/shell_out/ s:ruby:'${RUBY}':' spec/rspec/support/spec/shell_out_spec.rb || die
+
+ case ${RUBY} in
+ *ruby31|*ruby32|*ruby33)
+ # Avoid specs failing when run in Gentoo, possibly due to different IO
+ sed -e '/outputs unified diff message of two arrays/askip "ruby31 IO"' \
+ -e '/outputs unified diff message for hashes inside arrays with differing key orders/askip "ruby31 IO"' \
+ -i spec/rspec/support/differ_spec.rb || die
+ ;;
+ esac
+}
+
+each_ruby_test() {
+ RUBYLIB=lib ${RUBY} -S rspec spec || die
+}
diff --git a/dev-ruby/rspec-support/rspec-support-3.13.0.ebuild b/dev-ruby/rspec-support/rspec-support-3.13.0.ebuild
new file mode 100644
index 000000000000..ba109801fee2
--- /dev/null
+++ b/dev-ruby/rspec-support/rspec-support-3.13.0.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+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-support"
+SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_bdepend "test? ( >=dev-ruby/rspec-3.9.0:3 >=dev-ruby/thread_order-1.1.0 )"
+
+all_ruby_prepare() {
+ sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Remove spec that, by following symlinks, tries to scan pretty much
+ # the whole filesystem.
+ rm spec/rspec/support/caller_filter_spec.rb || die
+
+ # Avoid spec that requires a dependency on git
+ sed -i -e '/library wide checks/,/]/ s:^:#:' spec/rspec/support_spec.rb || die
+
+ # Avoid a spec requiring a specific locale
+ sed -i -e '/copes with encoded strings/ s/RSpec::Support::OS.windows?/true/' spec/rspec/support/differ_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Use the ruby version being tested
+ sed -i -e '/shell_out/ s:ruby:'${RUBY}':' spec/rspec/support/spec/shell_out_spec.rb || die
+
+ case ${RUBY} in
+ *ruby31|*ruby32|*ruby33)
+ # Avoid specs failing when run in Gentoo, possibly due to different IO
+ sed -e '/outputs unified diff message of two arrays/askip "ruby31 IO"' \
+ -e '/outputs unified diff message for hashes inside arrays with differing key orders/askip "ruby31 IO"' \
+ -i spec/rspec/support/differ_spec.rb || die
+ ;;
+ esac
+}
+
+each_ruby_test() {
+ RUBYLIB=lib ${RUBY} -S rspec spec || die
+}
diff --git a/dev-ruby/rspec-support/rspec-support-3.13.1.ebuild b/dev-ruby/rspec-support/rspec-support-3.13.1.ebuild
new file mode 100644
index 000000000000..ba109801fee2
--- /dev/null
+++ b/dev-ruby/rspec-support/rspec-support-3.13.1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+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-support"
+SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_bdepend "test? ( >=dev-ruby/rspec-3.9.0:3 >=dev-ruby/thread_order-1.1.0 )"
+
+all_ruby_prepare() {
+ sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Remove spec that, by following symlinks, tries to scan pretty much
+ # the whole filesystem.
+ rm spec/rspec/support/caller_filter_spec.rb || die
+
+ # Avoid spec that requires a dependency on git
+ sed -i -e '/library wide checks/,/]/ s:^:#:' spec/rspec/support_spec.rb || die
+
+ # Avoid a spec requiring a specific locale
+ sed -i -e '/copes with encoded strings/ s/RSpec::Support::OS.windows?/true/' spec/rspec/support/differ_spec.rb || die
+}
+
+each_ruby_prepare() {
+ # Use the ruby version being tested
+ sed -i -e '/shell_out/ s:ruby:'${RUBY}':' spec/rspec/support/spec/shell_out_spec.rb || die
+
+ case ${RUBY} in
+ *ruby31|*ruby32|*ruby33)
+ # Avoid specs failing when run in Gentoo, possibly due to different IO
+ sed -e '/outputs unified diff message of two arrays/askip "ruby31 IO"' \
+ -e '/outputs unified diff message for hashes inside arrays with differing key orders/askip "ruby31 IO"' \
+ -i spec/rspec/support/differ_spec.rb || die
+ ;;
+ esac
+}
+
+each_ruby_test() {
+ RUBYLIB=lib ${RUBY} -S rspec spec || die
+}
diff --git a/dev-ruby/rspec-support/rspec-support-3.7.1.ebuild b/dev-ruby/rspec-support/rspec-support-3.7.1.ebuild
deleted file mode 100644
index 7dbee141a22a..000000000000
--- a/dev-ruby/rspec-support/rspec-support-3.7.1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-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-support"
-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 ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/rspec-3.7.0:3 dev-ruby/thread_order )"
-
-all_ruby_prepare() {
- sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # Remove spec that, by following symlinks, tries to scan pretty much
- # the whole filesystem.
- rm spec/rspec/support/caller_filter_spec.rb || die
-
- # Avoid spec that requires a dependency on git
- sed -i -e '/library wide checks/,/]/ s:^:#:' spec/rspec/support_spec.rb || die
-
- # Avoid a spec requiring a specific locale
- sed -i -e '/copes with encoded strings/ s/RSpec::Support::OS.windows?/true/' spec/rspec/support/differ_spec.rb || die
-}
diff --git a/dev-ruby/rspec-support/rspec-support-3.8.2.ebuild b/dev-ruby/rspec-support/rspec-support-3.8.2.ebuild
deleted file mode 100644
index 62a912c811e8..000000000000
--- a/dev-ruby/rspec-support/rspec-support-3.8.2.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-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-support"
-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 ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/rspec-3.8.0:3 >=dev-ruby/thread_order-1.1.0 )"
-
-all_ruby_prepare() {
- sed -i -e '/git ls-files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-
- # Remove spec that, by following symlinks, tries to scan pretty much
- # the whole filesystem.
- rm spec/rspec/support/caller_filter_spec.rb || die
-
- # Avoid spec that requires a dependency on git
- sed -i -e '/library wide checks/,/]/ s:^:#:' spec/rspec/support_spec.rb || die
-
- # Avoid a spec requiring a specific locale
- sed -i -e '/copes with encoded strings/ s/RSpec::Support::OS.windows?/true/' spec/rspec/support/differ_spec.rb || die
-
- # Avoid a brittle spec depending on ruby implementation details
- # should be fixed upstream in next version
- sed -i -e '/returns a hash containing nodes for each line number/askip "ruby26"' spec/rspec/support/source_spec.rb || die
-}
diff --git a/dev-ruby/rspec/Manifest b/dev-ruby/rspec/Manifest
index 26a2988607f4..def7a7063160 100644
--- a/dev-ruby/rspec/Manifest
+++ b/dev-ruby/rspec/Manifest
@@ -1,3 +1,2 @@
-DIST rspec-2.99.0.gem 5632 BLAKE2B eba837aeebcb0d65dc18a644fd935f241a6703998885418460b2c0bb59574ef144c416518099a77905ca7676852903804169d1bafc2cf8b3f79654b669c43762 SHA512 bcdf5e86938b102200144c49370e0a0691e39a8720048df2eab1a55f95a5bc5e4ced84c7da86d0ddc83ee4ce0f40602c2ae7ee10e55dccf8bb8b769ab048ebb8
-DIST rspec-3.7.0.gem 10752 BLAKE2B a0e15d557b0d9089a886d04c917feda80c7a8e5eb70a50f4635947689215c0c560d313a6728ccea751697ead97c01fa1e3b7217f202ad18d4ddecf62c4dfa4ab SHA512 5c10a878e9697030783c987ee9a6244b36cf85a2a3fb8c28bf9771900a3259da4f19c7f159180b5ff9140ab715b38b5d90cd5e0014ac1862f478c32a95e7edfd
-DIST rspec-3.8.0.gem 10752 BLAKE2B 14b1710fb64fb2ab46d59ac692ceb95dbe7f5e2f5c54e4f97170bd99c2b0d32e1977250f69160ab191367c8016663ecf5cd4e0c89941ff12c727ed52e6118551 SHA512 aa3ecee499240a26866797c00461c7e63915bb84a9a29afce75bd4e7864027588bafde05b108aa7b6d988c1a123265587db807567a8e0f3d03527b0f2d8329ba
+DIST rspec-3.12.0.gem 10752 BLAKE2B 80beb56bfed2200e05c8fbe040a265f4176a7142a7c077564821057eec2aa02f68c2417eae5e0309221457d419bf0c9af9123c5e8f1f19992a9361298240c0c8 SHA512 24278c467e5226ad1a5bb4c64190fb5d1077777237d9c2e5c4f16a00b026bf26d8f15e2c74a34221b198992f73ef06af314488a61358968e2083f935467e5a35
+DIST rspec-3.13.0.gem 10752 BLAKE2B 41df21678a628fff7f86167bf80afcc602da2d5263c2f12e666cbce9401a51ff82887cfdf32fec85194b2511930525e2b2f1dda902437379ed45b78d99f830b2 SHA512 4031dc10cfd3fbdd8f023328df661159bf01d6fefac89a2750119c2dbe58ed2daf75737598002164c9760e366bdb7e5c1076430c2d67502ab0cae51ef94b5ed7
diff --git a/dev-ruby/rspec/metadata.xml b/dev-ruby/rspec/metadata.xml
index f420c86ec54e..190a5b268bd6 100644
--- a/dev-ruby/rspec/metadata.xml
+++ b/dev-ruby/rspec/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rspec/rspec-2.99.0.ebuild b/dev-ruby/rspec/rspec-2.99.0.ebuild
deleted file mode 100644
index 31d9170c4fbc..000000000000
--- a/dev-ruby/rspec/rspec-2.99.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
-HOMEPAGE="http://rspec.rubyforge.org/"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-SUBVERSION="$(get_version_component_range 1-2)"
-
-ruby_add_rdepend "
- =dev-ruby/rspec-core-${SUBVERSION}*
- =dev-ruby/rspec-expectations-${SUBVERSION}*
- =dev-ruby/rspec-mocks-${SUBVERSION}*"
diff --git a/dev-ruby/rspec/rspec-3.12.0.ebuild b/dev-ruby/rspec/rspec-3.12.0.ebuild
new file mode 100644
index 000000000000..cdbf5e89fc62
--- /dev/null
+++ b/dev-ruby/rspec/rspec-3.12.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
+HOMEPAGE="https://github.com/rspec/rspec"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+SUBVERSION="$(ver_cut 1-2)"
+
+ruby_add_rdepend "
+ =dev-ruby/rspec-core-${SUBVERSION}*
+ =dev-ruby/rspec-expectations-${SUBVERSION}*
+ =dev-ruby/rspec-mocks-${SUBVERSION}*"
diff --git a/dev-ruby/rspec/rspec-3.13.0.ebuild b/dev-ruby/rspec/rspec-3.13.0.ebuild
new file mode 100644
index 000000000000..696efc9c4ae0
--- /dev/null
+++ b/dev-ruby/rspec/rspec-3.13.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
+HOMEPAGE="https://github.com/rspec/rspec"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+SUBVERSION="$(ver_cut 1-2)"
+
+ruby_add_rdepend "
+ =dev-ruby/rspec-core-${SUBVERSION}*
+ =dev-ruby/rspec-expectations-${SUBVERSION}*
+ =dev-ruby/rspec-mocks-${SUBVERSION}*"
diff --git a/dev-ruby/rspec/rspec-3.7.0.ebuild b/dev-ruby/rspec/rspec-3.7.0.ebuild
deleted file mode 100644
index 8f6b3c17b5d9..000000000000
--- a/dev-ruby/rspec/rspec-3.7.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
-HOMEPAGE="https://github.com/rspec/rspec"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86"
-IUSE=""
-
-SUBVERSION="$(get_version_component_range 1-2)"
-
-ruby_add_rdepend "
- =dev-ruby/rspec-core-${SUBVERSION}*
- =dev-ruby/rspec-expectations-${SUBVERSION}*
- =dev-ruby/rspec-mocks-${SUBVERSION}*"
diff --git a/dev-ruby/rspec/rspec-3.8.0.ebuild b/dev-ruby/rspec/rspec-3.8.0.ebuild
deleted file mode 100644
index 8f288bb12522..000000000000
--- a/dev-ruby/rspec/rspec-3.8.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="A Behaviour Driven Development (BDD) framework for Ruby"
-HOMEPAGE="https://github.com/rspec/rspec"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="alpha amd64 ~arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86"
-IUSE=""
-
-SUBVERSION="$(ver_cut 1-2)"
-
-ruby_add_rdepend "
- =dev-ruby/rspec-core-${SUBVERSION}*
- =dev-ruby/rspec-expectations-${SUBVERSION}*
- =dev-ruby/rspec-mocks-${SUBVERSION}*"
diff --git a/dev-ruby/rspectacular/Manifest b/dev-ruby/rspectacular/Manifest
index 451c4ba80fe9..b081f724e229 100644
--- a/dev-ruby/rspectacular/Manifest
+++ b/dev-ruby/rspectacular/Manifest
@@ -1,2 +1 @@
-DIST rspectacular-0.70.7.gem 16384 BLAKE2B 61783b9a6cfd4b8f190237590205e913074941ef65caa7a7f8e66e90ba7fd28553bc4168cc83fbe01ea526308b0adb8e885ee1786d6339d42e70406494cddf45 SHA512 dab67e89dd88cfb8741be10c385d58b3437245c623700f0d651dd4e96bcf28f063a9dd952098eb574bbadaeb077ebe7e0f9db7d6e83648c1de9a4f0c390fe567
DIST rspectacular-0.70.8.gem 16896 BLAKE2B daf9b75be33ccf1b7d60a7aaa540b391578b7f841bb1999c52e566caf8000049d7b2180f372084be18bf4cf367f6c59dba422f187505e42ee6bd66e9431ed11c SHA512 6f048a7781bd672049c10687eede3e2218436ea396438e09814c9239cb07396df25f4b88ab78b98f91c66457c4aceaaf1a1b8aadbff748715a881cadff8dd2e1
diff --git a/dev-ruby/rspectacular/metadata.xml b/dev-ruby/rspectacular/metadata.xml
index b163c4361c7c..cf82558b7a0f 100644
--- a/dev-ruby/rspectacular/metadata.xml
+++ b/dev-ruby/rspectacular/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rspectacular/rspectacular-0.70.7.ebuild b/dev-ruby/rspectacular/rspectacular-0.70.7.ebuild
deleted file mode 100644
index b9e4136ea3f3..000000000000
--- a/dev-ruby/rspectacular/rspectacular-0.70.7.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="RSpec support and matchers"
-HOMEPAGE="https://github.com/thekompanee/rspectacular"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rspec-3.1:3 dev-ruby/fuubar:2 dev-ruby/shoulda-matchers:3"
diff --git a/dev-ruby/rspectacular/rspectacular-0.70.8-r2.ebuild b/dev-ruby/rspectacular/rspectacular-0.70.8-r2.ebuild
new file mode 100644
index 000000000000..fc6f5004e297
--- /dev/null
+++ b/dev-ruby/rspectacular/rspectacular-0.70.8-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="RSpec support and matchers"
+HOMEPAGE="https://rubygems.org/gems/rspectacular"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~hppa ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+ruby_add_rdepend ">=dev-ruby/rspec-3.1:3 dev-ruby/fuubar:2"
+
+# Note that shoulda-matchers is an optional RDEPEND as a plugin.
+# rspectacular doesn't seem to be actively developed anymore and its only
+# reverse dependency passes tests w/o this dep installed, which figures given
+# it's a plugin.
+USE_RUBY="ruby27 ruby30 ruby31" ruby_add_rdepend "dev-ruby/shoulda-matchers:3"
diff --git a/dev-ruby/rspectacular/rspectacular-0.70.8.ebuild b/dev-ruby/rspectacular/rspectacular-0.70.8.ebuild
deleted file mode 100644
index 7c8c2f6d0ba5..000000000000
--- a/dev-ruby/rspectacular/rspectacular-0.70.8.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="RSpec support and matchers"
-HOMEPAGE="https://github.com/thekompanee/rspectacular"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rspec-3.1:3 dev-ruby/fuubar:2 dev-ruby/shoulda-matchers:3"
diff --git a/dev-ruby/rss/Manifest b/dev-ruby/rss/Manifest
new file mode 100644
index 000000000000..000035828af2
--- /dev/null
+++ b/dev-ruby/rss/Manifest
@@ -0,0 +1,2 @@
+DIST rss-0.2.9.gem 106496 BLAKE2B 4b8b4b8fc59f05b7ed513294a809b0961dcd0c8b94cbfff3cbb09102a9ad056063c4b2a5d00b30e2eebc76701b10c3b28125ba2daf49fb420c5ff37a47dd600b SHA512 24d983ae2ee8570c3e433675f9cdacd1c35d6160beb28689a0f8cf446b6b465147bef68dab644a85cb089870d6a9fb2df85cbaed12ed4d6a6fb2d07b12c6ca3f
+DIST rss-0.3.0.tar.gz 107114 BLAKE2B a66d1b317e3dd9016f6cb4942e1daed215622b54c50bc5a318d16c145ec20ca7c0bdf330d173ff5484aa529c293fb4391896fda8127ce00cd865fddc17918e30 SHA512 86b7097e3dcf0da03284b44493be43e972a1facb2f20e81cc3303ea0c39336a364858f3d37e04a2397851ca897bd484284eb81cd6d6b55f4c0d77d811350688e
diff --git a/dev-ruby/rss/metadata.xml b/dev-ruby/rss/metadata.xml
new file mode 100644
index 000000000000..e6ba6d58d5ec
--- /dev/null
+++ b/dev-ruby/rss/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/rss</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/rss/rss-0.2.9-r1.ebuild b/dev-ruby/rss/rss-0.2.9-r1.ebuild
new file mode 100644
index 000000000000..b7ce59261128
--- /dev/null
+++ b/dev-ruby/rss/rss-0.2.9-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Family of libraries that support various formats of XML feeds"
+HOMEPAGE="https://github.com/ruby/rss"
+
+LICENSE="BSD-2"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/rexml"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/,/^helper.install/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/rss/rss-0.3.0.ebuild b/dev-ruby/rss/rss-0.3.0.ebuild
new file mode 100644
index 000000000000..1b0f2795d21c
--- /dev/null
+++ b/dev-ruby/rss/rss-0.3.0.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+RUBY_FAKEGEM_GEMSPEC="rss.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Family of libraries that support various formats of XML feeds"
+HOMEPAGE="https://github.com/ruby/rss"
+SRC_URI="https://github.com/ruby/rss/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/rexml"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/,/^helper.install/ s:^:#:' Rakefile || die
+
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/ruby-atk/Manifest b/dev-ruby/ruby-atk/Manifest
index f9915c2e2788..023bc72357e4 100644
--- a/dev-ruby/ruby-atk/Manifest
+++ b/dev-ruby/ruby-atk/Manifest
@@ -1,2 +1 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
+DIST ruby-gnome2-4.1.2.tar.gz 2708791 BLAKE2B ef24788d8c65f96c76b43d8adc38af21dfb3bfe2f8ae2157f6978993fe65e9735030e9912e8eb1ff5ff90ab1c67701ae61ac3b0790cb285646f26b6193d74be5 SHA512 898ae5bcd7a6347d7392b7888c19493905f6e660afb61f17a60b1f22e4069329ef6ccc9277375a2c40b4d998a309b61de6797f50c4633c0f5de22d2e85252537
diff --git a/dev-ruby/ruby-atk/metadata.xml b/dev-ruby/ruby-atk/metadata.xml
index 2eb590f61d26..3b50d592e675 100644
--- a/dev-ruby/ruby-atk/metadata.xml
+++ b/dev-ruby/ruby-atk/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
+ <remote-id type="github">ruby-gnome/ruby-gnome</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ruby-atk/ruby-atk-3.3.2.ebuild b/dev-ruby/ruby-atk/ruby-atk-3.3.2.ebuild
deleted file mode 100644
index c963c4dc53f6..000000000000
--- a/dev-ruby/ruby-atk/ruby-atk-3.3.2.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-DESCRIPTION="Ruby Atk bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-DEPEND+=" dev-libs/atk"
-RDEPEND+=" dev-libs/atk"
-
-ruby_add_rdepend "~dev-ruby/ruby-glib2-${PV}"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' test/atk-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-atk/ruby-atk-3.3.6.ebuild b/dev-ruby/ruby-atk/ruby-atk-3.3.6.ebuild
deleted file mode 100644
index f666da65a3bb..000000000000
--- a/dev-ruby/ruby-atk/ruby-atk-3.3.6.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-DESCRIPTION="Ruby Atk bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-DEPEND+=" dev-libs/atk"
-RDEPEND+=" dev-libs/atk"
-
-ruby_add_rdepend "~dev-ruby/ruby-glib2-${PV}"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' test/atk-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-atk/ruby-atk-4.1.2.ebuild b/dev-ruby/ruby-atk/ruby-atk-4.1.2.ebuild
new file mode 100644
index 000000000000..c637edf92d92
--- /dev/null
+++ b/dev-ruby/ruby-atk/ruby-atk-4.1.2.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-ng-gnome2
+
+DESCRIPTION="Ruby Atk bindings"
+KEYWORDS="amd64 ~ppc ~riscv ~x86"
+IUSE=""
+RDEPEND+=" dev-libs/atk[introspection]"
+
+ruby_add_rdepend "
+ ~dev-ruby/ruby-glib2-${PV}
+ ~dev-ruby/ruby-gobject-introspection-${PV}"
diff --git a/dev-ruby/ruby-augeas/metadata.xml b/dev-ruby/ruby-augeas/metadata.xml
index 7264137ed458..ed057f07708c 100644
--- a/dev-ruby/ruby-augeas/metadata.xml
+++ b/dev-ruby/ruby-augeas/metadata.xml
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="person">
-<email>prometheanfire@gentoo.org</email>
-</maintainer>
-<maintainer type="project">
-<email>ruby@gentoo.org</email>
-<name>Gentoo Ruby Project</name>
-</maintainer>
-<longdescription lang="en">
-ruby-augeas is a set of Ruby bindings around augeas.
-</longdescription>
+ <maintainer type="person">
+ <email>prometheanfire@gentoo.org</email>
+ </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">hercules-team/ruby-augeas</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/ruby-augeas/ruby-augeas-0.5.0-r3.ebuild b/dev-ruby/ruby-augeas/ruby-augeas-0.5.0-r3.ebuild
deleted file mode 100644
index 262229ffbf2e..000000000000
--- a/dev-ruby/ruby-augeas/ruby-augeas-0.5.0-r3.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="doc/site/api"
-RUBY_FAKEGEM_EXTRADOC="NEWS README.rdoc"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby bindings for Augeas"
-HOMEPAGE="http://augeas.net/"
-SRC_URI="http://download.augeas.net/ruby/${P}.gem"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 ~arm hppa ia64 ppc ~ppc64 ~sparc x86"
-IUSE=""
-
-RDEPEND=">=app-admin/augeas-1.1.0"
-DEPEND="${RDEPEND}
- dev-libs/libxml2"
-
-each_ruby_configure() {
- ${RUBY} -C ext/augeas extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -C ext/augeas V=1
-}
-
-each_ruby_install() {
- mv ext/augeas/_augeas$(get_modname) lib/ || die
-
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-augeas/ruby-augeas-0.5.0-r5.ebuild b/dev-ruby/ruby-augeas/ruby-augeas-0.5.0-r5.ebuild
new file mode 100644
index 000000000000..a912b6035674
--- /dev/null
+++ b/dev-ruby/ruby-augeas/ruby-augeas-0.5.0-r5.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc/site/api"
+RUBY_FAKEGEM_EXTRADOC="NEWS README.rdoc"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/augeas/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby bindings for Augeas"
+HOMEPAGE="https://augeas.net/"
+SRC_URI="http://download.augeas.net/ruby/${P}.gem"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ~ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+RDEPEND=">=app-admin/augeas-1.1.0"
+DEPEND="${RDEPEND}
+ dev-libs/libxml2"
diff --git a/dev-ruby/ruby-beautify/Manifest b/dev-ruby/ruby-beautify/Manifest
deleted file mode 100644
index 9731a2268bfe..000000000000
--- a/dev-ruby/ruby-beautify/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ruby-beautify-0.97.4.gem 15360 BLAKE2B 92c8e7c09714c27a2e19f8ac00050612c0a23f38132fb64edb326a5bb536ab136c6dfbce8fafb902a5e1263b44f68350050c64b9ed9d12fd946d42073f06e959 SHA512 0ce3403587f12036387e5556632e5f2bf57066949fe401699d6de256d26a91d2dc8f7e007ce4514a7672ad0896cd1c498b5a35965640dadfa7383915b12989f3
diff --git a/dev-ruby/ruby-beautify/metadata.xml b/dev-ruby/ruby-beautify/metadata.xml
deleted file mode 100644
index 53108d5679fe..000000000000
--- a/dev-ruby/ruby-beautify/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">erniebrodeur/ruby-beautify</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-beautify/ruby-beautify-0.97.4.ebuild b/dev-ruby/ruby-beautify/ruby-beautify-0.97.4.ebuild
deleted file mode 100644
index c636b5e42aa6..000000000000
--- a/dev-ruby/ruby-beautify/ruby-beautify-0.97.4.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-# ruby25 -> not compatible
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_EXTRADOC="README.md WHATSNEW.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="a cli tool (and module) to beautify ruby code"
-HOMEPAGE="https://github.com/erniebrodeur/ruby-beautify"
-LICENSE="MIT"
-
-KEYWORDS="alpha amd64 arm ~hppa ia64 ppc ppc64 ~sparc x86"
-SLOT="0"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/codeclimate/I s:^:#:' spec/spec_helper.rb || die
-}
-
-each_ruby_prepare() {
- # Needed for specs
- mkdir tmp || die
-
- # Use correct ruby interpreter to test and avoid bundler. Handle
- # directory changes.
- sed -i -e 's|bundle exec|'${RUBY}' -Ilib:../lib -S|' spec/bin/ruby-beautify_spec.rb || die
-}
diff --git a/dev-ruby/ruby-cairo-gobject/Manifest b/dev-ruby/ruby-cairo-gobject/Manifest
index f9915c2e2788..023bc72357e4 100644
--- a/dev-ruby/ruby-cairo-gobject/Manifest
+++ b/dev-ruby/ruby-cairo-gobject/Manifest
@@ -1,2 +1 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
+DIST ruby-gnome2-4.1.2.tar.gz 2708791 BLAKE2B ef24788d8c65f96c76b43d8adc38af21dfb3bfe2f8ae2157f6978993fe65e9735030e9912e8eb1ff5ff90ab1c67701ae61ac3b0790cb285646f26b6193d74be5 SHA512 898ae5bcd7a6347d7392b7888c19493905f6e660afb61f17a60b1f22e4069329ef6ccc9277375a2c40b4d998a309b61de6797f50c4633c0f5de22d2e85252537
diff --git a/dev-ruby/ruby-cairo-gobject/metadata.xml b/dev-ruby/ruby-cairo-gobject/metadata.xml
index 2eb590f61d26..3b50d592e675 100644
--- a/dev-ruby/ruby-cairo-gobject/metadata.xml
+++ b/dev-ruby/ruby-cairo-gobject/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
+ <remote-id type="github">ruby-gnome/ruby-gnome</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ruby-cairo-gobject/ruby-cairo-gobject-3.3.2.ebuild b/dev-ruby/ruby-cairo-gobject/ruby-cairo-gobject-3.3.2.ebuild
deleted file mode 100644
index d415228daa0a..000000000000
--- a/dev-ruby/ruby-cairo-gobject/ruby-cairo-gobject-3.3.2.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-RUBY_S="ruby-gnome2-all-${PV}/cairo-gobject"
-
-DESCRIPTION="Ruby cairo-gobject bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" x11-libs/cairo"
-RDEPEND+=" x11-libs/cairo"
-
-ruby_add_rdepend "dev-ruby/rcairo
- >=dev-ruby/ruby-glib2-${PV}"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' \
- ../gobject-introspection/test/gobject-introspection-test-utils.rb \
- test/cairo-gobject-test-utils.rb || die
-
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew_libffi/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-cairo-gobject/ruby-cairo-gobject-3.3.6.ebuild b/dev-ruby/ruby-cairo-gobject/ruby-cairo-gobject-3.3.6.ebuild
deleted file mode 100644
index ecd747dd85fa..000000000000
--- a/dev-ruby/ruby-cairo-gobject/ruby-cairo-gobject-3.3.6.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-RUBY_S="ruby-gnome2-all-${PV}/cairo-gobject"
-
-DESCRIPTION="Ruby cairo-gobject bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" x11-libs/cairo"
-RDEPEND+=" x11-libs/cairo"
-
-ruby_add_rdepend "dev-ruby/rcairo
- >=dev-ruby/ruby-glib2-${PV}"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' \
- ../gobject-introspection/test/gobject-introspection-test-utils.rb \
- test/cairo-gobject-test-utils.rb || die
-
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-cairo-gobject/ruby-cairo-gobject-4.1.2.ebuild b/dev-ruby/ruby-cairo-gobject/ruby-cairo-gobject-4.1.2.ebuild
new file mode 100644
index 000000000000..ed2b894792bb
--- /dev/null
+++ b/dev-ruby/ruby-cairo-gobject/ruby-cairo-gobject-4.1.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+inherit ruby-ng-gnome2
+
+DESCRIPTION="Ruby cairo-gobject bindings"
+KEYWORDS="amd64 ~ppc ~riscv ~x86"
+IUSE=""
+
+DEPEND+=" x11-libs/cairo"
+RDEPEND+=" x11-libs/cairo"
+
+ruby_add_rdepend "dev-ruby/rcairo
+ ~dev-ruby/ruby-glib2-${PV}
+ test? ( ~dev-ruby/ruby-gobject-introspection-${PV} )"
diff --git a/dev-ruby/ruby-clutter-gdk/Manifest b/dev-ruby/ruby-clutter-gdk/Manifest
deleted file mode 100644
index f9915c2e2788..000000000000
--- a/dev-ruby/ruby-clutter-gdk/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
diff --git a/dev-ruby/ruby-clutter-gdk/metadata.xml b/dev-ruby/ruby-clutter-gdk/metadata.xml
deleted file mode 100644
index 2eb590f61d26..000000000000
--- a/dev-ruby/ruby-clutter-gdk/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-clutter-gdk/ruby-clutter-gdk-3.3.2.ebuild b/dev-ruby/ruby-clutter-gdk/ruby-clutter-gdk-3.3.2.ebuild
deleted file mode 100644
index 5aeb80797227..000000000000
--- a/dev-ruby/ruby-clutter-gdk/ruby-clutter-gdk-3.3.2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-DESCRIPTION="Ruby binding of GDK specific API of Clutter"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-RUBY_S=ruby-gnome2-all-${PV}/clutter-gdk
-
-RDEPEND+=" media-libs/clutter[gtk]"
-
-ruby_add_rdepend ">=dev-ruby/ruby-clutter-${PV}
- >=dev-ruby/ruby-gdk3-${PV}"
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-clutter-gdk/ruby-clutter-gdk-3.3.6.ebuild b/dev-ruby/ruby-clutter-gdk/ruby-clutter-gdk-3.3.6.ebuild
deleted file mode 100644
index 0dcb0dfa89ea..000000000000
--- a/dev-ruby/ruby-clutter-gdk/ruby-clutter-gdk-3.3.6.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-DESCRIPTION="Ruby binding of GDK specific API of Clutter"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-RUBY_S=ruby-gnome2-all-${PV}/clutter-gdk
-
-RDEPEND+=" media-libs/clutter[gtk]"
-
-ruby_add_rdepend ">=dev-ruby/ruby-clutter-${PV}
- >=dev-ruby/ruby-gdk3-${PV}"
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-clutter-gstreamer/Manifest b/dev-ruby/ruby-clutter-gstreamer/Manifest
deleted file mode 100644
index f9915c2e2788..000000000000
--- a/dev-ruby/ruby-clutter-gstreamer/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
diff --git a/dev-ruby/ruby-clutter-gstreamer/metadata.xml b/dev-ruby/ruby-clutter-gstreamer/metadata.xml
deleted file mode 100644
index 2eb590f61d26..000000000000
--- a/dev-ruby/ruby-clutter-gstreamer/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-clutter-gstreamer/ruby-clutter-gstreamer-3.3.2.ebuild b/dev-ruby/ruby-clutter-gstreamer/ruby-clutter-gstreamer-3.3.2.ebuild
deleted file mode 100644
index 9d98df302805..000000000000
--- a/dev-ruby/ruby-clutter-gstreamer/ruby-clutter-gstreamer-3.3.2.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby Clutter bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-RUBY_S=ruby-gnome2-all-${PV}/clutter-gstreamer
-
-DEPEND+=" media-libs/clutter-gst"
-RDEPEND+=" media-libs/clutter-gst:*"
-
-ruby_add_rdepend ">=dev-ruby/ruby-clutter-${PV}
- >=dev-ruby/ruby-gstreamer-${PV}"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' \
- ../gobject-introspection/test/gobject-introspection-test-utils.rb \
- ../clutter/test/clutter-test-utils.rb \
- test/clutter-gstreamer-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/and have_make/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-clutter-gstreamer/ruby-clutter-gstreamer-3.3.6.ebuild b/dev-ruby/ruby-clutter-gstreamer/ruby-clutter-gstreamer-3.3.6.ebuild
deleted file mode 100644
index 2dbf1ed25069..000000000000
--- a/dev-ruby/ruby-clutter-gstreamer/ruby-clutter-gstreamer-3.3.6.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby Clutter bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-RUBY_S=ruby-gnome2-all-${PV}/clutter-gstreamer
-
-DEPEND+=" media-libs/clutter-gst"
-RDEPEND+=" media-libs/clutter-gst:*"
-
-ruby_add_rdepend ">=dev-ruby/ruby-clutter-${PV}
- >=dev-ruby/ruby-gstreamer-${PV}"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' \
- ../gobject-introspection/test/gobject-introspection-test-utils.rb \
- ../clutter/test/clutter-test-utils.rb \
- test/clutter-gstreamer-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/and have_make/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-clutter-gtk/Manifest b/dev-ruby/ruby-clutter-gtk/Manifest
deleted file mode 100644
index f9915c2e2788..000000000000
--- a/dev-ruby/ruby-clutter-gtk/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
diff --git a/dev-ruby/ruby-clutter-gtk/metadata.xml b/dev-ruby/ruby-clutter-gtk/metadata.xml
deleted file mode 100644
index 2eb590f61d26..000000000000
--- a/dev-ruby/ruby-clutter-gtk/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-clutter-gtk/ruby-clutter-gtk-3.3.2.ebuild b/dev-ruby/ruby-clutter-gtk/ruby-clutter-gtk-3.3.2.ebuild
deleted file mode 100644
index 094ef20a142b..000000000000
--- a/dev-ruby/ruby-clutter-gtk/ruby-clutter-gtk-3.3.2.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby Clutter bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-RUBY_S=ruby-gnome2-all-${PV}/clutter-gtk
-
-DEPEND+=" media-libs/clutter-gtk[gtk]"
-RDEPEND+=" media-libs/clutter-gtk[gtk]"
-
-ruby_add_bdepend ">=dev-ruby/ruby-glib2-${PV}
- >=dev-ruby/ruby-clutter-gdk-${PV}"
-ruby_add_rdepend ">=dev-ruby/ruby-clutter-${PV}
- >=dev-ruby/ruby-gtk3-${PV}"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' \
- ../gobject-introspection/test/gobject-introspection-test-utils.rb \
- ../clutter/test/clutter-test-utils.rb \
- test/clutter-gtk-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/and have_make/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-clutter-gtk/ruby-clutter-gtk-3.3.6.ebuild b/dev-ruby/ruby-clutter-gtk/ruby-clutter-gtk-3.3.6.ebuild
deleted file mode 100644
index aa266f055b4b..000000000000
--- a/dev-ruby/ruby-clutter-gtk/ruby-clutter-gtk-3.3.6.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby Clutter bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-RUBY_S=ruby-gnome2-all-${PV}/clutter-gtk
-
-DEPEND+=" media-libs/clutter-gtk[gtk]"
-RDEPEND+=" media-libs/clutter-gtk[gtk]"
-
-ruby_add_bdepend ">=dev-ruby/ruby-glib2-${PV}
- >=dev-ruby/ruby-clutter-gdk-${PV}"
-ruby_add_rdepend ">=dev-ruby/ruby-clutter-${PV}
- >=dev-ruby/ruby-gtk3-${PV}"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' \
- ../gobject-introspection/test/gobject-introspection-test-utils.rb \
- ../clutter/test/clutter-test-utils.rb \
- test/clutter-gtk-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/and have_make/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-clutter/Manifest b/dev-ruby/ruby-clutter/Manifest
deleted file mode 100644
index f9915c2e2788..000000000000
--- a/dev-ruby/ruby-clutter/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
diff --git a/dev-ruby/ruby-clutter/metadata.xml b/dev-ruby/ruby-clutter/metadata.xml
deleted file mode 100644
index 2eb590f61d26..000000000000
--- a/dev-ruby/ruby-clutter/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-clutter/ruby-clutter-3.3.2.ebuild b/dev-ruby/ruby-clutter/ruby-clutter-3.3.2.ebuild
deleted file mode 100644
index ac74fdfbfd7f..000000000000
--- a/dev-ruby/ruby-clutter/ruby-clutter-3.3.2.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby Clutter bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-RUBY_S=ruby-gnome2-all-${PV}/clutter
-
-DEPEND+=" media-libs/clutter"
-RDEPEND+=" media-libs/clutter"
-
-ruby_add_bdepend ">=dev-ruby/ruby-atk-${PV}
- >=dev-ruby/ruby-gdkpixbuf2-${PV}
- >=dev-ruby/ruby-glib2-${PV}
- >=dev-ruby/ruby-gobject-introspection-${PV}
- >=dev-ruby/ruby-pango-${PV}"
-ruby_add_rdepend ">=dev-ruby/ruby-cairo-gobject-${PV}
- >=dev-ruby/ruby-gobject-introspection-${PV}
- >=dev-ruby/ruby-pango-${PV}"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' \
- ../gobject-introspection/test/gobject-introspection-test-utils.rb \
- ../cairo-gobject/test/cairo-gobject-test-utils.rb \
- test/clutter-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-clutter/ruby-clutter-3.3.6.ebuild b/dev-ruby/ruby-clutter/ruby-clutter-3.3.6.ebuild
deleted file mode 100644
index 90000c969b9a..000000000000
--- a/dev-ruby/ruby-clutter/ruby-clutter-3.3.6.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby Clutter bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-RUBY_S=ruby-gnome2-all-${PV}/clutter
-
-DEPEND+=" media-libs/clutter"
-RDEPEND+=" media-libs/clutter"
-
-ruby_add_bdepend ">=dev-ruby/ruby-atk-${PV}
- >=dev-ruby/ruby-gdkpixbuf2-${PV}
- >=dev-ruby/ruby-glib2-${PV}
- >=dev-ruby/ruby-gobject-introspection-${PV}
- >=dev-ruby/ruby-pango-${PV}"
-ruby_add_rdepend ">=dev-ruby/ruby-cairo-gobject-${PV}
- >=dev-ruby/ruby-gobject-introspection-${PV}
- >=dev-ruby/ruby-pango-${PV}"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' \
- ../gobject-introspection/test/gobject-introspection-test-utils.rb \
- ../cairo-gobject/test/cairo-gobject-test-utils.rb \
- test/clutter-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-dict/metadata.xml b/dev-ruby/ruby-dict/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/ruby-dict/metadata.xml
+++ b/dev-ruby/ruby-dict/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-dict/ruby-dict-0.9.4-r4.ebuild b/dev-ruby/ruby-dict/ruby-dict-0.9.4-r4.ebuild
deleted file mode 100644
index 1b4cec261189..000000000000
--- a/dev-ruby/ruby-dict/ruby-dict-0.9.4-r4.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng
-
-DESCRIPTION="RFC 2229 client in Ruby"
-HOMEPAGE="http://www.caliban.org/ruby/ruby-dict.shtml"
-SRC_URI="http://www.caliban.org/files/ruby/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~ppc x86 ~x86-fbsd"
-IUSE=""
-
-RUBY_PATCHES=( "${PN}-ruby19.patch" )
-
-each_ruby_install() {
- doruby lib/dict.rb || die "doruby failed"
-}
-
-all_ruby_install() {
- dobin rdict
-
- dodoc README Changelog TODO doc/rfc2229.txt
- dodoc doc/dict.html doc/rdict.html
-
- # This would probably need a 3rb section..
- # doman doc/dict.3
- doman doc/rdict.1
-}
diff --git a/dev-ruby/ruby-dict/ruby-dict-0.9.4-r5.ebuild b/dev-ruby/ruby-dict/ruby-dict-0.9.4-r5.ebuild
new file mode 100644
index 000000000000..abf7e6a97497
--- /dev/null
+++ b/dev-ruby/ruby-dict/ruby-dict-0.9.4-r5.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="ruby30 ruby31 ruby32"
+
+inherit ruby-ng
+
+DESCRIPTION="RFC 2229 client in Ruby"
+HOMEPAGE="http://www.caliban.org/ruby/ruby-dict.shtml"
+SRC_URI="http://www.caliban.org/files/ruby/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE=""
+
+all_ruby_prepare() {
+ eapply -p0 "${FILESDIR}/${PN}-ruby19.patch"
+
+ default
+}
+
+each_ruby_install() {
+ doruby lib/dict.rb || die "doruby failed"
+}
+
+all_ruby_install() {
+ dobin rdict
+
+ dodoc README Changelog TODO doc/rfc2229.txt
+ dodoc doc/dict.html doc/rdict.html
+
+ # This would probably need a 3rb section..
+ # doman doc/dict.3
+ doman doc/rdict.1
+}
diff --git a/dev-ruby/ruby-elf/Manifest b/dev-ruby/ruby-elf/Manifest
deleted file mode 100644
index 07d27f7196fc..000000000000
--- a/dev-ruby/ruby-elf/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ruby-elf-1.0.8.tar.gz 1958368 BLAKE2B c12464d55dc318301e7b999de5057bc6efb306c2393942200e866d7a48c05a179a09991366bddbf10d4a181d9db36c1dbadb0e2ba50ea1021f012a47dce200e7 SHA512 40eb774b9869948812c56193c46548f5c372a1fbd3892b7e6ecd7865607e0edba81ba7e857b6571acb9abb67e066aed312d48a3d0ddd64c8f51f142eb45f8d8f
diff --git a/dev-ruby/ruby-elf/metadata.xml b/dev-ruby/ruby-elf/metadata.xml
deleted file mode 100644
index d45527651beb..000000000000
--- a/dev-ruby/ruby-elf/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!--maintainer-needed-->
- <upstream>
- <remote-id type="github">Flameeyes/ruby-elf</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-elf/ruby-elf-1.0.8.ebuild b/dev-ruby/ruby-elf/ruby-elf-1.0.8.ebuild
deleted file mode 100644
index 246f1f2373ff..000000000000
--- a/dev-ruby/ruby-elf/ruby-elf-1.0.8.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-GITHUB_URI="https://github.com/Flameeyes/${PN}"
-
-if [[ ${PV} == "9999" ]]; then
- EGIT_REPO_URI="${GITHUB_URI}.git"
-fi
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_RECIPE_DOC="none"
-
-RUBY_FAKGEM_GESPEC="${PN}.gemspec"
-
-inherit ruby-fakegem ${EGIT_REPO_URI:+git-2}
-
-if [[ -n ${EGIT_REPO_URI} ]]; then
- SRC_URI=""
-else
- SRC_URI="${GITHUB_URI}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-fi
-
-DESCRIPTION="Ruby library to access ELF files information"
-HOMEPAGE="http://www.flameeyes.eu/projects/ruby-elf"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~amd64"
-
-IUSE="test"
-
-ruby_add_bdepend "
- test? ( dev-ruby/test-unit:2 )
- dev-ruby/rake"
-
-# for the man pages
-DEPEND+="
- dev-libs/libxslt
- app-text/docbook-xsl-ns-stylesheets"
-
-RDEPEND+="
- virtual/man"
-
-if [[ ${PV} == "9999" ]]; then
- all_ruby_unpack() {
- git_src_unpack
- }
-fi
-
-all_ruby_compile() {
- # build the man pages
- rake manpages || die "rake manpages failed"
-}
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib test/test_*.rb
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- doman manpages/*.1
- dodoc DONATING README.md
-}
diff --git a/dev-ruby/ruby-feedparser/Manifest b/dev-ruby/ruby-feedparser/Manifest
index 9b5327f2af9e..c50e8d61204c 100644
--- a/dev-ruby/ruby-feedparser/Manifest
+++ b/dev-ruby/ruby-feedparser/Manifest
@@ -1 +1 @@
-DIST ruby-feedparser-0.9.4.tar.gz 2705393 BLAKE2B 22d95f817d7cd80c33da804e391dce877eb3947dc249eff82884e0ba747aae9d6949418311a7596f6639470e32ce81e1bcc180737e25ab1bbc910bbfeaabdcca SHA512 0fbecb83837996c1a9483d70275cf869a62dcb53bb42d3fc8d1c7992e37c7d2c8b3194a9d0372566c4907f8ffd893c1f6ee1b2e55fa2417c5f34b71496bfad9d
+DIST ruby-feedparser-0.11.2.tar.gz 2698609 BLAKE2B b516c7d50ba6bfd769dd42b5cfe85142df596556d21551f69c7d180eb172cae1d4c8ad86e44ae20cd87734b1d8f4b11456315b9c2a7df1a428a05dd8060bd8fd SHA512 1e067b0170f2c9df531b9378d004b06d098ddc21899755843fa2a2ae37a965e1f6060272525943e8b140b9f82bb6aad37a307dbb77adf74743ae76fd2a7c26d0
diff --git a/dev-ruby/ruby-feedparser/metadata.xml b/dev-ruby/ruby-feedparser/metadata.xml
index bc7693acb72a..7bda85cd40ed 100644
--- a/dev-ruby/ruby-feedparser/metadata.xml
+++ b/dev-ruby/ruby-feedparser/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-feedparser/ruby-feedparser-0.11.2.ebuild b/dev-ruby/ruby-feedparser/ruby-feedparser-0.11.2.ebuild
new file mode 100644
index 000000000000..ea66a5ed4a44
--- /dev/null
+++ b/dev-ruby/ruby-feedparser/ruby-feedparser-0.11.2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+GITHUB_USER="feed2imap"
+
+DESCRIPTION="Ruby library to parse ATOM/RSS feeds"
+HOMEPAGE="https://github.com/feed2imap/ruby-feedparser"
+SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64"
+SLOT="0"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/magic"
+
+ruby_add_bdepend "dev-ruby/magic
+ test? ( dev-ruby/mocha:1.0 )"
+
+all_ruby_prepare() {
+ # Extract gemspec source from Rakefile
+ sed -n -e '/Gem::Specification/,/end$/p' Rakefile > ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e 's/PKG_NAME/"'${PN}'"/' \
+ -e 's/PKG_VERSION/"'${PV}'"/' \
+ -e '/s.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '2igem "mocha", "<2"' test/tc_sgml_parser.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e '/PKG_VERSION/ s:ruby:'${RUBY}':' Rakefile || die
+}
diff --git a/dev-ruby/ruby-feedparser/ruby-feedparser-0.9.4.ebuild b/dev-ruby/ruby-feedparser/ruby-feedparser-0.9.4.ebuild
deleted file mode 100644
index 2d3990eedd08..000000000000
--- a/dev-ruby/ruby-feedparser/ruby-feedparser-0.9.4.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-GITHUB_USER="feed2imap"
-
-DESCRIPTION="Ruby library to parse ATOM/RSS feeds"
-HOMEPAGE="https://github.com/feed2imap/ruby-feedparser"
-SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/magic"
-
-ruby_add_bdepend "dev-ruby/magic
- test? ( dev-ruby/mocha )"
-
-all_ruby_prepare() {
- # Extract gemspec source from Rakefile
- sed -n -e '/Gem::Specification/,/end$/p' Rakefile > ${RUBY_FAKEGEM_GEMSPEC} || die
- sed -i -e 's/PKG_NAME/"'${PN}'"/' \
- -e 's/PKG_VERSION/"'${PV}'"/' \
- -e '/s.files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_prepare() {
- sed -i -e '/PKG_VERSION/ s:ruby:'${RUBY}':' Rakefile || die
-}
diff --git a/dev-ruby/ruby-filemagic/Manifest b/dev-ruby/ruby-filemagic/Manifest
index 0db39a866a4d..781f9cc25f7a 100644
--- a/dev-ruby/ruby-filemagic/Manifest
+++ b/dev-ruby/ruby-filemagic/Manifest
@@ -1 +1 @@
-DIST ruby-filemagic-0.7.2.gem 19456 BLAKE2B 5008fb27a5b6bbd93522c72381b1c74788e544e6120f3c44f4a594b360ee783d4e92e73ef584a8e56c1776a5e5e824d6fa603df135b6e1779fa460c19c3bb4a7 SHA512 b68324dfb0cd2e55cd200696fabe87c0aa68a11922789ae40abc999db7d200810cffa2c414c07bc96e2fee54aab775f01752f951b3a3273289594201ca547494
+DIST ruby-filemagic-0.7.3.gem 18944 BLAKE2B 5694e4e2dfa4af05c6e9966715feaf1442c4c884b42fe98751af1a4fc74506461c9d42cd42cbe99ed341670950dda5c06ae5a23afb73bf8a88273f9ca6880cd6 SHA512 8bbc7fcb1dd7746061264ee433d501a842bfea30d7eff40b6dfb0f5c567192e6aa161e67181a474a4b805bb1adb9fa3bd43e314abf14c3ce3ac11d72598b2fc6
diff --git a/dev-ruby/ruby-filemagic/metadata.xml b/dev-ruby/ruby-filemagic/metadata.xml
index d92faa179122..3e864780078d 100644
--- a/dev-ruby/ruby-filemagic/metadata.xml
+++ b/dev-ruby/ruby-filemagic/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-filemagic/ruby-filemagic-0.7.2.ebuild b/dev-ruby/ruby-filemagic/ruby-filemagic-0.7.2.ebuild
deleted file mode 100644
index f2a31a2b0907..000000000000
--- a/dev-ruby/ruby-filemagic/ruby-filemagic-0.7.2.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="ChangeLog README TODO"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby binding to libmagic"
-HOMEPAGE="https://github.com/blackwinter/ruby-filemagic"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE=""
-
-DEPEND="${DEPEND} sys-apps/file test? ( >=sys-apps/file-5.30 )"
-RDEPEND="${RDEPEND} sys-apps/file"
-
-all_ruby_prepare() {
- # Fix up tests for newer sys-apps/file definitions
- sed -i -e '/test_abbrev_mime_type/,/^ end/ s/ms-office/ms-excel/' test/filemagic_test.rb || die
-
- # Fix up broken test symlink and regenerate compiled magic file
- pushd test || die
- rm -f pylink && ln -s pyfile pylink || die
- file -C -m perl || die
- popd || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/filemagic extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/filemagic
- mv ext/filemagic/ruby_filemagic$(get_modname) lib/filemagic/ || die
-}
-
-each_ruby_test() {
- find test
- ${RUBY} -Ctest -I../lib filemagic_test.rb || die
-}
diff --git a/dev-ruby/ruby-filemagic/ruby-filemagic-0.7.3.ebuild b/dev-ruby/ruby-filemagic/ruby-filemagic-0.7.3.ebuild
new file mode 100644
index 000000000000..7ed5b5610070
--- /dev/null
+++ b/dev-ruby/ruby-filemagic/ruby-filemagic-0.7.3.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="ChangeLog README TODO"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/filemagic/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/filemagic"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby binding to libmagic"
+HOMEPAGE="https://github.com/blackwinter/ruby-filemagic"
+
+LICENSE="Ruby-BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+
+DEPEND="${DEPEND} sys-apps/file test? ( >=sys-apps/file-5.30 )"
+RDEPEND="${RDEPEND} sys-apps/file"
+
+all_ruby_prepare() {
+ # Fix up broken test symlink and regenerate compiled magic file
+ pushd test || die
+ rm -f pylink && ln -s pyfile pylink || die
+ file -C -m perl || die
+ popd || die
+
+ sed -i -e '/test_check_compiled/aomit "different result with file 5.41"' test/filemagic_test.rb || die
+}
+
+each_ruby_test() {
+ find test
+ ${RUBY} -Ctest -I../lib filemagic_test.rb || die
+}
diff --git a/dev-ruby/ruby-gdk3/Manifest b/dev-ruby/ruby-gdk3/Manifest
index f9915c2e2788..023bc72357e4 100644
--- a/dev-ruby/ruby-gdk3/Manifest
+++ b/dev-ruby/ruby-gdk3/Manifest
@@ -1,2 +1 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
+DIST ruby-gnome2-4.1.2.tar.gz 2708791 BLAKE2B ef24788d8c65f96c76b43d8adc38af21dfb3bfe2f8ae2157f6978993fe65e9735030e9912e8eb1ff5ff90ab1c67701ae61ac3b0790cb285646f26b6193d74be5 SHA512 898ae5bcd7a6347d7392b7888c19493905f6e660afb61f17a60b1f22e4069329ef6ccc9277375a2c40b4d998a309b61de6797f50c4633c0f5de22d2e85252537
diff --git a/dev-ruby/ruby-gdk3/metadata.xml b/dev-ruby/ruby-gdk3/metadata.xml
index 2eb590f61d26..3b50d592e675 100644
--- a/dev-ruby/ruby-gdk3/metadata.xml
+++ b/dev-ruby/ruby-gdk3/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
+ <remote-id type="github">ruby-gnome/ruby-gnome</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ruby-gdk3/ruby-gdk3-3.3.2.ebuild b/dev-ruby/ruby-gdk3/ruby-gdk3-3.3.2.ebuild
deleted file mode 100644
index 4692fdfd3f69..000000000000
--- a/dev-ruby/ruby-gdk3/ruby-gdk3-3.3.2.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby GDK-3.x bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" x11-libs/gtk+:3"
-RDEPEND+=" x11-libs/gtk+:3"
-
-ruby_add_rdepend "
- ~dev-ruby/ruby-gdkpixbuf2-${PV}
- ~dev-ruby/ruby-cairo-gobject-${PV}
- ~dev-ruby/ruby-pango-${PV}
-"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' \
- test/gdk-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/Makefile/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-gdk3/ruby-gdk3-3.3.6.ebuild b/dev-ruby/ruby-gdk3/ruby-gdk3-3.3.6.ebuild
deleted file mode 100644
index ecd7f280062a..000000000000
--- a/dev-ruby/ruby-gdk3/ruby-gdk3-3.3.6.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby GDK-3.x bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" x11-libs/gtk+:3"
-RDEPEND+=" x11-libs/gtk+:3"
-
-ruby_add_rdepend "
- ~dev-ruby/ruby-gdkpixbuf2-${PV}
- ~dev-ruby/ruby-cairo-gobject-${PV}
- ~dev-ruby/ruby-pango-${PV}
-"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' \
- test/gdk-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/Makefile/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-gdk3/ruby-gdk3-4.1.2.ebuild b/dev-ruby/ruby-gdk3/ruby-gdk3-4.1.2.ebuild
new file mode 100644
index 000000000000..943c8695cde9
--- /dev/null
+++ b/dev-ruby/ruby-gdk3/ruby-gdk3-4.1.2.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_GNOME2_NEED_VIRTX=yes
+
+inherit ruby-ng-gnome2
+
+DESCRIPTION="Ruby GDK-3.x bindings"
+KEYWORDS="~amd64 ~ppc ~riscv ~x86"
+IUSE=""
+
+DEPEND+=" x11-libs/gtk+:3"
+RDEPEND+=" x11-libs/gtk+:3"
+
+ruby_add_rdepend "
+ ~dev-ruby/ruby-cairo-gobject-${PV}
+ ~dev-ruby/ruby-gdkpixbuf2-${PV}
+ ~dev-ruby/ruby-pango-${PV}"
diff --git a/dev-ruby/ruby-gdkpixbuf2/Manifest b/dev-ruby/ruby-gdkpixbuf2/Manifest
index f9915c2e2788..023bc72357e4 100644
--- a/dev-ruby/ruby-gdkpixbuf2/Manifest
+++ b/dev-ruby/ruby-gdkpixbuf2/Manifest
@@ -1,2 +1 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
+DIST ruby-gnome2-4.1.2.tar.gz 2708791 BLAKE2B ef24788d8c65f96c76b43d8adc38af21dfb3bfe2f8ae2157f6978993fe65e9735030e9912e8eb1ff5ff90ab1c67701ae61ac3b0790cb285646f26b6193d74be5 SHA512 898ae5bcd7a6347d7392b7888c19493905f6e660afb61f17a60b1f22e4069329ef6ccc9277375a2c40b4d998a309b61de6797f50c4633c0f5de22d2e85252537
diff --git a/dev-ruby/ruby-gdkpixbuf2/metadata.xml b/dev-ruby/ruby-gdkpixbuf2/metadata.xml
index 2eb590f61d26..3b50d592e675 100644
--- a/dev-ruby/ruby-gdkpixbuf2/metadata.xml
+++ b/dev-ruby/ruby-gdkpixbuf2/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
+ <remote-id type="github">ruby-gnome/ruby-gnome</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ruby-gdkpixbuf2/ruby-gdkpixbuf2-3.3.2.ebuild b/dev-ruby/ruby-gdkpixbuf2/ruby-gdkpixbuf2-3.3.2.ebuild
deleted file mode 100644
index 1419115f25e6..000000000000
--- a/dev-ruby/ruby-gdkpixbuf2/ruby-gdkpixbuf2-3.3.2.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME="gdk_pixbuf2"
-
-inherit ruby-ng-gnome2
-
-RUBY_S=ruby-gnome2-all-${PV}/${RUBY_FAKEGEM_NAME}
-
-DESCRIPTION="Ruby GdkPixbuf2 bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-RDEPEND+=" x11-libs/gtk+:2"
-
-ruby_add_rdepend "
- ~dev-ruby/ruby-gio2-${PV}
-"
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-gdkpixbuf2/ruby-gdkpixbuf2-3.3.6.ebuild b/dev-ruby/ruby-gdkpixbuf2/ruby-gdkpixbuf2-3.3.6.ebuild
deleted file mode 100644
index bdf7742116e2..000000000000
--- a/dev-ruby/ruby-gdkpixbuf2/ruby-gdkpixbuf2-3.3.6.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME="gdk_pixbuf2"
-
-inherit ruby-ng-gnome2
-
-RUBY_S=ruby-gnome2-all-${PV}/${RUBY_FAKEGEM_NAME}
-
-DESCRIPTION="Ruby GdkPixbuf2 bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-RDEPEND+=" x11-libs/gtk+:2"
-
-ruby_add_rdepend "
- ~dev-ruby/ruby-gio2-${PV}
-"
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-gdkpixbuf2/ruby-gdkpixbuf2-4.1.2.ebuild b/dev-ruby/ruby-gdkpixbuf2/ruby-gdkpixbuf2-4.1.2.ebuild
new file mode 100644
index 000000000000..bad421cbf73a
--- /dev/null
+++ b/dev-ruby/ruby-gdkpixbuf2/ruby-gdkpixbuf2-4.1.2.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_NAME="gdk_pixbuf2"
+
+inherit ruby-ng-gnome2
+
+RUBY_S=ruby-gnome-${PV}/gdk_pixbuf2
+
+DESCRIPTION="Ruby GdkPixbuf2 bindings"
+KEYWORDS="amd64 ~ppc ~riscv ~x86"
+IUSE=""
+
+DEPEND+=" test? ( x11-libs/gdk-pixbuf[jpeg] )"
+RDEPEND+=" x11-libs/gdk-pixbuf[introspection]"
+
+ruby_add_rdepend "~dev-ruby/ruby-gio2-${PV}"
diff --git a/dev-ruby/ruby-gettext/Manifest b/dev-ruby/ruby-gettext/Manifest
index 4111f0e62e43..097142b1ee33 100644
--- a/dev-ruby/ruby-gettext/Manifest
+++ b/dev-ruby/ruby-gettext/Manifest
@@ -1 +1,4 @@
-DIST gettext-3.2.9.gem 285696 BLAKE2B a7bc40b2102f5b937d5f0e407dbaa23ead1da59eb9284c10a249c59548d0e2ad5fcd56b8855439893d2d31b57e0109bb6a9d5cc2d24075f5e360dc16b9291137 SHA512 21496c38cfc16a2b280f30bb94ff4560007eaa7f02c2341cb26aca2969a663c0863cdb650b4eadfd262d8585111dfb572e2ebc66a7a879045de50bf9da80a501
+DIST gettext-3.4.4.gem 232960 BLAKE2B 7822245f1efc63c3faccae299c84f671f0eb264776288cd4d60f9981988f4942fd3b3033fdcd58e03d2129f5ece3a579dbf3bdffb567c96d9affbabe7355613f SHA512 2321e13d9789dc059518c8ae0501bc26fe74fd0a24c9336c913a9ce8d2a2d77b0a7ece883f5c36e286144256077ecdbdacc84ffc37fb7753fe8bc589d473b00b
+DIST gettext-3.4.6.gem 232960 BLAKE2B 108e89bd34e0a3341d4c09b7a444a2ba3a6c84e3f95ba22df4fd0ed5374bb7ad94131fc6ceb2407b16d9e7995383853b80101ab61319a87ee57147cc40ca3279 SHA512 1c98ef539509231aa7bdd7d725767576bebd7000b55599c2ac59bc915fc52aac7a4075575907893701322bd06bf7035dbcc7e262b39d93b5eeaa6f9a3511a20f
+DIST gettext-3.4.7.gem 233472 BLAKE2B d180bcddfb861e321cf6447a9a3868f71338984989ba9e525bd55fee6aed81ac6041f572f66133acfa054e7e680d2d5a14670775f251bc547d713c8995f4c9d4 SHA512 4f9d3a56ae9613fd4651f249dc6e0eea82366e898e963c8ca84484b32b9312bb20cf6c396bd48aedfc039db60191bf7804769c4924a9d89f1851aafd3d24ace2
+DIST gettext-3.4.9.gem 234496 BLAKE2B bc1fd26ae048a959df1291cbe6bc5ce4fe060dc66baff2e3a9030dfbbc937e6e2aef5586259cfb1ef0f6eb5e2924badd6db579f7d268ae4bb079d06248655e87 SHA512 756fc65210ccc88c06ed07da699e88aca865b0b3b2b2b92824d3e17062a1008d9d561f1572d0795478bfe7ad542e3aaf8c65ee2f80fed1ead202638bd32dc77a
diff --git a/dev-ruby/ruby-gettext/metadata.xml b/dev-ruby/ruby-gettext/metadata.xml
index 28ab0c15f206..413e46808413 100644
--- a/dev-ruby/ruby-gettext/metadata.xml
+++ b/dev-ruby/ruby-gettext/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">ruby-gettext/gettext</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ruby-gettext/ruby-gettext-3.2.9.ebuild b/dev-ruby/ruby-gettext/ruby-gettext-3.2.9.ebuild
deleted file mode 100644
index 5dcd02b1eddd..000000000000
--- a/dev-ruby/ruby-gettext/ruby-gettext-3.2.9.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME="${PN/ruby-/}"
-RUBY_FAKEGEM_VERSION="${PV%_*}"
-
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_EXTRADOC="README.md doc/text/news.md"
-
-RUBY_FAKEGEM_TASK_TEST="none"
-
-RUBY_FAKEGEM_EXTRAINSTALL="locale po"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Native Language Support Library and Tools modeled after GNU gettext package"
-HOMEPAGE="https://ruby-gettext.github.io/"
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86"
-IUSE="doc test"
-SLOT="0"
-LICENSE="|| ( Ruby LGPL-3+ )"
-
-ruby_add_rdepend ">=dev-ruby/locale-2.0.5 >=dev-ruby/text-1.3.0"
-
-ruby_add_bdepend "doc? ( dev-ruby/yard )
- dev-ruby/racc"
-ruby_add_bdepend "test? (
- dev-ruby/test-unit:2
- dev-ruby/test-unit-rr )"
-
-RDEPEND+=" sys-devel/gettext"
-DEPEND+=" sys-devel/gettext"
-
-all_ruby_prepare() {
- # Fix broken racc invocation
- sed -i -e '/command_line/ s/#{racc}/-S racc/' Rakefile || die
-
- # Avoid bundler dependency
- sed -i -e '/bundler/,/helper.install/ s:^:#:' \
- -e 's/helper.gemspec/Gem::Specification.new/' Rakefile || die
-
- # Avoid dependency on developer-specific tools.
- sed -i -e '/notify/ s:^:#:' test/run-test.rb || die
-
- # Avoid tests failing due to a missing test file.
- #sed -i -e '/test_invalid_charset/,/end/ s:^:#:' test/test_mo.rb || die
-
- # Avoid SAFE mode test that fails on ruby 2.6
- sed -i -e '/test_safe_mode/aomit' test/test_gettext.rb || die
-}
-
-each_ruby_test() {
- # Upstream tries to daisy-chain rake calls but they fail badly
- # with our setup, so run it manually.
- ${RUBY} test/run-test.rb || die "tests failed"
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r samples
-}
diff --git a/dev-ruby/ruby-gettext/ruby-gettext-3.4.4.ebuild b/dev-ruby/ruby-gettext/ruby-gettext-3.4.4.ebuild
new file mode 100644
index 000000000000..8078919cc70d
--- /dev/null
+++ b/dev-ruby/ruby-gettext/ruby-gettext-3.4.4.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_NAME="${PN/ruby-/}"
+RUBY_FAKEGEM_VERSION="${PV%_*}"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_EXTRADOC="README.md doc/text/news.md"
+
+RUBY_FAKEGEM_TASK_TEST="none"
+
+RUBY_FAKEGEM_EXTRAINSTALL="locale po"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Native Language Support Library and Tools modeled after GNU gettext package"
+HOMEPAGE="https://ruby-gettext.github.io/"
+
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv sparc x86"
+IUSE="doc test"
+SLOT="0"
+LICENSE="|| ( GPL-2 Ruby-BSD LGPL-3+ )"
+
+ruby_add_rdepend "
+ dev-ruby/erubi
+ >=dev-ruby/locale-2.0.5
+ dev-ruby/prime
+ dev-ruby/racc
+ >=dev-ruby/text-1.3.0
+"
+
+ruby_add_bdepend "doc? ( dev-ruby/yard )
+ dev-ruby/racc"
+ruby_add_bdepend "test? (
+ dev-ruby/test-unit:2
+ dev-ruby/test-unit-rr )"
+
+RDEPEND+=" sys-devel/gettext"
+DEPEND+=" sys-devel/gettext"
+
+all_ruby_prepare() {
+ # Fix broken racc invocation
+ sed -i -e '/command_line/ s/#{racc}/-S racc/' Rakefile || die
+
+ # Avoid bundler dependency
+ sed -i -e '/bundler/,/helper.install/ s:^:#:' \
+ -e 's/helper.gemspec/Gem::Specification.new/' Rakefile || die
+
+ # Avoid dependency on developer-specific tools.
+ sed -i -e '/notify/ s:^:#:' test/run-test.rb || die
+}
+
+each_ruby_test() {
+ # Borrowed from Fedora
+ local -x LANG=C.UTF-8
+ local -x LANGUAGE=ja_JP.utf8
+
+ # Upstream tries to daisy-chain rake calls but they fail badly
+ # with our setup, so run it manually.
+ ${RUBY} test/run-test.rb || die "tests failed"
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r samples
+}
diff --git a/dev-ruby/ruby-gettext/ruby-gettext-3.4.6.ebuild b/dev-ruby/ruby-gettext/ruby-gettext-3.4.6.ebuild
new file mode 100644
index 000000000000..8078919cc70d
--- /dev/null
+++ b/dev-ruby/ruby-gettext/ruby-gettext-3.4.6.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_NAME="${PN/ruby-/}"
+RUBY_FAKEGEM_VERSION="${PV%_*}"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_EXTRADOC="README.md doc/text/news.md"
+
+RUBY_FAKEGEM_TASK_TEST="none"
+
+RUBY_FAKEGEM_EXTRAINSTALL="locale po"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Native Language Support Library and Tools modeled after GNU gettext package"
+HOMEPAGE="https://ruby-gettext.github.io/"
+
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv sparc x86"
+IUSE="doc test"
+SLOT="0"
+LICENSE="|| ( GPL-2 Ruby-BSD LGPL-3+ )"
+
+ruby_add_rdepend "
+ dev-ruby/erubi
+ >=dev-ruby/locale-2.0.5
+ dev-ruby/prime
+ dev-ruby/racc
+ >=dev-ruby/text-1.3.0
+"
+
+ruby_add_bdepend "doc? ( dev-ruby/yard )
+ dev-ruby/racc"
+ruby_add_bdepend "test? (
+ dev-ruby/test-unit:2
+ dev-ruby/test-unit-rr )"
+
+RDEPEND+=" sys-devel/gettext"
+DEPEND+=" sys-devel/gettext"
+
+all_ruby_prepare() {
+ # Fix broken racc invocation
+ sed -i -e '/command_line/ s/#{racc}/-S racc/' Rakefile || die
+
+ # Avoid bundler dependency
+ sed -i -e '/bundler/,/helper.install/ s:^:#:' \
+ -e 's/helper.gemspec/Gem::Specification.new/' Rakefile || die
+
+ # Avoid dependency on developer-specific tools.
+ sed -i -e '/notify/ s:^:#:' test/run-test.rb || die
+}
+
+each_ruby_test() {
+ # Borrowed from Fedora
+ local -x LANG=C.UTF-8
+ local -x LANGUAGE=ja_JP.utf8
+
+ # Upstream tries to daisy-chain rake calls but they fail badly
+ # with our setup, so run it manually.
+ ${RUBY} test/run-test.rb || die "tests failed"
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r samples
+}
diff --git a/dev-ruby/ruby-gettext/ruby-gettext-3.4.7.ebuild b/dev-ruby/ruby-gettext/ruby-gettext-3.4.7.ebuild
new file mode 100644
index 000000000000..3b7d7223cfca
--- /dev/null
+++ b/dev-ruby/ruby-gettext/ruby-gettext-3.4.7.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_NAME="${PN/ruby-/}"
+RUBY_FAKEGEM_VERSION="${PV%_*}"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_EXTRADOC="README.md doc/text/news.md"
+
+RUBY_FAKEGEM_TASK_TEST="none"
+
+RUBY_FAKEGEM_EXTRAINSTALL="locale po"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Native Language Support Library and Tools modeled after GNU gettext package"
+HOMEPAGE="https://ruby-gettext.github.io/"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="doc test"
+SLOT="0"
+LICENSE="|| ( GPL-2 Ruby-BSD LGPL-3+ )"
+
+ruby_add_rdepend "
+ dev-ruby/erubi
+ >=dev-ruby/locale-2.0.5
+ dev-ruby/prime
+ dev-ruby/racc
+ >=dev-ruby/text-1.3.0
+"
+
+ruby_add_bdepend "doc? ( dev-ruby/yard )
+ dev-ruby/racc"
+ruby_add_bdepend "test? (
+ dev-ruby/test-unit:2
+ dev-ruby/test-unit-rr )"
+
+RDEPEND+=" sys-devel/gettext"
+DEPEND+=" sys-devel/gettext"
+
+all_ruby_prepare() {
+ # Fix broken racc invocation
+ sed -i -e '/command_line/ s/#{racc}/-S racc/' Rakefile || die
+
+ # Avoid bundler dependency
+ sed -i -e '/bundler/,/helper.install/ s:^:#:' \
+ -e 's/helper.gemspec/Gem::Specification.new/' Rakefile || die
+
+ # Avoid dependency on developer-specific tools.
+ sed -i -e '/notify/ s:^:#:' test/run-test.rb || die
+}
+
+each_ruby_test() {
+ # Borrowed from Fedora
+ local -x LANG=C.UTF-8
+ local -x LANGUAGE=ja_JP.utf8
+
+ # Upstream tries to daisy-chain rake calls but they fail badly
+ # with our setup, so run it manually.
+ ${RUBY} test/run-test.rb || die "tests failed"
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r samples
+}
diff --git a/dev-ruby/ruby-gettext/ruby-gettext-3.4.9.ebuild b/dev-ruby/ruby-gettext/ruby-gettext-3.4.9.ebuild
new file mode 100644
index 000000000000..2cf8607e5955
--- /dev/null
+++ b/dev-ruby/ruby-gettext/ruby-gettext-3.4.9.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_NAME="${PN/ruby-/}"
+RUBY_FAKEGEM_VERSION="${PV%_*}"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_EXTRADOC="README.md doc/text/news.md"
+
+RUBY_FAKEGEM_TASK_TEST="none"
+
+RUBY_FAKEGEM_EXTRAINSTALL="locale po"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Native Language Support Library and Tools modeled after GNU gettext package"
+HOMEPAGE="https://ruby-gettext.github.io/"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="doc test"
+SLOT="0"
+LICENSE="|| ( GPL-2 Ruby-BSD LGPL-3+ )"
+
+ruby_add_rdepend "
+ dev-ruby/erubi
+ >=dev-ruby/locale-2.0.5
+ dev-ruby/prime
+ dev-ruby/racc
+ >=dev-ruby/text-1.3.0
+"
+
+ruby_add_bdepend "doc? ( dev-ruby/yard )
+ dev-ruby/racc"
+ruby_add_bdepend "test? (
+ dev-ruby/test-unit:2
+ dev-ruby/test-unit-rr )"
+
+RDEPEND+=" sys-devel/gettext"
+DEPEND+=" sys-devel/gettext"
+
+all_ruby_prepare() {
+ # Fix broken racc invocation
+ sed -i -e '/command_line/ s/#{racc}/-S racc/' Rakefile || die
+
+ # Avoid bundler dependency
+ sed -i -e '/bundler/,/helper.install/ s:^:#:' \
+ -e 's/helper.gemspec/Gem::Specification.new/' Rakefile || die
+
+ # Avoid dependency on developer-specific tools.
+ sed -i -e '/notify/ s:^:#:' test/run-test.rb || die
+}
+
+each_ruby_test() {
+ # Borrowed from Fedora
+ local -x LANG=C.UTF-8
+ local -x LANGUAGE=ja_JP.utf8
+
+ # Upstream tries to daisy-chain rake calls but they fail badly
+ # with our setup, so run it manually.
+ ${RUBY} test/run-test.rb || die "tests failed"
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r samples
+}
diff --git a/dev-ruby/ruby-gio2/Manifest b/dev-ruby/ruby-gio2/Manifest
index f9915c2e2788..023bc72357e4 100644
--- a/dev-ruby/ruby-gio2/Manifest
+++ b/dev-ruby/ruby-gio2/Manifest
@@ -1,2 +1 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
+DIST ruby-gnome2-4.1.2.tar.gz 2708791 BLAKE2B ef24788d8c65f96c76b43d8adc38af21dfb3bfe2f8ae2157f6978993fe65e9735030e9912e8eb1ff5ff90ab1c67701ae61ac3b0790cb285646f26b6193d74be5 SHA512 898ae5bcd7a6347d7392b7888c19493905f6e660afb61f17a60b1f22e4069329ef6ccc9277375a2c40b4d998a309b61de6797f50c4633c0f5de22d2e85252537
diff --git a/dev-ruby/ruby-gio2/metadata.xml b/dev-ruby/ruby-gio2/metadata.xml
index 4db3718552d9..3b50d592e675 100644
--- a/dev-ruby/ruby-gio2/metadata.xml
+++ b/dev-ruby/ruby-gio2/metadata.xml
@@ -1,15 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>naota@gentoo.org</email>
- </maintainer>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
- </upstream>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby-gnome/ruby-gnome</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/ruby-gio2/ruby-gio2-3.3.2.ebuild b/dev-ruby/ruby-gio2/ruby-gio2-3.3.2.ebuild
deleted file mode 100644
index a43f1e28a9ae..000000000000
--- a/dev-ruby/ruby-gio2/ruby-gio2-3.3.2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-DESCRIPTION="Ruby binding of GooCanvas"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/ruby-glib2-${PV}
- >=dev-ruby/ruby-gobject-introspection-${PV}"
-
-all_ruby_prepare() {
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew_libffi/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' \
- test/gio2-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/which make/,/^ end/ s:^:#:' test/run-test.rb || die
-
- # Make sure Makefile is generated fresh for each target
- rm -f ext/gio2/Makefile Makefile Makefile.lib || die
-}
-
-each_ruby_test() {
- XDG_RUNTIME_DIR=${T} dbus-launch ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-gio2/ruby-gio2-3.3.6.ebuild b/dev-ruby/ruby-gio2/ruby-gio2-3.3.6.ebuild
deleted file mode 100644
index 341d6ab3eb43..000000000000
--- a/dev-ruby/ruby-gio2/ruby-gio2-3.3.6.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-DESCRIPTION="Ruby binding of GooCanvas"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/ruby-glib2-${PV}
- >=dev-ruby/ruby-gobject-introspection-${PV}"
-
-all_ruby_prepare() {
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' \
- test/gio2-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/which make/,/^ end/ s:^:#:' test/run-test.rb || die
-
- # Make sure Makefile is generated fresh for each target
- rm -f ext/gio2/Makefile Makefile Makefile.lib || die
-}
-
-each_ruby_test() {
- XDG_RUNTIME_DIR=${T} dbus-launch ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-gio2/ruby-gio2-4.1.2.ebuild b/dev-ruby/ruby-gio2/ruby-gio2-4.1.2.ebuild
new file mode 100644
index 000000000000..18216ea171e3
--- /dev/null
+++ b/dev-ruby/ruby-gio2/ruby-gio2-4.1.2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-ng-gnome2
+
+DESCRIPTION="Ruby binding of gio-2"
+KEYWORDS="amd64 ~ppc ~riscv ~x86"
+IUSE=""
+
+DEPEND+=" dev-libs/glib
+ test? ( sys-apps/dbus )"
+RDEPEND+=" dev-libs/glib"
+ruby_add_rdepend "~dev-ruby/ruby-glib2-${PV}
+ ~dev-ruby/ruby-gobject-introspection-${PV}"
+
+all_ruby_prepare() {
+ ruby-ng-gnome2_all_ruby_prepare
+
+ # Avoid test requiring network access
+ rm -f test/test-resolver.rb || die
+}
+
+each_ruby_test() {
+ XDG_RUNTIME_DIR=${T} dbus-launch ${RUBY} test/run-test.rb || die
+}
diff --git a/dev-ruby/ruby-glib2/Manifest b/dev-ruby/ruby-glib2/Manifest
index f9915c2e2788..023bc72357e4 100644
--- a/dev-ruby/ruby-glib2/Manifest
+++ b/dev-ruby/ruby-glib2/Manifest
@@ -1,2 +1 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
+DIST ruby-gnome2-4.1.2.tar.gz 2708791 BLAKE2B ef24788d8c65f96c76b43d8adc38af21dfb3bfe2f8ae2157f6978993fe65e9735030e9912e8eb1ff5ff90ab1c67701ae61ac3b0790cb285646f26b6193d74be5 SHA512 898ae5bcd7a6347d7392b7888c19493905f6e660afb61f17a60b1f22e4069329ef6ccc9277375a2c40b4d998a309b61de6797f50c4633c0f5de22d2e85252537
diff --git a/dev-ruby/ruby-glib2/metadata.xml b/dev-ruby/ruby-glib2/metadata.xml
index 2eb590f61d26..3b50d592e675 100644
--- a/dev-ruby/ruby-glib2/metadata.xml
+++ b/dev-ruby/ruby-glib2/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
+ <remote-id type="github">ruby-gnome/ruby-gnome</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ruby-glib2/ruby-glib2-3.3.2.ebuild b/dev-ruby/ruby-glib2/ruby-glib2-3.3.2.ebuild
deleted file mode 100644
index 28812d439ef8..000000000000
--- a/dev-ruby/ruby-glib2/ruby-glib2-3.3.2.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-DESCRIPTION="Ruby Glib2 bindings"
-KEYWORDS="amd64 ~ppc ~ppc64 x86"
-IUSE=""
-RDEPEND+=" >=dev-libs/glib-2"
-DEPEND+=" >=dev-libs/glib-2"
-
-ruby_add_bdepend "dev-ruby/pkg-config
- test? ( >=dev-ruby/test-unit-2 )"
-
-all_ruby_prepare() {
- # Skip spawn tests since our sandbox also provides items in the environment and this makes the test fragile.
- rm -f test/test-spawn.rb || die
-
- # Remove pregenerated Makefile since it will otherwise be shared by all targets.
- rm -f Makefile Makefile.lib ext/glib2/Makefile || die
-
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#:' lib/mkmf-gnome2.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-glib2/ruby-glib2-3.3.6.ebuild b/dev-ruby/ruby-glib2/ruby-glib2-3.3.6.ebuild
deleted file mode 100644
index b5ef2c1f6643..000000000000
--- a/dev-ruby/ruby-glib2/ruby-glib2-3.3.6.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-DESCRIPTION="Ruby Glib2 bindings"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-RDEPEND+=" >=dev-libs/glib-2"
-DEPEND+=" >=dev-libs/glib-2"
-
-ruby_add_bdepend ">=dev-ruby/pkg-config-1.3.5
- test? ( >=dev-ruby/test-unit-2 )"
-
-all_ruby_prepare() {
- # Skip spawn tests since our sandbox also provides items in the environment and this makes the test fragile.
- rm -f test/test-spawn.rb || die
-
- # Remove pregenerated Makefile since it will otherwise be shared by all targets.
- rm -f Makefile Makefile.lib ext/glib2/Makefile || die
-
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#:' -e '/^setup_homebrew/ s:^:#:' lib/mkmf-gnome2.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-glib2/ruby-glib2-4.1.2.ebuild b/dev-ruby/ruby-glib2/ruby-glib2-4.1.2.ebuild
new file mode 100644
index 000000000000..d56bdd14102a
--- /dev/null
+++ b/dev-ruby/ruby-glib2/ruby-glib2-4.1.2.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-ng-gnome2
+
+DESCRIPTION="Ruby Glib2 bindings"
+KEYWORDS="amd64 ~ppc ~ppc64 ~riscv x86"
+IUSE=""
+RDEPEND+=" >=dev-libs/glib-2"
+DEPEND+=" >=dev-libs/glib-2"
+
+all_ruby_prepare() {
+ ruby-ng-gnome2_all_ruby_prepare
+
+ # Skip spawn tests since our sandbox also provides items in the
+ # environment and this makes the test fragile.
+ rm -v test/test-spawn.rb || die
+}
diff --git a/dev-ruby/ruby-gnome2/metadata.xml b/dev-ruby/ruby-gnome2/metadata.xml
deleted file mode 100644
index b03873ee9b91..000000000000
--- a/dev-ruby/ruby-gnome2/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-gnome2/ruby-gnome2-3.3.2.ebuild b/dev-ruby/ruby-gnome2/ruby-gnome2-3.3.2.ebuild
deleted file mode 100644
index 38c2ff03a977..000000000000
--- a/dev-ruby/ruby-gnome2/ruby-gnome2-3.3.2.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng
-
-DESCRIPTION="Ruby Gnome2 bindings"
-HOMEPAGE="http://ruby-gnome2.sourceforge.jp/"
-SRC_URI=""
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/ruby-atk-${PV}
- >=dev-ruby/ruby-clutter-${PV}
- >=dev-ruby/ruby-clutter-gstreamer-${PV}
- >=dev-ruby/ruby-clutter-gdk-${PV}
- >=dev-ruby/ruby-clutter-gtk-${PV}
- >=dev-ruby/ruby-gdkpixbuf2-${PV}
- >=dev-ruby/ruby-gdk3-${PV}
- >=dev-ruby/ruby-gio2-${PV}
- >=dev-ruby/ruby-glib2-${PV}
- >=dev-ruby/ruby-gobject-introspection-${PV}
- >=dev-ruby/ruby-gstreamer-${PV}
- >=dev-ruby/ruby-gtk2-${PV}
- >=dev-ruby/ruby-gtk3-${PV}
- >=dev-ruby/ruby-gtksourceview-${PV}
- >=dev-ruby/ruby-gtksourceview3-${PV}
- >=dev-ruby/ruby-pango-${PV}
- >=dev-ruby/ruby-poppler-${PV}
- >=dev-ruby/ruby-rsvg-${PV}
- >=dev-ruby/ruby-vte-${PV}
- >=dev-ruby/ruby-vte3-${PV}
- >=dev-ruby/ruby-webkit2-gtk-${PV}"
diff --git a/dev-ruby/ruby-gnome2/ruby-gnome2-3.3.6.ebuild b/dev-ruby/ruby-gnome2/ruby-gnome2-3.3.6.ebuild
deleted file mode 100644
index e7a6d40efe5a..000000000000
--- a/dev-ruby/ruby-gnome2/ruby-gnome2-3.3.6.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit ruby-ng
-
-DESCRIPTION="Ruby Gnome2 bindings"
-HOMEPAGE="http://ruby-gnome2.sourceforge.jp/"
-SRC_URI=""
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/ruby-atk-${PV}
- >=dev-ruby/ruby-clutter-${PV}
- >=dev-ruby/ruby-clutter-gstreamer-${PV}
- >=dev-ruby/ruby-clutter-gdk-${PV}
- >=dev-ruby/ruby-clutter-gtk-${PV}
- >=dev-ruby/ruby-gdkpixbuf2-${PV}
- >=dev-ruby/ruby-gdk3-${PV}
- >=dev-ruby/ruby-gio2-${PV}
- >=dev-ruby/ruby-glib2-${PV}
- >=dev-ruby/ruby-gobject-introspection-${PV}
- >=dev-ruby/ruby-gstreamer-${PV}
- >=dev-ruby/ruby-gtk2-${PV}
- >=dev-ruby/ruby-gtk3-${PV}
- >=dev-ruby/ruby-gtksourceview-${PV}
- >=dev-ruby/ruby-gtksourceview3-${PV}
- >=dev-ruby/ruby-pango-${PV}
- >=dev-ruby/ruby-poppler-${PV}
- >=dev-ruby/ruby-rsvg-${PV}
- >=dev-ruby/ruby-vte-${PV}
- >=dev-ruby/ruby-vte3-${PV}
- >=dev-ruby/ruby-webkit2-gtk-${PV}"
diff --git a/dev-ruby/ruby-gobject-introspection/Manifest b/dev-ruby/ruby-gobject-introspection/Manifest
index f9915c2e2788..023bc72357e4 100644
--- a/dev-ruby/ruby-gobject-introspection/Manifest
+++ b/dev-ruby/ruby-gobject-introspection/Manifest
@@ -1,2 +1 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
+DIST ruby-gnome2-4.1.2.tar.gz 2708791 BLAKE2B ef24788d8c65f96c76b43d8adc38af21dfb3bfe2f8ae2157f6978993fe65e9735030e9912e8eb1ff5ff90ab1c67701ae61ac3b0790cb285646f26b6193d74be5 SHA512 898ae5bcd7a6347d7392b7888c19493905f6e660afb61f17a60b1f22e4069329ef6ccc9277375a2c40b4d998a309b61de6797f50c4633c0f5de22d2e85252537
diff --git a/dev-ruby/ruby-gobject-introspection/metadata.xml b/dev-ruby/ruby-gobject-introspection/metadata.xml
index 2eb590f61d26..3b50d592e675 100644
--- a/dev-ruby/ruby-gobject-introspection/metadata.xml
+++ b/dev-ruby/ruby-gobject-introspection/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
+ <remote-id type="github">ruby-gnome/ruby-gnome</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ruby-gobject-introspection/ruby-gobject-introspection-3.3.2.ebuild b/dev-ruby/ruby-gobject-introspection/ruby-gobject-introspection-3.3.2.ebuild
deleted file mode 100644
index f987c9c9f381..000000000000
--- a/dev-ruby/ruby-gobject-introspection/ruby-gobject-introspection-3.3.2.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-RUBY_S=ruby-gnome2-all-${PV}/gobject-introspection
-
-DESCRIPTION="Ruby GObjectIntrospection bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" dev-libs/gobject-introspection"
-RDEPEND+=" dev-libs/gobject-introspection"
-
-ruby_add_rdepend "~dev-ruby/ruby-glib2-${PV}"
-
-all_ruby_prepare() {
- # Remove pregenerated Makefile since it will otherwise be shared by all targets.
- rm -f Makefile Makefile.lib ext/gobject-introspection/Makefile || die
-
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew_libffi/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' test/gobject-introspection-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-gobject-introspection/ruby-gobject-introspection-3.3.6.ebuild b/dev-ruby/ruby-gobject-introspection/ruby-gobject-introspection-3.3.6.ebuild
deleted file mode 100644
index 2cb9544a2609..000000000000
--- a/dev-ruby/ruby-gobject-introspection/ruby-gobject-introspection-3.3.6.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-RUBY_S=ruby-gnome2-all-${PV}/gobject-introspection
-
-DESCRIPTION="Ruby GObjectIntrospection bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" dev-libs/gobject-introspection"
-RDEPEND+=" dev-libs/gobject-introspection"
-
-ruby_add_rdepend "~dev-ruby/ruby-glib2-${PV}"
-
-all_ruby_prepare() {
- # Remove pregenerated Makefile since it will otherwise be shared by all targets.
- rm -f Makefile Makefile.lib ext/gobject-introspection/Makefile || die
-
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' test/gobject-introspection-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-gobject-introspection/ruby-gobject-introspection-4.1.2.ebuild b/dev-ruby/ruby-gobject-introspection/ruby-gobject-introspection-4.1.2.ebuild
new file mode 100644
index 000000000000..1d073f4d314a
--- /dev/null
+++ b/dev-ruby/ruby-gobject-introspection/ruby-gobject-introspection-4.1.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-ng-gnome2
+
+DESCRIPTION="Ruby GObjectIntrospection bindings"
+KEYWORDS="amd64 ~ppc ~riscv ~x86"
+IUSE=""
+
+DEPEND+=" dev-libs/glib
+ dev-libs/gobject-introspection"
+RDEPEND+=" dev-libs/glib
+ dev-libs/gobject-introspection"
+
+ruby_add_rdepend "~dev-ruby/ruby-glib2-${PV}"
diff --git a/dev-ruby/ruby-gstreamer/Manifest b/dev-ruby/ruby-gstreamer/Manifest
deleted file mode 100644
index f9915c2e2788..000000000000
--- a/dev-ruby/ruby-gstreamer/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
diff --git a/dev-ruby/ruby-gstreamer/metadata.xml b/dev-ruby/ruby-gstreamer/metadata.xml
deleted file mode 100644
index 2eb590f61d26..000000000000
--- a/dev-ruby/ruby-gstreamer/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-gstreamer/ruby-gstreamer-3.3.2.ebuild b/dev-ruby/ruby-gstreamer/ruby-gstreamer-3.3.2.ebuild
deleted file mode 100644
index fcdbc13d8606..000000000000
--- a/dev-ruby/ruby-gstreamer/ruby-gstreamer-3.3.2.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby GStreamer bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-RDEPEND="${RDEPEND}
- media-libs/gstreamer:1.0
- media-libs/gst-plugins-base:1.0"
-DEPEND="${DEPEND}
- dev-libs/gobject-introspection
- media-libs/gstreamer:1.0
- media-libs/gst-plugins-base:1.0"
-
-ruby_add_rdepend "
- ~dev-ruby/ruby-glib2-${PV}
- ~dev-ruby/ruby-gobject-introspection-${PV}
-"
-
-all_ruby_prepare() {
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew_libffi/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-gstreamer/ruby-gstreamer-3.3.6.ebuild b/dev-ruby/ruby-gstreamer/ruby-gstreamer-3.3.6.ebuild
deleted file mode 100644
index 93583053003c..000000000000
--- a/dev-ruby/ruby-gstreamer/ruby-gstreamer-3.3.6.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby GStreamer bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-RDEPEND="${RDEPEND}
- media-libs/gstreamer:1.0
- media-libs/gst-plugins-base:1.0"
-DEPEND="${DEPEND}
- dev-libs/gobject-introspection
- media-libs/gstreamer:1.0
- media-libs/gst-plugins-base:1.0"
-
-ruby_add_rdepend "
- ~dev-ruby/ruby-glib2-${PV}
- ~dev-ruby/ruby-gobject-introspection-${PV}
-"
-
-all_ruby_prepare() {
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-gtk2/Manifest b/dev-ruby/ruby-gtk2/Manifest
deleted file mode 100644
index f9915c2e2788..000000000000
--- a/dev-ruby/ruby-gtk2/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
diff --git a/dev-ruby/ruby-gtk2/metadata.xml b/dev-ruby/ruby-gtk2/metadata.xml
deleted file mode 100644
index 2eb590f61d26..000000000000
--- a/dev-ruby/ruby-gtk2/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-gtk2/ruby-gtk2-3.3.2.ebuild b/dev-ruby/ruby-gtk2/ruby-gtk2-3.3.2.ebuild
deleted file mode 100644
index 78ffa41c928d..000000000000
--- a/dev-ruby/ruby-gtk2/ruby-gtk2-3.3.2.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby Gtk2 bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" x11-libs/gtk+:2
- x11-themes/hicolor-icon-theme"
-RDEPEND+=" x11-libs/gtk+:2"
-
-ruby_add_rdepend "
- >=dev-ruby/ruby-gdkpixbuf2-${PV}
- >=dev-ruby/ruby-atk-${PV}
- >=dev-ruby/ruby-pango-${PV}"
-
-all_ruby_prepare() {
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew_libffi/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-
- # Use standard icon
- sed -i -e 's/"find"/"call-start"/' test/test_gtk_icon_theme.rb || die
-
- # Fix search path for gtk-2.0 on Gentoo
- sed -i -e "/include_paths =/ s:]$:,'/usr/include/gtk-2.0']:" ext/gtk2/extconf.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-gtk2/ruby-gtk2-3.3.6.ebuild b/dev-ruby/ruby-gtk2/ruby-gtk2-3.3.6.ebuild
deleted file mode 100644
index 42e6773e7dff..000000000000
--- a/dev-ruby/ruby-gtk2/ruby-gtk2-3.3.6.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby Gtk2 bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" x11-libs/gtk+:2
- x11-themes/hicolor-icon-theme"
-RDEPEND+=" x11-libs/gtk+:2"
-
-ruby_add_rdepend "
- >=dev-ruby/ruby-gdkpixbuf2-${PV}
- >=dev-ruby/ruby-atk-${PV}
- >=dev-ruby/ruby-pango-${PV}"
-
-all_ruby_prepare() {
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-
- # Use standard icon
- sed -i -e 's/"find"/"call-start"/' test/test_gtk_icon_theme.rb || die
-
- # Fix search path for gtk-2.0 on Gentoo
- sed -i -e "/include_paths =/ s:]$:,'/usr/include/gtk-2.0']:" ext/gtk2/extconf.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-gtk3/Manifest b/dev-ruby/ruby-gtk3/Manifest
index f9915c2e2788..023bc72357e4 100644
--- a/dev-ruby/ruby-gtk3/Manifest
+++ b/dev-ruby/ruby-gtk3/Manifest
@@ -1,2 +1 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
+DIST ruby-gnome2-4.1.2.tar.gz 2708791 BLAKE2B ef24788d8c65f96c76b43d8adc38af21dfb3bfe2f8ae2157f6978993fe65e9735030e9912e8eb1ff5ff90ab1c67701ae61ac3b0790cb285646f26b6193d74be5 SHA512 898ae5bcd7a6347d7392b7888c19493905f6e660afb61f17a60b1f22e4069329ef6ccc9277375a2c40b4d998a309b61de6797f50c4633c0f5de22d2e85252537
diff --git a/dev-ruby/ruby-gtk3/files/ruby-gtk3-4.1.2-c99.patch b/dev-ruby/ruby-gtk3/files/ruby-gtk3-4.1.2-c99.patch
new file mode 100644
index 000000000000..0da13a4a6344
--- /dev/null
+++ b/dev-ruby/ruby-gtk3/files/ruby-gtk3-4.1.2-c99.patch
@@ -0,0 +1,29 @@
+https://bugs.gentoo.org/921145
+https://github.com/ruby-gnome/ruby-gnome/commit/c196bf19a5d6a395011a90c3d1cb8f039d15824d
+
+From c196bf19a5d6a395011a90c3d1cb8f039d15824d Mon Sep 17 00:00:00 2001
+From: Sutou Kouhei <kou@clear-code.com>
+Date: Sat, 19 Aug 2023 15:45:46 +0900
+Subject: [PATCH] gtk3: fix a wrong type warning
+
+ compiling rb-gtk3-spin-button.c
+ rb-gtk3-spin-button.c:70:15: warning: incompatible function pointer types passing 'VALUE (VALUE)' (aka 'unsigned long (unsigned long)') to parameter of type 'VALUE (*)(VALUE, VALUE)' (aka 'unsigned long (*)(unsigned long, unsigned long)') [-Wincompatible-function-pointer-types]
+ rb_gtk3_spin_button_input_rescue, (VALUE)&input_data);
+ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ /Users/runner/hostedtoolcache/Ruby/3.2.2/x64/include/ruby-3.2.0/ruby/internal/iterator.h:364:62: note: passing argument to parameter 'r_proc' here
+ VALUE rb_rescue(VALUE (*b_proc)(VALUE), VALUE data1, VALUE (*r_proc)(VALUE, VALUE), VALUE data2);
+ ^
+
+Reported by MATSUMOTO Katsuyoshi. Thanks!!!
+--- a/ext/gtk3/rb-gtk3-spin-button.c
++++ b/ext/gtk3/rb-gtk3-spin-button.c
+@@ -46,7 +46,7 @@ rb_gtk3_spin_button_input_body(VALUE user_data)
+ }
+
+ static VALUE
+-rb_gtk3_spin_button_input_rescue(VALUE user_data)
++rb_gtk3_spin_button_input_rescue(VALUE user_data, VALUE error)
+ {
+ InputData *input_data = (InputData *)user_data;
+ g_value_set_int(input_data->data->return_value, GTK_INPUT_ERROR);
+
diff --git a/dev-ruby/ruby-gtk3/metadata.xml b/dev-ruby/ruby-gtk3/metadata.xml
index 2eb590f61d26..3b50d592e675 100644
--- a/dev-ruby/ruby-gtk3/metadata.xml
+++ b/dev-ruby/ruby-gtk3/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
+ <remote-id type="github">ruby-gnome/ruby-gnome</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ruby-gtk3/ruby-gtk3-3.3.2.ebuild b/dev-ruby/ruby-gtk3/ruby-gtk3-3.3.2.ebuild
deleted file mode 100644
index e976fa0afc4b..000000000000
--- a/dev-ruby/ruby-gtk3/ruby-gtk3-3.3.2.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby Gtk3 bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" x11-libs/gtk+:3"
-RDEPEND+=" x11-libs/gtk+:3"
-
-ruby_add_bdepend ">=dev-ruby/ruby-glib2-${PV}
- >=dev-ruby/ruby-pango-${PV}"
-
-ruby_add_rdepend "
- >=dev-ruby/ruby-atk-${PV}
- >=dev-ruby/ruby-gdk3-${PV}
- >=dev-ruby/ruby-gdkpixbuf2-${PV}
- >=dev-ruby/ruby-gio2-${PV}
- >=dev-ruby/ruby-pango-${PV}
-"
-
-all_ruby_prepare() {
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew_libffi/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/which make/,/^ end/ s:^:#:' test/run-test.rb || die
-
- # Use standard icon
- sed -i -e 's/"find"/"call-start"/' test/test-gtk-icon-theme.rb || die
- sed -i -e 's/"search"/"system-search"/' test/test-gtk-icon-theme.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-gtk3/ruby-gtk3-3.3.6.ebuild b/dev-ruby/ruby-gtk3/ruby-gtk3-3.3.6.ebuild
deleted file mode 100644
index 256dc2c7b9a1..000000000000
--- a/dev-ruby/ruby-gtk3/ruby-gtk3-3.3.6.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby Gtk3 bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" x11-libs/gtk+:3"
-RDEPEND+=" x11-libs/gtk+:3"
-
-ruby_add_bdepend ">=dev-ruby/ruby-glib2-${PV}
- >=dev-ruby/ruby-pango-${PV}"
-
-ruby_add_rdepend "
- >=dev-ruby/ruby-atk-${PV}
- >=dev-ruby/ruby-gdk3-${PV}
- >=dev-ruby/ruby-gdkpixbuf2-${PV}
- >=dev-ruby/ruby-gio2-${PV}
- >=dev-ruby/ruby-pango-${PV}
-"
-
-all_ruby_prepare() {
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/which make/,/^ end/ s:^:#:' test/run-test.rb || die
-
- # Use standard icon
- sed -i -e 's/"find"/"call-start"/' test/test-gtk-icon-theme.rb || die
- sed -i -e 's/"search"/"system-search"/' test/test-gtk-icon-theme.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-gtk3/ruby-gtk3-4.1.2-r1.ebuild b/dev-ruby/ruby-gtk3/ruby-gtk3-4.1.2-r1.ebuild
new file mode 100644
index 000000000000..0410d6b9acb2
--- /dev/null
+++ b/dev-ruby/ruby-gtk3/ruby-gtk3-4.1.2-r1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_GNOME2_NEED_VIRTX=yes
+
+inherit ruby-ng-gnome2
+
+DESCRIPTION="Ruby Gtk2 bindings"
+KEYWORDS="~amd64 ~ppc ~riscv ~x86"
+IUSE=""
+
+DEPEND+=" dev-libs/glib
+ dev-libs/gobject-introspection
+ x11-base/xorg-proto
+ x11-libs/gtk+:3"
+RDEPEND+=" dev-libs/glib
+ dev-libs/gobject-introspection
+ x11-libs/gtk+:3"
+
+ruby_add_rdepend "
+ ~dev-ruby/ruby-atk-${PV}
+ ~dev-ruby/ruby-gdk3-${PV}"
+ruby_add_bdepend "
+ ~dev-ruby/ruby-cairo-gobject-${PV}
+ ~dev-ruby/ruby-glib2-${PV}
+ ~dev-ruby/ruby-gobject-introspection-${PV}
+ ~dev-ruby/ruby-pango-${PV}"
+
+PATCHES=(
+ "${FILESDIR}"/ruby-gtk3-4.1.2-c99.patch
+)
diff --git a/dev-ruby/ruby-gtk3/ruby-gtk3-4.1.2.ebuild b/dev-ruby/ruby-gtk3/ruby-gtk3-4.1.2.ebuild
new file mode 100644
index 000000000000..8e9684c3b797
--- /dev/null
+++ b/dev-ruby/ruby-gtk3/ruby-gtk3-4.1.2.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_GNOME2_NEED_VIRTX=yes
+
+inherit ruby-ng-gnome2
+
+DESCRIPTION="Ruby Gtk2 bindings"
+KEYWORDS="~amd64 ~ppc ~riscv ~x86"
+IUSE=""
+
+DEPEND+=" dev-libs/glib
+ dev-libs/gobject-introspection
+ x11-base/xorg-proto
+ x11-libs/gtk+:3"
+RDEPEND+=" dev-libs/glib
+ dev-libs/gobject-introspection
+ x11-libs/gtk+:3"
+
+ruby_add_rdepend "
+ ~dev-ruby/ruby-atk-${PV}
+ ~dev-ruby/ruby-gdk3-${PV}"
+ruby_add_bdepend "
+ ~dev-ruby/ruby-cairo-gobject-${PV}
+ ~dev-ruby/ruby-glib2-${PV}
+ ~dev-ruby/ruby-gobject-introspection-${PV}
+ ~dev-ruby/ruby-pango-${PV}"
diff --git a/dev-ruby/ruby-gtksourceview/Manifest b/dev-ruby/ruby-gtksourceview/Manifest
deleted file mode 100644
index f9915c2e2788..000000000000
--- a/dev-ruby/ruby-gtksourceview/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
diff --git a/dev-ruby/ruby-gtksourceview/metadata.xml b/dev-ruby/ruby-gtksourceview/metadata.xml
deleted file mode 100644
index 2eb590f61d26..000000000000
--- a/dev-ruby/ruby-gtksourceview/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-gtksourceview/ruby-gtksourceview-3.3.2.ebuild b/dev-ruby/ruby-gtksourceview/ruby-gtksourceview-3.3.2.ebuild
deleted file mode 100644
index d06ec429df42..000000000000
--- a/dev-ruby/ruby-gtksourceview/ruby-gtksourceview-3.3.2.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME="gtksourceview2"
-
-inherit virtualx ruby-ng-gnome2
-
-RUBY_S=ruby-gnome2-all-${PV}/gtksourceview2
-
-DESCRIPTION="Ruby bindings for gtksourceview"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-RDEPEND+=" x11-libs/gtksourceview:2.0"
-DEPEND+=" x11-libs/gtksourceview:2.0"
-
-ruby_add_rdepend ">=dev-ruby/ruby-gtk2-${PV}"
-
-all_ruby_prepare() {
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew_libffi/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-gtksourceview/ruby-gtksourceview-3.3.6.ebuild b/dev-ruby/ruby-gtksourceview/ruby-gtksourceview-3.3.6.ebuild
deleted file mode 100644
index c1d95dd86692..000000000000
--- a/dev-ruby/ruby-gtksourceview/ruby-gtksourceview-3.3.6.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME="gtksourceview2"
-
-inherit virtualx ruby-ng-gnome2
-
-RUBY_S=ruby-gnome2-all-${PV}/gtksourceview2
-
-DESCRIPTION="Ruby bindings for gtksourceview"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-RDEPEND+=" x11-libs/gtksourceview:2.0"
-DEPEND+=" x11-libs/gtksourceview:2.0"
-
-ruby_add_rdepend ">=dev-ruby/ruby-gtk2-${PV}"
-
-all_ruby_prepare() {
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-gtksourceview3/Manifest b/dev-ruby/ruby-gtksourceview3/Manifest
deleted file mode 100644
index f9915c2e2788..000000000000
--- a/dev-ruby/ruby-gtksourceview3/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
diff --git a/dev-ruby/ruby-gtksourceview3/metadata.xml b/dev-ruby/ruby-gtksourceview3/metadata.xml
deleted file mode 100644
index 2eb590f61d26..000000000000
--- a/dev-ruby/ruby-gtksourceview3/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-gtksourceview3/ruby-gtksourceview3-3.3.2.ebuild b/dev-ruby/ruby-gtksourceview3/ruby-gtksourceview3-3.3.2.ebuild
deleted file mode 100644
index f1b0879b2a1f..000000000000
--- a/dev-ruby/ruby-gtksourceview3/ruby-gtksourceview3-3.3.2.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby Gtk3 bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" x11-libs/gtksourceview:3.0"
-RDEPEND+=" x11-libs/gtksourceview:3.0"
-
-ruby_add_bdepend ">=dev-ruby/ruby-glib2-${PV}"
-ruby_add_rdepend ">=dev-ruby/ruby-gtk3-${PV}"
-
-all_ruby_prepare() {
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-gtksourceview3/ruby-gtksourceview3-3.3.6.ebuild b/dev-ruby/ruby-gtksourceview3/ruby-gtksourceview3-3.3.6.ebuild
deleted file mode 100644
index 4a285a492de9..000000000000
--- a/dev-ruby/ruby-gtksourceview3/ruby-gtksourceview3-3.3.6.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby Gtk3 bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" x11-libs/gtksourceview:3.0"
-RDEPEND+=" x11-libs/gtksourceview:3.0"
-
-ruby_add_bdepend ">=dev-ruby/ruby-glib2-${PV}"
-ruby_add_rdepend ">=dev-ruby/ruby-gtk3-${PV}"
-
-all_ruby_prepare() {
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-hmac/metadata.xml b/dev-ruby/ruby-hmac/metadata.xml
index eb1e47f2edfb..daac6fdb7252 100644
--- a/dev-ruby/ruby-hmac/metadata.xml
+++ b/dev-ruby/ruby-hmac/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-hmac/ruby-hmac-0.4.0-r1.ebuild b/dev-ruby/ruby-hmac/ruby-hmac-0.4.0-r1.ebuild
deleted file mode 100644
index 91aa144cd409..000000000000
--- a/dev-ruby/ruby-hmac/ruby-hmac-0.4.0-r1.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A common interface to HMAC functionality as documented in RFC2104"
-HOMEPAGE="http://ruby-hmac.rubyforge.org/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "
- test? ( >=dev-ruby/hoe-2.5.0 )"
diff --git a/dev-ruby/ruby-hmac/ruby-hmac-0.4.0-r2.ebuild b/dev-ruby/ruby-hmac/ruby-hmac-0.4.0-r2.ebuild
new file mode 100644
index 000000000000..713c1da14f64
--- /dev/null
+++ b/dev-ruby/ruby-hmac/ruby-hmac-0.4.0-r2.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A common interface to HMAC functionality as documented in RFC2104"
+HOMEPAGE="http://ruby-hmac.rubyforge.org/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+each_ruby_test() {
+ ${RUBY} -Ilib test/test_hmac.rb || die
+}
diff --git a/dev-ruby/ruby-ldap/Manifest b/dev-ruby/ruby-ldap/Manifest
index bc6ead88f213..b8adbc6011a3 100644
--- a/dev-ruby/ruby-ldap/Manifest
+++ b/dev-ruby/ruby-ldap/Manifest
@@ -1,2 +1 @@
-DIST ruby-ldap-0.9.19.gem 91648 BLAKE2B 0ea6fe17ac2e4cd34a0834c6b95b1db4905e709010962959735cc3cedf9d50695d642b6042711b4f5154198fbe0bb5312903169ba8f1a7868b6f18d681a81682 SHA512 0ed931552df00c11855297ab44fd1c9a79e751937758d38189147f1d37cbce9b1da6fa42e64a9fd44610e948b1c13031013b7931ed473cd55b8425e64a50584a
DIST ruby-ldap-0.9.20.gem 67072 BLAKE2B 626a35ab764dacfb37c727d867e1d435222730a3e7ea745ee4e7ec051ce3a822cc5a1230b463bc12f4a2390db667ed3b61deceb9842c014f64cdf43a26d285f9 SHA512 4f4902e7eaf4fe0cd421d58c73ce4e625d61ee20ef02363d3cf5754c66237e0f378ac433b234c2b86d5f5284ae03b7ae6c46d3575c512487bc1a931d021c9517
diff --git a/dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-clang16-fix.patch b/dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-clang16-fix.patch
new file mode 100644
index 000000000000..580584c61994
--- /dev/null
+++ b/dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-clang16-fix.patch
@@ -0,0 +1,12 @@
+Bug: https://bugs.gentoo.org/884405
+--- a/ldap.c
++++ b/ldap.c
+@@ -201,7 +201,7 @@ rb_ldap_hash2mods (VALUE self, VALUE op, VALUE hash)
+ VALUE tmp;
+
+ tmp = rb_assoc_new (op, rb_ary_new ());
+- rb_iterate (rb_each, hash, rb_ldap_hash2mods_i, tmp);
++ rb_iterate (rb_each, hash, (rb_block_call_func_t)rb_ldap_hash2mods_i, tmp);
+
+ return rb_ary_entry (tmp, 1);
+ }
diff --git a/dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-ruby32.patch b/dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-ruby32.patch
new file mode 100644
index 000000000000..b7b101db2f30
--- /dev/null
+++ b/dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-ruby32.patch
@@ -0,0 +1,24 @@
+From aa43040eb6b6d591e42a19ee385fc1ba17c7202b Mon Sep 17 00:00:00 2001
+From: Jeremy Evans <code@jeremyevans.net>
+Date: Tue, 27 Dec 2022 17:19:45 -0800
+Subject: [PATCH] Don't use rb_cData
+
+This fixes ruby-ldap on Ruby 3.2+
+---
+ conn.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/conn.c b/conn.c
+index e628695..39eeb5f 100644
+--- a/conn.c
++++ b/conn.c
+@@ -1855,7 +1855,8 @@ Init_ldap_conn ()
+ {
+ rb_ldap_sort_obj = Qnil;
+
+- rb_cLDAP_Conn = rb_define_class_under (rb_mLDAP, "Conn", rb_cData);
++ rb_cLDAP_Conn = rb_define_class_under (rb_mLDAP, "Conn", rb_cObject);
++ rb_undef_alloc_func(rb_cLDAP_Conn);
+ rb_define_attr (rb_cLDAP_Conn, "referrals", 1, 0);
+ rb_define_attr (rb_cLDAP_Conn, "controls", 1, 0);
+ rb_define_attr (rb_cLDAP_Conn, "sasl_quiet", 1, 1);
diff --git a/dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-tainted.patch b/dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-tainted.patch
new file mode 100644
index 000000000000..84c9ee29610d
--- /dev/null
+++ b/dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-tainted.patch
@@ -0,0 +1,28 @@
+From 849ca6bb46bf4826d51648feddd453142281e541 Mon Sep 17 00:00:00 2001
+From: Hisashi MINAMINO <minamino@iij.ad.jp>
+Date: Thu, 28 May 2020 14:04:05 +0900
+Subject: [PATCH] for ruby-2.7
+
+---
+ rbldap.h | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+diff --git a/rbldap.h b/rbldap.h
+index 1fa04e1..b7b1765 100644
+--- a/rbldap.h
++++ b/rbldap.h
+@@ -205,3 +205,14 @@ VALUE rb_ldap_mod_vals (VALUE);
+ rb_define_method(rb_cLDAP_Mod,method,cfunc,argc)
+
+ #endif
++
++#if RUBY_VERSION_CODE >= 270
++# if defined rb_tainted_str_new
++# undef rb_tainted_str_new
++# endif
++# if defined rb_tainted_str_new2
++# undef rb_tainted_str_new2
++# endif
++# define rb_tainted_str_new(p,l) rb_str_new((p),(l))
++# define rb_tainted_str_new2(p) rb_str_new_cstr((p))
++#endif
diff --git a/dev-ruby/ruby-ldap/metadata.xml b/dev-ruby/ruby-ldap/metadata.xml
index a9f21005f731..8ae599f79692 100644
--- a/dev-ruby/ruby-ldap/metadata.xml
+++ b/dev-ruby/ruby-ldap/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
@@ -7,6 +7,6 @@
</maintainer>
<upstream>
<remote-id type="google-code">ruby-activeldap</remote-id>
- <remote-id type="sourceforge">ruby-ldap</remote-id>
+ <remote-id type="github">bearded/ruby-ldap</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ruby-ldap/ruby-ldap-0.9.19.ebuild b/dev-ruby/ruby-ldap/ruby-ldap-0.9.19.ebuild
deleted file mode 100644
index 7ac9ba929efd..000000000000
--- a/dev-ruby/ruby-ldap/ruby-ldap-0.9.19.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-inherit multilib ruby-fakegem
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_EXTRADOC="ChangeLog FAQ NOTES README TODO"
-
-DESCRIPTION="A Ruby interface to some LDAP libraries"
-HOMEPAGE="https://github.com/bearded/ruby-ldap"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="alpha amd64 ~arm hppa ia64 ppc ~ppc64 ~sparc x86 ~x86-macos"
-IUSE="ssl"
-DEPEND=">=net-nds/openldap-2
- dev-libs/cyrus-sasl
- ssl? ( dev-libs/openssl:0 )"
-RDEPEND="${DEPEND}"
-
-# Current test set is interactive due to certificate generation and requires
-# running LDAP daemon
-RESTRICT="test"
-
-each_ruby_configure() {
- local myconf="--with-openldap2"
- if ! use ssl ; then
- myconf="${myconf} --without-libcrypto --without-libssl"
- fi
- ${RUBY} extconf.rb ${myconf} || die "extconf.rb failed"
- sed -i -e 's:-Wl,--no-undefined::' \
- -e "s/^ldflags = /ldflags = $\(LDFLAGS\) /" Makefile || die
-}
-
-each_ruby_compile() {
- emake V=1
- cp ldap$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/ruby-ldap/ruby-ldap-0.9.20-r5.ebuild b/dev-ruby/ruby-ldap/ruby-ldap-0.9.20-r5.ebuild
new file mode 100644
index 000000000000..adfd19c39389
--- /dev/null
+++ b/dev-ruby/ruby-ldap/ruby-ldap-0.9.20-r5.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_EXTENSIONS=(./extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="ChangeLog FAQ NOTES README TODO"
+
+DESCRIPTION="A Ruby interface to some LDAP libraries"
+HOMEPAGE="https://github.com/bearded/ruby-ldap"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+IUSE="ssl"
+DEPEND=">=net-nds/openldap-2:=
+ dev-libs/cyrus-sasl
+ ssl? ( dev-libs/openssl:0= )"
+RDEPEND="${DEPEND}"
+
+# Current test set is interactive due to certificate generation and requires
+# running LDAP daemon
+RESTRICT="test"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.9.20-clang16-fix.patch
+ "${FILESDIR}"/${PN}-0.9.20-ruby32.patch
+ "${FILESDIR}"/${PN}-0.9.20-tainted.patch
+)
+
+each_ruby_configure() {
+ local myconf="--with-openldap2"
+ if ! use ssl ; then
+ myconf="${myconf} --without-libcrypto --without-libssl"
+ fi
+ RUBY_FAKEGEM_EXTENSION_OPTIONS=${myconf} each_fakegem_configure
+}
diff --git a/dev-ruby/ruby-ldap/ruby-ldap-0.9.20.ebuild b/dev-ruby/ruby-ldap/ruby-ldap-0.9.20.ebuild
deleted file mode 100644
index f619ce7d024f..000000000000
--- a/dev-ruby/ruby-ldap/ruby-ldap-0.9.20.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit multilib ruby-fakegem
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_EXTRADOC="ChangeLog FAQ NOTES README TODO"
-
-DESCRIPTION="A Ruby interface to some LDAP libraries"
-HOMEPAGE="https://github.com/bearded/ruby-ldap"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-macos"
-IUSE="ssl"
-DEPEND=">=net-nds/openldap-2
- dev-libs/cyrus-sasl
- ssl? ( dev-libs/openssl:0 )"
-RDEPEND="${DEPEND}"
-
-# Current test set is interactive due to certificate generation and requires
-# running LDAP daemon
-RESTRICT="test"
-
-each_ruby_configure() {
- local myconf="--with-openldap2"
- if ! use ssl ; then
- myconf="${myconf} --without-libcrypto --without-libssl"
- fi
- ${RUBY} extconf.rb ${myconf} || die "extconf.rb failed"
- sed -i -e 's:-Wl,--no-undefined::' \
- -e "s/^ldflags = /ldflags = $\(LDFLAGS\) /" Makefile || die
-}
-
-each_ruby_compile() {
- emake V=1
- cp ldap$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/ruby-macho/Manifest b/dev-ruby/ruby-macho/Manifest
index 307a2efa2738..6595b05045bd 100644
--- a/dev-ruby/ruby-macho/Manifest
+++ b/dev-ruby/ruby-macho/Manifest
@@ -1,2 +1,2 @@
-DIST ruby-macho-2.1.0.tar.gz 65006 BLAKE2B 70c3ceb6f6ee7850fe0b775cc8be6664dd074e2a4a35d868230f39073f09c6a1c4394c7feded6067c3a7049c033655fc2b87f88d67278375606e0387775e2632 SHA512 1ec95304b91506a56d079dc0c24653fb1a4f0da041770320c7d9e256769df01a3784fe0d5e6e13081639d4347851e6a552cf36037bd4793cb12aea6f6cf3c194
-DIST ruby-macho-2.2.0.tar.gz 65473 BLAKE2B aedb5524926649d2f1612c135bee2cd18e4740412afd5d0e21616edae46fa4111208d8490fd83a0fe95ed13bd7c33a8a347162c34667f3f4d0bbdf86258bc4c7 SHA512 bfb13d0ec52f3fd2a359d0ae8de1437c272545f0ecf594c13ee491089ee79e5d70341e3557e840e82c0ca7d12dba27daff5d011903239d5caaee44f5d5189a97
+DIST ruby-macho-3.0.0.tar.gz 70743 BLAKE2B 6dc48445382d879b6fa67fb8720dbf9643294adebb3424e811775f436d29d9b22b4a57e0443c9a6d08203fb3514267d4c2e4b8431cc9be4d54000e059acb49db SHA512 c718e6b22331511c18a6a51c1e88443121f6601dcc0e8e66a3ab60771b9a9e68cb33b83470bf60ff6af9ce696d50ceadee2c4dc348a0bf3fa2ff4d8aebcf3bd3
+DIST ruby-macho-4.0.1.tar.gz 80183 BLAKE2B 9762ea051fcf62aae1f00c17ffbe935a6bacd57fe1e59f43473f7d8f3b3090d1c92d1b57f4e48309c7deff4c3e13b6f5240d4fa561c433a0b2718cd3ba96509b SHA512 19d748b93367e703090058c0456e5bd70bc8ce9ec0f1f209d53fbec78a00a14123f97fcf84c439e00ffa74fb56d4a8ef974caaf7c797ab6c7576d81e2e10c9da
diff --git a/dev-ruby/ruby-macho/metadata.xml b/dev-ruby/ruby-macho/metadata.xml
index e7a397c04373..01860597e23c 100644
--- a/dev-ruby/ruby-macho/metadata.xml
+++ b/dev-ruby/ruby-macho/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
diff --git a/dev-ruby/ruby-macho/ruby-macho-2.1.0.ebuild b/dev-ruby/ruby-macho/ruby-macho-2.1.0.ebuild
deleted file mode 100644
index 9083056aee1f..000000000000
--- a/dev-ruby/ruby-macho/ruby-macho-2.1.0.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library for viewing and manipulating Mach-O files in Ruby"
-HOMEPAGE="https://github.com/Homebrew/ruby-macho"
-SRC_URI="https://github.com/Homebrew/ruby-macho/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- # Avoid benchmarks with additional dependencies
- rm -f test/bench.rb || die
- sed -i -e '/test\/bench/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/ruby-macho/ruby-macho-2.2.0.ebuild b/dev-ruby/ruby-macho/ruby-macho-2.2.0.ebuild
deleted file mode 100644
index 9083056aee1f..000000000000
--- a/dev-ruby/ruby-macho/ruby-macho-2.2.0.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library for viewing and manipulating Mach-O files in Ruby"
-HOMEPAGE="https://github.com/Homebrew/ruby-macho"
-SRC_URI="https://github.com/Homebrew/ruby-macho/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- # Avoid benchmarks with additional dependencies
- rm -f test/bench.rb || die
- sed -i -e '/test\/bench/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/ruby-macho/ruby-macho-3.0.0.ebuild b/dev-ruby/ruby-macho/ruby-macho-3.0.0.ebuild
new file mode 100644
index 000000000000..1f074313e98c
--- /dev/null
+++ b/dev-ruby/ruby-macho/ruby-macho-3.0.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_GEMSPEC="ruby-macho.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library for viewing and manipulating Mach-O files in Ruby"
+HOMEPAGE="https://github.com/Homebrew/ruby-macho"
+SRC_URI="https://github.com/Homebrew/ruby-macho/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+
+all_ruby_prepare() {
+ # Avoid benchmarks with additional dependencies
+ rm -f test/bench.rb || die
+ sed -i -e '/test\/bench/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/ruby-macho/ruby-macho-4.0.1.ebuild b/dev-ruby/ruby-macho/ruby-macho-4.0.1.ebuild
new file mode 100644
index 000000000000..0bea149e0afa
--- /dev/null
+++ b/dev-ruby/ruby-macho/ruby-macho-4.0.1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_GEMSPEC="ruby-macho.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library for viewing and manipulating Mach-O files in Ruby"
+HOMEPAGE="https://github.com/Homebrew/ruby-macho"
+SRC_URI="https://github.com/Homebrew/ruby-macho/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~x86"
+
+all_ruby_prepare() {
+ # Avoid benchmarks with additional dependencies
+ rm -f test/bench.rb || die
+ sed -i -e '/test\/bench/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/ruby-mp3info/metadata.xml b/dev-ruby/ruby-mp3info/metadata.xml
index d6789ed3943e..c0fa694e014a 100644
--- a/dev-ruby/ruby-mp3info/metadata.xml
+++ b/dev-ruby/ruby-mp3info/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-mp3info/ruby-mp3info-0.8.10-r1.ebuild b/dev-ruby/ruby-mp3info/ruby-mp3info-0.8.10-r1.ebuild
new file mode 100644
index 000000000000..69e7ed1491da
--- /dev/null
+++ b/dev-ruby/ruby-mp3info/ruby-mp3info-0.8.10-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="History.txt README.md"
+RUBY_FAKEGEM_GEMSPEC="ruby-mp3info.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A pure Ruby library for access to mp3 files (internal infos and tags)"
+HOMEPAGE="https://github.com/moumar/ruby-mp3info"
+SRC_URI="https://github.com/moumar/${PN}/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="test"
+
+DEPEND+=" test? ( media-sound/id3v2 )"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
+
+all_ruby_prepare() {
+ sed -i -e "s:/tmp/test.mp3:${T}/test.mp3:" test/test_ruby-mp3info.rb || die
+ sed -i -e 's/MiniTest/Minitest/' test/helper.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib test/test_ruby-mp3info.rb || die
+}
diff --git a/dev-ruby/ruby-mp3info/ruby-mp3info-0.8.10.ebuild b/dev-ruby/ruby-mp3info/ruby-mp3info-0.8.10.ebuild
deleted file mode 100644
index f35a1fc63cb9..000000000000
--- a/dev-ruby/ruby-mp3info/ruby-mp3info-0.8.10.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.txt README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A pure Ruby library for access to mp3 files (internal infos and tags)"
-HOMEPAGE="http://rubyforge.org/projects/ruby-mp3info/"
-SRC_URI="https://github.com/moumar/${PN}/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-IUSE=""
-
-DEPEND+=" test? ( media-sound/id3v2 )"
-
-ruby_add_bdepend "test? ( dev-ruby/hoe dev-ruby/test-unit:2 )"
diff --git a/dev-ruby/ruby-net-ldap/Manifest b/dev-ruby/ruby-net-ldap/Manifest
index 493a9d59bb46..e677ee568488 100644
--- a/dev-ruby/ruby-net-ldap/Manifest
+++ b/dev-ruby/ruby-net-ldap/Manifest
@@ -1 +1,2 @@
-DIST net-ldap-0.16.1.gem 103936 BLAKE2B cea22a78314cdcf5a31a39fdb7b0af2caf32e836e21b77e34c566acfe1426740a1534de9646b90ea26696ea3eac4744a62c05e444c0326ff11ac00b25b570d02 SHA512 08d7fa7a55144dc98ad22b3824deb469dd67d755d4e7655f2fadd71c245ae6496487fc75e974352866a5325b76f3468aed813286b07f19597b6d60507e1362fa
+DIST ruby-net-ldap-0.18.0.tar.gz 94296 BLAKE2B 92c7f36ac94e9822f99931f58de83f05ca949c8f38482846c1bb0e4b43ed3b08799160643c720de8d724091c031c09926818e6199f32535a6033b636ea38fd5d SHA512 21b8241d3eef6f75f2f552af1df169d748e89948aba3527659a54cc3c4da5d6efcba41269c0ee40f6651adb363d0c7082dae71c3efc11cc65d103e1236e7d6d1
+DIST ruby-net-ldap-0.19.0.tar.gz 94763 BLAKE2B e3cf5da4116e86b735f7f1e0f97e9e183eee7d0ac1ba86acc96e44e7fa097c12d617babc78c34765320fe7165c908e40020efac7c1fa99a75be2aeda0f996438 SHA512 4e8a8b8e33109a884ab320db8e34a5331e4c6559b891e35e52e0ad4edb879f4bbe2e63e181ea27eedc4009faf3055a19ce77dc4adb0b7cdf88b73f3d9410a8b5
diff --git a/dev-ruby/ruby-net-ldap/metadata.xml b/dev-ruby/ruby-net-ldap/metadata.xml
index 2b6a92aefc62..f1b117357b0b 100644
--- a/dev-ruby/ruby-net-ldap/metadata.xml
+++ b/dev-ruby/ruby-net-ldap/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-net-ldap/ruby-net-ldap-0.16.1.ebuild b/dev-ruby/ruby-net-ldap/ruby-net-ldap-0.16.1.ebuild
deleted file mode 100644
index 0b323c468743..000000000000
--- a/dev-ruby/ruby-net-ldap/ruby-net-ldap-0.16.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test spec"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="Contributors.rdoc History.rdoc README.rdoc"
-
-RUBY_FAKEGEM_NAME="net-ldap"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Pure ruby LDAP client implementation"
-HOMEPAGE="https://github.com/ruby-ldap/ruby-net-ldap"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-IUSE="test"
-
-ruby_add_bdepend "test? ( >=dev-ruby/flexmock-1.3.0 )"
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/ruby-net-ldap/ruby-net-ldap-0.18.0.ebuild b/dev-ruby/ruby-net-ldap/ruby-net-ldap-0.18.0.ebuild
new file mode 100644
index 000000000000..1fed1af1f8ad
--- /dev/null
+++ b/dev-ruby/ruby-net-ldap/ruby-net-ldap-0.18.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="test spec"
+RUBY_FAKEGEM_EXTRADOC="Contributors.rdoc History.rdoc README.rdoc"
+
+RUBY_FAKEGEM_NAME="net-ldap"
+
+RUBY_FAKEGEM_GEMSPEC="net-ldap.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Pure ruby LDAP client implementation"
+HOMEPAGE="https://github.com/ruby-ldap/ruby-net-ldap"
+SRC_URI="https://github.com/ruby-ldap/ruby-net-ldap/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+
+ruby_add_bdepend "test? ( >=dev-ruby/flexmock-1.3.0 )"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ': './:" ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/ruby-net-ldap/ruby-net-ldap-0.19.0.ebuild b/dev-ruby/ruby-net-ldap/ruby-net-ldap-0.19.0.ebuild
new file mode 100644
index 000000000000..1fed1af1f8ad
--- /dev/null
+++ b/dev-ruby/ruby-net-ldap/ruby-net-ldap-0.19.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="test spec"
+RUBY_FAKEGEM_EXTRADOC="Contributors.rdoc History.rdoc README.rdoc"
+
+RUBY_FAKEGEM_NAME="net-ldap"
+
+RUBY_FAKEGEM_GEMSPEC="net-ldap.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Pure ruby LDAP client implementation"
+HOMEPAGE="https://github.com/ruby-ldap/ruby-net-ldap"
+SRC_URI="https://github.com/ruby-ldap/ruby-net-ldap/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+
+ruby_add_bdepend "test? ( >=dev-ruby/flexmock-1.3.0 )"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ': './:" ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/ruby-oci8/Manifest b/dev-ruby/ruby-oci8/Manifest
deleted file mode 100644
index 7577494c9bce..000000000000
--- a/dev-ruby/ruby-oci8/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ruby-oci8-2.2.5.1.gem 329728 BLAKE2B e235d2b252673962618d8a7840b10c62944407a08bef02a47cbd3fa091fc41404b682d9f89ff42592f16b990ff0e051d0a1b4c87409bbd2429ced488a8e67696 SHA512 e868fae291155f3fdeff2acd948fcf3e56d9dfc5ea9c60e40cc9c742a82fc924999f788b2765088d31fb680c9e192e37e6d12c6dcedd2ed1f6aeef4c8c9bfe7a
-DIST ruby-oci8-2.2.7.gem 337408 BLAKE2B e5f9d620e7df2b64643981614a3df877fd2bb9c5047e16d5aec6885259190faa437687c440c226a03bb70d4ca0a14155da4d64b442e9a532234b9cf047f7455c SHA512 03ecd7d0b94a8a8d164afec0f71c862c10d57d6d227b971384678a39e40bbf7dc14e7267c9133f3ec466fcaa5da46d78c6804d34187790cc8c23289ab9093fcd
diff --git a/dev-ruby/ruby-oci8/metadata.xml b/dev-ruby/ruby-oci8/metadata.xml
deleted file mode 100644
index be04504b4c82..000000000000
--- a/dev-ruby/ruby-oci8/metadata.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>troy@lump.net</email>
- <name>Troy Bowman</name>
- </maintainer>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <maintainer type="project">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
- </maintainer>
- <longdescription>Oracle Interface for Ruby, compatible with oracle 8, 9i, 10g and 11g.</longdescription>
- <upstream>
- <remote-id type="rubygems">ruby-oci8</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-oci8/ruby-oci8-2.2.5.1.ebuild b/dev-ruby/ruby-oci8/ruby-oci8-2.2.5.1.ebuild
deleted file mode 100644
index a459c32c20db..000000000000
--- a/dev-ruby/ruby-oci8/ruby-oci8-2.2.5.1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-inherit multilib ruby-fakegem
-
-RUBY_FAKEGEM_EXTRADOC="NEWS README.md ChangeLog"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-DESCRIPTION="A Ruby library for Oracle OCI8"
-HOMEPAGE="https://rubygems.org/gems/ruby-oci8/"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="amd64 ~x86"
-IUSE=""
-
-RDEPEND+=" dev-db/oracle-instantclient-basic"
-DEPEND+=" dev-db/oracle-instantclient-basic"
-
-EXT_DIR="ext/oci8"
-
-each_ruby_configure() {
- # configure the native libraries
- ${RUBY} -C${EXT_DIR} extconf.rb --prefix="${D}/usr" || die "configure failed"
-}
-
-each_ruby_compile() {
- # compile the native libraries
- emake -C ${EXT_DIR} V=1 || die "could not compile native library"
-}
-
-each_ruby_install() {
- # install the native libraries
- emake -C ${EXT_DIR} install DESTDIR="${D}" || die "could not install native library"
- # install the gem files
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-oci8/ruby-oci8-2.2.7.ebuild b/dev-ruby/ruby-oci8/ruby-oci8-2.2.7.ebuild
deleted file mode 100644
index abfaaa2c4070..000000000000
--- a/dev-ruby/ruby-oci8/ruby-oci8-2.2.7.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit multilib ruby-fakegem
-
-RUBY_FAKEGEM_EXTRADOC="NEWS README.md ChangeLog"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-DESCRIPTION="A Ruby library for Oracle OCI8"
-HOMEPAGE="https://rubygems.org/gems/ruby-oci8/"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND+=" dev-db/oracle-instantclient-basic"
-DEPEND+=" dev-db/oracle-instantclient-basic"
-
-EXT_DIR="ext/oci8"
-
-each_ruby_configure() {
- # configure the native libraries
- ${RUBY} -C${EXT_DIR} extconf.rb --prefix="${D}/usr" || die "configure failed"
-}
-
-each_ruby_compile() {
- # compile the native libraries
- emake -C ${EXT_DIR} V=1 || die "could not compile native library"
-}
-
-each_ruby_install() {
- # install the native libraries
- emake -C ${EXT_DIR} install DESTDIR="${D}" || die "could not install native library"
- # install the gem files
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-odbc/Manifest b/dev-ruby/ruby-odbc/Manifest
index 559be4b719fa..68c562527d41 100644
--- a/dev-ruby/ruby-odbc/Manifest
+++ b/dev-ruby/ruby-odbc/Manifest
@@ -1 +1,2 @@
-DIST ruby-odbc-0.99999.tar.gz 76934 BLAKE2B 59de5a544b7eefe8e181f2c6a9a61915361743ef5f7554f778667b50ca0dc57fd0c4f71e406ad6f1d00fb2c6a6509030e61ad34dddecff61896f7bfe383d0a9b SHA512 05e3e67a895406e1a57fbea6f8ecd1c087d836794ea3245bd9eec888eb3c46fa2bf2607cc1b8fdc416d7bc531d783d621c03c9fde004db8c2e431fe838c531af
+DIST ruby-odbc-0.999991.tar.gz 77110 BLAKE2B dd32698811f14e05f1190ffd73b390fa02924a1dd936db0b2b3c6ac9d8d8663f5d400ff89e03591081b45d558378a76701cf6b8be8502297a141c271dde3c24b SHA512 3f1e2e75e31f10f47392cda1cd28aa54451a499c3bd6e9224466a7b338406835a5d453600e79a3bac040197397c31d9f744567969058969685d6f4e06e72addb
+DIST ruby-odbc-0.999992.tar.gz 77614 BLAKE2B 5103a656ab43740682532bfac453e1d98ed50b39bdcb5ebc374498da47d379aa6e808073decdbbf1029c6a8b7ee87f862b790b6b12658b05f66d13699fcfe6fb SHA512 b4eee475ad93d112d51ef7955dc2df60b035e87338d991bc069e59d77918ab08a7e96069d975be156e57d401fea4b2ee57486dc7caf83f9dfac9fe49f935607b
diff --git a/dev-ruby/ruby-odbc/metadata.xml b/dev-ruby/ruby-odbc/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/ruby-odbc/metadata.xml
+++ b/dev-ruby/ruby-odbc/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-odbc/ruby-odbc-0.99999.ebuild b/dev-ruby/ruby-odbc/ruby-odbc-0.99999.ebuild
deleted file mode 100644
index 578746063872..000000000000
--- a/dev-ruby/ruby-odbc/ruby-odbc-0.99999.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README ChangeLog"
-
-inherit ruby-fakegem
-
-DESCRIPTION="RubyODBC - For accessing ODBC data sources from the Ruby language"
-HOMEPAGE="http://www.ch-werner.de/rubyodbc/"
-SRC_URI="http://www.ch-werner.de/rubyodbc/${P}.tar.gz"
-
-LICENSE="|| ( GPL-2 Ruby )"
-SLOT="0"
-KEYWORDS="amd64 ppc x86"
-IUSE=""
-
-DEPEND="${DEPEND} >=dev-db/unixODBC-2.0.6"
-RDEPEND="${RDEPEND} >=dev-db/unixODBC-2.0.6"
-
-# tests require to have an ODBC service enabled, so we can't run them
-# for now :(
-RESTRICT=test
-
-all_ruby_prepare() {
- # Make sure that it doesn't try to use the absolute-local path for
- # the extension as we'd be unable to run it properly otherwise.
- sed -i -e 's:\./odbc:odbc:' test/{,utf8/}test.rb || die
-
- # Since lib should not get installed avoid it entirely…
- mv lib contrib || die
-}
-
-each_ruby_configure() {
- for dir in ext ext/utf8; do
- ${RUBY} -C${dir} extconf.rb --disable-dlopen || die "extconf (${dir}) failed"
- done
-}
-
-each_ruby_compile() {
- for dir in ext ext/utf8; do
- emake V=1 -C${dir} || die "emake (${dir}) failed"
- done
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- ruby_fakegem_newins ext/odbc.so lib/odbc.so
- ruby_fakegem_newins ext/utf8/odbc_utf8.so lib/odbc_utf8.so
-}
-
-all_ruby_install() {
- all_fakegem_install
- dohtml doc/*.html || die
-}
diff --git a/dev-ruby/ruby-odbc/ruby-odbc-0.999991-r1.ebuild b/dev-ruby/ruby-odbc/ruby-odbc-0.999991-r1.ebuild
new file mode 100644
index 000000000000..2d9c3bfbfb39
--- /dev/null
+++ b/dev-ruby/ruby-odbc/ruby-odbc-0.999991-r1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README ChangeLog"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb ext/utf8/extconf.rb)
+
+RUBY_FAKEGEM_GEMSPEC="ruby-odbc.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="RubyODBC - For accessing ODBC data sources from the Ruby language"
+HOMEPAGE="http://www.ch-werner.de/rubyodbc/"
+SRC_URI="http://www.ch-werner.de/rubyodbc/${P}.tar.gz"
+
+LICENSE="|| ( GPL-2 Ruby-BSD )"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+DEPEND="${DEPEND} >=dev-db/unixODBC-2.0.6"
+RDEPEND="${RDEPEND} >=dev-db/unixODBC-2.0.6"
+
+# tests require to have an ODBC service enabled, so we can't run them
+# for now :(
+RESTRICT=test
+
+all_ruby_prepare() {
+ # Make sure that it doesn't try to use the absolute-local path for
+ # the extension as we'd be unable to run it properly otherwise.
+ sed -i -e 's:\./odbc:odbc:' test/{,utf8/}test.rb || die
+
+ # Since lib should not get installed avoid it entirely…
+ mv lib contrib || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+ dodoc doc/*.html
+}
diff --git a/dev-ruby/ruby-odbc/ruby-odbc-0.999992.ebuild b/dev-ruby/ruby-odbc/ruby-odbc-0.999992.ebuild
new file mode 100644
index 000000000000..93bc4436c676
--- /dev/null
+++ b/dev-ruby/ruby-odbc/ruby-odbc-0.999992.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README ChangeLog"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb ext/utf8/extconf.rb)
+
+RUBY_FAKEGEM_GEMSPEC="ruby-odbc.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="RubyODBC - For accessing ODBC data sources from the Ruby language"
+HOMEPAGE="http://www.ch-werner.de/rubyodbc/"
+SRC_URI="http://www.ch-werner.de/rubyodbc/${P}.tar.gz"
+
+LICENSE="|| ( GPL-2 Ruby-BSD )"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="test"
+
+DEPEND="${DEPEND} >=dev-db/unixODBC-2.0.6"
+RDEPEND="${RDEPEND} >=dev-db/unixODBC-2.0.6"
+
+# tests require to have an ODBC service enabled, so we can't run them
+# for now :(
+RESTRICT=test
+
+all_ruby_prepare() {
+ # Make sure that it doesn't try to use the absolute-local path for
+ # the extension as we'd be unable to run it properly otherwise.
+ sed -i -e 's:\./odbc:odbc:' test/{,utf8/}test.rb || die
+
+ # Since lib should not get installed avoid it entirely…
+ mv lib contrib || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+ dodoc doc/*.html
+}
diff --git a/dev-ruby/ruby-oembed/Manifest b/dev-ruby/ruby-oembed/Manifest
index fa46f78a61e7..405fba9c45f8 100644
--- a/dev-ruby/ruby-oembed/Manifest
+++ b/dev-ruby/ruby-oembed/Manifest
@@ -1 +1,2 @@
-DIST ruby-oembed-0.12.0.gem 690688 BLAKE2B bda4cb7771c19861bcda4692d3cde80e51c0069ce5ee34986c6fbb0b90853646daf5be0277de819877e9163253da03bd7886acb7a717697bcf802a678fab3b72 SHA512 faaf7828641cf419b699ecbbd7a890304ee645faf13ca480c22afbec035687a730a8d53c7825312a4734dfc6633ec4b4c5790c4db18d584c344602310a7ebed9
+DIST ruby-oembed-0.16.1.tar.gz 4547399 BLAKE2B 929d0a63aa0bd8acb005630c3f774a56e5fffed83b8e6c80c491dbf93df1b85b555b37ef8dedc77428cfcc8ad00c9eee54e49c8e31467efb8a8eae28e25397a7 SHA512 71241c818478c4321844276e4ba5e726536fb40f35c18b0ff9ead46e7d8b2ec1b58ba6738b179e62164c352005fff947baa156ac48bf6c021e29da8be3f2ad38
+DIST ruby-oembed-0.17.0.tar.gz 4548719 BLAKE2B d91c4321b745b5c96f866468f8985ec5a27b8318450b14b92f4c7456cea3dea048fb66d5d1c93a3ebd7b12d52a5ea6b2a543987f9d83d35b64521f46bf204d05 SHA512 ec130cca009dd63d18ff3498be2bd05eacdef28c3e7dbae9a373da7700949a18184714dfb3b942154b5af0e305ccdcaf7d18652f36236599d04f0ba531d8aca4
diff --git a/dev-ruby/ruby-oembed/metadata.xml b/dev-ruby/ruby-oembed/metadata.xml
index bcc1352629d6..a7f9e6f04d0c 100644
--- a/dev-ruby/ruby-oembed/metadata.xml
+++ b/dev-ruby/ruby-oembed/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">judofyr/ruby-oembed</remote-id>
+ <remote-id type="github">ruby-oembed/ruby-oembed</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ruby-oembed/ruby-oembed-0.12.0.ebuild b/dev-ruby/ruby-oembed/ruby-oembed-0.12.0.ebuild
deleted file mode 100644
index 68343b8d5ee0..000000000000
--- a/dev-ruby/ruby-oembed/ruby-oembed-0.12.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An oEmbed consumer library written in Ruby."
-HOMEPAGE="https://github.com/judofyr/ruby-oembed"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE="test"
-
-ruby_add_bdepend "test?
- (
- dev-ruby/json
- dev-ruby/vcr:1
- dev-ruby/xml-simple
- dev-ruby/nokogiri
- dev-ruby/fakeweb
- )"
-
-all_ruby_prepare() {
- # Remove bundler but keep vcr version requirement
- rm -f Gemfile || die
- sed -i -e '1igem "vcr", "~> 1.0"' spec/spec_helper.rb || die
-
- # Avoid development dependencies
- sed -i -e '/coverall/I s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/ruby-oembed/ruby-oembed-0.16.1.ebuild b/dev-ruby/ruby-oembed/ruby-oembed-0.16.1.ebuild
new file mode 100644
index 000000000000..0de3d697de69
--- /dev/null
+++ b/dev-ruby/ruby-oembed/ruby-oembed-0.16.1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc README.md"
+RUBY_FAKEGEM_GEMSPEC="ruby-oembed.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An oEmbed consumer library written in Ruby"
+HOMEPAGE="https://github.com/ruby-oembed/ruby-oembed"
+SRC_URI="https://github.com/ruby-oembed/ruby-oembed/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="0"
+IUSE="test"
+
+ruby_add_bdepend "test?
+ (
+ dev-ruby/json
+ dev-ruby/vcr:6
+ dev-ruby/xml-simple
+ dev-ruby/nokogiri
+ dev-ruby/webmock:3
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler but keep vcr version requirement
+ rm -f Gemfile || die
+ sed -i -e '1igem "vcr", "~> 6.0"' spec/spec_helper.rb || die
+
+ # Avoid development dependencies
+ sed -i -e '/coverall/I s:^:#:' spec/spec_helper.rb || die
+
+ sed -i -e 's/git ls-files/find * -print/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Fix kwargs expectations for ruby30
+ sed -e '455 s/:format => @default/{format: @default}/' \
+ -e '460 s/:format=>:xml/{format: :xml}/' \
+ -e '465 s/:format=>:json/{format: :json}/' \
+ -e '477 s/:format => @default/{format: @default}/' \
+ -i spec/provider_spec.rb || die
+}
diff --git a/dev-ruby/ruby-oembed/ruby-oembed-0.17.0.ebuild b/dev-ruby/ruby-oembed/ruby-oembed-0.17.0.ebuild
new file mode 100644
index 000000000000..497a57abc714
--- /dev/null
+++ b/dev-ruby/ruby-oembed/ruby-oembed-0.17.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.rdoc README.md"
+RUBY_FAKEGEM_GEMSPEC="ruby-oembed.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An oEmbed consumer library written in Ruby"
+HOMEPAGE="https://github.com/ruby-oembed/ruby-oembed"
+SRC_URI="https://github.com/ruby-oembed/ruby-oembed/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="0"
+IUSE="test"
+
+ruby_add_bdepend "test?
+ (
+ dev-ruby/json
+ dev-ruby/vcr:6
+ dev-ruby/xml-simple
+ dev-ruby/nokogiri
+ dev-ruby/webmock:3
+ )"
+
+all_ruby_prepare() {
+ # Remove bundler but keep vcr version requirement
+ rm -f Gemfile || die
+ sed -i -e '1igem "vcr", "~> 6.0"' spec/spec_helper.rb || die
+
+ # Avoid development dependencies
+ sed -i -e '/coverall/I s:^:#:' spec/spec_helper.rb || die
+
+ sed -i -e 's/git ls-files/find * -print/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/ruby-ole/Manifest b/dev-ruby/ruby-ole/Manifest
index 4ff183440b21..73cdb8ab6831 100644
--- a/dev-ruby/ruby-ole/Manifest
+++ b/dev-ruby/ruby-ole/Manifest
@@ -1,2 +1,2 @@
-DIST ruby-ole-1.2.12.1.gem 56320 BLAKE2B e7107af4ca2fedeb3c4d3b2802f17fd922a5f70909ce0cd32b8627986af03f607417c801e525f553265f6f56246257618ef03484daaa3f7fff483aa89521ba68 SHA512 1c8c6669d37008aa9b837df33d6f12acb0c672e14828d8ab3e7cc2cdfb67f407b6af83972c9022cd9661232ff4c85a3ea2fdca82878ba48f713d6391f088392b
DIST ruby-ole-1.2.12.2.gem 56832 BLAKE2B 489dbaff30d5d293f5c04672c2e8dd2a6144f6b32fb22319c4691a351318f0aee8fd5d01106f3ef6abaab40e81cd86c8ba9d93ddb1e004240eb052ab6ce5675e SHA512 2c28336a827e42faed4183d79ae61d4dd2b888f3d13eb26fb2b7e967057127a01e184fb509c6e4718e7beebb7490ea2f7aa230f2c5e29efae49994fa92d604b7
+DIST ruby-ole-1.2.13.1.gem 56832 BLAKE2B d3d4a94428c5e3c2ea24db0740daeb3856ecdb9211455711a994da0011191d6aebacdd83187f5a64824ee1e6744731a9f696a76f954d2accf8eb3b36610289cc SHA512 5281d14e490b8dcae5b97f0e9c5088593c4c2ba39452884e4b0dda234638d4d701eb88f44d3863ec7436f39b770d5a9b556d2cd1cc6ac42c39951174cfe1ce88
diff --git a/dev-ruby/ruby-ole/metadata.xml b/dev-ruby/ruby-ole/metadata.xml
index 3afd0ac456dd..3e5c6363d998 100644
--- a/dev-ruby/ruby-ole/metadata.xml
+++ b/dev-ruby/ruby-ole/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mjo@gentoo.org</email>
diff --git a/dev-ruby/ruby-ole/ruby-ole-1.2.12.1.ebuild b/dev-ruby/ruby-ole/ruby-ole-1.2.12.1.ebuild
deleted file mode 100644
index 9c37baa336ed..000000000000
--- a/dev-ruby/ruby-ole/ruby-ole-1.2.12.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Avoid the complexity of the "rake" recipe and run testrb-2 manually.
-RUBY_FAKEGEM_RECIPE_TEST=none
-
-# Same thing for the docs whose rake target just calls rdoc.
-RUBY_FAKEGEM_RECIPE_DOC=rdoc
-RUBY_FAKEGEM_EXTRADOC="ChangeLog README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby library for easy read/write access to OLE compound documents"
-HOMEPAGE="https://github.com/aquasync/ruby-ole"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
-
-each_ruby_test() {
- ruby-ng_testrb-2 --pattern='test.*\.rb' test/
-}
diff --git a/dev-ruby/ruby-ole/ruby-ole-1.2.12.2-r1.ebuild b/dev-ruby/ruby-ole/ruby-ole-1.2.12.2-r1.ebuild
new file mode 100644
index 000000000000..746bf140c5ca
--- /dev/null
+++ b/dev-ruby/ruby-ole/ruby-ole-1.2.12.2-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# Avoid the complexity of the "rake" recipe and run testrb-2 manually.
+RUBY_FAKEGEM_RECIPE_TEST=none
+
+# Same thing for the docs whose rake target just calls rdoc.
+RUBY_FAKEGEM_RECIPE_DOC=rdoc
+RUBY_FAKEGEM_EXTRADOC="ChangeLog README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby library for easy read/write access to OLE compound documents"
+HOMEPAGE="https://github.com/aquasync/ruby-ole"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
+
+each_ruby_test() {
+ ruby-ng_testrb-2 --pattern='test.*\.rb' test/
+}
diff --git a/dev-ruby/ruby-ole/ruby-ole-1.2.12.2.ebuild b/dev-ruby/ruby-ole/ruby-ole-1.2.12.2.ebuild
deleted file mode 100644
index ef0d993916a9..000000000000
--- a/dev-ruby/ruby-ole/ruby-ole-1.2.12.2.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Avoid the complexity of the "rake" recipe and run testrb-2 manually.
-RUBY_FAKEGEM_RECIPE_TEST=none
-
-# Same thing for the docs whose rake target just calls rdoc.
-RUBY_FAKEGEM_RECIPE_DOC=rdoc
-RUBY_FAKEGEM_EXTRADOC="ChangeLog README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby library for easy read/write access to OLE compound documents"
-HOMEPAGE="https://github.com/aquasync/ruby-ole"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
-
-each_ruby_test() {
- ruby-ng_testrb-2 --pattern='test.*\.rb' test/
-}
diff --git a/dev-ruby/ruby-ole/ruby-ole-1.2.13.1.ebuild b/dev-ruby/ruby-ole/ruby-ole-1.2.13.1.ebuild
new file mode 100644
index 000000000000..e688f3070f8d
--- /dev/null
+++ b/dev-ruby/ruby-ole/ruby-ole-1.2.13.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# Avoid the complexity of the "rake" recipe and run testrb-2 manually.
+RUBY_FAKEGEM_RECIPE_TEST=none
+
+# Same thing for the docs whose rake target just calls rdoc.
+RUBY_FAKEGEM_RECIPE_DOC=rdoc
+RUBY_FAKEGEM_EXTRADOC="ChangeLog README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby library for easy read/write access to OLE compound documents"
+HOMEPAGE="https://github.com/aquasync/ruby-ole"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
+
+each_ruby_test() {
+ ruby-ng_testrb-2 --pattern='test.*\.rb' test/
+}
diff --git a/dev-ruby/ruby-opengl/metadata.xml b/dev-ruby/ruby-opengl/metadata.xml
index 949b72614758..6db1e3c4ddd5 100644
--- a/dev-ruby/ruby-opengl/metadata.xml
+++ b/dev-ruby/ruby-opengl/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-opengl/ruby-opengl-0.10.0-r1.ebuild b/dev-ruby/ruby-opengl/ruby-opengl-0.10.0-r1.ebuild
new file mode 100644
index 000000000000..fa5b616c6674
--- /dev/null
+++ b/dev-ruby/ruby-opengl/ruby-opengl-0.10.0-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# Two tests fails but the README already indicates that this may not
+# work. Additionally these tests require access to video devices such as
+# /dev/nvidiactl.
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_NAME="opengl"
+
+RUBY_FAKEGEM_EXTRADOC="History.md README.rdoc"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/opengl/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=(lib/opengl)
+
+inherit ruby-fakegem
+
+DESCRIPTION="OpenGL / GLUT bindings for ruby"
+HOMEPAGE="https://github.com/larskanis/opengl"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~hppa ppc ppc64 x86"
+
+IUSE=""
+
+DEPEND+=" virtual/opengl
+ media-libs/freeglut"
+RDEPEND+=" virtual/opengl
+ media-libs/freeglut"
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r examples
+}
diff --git a/dev-ruby/ruby-opengl/ruby-opengl-0.10.0.ebuild b/dev-ruby/ruby-opengl/ruby-opengl-0.10.0.ebuild
deleted file mode 100644
index 4ea3eeb6ad67..000000000000
--- a/dev-ruby/ruby-opengl/ruby-opengl-0.10.0.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-# Two tests fails but the README already indicates that this may not
-# work. Additionally these tests require access to video devices such as
-# /dev/nvidiactl.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_NAME="opengl"
-
-RUBY_FAKEGEM_EXTRADOC="History.md README.rdoc"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="OpenGL / GLUT bindings for ruby"
-HOMEPAGE="https://github.com/larskanis/opengl"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 hppa ppc ppc64 x86"
-
-IUSE=""
-
-DEPEND+=" virtual/opengl
- media-libs/freeglut"
-RDEPEND+=" virtual/opengl
- media-libs/freeglut"
-
-each_ruby_configure() {
- ${RUBY} -Cext/opengl extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -C ext/opengl V=1
-
- cp ext/*/*$(get_modname) lib/opengl/ || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}/examples
- doins -r examples/*
-}
diff --git a/dev-ruby/ruby-openid/Manifest b/dev-ruby/ruby-openid/Manifest
index 41c34aeea549..f3c3817e0965 100644
--- a/dev-ruby/ruby-openid/Manifest
+++ b/dev-ruby/ruby-openid/Manifest
@@ -1 +1 @@
-DIST ruby-openid-2.7.0.tar.gz 513958 BLAKE2B d09b1817768376ad35c3ea9ff11b371761c340902f006f2f4a89af050fea104a8f975a45e90035f501e981fcd412925e3d4a5cf4679e4526b595d06124ce2511 SHA512 e53104d4cf0198953172a2ed567877c3d1cc11664acbab8ca424823e2249d9fa13ad9b931a7318709f2865f3f16e0e38714428d12accf16080aa1818b673d8cd
+DIST ruby-openid-2.9.2.tar.gz 514882 BLAKE2B 496b257087617537fc413931820fc721f026d9e7826d1684c85250d29d295ef031f834af31449e3448386f714c45a7db802d46531ca207fec099e2e2e80b9780 SHA512 5f4b696952d457ecbb99c6e2bc4b5c04557e8ed8d7653259eaf89a151ef43e62edc1936a28ac9e0d5a2c253379010d6c6a820be4bf2caa90bfcbf4689695d075
diff --git a/dev-ruby/ruby-openid/metadata.xml b/dev-ruby/ruby-openid/metadata.xml
index 253d1fc5d1b7..eb082c4ef34f 100644
--- a/dev-ruby/ruby-openid/metadata.xml
+++ b/dev-ruby/ruby-openid/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-openid/ruby-openid-2.7.0.ebuild b/dev-ruby/ruby-openid/ruby-openid-2.7.0.ebuild
deleted file mode 100644
index 500674c57a8a..000000000000
--- a/dev-ruby/ruby-openid/ruby-openid-2.7.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md NOTICE UPGRADE.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A robust library for verifying and serving OpenID identities"
-HOMEPAGE="https://github.com/openid/ruby-openid"
-SRC_URI="https://github.com/openid/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~ppc x86 ~x86-macos"
-IUSE="test"
-
-all_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r examples
-}
diff --git a/dev-ruby/ruby-openid/ruby-openid-2.9.2.ebuild b/dev-ruby/ruby-openid/ruby-openid-2.9.2.ebuild
new file mode 100644
index 000000000000..ffcefcbc6ac1
--- /dev/null
+++ b/dev-ruby/ruby-openid/ruby-openid-2.9.2.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md NOTICE UPGRADE.md"
+
+RUBY_FAKEGEM_GEMSPEC="ruby-openid.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A robust library for verifying and serving OpenID identities"
+HOMEPAGE="https://github.com/openid/ruby-openid"
+SRC_URI="https://github.com/openid/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/webrick )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile || die
+
+ # Avoid test failing due to new sematics in ruby 3
+ sed -i -e '/test_no_host/askip "Ruby 3 incompatibility"' test/test_discover.rb || die
+
+ # Fix Bignum deprecation in tests
+ sed -i -e 's/Bignum/Integer/' test/test_cryptutil.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r examples
+}
diff --git a/dev-ruby/ruby-pango/Manifest b/dev-ruby/ruby-pango/Manifest
index f9915c2e2788..023bc72357e4 100644
--- a/dev-ruby/ruby-pango/Manifest
+++ b/dev-ruby/ruby-pango/Manifest
@@ -1,2 +1 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
+DIST ruby-gnome2-4.1.2.tar.gz 2708791 BLAKE2B ef24788d8c65f96c76b43d8adc38af21dfb3bfe2f8ae2157f6978993fe65e9735030e9912e8eb1ff5ff90ab1c67701ae61ac3b0790cb285646f26b6193d74be5 SHA512 898ae5bcd7a6347d7392b7888c19493905f6e660afb61f17a60b1f22e4069329ef6ccc9277375a2c40b4d998a309b61de6797f50c4633c0f5de22d2e85252537
diff --git a/dev-ruby/ruby-pango/metadata.xml b/dev-ruby/ruby-pango/metadata.xml
index 2eb590f61d26..3b50d592e675 100644
--- a/dev-ruby/ruby-pango/metadata.xml
+++ b/dev-ruby/ruby-pango/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
+ <remote-id type="github">ruby-gnome/ruby-gnome</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ruby-pango/ruby-pango-3.3.2.ebuild b/dev-ruby/ruby-pango/ruby-pango-3.3.2.ebuild
deleted file mode 100644
index cf1e5b597b5e..000000000000
--- a/dev-ruby/ruby-pango/ruby-pango-3.3.2.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-DESCRIPTION="Ruby Pango bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-DEPEND+=" >=x11-libs/pango-1.2.1"
-RDEPEND+=" >=x11-libs/pango-1.2.1"
-
-ruby_add_rdepend "
- ~dev-ruby/ruby-cairo-gobject-${PV}
- ~dev-ruby/ruby-gobject-introspection-${PV}
-"
-
-all_ruby_prepare() {
- # Remove test depending on specific locales to be set up: bug 526248
- rm -f test/test-language.rb || die
-
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew_libffi/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_test() {
- # Include pango path since run-test does not list it
- ${RUBY} -Iext/pango test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-pango/ruby-pango-3.3.6.ebuild b/dev-ruby/ruby-pango/ruby-pango-3.3.6.ebuild
deleted file mode 100644
index 880b50d9aa51..000000000000
--- a/dev-ruby/ruby-pango/ruby-pango-3.3.6.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-DESCRIPTION="Ruby Pango bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-DEPEND+=" >=x11-libs/pango-1.2.1"
-RDEPEND+=" >=x11-libs/pango-1.2.1"
-
-ruby_add_rdepend "
- ~dev-ruby/ruby-cairo-gobject-${PV}
- ~dev-ruby/ruby-gobject-introspection-${PV}
-"
-
-all_ruby_prepare() {
- # Remove test depending on specific locales to be set up: bug 526248
- rm -f test/test-language.rb || die
-
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_test() {
- # Include pango path since run-test does not list it
- ${RUBY} -Iext/pango test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-pango/ruby-pango-4.1.2.ebuild b/dev-ruby/ruby-pango/ruby-pango-4.1.2.ebuild
new file mode 100644
index 000000000000..4f75391e5208
--- /dev/null
+++ b/dev-ruby/ruby-pango/ruby-pango-4.1.2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+inherit ruby-ng-gnome2
+
+DESCRIPTION="Ruby Pango bindings"
+KEYWORDS="amd64 ~ppc ~riscv ~x86"
+IUSE=""
+DEPEND+=" dev-libs/glib
+ >=x11-libs/pango-1.14.0[introspection]"
+RDEPEND+=" dev-libs/glib
+ >=x11-libs/pango-1.14.0[introspection]"
+
+ruby_add_rdepend "
+ ~dev-ruby/ruby-cairo-gobject-${PV}
+ ~dev-ruby/ruby-glib2-${PV}
+ ~dev-ruby/ruby-gobject-introspection-${PV}
+"
+
+all_ruby_prepare() {
+ ruby-ng-gnome2_all_ruby_prepare
+
+ # Remove test depending on specific locales to be set up: bug 526248
+ rm -f test/test-language.rb || die
+}
+
+each_ruby_test() {
+ # Include pango path since run-test does not list it
+ ${RUBY} -Iext/pango test/run-test.rb || die
+}
diff --git a/dev-ruby/ruby-poppler/Manifest b/dev-ruby/ruby-poppler/Manifest
index f9915c2e2788..023bc72357e4 100644
--- a/dev-ruby/ruby-poppler/Manifest
+++ b/dev-ruby/ruby-poppler/Manifest
@@ -1,2 +1 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
+DIST ruby-gnome2-4.1.2.tar.gz 2708791 BLAKE2B ef24788d8c65f96c76b43d8adc38af21dfb3bfe2f8ae2157f6978993fe65e9735030e9912e8eb1ff5ff90ab1c67701ae61ac3b0790cb285646f26b6193d74be5 SHA512 898ae5bcd7a6347d7392b7888c19493905f6e660afb61f17a60b1f22e4069329ef6ccc9277375a2c40b4d998a309b61de6797f50c4633c0f5de22d2e85252537
diff --git a/dev-ruby/ruby-poppler/metadata.xml b/dev-ruby/ruby-poppler/metadata.xml
index 2eb590f61d26..3b50d592e675 100644
--- a/dev-ruby/ruby-poppler/metadata.xml
+++ b/dev-ruby/ruby-poppler/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
+ <remote-id type="github">ruby-gnome/ruby-gnome</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/ruby-poppler/ruby-poppler-3.3.2.ebuild b/dev-ruby/ruby-poppler/ruby-poppler-3.3.2.ebuild
deleted file mode 100644
index bc9f056fbe6d..000000000000
--- a/dev-ruby/ruby-poppler/ruby-poppler-3.3.2.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-DESCRIPTION="Ruby poppler-glib bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-RDEPEND+=" app-text/poppler[cairo]"
-DEPEND+=" app-text/poppler[cairo]"
-
-ruby_add_rdepend "
- ~dev-ruby/ruby-cairo-gobject-${PV}
- ~dev-ruby/ruby-gio2-${PV}
-"
-
-all_ruby_prepare() {
- # Avoid compilation of dependencies during test.
- sed -i -e '/if have_make/,/^ end/ s:^:#:' test/run-test.rb || die
-
- # Avoid tests downloading a test PDF directly.
- rm -f test/test_{annotation,document,page}.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-poppler/ruby-poppler-3.3.6.ebuild b/dev-ruby/ruby-poppler/ruby-poppler-3.3.6.ebuild
deleted file mode 100644
index ed0b2a50186b..000000000000
--- a/dev-ruby/ruby-poppler/ruby-poppler-3.3.6.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-DESCRIPTION="Ruby poppler-glib bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-RDEPEND+=" app-text/poppler[cairo]"
-DEPEND+=" app-text/poppler[cairo]"
-
-ruby_add_rdepend "
- ~dev-ruby/ruby-cairo-gobject-${PV}
- ~dev-ruby/ruby-gio2-${PV}
-"
-
-all_ruby_prepare() {
- # Avoid compilation of dependencies during test.
- sed -i -e '/if have_make/,/^ end/ s:^:#:' test/run-test.rb || die
-
- # Avoid tests downloading a test PDF directly.
- rm -f test/test_{annotation,document,page}.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-poppler/ruby-poppler-4.1.2.ebuild b/dev-ruby/ruby-poppler/ruby-poppler-4.1.2.ebuild
new file mode 100644
index 000000000000..e31095a2fa88
--- /dev/null
+++ b/dev-ruby/ruby-poppler/ruby-poppler-4.1.2.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby30 ruby31 ruby32"
+
+inherit ruby-ng-gnome2
+
+DESCRIPTION="Ruby poppler-glib bindings"
+KEYWORDS="amd64 ~ppc ~riscv ~x86"
+IUSE=""
+
+RDEPEND+=" app-text/poppler[cairo,introspection]"
+DEPEND+=" app-text/poppler[cairo,introspection]"
+
+ruby_add_rdepend "
+ ~dev-ruby/ruby-cairo-gobject-${PV}
+ ~dev-ruby/ruby-gio2-${PV}
+"
diff --git a/dev-ruby/ruby-prof/Manifest b/dev-ruby/ruby-prof/Manifest
index 266b1fe550cd..7a913905280d 100644
--- a/dev-ruby/ruby-prof/Manifest
+++ b/dev-ruby/ruby-prof/Manifest
@@ -1 +1,2 @@
-DIST ruby-prof-0.18.0.tgz 93925 BLAKE2B f7e0825e5291fdab017035b2a71029407d2b01161f4c4c7aa1f10a80b4080ac14f7adaa2c0340fe5c80f7352181d085d724dee66597ed29825ab7116d37c5e58 SHA512 1743bbd97789c9de66e9479384d204b0870e43a265471f0fbdf7a72bb19d77a30afc25da9d0ac66a921c28ce83d8a8d72279bdd9b23cf8505ccde952092dd9a5
+DIST ruby-prof-1.6.3.tgz 247407 BLAKE2B aac1ec36ee274faba919aa04be625b7b97ef61df105266f3d1b629cef6948db0bffbe67e70782f90a059221cb11cdb0df18031c9061f84cc882029cdde84629f SHA512 3172251fbd445c73f0eec734e09021ec0e375fd2f2999ec357569c679aa98ea5e0e08a18be1236e2572a8f0c302a1157d6a0d36ef04dffc4d0767accce629118
+DIST ruby-prof-1.7.0.tgz 251253 BLAKE2B e9cc60591d5cb8b3be528ba57c6374e7965b2f23394d468f3eb62a547e50edc7cc4ea99a6985726a30f063a0ce4823863b468e0ef2c89ef58cfbbe0362bfdb96 SHA512 ecea55a2a77d832f4aeca73aab578372a57a4fdf2cfc4db1fb14a899fed35ddfac79a078ab8207af8a4e70cdd0c4bb1e44a9ead8642e06b27ac4214d7d5981ef
diff --git a/dev-ruby/ruby-prof/metadata.xml b/dev-ruby/ruby-prof/metadata.xml
index 5753dc09dfba..ad421b62e97c 100644
--- a/dev-ruby/ruby-prof/metadata.xml
+++ b/dev-ruby/ruby-prof/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-prof/ruby-prof-0.18.0.ebuild b/dev-ruby/ruby-prof/ruby-prof-0.18.0.ebuild
deleted file mode 100644
index 0bda0ee97519..000000000000
--- a/dev-ruby/ruby-prof/ruby-prof-0.18.0.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.rdoc CHANGES"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A module for profiling Ruby code"
-HOMEPAGE="https://github.com/ruby-prof/ruby-prof"
-SRC_URI="https://github.com/ruby-prof/${PN}/archive/${PV}.tar.gz -> ${P}.tgz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 dev-ruby/minitest )"
-
-all_ruby_prepare() {
- # Avoid bundler
- sed -i -e '/bundler/I s:^:#:' -e '/:build/ s:^:#:' Rakefile || die
-
- sed -i -e '2igem "test-unit"' test/test_helper.rb || die
-
- # Fix a timing-dependant spec since its thresholds for success are
- # too tight.
- sed -i -e '/test_class_methods/,/^ end/ s:^:#:' test/measure_cpu_time_test.rb || die
-
- # We install the shared object in lib, not ext.
- sed -i -e 's#../ext/ruby_prof#../lib/ruby_prof#' lib/ruby-prof.rb || die
-
- # Avoid unneeded dependency on rake-compiler
- sed -i -e '/extensiontask/ s:^:#:' \
- -e '/ExtensionTask/,/end/ s:^:#:' Rakefile || die
-
- # Create directory required for the test suite to pass
- mkdir tmp || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/ruby_prof extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/ruby_prof || die "build failed"
-
- cp ext/ruby_prof/*$(get_modname) lib/ || die "copy of extension failed"
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- for dir in examples ; do
- docinto "$dir"
- dodoc -r "$dir"/*
- done
-}
diff --git a/dev-ruby/ruby-prof/ruby-prof-1.6.3-r1.ebuild b/dev-ruby/ruby-prof/ruby-prof-1.6.3-r1.ebuild
new file mode 100644
index 000000000000..8c7014bf30fa
--- /dev/null
+++ b/dev-ruby/ruby-prof/ruby-prof-1.6.3-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGES"
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_GEMSPEC="ruby-prof.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/ruby_prof/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A module for profiling Ruby code"
+HOMEPAGE="https://github.com/ruby-prof/ruby-prof"
+SRC_URI="https://github.com/ruby-prof/${PN}/archive/${PV}.tar.gz -> ${P}.tgz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ # Avoid bundler
+ sed -i -e '/bundler/I s:^:#:' -e '/:build/ s:^:#:' Rakefile || die
+
+ sed -i -e '2igem "test-unit"' -e '/bundler/ s:^:#:' test/test_helper.rb || die
+
+ # We install the shared object in lib, not ext.
+ sed -i -e 's#../ext/ruby_prof#../lib/ruby_prof#' lib/ruby-prof.rb || die
+
+ # Avoid unneeded dependency on rake-compiler
+ sed -i -e '/extensiontask/ s:^:#:' \
+ -e '/ExtensionTask/,/end/ s:^:#:' Rakefile || die
+
+ # Don't strip library by default
+ sed -i -e '/LDFLAGS/ s/-s//' ext/ruby_prof/extconf.rb || die
+}
diff --git a/dev-ruby/ruby-prof/ruby-prof-1.7.0.ebuild b/dev-ruby/ruby-prof/ruby-prof-1.7.0.ebuild
new file mode 100644
index 000000000000..5de91d47156c
--- /dev/null
+++ b/dev-ruby/ruby-prof/ruby-prof-1.7.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGES"
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_GEMSPEC="ruby-prof.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/ruby_prof/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A module for profiling Ruby code"
+HOMEPAGE="https://github.com/ruby-prof/ruby-prof"
+SRC_URI="https://github.com/ruby-prof/${PN}/archive/${PV}.tar.gz -> ${P}.tgz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ # Avoid bundler
+ sed -i -e '/bundler/I s:^:#:' -e '/:build/ s:^:#:' Rakefile || die
+
+ sed -i -e '2igem "test-unit"' -e '/bundler/ s:^:#:' test/test_helper.rb || die
+
+ # We install the shared object in lib, not ext.
+ sed -i -e 's#../ext/ruby_prof#../lib/ruby_prof#' lib/ruby-prof.rb || die
+
+ # Avoid unneeded dependency on rake-compiler
+ sed -i -e '/extensiontask/ s:^:#:' \
+ -e '/ExtensionTask/,/end/ s:^:#:' Rakefile || die
+
+ # Don't strip library by default
+ sed -i -e '/LDFLAGS/ s/-s//' ext/ruby_prof/extconf.rb || die
+}
diff --git a/dev-ruby/ruby-progressbar/Manifest b/dev-ruby/ruby-progressbar/Manifest
index cee7ccd88d94..71930b4b3bd9 100644
--- a/dev-ruby/ruby-progressbar/Manifest
+++ b/dev-ruby/ruby-progressbar/Manifest
@@ -1,3 +1 @@
-DIST ruby-progressbar-1.10.0.tar.gz 51483 BLAKE2B 24b92718fe933caa29460939a816b14a492d3144e9a891839ec3b5dbac103849bc0aa3becfb47e507a001ce6b0d0bbf2e0b207fe8d7cb51443924e81c9395b0a SHA512 ec645858d619a95081304905661918eef6d5bd19c0f8d00beac48df3f202d18ac85811d51028d71ab144a5a56649feb2409eca59b3db26733c00a1a54a7ef55d
-DIST ruby-progressbar-1.10.1.tar.gz 53416 BLAKE2B ee435291cd55558843ab05254c01a6148711aee54a5ce80d7b03902e32fd8735fda2e3686794f3f2c8a62c7ca26d90df4d63b48c8d947a471279c35131c49898 SHA512 6cbd791833a1638949c7283b5c475164b44ec8a5d4c7eb417d741da5c9cda9e777481a785f112be7fd1c3714668ad58cbf9aa39eecb61d1022fb3bb35ddb6203
-DIST ruby-progressbar-1.4.2.gem 24064 BLAKE2B 4c26f5c281129a7333c8a7a1f7738a094ec02d769293252c8fbc6df0bea99971cd0d235b6bbeba7e2e4fac10409028f7cdb15870484878c26d9ea9f709f0135b SHA512 443fc015b2dcabc76c685f1529a39ffba289cb00c3cee3992ef240fb9822729f9049db4d85c58ee1ab6cc17927cb325044ea45a968c755a9b5ad93f7b9999fbd
+DIST ruby-progressbar-1.13.0.tar.gz 67185 BLAKE2B 27ea25e4caeb70aefb2523a4f4399056bdb9973deb567fc80eb9daeab6193ecc3693c8364bb43fc94906e6b63a0db1ace6bbd9b00defa0e02177983371b54ad3 SHA512 64723422d6216f2640bc60c8068c8d0437fbc5f315343b13c3167130d868a0aa978f098554ace3ea71406688c0b3c0ed94296adc6b9229ea14df5dbcb56322a3
diff --git a/dev-ruby/ruby-progressbar/metadata.xml b/dev-ruby/ruby-progressbar/metadata.xml
index d63b46d064a5..b56870b56ab8 100644
--- a/dev-ruby/ruby-progressbar/metadata.xml
+++ b/dev-ruby/ruby-progressbar/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-progressbar/ruby-progressbar-1.10.0.ebuild b/dev-ruby/ruby-progressbar/ruby-progressbar-1.10.0.ebuild
deleted file mode 100644
index b111a54ef13b..000000000000
--- a/dev-ruby/ruby-progressbar/ruby-progressbar-1.10.0.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Text Progress Bar Library for Ruby"
-HOMEPAGE="https://github.com/jfelchner/ruby-progressbar"
-SRC_URI="https://github.com/jfelchner/ruby-progressbar/archive/releases/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="ruby-progressbar-releases-v${PV}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/rspectacular dev-ruby/timecop )"
-
-all_ruby_prepare() {
- sed -i -e '/warning_filter/ s:^:#:' \
- spec/spec_helper.rb || die
- # Avoid ruby24 syntax for an unneeded check
- sed -i -e '/^return/ s:^:#:' spec/ruby-progressbar/refinements/enumerator_spec.rb || die
-}
diff --git a/dev-ruby/ruby-progressbar/ruby-progressbar-1.10.1.ebuild b/dev-ruby/ruby-progressbar/ruby-progressbar-1.10.1.ebuild
deleted file mode 100644
index 0910ef551afc..000000000000
--- a/dev-ruby/ruby-progressbar/ruby-progressbar-1.10.1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Text Progress Bar Library for Ruby"
-HOMEPAGE="https://github.com/jfelchner/ruby-progressbar"
-SRC_URI="https://github.com/jfelchner/ruby-progressbar/archive/releases/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="ruby-progressbar-releases-v${PV}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/rspectacular dev-ruby/timecop )"
-
-all_ruby_prepare() {
- sed -i -e '/warning_filter/ s:^:#:' \
- spec/spec_helper.rb || die
- # Avoid ruby24 syntax for an unneeded check
- sed -i -e '/^return/ s:^:#:' spec/ruby-progressbar/refinements/enumerator_spec.rb || die
-}
diff --git a/dev-ruby/ruby-progressbar/ruby-progressbar-1.13.0-r1.ebuild b/dev-ruby/ruby-progressbar/ruby-progressbar-1.13.0-r1.ebuild
new file mode 100644
index 000000000000..b8659a7f3211
--- /dev/null
+++ b/dev-ruby/ruby-progressbar/ruby-progressbar-1.13.0-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="ruby-progressbar.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Text Progress Bar Library for Ruby"
+HOMEPAGE="https://github.com/jfelchner/ruby-progressbar"
+SRC_URI="https://github.com/jfelchner/ruby-progressbar/archive/releases/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="ruby-progressbar-releases-v${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+ruby_add_bdepend "test? ( dev-ruby/timecop )"
+
+all_ruby_prepare() {
+ sed -e '/warning_filter/ s:^:#:' \
+ -e '/rspectacular/arequire "ruby-progressbar"; require "timecop"' \
+ -e '/rspectacular/ s:^:#:' \
+ -i spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/ruby-progressbar/ruby-progressbar-1.13.0.ebuild b/dev-ruby/ruby-progressbar/ruby-progressbar-1.13.0.ebuild
new file mode 100644
index 000000000000..246a5e415ee2
--- /dev/null
+++ b/dev-ruby/ruby-progressbar/ruby-progressbar-1.13.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="ruby-progressbar.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Text Progress Bar Library for Ruby"
+HOMEPAGE="https://github.com/jfelchner/ruby-progressbar"
+SRC_URI="https://github.com/jfelchner/ruby-progressbar/archive/releases/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="ruby-progressbar-releases-v${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~hppa ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+ruby_add_bdepend "test? ( dev-ruby/rspectacular dev-ruby/timecop )"
+
+all_ruby_prepare() {
+ sed -i -e '/warning_filter/ s:^:#:' \
+ spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/ruby-progressbar/ruby-progressbar-1.4.2-r1.ebuild b/dev-ruby/ruby-progressbar/ruby-progressbar-1.4.2-r1.ebuild
deleted file mode 100644
index af0511dbb7d4..000000000000
--- a/dev-ruby/ruby-progressbar/ruby-progressbar-1.4.2-r1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Text Progress Bar Library for Ruby"
-HOMEPAGE="https://github.com/jfelchner/ruby-progressbar"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~hppa ppc ppc64 x86 ~x86-fbsd"
-
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/timecop )"
-
-all_ruby_prepare() {
- sed -i -e '/[Ss]imple[Cc]ov/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/ruby-rc4/metadata.xml b/dev-ruby/ruby-rc4/metadata.xml
index bd7c9618f63b..749279ff5bbc 100644
--- a/dev-ruby/ruby-rc4/metadata.xml
+++ b/dev-ruby/ruby-rc4/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-rc4/ruby-rc4-0.1.5-r2.ebuild b/dev-ruby/ruby-rc4/ruby-rc4-0.1.5-r2.ebuild
deleted file mode 100644
index f18b19866b41..000000000000
--- a/dev-ruby/ruby-rc4/ruby-rc4-0.1.5-r2.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A pure Ruby implementation of the Rc4 algorithm"
-HOMEPAGE="https://github.com/caiges/Ruby-RC4"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e 's/"README"/"README.md"/' Rakefile || die
-}
diff --git a/dev-ruby/ruby-rc4/ruby-rc4-0.1.5-r3.ebuild b/dev-ruby/ruby-rc4/ruby-rc4-0.1.5-r3.ebuild
new file mode 100644
index 000000000000..ee4cdbc0f908
--- /dev/null
+++ b/dev-ruby/ruby-rc4/ruby-rc4-0.1.5-r3.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_DOCDIR="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A pure Ruby implementation of the RC4 algorithm"
+HOMEPAGE="https://github.com/caiges/Ruby-RC4"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's/"README"/"README.md"/' Rakefile || die
+}
diff --git a/dev-ruby/ruby-romkan/metadata.xml b/dev-ruby/ruby-romkan/metadata.xml
index a51c24fcf9bb..896b65c7635a 100644
--- a/dev-ruby/ruby-romkan/metadata.xml
+++ b/dev-ruby/ruby-romkan/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-romkan/ruby-romkan-0.4-r6.ebuild b/dev-ruby/ruby-romkan/ruby-romkan-0.4-r6.ebuild
deleted file mode 100644
index 1677bd0812c5..000000000000
--- a/dev-ruby/ruby-romkan/ruby-romkan-0.4-r6.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng
-
-DESCRIPTION="A Romaji <-> Kana conversion library for Ruby"
-HOMEPAGE="http://0xcc.net/ruby-romkan/"
-SRC_URI="http://0xcc.net/ruby-romkan/${P}.tar.gz"
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="alpha amd64 ~arm ~hppa ia64 ~mips ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE=""
-
-DOCS="ChangeLog *.rd"
-
-RUBY_PATCHES=( "${FILESDIR}/${PN}-ruby19.patch" )
-
-each_ruby_test() {
- ${RUBY} -I. -Ke test.rb < /dev/null || die "test failed"
-}
-
-each_ruby_install() {
- doruby romkan.rb
-}
-
-all_ruby_install() {
- dodoc ${DOCS}
-}
diff --git a/dev-ruby/ruby-romkan/ruby-romkan-0.4-r7.ebuild b/dev-ruby/ruby-romkan/ruby-romkan-0.4-r7.ebuild
new file mode 100644
index 000000000000..feceaf035d94
--- /dev/null
+++ b/dev-ruby/ruby-romkan/ruby-romkan-0.4-r7.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+inherit ruby-ng
+
+DESCRIPTION="A Romaji <-> Kana conversion library for Ruby"
+HOMEPAGE="http://0xcc.net/ruby-romkan/"
+SRC_URI="http://0xcc.net/ruby-romkan/${P}.tar.gz"
+
+LICENSE="Ruby-BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~hppa ~mips ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+
+DOCS="ChangeLog *.rd"
+
+all_ruby_prepare() {
+ eapply -p0 "${FILESDIR}/${PN}-ruby19.patch"
+}
+
+each_ruby_test() {
+ ${RUBY} -I. -Ke test.rb < /dev/null || die "test failed"
+}
+
+each_ruby_install() {
+ doruby romkan.rb
+}
+
+all_ruby_install() {
+ dodoc ${DOCS}
+}
diff --git a/dev-ruby/ruby-rsvg/Manifest b/dev-ruby/ruby-rsvg/Manifest
deleted file mode 100644
index f9915c2e2788..000000000000
--- a/dev-ruby/ruby-rsvg/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
diff --git a/dev-ruby/ruby-rsvg/metadata.xml b/dev-ruby/ruby-rsvg/metadata.xml
deleted file mode 100644
index 2eb590f61d26..000000000000
--- a/dev-ruby/ruby-rsvg/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-rsvg/ruby-rsvg-3.3.2.ebuild b/dev-ruby/ruby-rsvg/ruby-rsvg-3.3.2.ebuild
deleted file mode 100644
index fb6f57589d74..000000000000
--- a/dev-ruby/ruby-rsvg/ruby-rsvg-3.3.2.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME=rsvg2
-
-inherit ruby-ng-gnome2
-
-RUBY_S=ruby-gnome2-all-${PV}/rsvg2
-
-DESCRIPTION="Ruby bindings for librsvg"
-KEYWORDS="amd64 ~ppc ~x86"
-
-RDEPEND+=" >=gnome-base/librsvg-2.16.1"
-DEPEND+=" >=gnome-base/librsvg-2.16.1"
-
-ruby_add_rdepend "
- ~dev-ruby/ruby-cairo-gobject-${PV}
- ~dev-ruby/ruby-gdkpixbuf2-${PV}
-"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' test/rsvg2-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/and have_make/,/^ end/ s:^:#:' test/run-test.rb || die
-
- # Avoid test that fails and may be version-specific
- sed -i -e '/test_unlimited/aomit "version specific?"' test/test-handle.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-rsvg/ruby-rsvg-3.3.6.ebuild b/dev-ruby/ruby-rsvg/ruby-rsvg-3.3.6.ebuild
deleted file mode 100644
index 43cb3c718d48..000000000000
--- a/dev-ruby/ruby-rsvg/ruby-rsvg-3.3.6.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME=rsvg2
-
-inherit ruby-ng-gnome2
-
-RUBY_S=ruby-gnome2-all-${PV}/rsvg2
-
-DESCRIPTION="Ruby bindings for librsvg"
-KEYWORDS="~amd64 ~ppc ~x86"
-
-RDEPEND+=" >=gnome-base/librsvg-2.16.1"
-DEPEND+=" >=gnome-base/librsvg-2.16.1"
-
-ruby_add_rdepend "
- ~dev-ruby/ruby-cairo-gobject-${PV}
- ~dev-ruby/ruby-gdkpixbuf2-${PV}
-"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' test/rsvg2-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/and have_make/,/^ end/ s:^:#:' test/run-test.rb || die
-
- # Avoid test that fails and may be version-specific
- sed -i -e '/test_unlimited/aomit "version specific?"' test/test-handle.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/ruby-sdl/Manifest b/dev-ruby/ruby-sdl/Manifest
deleted file mode 100644
index 6f6345227ac6..000000000000
--- a/dev-ruby/ruby-sdl/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ruby-sdl-2.1.2.tar.gz 178105 BLAKE2B 84870279edcf2616159861267ffc8666b482786f43a30c8729cd4c59f25219956648270452bf38b72115e05235786ec8c0f0e7913469cc8573d9eda813d25726 SHA512 1ddae367fb4145cc8142edbf3c61acaf56604054f710ac37cadb8d04f93db24fc3595c1bc8e0fb5f330aabc815884f31b5f2a39c0108026fca442fc0b3bc2807
diff --git a/dev-ruby/ruby-sdl/metadata.xml b/dev-ruby/ruby-sdl/metadata.xml
deleted file mode 100644
index bc5eb37a99e2..000000000000
--- a/dev-ruby/ruby-sdl/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <use>
- <flag name="image">Enable <pkg>media-libs/sdl-image</pkg> support</flag>
- <flag name="mixer">Enable <pkg>media-libs/sdl-mixer</pkg> support</flag>
- <flag name="sge">Enable sdl-sge support</flag>
- </use>
- <upstream>
- <remote-id type="github">ohai/rubysdl</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-sdl/ruby-sdl-2.1.2-r2.ebuild b/dev-ruby/ruby-sdl/ruby-sdl-2.1.2-r2.ebuild
deleted file mode 100644
index e4f16096308e..000000000000
--- a/dev-ruby/ruby-sdl/ruby-sdl-2.1.2-r2.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit eutils ruby-ng
-
-RELEASE="rel-${PV//./-}"
-RUBY_S="rubysdl-${RELEASE}"
-
-DESCRIPTION="Ruby/SDL: Ruby bindings for SDL"
-HOMEPAGE="https://www.kmc.gr.jp/~ohai/rubysdl.en.html"
-SRC_URI="https://github.com/ohai/rubysdl/archive/${RELEASE}.tar.gz -> ${P}.tar.gz"
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="amd64 ~ppc x86"
-
-IUSE="image mixer truetype mpeg sge"
-
-CDEPEND="
- >=media-libs/libsdl-1.2.5
- truetype? ( >=media-libs/sdl-ttf-2.0.6 )
- image? ( >=media-libs/sdl-image-1.2.2 )
- mixer? ( >=media-libs/sdl-mixer-1.2.4 )
- mpeg? ( >=media-libs/smpeg-0.4.4-r1 )
- sge? ( media-libs/sge )"
-DEPEND="${DEPEND} ${CDEPEND}"
-RDEPEND="${RDEPEND} ${CDEPEND}"
-
-each_ruby_configure() {
- ${RUBY} extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake V=1 || die "emake failed"
-}
-
-each_ruby_install() {
- emake V=1 DESTDIR="${D}" install || die "einstall failed"
-}
-
-all_ruby_install() {
- dodoc README.en README.ja NEWS.en NEWS.ja
- insinto /usr/share/doc/${P}/doc
- doins doc-en/*
- insinto /usr/share/doc/${P}/sample
- doins sample/*
-}
-
-pkg_postinst () {
- if ! use image || ! use mixer || ! use truetype || ! use mpeg || ! use sge; then
- echo ""
- ewarn "If any of the following packages are not installed, Ruby/SDL"
- ewarn "will be missing some functionality. This is ok, but may"
- ewarn "cause errors in Ruby/SDL programs that need these libraries:"
- ewarn ""
- ewarn "\tmedia-libs/sdl-image\tImage loading (PNG, JPEG, etc.)"
- ewarn "\tmedia-libs/sdl-mixer\tSound mixing"
- ewarn "\tmedia-libs/sdl-ttf\tTrueType Fonts"
- ewarn "\tmedia-libs/sge\t\tVarious cool graphics extensions"
- ewarn "\tmedia-libs/smpeg\tMPEG playback (including mp3)"
- ewarn ""
- ewarn "If you need the functionality offered by these libraries,"
- ewarn "emerge the desired libraries, then re-emerge dev-ruby/rubysdl"
- echo ""
- fi
-}
diff --git a/dev-ruby/ruby-shadow/Manifest b/dev-ruby/ruby-shadow/Manifest
index b72014436ce5..7e0ec21e92f8 100644
--- a/dev-ruby/ruby-shadow/Manifest
+++ b/dev-ruby/ruby-shadow/Manifest
@@ -1 +1 @@
-DIST ruby-shadow-2.5.0.gem 11264 BLAKE2B 22012d4672528e76a860e534fecb2a40d27c15f7440a0be6880c4ffd06be26e58d2f5279c385c49aca611864c8959ed0ea3afdd78bcdb28ac0912123f18a35e0 SHA512 1abd54df1bd4f29e135093df9b22886a726824f8b72b742017fd31bdc3fa39e3d79410a747cf2ebe4117f75e665fb89c904375b5c44a674bec91a4cc37646520
+DIST ruby-shadow-2.5.1.gem 11264 BLAKE2B 0371fbf8f01dd6907b26369c33e69bc11664282ce1005792cff70113b0a05bfe0ce0eddd15896a9c6bcc9de38671d73034414f354f34d2716fd4f9265d823cbf SHA512 401ba31f6f87b9b50597e3924c67ef9d0a8f566ea4649735caf59e2b706861babf9b3aa273b7c47ca1cc9c8b4fde79ab21d2e264cd7ba58041fe7b8f9fd87411
diff --git a/dev-ruby/ruby-shadow/files/ruby-shadow-2.5.1-ruby32-taint.patch b/dev-ruby/ruby-shadow/files/ruby-shadow-2.5.1-ruby32-taint.patch
new file mode 100644
index 000000000000..4c66e63fbb1a
--- /dev/null
+++ b/dev-ruby/ruby-shadow/files/ruby-shadow-2.5.1-ruby32-taint.patch
@@ -0,0 +1,54 @@
+From 70330521b99e84c8f7445c213dfde0768f45a690 Mon Sep 17 00:00:00 2001
+From: Michael Hashizume <michael.hashizume@puppet.com>
+Date: Thu, 20 Oct 2022 13:28:09 -0700
+Subject: [PATCH] Removes taint checking functions
+
+Taint checking has been completely removed from Ruby as of Ruby
+3.2.0. This commit removes taint checking functions from ruby-
+shadow.
+
+See https://bugs.ruby-lang.org/issues/16131
+---
+ pwd/shadow.c | 6 +++---
+ shadow/shadow.c | 4 ++--
+ 2 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/pwd/shadow.c b/pwd/shadow.c
+index eeb96d4..46313d4 100644
+--- a/pwd/shadow.c
++++ b/pwd/shadow.c
+@@ -56,8 +56,8 @@ static VALUE convert_pw_struct( struct passwd *entry )
+ {
+ /* Hmm. Why custom pw_change instead of sp_lstchg? */
+ return rb_struct_new(rb_sPasswdEntry,
+- rb_tainted_str_new2(entry->pw_name), /* sp_namp */
+- rb_tainted_str_new2(entry->pw_passwd), /* sp_pwdp, encryped password */
++ rb_str_new2(entry->pw_name), /* sp_namp */
++ rb_str_new2(entry->pw_passwd), /* sp_pwdp, encryped password */
+ Qnil, /* sp_lstchg, date when the password was last changed (in days since Jan 1, 1970) */
+ Qnil, /* sp_min, days that password must stay same */
+ Qnil, /* sp_max, days until password changes. */
+@@ -66,7 +66,7 @@ static VALUE convert_pw_struct( struct passwd *entry )
+ INT2FIX(difftime(entry->pw_change, 0) / (24*60*60)), /* pw_change */
+ INT2FIX(difftime(entry->pw_expire, 0) / (24*60*60)), /* sp_expire */
+ Qnil, /* sp_flag */
+- rb_tainted_str_new2(entry->pw_class), /* sp_loginclass, user access class */
++ rb_str_new2(entry->pw_class), /* sp_loginclass, user access class */
+ NULL);
+ }
+
+diff --git a/shadow/shadow.c b/shadow/shadow.c
+index 35a77a1..9a2ae70 100644
+--- a/shadow/shadow.c
++++ b/shadow/shadow.c
+@@ -34,8 +34,8 @@ static VALUE rb_eFileLock;
+ static VALUE convert_pw_struct( struct spwd *entry )
+ {
+ return rb_struct_new(rb_sPasswdEntry,
+- rb_tainted_str_new2(entry->sp_namp),
+- rb_tainted_str_new2(entry->sp_pwdp),
++ rb_str_new2(entry->sp_namp),
++ rb_str_new2(entry->sp_pwdp),
+ INT2FIX(entry->sp_lstchg),
+ INT2FIX(entry->sp_min),
+ INT2FIX(entry->sp_max),
diff --git a/dev-ruby/ruby-shadow/files/ruby-shadow-2.5.1-ruby32.patch b/dev-ruby/ruby-shadow/files/ruby-shadow-2.5.1-ruby32.patch
new file mode 100644
index 000000000000..3cbcf4b088b3
--- /dev/null
+++ b/dev-ruby/ruby-shadow/files/ruby-shadow-2.5.1-ruby32.patch
@@ -0,0 +1,31 @@
+From eab4aba3f5e06ea8f124d3e5ff6b3fa88c4807cd Mon Sep 17 00:00:00 2001
+From: Mamoru TASAKA <mtasaka@fedoraproject.org>
+Date: Thu, 1 Dec 2022 12:23:05 +0900
+Subject: [PATCH] extconf.rb: use Rbconfig::CONFIG instead of mkmf CONFIG
+
+In mkmf.rb CONFIG is defined as CONFIG is defined as RbConfig::MAKEFILE_CONFIG
+and RbConfig::MAKEFILE_CONFIG is almost same as RbConfig::CONFIG
+except that RbConfig::MAKEFILE_CONFIG uses reference for other variables.
+
+Using CONFIG in extconf.rb causes error with ruby3.2 because now
+CONFIG['host_os'] uses reference for target_os variable, and extconf.rb
+expects that this variable is all expanded. So instead, use RbConfig::CONFIG .
+
+Closes #30
+---
+ extconf.rb | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/extconf.rb b/extconf.rb
+index d17f926..55dcff5 100644
+--- a/extconf.rb
++++ b/extconf.rb
+@@ -14,7 +14,7 @@
+ else; ''
+ end
+
+-implementation = case CONFIG['host_os']
++implementation = case RbConfig::CONFIG['host_os']
+ when /linux/i; 'shadow'
+ when /sunos|solaris/i; 'shadow'
+ when /freebsd|mirbsd|netbsd|openbsd/i; 'pwd'
diff --git a/dev-ruby/ruby-shadow/metadata.xml b/dev-ruby/ruby-shadow/metadata.xml
index ba0540ea586b..96a75773e532 100644
--- a/dev-ruby/ruby-shadow/metadata.xml
+++ b/dev-ruby/ruby-shadow/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-shadow/ruby-shadow-2.5.0.ebuild b/dev-ruby/ruby-shadow/ruby-shadow-2.5.0.ebuild
deleted file mode 100644
index e6d5a34e31f5..000000000000
--- a/dev-ruby/ruby-shadow/ruby-shadow-2.5.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="HISTORY README README.euc"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="ruby shadow bindings"
-HOMEPAGE="https://github.com/apalmblad/ruby-shadow http://ttsky.net"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="amd64 ~arm hppa ppc ~ppc64 ~sparc x86"
-IUSE=""
-
-each_ruby_configure() {
- ${RUBY} extconf.rb || die "Configuration failed."
- sed -i -e "/^ldflags =/s/$/ \$(LDFLAGS)/" Makefile || die
-}
-
-each_ruby_compile() {
- emake V=1
- mkdir -p lib
- cp shadow$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/ruby-shadow/ruby-shadow-2.5.1.ebuild b/dev-ruby/ruby-shadow/ruby-shadow-2.5.1.ebuild
new file mode 100644
index 000000000000..2e42f05bcf5a
--- /dev/null
+++ b/dev-ruby/ruby-shadow/ruby-shadow-2.5.1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="HISTORY README README.euc"
+
+RUBY_FAKEGEM_EXTENSIONS=(./extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="ruby shadow bindings"
+HOMEPAGE="https://github.com/apalmblad/ruby-shadow"
+
+LICENSE="|| ( public-domain Unlicense )"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ~ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+PATCHES=(
+ "${FILESDIR}/${P}-ruby32.patch"
+ "${FILESDIR}/${P}-ruby32-taint.patch"
+)
+
+all_ruby_prepare() {
+ sed -e '16i$CFLAGS += ENV["CFLAGS"]' \
+ -i extconf.rb || die
+}
diff --git a/dev-ruby/ruby-shout/files/ruby-shout-2.2.2-errno.patch b/dev-ruby/ruby-shout/files/ruby-shout-2.2.2-errno.patch
new file mode 100644
index 000000000000..91e484ab4295
--- /dev/null
+++ b/dev-ruby/ruby-shout/files/ruby-shout-2.2.2-errno.patch
@@ -0,0 +1,13 @@
+--- a/ext/shout_ext.c 2024-01-23 14:02:08.404056464 +0100
++++ b/ext/shout_ext.c 2024-01-23 14:03:47.152700002 +0100
+@@ -91,8 +91,8 @@
+ /* For metadata-related errors, which don't relate to a shout_t, so we can't
+ * use shout_get_errno or shout_get_error on them.
+ */
+-static void raise_nonspecific_shout_error(int errno) {
+- rb_raise(cShoutError, "%d", errno);
++static void raise_nonspecific_shout_error(int err_no) {
++ rb_raise(cShoutError, "%d", err_no);
+ }
+
+ /*
diff --git a/dev-ruby/ruby-shout/metadata.xml b/dev-ruby/ruby-shout/metadata.xml
index fb2376b62276..eb019ffa058b 100644
--- a/dev-ruby/ruby-shout/metadata.xml
+++ b/dev-ruby/ruby-shout/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-shout/ruby-shout-2.2.2-r2.ebuild b/dev-ruby/ruby-shout/ruby-shout-2.2.2-r2.ebuild
new file mode 100644
index 000000000000..59543decf60d
--- /dev/null
+++ b/dev-ruby/ruby-shout/ruby-shout-2.2.2-r2.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="README.textile"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby interface to libshout2"
+HOMEPAGE="https://github.com/niko/ruby-shout"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc x86"
+IUSE=""
+
+RDEPEND+=" >=media-libs/libshout-2.0"
+DEPEND+=" >=media-libs/libshout-2.0"
+
+PATCHES=( "${FILESDIR}/${P}-errno.patch" )
diff --git a/dev-ruby/ruby-shout/ruby-shout-2.2.2.ebuild b/dev-ruby/ruby-shout/ruby-shout-2.2.2.ebuild
deleted file mode 100644
index ebdd1067bb67..000000000000
--- a/dev-ruby/ruby-shout/ruby-shout-2.2.2.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.textile"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A Ruby interface to libshout2"
-HOMEPAGE="https://github.com/niko/ruby-shout"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc x86"
-IUSE=""
-
-RDEPEND+=" >=media-libs/libshout-2.0"
-DEPEND+=" >=media-libs/libshout-2.0"
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die "extconf failed"
-}
-
-each_ruby_compile() {
- emake -C ext V=1
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- ruby_fakegem_newins ext/${PN#ruby-}_ext$(get_modname) lib/${PN#ruby-}_ext$(get_modname)
-}
diff --git a/dev-ruby/ruby-termios/Manifest b/dev-ruby/ruby-termios/Manifest
index 6058dd68ca0d..129763df7145 100644
--- a/dev-ruby/ruby-termios/Manifest
+++ b/dev-ruby/ruby-termios/Manifest
@@ -1 +1 @@
-DIST ruby-termios-1.0.2.gem 17408 BLAKE2B f85877dc3c9beb5c8d20e044ef7dfde6a12d540157228c1fdff365f3b662f8c84b9e7460ede985f0d402ec76a1d248fa41d336ac7bd9333222543c6d01748c83 SHA512 e32e899e917eb04e382a02484accf9fea0369de8c1942b445e48e71e9c836305e2d54221c9a044d27ede44a7d5c14f976a8ffda79f79f71b5a121474e759f45d
+DIST ruby-termios-1.1.0.gem 17408 BLAKE2B df85f46693c17ca05736fecb2dcbddafc3831ae04cdb56e13782242e4161d04e6c095d04927eebe1959843d6f6da95f0433309018a7cee2bd42407560c2c99f9 SHA512 dc98e6d7e304fa76b4139dd88f8c6955e6f4e09ca48d5611813fac941564c93165945c24dc0d7f7f84d7cd959512d006d73f042b57fcb1dde2743ffbb3cc9b41
diff --git a/dev-ruby/ruby-termios/metadata.xml b/dev-ruby/ruby-termios/metadata.xml
index 3ae483f3b3a8..f1b6f1333a42 100644
--- a/dev-ruby/ruby-termios/metadata.xml
+++ b/dev-ruby/ruby-termios/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-termios/ruby-termios-1.0.2-r1.ebuild b/dev-ruby/ruby-termios/ruby-termios-1.0.2-r1.ebuild
deleted file mode 100644
index f5a208aac68f..000000000000
--- a/dev-ruby/ruby-termios/ruby-termios-1.0.2-r1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md termios.rd"
-
-# There are no tests in the gem, and the upstream tests only work
-# with a normal TTY, bug 340575.
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A Ruby interface to termios"
-HOMEPAGE="http://arika.org/ruby/termios"
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="amd64 ~hppa ~mips ~ppc x86 ~x86-macos"
-IUSE=""
-
-each_ruby_configure() {
- ${RUBY} -Cext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext V=1
- cp ext/termios$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/ruby-termios/ruby-termios-1.1.0-r2.ebuild b/dev-ruby/ruby-termios/ruby-termios-1.1.0-r2.ebuild
new file mode 100644
index 000000000000..9b7fc27f4864
--- /dev/null
+++ b/dev-ruby/ruby-termios/ruby-termios-1.1.0-r2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md termios.rd"
+
+# There are no tests in the gem, and the upstream tests only work
+# with a normal TTY, bug 340575.
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby interface to termios"
+HOMEPAGE="http://arika.org/ruby/termios"
+LICENSE="Ruby-BSD"
+SLOT="0"
+KEYWORDS="amd64 ~hppa ~mips ~ppc x86"
+IUSE=""
diff --git a/dev-ruby/ruby-vte/Manifest b/dev-ruby/ruby-vte/Manifest
deleted file mode 100644
index f9915c2e2788..000000000000
--- a/dev-ruby/ruby-vte/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
diff --git a/dev-ruby/ruby-vte/metadata.xml b/dev-ruby/ruby-vte/metadata.xml
deleted file mode 100644
index 2eb590f61d26..000000000000
--- a/dev-ruby/ruby-vte/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-vte/ruby-vte-3.3.2.ebuild b/dev-ruby/ruby-vte/ruby-vte-3.3.2.ebuild
deleted file mode 100644
index e91a33a4e925..000000000000
--- a/dev-ruby/ruby-vte/ruby-vte-3.3.2.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-DESCRIPTION="Ruby vte bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-RDEPEND+=" >=x11-libs/vte-0.12.1:0"
-DEPEND+=" >=x11-libs/vte-0.12.1:0"
-
-ruby_add_rdepend ">=dev-ruby/ruby-gtk2-${PV}"
-
-all_ruby_prepare() {
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew_libffi/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-}
diff --git a/dev-ruby/ruby-vte/ruby-vte-3.3.6.ebuild b/dev-ruby/ruby-vte/ruby-vte-3.3.6.ebuild
deleted file mode 100644
index d1099f2a49c3..000000000000
--- a/dev-ruby/ruby-vte/ruby-vte-3.3.6.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit ruby-ng-gnome2
-
-DESCRIPTION="Ruby vte bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-RDEPEND+=" >=x11-libs/vte-0.12.1:0"
-DEPEND+=" >=x11-libs/vte-0.12.1:0"
-
-ruby_add_rdepend ">=dev-ruby/ruby-gtk2-${PV}"
-
-all_ruby_prepare() {
- # Avoid native installer
- sed -i -e '/native-package-installer/ s:^:#: ; /^\s*setup_homebrew/ s:^:#:' ../glib2/lib/mkmf-gnome2.rb || die
-}
diff --git a/dev-ruby/ruby-vte3/Manifest b/dev-ruby/ruby-vte3/Manifest
deleted file mode 100644
index f9915c2e2788..000000000000
--- a/dev-ruby/ruby-vte3/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
diff --git a/dev-ruby/ruby-vte3/metadata.xml b/dev-ruby/ruby-vte3/metadata.xml
deleted file mode 100644
index 2eb590f61d26..000000000000
--- a/dev-ruby/ruby-vte3/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-vte3/ruby-vte3-3.3.2.ebuild b/dev-ruby/ruby-vte3/ruby-vte3-3.3.2.ebuild
deleted file mode 100644
index 23450c24b485..000000000000
--- a/dev-ruby/ruby-vte3/ruby-vte3-3.3.2.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby VTE bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" x11-libs/vte:2.91"
-RDEPEND+=" x11-libs/vte:2.91"
-
-ruby_add_bdepend ">=dev-ruby/ruby-glib2-${PV}"
-ruby_add_rdepend ">=dev-ruby/ruby-gtk3-${PV}"
-
-all_ruby_prepare() {
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-
- # Avoid tests that require a real pty.
- rm -f test/test-pty.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-vte3/ruby-vte3-3.3.6.ebuild b/dev-ruby/ruby-vte3/ruby-vte3-3.3.6.ebuild
deleted file mode 100644
index f37e95963cdd..000000000000
--- a/dev-ruby/ruby-vte3/ruby-vte3-3.3.6.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby VTE bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" x11-libs/vte:2.91"
-RDEPEND+=" x11-libs/vte:2.91"
-
-ruby_add_bdepend ">=dev-ruby/ruby-glib2-${PV}"
-ruby_add_rdepend ">=dev-ruby/ruby-gtk3-${PV}"
-
-all_ruby_prepare() {
- sed -i -e '/system/,/^ end/ s:^:#:' test/run-test.rb || die
-
- # Avoid tests that require a real pty.
- rm -f test/test-pty.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- virtx ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-webkit2-gtk/Manifest b/dev-ruby/ruby-webkit2-gtk/Manifest
deleted file mode 100644
index f9915c2e2788..000000000000
--- a/dev-ruby/ruby-webkit2-gtk/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST ruby-gnome2-all-3.3.2.tar.gz 2310841 BLAKE2B 8f50dc289cd097fa476a3419ffec623009395384bcfa965803f3e4e857e095866e0233e7546150c5e54d1e35f71c5e72a2880100a881ba037356208e5d3721ce SHA512 4581aad8c69db2b6be3b067ff60994fb3567d68299f634e085319ac81f51e1d681972ccba715f8e93df3adba155fa8cd3a49929cd77f6eb01856be30e551b21c
-DIST ruby-gnome2-all-3.3.6.tar.gz 2307419 BLAKE2B 80d981528a7d1ff41400e8555c7576ac299a5e3b7d3fc7f78843ae0bedfa6ad43c79d3ebef60b918236c9054b0e5de462b48a274d1fdd03f6f288ff53d6645a5 SHA512 8bcd439cee77efc70423eeec43380f080b348627384c675e3b3a810e602b5da4f04bc476eccabdf009a442d496442e7a45a23f126bde4b356af70ac9949c27f5
diff --git a/dev-ruby/ruby-webkit2-gtk/metadata.xml b/dev-ruby/ruby-webkit2-gtk/metadata.xml
deleted file mode 100644
index 2eb590f61d26..000000000000
--- a/dev-ruby/ruby-webkit2-gtk/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="sourceforge-jp">ruby-gnome2</remote-id>
- <remote-id type="sourceforge">ruby-gnome2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-webkit2-gtk/ruby-webkit2-gtk-3.3.2.ebuild b/dev-ruby/ruby-webkit2-gtk/ruby-webkit2-gtk-3.3.2.ebuild
deleted file mode 100644
index a0e9a1d2b887..000000000000
--- a/dev-ruby/ruby-webkit2-gtk/ruby-webkit2-gtk-3.3.2.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby WebKitGtk+ for Gtk 3.0 bindings"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" net-libs/webkit-gtk:4"
-RDEPEND+=" net-libs/webkit-gtk:4"
-
-RUBY_S="ruby-gnome2-all-${PV}/webkit2-gtk"
-
-ruby_add_rdepend ">=dev-ruby/ruby-gobject-introspection-${PV}
- >=dev-ruby/ruby-gtk3-${PV}"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' \
- ../gobject-introspection/test/gobject-introspection-test-utils.rb \
- test/webkit2-gtk-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/"Makefile"/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- DCONF_PROFILE="${T}" virtx ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-webkit2-gtk/ruby-webkit2-gtk-3.3.6.ebuild b/dev-ruby/ruby-webkit2-gtk/ruby-webkit2-gtk-3.3.6.ebuild
deleted file mode 100644
index ecbbba403394..000000000000
--- a/dev-ruby/ruby-webkit2-gtk/ruby-webkit2-gtk-3.3.6.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit virtualx ruby-ng-gnome2
-
-DESCRIPTION="Ruby WebKitGtk+ for Gtk 3.0 bindings"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE=""
-
-DEPEND+=" net-libs/webkit-gtk:4"
-RDEPEND+=" net-libs/webkit-gtk:4"
-
-RUBY_S="ruby-gnome2-all-${PV}/webkit2-gtk"
-
-ruby_add_rdepend ">=dev-ruby/ruby-gobject-introspection-${PV}
- >=dev-ruby/ruby-gtk3-${PV}"
-
-all_ruby_prepare() {
- # Avoid unneeded dependency on test-unit-notify.
- sed -i -e '/notify/ s:^:#:' \
- ../gobject-introspection/test/gobject-introspection-test-utils.rb \
- test/webkit2-gtk-test-utils.rb || die
-
- # Avoid compilation of dependencies during test.
- sed -i -e '/"Makefile"/,/^ end/ s:^:#:' test/run-test.rb || die
-}
-
-each_ruby_configure() {
- :
-}
-
-each_ruby_compile() {
- :
-}
-
-each_ruby_test() {
- DCONF_PROFILE="${T}" virtx ${RUBY} test/run-test.rb || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-}
diff --git a/dev-ruby/ruby-xslt/Manifest b/dev-ruby/ruby-xslt/Manifest
deleted file mode 100644
index 80ecdef10380..000000000000
--- a/dev-ruby/ruby-xslt/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ruby-xslt-0.9.10.gem 35328 BLAKE2B aa0a627e76fcbc5626018389b5adbdbef1d54cc228f5622fd8cef4305e2d79c023c193031b8f8cc5f0e63d9c0af96edc0398beea4ac7f5eafe3dcf13ad2ff0ea SHA512 b196a517b19c6cb91ed6f4543ecfc6b58532e66f460029d2618e792cfe4078342fcb4428642328cbe6d97d1d942a6025ecff617578fc3abe2b0e414bf61ca1c4
diff --git a/dev-ruby/ruby-xslt/metadata.xml b/dev-ruby/ruby-xslt/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/ruby-xslt/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/ruby-xslt/ruby-xslt-0.9.10.ebuild b/dev-ruby/ruby-xslt/ruby-xslt-0.9.10.ebuild
deleted file mode 100644
index 3e9138950639..000000000000
--- a/dev-ruby/ruby-xslt/ruby-xslt-0.9.10.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.rdoc AUTHORS.rdoc README.rdoc"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A Ruby class for processing XSLT"
-HOMEPAGE="https://github.com/glejeune/ruby-xslt"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~ppc64 x86"
-IUSE=""
-
-DEPEND+=" >=dev-libs/libxslt-1.1.12"
-RDEPEND+=" >=dev-libs/libxslt-1.1.12"
-
-all_ruby_prepare() {
- # Remove forced -g compiler flag.
- sed -i -e 's/-g //' ext/xslt_lib/extconf.rb || die
-
- # One test fails but we have installed this code already for a long
- # time so this probably isn't a regression. No upstream bug tracker
- # to report the problem :-(
- sed -i -e '/test_transformation_error/,/^ end/ s:^:#:' test/test.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -C ext/xslt_lib extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -C ext/xslt_lib V=1
- cp ext/xslt_lib/xslt_lib$(get_modname) lib/xml/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -I../lib:lib -Ctest test.rb || die
-}
diff --git a/dev-ruby/ruby-yadis/metadata.xml b/dev-ruby/ruby-yadis/metadata.xml
index eb1e47f2edfb..daac6fdb7252 100644
--- a/dev-ruby/ruby-yadis/metadata.xml
+++ b/dev-ruby/ruby-yadis/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby-yadis/ruby-yadis-0.3.4-r2.ebuild b/dev-ruby/ruby-yadis/ruby-yadis-0.3.4-r2.ebuild
deleted file mode 100644
index 5ab6bf3f1541..000000000000
--- a/dev-ruby/ruby-yadis/ruby-yadis-0.3.4-r2.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="README"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A ruby library for performing Yadis service discovery"
-HOMEPAGE="http://yadis.rubyforge.org/"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
-IUSE="test"
-
-each_ruby_prepare() {
- # Remove live tests that require content that is no longer available.
- rm test/test_discovery.rb || die
- sed -i -e '/test_discovery/d' test/runtests.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -I../lib:lib:test -Ctest runtests.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r examples
-}
diff --git a/dev-ruby/ruby-yadis/ruby-yadis-0.3.4-r3.ebuild b/dev-ruby/ruby-yadis/ruby-yadis-0.3.4-r3.ebuild
new file mode 100644
index 000000000000..d1427b629b38
--- /dev/null
+++ b/dev-ruby/ruby-yadis/ruby-yadis-0.3.4-r3.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="README"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A ruby library for performing Yadis service discovery"
+HOMEPAGE="https://rubygems.org/gems/ruby-yadis"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="test"
+
+each_ruby_prepare() {
+ # Remove live tests that require content that is no longer available.
+ rm test/test_discovery.rb || die
+ sed -i -e '/test_discovery/d' test/runtests.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -I../lib:lib:test -Ctest runtests.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r examples
+}
diff --git a/dev-ruby/ruby2_keywords/Manifest b/dev-ruby/ruby2_keywords/Manifest
new file mode 100644
index 000000000000..1f13a2e9d486
--- /dev/null
+++ b/dev-ruby/ruby2_keywords/Manifest
@@ -0,0 +1 @@
+DIST ruby2_keywords-0.0.5.gem 10752 BLAKE2B 430ddd02ed59c73c8dfff7762a2f4bbee2b4514d7c8c38a9bf34928a254799cc9e7401672d92b926e4284b005ed6ce59eb2f4503cabe76c5200626b89055bfa1 SHA512 f6b9078b111e68c0017e0025ecdccb976c7a32f35c1a8adf9fd879db0c91f89eb9bd799f9527a846e28056f2a5fbf0f3610cda9538570288c493613c35c83a6f
diff --git a/dev-ruby/ruby2_keywords/metadata.xml b/dev-ruby/ruby2_keywords/metadata.xml
new file mode 100644
index 000000000000..0fcf0f1d9f19
--- /dev/null
+++ b/dev-ruby/ruby2_keywords/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/ruby2_keywords</remote-id>
+ <remote-id type="rubygems">ruby2_keywords</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/ruby2_keywords/ruby2_keywords-0.0.5-r1.ebuild b/dev-ruby/ruby2_keywords/ruby2_keywords-0.0.5-r1.ebuild
new file mode 100644
index 000000000000..68e53e285053
--- /dev/null
+++ b/dev-ruby/ruby2_keywords/ruby2_keywords-0.0.5-r1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Shim library for Module#ruby2_keywords"
+HOMEPAGE="https://github.com/ruby/ruby2_keywords"
+
+LICENSE="|| ( BSD-2 Ruby-BSD )"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
diff --git a/dev-ruby/ruby2ruby/Manifest b/dev-ruby/ruby2ruby/Manifest
index 4401b5a0318b..269c5b406a8b 100644
--- a/dev-ruby/ruby2ruby/Manifest
+++ b/dev-ruby/ruby2ruby/Manifest
@@ -1,2 +1,2 @@
-DIST ruby2ruby-2.4.2.gem 26624 BLAKE2B c7ad5c63829bf03cc166d42f2ae67b47790b4652b1973367881a4c242866acffabf6783cc3296ca7ea91ff3e9967f703852be6c4bcb53dfaaff0f822b50747db SHA512 ae8a34a77d48a97d29bd0ea9e2653e6189666564e971b985e7a459a562f8f03fdff4ec8775a2184cef578249aebbc8a050b57613b63d3c09b7a84aec5f727a7c
-DIST ruby2ruby-2.4.3.gem 26624 BLAKE2B fa8252e3e89fdef2c512e3f61dcea7e02ad000d0d65b14b5dcc2ee26d7ee6cc6243536bf3f745c44465c15cc557d1e5c2c9252421d3375da5142a2fe4b4ce1b1 SHA512 9858c2b8ceefe3604cbfedeb0c7c60ada2328d1bb7c5dbeb888936a3025af13718f33f498bb52ee5e659b021907a6e8c44117c6f3a4d4bbbb2dfaa8ddd15601f
+DIST ruby2ruby-2.4.4.gem 26624 BLAKE2B d330cd65513218a96c9e35fe2b69d859fa103ad6dd1b8e8a671bddb9732f99cd65540b404632e671ababbe5842ed2be34a29c2b1fb3bc4c43935f5a7a0735d9e SHA512 51728d702d2142e9a7599fe53c2b58906cd386be429fe97590f850df8cf461c046c67a99fc7b7e277551013b78e35d21609c8125fb568ef90270d146a685c04d
+DIST ruby2ruby-2.5.0.gem 29184 BLAKE2B f1c8a8e904bf93a07e4b57c82bddd9b2f80b286b91ca5973375700f8a853f3a08731d5a067a25eac16cd2983f7bbceec7a3996bbf8d4fd8527322b439291f575 SHA512 4b968400a40ae6eed7528c848d8d78dd4e1f1efa63481423eb82309d1dc884416a7aac301f84c945f744e898200bb83cd1be39e10c4ceec530fc751f8bf2e4ba
diff --git a/dev-ruby/ruby2ruby/metadata.xml b/dev-ruby/ruby2ruby/metadata.xml
index 5aac82d48c1a..cba7b100aaa8 100644
--- a/dev-ruby/ruby2ruby/metadata.xml
+++ b/dev-ruby/ruby2ruby/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby2ruby/ruby2ruby-2.4.2.ebuild b/dev-ruby/ruby2ruby/ruby2ruby-2.4.2.ebuild
deleted file mode 100644
index 1e01880cc9f5..000000000000
--- a/dev-ruby/ruby2ruby/ruby2ruby-2.4.2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Generates readable ruby from ParseTree"
-HOMEPAGE="https://github.com/seattlerb/ruby2ruby"
-
-LICENSE="GPL-2"
-SLOT="2"
-KEYWORDS="alpha amd64 arm hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-ruby_add_rdepend "
- >=dev-ruby/sexp_processor-4.6.0:4
- >=dev-ruby/ruby_parser-3.1:3
- !<dev-ruby/ruby2ruby-1.3.1-r1"
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.3:5 >=dev-ruby/sexp_processor-4.10.0:4 )"
-
-all_ruby_prepare() {
- sed -i -e '/plugin :isolate/ s:^:#:' Rakefile || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/ruby2ruby/ruby2ruby-2.4.3.ebuild b/dev-ruby/ruby2ruby/ruby2ruby-2.4.3.ebuild
deleted file mode 100644
index c909c1fb777d..000000000000
--- a/dev-ruby/ruby2ruby/ruby2ruby-2.4.3.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Generates readable ruby from ParseTree"
-HOMEPAGE="https://github.com/seattlerb/ruby2ruby"
-
-LICENSE="GPL-2"
-SLOT="2"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-ruby_add_rdepend "
- >=dev-ruby/sexp_processor-4.6.0:4
- >=dev-ruby/ruby_parser-3.1:3
- !<dev-ruby/ruby2ruby-1.3.1-r1"
-ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.3:5 >=dev-ruby/sexp_processor-4.10.0:4 )"
-
-all_ruby_prepare() {
- sed -i -e '/plugin :isolate/ s:^:#:' Rakefile || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/ruby2ruby/ruby2ruby-2.4.4.ebuild b/dev-ruby/ruby2ruby/ruby2ruby-2.4.4.ebuild
new file mode 100644
index 000000000000..62dc87da176b
--- /dev/null
+++ b/dev-ruby/ruby2ruby/ruby2ruby-2.4.4.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Generates readable ruby from ParseTree"
+HOMEPAGE="https://github.com/seattlerb/ruby2ruby"
+
+LICENSE="GPL-2"
+SLOT="2"
+KEYWORDS="~alpha amd64 arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/sexp_processor-4.6.0:4
+ >=dev-ruby/ruby_parser-3.1:3
+"
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.3:5 >=dev-ruby/sexp_processor-4.10.0:4 )"
+
+all_ruby_prepare() {
+ sed -i -e '/plugin :isolate/ s:^:#:' Rakefile || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/ruby2ruby/ruby2ruby-2.5.0.ebuild b/dev-ruby/ruby2ruby/ruby2ruby-2.5.0.ebuild
new file mode 100644
index 000000000000..1fce1cd7cccc
--- /dev/null
+++ b/dev-ruby/ruby2ruby/ruby2ruby-2.5.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Generates readable ruby from ParseTree"
+HOMEPAGE="https://github.com/seattlerb/ruby2ruby"
+
+LICENSE="GPL-2"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/sexp_processor-4.6.0:4
+ >=dev-ruby/ruby_parser-3.1:3
+"
+ruby_add_bdepend "test? ( >=dev-ruby/minitest-5.3:5 >=dev-ruby/sexp_processor-4.10.0:4 )"
+
+all_ruby_prepare() {
+ sed -i -e '/plugin :isolate/ s:^:#:' Rakefile || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/ruby_dep/Manifest b/dev-ruby/ruby_dep/Manifest
deleted file mode 100644
index e2119c693ad0..000000000000
--- a/dev-ruby/ruby_dep/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ruby_dep-1.5.0.gem 11776 BLAKE2B 0883eb6908c4e0aeec3bb88eaa2a3fd526ce6f16f4b9feb3b817ea32f40f86967c3e9f60791f8bd83e52b108bf748784c98d07d5d121ccf884ed19f76fa8266f SHA512 f12b589262d84525b301370845840221f0d204b0cfee66fbbbee62eb61e817c46590e87f70318f8d14d000da20280182448d129b685468701ff7ffa8e6965377
diff --git a/dev-ruby/ruby_dep/metadata.xml b/dev-ruby/ruby_dep/metadata.xml
deleted file mode 100644
index 47591135ab24..000000000000
--- a/dev-ruby/ruby_dep/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">e2/ruby_dep</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby_dep/ruby_dep-1.5.0.ebuild b/dev-ruby/ruby_dep/ruby_dep-1.5.0.ebuild
deleted file mode 100644
index d9ac4f179a2a..000000000000
--- a/dev-ruby/ruby_dep/ruby_dep-1.5.0.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Creates a version constraint of supported Rubies,suitable for a gemspec file"
-HOMEPAGE="https://github.com/e2/ruby_dep"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
diff --git a/dev-ruby/ruby_engine/Manifest b/dev-ruby/ruby_engine/Manifest
new file mode 100644
index 000000000000..4538dfe6e07b
--- /dev/null
+++ b/dev-ruby/ruby_engine/Manifest
@@ -0,0 +1,2 @@
+DIST ruby_engine-2.0.0.gem 21504 BLAKE2B b931969150735aa30fe910ad5e9861853180cb4247a803149e91b302fef0e7b48ccddf7316d855cbb23e8cc0d1e1b6cdb598b9bf6ed3e973090221b096184f28 SHA512 de1363617c57caa813f1526b71c9119f5f29e49b86e11476299e56234c585d9cbb594a7c5383fed988abfc1b5ec13d2005a96d96f6671bfdf316fa6836fba9de
+DIST ruby_engine-2.0.1.gem 7680 BLAKE2B d26a396d10fa92de884cb85489daa3ff6e65ff923cc48b96bb1b6a5b5def9e49629aea7abf0ec2ca1a9290ce0a0cbb81f954b1e3e2a4263173caab503e7a82e3 SHA512 30413fe71e58824d63649f91b7bc38a0395f254e35d36e19df2ff26c351e00f22e932ffba456884b5274af667e59581d9fdfbb7098ad22a0c101a410a40c479b
diff --git a/dev-ruby/ruby_engine/metadata.xml b/dev-ruby/ruby_engine/metadata.xml
new file mode 100644
index 000000000000..9f2b7707c89e
--- /dev/null
+++ b/dev-ruby/ruby_engine/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">janlelis/ruby_engine</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/ruby_engine/ruby_engine-2.0.0.ebuild b/dev-ruby/ruby_engine/ruby_engine-2.0.0.ebuild
new file mode 100644
index 000000000000..a6dc855182a8
--- /dev/null
+++ b/dev-ruby/ruby_engine/ruby_engine-2.0.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.rdoc"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A RubyEngine class that simplifies checking for your Ruby implementation"
+HOMEPAGE="https://github.com/janlelis/ruby_version"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
diff --git a/dev-ruby/ruby_engine/ruby_engine-2.0.1.ebuild b/dev-ruby/ruby_engine/ruby_engine-2.0.1.ebuild
new file mode 100644
index 000000000000..38ba499f7db2
--- /dev/null
+++ b/dev-ruby/ruby_engine/ruby_engine-2.0.1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A RubyEngine class that simplifies checking for your Ruby implementation"
+HOMEPAGE="https://github.com/janlelis/ruby_version"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
diff --git a/dev-ruby/ruby_gntp/Manifest b/dev-ruby/ruby_gntp/Manifest
deleted file mode 100644
index 98da1781076d..000000000000
--- a/dev-ruby/ruby_gntp/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ruby_gntp-0.3.4.gem 10240 BLAKE2B dff0f192ee0308793171f0233379b41e8ff8cf8e3af3497c5f04f323dc5f75d4f310f2fc21538beda271f4d3bedc8fcad200afe7b4d24ec864e023346c5899c6 SHA512 876b728430183b273bf97a7e7b662c0614bcc21a3d1a7c4c07b2af9b1643c9a9bc96e92843e6118903d75d99b21c2faff0f27c22fbc8822db14560937e6a5dd8
diff --git a/dev-ruby/ruby_gntp/metadata.xml b/dev-ruby/ruby_gntp/metadata.xml
deleted file mode 100644
index f142ffd9b203..000000000000
--- a/dev-ruby/ruby_gntp/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">snaka/ruby_gntp</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ruby_gntp/ruby_gntp-0.3.4.ebuild b/dev-ruby/ruby_gntp/ruby_gntp-0.3.4.ebuild
deleted file mode 100644
index c1c71d8ff585..000000000000
--- a/dev-ruby/ruby_gntp/ruby_gntp-0.3.4.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README ChangeLog"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby library for GNTP(Growl Notification Transport Protocol)"
-HOMEPAGE="https://github.com/snaka/ruby_gntp"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/rr )"
-
-all_ruby_prepare() {
- mv test spec || die
- sed -i -e "s/Spec::Runner/RSpec/" \
- -e "s#\.\./lib/##"\
- spec/ruby_gntp_spec.rb || die
-
-}
diff --git a/dev-ruby/ruby_parser/Manifest b/dev-ruby/ruby_parser/Manifest
index 618d8d5e3234..c5eef809819d 100644
--- a/dev-ruby/ruby_parser/Manifest
+++ b/dev-ruby/ruby_parser/Manifest
@@ -1 +1,5 @@
-DIST ruby_parser-3.13.1.gem 445952 BLAKE2B 7df7bbfe3f7f700747d32bd5c66d94fdd7c57974e622969958dda39f4dc8656a4211378ba51c4b8e8eefafebf82e550ab73a775530eab06ff6419a3dee7f8f7b SHA512 90c8b68245168c7df4ec8d0e6c62d9723d759945823768645614fe085f375c6811a15c35334c485cb59f32f6adb1aa0a06e7df043b09a48ef4e6102d93562b1b
+DIST ruby_parser-3.19.2.gem 778240 BLAKE2B b9a136f8aa93fe915eedc5ca16a54a8c21446a48db89e86f7936dbbd4ee913f7bc61fcbaf136cd1965bbbd6601634a6832a09f0226647cf2ea802689251946c6 SHA512 c71e7e76e37ebe6e9489e9f0bb963b7b34adc8f4afa73ea4ad90356579725bd1a234f6e015a9c19b2c294c1ffe0d6b093be838ec0059a61fb5866cfe9e04f18b
+DIST ruby_parser-3.20.0.gem 852992 BLAKE2B fd261c46e1fd0dbdbe13f02aa0c063334294a82a22af1491d760af2f1922a0c71355d2c002dcaa1fcf7c24fc9a157a4a640969ed946750ba90dfb87dcf8e785a SHA512 4cbd35703c35a799d8e06b78708adff378ff82d53f658908fb6cccfddbd6c200892bb2a3b4923fc17d2c4f7f611af12e3c942495a511d5470a05abb61ee1fba7
+DIST ruby_parser-3.20.1.gem 856576 BLAKE2B 8944c8c1403bb23aeb77ea19fe5ff7596879c94350609fcffc839c15b9009efe7c172369363aa99edd561cfdf4fcf081e665dea494cf87d88b105c797cea25a4 SHA512 50e77dcf4893e0b56399e10804e7c6652f57b812444edcd247d3c70f89cf4e5308a90103dd63e032588557472513bc2e6ac49988fddeea81f9f7262e14653abd
+DIST ruby_parser-3.20.3.gem 854528 BLAKE2B 0451390ffd1b5c9e9d8abb557f0e87a7f15024ee2f187a2a03802e0406242489b952c97250982610a52f94453078ce15b3e6cb9f47adb16624b10c0e94d0f62b SHA512 1d7b0956fdd6dc01ca280d7c3ac2875b4b24074b017e1952aa660896b0c7838b967c872bb9d425a4505a0ae6b17a4642f265f082c7e3bf8e5dc00fb6dd221ce4
+DIST ruby_parser-3.21.0.gem 765952 BLAKE2B 7a616e7b5af08a12d40ec6c8761dc0a6edbdbda60cd024bbae6710303cd569ff59b4b0c1168c555a08aa8f374350e7cec6a524f884ec715fc4b31f2c1139cec2 SHA512 2d911adf41651ab942ea6acfffb4a97b036aea41f209476182361622bc93771d0fb8dff4b8d10d89ed0041dc9590783be0264282985ebcfc03bd610bbd46b69b
diff --git a/dev-ruby/ruby_parser/metadata.xml b/dev-ruby/ruby_parser/metadata.xml
index a71795a9a23e..b40c337fc28b 100644
--- a/dev-ruby/ruby_parser/metadata.xml
+++ b/dev-ruby/ruby_parser/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ruby_parser/ruby_parser-3.13.1.ebuild b/dev-ruby/ruby_parser/ruby_parser-3.13.1.ebuild
deleted file mode 100644
index f43c6d39391a..000000000000
--- a/dev-ruby/ruby_parser/ruby_parser-3.13.1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A ruby parser written in pure ruby"
-HOMEPAGE="https://github.com/seattlerb/ruby_parser"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="alpha amd64 arm hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/sexp_processor-4.9.0:4
- !<dev-ruby/ruby_parser-2.3.1-r1"
-
-ruby_add_bdepend "test? ( dev-ruby/racc >=dev-ruby/minitest-4.3 >=dev-ruby/sexp_processor-4.12.0:4 )"
-
-DEPEND+=" test? ( dev-util/unifdef )"
-
-all_ruby_prepare() {
- # Remove reference to perforce method that is not in a released
- # version of hoe-seattlerb.
- #sed -i -e '/perforce/d' Rakefile || die
- sed -i -e '/license/d' Rakefile || die
- sed -i -e '/Hoe.plugin :isolate/ s:^:#:' Rakefile || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/ruby_parser/ruby_parser-3.19.2.ebuild b/dev-ruby/ruby_parser/ruby_parser-3.19.2.ebuild
new file mode 100644
index 000000000000..f9338c82f320
--- /dev/null
+++ b/dev-ruby/ruby_parser/ruby_parser-3.19.2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A ruby parser written in pure ruby"
+HOMEPAGE="https://github.com/seattlerb/ruby_parser"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha amd64 arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/sexp_processor-4.16.0:4"
+
+ruby_add_bdepend "test? ( dev-ruby/racc >=dev-ruby/minitest-4.3 >=dev-ruby/sexp_processor-4.16.1:4 )"
+
+DEPEND+=" test? ( dev-util/unifdef )"
+
+all_ruby_prepare() {
+ # Remove reference to perforce method that is not in a released
+ # version of hoe-seattlerb.
+ #sed -i -e '/perforce/d' Rakefile || die
+ sed -i -e '/license/d' Rakefile || die
+ sed -i -e '/Hoe.plugin :isolate/ s:^:#:' Rakefile || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/ruby_parser/ruby_parser-3.20.0.ebuild b/dev-ruby/ruby_parser/ruby_parser-3.20.0.ebuild
new file mode 100644
index 000000000000..ca27abe02501
--- /dev/null
+++ b/dev-ruby/ruby_parser/ruby_parser-3.20.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A ruby parser written in pure ruby"
+HOMEPAGE="https://github.com/seattlerb/ruby_parser"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha amd64 arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/sexp_processor-4.16.0:4"
+
+ruby_add_bdepend "test? ( dev-ruby/racc >=dev-ruby/minitest-4.3 >=dev-ruby/sexp_processor-4.17.0:4 )"
+
+DEPEND+=" test? ( dev-util/unifdef )"
+
+all_ruby_prepare() {
+ # Remove reference to perforce method that is not in a released
+ # version of hoe-seattlerb.
+ #sed -i -e '/perforce/d' Rakefile || die
+ sed -i -e '/license/d' Rakefile || die
+ sed -i -e '/Hoe.plugin :isolate/ s:^:#:' Rakefile || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/ruby_parser/ruby_parser-3.20.1.ebuild b/dev-ruby/ruby_parser/ruby_parser-3.20.1.ebuild
new file mode 100644
index 000000000000..489adba616d9
--- /dev/null
+++ b/dev-ruby/ruby_parser/ruby_parser-3.20.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A ruby parser written in pure ruby"
+HOMEPAGE="https://github.com/seattlerb/ruby_parser"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/sexp_processor-4.16.0:4"
+
+ruby_add_bdepend "test? ( dev-ruby/racc >=dev-ruby/minitest-4.3 >=dev-ruby/sexp_processor-4.17.0:4 )"
+
+DEPEND+=" test? ( dev-util/unifdef )"
+
+all_ruby_prepare() {
+ # Remove reference to perforce method that is not in a released
+ # version of hoe-seattlerb.
+ #sed -i -e '/perforce/d' Rakefile || die
+ sed -i -e '/license/d' Rakefile || die
+ sed -i -e '/Hoe.plugin :isolate/ s:^:#:' Rakefile || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/ruby_parser/ruby_parser-3.20.3.ebuild b/dev-ruby/ruby_parser/ruby_parser-3.20.3.ebuild
new file mode 100644
index 000000000000..019696ac2ac2
--- /dev/null
+++ b/dev-ruby/ruby_parser/ruby_parser-3.20.3.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A ruby parser written in pure ruby"
+HOMEPAGE="https://github.com/seattlerb/ruby_parser"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha amd64 arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/sexp_processor-4.16.0:4"
+
+ruby_add_bdepend "test? ( dev-ruby/racc >=dev-ruby/minitest-4.3 >=dev-ruby/sexp_processor-4.17.0:4 )"
+
+DEPEND+=" test? ( dev-util/unifdef )"
+
+all_ruby_prepare() {
+ # Remove reference to perforce method that is not in a released
+ # version of hoe-seattlerb.
+ #sed -i -e '/perforce/d' Rakefile || die
+ sed -i -e '/license/d' Rakefile || die
+ sed -i -e '/Hoe.plugin :isolate/ s:^:#:' Rakefile || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/ruby_parser/ruby_parser-3.21.0.ebuild b/dev-ruby/ruby_parser/ruby_parser-3.21.0.ebuild
new file mode 100644
index 000000000000..d46e4e00c0f0
--- /dev/null
+++ b/dev-ruby/ruby_parser/ruby_parser-3.21.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A ruby parser written in pure ruby"
+HOMEPAGE="https://github.com/seattlerb/ruby_parser"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/sexp_processor-4.16.0:4"
+
+ruby_add_bdepend "test? ( dev-ruby/racc >=dev-ruby/minitest-4.3 >=dev-ruby/sexp_processor-4.17.0:4 )"
+
+DEPEND+=" test? ( dev-util/unifdef )"
+
+all_ruby_prepare() {
+ sed -i -e '/license/d' Rakefile || die
+ sed -i -e '/Hoe.plugin :isolate/ s:^:#:' Rakefile || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/ruby_smb/Manifest b/dev-ruby/ruby_smb/Manifest
index 180e312f1a0e..91a4807b7a0e 100644
--- a/dev-ruby/ruby_smb/Manifest
+++ b/dev-ruby/ruby_smb/Manifest
@@ -1,4 +1 @@
-DIST ruby_smb-1.0.2.gem 150016 BLAKE2B 4d661a12fee0430be8e071069d8457d4a11f197087bd1cf208f206e705285ea236a445a9396d13868335ef67c4ad7972890ffa22fe2efc3c98ef0d3503474033 SHA512 e8c1314d34e282bb117ea5587b18a41c25315c515cc5141d1a4bc98b423c25ac923e5c8836eda039f201204f82587bfc3d2ee89193277231424b99f512b27a59
-DIST ruby_smb-1.0.3.gem 150016 BLAKE2B 0958a17c1140a543d3065c147a534d5426529fbf1477e3ca2624317a4c21907f08e1e0e0690c72415ba6c0577fd611c255637ea8adc48f1d934b2fab253e5130 SHA512 7649d064618ecb28b828c55ab5184dcf13a989dd0ddcf67e431fcc8147308c649b5a8ce7b826451487eb19a9d1daf0bb22d6d9288a0108a9cc771b364a11be13
-DIST ruby_smb-1.0.5.gem 157184 BLAKE2B 6865e908bf57a5785d6b2523a1dc78a0fb5f63f47103fcf757c28b73228848feb7b2f05ad3286df6a52703a956854aa243fdc6d26c2841abb497b6e09449b38c SHA512 af4bd0cd40f8be0f12b204ded7ef9832de31bdadf4d0ff7f05a4addb1300827ced4f0588131c31638797f1f294230e0c61c4829fd1962043af452d55bbe133ee
-DIST ruby_smb-1.1.0.gem 175104 BLAKE2B ffa4a7b3666f736fd721c8d561c28724709c7db6a2a4075e183a0a931e5df0c8047e428a2537a747eda9482d9023c2ed8fd8157d1b40244615b3818dc0c0bc37 SHA512 038ca625b580ac32455d08c675a5d7319e320944fe3aef6ed7272872fdc6affbbf2bda325897369cb23d4d62e24923a74b13fe392017854c6c5b9889c5e003f6
+DIST ruby_smb-3.2.5.tar.gz 371107 BLAKE2B 452e93b2623f5354d257588a5b80803285a5b90c97b7f7318971986a9a0c3c18c80b00a0d1a32fba24447ceda73279656a76bc36ee38ea758a274db7cfe43d2c SHA512 15122587f7aa6ee85bcbd4a328b85e6db250b344754d1f059693d2710a8cce2b5ecdf034bd680bd9f2b0f752cf3378fbef9736b81448ac1436505f8aac98ae14
diff --git a/dev-ruby/ruby_smb/files/ruby_smb-3.2.5-import-pathname-no-simplecov.patch b/dev-ruby/ruby_smb/files/ruby_smb-3.2.5-import-pathname-no-simplecov.patch
new file mode 100644
index 000000000000..074c5a70b343
--- /dev/null
+++ b/dev-ruby/ruby_smb/files/ruby_smb-3.2.5-import-pathname-no-simplecov.patch
@@ -0,0 +1,21 @@
+https://github.com/rapid7/ruby_smb/pull/250
+
+From a786565241b721e971ec60697d91516695cecb0a Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Wed, 22 Mar 2023 07:22:14 +0000
+Subject: [PATCH] virtual_disk: Add 'pathname' require
+
+Needed for join()'s call to Pathname.new(). Only comes up if disabling
+simplecov because of a transitive-require.
+--- a/lib/ruby_smb/server/share/provider/virtual_disk/virtual_pathname.rb
++++ b/lib/ruby_smb/server/share/provider/virtual_disk/virtual_pathname.rb
+@@ -3,6 +3,8 @@ class Server
+ module Share
+ module Provider
+ class VirtualDisk < Disk
++ require 'pathname'
++
+ # This object emulates Ruby's builtin Pathname object but uses a virtual file system instead of the real local
+ # one.
+ class VirtualPathname
+
diff --git a/dev-ruby/ruby_smb/metadata.xml b/dev-ruby/ruby_smb/metadata.xml
index bc86728ae97a..bd776838d83c 100644
--- a/dev-ruby/ruby_smb/metadata.xml
+++ b/dev-ruby/ruby_smb/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
<remote-id type="github">rapid7/ruby_smb</remote-id>
diff --git a/dev-ruby/ruby_smb/ruby_smb-1.0.2.ebuild b/dev-ruby/ruby_smb/ruby_smb-1.0.2.ebuild
deleted file mode 100644
index bb1733e03cf3..000000000000
--- a/dev-ruby/ruby_smb/ruby_smb-1.0.2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="pure Ruby implementation of the SMB Protocol Family"
-HOMEPAGE="https://github.com/rapid7/ruby_smb"
-
-LICENSE="BSD"
-SLOT="1"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/bindata:*
- dev-ruby/rubyntlm
- dev-ruby/windows_error"
-
-all_ruby_prepare() {
- sed -i -e '/simple[Cc]ov/d' -e '/coveralls/d' spec/spec_helper.rb
- sed -i -e '/[Ss]imple[Cc]ov/,/end/d' \
- -e '/[Cc]overalls/,/end/d' spec/spec_helper.rb
- sed -i '/TRAVIS/d' spec/spec_helper.rb
- sed -i -e '1irequire "rubyntlm"; require "time"' spec/spec_helper.rb
-}
diff --git a/dev-ruby/ruby_smb/ruby_smb-1.0.3.ebuild b/dev-ruby/ruby_smb/ruby_smb-1.0.3.ebuild
deleted file mode 100644
index bb1733e03cf3..000000000000
--- a/dev-ruby/ruby_smb/ruby_smb-1.0.3.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="pure Ruby implementation of the SMB Protocol Family"
-HOMEPAGE="https://github.com/rapid7/ruby_smb"
-
-LICENSE="BSD"
-SLOT="1"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/bindata:*
- dev-ruby/rubyntlm
- dev-ruby/windows_error"
-
-all_ruby_prepare() {
- sed -i -e '/simple[Cc]ov/d' -e '/coveralls/d' spec/spec_helper.rb
- sed -i -e '/[Ss]imple[Cc]ov/,/end/d' \
- -e '/[Cc]overalls/,/end/d' spec/spec_helper.rb
- sed -i '/TRAVIS/d' spec/spec_helper.rb
- sed -i -e '1irequire "rubyntlm"; require "time"' spec/spec_helper.rb
-}
diff --git a/dev-ruby/ruby_smb/ruby_smb-1.0.5.ebuild b/dev-ruby/ruby_smb/ruby_smb-1.0.5.ebuild
deleted file mode 100644
index e1f254fa5b94..000000000000
--- a/dev-ruby/ruby_smb/ruby_smb-1.0.5.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="pure Ruby implementation of the SMB Protocol Family"
-HOMEPAGE="https://github.com/rapid7/ruby_smb"
-
-LICENSE="BSD"
-SLOT="1"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/bindata:*
- dev-ruby/rubyntlm
- dev-ruby/windows_error"
-
-all_ruby_prepare() {
- sed -i -e '/simple[Cc]ov/d' -e '/coveralls/d' spec/spec_helper.rb
- sed -i -e '/[Ss]imple[Cc]ov/,/end/d' \
- -e '/[Cc]overalls/,/end/d' spec/spec_helper.rb
- sed -i '/TRAVIS/d' spec/spec_helper.rb
- sed -i -e '1irequire "rubyntlm"; require "time"' spec/spec_helper.rb
-}
diff --git a/dev-ruby/ruby_smb/ruby_smb-1.1.0.ebuild b/dev-ruby/ruby_smb/ruby_smb-1.1.0.ebuild
deleted file mode 100644
index caa2f415553c..000000000000
--- a/dev-ruby/ruby_smb/ruby_smb-1.1.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="pure Ruby implementation of the SMB Protocol Family"
-HOMEPAGE="https://github.com/rapid7/ruby_smb"
-
-LICENSE="BSD"
-SLOT="1"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/bindata:*
- dev-ruby/rubyntlm
- dev-ruby/windows_error"
-
-all_ruby_prepare() {
- sed -i -e '/simple[Cc]ov/d' -e '/coveralls/d' spec/spec_helper.rb
- sed -i -e '/[Ss]imple[Cc]ov/,/end/d' \
- -e '/[Cc]overalls/,/end/d' spec/spec_helper.rb
- sed -i '/TRAVIS/d' spec/spec_helper.rb
- sed -i -e '1irequire "rubyntlm"; require "time"' spec/spec_helper.rb
-}
diff --git a/dev-ruby/ruby_smb/ruby_smb-3.2.5.ebuild b/dev-ruby/ruby_smb/ruby_smb-3.2.5.ebuild
new file mode 100644
index 000000000000..74f82135e43e
--- /dev/null
+++ b/dev-ruby/ruby_smb/ruby_smb-3.2.5.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_TASK_TEST="spec"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+inherit ruby-fakegem
+
+DESCRIPTION="Pure Ruby implementation of the SMB Protocol Family"
+HOMEPAGE="https://github.com/rapid7/ruby_smb"
+SRC_URI="https://github.com/rapid7/ruby_smb/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="1"
+KEYWORDS="~amd64 ~arm ~x86"
+
+ruby_add_rdepend "
+ dev-ruby/bindata:*
+ dev-ruby/rubyntlm
+ dev-ruby/windows_error
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.2.5-import-pathname-no-simplecov.patch
+)
+
+all_ruby_prepare() {
+ sed -i \
+ -e '/simplecov/Id' \
+ -e '/coveralls/d' \
+ -e '/TRAVIS/d' \
+ -e '1irequire "rubyntlm"; require "time"' \
+ spec/spec_helper.rb || die
+
+ sed -i \
+ -e '/fivemat/d' \
+ ${PN}.gemspec || die
+
+ sed -i \
+ -e '/pry-byebug/d' \
+ -e '/pry-rescue/d' \
+ -e '/coveralls/d' \
+ Gemfile || die
+}
diff --git a/dev-ruby/ruby_version/Manifest b/dev-ruby/ruby_version/Manifest
new file mode 100644
index 000000000000..a0845d21a8d9
--- /dev/null
+++ b/dev-ruby/ruby_version/Manifest
@@ -0,0 +1 @@
+DIST ruby_version-1.0.3.gem 8192 BLAKE2B 6585ae4ef9c3c7a968c35ce503696fcf64b10212147cf02171e6ed9be6059d9ba9d355bd4f5e848b16f78995c61d30bcd0ee6b37708854ce446bcb945c20acfc SHA512 8e03113f06a2d52f0e8ae89c4936bdb9b4d244be17303d178f2c7bcb129b655e7a7841e967322beaec0e16d46d05233542cc007d81a9b2d6e75e60e34dba612d
diff --git a/dev-ruby/ruby_version/metadata.xml b/dev-ruby/ruby_version/metadata.xml
new file mode 100644
index 000000000000..b3209d9c58f8
--- /dev/null
+++ b/dev-ruby/ruby_version/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">janlelis/ruby_version</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/ruby_version/ruby_version-1.0.3.ebuild b/dev-ruby/ruby_version/ruby_version-1.0.3.ebuild
new file mode 100644
index 000000000000..1e369f7f8840
--- /dev/null
+++ b/dev-ruby/ruby_version/ruby_version-1.0.3.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A class which offers a convenient DSL for checking for the right Ruby version"
+HOMEPAGE="https://github.com/janlelis/ruby_version"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
diff --git a/dev-ruby/rubygems/Manifest b/dev-ruby/rubygems/Manifest
index b1f5e1ad4bed..b5d4a0edca71 100644
--- a/dev-ruby/rubygems/Manifest
+++ b/dev-ruby/rubygems/Manifest
@@ -1,5 +1,8 @@
-DIST rubygems-2.7.10.tgz 863618 BLAKE2B 26a453d2808cbf03caa6f2ef4a829418de58f4ed0c7584935a0ad5fc722d7fbdf9f442261f96fdca4b6975b62608965d2f0053d3046da59771be373bed21154a SHA512 48a18c0f202f463c38cf5dafecfbc7cc39245e63c7a059ef2cefadda478483794a929ea6b7e0ef062dd4423230746f1f09d7bec06a97fe3ceccc3325397a3e71
-DIST rubygems-2.7.9.tgz 862854 BLAKE2B 7bccb1fe1ce11b33501f881d01b8b0159e6b3c0a434fa100b98490cd1813b5309610e8ef5d1a2c5ab23c22bf0cd55ace7b055ee57f9057398662276128b3e949 SHA512 5f699f47bc24d8ffd4f8f44a509a9df71fcd945ca2574dc9d5050bfe06a44830a368f45d204112d7a4f1877e1600a6fe4d1b6b68f9a55288664667b4220a7d72
-DIST rubygems-3.0.3.tgz 904175 BLAKE2B d99de4bdd51779ab214bc4a81f55483341a2c193d4304b8eeb6105cb95877e0a33fe03d93c47433ad3c6bdc8d3e453e33ffb799fd36164feac31616f95eeced4 SHA512 1dd585243341901c7b4cc60a4902000c10ce57fe2cc9c28e27e274a2e6029f936cde1c99d7097c93c2c5b2c8bcee5d692c8fe5cc00c996a040e4954b674e330e
-DIST rubygems-3.0.4.tgz 883664 BLAKE2B d5ec493657c055561aa9c0c09719529857706db197bf266ef4c51e48e6f97c08d85a8923b0c6fd72b3fd6ecb584533ff8ca56515c555e9c5b786b0d99ad2a16e SHA512 887c64226ec0b32d33f2ea331936683406d54dc74d19e658a23521e25ab50aa23534fe9eecaf696154247ad1df1d24c233d8900b9aabc79096eebd6afef3f775
-DIST rubygems-3.0.6.tgz 887156 BLAKE2B 685cfb108cc684ecbbcee6fe341baa429ac28f331b3db444c5ed3557bc169147dddc8d226780a85842bf1de2e24f6a60b0464820afa2a6838221c22543a36daa SHA512 1ef1822a2b19790a36a6d242b7d4584222617baa27787ec58961a9cfeb2733f19f9085490ffc72ee375d3153c7114e050c42e68fc8039e727fe5961b09365ee5
+DIST rubygems-3.3.26.tar.gz 12995476 BLAKE2B c06400d263f64ee988781b49628eebde2b78b5c3cdf3796fe5e1ce5891cb0b41b5e50313293afc72c9b278ab00415b91a862f4245107c63e8eedb9904a5d33e2 SHA512 5aad9f6f0f7187d7d3f2a77ceb50b4b293290dc2e83fb55654c8fdf8e222568d40ef0c64d603ae2ff0db39e7a39ee89ec3c48bb102d434637145863881851086
+DIST rubygems-3.4.1.tar.gz 12999634 BLAKE2B 019364e3abd3b12f2a37b08a8d32546cd002c47653a4cdd4e06d8605010dcfcbf3f82f2d375c6bd51a8f1b462b624cefb85932c075b965d5038c26d6079de261 SHA512 2183f7d6ab914c47c02b53cafa6f39845986e4b38713d320402b98f0f0926dbbd957ef11c00b4fbe8f6c9985a1a5d9f551b2df9d47f00c389026e373dbd6f6ed
+DIST rubygems-3.4.15.tar.gz 15033712 BLAKE2B 01fa4160549d49dbb0fd9e8c2c3c570e837cdb0d074a0ba484bb37ae8b7a19f853387dacb980615f63e4be9ab080e3b8fb9b429da97b6ffe98ea33178efdf2e6 SHA512 37aec02ac91427d3b44b3914308a4262d2c9b2c603b6fdd986ce0858175642290b2588a85540f555d0b5f5342960469337609546c2329d312280bb0accd6c932
+DIST rubygems-3.4.19.tar.gz 15037850 BLAKE2B adf618f326fa83a8eb7febb9872a71f2bf78048dfa7c4db07343c9813ba5d858c86bcd6e54df1a559e60e458ba8d73d2a7ac82ee5e0cbde6e9d8b45c12793d4c SHA512 8d0bc225ef01d3cc5e3ad12a1bf0bbb3923349bb9b79b76a9ac58bb8dcf79666a478a871d19919adc15f1aa2599efde5d3938c61801579277117b569e7007656
+DIST rubygems-3.4.22.tar.gz 15054005 BLAKE2B 856b60bf3a2f477b6e0aeaa4522f17934a6bf8c434f0d3a69afb823801975a74294f27e0906fc940c456414fd5bf94f71809e09676b839b0123a6f40dc3cefb4 SHA512 c69a03524936eb51e6a919ee0ee614c4e0bedf5a0bbe55314a876b3277116b6e8c92e52072368704415286b673d4c4b995b81665cc73b152a12377faee289916
+DIST rubygems-3.4.3.tar.gz 15002575 BLAKE2B be8dfb7233754e0ef9147eab1c64d363c38de5a6c296087a193b801c9fa1a12d2a21d7b3b01360f53a30caa6815b3bcdf3d14ecd19ac19dfd2e88115526b5a97 SHA512 7f3907b6ab8f001bd856c2b25b71c5ec32b21b2b5fa16ba369e3108c44698712ac3f5ace430554a4b15dc0adef2d87fa41bffa03dcd01f524fe8bbd80de9807b
+DIST rubygems-3.4.6.tar.gz 15011157 BLAKE2B a06178a1d5dbd8231493dce9d075451062edaa6b4affee6892d60c727e30ef4b7ff7933baf4ae49fedaa684f9898325ed1313648dac318bd62e9c733de374926 SHA512 d1c23b534f2254ff4dec564098f7eba83462eb9348da59a84de01fc4053ef3be02b2852af4542447de89a36d835f68634606040672d2a2f987c5670b9f373fe9
+DIST rubygems-3.5.3.tar.gz 13495997 BLAKE2B 1c9e01cc15a7afb0dfeaf61d14cea43fa19844a901cf6337f542b14da608dfa016ba438807276018b372f9c6ce8a44df2ea491f08a1217bd9f3fd04cd1ec57a7 SHA512 50f6ccd9f47c6d56c20c2bc23a35f0ca0edb2d55ae9904749bf03d1181acee499cce668df6a8847a5a59b37de0efb884acf028df6b768cb7cd2f1993ca4f8db2
diff --git a/dev-ruby/rubygems/files/gentoo-defaults-3.rb b/dev-ruby/rubygems/files/gentoo-defaults-3.rb
deleted file mode 100644
index 9d499b73f89d..000000000000
--- a/dev-ruby/rubygems/files/gentoo-defaults-3.rb
+++ /dev/null
@@ -1,63 +0,0 @@
-# frozen_string_literal: true
-
-# Gentoo defaults for rubygems 3.x
-#
-# Gentoo policy is to install all manually installed code into
-# /usr/local and to keep /usr managed by Gentoo. This policy file
-# ensures that all manually installed gems using "gem install" are
-# installed in /usr/local. Gentoo gems are installed in /usr.
-
-# TODO: We used to manipulate the default_dir, but this no longer
-# works since this is now the base for the new "default" gems that
-# ruby 2.6 uses with irb. So default_dir should refer to the system
-# default now. rubygems also provides various hooks so we may be able
-# to use those to install gems in /usr/local by default in a less
-# intrusive way.
-module Gem
-
- class << self
- def portage_gems_dir
- ConfigMap[:sitelibdir].gsub('site_ruby', 'gems')
- end
-
- def local_dir
- portage_gems_dir.gsub('@GENTOO_PORTAGE_EPREFIX@/usr',
- '@GENTOO_PORTAGE_EPREFIX@/usr/local')
- end
-
- def install_dir
- Process.euid.zero? ? local_dir : user_dir
- end
-
- undef :default_path
- def default_path
- path = []
- path << user_dir if user_home && File.exist?(user_home)
- path << default_dir
- path << vendor_dir if vendor_dir && File.directory?(vendor_dir)
- path << local_dir
- path << portage_gems_dir
- end
-
- def system_config_path
- '@GENTOO_PORTAGE_EPREFIX@/etc'
- end
-
- # Set Gentoo defaults for gem commands
- begin
- undef :operating_system_defaults
- rescue NameError
- # Avoid either runtime errors or redefinition warnings since
- # this method is not present in all rubygem versions distributed
- # with dev-lang/ruby.
- end
- def operating_system_defaults
- {
- 'install' => "--install-dir #{install_dir}",
- 'uninstall' => "--install-dir #{install_dir}",
- 'update' => "--install-dir #{install_dir}"
- }
- end
-
- end
-end
diff --git a/dev-ruby/rubygems/files/gentoo-defaults-5.rb b/dev-ruby/rubygems/files/gentoo-defaults-5.rb
new file mode 100644
index 000000000000..817eb1eda4d5
--- /dev/null
+++ b/dev-ruby/rubygems/files/gentoo-defaults-5.rb
@@ -0,0 +1,49 @@
+# frozen_string_literal: true
+
+# Gentoo defaults for rubygems 3.x
+#
+# Gentoo policy is to install all manually installed code into
+# /usr/local and to keep /usr managed by Gentoo. This policy file
+# ensures that all manually installed gems using "gem install" as root
+# are installed in /usr/local. Gentoo gems are installed in /usr.
+module Gem
+ class << self
+ def gentoo_gems_dir
+ RbConfig::CONFIG['sitelibdir'].gsub('site_ruby', 'gems')
+ end
+
+ def gentoo_bindir
+ Process.euid.zero? ? '@GENTOO_PORTAGE_EPREFIX@/usr/local/bin' : File.join(user_home, 'bin')
+ end
+
+ def gentoo_local_dir
+ gentoo_gems_dir.gsub('@GENTOO_PORTAGE_EPREFIX@/usr',
+ '@GENTOO_PORTAGE_EPREFIX@/usr/local')
+ end
+
+ def gentoo_install_dir
+ Process.euid.zero? ? gentoo_local_dir : user_dir
+ end
+
+ undef :default_path
+ def default_path
+ path = []
+ path << user_dir if user_home && File.exist?(user_home)
+ path << default_dir
+ path << vendor_dir if vendor_dir && File.directory?(vendor_dir)
+ path << gentoo_local_dir
+ path << gentoo_gems_dir
+ end
+
+ undef :operating_system_defaults
+ def operating_system_defaults
+ options = "--install-dir #{gentoo_install_dir} --bindir #{gentoo_bindir}"
+
+ {
+ 'install' => options,
+ 'uninstall' => options,
+ 'update' => options
+ }
+ end
+ end
+end
diff --git a/dev-ruby/rubygems/files/gentoo-defaults.rb b/dev-ruby/rubygems/files/gentoo-defaults.rb
deleted file mode 100644
index a645f4868281..000000000000
--- a/dev-ruby/rubygems/files/gentoo-defaults.rb
+++ /dev/null
@@ -1,42 +0,0 @@
-module Gem
-
- class << self
- def portage_gems_dir
- ConfigMap[:sitelibdir].gsub('site_ruby', 'gems')
- end
-
- def local_dir
- portage_gems_dir.gsub('@GENTOO_PORTAGE_EPREFIX@/usr', '@GENTOO_PORTAGE_EPREFIX@/usr/local')
- end
-
- undef :default_dir
- def default_dir
- Process.euid == 0 ? local_dir : user_dir
- end
-
- undef :default_path
- def default_path
- [user_dir, local_dir, portage_gems_dir]
- end
-
- undef :default_bindir
- def default_bindir
- Process.euid == 0 ? "@GENTOO_PORTAGE_EPREFIX@/usr/local/bin" : File.join(user_dir, 'bin')
- end
-
- undef :ruby_engine
- def ruby_engine
- if defined? RUBY_DESCRIPTION and RUBY_DESCRIPTION =~ /Ruby Enterprise Edition/
- "rubyee"
- else
- # Ruby 1.8 and Ruby 1.9.2_rc2 and later install here, and JRuby
- # rewrites that anyway.
- "ruby"
- end
- end
-
- def system_config_path
- "@GENTOO_PORTAGE_EPREFIX@/etc"
- end
- end
-end
diff --git a/dev-ruby/rubygems/metadata.xml b/dev-ruby/rubygems/metadata.xml
index 2a41a1260a3c..77531829e324 100644
--- a/dev-ruby/rubygems/metadata.xml
+++ b/dev-ruby/rubygems/metadata.xml
@@ -1,11 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <use>
- <flag name="server">Install support for the rubygems server</flag>
- </use>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <use>
+ <flag name="server">Install support for the rubygems server</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">rubygems/rubygems</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/rubygems/rubygems-2.7.10.ebuild b/dev-ruby/rubygems/rubygems-2.7.10.ebuild
deleted file mode 100644
index 32b53a378bf0..000000000000
--- a/dev-ruby/rubygems/rubygems-2.7.10.ebuild
+++ /dev/null
@@ -1,118 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25"
-
-inherit ruby-ng prefix
-
-DESCRIPTION="Centralized Ruby extension management system"
-HOMEPAGE="https://rubygems.org/"
-LICENSE="GPL-2 || ( Ruby MIT )"
-
-SRC_URI="https://rubygems.org/rubygems/${P}.tgz"
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE="server test"
-
-PDEPEND="server? ( >=dev-ruby/builder-2.1 )"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/json
- >=dev-ruby/minitest-4:0
- dev-ruby/rdoc
- )"
-
-all_ruby_prepare() {
-
- mkdir -p lib/rubygems/defaults || die
- cp "${FILESDIR}/gentoo-defaults.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
-
- # Skip tests for default gems that all fail
- sed -i -e '/test_default_gems_use_full_paths/,/^ end/ s:^:#:' test/rubygems/test_gem.rb || die
- sed -i -e '/test_execute_ignore_default_gem_verbose/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_cleanup_command.rb || die
- sed -i -e '/test_execute_default_gem/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_contents_command.rb test/rubygems/test_gem_commands_pristine_command.rb || die
- sed -i -e '/test_execute_\(default_details\|show_default_gems\)/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_query_command.rb || die
- sed -i -e '/test_execute_all/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_uninstall_command.rb || die
- sed -i -e '/\(test_default_gem\|test_check_executable_overwrite\|test_require_works_after_cleanup\)/,/^ end/ s:^:#:' \
- test/rubygems/test_{gem_installer,require}.rb || die
- sed -i -e '/test_\(load_default_gem\|default_spec_stub\)/,/^ end/ s:^:#:' test/rubygems/test_gem_specification.rb || die
- sed -i -e '/test_uninstall_default_gem/,/^ end/ s:^:#:' test/rubygems/test_gem_uninstaller.rb || die
- rm -f test/rubygems/test_gem_indexer.rb || die
- sed -i -e '/test_\(require_when_gem_defined\|realworld_default_gem\)/,/^ end/ s:^:#:' test/rubygems/test_require.rb || die
- rm -f test/rubygems/test_gem_commands_setup_command.rb || die
-
- # Avoid tests playing tricks with ruby engine that don't seem to
- # work for us.
- rm test/rubygems/test_gem_request_set_gem_dependency_api.rb || die
-
- # Avoid test requiring network access
- sed -i -e '/test_download_to_cache/askip "requires network access"' test/rubygems/test_gem_remote_fetcher.rb || die
- # Avoid test requiring obsolete TLS versions
- sed -i -e '/test_do_not_allow_invalid_client_cert_auth_connection/askip "requires obsolete TLSv1"' test/rubygems/test_gem_remote_fetcher.rb || die
-
- # Avoid test requiring file system permission changes
- sed -i -e '/test_traverse_parents_does_not_crash_on_permissions_error/,/^ end/ s:^:#:' test/rubygems/test_gem_util.rb || die
-}
-
-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", "~>4.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 || die
-
- newbin bin/gem $(basename ${RUBY} | sed -e 's:ruby:gem:') || die
-}
-
-all_ruby_install() {
- dodoc History.txt README.md
-
- if use server; then
- newinitd "${FILESDIR}/init.d-gem_server2" gem_server || die "newinitd failed"
- newconfd "${FILESDIR}/conf.d-gem_server" gem_server || die "newconfd failed"
- 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(23|24|...)"
- ewarn
-}
diff --git a/dev-ruby/rubygems/rubygems-2.7.9.ebuild b/dev-ruby/rubygems/rubygems-2.7.9.ebuild
deleted file mode 100644
index 632eb8f13263..000000000000
--- a/dev-ruby/rubygems/rubygems-2.7.9.ebuild
+++ /dev/null
@@ -1,116 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-inherit ruby-ng prefix
-
-DESCRIPTION="Centralized Ruby extension management system"
-HOMEPAGE="https://rubygems.org/"
-LICENSE="GPL-2 || ( Ruby MIT )"
-
-SRC_URI="https://rubygems.org/rubygems/${P}.tgz"
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE="server test"
-
-PDEPEND="server? ( >=dev-ruby/builder-2.1 )"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/json
- >=dev-ruby/minitest-4:0
- dev-ruby/rdoc
- )"
-
-all_ruby_prepare() {
-
- mkdir -p lib/rubygems/defaults || die
- cp "${FILESDIR}/gentoo-defaults.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
-
- # Skip tests for default gems that all fail
- sed -i -e '/test_default_gems_use_full_paths/,/^ end/ s:^:#:' test/rubygems/test_gem.rb || die
- sed -i -e '/test_execute_ignore_default_gem_verbose/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_cleanup_command.rb || die
- sed -i -e '/test_execute_default_gem/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_contents_command.rb test/rubygems/test_gem_commands_pristine_command.rb || die
- sed -i -e '/test_execute_\(default_details\|show_default_gems\)/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_query_command.rb || die
- sed -i -e '/test_execute_all/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_uninstall_command.rb || die
- sed -i -e '/\(test_default_gem\|test_check_executable_overwrite\|test_require_works_after_cleanup\)/,/^ end/ s:^:#:' \
- test/rubygems/test_{gem_installer,require}.rb || die
- sed -i -e '/test_\(load_default_gem\|default_spec_stub\)/,/^ end/ s:^:#:' test/rubygems/test_gem_specification.rb || die
- sed -i -e '/test_uninstall_default_gem/,/^ end/ s:^:#:' test/rubygems/test_gem_uninstaller.rb || die
- rm -f test/rubygems/test_gem_indexer.rb || die
- sed -i -e '/test_\(require_when_gem_defined\|realworld_default_gem\)/,/^ end/ s:^:#:' test/rubygems/test_require.rb || die
- rm -f test/rubygems/test_gem_commands_setup_command.rb || die
-
- # Avoid tests playing tricks with ruby engine that don't seem to
- # work for us.
- rm test/rubygems/test_gem_request_set_gem_dependency_api.rb || die
-
- # Avoid test requiring network access
- sed -i -e '/test_download_to_cache/askip "requires network access"' test/rubygems/test_gem_remote_fetcher.rb || die
-
- # Avoid test requiring file system permission changes
- sed -i -e '/test_traverse_parents_does_not_crash_on_permissions_error/,/^ end/ s:^:#:' test/rubygems/test_gem_util.rb || die
-}
-
-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", "~>4.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 || die
-
- newbin bin/gem $(basename ${RUBY} | sed -e 's:ruby:gem:') || die
-}
-
-all_ruby_install() {
- dodoc History.txt README.md
-
- if use server; then
- newinitd "${FILESDIR}/init.d-gem_server2" gem_server || die "newinitd failed"
- newconfd "${FILESDIR}/conf.d-gem_server" gem_server || die "newconfd failed"
- 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(23|24|...)"
- ewarn
-}
diff --git a/dev-ruby/rubygems/rubygems-3.0.3.ebuild b/dev-ruby/rubygems/rubygems-3.0.3.ebuild
deleted file mode 100644
index 79490d5e46cf..000000000000
--- a/dev-ruby/rubygems/rubygems-3.0.3.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng prefix
-
-DESCRIPTION="Centralized Ruby extension management system"
-HOMEPAGE="https://rubygems.org/"
-LICENSE="GPL-2 || ( Ruby MIT )"
-
-SRC_URI="https://rubygems.org/rubygems/${P}.tgz"
-
-KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE="server test"
-
-PDEPEND="server? ( =dev-ruby/builder-3* )"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/json
- dev-ruby/minitest:5
- dev-ruby/rdoc
- )"
-
-all_ruby_prepare() {
-
- mkdir -p lib/rubygems/defaults || die
- cp "${FILESDIR}/gentoo-defaults.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 '/assert_self_install_permissions/,/^ end/ s/^.*RUBY_INSTALL_NAME.*//' test/rubygems/test_gem.rb || die
-
- # Skip tests for default gems that all fail
- sed -i -e '/test_default_gems_use_full_paths/,/^ end/ s:^:#:' test/rubygems/test_gem.rb || die
- sed -i -e '/test_execute_ignore_default_gem_verbose/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_cleanup_command.rb || die
- sed -i -e '/test_execute_default_gem/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_contents_command.rb test/rubygems/test_gem_commands_pristine_command.rb || die
- sed -i -e '/test_execute_\(default_details\|show_default_gems\)/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_query_command.rb || die
- sed -i -e '/test_execute_all/,/^ end/ s:^:#:' test/rubygems/test_gem_commands_uninstall_command.rb || die
- sed -i -e '/\(test_default_gem\|test_check_executable_overwrite\|test_require_works_after_cleanup\)/,/^ end/ s:^:#:' \
- test/rubygems/test_{gem_installer,require}.rb || die
- sed -i -e '/test_\(load_default_gem\|default_spec_stub\|self_stubs\)/,/^ end/ s:^:#:' test/rubygems/test_gem_specification.rb || die
- sed -i -e '/test_uninstall_default_gem/,/^ end/ s:^:#:' test/rubygems/test_gem_uninstaller.rb || die
- rm -f test/rubygems/test_gem_indexer.rb || die
- sed -i -e '/test_\(require_when_gem_defined\|realworld_default_gem\)/,/^ end/ s:^:#:' test/rubygems/test_require.rb || die
- rm -f test/rubygems/test_gem_commands_setup_command.rb || die
-
- # Avoid tests playing tricks with ruby engine that don't seem to
- # work for us.
- rm test/rubygems/test_gem_request_set_gem_dependency_api.rb || die
-
- # Avoid test requiring network access
- sed -i -e '/test_download_to_cache/askip "requires network access"' test/rubygems/test_gem_remote_fetcher.rb || die
-
- # Avoid test requiring file system permission changes
- sed -i -e '/test_traverse_parents_does_not_crash_on_permissions_error/,/^ end/ s:^:#:' test/rubygems/test_gem_util.rb || die
-
- # Avoid uninvestigated test failure in favor of security release
- sed -i -e '/test_self_install_permissions_with_format_executable/askip "uninvestigated failure"' test/rubygems/test_gem.rb || die
-}
-
-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 || die
-
- newbin bin/gem $(basename ${RUBY} | sed -e 's:ruby:gem:') || die
-}
-
-all_ruby_install() {
- dodoc History.txt README.md
-
- if use server; then
- newinitd "${FILESDIR}/init.d-gem_server2" gem_server || die "newinitd failed"
- newconfd "${FILESDIR}/conf.d-gem_server" gem_server || die "newconfd failed"
- 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(23|24|...)"
- ewarn
-}
diff --git a/dev-ruby/rubygems/rubygems-3.0.4-r1.ebuild b/dev-ruby/rubygems/rubygems-3.0.4-r1.ebuild
deleted file mode 100644
index 34c2df4ae1b0..000000000000
--- a/dev-ruby/rubygems/rubygems-3.0.4-r1.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit ruby-ng prefix
-
-DESCRIPTION="Centralized Ruby extension management system"
-HOMEPAGE="https://rubygems.org/"
-LICENSE="GPL-2 || ( Ruby MIT )"
-
-SRC_URI="https://rubygems.org/rubygems/${P}.tgz"
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE="server test"
-
-PDEPEND="server? ( =dev-ruby/builder-3* )"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/json
- dev-ruby/minitest:5
- dev-ruby/rdoc
- )"
-
-all_ruby_prepare() {
-
- mkdir -p lib/rubygems/defaults || die
- cp "${FILESDIR}/gentoo-defaults-3.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
-}
-
-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 || die
-
- newbin bin/gem $(basename ${RUBY} | sed -e 's:ruby:gem:') || die
-}
-
-all_ruby_install() {
- dodoc History.txt README.md
-
- if use server; then
- newinitd "${FILESDIR}/init.d-gem_server2" gem_server || die "newinitd failed"
- newconfd "${FILESDIR}/conf.d-gem_server" gem_server || die "newconfd failed"
- 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(23|24|...)"
- ewarn
-}
diff --git a/dev-ruby/rubygems/rubygems-3.0.6.ebuild b/dev-ruby/rubygems/rubygems-3.0.6.ebuild
deleted file mode 100644
index 9987aaa8187d..000000000000
--- a/dev-ruby/rubygems/rubygems-3.0.6.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-inherit ruby-ng prefix
-
-DESCRIPTION="Centralized Ruby extension management system"
-HOMEPAGE="https://rubygems.org/"
-LICENSE="GPL-2 || ( Ruby MIT )"
-
-SRC_URI="https://rubygems.org/rubygems/${P}.tgz"
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE="server test"
-
-PDEPEND="server? ( =dev-ruby/builder-3* )"
-
-ruby_add_bdepend "
- test? (
- dev-ruby/json
- dev-ruby/minitest:5
- dev-ruby/rdoc
- )"
-
-all_ruby_prepare() {
-
- mkdir -p lib/rubygems/defaults || die
- cp "${FILESDIR}/gentoo-defaults-3.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
-}
-
-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 || die
-
- newbin bin/gem $(basename ${RUBY} | sed -e 's:ruby:gem:') || die
-}
-
-all_ruby_install() {
- dodoc History.txt README.md
-
- if use server; then
- newinitd "${FILESDIR}/init.d-gem_server2" gem_server || die "newinitd failed"
- newconfd "${FILESDIR}/conf.d-gem_server" gem_server || die "newconfd failed"
- 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(23|24|...)"
- ewarn
-}
diff --git a/dev-ruby/rubygems/rubygems-3.3.26.ebuild b/dev-ruby/rubygems/rubygems-3.3.26.ebuild
new file mode 100644
index 000000000000..e222c4a05186
--- /dev/null
+++ b/dev-ruby/rubygems/rubygems-3.3.26.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 ~x64-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(30|31|...)"
+ ewarn
+}
diff --git a/dev-ruby/rubygems/rubygems-3.4.1.ebuild b/dev-ruby/rubygems/rubygems-3.4.1.ebuild
new file mode 100644
index 000000000000..e81974f2fa11
--- /dev/null
+++ b/dev-ruby/rubygems/rubygems-3.4.1.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 ~x64-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(30|31|...)"
+ ewarn
+}
diff --git a/dev-ruby/rubygems/rubygems-3.4.15.ebuild b/dev-ruby/rubygems/rubygems-3.4.15.ebuild
new file mode 100644
index 000000000000..29a8044cef95
--- /dev/null
+++ b/dev-ruby/rubygems/rubygems-3.4.15.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-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 -e '/test_initialize_\(path_with_defaults\|regexp_path_separator\)/aomit "gentoo"' \
+ -i 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 or other downloads)
+ rm -f test/rubygems/test_gem_ext_cargo_builder.rb || die
+ sed -e '/test_gem_exec_gem_uninstall/aomit "requires network"' \
+ -i test/rubygems/test_gem_commands_exec_command.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(30|31|...)"
+ ewarn
+}
diff --git a/dev-ruby/rubygems/rubygems-3.4.19.ebuild b/dev-ruby/rubygems/rubygems-3.4.19.ebuild
new file mode 100644
index 000000000000..781d823d66ce
--- /dev/null
+++ b/dev-ruby/rubygems/rubygems-3.4.19.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-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 -e '/test_initialize_\(path_with_defaults\|regexp_path_separator\)/aomit "gentoo"' \
+ -i 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 or other downloads)
+ rm -f test/rubygems/test_gem_ext_cargo_builder.rb || die
+ sed -e '/test_gem_exec_gem_uninstall/aomit "requires network"' \
+ -i test/rubygems/test_gem_commands_exec_command.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}"':' exe/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 { require _1 }' || 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 exe/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(30|31|...)"
+ ewarn
+}
diff --git a/dev-ruby/rubygems/rubygems-3.4.22.ebuild b/dev-ruby/rubygems/rubygems-3.4.22.ebuild
new file mode 100644
index 000000000000..781d823d66ce
--- /dev/null
+++ b/dev-ruby/rubygems/rubygems-3.4.22.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-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 -e '/test_initialize_\(path_with_defaults\|regexp_path_separator\)/aomit "gentoo"' \
+ -i 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 or other downloads)
+ rm -f test/rubygems/test_gem_ext_cargo_builder.rb || die
+ sed -e '/test_gem_exec_gem_uninstall/aomit "requires network"' \
+ -i test/rubygems/test_gem_commands_exec_command.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}"':' exe/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 { require _1 }' || 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 exe/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(30|31|...)"
+ ewarn
+}
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..e81974f2fa11
--- /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 ~x64-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(30|31|...)"
+ ewarn
+}
diff --git a/dev-ruby/rubygems/rubygems-3.4.6.ebuild b/dev-ruby/rubygems/rubygems-3.4.6.ebuild
new file mode 100644
index 000000000000..07516f718180
--- /dev/null
+++ b/dev-ruby/rubygems/rubygems-3.4.6.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="ruby27 ruby30 ruby31 ruby32"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-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(30|31|...)"
+ ewarn
+}
diff --git a/dev-ruby/rubygems/rubygems-3.5.3.ebuild b/dev-ruby/rubygems/rubygems-3.5.3.ebuild
new file mode 100644
index 000000000000..d1f12abbe3fc
--- /dev/null
+++ b/dev-ruby/rubygems/rubygems-3.5.3.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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 ~arm64-macos ~ppc-macos ~x64-macos ~x64-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 -e '/test_initialize_\(path_with_defaults\|regexp_path_separator\)/aomit "gentoo"' \
+ -i 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 or other downloads)
+ rm -f test/rubygems/test_gem_ext_cargo_builder.rb || die
+ sed -e '/test_gem_exec_gem_uninstall/aomit "requires network"' \
+ -i test/rubygems/test_gem_commands_exec_command.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}"':' exe/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 { require _1 }' || 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 exe/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(30|31|...)"
+ ewarn
+}
diff --git a/dev-ruby/rubyntlm/Manifest b/dev-ruby/rubyntlm/Manifest
index 9d77479e0334..b02db7879a4a 100644
--- a/dev-ruby/rubyntlm/Manifest
+++ b/dev-ruby/rubyntlm/Manifest
@@ -1 +1 @@
-DIST rubyntlm-0.6.2.gem 32768 BLAKE2B 2459dc14c5eaa00c8728bafc0e30fbc1ad09a1fe012e4c6e428028f6232045ddd34fda1654e7b8ebcbc9349cbe24f6f6e44dc4af34c86e6b219e86d3a0caff88 SHA512 11c5a4affc47ac9c4207718856549e202946a0d75f40b508d9dbdde4f5792de0737e03342c653a0cb06f8ca91a260859cd386d6349c909c7ea99c31c77fd6bb3
+DIST rubyntlm-0.6.3.gem 32768 BLAKE2B f9e21068e684620e2e54c685132d034a805fefa4eb90261babac9d58e38167412e0257f0d9b018603772dbd6f152eb9478340d7a390174bc908d1ac8640fcff4 SHA512 7e50c1bf63477fead9189a5ade06db65a3fad04d82bccfbffb513517ab97766053c800af9551e027dedc3aee6fb35288c234d98b1a02815299bcbc463e0edd87
diff --git a/dev-ruby/rubyntlm/metadata.xml b/dev-ruby/rubyntlm/metadata.xml
index 752e47a7decf..0ff260b98458 100644
--- a/dev-ruby/rubyntlm/metadata.xml
+++ b/dev-ruby/rubyntlm/metadata.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
- <upstream>
- <remote-id type="github">winrb/rubyntlm</remote-id>
- <remote-id type="rubygems">rubyntlm</remote-id>
- </upstream>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">winrb/rubyntlm</remote-id>
+ <remote-id type="rubygems">rubyntlm</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/rubyntlm/rubyntlm-0.6.2.ebuild b/dev-ruby/rubyntlm/rubyntlm-0.6.2.ebuild
deleted file mode 100644
index 045312f02ff0..000000000000
--- a/dev-ruby/rubyntlm/rubyntlm-0.6.2.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby/NTLM provides message creator and parser for the NTLM authentication."
-HOMEPAGE="https://github.com/winrb/rubyntlm"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/rubyntlm/rubyntlm-0.6.3-r1.ebuild b/dev-ruby/rubyntlm/rubyntlm-0.6.3-r1.ebuild
new file mode 100644
index 000000000000..fcb483e3a3ce
--- /dev/null
+++ b/dev-ruby/rubyntlm/rubyntlm-0.6.3-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby/NTLM provides message creator and parser for the NTLM authentication"
+HOMEPAGE="https://github.com/winrb/rubyntlm"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~ppc64 ~x86"
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/rubypants/Manifest b/dev-ruby/rubypants/Manifest
index 0530af09ede9..ccd404aaf939 100644
--- a/dev-ruby/rubypants/Manifest
+++ b/dev-ruby/rubypants/Manifest
@@ -1 +1 @@
-DIST rubypants-0.7.0.gem 13824 BLAKE2B c132b3c60390b712c08ec54b10a14255e21d9622399b9ddba8d2359915411c604052569e5713fdb4b1a3fefcc3416f4d5af16baca19063a0b79203838b8f3066 SHA512 cacd05e0cc87389b5513c83fe085db39202c2789b882b564caaded6b84b1ecb1acbde8232462dadf501c68c1c881ee7b7f4e640feec47c9c0f7a08758b5f5724
+DIST rubypants-0.7.1.gem 14336 BLAKE2B 6a2fd50f07e6eca0ee76a3f653fd378b9c389349a23bfa98cbf1be42e46a58cb76769e4f653bf83d72faa318be81b60920d0dbd900053f85489fe2c6a1a69a23 SHA512 48f04e621cefecb9911ee346ea9b4f185ee52a603f9a307d5424d314d3be88d0efda959a5654b5f532dfdd5af9ce2c0c6baceca4e09ad6d1471bf31c990e79bb
diff --git a/dev-ruby/rubypants/metadata.xml b/dev-ruby/rubypants/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/rubypants/metadata.xml
+++ b/dev-ruby/rubypants/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rubypants/rubypants-0.7.0.ebuild b/dev-ruby/rubypants/rubypants-0.7.0.ebuild
deleted file mode 100644
index a97b04f5ff82..000000000000
--- a/dev-ruby/rubypants/rubypants-0.7.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A Ruby port of the SmartyPants PHP library"
-HOMEPAGE="http://chneukirchen.org/repos/rubypants/README"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/ecov/I s:^:#:' test/helper.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -I. test/rubypants_test.rb || die "tests failed"
-}
diff --git a/dev-ruby/rubypants/rubypants-0.7.1-r1.ebuild b/dev-ruby/rubypants/rubypants-0.7.1-r1.ebuild
new file mode 100644
index 000000000000..d2658c4e89d5
--- /dev/null
+++ b/dev-ruby/rubypants/rubypants-0.7.1-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby port of the SmartyPants PHP library"
+HOMEPAGE="https://leahneukirchen.org/repos/rubypants/README"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~riscv x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/ecov/I s:^:#:' test/helper.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -I. test/rubypants_test.rb || die "tests failed"
+}
diff --git a/dev-ruby/rubytest-cli/metadata.xml b/dev-ruby/rubytest-cli/metadata.xml
index 28ab0c15f206..f3c13f7e202f 100644
--- a/dev-ruby/rubytest-cli/metadata.xml
+++ b/dev-ruby/rubytest-cli/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">rubyworks/lemon</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rubytest-cli/rubytest-cli-0.2.0-r1.ebuild b/dev-ruby/rubytest-cli/rubytest-cli-0.2.0-r1.ebuild
new file mode 100644
index 000000000000..bf055dceaded
--- /dev/null
+++ b/dev-ruby/rubytest-cli/rubytest-cli-0.2.0-r1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Rubytest CLI is a command-line interface for Rubytest"
+HOMEPAGE="https://rubyworks.github.io/rubytest-cli/"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/ansi >=dev-ruby/rubytest-0.8.0"
diff --git a/dev-ruby/rubytest-cli/rubytest-cli-0.2.0.ebuild b/dev-ruby/rubytest-cli/rubytest-cli-0.2.0.ebuild
deleted file mode 100644
index 85f05110b7e9..000000000000
--- a/dev-ruby/rubytest-cli/rubytest-cli-0.2.0.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Rubytest CLI is a command-line interface for Rubytest"
-HOMEPAGE="https://rubyworks.github.io/rubytest-cli/"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/ansi >=dev-ruby/rubytest-0.8.0"
diff --git a/dev-ruby/rubytest/metadata.xml b/dev-ruby/rubytest/metadata.xml
index 28ab0c15f206..f0c008fc4fbd 100644
--- a/dev-ruby/rubytest/metadata.xml
+++ b/dev-ruby/rubytest/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">rubyworks/rubytest</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/rubytest/rubytest-0.8.1-r1.ebuild b/dev-ruby/rubytest/rubytest-0.8.1-r1.ebuild
new file mode 100644
index 000000000000..97495fe21dd3
--- /dev/null
+++ b/dev-ruby/rubytest/rubytest-0.8.1-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby Test is a universal test harness for Ruby"
+HOMEPAGE="https://rubyworks.github.io/rubytest/"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/ae dev-ruby/qed )"
+ruby_add_rdepend "dev-ruby/ansi"
+
+all_ruby_prepare() {
+ # Help qed correctly find the root of the project
+ touch .ruby || die
+}
+
+each_ruby_test() {
+ ${RUBY} -S qed || die 'tests failed'
+}
diff --git a/dev-ruby/rubytest/rubytest-0.8.1.ebuild b/dev-ruby/rubytest/rubytest-0.8.1.ebuild
deleted file mode 100644
index c6a683a6c147..000000000000
--- a/dev-ruby/rubytest/rubytest-0.8.1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby Test is a universal test harness for Ruby"
-HOMEPAGE="https://rubyworks.github.io/rubytest/"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/ae dev-ruby/qed )"
-ruby_add_rdepend "dev-ruby/ansi"
-
-each_ruby_test() {
- ${RUBY} -S qed || die 'tests failed'
-}
diff --git a/dev-ruby/rubytter/metadata.xml b/dev-ruby/rubytter/metadata.xml
index 6044d00a14bb..8ffec225e070 100644
--- a/dev-ruby/rubytter/metadata.xml
+++ b/dev-ruby/rubytter/metadata.xml
@@ -1,11 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>naota@gentoo.org</email>
-</maintainer>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
+ <maintainer type="person">
+ <email>naota@gentoo.org</email>
+ <name>Naohiro Aota</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jugyo/rubytter</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/rubytter/rubytter-1.5.1-r1.ebuild b/dev-ruby/rubytter/rubytter-1.5.1-r1.ebuild
deleted file mode 100644
index 8986caea688a..000000000000
--- a/dev-ruby/rubytter/rubytter-1.5.1-r1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc examples/*"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Rubytter is a simple twitter library"
-HOMEPAGE="https://wiki.github.com/jugyo/rubytter"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/json-1.1.3:* >=dev-ruby/oauth-0.3.6"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' -e '/check_dependencies/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/rubytter/rubytter-1.5.1-r3.ebuild b/dev-ruby/rubytter/rubytter-1.5.1-r3.ebuild
new file mode 100644
index 000000000000..30ab34eae74f
--- /dev/null
+++ b/dev-ruby/rubytter/rubytter-1.5.1-r3.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc examples/*"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Rubytter is a simple twitter library"
+HOMEPAGE="https://github.com/jugyo/rubytter"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/json-1.1.3:* >=dev-ruby/oauth-0.3.6"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/d' -e '/check_dependencies/ s:^:#:' Rakefile || die
+
+ # Make specs work with rspec 3
+ sed -i -e 's/stub!/stub/ ; 250 s/pending/skip/' spec/rubytter_spec.rb || die
+
+ # Make specs work with ruby30
+ sed -i -e '27i{' -e '30i}' spec/rubytter/oauth_spec.rb || die
+}
diff --git a/dev-ruby/rubyzip/Manifest b/dev-ruby/rubyzip/Manifest
index 59bf7c459f11..218936ed3a05 100644
--- a/dev-ruby/rubyzip/Manifest
+++ b/dev-ruby/rubyzip/Manifest
@@ -1,2 +1 @@
-DIST rubyzip-1.2.2-git.tgz 153976 BLAKE2B 350c05b5dde15bf6450c32b679b474df68b8597e82770e2d5f59bd0c430344a3f2868e8d2d7f59f2240f8fea02bc7ccc31777ceb5ff66041dba5a619e7849b21 SHA512 1af115db39b5107687049cead85732a3cdc6b0c3db69103af20bccf1c684ddc99d5d2f5b178b86600d2d6458f5eb535b7c9dc89ab32c91dba3519bbd3df59e7a
-DIST rubyzip-1.2.3-git.tgz 155000 BLAKE2B 021bf1f3278fe52a2a1f0b8a6a8e0879f81a3b0765f1f5c12133ac6a2f2995ae56b786e7e53a4146cfd7df281199f4072dd820c334d18fd4f2a59ac500b57763 SHA512 a6dab87588655852fb4d363ce179af79e967f7fdcaa55460eb1bb40c0cccb04170022fdda5a88149bace8873646150cfbd0ba37ded79f6fc1d7243db45eeaee2
+DIST rubyzip-2.3.2-git.tgz 225923 BLAKE2B ed901326cd0f79c8be004d9c14b32d7e67e90ab4d2d5b67dc64559fd4691dfb63cfa1ee18363a7cf864bd62559f1bc2fae71fc25ad1c727d7cc01f94d1ec62ee SHA512 6c64e53c1f5ca530abfa22baf388f87c8cf098d81cc9c639f20903e5193cf26243fbf861ac12002ae954f026e04168d8a55beeaf3ac5542bd0618ca85a5c90de
diff --git a/dev-ruby/rubyzip/metadata.xml b/dev-ruby/rubyzip/metadata.xml
index 76f8aac4920f..99cb7f3e44cc 100644
--- a/dev-ruby/rubyzip/metadata.xml
+++ b/dev-ruby/rubyzip/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/rubyzip/rubyzip-1.2.2.ebuild b/dev-ruby/rubyzip/rubyzip-1.2.2.ebuild
deleted file mode 100644
index a5c305e6159e..000000000000
--- a/dev-ruby/rubyzip/rubyzip-1.2.2.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md TODO"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A ruby library for reading and writing zip files"
-HOMEPAGE="https://github.com/rubyzip/rubyzip"
-# Tests are not included in the gem.
-SRC_URI="https://github.com/rubyzip/rubyzip/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-LICENSE="Ruby"
-SLOT="1"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ~ia64 ppc ppc64 ~sparc x86 ~x86-fbsd"
-IUSE=""
-
-RDEPEND=""
-DEPEND="${DEPEND} test? ( app-arch/zip )"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc samples/*
-}
-
-all_ruby_prepare() {
- # Avoid dependencies on simplecov and coveralls
- sed -i -e '/simplecov/ s:^:#:' test/test_helper.rb || die
-
- # Avoid dependency on bundler
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-
- # Fix hardcoded path to /tmp
- sed -i -e 's:/tmp/:'${T}'/:g' test/entry_test.rb || die
-
- # Add missing requires
- sed -i -e '1irequire "forwardable"; require "pathname"' test/input_stream_test.rb || die
-}
diff --git a/dev-ruby/rubyzip/rubyzip-1.2.3.ebuild b/dev-ruby/rubyzip/rubyzip-1.2.3.ebuild
deleted file mode 100644
index 165e218f146b..000000000000
--- a/dev-ruby/rubyzip/rubyzip-1.2.3.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md TODO"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A ruby library for reading and writing zip files"
-HOMEPAGE="https://github.com/rubyzip/rubyzip"
-# Tests are not included in the gem.
-SRC_URI="https://github.com/rubyzip/rubyzip/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-LICENSE="Ruby"
-SLOT="1"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
-IUSE=""
-
-RDEPEND=""
-DEPEND="${DEPEND} test? ( app-arch/zip )"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc samples/*
-}
-
-all_ruby_prepare() {
- # Avoid dependencies on simplecov and coveralls
- sed -i -e '/simplecov/ s:^:#:' test/test_helper.rb || die
-
- # Avoid dependency on bundler
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-
- # Fix hardcoded path to /tmp
- sed -i -e 's:/tmp/:'${T}'/:g' test/entry_test.rb || die
-
- # Add missing requires
- sed -i -e '1irequire "forwardable"; require "pathname"' test/input_stream_test.rb || die
-}
diff --git a/dev-ruby/rubyzip/rubyzip-2.3.2-r1.ebuild b/dev-ruby/rubyzip/rubyzip-2.3.2-r1.ebuild
new file mode 100644
index 000000000000..54f13b3b2f7f
--- /dev/null
+++ b/dev-ruby/rubyzip/rubyzip-2.3.2-r1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md TODO"
+
+RUBY_FAKEGEM_GEMSPEC="rubyzip.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="A ruby library for reading and writing zip files"
+HOMEPAGE="https://github.com/rubyzip/rubyzip"
+# Tests are not included in the gem.
+SRC_URI="https://github.com/rubyzip/rubyzip/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="Ruby-BSD"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+RDEPEND=""
+DEPEND="${DEPEND} test? ( app-arch/zip )"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc samples/*
+}
+
+all_ruby_prepare() {
+ # Avoid dependencies on simplecov and coveralls
+ sed -i -e '/simplecov/ s:^:#:' test/test_helper.rb || die
+
+ # Avoid dependency on bundler
+ sed -i -e '/bundler/ s:^:#: ; /rubocop/I s:^:#:' Rakefile || die
+
+ # Fix hardcoded path to /tmp
+ sed -i -e "s:/tmp/:${T}/:g" test/entry_test.rb || die
+
+ # Add missing requires
+ sed -i -e '1irequire "forwardable"; require "pathname"' test/input_stream_test.rb || die
+
+ # Fix broken test that uses native endian
+ sed -i -e '/pack/ s/LLS/VVv/' test/file_extract_test.rb || die
+}
diff --git a/dev-ruby/safe_yaml/Manifest b/dev-ruby/safe_yaml/Manifest
deleted file mode 100644
index ca8a9f884fbf..000000000000
--- a/dev-ruby/safe_yaml/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST safe_yaml-1.0.5.gem 30720 BLAKE2B affbf5331cf290c3e7932f53da9b0f488730ae9138f0b28eb1e8e0323c7056635ed73bcadebd52f725895030a153dab13e243d997e84004f5bfac82e82dcebe2 SHA512 d9c8d9c28c3c8708f97cb0545f58152af81056f5e79147424dd7bf625f8e533440d1ed41d6abe2faf84578754823a1215ba28772c2e8593bfcfc397d647187b9
diff --git a/dev-ruby/safe_yaml/metadata.xml b/dev-ruby/safe_yaml/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/safe_yaml/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/safe_yaml/safe_yaml-1.0.5.ebuild b/dev-ruby/safe_yaml/safe_yaml-1.0.5.ebuild
deleted file mode 100644
index 09e689fa8777..000000000000
--- a/dev-ruby/safe_yaml/safe_yaml-1.0.5.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Parse YAML safely, alternative implementation of YAML.load"
-HOMEPAGE="https://dtao.github.com/safe_yaml"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 x86 ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/hashie
- dev-ruby/heredoc_unindent
- dev-ruby/rspec:3 )"
-
-all_ruby_prepare() {
- sed -i -e '/local timezone/askip "timezone"' spec/transform/to_date_spec.rb || die
-}
-
-each_ruby_test() {
- # Run specs with monkeypatch
- ${RUBY} -S rspec-3 spec --tag ~libraries || die
-
- # Running specs without monkeypatch
- ${RUBY} -S rspec-3 spec --tag libraries || die
-}
diff --git a/dev-ruby/sanitize/Manifest b/dev-ruby/sanitize/Manifest
index 1ff70bcfc723..bce1c617f411 100644
--- a/dev-ruby/sanitize/Manifest
+++ b/dev-ruby/sanitize/Manifest
@@ -1,2 +1 @@
-DIST sanitize-4.6.6.tar.gz 1349809 BLAKE2B d34f3359f1241881f96d48cfce6aa554796e7c7a2282c729dc93b6db7f1c5d2ec1677ebd1cddb79cb14f84d7724ddb7dad551136cd130bd89750ab5851a8094f SHA512 6f2567601dea9fd08996fe537e5543c7618e407a68580a19b74333a6e840d1123891a087e6c57c88f887390cd04e4c25af71547d7d9622e61369dc4ffe92f220
-DIST sanitize-5.0.0.tar.gz 1350342 BLAKE2B 0c4a8e442a2dc9748dfb4ab2cf13862bbb2692665194ae8aa18bf84bac200e5622fa05cf2a022d7a0c3a7ddd901996f028948f517f8f6227d0aad2479f05996c SHA512 dcfaec0666bb017580deaa4a9fb2c6e50dc678fe26bd57db7451472e1558ff7adaa6e0bd43554ceb68501a92d25405415ce6570806b177d7d92f138666f5169c
+DIST sanitize-6.1.0.tar.gz 1352762 BLAKE2B 7bd05780437387767dc6b2779458e6422483168ec8d5ea11ddb582c1a6375d7d2f0b686e64d769124be79a285774fbc175079024474a9ccee69e3a750f30ae7d SHA512 506df1324bb767aa7409c2bc8a0a309ad5d174d313940ced37b61b0a63ec756ecf91dd4c1ba43ab2d6386f51ad2970fb0dbd8b9b919822a5d12ddce4fe0eedc7
diff --git a/dev-ruby/sanitize/metadata.xml b/dev-ruby/sanitize/metadata.xml
index 27ceb1589c79..95eb6b8fae86 100644
--- a/dev-ruby/sanitize/metadata.xml
+++ b/dev-ruby/sanitize/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/sanitize/sanitize-4.6.6.ebuild b/dev-ruby/sanitize/sanitize-4.6.6.ebuild
deleted file mode 100644
index 03582866e28e..000000000000
--- a/dev-ruby/sanitize/sanitize-4.6.6.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="HISTORY.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Sanitize is a whitelist-based HTML sanitizer"
-HOMEPAGE="https://github.com/rgrove/sanitize"
-SRC_URI="https://github.com/rgrove/sanitize/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-ruby_add_rdepend "
- >=dev-ruby/crass-1.0.2 =dev-ruby/crass-1.0*
- >=dev-ruby/nokogiri-1.4.4
- >=dev-ruby/nokogumbo-1.4:0"
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-each_ruby_test() {
- ${RUBY} -Ilib test/test_sanitize.rb || die
-}
diff --git a/dev-ruby/sanitize/sanitize-5.0.0.ebuild b/dev-ruby/sanitize/sanitize-5.0.0.ebuild
deleted file mode 100644
index 3b5304727231..000000000000
--- a/dev-ruby/sanitize/sanitize-5.0.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="HISTORY.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Sanitize is a whitelist-based HTML sanitizer"
-HOMEPAGE="https://github.com/rgrove/sanitize"
-SRC_URI="https://github.com/rgrove/sanitize/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="5"
-KEYWORDS="~amd64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-ruby_add_rdepend "
- >=dev-ruby/crass-1.0.2 =dev-ruby/crass-1.0*
- >=dev-ruby/nokogiri-1.8.0
- dev-ruby/nokogumbo:2"
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-each_ruby_test() {
- ${RUBY} -Ilib test/test_sanitize.rb || die
-}
diff --git a/dev-ruby/sanitize/sanitize-6.1.0.ebuild b/dev-ruby/sanitize/sanitize-6.1.0.ebuild
new file mode 100644
index 000000000000..9bbcca7f7233
--- /dev/null
+++ b/dev-ruby/sanitize/sanitize-6.1.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="HISTORY.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Sanitize is a whitelist-based HTML sanitizer"
+HOMEPAGE="https://github.com/rgrove/sanitize"
+SRC_URI="https://github.com/rgrove/sanitize/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/crass-1.0.2 =dev-ruby/crass-1.0*
+ >=dev-ruby/nokogiri-1.12.0
+"
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+each_ruby_test() {
+ ${RUBY} -Ilib test/test_sanitize.rb || die
+}
diff --git a/dev-ruby/sass-listen/Manifest b/dev-ruby/sass-listen/Manifest
deleted file mode 100644
index 27e4fbcb81f0..000000000000
--- a/dev-ruby/sass-listen/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sass-listen-4.0.0.tar.gz 49449 BLAKE2B bb44a91a6fbdca1b6d1b8b2253efd1709fb89713631d9772ce91dab9bc701b197a6551391699f5566d3a75ae42f9958d5d6d8346de9f74b45d7b60d88cca5ee7 SHA512 799e1e70f86b4be671c3286ae860cbcec83d8a1311d67fb37956dc527e2961888094439fd8377d50c78798c494f19ddbed3a412f02e76e429dcc1717c93b7e19
diff --git a/dev-ruby/sass-listen/files/listen-3.1.5-ruby26.patch b/dev-ruby/sass-listen/files/listen-3.1.5-ruby26.patch
deleted file mode 100644
index f90ab1ed213c..000000000000
--- a/dev-ruby/sass-listen/files/listen-3.1.5-ruby26.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 2908365366792ac3ba010fa32bc3be2beaed451a Mon Sep 17 00:00:00 2001
-From: Samuel Williams <samuel.williams@oriontransfer.co.nz>
-Date: Sun, 16 Dec 2018 11:32:45 +1300
-Subject: [PATCH] Use raw Pathname to fix Linux specs.
-
----
- lib/listen/adapter/linux.rb | 2 +-
- spec/lib/listen/adapter/linux_spec.rb | 12 +-----------
- 2 files changed, 2 insertions(+), 12 deletions(-)
-
-diff --git a/spec/lib/listen/adapter/linux_spec.rb b/spec/lib/listen/adapter/linux_spec.rb
-index d77f0c0..da48319 100644
---- a/spec/lib/listen/adapter/linux_spec.rb
-+++ b/spec/lib/listen/adapter/linux_spec.rb
-@@ -10,17 +10,7 @@
- end
-
- if linux?
-- let(:dir1) do
-- instance_double(
-- Pathname,
-- 'dir1',
-- to_s: '/foo/dir1',
-- cleanpath: real_dir1
-- )
-- end
--
-- # just so cleanpath works in above double
-- let(:real_dir1) { instance_double(Pathname, 'dir1', to_s: '/foo/dir1') }
-+ let(:dir1) {Pathname.new("/foo/dir1")}
-
- let(:config) { instance_double(Listen::Adapter::Config) }
- let(:queue) { instance_double(Queue) }
diff --git a/dev-ruby/sass-listen/metadata.xml b/dev-ruby/sass-listen/metadata.xml
deleted file mode 100644
index 97e36c4153fe..000000000000
--- a/dev-ruby/sass-listen/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">sass/listen</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/sass-listen/sass-listen-4.0.0.ebuild b/dev-ruby/sass-listen/sass-listen-4.0.0.ebuild
deleted file mode 100644
index 3e6486958d11..000000000000
--- a/dev-ruby/sass-listen/sass-listen-4.0.0.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-SRC_URI="https://github.com/sass/listen/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-DESCRIPTION="Fork of guard/listen provides a stable API for users of the ruby Sass CLI"
-HOMEPAGE="https://github.com/guard/listen"
-RUBY_S="listen-${PV}"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE="test"
-
-PATCHES=( "${FILESDIR}/listen-3.1.5-ruby26.patch" )
-
-ruby_add_rdepend ">=dev-ruby/rb-inotify-0.9.7"
-
-ruby_add_bdepend "test? ( dev-ruby/thor )"
-
-all_ruby_prepare() {
- rm -f Gemfile || die
- sed -i -e "/git/,+3d" -e "/rb-fsevent/d" ${PN}.gemspec || die
- sed -i -e "/rb-fsevent/d" lib/sass-listen/adapter/darwin.rb || die
- rm -rf spec/lib/listen/adapter/darwin_spec.rb || die
-}
-
-each_ruby_prepare() {
- mkdir spec/.fixtures || die
-}
-
-each_ruby_test() {
- RSPEC_VERSION=3 ruby-ng_rspec
- rm -rf spec/.fixtures || die
-}
diff --git a/dev-ruby/sass-rails/Manifest b/dev-ruby/sass-rails/Manifest
index ac695db2fbe9..12f56588108f 100644
--- a/dev-ruby/sass-rails/Manifest
+++ b/dev-ruby/sass-rails/Manifest
@@ -1,2 +1 @@
-DIST sass-rails-5.0.7.tar.gz 90425 BLAKE2B 8aceff670ba2e4993597858b74362a02307e39ac967a331005f21d384644d0dbdd414560abaa88e60d35358b47d65c146baa72f37c879a2f13178e187cc1f79b SHA512 491a1618a75becf6095b102c996e50d25fe701d3a6c1b6c6fadff81c6c09260c3ee6ff9c84abf7bc62779fa7034d54d7c0d9a7c4148d3cc741d83efda87ec0a0
-DIST sass-rails-5.0.8.tar.gz 90020 BLAKE2B 20e9e6e4701b0a14ff10f343fb94065af0110d86aab1bb4676de4806e20f8031b4cf7961002828438c3ae6be9802b3a2e4367882241e8fe745029747d31f9b04 SHA512 05d9e8d269c608723158831e215599a8482383fe79a9c3416fa8efd11bf9bae7935c5b7a1f5e8a22a85336abf4ceecc50578f0c8e51310c09b2540831959652e
+DIST sass-rails-5.1.0.tar.gz 89994 BLAKE2B dc0083af8399d2ff1210a6430d47ccaaac88b337da5cfeb61c7a4f0c6b1f55d59d896a874945a943cc322fabfb3a31d80a1a467a12d04f2c1a1f9c84cbb452a0 SHA512 894b957b6b72d340ef2eebdc721c58c2d101fd275a10265f859f17f654736b3d3542a7100db922236925af40ae090406689815a4bb4f623c5f70652685571b7e
diff --git a/dev-ruby/sass-rails/metadata.xml b/dev-ruby/sass-rails/metadata.xml
index 36956bcf5523..3d62dfc17bd7 100644
--- a/dev-ruby/sass-rails/metadata.xml
+++ b/dev-ruby/sass-rails/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/sass-rails/sass-rails-5.0.7.ebuild b/dev-ruby/sass-rails/sass-rails-5.0.7.ebuild
deleted file mode 100644
index 82e656fb0e0b..000000000000
--- a/dev-ruby/sass-rails/sass-rails-5.0.7.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Official Ruby-on-Rails Integration with Sass"
-HOMEPAGE="https://github.com/rails/sass-rails"
-SRC_URI="https://github.com/rails/sass-rails/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
-
-IUSE=""
-
-# Restrict tests for now since it is hard to set up the right
-# environment with the correct ruby interpreter and Rails test
-# application.
-RESTRICT="test"
-
-#ruby_add_bdepend "test? ( dev-ruby/sfl dev-ruby/bundler )"
-
-ruby_add_rdepend ">=dev-ruby/sass-3.1:* =dev-ruby/sass-3*:*
- >=dev-ruby/railties-4:* <dev-ruby/railties-6:*
- >=dev-ruby/sprockets-rails-2.0:* <dev-ruby/sprockets-rails-4:*
- >=dev-ruby/sprockets-2.8:* <dev-ruby/sprockets-4:*
- >=dev-ruby/tilt-1.1:* <dev-ruby/tilt-3:*"
-
-each_ruby_test() {
- ${RUBY} -S bundle exec rake test || die
-}
diff --git a/dev-ruby/sass-rails/sass-rails-5.0.8.ebuild b/dev-ruby/sass-rails/sass-rails-5.0.8.ebuild
deleted file mode 100644
index ab579a6f00bd..000000000000
--- a/dev-ruby/sass-rails/sass-rails-5.0.8.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Official Ruby-on-Rails Integration with Sass"
-HOMEPAGE="https://github.com/rails/sass-rails"
-SRC_URI="https://github.com/rails/sass-rails/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
-
-IUSE=""
-
-# Restrict tests for now since it is hard to set up the right
-# environment with the correct ruby interpreter and Rails test
-# application.
-RESTRICT="test"
-
-#ruby_add_bdepend "test? ( dev-ruby/sfl dev-ruby/bundler )"
-
-ruby_add_rdepend ">=dev-ruby/sass-3.1:* =dev-ruby/sass-3*:*
- >=dev-ruby/railties-5.2.0
- >=dev-ruby/sprockets-rails-2.0:* <dev-ruby/sprockets-rails-4:*
- >=dev-ruby/sprockets-2.8:* <dev-ruby/sprockets-4:*
- >=dev-ruby/tilt-1.1:* <dev-ruby/tilt-3:*"
-
-each_ruby_test() {
- ${RUBY} -S bundle exec rake test || die
-}
diff --git a/dev-ruby/sass-rails/sass-rails-5.1.0-r1.ebuild b/dev-ruby/sass-rails/sass-rails-5.1.0-r1.ebuild
new file mode 100644
index 000000000000..d593abeefec5
--- /dev/null
+++ b/dev-ruby/sass-rails/sass-rails-5.1.0-r1.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Official Ruby-on-Rails Integration with Sass"
+HOMEPAGE="https://github.com/rails/sass-rails"
+SRC_URI="https://github.com/rails/sass-rails/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
+
+IUSE=""
+
+# Restrict tests for now since it is hard to set up the right
+# environment with the correct ruby interpreter and Rails test
+# application.
+RESTRICT="test"
+
+#ruby_add_bdepend "test? ( dev-ruby/sfl dev-ruby/bundler )"
+
+ruby_add_rdepend ">=dev-ruby/sass-3.1:* =dev-ruby/sass-3*:*
+ >=dev-ruby/railties-5.2.0
+ >=dev-ruby/sprockets-rails-2.0:* <dev-ruby/sprockets-rails-4:*
+ >=dev-ruby/sprockets-2.8:* <dev-ruby/sprockets-4:*
+ >=dev-ruby/tilt-1.1:* <dev-ruby/tilt-3:*"
+
+each_ruby_test() {
+ ${RUBY} -S bundle exec rake test || die
+}
diff --git a/dev-ruby/sass/Manifest b/dev-ruby/sass/Manifest
index a5700def2644..7faff870b0c9 100644
--- a/dev-ruby/sass/Manifest
+++ b/dev-ruby/sass/Manifest
@@ -1,4 +1 @@
-DIST sass-3.4.25.gem 352768 BLAKE2B f3c725ee75f0d5b3a30cfbfdbf5dd949fc2b6d99878039a073c3b369753609f9b202ea6f756016783b251877831d1480dad4032db8338dff453b088b219b799a SHA512 5ff4bd47857425832c6a39b963ae4465dd91d63774eb35196ec28075082ad231254babe507d7071304ddb73cdfc1168a547bf231225afaeb3b7ddd677c0bd712
-DIST sass-3.5.7.gem 320000 BLAKE2B aeae548d1005b9f420c82f4efc96b2428d3025395b49784917c298fa48228d8052f758c1f851fb6e4e8024c63d48a9880f6c2e88411cd2125e76ad291e469bc0 SHA512 a72b499cfca4862fb4bfeb5201fda788339bb57d97b467c427e9c8365b03088b886a0f3cb3a6d87b1426e1497032b8394a948eb4a2f45004be80c03070304f95
-DIST sass-3.7.3.tar.gz 401486 BLAKE2B 969b6e7e29883afaecfbaae627f67cfde826b6941b207352b9300849bcbf22f61b39ac5f568fe9af785bca1e62b84578c3c766a4bd803bb262a9e9b8f512886e SHA512 1ae8127433387721977f5cd9041f3832a9a1d2146f4091ef612d76f7b881480b6f742637a5012780dbd85b1bc658abcaa958e0efeaf50ce2e0f90c424dfafd4a
DIST sass-3.7.4.tar.gz 401442 BLAKE2B 52abe37390282d2aead3eea6c2a049da529a5e96bac44b01ccded1e3c4d2c332d82f164da941413c0138fd3a94f59cda084d8fb724db87fc522f33dd7bc31adb SHA512 4bebb6ddc84e7f2687d9b801e6b30e897d83a46940249349d775e0139d1fca8ffd96d0976f4c35a7a0dba9ebf786883a70aff2ff002708e28b685a034634aaf2
diff --git a/dev-ruby/sass/files/sass-3.7.4-use-listen-not-sass-listen.patch b/dev-ruby/sass/files/sass-3.7.4-use-listen-not-sass-listen.patch
new file mode 100644
index 000000000000..17d2aa9217c2
--- /dev/null
+++ b/dev-ruby/sass/files/sass-3.7.4-use-listen-not-sass-listen.patch
@@ -0,0 +1,14 @@
+https://src.fedoraproject.org/rpms/rubygem-sass/blob/rawhide/f/rubygem-sass-3.5.6-use-listen.patch
+--- a/lib/sass/plugin/compiler.rb
++++ b/lib/sass/plugin/compiler.rb
+@@ -377,8 +377,8 @@ module Sass::Plugin
+
+ # This is mocked out in compiler_test.rb.
+ def create_listener(*args, &block)
+- require 'sass-listen'
+- SassListen.to(*args, &block)
++ require 'listen'
++ Listen.to(*args, &block)
+ end
+
+ def remove_redundant_directories(directories)
diff --git a/dev-ruby/sass/metadata.xml b/dev-ruby/sass/metadata.xml
index 28ab0c15f206..916c1e3cd990 100644
--- a/dev-ruby/sass/metadata.xml
+++ b/dev-ruby/sass/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">sass/ruby-sass</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/sass/sass-3.4.25-r1.ebuild b/dev-ruby/sass/sass-3.4.25-r1.ebuild
deleted file mode 100644
index 7d466986dd35..000000000000
--- a/dev-ruby/sass/sass-3.4.25-r1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="rails init.rb VERSION VERSION_NAME"
-
-# Allow the latest slot to provide these
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="An extension of CSS3, adding nested rules, variables, mixins, and more"
-HOMEPAGE="http://sass-lang.com/"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
-SLOT="$(get_version_component_range 1-2)"
-IUSE=""
-
-ruby_add_bdepend "doc? ( >=dev-ruby/yard-0.5.3 )"
-
-ruby_add_rdepend ">=dev-ruby/listen-1.3.1:1 !!<dev-ruby/haml-3.1 !!<dev-ruby/sass-3.2.19-r1:0 !!<dev-ruby/sass-3.3.14-r1:3.3"
-
-# tests could use `less` if we had it
-
-all_ruby_prepare() {
- rm -rf vendor/listen || die
-
- # Don't require maruku as markdown provider but let yard decide.
- sed -i -e '/maruku/d' .yardopts || die
-}
-
-each_ruby_test() {
- RUBOCOP=false ${RUBY} -S rake test:ruby || die
-}
diff --git a/dev-ruby/sass/sass-3.4.25.ebuild b/dev-ruby/sass/sass-3.4.25.ebuild
deleted file mode 100644
index 6d82ebf98f87..000000000000
--- a/dev-ruby/sass/sass-3.4.25.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="rails init.rb VERSION VERSION_NAME"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="An extension of CSS3, adding nested rules, variables, mixins, and more"
-HOMEPAGE="http://sass-lang.com/"
-LICENSE="MIT"
-
-KEYWORDS="amd64 arm ~arm64 ppc ppc64 x86 ~amd64-linux"
-SLOT="$(get_version_component_range 1-2)"
-IUSE=""
-
-ruby_add_bdepend "doc? ( >=dev-ruby/yard-0.5.3 )"
-
-ruby_add_rdepend ">=dev-ruby/listen-1.3.1:1 !!<dev-ruby/haml-3.1 !!<dev-ruby/sass-3.2.19-r1:0 !!<dev-ruby/sass-3.3.14-r1:3.3"
-
-# tests could use `less` if we had it
-
-all_ruby_prepare() {
- rm -rf vendor/listen || die
-
- # Don't require maruku as markdown provider but let yard decide.
- sed -i -e '/maruku/d' .yardopts || die
-}
-
-each_ruby_test() {
- RUBOCOP=false ${RUBY} -S rake test:ruby || die
-}
diff --git a/dev-ruby/sass/sass-3.5.7-r1.ebuild b/dev-ruby/sass/sass-3.5.7-r1.ebuild
deleted file mode 100644
index e6dbd5011f68..000000000000
--- a/dev-ruby/sass/sass-3.5.7-r1.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="rails init.rb VERSION VERSION_DATE VERSION_NAME"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="An extension of CSS3, adding nested rules, variables, mixins, and more"
-HOMEPAGE="https://sass-lang.com/"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-SLOT="$(ver_cut 1-2)"
-IUSE=""
-
-ruby_add_bdepend "doc? ( >=dev-ruby/yard-0.5.3 )"
-
-ruby_add_rdepend "
- !!<dev-ruby/sass-3.2.19-r1:0
- !!<dev-ruby/sass-3.4.25-r1:3.4
- dev-ruby/sass-listen:4"
-
-# tests could use `less` if we had it
-
-all_ruby_prepare() {
- # Don't require maruku as markdown provider but let yard decide.
- sed -i -e '/maruku/d' .yardopts || die
-
- # Keep VERSION_DATE around since we don't create a new package
- sed -i -e '/at_exit/,/end/ s:^:#:' Rakefile || die
-}
-
-each_ruby_test() {
- RUBOCOP=false ${RUBY} -S rake test:ruby || die
-}
diff --git a/dev-ruby/sass/sass-3.5.7.ebuild b/dev-ruby/sass/sass-3.5.7.ebuild
deleted file mode 100644
index a4897e682e2f..000000000000
--- a/dev-ruby/sass/sass-3.5.7.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="rails init.rb VERSION VERSION_DATE VERSION_NAME"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="An extension of CSS3, adding nested rules, variables, mixins, and more"
-HOMEPAGE="https://sass-lang.com/"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-SLOT="$(ver_cut 1-2)"
-IUSE=""
-
-ruby_add_bdepend "doc? ( >=dev-ruby/yard-0.5.3 )"
-
-ruby_add_rdepend "
- !!<dev-ruby/sass-3.2.19-r1:0
- !!<dev-ruby/sass-3.4.25-r1:3.4
- dev-ruby/sass-listen:4"
-
-# tests could use `less` if we had it
-
-all_ruby_prepare() {
- # Don't require maruku as markdown provider but let yard decide.
- sed -i -e '/maruku/d' .yardopts || die
-
- # Keep VERSION_DATE around since we don't create a new package
- sed -i -e '/at_exit/,/end/ s:^:#:' Rakefile || die
-}
-
-each_ruby_test() {
- RUBOCOP=false ${RUBY} -S rake test:ruby || die
-}
diff --git a/dev-ruby/sass/sass-3.7.3.ebuild b/dev-ruby/sass/sass-3.7.3.ebuild
deleted file mode 100644
index 81aa78559966..000000000000
--- a/dev-ruby/sass/sass-3.7.3.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="rails init.rb VERSION VERSION_NAME"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="An extension of CSS3, adding nested rules, variables, mixins, and more"
-HOMEPAGE="https://sass-lang.com/"
-SRC_URI="https://github.com/sass/ruby-sass/archive/${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="ruby-sass-${PV}"
-
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-SLOT="$(ver_cut 1-2)"
-IUSE=""
-
-ruby_add_bdepend "doc? ( >=dev-ruby/yard-0.5.3 )"
-
-ruby_add_rdepend "
- !!<dev-ruby/sass-3.2.19-r1:0
- !!<dev-ruby/sass-3.4.25-r1:3.4
- !!<dev-ruby/sass-3.5.7-r1:3.5
- dev-ruby/sass-listen:4"
-
-# tests could use `less` if we had it
-
-all_ruby_prepare() {
- # Don't require maruku as markdown provider but let yard decide.
- sed -i -e '/maruku/d' .yardopts || die
-
- # Keep VERSION_DATE around since we don't create a new package
- sed -i -e '/at_exit/,/end/ s:^:#:' Rakefile || die
-}
-
-each_ruby_test() {
- RUBOCOP=false ${RUBY} -S rake test:ruby || die
-}
diff --git a/dev-ruby/sass/sass-3.7.4-r2.ebuild b/dev-ruby/sass/sass-3.7.4-r2.ebuild
new file mode 100644
index 000000000000..06df40183f11
--- /dev/null
+++ b/dev-ruby/sass/sass-3.7.4-r2.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="rails init.rb VERSION VERSION_NAME"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An extension of CSS3, adding nested rules, variables, mixins, and more"
+HOMEPAGE="https://sass-lang.com/"
+SRC_URI="https://github.com/sass/ruby-sass/archive/${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="ruby-sass-${PV}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~sparc x86 ~amd64-linux"
+IUSE="doc test"
+
+ruby_add_bdepend "
+ doc? ( >=dev-ruby/yard-0.5.3 )
+ test? ( dev-ruby/minitest )
+"
+
+ruby_add_rdepend "
+ !!<dev-ruby/sass-3.4.25-r1:3.4
+ !!<dev-ruby/sass-3.5.7-r1:3.5
+ dev-ruby/listen
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.7.4-use-listen-not-sass-listen.patch
+)
+
+# tests could use `less` if we had it
+
+all_ruby_prepare() {
+ # We use dev-ruby/listen now instead of dev-ruby/sass-listen
+ sed -i \
+ -e "/sass-listen/s:, '~> 4.0.0'::" \
+ -e "s:sass-listen:listen:" \
+ ${PN}.gemspec || die
+
+ # Don't require maruku as markdown provider but let yard decide.
+ sed -i -e '/maruku/d' .yardopts || die
+
+ # Keep VERSION_DATE around since we don't create a new package
+ sed -i -e '/at_exit/,/end/ s:^:#:' Rakefile || die
+
+ # Fix minitest deprecations
+ sed -e 's/MiniTest/Minitest/' \
+ -i test/test_helper.rb test/sass/test_helper.rb test/sass/*_test.rb test/sass/{scss,util}/*_test.rb || die
+}
+
+each_ruby_test() {
+ RUBOCOP=false ${RUBY} -S rake test:ruby || die
+}
diff --git a/dev-ruby/sass/sass-3.7.4.ebuild b/dev-ruby/sass/sass-3.7.4.ebuild
deleted file mode 100644
index 81aa78559966..000000000000
--- a/dev-ruby/sass/sass-3.7.4.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="rails init.rb VERSION VERSION_NAME"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="An extension of CSS3, adding nested rules, variables, mixins, and more"
-HOMEPAGE="https://sass-lang.com/"
-SRC_URI="https://github.com/sass/ruby-sass/archive/${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="ruby-sass-${PV}"
-
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-SLOT="$(ver_cut 1-2)"
-IUSE=""
-
-ruby_add_bdepend "doc? ( >=dev-ruby/yard-0.5.3 )"
-
-ruby_add_rdepend "
- !!<dev-ruby/sass-3.2.19-r1:0
- !!<dev-ruby/sass-3.4.25-r1:3.4
- !!<dev-ruby/sass-3.5.7-r1:3.5
- dev-ruby/sass-listen:4"
-
-# tests could use `less` if we had it
-
-all_ruby_prepare() {
- # Don't require maruku as markdown provider but let yard decide.
- sed -i -e '/maruku/d' .yardopts || die
-
- # Keep VERSION_DATE around since we don't create a new package
- sed -i -e '/at_exit/,/end/ s:^:#:' Rakefile || die
-}
-
-each_ruby_test() {
- RUBOCOP=false ${RUBY} -S rake test:ruby || die
-}
diff --git a/dev-ruby/sassc-rails/Manifest b/dev-ruby/sassc-rails/Manifest
index cb0fc535dcb6..e2ffad0593bb 100644
--- a/dev-ruby/sassc-rails/Manifest
+++ b/dev-ruby/sassc-rails/Manifest
@@ -1,2 +1 @@
-DIST sassc-rails-2.1.1.gem 33280 BLAKE2B eaa66fa6bfa60a41c8b2a180ac58758d860feaa33aad6a92b28b3224361837281c353041f854317591ef4ae99a6e48f00d8cb31fdf1e5c6a12f58fb24809d615 SHA512 d612a0c5d0d4f55600f8f9734f5bcf30c62c2bcd657b917ee13e95b7f7c3c08b2b4cb2b62b75c52e08992b254279aa4988c3e94b56b91490532b2382dc0d8555
DIST sassc-rails-2.1.2.gem 33280 BLAKE2B 1ecd048a879ea9ba08390ed81c679a3a4461f3937d1b0ce5ee001810067286f386ea885787984ffa417d2af191f178563e892ea24f1b466b6538c815fadbd9e3 SHA512 d250f22a3f2c4afb56a22f4533194d80b8a301730e5e4b49f9613e489f7158e7bd9c02cff8e1ec8ce727ede25f1c03a2613a664291967b5e97e210f7890d0bc8
diff --git a/dev-ruby/sassc-rails/files/sassc-rails-2.1.2-test-directories.patch b/dev-ruby/sassc-rails/files/sassc-rails-2.1.2-test-directories.patch
new file mode 100644
index 000000000000..dd4ae709084c
--- /dev/null
+++ b/dev-ruby/sassc-rails/files/sassc-rails-2.1.2-test-directories.patch
@@ -0,0 +1,73 @@
+From 9b653021e7a5a192758968a81b0dc81c68f298d0 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch@redhat.com>
+Date: Mon, 27 Feb 2023 16:38:38 +0100
+Subject: [PATCH] Run test cases in separate test directories
+
+This is in preparation to be able to run the tests in isolation, because
+recent versions of Rails does not allow multiple to calls to
+`initialize!`.
+---
+ test/sassc_rails_test.rb | 15 +++++++++------
+ 1 file changed, 9 insertions(+), 6 deletions(-)
+
+diff --git a/test/sassc_rails_test.rb b/test/sassc_rails_test.rb
+index a15110d..f8c36e4 100644
+--- a/test/sassc_rails_test.rb
++++ b/test/sassc_rails_test.rb
+@@ -4,14 +4,18 @@
+
+ class SassRailsTest < MiniTest::Test
+ attr_reader :app
++ attr_reader :test_dir
+
+ def setup
+ Rails.application = nil
+
++ @test_dir = Dir.mktmpdir("sassc-rails")
++ FileUtils.cp_r File.join(File.dirname(__FILE__), "dummy"), test_dir
++
+ @app = Class.new(Rails::Application)
+ @app.config.active_support.deprecation = :log
+ @app.config.eager_load = false
+- @app.config.root = File.join(File.dirname(__FILE__), "dummy")
++ @app.config.root = File.join(test_dir, "dummy")
+ @app.config.log_level = :debug
+
+ # reset config back to default
+@@ -30,8 +34,7 @@ def setup
+ end
+
+ def teardown
+- directory = "#{Rails.root}/tmp"
+- FileUtils.remove_dir(directory) if File.directory?(directory)
++ FileUtils.remove_dir(test_dir) if File.directory?(test_dir)
+ end
+
+ def render_asset(asset)
+@@ -169,7 +172,7 @@ def test_line_comments_active_in_dev
+
+ css_output = render_asset("css_scss_handler.css")
+ assert_match %r{/* line 1}, css_output
+- assert_match %r{.+test/dummy/app/assets/stylesheets/css_scss_handler.css.scss}, css_output
++ assert_match %r{.+#{test_dir}/dummy/app/assets/stylesheets/css_scss_handler.css.scss}, css_output
+ end
+
+ def test_context_is_being_passed_to_erb_render
+@@ -287,7 +290,7 @@ def test_globbed_imports_work_when_globbed_file_is_changed
+ begin
+ initialize!
+
+- new_file = File.join(File.dirname(__FILE__), 'dummy', 'app', 'assets', 'stylesheets', 'globbed', 'new_glob.scss')
++ new_file = File.join(test_dir, 'dummy', 'app', 'assets', 'stylesheets', 'globbed', 'new_glob.scss')
+
+ File.open(new_file, 'w') do |file|
+ file.puts '.new-file-test { color: #000; }'
+@@ -314,7 +317,7 @@ def test_globbed_imports_work_when_globbed_file_is_added
+
+ css_output = render_asset("glob_test.css")
+ refute_match /changed-file-test/, css_output
+- new_file = File.join(File.dirname(__FILE__), 'dummy', 'app', 'assets', 'stylesheets', 'globbed', 'new_glob.scss')
++ new_file = File.join(test_dir, 'dummy', 'app', 'assets', 'stylesheets', 'globbed', 'new_glob.scss')
+
+ File.open(new_file, 'w') do |file|
+ file.puts '.changed-file-test { color: #000; }'
diff --git a/dev-ruby/sassc-rails/files/sassc-rails-2.1.2-test-isolation.patch b/dev-ruby/sassc-rails/files/sassc-rails-2.1.2-test-isolation.patch
new file mode 100644
index 000000000000..afd2274fe0a0
--- /dev/null
+++ b/dev-ruby/sassc-rails/files/sassc-rails-2.1.2-test-isolation.patch
@@ -0,0 +1,90 @@
+From d2f47f3f7d6ea382a45b87042dfebde7dfe57b9a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch@redhat.com>
+Date: Mon, 27 Feb 2023 16:43:07 +0100
+Subject: [PATCH] Run the test cases in isolation
+
+This is to prevent test errors in recent versions of Rails such as:
+
+~~~
+SassRailsTest#test_setup_works:
+FrozenError: can't modify frozen Array: []
+ railties (7.0.4.2) lib/rails/engine.rb:574:in `unshift'
+ railties (7.0.4.2) lib/rails/engine.rb:574:in `block in <class:Engine>'
+ railties (7.0.4.2) lib/rails/initializable.rb:32:in `instance_exec'
+ railties (7.0.4.2) lib/rails/initializable.rb:32:in `run'
+ railties (7.0.4.2) lib/rails/initializable.rb:61:in `block in run_initializers'
+ usr/share/ruby/tsort.rb:228:in `block in tsort_each'
+ usr/share/ruby/tsort.rb:350:in `block (2 levels) in each_strongly_connected_component'
+ usr/share/ruby/tsort.rb:422:in `block (2 levels) in each_strongly_connected_component_from'
+ usr/share/ruby/tsort.rb:422:in `block (2 levels) in each_strongly_connected_component_from'
+ usr/share/ruby/tsort.rb:431:in `each_strongly_connected_component_from'
+ usr/share/ruby/tsort.rb:421:in `block in each_strongly_connected_component_from'
+ railties (7.0.4.2) lib/rails/initializable.rb:50:in `each'
+ railties (7.0.4.2) lib/rails/initializable.rb:50:in `tsort_each_child'
+ usr/share/ruby/tsort.rb:415:in `call'
+ usr/share/ruby/tsort.rb:415:in `each_strongly_connected_component_from'
+ usr/share/ruby/tsort.rb:421:in `block in each_strongly_connected_component_from'
+ railties (7.0.4.2) lib/rails/initializable.rb:50:in `each'
+ railties (7.0.4.2) lib/rails/initializable.rb:50:in `tsort_each_child'
+ usr/share/ruby/tsort.rb:415:in `call'
+ usr/share/ruby/tsort.rb:415:in `each_strongly_connected_component_from'
+ usr/share/ruby/tsort.rb:349:in `block in each_strongly_connected_component'
+ usr/share/ruby/tsort.rb:347:in `each'
+ usr/share/ruby/tsort.rb:347:in `call'
+ usr/share/ruby/tsort.rb:347:in `each_strongly_connected_component'
+ usr/share/ruby/tsort.rb:226:in `tsort_each'
+ usr/share/ruby/tsort.rb:205:in `tsort_each'
+ railties (7.0.4.2) lib/rails/initializable.rb:60:in `run_initializers'
+ railties (7.0.4.2) lib/rails/application.rb:372:in `initialize!'
+ railties (7.0.4.2) lib/rails/railtie.rb:226:in `public_send'
+ railties (7.0.4.2) lib/rails/railtie.rb:226:in `method_missing'
+ builddir/build/BUILD/sassc-rails-2.1.2/usr/share/gems/gems/sassc-rails-2.1.2/test/sassc_rails_test.rb:48:in `initialize_dev!'
+ builddir/build/BUILD/sassc-rails-2.1.2/usr/share/gems/gems/sassc-rails-2.1.2/test/sassc_rails_test.rb:57:in `test_setup_works'
+ minitest (5.17.0) lib/minitest/test.rb:102:in `block (3 levels) in run'
+ minitest (5.17.0) lib/minitest/test.rb:199:in `capture_exceptions'
+ minitest (5.17.0) lib/minitest/test.rb:97:in `block (2 levels) in run'
+ minitest (5.17.0) lib/minitest.rb:296:in `time_it'
+ minitest (5.17.0) lib/minitest/test.rb:96:in `block in run'
+ minitest (5.17.0) lib/minitest.rb:391:in `on_signal'
+ minitest (5.17.0) lib/minitest/test.rb:247:in `with_info_handler'
+ minitest (5.17.0) lib/minitest/test.rb:95:in `run'
+ minitest (5.17.0) lib/minitest.rb:1051:in `run_one_method'
+ minitest (5.17.0) lib/minitest.rb:365:in `run_one_method'
+ minitest (5.17.0) lib/minitest.rb:352:in `block (2 levels) in run'
+ minitest (5.17.0) lib/minitest.rb:351:in `each'
+ minitest (5.17.0) lib/minitest.rb:351:in `block in run'
+ minitest (5.17.0) lib/minitest.rb:391:in `on_signal'
+ minitest (5.17.0) lib/minitest.rb:378:in `with_info_handler'
+ minitest (5.17.0) lib/minitest.rb:350:in `run'
+ minitest (5.17.0) lib/minitest.rb:182:in `block in __run'
+ minitest (5.17.0) lib/minitest.rb:182:in `map'
+ minitest (5.17.0) lib/minitest.rb:182:in `__run'
+ minitest (5.17.0) lib/minitest.rb:159:in `run'
+ minitest (5.17.0) lib/minitest.rb:83:in `block in autorun'
+rails test /builddir/build/BUILD/sassc-rails-2.1.2/usr/share/gems/gems/sassc-rails-2.1.2/test/sassc_rails_test.rb:56
+~~~
+
+This is caused by multiple calls to `initialize!` method and very likely
+due to this commit in Rails:
+
+https://github.com/rails/rails/commit/fe4377098b3800c3998f0583549a414b99b72b19
+---
+ test/sassc_rails_test.rb | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/test/sassc_rails_test.rb b/test/sassc_rails_test.rb
+index f8c36e4..36686cb 100644
+--- a/test/sassc_rails_test.rb
++++ b/test/sassc_rails_test.rb
+@@ -1,8 +1,11 @@
+ # frozen_string_literal: true
+
+ require "test_helper"
++require 'active_support/testing/isolation'
+
+ class SassRailsTest < MiniTest::Test
++ include ActiveSupport::Testing::Isolation
++
+ attr_reader :app
+ attr_reader :test_dir
+
diff --git a/dev-ruby/sassc-rails/metadata.xml b/dev-ruby/sassc-rails/metadata.xml
index 6cc4ce8447fb..32c0fad0966b 100644
--- a/dev-ruby/sassc-rails/metadata.xml
+++ b/dev-ruby/sassc-rails/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/sassc-rails/sassc-rails-2.1.1.ebuild b/dev-ruby/sassc-rails/sassc-rails-2.1.1.ebuild
deleted file mode 100644
index ca9443f56d99..000000000000
--- a/dev-ruby/sassc-rails/sassc-rails-2.1.1.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Integrate SassC-Ruby with Rails"
-HOMEPAGE="https://github.com/sass/sassc-rails"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/sassc-2.0
- dev-ruby/tilt:*
- >=dev-ruby/railties-4:*
- >=dev-ruby/sprockets-3.0:*
- dev-ruby/sprockets-rails:*
-"
-
-ruby_add_bdepend "
- test? ( dev-ruby/bundler dev-ruby/mocha )"
-
-all_ruby_prepare() {
- sed -i -e '/rake/ s/,.*$//' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- ${RUBY} -S bundle exec rake test || die
-}
diff --git a/dev-ruby/sassc-rails/sassc-rails-2.1.2-r3.ebuild b/dev-ruby/sassc-rails/sassc-rails-2.1.2-r3.ebuild
new file mode 100644
index 000000000000..8be99f2eddbb
--- /dev/null
+++ b/dev-ruby/sassc-rails/sassc-rails-2.1.2-r3.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Integrate SassC-Ruby with Rails"
+HOMEPAGE="https://github.com/sass/sassc-rails"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+
+IUSE=""
+
+PATCHES=( "${FILESDIR}/${P}-test-directories.patch" "${FILESDIR}/${P}-test-isolation.patch" )
+
+ruby_add_rdepend "
+ >=dev-ruby/sassc-2.0
+ dev-ruby/tilt:*
+ || ( dev-ruby/railties:7.0 dev-ruby/railties:6.1 )
+ >=dev-ruby/sprockets-3.0:*
+ dev-ruby/sprockets-rails:*
+"
+
+ruby_add_bdepend "
+ test? ( dev-ruby/bundler dev-ruby/mocha )"
+
+all_ruby_prepare() {
+ sed -e '/rake/ s/,.*$//' \
+ -e '/pry/ s:^:#:' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+ sed -i -e '/pry/ s:^:#:' test/test_helper.rb || die
+ sed -e '/test_line_comments_active_in_dev/askip "Fails for unknown reason"' \
+ -e '/test_globbed_imports_work_when_globbed_file_is_added/askip "Fails intermittently, similar to test above"' \
+ -e 's/MiniTest/Minitest/' \
+ -i test/sassc_rails_test.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -S bundle exec rake test || die
+}
diff --git a/dev-ruby/sassc-rails/sassc-rails-2.1.2.ebuild b/dev-ruby/sassc-rails/sassc-rails-2.1.2.ebuild
deleted file mode 100644
index ca9443f56d99..000000000000
--- a/dev-ruby/sassc-rails/sassc-rails-2.1.2.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Integrate SassC-Ruby with Rails"
-HOMEPAGE="https://github.com/sass/sassc-rails"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1)"
-KEYWORDS="~amd64"
-
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/sassc-2.0
- dev-ruby/tilt:*
- >=dev-ruby/railties-4:*
- >=dev-ruby/sprockets-3.0:*
- dev-ruby/sprockets-rails:*
-"
-
-ruby_add_bdepend "
- test? ( dev-ruby/bundler dev-ruby/mocha )"
-
-all_ruby_prepare() {
- sed -i -e '/rake/ s/,.*$//' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- ${RUBY} -S bundle exec rake test || die
-}
diff --git a/dev-ruby/sassc/Manifest b/dev-ruby/sassc/Manifest
index 068539fa3630..64a5d824ffef 100644
--- a/dev-ruby/sassc/Manifest
+++ b/dev-ruby/sassc/Manifest
@@ -1 +1 @@
-DIST sassc-2.0.1.gem 357888 BLAKE2B 670a622edc065abd7124a413bff3e32e524703cd3343ae7ffd1439af075e04d513ee125ddbd9ff81ffd7eadbb2dd935a83dc71334252b681fb478da9aad06181 SHA512 cece2741e316eeb4684a5650627bb2a9f161bfd99a3c93c2bf8b7d40f47ff064ee837831b1f9ad77d9e321bbd9874301762c9f0519b2b42658cbea6fd7240fcd
+DIST sassc-2.4.0.gem 304640 BLAKE2B a4cd96859855cfd26e78a35becba30af8b7ee52d8ba67f7dcbc6354786f26e60a312be4e773f515f6edda6623142249a4a470f418d9fae3db734f8ae11498dc8 SHA512 835ba03d0fc5a791b2d620367f63202973f778bd8ebaa87c27f6a1de75b5895270205e8746fbb242d2739c9830a27d72453a75c1b536090840de581c52caade6
diff --git a/dev-ruby/sassc/metadata.xml b/dev-ruby/sassc/metadata.xml
index 7e5ec7336939..b02c880ee9bf 100644
--- a/dev-ruby/sassc/metadata.xml
+++ b/dev-ruby/sassc/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/sassc/sassc-2.0.1-r1.ebuild b/dev-ruby/sassc/sassc-2.0.1-r1.ebuild
deleted file mode 100644
index 5ed366f5d0cb..000000000000
--- a/dev-ruby/sassc/sassc-2.0.1-r1.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="sassc.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Use libsass with Ruby"
-HOMEPAGE="https://github.com/sass/sassc-ruby"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="2"
-IUSE=""
-
-RDEPEND+=">=dev-libs/libsass-3.5.5"
-
-ruby_add_rdepend "
- >=dev-ruby/ffi-1.9.6
- dev-ruby/rake
-"
-
-ruby_add_bdepend "test? (
- dev-ruby/test_construct
- dev-ruby/minitest-around
-)"
-
-all_ruby_prepare() {
- # Use unbundled libsass
- rm -rf ext || die
-
- sed -i -e '/spec =/,/ffi_lib/ s:^:#:' \
- -e '/ffi_lib/a ffi_lib "/usr/lib64/libsass.so"' \
- lib/sassc/native.rb || die
-
- # Avoid version-specific test so newer libsass versions can be used.
- sed -i -e '/test_it_reports_the_libsass_version/,/end/ s:^:#:' test/native_test.rb || die
-
- sed -i -e '/pry/ s:^:#:' test/test_helper.rb || die
-
- sed -e 's/git ls-files -z/find . -print0/' \
- -e '/gem_dir/,/^ end/ s:^:#:' \
- -i ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/sassc/sassc-2.4.0-r1.ebuild b/dev-ruby/sassc/sassc-2.4.0-r1.ebuild
new file mode 100644
index 000000000000..a2d18d74f317
--- /dev/null
+++ b/dev-ruby/sassc/sassc-2.4.0-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Use libsass with Ruby"
+HOMEPAGE="https://github.com/sass/sassc-ruby"
+LICENSE="MIT"
+
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~sparc x86"
+SLOT="2"
+IUSE=""
+
+RDEPEND+=">=dev-libs/libsass-3.6.1"
+
+ruby_add_rdepend "
+ >=dev-ruby/ffi-1.9.6
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/test_construct
+ dev-ruby/minitest-around
+)"
+
+all_ruby_prepare() {
+ # Use unbundled libsass
+ rm -rf ext || die
+
+ sed -i -e "/ffi_lib/ s:__dir__:\"${ESYSROOT}/usr/$(get_libdir)\":" \
+ lib/sassc/native.rb || die
+
+ # Avoid version-specific test so newer libsass versions can be used.
+ sed -i -e '/test_it_reports_the_libsass_version/,/end/ s:^:#:' test/native_test.rb || die
+
+ # Fix minitest deprecation
+ sed -i -e 's/MiniTest/Minitest/' test/*_test.rb || die
+
+ sed -i -e '/pry/ s:^:#:' test/test_helper.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/**/*_test.rb"].each{|f| require f}' || die
+}
+
+each_ruby_install() {
+ each_fakegem_install
+ ruby_fakegem_extensions_installed
+}
diff --git a/dev-ruby/sawyer/Manifest b/dev-ruby/sawyer/Manifest
index 436db72d48ed..c78b1e4e730c 100644
--- a/dev-ruby/sawyer/Manifest
+++ b/dev-ruby/sawyer/Manifest
@@ -1 +1 @@
-DIST sawyer-0.8.2.tar.gz 15059 BLAKE2B 11a82158493fba69695b4eee15db223a07ebd81f8e39910553ef197a253a3342cffd00045385706c56c6f5e46bf4e20872cf61028acaf02d6f81fa2f640fc09b SHA512 fdaf88d33d87922bd0d44de919b920938b7072ad437db4b98370c507e22e4229ec0c68c613944fd2e20dde060ae5d34de6c001568eb7d1f38098831ca29b0c13
+DIST sawyer-0.9.2.tar.gz 15545 BLAKE2B 83fc7b6776e888ed4f26a21febc93edf954a1d926c14311078b5ecf7db57614472ed42d33ffc30bceb23c4ea1f1b1047cf3c1a0be9feecb4a3c92458938c6c03 SHA512 560c5bb6fd8f73f68b4dc1151608bc3b1f60aec511fef449cd6361a1307e2c1bf64cfa6cc7ad951ce92db22ce90f3318668af31708f0c1ee5909db3684566c72
diff --git a/dev-ruby/sawyer/metadata.xml b/dev-ruby/sawyer/metadata.xml
index 26176ca29e7f..b24cd26a0d27 100644
--- a/dev-ruby/sawyer/metadata.xml
+++ b/dev-ruby/sawyer/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/sawyer/sawyer-0.8.2.ebuild b/dev-ruby/sawyer/sawyer-0.8.2.ebuild
deleted file mode 100644
index 71b54f56e4c6..000000000000
--- a/dev-ruby/sawyer/sawyer-0.8.2.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Secret User Agent of HTTP"
-HOMEPAGE="https://github.com/lostisland/sawyer"
-SRC_URI="https://github.com/lostisland/sawyer/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- <dev-ruby/faraday-2.0
- >=dev-ruby/addressable-2.3.5"
-
-all_ruby_prepare() {
- # Avoid tests that require network acces
- sed -i -e '/test_blank_response_doesnt_raise/,/^ end/ s:^:#:' test/agent_test.rb || die
-}
diff --git a/dev-ruby/sawyer/sawyer-0.9.2.ebuild b/dev-ruby/sawyer/sawyer-0.9.2.ebuild
new file mode 100644
index 000000000000..e50de92104ae
--- /dev/null
+++ b/dev-ruby/sawyer/sawyer-0.9.2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="sawyer.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Secret User Agent of HTTP"
+HOMEPAGE="https://github.com/lostisland/sawyer"
+SRC_URI="https://github.com/lostisland/sawyer/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+
+ruby_add_rdepend "
+ <dev-ruby/faraday-3:*
+ >=dev-ruby/addressable-2.3.5
+"
+
+all_ruby_prepare() {
+ # Avoid tests that require network access
+ sed -i -e '/test_blank_response_doesnt_raise/,/^ end/ s:^:#:' test/agent_test.rb || die
+}
diff --git a/dev-ruby/sdoc/Manifest b/dev-ruby/sdoc/Manifest
index 076613d81395..328667494e35 100644
--- a/dev-ruby/sdoc/Manifest
+++ b/dev-ruby/sdoc/Manifest
@@ -1 +1 @@
-DIST sdoc-1.0.0.gem 268800 BLAKE2B 238b36af9909e7329f6b54e297b4e03f27e8850bee2cb65483c9b912b92c16933639fba5f085ae8c30f808cbd6a94d1b34b5bb45af3f1d9a7fc37a4ea45f32f8 SHA512 cee8be23a2bc53dc3e052e183405ae17546594e2b1b87b7d83c8dc527b2c4bd71a5f642f52ae489f4990ba5d3571c23b590b6a562d677b32597cdeeb08c63a38
+DIST sdoc-1.1.0.gem 269312 BLAKE2B d830a0477bb2a46f8f4c08b0249293ca56d5a398eab36dd1a91f4fdb134611065053f1d445697f249be3fb2d672f2ed95a462f045c953b48e9bdfd30b147a675 SHA512 7bd6bc4725b020adb504ec5c2cbc7387f46e8cddc8c3be5643c1808f203d0663326958c2d039fbb3c384369be1ff1363c162c8868b8906605de76a1e60a3c0a1
diff --git a/dev-ruby/sdoc/metadata.xml b/dev-ruby/sdoc/metadata.xml
index 7e0cab6db3ea..00703716e979 100644
--- a/dev-ruby/sdoc/metadata.xml
+++ b/dev-ruby/sdoc/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
diff --git a/dev-ruby/sdoc/sdoc-1.0.0.ebuild b/dev-ruby/sdoc/sdoc-1.0.0.ebuild
deleted file mode 100644
index 7fca6821b724..000000000000
--- a/dev-ruby/sdoc/sdoc-1.0.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-fakegem
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-DESCRIPTION="rdoc generator html with javascript search index"
-HOMEPAGE="https://rubygems.org/gems/sdoc"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/rdoc-5.0"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i -e '/git ls-files/ s:^:#:' sdoc.gemspec || die
-
- sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/sdoc/sdoc-1.1.0-r1.ebuild b/dev-ruby/sdoc/sdoc-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..c30c7dc8d7ab
--- /dev/null
+++ b/dev-ruby/sdoc/sdoc-1.1.0-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="rdoc generator html with javascript search index"
+HOMEPAGE="https://rubygems.org/gems/sdoc"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ppc ~riscv ~sparc ~x86"
+
+ruby_add_rdepend ">=dev-ruby/rdoc-5.0"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e '/git ls-files/ s:^:#:' sdoc.gemspec || die
+
+ sed -i -e '/bundler/I s:^:#:' Rakefile spec/spec_helper.rb || die
+
+ # Avoid spec that appears to be broken with newer rdoc versions.
+ sed -i -e '/should display SDoc version/askip' spec/rdoc_generator_spec.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -I lib:spec:. -e 'Dir["spec/*_spec.rb"].each { require _1 }' || die
+}
diff --git a/dev-ruby/securerandom/Manifest b/dev-ruby/securerandom/Manifest
new file mode 100644
index 000000000000..b3873f9a4aa8
--- /dev/null
+++ b/dev-ruby/securerandom/Manifest
@@ -0,0 +1,2 @@
+DIST securerandom-0.3.0.tar.gz 10302 BLAKE2B a5dd123fa6d48eebda20eaee70152c237b5018e8c04fbd83f4d8d53b2459453fc0676265341e26328252a5acf3a675f4455f04331a2698ece40bb693a554fbe4 SHA512 a61901b3de95007cb9296e0555ec36ca3ea4aa0a0ed55b0e6a1e5b53ca79240dd93e3d59ef1b6914e4cd646d038f499695196b8348eb829fd8822406a7fc7cb6
+DIST securerandom-0.3.1.tar.gz 10593 BLAKE2B bfa122d91f356c3164924ba0409e74da10822ee2298293adeb3c066c5f1d89e4b84755c4b46e970eec3fbce29cef41c698c69eb55bec200acb36446a04635c00 SHA512 1d312c66d6e66afce3d8e812a5fd9baa1a763d022b184227d758aed26d97d12ab69ed16c62163a76d6bc0eac4d4219f0f63bdd846a0078bb0c6a19b67e27cca3
diff --git a/dev-ruby/securerandom/metadata.xml b/dev-ruby/securerandom/metadata.xml
new file mode 100644
index 000000000000..f615da12f671
--- /dev/null
+++ b/dev-ruby/securerandom/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/securerandom</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/securerandom/securerandom-0.3.0.ebuild b/dev-ruby/securerandom/securerandom-0.3.0.ebuild
new file mode 100644
index 000000000000..234e636a26d7
--- /dev/null
+++ b/dev-ruby/securerandom/securerandom-0.3.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="securerandom.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Interface for secure random number generator"
+HOMEPAGE="https://github.com/ruby/securerandom"
+SRC_URI="https://github.com/ruby/securerandom/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/securerandom/securerandom-0.3.1.ebuild b/dev-ruby/securerandom/securerandom-0.3.1.ebuild
new file mode 100644
index 000000000000..b7de3a467068
--- /dev/null
+++ b/dev-ruby/securerandom/securerandom-0.3.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="securerandom.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Interface for secure random number generator"
+HOMEPAGE="https://github.com/ruby/securerandom"
+SRC_URI="https://github.com/ruby/securerandom/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/seed-fu/metadata.xml b/dev-ruby/seed-fu/metadata.xml
index bdf071173cfb..f9a4a9bd1898 100644
--- a/dev-ruby/seed-fu/metadata.xml
+++ b/dev-ruby/seed-fu/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/seed-fu/seed-fu-2.3.9-r1.ebuild b/dev-ruby/seed-fu/seed-fu-2.3.9-r1.ebuild
new file mode 100644
index 000000000000..eb703873cbe3
--- /dev/null
+++ b/dev-ruby/seed-fu/seed-fu-2.3.9-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_GEMSPEC="seed-fu.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_DOCDIR="doc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Advanced seed data handling for Rails"
+HOMEPAGE="https://github.com/mbleigh/seed-fu"
+SRC_URI="https://github.com/mbleigh/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/activerecord-3.1:*
+ >=dev-ruby/activesupport-3.1:*"
+ruby_add_bdepend "test? ( dev-ruby/sqlite3 )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/d' spec/spec_helper.rb || die "sed failed"
+
+ # Avoid failing test that appears not be innocent
+ sed -i -e '/raise an ActiveRecord::RecordNotSaved/,/end/ s:^:#:' spec/seeder_spec.rb || die
+}
diff --git a/dev-ruby/seed-fu/seed-fu-2.3.9.ebuild b/dev-ruby/seed-fu/seed-fu-2.3.9.ebuild
deleted file mode 100644
index f4a51296aeba..000000000000
--- a/dev-ruby/seed-fu/seed-fu-2.3.9.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Advanced seed data handling for Rails"
-HOMEPAGE="https://github.com/mbleigh/seed-fu"
-SRC_URI="https://github.com/mbleigh/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_rdepend "
- >=dev-ruby/activerecord-3.1:*
- >=dev-ruby/activesupport-3.1:*"
-ruby_add_bdepend "test? ( dev-ruby/sqlite3 )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' spec/spec_helper.rb || die "sed failed"
-
- # Avoid failing test that appears not be innocent
- sed -i -e '/raise an ActiveRecord::RecordNotSaved/,/end/ s:^:#:' spec/seeder_spec.rb || die
-}
diff --git a/dev-ruby/selenium-webdriver/Manifest b/dev-ruby/selenium-webdriver/Manifest
index bc29ca86721c..ab6c40b274ce 100644
--- a/dev-ruby/selenium-webdriver/Manifest
+++ b/dev-ruby/selenium-webdriver/Manifest
@@ -1,8 +1,5 @@
-DIST selenium-webdriver-2.53.4.gem 897536 BLAKE2B 630b5e8cd5ce53de7a689135ce80e364e33b783bd8493f79af01d79717d3d65541fe04c6c0e5016a85af8a559864ddcb641d06c99430599b21095b54ff40845a SHA512 ad7934a67c4415a81c2d0efae5f510d41784411076ea903724e1fa2be1b209382131aa1b05f3636deb1deca38db6e76805262f5037ab2e621e785e4eb3c2b90e
-DIST selenium-webdriver-3.12.0.gem 843264 BLAKE2B f9a2e233658e071144f153f7710ec15cd58d8831793f7212d1d49a76d08d80c7110bcf1afc86e98210c6753d19ab2c63f169754f148db8a994fb777048c10b6d SHA512 1d5a510e3e7775c6b8c960de8a5f0ae2084f490c17084e8ba0894dc32021c9295c9301c6bf0ba07e0e9827a8d99ac9f9c5d29fbf57425a076825fe18e4a8f88f
-DIST selenium-webdriver-3.14.1.gem 860672 BLAKE2B 83026babf1596fc5c0621da19eb1ae48c3534448a5f4c3b6dbcb6141f2968eb527cbb667b45859a998b4950d8498dbd4a68ddcbbcadbe83fd02dcac46d2f2e4e SHA512 3671bc6446f49945b4484bce90e91178f932d799ac79b93974268eb2b9bc060c62f41c2f25436b7ea49612e1d9b014f1ca4f63dfc74b9781ddcb9c849f3be82d
-DIST selenium-webdriver-3.141.5926.gem 865280 BLAKE2B f1113b2e229788fcf2351d3ee48ee1a7ed8f5b4a35dd5d81697b41d54682a9348b657b79d931dc5bf0a17f7f0441d78eec766dcecd23da38b16b94923ae479e3 SHA512 f4333e62f241ddd325703361e7ccc064c9ac6471413ea6ee8d3bb57b7542fe7928d14223fabc7952fbc13fbbe8599b5cc5ff7dcbc390d4b7ddb5b479662a4ad2
-DIST selenium-webdriver-3.142.0.gem 865280 BLAKE2B b4175f4458727291659af21fff60268e022a241df73c502219f010d0d6d59a76b291894e4f70825c55587ed119692e27eb0394abd18aa5da83ded87581e083a0 SHA512 e0e2664dc500c99d0ff9163426b8049c7b4a03bd40616d4f2f0fc0ea2d67557e22853a61d374009e9e0ba3888f0e97f85e5cfa4eaa794c1158d41caff7a05686
-DIST selenium-webdriver-3.142.1.gem 865280 BLAKE2B d28d58cfbab64d83e28c65fa9b639f05dbab87c454ffde4507ce0a90e744006bea1e93b2fa35303b0bc17ff7423e84bb052a7f0072c7f915bdc758fb2ceabd86 SHA512 90746d11c5f7af086392ed70994d17c05c3cd5d839f743a5587c0e06dbc98f3882f4a5846cfef68110b4b4860c3980ac50e1017f9a445a296c0b0bde0ed18ecd
-DIST selenium-webdriver-3.142.2.gem 865280 BLAKE2B 8182b2eda9ab448c044a270d304364bf3f38bd1dd98580ae34c8e22fc0364a1b20629a7f91f3edd2d171fb03e76eb4762eec1cd6b255559a9809c6533cd484d2 SHA512 87998117e960812a26a09c2a45aad7145fec6be5fd3ff34a3a464969a720a7e04f39ebb93fdf7e56183f06f3e5e01e1f7441af80a1d061fc14fb186959030462
-DIST selenium-webdriver-3.142.3.gem 865280 BLAKE2B 9ff97810a1d377293b3d5f7dde91561856a4b44295b9d7ec04a8af257ebebe7765ed1ba32e7f072fceb0760b85358ce0fd10b43092a54bdbc8f42e2a9d54402d SHA512 048c1f82f1a53d4de610c5ff32acaa05907ef2d772c68d2d5ddb1fd232cf03eeef9c15ff1096a97acce026d0f4dd730ae35d7ae5d1b06ff3b49968f987704696
+DIST selenium-webdriver-4.1.0.gem 153088 BLAKE2B f437b5e6c19b9a2b7d0393646b11bcaa0808fb9981c847ca0d86bd55ef04fc109d439eb0f41fce543ea121fde096fe3e72c56d1db861b6554f673a3de07bdff8 SHA512 9760c6a96dbef25f558216986a9cedcb00fe19313273ea5c3a4866d5afae327fbe3895e3e2ee405714f8a9410c290b0e51352b68465cb0df9ff31b6d2749b174
+DIST selenium-webdriver-4.10.0.gem 5803008 BLAKE2B 898e795bbad23aca1343fa49c059963a9c3b0d3ab27b3e9521381cb70259ef76fa81bf9063ad82f7348266f20fed05352be2450be4e4356515b4a05e015c21a7 SHA512 9217022b0af08d5d4b24d412bea4423afd327314e260de0449d723a9232c4f0895a36626da009ce51c304bedc933195b434a9dc620da8daffc736b5fc9842f33
+DIST selenium-webdriver-4.11.0.gem 6300672 BLAKE2B bedbc18c14ab67c1bde05a35b5b66f1fb6da576d616a40d5293358efc51dfaa00f816d70e92578b1bee82de0a17ee39950eb69542ef2e661bd6a015f5f01032a SHA512 6f24440c44eb9a1276e1d016788b14bdf41fd466ed688ca7dbdc19b0e7163ff2354a508733f0903ede70fc6b49fbd05bd2ec9c5d0e0b70567823c4d07e3d1a9d
+DIST selenium-webdriver-4.14.0.gem 9017344 BLAKE2B 03e211398b79849c42e18928897f9ed847905d3e92edac35ba0ca1e4b7afa67ffa860a8c27617f8f06b4244fb6d637073a305b72b5422b3a3a372631c766f759 SHA512 72c8b68e387c0b02f3b4de617989eb813a67eb66457fcf3b6d098579c54aaba476aead5ba52bf86870ca857071da0d095b1fd97613bb961636a0f9ea8969e795
+DIST selenium-webdriver-4.15.0.gem 9260544 BLAKE2B 9d00b65bfb3e705e81de81057c860cc9ffd8e0da21e901187bf2951c14857c9358b6b20248c1f26ee16c26d5bf051a309534a28148b443a2da2b7fc97f5d5ed9 SHA512 e5aa61cdc82fd9a9eb9a56a83387f86cbd1918b2b7387bb7c201960ee033875208892eca4d9833018be8ee7e8937f0fe542d4eac6bd1330cf7f0a11fec61ce4a
diff --git a/dev-ruby/selenium-webdriver/files/selenium-webdriver-4.13.1-selenium-manager.patch b/dev-ruby/selenium-webdriver/files/selenium-webdriver-4.13.1-selenium-manager.patch
new file mode 100644
index 000000000000..b9d1635067f2
--- /dev/null
+++ b/dev-ruby/selenium-webdriver/files/selenium-webdriver-4.13.1-selenium-manager.patch
@@ -0,0 +1,20 @@
+--- a/lib/selenium/webdriver/common/selenium_manager.rb 2023-10-06 08:41:15.713237699 +0200
++++ b/lib/selenium/webdriver/common/selenium_manager.rb 2023-10-06 08:42:45.809927730 +0200
+@@ -31,7 +31,7 @@
+ attr_writer :bin_path
+
+ def bin_path
+- @bin_path ||= '../../../../../bin'
++ @bin_path ||= '/usr/bin'
+ end
+
+ # @param [Options] options browser options.
+@@ -82,7 +82,7 @@
+ elsif Platform.mac?
+ "#{directory}/macos/selenium-manager"
+ elsif Platform.linux?
+- "#{directory}/linux/selenium-manager"
++ "#{directory}/selenium-manager"
+ end
+ end)
+
diff --git a/dev-ruby/selenium-webdriver/metadata.xml b/dev-ruby/selenium-webdriver/metadata.xml
index fbb8f9f34fa8..5cfdc1d70d66 100644
--- a/dev-ruby/selenium-webdriver/metadata.xml
+++ b/dev-ruby/selenium-webdriver/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-2.53.4-r1.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-2.53.4-r1.ebuild
deleted file mode 100644
index 303687cb407c..000000000000
--- a/dev-ruby/selenium-webdriver/selenium-webdriver-2.53.4-r1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-# NOTE: this package contains precompiled code. It appears that all
-# source code can be found at https://code.google.com/p/selenium/ but the
-# repository is not organized in a way so that we can easily rebuild the
-# suited shared object. We'll just try our luck with the precompiled
-# objects for now.
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_QA_ALLOWED_LIBS="x_ignore_nofocus.so"
-QA_PREBUILT="*/x_ignore_nofocus.so"
-
-inherit ruby-fakegem
-
-DESCRIPTION="This gem provides Ruby bindings for WebDriver"
-HOMEPAGE="http://gemcutter.org/gems/selenium-webdriver"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/childprocess-0.5.0
- dev-ruby/rubyzip:1"
-
-all_ruby_prepare() {
- # Make websocket a development dependency since it is only needed
- # for the safari driver which we don't support on Gentoo.
- sed -i -e '/websocket/,/version_requirements/ s/runtime/development/' ../metadata || die
-}
diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-3.12.0.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-3.12.0.ebuild
deleted file mode 100644
index 24006f2dbf93..000000000000
--- a/dev-ruby/selenium-webdriver/selenium-webdriver-3.12.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-# NOTE: this package contains precompiled code. It appears that all
-# source code can be found at https://code.google.com/p/selenium/ but the
-# repository is not organized in a way so that we can easily rebuild the
-# suited shared object. We'll just try our luck with the precompiled
-# objects for now.
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_QA_ALLOWED_LIBS="x_ignore_nofocus.so"
-QA_PREBUILT="*/x_ignore_nofocus.so"
-
-inherit ruby-fakegem
-
-DESCRIPTION="This gem provides Ruby bindings for WebDriver"
-HOMEPAGE="https://github.com/seleniumhq/selenium"
-
-LICENSE="Apache-2.0"
-SLOT="3"
-KEYWORDS="amd64 ~arm ~arm64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/childprocess-0.5.0
- >=dev-ruby/rubyzip-1.2:1"
diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-3.14.1.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-3.14.1.ebuild
deleted file mode 100644
index 7f9bebad9929..000000000000
--- a/dev-ruby/selenium-webdriver/selenium-webdriver-3.14.1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-# NOTE: this package contains precompiled code. It appears that all
-# source code can be found at https://code.google.com/p/selenium/ but the
-# repository is not organized in a way so that we can easily rebuild the
-# suited shared object. We'll just try our luck with the precompiled
-# objects for now.
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_QA_ALLOWED_LIBS="x_ignore_nofocus.so"
-QA_PREBUILT="*/x_ignore_nofocus.so"
-
-inherit ruby-fakegem
-
-DESCRIPTION="This gem provides Ruby bindings for WebDriver"
-HOMEPAGE="https://github.com/seleniumhq/selenium"
-
-LICENSE="Apache-2.0"
-SLOT="3"
-KEYWORDS="amd64 ~arm ~arm64 ~x86"
-IUSE=""
-
-ruby_add_rdepend "=dev-ruby/childprocess-0*
- >=dev-ruby/rubyzip-1.2.2:1"
diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-3.141.5926.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-3.141.5926.ebuild
deleted file mode 100644
index 1c6a4e89e352..000000000000
--- a/dev-ruby/selenium-webdriver/selenium-webdriver-3.141.5926.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-# NOTE: this package contains precompiled code. It appears that all
-# source code can be found at https://code.google.com/p/selenium/ but the
-# repository is not organized in a way so that we can easily rebuild the
-# suited shared object. We'll just try our luck with the precompiled
-# objects for now.
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_QA_ALLOWED_LIBS="x_ignore_nofocus.so"
-QA_PREBUILT="*/x_ignore_nofocus.so"
-
-inherit ruby-fakegem
-
-DESCRIPTION="This gem provides Ruby bindings for WebDriver"
-HOMEPAGE="https://github.com/seleniumhq/selenium"
-
-LICENSE="Apache-2.0"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/childprocess-0.5 <dev-ruby/childprocess-2
- >=dev-ruby/rubyzip-1.2.2:1"
diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-3.142.0.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-3.142.0.ebuild
deleted file mode 100644
index ba276f6341de..000000000000
--- a/dev-ruby/selenium-webdriver/selenium-webdriver-3.142.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# NOTE: this package contains precompiled code. It appears that all
-# source code can be found at https://code.google.com/p/selenium/ but the
-# repository is not organized in a way so that we can easily rebuild the
-# suited shared object. We'll just try our luck with the precompiled
-# objects for now.
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_QA_ALLOWED_LIBS="x_ignore_nofocus.so"
-QA_PREBUILT="*/x_ignore_nofocus.so"
-
-inherit ruby-fakegem
-
-DESCRIPTION="This gem provides Ruby bindings for WebDriver"
-HOMEPAGE="https://github.com/seleniumhq/selenium"
-
-LICENSE="Apache-2.0"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/childprocess-0.5 <dev-ruby/childprocess-2
- >=dev-ruby/rubyzip-1.2.2:1"
diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-3.142.1.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-3.142.1.ebuild
deleted file mode 100644
index ba276f6341de..000000000000
--- a/dev-ruby/selenium-webdriver/selenium-webdriver-3.142.1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# NOTE: this package contains precompiled code. It appears that all
-# source code can be found at https://code.google.com/p/selenium/ but the
-# repository is not organized in a way so that we can easily rebuild the
-# suited shared object. We'll just try our luck with the precompiled
-# objects for now.
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_QA_ALLOWED_LIBS="x_ignore_nofocus.so"
-QA_PREBUILT="*/x_ignore_nofocus.so"
-
-inherit ruby-fakegem
-
-DESCRIPTION="This gem provides Ruby bindings for WebDriver"
-HOMEPAGE="https://github.com/seleniumhq/selenium"
-
-LICENSE="Apache-2.0"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/childprocess-0.5 <dev-ruby/childprocess-2
- >=dev-ruby/rubyzip-1.2.2:1"
diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-3.142.2.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-3.142.2.ebuild
deleted file mode 100644
index ba276f6341de..000000000000
--- a/dev-ruby/selenium-webdriver/selenium-webdriver-3.142.2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# NOTE: this package contains precompiled code. It appears that all
-# source code can be found at https://code.google.com/p/selenium/ but the
-# repository is not organized in a way so that we can easily rebuild the
-# suited shared object. We'll just try our luck with the precompiled
-# objects for now.
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_QA_ALLOWED_LIBS="x_ignore_nofocus.so"
-QA_PREBUILT="*/x_ignore_nofocus.so"
-
-inherit ruby-fakegem
-
-DESCRIPTION="This gem provides Ruby bindings for WebDriver"
-HOMEPAGE="https://github.com/seleniumhq/selenium"
-
-LICENSE="Apache-2.0"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/childprocess-0.5 <dev-ruby/childprocess-2
- >=dev-ruby/rubyzip-1.2.2:1"
diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-3.142.3.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-3.142.3.ebuild
deleted file mode 100644
index 8233dcd590b6..000000000000
--- a/dev-ruby/selenium-webdriver/selenium-webdriver-3.142.3.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-# NOTE: this package contains precompiled code. It appears that all
-# source code can be found at https://code.google.com/p/selenium/ but the
-# repository is not organized in a way so that we can easily rebuild the
-# suited shared object. We'll just try our luck with the precompiled
-# objects for now.
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_QA_ALLOWED_LIBS="x_ignore_nofocus.so"
-QA_PREBUILT="*/x_ignore_nofocus.so"
-
-inherit ruby-fakegem
-
-DESCRIPTION="This gem provides Ruby bindings for WebDriver"
-HOMEPAGE="https://github.com/seleniumhq/selenium"
-
-LICENSE="Apache-2.0"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/childprocess-0.5 <dev-ruby/childprocess-2
- >=dev-ruby/rubyzip-1.2.2:1"
diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0-r1.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0-r1.ebuild
new file mode 100644
index 000000000000..94d0a1f7408e
--- /dev/null
+++ b/dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# NOTE: this package contains precompiled code. It appears that all
+# source code can be found at https://code.google.com/p/selenium/ but the
+# repository is not organized in a way so that we can easily rebuild the
+# suited shared object. We'll just try our luck with the precompiled
+# objects for now.
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_GEMSPEC="selenium-webdriver.gemspec"
+
+RUBY_QA_ALLOWED_LIBS="x_ignore_nofocus.so"
+QA_PREBUILT="*/x_ignore_nofocus.so"
+
+inherit ruby-fakegem
+
+DESCRIPTION="This gem provides Ruby bindings for WebDriver"
+HOMEPAGE="https://github.com/seleniumhq/selenium"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/childprocess:5
+ >=dev-ruby/rexml-3.2.5:3
+ >=dev-ruby/rubyzip-1.2.2:*"
diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0.ebuild
new file mode 100644
index 000000000000..e76c9e2a9822
--- /dev/null
+++ b/dev-ruby/selenium-webdriver/selenium-webdriver-4.1.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+# NOTE: this package contains precompiled code. It appears that all
+# source code can be found at https://code.google.com/p/selenium/ but the
+# repository is not organized in a way so that we can easily rebuild the
+# suited shared object. We'll just try our luck with the precompiled
+# objects for now.
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_GEMSPEC="selenium-webdriver.gemspec"
+
+RUBY_QA_ALLOWED_LIBS="x_ignore_nofocus.so"
+QA_PREBUILT="*/x_ignore_nofocus.so"
+
+inherit ruby-fakegem
+
+DESCRIPTION="This gem provides Ruby bindings for WebDriver"
+HOMEPAGE="https://github.com/seleniumhq/selenium"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/childprocess-0.5:2
+ >=dev-ruby/rexml-3.2.5:3
+ >=dev-ruby/rubyzip-1.2.2:*"
diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-4.10.0.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-4.10.0.ebuild
new file mode 100644
index 000000000000..d55164923ba6
--- /dev/null
+++ b/dev-ruby/selenium-webdriver/selenium-webdriver-4.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="ruby30 ruby31 ruby32"
+
+# NOTE: this package contains precompiled code. It appears that all
+# source code can be found at https://code.google.com/p/selenium/ but the
+# repository is not organized in a way so that we can easily rebuild the
+# suited shared object. We'll just try our luck with the precompiled
+# objects for now.
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_GEMSPEC="selenium-webdriver.gemspec"
+
+RUBY_QA_ALLOWED_LIBS="x_ignore_nofocus.so"
+QA_PREBUILT="*/x_ignore_nofocus.so"
+
+inherit ruby-fakegem
+
+DESCRIPTION="This gem provides Ruby bindings for WebDriver"
+HOMEPAGE="https://github.com/seleniumhq/selenium"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/rexml-3.2.5:3
+ >=dev-ruby/rubyzip-1.2.2:*
+ dev-ruby/websocket:0
+"
diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-4.11.0.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-4.11.0.ebuild
new file mode 100644
index 000000000000..25f546c4e387
--- /dev/null
+++ b/dev-ruby/selenium-webdriver/selenium-webdriver-4.11.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32 ruby33"
+
+# NOTE: this package contains precompiled code. It appears that all
+# source code can be found at https://code.google.com/p/selenium/ but the
+# repository is not organized in a way so that we can easily rebuild the
+# suited shared object. We'll just try our luck with the precompiled
+# objects for now.
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_GEMSPEC="selenium-webdriver.gemspec"
+
+RUBY_QA_ALLOWED_LIBS="x_ignore_nofocus.so"
+QA_PREBUILT="*/x_ignore_nofocus.so"
+
+inherit ruby-fakegem
+
+DESCRIPTION="This gem provides Ruby bindings for WebDriver"
+HOMEPAGE="https://github.com/seleniumhq/selenium"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/rexml-3.2.5:3
+ >=dev-ruby/rubyzip-1.2.2:*
+ dev-ruby/websocket:0
+"
diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-4.14.0.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-4.14.0.ebuild
new file mode 100644
index 000000000000..27f311e8c8f2
--- /dev/null
+++ b/dev-ruby/selenium-webdriver/selenium-webdriver-4.14.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_GEMSPEC="selenium-webdriver.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="This gem provides Ruby bindings for WebDriver"
+HOMEPAGE="https://github.com/seleniumhq/selenium"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND+=" >=dev-util/selenium-manager-$(ver_cut 1-2)"
+
+ruby_add_rdepend "
+ >=dev-ruby/rexml-3.2.5:3
+ >=dev-ruby/rubyzip-1.2.2:*
+ dev-ruby/websocket:0
+"
+
+PATCHES=( "${FILESDIR}/${PN}-4.13.1-selenium-manager.patch" )
+
+all_ruby_prepare() {
+ # Remove the pre-compiled selenium-manager executables
+ rm -fr bin || die
+}
diff --git a/dev-ruby/selenium-webdriver/selenium-webdriver-4.15.0.ebuild b/dev-ruby/selenium-webdriver/selenium-webdriver-4.15.0.ebuild
new file mode 100644
index 000000000000..2706840797ff
--- /dev/null
+++ b/dev-ruby/selenium-webdriver/selenium-webdriver-4.15.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_GEMSPEC="selenium-webdriver.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="This gem provides Ruby bindings for WebDriver"
+HOMEPAGE="https://github.com/seleniumhq/selenium"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~ppc64 ~riscv ~x86"
+IUSE=""
+
+RDEPEND+=" >=dev-util/selenium-manager-$(ver_cut 1-2)"
+
+ruby_add_rdepend "
+ >=dev-ruby/rexml-3.2.5:3
+ >=dev-ruby/rubyzip-1.2.2:*
+ dev-ruby/websocket:0
+"
+
+PATCHES=( "${FILESDIR}/${PN}-4.13.1-selenium-manager.patch" )
+
+all_ruby_prepare() {
+ # Remove the pre-compiled selenium-manager executables
+ rm -fr bin || die
+}
diff --git a/dev-ruby/semantic_puppet/Manifest b/dev-ruby/semantic_puppet/Manifest
index b85af5cc2ff4..3499e960aa11 100644
--- a/dev-ruby/semantic_puppet/Manifest
+++ b/dev-ruby/semantic_puppet/Manifest
@@ -1 +1,2 @@
-DIST semantic_puppet-1.0.2.gem 31744 BLAKE2B fd80225f799f55fe668c712cec20ad57163c3829ce70f49a30e7b73037883ea1960be0ea8f510e147c30254b7527e64f323fd7f9edb30f934762088ed997a241 SHA512 b059d8c7b13ae96dfe012318e7c6ee483cc09986d5d065c8422167a27a14d8e99433229c90388a7ff9ee425a0f5b6a6a6d5bc55f8b81901490afd8039ea86480
+DIST semantic_puppet-1.0.4.gem 32256 BLAKE2B 4704a6d913388d10cf32442511d66d742bcdba792d81d67de960209dbffc8ade970431e794934152b71031de83a75d9e09bda830e6e66838b68913d2bbb9da0a SHA512 8b830626e973bc74fb4f4147e83ca8048d412751ff48dbe96ec6e790645eae7a51c665b75a09d0f0fdec3b29d3798158c38b613e2f83d115d1ba2a4c8d24362a
+DIST semantic_puppet-1.1.0.gem 32768 BLAKE2B e5f41d88afe1b7c760772e4de05f820b84a1cccc809fe692e0d76bdedc75e1bec1d9c0b66d49ff4468ae0b20fdd3c724bdd5305709af4f1faa2ca867f8a5a679 SHA512 22d5596f445faa7c7a779c11e4a9b52e1ca3f77fcc63270798e4b0fc7dddd59c66bab1644214f1526a0fa5732e349522e8664ea6285f0ca107f35009e8a1d151
diff --git a/dev-ruby/semantic_puppet/metadata.xml b/dev-ruby/semantic_puppet/metadata.xml
index 2ed0b9ac0ef2..f144e74e3186 100644
--- a/dev-ruby/semantic_puppet/metadata.xml
+++ b/dev-ruby/semantic_puppet/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>robbat2@gentoo.org</email>
@@ -9,9 +9,6 @@
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
- <longdescription lang="en">
- Library of useful tools for working with Semantic Versions and module dependencies.
- </longdescription>
<upstream>
<remote-id type="github">puppetlabs/semantic_puppet</remote-id>
</upstream>
diff --git a/dev-ruby/semantic_puppet/semantic_puppet-1.0.2.ebuild b/dev-ruby/semantic_puppet/semantic_puppet-1.0.2.ebuild
deleted file mode 100644
index ab16581d9f0d..000000000000
--- a/dev-ruby/semantic_puppet/semantic_puppet-1.0.2.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Library of tools for working with Semantic Versions and module dependencies"
-HOMEPAGE="https://github.com/puppetlabs/semantic_puppet"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 ~arm hppa ppc ppc64 x86"
-IUSE=""
diff --git a/dev-ruby/semantic_puppet/semantic_puppet-1.0.4.ebuild b/dev-ruby/semantic_puppet/semantic_puppet-1.0.4.ebuild
new file mode 100644
index 000000000000..e3c5359cfddc
--- /dev/null
+++ b/dev-ruby/semantic_puppet/semantic_puppet-1.0.4.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Library of tools for working with Semantic Versions and module dependencies"
+HOMEPAGE="https://github.com/puppetlabs/semantic_puppet"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ppc64 ~riscv x86"
+IUSE=""
diff --git a/dev-ruby/semantic_puppet/semantic_puppet-1.1.0.ebuild b/dev-ruby/semantic_puppet/semantic_puppet-1.1.0.ebuild
new file mode 100644
index 000000000000..65ce05f547c5
--- /dev/null
+++ b/dev-ruby/semantic_puppet/semantic_puppet-1.1.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Library of tools for working with Semantic Versions and module dependencies"
+HOMEPAGE="https://github.com/puppetlabs/semantic_puppet"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
diff --git a/dev-ruby/semver2/Manifest b/dev-ruby/semver2/Manifest
deleted file mode 100644
index ced0e6073ad7..000000000000
--- a/dev-ruby/semver2/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST semver2-3.4.2.tar.gz 9048 BLAKE2B dd0f7d0ec826b0d893aba07203fc1ff01367b9d0406c24157dd76290a7c3bb6301e8656d149aaa9a76f2ace5a1c9559df56aa5236f3a305bc982f30450c36ff9 SHA512 7f724397ac4a58a459e7b4794d2097111d2796837150634c318c6785d321299215099d4c359d010036d1da2a7d78e50ef6bad1629d01363650687e0e678a51d5
diff --git a/dev-ruby/semver2/metadata.xml b/dev-ruby/semver2/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/semver2/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/semver2/semver2-3.4.2.ebuild b/dev-ruby/semver2/semver2-3.4.2.ebuild
deleted file mode 100644
index ac1e41d4d90f..000000000000
--- a/dev-ruby/semver2/semver2-3.4.2.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="maintain versions as per http://semver.org"
-HOMEPAGE="https://github.com/haf/semver"
-SRC_URI="https://github.com/haf/semver/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="semver-${PV}"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-IUSE=""
diff --git a/dev-ruby/sequel/Manifest b/dev-ruby/sequel/Manifest
new file mode 100644
index 000000000000..89917ef2a49e
--- /dev/null
+++ b/dev-ruby/sequel/Manifest
@@ -0,0 +1,5 @@
+DIST sequel-5.74.0.tar.gz 1751332 BLAKE2B 2f75703fce84e987ddffe5049f75a656ebc1363e62f350059feb1ac986f5c0e48a7712817f5ac654128055c4fa753b74d7b69b781c1f4b4de74d904c61d56aab SHA512 4f4c11ffedf6dad79fc8b89e601bcda2061bfc3d8f67c41559630d1b7c83ab0da0ad1fb2c7f1ad3999e0db541b5da4df2413de00e1947211d8013eeaf1a34307
+DIST sequel-5.75.0.tar.gz 1753433 BLAKE2B 9315198887f267010a5d325a880c974681ac080f822c5191ccf4bdeaa3cd64bfc0cd54736e5ced1ae0c3f5cc77da1a721e631aaf7e344b39fc752f3f91ec5dba SHA512 ecef39140d3b15d309f06aac36f7196dd46e2c737732a95843f50e91fb0cf998c39749d8dd7d0f6352d676c82aef0bbb23bfb75e6b4ace301ac37a61fd9bef78
+DIST sequel-5.76.0.tar.gz 1758202 BLAKE2B f8b28d5cb5f03281a7649f654e65d809134421aff68e363d5f887113fa9b5f7a8ccf64c9f96d4451c274ebdedd3996d0504c65abc40ce942c5be12ac69865b21 SHA512 71da653013ba27e32288ed801cf45096b2878cb50bdae9db14b82554aed4a70743b49de3453c35f68726bec91a2ff57503c040e3e7b2f66beac30bf2b8bbe2e6
+DIST sequel-5.77.0.tar.gz 1761861 BLAKE2B d3a99213a7862ff7a585ed07b2ab8645464cfc118da0120281d8d725cc3426983d3518fdc3050541a3b7a714e2d7b0754132a208fdddd126be385de1a13b25a3 SHA512 ead09479da174737cfdab79cf3bef42b801e2b7b351a8fa6b4000e984cbb7dad9c0e71ddb3f45afbed1829d32923673de4f3f62f0c278da4f85c3fbc65a7201b
+DIST sequel-5.78.0.tar.gz 1765505 BLAKE2B 5841d1eeb6065188855f40ff8f1812f694c5d2851a30911265eeb37d111e7df442e3888d22567470569bd0c7d0fced4bdb8b778a14a69f643b42ce2d7b6efb94 SHA512 f706e57cd9dfcb1ea304abe47d2eed40ad412767f3ac58b83e4904e38cb7e970faabe3e40c5c34a44369a7e8b9e526fa06b566eb3768eedd245c0878246a0b8e
diff --git a/dev-ruby/sequel/metadata.xml b/dev-ruby/sequel/metadata.xml
new file mode 100644
index 000000000000..49c310e4449a
--- /dev/null
+++ b/dev-ruby/sequel/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jeremyevans/sequel</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/sequel/sequel-5.74.0.ebuild b/dev-ruby/sequel/sequel-5.74.0.ebuild
new file mode 100644
index 000000000000..9cffa9a08213
--- /dev/null
+++ b/dev-ruby/sequel/sequel-5.74.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="sequel.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_TASK_TEST="spec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A lightweight database toolkit for Ruby"
+HOMEPAGE="https://sequel.jeremyevans.net/"
+SRC_URI="https://github.com/jeremyevans/sequel/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/bigdecimal"
+
+ruby_add_bdepend "test? (
+ dev-ruby/activemodel
+ dev-ruby/minitest
+ dev-ruby/minitest-global_expectations
+ dev-ruby/minitest-hooks
+ dev-ruby/nokogiri
+ dev-ruby/tzinfo
+)"
diff --git a/dev-ruby/sequel/sequel-5.75.0.ebuild b/dev-ruby/sequel/sequel-5.75.0.ebuild
new file mode 100644
index 000000000000..9cffa9a08213
--- /dev/null
+++ b/dev-ruby/sequel/sequel-5.75.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="sequel.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_TASK_TEST="spec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A lightweight database toolkit for Ruby"
+HOMEPAGE="https://sequel.jeremyevans.net/"
+SRC_URI="https://github.com/jeremyevans/sequel/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/bigdecimal"
+
+ruby_add_bdepend "test? (
+ dev-ruby/activemodel
+ dev-ruby/minitest
+ dev-ruby/minitest-global_expectations
+ dev-ruby/minitest-hooks
+ dev-ruby/nokogiri
+ dev-ruby/tzinfo
+)"
diff --git a/dev-ruby/sequel/sequel-5.76.0.ebuild b/dev-ruby/sequel/sequel-5.76.0.ebuild
new file mode 100644
index 000000000000..aef18fe0b910
--- /dev/null
+++ b/dev-ruby/sequel/sequel-5.76.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="sequel.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_TASK_TEST="spec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A lightweight database toolkit for Ruby"
+HOMEPAGE="https://sequel.jeremyevans.net/"
+SRC_URI="https://github.com/jeremyevans/sequel/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/bigdecimal"
+
+ruby_add_bdepend "test? (
+ dev-ruby/activemodel
+ dev-ruby/minitest
+ dev-ruby/minitest-global_expectations
+ dev-ruby/minitest-hooks
+ dev-ruby/nokogiri
+ dev-ruby/tzinfo
+)"
diff --git a/dev-ruby/sequel/sequel-5.77.0.ebuild b/dev-ruby/sequel/sequel-5.77.0.ebuild
new file mode 100644
index 000000000000..aef18fe0b910
--- /dev/null
+++ b/dev-ruby/sequel/sequel-5.77.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="sequel.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_TASK_TEST="spec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A lightweight database toolkit for Ruby"
+HOMEPAGE="https://sequel.jeremyevans.net/"
+SRC_URI="https://github.com/jeremyevans/sequel/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/bigdecimal"
+
+ruby_add_bdepend "test? (
+ dev-ruby/activemodel
+ dev-ruby/minitest
+ dev-ruby/minitest-global_expectations
+ dev-ruby/minitest-hooks
+ dev-ruby/nokogiri
+ dev-ruby/tzinfo
+)"
diff --git a/dev-ruby/sequel/sequel-5.78.0.ebuild b/dev-ruby/sequel/sequel-5.78.0.ebuild
new file mode 100644
index 000000000000..79946a650e04
--- /dev/null
+++ b/dev-ruby/sequel/sequel-5.78.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="sequel.gemspec"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_TASK_TEST="spec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A lightweight database toolkit for Ruby"
+HOMEPAGE="https://sequel.jeremyevans.net/"
+SRC_URI="https://github.com/jeremyevans/sequel/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/bigdecimal"
+
+ruby_add_bdepend "test? (
+ dev-ruby/activemodel
+ dev-ruby/minitest
+ dev-ruby/minitest-global_expectations
+ dev-ruby/minitest-hooks
+ dev-ruby/nokogiri
+ dev-ruby/tzinfo
+)"
diff --git a/dev-ruby/serialport/Manifest b/dev-ruby/serialport/Manifest
index 95cc0d03cd94..14b25d6dcc1d 100644
--- a/dev-ruby/serialport/Manifest
+++ b/dev-ruby/serialport/Manifest
@@ -1 +1 @@
-DIST serialport-1.3.1.gem 25088 BLAKE2B 391188ff8a78f3998c82b17668a1aebad737643739c8087c4f32ce719dbf7bbf5f29cdc0717ab16f196020a227afc4fcfc29409331b2aabf5c6bf3382ef3496b SHA512 cdce9e13065cecf6d090d716626abb399bcc2a079be7bf1fe7755a20360218550f2f31980d62d8aae1fcc62fc62d6f7549685f865e30d2a5f40a617f5f197ed9
+DIST serialport-1.3.2.gem 25088 BLAKE2B 035e7bdb8ef321fb67ec63283c0e4c8fbf8f909ea3495994716b95cc55f212561a09a87352aed67290d96b54bb26b7802e5ed37c27e67291d768d7eb6d30850e SHA512 ff78fa04183108c2e9c5eb4f0caa9f8072a693a2a120ca084476b4125ca32ec67a6fb268bedda3ca142a9a397dbc585dffaab88f339fccc12e5ad03a09d4c28c
diff --git a/dev-ruby/serialport/files/serialport-1.3.2-clang16-build-fix.patch b/dev-ruby/serialport/files/serialport-1.3.2-clang16-build-fix.patch
new file mode 100644
index 000000000000..9dd22090541c
--- /dev/null
+++ b/dev-ruby/serialport/files/serialport-1.3.2-clang16-build-fix.patch
@@ -0,0 +1,13 @@
+Bug: https://bugs.gentoo.org/883127
+Upstream PR: https://github.com/hparra/ruby-serialport/pull/75
+--- a/ext/native/posix_serialport_impl.c
++++ b/ext/native/posix_serialport_impl.c
+@@ -110,7 +110,7 @@ VALUE sp_create_impl(class, _port)
+ struct termios params;
+
+ NEWOBJ(sp, struct RFile);
+- OBJSETUP(sp, class, T_FILE);
++ OBJSETUP((VALUE)sp, class, T_FILE);
+ MakeOpenFile((VALUE) sp, fp);
+
+ switch(TYPE(_port))
diff --git a/dev-ruby/serialport/metadata.xml b/dev-ruby/serialport/metadata.xml
index eb1e47f2edfb..c8a4b8ba58d1 100644
--- a/dev-ruby/serialport/metadata.xml
+++ b/dev-ruby/serialport/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">hparra/ruby-serialport</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/serialport/serialport-1.3.1.ebuild b/dev-ruby/serialport/serialport-1.3.1.ebuild
deleted file mode 100644
index 87f7b003f579..000000000000
--- a/dev-ruby/serialport/serialport-1.3.1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="a library for serial port (rs232) access in ruby"
-HOMEPAGE="http://rubyforge.org/projects/ruby-serialport/"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~ppc x86"
-IUSE=""
-
-all_ruby_prepare() {
- # Fix the miniterm script so that it might actually work, we'll
- # install it as example.
- sed -i -e 's:\.\./serialport.so:serialport:' test/miniterm.rb || die
-}
-
-each_ruby_configure() {
- cd ext/native || die
- ${RUBY} extconf.rb || die
-}
-
-each_ruby_compile() {
- pushd ext/native &>/dev/null
- emake V=1
- popd &>/dev/null
-
- # Avoids the need for a specific install phase
- cp ext/native/*$(get_modname) lib/ || die "extension copy failed"
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- # don't compress it
- insinto /usr/share/doc/${PF}/examples
- doins test/miniterm.rb
-}
diff --git a/dev-ruby/serialport/serialport-1.3.2-r1.ebuild b/dev-ruby/serialport/serialport-1.3.2-r1.ebuild
new file mode 100644
index 000000000000..6fd74bbb98bf
--- /dev/null
+++ b/dev-ruby/serialport/serialport-1.3.2-r1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/native/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="a library for serial port (rs232) access in ruby"
+HOMEPAGE="https://github.com/hparra/ruby-serialport/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE=""
+
+PATCHES=(
+ "${FILESDIR}"/${P}-clang16-build-fix.patch
+)
+
+all_ruby_prepare() {
+ # Fix the miniterm script so that it might actually work, we'll
+ # install it as example.
+ sed -i -e 's:\.\./serialport.so:serialport:' test/miniterm.rb || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc test/miniterm.rb
+}
diff --git a/dev-ruby/serverengine/Manifest b/dev-ruby/serverengine/Manifest
index 87ca3edf0031..115a4cafa0d3 100644
--- a/dev-ruby/serverengine/Manifest
+++ b/dev-ruby/serverengine/Manifest
@@ -1,4 +1 @@
-DIST serverengine-2.0.6.gem 38400 BLAKE2B 51722d222bfcb9c0063f64ceed666be147bcb4dce9947fd60b723507c5f3e2479b445902bd2a2e985d0a8216462b91b1545ccc458e36e7134fa11a4a746302a7 SHA512 ffb35eb51226793181a5266e3ddaf3255ce38e7fda90c2257fa16044829199dc5ee30cb9c38925f1820cb20fd36d01a47af0a8cbee96edc0ecb5206e2ab17da3
-DIST serverengine-2.0.7.gem 38400 BLAKE2B b457925fae394ede56e9d866ebc0ebe02262b1ec799cc03090eb8b037b5e617836dd96860bf1e23a7c62fd09139f007dbf561f378d839cd07d3da70e11b5983b SHA512 5e4dee38ab00641d5f47c29cf765220a327aee3fdd3dface4e1996f7b12abd65de8ac03278e528467d0a508921aa3e504d7a34a7ebf2ddae419618262faf6616
-DIST serverengine-2.1.0.gem 38912 BLAKE2B d89298a8f7a985a8daad8604c88e63c7f534fe1b9020141ba704e34b48ea0b78f6da855d6253bec29abb449c58b51d6c7d83a97add36abf962b7fb478b6c68a6 SHA512 57231afbf28d8e54c90c99adc4c9443d865592a6fdaed85c66dd8e123af06d8b72567f6d0f3b058af388293c25fb52ff954d37517c21ae518314b3f5c307c8da
-DIST serverengine-2.1.1.gem 38912 BLAKE2B 110adef1bfc4538dcbd9cddc5aabcda00f0e6276f3092cccd54bdd92d644bc6121300c1963276d3bbb810fc2be44c9c833d1d74b524b3d7faae8424b98e45e3f SHA512 627ba0ad0235536009ed22cca017d23d76ad7863b9ed83e90504d374bb3c1b887c73ed0b120378327485ba7c68a18bf354228529da84e134ac4d3b6dd96d14e1
+DIST serverengine-2.3.2.gem 43520 BLAKE2B f07972501906ee8a8418461d80125d019364b1d025740d22e50f862e70054682affdb1a65015e38b72ab971792f2d3cb8c41d7ce45c5f99ce9398c2ae236d6bb SHA512 9ca32740d4579fb8cbeb613780ed78a9a2e5a72fb427d24aa26a9a805f83de0d2840eb3de6e2e4205a771e1c58bcc4a171869807fdb49ddbb017ceeb8ca08c73
diff --git a/dev-ruby/serverengine/metadata.xml b/dev-ruby/serverengine/metadata.xml
index 28ab0c15f206..e922d46606d0 100644
--- a/dev-ruby/serverengine/metadata.xml
+++ b/dev-ruby/serverengine/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">treasure-data/serverengine</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/serverengine/serverengine-2.0.6.ebuild b/dev-ruby/serverengine/serverengine-2.0.6.ebuild
deleted file mode 100644
index c09a6a09cb02..000000000000
--- a/dev-ruby/serverengine/serverengine-2.0.6.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="Changelog README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A framework to implement robust multiprocess servers"
-HOMEPAGE="https://github.com/fluent/serverengine"
-LICENSE="Apache-2.0"
-
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/sigdump-0.2.2:0"
-
-ruby_add_bdepend "test? ( dev-ruby/bundler )"
-
-all_ruby_prepare() {
- sed -i -e '/rake/ s/~>/>=/' \
- -e '/rspec/ s/2.13.0/2.13/' \
- -e '/rake-compiler/ s:^:#:' serverengine.gemspec || die
-}
-
-each_ruby_test() {
- # The specs spawn ruby processes with bundler support
- ${RUBY} -S bundle exec rspec-2 spec || die
-}
diff --git a/dev-ruby/serverengine/serverengine-2.0.7.ebuild b/dev-ruby/serverengine/serverengine-2.0.7.ebuild
deleted file mode 100644
index 484ceb4b1d4b..000000000000
--- a/dev-ruby/serverengine/serverengine-2.0.7.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="Changelog README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A framework to implement robust multiprocess servers"
-HOMEPAGE="https://github.com/fluent/serverengine"
-LICENSE="Apache-2.0"
-
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/sigdump-0.2.2:0"
-
-ruby_add_bdepend "test? ( dev-ruby/bundler )"
-
-all_ruby_prepare() {
- sed -i -e '/rake/ s/~>/>=/' \
- -e '/rspec/ s/2.13.0/2.13/' \
- -e '/rake-compiler/ s:^:#:' serverengine.gemspec || die
-}
-
-each_ruby_test() {
- # The specs spawn ruby processes with bundler support
- ${RUBY} -S bundle exec rspec-2 spec || die
-}
diff --git a/dev-ruby/serverengine/serverengine-2.1.0.ebuild b/dev-ruby/serverengine/serverengine-2.1.0.ebuild
deleted file mode 100644
index e8f5ed8ba5a4..000000000000
--- a/dev-ruby/serverengine/serverengine-2.1.0.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="Changelog README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A framework to implement robust multiprocess servers"
-HOMEPAGE="https://github.com/fluent/serverengine"
-LICENSE="Apache-2.0"
-
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/sigdump-0.2.2:0"
-
-ruby_add_bdepend "test? ( dev-ruby/bundler )"
-
-all_ruby_prepare() {
- sed -i -e '/rake/ s/~>/>=/' \
- -e '/rspec/ s/2.13.0/2.13/' \
- -e '/rake-compiler/ s:^:#:' serverengine.gemspec || die
-}
-
-each_ruby_test() {
- # The specs spawn ruby processes with bundler support
- ${RUBY} -S bundle exec rspec-2 spec || die
-}
diff --git a/dev-ruby/serverengine/serverengine-2.1.1.ebuild b/dev-ruby/serverengine/serverengine-2.1.1.ebuild
deleted file mode 100644
index 125a668bc72a..000000000000
--- a/dev-ruby/serverengine/serverengine-2.1.1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="Changelog README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A framework to implement robust multiprocess servers"
-HOMEPAGE="https://github.com/fluent/serverengine"
-LICENSE="Apache-2.0"
-
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/sigdump-0.2.2:0"
-
-ruby_add_bdepend "test? ( dev-ruby/bundler )"
-
-all_ruby_prepare() {
- sed -i -e '/rake/ s/~>/>=/' \
- -e '/rspec/ s/2.13.0/2.13/' \
- -e '/rake-compiler/ s:^:#:' serverengine.gemspec || die
-}
-
-each_ruby_test() {
- # The specs spawn ruby processes with bundler support
- ${RUBY} -S bundle exec rspec-2 spec || die
-}
diff --git a/dev-ruby/serverengine/serverengine-2.3.2.ebuild b/dev-ruby/serverengine/serverengine-2.3.2.ebuild
new file mode 100644
index 000000000000..257e9cb77cea
--- /dev/null
+++ b/dev-ruby/serverengine/serverengine-2.3.2.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="Changelog README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A framework to implement robust multiprocess servers"
+HOMEPAGE="https://github.com/treasure-data/serverengine"
+LICENSE="Apache-2.0"
+
+KEYWORDS="~amd64"
+SLOT="0"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/sigdump-0.2.2:0"
+
+ruby_add_bdepend "test? ( dev-ruby/bundler >=dev-ruby/rr-3.1:0 dev-ruby/timecop )"
+
+all_ruby_prepare() {
+ sed -i -e '/rake/ s/~>/>=/' \
+ -e '/rspec/ s/3.12.0/3.12/' \
+ -e '/rake-compiler/ s:^:#:' serverengine.gemspec || die
+
+ sed -i -e '/color_enabled/ s:^:#:' -e '1irequire "fileutils"' spec/spec_helper.rb || die
+
+ sed -i -e '/raises SystemExit/askip "Exits rspec 3"' spec/multi_process_server_spec.rb || die
+}
+
+each_ruby_test() {
+ # The specs spawn ruby processes with bundler support
+ ${RUBY} -S bundle exec rspec-3 spec || die
+}
diff --git a/dev-ruby/session/Manifest b/dev-ruby/session/Manifest
deleted file mode 100644
index a8b908b7eac9..000000000000
--- a/dev-ruby/session/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST session-3.2.0.gem 18432 BLAKE2B b50ff6f52dd0226cdfbe07ea434ac35fc19d695ab474d2c240ce3a6ab707da1d03db5006d68594de6a75ff356154a1ba5ab06fe17a766d3e4154fd11d3abe4b9 SHA512 57c0676fb4a4254e86dbe68e36309c8eb85515dd659de73a87e1ae2e8e5dc7f979192ef665135e75182c26e2a5c847d61daf855639772da7c66af888ed0dc91a
diff --git a/dev-ruby/session/metadata.xml b/dev-ruby/session/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/session/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/session/session-3.2.0.ebuild b/dev-ruby/session/session-3.2.0.ebuild
deleted file mode 100644
index 0074f5c3fb75..000000000000
--- a/dev-ruby/session/session-3.2.0.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A set of classes to drive external programs via pipe"
-HOMEPAGE="http://codeforpeople.com/lib/ruby/session/"
-#SRC_URI="http://codeforpeople.com/lib/ruby/session/${P}.tgz"
-
-# License info based on https://github.com/ahoward/session as indicated
-# by author.
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-DEPEND+=" test? ( || ( sys-apps/coreutils sys-freebsd/freebsd-bin ) )"
-
-all_ruby_prepare() {
- # needed to void a collision with the Timeout::Error alias in Ruby
- # 1.8.7 at least.
- sed -i -e 's:TimeoutError:SessionTimeoutError:' test/session.rb || die
-
- # Fix broken test, bug 662514
- sed -i -e '/cmd =/ s/sleep 0.1"/sleep 0.1";/' test/session.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib test/*.rb || die "tests failed"
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc sample/*
-}
diff --git a/dev-ruby/set/Manifest b/dev-ruby/set/Manifest
new file mode 100644
index 000000000000..e6b30463920e
--- /dev/null
+++ b/dev-ruby/set/Manifest
@@ -0,0 +1,2 @@
+DIST set-1.0.3.tar.gz 14549 BLAKE2B 73ced396e10bd65df7e11edf0c553b7fd517dbc74c6f0721c61dba5e70ec730ed98fe45a834224059a5fb84ca60f194b535763f698b7f5e96b45a6118233ecc3 SHA512 5e4effabcfb7034b054ad5276243bf1aab378d0446790fe99c6911970ff1881acc9b704607acab836db75117903b8187d2aeb33e33d9e39d0ee53b41ea7a6086
+DIST set-1.1.0.tar.gz 14923 BLAKE2B 6f66a6fa53c7cd7b82ddeb91c1f820a5a062e21b3a9b0ce9df6ae433ed35b1fc9090adde43cb886435b6953f43ea59c1d7e7dc62de2b9d81ffacc342b2e19d76 SHA512 cc7b79ca07d1df9490cf6500c77afc4e972138a4d4c133e8eecbd1c2f80d5622c613040f36771beaeb1a8712f7a6c12dec592833b966f65be9beb454062e2970
diff --git a/dev-ruby/set/metadata.xml b/dev-ruby/set/metadata.xml
new file mode 100644
index 000000000000..77b24b04ff24
--- /dev/null
+++ b/dev-ruby/set/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/set</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/set/set-1.0.3.ebuild b/dev-ruby/set/set-1.0.3.ebuild
new file mode 100644
index 000000000000..c87fd13b12dc
--- /dev/null
+++ b/dev-ruby/set/set-1.0.3.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="set.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a class to deal with collections of unordered, unique values"
+HOMEPAGE="https://github.com/ruby/set"
+SRC_URI="https://github.com/ruby/set/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/set/set-1.1.0-r1.ebuild b/dev-ruby/set/set-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..b5b6f3d7c810
--- /dev/null
+++ b/dev-ruby/set/set-1.1.0-r1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="set.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a class to deal with collections of unordered, unique values"
+HOMEPAGE="https://github.com/ruby/set"
+SRC_URI="https://github.com/ruby/set/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/git ls-files -z/find * -print0/' \
+ -e 's/__FILE__/"set.gemspec"/' \
+ -e 's/__dir__/"."/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -e '/test_error/aomit "Fails when sorted_set gem is installed"' \
+ -i test/test_sorted_set.rb || die
+}
diff --git a/dev-ruby/settingslogic/files/settingslogic-2.0.9-psych-4.patch b/dev-ruby/settingslogic/files/settingslogic-2.0.9-psych-4.patch
new file mode 100644
index 000000000000..aecb968e9766
--- /dev/null
+++ b/dev-ruby/settingslogic/files/settingslogic-2.0.9-psych-4.patch
@@ -0,0 +1,31 @@
+From bd477f59560f3dea86f0cf43dabd814ac459d2ee Mon Sep 17 00:00:00 2001
+From: Tomohiko Mimura <mito.5525@gmail.com>
+Date: Mon, 2 Aug 2021 13:26:22 +0900
+Subject: [PATCH] Support Psych v4.0.0
+
+Ruby master ships with Psych 4.0.0 which makes `YAML.load`
+defaults to safe mode (https://github.com/ruby/psych/pull/487).
+
+Keep compatibility by using `unsafe_load`.
+---
+ lib/settingslogic.rb | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/lib/settingslogic.rb b/lib/settingslogic.rb
+index a99acaf..e7ea37e 100644
+--- a/lib/settingslogic.rb
++++ b/lib/settingslogic.rb
+@@ -100,7 +100,12 @@ def initialize(hash_or_file = self.class.source, section = nil)
+ self.replace hash_or_file
+ else
+ file_contents = open(hash_or_file).read
+- hash = file_contents.empty? ? {} : YAML.load(ERB.new(file_contents).result).to_hash
++ hash = if file_contents.empty?
++ {}
++ else
++ payload = ERB.new(file_contents).result
++ (YAML.respond_to?(:unsafe_load) ? YAML.unsafe_load(payload) : YAML.load(payload)).to_hash
++ end
+ if self.class.namespace
+ hash = hash[self.class.namespace] or return missing_key("Missing setting '#{self.class.namespace}' in #{hash_or_file}")
+ end
diff --git a/dev-ruby/settingslogic/metadata.xml b/dev-ruby/settingslogic/metadata.xml
index c9d70757990b..88af3cec9011 100644
--- a/dev-ruby/settingslogic/metadata.xml
+++ b/dev-ruby/settingslogic/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/settingslogic/settingslogic-2.0.9-r2.ebuild b/dev-ruby/settingslogic/settingslogic-2.0.9-r2.ebuild
new file mode 100644
index 000000000000..21d845360dbb
--- /dev/null
+++ b/dev-ruby/settingslogic/settingslogic-2.0.9-r2.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.rdoc"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A simple configuration / settings solution that uses an ERB enabled YAML file"
+HOMEPAGE="https://github.com/binarylogic/settingslogic"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+IUSE=""
+
+PATCHES=( "${FILESDIR}/${P}-psych-4.patch" )
+
+all_ruby_prepare() {
+ sed -i -e '/check_dependencies/d' Rakefile || die
+
+ # Use rspec 3
+ sed -i -e 's/be_false/be false/' spec/settingslogic_spec.rb || die
+}
diff --git a/dev-ruby/settingslogic/settingslogic-2.0.9.ebuild b/dev-ruby/settingslogic/settingslogic-2.0.9.ebuild
deleted file mode 100644
index a3c172397326..000000000000
--- a/dev-ruby/settingslogic/settingslogic-2.0.9.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple configuration / settings solution that uses an ERB enabled YAML file"
-HOMEPAGE="https://github.com/binarylogic/settingslogic"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~x86 ~x86-macos"
-SLOT="0"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/check_dependencies/d' Rakefile || die
-}
diff --git a/dev-ruby/sexp_processor/Manifest b/dev-ruby/sexp_processor/Manifest
index c65b777336e7..902ead55d063 100644
--- a/dev-ruby/sexp_processor/Manifest
+++ b/dev-ruby/sexp_processor/Manifest
@@ -1,2 +1,3 @@
-DIST sexp_processor-4.12.0.gem 54784 BLAKE2B bdbb349a85fbd1c7750db3dcd22d9b792eb17605d5157c969d083a8fca404b1af3db1e2bfdcf76a6b7f392043996d246686dfa73117b9efacec529896d5a8e35 SHA512 d1e1ae7cf13b0b8c2e6786aad1bdeda25697d88abec86fc9415bb76d4e9e98097d2fecf16ceddbc80d1d447064bfa73beec5eaa5270ef38ce224c4bdbcdede3a
-DIST sexp_processor-4.12.1.gem 54784 BLAKE2B 95b238abb3050448cd076cfbda61d60c1d2bd90cfc94c3eafb51187b48a26249eb84b26e2a9469414e61f1c26f7764703fdf33842cb77730219048f999d48b92 SHA512 00f27cfea808ce16eba209207f804a432057d434c181d62f44656798d051c783f0232fa9ff9068ba83c254dfc0bb50d59a83196bf2a5f247f438b6467d9ba701
+DIST sexp_processor-4.16.1.gem 56832 BLAKE2B fa17cf32d67cec6a89c202d10dd18af463c70ad2e5455c891b4a68bee6fe6971577067192ae5ad2bfb7eb3f932a1988cb878ad5d901191538a69d62968c9d12f SHA512 eda019d253cce8cd6a93532745dc03e8129f7667e798543b0d38488dceb951b058e292976fe085126c421412c289c3d650ce1cf14c0fbbbafdef896b4db615b2
+DIST sexp_processor-4.17.0.gem 57344 BLAKE2B 04355e8a9230095d90a43bb643c1f421a54edf7a0a97280c63026702cabba8fc39ed359df5478667cb087242b444c2ec0768a07ead1d7a7e474eb8117ddc6ba9 SHA512 ce946554e1cf23581d4e5d2071b7ec91999d533a4a2e1403e45775fb5091dd865836c778e345f478f229e068836180fe6ad008bea9cc36942ad66579411513a9
+DIST sexp_processor-4.17.1.gem 57344 BLAKE2B ac95894c5d69c687d953f5a6c84d7aa271917791142fa6008af62a8718a8057f24f20547f3f7e83fecab4641c43eea8e4180da0a5a9d1711a89b622e6a6632a9 SHA512 56eccb98bdcc60db09dadb1f82858602087878be2c8cdfb0ce29bb26420746569fb93f3e5eac0716b55e9bc7fe5e86bde9ada4954dd645b2789e7f3e0fa50e02
diff --git a/dev-ruby/sexp_processor/metadata.xml b/dev-ruby/sexp_processor/metadata.xml
index 28ab0c15f206..da57b9a67d16 100644
--- a/dev-ruby/sexp_processor/metadata.xml
+++ b/dev-ruby/sexp_processor/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">seattlerb/sexp_processor</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/sexp_processor/sexp_processor-4.12.0.ebuild b/dev-ruby/sexp_processor/sexp_processor-4.12.0.ebuild
deleted file mode 100644
index bb2afd42c639..000000000000
--- a/dev-ruby/sexp_processor/sexp_processor-4.12.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Processor for s-expressions created as part of the ParseTree project"
-HOMEPAGE="https://www.zenspider.com/projects/sexp_processor.html"
-
-LICENSE="GPL-2"
-SLOT="4"
-KEYWORDS="alpha amd64 arm hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/minitest-5.5
- )"
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/sexp_processor/sexp_processor-4.12.1.ebuild b/dev-ruby/sexp_processor/sexp_processor-4.12.1.ebuild
deleted file mode 100644
index da5ca5017d9a..000000000000
--- a/dev-ruby/sexp_processor/sexp_processor-4.12.1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Processor for s-expressions created as part of the ParseTree project"
-HOMEPAGE="https://www.zenspider.com/projects/sexp_processor.html"
-
-LICENSE="GPL-2"
-SLOT="4"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/minitest-5.5
- )"
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/sexp_processor/sexp_processor-4.16.1.ebuild b/dev-ruby/sexp_processor/sexp_processor-4.16.1.ebuild
new file mode 100644
index 000000000000..7ccd13c39911
--- /dev/null
+++ b/dev-ruby/sexp_processor/sexp_processor-4.16.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Processor for s-expressions created as part of the ParseTree project"
+HOMEPAGE="https://www.zenspider.com/projects/sexp_processor.html"
+
+LICENSE="GPL-2"
+SLOT="4"
+KEYWORDS="~alpha amd64 arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/minitest-5.5
+ )"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/sexp_processor/sexp_processor-4.17.0.ebuild b/dev-ruby/sexp_processor/sexp_processor-4.17.0.ebuild
new file mode 100644
index 000000000000..24245f570472
--- /dev/null
+++ b/dev-ruby/sexp_processor/sexp_processor-4.17.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Processor for s-expressions created as part of the ParseTree project"
+HOMEPAGE="https://www.zenspider.com/projects/sexp_processor.html"
+
+LICENSE="GPL-2"
+SLOT="4"
+KEYWORDS="~alpha amd64 arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/minitest-5.5
+ )"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/sexp_processor/sexp_processor-4.17.1.ebuild b/dev-ruby/sexp_processor/sexp_processor-4.17.1.ebuild
new file mode 100644
index 000000000000..0b0afbdcef7c
--- /dev/null
+++ b/dev-ruby/sexp_processor/sexp_processor-4.17.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Processor for s-expressions created as part of the ParseTree project"
+HOMEPAGE="https://www.zenspider.com/projects/sexp_processor.html"
+
+LICENSE="GPL-2"
+SLOT="4"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/minitest-5.5
+ )"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/sfl/Manifest b/dev-ruby/sfl/Manifest
deleted file mode 100644
index 68c42e5bc65f..000000000000
--- a/dev-ruby/sfl/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sfl-2.2.gem 8192 BLAKE2B 631712748d0f58a9d76087a194cd889c4cc95696df2ac755a13357e7055f0277a146f6f3df58e678f95134ec9fa1d5ecf720c702b2bf2c7e4385d443381b3cdb SHA512 9b64a966ec4125ae39d273e9ea1529f422dd17bfe2c4696574ab7725c0aad42f974febe7359dafa073c2291b47c6e351e1d549e145d247ed7c2ea6ebc5c73932
diff --git a/dev-ruby/sfl/metadata.xml b/dev-ruby/sfl/metadata.xml
deleted file mode 100644
index 111c94609266..000000000000
--- a/dev-ruby/sfl/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">ujihisa/spawn-for-legacy</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/sfl/sfl-2.2-r1.ebuild b/dev-ruby/sfl/sfl-2.2-r1.ebuild
deleted file mode 100644
index 6e1a75b1a1b0..000000000000
--- a/dev-ruby/sfl/sfl-2.2-r1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="none"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Library providing spawn() which is almost perfectly compatible with ruby 1.9's"
-HOMEPAGE="https://github.com/ujihisa/spawn-for-legacy"
-
-LICENSE="|| ( Ruby BSD-2 )"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-
-IUSE=""
-
-all_ruby_prepare() {
- rm -f Gemfile* || die
- sed -i -e "s:/tmp:${TMPDIR}:" spec/sfl_spec.rb || die
-}
diff --git a/dev-ruby/shorturl/Manifest b/dev-ruby/shorturl/Manifest
deleted file mode 100644
index 7608585bfb54..000000000000
--- a/dev-ruby/shorturl/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST shorturl-1.0.0.gem 10752 BLAKE2B 6d6605dded6584510abaf09168cdb2fbe7bfeac804b2da9e1c80a9a17fcfdd7d594948394838a8490e6d1c186fb166aeebc81ade40bf352db44073816dfc4625 SHA512 d2323107449a5a66065dc225fbec101a653cf4bc1c719f18e7e5d78c89aafc8c4863aace08ed2a007e33c72f6986ea56a0307e856fb4bbf4c213206155d22312
diff --git a/dev-ruby/shorturl/metadata.xml b/dev-ruby/shorturl/metadata.xml
deleted file mode 100644
index eb1e47f2edfb..000000000000
--- a/dev-ruby/shorturl/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/shorturl/shorturl-1.0.0-r2.ebuild b/dev-ruby/shorturl/shorturl-1.0.0-r2.ebuild
deleted file mode 100644
index e6184c8dc2c1..000000000000
--- a/dev-ruby/shorturl/shorturl-1.0.0-r2.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_TASK_DOC="doc"
-
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.txt README.rdoc TODO.rdoc"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="A very simple library to use URL shortening services such as TinyURL or RubyURL"
-HOMEPAGE="https://github.com/robbyrussell/shorturl/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~ppc x86 ~x86-fbsd ~x86-macos"
-IUSE=""
-
-# All tests require network connectivity.
-RESTRICT="test"
-
-each_ruby_test() {
- ${RUBY} -Ilib:test test/ts_all.rb || die "tests failed"
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- if use doc; then
- # If the doc build fails, the doc directory might not exist
- pushd doc &>/dev/null || die "pushd doc failed"
- dohtml -r .
- popd &>/dev/null
- fi
-}
diff --git a/dev-ruby/shotgun/Manifest b/dev-ruby/shotgun/Manifest
deleted file mode 100644
index d12c47d73f09..000000000000
--- a/dev-ruby/shotgun/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST shotgun-0.9.2.gem 16384 BLAKE2B aa87fbaf2af41a28dac3d5fadc635ff0948dc874e0a02c6b6a9a7717e955a093862b18b6a37d76d6fbb776fb2e3b62fd5be7fffc9b97eea99719748e2c66d45a SHA512 62228b0b8bdac815e2204fd89d3e106d033cfee7668ef12406120e5a21f52770ee36c6fa7b3edf3eaf09bdfde5849239364d3483a817914024c21618897e8d9a
diff --git a/dev-ruby/shotgun/metadata.xml b/dev-ruby/shotgun/metadata.xml
deleted file mode 100644
index 49f46f8cacf5..000000000000
--- a/dev-ruby/shotgun/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rtomayko/shotgun</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/shotgun/shotgun-0.9.2.ebuild b/dev-ruby/shotgun/shotgun-0.9.2.ebuild
deleted file mode 100644
index a98cdd82f3c5..000000000000
--- a/dev-ruby/shotgun/shotgun-0.9.2.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# No documentation task
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Forking implementation of rackup"
-HOMEPAGE="https://github.com/rtomayko/shotgun"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-# Warning: the code does not use gem versioning to make sure to load
-# only the right rack version so we might need to patch it to work :/
-ruby_add_rdepend 'dev-ruby/rack:*'
-ruby_add_bdepend "test? ( dev-ruby/bacon )"
-
-each_ruby_test() {
- ${RUBY} -Ilib test/test_shotgun_static.rb || die
- ${RUBY} -Ilib test/test_shotgun_loader.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- doman man/shotgun.1
-}
diff --git a/dev-ruby/shoulda-context/Manifest b/dev-ruby/shoulda-context/Manifest
index 1e75b8b29b29..436b7385e5a5 100644
--- a/dev-ruby/shoulda-context/Manifest
+++ b/dev-ruby/shoulda-context/Manifest
@@ -1 +1,2 @@
DIST shoulda-context-1.2.2.gem 24064 BLAKE2B a6068da369c00a36e6056a8ebba96eca90efddf94613dfc90c9f2a47bec2c054a41fa61b861b2f3ec1195e417bdc54ab60d53f91bc5e0f167eac07b84880892b SHA512 b09f5ce2db59bbb26d5678b17b6641b79df7983d25e81a31bc10c42b702bdba09795b692d711d59c103beb2f691b503567e37c46668f77e600416551ef2c5e05
+DIST shoulda-context-2.0.0.gem 34304 BLAKE2B b31f7e052b54fb60fb7fff84fc48beed406864b871f3c125db4f28d1ce0f400bb0ad3479d438d20a28f585b6e5da101b71228f598e6bdc177512f048273a8524 SHA512 c8d856a95b3dfe85fd92c79f18e03a2765ad219b83ab132017fefcffd0262b04bcebf267e6bbaec0ed3dff1d4d345bd74c1f9db1d2a22938ee8d85ee1078ac6e
diff --git a/dev-ruby/shoulda-context/files/shoulda-context-2.0.0-file-exists.patch b/dev-ruby/shoulda-context/files/shoulda-context-2.0.0-file-exists.patch
new file mode 100644
index 000000000000..78f7dfc3f0b5
--- /dev/null
+++ b/dev-ruby/shoulda-context/files/shoulda-context-2.0.0-file-exists.patch
@@ -0,0 +1,26 @@
+From ee3aeb239ea69c9a855d64e8c1cfda87958c833d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch@redhat.com>
+Date: Thu, 22 Dec 2022 15:03:17 +0100
+Subject: [PATCH] Use File.exist?
+
+`File.exists?` was deprecated while ago and removed in Ruby 3.2.
+
+https://bugs.ruby-lang.org/issues/17391
+https://github.com/ruby/ruby/pull/5352
+---
+ exe/convert_to_should_syntax | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/exe/convert_to_should_syntax b/exe/convert_to_should_syntax
+index d1264d07..ebdda984 100755
+--- a/exe/convert_to_should_syntax
++++ b/exe/convert_to_should_syntax
+@@ -31,7 +31,7 @@ usage("Temp directory '#{TMP}' is not valid. Set TMPDIR environment variable to
+
+ file = ARGV.shift
+ tmpfile = File.join(TMP, File.basename(file))
+-usage("File '#{file}' doesn't exist") unless File.exists?(file)
++usage("File '#{file}' doesn't exist") unless File.exist?(file)
+
+ FileUtils.cp(file, tmpfile)
+ contents = File.read(tmpfile)
diff --git a/dev-ruby/shoulda-context/metadata.xml b/dev-ruby/shoulda-context/metadata.xml
index 28ab0c15f206..5bd462be9980 100644
--- a/dev-ruby/shoulda-context/metadata.xml
+++ b/dev-ruby/shoulda-context/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">thoughtbot/shoulda-context</remote-id>
+ <remote-id type="rubygems">shoulda-context</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/shoulda-context/shoulda-context-1.2.2-r1.ebuild b/dev-ruby/shoulda-context/shoulda-context-1.2.2-r1.ebuild
new file mode 100644
index 000000000000..9a78de8730e1
--- /dev/null
+++ b/dev-ruby/shoulda-context/shoulda-context-1.2.2-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CONTRIBUTING.md README.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="init.rb rails tasks"
+
+# Don't install the conversion script to avoid collisions with older
+# shoulda.
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Context framework extracted from Shoulda"
+HOMEPAGE="https://github.com/thoughtbot/shoulda-context"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="doc test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2
+ <dev-ruby/mocha-1 )"
+
+all_ruby_prepare() {
+ sed -i -e "1igem 'mocha', '~>0.10'\n" test/test_helper.rb || die
+}
+
+each_ruby_test() {
+ BUNDLE_GEMFILE=x ruby-ng_testrb-2 -Itest test/shoulda/*_test.rb || die
+}
diff --git a/dev-ruby/shoulda-context/shoulda-context-1.2.2.ebuild b/dev-ruby/shoulda-context/shoulda-context-1.2.2.ebuild
deleted file mode 100644
index 2ff6f513e3f9..000000000000
--- a/dev-ruby/shoulda-context/shoulda-context-1.2.2.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CONTRIBUTING.md README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="init.rb rails tasks"
-
-# Don't install the conversion script to avoid collisions with older
-# shoulda.
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Context framework extracted from Shoulda"
-HOMEPAGE="https://github.com/thoughtbot/shoulda-context"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 hppa ~ppc ~ppc64"
-IUSE="doc test"
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2
- <dev-ruby/mocha-1 )"
-
-all_ruby_prepare() {
- sed -i -e "1igem 'mocha', '~>0.10'\n" test/test_helper.rb || die
-}
-
-each_ruby_test() {
- BUNDLE_GEMFILE=x ruby-ng_testrb-2 -Itest test/shoulda/*_test.rb || die
-}
diff --git a/dev-ruby/shoulda-context/shoulda-context-2.0.0-r1.ebuild b/dev-ruby/shoulda-context/shoulda-context-2.0.0-r1.ebuild
new file mode 100644
index 000000000000..61cc12eb8528
--- /dev/null
+++ b/dev-ruby/shoulda-context/shoulda-context-2.0.0-r1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CONTRIBUTING.md README.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="tasks"
+
+# Don't install the conversion script to avoid collisions with older
+# shoulda.
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Context framework extracted from Shoulda"
+HOMEPAGE="https://github.com/thoughtbot/shoulda-context"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="doc test"
+
+PATCHES=( "${FILESDIR}/${P}-file-exists.patch" )
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2
+ >=dev-ruby/mocha-1.0 )"
+
+all_ruby_prepare() {
+ sed -e '/\(current_bundle\|CurrentBundle\)/ s:^:#:' \
+ -e '/pry-byebug/ s:^:#:' \
+ -e '/warnings_logger/ s:^:#: ; /WarningsLogger/,/^)/ s:^:#:' \
+ -e '/rails_application_with_shoulda_context/ s:^:#:' \
+ -i test/test_helper.rb || die
+ rm -f test/shoulda/{railtie,rerun_snippet,test_framework_detection}_test.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'Dir["test/shoulda/*_test.rb"].each { require _1 }' || die
+}
diff --git a/dev-ruby/shoulda-context/shoulda-context-2.0.0.ebuild b/dev-ruby/shoulda-context/shoulda-context-2.0.0.ebuild
new file mode 100644
index 000000000000..5a6a7399f6e7
--- /dev/null
+++ b/dev-ruby/shoulda-context/shoulda-context-2.0.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CONTRIBUTING.md README.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="tasks"
+
+# Don't install the conversion script to avoid collisions with older
+# shoulda.
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Context framework extracted from Shoulda"
+HOMEPAGE="https://github.com/thoughtbot/shoulda-context"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="doc test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2
+ >=dev-ruby/mocha-1.0 )"
+
+all_ruby_prepare() {
+ sed -e '/\(current_bundle\|CurrentBundle\)/ s:^:#:' \
+ -e '/pry-byebug/ s:^:#:' \
+ -e '/warnings_logger/ s:^:#: ; /WarningsLogger/,/^)/ s:^:#:' \
+ -e '/rails_application_with_shoulda_context/ s:^:#:' \
+ -i test/test_helper.rb || die
+ rm -f test/shoulda/{railtie,rerun_snippet,test_framework_detection}_test.rb || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'Dir["test/shoulda/*_test.rb"].each { require _1 }' || die
+}
diff --git a/dev-ruby/shoulda-matchers/Manifest b/dev-ruby/shoulda-matchers/Manifest
index b17c61e94568..951ec2dd21fe 100644
--- a/dev-ruby/shoulda-matchers/Manifest
+++ b/dev-ruby/shoulda-matchers/Manifest
@@ -1,6 +1,5 @@
-DIST shoulda-matchers-2.8.0.gem 153600 BLAKE2B 49ddfe686bbd80665cde74019a046564b6863bca1ae81517ef1ee8c9f91e3f5d58a5d25e7640b1a5e3cb9c99367f9bf5672f63b9632427eba91c40aa4d2bd2ef SHA512 7b40220811a11cf57cfa38457eaab612ec9f6db5b660df21bd142b3df30d3691d3b7b3b4f931eed1e186c5afe4b576eee2c86f6f8f491d46955598f1441a9027
DIST shoulda-matchers-3.1.3.gem 208384 BLAKE2B 0ce7cb91ec8a311ecd4872ca45b178686fedb126fd5a05d55cc8654f5a40d1ed7e0a1da2b2c47c34ce3e5ed13a302a1d309f4afa67bafb37d5ed8a724945e97f SHA512 c61397d20724f3048172a8a20ef8abaeafdba3a1d5d4b923b1b11480b25c70820fd372eb2851c6eb307894bc0b7e1aae515e23a3581a83db1b65a2c778b22d67
-DIST shoulda-matchers-4.0.1.tar.gz 222637 BLAKE2B 70d1aaa08f7670716f9ad385a22cbca709827f2de276d2a82ea8306ea43c44e99f9a2e698813a8c99036568a1f451a7c39d06dc5effd438d2bd31dcab32df8a8 SHA512 c2d8b80d4a0fa8d607b62f56c2718fc9922459f85ffb8a56b0c933c60fc258ce3fe75b7676fee1b178c56d1e35e28356abd855e2e7046b82268f743010c9b273
-DIST shoulda-matchers-4.1.0.tar.gz 231976 BLAKE2B dc77f6c8b31209e6651b8cd277a35afb6db9d32db9ce76cdb4f7b53fcd4dcfd86fe147b2aef1cd387eac602aedd863a6c5bb478a763446c30a88bbd0ed61de73 SHA512 9688712cdb2b5440f0a0a41df1c2956d3bb6f8824a41c0c5418706fc9124296705639286e04cc4d90e083b7b44a96b10f831aab2ae382f7379054ea6adb489d1
-DIST shoulda-matchers-4.1.1.tar.gz 234756 BLAKE2B 19f178b6f80bbc4439053a11772ed449186f507ee1c971a20df1c50931f6ffb3f8e1555d603a111916fb2ab18329aaf97177e2610ad9e5186bc1fcea4c09f48c SHA512 af2df1321e5421211a01fe9b3a94e2786dd7526050ecd38fd256df2c0ed8187d51423df0df8bdfeb1c3eca9eeb9dc0b757605eb6fef5c42e1895deb2fcac257c
-DIST shoulda-matchers-4.1.2.tar.gz 234999 BLAKE2B eccfc9850a7e1ee7bd85575b014c372c0e48104e7792df60046006cfc8398225edd3229532632da30f40bd5b2274aa5a5ad4862edf4eb43832d010efc5ecf773 SHA512 c0b78e2cceeb3b7af9b38b248807b2f86cec85f0ad778a1b9b4e355f6d5488ef125623d9bb2fe10983dc6b6c0cae343b2497a6e438bc3f9c148ccd5462c70510
+DIST shoulda-matchers-4.5.1.tar.gz 243634 BLAKE2B 32d846d0dc3c8725a9bd0d60e858eb9fe4106a20222503ac908d1a9c9c310d8e1477aa6264f06961812151b9bd1a1a33488707d9c96524cd3431ed7b3246e534 SHA512 8c240fe7699094a63db824145ca28c245526e95d489fac82e1a28a2418ae40524ba0a184a7f9b269b7c31ad7ae2cbc24b453547cab0845639fdea442bada483a
+DIST shoulda-matchers-5.3.0.tar.gz 244767 BLAKE2B 4a1a006702bb352acb338c71e0c3152bfce288c51d676c194ce3135d41057d119c02053c26e5e9079dee49514f3396f6f0155fd310063713a975d747221d8e34 SHA512 5794f1eafdb852732e35433b7ba06975a65ec25363b8c7dedf154644fbf65ecb8b929da538f1a49ad4e767b286f7e8910cd06fa6f41f5ccc6f0e8a62f498c56e
+DIST shoulda-matchers-6.0.0.tar.gz 256754 BLAKE2B cf231b2f331d3b2f89a4db5e3146241c1274191b2a175bb98643b6bff2732ed0373214a9bcfca8201b3374038a385ea39725528af9479d9a0e5d3feb27cec07e SHA512 c3136f5b214416f5c8a47ddfeb7467255cdacd474480294ff0a19f6eded35f4db9431560fb6716a1a1dc23605f8ec4ede398682964b11a8c5181fab2665799c0
+DIST shoulda-matchers-6.1.0.tar.gz 259348 BLAKE2B 50319c30eebea9c86642cc9942e0e8c4a21bf5359fab48fd88ec03c9df535f5bf6b65a44cfc2ab0a7bf79e3f99788ce19a76f043c8a9a8514b8f27f406d05db0 SHA512 c990f3fbbb0b505583e3a2bf0c0e09ee38fa914617e3a1952e638964df94e5ec452d6610a1437ecfae931f313dbb8df629bf516ed8bfa90d67e9fcbc6cfd0d0b
diff --git a/dev-ruby/shoulda-matchers/metadata.xml b/dev-ruby/shoulda-matchers/metadata.xml
index 0f303e469c5c..4d190d2c5eab 100644
--- a/dev-ruby/shoulda-matchers/metadata.xml
+++ b/dev-ruby/shoulda-matchers/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-2.8.0-r1.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-2.8.0-r1.ebuild
deleted file mode 100644
index fa5a62a6a4ab..000000000000
--- a/dev-ruby/shoulda-matchers/shoulda-matchers-2.8.0-r1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_RECIPE_TEST=""
-
-RUBY_FAKEGEM_EXTRAINSTALL="NEWS.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Making tests easy on the fingers and eyes"
-HOMEPAGE="https://github.com/thoughtbot/shoulda-matchers"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-3.0.0"
diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-3.1.3-r2.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-3.1.3-r2.ebuild
new file mode 100644
index 000000000000..1291d75132f0
--- /dev/null
+++ b/dev-ruby/shoulda-matchers/shoulda-matchers-3.1.3-r2.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRAINSTALL="NEWS.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Making tests easy on the fingers and eyes"
+HOMEPAGE="https://github.com/thoughtbot/shoulda-matchers"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+
+ruby_add_rdepend ">=dev-ruby/activesupport-4.0.0:*"
diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-3.1.3.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-3.1.3.ebuild
deleted file mode 100644
index 32252b23022e..000000000000
--- a/dev-ruby/shoulda-matchers/shoulda-matchers-3.1.3.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_RECIPE_TEST=""
-
-RUBY_FAKEGEM_EXTRAINSTALL="NEWS.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Making tests easy on the fingers and eyes"
-HOMEPAGE="https://github.com/thoughtbot/shoulda-matchers"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-4.0.0:*"
diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-4.0.1.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-4.0.1.ebuild
deleted file mode 100644
index 58b1014729ed..000000000000
--- a/dev-ruby/shoulda-matchers/shoulda-matchers-4.0.1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_EXTRAINSTALL="NEWS.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Making tests easy on the fingers and eyes"
-HOMEPAGE="https://github.com/thoughtbot/shoulda-matchers"
-SRC_URI="https://github.com/thoughtbot/shoulda-matchers/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-4.2.0:*"
-
-all_ruby_prepare() {
- sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-4.1.0.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-4.1.0.ebuild
deleted file mode 100644
index 2d24aeacace5..000000000000
--- a/dev-ruby/shoulda-matchers/shoulda-matchers-4.1.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_EXTRAINSTALL="NEWS.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Making tests easy on the fingers and eyes"
-HOMEPAGE="https://github.com/thoughtbot/shoulda-matchers"
-SRC_URI="https://github.com/thoughtbot/shoulda-matchers/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-4.2.0:*"
-
-all_ruby_prepare() {
- sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb || die
- sed -i -e '/s.files/,/^ end/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-4.1.1.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-4.1.1.ebuild
deleted file mode 100644
index 2d24aeacace5..000000000000
--- a/dev-ruby/shoulda-matchers/shoulda-matchers-4.1.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_EXTRAINSTALL="NEWS.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Making tests easy on the fingers and eyes"
-HOMEPAGE="https://github.com/thoughtbot/shoulda-matchers"
-SRC_URI="https://github.com/thoughtbot/shoulda-matchers/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-4.2.0:*"
-
-all_ruby_prepare() {
- sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb || die
- sed -i -e '/s.files/,/^ end/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-4.1.2.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-4.1.2.ebuild
deleted file mode 100644
index eac1dba89b96..000000000000
--- a/dev-ruby/shoulda-matchers/shoulda-matchers-4.1.2.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_EXTRAINSTALL="NEWS.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Making tests easy on the fingers and eyes"
-HOMEPAGE="https://github.com/thoughtbot/shoulda-matchers"
-SRC_URI="https://github.com/thoughtbot/shoulda-matchers/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-4.2.0:*"
-
-all_ruby_prepare() {
- sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb || die
- sed -i -e '/s.files/,/^ end/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-4.5.1-r1.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-4.5.1-r1.ebuild
new file mode 100644
index 000000000000..dcca6f261291
--- /dev/null
+++ b/dev-ruby/shoulda-matchers/shoulda-matchers-4.5.1-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRAINSTALL="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Making tests easy on the fingers and eyes"
+HOMEPAGE="https://github.com/thoughtbot/shoulda-matchers"
+SRC_URI="https://github.com/thoughtbot/shoulda-matchers/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+ruby_add_rdepend ">=dev-ruby/activesupport-4.2.0:*"
+
+all_ruby_prepare() {
+ sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb || die
+ #sed -i -e '/s.files/,/^ end/ s:^:#:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-5.3.0.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-5.3.0.ebuild
new file mode 100644
index 000000000000..9cfecde2e3e8
--- /dev/null
+++ b/dev-ruby/shoulda-matchers/shoulda-matchers-5.3.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRAINSTALL="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Making tests easy on the fingers and eyes"
+HOMEPAGE="https://github.com/thoughtbot/shoulda-matchers"
+SRC_URI="https://github.com/thoughtbot/shoulda-matchers/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+
+# Fedora manage to run the tests, but it's still pretty tricky.
+# https://src.fedoraproject.org/rpms/rubygem-shoulda-matchers/blob/rawhide/f/rubygem-shoulda-matchers.spec
+RESTRICT="test"
+
+ruby_add_rdepend ">=dev-ruby/activesupport-5.2.0:*"
+
+all_ruby_prepare() {
+ sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb || die
+
+ #rm Gemfile.lock || die
+
+ # Avoid Appraisal and Bundler.
+ #sed -i "/current_bundle/ s/^/#/" \
+ # spec/acceptance_spec_helper.rb \
+ # spec/support/unit/load_environment.rb || die
+ #sed -i "/CurrentBundle/ s/^/#/" \
+ # spec/acceptance_spec_helper.rb \
+ # spec/support/unit/load_environment.rb || die
+
+ # Avoid git and sprockets dependencies.
+ #sed -i '/def rails_new_command/,/^ end$/ {
+ # /rails new/ s/"$/ --skip-git --skip-asset-pipeline&/
+ #}' spec/support/unit/rails_application.rb || die
+ #sed -i '/def rails_new_command/,/^ end$/ {
+ # /rails new/ s/"$/ --skip-git --skip-asset-pipeline&/
+ #}' spec/support/acceptance/helpers/step_helpers.rb || die
+}
diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-6.0.0.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-6.0.0.ebuild
new file mode 100644
index 000000000000..2e226c418752
--- /dev/null
+++ b/dev-ruby/shoulda-matchers/shoulda-matchers-6.0.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRAINSTALL="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Making tests easy on the fingers and eyes"
+HOMEPAGE="https://github.com/thoughtbot/shoulda-matchers"
+SRC_URI="https://github.com/thoughtbot/shoulda-matchers/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+# Fedora manage to run the tests, but it's still pretty tricky.
+# https://src.fedoraproject.org/rpms/rubygem-shoulda-matchers/blob/rawhide/f/rubygem-shoulda-matchers.spec
+RESTRICT="test"
+
+ruby_add_rdepend ">=dev-ruby/activesupport-5.2.0:*"
+
+all_ruby_prepare() {
+ sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb || die
+
+ #rm Gemfile.lock || die
+
+ # Avoid Appraisal and Bundler.
+ #sed -i "/current_bundle/ s/^/#/" \
+ # spec/acceptance_spec_helper.rb \
+ # spec/support/unit/load_environment.rb || die
+ #sed -i "/CurrentBundle/ s/^/#/" \
+ # spec/acceptance_spec_helper.rb \
+ # spec/support/unit/load_environment.rb || die
+
+ # Avoid git and sprockets dependencies.
+ #sed -i '/def rails_new_command/,/^ end$/ {
+ # /rails new/ s/"$/ --skip-git --skip-asset-pipeline&/
+ #}' spec/support/unit/rails_application.rb || die
+ #sed -i '/def rails_new_command/,/^ end$/ {
+ # /rails new/ s/"$/ --skip-git --skip-asset-pipeline&/
+ #}' spec/support/acceptance/helpers/step_helpers.rb || die
+}
diff --git a/dev-ruby/shoulda-matchers/shoulda-matchers-6.1.0.ebuild b/dev-ruby/shoulda-matchers/shoulda-matchers-6.1.0.ebuild
new file mode 100644
index 000000000000..2e226c418752
--- /dev/null
+++ b/dev-ruby/shoulda-matchers/shoulda-matchers-6.1.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRAINSTALL="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Making tests easy on the fingers and eyes"
+HOMEPAGE="https://github.com/thoughtbot/shoulda-matchers"
+SRC_URI="https://github.com/thoughtbot/shoulda-matchers/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+# Fedora manage to run the tests, but it's still pretty tricky.
+# https://src.fedoraproject.org/rpms/rubygem-shoulda-matchers/blob/rawhide/f/rubygem-shoulda-matchers.spec
+RESTRICT="test"
+
+ruby_add_rdepend ">=dev-ruby/activesupport-5.2.0:*"
+
+all_ruby_prepare() {
+ sed -i -e '/pry/ s:^:#:' spec/spec_helper.rb || die
+
+ #rm Gemfile.lock || die
+
+ # Avoid Appraisal and Bundler.
+ #sed -i "/current_bundle/ s/^/#/" \
+ # spec/acceptance_spec_helper.rb \
+ # spec/support/unit/load_environment.rb || die
+ #sed -i "/CurrentBundle/ s/^/#/" \
+ # spec/acceptance_spec_helper.rb \
+ # spec/support/unit/load_environment.rb || die
+
+ # Avoid git and sprockets dependencies.
+ #sed -i '/def rails_new_command/,/^ end$/ {
+ # /rails new/ s/"$/ --skip-git --skip-asset-pipeline&/
+ #}' spec/support/unit/rails_application.rb || die
+ #sed -i '/def rails_new_command/,/^ end$/ {
+ # /rails new/ s/"$/ --skip-git --skip-asset-pipeline&/
+ #}' spec/support/acceptance/helpers/step_helpers.rb || die
+}
diff --git a/dev-ruby/shoulda/Manifest b/dev-ruby/shoulda/Manifest
index ed2a8d37e25d..28daf91eead2 100644
--- a/dev-ruby/shoulda/Manifest
+++ b/dev-ruby/shoulda/Manifest
@@ -1,2 +1,2 @@
-DIST shoulda-2.11.3.tar.gz 145068 BLAKE2B 5e6d9b78b255612ec18c78076f9c4d45265a3e02a8fd56a127ea8f235e3b344005942c4b6e53014e6328206501c178ce76e1554a9d995ba0de04f5afefe4a0f7 SHA512 0b347c4a8be177b5806364114c25dc786ca2ac95a11c93a723dbc9ea1f6d8ae62df7fb420a52d477cd1e10e8d894074072a040eef36ee8a43440e5256c8427e4
DIST shoulda-3.6.0.tar.gz 22691 BLAKE2B 798b88e208355b0325b9e8b48f66687ad2702e1b5fc058d45504648fe7c7760b018eaf3d1c7bd45c68656c7bbba8fccc9b74d72003ee0b78ac53a277567609bb SHA512 10f7c6801eaabafa08eb2bc9c4d2a96237d4494aee7d40e5db8cf9c1abd8cccfe86aa21b0e68e2ec42cf222d285cdbec11ed2fdd804ffb8bd65ffd2efa3e72ac
+DIST shoulda-4.0.0.tar.gz 17408 BLAKE2B 8e5bd8b5a01292d8c08f76434496a3e99669f4c02c35092e17f4216a8164867f476c6a596a9f1986416106f21daa0d0b24ddb2d04be13c8b2583e98715301bf8 SHA512 850cc685d055ae1e7367f48e963d2839fee3c48a076e079bf3e1c6de2e30d808e78c07c425d0bbcf7ceaeeb944dc647c4f11ceac1ca48134b6b8b555fda53bfe
diff --git a/dev-ruby/shoulda/metadata.xml b/dev-ruby/shoulda/metadata.xml
index 882676617d24..9dfa6aba9b11 100644
--- a/dev-ruby/shoulda/metadata.xml
+++ b/dev-ruby/shoulda/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/shoulda/shoulda-2.11.3-r2.ebuild b/dev-ruby/shoulda/shoulda-2.11.3-r2.ebuild
deleted file mode 100644
index 9b6c217afa9e..000000000000
--- a/dev-ruby/shoulda/shoulda-2.11.3-r2.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Use rdoc recipe to avoid obsolete Rakefile
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CONTRIBUTION_GUIDELINES.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Making tests easy on the fingers and eyes"
-HOMEPAGE="http://thoughtbot.com/projects/shoulda"
-SRC_URI="https://github.com/thoughtbot/${PN}/tarball/v${PV} -> ${P}.tar.gz"
-RUBY_S="thoughtbot-${PN}-*"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-# tests seem to be quite broken :( They require working version of
-# various rails versions. There appear to be unit and matcher tests but
-# they can't be run on their own.
-RESTRICT=test
diff --git a/dev-ruby/shoulda/shoulda-3.6.0-r2.ebuild b/dev-ruby/shoulda/shoulda-3.6.0-r2.ebuild
new file mode 100644
index 000000000000..00c8a7e1334a
--- /dev/null
+++ b/dev-ruby/shoulda/shoulda-3.6.0-r2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Making tests easy on the fingers and eyes"
+HOMEPAGE="http://thoughtbot.com/projects/shoulda"
+SRC_URI="https://github.com/thoughtbot/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+# This now more or less a meta-gem and it only contains features for
+# integration tests using Appraisals, which we don't currently package.
+RESTRICT=test
+
+ruby_add_rdepend ">=dev-ruby/shoulda-context-1.0.1
+ dev-ruby/shoulda-matchers:3"
+
+all_ruby_prepare() {
+ sed -e '/executables/,/^ end/d ; /test_files/d; s/git ls-files/find * -print/' -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/shoulda/shoulda-3.6.0-r3.ebuild b/dev-ruby/shoulda/shoulda-3.6.0-r3.ebuild
new file mode 100644
index 000000000000..dc60ed190d3a
--- /dev/null
+++ b/dev-ruby/shoulda/shoulda-3.6.0-r3.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Making tests easy on the fingers and eyes"
+HOMEPAGE="https://github.com/thoughtbot/shoulda"
+SRC_URI="https://github.com/thoughtbot/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+# This now more or less a meta-gem and it only contains features for
+# integration tests using Appraisals, which we don't currently package.
+RESTRICT=test
+
+ruby_add_rdepend ">=dev-ruby/shoulda-context-1.0.1:0
+ dev-ruby/shoulda-matchers:3"
+
+all_ruby_prepare() {
+ sed -e '/executables/,/^ end/d ; /test_files/d; s/git ls-files/find * -print/' -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/shoulda/shoulda-3.6.0.ebuild b/dev-ruby/shoulda/shoulda-3.6.0.ebuild
deleted file mode 100644
index 7b71cea84191..000000000000
--- a/dev-ruby/shoulda/shoulda-3.6.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Making tests easy on the fingers and eyes"
-HOMEPAGE="http://thoughtbot.com/projects/shoulda"
-SRC_URI="https://github.com/thoughtbot/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64"
-IUSE=""
-
-# This now more or less a meta-gem and it only contains features for
-# integration tests using Appraisals, which we don't currently package.
-RESTRICT=test
-
-ruby_add_rdepend ">=dev-ruby/shoulda-context-1.0.1
- dev-ruby/shoulda-matchers:3"
-
-all_ruby_prepare() {
- sed -e '/executables/,/^ end/d ; /test_files/d; s/git ls-files/find . -print/' -i ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/shoulda/shoulda-4.0.0.ebuild b/dev-ruby/shoulda/shoulda-4.0.0.ebuild
new file mode 100644
index 000000000000..87c0b420b2b1
--- /dev/null
+++ b/dev-ruby/shoulda/shoulda-4.0.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Making tests easy on the fingers and eyes"
+HOMEPAGE="https://github.com/thoughtbot/shoulda"
+SRC_URI="https://github.com/thoughtbot/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+# This now more or less a meta-gem and it only contains features for
+# integration tests using Appraisals, which we don't currently package.
+RESTRICT=test
+
+ruby_add_rdepend "
+ dev-ruby/shoulda-context:2
+ dev-ruby/shoulda-matchers:4"
+
+all_ruby_prepare() {
+ sed -e '/executables/,/^ end/d ; /test_files/d; s/git ls-files/find * -print/' -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/sigar/Manifest b/dev-ruby/sigar/Manifest
deleted file mode 100644
index 9405c0d5a6d6..000000000000
--- a/dev-ruby/sigar/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sigar-0.7.3.gem 205312 BLAKE2B 1a1d526e2f60a4a91ef405bbb7bf6aede2d4707631108f2779dfd1533d345b9e2c1fb586aa748d13ff1f7cb0b228e34618a0e8d549a3b4b4dc44a37684f2e970 SHA512 cdab3ec8b9662bfa3a432f0206c34c99c6e6e0ac5c85a93cb472367a9f325a27d5232bf2166f5c2955817e3ab8bd1035db06aad709ce20cc261f1b15d89dea2a
diff --git a/dev-ruby/sigar/metadata.xml b/dev-ruby/sigar/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/sigar/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/sigar/sigar-0.7.3.ebuild b/dev-ruby/sigar/sigar-0.7.3.ebuild
deleted file mode 100644
index f8b87862d2ba..000000000000
--- a/dev-ruby/sigar/sigar-0.7.3.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="System Information Gatherer And Reporter"
-HOMEPAGE="http://sigar.hyperic.com/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-DEPEND+=" || ( <sys-libs/glibc-2.26 net-libs/libtirpc )"
-
-all_ruby_prepare() {
- sed -i -e '25i$CFLAGS += " -std=gnu89 -I/usr/include/tirpc"' \
- -e '25i$LDFLAGS += " -ltirpc"' bindings/ruby/extconf.rb || die
-
- # Fix compatibility with glibc 2.25
- sed -i -e '26i#include <sys/sysmacros.h>' \
- -e '27i#include <ctype.h>' bindings/ruby/rbsigar.c src/os/linux/linux_sigar.c || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cbindings/ruby extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cbindings/ruby V=1
- mkdir lib || die
- cp bindings/ruby/${PN}$(get_modname) lib/ || die
-}
diff --git a/dev-ruby/sigdump/Manifest b/dev-ruby/sigdump/Manifest
index 66de317f1079..3ed07b3b9bf6 100644
--- a/dev-ruby/sigdump/Manifest
+++ b/dev-ruby/sigdump/Manifest
@@ -1 +1 @@
-DIST sigdump-0.2.4.gem 9216 BLAKE2B 66c3d61eca7f1288de6d95e8d0376d27ab39fee6e5168430801d0f2016f6488eb20cc92e83967d69f690e5ff064952d2696ed08ecd0ab0c4e98c61fdfdbf38cf SHA512 c079f538d3e4e1af61325f18b0580a8d92869800736fc770bc7b193358df480105f1ff223158d52e62ea272e1c375be82ab6415b43c28cc1d74c57cc7640d9cd
+DIST sigdump-0.2.5.gem 12288 BLAKE2B 6d0fa601b9df6c1b3e6bf7d95c1e36a24a01f4b68f37b2e897ba9e0bcd27caa7ec7c96155cd62718deac7958541e9029148bb0ccdfdd8836e26d47dd9a565891 SHA512 2400403768f4606cb21a3fc34b4630800846ef5ad4c06f1bfca3b04fb62208bfd48a53f1f090b8c65858b49d1bf594c42f555c2f997534129793773c837cfa73
diff --git a/dev-ruby/sigdump/metadata.xml b/dev-ruby/sigdump/metadata.xml
index 28ab0c15f206..f51aa85da01a 100644
--- a/dev-ruby/sigdump/metadata.xml
+++ b/dev-ruby/sigdump/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">fluent/sigdump</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/sigdump/sigdump-0.2.4.ebuild b/dev-ruby/sigdump/sigdump-0.2.4.ebuild
deleted file mode 100644
index 0129f83a3db1..000000000000
--- a/dev-ruby/sigdump/sigdump-0.2.4.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="ChangeLog README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Setup signal handler which dumps backtrace of threads and allocated objects"
-HOMEPAGE="https://github.com/frsyuki/sigdump"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
diff --git a/dev-ruby/sigdump/sigdump-0.2.5.ebuild b/dev-ruby/sigdump/sigdump-0.2.5.ebuild
new file mode 100644
index 000000000000..e2db6b3450e7
--- /dev/null
+++ b/dev-ruby/sigdump/sigdump-0.2.5.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="ChangeLog README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Setup signal handler which dumps backtrace of threads and allocated objects"
+HOMEPAGE="https://github.com/fluent/sigdump"
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="0"
+IUSE=""
diff --git a/dev-ruby/simple-rss/metadata.xml b/dev-ruby/simple-rss/metadata.xml
index eb1e47f2edfb..e4a8abc9cfb7 100644
--- a/dev-ruby/simple-rss/metadata.xml
+++ b/dev-ruby/simple-rss/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">cardmagic/simple-rss</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/simple-rss/simple-rss-1.3.3-r1.ebuild b/dev-ruby/simple-rss/simple-rss-1.3.3-r1.ebuild
new file mode 100644
index 000000000000..3b80840365a2
--- /dev/null
+++ b/dev-ruby/simple-rss/simple-rss-1.3.3-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC="doc"
+RUBY_FAKEGEM_EXTRADOC="README.markdown"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A simple, flexible, extensible, and liberal RSS and Atom reader for Ruby"
+HOMEPAGE="https://github.com/cardmagic/simple-rss"
+LICENSE="LGPL-2"
+
+KEYWORDS="amd64 x86"
+SLOT="0"
+IUSE=""
+
+all_ruby_prepare() {
+ # Avoid dependency on bundler
+ sed -i -e '/bundler/d' \
+ -e '/rubyforgepublisher/I s:^:#:' \
+ Rakefile || die
+
+ # Avoid tests that require unpackaged test data
+ sed -i -e '/@\(media_rss\|rss20_utf8\)/ s:^:#:' \
+ -e '/test_rss_utf8/aomit "missing data"' \
+ test/base/base_test.rb || die
+}
diff --git a/dev-ruby/simple-rss/simple-rss-1.3.3.ebuild b/dev-ruby/simple-rss/simple-rss-1.3.3.ebuild
deleted file mode 100644
index 8891f3c44629..000000000000
--- a/dev-ruby/simple-rss/simple-rss-1.3.3.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC="doc"
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple, flexible, extensible, and liberal RSS and Atom reader for Ruby"
-HOMEPAGE="https://github.com/cardmagic/simple-rss"
-LICENSE="LGPL-2"
-
-KEYWORDS="amd64 x86"
-SLOT="0"
-IUSE=""
-
-all_ruby_prepare() {
- # Avoid dependency on bundler
- sed -i -e '/bundler/d' \
- -e '/rubyforgepublisher/I s:^:#:' \
- Rakefile || die
-
- # Avoid tests that require unpackaged test data
- sed -i -e '/@\(media_rss\|rss20_utf8\)/ s:^:#:' \
- -e '/test_rss_utf8/aomit "missing data"' \
- test/base/base_test.rb || die
-}
diff --git a/dev-ruby/simple_oauth/metadata.xml b/dev-ruby/simple_oauth/metadata.xml
index b317f96a06e5..f71e78d91348 100644
--- a/dev-ruby/simple_oauth/metadata.xml
+++ b/dev-ruby/simple_oauth/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/simple_oauth/simple_oauth-0.3.1-r1.ebuild b/dev-ruby/simple_oauth/simple_oauth-0.3.1-r1.ebuild
new file mode 100644
index 000000000000..dd7f12d1d5b1
--- /dev/null
+++ b/dev-ruby/simple_oauth/simple_oauth-0.3.1-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simply builds and verifies OAuth headers"
+HOMEPAGE="https://github.com/laserlemon/simple_oauth"
+SRC_URI="https://github.com/laserlemon/simple_oauth/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e "/simplecov/,+8d" spec/helper.rb || die
+
+ sed -i -e '/files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ export CI=true
+ each_fakegem_test
+}
diff --git a/dev-ruby/simple_oauth/simple_oauth-0.3.1.ebuild b/dev-ruby/simple_oauth/simple_oauth-0.3.1.ebuild
deleted file mode 100644
index 2f1192f31b8b..000000000000
--- a/dev-ruby/simple_oauth/simple_oauth-0.3.1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Simply builds and verifies OAuth headers"
-HOMEPAGE="https://github.com/laserlemon/simple_oauth"
-SRC_URI="https://github.com/laserlemon/simple_oauth/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e "/simplecov/,+8d" spec/helper.rb || die
-
- sed -i -e '/files/d' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- export CI=true
- each_fakegem_test
-}
diff --git a/dev-ruby/simplecov-html/Manifest b/dev-ruby/simplecov-html/Manifest
index 2a7cb31b0d36..1a3d8a02a52c 100644
--- a/dev-ruby/simplecov-html/Manifest
+++ b/dev-ruby/simplecov-html/Manifest
@@ -1 +1 @@
-DIST simplecov-html-0.10.2.gem 183296 BLAKE2B f4edfe25249927d46f32d422b004d8a03671926792ea78016864764242f8bf8dc9131a0580b9519db6798beb3fa093f79a0d585b63d6b6b62c9faf7ae94087e8 SHA512 141b9d55ca7cbf1bb64616482828107c7c33c7d6db1b5650ae9d463e5ece7a7fb56d123c539c7364fe2a35e5faea382620a0b34e337d4c9d4871caafc794a967
+DIST simplecov-html-0.12.3.gem 336896 BLAKE2B 94cfbae7085163ba714b2bdf14b7c5eb1a4bc5fcf39d7e99689d74bb1e693d5b534ca067ba5609f6cfecdba64667dc514b4f5dede020aea176ae2328d1806ea0 SHA512 7fd6dad02b16f512d7fb859f62e5e8bd0a277af103c7829143795ccae60a9a057c323728ac36a1c42dbd143a2f0d175648f6e223e6e7e3e6394a52491d3733af
diff --git a/dev-ruby/simplecov-html/metadata.xml b/dev-ruby/simplecov-html/metadata.xml
index e781caffa063..aa09779b502d 100644
--- a/dev-ruby/simplecov-html/metadata.xml
+++ b/dev-ruby/simplecov-html/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">colszowka/simplecov</remote-id>
+ <remote-id type="github">simplecov-ruby/simplecov</remote-id>
+ <remote-id type="rubygems">simplecov-html</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/simplecov-html/simplecov-html-0.10.2.ebuild b/dev-ruby/simplecov-html/simplecov-html-0.10.2.ebuild
deleted file mode 100644
index 2a331a905c26..000000000000
--- a/dev-ruby/simplecov-html/simplecov-html-0.10.2.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRAINSTALL="assets public views"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Generates a HTML report of your SimpleCov ruby code coverage results"
-HOMEPAGE="https://github.com/colszowka/simplecov"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="0.10"
-IUSE="doc"
diff --git a/dev-ruby/simplecov-html/simplecov-html-0.12.3-r1.ebuild b/dev-ruby/simplecov-html/simplecov-html-0.12.3-r1.ebuild
new file mode 100644
index 000000000000..909e1f573bcd
--- /dev/null
+++ b/dev-ruby/simplecov-html/simplecov-html-0.12.3-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRAINSTALL="assets public views"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Generates a HTML report of your SimpleCov ruby code coverage results"
+HOMEPAGE="https://github.com/simplecov-ruby/simplecov-html"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+SLOT="$(ver_cut 1-2)"
+IUSE="doc"
diff --git a/dev-ruby/simplecov/Manifest b/dev-ruby/simplecov/Manifest
index b6bdc3d5fc08..faa4da37e6cc 100644
--- a/dev-ruby/simplecov/Manifest
+++ b/dev-ruby/simplecov/Manifest
@@ -1,2 +1 @@
-DIST simplecov-0.16.1.tar.gz 62296 BLAKE2B f9ebe2c7ec3d8b5bb80f642be3e9803210f9af334a2e7eacc2d1339567750027bf0505106e9fd641c42b3ad41e5e74ebbe730d8ff80947b1ec2ff23f6ee8fef1 SHA512 5b3c16bcdcbfcbd5282bd91375d1593292ad421a73b88cbdf18fc8f57364e20e1eec44bb084be3619684f9871612ca81f790eea8eec98b61cf523bf38b4a997f
-DIST simplecov-0.17.0.tar.gz 64354 BLAKE2B 640d2b312dd8202ddc13c2f33bfbd325441d4fd6502d8c738c15386fbac90a233043de1386c3bc57649b84a699187b71211c1b529071bae387451a16e5604ad9 SHA512 b477c215bfccafe0f24245078a211d6f7355098fc862b6dddf9c44cfaf9a352157535c628d31da4049323c5c7469be2e33566f381de5bbbb690a430d5d5cf5b6
+DIST simplecov-0.22.0.tar.gz 115236 BLAKE2B d013f254d534ddd1ad273e2a6990c7ec96710cef106c73ecaba18c04ac5922bad52e086f11bf019abb21dd6cfc2f4b02e058b5042029716c6e3ed64e1c35993a SHA512 ba7e1a29a219337c1e00d055408d825b20a7b81ec4768612d9d5e8a18af08d47d86a42cee78c64ae0f431196136b5dd522364882d83e5210366d8aa03d5c54b4
diff --git a/dev-ruby/simplecov/files/simplecov-0.22.0-ruby32-gentoo.patch b/dev-ruby/simplecov/files/simplecov-0.22.0-ruby32-gentoo.patch
new file mode 100644
index 000000000000..293fbe51d747
--- /dev/null
+++ b/dev-ruby/simplecov/files/simplecov-0.22.0-ruby32-gentoo.patch
@@ -0,0 +1,19 @@
+This test is only activated for >= ruby32 because ruby32 adds support
+for assessing coverage within an eval. But the failure isn't anything
+to do with eval.
+
+The test tries to call 'ruby' which in Gentoo isn't (yet!) wrapped,
+so it ends up calling an older Ruby which then results in 0 coverage
+being found. Replace it with a string we can safely sed with the
+correct Ruby per-test.
+--- a/spec/coverage_for_eval_spec.rb
++++ b/spec/coverage_for_eval_spec.rb
+@@ -16,7 +16,7 @@ RSpec.describe "coverage for eval" do
+ end
+
+ context "foo" do
+- let(:command) { "ruby eval_test.rb" }
++ let(:command) { "@GENTOO_RUBY@ eval_test.rb" }
+
+ it "records coverage for erb" do
+ expect(@stdout).to include(" 2 / 3 LOC")
diff --git a/dev-ruby/simplecov/metadata.xml b/dev-ruby/simplecov/metadata.xml
index e781caffa063..7802305b58f0 100644
--- a/dev-ruby/simplecov/metadata.xml
+++ b/dev-ruby/simplecov/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">colszowka/simplecov</remote-id>
+ <remote-id type="github">simplecov-ruby/simplecov</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/simplecov/simplecov-0.16.1-r1.ebuild b/dev-ruby/simplecov/simplecov-0.16.1-r1.ebuild
deleted file mode 100644
index e78addd19b86..000000000000
--- a/dev-ruby/simplecov/simplecov-0.16.1-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_GEMSPEC="simplecov.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Code coverage with a configuration library and merging across test suites"
-HOMEPAGE="https://www.ruby-toolbox.com/projects/simplecov https://github.com/colszowka/simplecov"
-SRC_URI="https://github.com/colszowka/simplecov/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="0.8"
-IUSE="doc"
-
-ruby_add_rdepend "|| ( dev-ruby/json:2 >=dev-ruby/json-1.8:0 )
- dev-ruby/simplecov-html:0.10
- >=dev-ruby/docile-1.1:0"
-
-ruby_add_bdepend "test? (
- dev-ruby/rspec:3
- dev-ruby/test-unit:2
-)"
-
-# There are also cucumber tests that require poltergeist and unpackaged phantomjs gem.
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/ s:^:#:' spec/helper.rb features/support/env.rb || die
-
- # Avoid test depending on spawning ruby and having timing issues
- sed -i -e '/blocks other processes/askip "gentoo"' spec/result_merger_spec.rb || die
-}
-
-each_ruby_test() {
- RSPEC_VERSION=3 ruby-ng_rspec spec/*spec.rb || die
-
- #${RUBY} -S cucumber features || die
-}
diff --git a/dev-ruby/simplecov/simplecov-0.17.0.ebuild b/dev-ruby/simplecov/simplecov-0.17.0.ebuild
deleted file mode 100644
index b0bba4411b73..000000000000
--- a/dev-ruby/simplecov/simplecov-0.17.0.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_GEMSPEC="simplecov.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Code coverage with a configuration library and merging across test suites"
-HOMEPAGE="https://www.ruby-toolbox.com/projects/simplecov https://github.com/colszowka/simplecov"
-SRC_URI="https://github.com/colszowka/simplecov/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="0.8"
-IUSE="doc"
-
-ruby_add_rdepend "|| ( dev-ruby/json:2 >=dev-ruby/json-1.8:0 )
- dev-ruby/simplecov-html:0.10
- >=dev-ruby/docile-1.1:0"
-
-ruby_add_bdepend "test? (
- dev-ruby/rspec:3
- dev-ruby/test-unit:2
-)"
-
-# There are also cucumber tests that require poltergeist and unpackaged phantomjs gem.
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/ s:^:#:' spec/helper.rb features/support/env.rb || die
-
- # Avoid test depending on spawning ruby and having timing issues
- sed -i -e '/blocks other processes/askip "gentoo"' spec/result_merger_spec.rb || die
-}
-
-each_ruby_test() {
- RSPEC_VERSION=3 ruby-ng_rspec spec/*spec.rb || die
-
- #${RUBY} -S cucumber features || die
-}
diff --git a/dev-ruby/simplecov/simplecov-0.22.0.ebuild b/dev-ruby/simplecov/simplecov-0.22.0.ebuild
new file mode 100644
index 000000000000..62da02883a20
--- /dev/null
+++ b/dev-ruby/simplecov/simplecov-0.22.0.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_RECIPE_DOC="none"
+
+RUBY_FAKEGEM_GEMSPEC="simplecov.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Code coverage with a configuration library and merging across test suites"
+HOMEPAGE="https://github.com/simplecov-ruby/simplecov"
+SRC_URI="https://github.com/simplecov-ruby/simplecov/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+SLOT="0.8"
+IUSE="doc"
+
+ruby_add_rdepend "
+ dev-ruby/simplecov-html:0.12
+ >=dev-ruby/simplecov_json_formatter-0.1:0
+ >=dev-ruby/docile-1.1:0"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ dev-ruby/rspec:3
+ dev-ruby/test-unit:2
+)"
+
+# There are also cucumber tests that require poltergeist and unpackaged phantomjs gem.
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.22.0-ruby32-gentoo.patch
+)
+
+all_ruby_prepare() {
+ # Avoid test depending on spawning ruby and having timing issues
+ sed -i -e '/blocks other processes/askip "gentoo"' spec/result_merger_spec.rb || die
+
+ sed -i -e '5i require "bundler"' spec/helper.rb || die
+
+ sed -e '/start_coverage_measurement/,/^ end/ s|with(lines: true)|with({lines: true})|' \
+ -e '/start_coverage_measurement/,/^ end/ s|with(lines: true, branches: true)|with({lines: true, branches: true})|' \
+ -i spec/simplecov_spec.rb || die
+}
+
+each_ruby_test() {
+ sed -i -e "s:@GENTOO_RUBY@:${RUBY}:" spec/coverage_for_eval_spec.rb || die
+ RUBYLIB="${S}/lib" RSPEC_VERSION=3 ruby-ng_rspec spec/ || die
+}
diff --git a/dev-ruby/simplecov_json_formatter/Manifest b/dev-ruby/simplecov_json_formatter/Manifest
new file mode 100644
index 000000000000..1bb9762f6cd8
--- /dev/null
+++ b/dev-ruby/simplecov_json_formatter/Manifest
@@ -0,0 +1 @@
+DIST simplecov_json_formatter-0.1.4.gem 6656 BLAKE2B 57a03ca27911ed798ec2aa7e84a8d037e4565b0b9fec261d0a72d9276355ba27eb8fedea31195bc8b6e6b67b94b9a5f903f326720b862a46790bacd282e83c63 SHA512 1b90167acf4ad9565084488b455ee25ab8930a70a849191228e2868c15f29d257dc5256bb578e11351a942d887dcdeda9191a541cd0fb70e3f0eb8466fb13ddf
diff --git a/dev-ruby/simplecov_json_formatter/metadata.xml b/dev-ruby/simplecov_json_formatter/metadata.xml
new file mode 100644
index 000000000000..0670a7dfae0d
--- /dev/null
+++ b/dev-ruby/simplecov_json_formatter/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">codeclimate-community/simplecov_json_formatter</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/simplecov_json_formatter/simplecov_json_formatter-0.1.4.ebuild b/dev-ruby/simplecov_json_formatter/simplecov_json_formatter-0.1.4.ebuild
new file mode 100644
index 000000000000..7ca5c11b4f4c
--- /dev/null
+++ b/dev-ruby/simplecov_json_formatter/simplecov_json_formatter-0.1.4.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="JSON formatter for SimpleCov"
+HOMEPAGE="https://github.com/codeclimate-community/simplecov_json_formatter"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+SLOT="$(ver_cut 1)"
+IUSE="doc"
+
+# Not packaged in the gem and very fragile for e.g. simplecov versions
+RESTRICT="test"
diff --git a/dev-ruby/simpleidn/Manifest b/dev-ruby/simpleidn/Manifest
new file mode 100644
index 000000000000..afdfc0ee83d1
--- /dev/null
+++ b/dev-ruby/simpleidn/Manifest
@@ -0,0 +1 @@
+DIST simpleidn-0.2.1.tar.gz 204644 BLAKE2B 4c7f82af2ddaa753c8df91f80776b2b00d3a8a8dfda95c9012ebc3e5eea6503fbb0f20a7f79f8c624612e433b0e61cec79bc6a147ef6a04d418cbff72c31c867 SHA512 20a81ea5bca503b167cd2183f762993454a5f7fe082639b70234521f8cb9e4533b1f5f22dfcac18108c90a461185b13fea55f6197ab4c5996116ac359adf5033
diff --git a/dev-ruby/simpleidn/metadata.xml b/dev-ruby/simpleidn/metadata.xml
new file mode 100644
index 000000000000..a3825340b497
--- /dev/null
+++ b/dev-ruby/simpleidn/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">mmriis/simpleidn</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/simpleidn/simpleidn-0.2.1-r1.ebuild b/dev-ruby/simpleidn/simpleidn-0.2.1-r1.ebuild
new file mode 100644
index 000000000000..3a3d0a7ed145
--- /dev/null
+++ b/dev-ruby/simpleidn/simpleidn-0.2.1-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc"
+RUBY_FAKEGEM_EXTRAINSTALL="tables"
+
+RUBY_FAKEGEM_GEMSPEC="simpleidn.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Allows easy conversion from punycode ACE to unicode UTF-8 strings and vice-versa"
+HOMEPAGE="https://github.com/mmriis/simpleidn"
+SRC_URI="https://github.com/mmriis/simpleidn/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64 ~arm ~x86"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/unf-0.1.4 =dev-ruby/unf-0.1*"
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/sinatra-partial/Manifest b/dev-ruby/sinatra-partial/Manifest
deleted file mode 100644
index 9e03f313c77c..000000000000
--- a/dev-ruby/sinatra-partial/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sinatra-partial-1.0.1.gem 16384 BLAKE2B d129940c425a7e1b079860ab5c9f6459c39fc04d4256a0c1a5f25bcb9f3198133c897bd4b447429cd1e5ef11fdbaffa8d8b9384898d80d2564cbadb08e2131cd SHA512 04fb0826cdc9f6d8ce6ae8d80a9eafb3b0b37136fcecfb3f5e45a1bac101dac0486168473ff66de75979a5153d4efbdce17b63d774f5ddcd0e7fa251df0da1bd
diff --git a/dev-ruby/sinatra-partial/metadata.xml b/dev-ruby/sinatra-partial/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/sinatra-partial/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/sinatra-partial/sinatra-partial-1.0.1.ebuild b/dev-ruby/sinatra-partial/sinatra-partial-1.0.1.ebuild
deleted file mode 100644
index 3f07b0c8b6d8..000000000000
--- a/dev-ruby/sinatra-partial/sinatra-partial-1.0.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.markdown README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Just the partials helper in a gem"
-HOMEPAGE="https://github.com/yb66/Sinatra-Partial"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/sinatra-1.4"
-
-ruby_add_bdepend "test? ( dev-ruby/haml dev-ruby/rack-test dev-ruby/rspec-its dev-ruby/timecop )"
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/^end/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/sinatra/Manifest b/dev-ruby/sinatra/Manifest
index 4c89fa273329..2631da1f397a 100644
--- a/dev-ruby/sinatra/Manifest
+++ b/dev-ruby/sinatra/Manifest
@@ -1,3 +1,4 @@
-DIST sinatra-1.4.8.gem 369152 BLAKE2B 8a344f85c34dc8736180551690bc55ee615118a243c48421711339f2ef366e6c6facfecf914594f0440a825244e13f98648d11903fd9053054767a58a34aa285 SHA512 e56a5a6d7ceb0be4bc537feb6ada2956f1fd64b452dee347b259837aa02041dfa53d9808531cdd0a02a91093ba92f7c505c39f0dd990dfbc6e872681f40bc5e9
-DIST sinatra-2.0.5.tar.gz 490580 BLAKE2B 6e82a02bf57f8ec6f0c5313b6b6e89e899a5cdc9ff39e897903b6991f990ec75135483c2ef5ac71032abf7afdc84402bbad431f9ae579bab94e3b140d3ce6911 SHA512 da626d584f065f924fa5a42802b0e7a03e40e780cfd92e9cb072c86e9cb6d8ba4a699d7383a81b13ac0ffd0ce427900cdf059b77565ace5961dbd00c088ce0f9
-DIST sinatra-2.0.7.tar.gz 490969 BLAKE2B 292bc4902ad3c5ff0665f12825ede4ea44bd4db39cd622289ffe1801dac4fe4865e90a223a7b37feb9a48b4c404edb3ef62b5e061fc080d5b02fdf96aaf3114c SHA512 dd894b4eb55ff19b92142b7d87b3c60ceb7eacd70b8f524a6e86e8938c64a409098c91b8dae4af68e73b6ef04b184bb4efb29e418caba2b9288cd2b6325840c8
+DIST sinatra-3.0.5.tar.gz 266205 BLAKE2B 16e0631ed49e62610c7bc1e43f03f21f57ee968b0f3ac98b599748e9572cc0bfc9121dc8731a0dcc9dd1bce04837373f93f198bff56c0de9f50932711b4040e8 SHA512 9ec41c3f0c4e4faaa181fddb2fe3262796a29e93fc07349422ca20dc845632c127c3e82e67f16ca19d2b2bcd43ad48fdca918d70b6747d8a2088ce1c84fd8eb2
+DIST sinatra-3.0.6.tar.gz 268815 BLAKE2B 2993a4c28ad4559e65e6e0dc4e5f9bc25f4118f1f0d5462e0469808e873197823a13f682abb4762426860322df4408faddde037f120d370d0e206abc2b1753ef SHA512 83643b634d2a992144ced65fc1466fded29bf6fae2e20f359b2d440c46013df26f4595f842cbed36319c5278beb77383eea6ac6eb4281f508501cee4e1c6e67a
+DIST sinatra-3.1.0.tar.gz 272066 BLAKE2B 4bae4e3356adaec8f347dfc25ab9311f6740ff4f5c1486c7230269df0154e8127a4f61f6ebf47098f24848381a6e8e82429184c431cfb89c8beb9e4838135456 SHA512 b0b82a5319caf5768c830b2929f76a4fc9414adff4c32d6723a439747f756d2467c12b1391557a1afe31e5f8eab99872a51dadb59cf1cf8ace373e7a92dd5eb2
+DIST sinatra-3.2.0.tar.gz 273145 BLAKE2B 5d995e3deec3ff9dfe577a7ee816b69321dbc6848e69688c2b0781fbe6440f72eb7a589e0a5609f0f747200bf634e8472006587867e47d30779eb9bdbd4e4cde SHA512 7fa684a1f7f39ad764ae1c6ad304df9020187817d9e6982c1670cb23e7ff03df1968608cfedac13442b59e13032b567e5b46ea7168015f9ff1b40d3b3d3ebd68
diff --git a/dev-ruby/sinatra/metadata.xml b/dev-ruby/sinatra/metadata.xml
index 28ab0c15f206..a14add969f1a 100644
--- a/dev-ruby/sinatra/metadata.xml
+++ b/dev-ruby/sinatra/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">sinatra/sinatra</remote-id>
+ <remote-id type="rubygems">sinatra</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/sinatra/sinatra-1.4.8.ebuild b/dev-ruby/sinatra/sinatra-1.4.8.ebuild
deleted file mode 100644
index 0d815fc809b6..000000000000
--- a/dev-ruby/sinatra/sinatra-1.4.8.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-# no documentation is generable, it needs hanna, which is broken
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST="MT_NO_PLUGINS=true test"
-
-RUBY_FAKEGEM_EXTRADOC="README.md AUTHORS.md CHANGELOG.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A DSL for quickly creating web applications in Ruby with minimal effort"
-HOMEPAGE="http://www.sinatrarb.com/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "=dev-ruby/rack-1*:* >=dev-ruby/rack-1.5:*
- >=dev-ruby/rack-protection-1.4:1
- >=dev-ruby/tilt-1.3.4:* <dev-ruby/tilt-3:*"
-ruby_add_bdepend "test? ( >=dev-ruby/rack-test-0.5.6 dev-ruby/erubis dev-ruby/builder )"
-
-# haml tests are optional and not yet marked for ruby20.
-#USE_RUBY="ruby20" ruby_add_bdepend "test? ( >=dev-ruby/haml-3.0 )"
-
-all_ruby_prepare() {
- # Remove implicit build dependency on git.
- sed -i -e '/\(s.files\|s.test_files\|s.extra_rdoc_files\)/d' sinatra.gemspec || die
-
- # Use correct rack version in tests
- sed -i -e '1igem "rack", "~> 1.5"' test/helper.rb test/integration/app.rb || die
-}
diff --git a/dev-ruby/sinatra/sinatra-2.0.5.ebuild b/dev-ruby/sinatra/sinatra-2.0.5.ebuild
deleted file mode 100644
index f7e9be6290a7..000000000000
--- a/dev-ruby/sinatra/sinatra-2.0.5.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test:core"
-
-RUBY_FAKEGEM_TASK_DOC="doc"
-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 ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/mustermann:1
- dev-ruby/rack:2.0
- ~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 )"
-ruby_add_bdepend "doc? ( dev-ruby/yard )"
diff --git a/dev-ruby/sinatra/sinatra-2.0.7.ebuild b/dev-ruby/sinatra/sinatra-2.0.7.ebuild
deleted file mode 100644
index 98223fedbcb5..000000000000
--- a/dev-ruby/sinatra/sinatra-2.0.7.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="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 ~x86"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/mustermann:1
- dev-ruby/rack:2.0
- ~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 )"
-ruby_add_bdepend "doc? ( dev-ruby/yard )"
diff --git a/dev-ruby/sinatra/sinatra-3.0.5-r1.ebuild b/dev-ruby/sinatra/sinatra-3.0.5-r1.ebuild
new file mode 100644
index 000000000000..d0af42498ea2
--- /dev/null
+++ b/dev-ruby/sinatra/sinatra-3.0.5-r1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+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="https://sinatrarb.com/"
+SRC_URI="https://github.com/sinatra/sinatra/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ 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/builder
+ dev-ruby/erubi
+ dev-ruby/haml
+ >=dev-ruby/rack-test-0.5.6
+ <dev-ruby/activesupport-7
+ )
+"
+ruby_add_bdepend "doc? ( dev-ruby/yard )"
+
+all_ruby_prepare() {
+ # Matching dev-ruby/activesupport
+ sed -i -e '/minitest.*~> 5.0/s:.*:&, "< 5.16":' Gemfile || die
+
+ sed -i \
+ -e "/require 'rack'/igem 'rack', '~> 2.2', '>= 2.2.4'" \
+ -e "/require 'minitest'/igem 'minitest', '< 5.16'" \
+ -e '/active_support\/core_ext\/hash/igem "activesupport", "<7"' \
+ test/helper.rb || die
+
+ # Avoid spec broken by newer rack versions, already removed upstream.
+ sed -i -e 's/"bytes=IV-LXVI", //' test/static_test.rb || die
+}
diff --git a/dev-ruby/sinatra/sinatra-3.0.6.ebuild b/dev-ruby/sinatra/sinatra-3.0.6.ebuild
new file mode 100644
index 000000000000..021ceb5a53ff
--- /dev/null
+++ b/dev-ruby/sinatra/sinatra-3.0.6.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+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="https://sinatrarb.com/"
+SRC_URI="https://github.com/sinatra/sinatra/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ 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/builder
+ dev-ruby/erubi
+ dev-ruby/haml
+ >=dev-ruby/rack-test-0.5.6
+ <dev-ruby/activesupport-7
+ )
+"
+ruby_add_bdepend "doc? ( dev-ruby/yard )"
+
+all_ruby_prepare() {
+ sed -i \
+ -e "/require 'rack'/igem 'rack', '~> 2.2', '>= 2.2.4'" \
+ -e '/active_support\/core_ext\/hash/igem "activesupport", "<7"' \
+ test/test_helper.rb || die
+
+ # Avoid spec broken by newer rack versions, already removed upstream.
+ sed -i -e 's/"bytes=IV-LXVI", //' test/static_test.rb || die
+}
diff --git a/dev-ruby/sinatra/sinatra-3.1.0.ebuild b/dev-ruby/sinatra/sinatra-3.1.0.ebuild
new file mode 100644
index 000000000000..685935e657d0
--- /dev/null
+++ b/dev-ruby/sinatra/sinatra-3.1.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+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="https://sinatrarb.com/"
+SRC_URI="https://github.com/sinatra/sinatra/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ 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/builder
+ dev-ruby/erubi
+ dev-ruby/haml
+ >=dev-ruby/rack-test-0.5.6
+ <dev-ruby/activesupport-7
+ )
+"
+ruby_add_bdepend "doc? ( dev-ruby/yard )"
+
+all_ruby_prepare() {
+ sed -i \
+ -e "/require 'rack'/igem 'rack', '~> 2.2', '>= 2.2.4'" \
+ -e '/active_support\/core_ext\/hash/igem "activesupport", "<7"' \
+ test/test_helper.rb || die
+
+ # Avoid spec broken by newer rack versions, already removed upstream.
+ sed -i -e 's/"bytes=IV-LXVI", //' test/static_test.rb || die
+}
diff --git a/dev-ruby/sinatra/sinatra-3.2.0.ebuild b/dev-ruby/sinatra/sinatra-3.2.0.ebuild
new file mode 100644
index 000000000000..a3d628baf4bd
--- /dev/null
+++ b/dev-ruby/sinatra/sinatra-3.2.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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="https://sinatrarb.com/"
+SRC_URI="https://github.com/sinatra/sinatra/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+ruby_add_rdepend "
+ dev-ruby/mustermann:3
+ >=dev-ruby/rack-2.2.4:2.2
+ ~dev-ruby/rack-protection-${PV}
+ dev-ruby/tilt:2"
+
+# dev-ruby/haml is an optional test dependency, but it will lead to
+# circular dependencies so we don't require it for tests.
+ruby_add_bdepend "
+ test? (
+ dev-ruby/builder
+ dev-ruby/erubi
+ >=dev-ruby/rack-test-0.5.6
+ dev-ruby/activesupport
+ )
+"
+ruby_add_bdepend "doc? ( dev-ruby/yard )"
+
+all_ruby_prepare() {
+ sed -i \
+ -e "/require 'rack'/igem 'rack', '~> 2.2', '>= 2.2.4'" \
+ test/test_helper.rb || die
+
+ # Avoid spec broken by newer rack versions, already removed upstream.
+ sed -i -e 's/"bytes=IV-LXVI", //' test/static_test.rb || die
+}
diff --git a/dev-ruby/singleton/Manifest b/dev-ruby/singleton/Manifest
new file mode 100644
index 000000000000..f8acd5f1b3ee
--- /dev/null
+++ b/dev-ruby/singleton/Manifest
@@ -0,0 +1,2 @@
+DIST singleton-0.1.1.tar.gz 4975 BLAKE2B 3957c7d622aaad6a71b5675ad950b2a4622ec520b59075df25a966609e54c2f47581ba35c5a004c67a1a36f50de13dacadbc96ee1fd113790e6793e97131787c SHA512 a0817b42e8b056488b999eca8de09d75efe79e5624f4817289164d90051c92279dc9f8a087e69df89bec913127c460b8b6586fde17b73e08d4ec5b6da4dec18d
+DIST singleton-0.2.0.tar.gz 5179 BLAKE2B 8d0ed2fb38ff8fc8bd5da3969c4e0dcc3c5556b69dfa7faceb9d02d80b69d902418d54b8a313188927938adb1431fa593aaea0249109c34b809c6d3a35ba08b4 SHA512 e6c827f277754fc20722afbf20c67b22fc44095337777e69afa0eff8c88390be86741b244ee35124fc2684fbe048d439dfe96499617ec672275fdd7e64d36e43
diff --git a/dev-ruby/singleton/metadata.xml b/dev-ruby/singleton/metadata.xml
new file mode 100644
index 000000000000..2c38c2ef94ba
--- /dev/null
+++ b/dev-ruby/singleton/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/singleton</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/singleton/singleton-0.1.1.ebuild b/dev-ruby/singleton/singleton-0.1.1.ebuild
new file mode 100644
index 000000000000..6756244a043b
--- /dev/null
+++ b/dev-ruby/singleton/singleton-0.1.1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="singleton.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The Singleton module implements the Singleton pattern"
+HOMEPAGE="https://github.com/ruby/singleton"
+SRC_URI="https://github.com/ruby/singleton/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/singleton/singleton-0.2.0.ebuild b/dev-ruby/singleton/singleton-0.2.0.ebuild
new file mode 100644
index 000000000000..7d16b1739029
--- /dev/null
+++ b/dev-ruby/singleton/singleton-0.2.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="singleton.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="The Singleton module implements the Singleton pattern"
+HOMEPAGE="https://github.com/ruby/singleton"
+SRC_URI="https://github.com/ruby/singleton/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/six/Manifest b/dev-ruby/six/Manifest
deleted file mode 100644
index 21b619aa7b89..000000000000
--- a/dev-ruby/six/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST six-0.2.0.tar.gz 6747 BLAKE2B acf034ac527b3e5379a55ad95bacdf18d544577cad9e7f7ea322e6b05d2b1557f5712915ec79d51e48e5d246661f384207a5eae07775a85e27548fb9af99e6fb SHA512 8c3bfbe2b07b5682b696800a9235ebf542c7d292f69728aa9c9707f92fa042fe7bfee6a0b28808dab86f8ec80fec5ba993be5e42f4a098d8cfccbc7611fa2016
diff --git a/dev-ruby/six/metadata.xml b/dev-ruby/six/metadata.xml
deleted file mode 100644
index 8f5dc5aab86f..000000000000
--- a/dev-ruby/six/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">randx/six</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/six/six-0.2.0.ebuild b/dev-ruby/six/six-0.2.0.ebuild
deleted file mode 100644
index c84f7472ea08..000000000000
--- a/dev-ruby/six/six-0.2.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-RUBY_FAKEGEM_RECIPE_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An ultra lite authorization library"
-HOMEPAGE="https://github.com/randx/six"
-SRC_URI="https://github.com/randx/six/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/d' spec/spec_helper.rb || die "sed failed"
-}
diff --git a/dev-ruby/slim/Manifest b/dev-ruby/slim/Manifest
index 4a954f29e6af..202f243ff664 100644
--- a/dev-ruby/slim/Manifest
+++ b/dev-ruby/slim/Manifest
@@ -1,2 +1,3 @@
-DIST slim-3.0.9.gem 99840 BLAKE2B e449585fe5642c1980b4d8fb0c93979d8c16020c331f1bc2993c6f7b5bb3e55c1b85595711bf3acdc369c6a3fbfdc6873a8208c59aedaa49dead1cd9166347d4 SHA512 220dbcde230aab05e294022924346fbb02a1bf813a7c97910c2f60d7b3a7dd498d04f6f4f2883b895d2a3e6e9f526331914e3ab4560e748de2bd991358cca90d
-DIST slim-4.0.1.gem 103424 BLAKE2B cf3629e6bb5254082ee3596dc4ddd05921186071823cfe6c423d3f173f80c46ca874e3cfa9a795ce4d564da2c7aa42a422513677978a6e79545a918ef3b9fb6f SHA512 afdaf01ce8372e270c00bc3fd863b9c2f7d26c851ed032374e648f069e6591e9522d4490f57350d4f13b85c68e6a9038111ad03a644a8e89894dca4ebffa0c90
+DIST slim-5.1.1.gem 100864 BLAKE2B ea5c469702dca808bdc0555044a8d6a5a0b34e8d5b03a9c97e6e31ccb169725be6f76fc1f252d14673e92a53ac1a42caf023a3d1bacb66c4091710f8e9772c1a SHA512 935d488ad11478b28d51125ddbf7f0cb81f7791587bb69c7ead434eacf44c309958459dcff7228b6562b8972d6cb7125f3d451d21bfa2ded2f7ee1b55703d1f4
+DIST slim-5.2.0.gem 101376 BLAKE2B 19039b0f6d4a789564ff00df90bee214ccdb1827349d0f95b658d06fedd593cae6abbc50cf5e5438691d15c8d660964b38217f700f2d2c726c7670104c10af0f SHA512 85fd367460296eba9d4244832b1225b41f052f05b17ec9e38cc5db6accae1a5cd551bd61290a0c6885a42970f8219d5d00c0fd229616f3369e0f5575b6df72ea
+DIST slim-5.2.1.gem 101376 BLAKE2B 4c713440daa74461818be56ed263a3574b7022f17055a27219525fe79d3e80eeb5618d6e450ae1019265b514f0deb65e48d33fff9c3b593fbb2e0f3bf82db22b SHA512 bfe0f45bc928aa73604961b5e1253303c30e0c8e87935dc01f44b7014a34ed5661fb55a0dcfb21fbf355f366adb0aa476a327bca2d74f59bb6fcd7e630cc3e68
diff --git a/dev-ruby/slim/metadata.xml b/dev-ruby/slim/metadata.xml
index 28ab0c15f206..16149c1d51b2 100644
--- a/dev-ruby/slim/metadata.xml
+++ b/dev-ruby/slim/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">slim-template/slim</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/slim/slim-3.0.9.ebuild b/dev-ruby/slim/slim-3.0.9.ebuild
deleted file mode 100644
index 8266dce826c0..000000000000
--- a/dev-ruby/slim/slim-3.0.9.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_TASK_DOC="yard"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A template language aiming to reduce the syntax to the essential parts"
-HOMEPAGE="http://slim-lang.com/"
-LICENSE="MIT"
-
-KEYWORDS="amd64 arm ~arm64 ~hppa ppc ppc64 x86"
-SLOT="0"
-IUSE="doc"
-
-ruby_add_rdepend ">=dev-ruby/tilt-1.3.3:* <dev-ruby/tilt-2.1:*
- >=dev-ruby/temple-0.7.6:0.7"
-
-ruby_add_bdepend "doc? ( dev-ruby/yard dev-ruby/redcarpet )"
-
-ruby_add_bdepend "test? ( dev-ruby/redcarpet dev-ruby/sass )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
-
- # This sinatra code expects tests to be installed but we strip those.
- sed -i -e "s/require 'sinatra'/require 'bogussinatra'/" Rakefile || die
-
- # Avoid tests for things we don't have. The builder test does not pass with tilt 2.x
- sed -i -e '/test_wip_render_with_asciidoc/,/^ end/ s:^:#:' \
- -e '/test_render_with_wiki/,/^ end/ s:^:#:' \
- -e '/test_render_with_creole/,/^ end/ s:^:#:' \
- -e '/test_render_with_builder/,/^ end/ s:^:#:' \
- -e '/test_render_with_org/,/^ end/ s:^:#:' test/core/test_embedded_engines.rb || die
-
- sed -i -e '/s\.files/ s/git ls-files/find . -type f -print/' \
- -e '/s\.executables/ s:git ls-files -- bin/\*:find bin -type f -print:' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_prepare() {
- sed -i -e '/Open3/ s:ruby:'${RUBY}':' test/core/test_commands.rb || die
-}
diff --git a/dev-ruby/slim/slim-4.0.1.ebuild b/dev-ruby/slim/slim-4.0.1.ebuild
deleted file mode 100644
index c6a86b286162..000000000000
--- a/dev-ruby/slim/slim-4.0.1.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_TASK_DOC="yard"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit eapi7-ver ruby-fakegem
-
-DESCRIPTION="A template language aiming to reduce the syntax to the essential parts"
-HOMEPAGE="http://slim-lang.com/"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-SLOT="$(ver_cut 1)"
-IUSE="doc"
-
-ruby_add_rdepend ">=dev-ruby/tilt-2.0.6:* =dev-ruby/tilt-2.0*:*
- >=dev-ruby/temple-0.7.6:0.7"
-
-ruby_add_bdepend "doc? ( dev-ruby/yard dev-ruby/redcarpet )"
-
-ruby_add_bdepend "test? ( dev-ruby/redcarpet dev-ruby/sass )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile || die
-
- # This sinatra code expects tests to be installed but we strip those.
- sed -i -e "s/require 'sinatra'/require 'bogussinatra'/" Rakefile || die
-
- # Avoid tests for things we don't have. The builder test does not pass with tilt 2.x
- sed -i -e '/test_wip_render_with_asciidoc/,/^ end/ s:^:#:' \
- -e '/test_render_with_wiki/,/^ end/ s:^:#:' \
- -e '/test_render_with_creole/,/^ end/ s:^:#:' \
- -e '/test_render_with_builder/,/^ end/ s:^:#:' \
- -e '/test_render_with_org/,/^ end/ s:^:#:' test/core/test_embedded_engines.rb || die
-
- sed -i -e '/s\.files/ s/git ls-files/find . -type f -print/' \
- -e '/s\.executables/ s:git ls-files -- bin/\*:find bin -type f -print:' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_prepare() {
- sed -i -e '/Open3/ s:ruby:'${RUBY}':' test/core/test_commands.rb || die
-}
diff --git a/dev-ruby/slim/slim-5.1.1.ebuild b/dev-ruby/slim/slim-5.1.1.ebuild
new file mode 100644
index 000000000000..c914625d9a54
--- /dev/null
+++ b/dev-ruby/slim/slim-5.1.1.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_RECIPE_DOC="rake"
+RUBY_FAKEGEM_TASK_DOC="yard"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A template language aiming to reduce the syntax to the essential parts"
+HOMEPAGE="https://slim-template.github.io/"
+
+LICENSE="MIT"
+SLOT="4"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv x86"
+IUSE="doc"
+
+ruby_add_rdepend "
+ !dev-ruby/slim:5
+ >=dev-ruby/tilt-2.1.0:*
+ >=dev-ruby/temple-0.10.0:0.7
+"
+# sass tests are currently disabled:
+# https://github.com/slim-template/slim/commit/bd9d4601cd8142aa9fdbc0d87c9f9132a9a56cda
+ruby_add_bdepend "
+ doc? (
+ dev-ruby/yard
+ dev-ruby/redcarpet
+ )
+ test? (
+ dev-ruby/minitest:5
+ dev-ruby/kramdown:2
+ dev-ruby/redcarpet
+ dev-ruby/sassc
+ >=dev-ruby/test-unit-3.5
+ )
+"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+
+ # This sinatra code expects tests to be installed but we strip those.
+ sed -i -e "s/require 'sinatra'/require 'bogussinatra'/" Rakefile || die
+
+ # Add missing include, bug 816573
+ sed -i -e "1irequire 'ostruct'" test/core/test_code_evaluation.rb || die
+
+ # Avoid tests for things we don't have. The builder test does not pass with tilt 2.x
+ sed -i -e '/test_wip_render_with_asciidoc/,/^ end/ s:^:#:' \
+ -e '/test_render_with_wiki/,/^ end/ s:^:#:' \
+ -e '/test_render_with_creole/,/^ end/ s:^:#:' \
+ -e '/test_render_with_builder/,/^ end/ s:^:#:' \
+ -e '/test_render_with_org/,/^ end/ s:^:#:' test/core/test_embedded_engines.rb || die
+
+ # Avoid test failing due to tilt providing yet another markdown implementation
+ sed -i -e '/test_render_with_markdown/askip "new tilt version"' test/core/test_embedded_engines.rb || die
+ sed -i -e '/test_no_translation_of_embedded/askip "new tilt version"' test/translator/test_translator.rb || die
+
+ # Fix minitest deprecation
+ sed -i -e 's/MiniTest/Minitest/' test/literate/helper.rb || die
+
+ sed -i -e '/s\.files/ s/git ls-files/find . -type f -print/' \
+ -e '/s\.executables/ s:git ls-files -- bin/\*:find bin -type f -print:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_prepare() {
+ sed -i -e '/Open3/ s:ruby:'${RUBY}':' test/core/test_commands.rb || die
+}
diff --git a/dev-ruby/slim/slim-5.2.0.ebuild b/dev-ruby/slim/slim-5.2.0.ebuild
new file mode 100644
index 000000000000..b2f698a165ae
--- /dev/null
+++ b/dev-ruby/slim/slim-5.2.0.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_RECIPE_DOC="rake"
+RUBY_FAKEGEM_TASK_DOC="yard"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A template language aiming to reduce the syntax to the essential parts"
+HOMEPAGE="https://slim-template.github.io/"
+
+LICENSE="MIT"
+SLOT="4"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE="doc"
+
+ruby_add_rdepend "
+ !dev-ruby/slim:5
+ >=dev-ruby/tilt-2.1.0:*
+ >=dev-ruby/temple-0.10.0:0.7
+"
+# sass tests are currently disabled:
+# https://github.com/slim-template/slim/commit/bd9d4601cd8142aa9fdbc0d87c9f9132a9a56cda
+ruby_add_bdepend "
+ doc? (
+ dev-ruby/yard
+ dev-ruby/redcarpet
+ )
+ test? (
+ dev-ruby/minitest:5
+ dev-ruby/kramdown:2
+ dev-ruby/redcarpet
+ dev-ruby/sassc
+ >=dev-ruby/test-unit-3.5
+ )
+"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+
+ # This sinatra code expects tests to be installed but we strip those.
+ sed -i -e "s/require 'sinatra'/require 'bogussinatra'/" Rakefile || die
+
+ # Avoid tests for things we don't have. The builder test does not pass with tilt 2.x
+ sed -i -e '/test_wip_render_with_asciidoc/,/^ end/ s:^:#:' \
+ -e '/test_render_with_wiki/,/^ end/ s:^:#:' \
+ -e '/test_render_with_creole/,/^ end/ s:^:#:' \
+ -e '/test_render_with_builder/,/^ end/ s:^:#:' \
+ -e '/test_render_with_org/,/^ end/ s:^:#:' test/core/test_embedded_engines.rb || die
+
+ # Avoid test failing due to tilt providing yet another markdown implementation
+ sed -i -e '/test_render_with_markdown/askip "new tilt version"' test/core/test_embedded_engines.rb || die
+ sed -i -e '/test_no_translation_of_embedded/askip "new tilt version"' test/translator/test_translator.rb || die
+
+ sed -i -e '/s\.files/ s/git ls-files/find . -type f -print/' \
+ -e '/s\.executables/ s:git ls-files -- bin/\*:find bin -type f -print:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_prepare() {
+ sed -i -e '/Open3/ s:ruby:'${RUBY}':' test/core/test_commands.rb || die
+}
diff --git a/dev-ruby/slim/slim-5.2.1.ebuild b/dev-ruby/slim/slim-5.2.1.ebuild
new file mode 100644
index 000000000000..f00526fbee05
--- /dev/null
+++ b/dev-ruby/slim/slim-5.2.1.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_RECIPE_DOC="rake"
+RUBY_FAKEGEM_TASK_DOC="yard"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A template language aiming to reduce the syntax to the essential parts"
+HOMEPAGE="https://slim-template.github.io/"
+
+LICENSE="MIT"
+SLOT="4"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE="doc test"
+
+ruby_add_rdepend "
+ !dev-ruby/slim:5
+ >=dev-ruby/tilt-2.1.0:*
+ >=dev-ruby/temple-0.10.0:0.7
+"
+# sass tests are currently disabled:
+# https://github.com/slim-template/slim/commit/bd9d4601cd8142aa9fdbc0d87c9f9132a9a56cda
+ruby_add_bdepend "
+ doc? (
+ dev-ruby/yard
+ dev-ruby/redcarpet
+ )
+ test? (
+ dev-ruby/minitest:5
+ dev-ruby/kramdown:2
+ dev-ruby/redcarpet
+ dev-ruby/sassc
+ >=dev-ruby/test-unit-3.5
+ )
+"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile || die
+
+ # This sinatra code expects tests to be installed but we strip those.
+ sed -i -e "s/require 'sinatra'/require 'bogussinatra'/" Rakefile || die
+
+ # Avoid tests for things we don't have. The builder test does not pass with tilt 2.x
+ sed -i -e '/test_wip_render_with_asciidoc/,/^ end/ s:^:#:' \
+ -e '/test_render_with_wiki/,/^ end/ s:^:#:' \
+ -e '/test_render_with_creole/,/^ end/ s:^:#:' \
+ -e '/test_render_with_builder/,/^ end/ s:^:#:' \
+ -e '/test_render_with_org/,/^ end/ s:^:#:' test/core/test_embedded_engines.rb || die
+
+ # Avoid test failing due to tilt providing yet another markdown implementation
+ sed -i -e '/test_render_with_markdown/askip "new tilt version"' test/core/test_embedded_engines.rb || die
+ sed -i -e '/test_no_translation_of_embedded/askip "new tilt version"' test/translator/test_translator.rb || die
+
+ sed -i -e '/s\.files/ s/git ls-files/find . -type f -print/' \
+ -e '/s\.executables/ s:git ls-files -- bin/\*:find bin -type f -print:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_prepare() {
+ sed -i -e '/Open3/ s:ruby:'${RUBY}':' test/core/test_commands.rb || die
+}
diff --git a/dev-ruby/slop/Manifest b/dev-ruby/slop/Manifest
index 7fe1ac7a76c2..2122306408cb 100644
--- a/dev-ruby/slop/Manifest
+++ b/dev-ruby/slop/Manifest
@@ -1,2 +1 @@
-DIST slop-4.6.2.tgz 15750 BLAKE2B a31c8ec895e534be7fe77eb09909c2210d298c1a89099080af816b9e06a5ee2358aef223b1ce0669f9d40cc91c04ce55e8ebb6d506a4bec35fb1fd9b93c0017d SHA512 352d7e5bbbe9ae4c324d1561f953fe28c1c99078bdef27f1be45453e60b34e0191e94d8952ec0a8cee7d689c6ba910616c9515747e81a8378fa825cb2139bfc7
-DIST slop-4.7.0.tgz 16367 BLAKE2B ad128b803876184cddaca5fdc4c8a1c2d20a0deab46cfcc9521cec88dbc777ee849a8bda8b0257281fdcb614a1e710e25b683f9a5f7d97d34ad78e3a1479a88f SHA512 3cbf1c7e2a7f2baf01e533b10f29cb52060dab2d03f69ba345b63cc0aa9d4cdebf1d18eff26177bfbac11bf55fd1167605dcc86d030fed0568fa132de33d1f37
+DIST slop-4.10.1.tgz 17752 BLAKE2B d7be110a9fa012af3df26aa4a7dc055fe9443ca131ee078adb05fb4ef87c6976520ee96aca23893abb651bd6fa22ea350be5851ca6f142b301551447c0b12c34 SHA512 0ffca1dcb550a4b21188647bbc433345c62c61dcb5c6e647727ab21d0816a13b6e6cb17180eb86a870eb50ed67b2f44f72f38490f907ba21acaa81c2a2febc53
diff --git a/dev-ruby/slop/metadata.xml b/dev-ruby/slop/metadata.xml
index 3c112747511b..9e9d448e833c 100644
--- a/dev-ruby/slop/metadata.xml
+++ b/dev-ruby/slop/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">injekt/slop</remote-id>
+ <remote-id type="github">leejarvis/slop</remote-id>
+ <remote-id type="rubygems">slop</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/slop/slop-4.10.1.ebuild b/dev-ruby/slop/slop-4.10.1.ebuild
new file mode 100644
index 000000000000..286858229e1f
--- /dev/null
+++ b/dev-ruby/slop/slop-4.10.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="slop.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A simple option parser with an easy to remember syntax and friendly API"
+HOMEPAGE="https://github.com/leejarvis/slop"
+SRC_URI="https://github.com/leejarvis/${PN}/archive/v${PV}.tar.gz -> ${P}.tgz"
+
+LICENSE="MIT"
+SLOT="4"
+KEYWORDS="~amd64 ~ppc64 ~x86"
+
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e '/git ls-files/d' slop.gemspec || die
+}
diff --git a/dev-ruby/slop/slop-4.6.2.ebuild b/dev-ruby/slop/slop-4.6.2.ebuild
deleted file mode 100644
index 1071fbc080d8..000000000000
--- a/dev-ruby/slop/slop-4.6.2.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple option parser with an easy to remember syntax and friendly API"
-HOMEPAGE="https://github.com/injekt/slop"
-SRC_URI="https://github.com/injekt/${PN}/archive/v${PV}.tar.gz -> ${P}.tgz"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i -e '/git ls-files/d' slop.gemspec || die
-}
diff --git a/dev-ruby/slop/slop-4.7.0.ebuild b/dev-ruby/slop/slop-4.7.0.ebuild
deleted file mode 100644
index 9ca73f9366d6..000000000000
--- a/dev-ruby/slop/slop-4.7.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A simple option parser with an easy to remember syntax and friendly API"
-HOMEPAGE="https://github.com/injekt/slop"
-SRC_URI="https://github.com/injekt/${PN}/archive/v${PV}.tar.gz -> ${P}.tgz"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64 ~ppc64 ~x86"
-
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest )"
-
-all_ruby_prepare() {
- sed -i -e '/git ls-files/d' slop.gemspec || die
-}
diff --git a/dev-ruby/slow_enumerator_tools/metadata.xml b/dev-ruby/slow_enumerator_tools/metadata.xml
index 9ec605622c08..b476b79d5a53 100644
--- a/dev-ruby/slow_enumerator_tools/metadata.xml
+++ b/dev-ruby/slow_enumerator_tools/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/slow_enumerator_tools/slow_enumerator_tools-1.1.0-r1.ebuild b/dev-ruby/slow_enumerator_tools/slow_enumerator_tools-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..3effc45d00b9
--- /dev/null
+++ b/dev-ruby/slow_enumerator_tools/slow_enumerator_tools-1.1.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Transform Ruby enumerators that produce data slowly and unpredictably"
+HOMEPAGE="https://github.com/ddfreyne/slow_enumerator_tools/"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~amd64 ~riscv"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/simplecov/,/SimpleCov.formatter/ s:^:#:' \
+ -e '/fuubar/,/^end/ s:^:#:' spec/spec_helper.rb || die
+ sed -i -e '/Fuubar/d' .rspec || die
+}
diff --git a/dev-ruby/slow_enumerator_tools/slow_enumerator_tools-1.1.0.ebuild b/dev-ruby/slow_enumerator_tools/slow_enumerator_tools-1.1.0.ebuild
deleted file mode 100644
index ee24c021a660..000000000000
--- a/dev-ruby/slow_enumerator_tools/slow_enumerator_tools-1.1.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Transform Ruby enumerators that produce data slowly and unpredictably"
-HOMEPAGE="https://github.com/ddfreyne/slow_enumerator_tools/"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/simplecov/,/SimpleCov.formatter/ s:^:#:' \
- -e '/fuubar/,/^end/ s:^:#:' spec/spec_helper.rb || die
- sed -i -e '/Fuubar/d' .rspec || die
-}
diff --git a/dev-ruby/snaky_hash/Manifest b/dev-ruby/snaky_hash/Manifest
new file mode 100644
index 000000000000..a4c2ff91aebb
--- /dev/null
+++ b/dev-ruby/snaky_hash/Manifest
@@ -0,0 +1 @@
+DIST snaky_hash-2.0.1.tar.bz2 15275 BLAKE2B 77a7ee4bb4194b991a54e359c53a5a6ab45134026185e976c197737746e20842cff6ecf526d773711ed403cb80a50593429038a6194cd4360cbc7907336335a3 SHA512 8d618410106fcab5b986de5047db8bd6e4192b3ee27926107428e82aba905a66203c0cb1dd83de50b89aeffe0e29e93ae0c36b175d7751b8f68249c8014061d5
diff --git a/dev-ruby/snaky_hash/metadata.xml b/dev-ruby/snaky_hash/metadata.xml
new file mode 100644
index 000000000000..69f62d1504e8
--- /dev/null
+++ b/dev-ruby/snaky_hash/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gitlab">oauth-xx/snaky_hash</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/snaky_hash/snaky_hash-2.0.1.ebuild b/dev-ruby/snaky_hash/snaky_hash-2.0.1.ebuild
new file mode 100644
index 000000000000..34882129dcfd
--- /dev/null
+++ b/dev-ruby/snaky_hash/snaky_hash-2.0.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="snaky_hash.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Hashie::Mash joint to make #snakelife better"
+HOMEPAGE="https://gitlab.com/oauth-xx/snaky_hash"
+SRC_URI="https://gitlab.com/oauth-xx/snaky_hash/-/archive/v${PV}/snaky_hash-v${PV}.tar.bz2 -> ${P}.tar.bz2"
+RUBY_S="snaky_hash-v${PV}"
+IUSE=""
+SLOT="1"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~ppc ~riscv ~x86"
+
+ruby_add_rdepend "
+ dev-ruby/hashie:*
+ >=dev-ruby/version_gem-1.1.1:1
+"
+
+ruby_add_depend "test? ( dev-ruby/rspec-block_is_expected )"
+
+all_ruby_prepare() {
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e 's/if RUN_COVERAGE/if false/' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/sorted_set/Manifest b/dev-ruby/sorted_set/Manifest
new file mode 100644
index 000000000000..f467e2c02f73
--- /dev/null
+++ b/dev-ruby/sorted_set/Manifest
@@ -0,0 +1 @@
+DIST sorted_set-1.0.3.tar.gz 4863 BLAKE2B 43dc21205db8cdef8be016d041607cecc7c23a847b2622518f212fe65d00b4bd63bc77c356f3e96ee84c6a1a702641f8248bb3d3201d7252652fd2fac7900d88 SHA512 67236fdac7d024203dd8d7432ec575008a14ad1e54367f6afb168711158ef5abac24629417751b0e11f641607d0a83689ec79e0c42b44025a6a7671cdcf3a70a
diff --git a/dev-ruby/sorted_set/metadata.xml b/dev-ruby/sorted_set/metadata.xml
new file mode 100644
index 000000000000..e3eef5d46cd0
--- /dev/null
+++ b/dev-ruby/sorted_set/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">knu/sorted_set</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/sorted_set/sorted_set-1.0.3.ebuild b/dev-ruby/sorted_set/sorted_set-1.0.3.ebuild
new file mode 100644
index 000000000000..675cb7a84566
--- /dev/null
+++ b/dev-ruby/sorted_set/sorted_set-1.0.3.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="sorted_set.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Implements a variant of Set whose elements are sorted in ascending order"
+HOMEPAGE="https://github.com/knu/sorted_set"
+SRC_URI="https://github.com/knu/sorted_set/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/rbtree
+ dev-ruby/set:0
+"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/source_map/Manifest b/dev-ruby/source_map/Manifest
deleted file mode 100644
index ba78821a0752..000000000000
--- a/dev-ruby/source_map/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST source_map-3.0.1.gem 12288 BLAKE2B 59d51caf46087379ea7c6a0842721a0065fa02fce8cb848a8097af14a8c6e2c99d216ffbeec643254c2f0aea75833960e272a0470f72c37587f6191370067b43 SHA512 3fc4a55f2ad2e79059c40ba4fd28e555af25c5881ac5513d6d37595d6a1c405e8e601e808b96b336725227dbd9b377235251cb8a9eeaefe60d8000f6fa67ea2f
diff --git a/dev-ruby/source_map/metadata.xml b/dev-ruby/source_map/metadata.xml
deleted file mode 100644
index 90184c83a954..000000000000
--- a/dev-ruby/source_map/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">ConradIrwin/ruby-source_map</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/source_map/source_map-3.0.1.ebuild b/dev-ruby/source_map/source_map-3.0.1.ebuild
deleted file mode 100644
index 64c36988a72d..000000000000
--- a/dev-ruby/source_map/source_map-3.0.1.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides an API for parsing, and an API for generating source maps in ruby"
-HOMEPAGE="https://github.com/ConradIrwin/ruby-source_map"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/json:*"
diff --git a/dev-ruby/sourcemap/metadata.xml b/dev-ruby/sourcemap/metadata.xml
index d55a65da9bec..79d431d77418 100644
--- a/dev-ruby/sourcemap/metadata.xml
+++ b/dev-ruby/sourcemap/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/sourcemap/sourcemap-0.1.1-r1.ebuild b/dev-ruby/sourcemap/sourcemap-0.1.1-r1.ebuild
new file mode 100644
index 000000000000..c7fa15a88ec1
--- /dev/null
+++ b/dev-ruby/sourcemap/sourcemap-0.1.1-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby source maps"
+HOMEPAGE="https://github.com/maccman/sourcemap"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+ sed -i -e 's/MiniTest/Minitest/' test/test_*.rb || die
+}
diff --git a/dev-ruby/sourcemap/sourcemap-0.1.1.ebuild b/dev-ruby/sourcemap/sourcemap-0.1.1.ebuild
deleted file mode 100644
index 9ea63448deb6..000000000000
--- a/dev-ruby/sourcemap/sourcemap-0.1.1.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby source maps"
-HOMEPAGE="https://github.com/maccman/sourcemap"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/sparklines/files/sparklines-0.5.2-rmagick4-deprecation.patch b/dev-ruby/sparklines/files/sparklines-0.5.2-rmagick4-deprecation.patch
new file mode 100644
index 000000000000..5dcb556318be
--- /dev/null
+++ b/dev-ruby/sparklines/files/sparklines-0.5.2-rmagick4-deprecation.patch
@@ -0,0 +1,20 @@
+--- a/lib/sparklines.rb 2023-04-26 07:46:30.263829168 +0200
++++ b/lib/sparklines.rb 2023-04-26 07:48:47.140656193 +0200
+@@ -685,7 +685,7 @@
+ @draw = Magick::Draw.new
+ @draw.pointsize = @@pointsize # TODO Use height
+ @draw.pointsize = @options[:font_size] if @options.has_key?(:font_size)
+- @canvas = Magick::Image.new(w , h) { self.background_color = bkg_col }
++ @canvas = Magick::Image.new(w , h) { |image| image.background_color = bkg_col }
+
+ # Make room for label and last value
+ unless @options[:label].nil?
+@@ -697,7 +697,7 @@
+ w += @label_and_data_last_width
+ end
+
+- @canvas = Magick::Image.new(w , h) { self.background_color = bkg_col }
++ @canvas = Magick::Image.new(w , h) { |image| image.background_color = bkg_col }
+ @canvas.format = "PNG"
+
+ # Draw label and last value
diff --git a/dev-ruby/sparklines/metadata.xml b/dev-ruby/sparklines/metadata.xml
index eb1e47f2edfb..daac6fdb7252 100644
--- a/dev-ruby/sparklines/metadata.xml
+++ b/dev-ruby/sparklines/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/sparklines/sparklines-0.5.2-r6.ebuild b/dev-ruby/sparklines/sparklines-0.5.2-r6.ebuild
deleted file mode 100644
index 11d04641d27e..000000000000
--- a/dev-ruby/sparklines/sparklines-0.5.2-r6.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Create sparklines, small graphs to be used inline in texts"
-HOMEPAGE="http://sparklines.rubyforge.org/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86 ~x86-macos"
-IUSE=""
-
-RDEPEND="dev-ruby/rmagick"
-
-ruby_add_bdepend test "dev-ruby/tidy_table dev-ruby/dust"
-
-all_ruby_prepare() {
- # Don't use deprecated rmagick require for compatibility with newer
- # versions.
- sed -i -e '/require/ s/RMagick/rmagick/' lib/sparklines.rb || die
-}
-
-each_ruby_test() {
- ${RUBY} -I. test/test_all.rb || die
-}
diff --git a/dev-ruby/sparklines/sparklines-0.5.2-r8.ebuild b/dev-ruby/sparklines/sparklines-0.5.2-r8.ebuild
new file mode 100644
index 000000000000..6d604998fa0d
--- /dev/null
+++ b/dev-ruby/sparklines/sparklines-0.5.2-r8.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Create sparklines, small graphs to be used inline in texts"
+HOMEPAGE="http://sparklines.rubyforge.org/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+DEPEND+="test? ( media-gfx/imagemagick[png] )"
+
+ruby_add_rdepend "dev-ruby/rmagick:*"
+
+ruby_add_bdepend "test? ( dev-ruby/tidy_table dev-ruby/dust )"
+
+PATCHES=( "${FILESDIR}/${P}-rmagick4-deprecation.patch" )
+
+all_ruby_prepare() {
+ # Don't use deprecated rmagick require for compatibility with newer
+ # versions.
+ sed -i -e '/require/ s/RMagick/rmagick/' lib/sparklines.rb || die
+
+}
+
+each_ruby_test() {
+ ${RUBY} -I. test/test_all.rb || die
+}
diff --git a/dev-ruby/spork/Manifest b/dev-ruby/spork/Manifest
deleted file mode 100644
index 979b99241ea6..000000000000
--- a/dev-ruby/spork/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST spork-0.9.2.gem 33280 BLAKE2B 0c06cad1d6fc7264aee25fa400ddf1890685f87bbcb3fa8f5cb31f45f9c99845ff650b1d8e9738b04d87bb35fa4bc4466c24ddfb0d35a27377b9f42ba46eddfb SHA512 04acbdb00cb23c74ab5e3737d85f6b353dd50555e01e13aa4e0289bc7716eaed144800127840d9eae8d580f020ab646351411f5c1cbf299cf17ed5a73d24d81a
diff --git a/dev-ruby/spork/metadata.xml b/dev-ruby/spork/metadata.xml
deleted file mode 100644
index cafc936bbb66..000000000000
--- a/dev-ruby/spork/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">sporkrb/spork</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/spork/spork-0.9.2-r2.ebuild b/dev-ruby/spork/spork-0.9.2-r2.ebuild
deleted file mode 100644
index 7115fc1a15ed..000000000000
--- a/dev-ruby/spork/spork-0.9.2-r2.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-RUBY_FAKEGEM_EXTRAINSTALL="assets"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Spork is Tim Harper's implementation of test server"
-HOMEPAGE="https://github.com/sporkrb/spork"
-LICENSE="MIT"
-
-KEYWORDS="alpha amd64 arm ~hppa ia64 ppc ppc64 ~sparc x86 ~x86-fbsd"
-SLOT="0"
-IUSE=""
diff --git a/dev-ruby/spreadsheet/Manifest b/dev-ruby/spreadsheet/Manifest
index cf9f5ccd4ec6..420f48a617f8 100644
--- a/dev-ruby/spreadsheet/Manifest
+++ b/dev-ruby/spreadsheet/Manifest
@@ -1,3 +1 @@
-DIST spreadsheet-1.1.9.tar.gz 4656240 BLAKE2B cb2b663bc4721d916f0485fe51a5e46239f2e48dca2410d3b5e6f50ad4a4fb92982e3a9ba7605c4f202d538f3f69931837c2c0d323b8b30e9c25210fadca8796 SHA512 1a4d8f3e2f6772ff6fdfdc818893d8d808b03f68428125d6f3deab38830dc47ab203fbface21b01c66ab451e2175db38f4b6d3b0cc2423ac37578d3bd135305c
-DIST spreadsheet-1.2.2.tar.gz 4656143 BLAKE2B d68e128fc902dce7508e64f2ea530f222cea6be43a2841aa9fe28a4155919c11279bb43f525de8b62f1a08a4eb35e0d7bf0af2b808bd22e649a798fa3a77bbb0 SHA512 8a7a7b385b15967b3cabf4fcc40a69788ef4470e81789256208be6b6afed4fcc078e85e4cfab0e647a03ec3c312d07f4c24160bf57814d4990f7c6dba3abccef
-DIST spreadsheet-1.2.4.tar.gz 4656374 BLAKE2B f1879115c108e26e9a0593f3d7f8ed94527b404d7c6e6b1e94cb1bd1012ed83943a7d48e7abd99548fb9f702f7a97896763d34022716309e87aaaf5923806654 SHA512 273be3ca2cb11f705f6cc610590da96a69d5d6aa8ec8b74b8a30673bcebb20363593edc5bbed8b0d4cd4f57fb8c65a893ad8435e69f87b1d7825f80f8d0cdde3
+DIST spreadsheet-1.3.0.tar.gz 4654545 BLAKE2B c3658dbab73874d403da2be235d862be80ee8764eeac4cbf31b78121fa288ecfa2821734b6d97a31eecf29f21b52b9f7bd752ccb6b45edf7d2ef7c8ecc3cc410 SHA512 1e671d01fc4b21f6fee034cace68c711968983978cc815b5bda051c5ed14c736653a4151fa6f4393416b914a678e4ac471db795c318816036c17c2ac79703c05
diff --git a/dev-ruby/spreadsheet/metadata.xml b/dev-ruby/spreadsheet/metadata.xml
index dce7f7f54b82..131ac902a539 100644
--- a/dev-ruby/spreadsheet/metadata.xml
+++ b/dev-ruby/spreadsheet/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mjo@gentoo.org</email>
@@ -10,6 +10,7 @@
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
+ <remote-id type="github">zdavatz/spreadsheet</remote-id>
<remote-id type="rubygems">spreadsheet</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/spreadsheet/spreadsheet-1.1.9.ebuild b/dev-ruby/spreadsheet/spreadsheet-1.1.9.ebuild
deleted file mode 100644
index 9f95a8c8f22c..000000000000
--- a/dev-ruby/spreadsheet/spreadsheet-1.1.9.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Avoid the complexity of the "rake" recipe and run testrb-2 manually.
-RUBY_FAKEGEM_RECIPE_TEST=none
-
-# Same thing for the docs whose rake target just calls rdoc.
-RUBY_FAKEGEM_RECIPE_DOC=rdoc
-RUBY_FAKEGEM_EXTRADOC="GUIDE.md History.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby library to read and write spreadsheet documents"
-HOMEPAGE="https://github.com/zdavatz/spreadsheet"
-SRC_URI="https://github.com/zdavatz/spreadsheet/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
-ruby_add_rdepend ">=dev-ruby/ruby-ole-1.0"
-
-each_ruby_test() {
- ruby-ng_testrb-2 --pattern='.+.rb' --exclude='suite\.rb' test/
-}
diff --git a/dev-ruby/spreadsheet/spreadsheet-1.2.2.ebuild b/dev-ruby/spreadsheet/spreadsheet-1.2.2.ebuild
deleted file mode 100644
index 9f95a8c8f22c..000000000000
--- a/dev-ruby/spreadsheet/spreadsheet-1.2.2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Avoid the complexity of the "rake" recipe and run testrb-2 manually.
-RUBY_FAKEGEM_RECIPE_TEST=none
-
-# Same thing for the docs whose rake target just calls rdoc.
-RUBY_FAKEGEM_RECIPE_DOC=rdoc
-RUBY_FAKEGEM_EXTRADOC="GUIDE.md History.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby library to read and write spreadsheet documents"
-HOMEPAGE="https://github.com/zdavatz/spreadsheet"
-SRC_URI="https://github.com/zdavatz/spreadsheet/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
-ruby_add_rdepend ">=dev-ruby/ruby-ole-1.0"
-
-each_ruby_test() {
- ruby-ng_testrb-2 --pattern='.+.rb' --exclude='suite\.rb' test/
-}
diff --git a/dev-ruby/spreadsheet/spreadsheet-1.2.4.ebuild b/dev-ruby/spreadsheet/spreadsheet-1.2.4.ebuild
deleted file mode 100644
index c24aef1ddbd0..000000000000
--- a/dev-ruby/spreadsheet/spreadsheet-1.2.4.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-# Avoid the complexity of the "rake" recipe and run testrb-2 manually.
-RUBY_FAKEGEM_RECIPE_TEST=none
-
-# Same thing for the docs whose rake target just calls rdoc.
-RUBY_FAKEGEM_RECIPE_DOC=rdoc
-RUBY_FAKEGEM_EXTRADOC="GUIDE.md History.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby library to read and write spreadsheet documents"
-HOMEPAGE="https://github.com/zdavatz/spreadsheet"
-SRC_URI="https://github.com/zdavatz/spreadsheet/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
-ruby_add_rdepend ">=dev-ruby/ruby-ole-1.0"
-
-each_ruby_test() {
- ruby-ng_testrb-2 --pattern='.+.rb' --exclude='suite\.rb' test/
-}
diff --git a/dev-ruby/spreadsheet/spreadsheet-1.3.0.ebuild b/dev-ruby/spreadsheet/spreadsheet-1.3.0.ebuild
new file mode 100644
index 000000000000..ff81ea84e1ed
--- /dev/null
+++ b/dev-ruby/spreadsheet/spreadsheet-1.3.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# Avoid the complexity of the "rake" recipe and run testrb-2 manually.
+RUBY_FAKEGEM_RECIPE_TEST=none
+
+RUBY_FAKEGEM_EXTRADOC="GUIDE.md History.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="spreadsheet.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby library to read and write spreadsheet documents"
+HOMEPAGE="https://github.com/zdavatz/spreadsheet"
+SRC_URI="https://github.com/zdavatz/spreadsheet/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
+ruby_add_rdepend ">=dev-ruby/ruby-ole-1.0"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ': './:" ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ruby-ng_testrb-2 --pattern='.+.rb' --exclude='suite\.rb' test/
+}
diff --git a/dev-ruby/spring/Manifest b/dev-ruby/spring/Manifest
index e4cafbe53338..039571d73d13 100644
--- a/dev-ruby/spring/Manifest
+++ b/dev-ruby/spring/Manifest
@@ -1,2 +1,2 @@
-DIST spring-2.0.2.tar.gz 43318 BLAKE2B 91c032b6e4573721de559f7cdd7013656fd39b71b7d0776b0518ead3730044b6fb25b2900931023a920f1afdf555c2856e4748f052856515ad5fca83df356659 SHA512 73d6eb241807dd9bd20e0e393773da77fa22e07c72cd8d909e7ef1330a6c3d1e5ae483d2a10bff5d99f57214a96f87da2eb784c8532ed9e680c1d679dbf4bc0c
-DIST spring-2.1.0.tar.gz 43499 BLAKE2B 0736706638b0b8c76d244d5cc18b17730f807e6c87384c7823a71d9878a55337de8ab07ce1c75fc0ce0eaf3798df31d1c38f9c3fdac7cc4eedb84e1cab4eb27f SHA512 9c396cc55228f3afcc291f51418621071991d965312068dac88a940281d5df42239275a7da2f6a16801086b89e05477fa474705020060b1c4051baddf1305b05
+DIST spring-4.1.1.tar.gz 46849 BLAKE2B 08e66e8e8869ae900bd134ceb82e55d08ba005291b8a7c83a61225c04373b8b89488f0636c4bcf0a8fdc6407ae2b1da26ac7092a3cdd5b1209d2ae2c4a6abd06 SHA512 caf85cf8588825b62cc8284bea79ad3b1faa5b61cf773db78c4f62b24df1e0fd5d6ba148d993045ab8dc768dde5a3401aa228ba51b4985b98f5ce4080f695e43
+DIST spring-4.1.3.tar.gz 46968 BLAKE2B e41245e3723e874bdfe641b6770aa015605cdc9d87a190895a2d48d21469c529f15c28e31c387a493b79bbebc5d0279d3ce82310edca20650b63f1d9813913d9 SHA512 2a6732fa68c6c30dbcdecdab2d5bb3870459897381ae7ee6d21e4b71b8e0b3a7fe78f3771402baf45c54b38a7c164977a1b057fe39d810338005d25c7e8e71cb
diff --git a/dev-ruby/spring/metadata.xml b/dev-ruby/spring/metadata.xml
index d0910237281c..4ff5a7b6fc18 100644
--- a/dev-ruby/spring/metadata.xml
+++ b/dev-ruby/spring/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/spring/spring-2.0.2.ebuild b/dev-ruby/spring/spring-2.0.2.ebuild
deleted file mode 100644
index 95f928afe184..000000000000
--- a/dev-ruby/spring/spring-2.0.2.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_TASK_TEST="test:unit"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Rails application preloader"
-HOMEPAGE="https://github.com/rails/spring"
-SRC_URI="https://github.com/rails/spring/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1.1"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-4.2:*"
-
-ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/activesupport )"
-
-all_ruby_prepare() {
- sed -i -e '/files/d' \
- -e '/bump/d' ${PN}.gemspec || die
- sed -i -e '/bump/d' Rakefile || die
-}
diff --git a/dev-ruby/spring/spring-2.1.0.ebuild b/dev-ruby/spring/spring-2.1.0.ebuild
deleted file mode 100644
index 8557e90c7002..000000000000
--- a/dev-ruby/spring/spring-2.1.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_TASK_TEST="test:unit"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Rails application preloader"
-HOMEPAGE="https://github.com/rails/spring"
-SRC_URI="https://github.com/rails/spring/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1.1"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/activesupport-4.2:*"
-
-ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/activesupport )"
-
-all_ruby_prepare() {
- sed -i -e '/files/d' \
- -e '/bump/d' ${PN}.gemspec || die
- sed -i -e '/bump/d' Rakefile || die
-}
diff --git a/dev-ruby/spring/spring-4.1.1.ebuild b/dev-ruby/spring/spring-4.1.1.ebuild
new file mode 100644
index 000000000000..e7e2c2dfad42
--- /dev/null
+++ b/dev-ruby/spring/spring-4.1.1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_TASK_TEST="test:unit"
+
+RUBY_FAKEGEM_GEMSPEC="spring.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Rails application preloader"
+HOMEPAGE="https://github.com/rails/spring"
+SRC_URI="https://github.com/rails/spring/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1.1"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x64-solaris"
+
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/activesupport )"
+
+all_ruby_prepare() {
+ sed -i -e '/files/d' \
+ -e '/bump/d' ${PN}.gemspec || die
+ sed -i -e '/bump/d' Rakefile || die
+}
diff --git a/dev-ruby/spring/spring-4.1.3.ebuild b/dev-ruby/spring/spring-4.1.3.ebuild
new file mode 100644
index 000000000000..39f8d99276fa
--- /dev/null
+++ b/dev-ruby/spring/spring-4.1.3.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_TASK_TEST="test:unit"
+
+RUBY_FAKEGEM_GEMSPEC="spring.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Rails application preloader"
+HOMEPAGE="https://github.com/rails/spring"
+SRC_URI="https://github.com/rails/spring/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="1.1"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x64-solaris"
+
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/activesupport )"
+
+all_ruby_prepare() {
+ sed -i -e '/files/d' \
+ -e '/bump/d' ${PN}.gemspec || die
+ sed -i -e '/bump/d' Rakefile || die
+}
diff --git a/dev-ruby/sprockets-rails/Manifest b/dev-ruby/sprockets-rails/Manifest
index 3404c25c120a..a1fc6a6bf256 100644
--- a/dev-ruby/sprockets-rails/Manifest
+++ b/dev-ruby/sprockets-rails/Manifest
@@ -1 +1 @@
-DIST sprockets-rails-3.2.1.tar.gz 108682 BLAKE2B 842ce4560c7537f12c3aa2c068da89d99b410c4ad27f44b69abeead90518a4d9bad92fe6a70406c2f52d1124857419e845e3a1468cddcdce8a534c5f1210c3a8 SHA512 2c108370dfbf945e912505e854cdaf799f08d4374aac57a33bfc298d6e9bbf136877978458f7a8f48e5d120f578d3c7a88d91c058c12f520dd10b8271f82c49b
+DIST sprockets-rails-3.4.2.tar.gz 111038 BLAKE2B 36495540d8756bd44ba55ed0bf055c35ed963e1d5a8214766f61ff86515285babd409f44816bd9dae8321dd5473f7f5515d2c1c5ffa6b6042788ee50b4bfd247 SHA512 a01a23b189bc0fcde8fa3a0734c239dc9ee9119ca7a0828f04974cc28344e6c5743a6f60f1ab8ae8ed28c0e111103948209593ccd88dc974e2d12b55a1a2b49a
diff --git a/dev-ruby/sprockets-rails/metadata.xml b/dev-ruby/sprockets-rails/metadata.xml
index f062be86b35b..1b71af0d972f 100644
--- a/dev-ruby/sprockets-rails/metadata.xml
+++ b/dev-ruby/sprockets-rails/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/sprockets-rails/sprockets-rails-3.2.1.ebuild b/dev-ruby/sprockets-rails/sprockets-rails-3.2.1.ebuild
deleted file mode 100644
index 872fece3262a..000000000000
--- a/dev-ruby/sprockets-rails/sprockets-rails-3.2.1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Sprockets implementation for Rails 4.x (and beyond) Asset Pipeline"
-HOMEPAGE="https://github.com/rails/sprockets-rails"
-SRC_URI="https://github.com/rails/sprockets-rails/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1)"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
-
-IUSE="test"
-
-ruby_add_rdepend "
- >=dev-ruby/actionpack-4.0:*
- >=dev-ruby/activesupport-4.0:*
- >=dev-ruby/sprockets-3.0.0:*"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/actionpack-4
- >=dev-ruby/railties-4
- dev-ruby/test-unit:2
- )"
-
-all_ruby_prepare() {
- # Help load correct rack version consistently
- sed -i -e "3irequire 'action_controller'" test/test_helper.rb || die
-}
diff --git a/dev-ruby/sprockets-rails/sprockets-rails-3.4.2-r2.ebuild b/dev-ruby/sprockets-rails/sprockets-rails-3.4.2-r2.ebuild
new file mode 100644
index 000000000000..5678567561c9
--- /dev/null
+++ b/dev-ruby/sprockets-rails/sprockets-rails-3.4.2-r2.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 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Sprockets implementation for Rails 4.x (and beyond) Asset Pipeline"
+HOMEPAGE="https://github.com/rails/sprockets-rails"
+SRC_URI="https://github.com/rails/sprockets-rails/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
+
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/actionpack-5.2:*
+ >=dev-ruby/activesupport-5.2:*
+ >=dev-ruby/sprockets-3.0.0:*"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/minitest:5.15
+ >=dev-ruby/railties-5.2:*
+ dev-ruby/test-unit:2
+ )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+
+ # Match activesupport
+ sed -i -e "1igem 'minitest', '< 5.16'" test/*.rb || die
+
+ # It looks like tests are order dependent
+ sed -i -e '/test_order/ s/:random/:alpha/' test/test_helper.rb || die
+}
diff --git a/dev-ruby/sprockets/Manifest b/dev-ruby/sprockets/Manifest
index 7843b9c439de..f271fb1fb45f 100644
--- a/dev-ruby/sprockets/Manifest
+++ b/dev-ruby/sprockets/Manifest
@@ -1 +1,3 @@
DIST sprockets-3.7.2-git.tgz 369053 BLAKE2B 3c40de921d82b2f5c71e3ecaa114576293946352415da1195e60cdda6363066a6be05474eb7842ab1122e29fa6c19fd2f7a38fb0a7cf9972de0640eeb29d03f0 SHA512 bc7d79ba696a072644852b7a3a73ce086d297662309deb1d00318ad453f50ac6e494e6489632cb282795de2f334700155cfd21cc80be638dc471a3215422591f
+DIST sprockets-4.2.0-git.tgz 422096 BLAKE2B 466e328895e318b9e0eecf46e91e0c6b3c04cf5dcc2b6004de2b81b6d2ab4745b9bb8b2a14bc6b9927f169e0b936c19005aa01aa01e805007d37f297750c253e SHA512 8b22cafcb439dee7f4397fae64108854047ea21d7b8faf80d60b2907d8318f28d168014645b48f35f6a765a7ec925697c3755e4ed8d7724f453cbfae1f10880b
+DIST sprockets-4.2.1-git.tgz 422155 BLAKE2B 578404338fe24dfab050ea5365a5f839e48ef9aee110df5f10ca29ad3eace2b612234321c2f1835c6b1e417209fe2ad7b4b105b88252623df1cfb685c35f10c5 SHA512 dc9e5e2acfdc36c525ac8fad566f8494fb83f516fc1bc0c99531a547652aab2b5a9cc6630f32b093651c835eaca4339eb39128d579cde249058a372ad45bac86
diff --git a/dev-ruby/sprockets/files/sprockets-3.7.2-erb-deprecation.patch b/dev-ruby/sprockets/files/sprockets-3.7.2-erb-deprecation.patch
new file mode 100644
index 000000000000..c433360cae52
--- /dev/null
+++ b/dev-ruby/sprockets/files/sprockets-3.7.2-erb-deprecation.patch
@@ -0,0 +1,29 @@
+From b4fbdd9dfccabcaf5aa9f6ab7f6cab430cc16999 Mon Sep 17 00:00:00 2001
+From: utilum <oz@utilum.com>
+Date: Sun, 24 Jun 2018 10:30:13 +0200
+Subject: [PATCH] backport: Deprecate safe_level of `ERB.new` in Ruby 2.6
+
+37a87ba0969d9c08e0e5d05271c7d2e6ba8aa817
+---
+ lib/sprockets/erb_processor.rb | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/lib/sprockets/erb_processor.rb b/lib/sprockets/erb_processor.rb
+index a14d1c1a8..acbd4ad63 100644
+--- a/lib/sprockets/erb_processor.rb
++++ b/lib/sprockets/erb_processor.rb
+@@ -18,7 +18,13 @@ def initialize(&block)
+ end
+
+ def call(input)
+- engine = ::ERB.new(input[:data], nil, '<>')
++ match = ERB.version.match(/\Aerb\.rb \[(?<version>[^ ]+) /)
++ if match && match[:version] >= "2.2.0" # Ruby 2.6+
++ engine = ::ERB.new(input[:data], trim_mode: '<>')
++ else
++ engine = ::ERB.new(input[:data], nil, '<>')
++ end
++
+ context = input[:environment].context_class.new(input)
+ klass = (class << context; self; end)
+ klass.class_eval(&@block) if @block
diff --git a/dev-ruby/sprockets/files/sprockets-3.7.2-kwargs.patch b/dev-ruby/sprockets/files/sprockets-3.7.2-kwargs.patch
new file mode 100644
index 000000000000..3c9be7e7af01
--- /dev/null
+++ b/dev-ruby/sprockets/files/sprockets-3.7.2-kwargs.patch
@@ -0,0 +1,28 @@
+From 6e6d6a70848cf006fabf48088cb4140c6d1858e7 Mon Sep 17 00:00:00 2001
+From: pavel <pavel.rosicky@easy.cz>
+Date: Tue, 1 Oct 2019 12:29:13 +0200
+Subject: [PATCH] kwargs
+
+---
+ test/test_performance.rb | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/test/test_performance.rb b/test/test_performance.rb
+index c9e76c00f..f2ffde606 100644
+--- a/test/test_performance.rb
++++ b/test/test_performance.rb
+@@ -16,12 +16,12 @@ def stat(filename)
+ $dir_entires_calls = nil
+ class << Dir
+ alias_method :original_entries, :entries
+- def entries(dirname, *args)
++ def entries(dirname, **args)
+ if $dir_entires_calls
+ $dir_entires_calls[dirname.to_s] ||= []
+ $dir_entires_calls[dirname.to_s] << caller
+ end
+- original_entries(dirname, *args)
++ original_entries(dirname, **args)
+ end
+ end
+
diff --git a/dev-ruby/sprockets/files/sprockets-3.7.2-ruby31-host-uri.patch b/dev-ruby/sprockets/files/sprockets-3.7.2-ruby31-host-uri.patch
new file mode 100644
index 000000000000..1594c18fc8ec
--- /dev/null
+++ b/dev-ruby/sprockets/files/sprockets-3.7.2-ruby31-host-uri.patch
@@ -0,0 +1,65 @@
+https://github.com/rails/sprockets/commit/39490de3bdda3cb0b3aed16544b38b3771fbcca7
+
+From 39490de3bdda3cb0b3aed16544b38b3771fbcca7 Mon Sep 17 00:00:00 2001
+From: Benoit Daloze <eregontp@gmail.com>
+Date: Mon, 19 Dec 2022 21:16:29 +0100
+Subject: [PATCH] Make the URI tests pass with ruby-head
+
+* host is "" instead of nil, following the upstream change:
+ https://github.com/ruby/uri/commit/81263c9e94bd67ca01deee238842a88c2c8885f3
+
+--- a/lib/sprockets/uri_utils.rb
++++ b/lib/sprockets/uri_utils.rb
+@@ -50,7 +50,7 @@ module Sprockets
+ # Hack for parsing Windows "file:///C:/Users/IEUser" paths
+ path.gsub!(/^\/([a-zA-Z]:)/, '\1'.freeze)
+
+- [scheme, host, path, query]
++ [scheme, host || '', path, query]
+ end
+
+ # Internal: Join file: URI component parts into String.
+--- a/test/test_uri_utils.rb
++++ b/test/test_uri_utils.rb
+@@ -38,22 +38,22 @@ class TestURIUtils < MiniTest::Test
+ assert_equal ['file', 'localhost', '/etc/fstab', nil], parts
+
+ parts = split_file_uri("file:///etc/fstab")
+- assert_equal ['file', nil, '/etc/fstab', nil], parts
++ assert_equal ['file', '', '/etc/fstab', nil], parts
+
+ parts = split_file_uri("file:///usr/local/bin/ruby%20on%20rails")
+- assert_equal ['file', nil, '/usr/local/bin/ruby on rails', nil], parts
++ assert_equal ['file', '', '/usr/local/bin/ruby on rails', nil], parts
+
+ parts = split_file_uri("file:///usr/local/var/github/app/assets/javascripts/application.js")
+- assert_equal ['file', nil, '/usr/local/var/github/app/assets/javascripts/application.js', nil], parts
++ assert_equal ['file', '', '/usr/local/var/github/app/assets/javascripts/application.js', nil], parts
+
+ parts = split_file_uri("file:///C:/Documents%20and%20Settings/davris/FileSchemeURIs.doc")
+- assert_equal ['file', nil, 'C:/Documents and Settings/davris/FileSchemeURIs.doc', nil], parts
++ assert_equal ['file', '', 'C:/Documents and Settings/davris/FileSchemeURIs.doc', nil], parts
+
+ parts = split_file_uri("file:///D:/Program%20Files/Viewer/startup.htm")
+- assert_equal ['file', nil, 'D:/Program Files/Viewer/startup.htm', nil], parts
++ assert_equal ['file', '', 'D:/Program Files/Viewer/startup.htm', nil], parts
+
+ parts = split_file_uri("file:///C:/Program%20Files/Music/Web%20Sys/main.html?REQUEST=RADIO")
+- assert_equal ['file', nil, 'C:/Program Files/Music/Web Sys/main.html', 'REQUEST=RADIO'], parts
++ assert_equal ['file', '', 'C:/Program Files/Music/Web Sys/main.html', 'REQUEST=RADIO'], parts
+ end
+
+ def test_join_uri_path
+@@ -61,10 +61,10 @@ class TestURIUtils < MiniTest::Test
+ join_file_uri('file', 'localhost', '/etc/fstab', nil)
+
+ assert_equal "file:///etc/fstab",
+- join_file_uri('file', nil, '/etc/fstab', nil)
++ join_file_uri('file', '', '/etc/fstab', nil)
+
+ assert_equal "file:///usr/local/bin/ruby%20on%20rails",
+- join_file_uri('file', nil, '/usr/local/bin/ruby on rails', nil)
++ join_file_uri('file', '', '/usr/local/bin/ruby on rails', nil)
+ end
+
+ def test_inverse_file_uri_functions
diff --git a/dev-ruby/sprockets/metadata.xml b/dev-ruby/sprockets/metadata.xml
index d5c81fe00071..53dde81f2a7f 100644
--- a/dev-ruby/sprockets/metadata.xml
+++ b/dev-ruby/sprockets/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/sprockets/sprockets-3.7.2-r3.ebuild b/dev-ruby/sprockets/sprockets-3.7.2-r3.ebuild
new file mode 100644
index 000000000000..d9704edc5370
--- /dev/null
+++ b/dev-ruby/sprockets/sprockets-3.7.2-r3.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="sprockets.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby library for compiling and serving web assets"
+HOMEPAGE="https://github.com/rails/sprockets"
+SRC_URI="https://github.com/rails/sprockets/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+PATCHES=(
+ "${FILESDIR}/${P}-erb-deprecation.patch"
+ "${FILESDIR}/${P}-kwargs.patch"
+ "${FILESDIR}/${P}-ruby31-host-uri.patch"
+)
+
+ruby_add_rdepend "
+ dev-ruby/concurrent-ruby:1
+ >=dev-ruby/rack-1:* <dev-ruby/rack-3:*"
+
+ruby_add_bdepend "test? (
+ dev-ruby/json
+ dev-ruby/rack-test
+ =dev-ruby/coffee-script-2*
+ =dev-ruby/execjs-2*
+ dev-ruby/nokogiri
+ =dev-ruby/sass-3* >=dev-ruby/sass-3.1
+ dev-ruby/uglifier
+ )"
+
+all_ruby_prepare() {
+ # Avoid tests for template types that we currently don't package:
+ # eco and ejs.
+ sed -i -e '/eco templates/,/end/ s:^:#:' \
+ -e '/ejs templates/,/end/ s:^:#:' test/test_environment.rb || die
+ sed -i -e '/.ejs/ s:^:#:' test/test_asset.rb || die
+ rm -f test/test_require.rb test/test_{closure,eco,ejs,yui}_{compressor,processor}.rb || die
+ sed -i -e "/bundler/d" Rakefile || die
+
+ sed -i -e 's/MiniTest/Minitest/' test/sprockets_test.rb test/test*.rb || die
+ sed -i -e '2igem "rack", "<3"' test/sprockets_test.rb || die
+ sed -i -e '5irequire "rack/lint"' test/test_server.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e "s:ruby:${RUBY}:" test/test_sprocketize.rb || die
+}
+
+each_ruby_test() {
+ # Make sure we have completely separate copies. Hardlinks won't work
+ # for this test suite.
+ cp -R test test-new || die
+ rm -rf test || die
+ mv test-new test || die
+
+ each_fakegem_test
+}
diff --git a/dev-ruby/sprockets/sprockets-3.7.2.ebuild b/dev-ruby/sprockets/sprockets-3.7.2.ebuild
deleted file mode 100644
index f823dba356b9..000000000000
--- a/dev-ruby/sprockets/sprockets-3.7.2.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="sprockets.gemspec"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="Ruby library for compiling and serving web assets"
-HOMEPAGE="https://github.com/rails/sprockets"
-SRC_URI="https://github.com/rails/sprockets/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-LICENSE="MIT"
-SLOT="$(get_version_component_range 1)"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/concurrent-ruby:1
- >=dev-ruby/rack-1:* <dev-ruby/rack-3:*
- !!<dev-ruby/sprockets-2.12.3-r1:2"
-
-ruby_add_bdepend "test? (
- dev-ruby/json
- dev-ruby/rack-test
- =dev-ruby/coffee-script-2*
- =dev-ruby/execjs-2*
- =dev-ruby/sass-3* >=dev-ruby/sass-3.1
- dev-ruby/uglifier
- )"
-
-all_ruby_prepare() {
- # Avoid tests for template types that we currently don't package:
- # eco and ejs.
- sed -i -e '/eco templates/,/end/ s:^:#:' \
- -e '/ejs templates/,/end/ s:^:#:' test/test_environment.rb || die
- sed -i -e '/.ejs/ s:^:#:' test/test_asset.rb || die
- rm -f test/test_require.rb test/test_{closure,eco,ejs,yui}_{compressor,processor}.rb || die
- sed -i -e "/bundler/d" Rakefile || die
-}
-
-each_ruby_prepare() {
- sed -i -e "s:ruby:${RUBY}:" test/test_sprocketize.rb || die
-}
-
-each_ruby_test() {
- # Make sure we have completely separate copies. Hardlinks won't work
- # for this test suite.
- cp -R test test-new || die
- rm -rf test || die
- mv test-new test || die
-
- each_fakegem_test
-}
diff --git a/dev-ruby/sprockets/sprockets-4.2.0-r1.ebuild b/dev-ruby/sprockets/sprockets-4.2.0-r1.ebuild
new file mode 100644
index 000000000000..5d710d2dd7ab
--- /dev/null
+++ b/dev-ruby/sprockets/sprockets-4.2.0-r1.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="sprockets.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby library for compiling and serving web assets"
+HOMEPAGE="https://github.com/rails/sprockets"
+SRC_URI="https://github.com/rails/sprockets/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/concurrent-ruby:1
+ >=dev-ruby/rack-2.2.4:3.0
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/json
+ dev-ruby/rack-test
+ =dev-ruby/coffee-script-2*
+ =dev-ruby/execjs-2*
+ =dev-ruby/sass-3* >=dev-ruby/sass-3.1
+ dev-ruby/sassc
+ dev-ruby/uglifier
+ )"
+
+all_ruby_prepare() {
+ # Avoid tests for template types that we currently don't package:
+ # eco and ejs.
+ sed -i -e '/eco templates/,/end/ s:^:#:' \
+ -e '/ejs templates/,/end/ s:^:#:' test/test_environment.rb || die
+ sed -i -e '/.ejs/ s:^:#:' -e '/\(es6_asset.js\|traceur.es6\)/ s:^:#:' test/test_asset.rb || die
+ sed -i -e '/compile babel source map/askip' test/test_source_maps.rb || die
+ sed -e '/change jst template namespace/askip' \
+ -e '/find_asset. does not raise an exception/askip' \
+ -e '/es6 asset/askip' \
+ -i test/test_environment.rb || die
+ rm -f test/test_require.rb test/test_{babel,closure,eco,ejs,jsminc,yui}_{compressor,processor}.rb || die
+ # Fails only within Gentoo test environment, not clear why
+ sed -i -e '/extension exporters/a skip' test/test_exporting.rb || die
+ sed -i -e "/bundler/d" Rakefile || die
+
+ sed -i -e 's/MiniTest/Minitest/' test/sprockets_test.rb test/test*.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e "s:ruby:${RUBY}:" test/test_sprocketize.rb || die
+}
+
+each_ruby_test() {
+ # Make sure we have completely separate copies. Hardlinks won't work
+ # for this test suite.
+ cp -R test test-new || die
+ rm -rf test || die
+ mv test-new test || die
+
+ each_fakegem_test
+}
diff --git a/dev-ruby/sprockets/sprockets-4.2.1.ebuild b/dev-ruby/sprockets/sprockets-4.2.1.ebuild
new file mode 100644
index 000000000000..6043672b9d83
--- /dev/null
+++ b/dev-ruby/sprockets/sprockets-4.2.1.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="sprockets.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby library for compiling and serving web assets"
+HOMEPAGE="https://github.com/rails/sprockets"
+SRC_URI="https://github.com/rails/sprockets/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/concurrent-ruby:1
+ >=dev-ruby/rack-2.2.4:3.0
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/json
+ dev-ruby/rack-test
+ =dev-ruby/coffee-script-2*
+ =dev-ruby/execjs-2*
+ =dev-ruby/sass-3* >=dev-ruby/sass-3.1
+ dev-ruby/sassc
+ dev-ruby/uglifier
+ )"
+
+all_ruby_prepare() {
+ # Avoid tests for template types that we currently don't package:
+ # eco and ejs.
+ sed -i -e '/eco templates/,/end/ s:^:#:' \
+ -e '/ejs templates/,/end/ s:^:#:' test/test_environment.rb || die
+ sed -i -e '/.ejs/ s:^:#:' -e '/\(es6_asset.js\|traceur.es6\)/ s:^:#:' test/test_asset.rb || die
+ sed -i -e '/compile babel source map/askip' test/test_source_maps.rb || die
+ sed -e '/change jst template namespace/askip' \
+ -e '/find_asset. does not raise an exception/askip' \
+ -e '/es6 asset/askip' \
+ -i test/test_environment.rb || die
+ rm -f test/test_require.rb test/test_{babel,closure,eco,ejs,jsminc,yui}_{compressor,processor}.rb || die
+ # Fails only within Gentoo test environment, not clear why
+ sed -i -e '/extension exporters/a skip' test/test_exporting.rb || die
+ sed -i -e "/bundler/d" Rakefile || die
+
+ sed -i -e 's/MiniTest/Minitest/' test/sprockets_test.rb test/test*.rb || die
+}
+
+each_ruby_prepare() {
+ sed -i -e "s:ruby:${RUBY}:" test/test_sprocketize.rb || die
+}
+
+each_ruby_test() {
+ # Make sure we have completely separate copies. Hardlinks won't work
+ # for this test suite.
+ cp -R test test-new || die
+ rm -rf test || die
+ mv test-new test || die
+
+ each_fakegem_test
+}
diff --git a/dev-ruby/spy/Manifest b/dev-ruby/spy/Manifest
index 86ef60f25089..f3793598a9eb 100644
--- a/dev-ruby/spy/Manifest
+++ b/dev-ruby/spy/Manifest
@@ -1,2 +1 @@
-DIST spy-0.4.5.gem 32768 BLAKE2B 853942654a7448dcdbb4863452d118012bbda93e6ad650c4987ae8a038b434ba12799e8a98a23a4b4731b193835121d0cc28e5d0eb9a9df888b53d43efd19a7f SHA512 f006809cbe1118c3f629bff29dae141039d8ec098f6ce217907304d4ab159cdf1b357dc5008e84c44385bb48aea2c36a1b70c8db363d02403316792c7b4e211e
-DIST spy-1.0.0.gem 33280 BLAKE2B e85c6de9ad9eedd61f95d0a22a87d402949fffe925af3c525a9ed7842ec4582a5063caa6767ece7c2c6f470d10abd44015c0e02a4f31f21c85d6db6b6a28c2a3 SHA512 adea03cd0c2e60f964887c3a80a29deabe7bf1d98f2b5490e8ed833e64c53144437fca636ec1cfa9413f93dbcf154b2cd27afc9363b33c37d99db7cb4790b358
+DIST spy-1.0.5.gem 22528 BLAKE2B 8568e16777c5979cc3542f870ac9517c8a4e0df666c05c5cb0e94f11345710c16429d542ac26df844328d9b722271ce68c89673f04ef87fe5607cd2d75d9a9ac SHA512 9a16b870c9b9ce35efb2e69cd8c1e7592e1589a3462844d956c5620df4bc818bf5574f2042cb6e82100142f6a9fd7ff25a5bfff124fbb849925a46ea7277cec0
diff --git a/dev-ruby/spy/metadata.xml b/dev-ruby/spy/metadata.xml
index 1743f12a2865..0841cbfdcdd6 100644
--- a/dev-ruby/spy/metadata.xml
+++ b/dev-ruby/spy/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/spy/spy-0.4.5.ebuild b/dev-ruby/spy/spy-0.4.5.ebuild
deleted file mode 100644
index ab4d3244e737..000000000000
--- a/dev-ruby/spy/spy-0.4.5.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A simple opinionated mocking framework"
-HOMEPAGE="https://github.com/ryanong/spy"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:0 )"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" -e "/pry/d" -e "/[Cc]overalls/d" Rakefile test/test_helper.rb || die
-}
diff --git a/dev-ruby/spy/spy-1.0.0.ebuild b/dev-ruby/spy/spy-1.0.0.ebuild
deleted file mode 100644
index 37689f6bc649..000000000000
--- a/dev-ruby/spy/spy-1.0.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A simple opinionated mocking framework"
-HOMEPAGE="https://github.com/ryanong/spy"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/minitest:0 )"
-
-all_ruby_prepare() {
- sed -i -e "/bundler/d" -e "/pry/d" -e "/[Cc]overalls/d" -e '/[Rr]eporters/d' Rakefile test/test_helper.rb || die
-}
diff --git a/dev-ruby/spy/spy-1.0.5.ebuild b/dev-ruby/spy/spy-1.0.5.ebuild
new file mode 100644
index 000000000000..7f17135df639
--- /dev/null
+++ b/dev-ruby/spy/spy-1.0.5.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A simple opinionated mocking framework"
+HOMEPAGE="https://github.com/ryanong/spy"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e "/bundler/d" -e "/pry/d" -e "/[Cc]overalls/d" -e '/[Rr]eporters/d' Rakefile test/test_helper.rb || die
+}
diff --git a/dev-ruby/sqlite3/Manifest b/dev-ruby/sqlite3/Manifest
index 555ee5a27416..787b37a14cfd 100644
--- a/dev-ruby/sqlite3/Manifest
+++ b/dev-ruby/sqlite3/Manifest
@@ -1,3 +1,5 @@
-DIST sqlite3-1.3.13.gem 64512 BLAKE2B a36e3161e44004a0510297d16bf491df3dc29434432208ad231f5e46ddecb4607add417e105f5ae8472a768f80efef3f74b703b2a441396b4c9b6c9ff90bf31e SHA512 5d3eab7c788cc62c497de179919054324e53595294ec3a9df2a10d23151a406ee9a88f1c3ac945777f138e78cec61018c388b023456b873131d678a6788a505f
-DIST sqlite3-1.4.0.gem 70144 BLAKE2B 4900db2ffefb1658d1001d3d334c95b6e140abceb99b60c1aff78ffe8ca8055b58a1ea87040dc54893542a55d55aa2c1a91975a61edec18d211bf8dbbd786642 SHA512 7db9ca4bc12becd41224be77694453e8ba428303b69e58663f7888746558112e147c5f9076aa8baf3c23ac3e895cac079cb645d281e5eb06f98e0d8e8268562a
-DIST sqlite3-1.4.1.gem 70144 BLAKE2B 5a850296c804223cfe7673f72a1e303fb80c49569f23ab57be9a26acacbe95945382db1b1fd22bb432c974ddcf7c28abd913912823c2e8477d2eda165dbafe0d SHA512 33f87af2e962459cad07f2f07c9d6dffb59551c4e5371e47446f10f5314a05da495598ef5f90f896f876f9a59bd2e90b5bb3fdfb6efb95966ff51bb578f81a80
+DIST sqlite3-1.6.7.gem 3249664 BLAKE2B 021edaa3d1a9d4cd8eeaaf3354e6e5aab047d8e61abbd5416ae50b2a7e426e5a6c1a484bc9f0c47a838b006b37eb3b41d7c51c200851f9d7bf0525b9dc91b597 SHA512 83455e533bbe84c71045b28ec6262b50804e774f3de4811e123cdb780ea4989227c01a8b6939179813ae3b59e1261e2d694830cc10ca05e7789dc635ff4d9b97
+DIST sqlite3-1.6.9.gem 3277312 BLAKE2B 85360858f23ad20efce1d2d0dfb5661440425ad2d45bee3ff4c26a1489a9c3e8d1a875a8a0a2f71b89f9dde85e01ab10b65ba9bebcc9f4efe2dfb9214d983a5e SHA512 d5bb7b928c9cac2a8a97f9ce4e56041713d41364bef6e37ea10e47d795576b0f524eea9a8369f2022dab12d79cf0d28f85383d731ecde1af5edfb0c6421c83ff
+DIST sqlite3-1.7.0.gem 3277824 BLAKE2B a836cccf0ad6572139589a534bd95e011108f313c0f3876da612196ddb58d4ca7e4de4534d896566c1d86e3990f5601f9953bd14b25ae9a7aa85559389ec11b1 SHA512 d87b9567e58018c51788d7d524f983f4a4503e95f2b25fd0e0eb655f357fff7c18ebdabf0cdd057a1ac2215c8c849e7eb4e10a323bdc812632830ab886510c16
+DIST sqlite3-1.7.2.gem 3305984 BLAKE2B 944ed6206476e4161361b31dfb09bcf0c91a7a5c7a675f21892aa9831d41218d367e459459a4774e86331aeabec9db1bd12956e01f004f23e2d95beed73d5808 SHA512 1e0ad4266230108f30716a1ab1dd2defc47f52e5a43250e32295e2506fa1398334010ad3aa771a60c2127618aef2344fe902e064ea525e95c99438db8c3b73b1
+DIST sqlite3-1.7.3.gem 3307008 BLAKE2B 0df742c7cb4a8f920196106b5701eae07e60e668f040ca6e3276afdd0dfdeed3fb19ed455425f332e13082ca740f42d914536ccdf565ed151b6eb0f6ccd7c676 SHA512 b6ed36a5618134ca1f993b21a351ac279ebb7e1370be521eae67ed9224a1fac11d71ddd7573b3b14da47657756cb68b3eab0164b6e6ed058d3f64fa95699bc2f
diff --git a/dev-ruby/sqlite3/metadata.xml b/dev-ruby/sqlite3/metadata.xml
index d2f77da0102a..3c2fad94d45a 100644
--- a/dev-ruby/sqlite3/metadata.xml
+++ b/dev-ruby/sqlite3/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/sqlite3/sqlite3-1.3.13.ebuild b/dev-ruby/sqlite3/sqlite3-1.3.13.ebuild
deleted file mode 100644
index 0d0730790f93..000000000000
--- a/dev-ruby/sqlite3/sqlite3-1.3.13.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC="faq"
-RUBY_FAKEGEM_DOCDIR="doc faq"
-RUBY_FAKEGEM_EXTRADOC="API_CHANGES.rdoc README.rdoc ChangeLog.cvs CHANGELOG.rdoc"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="An extension library to access a SQLite database from Ruby"
-HOMEPAGE="https://github.com/sparklemotion/sqlite3-ruby"
-LICENSE="BSD"
-
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ia64 ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-RDEPEND+=" >=dev-db/sqlite-3.6.16:3"
-DEPEND+=" >=dev-db/sqlite-3.6.16:3"
-
-ruby_add_bdepend "
- dev-ruby/rake-compiler
- dev-ruby/hoe
- doc? ( dev-ruby/redcloth )
- test? ( dev-ruby/minitest:5 )"
-
-all_ruby_prepare() {
- # We remove the vendor_sqlite3 rake task because it's used to
- # bundle SQlite3 which we definitely don't want.
- rm tasks/vendor_sqlite3.rake || die
-
- # Remove license line from hoe to avoid depending on a newer
- # version.
- sed -i -e '/license/d' tasks/gem.rake || die
-
- sed -i -e 's:, HOE.spec::' -e '/task :test/d' tasks/native.rake || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/sqlite3 extconf.rb || die
-}
-
-all_ruby_compile() {
- all_fakegem_compile
-
- if use doc; then
- rdoc --title "${P} Dcoumentation" -o doc --main README.rdoc lib *.rdoc ext/*/*.c || die
- fi
-}
-
-each_ruby_compile() {
- # TODO: not sure what happens with jruby
-
- emake -Cext/sqlite3 V=1
- mv ext/sqlite3/sqlite3_native$(get_modname) lib/sqlite3/ || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- # sqlite3 was called sqlite3-ruby before, so add a spec file that
- # simply loads sqlite3 to make sure that old projects load correctly
- # we don't even need to create a file to load this: the `require
- # sqlite3` was already part of sqlite3-ruby requirements.
- cat - <<EOF > "${T}/sqlite3-ruby.gemspec"
-# generated by ebuild
-# $CATEGORY/$PF
-Gem::Specification.new do |s|
- s.name = "sqlite3-ruby"
- s.version = "${RUBY_FAKEGEM_VERSION}"
- s.summary = "Fake gem to load sqlite3"
- s.homepage = "${HOMEPAGE}"
- s.specification_version = 3
- s.add_runtime_dependency("${RUBY_FAKEGEM_NAME}", ["= ${RUBY_FAKEGEM_VERSION}"])
-end
-EOF
- RUBY_FAKEGEM_NAME=sqlite3-ruby \
- RUBY_FAKEGEM_GEMSPEC="${T}/sqlite3-ruby.gemspec" \
- ruby_fakegem_install_gemspec
-}
diff --git a/dev-ruby/sqlite3/sqlite3-1.4.0.ebuild b/dev-ruby/sqlite3/sqlite3-1.4.0.ebuild
deleted file mode 100644
index a8d2de67e090..000000000000
--- a/dev-ruby/sqlite3/sqlite3-1.4.0.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC="faq"
-RUBY_FAKEGEM_DOCDIR="doc faq"
-RUBY_FAKEGEM_EXTRADOC="API_CHANGES.rdoc README.rdoc ChangeLog.cvs CHANGELOG.rdoc"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="An extension library to access a SQLite database from Ruby"
-HOMEPAGE="https://github.com/sparklemotion/sqlite3-ruby"
-LICENSE="BSD"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-RDEPEND+=" >=dev-db/sqlite-3.6.16:3"
-DEPEND+=" >=dev-db/sqlite-3.6.16:3"
-
-ruby_add_bdepend "
- dev-ruby/rake-compiler
- doc? ( dev-ruby/rdoc dev-ruby/redcloth )
- test? ( dev-ruby/minitest:5 )"
-
-all_ruby_prepare() {
- # We remove the vendor_sqlite3 rake task because it's used to
- # bundle SQlite3 which we definitely don't want.
- rm -f rakelib/vendor_sqlite3.rake || die
-
- # Remove gem tasks since we don't need them and they require hoe.
- rm -f rakelib/gem.rake || die
-
- sed -i -e 's:, HOE.spec::' -e '/task :test/d' rakelib/native.rake || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/sqlite3 extconf.rb || die
-}
-
-all_ruby_compile() {
- all_fakegem_compile
-
- if use doc; then
- rdoc --title "${P} Dcoumentation" -o doc --main README.rdoc lib *.rdoc ext/*/*.c || die
- fi
-}
-
-each_ruby_compile() {
- emake -Cext/sqlite3 V=1
- mv ext/sqlite3/sqlite3_native$(get_modname) lib/sqlite3/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- # sqlite3 was called sqlite3-ruby before, so add a spec file that
- # simply loads sqlite3 to make sure that old projects load correctly
- # we don't even need to create a file to load this: the `require
- # sqlite3` was already part of sqlite3-ruby requirements.
- cat - <<EOF > "${T}/sqlite3-ruby.gemspec"
-# generated by ebuild
-# $CATEGORY/$PF
-Gem::Specification.new do |s|
- s.name = "sqlite3-ruby"
- s.version = "${RUBY_FAKEGEM_VERSION}"
- s.summary = "Fake gem to load sqlite3"
- s.homepage = "${HOMEPAGE}"
- s.specification_version = 3
- s.add_runtime_dependency("${RUBY_FAKEGEM_NAME}", ["= ${RUBY_FAKEGEM_VERSION}"])
-end
-EOF
- RUBY_FAKEGEM_NAME=sqlite3-ruby \
- RUBY_FAKEGEM_GEMSPEC="${T}/sqlite3-ruby.gemspec" \
- ruby_fakegem_install_gemspec
-}
diff --git a/dev-ruby/sqlite3/sqlite3-1.4.1.ebuild b/dev-ruby/sqlite3/sqlite3-1.4.1.ebuild
deleted file mode 100644
index 4832c2d5b695..000000000000
--- a/dev-ruby/sqlite3/sqlite3-1.4.1.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC="faq"
-RUBY_FAKEGEM_DOCDIR="doc faq"
-RUBY_FAKEGEM_EXTRADOC="API_CHANGES.rdoc README.rdoc ChangeLog.cvs CHANGELOG.rdoc"
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="An extension library to access a SQLite database from Ruby"
-HOMEPAGE="https://github.com/sparklemotion/sqlite3-ruby"
-LICENSE="BSD"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-RDEPEND+=" >=dev-db/sqlite-3.6.16:3"
-DEPEND+=" >=dev-db/sqlite-3.6.16:3"
-
-ruby_add_bdepend "
- dev-ruby/rake-compiler
- doc? ( dev-ruby/rdoc dev-ruby/redcloth )
- test? ( dev-ruby/minitest:5 )"
-
-all_ruby_prepare() {
- # We remove the vendor_sqlite3 rake task because it's used to
- # bundle SQlite3 which we definitely don't want.
- rm -f rakelib/vendor_sqlite3.rake || die
-
- # Remove gem tasks since we don't need them and they require hoe.
- rm -f rakelib/gem.rake || die
-
- sed -i -e 's:, HOE.spec::' -e '/task :test/d' rakelib/native.rake || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/sqlite3 extconf.rb || die
-}
-
-all_ruby_compile() {
- all_fakegem_compile
-
- if use doc; then
- rdoc --title "${P} Dcoumentation" -o doc --main README.rdoc lib *.rdoc ext/*/*.c || die
- fi
-}
-
-each_ruby_compile() {
- emake -Cext/sqlite3 V=1
- mv ext/sqlite3/sqlite3_native$(get_modname) lib/sqlite3/ || die
-}
-
-each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
-
-each_ruby_install() {
- each_fakegem_install
-
- # sqlite3 was called sqlite3-ruby before, so add a spec file that
- # simply loads sqlite3 to make sure that old projects load correctly
- # we don't even need to create a file to load this: the `require
- # sqlite3` was already part of sqlite3-ruby requirements.
- cat - <<EOF > "${T}/sqlite3-ruby.gemspec"
-# generated by ebuild
-# $CATEGORY/$PF
-Gem::Specification.new do |s|
- s.name = "sqlite3-ruby"
- s.version = "${RUBY_FAKEGEM_VERSION}"
- s.summary = "Fake gem to load sqlite3"
- s.homepage = "${HOMEPAGE}"
- s.specification_version = 3
- s.add_runtime_dependency("${RUBY_FAKEGEM_NAME}", ["= ${RUBY_FAKEGEM_VERSION}"])
-end
-EOF
- RUBY_FAKEGEM_NAME=sqlite3-ruby \
- RUBY_FAKEGEM_GEMSPEC="${T}/sqlite3-ruby.gemspec" \
- ruby_fakegem_install_gemspec
-}
diff --git a/dev-ruby/sqlite3/sqlite3-1.6.7.ebuild b/dev-ruby/sqlite3/sqlite3-1.6.7.ebuild
new file mode 100644
index 000000000000..856f3aa51cab
--- /dev/null
+++ b/dev-ruby/sqlite3/sqlite3-1.6.7.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC="faq"
+RUBY_FAKEGEM_DOCDIR="doc faq"
+RUBY_FAKEGEM_EXTRADOC="API_CHANGES.md README.md ChangeLog.cvs CHANGELOG.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/sqlite3/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/sqlite3
+
+inherit ruby-fakegem
+
+DESCRIPTION="An extension library to access a SQLite database from Ruby"
+HOMEPAGE="https://github.com/sparklemotion/sqlite3-ruby"
+LICENSE="BSD"
+
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE=""
+
+# We track the bundled sqlite version here
+RDEPEND+=" >=dev-db/sqlite-3.43.2:3"
+DEPEND+=" >=dev-db/sqlite-3.43.2:3"
+
+ruby_add_bdepend "
+ doc? ( dev-ruby/rdoc dev-ruby/redcloth )
+ 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 -i -e '/^dependencies:/,/force_ruby_platform/d' ../metadata || 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/sqlite3/sqlite3-1.6.9.ebuild b/dev-ruby/sqlite3/sqlite3-1.6.9.ebuild
new file mode 100644
index 000000000000..02ac7a89108d
--- /dev/null
+++ b/dev-ruby/sqlite3/sqlite3-1.6.9.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_DOC="faq"
+RUBY_FAKEGEM_DOCDIR="doc faq"
+RUBY_FAKEGEM_EXTRADOC="API_CHANGES.md README.md ChangeLog.cvs CHANGELOG.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/sqlite3/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/sqlite3
+
+inherit ruby-fakegem
+
+DESCRIPTION="An extension library to access a SQLite database from Ruby"
+HOMEPAGE="https://github.com/sparklemotion/sqlite3-ruby"
+LICENSE="BSD"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE=""
+
+# We track the bundled sqlite version here
+RDEPEND+=" >=dev-db/sqlite-3.44.2:3"
+DEPEND+=" >=dev-db/sqlite-3.44.2:3"
+
+ruby_add_bdepend "
+ doc? ( dev-ruby/rdoc dev-ruby/redcloth )
+ 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 -i -e '/^dependencies:/,/force_ruby_platform/d' ../metadata || 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/sqlite3/sqlite3-1.7.0.ebuild b/dev-ruby/sqlite3/sqlite3-1.7.0.ebuild
new file mode 100644
index 000000000000..6a59e359cad9
--- /dev/null
+++ b/dev-ruby/sqlite3/sqlite3-1.7.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC="faq"
+RUBY_FAKEGEM_DOCDIR="doc faq"
+RUBY_FAKEGEM_EXTRADOC="API_CHANGES.md README.md ChangeLog.cvs CHANGELOG.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/sqlite3/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/sqlite3
+
+inherit ruby-fakegem
+
+DESCRIPTION="An extension library to access a SQLite database from Ruby"
+HOMEPAGE="https://github.com/sparklemotion/sqlite3-ruby"
+LICENSE="BSD"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE=""
+
+# We track the bundled sqlite version here
+RDEPEND+=" >=dev-db/sqlite-3.44.2:3"
+DEPEND+=" >=dev-db/sqlite-3.44.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 -i -e '/^dependencies:/,/force_ruby_platform/d' ../metadata || 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/sqlite3/sqlite3-1.7.2.ebuild b/dev-ruby/sqlite3/sqlite3-1.7.2.ebuild
new file mode 100644
index 000000000000..0824284115ae
--- /dev/null
+++ b/dev-ruby/sqlite3/sqlite3-1.7.2.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC="faq"
+RUBY_FAKEGEM_DOCDIR="doc faq"
+RUBY_FAKEGEM_EXTRADOC="API_CHANGES.md README.md ChangeLog.cvs CHANGELOG.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/sqlite3/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/sqlite3
+
+inherit ruby-fakegem
+
+DESCRIPTION="An extension library to access a SQLite database from Ruby"
+HOMEPAGE="https://github.com/sparklemotion/sqlite3-ruby"
+LICENSE="BSD"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="doc test"
+
+# We track the bundled sqlite version here
+RDEPEND+=" >=dev-db/sqlite-3.45.1:3"
+DEPEND+=" >=dev-db/sqlite-3.45.1: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 -i -e '/^dependencies:/,/force_ruby_platform/d' ../metadata || 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/sqlite3/sqlite3-1.7.3.ebuild b/dev-ruby/sqlite3/sqlite3-1.7.3.ebuild
new file mode 100644
index 000000000000..096080242fee
--- /dev/null
+++ b/dev-ruby/sqlite3/sqlite3-1.7.3.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC="faq"
+RUBY_FAKEGEM_DOCDIR="doc faq"
+RUBY_FAKEGEM_EXTRADOC="API_CHANGES.md README.md ChangeLog.cvs CHANGELOG.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/sqlite3/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/sqlite3
+
+inherit ruby-fakegem
+
+DESCRIPTION="An extension library to access a SQLite database from Ruby"
+HOMEPAGE="https://github.com/sparklemotion/sqlite3-ruby"
+LICENSE="BSD"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="doc test"
+
+# We track the bundled sqlite version here
+RDEPEND+=" >=dev-db/sqlite-3.45.2:3"
+DEPEND+=" >=dev-db/sqlite-3.45.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 -i -e '/^dependencies:/,/force_ruby_platform/d' ../metadata || 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/sshkey/Manifest b/dev-ruby/sshkey/Manifest
index 8d7d6fcd68ad..636a59ac176d 100644
--- a/dev-ruby/sshkey/Manifest
+++ b/dev-ruby/sshkey/Manifest
@@ -1,2 +1,2 @@
-DIST sshkey-1.9.0.gem 25600 BLAKE2B 8d20f10c7bbb243ed6a0eb41ddf07b06af803fb71ad7fe49c5b0a90fffe0db167e0b527513401400d12486fcf3fa445db1934b2eee08a5954cd2347dbaa03506 SHA512 d8cebd1341ee70886f868e4f7b4a524b1781a229e80261172b8c9a14ae665cc5e84b98f7b476cd62e57af430247c172a08dcd219956adc95a42caf88aab1b0b7
DIST sshkey-2.0.0.gem 26112 BLAKE2B 19fb790d4eba7f57e96b57d838fb6736857b9394f678d37f4577a1794b6d7f901fe35165616c317add04d470a301ab79b55e39d64ef93b566d4c1f628a74fe22 SHA512 dfd56a8b3b4f6abe785f37b5e1a4a61799c704a864821c35beaa6ddcec51b2f9f0111ef945fdacac685cbe6141e7ce2ad0c9bae8fa4cf8a8d48354701a0e5d05
+DIST sshkey-3.0.0.gem 31232 BLAKE2B 2bf0a99dd89866ed0d63ac9df4aff9f1085178fef2485c29f4777838e26bbcaac71a80f73446fdeea443e970912f98b10796d095bb8661d3bc8e108e5ae545ca SHA512 5d72a6e6e30de68ecd81176d4d50e74d34c89f63efeb6df374ac5226f19c47254158a7d9f909661839b3a0188d88fe4521bfdaca8b20ee3aa4db72996b7519ec
diff --git a/dev-ruby/sshkey/metadata.xml b/dev-ruby/sshkey/metadata.xml
index 22ca2dfdb17d..cadb316c849e 100644
--- a/dev-ruby/sshkey/metadata.xml
+++ b/dev-ruby/sshkey/metadata.xml
@@ -1,9 +1,9 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
<remote-id type="github">bensie/sshkey</remote-id>
diff --git a/dev-ruby/sshkey/sshkey-1.9.0.ebuild b/dev-ruby/sshkey/sshkey-1.9.0.ebuild
deleted file mode 100644
index 15739cd2b47b..000000000000
--- a/dev-ruby/sshkey/sshkey-1.9.0.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="SSH private and public key generator in pure Ruby"
-HOMEPAGE="https://rubygems.org/gems/sshkey"
-
-LICENSE="MIT"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
diff --git a/dev-ruby/sshkey/sshkey-2.0.0-r1.ebuild b/dev-ruby/sshkey/sshkey-2.0.0-r1.ebuild
new file mode 100644
index 000000000000..ca855bdd65b4
--- /dev/null
+++ b/dev-ruby/sshkey/sshkey-2.0.0-r1.ebuild
@@ -0,0 +1,15 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+inherit ruby-fakegem
+
+DESCRIPTION="SSH private and public key generator in pure Ruby"
+HOMEPAGE="https://rubygems.org/gems/sshkey"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
diff --git a/dev-ruby/sshkey/sshkey-2.0.0.ebuild b/dev-ruby/sshkey/sshkey-2.0.0.ebuild
deleted file mode 100644
index 5f2b5314198e..000000000000
--- a/dev-ruby/sshkey/sshkey-2.0.0.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="SSH private and public key generator in pure Ruby"
-HOMEPAGE="https://rubygems.org/gems/sshkey"
-
-LICENSE="MIT"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
diff --git a/dev-ruby/sshkey/sshkey-3.0.0.ebuild b/dev-ruby/sshkey/sshkey-3.0.0.ebuild
new file mode 100644
index 000000000000..3158985b3d38
--- /dev/null
+++ b/dev-ruby/sshkey/sshkey-3.0.0.ebuild
@@ -0,0 +1,15 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+
+DESCRIPTION="SSH private and public key generator in pure Ruby"
+HOMEPAGE="https://rubygems.org/gems/sshkey"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~x86"
diff --git a/dev-ruby/sshkit/Manifest b/dev-ruby/sshkit/Manifest
index 1d51faa97299..021c6e1e76d9 100644
--- a/dev-ruby/sshkit/Manifest
+++ b/dev-ruby/sshkit/Manifest
@@ -1,3 +1,4 @@
-DIST sshkit-1.18.2.gem 150016 BLAKE2B b9427eab02b6967a71252bf4a519d86f06429241e28d661dd424ff7739fd69d68ca9b430096518872141e4e09fbac832e04aab8a89fc1d89ebe5077303b87238 SHA512 a98477dfc9c566ba3777a2557db95aa20c2b220b238d8acd59888c8ac271b71c1bbebb29f37ad87102a155beecdd0b60872b4c735f71f7a65be2c1fb5ae60c8f
-DIST sshkit-1.19.1.gem 155136 BLAKE2B 756d4f2e7575d0b2b2c0cdf885a22739e8b8f458d9ffebd614bc58135bd285853afe63bddc262dfb2d73ca64f6be5ebdb01436bbe25deaad73f5a62d9ac67b33 SHA512 9df31133c4d6b8da753aa2ab65574a813c99d086fff47b42db345057ff3eadce7e24bd6b648b28fcb476282a8b7f204acaec0cc766a3c25c52a3f64223169ebf
-DIST sshkit-1.20.0.gem 155648 BLAKE2B fdb95aed6d407c598abde71591cbe2d7b1f98d91985695509a6545bcabc5c0f3337cfe8f73e82f4b212e3c04b6da09e7521637934baeea7a9b5e268ff72fcad1 SHA512 682234f99d6ae9533c99f0319ad0f3732f2ff166a8f1a07d5ce8ff59fd9606af9440798a39f657dd3899e9278639aa93d5fb29af8f64b2ebea7f3b8e75fb25fa
+DIST sshkit-1.21.5.gem 145408 BLAKE2B 19fa326d30ddae12be84b7cf460d5d44c48fc52cf89f61a775999eae7cbcc985ac7b335dd4aa772e8966decc24a6e5a894621e9873ac133122fb8e18d1c82945 SHA512 e441da155323dd71c235d3ebb4ddccd41987183cffe4e23cb52404ba25a16ae4f3c1f786d7be4db6dc8733013720b99d12c8f3369f1d8841f967407b3edb28b2
+DIST sshkit-1.21.7.gem 145408 BLAKE2B e1fdeff6f9935d4d3bce846545d13779e0fce3f989bcb81e5a51e8342bcdce364b398ef480829c49a3ae90677efa5f7a5c4868de8fdc5f4b72f797c4b2513132 SHA512 7ba9fc8958293da7307720bc944c85f2d80991f8552833768793eaea3b49fde4d11d62bd39b90615a6957aa7af13f26cc7ba8b8279a29aa46a4283fa01151374
+DIST sshkit-1.22.0.gem 146944 BLAKE2B e257fc8b7c5a803a310f6193910fa93b5ae388b5265095eececcd342abefdba95a6bb9bdd3813e1eb7a999e73c116b973a9b903ae43ed804c5bface758721719 SHA512 fea5d130c0821f8762f76fa3eb9daa6104bea0f1dd59a0cf3845becc96773d2ac81b909151c9535d68dd1fd17a6f6071cde048d74c9c46105ac3d5d143c20d3b
+DIST sshkit-1.22.1.gem 146944 BLAKE2B 19e6065e1a6859e048ea1b7a5453166768397108030fcfb923f9d6ef90475f76a23859cb2a35c07a6fd9921adfd784a149d116731238b2cb8102369224114d4c SHA512 35bb7dc66827548b31be6d16a7b36b56b7357605cf12d1673162f35a5ac583524a6bf014f1a2a317038cd581b6b34922729daff711bc3bdb27ce8e193cab1929
diff --git a/dev-ruby/sshkit/metadata.xml b/dev-ruby/sshkit/metadata.xml
index 9d0ab8e0b5d6..9562fb002b83 100644
--- a/dev-ruby/sshkit/metadata.xml
+++ b/dev-ruby/sshkit/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/sshkit/sshkit-1.18.2.ebuild b/dev-ruby/sshkit/sshkit-1.18.2.ebuild
deleted file mode 100644
index 5c4ef99622e0..000000000000
--- a/dev-ruby/sshkit/sshkit-1.18.2.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# There are functional tests that require vagrant boxes to be set up.
-RUBY_FAKEGEM_TASK_TEST="test:units"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="SSHKit makes it easy to write structured, testable SSH commands in Ruby"
-HOMEPAGE="https://github.com/capistrano/sshkit"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/net-ssh-2.8.0:*
- >=dev-ruby/net-scp-1.1.2
-"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest dev-ruby/mocha )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile test/helper.rb || die
- sed -i -e '/\(turn\|unindent\|reporters\)/I s:^:#:' \
- -e '1irequire "set"; require "pathname"' test/helper.rb || die
-
- # Fix assumption about parent directory name
- sed -i -e '/assert_match/ s/sshkit/sshkit.*/' test/unit/test_deprecation_logger.rb || die
-}
-
-each_ruby_test() {
- # Run tests directly to avoid dependencies in the Rakefile
- ${RUBY} -Ilib:test:. -e "Dir['test/unit/**/test*.rb'].each{|f| require f}" || die
-}
diff --git a/dev-ruby/sshkit/sshkit-1.19.1.ebuild b/dev-ruby/sshkit/sshkit-1.19.1.ebuild
deleted file mode 100644
index 2e3a0b61bd06..000000000000
--- a/dev-ruby/sshkit/sshkit-1.19.1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-# There are functional tests that require vagrant boxes to be set up.
-RUBY_FAKEGEM_TASK_TEST="test:units"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="SSHKit makes it easy to write structured, testable SSH commands in Ruby"
-HOMEPAGE="https://github.com/capistrano/sshkit"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/net-ssh-2.8.0:*
- >=dev-ruby/net-scp-1.1.2
-"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest dev-ruby/mocha )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile test/helper.rb || die
- sed -i -e '/\(turn\|unindent\|reporters\)/I s:^:#:' \
- -e '1irequire "set"; require "pathname"' test/helper.rb || die
-
- # Fix assumption about parent directory name
- sed -i -e '/assert_match/ s/sshkit/sshkit.*/' test/unit/test_deprecation_logger.rb || die
-}
-
-each_ruby_test() {
- # Run tests directly to avoid dependencies in the Rakefile
- ${RUBY} -Ilib:test:. -e "Dir['test/unit/**/test*.rb'].each{|f| require f}" || die
-}
diff --git a/dev-ruby/sshkit/sshkit-1.20.0.ebuild b/dev-ruby/sshkit/sshkit-1.20.0.ebuild
deleted file mode 100644
index 9f2bf6864600..000000000000
--- a/dev-ruby/sshkit/sshkit-1.20.0.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-# There are functional tests that require vagrant boxes to be set up.
-RUBY_FAKEGEM_TASK_TEST="test:units"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="SSHKit makes it easy to write structured, testable SSH commands in Ruby"
-HOMEPAGE="https://github.com/capistrano/sshkit"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/net-ssh-2.8.0:*
- >=dev-ruby/net-scp-1.1.2
-"
-
-ruby_add_bdepend "test? ( dev-ruby/minitest dev-ruby/mocha )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' Rakefile test/helper.rb || die
- sed -i -e '/\(turn\|unindent\|reporters\)/I s:^:#:' \
- -e '1irequire "set"; require "pathname"' test/helper.rb || die
-
- # Fix assumption about parent directory name
- sed -i -e '/assert_match/ s/sshkit/sshkit.*/' test/unit/test_deprecation_logger.rb || die
-}
-
-each_ruby_test() {
- # Run tests directly to avoid dependencies in the Rakefile
- ${RUBY} -Ilib:test:. -e "Dir['test/unit/**/test*.rb'].each{|f| require f}" || die
-}
diff --git a/dev-ruby/sshkit/sshkit-1.21.5.ebuild b/dev-ruby/sshkit/sshkit-1.21.5.ebuild
new file mode 100644
index 000000000000..b8afec355de2
--- /dev/null
+++ b/dev-ruby/sshkit/sshkit-1.21.5.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+# There are functional tests that require vagrant boxes to be set up.
+RUBY_FAKEGEM_TASK_TEST="test:units"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="SSHKit makes it easy to write structured, testable SSH commands in Ruby"
+HOMEPAGE="https://github.com/capistrano/sshkit"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/net-ssh-2.8.0:*
+ >=dev-ruby/net-scp-1.1.2
+"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest dev-ruby/mocha )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile test/helper.rb || die
+ sed -e '/\(turn\|unindent\|reporters\)/I s:^:#:' \
+ -e '1irequire "pathname"' \
+ -i test/helper.rb || die
+
+ # Fix assumption about parent directory name
+ sed -i -e '/assert_match/ s/sshkit/sshkit.*/' test/unit/test_deprecation_logger.rb || die
+}
+
+each_ruby_test() {
+ # Run tests directly to avoid dependencies in the Rakefile
+ ${RUBY} -Ilib:test:. -e "Dir['test/unit/**/test*.rb'].each{|f| require f}" || die
+}
diff --git a/dev-ruby/sshkit/sshkit-1.21.7.ebuild b/dev-ruby/sshkit/sshkit-1.21.7.ebuild
new file mode 100644
index 000000000000..c511e580cd65
--- /dev/null
+++ b/dev-ruby/sshkit/sshkit-1.21.7.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="ruby31 ruby32"
+
+# There are functional tests that require vagrant boxes to be set up.
+RUBY_FAKEGEM_TASK_TEST="test:units"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="SSHKit makes it easy to write structured, testable SSH commands in Ruby"
+HOMEPAGE="https://github.com/capistrano/sshkit"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/mutex_m
+ >=dev-ruby/net-ssh-2.8.0:*
+ >=dev-ruby/net-scp-1.1.2
+"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest dev-ruby/mocha )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile test/helper.rb || die
+ sed -e '/\(turn\|unindent\|reporters\)/I s:^:#:' \
+ -e '1irequire "pathname"' \
+ -i test/helper.rb || die
+
+ # Fix assumption about parent directory name
+ sed -i -e '/assert_match/ s/sshkit/sshkit.*/' test/unit/test_deprecation_logger.rb || die
+}
+
+each_ruby_test() {
+ # Run tests directly to avoid dependencies in the Rakefile
+ ${RUBY} -Ilib:test:. -e "Dir['test/unit/**/test*.rb'].each{|f| require f}" || die
+}
diff --git a/dev-ruby/sshkit/sshkit-1.22.0.ebuild b/dev-ruby/sshkit/sshkit-1.22.0.ebuild
new file mode 100644
index 000000000000..9e852befa916
--- /dev/null
+++ b/dev-ruby/sshkit/sshkit-1.22.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# There are functional tests that require vagrant boxes to be set up.
+RUBY_FAKEGEM_TASK_TEST="test:units"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="SSHKit makes it easy to write structured, testable SSH commands in Ruby"
+HOMEPAGE="https://github.com/capistrano/sshkit"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+
+ruby_add_rdepend "
+ dev-ruby/mutex_m
+ >=dev-ruby/net-ssh-2.8.0:*
+ >=dev-ruby/net-scp-1.1.2
+ >=dev-ruby/net-sftp-2.1.2
+"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest dev-ruby/mocha )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile test/helper.rb || die
+ sed -e '/\(turn\|unindent\|reporters\)/I s:^:#:' \
+ -e '1irequire "pathname"' \
+ -i test/helper.rb || die
+
+ # Fix assumption about parent directory name
+ sed -i -e '/assert_match/ s/sshkit/sshkit.*/' test/unit/test_deprecation_logger.rb || die
+}
+
+each_ruby_test() {
+ # Run tests directly to avoid dependencies in the Rakefile
+ ${RUBY} -Ilib:test:. -e "Dir['test/unit/**/test*.rb'].each{|f| require f}" || die
+}
diff --git a/dev-ruby/sshkit/sshkit-1.22.1.ebuild b/dev-ruby/sshkit/sshkit-1.22.1.ebuild
new file mode 100644
index 000000000000..5b68c7da5322
--- /dev/null
+++ b/dev-ruby/sshkit/sshkit-1.22.1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# There are functional tests that require vagrant boxes to be set up.
+RUBY_FAKEGEM_TASK_TEST="test:units"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md FAQ.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="SSHKit makes it easy to write structured, testable SSH commands in Ruby"
+HOMEPAGE="https://github.com/capistrano/sshkit"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+
+ruby_add_rdepend "
+ dev-ruby/base64
+ dev-ruby/mutex_m
+ >=dev-ruby/net-ssh-2.8.0:*
+ >=dev-ruby/net-scp-1.1.2
+ >=dev-ruby/net-sftp-2.1.2
+"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest dev-ruby/mocha )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' Rakefile test/helper.rb || die
+ sed -e '/\(turn\|unindent\|reporters\)/I s:^:#:' \
+ -e '1irequire "pathname"' \
+ -i test/helper.rb || die
+
+ # Fix assumption about parent directory name
+ sed -i -e '/assert_match/ s/sshkit/sshkit.*/' test/unit/test_deprecation_logger.rb || die
+}
+
+each_ruby_test() {
+ # Run tests directly to avoid dependencies in the Rakefile
+ ${RUBY} -Ilib:test:. -e "Dir['test/unit/**/test*.rb'].each{|f| require f}" || die
+}
diff --git a/dev-ruby/stamp/metadata.xml b/dev-ruby/stamp/metadata.xml
index e5181ba91213..9aff040ac058 100644
--- a/dev-ruby/stamp/metadata.xml
+++ b/dev-ruby/stamp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/stamp/stamp-0.6.0-r1.ebuild b/dev-ruby/stamp/stamp-0.6.0-r1.ebuild
new file mode 100644
index 000000000000..f18f5b0e93e6
--- /dev/null
+++ b/dev-ruby/stamp/stamp-0.6.0-r1.ebuild
@@ -0,0 +1,41 @@
+# 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="cucumber"
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_EXTRADOC="CONTRIBUTING.md README.md"
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_GEMSPEC="stamp.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Date and time formatting for humans"
+HOMEPAGE="https://github.com/jeremyw/stamp"
+SRC_URI="https://github.com/jeremyw/stamp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="doc"
+
+DEPEND=""
+RDEPEND=""
+
+ruby_add_bdepend "doc? ( dev-ruby/redcarpet )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/d' Rakefile || die "sed failed"
+ sed -i -e '/bundler/,+7d' features/support/env.rb || die "sed failed"
+
+ # Remove obsolete and unneeded cucumber settings
+ rm -f cucumber.yml || die
+
+ sed -i -e 's/git ls-files --/find/; s/git ls-files/find */' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/stamp/stamp-0.6.0.ebuild b/dev-ruby/stamp/stamp-0.6.0.ebuild
deleted file mode 100644
index 9544f8dac9b1..000000000000
--- a/dev-ruby/stamp/stamp-0.6.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="cucumber"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_EXTRADOC="CONTRIBUTING.md README.md"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Date and time formatting for humans"
-HOMEPAGE="https://github.com/jeremyw/stamp"
-SRC_URI="https://github.com/jeremyw/stamp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="doc"
-
-DEPEND=""
-RDEPEND=""
-
-ruby_add_bdepend "doc? ( dev-ruby/redcarpet )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/d' Rakefile || die "sed failed"
- sed -i -e '/bundler/,+7d' features/support/env.rb || die "sed failed"
-}
diff --git a/dev-ruby/state_machine/Manifest b/dev-ruby/state_machine/Manifest
deleted file mode 100644
index ada22debc86f..000000000000
--- a/dev-ruby/state_machine/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST state_machine-1.2.0.gem 604160 BLAKE2B 5fe7b3b192d887293fccbd27c2c1b289883e0c0fdc918b188564ded4366175278f172907ee62a57bb37a9d969e7e989f6cda639fe0b946935455cf81466c9ed6 SHA512 aa26d9cc99b0e873f9b146acddaa53f0332cff403463a5079cab5e00902db7b60e47957fc8b4c7ebc62861894460613a0b075b13548544392432ee564936567f
diff --git a/dev-ruby/state_machine/metadata.xml b/dev-ruby/state_machine/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/state_machine/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/state_machine/state_machine-1.2.0.ebuild b/dev-ruby/state_machine/state_machine-1.2.0.ebuild
deleted file mode 100644
index 0a3e543e0c88..000000000000
--- a/dev-ruby/state_machine/state_machine-1.2.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="init.rb"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Adds support for creating state machines for attributes on any Ruby class"
-HOMEPAGE="http://www.pluginaweek.org"
-IUSE="test"
-SLOT="0"
-
-LICENSE="MIT"
-KEYWORDS="~amd64"
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib test/{unit,functional}/*_test.rb
-}
diff --git a/dev-ruby/stomp/Manifest b/dev-ruby/stomp/Manifest
index ee75769007f5..b0e928f9c22b 100644
--- a/dev-ruby/stomp/Manifest
+++ b/dev-ruby/stomp/Manifest
@@ -1 +1 @@
-DIST stomp-1.4.4.gem 93696 BLAKE2B c1647ba119946ed41d58b1fe08baae5fa54317e3ba4b4b33eef50b7ff588daaf2ecf89a45b21b3eac7969609337fc8b09d73ea7f54f40af6c4b2613cab686df7 SHA512 77c5a53b56177869beb9ff236405479d1fe48ba6841f42eefbd104a5e1b8f82584283c909bb2f6ec5a34ae99c0dfa91079d0716d1bef65db24c5b1414c1ed673
+DIST stomp-1.4.10.gem 99840 BLAKE2B 5dc2b18d7551629dccb599a77934bffcf92d83158b6797a1645f5fd8af6c4738e1d8d97d5a6c6bb6655c19f98accd4ecdee0677096f9a5e89bdf0295532a1087 SHA512 bff1a533e5455cf4540bab3b5d16c63f1e0783b0257b5e0bf2fd26512586670ce5db66f97e098805c7b5fc02913478553409b90a4014bdc883465bc7b474eb7e
diff --git a/dev-ruby/stomp/files/stomp-1.4.10-rspec-3.12.patch b/dev-ruby/stomp/files/stomp-1.4.10-rspec-3.12.patch
new file mode 100644
index 000000000000..f7f1ca39016b
--- /dev/null
+++ b/dev-ruby/stomp/files/stomp-1.4.10-rspec-3.12.patch
@@ -0,0 +1,149 @@
+https://github.com/stompgem/stomp/pull/175
+
+From 299923281d02e544ca386a9883e87c395135d3af Mon Sep 17 00:00:00 2001
+From: Steve Traylen <steve.traylen@cern.ch>
+Date: Thu, 30 Mar 2023 13:36:52 +0200
+Subject: [PATCH] Fix tests failing with rspec 3.12
+
+Patch from
+
+* https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1027092
+* https://salsa.debian.org/ruby-team/ruby-stomp/-/commit/5be6383a7a34a1d1891708d6aa8688cb4a6f89a5
+
+resolves rspec failure:
+
+```
+$ rspec --fail-fast spec/client_spec.rb
+RSpec version: 3.8.0
+Traceback (most recent call last):
+ 9: from /home/straylen/pkgs/rubygem-stomp/stomp-1.4.9/lib/client/utils.rb:194:in `block in start_listeners'
+ 8: from /home/straylen/pkgs/rubygem-stomp/stomp-1.4.9/lib/client/utils.rb:194:in `loop'
+ 7: from /home/straylen/pkgs/rubygem-stomp/stomp-1.4.9/lib/client/utils.rb:195:in `block (2 levels) in start_listeners'
+ 6: from /usr/share/gems/gems/rspec-mocks-3.8.1/lib/rspec/mocks/test_double.rb:102:in `method_missing'
+ 5: from /usr/share/gems/gems/rspec-mocks-3.8.1/lib/rspec/mocks/proxy.rb:202:in `raise_unexpected_message_error'
+ 4: from /usr/share/gems/gems/rspec-mocks-3.8.1/lib/rspec/mocks/error_generator.rb:50:in `raise_unexpected_message_error'
+ 3: from /usr/share/gems/gems/rspec-mocks-3.8.1/lib/rspec/mocks/error_generator.rb:311:in `__raise'
+ 2: from /usr/share/gems/gems/rspec-mocks-3.8.1/lib/rspec/mocks/error_generator.rb:327:in `notify'
+ 1: from /usr/share/gems/gems/rspec-support-3.8.2/lib/rspec/support.rb:106:in `notify_failure'
+/usr/share/gems/gems/rspec-support-3.8.2/lib/rspec/support.rb:97:in `block in <module:Support>': #<Double "connection"> received unexpected message :receive with (no args) (RSpec::Mocks::MockExpectationError)
+.#<Thread:0x000055a54150bd60@/home/straylen/pkgs/rubygem-stomp/stomp-1.4.9/lib/client/utils.rb:193 run> terminated with exception (report_on_exception is true):
+Traceback (most recent call last):
+ 6: from /home/straylen/pkgs/rubygem-stomp/stomp-1.4.9/lib/client/utils.rb:194:in `block in start_listeners'
+ 5: from /home/straylen/pkgs/rubygem-stomp/stomp-1.4.9/lib/client/utils.rb:194:in `loop'
+```
+
+Fixes: #164
+--- a/spec/client_spec.rb
++++ b/spec/client_spec.rb
+@@ -136,13 +136,13 @@
+ end
+
+ it "should properly parse the URL provided" do
+- expect(Stomp::Connection).to receive(:new).with(:hosts => [{:login => 'testlogin',
++ expect(Stomp::Connection).to receive(:new).with({:hosts => [{:login => 'testlogin',
+ :passcode => 'testpassword',
+ :host => 'localhost',
+ :port => 12345}],
+ :logger => null_logger,
+ :reliable => false,
+- :client_main => @cli_thread)
++ :client_main => @cli_thread})
+ Stomp::Client.new('testlogin', 'testpassword', 'localhost', '12345', false)
+ end
+
+@@ -157,13 +157,13 @@
+ end
+
+ it "should properly parse the URL provided" do
+- expect(Stomp::Connection).to receive(:new).with(:hosts => [{:login => '',
++ expect(Stomp::Connection).to receive(:new).with({:hosts => [{:login => '',
+ :passcode => '',
+ :host => 'foobar',
+ :port => 12345}],
+ :logger => null_logger,
+ :reliable => false,
+- :client_main => @cli_thread)
++ :client_main => @cli_thread})
+ Stomp::Client.new('stomp://foobar:12345')
+ end
+
+@@ -179,13 +179,13 @@
+ end
+
+ it "should properly parse the URL provided" do
+- expect(Stomp::Connection).to receive(:new).with(:hosts => [{:login => '',
++ expect(Stomp::Connection).to receive(:new).with({:hosts => [{:login => '',
+ :passcode => '',
+ :host => 'foo-bar',
+ :port => 12345}],
+ :logger => null_logger,
+ :reliable => false,
+- :client_main => @cli_thread)
++ :client_main => @cli_thread})
+ Stomp::Client.new('stomp://foo-bar:12345')
+ end
+
+@@ -201,13 +201,13 @@
+ end
+
+ it "should properly parse the URL provided" do
+- expect(Stomp::Connection).to receive(:new).with(:hosts => [{:login => 'test-login',
++ expect(Stomp::Connection).to receive(:new).with({:hosts => [{:login => 'test-login',
+ :passcode => 'testpasscode',
+ :host => 'foobar',
+ :port => 12345}],
+ :logger => null_logger,
+ :reliable => false,
+- :client_main => @cli_thread)
++ :client_main => @cli_thread})
+ Stomp::Client.new('stomp://test-login:testpasscode@foobar:12345')
+ end
+
+@@ -223,13 +223,13 @@
+ end
+
+ it "should properly parse the URL provided" do
+- expect(Stomp::Connection).to receive(:new).with(:hosts => [{:login => 'test-login',
++ expect(Stomp::Connection).to receive(:new).with({:hosts => [{:login => 'test-login',
+ :passcode => 'testpasscode',
+ :host => 'foo-bar',
+ :port => 12345}],
+ :logger => null_logger,
+ :reliable => false,
+- :client_main => @cli_thread)
++ :client_main => @cli_thread})
+ Stomp::Client.new('stomp://test-login:testpasscode@foo-bar:12345')
+ end
+
+@@ -248,13 +248,13 @@
+ end
+
+ it "should properly parse the URL provided" do
+- expect(Stomp::Connection).to receive(:new).with(:hosts => [{:login => '',
++ expect(Stomp::Connection).to receive(:new).with({:hosts => [{:login => '',
+ :passcode => '',
+ :host => 'host.foobar.com',
+ :port => 12345}],
+ :logger => null_logger,
+ :reliable => false,
+- :client_main => @cli_thread)
++ :client_main => @cli_thread})
+ Stomp::Client.new('stomp://host.foobar.com:12345')
+ end
+
+@@ -270,13 +270,13 @@
+ end
+
+ it "should properly parse the URL provided" do
+- expect(Stomp::Connection).to receive(:new).with(:hosts => [{:login => 'testlogin',
++ expect(Stomp::Connection).to receive(:new).with({:hosts => [{:login => 'testlogin',
+ :passcode => 'testpasscode',
+ :host => 'host.foobar.com',
+ :port => 12345}],
+ :logger => null_logger,
+ :reliable => false,
+- :client_main => @cli_thread)
++ :client_main => @cli_thread})
+ Stomp::Client.new('stomp://testlogin:testpasscode@host.foobar.com:12345')
+ end
+
diff --git a/dev-ruby/stomp/metadata.xml b/dev-ruby/stomp/metadata.xml
index cefb771aa9fc..91caea958fd2 100644
--- a/dev-ruby/stomp/metadata.xml
+++ b/dev-ruby/stomp/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/stomp/stomp-1.4.10-r1.ebuild b/dev-ruby/stomp/stomp-1.4.10-r1.ebuild
new file mode 100644
index 000000000000..b3d25fc0bea1
--- /dev/null
+++ b/dev-ruby/stomp/stomp-1.4.10-r1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby bindings for the stomp messaging protocol"
+HOMEPAGE="https://github.com/stompgem/stomp"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.4.10-rspec-3.12.patch
+)
+
+all_ruby_prepare() {
+ # Skip specs that hang the test run indefinitely, most likely
+ # because of rspec-mocks deprecation output
+ rm -f spec/connection_spec.rb || die
+}
diff --git a/dev-ruby/stomp/stomp-1.4.4.ebuild b/dev-ruby/stomp/stomp-1.4.4.ebuild
deleted file mode 100644
index cf57278dc9fe..000000000000
--- a/dev-ruby/stomp/stomp-1.4.4.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby bindings for the stomp messaging protocol"
-HOMEPAGE="https://github.com/stompgem/stomp"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
diff --git a/dev-ruby/stream/Manifest b/dev-ruby/stream/Manifest
new file mode 100644
index 000000000000..13ccabf2a478
--- /dev/null
+++ b/dev-ruby/stream/Manifest
@@ -0,0 +1 @@
+DIST stream-0.5.5.tar.gz 11828 BLAKE2B daba14d60c8978fbd7dd57eb9bc61362634ab414b2c8a88065251acbcc65beec1aa11db5f65fd09e37d0fe6abb904f4dbdcb6a1a9b58cf8c757cb90359d377c6 SHA512 bf9f48201b70f30caa9b9c4240254ff78e6e4dd760475ec23fe95d77e42cfa41b6bb43a19c2469ec8554bee8b6aafd84a3c830651b26b9602b53cdec57d976b1
diff --git a/dev-ruby/stream/metadata.xml b/dev-ruby/stream/metadata.xml
new file mode 100644
index 000000000000..d0db85479c40
--- /dev/null
+++ b/dev-ruby/stream/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">monora/stream</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/stream/stream-0.5.5.ebuild b/dev-ruby/stream/stream-0.5.5.ebuild
new file mode 100644
index 000000000000..c9962d9a9f85
--- /dev/null
+++ b/dev-ruby/stream/stream-0.5.5.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="stream.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Module Stream defines an interface for external iterators"
+HOMEPAGE="https://github.com/monora/stream"
+SRC_URI="https://github.com/monora/stream/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE=""
+
+ruby_add_bdepend "dev-ruby/bundler dev-ruby/yard test? ( dev-ruby/test-unit )"
diff --git a/dev-ruby/stringex/Manifest b/dev-ruby/stringex/Manifest
index c6b7c372c9ab..52ca7c4beb8f 100644
--- a/dev-ruby/stringex/Manifest
+++ b/dev-ruby/stringex/Manifest
@@ -1 +1,2 @@
DIST stringex-2.8.5.gem 130048 BLAKE2B c07eaaee07bf348690166b41b0846bc49eb49c5ba9e39c7eaeea2a3a60d6089edd7c7d1d75fd9a5208c9883c4bff8840ccf56c6f186daeabcf79e7f4fb6b4d25 SHA512 53f9908f176f465d2e884e92dffb26abcdf75593c94ee8250253da0eb29eddf489cf5b3f539135659ad4c0e2dd738d2affff6a946c50abd5f36517148d8338ce
+DIST stringex-2.8.6.gem 130048 BLAKE2B 39564e4d195c347de2e647490671688350bf3658e7d42035dc5b4acd73fbd01a44d435540be792eeebb70513a6c4fee7de0bc98a16b9d647af7d93d1ae663a23 SHA512 aea0b7b203bb6d57a72869bfd0a3b832893ba355426bd5a4e99b535a0c0a6d2a1c2aa8839f57da73de9235ccde78d900c30f86b858e55c695d921838270e25fd
diff --git a/dev-ruby/stringex/metadata.xml b/dev-ruby/stringex/metadata.xml
index 942dbcaa4ae2..53612d56d800 100644
--- a/dev-ruby/stringex/metadata.xml
+++ b/dev-ruby/stringex/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/stringex/stringex-2.8.5-r2.ebuild b/dev-ruby/stringex/stringex-2.8.5-r2.ebuild
new file mode 100644
index 000000000000..3cf725072051
--- /dev/null
+++ b/dev-ruby/stringex/stringex-2.8.5-r2.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+inherit ruby-fakegem
+
+DESCRIPTION="Extensions for Ruby's String class"
+HOMEPAGE="https://github.com/rsl/stringex"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="test"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/i18n:1
+ dev-ruby/redcloth
+ dev-ruby/test-unit:2
+ )"
+
+all_ruby_prepare() {
+ # Let tests work with newer rails versions
+ sed -i -e 's/update_attributes/update/' test/unit/acts_as_url/adapter/* || die
+}
+
+each_ruby_prepare() {
+ if has_version "dev-ruby/activerecord[ruby_targets_${_ruby_implementation},sqlite]" ; then
+ einfo "Testing activerecord integration"
+ else
+ rm -f test/unit/acts_as_url_integration_test.rb || die
+ fi
+}
diff --git a/dev-ruby/stringex/stringex-2.8.5-r3.ebuild b/dev-ruby/stringex/stringex-2.8.5-r3.ebuild
new file mode 100644
index 000000000000..1bd1c2e18a50
--- /dev/null
+++ b/dev-ruby/stringex/stringex-2.8.5-r3.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_EXTRAINSTALL="locales"
+inherit ruby-fakegem
+
+DESCRIPTION="Extensions for Ruby's String class"
+HOMEPAGE="https://github.com/rsl/stringex"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos"
+IUSE="test"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/i18n:1
+ dev-ruby/redcloth
+ dev-ruby/test-unit:2
+ )"
+
+all_ruby_prepare() {
+ # Let tests work with newer rails versions
+ sed -i -e 's/update_attributes/update/' test/unit/acts_as_url/adapter/* || die
+}
+
+each_ruby_prepare() {
+ if has_version "dev-ruby/activerecord[ruby_targets_${_ruby_implementation},sqlite]" ; then
+ einfo "Testing activerecord integration"
+ else
+ rm -f test/unit/acts_as_url_integration_test.rb || die
+ fi
+}
diff --git a/dev-ruby/stringex/stringex-2.8.5.ebuild b/dev-ruby/stringex/stringex-2.8.5.ebuild
deleted file mode 100644
index 1b59c985132b..000000000000
--- a/dev-ruby/stringex/stringex-2.8.5.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Extensions for Ruby's String class"
-HOMEPAGE="https://github.com/rsl/stringex"
-LICENSE="MIT"
-
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64"
-IUSE="test"
-
-# we could rely on activerecord[sqlite3], but since we do not remove the
-# sqlite3 adapter from activerecord when building -sqlite3, it's easier
-# to just add another dependency, so the user doesn't have to change the
-# USE flags at all.
-ruby_add_bdepend "
- test? (
- dev-ruby/i18n:1
- dev-ruby/redcloth
- dev-ruby/test-unit:2
- >=dev-ruby/activerecord-3
- dev-ruby/sqlite3 )"
-
-all_ruby_prepare() {
- sed -i -e '1agem "i18n", "~>1.0"' test/test_helper.rb || die
-}
diff --git a/dev-ruby/stringex/stringex-2.8.6.ebuild b/dev-ruby/stringex/stringex-2.8.6.ebuild
new file mode 100644
index 000000000000..876f28a2bbd1
--- /dev/null
+++ b/dev-ruby/stringex/stringex-2.8.6.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_EXTRAINSTALL="locales"
+inherit ruby-fakegem
+
+DESCRIPTION="Extensions for Ruby's String class"
+HOMEPAGE="https://github.com/rsl/stringex"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos"
+IUSE="test"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/i18n-0.7.0:1
+ >=dev-ruby/redcloth-4.2.9
+ >=dev-ruby/test-unit-3.0.9:2
+ )
+"
+
+each_ruby_prepare() {
+ if has_version "dev-ruby/activerecord[ruby_targets_${_ruby_implementation},sqlite]" ; then
+ einfo "Testing activerecord integration"
+ else
+ rm -f test/unit/acts_as_url_integration_test.rb || die
+ # These tests fails when the acts_as_url code is not loaded
+ # through the above integration test.
+ rm -f test/unit/unicode_point_suite/basic_{greek,latin}_test.rb || die
+ fi
+}
diff --git a/dev-ruby/stringio/Manifest b/dev-ruby/stringio/Manifest
new file mode 100644
index 000000000000..de57ef3bf4d5
--- /dev/null
+++ b/dev-ruby/stringio/Manifest
@@ -0,0 +1,3 @@
+DIST stringio-3.0.7.tar.gz 44797 BLAKE2B 2772028015b6eb5e5a45e9c86551e62e91e24a627b7280530a10b1d343f08eb19b53d4fbeaf791ed23a239e0609775e8eb4c0550dadc282f690ecc9abef7930b SHA512 fcea0a32bb70c6f1d8a3b237e8a8dbb2677b00c077f0d6ddfa72e1e382c832277ee592dd2e17abdc12003b0494665853eab18fa90bf6f34f51efa0f62f7ea1b9
+DIST stringio-3.0.9.tar.gz 34991 BLAKE2B e047831dc0c88732b9939cfb7f5df97aceeeff1bdc569d3326a5197afbed0fa64300fb844fc305a888701f164bb97239c2ca129cff05444afa496afe23f370e4 SHA512 7724ae91687408654d9686bd01aaaf7a61ef7766c11570fa62cae622c5f70ad70cda88d5386bd87147dd9e7c1edfd4e70a882d03a8e7afdacf06820e57afec49
+DIST stringio-3.1.0.tar.gz 34946 BLAKE2B 4478e6493eb96be48c3f36830948e9b554474200a8738b5e4ab98d38fcc9f429a7b52cff553c0639fd8e30da2699802f5e1c385e51ab5965b0486ae9d0a44879 SHA512 d980566af84645700ad8450ef770ba2444ae7fb9f18cb33b141be0905536bcd639ec619aa535746109777f2f837727103280d80f2ff32fc8a22461a442f09e5a
diff --git a/dev-ruby/stringio/metadata.xml b/dev-ruby/stringio/metadata.xml
new file mode 100644
index 000000000000..d1f032e54888
--- /dev/null
+++ b/dev-ruby/stringio/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/stringio</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/stringio/stringio-3.0.7.ebuild b/dev-ruby/stringio/stringio-3.0.7.ebuild
new file mode 100644
index 000000000000..5fba86219b99
--- /dev/null
+++ b/dev-ruby/stringio/stringio-3.0.7.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTENSIONS=(ext/stringio/extconf.rb)
+RUBY_FAKEGEM_GEMSPEC="stringio.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Pseudo IO class from/to String."
+HOMEPAGE="https://github.com/ruby/stringio"
+SRC_URI="https://github.com/ruby/stringio/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+all_ruby_prepare() {
+ sed -e "/s.version =/ s/source_version/'${PV}'/" \
+ -e 's/__dir__/"."/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/stringio/stringio-3.0.9.ebuild b/dev-ruby/stringio/stringio-3.0.9.ebuild
new file mode 100644
index 000000000000..e9ef6cc8a7cf
--- /dev/null
+++ b/dev-ruby/stringio/stringio-3.0.9.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTENSIONS=(ext/stringio/extconf.rb)
+RUBY_FAKEGEM_GEMSPEC="stringio.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Pseudo IO class from/to String."
+HOMEPAGE="https://github.com/ruby/stringio"
+SRC_URI="https://github.com/ruby/stringio/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+all_ruby_prepare() {
+ sed -e "/s.version =/ s/source_version/'${PV}'/" \
+ -e 's/__dir__/"."/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/stringio/stringio-3.1.0.ebuild b/dev-ruby/stringio/stringio-3.1.0.ebuild
new file mode 100644
index 000000000000..d8350c676f2d
--- /dev/null
+++ b/dev-ruby/stringio/stringio-3.1.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_EXTENSIONS=(ext/stringio/extconf.rb)
+RUBY_FAKEGEM_GEMSPEC="stringio.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Pseudo IO class from/to String."
+HOMEPAGE="https://github.com/ruby/stringio"
+SRC_URI="https://github.com/ruby/stringio/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -e "/s.version =/ s/source_version/'${PV}'/" \
+ -e 's/__dir__/"."/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/strptime/Manifest b/dev-ruby/strptime/Manifest
index 687f80b2c88f..60424b793395 100644
--- a/dev-ruby/strptime/Manifest
+++ b/dev-ruby/strptime/Manifest
@@ -1 +1 @@
-DIST strptime-0.2.3.tar.gz 17375 BLAKE2B 583566c19cdd96f97b469d3353236624b814ea9200e1479d32c552d06431e0008cd9dcf5be03564948898fb9e5a1470a5a8bdb531d4054bfe64899bbd6ec92e0 SHA512 1b9ee2f7c0fa747c6df5a56c5d7f667c4a9314c334472867e890758074f9da387aae54d9171b2460036a21e890fd743187571c6d4a995e4117d6c4307b8134cc
+DIST strptime-0.2.5.tar.gz 17431 BLAKE2B c9234ed0207e6bf214d4c011c883bc985cf527672f4bf9590617a742b4ea9a5cc0743388af23cc5f106350126eef16ffa89089d8715b0f8d371315412c7e5660 SHA512 6a85a3b45c43aa62a5c62e3902655351a839c4f2c397347356307c73ab160d053ea9dfc989f6d8687663bea5d8a60575f26b99b198b872bc1a3b2e0caa00a51f
diff --git a/dev-ruby/strptime/metadata.xml b/dev-ruby/strptime/metadata.xml
index 28ab0c15f206..2fb5c68872d9 100644
--- a/dev-ruby/strptime/metadata.xml
+++ b/dev-ruby/strptime/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
+<upstream>
+ <remote-id type="github">nurse/strptime</remote-id>
+</upstream>
</pkgmetadata>
diff --git a/dev-ruby/strptime/strptime-0.2.3.ebuild b/dev-ruby/strptime/strptime-0.2.3.ebuild
deleted file mode 100644
index d729ffe83522..000000000000
--- a/dev-ruby/strptime/strptime-0.2.3.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_GEMSPEC="strptime.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="A fast strptime/strftime engine which uses VM"
-HOMEPAGE="https://github.com/nurse/strptime"
-SRC_URI="https://github.com/nurse/strptime/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/strptime extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/strptime V=1
- cp ext/strptime/strptime$(get_modname) lib/strptime/ || die
-}
diff --git a/dev-ruby/strptime/strptime-0.2.5-r2.ebuild b/dev-ruby/strptime/strptime-0.2.5-r2.ebuild
new file mode 100644
index 000000000000..611ea35023af
--- /dev/null
+++ b/dev-ruby/strptime/strptime-0.2.5-r2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="strptime.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/strptime/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/strptime
+
+inherit multilib ruby-fakegem
+
+DESCRIPTION="A fast strptime/strftime engine which uses VM"
+HOMEPAGE="https://github.com/nurse/strptime"
+SRC_URI="https://github.com/nurse/strptime/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ local -x TZ=UTC # bug #775380
+ each_fakegem_test
+}
diff --git a/dev-ruby/strscan/Manifest b/dev-ruby/strscan/Manifest
new file mode 100644
index 000000000000..95e01f5f98f4
--- /dev/null
+++ b/dev-ruby/strscan/Manifest
@@ -0,0 +1,5 @@
+DIST strscan-3.0.6.tar.gz 36514 BLAKE2B 3a303ab8185aa12ef5fa748541a7c00dbea102e79c5a8b4f94595dcdb2f361b824d2f562b6a51184f7925dc473580de00c1faa9b6f0466bfe42ffbc5a89deb13 SHA512 63eaebb5cf1f658b447190276fc067ddfaae337a6f993392c2a3829f979ff9a3f4cd32f66fe3456404284b48d66c145da4814d582754c34c5037c983dabdcd86
+DIST strscan-3.0.7.tar.gz 37528 BLAKE2B 0b4d8e235463efe89e7beb452491cfbd58e5cdbc2950816ca6dda117f1b8f34474c5594c170e8ac2b5d24a848a9bf9f64faaa624080d60987689616f13984e2d SHA512 9b427d2f7d5d6c27a0b3f10b85806abc21a04147d8dbe6f4a6705ab9ded7e2e1365fc99d224a8967ff9bfaf17480071eed0139b46490568475e681ceb8b48a6d
+DIST strscan-3.0.8.tar.gz 26904 BLAKE2B 674870db66eaba78cfe1e058b9dd64263c93a89a0333e8028f9c2fba66c785a59ddda109370d802928ab99b0b740dc9ca62a34d0e8fe74aeddf75f8d14d44cc2 SHA512 d9afcfdaf707644d67e3dee95ec7f17b5ada8cdd861b484b0744a4d981a1baef87e1f2a33c19cbcfaea32338a98065280ec12dfdc0fe375bfb74b67050e71638
+DIST strscan-3.0.9.tar.gz 26744 BLAKE2B e7c74cc116501d5962f8072d0a7292b469f11f8c223d6721f43335af95d27975997cf1ee26c915f85ac766eb840b50f56f935dc12e8ffe7b6794fa0c0cdfc5c7 SHA512 a73f4d214a5e6a5258609b650fa33d67ff2220bfe2d2419344077b9dc204a6450b8802b4683b09bed1bd541badf8cb3329e295039e431bf7be41d04a866f748c
+DIST strscan-3.1.0.tar.gz 26840 BLAKE2B 89269ab15753953da8592a45da6d866eadc3abc077381e1501f13be37e30f69c92e831ed593dddd17ec1390becd09269bb59fe15a3ddea859eaf52a58f23942f SHA512 85e05fd60818a88e33ccfac7534f1db9cc63b7f1c6769e02950c9f7f589c27581ba19df3ab09178f571878b45cae223a89826819ad00c6665edb9169e7763782
diff --git a/dev-ruby/strscan/metadata.xml b/dev-ruby/strscan/metadata.xml
new file mode 100644
index 000000000000..dd3a41b2a323
--- /dev/null
+++ b/dev-ruby/strscan/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/strscan</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/strscan/strscan-3.0.6.ebuild b/dev-ruby/strscan/strscan-3.0.6.ebuild
new file mode 100644
index 000000000000..cc6e68f7c54d
--- /dev/null
+++ b/dev-ruby/strscan/strscan-3.0.6.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="strscan.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/strscan/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides lexical scanning operations on a String"
+HOMEPAGE="https://github.com/ruby/strscan"
+SRC_URI="https://github.com/ruby/strscan/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test/lib -rhelper run-test.rb || die
+}
diff --git a/dev-ruby/strscan/strscan-3.0.7.ebuild b/dev-ruby/strscan/strscan-3.0.7.ebuild
new file mode 100644
index 000000000000..430d488fb073
--- /dev/null
+++ b/dev-ruby/strscan/strscan-3.0.7.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="strscan.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/strscan/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides lexical scanning operations on a String"
+HOMEPAGE="https://github.com/ruby/strscan"
+SRC_URI="https://github.com/ruby/strscan/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test/lib -rhelper run-test.rb || die
+}
diff --git a/dev-ruby/strscan/strscan-3.0.8.ebuild b/dev-ruby/strscan/strscan-3.0.8.ebuild
new file mode 100644
index 000000000000..6d633be40814
--- /dev/null
+++ b/dev-ruby/strscan/strscan-3.0.8.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="strscan.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/strscan/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides lexical scanning operations on a String"
+HOMEPAGE="https://github.com/ruby/strscan"
+SRC_URI="https://github.com/ruby/strscan/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test/lib -rhelper run-test.rb || die
+}
diff --git a/dev-ruby/strscan/strscan-3.0.9.ebuild b/dev-ruby/strscan/strscan-3.0.9.ebuild
new file mode 100644
index 000000000000..cb8dff84588d
--- /dev/null
+++ b/dev-ruby/strscan/strscan-3.0.9.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="strscan.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/strscan/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides lexical scanning operations on a String"
+HOMEPAGE="https://github.com/ruby/strscan"
+SRC_URI="https://github.com/ruby/strscan/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -i -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test/lib -rhelper run-test.rb || die
+}
diff --git a/dev-ruby/strscan/strscan-3.1.0.ebuild b/dev-ruby/strscan/strscan-3.1.0.ebuild
new file mode 100644
index 000000000000..cb8dff84588d
--- /dev/null
+++ b/dev-ruby/strscan/strscan-3.1.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="strscan.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/strscan/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides lexical scanning operations on a String"
+HOMEPAGE="https://github.com/ruby/strscan"
+SRC_URI="https://github.com/ruby/strscan/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="$(ver_cut 1)"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -i -e 's/__dir__/"."/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test/lib -rhelper run-test.rb || die
+}
diff --git a/dev-ruby/subexec/Manifest b/dev-ruby/subexec/Manifest
deleted file mode 100644
index fc0fe29b59ae..000000000000
--- a/dev-ruby/subexec/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST subexec-0.2.3.tgz 4384 BLAKE2B 27dc40377f7b2fee33553543723b9e15cd02a1171bd24b5d213b3546b7b20267cb8cbf987c1a1f6c0285f594b194f1dc20c41314266587be30d961e4b514f8b9 SHA512 b6fc5ee802906a690a1d1542ada44aba1df5e6861a66f4df58623e366d8d3ab2349d2963817bf07089e1dc15932ca03f0020d16777012ec4b92879280868bb75
diff --git a/dev-ruby/subexec/metadata.xml b/dev-ruby/subexec/metadata.xml
deleted file mode 100644
index 31580781c902..000000000000
--- a/dev-ruby/subexec/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">nulayer/subexec</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/subexec/subexec-0.2.3-r1.ebuild b/dev-ruby/subexec/subexec-0.2.3-r1.ebuild
deleted file mode 100644
index b9f776efff11..000000000000
--- a/dev-ruby/subexec/subexec-0.2.3-r1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem eutils
-
-GITHUB_USER="nulayer"
-
-DESCRIPTION="Subexec spawns an external command with a timeout"
-HOMEPAGE="https://github.com/nulayer/subexec"
-SRC_URI="https://github.com/${GITHUB_USER}/${PN}/archive/v${PV}.tar.gz -> ${P}.tgz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/shoulda )"
-
-all_ruby_prepare() {
- rm Gemfile* || die
- sed -i -e '/[Bb]undler/ s:^:#:' Rakefile || die
- sed -i -e '/begin/,/end/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/sus-fixtures-async/Manifest b/dev-ruby/sus-fixtures-async/Manifest
new file mode 100644
index 000000000000..0f5d8096744a
--- /dev/null
+++ b/dev-ruby/sus-fixtures-async/Manifest
@@ -0,0 +1,3 @@
+DIST sus-fixtures-async-0.1.1.tar.gz 5017 BLAKE2B f293d9fe336b05e510a82c4337250f48b871eab8c38b7d9587a6402d19689197eb6a2b1f7f14e7b5823246b6f14d104e7e49f14f84a980392dd545543ffcd733 SHA512 cca073491d143b0ceaff34ada08d416ea43a035bc887c6dec02f62372724d891f47e9dfa8d749f6e485e7d14da8c395dc67185ed0a91d9ea0eb5466d3164c378
+DIST sus-fixtures-async-0.1.2.tar.gz 4988 BLAKE2B da9bfec59489ad1a2fdf0e86a75083e36826d0bb73d6fd482bdae0e842421c59db943669eb101ed4488f963130c387e4b5eed88b4388b4b4ea19cefd2ab1b9db SHA512 effc602b6ea4b3ed56fe9c578a621195ef19cc6e7e858fa06b4a9ecfbc1d27db6b302a7f6567d8b711165eff3ab0f750971eef0c02262855ee35b9eaf4448c1e
+DIST sus-fixtures-async-0.1.3.tar.gz 4991 BLAKE2B a2e8d5ff1974e0f69d7f821194fa1386efc8fc1e4592c97da99863f32d0d6002c9659ec2e8341d64e13a388807c16b0b816170c60d4f1efa985a58cf7baa58bb SHA512 1361de64829f242bcef47fc152e7a18e4b261ad5ed54be7a83111781b6f9ed196385303387f155a02a7628a91c7560654dc0c1c214419a7256133ce559627dbc
diff --git a/dev-ruby/sus-fixtures-async/files/sus-fixtures-async-0.1.1-tests-require.patch b/dev-ruby/sus-fixtures-async/files/sus-fixtures-async-0.1.1-tests-require.patch
new file mode 100644
index 000000000000..af89916b7c5f
--- /dev/null
+++ b/dev-ruby/sus-fixtures-async/files/sus-fixtures-async-0.1.1-tests-require.patch
@@ -0,0 +1,43 @@
+https://github.com/socketry/sus-fixtures-async/pull/2
+
+From 3d3a1016c1718a8a5eca6ee76cd65d88a66e2481 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Mon, 3 Apr 2023 00:36:26 +0100
+Subject: [PATCH] test: Fix version require
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+When running e.g. 'ruby32 -S sus', I had:
+```
+🔥 Errored assertions:
+file test/sus/fixtures/async.rb:8
+ ⚠ NameError: uninitialized constant Sus::Fixtures::Async::VERSION
+ test/sus/fixtures/async.rb:8 block in <top (required)>
+ /usr/lib64/ruby/gems/3.2.0/gems/sus-0.20.3/lib/sus/file.rb:10 class_eval
+ /usr/lib64/ruby/gems/3.2.0/gems/sus-0.20.3/lib/sus/file.rb:10 block in <top (required)>
+ /usr/lib64/ruby/gems/3.2.0/gems/sus-0.20.3/lib/sus/file.rb:39 build
+ /usr/lib64/ruby/gems/3.2.0/gems/sus-0.20.3/lib/sus/file.rb:105 file
+ /usr/lib64/ruby/gems/3.2.0/gems/sus-0.20.3/lib/sus/registry.rb:50 load_file
+ /usr/lib64/ruby/gems/3.2.0/gems/sus-0.20.3/lib/sus/registry.rb:45 load
+ /usr/lib64/ruby/gems/3.2.0/gems/sus-0.20.3/lib/sus/config.rb:95 block in load_registry
+ /usr/lib64/ruby/gems/3.2.0/gems/sus-0.20.3/lib/sus/config.rb:94 each
+ /usr/lib64/ruby/gems/3.2.0/gems/sus-0.20.3/lib/sus/config.rb:94 load_registry
+ /usr/lib64/ruby/gems/3.2.0/gems/sus-0.20.3/lib/sus/config.rb:82 registry
+ /usr/lib64/ruby/gems/3.2.0/gems/sus-0.20.3/bin/sus:10 <top (required)>
+ /usr/bin/sus:9 load
+ /usr/bin/sus:9 <main>
+```
+
+It turns out we're missing a direct require, so chuck it in.
+--- a/test/sus/fixtures/async.rb
++++ b/test/sus/fixtures/async.rb
+@@ -4,6 +4,7 @@
+ # Copyright, 2022, by Samuel Williams.
+
+ require 'sus/fixtures/async'
++require 'sus/fixtures/async/version'
+
+ describe Sus::Fixtures::Async::VERSION do
+ it 'is a version string' do
+
diff --git a/dev-ruby/sus-fixtures-async/metadata.xml b/dev-ruby/sus-fixtures-async/metadata.xml
new file mode 100644
index 000000000000..8b415315d6d1
--- /dev/null
+++ b/dev-ruby/sus-fixtures-async/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">socketry/sus-fixtures-async</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.1.ebuild b/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.1.ebuild
new file mode 100644
index 000000000000..cee9eac085d1
--- /dev/null
+++ b/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Convenient fixture for testing async components in a reactor"
+HOMEPAGE="https://github.com/socketry/sus-fixtures-async"
+SRC_URI="https://github.com/socketry/sus-fixtures-async/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86"
+
+ruby_add_rdepend "
+ dev-ruby/async
+ dev-ruby/sus
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.1.1-tests-require.patch
+)
+
+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
+}
diff --git a/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.2.ebuild b/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.2.ebuild
new file mode 100644
index 000000000000..1e28b846551a
--- /dev/null
+++ b/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.2.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Convenient fixture for testing async components in a reactor"
+HOMEPAGE="https://github.com/socketry/sus-fixtures-async"
+SRC_URI="https://github.com/socketry/sus-fixtures-async/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_rdepend "
+ dev-ruby/async
+ >=dev-ruby/sus-0.10:0
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.1.1-tests-require.patch
+)
+
+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
+}
diff --git a/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.3.ebuild b/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.3.ebuild
new file mode 100644
index 000000000000..c5f987dca53a
--- /dev/null
+++ b/dev-ruby/sus-fixtures-async/sus-fixtures-async-0.1.3.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Convenient fixture for testing async components in a reactor"
+HOMEPAGE="https://github.com/socketry/sus-fixtures-async"
+SRC_URI="https://github.com/socketry/sus-fixtures-async/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_rdepend "
+ dev-ruby/async
+ >=dev-ruby/sus-0.10:0
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.1.1-tests-require.patch
+)
+
+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
+}
diff --git a/dev-ruby/sus/Manifest b/dev-ruby/sus/Manifest
new file mode 100644
index 000000000000..73121c5bcea4
--- /dev/null
+++ b/dev-ruby/sus/Manifest
@@ -0,0 +1,6 @@
+DIST sus-0.21.1.tar.gz 29580 BLAKE2B 9a30950b4ad9da13af48c50a96951ba9f9cace97fac3a603de5acfe489dc8c8d4581b064f2452c9bf5da96da4db8f488df42f89a2113dd924c8ba8fcf8fd9230 SHA512 73db74f791f47a898840db65cf9c2f98b92f3d2a5319828f26dc55c8aef8e0932060c1075f5010b3c2b887891c1467a3828728f78a84297725d851966093ce9e
+DIST sus-0.23.0.tar.gz 30932 BLAKE2B 8f08e167368c54814b674e42ab5855f06387646774b93551fd67b7b4b7eb3313aeaa82369d2346325d2214c5f134875b9730579559450519ddb49eb62b70ad40 SHA512 ee1815d70692154abef962d41cca7037b0fa1419861ff08518a0b1153e43e308c351eb21ca32b017b30fb30fbc1a3bd707681b2a59e4a74137642c36080dddbd
+DIST sus-0.24.0.tar.gz 31229 BLAKE2B 4e335d72f61ede7d946f4d375abe5a7640fefd17d2fc7697bb489f5e14dc42711a6777baaed35e91cb8c76bfba62127ecfdf866e36e54bc1d9fd0f705424ade4 SHA512 1f879dc59af1f348b29da4b1555dbe4f999c9b695a327f233a381382be33f7e7b1a47213f20f72ff420d57fc7c42024e6a1c34737666e88b808518588389d3fb
+DIST sus-0.24.2.tar.gz 31233 BLAKE2B 4090aac36d529984e5e447e529988838ed68f9ca4f2ef9b8a3829e158622216435152937d600be55c86982cce59d45c55026323c4264541ff0990a26e56e5c34 SHA512 693378800db2f4c683be78529a8b2b07c64cb25c7b67e970ad3b2ca2f3fb7b9f6069074acedb44828e5377a48318fd24ba36f811c43073eeffb19478041cf358
+DIST sus-0.24.5.tar.gz 31874 BLAKE2B 91ed9e627e2f3bffe69f9518182d0c4fe804e7e3811b4dd984672ed1007ea2cbe09caf414841df34f2a37a9eb5050c288c1be233707c7fc1f7dd0449d002be68 SHA512 b29cc2b9399245aa5a1867040e237f6a6970988c0fb01ed0bf76d574080f433da3bcd1c03b3612f80459fca75bdcc99dba7c2588266901464566d156a9df7523
+DIST sus-0.24.6.tar.gz 31923 BLAKE2B 793c8e6213ff210ff5080239f89646f3b2dfcdaca96c876ee51b210eaa68f583f3c9694afb2e2089fee46940868bee8e6db2c1d03acd4ad7b5d0a7736295da29 SHA512 6b661e0467cde29a7a192df3608ff1b629c558ea55b99c0bec40ce36b2f2876a796f7424722d6c221704edc9939a6da73cddd73a7f076287907494e027a01926
diff --git a/dev-ruby/sus/metadata.xml b/dev-ruby/sus/metadata.xml
new file mode 100644
index 000000000000..2a4c88d07149
--- /dev/null
+++ b/dev-ruby/sus/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ioquatix/sus</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/sus/sus-0.21.1.ebuild b/dev-ruby/sus/sus-0.21.1.ebuild
new file mode 100644
index 000000000000..55097f2442bc
--- /dev/null
+++ b/dev-ruby/sus/sus-0.21.1.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="ruby30 ruby31 ruby32"
+
+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/sus/sus-0.23.0.ebuild b/dev-ruby/sus/sus-0.23.0.ebuild
new file mode 100644
index 000000000000..52cede312224
--- /dev/null
+++ b/dev-ruby/sus/sus-0.23.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="ruby31 ruby32"
+
+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/sus/sus-0.24.0.ebuild b/dev-ruby/sus/sus-0.24.0.ebuild
new file mode 100644
index 000000000000..bd56aec6e77e
--- /dev/null
+++ b/dev-ruby/sus/sus-0.24.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="ruby31 ruby32"
+
+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/sus/sus-0.24.2.ebuild b/dev-ruby/sus/sus-0.24.2.ebuild
new file mode 100644
index 000000000000..93ded49cded5
--- /dev/null
+++ b/dev-ruby/sus/sus-0.24.2.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="ruby31 ruby32 ruby33"
+
+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/sus/sus-0.24.5.ebuild b/dev-ruby/sus/sus-0.24.5.ebuild
new file mode 100644
index 000000000000..ba4876aa8a22
--- /dev/null
+++ b/dev-ruby/sus/sus-0.24.5.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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"
+
+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/sus/sus-0.24.6.ebuild b/dev-ruby/sus/sus-0.24.6.ebuild
new file mode 100644
index 000000000000..ba4876aa8a22
--- /dev/null
+++ b/dev-ruby/sus/sus-0.24.6.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+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"
+
+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/sync/Manifest b/dev-ruby/sync/Manifest
new file mode 100644
index 000000000000..bb95b96b4a38
--- /dev/null
+++ b/dev-ruby/sync/Manifest
@@ -0,0 +1,2 @@
+DIST sync-0.5.0-mjit.patch 705 BLAKE2B 3235e6fb9689a046a04802d0e46087970ce80283aea989b598f756953175026ad63a686339ce5767b316bc67a2f1e9d4bb280cbee32408243ba0b6dd7c424c6b SHA512 9b639bafaf262d5ccd4f851ad5969e83b5e8d296a98daa4d12373e714aa0f80b7e242d508149be3da1cbad7d51ac6daf4f326a5f5043c7fcf828c8fc352e5bfc
+DIST sync-0.5.0.tar.gz 4957 BLAKE2B 9b4b1710d2468068387d782109199dd45c783b6d7bb0357851f800df2ac4961a72143cfc2b42f522524cf7148694545ae8eab47ee6629062d8ea1505d9095ba0 SHA512 5f887d9169e0be834c7fa17ae42b71078f25ce3d83e695490cd136adc1799d6b92e4aed41ce3f3d57b3ad193a1ac4de940b37212c2864bbf6331ba3582128166
diff --git a/dev-ruby/sync/metadata.xml b/dev-ruby/sync/metadata.xml
new file mode 100644
index 000000000000..2bf0cd2aff4b
--- /dev/null
+++ b/dev-ruby/sync/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/sync</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/sync/sync-0.5.0-r1.ebuild b/dev-ruby/sync/sync-0.5.0-r1.ebuild
new file mode 100644
index 000000000000..471eb2d7da3f
--- /dev/null
+++ b/dev-ruby/sync/sync-0.5.0-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="A module that provides a two-phase lock with a counter"
+HOMEPAGE="https://github.com/ruby/sync"
+SRC_URI="https://github.com/ruby/sync/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/ruby/sync/commit/8f2821d0819ee7c08506f204c7676f12c5ab1397.patch -> ${P}-mjit.patch"
+
+LICENSE="BSD-2"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+
+all_ruby_prepare() {
+ eapply "${DISTDIR}/${P}-mjit.patch"
+
+ sed -i -e 's:require_relative ":require "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/sync/sync-0.5.0.ebuild b/dev-ruby/sync/sync-0.5.0.ebuild
new file mode 100644
index 000000000000..6719a035b36d
--- /dev/null
+++ b/dev-ruby/sync/sync-0.5.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="A module that provides a two-phase lock with a counter"
+HOMEPAGE="https://github.com/ruby/sync"
+SRC_URI="https://github.com/ruby/sync/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 ~sparc x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e 's:require_relative ":require "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/syntax/metadata.xml b/dev-ruby/syntax/metadata.xml
index 3957d3606d0b..6678f2305d67 100644
--- a/dev-ruby/syntax/metadata.xml
+++ b/dev-ruby/syntax/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/syntax/syntax-1.2.2.ebuild b/dev-ruby/syntax/syntax-1.2.2.ebuild
index f139d4b8ce9b..955cb9466143 100644
--- a/dev-ruby/syntax/syntax-1.2.2.ebuild
+++ b/dev-ruby/syntax/syntax-1.2.2.ebuild
@@ -1,11 +1,9 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+USE_RUBY="ruby31 ruby32 ruby33"
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
@@ -17,7 +15,7 @@ SRC_URI="https://github.com/dblock/syntax/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="test doc"
ruby_add_bdepend "doc? ( dev-ruby/rdoc )"
diff --git a/dev-ruby/sys-filesystem/Manifest b/dev-ruby/sys-filesystem/Manifest
new file mode 100644
index 000000000000..71619d351da4
--- /dev/null
+++ b/dev-ruby/sys-filesystem/Manifest
@@ -0,0 +1 @@
+DIST sys-filesystem-1.4.4.gem 34304 BLAKE2B 5a4b590a8b6bd29ab0abeabdc2a40cdffe8b67b433133b9126fb7c044e051bfc47be1454f319a125e9b5f5a11eb3506fab484cb87ef69987a0674b0c2f621f30 SHA512 b64ce70422966434f19478438b00941458243e6788d1ca5f9952bc7f9849fae210aa6af27ae8958a61f3463e9311ce2b26e47c44c314870cfdcb28ff850594c0
diff --git a/dev-ruby/sys-filesystem/metadata.xml b/dev-ruby/sys-filesystem/metadata.xml
new file mode 100644
index 000000000000..6434d5f2c105
--- /dev/null
+++ b/dev-ruby/sys-filesystem/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+ <name>Robin H. Johnson</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">djberg96/sys-filesystem</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/sys-filesystem/sys-filesystem-1.4.4.ebuild b/dev-ruby/sys-filesystem/sys-filesystem-1.4.4.ebuild
new file mode 100644
index 000000000000..631a490e5460
--- /dev/null
+++ b/dev-ruby/sys-filesystem/sys-filesystem-1.4.4.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Cross-platform interface for filesystem information"
+HOMEPAGE="https://github.com/djberg96/sys-filesystem"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/ffi-1.15.0"
+
+ruby_add_bdepend "test? ( dev-ruby/mkmf-lite )"
+
+all_ruby_prepare() {
+ sed -e '/stat fragment_size is a plausible value/askip "Fails with e.g. ZFS"' \
+ -i spec/sys_filesystem_unix_spec.rb || die
+}
diff --git a/dev-ruby/sys-uname/Manifest b/dev-ruby/sys-uname/Manifest
new file mode 100644
index 000000000000..5d3ec04d1252
--- /dev/null
+++ b/dev-ruby/sys-uname/Manifest
@@ -0,0 +1 @@
+DIST sys-uname-1.2.3.gem 29696 BLAKE2B 0ba1882a370f506de79dc533355cf808acf3f1369a76515192d900a5aa41be6255810ab68454a82bb3939248f61baf83d7c46bc1f12c8aada4a96618a4e19bb9 SHA512 86964d1bb4036711673988da96219683b6520dbc5cee81dce43b8b109a878a5d04c479d6844d75c8cf5bc36c14bb005279ca7d8c7c03809786ed9d269779a210
diff --git a/dev-ruby/sys-uname/metadata.xml b/dev-ruby/sys-uname/metadata.xml
new file mode 100644
index 000000000000..9314612fa7ab
--- /dev/null
+++ b/dev-ruby/sys-uname/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+</maintainer>
+<upstream>
+ <remote-id type="github">djberg96/sys-uname</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/dev-ruby/sys-uname/sys-uname-1.2.3.ebuild b/dev-ruby/sys-uname/sys-uname-1.2.3.ebuild
new file mode 100644
index 000000000000..0e941b358f90
--- /dev/null
+++ b/dev-ruby/sys-uname/sys-uname-1.2.3.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md doc/uname.rdoc"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A Ruby interface for getting operating system information"
+HOMEPAGE="https://github.com/djberg96/sys-uname"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/ffi-1.1"
diff --git a/dev-ruby/syslogger/Manifest b/dev-ruby/syslogger/Manifest
index b9e2605fae49..56efa4341349 100644
--- a/dev-ruby/syslogger/Manifest
+++ b/dev-ruby/syslogger/Manifest
@@ -1 +1 @@
-DIST syslogger-1.6.5.gem 11776 BLAKE2B dec37278ea109dba53c44a5c285962d78890ed972f1cd14789435b8bb3b922c7a3fc7b18238ee9aa239143453be3d6f73eea6c62d0bb83eb7a8901225ff2e49c SHA512 60dc7be93092196d68d154cfdf90a3393c9883ceaff35640bd0c0dda01f692953c7d1d8243d7b9327990a368d320c474af1711ba33a6b69381f56030800cc297
+DIST syslogger-1.6.6.gem 13824 BLAKE2B c70c8e727ac9f4754a42cd3be27eaa2ad19e5ec61745433a8654fd495736a72b5242242fc663b1d4d995164c42d4ea5bf3a15edeb6711abf6f69663ce6918496 SHA512 23947699de94c6bbca4a7ca4df52e9fb9ad06fa29e29f406255369728971007bb78ec4aa1748fec123658b0202e98dd6500649092456a9f579db30acbe04c42d
diff --git a/dev-ruby/syslogger/metadata.xml b/dev-ruby/syslogger/metadata.xml
index b5404709f953..ba1f90090e3a 100644
--- a/dev-ruby/syslogger/metadata.xml
+++ b/dev-ruby/syslogger/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/syslogger/syslogger-1.6.5.ebuild b/dev-ruby/syslogger/syslogger-1.6.5.ebuild
deleted file mode 100644
index 367371e766ba..000000000000
--- a/dev-ruby/syslogger/syslogger-1.6.5.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-# if ever needed
-#GITHUB_USER="crohr"
-#GITHUB_PROJECT="${PN}"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Drop-in replacement for the standard Logger, that logs to the syslog"
-HOMEPAGE="https://github.com/crohr/syslogger"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/syslogger/syslogger-1.6.6-r2.ebuild b/dev-ruby/syslogger/syslogger-1.6.6-r2.ebuild
new file mode 100644
index 000000000000..86b600dcc7e8
--- /dev/null
+++ b/dev-ruby/syslogger/syslogger-1.6.6-r2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+# if ever needed
+#GITHUB_USER="crohr"
+#GITHUB_PROJECT="${PN}"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Drop-in replacement for the standard Logger, that logs to the syslog"
+HOMEPAGE="https://github.com/crohr/syslogger"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/activejob )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/systemu/metadata.xml b/dev-ruby/systemu/metadata.xml
index 28ab0c15f206..6ed983b73916 100644
--- a/dev-ruby/systemu/metadata.xml
+++ b/dev-ruby/systemu/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ahoward/systemu</remote-id>
+ <remote-id type="rubygems">systemu</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/systemu/systemu-2.6.5-r1.ebuild b/dev-ruby/systemu/systemu-2.6.5-r1.ebuild
new file mode 100644
index 000000000000..6b2cd7170daa
--- /dev/null
+++ b/dev-ruby/systemu/systemu-2.6.5-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="README"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Universal capture of STDOUT and STDERR and handling of child process PID"
+HOMEPAGE="https://github.com/ahoward/systemu"
+
+LICENSE="Ruby-BSD"
+SLOT="0"
+KEYWORDS="amd64 ~riscv x86"
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r samples
+}
diff --git a/dev-ruby/systemu/systemu-2.6.5.ebuild b/dev-ruby/systemu/systemu-2.6.5.ebuild
deleted file mode 100644
index 9a3690b4937e..000000000000
--- a/dev-ruby/systemu/systemu-2.6.5.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Universal capture of STDOUT and STDERR and handling of child process PID"
-HOMEPAGE="http://codeforpeople.com/lib/ruby/systemu/"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}
- doins -r samples
-}
diff --git a/dev-ruby/tdiff/Manifest b/dev-ruby/tdiff/Manifest
index 4c46fa578db9..a1aaccd9d841 100644
--- a/dev-ruby/tdiff/Manifest
+++ b/dev-ruby/tdiff/Manifest
@@ -1,2 +1,2 @@
-DIST tdiff-0.3.3.gem 9216 BLAKE2B 1171d354c4fa14e0f6813976ce82e44e24ef94089f090c2eec31767e032a143904f627df7634d3faae4d18f5591991fde77b26e0da7c37a6346d6487d881eec5 SHA512 18c8ee9025eedfbf78c24280bc318736e13d840a2be8b05257697d2c4de29831ed6a361ecd553fc1bcdf7961483fd0712ecb76dc3681a9549f4d3f7a18bc3d8d
DIST tdiff-0.3.4.gem 10240 BLAKE2B fe764eaf70303670602758bba903202bb468c419e96909561c4d420a86b9237c9af4640947e9dbc27eaca7b7210e26236da20d41f03d3e8acd0556a23205a924 SHA512 2db5c9707a8654fb36b02c7fbdf2317da08c633c0d3768f0f76693ffffd1b2b44e5f4309ae97df944c3bf9f25b596fd3ae19cb88b20435c0f9e50989d22ece40
+DIST tdiff-0.4.0.gem 10752 BLAKE2B 591071c2950d0eee771d8756c803721cdea9224b581866cb3f08bea45ec41dec710e642e2441ea808ac88bf1e42a0c5f68f0254d9229ffb0695cfefb32ce55d7 SHA512 13b12be58f99e93e48aa454dc77d60f0ef2875c96a8dce890dfa8392cd46f371a5190b7e4b44cce9095968099e22ecd30a91b9879d81fee4ae4b57c78963540d
diff --git a/dev-ruby/tdiff/metadata.xml b/dev-ruby/tdiff/metadata.xml
index 0c035343d02c..f43a6eef0657 100644
--- a/dev-ruby/tdiff/metadata.xml
+++ b/dev-ruby/tdiff/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tdiff/tdiff-0.3.3-r1.ebuild b/dev-ruby/tdiff/tdiff-0.3.3-r1.ebuild
deleted file mode 100644
index 3b0e4600b3eb..000000000000
--- a/dev-ruby/tdiff/tdiff-0.3.3-r1.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Calculates the differences between two tree-like structures"
-HOMEPAGE="https://github.com/postmodern/tdiff"
-LICENSE="MIT"
-
-KEYWORDS="amd64 arm ~arm64 ~hppa ppc ppc64 x86 ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
diff --git a/dev-ruby/tdiff/tdiff-0.3.4-r1.ebuild b/dev-ruby/tdiff/tdiff-0.3.4-r1.ebuild
new file mode 100644
index 000000000000..dd6825582bba
--- /dev/null
+++ b/dev-ruby/tdiff/tdiff-0.3.4-r1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Calculates the differences between two tree-like structures"
+HOMEPAGE="https://github.com/postmodern/tdiff"
+LICENSE="MIT"
+
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 x86 ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE=""
diff --git a/dev-ruby/tdiff/tdiff-0.3.4.ebuild b/dev-ruby/tdiff/tdiff-0.3.4.ebuild
deleted file mode 100644
index 560830627678..000000000000
--- a/dev-ruby/tdiff/tdiff-0.3.4.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Calculates the differences between two tree-like structures"
-HOMEPAGE="https://github.com/postmodern/tdiff"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
diff --git a/dev-ruby/tdiff/tdiff-0.4.0.ebuild b/dev-ruby/tdiff/tdiff-0.4.0.ebuild
new file mode 100644
index 000000000000..68e69ace31e2
--- /dev/null
+++ b/dev-ruby/tdiff/tdiff-0.4.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="ChangeLog.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Calculates the differences between two tree-like structures"
+HOMEPAGE="https://github.com/postmodern/tdiff"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~x86 ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
diff --git a/dev-ruby/temple/Manifest b/dev-ruby/temple/Manifest
index 1a48e111a799..8f1cfee7924b 100644
--- a/dev-ruby/temple/Manifest
+++ b/dev-ruby/temple/Manifest
@@ -1,2 +1,2 @@
-DIST temple-0.8.0.gem 39424 BLAKE2B 48df1f38a2df12871b13a8592afecf93fdd7c13497491d86c52eb2e06d47768403a1c8e7ca6201d73f319a9f27d65ae08f15c6c177b1b6e5d73b37483f01a4ca SHA512 ad57c484de78f029797fbf4331fa9c24247d6cec2e3dea447d394a104eb9496c91af45f505b720da1c4242845d94b34b626ca586c625cd126f72d1e4296ab2a6
-DIST temple-0.8.1.gem 39424 BLAKE2B 45bd26e0b05d51c96002e38044e3444c262df0b00aee4417c06ec0489a240c31557268b5fd8dcd58a70525eed11a5ef768913c1d45ecf299020c8f75e7ef5d42 SHA512 fbbdcedcce11dab18e0644702456729fe4f0b54f072c5773660614362d6033cadde06480fcce27743e80c73d26827c9947498d7ddb19fa73ec3b3dd6dc61fc27
+DIST temple-0.10.2.gem 40960 BLAKE2B 690d4a891d30d453c303aa47c07f341334cdbf4605f3936422d939bd148cb0df412d00c2718db2e6e9b9ab7a1c2ba7f538cdc96fec17958215b95a1b60093955 SHA512 54cc549056924958ce36c52d2b795cc3303ddd689f5fbe50b01c1e806582b97d37e438d917eaf6c05519b4aad9b05fff5e305d8d614c1e8f714f1e1a88d8db23
+DIST temple-0.10.3.tar.gz 37780 BLAKE2B 9b18f9103f05935ac774423958372b0c518aa0976e46b59d4d80ab4649fae96b83486a0f650a6d3b27ae7af20ce9f9f49b50989da3313d13134e2b29bdfcd32d SHA512 3f41e5897fb43be844f7c0804c01e6bb8843034ca5cad9550eb96140136fdc3a2251ae682f4566520476d7b5e8a7e1585b65aedb5c922643d71b6c4454d3e1bd
diff --git a/dev-ruby/temple/metadata.xml b/dev-ruby/temple/metadata.xml
index 24ff9dc5d374..401640a86d54 100644
--- a/dev-ruby/temple/metadata.xml
+++ b/dev-ruby/temple/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/temple/temple-0.10.2.ebuild b/dev-ruby/temple/temple-0.10.2.ebuild
new file mode 100644
index 000000000000..7042b5281c15
--- /dev/null
+++ b/dev-ruby/temple/temple-0.10.2.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES EXPRESSIONS.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An abstraction and a framework for compiling templates to pure Ruby"
+HOMEPAGE="https://github.com/judofyr/temple"
+
+LICENSE="MIT"
+SLOT="0.7"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+ruby_add_bdepend "test? (
+ dev-ruby/erubi
+ >=dev-ruby/tilt-2.0.1 )"
diff --git a/dev-ruby/temple/temple-0.10.3.ebuild b/dev-ruby/temple/temple-0.10.3.ebuild
new file mode 100644
index 000000000000..e5697ac368a4
--- /dev/null
+++ b/dev-ruby/temple/temple-0.10.3.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES EXPRESSIONS.md README.md"
+RUBY_FAKEGEM_GEMSPEC="temple.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An abstraction and a framework for compiling templates to pure Ruby"
+HOMEPAGE="https://github.com/judofyr/temple"
+SRC_URI="https://github.com/judofyr/temple/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0.7"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? (
+ dev-ruby/erubi
+ >=dev-ruby/tilt-2.0.1 )"
+
+all_ruby_prepare() {
+ sed -e 's/__FILE__/"."/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -e 's/git ls-files --/echo/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/temple/temple-0.8.0.ebuild b/dev-ruby/temple/temple-0.8.0.ebuild
deleted file mode 100644
index 02862a442e97..000000000000
--- a/dev-ruby/temple/temple-0.8.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES EXPRESSIONS.md README.md"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="An abstraction and a framework for compiling templates to pure Ruby"
-HOMEPAGE="https://github.com/judofyr/temple"
-
-LICENSE="MIT"
-SLOT="0.7"
-KEYWORDS="amd64 arm ~arm64 ~hppa ppc ppc64 x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/bacon
- dev-ruby/erubis
- >=dev-ruby/tilt-2.0.1 )"
-
-each_ruby_test() {
- ${RUBY} -S bacon -Ilib -Itest --automatic --quiet || die
-}
diff --git a/dev-ruby/temple/temple-0.8.1.ebuild b/dev-ruby/temple/temple-0.8.1.ebuild
deleted file mode 100644
index 82f4a3ff0a52..000000000000
--- a/dev-ruby/temple/temple-0.8.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGES EXPRESSIONS.md README.md"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="An abstraction and a framework for compiling templates to pure Ruby"
-HOMEPAGE="https://github.com/judofyr/temple"
-
-LICENSE="MIT"
-SLOT="0.7"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/bacon
- dev-ruby/erubis
- >=dev-ruby/tilt-2.0.1 )"
-
-each_ruby_test() {
- ${RUBY} -S bacon -Ilib -Itest --automatic --quiet || die
-}
diff --git a/dev-ruby/term-ansicolor/Manifest b/dev-ruby/term-ansicolor/Manifest
index b8c1f9c3f191..ae9bb673fc8c 100644
--- a/dev-ruby/term-ansicolor/Manifest
+++ b/dev-ruby/term-ansicolor/Manifest
@@ -1 +1,3 @@
DIST term-ansicolor-1.7.1.gem 44544 BLAKE2B 2c2c2de0a18d1f9a975901f8a7005f740ac81a609c43705d8c184deb26dc9010876deeca411488c787132a3d8b78339c75b0776f3c9bba1ff71efa23ce3671a6 SHA512 d49f8825c31accfaa58a2f34ed5fbdaf503d4b47c23f07c52cc82bbf6cce457bd9371e197da1ec36dc83e32b95e9ea9a349922d9759a827923456ea46f81ff50
+DIST term-ansicolor-1.7.2.gem 44544 BLAKE2B 46ec73afb7f9862960a68feee4664babc2bd3597aa48dd59712c9f48d3e6d1a0a2a1bc0e6ecfdbd196a97f79d66460535f6fb6ca347edfffed52187eebf79b15 SHA512 e81fc32f07d5f85eb0f364069afb143f87dea9fab6c6dd03bba95cdcc74495cdfb87ee334f595c8636226e50801274191a083eee5b70c3e8289d04cc49a1acb6
+DIST term-ansicolor-1.8.0.gem 45056 BLAKE2B 89edaf5ecb56dada8027ab91009b71a6ee9a27c85bddeda26d281230e0fc15f32a2de1c3259d02560bdf9c81a2ed92a920521eec17670eaa0b8db1264ff7311c SHA512 4a13f369c03d3660f48f28068f311d5eb806e2e4724da6a3ee38eb0ed3c195a1ce8ea24215dfe80af5aab8df1f6a86fdd89d54c62ee2fb9b7e782f9e5ed3013f
diff --git a/dev-ruby/term-ansicolor/metadata.xml b/dev-ruby/term-ansicolor/metadata.xml
index eb1e47f2edfb..daac6fdb7252 100644
--- a/dev-ruby/term-ansicolor/metadata.xml
+++ b/dev-ruby/term-ansicolor/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/term-ansicolor/term-ansicolor-1.7.1-r1.ebuild b/dev-ruby/term-ansicolor/term-ansicolor-1.7.1-r1.ebuild
new file mode 100644
index 000000000000..845ead826417
--- /dev/null
+++ b/dev-ruby/term-ansicolor/term-ansicolor-1.7.1-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_GEMSPEC="term-ansicolor.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Small Ruby library that colors strings using ANSI escape sequences"
+HOMEPAGE="https://flori.github.io/term-ansicolor/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+ruby_add_rdepend ">=dev-ruby/tins-1.0"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:tests -e 'Dir["tests/*_test.rb"].each{|f| require f}' || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+}
diff --git a/dev-ruby/term-ansicolor/term-ansicolor-1.7.1.ebuild b/dev-ruby/term-ansicolor/term-ansicolor-1.7.1.ebuild
deleted file mode 100644
index d513a0591184..000000000000
--- a/dev-ruby/term-ansicolor/term-ansicolor-1.7.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
-
-RUBY_FAKEGEM_GEMSPEC="term-ansicolor.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Small Ruby library that colors strings using ANSI escape sequences"
-HOMEPAGE="https://flori.github.io/term-ansicolor/"
-LICENSE="GPL-2"
-
-KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/tins-1.0"
-
-each_ruby_test() {
- ${RUBY} -Ilib -S testrb-2 tests/*_test.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- docinto examples
- dodoc examples/*
-}
diff --git a/dev-ruby/term-ansicolor/term-ansicolor-1.7.2.ebuild b/dev-ruby/term-ansicolor/term-ansicolor-1.7.2.ebuild
new file mode 100644
index 000000000000..083252989b93
--- /dev/null
+++ b/dev-ruby/term-ansicolor/term-ansicolor-1.7.2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_GEMSPEC="term-ansicolor.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Small Ruby library that colors strings using ANSI escape sequences"
+HOMEPAGE="https://flori.github.io/term-ansicolor/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+ruby_add_rdepend ">=dev-ruby/tins-1.0"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:tests -e 'Dir["tests/*_test.rb"].each{|f| require f}' || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+}
diff --git a/dev-ruby/term-ansicolor/term-ansicolor-1.8.0.ebuild b/dev-ruby/term-ansicolor/term-ansicolor-1.8.0.ebuild
new file mode 100644
index 000000000000..083252989b93
--- /dev/null
+++ b/dev-ruby/term-ansicolor/term-ansicolor-1.8.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_GEMSPEC="term-ansicolor.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Small Ruby library that colors strings using ANSI escape sequences"
+HOMEPAGE="https://flori.github.io/term-ansicolor/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+ruby_add_rdepend ">=dev-ruby/tins-1.0"
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:tests -e 'Dir["tests/*_test.rb"].each{|f| require f}' || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ docinto examples
+ dodoc examples/*
+}
diff --git a/dev-ruby/termcolor/Manifest b/dev-ruby/termcolor/Manifest
deleted file mode 100644
index ef529f376156..000000000000
--- a/dev-ruby/termcolor/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST termcolor-1.2.2.gem 7168 BLAKE2B 6627de8edebe771d3472448e006fcebae201c7d06524b173a47db50ed253c19c1b54a38784cd4f9f1252d9355e5d779e89d023c03aed36332874f9b80b030991 SHA512 1709c6ce299a320209288cc27fb1e8f80492e582b84be2e54f3a09b96c1d2e048760b8f72e19581bd8bc6c1539c34ac010cb3e7bec4a7c24909eff438639182e
diff --git a/dev-ruby/termcolor/metadata.xml b/dev-ruby/termcolor/metadata.xml
deleted file mode 100644
index 7d3fa9eaac59..000000000000
--- a/dev-ruby/termcolor/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>naota@gentoo.org</email>
- </maintainer>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/termcolor/termcolor-1.2.2.ebuild b/dev-ruby/termcolor/termcolor-1.2.2.ebuild
deleted file mode 100644
index 568e067cd5a0..000000000000
--- a/dev-ruby/termcolor/termcolor-1.2.2.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-#*** Using highline effectively in JRuby requires manually installing the ffi-ncurses gem.
-USE_RUBY="ruby21 ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="History.txt README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="a library for ANSI color formatting like HTML for output in terminal"
-HOMEPAGE="http://termcolor.rubyforge.org/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/highline-1.5.0"
diff --git a/dev-ruby/terminal-table/Manifest b/dev-ruby/terminal-table/Manifest
new file mode 100644
index 000000000000..f6ffd9d0c1cc
--- /dev/null
+++ b/dev-ruby/terminal-table/Manifest
@@ -0,0 +1,3 @@
+DIST terminal-table-1.8.0.tar.gz 13407 BLAKE2B cf1653a18d2b6b72757b149295e01aee83d75241075912d145032e3bc73deb3e33fd00bef033f4bc90dcd51e4bd994b6966805ed7f81833392aba17bbdd7e179 SHA512 4ea4a66e8db384e448d57027e6314f9ce7a0e1511bbfa6e246e26c15a8ff3e44b46c8b6ca03dd521ffdd63b58976d400359131bc1869bf2dc04b3057f399e269
+DIST terminal-table-2.0.0.tar.gz 14286 BLAKE2B aa4e132338a8bbdb8e665584fca947a5b92ee9b8126545b1fffd727d26c7158a9b1cf2959aa917bb93a47e01a4d605ca400d8ddb3be2f73da256ab2f96e91cde SHA512 568542f1fc60cfdb37b14f9d52d6fb6c3ccc36b5c0103c95e3d70fd5e1371c124c97cdea5a4d5a2ec63e34550624b38bd11e0af1073a8eefb3c5fd9eef427576
+DIST terminal-table-3.0.2.tar.gz 25087 BLAKE2B 302623aa95731c242d43726e35fa0998be863546dbded41ed39d43b2ef1ef3895e2896d337df14b52153606b20d01fb6d79a291b2598e533fed30e0ab7db6fbb SHA512 5e8aa375fb1a5d2789ac0a735e5b5420261700b91650658e2b084bc9544cc195a1af329d157626b6aa4e738ad59a860245da15a099940ba68bbe0e937fd2574d
diff --git a/dev-ruby/terminal-table/metadata.xml b/dev-ruby/terminal-table/metadata.xml
new file mode 100644
index 000000000000..def52fd72286
--- /dev/null
+++ b/dev-ruby/terminal-table/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">tj/terminal-table</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/terminal-table/terminal-table-1.8.0-r4.ebuild b/dev-ruby/terminal-table/terminal-table-1.8.0-r4.ebuild
new file mode 100644
index 000000000000..516de897522a
--- /dev/null
+++ b/dev-ruby/terminal-table/terminal-table-1.8.0-r4.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc Todo.rdoc"
+
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple, feature rich ascii table generation library"
+HOMEPAGE="https://github.com/tj/terminal-table"
+SRC_URI="https://github.com/tj/terminal-table/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm64"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/unicode-display_width-1.1.1:1"
+
+ruby_add_bdepend "test? ( dev-ruby/term-ansicolor )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/terminal-table/terminal-table-2.0.0-r1.ebuild b/dev-ruby/terminal-table/terminal-table-2.0.0-r1.ebuild
new file mode 100644
index 000000000000..6ff3e27fedc3
--- /dev/null
+++ b/dev-ruby/terminal-table/terminal-table-2.0.0-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc Todo.rdoc"
+
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple, feature rich ascii table generation library"
+HOMEPAGE="https://github.com/tj/terminal-table"
+SRC_URI="https://github.com/tj/terminal-table/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm64"
+SLOT="2"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/unicode-display_width-1.1.1:1"
+
+ruby_add_bdepend "test? ( dev-ruby/term-ansicolor )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/terminal-table/terminal-table-3.0.2.ebuild b/dev-ruby/terminal-table/terminal-table-3.0.2.ebuild
new file mode 100644
index 000000000000..401d5bdb2050
--- /dev/null
+++ b/dev-ruby/terminal-table/terminal-table-3.0.2.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.md Todo.rdoc"
+
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple, feature rich ascii table generation library"
+HOMEPAGE="https://github.com/tj/terminal-table"
+SRC_URI="https://github.com/tj/terminal-table/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64"
+
+ruby_add_rdepend "|| ( dev-ruby/unicode-display_width:2 >=dev-ruby/unicode-display_width-1.1.1:1 )"
+
+ruby_add_bdepend "test? ( dev-ruby/term-ansicolor )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/terrapin/Manifest b/dev-ruby/terrapin/Manifest
deleted file mode 100644
index d23273fa9739..000000000000
--- a/dev-ruby/terrapin/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST terrapin-0.6.0.gem 17408 BLAKE2B edcbbd409caf0aa373211aa59bd810eb0e6989106140a9bc6f5bbb205d02b18a43ecc8ef21d1f98ca769320d4d6b78ea1281dcaad76d7a6a2535eef5544d19f9 SHA512 e001446e2fb98f31c97b8af3a6596984b30eaa24b493cfcf486caaa388a17c7cf037eb0db5a78ebf0cd45648fa254a29a895be21b576a3d62b4695460d693378
diff --git a/dev-ruby/terrapin/metadata.xml b/dev-ruby/terrapin/metadata.xml
deleted file mode 100644
index 28ab0c15f206..000000000000
--- a/dev-ruby/terrapin/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
-</maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/terrapin/terrapin-0.6.0.ebuild b/dev-ruby/terrapin/terrapin-0.6.0.ebuild
deleted file mode 100644
index 32e3a710060c..000000000000
--- a/dev-ruby/terrapin/terrapin-0.6.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-#RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Run shell commands safely, even with user-supplied values"
-HOMEPAGE="https://github.com/thoughtbot/terrapin"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-# posix-spawn is not a mandatory dependency but recommended in the
-# README.
-ruby_add_rdepend "dev-ruby/climate_control:0 dev-ruby/posix-spawn"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/activesupport-3 <dev-ruby/activesupport-5
- dev-ruby/bourne
- dev-ruby/mocha
- )"
diff --git a/dev-ruby/test-unit-rr/metadata.xml b/dev-ruby/test-unit-rr/metadata.xml
index 29ae378d02c1..3e4f5425dd8f 100644
--- a/dev-ruby/test-unit-rr/metadata.xml
+++ b/dev-ruby/test-unit-rr/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/test-unit-rr/test-unit-rr-1.0.5-r2.ebuild b/dev-ruby/test-unit-rr/test-unit-rr-1.0.5-r2.ebuild
new file mode 100644
index 000000000000..182aac598baa
--- /dev/null
+++ b/dev-ruby/test-unit-rr/test-unit-rr-1.0.5-r2.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="RR adapter for Test::Unit"
+HOMEPAGE="https://github.com/test-unit/test-unit-rr"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv sparc x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/rr-1.1.1 >=dev-ruby/test-unit-2.5.2"
+
+each_ruby_test() {
+ ${RUBY} test/run-test.rb || die
+}
diff --git a/dev-ruby/test-unit-rr/test-unit-rr-1.0.5.ebuild b/dev-ruby/test-unit-rr/test-unit-rr-1.0.5.ebuild
deleted file mode 100644
index 0aa0ae6e37b7..000000000000
--- a/dev-ruby/test-unit-rr/test-unit-rr-1.0.5.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="RR adapter for Test::Unit"
-HOMEPAGE="https://github.com/test-unit/test-unit-rr"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rr-1.1.1 >=dev-ruby/test-unit-2.5.2"
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die
-}
diff --git a/dev-ruby/test-unit-ruby-core/Manifest b/dev-ruby/test-unit-ruby-core/Manifest
new file mode 100644
index 000000000000..1375d5797a0d
--- /dev/null
+++ b/dev-ruby/test-unit-ruby-core/Manifest
@@ -0,0 +1 @@
+DIST test-unit-ruby-core-1.0.5.gem 15872 BLAKE2B a6f20b5696ad61affc8f508eac804d2816910754a4a6f99105bf7b04bedcac6c3931fc83eb0e77497b94610f31c8242c312e66463d2ebe637596c6ac0db099be SHA512 0fe157b49be30788c14c77e5676065ca3e1150f95b1ea4c0f68552ed331127263c996798ca82bb02e1d0d6afe2de9bc186da4cb89fdc922284d17ab77fe623ed
diff --git a/dev-ruby/test-unit-ruby-core/metadata.xml b/dev-ruby/test-unit-ruby-core/metadata.xml
new file mode 100644
index 000000000000..4b7391de962e
--- /dev/null
+++ b/dev-ruby/test-unit-ruby-core/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="rubygems">test-unit</remote-id>
+ <remote-id type="github">test-unit/test-unit</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/test-unit-ruby-core/test-unit-ruby-core-1.0.5.ebuild b/dev-ruby/test-unit-ruby-core/test-unit-ruby-core-1.0.5.ebuild
new file mode 100644
index 000000000000..082bb2ed6247
--- /dev/null
+++ b/dev-ruby/test-unit-ruby-core/test-unit-ruby-core-1.0.5.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Additional test assertions for Ruby standard libraries"
+HOMEPAGE="https://github.com/ruby/test-unit-ruby-core"
+
+LICENSE="|| ( Ruby-BSD BSD-2 ) PSF-2"
+SLOT="2"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
diff --git a/dev-ruby/test-unit/Manifest b/dev-ruby/test-unit/Manifest
index f9c6124e2333..2409fcc7cada 100644
--- a/dev-ruby/test-unit/Manifest
+++ b/dev-ruby/test-unit/Manifest
@@ -1,4 +1,3 @@
-DIST test-unit-3.2.7.gem 129024 BLAKE2B 31565510d5a16cf75706810a551dca40129edb0fc1528b9f55c862b23db1986640f42a72432028f47d052bb1aab3600c90c4ed19388ba11f2221a5d1e0619aaf SHA512 a55a5abee0d602b23af34ee8a9a7e26effc95ce9dd8ce98da28c49caf883d47c86bd2d0979176b0d1e239861ea73a4c5a9a280a1ceda7fbfbbd98c888ca6b01e
-DIST test-unit-3.3.1.gem 132096 BLAKE2B ac1220ed2dd762c1bd37b1e10dc3cb7047b6dafbd24812126f22d6fd5ce8ce5353f93048d85a45e38de031380e6b506e2e626778c925e0dad54344b53b255afc SHA512 4275346f7e4c398b0999634636b3386f054f5c7018f06ddf53b488ebeb6eee8aed7d59e84993a32163d79463601a4b65d3e4115612e0a88c654da342a548d44a
-DIST test-unit-3.3.2.gem 133120 BLAKE2B a1945604327935b784b2286c4a714561a05f2db766723cdcad47a18b3be34ff803d4a257e808d48ef650ab2cdc97b7b1e24e035e356ddb0a4f658de289a327ab SHA512 523b0902133a67949a3e88697ee8d9919bc4a1da3844acd4289ccf202b8037cc255f299b6b66d8b3c90d23d5ac4d75453c029914ec45900bb041a3fd7fbbb8c7
-DIST test-unit-3.3.3.gem 133120 BLAKE2B 37fc200b121e84046d1ee483277fc1274dc3bbcdce95ecb5c88a71a77ca9c164faa8364f68d777896bceb3dd1857fc7146ca464f039c0f30ce5baa466f38ede5 SHA512 ddb40e2ec1f15405cc396a9008912fd41ecdf67a0c02bc7ad4bf7725ee68cdaeec6f171f1786469ed55c1154ce094c5f0dd75103c1989a694bff412c9cc86934
+DIST test-unit-3.5.8.tar.gz 165216 BLAKE2B 1a039931d87ce3ad4afecd4c1105bb6197acc05be3b9091ca6361689f42d725d1333553b7527bc5cb46306acd3ac4df20ed809e0aca9928a760fc0d849a51e2b SHA512 ab7f492dd5f4606cd91a32240aa3ef6dffec48281b65d960bf87d0b2a9a865d6273bb4cc6896397136c5b313669f615fe6f5a83a6a4ab241013eaa51cf5e3341
+DIST test-unit-3.6.1.tar.gz 165438 BLAKE2B 5f5b912eec04ddeed6501c873850df3b5e3bd4450994581055634ba9923fa54c9c4731593fd24bc08caf1ce2e4f8181a39221bbfcc2f80359395b5fd30df80c9 SHA512 0788871faeb9d9c9e2a07cf4cae7b63d9520ff1e1be831889861c9d76b10bd6f59a60c0417c7b5ae97856bfd1c75cffd4e1c9a006f7a0c651432196733aa0f08
+DIST test-unit-3.6.2.tar.gz 165842 BLAKE2B 0eeacf817bf4b0103ce9c6b7097401a24f9788a2bea6d3ac0feed3236575556fafd778b565a63510aeb4fc5cede18f72fc0ef42249c3a6fb3a86a199d5b0a0df SHA512 d523412e080ea0ce1ac968c64279fbdc90afaed3b2052f357993583ed89a77d9977022aac74f3170bfc3cb7e716f1665a9705e0ed95a8db5f205f1b984f52d94
diff --git a/dev-ruby/test-unit/files/testrb b/dev-ruby/test-unit/files/testrb
deleted file mode 100644
index f87eabcb2bef..000000000000
--- a/dev-ruby/test-unit/files/testrb
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/usr/bin/env ruby
-gem 'test-unit', '~> 2.5'
-require 'test/unit'
-(r = Test::Unit::AutoRunner.new(true)).process_args(ARGV) or
- abort r.options.banner + " tests..."
-exit r.run
diff --git a/dev-ruby/test-unit/metadata.xml b/dev-ruby/test-unit/metadata.xml
index 9f7e0f211d7c..4b7391de962e 100644
--- a/dev-ruby/test-unit/metadata.xml
+++ b/dev-ruby/test-unit/metadata.xml
@@ -1,15 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
- <longdescription lang="en">
- Improved version of the Test::Unit framework as shipped by Ruby
- 1.8, compatible with Ruby 1.9.
- </longdescription>
<upstream>
<remote-id type="rubygems">test-unit</remote-id>
+ <remote-id type="github">test-unit/test-unit</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/test-unit/test-unit-3.2.7.ebuild b/dev-ruby/test-unit/test-unit-3.2.7.ebuild
deleted file mode 100644
index 18098e79954f..000000000000
--- a/dev-ruby/test-unit/test-unit-3.2.7.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md doc-install/text/*.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An xUnit family unit testing framework for Ruby"
-HOMEPAGE="https://rubygems.org/gems/test-unit"
-
-LICENSE="|| ( Ruby GPL-2 ) PSF-2"
-SLOT="2"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc test"
-
-ruby_add_rdepend "dev-ruby/power_assert"
-
-all_ruby_prepare() {
- mv doc doc-install || die "moving doc directory out of the way failed"
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die "testsuite failed"
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- newbin "${FILESDIR}"/testrb-3 testrb-2
-}
diff --git a/dev-ruby/test-unit/test-unit-3.3.1.ebuild b/dev-ruby/test-unit/test-unit-3.3.1.ebuild
deleted file mode 100644
index da020d3b86e0..000000000000
--- a/dev-ruby/test-unit/test-unit-3.3.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md doc-install/text/*.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An xUnit family unit testing framework for Ruby"
-HOMEPAGE="https://rubygems.org/gems/test-unit"
-
-LICENSE="|| ( Ruby GPL-2 ) PSF-2"
-SLOT="2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc test"
-
-ruby_add_rdepend "dev-ruby/power_assert"
-
-all_ruby_prepare() {
- mv doc doc-install || die "moving doc directory out of the way failed"
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die "testsuite failed"
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- newbin "${FILESDIR}"/testrb-3 testrb-2
-}
diff --git a/dev-ruby/test-unit/test-unit-3.3.2.ebuild b/dev-ruby/test-unit/test-unit-3.3.2.ebuild
deleted file mode 100644
index 11b3090e469e..000000000000
--- a/dev-ruby/test-unit/test-unit-3.3.2.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md doc-install/text/*.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An xUnit family unit testing framework for Ruby"
-HOMEPAGE="https://rubygems.org/gems/test-unit"
-
-LICENSE="|| ( Ruby GPL-2 ) PSF-2"
-SLOT="2"
-KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc test"
-
-ruby_add_rdepend "dev-ruby/power_assert"
-
-all_ruby_prepare() {
- mv doc doc-install || die "moving doc directory out of the way failed"
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die "testsuite failed"
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- newbin "${FILESDIR}"/testrb-3 testrb-2
-}
diff --git a/dev-ruby/test-unit/test-unit-3.3.3.ebuild b/dev-ruby/test-unit/test-unit-3.3.3.ebuild
deleted file mode 100644
index 45fa46d7a4a2..000000000000
--- a/dev-ruby/test-unit/test-unit-3.3.3.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md doc-install/text/*.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="An xUnit family unit testing framework for Ruby"
-HOMEPAGE="https://rubygems.org/gems/test-unit"
-
-LICENSE="|| ( Ruby GPL-2 ) PSF-2"
-SLOT="2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc test"
-
-ruby_add_rdepend "dev-ruby/power_assert"
-
-all_ruby_prepare() {
- mv doc doc-install || die "moving doc directory out of the way failed"
-}
-
-each_ruby_test() {
- ${RUBY} test/run-test.rb || die "testsuite failed"
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- newbin "${FILESDIR}"/testrb-3 testrb-2
-}
diff --git a/dev-ruby/test-unit/test-unit-3.5.8.ebuild b/dev-ruby/test-unit/test-unit-3.5.8.ebuild
new file mode 100644
index 000000000000..8878b923983d
--- /dev/null
+++ b/dev-ruby/test-unit/test-unit-3.5.8.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md doc-install/text/*.md"
+
+RUBY_FAKEGEM_GEMSPEC="test-unit.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An xUnit family unit testing framework for Ruby"
+HOMEPAGE="https://rubygems.org/gems/test-unit"
+SRC_URI="https://github.com/test-unit/test-unit/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( Ruby-BSD BSD-2 ) PSF-2"
+SLOT="2"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend "dev-ruby/power_assert"
+
+all_ruby_prepare() {
+ mv doc doc-install || die "moving doc directory out of the way failed"
+}
+
+each_ruby_test() {
+ ${RUBY} test/run-test.rb || die "testsuite failed"
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ newbin "${FILESDIR}"/testrb-3 testrb-2
+}
diff --git a/dev-ruby/test-unit/test-unit-3.6.1.ebuild b/dev-ruby/test-unit/test-unit-3.6.1.ebuild
new file mode 100644
index 000000000000..1684a7109808
--- /dev/null
+++ b/dev-ruby/test-unit/test-unit-3.6.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md doc-install/text/*.md"
+
+RUBY_FAKEGEM_GEMSPEC="test-unit.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An xUnit family unit testing framework for Ruby"
+HOMEPAGE="https://rubygems.org/gems/test-unit"
+SRC_URI="https://github.com/test-unit/test-unit/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( Ruby-BSD BSD-2 ) PSF-2"
+SLOT="2"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend "dev-ruby/power_assert"
+
+all_ruby_prepare() {
+ mv doc doc-install || die "moving doc directory out of the way failed"
+}
+
+each_ruby_test() {
+ ${RUBY} test/run-test.rb || die "testsuite failed"
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ newbin "${FILESDIR}"/testrb-3 testrb-2
+}
diff --git a/dev-ruby/test-unit/test-unit-3.6.2.ebuild b/dev-ruby/test-unit/test-unit-3.6.2.ebuild
new file mode 100644
index 000000000000..69fcabebe695
--- /dev/null
+++ b/dev-ruby/test-unit/test-unit-3.6.2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md doc-install/text/*.md"
+
+RUBY_FAKEGEM_GEMSPEC="test-unit.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An xUnit family unit testing framework for Ruby"
+HOMEPAGE="https://rubygems.org/gems/test-unit"
+SRC_URI="https://github.com/test-unit/test-unit/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( Ruby-BSD BSD-2 ) PSF-2"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+
+ruby_add_rdepend "dev-ruby/power_assert"
+
+all_ruby_prepare() {
+ mv doc doc-install || die "moving doc directory out of the way failed"
+}
+
+each_ruby_test() {
+ ${RUBY} test/run-test.rb || die "testsuite failed"
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ newbin "${FILESDIR}"/testrb-3 testrb-2
+}
diff --git a/dev-ruby/test_construct/Manifest b/dev-ruby/test_construct/Manifest
index 4b58575f6130..63f21554af6b 100644
--- a/dev-ruby/test_construct/Manifest
+++ b/dev-ruby/test_construct/Manifest
@@ -1,2 +1 @@
-DIST test_construct-2.0.1.gem 13312 BLAKE2B cda8bec1e1fe343ae506c73bf480a982fdd1224da1e77ab19827a3b76dba57294397d811040448cef6956c8492c9c5cb618d204834d31b54e8619b3d224da20c SHA512 c9898beb04d23974dc5b66a9d7bb4a77cd040cc63b724108c4fc4b81f0680d23a9e09b96110c1b5458107d0c2c8714cbed8b2e81611eef8ca7fab92b31014e98
DIST test_construct-2.0.2.gem 13312 BLAKE2B e1a5068e8133f739dfc407e943b0486c0c2bb2a8f18943a23b366205b206a56b792630daad7a92a021ea367d490b117aec1313faa0e5360bf6b984df3b82c16c SHA512 d73e2daf5c5974c79aedfcd7e1cd6681a3f1f6fe3f2c68bcde26690a18be920ea53b648407e4ee33444364b2a02f1517362c876e703abad02fc528a47de092ff
diff --git a/dev-ruby/test_construct/metadata.xml b/dev-ruby/test_construct/metadata.xml
index b6b0644c16c4..fece00acf18f 100644
--- a/dev-ruby/test_construct/metadata.xml
+++ b/dev-ruby/test_construct/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/test_construct/test_construct-2.0.1-r1.ebuild b/dev-ruby/test_construct/test_construct-2.0.1-r1.ebuild
deleted file mode 100644
index a4233d5a6d9a..000000000000
--- a/dev-ruby/test_construct/test_construct-2.0.1-r1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Creates temporary files and directories for testing"
-HOMEPAGE="https://github.com/bhb/test_construct"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? (
- >=dev-ruby/minitest-5.0.8
- >=dev-ruby/mocha-0.14.0
- dev-ruby/rspec:3
-)"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/test_construct/test_construct-2.0.2-r1.ebuild b/dev-ruby/test_construct/test_construct-2.0.2-r1.ebuild
new file mode 100644
index 000000000000..ca318ac1d14f
--- /dev/null
+++ b/dev-ruby/test_construct/test_construct-2.0.2-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Creates temporary files and directories for testing"
+HOMEPAGE="https://github.com/bhb/test_construct"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~sparc x86"
+IUSE=""
+
+ruby_add_bdepend "test? (
+ >=dev-ruby/minitest-5.0.8
+ dev-ruby/mocha:2
+ dev-ruby/rspec:3
+)"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+
+ sed -i -e '/mocha/ s/setup/minitest/' test/test_helper.rb || die
+}
diff --git a/dev-ruby/test_construct/test_construct-2.0.2.ebuild b/dev-ruby/test_construct/test_construct-2.0.2.ebuild
deleted file mode 100644
index dd4b939f5a67..000000000000
--- a/dev-ruby/test_construct/test_construct-2.0.2.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Creates temporary files and directories for testing"
-HOMEPAGE="https://github.com/bhb/test_construct"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? (
- >=dev-ruby/minitest-5.0.8
- >=dev-ruby/mocha-0.14.0
- dev-ruby/rspec:3
-)"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/test_declarative/files/test_declarative-0.0.6-backport-pr24.patch b/dev-ruby/test_declarative/files/test_declarative-0.0.6-backport-pr24.patch
new file mode 100644
index 000000000000..6220353790ec
--- /dev/null
+++ b/dev-ruby/test_declarative/files/test_declarative-0.0.6-backport-pr24.patch
@@ -0,0 +1,29 @@
+https://bugs.gentoo.org/912063
+https://github.com/svenfuchs/test_declarative/pull/24
+
+From ef9561b703990a846aa49c0f4d164009b355f0cd Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch@redhat.com>
+Date: Tue, 22 Aug 2023 16:32:34 +0200
+Subject: [PATCH] Use Minitest::Test as a test runner
+
+The Minitest::Unit is deprecated since Minitest 5.0 and it was recenlty
+put behind environment variable:
+
+https://github.com/minitest/minitest/commit/a2c6c18570f6f0a1bf6af70fe3b6d9599a13fdd6
+---
+ test/test_declarative_test.rb | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/test/test_declarative_test.rb b/test/test_declarative_test.rb
+index 6ef4220..a3ab0ae 100644
+--- a/test/test_declarative_test.rb
++++ b/test/test_declarative_test.rb
+@@ -13,7 +13,7 @@ def gemfile_name
+ # Minitest >= 5
+ require 'minitest/autorun'
+ TEST_CASE = Minitest::Test
+- RUNNER = Minitest::Unit
++ RUNNER = Minitest::Test
+ when 'Gemfile.minitest4'
+ # Minitest < 5
+ require 'minitest/autorun'
diff --git a/dev-ruby/test_declarative/metadata.xml b/dev-ruby/test_declarative/metadata.xml
index 4f8a78fee165..119e33b9a353 100644
--- a/dev-ruby/test_declarative/metadata.xml
+++ b/dev-ruby/test_declarative/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/test_declarative/test_declarative-0.0.6-r1.ebuild b/dev-ruby/test_declarative/test_declarative-0.0.6-r1.ebuild
new file mode 100644
index 000000000000..fddfc598d4d5
--- /dev/null
+++ b/dev-ruby/test_declarative/test_declarative-0.0.6-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="test_declarative.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simply adds a declarative test method syntax to test/unit"
+HOMEPAGE="https://github.com/svenfuchs/test_declarative"
+SRC_URI="https://github.com/svenfuchs/test_declarative/archive/v${PV} -> ${P}.tgz"
+RUBY_S="svenfuchs-test_declarative-*"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+PATCHES=( "${FILESDIR}/${PN}-0.0.6-backport-pr24.patch" )
+
+ruby_add_bdepend "test? ( dev-ruby/bundler >=dev-ruby/minitest-5.10:5 )"
+
+all_ruby_prepare() {
+ sed -i -e '/rake/ s/~> 12.0.0/>= 10/ ; /minitest/ s/5.10.1/5.10/' Gemfile || die
+
+ sed -i -e 's/git ls-files --/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ # There are other gemfiles but their setup seems broken atm.
+ for gemfile in Gemfile ; do
+ einfo "Running tests with ${gemfile}"
+ BUNDLE_GEMFILE=${gemfile} ${RUBY} -S bundle exec rake test || die
+ done
+}
diff --git a/dev-ruby/test_declarative/test_declarative-0.0.6.ebuild b/dev-ruby/test_declarative/test_declarative-0.0.6.ebuild
deleted file mode 100644
index 77ad94130e8e..000000000000
--- a/dev-ruby/test_declarative/test_declarative-0.0.6.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST=""
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Simply adds a declarative test method syntax to test/unit"
-HOMEPAGE="https://github.com/svenfuchs/test_declarative"
-SRC_URI="https://github.com/svenfuchs/test_declarative/tarball/v${PV} -> ${P}.tgz"
-RUBY_S="svenfuchs-test_declarative-*"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/bundler >=dev-ruby/minitest-5.10:5 )"
-
-all_ruby_prepare() {
- sed -i -e '/rake/ s/~> 12.0.0/>= 10/ ; /minitest/ s/5.10.1/5.10/' Gemfile || die
-}
-
-each_ruby_test() {
- # There are other gemfiles but their setup seems broken atm.
- for gemfile in Gemfile ; do
- einfo "Running tests with ${gemfile}"
- BUNDLE_GEMFILE=${gemfile} ${RUBY} -S bundle exec rake test || die
- done
-}
diff --git a/dev-ruby/text-hyphen/Manifest b/dev-ruby/text-hyphen/Manifest
index 60c5601b1b0d..4e6b57087cc2 100644
--- a/dev-ruby/text-hyphen/Manifest
+++ b/dev-ruby/text-hyphen/Manifest
@@ -1 +1 @@
-DIST text-hyphen-1.4.1.gem 751616 BLAKE2B 4a6d6a9b430c2dee2a486dde9f49405b98bc32fe8f96448c0cbe8d55f416c4e4e9bef5ae3adb57576dee6fa285680fc57b958cb279786872c8d95282cbf72e73 SHA512 4a6667aff01e56afce79302f46d0afdbf9c965ad80dbf9a7266a213143e6b6bc2cb00092d26900286bf72a700e47be6b0860cfdf87fa2856477db02261f9ef3d
+DIST text-hyphen-1.5.0.gem 836096 BLAKE2B 702363b99c33e614dab5b2509d0b77e5f37ca2f401e2c13fab466aec5bbc4f24247fe306ed6f7ed16c3e3b8cad35ca5948725175759827ec9a1b45642a7399ea SHA512 7390b057f0fe4918aa98811adc3922bf6b959aedbf327a035324fc92935675f8016574519d0ff34e11c24bc4b8fe0d110b296344ed8a7cfae018ca5a7d6ce5c9
diff --git a/dev-ruby/text-hyphen/metadata.xml b/dev-ruby/text-hyphen/metadata.xml
index eb1e47f2edfb..daac6fdb7252 100644
--- a/dev-ruby/text-hyphen/metadata.xml
+++ b/dev-ruby/text-hyphen/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/text-hyphen/text-hyphen-1.4.1-r2.ebuild b/dev-ruby/text-hyphen/text-hyphen-1.4.1-r2.ebuild
deleted file mode 100644
index b62c8a1d7e80..000000000000
--- a/dev-ruby/text-hyphen/text-hyphen-1.4.1-r2.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc History.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Hyphenates words according to the rules of the language the word is written in"
-HOMEPAGE="http://rubyforge.org/projects/text-format"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 hppa ia64 ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/hoe-2.8.0
- dev-ruby/test-unit:2
- )"
-
-all_ruby_prepare() {
- sed -i -e '2igem "test-unit", ">= 2.0"' test/test_*.rb || die
-}
diff --git a/dev-ruby/text-hyphen/text-hyphen-1.5.0.ebuild b/dev-ruby/text-hyphen/text-hyphen-1.5.0.ebuild
new file mode 100644
index 000000000000..4062a5f18f62
--- /dev/null
+++ b/dev-ruby/text-hyphen/text-hyphen-1.5.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md History.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Hyphenates words according to the rules of the language the word is written in"
+HOMEPAGE="https://rubygems.org/gems/text-hyphen"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~hppa ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/hoe-2.8.0
+ dev-ruby/test-unit:2
+ )"
+
+all_ruby_prepare() {
+ sed -i -e '2igem "test-unit", ">= 2.0"' test/test_*.rb || die
+}
diff --git a/dev-ruby/text/metadata.xml b/dev-ruby/text/metadata.xml
index 99e22457d8dd..4e3ab446f2d1 100644
--- a/dev-ruby/text/metadata.xml
+++ b/dev-ruby/text/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/text/text-1.3.1-r1.ebuild b/dev-ruby/text/text-1.3.1-r1.ebuild
new file mode 100644
index 000000000000..fcf9354f048e
--- /dev/null
+++ b/dev-ruby/text/text-1.3.1-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A collection of text algorithms"
+HOMEPAGE="https://github.com/threedaymonk/text"
+
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv sparc x86"
+IUSE=""
diff --git a/dev-ruby/text/text-1.3.1.ebuild b/dev-ruby/text/text-1.3.1.ebuild
deleted file mode 100644
index dc2d74667733..000000000000
--- a/dev-ruby/text/text-1.3.1.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A collection of text algorithms"
-HOMEPAGE="https://github.com/threedaymonk/text"
-
-LICENSE="MIT"
-
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86"
-IUSE=""
diff --git a/dev-ruby/textpow/Manifest b/dev-ruby/textpow/Manifest
deleted file mode 100644
index e18ab07a486c..000000000000
--- a/dev-ruby/textpow/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST textpow-1.4.0.tar.gz 386724 BLAKE2B d2fb051810cdbe26caafae62d402ba257a644ceeb5975b1bce8858e8359026bbeac7795b264c84462cc6bd02b5a110eba70338d955ba793cec8abdf194089217 SHA512 134b38e277118cf626e3e3643e447d7c7914dc89dba527682c4d6318a0d3b96edb81a68ac5e039158058de371ab9a326088cb119069c55032de7c2f1dadffdcc
diff --git a/dev-ruby/textpow/metadata.xml b/dev-ruby/textpow/metadata.xml
deleted file mode 100644
index 4778a1d17ac4..000000000000
--- a/dev-ruby/textpow/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">grosser/textpow</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/textpow/textpow-1.4.0.ebuild b/dev-ruby/textpow/textpow-1.4.0.ebuild
deleted file mode 100644
index a7207ddb80a6..000000000000
--- a/dev-ruby/textpow/textpow-1.4.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-SRC_URI="https://github.com/grosser/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-DESCRIPTION="A library to parse and process Textmate bundles"
-HOMEPAGE="http://textpow.rubyforge.org/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/plist-3.0.1"
-
-all_ruby_prepare() {
- sed -i -e '/git ls-files/d' textpow.gemspec || die
-}
diff --git a/dev-ruby/thor/Manifest b/dev-ruby/thor/Manifest
index 2ca05151556e..07df0399921a 100644
--- a/dev-ruby/thor/Manifest
+++ b/dev-ruby/thor/Manifest
@@ -1 +1,3 @@
-DIST thor-git-0.20.3.tgz 94786 BLAKE2B a27ef27d9d375c1f5ab1b065f6ee5b635dab3b43cac7915ae24771e7a9e24189b8c3df8936bf6ad333f0660e4e36ff73372746afc227972f1745dc993b90c85f SHA512 368cedd9584fcdecf8f5feb9b727aa283b37747e8200f8629aaa762f8e3a59dafe6ee1e7c60ef2b43b2a16b319842b10d0f3face12ba8dded4b6211640db7f44
+DIST thor-git-1.2.2.tgz 98213 BLAKE2B e71ee51eb5c982c585cf9bd9dffda8933975c9d0df8096015d125eefd0597a653887db1acfc132ce1f5a2e8ce4ab71c790a6c0bf39edd7c5e4c85a75de963944 SHA512 2c8af5d59f33691af63e813ba8dfe3392c279593f3e3ccf0ab2d6eb2ccce4220d93b7cb3413ad853e4bba14f4e2182c54caaf4944627cbcbefa31cdc0fabefc7
+DIST thor-git-1.3.0.tgz 102884 BLAKE2B f3f5a27ccfdbe7de6bbec71e1ae36e522d49ceec223e1d86a028898403e4e56722703dc847b4a850c46301fdeea429e70e73b7888089c35138d455c094678c02 SHA512 f561f9d05264cf0d2cd836dfb689539b645fa02a39ea8d10923001bb3d510ad6b4bcbb6551739d453e7d9ac05562bc0f454b581926becbc784c0604c5449c27e
+DIST thor-git-1.3.1.tgz 103008 BLAKE2B 790f83c74bcaff08c65934e1fdf14d41e9d7bf5f51d94419513b45c3263beeae0fd239d848206e7f71a59dceb2ad9719131bc81baf23ac42e797cb430186490d SHA512 5ecfa8c7cdf3c10006b9f50de633b6f07c7ed9a3ad3807cc6d07adbb38b9d64fd0d17aea06a5e8e928ea4abf6cf2042af55e1e87416e7c0ce5ab0a721f546a04
diff --git a/dev-ruby/thor/files/thor-1.2.2-no-coverage.patch b/dev-ruby/thor/files/thor-1.2.2-no-coverage.patch
new file mode 100644
index 000000000000..f57cbfeb63f5
--- /dev/null
+++ b/dev-ruby/thor/files/thor-1.2.2-no-coverage.patch
@@ -0,0 +1,29 @@
+--- a/spec/helper.rb
++++ b/spec/helper.rb
+@@ -1,17 +1,5 @@
+ $TESTING = true
+
+-if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new("2.6.0")
+- require "simplecov"
+- require "coveralls"
+-
+- SimpleCov.formatters = [SimpleCov::Formatter::HTMLFormatter, Coveralls::SimpleCov::Formatter]
+-
+- SimpleCov.start do
+- add_filter "/spec"
+- minimum_coverage(90)
+- end
+-end
+-
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
+ require "thor"
+ require "thor/group"
+@@ -22,8 +10,6 @@ require "rspec"
+ require "diff/lcs" # You need diff/lcs installed to run specs (but not to run Thor).
+ require "webmock/rspec"
+
+-WebMock.disable_net_connect!(:allow => "coveralls.io")
+-
+ # Set shell to basic
+ ENV["THOR_COLUMNS"] = "10000"
+ $0 = "thor"
diff --git a/dev-ruby/thor/metadata.xml b/dev-ruby/thor/metadata.xml
index 5a3ee8ed7504..c7f8669f3557 100644
--- a/dev-ruby/thor/metadata.xml
+++ b/dev-ruby/thor/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
@@ -13,6 +13,7 @@
should be familiar to most Rake users.
</longdescription>
<upstream>
- <remote-id type="github">erikhuda/thor</remote-id>
+ <remote-id type="github">rails/thor</remote-id>
+ <remote-id type="rubygems">thor</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/thor/thor-0.20.3.ebuild b/dev-ruby/thor/thor-0.20.3.ebuild
deleted file mode 100644
index 8f4a9e1875a4..000000000000
--- a/dev-ruby/thor/thor-0.20.3.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_DOCDIR="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-RUBY_FAKEGEM_BINWRAP="thor"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A scripting framework that replaces rake and sake"
-HOMEPAGE="http://whatisthor.com/"
-
-SRC_URI="https://github.com/erikhuda/${PN}/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
-IUSE="doc"
-
-USE_RUBY="ruby23 ruby24 ruby25" ruby_add_bdepend "
- test? (
- dev-ruby/childlabor
- dev-ruby/webmock
- )"
-
-all_ruby_prepare() {
- # Remove rspec default options (as we might not have the last
- # rspec).
- rm .rspec || die
-
- # Remove Bundler
- #rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Thorfile || die
-
- # Remove mandatory coverage collection using simplecov which is not
- # packaged.
- sed -i -e '/require .simplecov/,/^ end/ s:^:#:' spec/helper.rb || die
-
- # Avoid a spec that requires UTF-8 support, so LANG=C still works,
- # bug 430402
- sed -i -e '/uses maximum terminal width/,/end/ s:^:#:' spec/shell/basic_spec.rb || die
-}
-
-each_ruby_test() {
- case ${RUBY} in
- *ruby26)
- einfo "Skipping tests due to circular dependencies"
- ;;
- *)
- RSPEC_VERSION=3 ruby-ng_rspec spec || die
- ;;
- esac
-}
diff --git a/dev-ruby/thor/thor-1.2.2.ebuild b/dev-ruby/thor/thor-1.2.2.ebuild
new file mode 100644
index 000000000000..ee6a22ad47d1
--- /dev/null
+++ b/dev-ruby/thor/thor-1.2.2.ebuild
@@ -0,0 +1,78 @@
+# Copyright 2000-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_DOCDIR="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_BINWRAP="thor"
+
+RUBY_FAKEGEM_GEMSPEC="thor.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple and efficient tool for building self-documenting command line utilities"
+HOMEPAGE="http://whatisthor.com/"
+SRC_URI="https://github.com/erikhuda/${PN}/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux"
+IUSE="doc"
+
+# For initial target porting (new rubies), we can make these test deps
+# conditional with:
+# 1. USE_RUBY="<old rubies>" ruby_add_bdepend ...
+# 2. skip logic in each_ruby_test
+USE_RUBY="ruby30 ruby31 ruby32" ruby_add_bdepend "
+ test? (
+ dev-ruby/childlabor
+ dev-ruby/webmock
+ )"
+
+RDEPEND+=" !<dev-ruby/thor-0.20.3-r1:0"
+
+PATCHES=(
+ "${FILESDIR}"/thor-1.2.2-no-coverage.patch
+)
+
+all_ruby_prepare() {
+ # Remove rspec default options (as we might not have the last
+ # rspec).
+ rm .rspec || die
+
+ # Remove Bundler
+ #rm Gemfile || die
+ sed -i -e '/[Bb]undler/d' Thorfile || die
+
+ # Remove mandatory coverage collection using simplecov which is not
+ # packaged.
+ #sed -i -e '/require "simplecov"/,/^end/ s:^:#:' spec/helper.rb || die
+
+ # Avoid a spec that requires UTF-8 support, so LANG=C still works,
+ # bug 430402
+ #sed -i -e '/uses maximum terminal width/,/end/ s:^:#:' spec/shell/basic_spec.rb || die
+
+ # Avoid specs depending on git, bug 724058
+ rm -f spec/quality_spec.rb || die
+
+ # Avoid currently broken readline specs (already fixed upstream)
+ rm -f spec/line_editor/readline_spec.rb spec/line_editor_spec.rb || die
+
+ # Avoid spec failing on whitespace difference in error message
+ sed -i -e '/raises an error for unknown switches/askip "whitespace differences"' spec/parser/options_spec.rb || die
+}
+
+each_ruby_test() {
+ case ${RUBY} in
+ *ruby33)
+ einfo "Skipping tests due to circular dependencies"
+ ;;
+ *)
+ RSPEC_VERSION=3 ruby-ng_rspec spec || die
+ ;;
+ esac
+}
diff --git a/dev-ruby/thor/thor-1.3.0.ebuild b/dev-ruby/thor/thor-1.3.0.ebuild
new file mode 100644
index 000000000000..6ce820d5822d
--- /dev/null
+++ b/dev-ruby/thor/thor-1.3.0.ebuild
@@ -0,0 +1,72 @@
+# Copyright 2000-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_DOCDIR="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_BINWRAP="thor"
+
+RUBY_FAKEGEM_GEMSPEC="thor.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple and efficient tool for building self-documenting command line utilities"
+HOMEPAGE="http://whatisthor.com/"
+SRC_URI="https://github.com/rails/${PN}/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux"
+IUSE="doc"
+
+# For initial target porting (new rubies), we can make these test deps
+# conditional with:
+# 1. USE_RUBY="<old rubies>" ruby_add_bdepend ...
+# 2. skip logic in each_ruby_test
+USE_RUBY="ruby31 ruby32" ruby_add_bdepend "
+ test? (
+ dev-ruby/childlabor
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove rspec default options (as we might not have the last
+ # rspec).
+ rm .rspec || die
+
+ # Remove Bundler
+ #rm Gemfile || die
+ sed -i -e '/[Bb]undler/d' Thorfile || die
+
+ # Remove mandatory coverage collection using simplecov which is not
+ # packaged.
+ sed -i -e '/require "simplecov"/,/^end/ s:^:#:' spec/helper.rb || die
+
+ # Avoid a spec that requires UTF-8 support, so LANG=C still works,
+ # bug 430402
+ #sed -i -e '/uses maximum terminal width/,/end/ s:^:#:' spec/shell/basic_spec.rb || die
+
+ # Avoid specs depending on git, bug 724058
+ rm -f spec/quality_spec.rb || die
+
+ # Avoid currently broken readline specs (already fixed upstream)
+ rm -f spec/line_editor/readline_spec.rb spec/line_editor_spec.rb || die
+
+ # Avoid spec failing on whitespace difference in error message
+ sed -i -e '/raises an error for unknown switches/askip "whitespace differences"' spec/parser/options_spec.rb || die
+}
+
+each_ruby_test() {
+ case ${RUBY} in
+ *ruby33)
+ einfo "Skipping tests due to circular dependencies"
+ ;;
+ *)
+ RSPEC_VERSION=3 ruby-ng_rspec spec || die
+ ;;
+ esac
+}
diff --git a/dev-ruby/thor/thor-1.3.1.ebuild b/dev-ruby/thor/thor-1.3.1.ebuild
new file mode 100644
index 000000000000..6ce820d5822d
--- /dev/null
+++ b/dev-ruby/thor/thor-1.3.1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 2000-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_DOCDIR="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_BINWRAP="thor"
+
+RUBY_FAKEGEM_GEMSPEC="thor.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple and efficient tool for building self-documenting command line utilities"
+HOMEPAGE="http://whatisthor.com/"
+SRC_URI="https://github.com/rails/${PN}/archive/v${PV}.tar.gz -> ${PN}-git-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux"
+IUSE="doc"
+
+# For initial target porting (new rubies), we can make these test deps
+# conditional with:
+# 1. USE_RUBY="<old rubies>" ruby_add_bdepend ...
+# 2. skip logic in each_ruby_test
+USE_RUBY="ruby31 ruby32" ruby_add_bdepend "
+ test? (
+ dev-ruby/childlabor
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove rspec default options (as we might not have the last
+ # rspec).
+ rm .rspec || die
+
+ # Remove Bundler
+ #rm Gemfile || die
+ sed -i -e '/[Bb]undler/d' Thorfile || die
+
+ # Remove mandatory coverage collection using simplecov which is not
+ # packaged.
+ sed -i -e '/require "simplecov"/,/^end/ s:^:#:' spec/helper.rb || die
+
+ # Avoid a spec that requires UTF-8 support, so LANG=C still works,
+ # bug 430402
+ #sed -i -e '/uses maximum terminal width/,/end/ s:^:#:' spec/shell/basic_spec.rb || die
+
+ # Avoid specs depending on git, bug 724058
+ rm -f spec/quality_spec.rb || die
+
+ # Avoid currently broken readline specs (already fixed upstream)
+ rm -f spec/line_editor/readline_spec.rb spec/line_editor_spec.rb || die
+
+ # Avoid spec failing on whitespace difference in error message
+ sed -i -e '/raises an error for unknown switches/askip "whitespace differences"' spec/parser/options_spec.rb || die
+}
+
+each_ruby_test() {
+ case ${RUBY} in
+ *ruby33)
+ einfo "Skipping tests due to circular dependencies"
+ ;;
+ *)
+ RSPEC_VERSION=3 ruby-ng_rspec spec || die
+ ;;
+ esac
+}
diff --git a/dev-ruby/thread_order/Manifest b/dev-ruby/thread_order/Manifest
index 5ff582ab8d47..b67dc936fb7c 100644
--- a/dev-ruby/thread_order/Manifest
+++ b/dev-ruby/thread_order/Manifest
@@ -1,2 +1 @@
-DIST thread_order-1.1.0.gem 10752 BLAKE2B ff212d2a2b441f4100980ff0a02c444230cd88a1b0ca22b358b882248f8fed9a25a7d074523ef21247bcab6a89e352831aa4e742f9d4f801833bbe0a2622d6f5 SHA512 e460d23fb33e8254c389d94ae17c4c2bba8f9aeeb7987d479f31c3e334a7e87b919f3f74abd51181072c7eeb48ec2f1d222e2c1a4025f2d7a05016ac93ca80c0
DIST thread_order-1.1.1.gem 10752 BLAKE2B 2d4677fa1f58cad02697d7946ec57080622deea6853b24d176cd3d77d857275d0f7b97a8701620e4afc7c4658de51a889b72fd7755c8edae03e00bf9b9b560ab SHA512 6c6ab86f7d0472d503107a7c58f84f24948e9418b00ad0076be40ac667f97f1cac78b1cc23692e73e37e2b3ebe1e2ea96c1b95c08d97984944860522d278ef25
diff --git a/dev-ruby/thread_order/metadata.xml b/dev-ruby/thread_order/metadata.xml
index 0190eddb8966..39a3a93f70ce 100644
--- a/dev-ruby/thread_order/metadata.xml
+++ b/dev-ruby/thread_order/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/thread_order/thread_order-1.1.0.ebuild b/dev-ruby/thread_order/thread_order-1.1.0.ebuild
deleted file mode 100644
index 5575df3e8109..000000000000
--- a/dev-ruby/thread_order/thread_order-1.1.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="Readme.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Test helper for ordering threaded code"
-HOMEPAGE="https://github.com/JoshCheek/thread_order"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- # Avoid failing spec that already has exceptions for some ruby
- # implementations and is not essential.
- sed -i -e '/depending on the stdlib/,/^ end/ s:^:#:' \
- spec/thread_order_spec.rb || die
-}
diff --git a/dev-ruby/thread_order/thread_order-1.1.1.ebuild b/dev-ruby/thread_order/thread_order-1.1.1.ebuild
index 17871b1811ff..50071c2935ea 100644
--- a/dev-ruby/thread_order/thread_order-1.1.1.ebuild
+++ b/dev-ruby/thread_order/thread_order-1.1.1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
+USE_RUBY="ruby31 ruby32 ruby33"
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
@@ -17,7 +17,7 @@ HOMEPAGE="https://github.com/JoshCheek/thread_order"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE=""
all_ruby_prepare() {
diff --git a/dev-ruby/thread_safe/metadata.xml b/dev-ruby/thread_safe/metadata.xml
index 18991dc0a8ce..bffb8a1e0a56 100644
--- a/dev-ruby/thread_safe/metadata.xml
+++ b/dev-ruby/thread_safe/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/thread_safe/thread_safe-0.3.6-r3.ebuild b/dev-ruby/thread_safe/thread_safe-0.3.6-r3.ebuild
new file mode 100644
index 000000000000..35dedb7af027
--- /dev/null
+++ b/dev-ruby/thread_safe/thread_safe-0.3.6-r3.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A collection of thread-safe versions of common core Ruby classes"
+HOMEPAGE="https://github.com/ruby-concurrency/thread_safe"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 arm ~arm64 ~hppa ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+each_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile || die
+ sed -i -e '/coveralls/I s:^:#:' \
+ -e '/simplecov/ s:^:#:' \
+ -e '/SimpleCov/,/^end/ s:^:#:' spec/spec_helper.rb || die
+}
+
+each_ruby_test() {
+ einfo "The test suite may take up to 10 minutes to run without apparent feedback"
+ each_fakegem_test
+}
diff --git a/dev-ruby/thread_safe/thread_safe-0.3.6.ebuild b/dev-ruby/thread_safe/thread_safe-0.3.6.ebuild
deleted file mode 100644
index 05146d90aaa0..000000000000
--- a/dev-ruby/thread_safe/thread_safe-0.3.6.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A collection of thread-safe versions of common core Ruby classes"
-HOMEPAGE="https://github.com/ruby-concurrency/thread_safe"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ppc ppc64 x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-# Higher atomic dependency since earlier versions crash on ruby20 while
-# running thread_safe tests.
-ruby_add_bdepend "test? ( >=dev-ruby/atomic-1.1.16 )"
-
-each_ruby_prepare() {
- sed -i -e "/[Bb]undler/d" Rakefile || die
- sed -i -e '/coveralls/I s:^:#:' \
- -e '/simplecov/ s:^:#:' \
- -e '/SimpleCov/,/^end/ s:^:#:' spec/spec_helper.rb || die
-}
-
-each_ruby_test() {
- einfo "The test suite may take up to 10 minutes to run without apparent feedback"
- each_fakegem_test
-}
diff --git a/dev-ruby/tidy-ext/Manifest b/dev-ruby/tidy-ext/Manifest
deleted file mode 100644
index adca93b6a591..000000000000
--- a/dev-ruby/tidy-ext/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tidy-ext-0.1.14.gem 260608 BLAKE2B 5401ec2019f25307f4083f3a1717cd2b0419e0025875b0ad461c72e50445f9b1ffc488a723db04432d262cf2dd94fd267f5261b33eb53d829f4a03d5cd29ab30 SHA512 8a8eada3cb5e815338de49332a24c85b9b2cabba0e10f2d72fe85bd4faf76924e52d82066e7b73e62bc459631aaa9d1c42a6941988ae2a71ca0ddd4f3302ad86
diff --git a/dev-ruby/tidy-ext/files/11CVE-2015-5522.patch b/dev-ruby/tidy-ext/files/11CVE-2015-5522.patch
deleted file mode 100644
index 942209873be0..000000000000
--- a/dev-ruby/tidy-ext/files/11CVE-2015-5522.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From c18f27a58792f7fbd0b30a0ff50d6b40a82f940d Mon Sep 17 00:00:00 2001
-From: Geoff McLane <ubuntu@geoffair.info>
-Date: Wed, 3 Jun 2015 20:26:03 +0200
-Subject: [PATCH] Issue #217 - avoid len going negative, ever...
-
----
- src/lexer.c | 8 +++++---
- 1 file changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/src/lexer.c b/src/lexer.c
-index 376a3d8..664f806 100644
---- a/ext/tidy/lexer.c
-+++ b/ext/tidy/lexer.c
-@@ -3739,16 +3740,17 @@ static tmbstr ParseValue( TidyDocImpl* doc, ctmbstr name,
- /* and prompts attributes unless --literal-attributes is set to yes */
- /* #994841 - Whitespace is removed from value attributes */
-
-- if (munge &&
-+ /* Issue #217 - Also only if/while (len > 0) - MUST NEVER GO NEGATIVE! */
-+ if ((len > 0) && munge &&
- TY_(tmbstrcasecmp)(name, "alt") &&
- TY_(tmbstrcasecmp)(name, "title") &&
- TY_(tmbstrcasecmp)(name, "value") &&
- TY_(tmbstrcasecmp)(name, "prompt"))
- {
-- while (TY_(IsWhite)(lexer->lexbuf[start+len-1]))
-+ while (TY_(IsWhite)(lexer->lexbuf[start+len-1]) && (len > 0))
- --len;
-
-- while (TY_(IsWhite)(lexer->lexbuf[start]) && start < len)
-+ while (TY_(IsWhite)(lexer->lexbuf[start]) && (start < len) && (len > 0))
- {
- ++start;
- --len;
diff --git a/dev-ruby/tidy-ext/metadata.xml b/dev-ruby/tidy-ext/metadata.xml
deleted file mode 100644
index 03567b9d3360..000000000000
--- a/dev-ruby/tidy-ext/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">carld/tidy</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/tidy-ext/tidy-ext-0.1.14-r3.ebuild b/dev-ruby/tidy-ext/tidy-ext-0.1.14-r3.ebuild
deleted file mode 100644
index c955597093bc..000000000000
--- a/dev-ruby/tidy-ext/tidy-ext-0.1.14-r3.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_DOCDIR="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem eutils
-
-DESCRIPTION="W3C HTML Tidy library implemented as a Ruby extension"
-HOMEPAGE="https://github.com/carld/tidy"
-
-LICENSE="HTML-Tidy"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ppc ppc64 ~sparc x86"
-IUSE=""
-
-RUBY_PATCHES=( 11CVE-2015-5522.patch )
-
-all_ruby_prepare() {
- mkdir lib || die
-
- # Remove reference to rspec 1
- sed -i -e '/spec/d' spec/spec_helper.rb || die
-
- # Avoid spec that needs network connectivity.
- rm spec/tidy/remote_uri_spec.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/tidy extconf.rb || die "Unable to configure extension."
-}
-
-each_ruby_compile() {
- emake -Cext/tidy V=1
- cp ext/tidy/tidy$(get_modname) lib/ || die "Unable to copy extension."
-}
diff --git a/dev-ruby/tidy_table/metadata.xml b/dev-ruby/tidy_table/metadata.xml
index 999efef8f919..bce8cccf3eac 100644
--- a/dev-ruby/tidy_table/metadata.xml
+++ b/dev-ruby/tidy_table/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tidy_table/tidy_table-0.0.5-r4.ebuild b/dev-ruby/tidy_table/tidy_table-0.0.5-r4.ebuild
deleted file mode 100644
index fc378a13908c..000000000000
--- a/dev-ruby/tidy_table/tidy_table-0.0.5-r4.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Tool to convert an array of struct into an HTML table"
-HOMEPAGE="https://github.com/topfunky/tidy_table"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-all_ruby_prepare() {
- # Remove reference to RSpec 1
- sed -i -e '/spec/d' -e '1irequire "date"' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/tidy_table/tidy_table-0.0.5-r5.ebuild b/dev-ruby/tidy_table/tidy_table-0.0.5-r5.ebuild
deleted file mode 100644
index b9cae1ccddc6..000000000000
--- a/dev-ruby/tidy_table/tidy_table-0.0.5-r5.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Tool to convert an array of struct into an HTML table"
-HOMEPAGE="https://github.com/topfunky/tidy_table"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- # Remove reference to RSpec 1
- sed -i -e '/spec/d' -e '1irequire "date"' spec/spec_helper.rb || die
-
- # Remove metadata so a stub gemspec will be created to avoid the
- # wrong runtime dependency on dev-ruby/hoe.
- rm -f ../metadata || die
-}
diff --git a/dev-ruby/tidy_table/tidy_table-0.0.5-r6.ebuild b/dev-ruby/tidy_table/tidy_table-0.0.5-r6.ebuild
new file mode 100644
index 000000000000..c8cec69a04e8
--- /dev/null
+++ b/dev-ruby/tidy_table/tidy_table-0.0.5-r6.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_EXTRADOC="History.txt README.txt"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Tool to convert an array of struct into an HTML table"
+HOMEPAGE="https://github.com/topfunky/tidy_table"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+all_ruby_prepare() {
+ # Remove reference to RSpec 1
+ sed -i -e '/spec/d' -e '1irequire "date"' spec/spec_helper.rb || die
+
+ # Remove metadata so a stub gemspec will be created to avoid the
+ # wrong runtime dependency on dev-ruby/hoe.
+ rm -f ../metadata || die
+}
diff --git a/dev-ruby/tilt/Manifest b/dev-ruby/tilt/Manifest
index e8a3d870ff92..77c0ab3704ee 100644
--- a/dev-ruby/tilt/Manifest
+++ b/dev-ruby/tilt/Manifest
@@ -1 +1,2 @@
-DIST tilt-2.0.9.gem 55296 BLAKE2B dd181295d2317ef591e9b89a0a4cf29680a05403c89c33680f563459ebbfc675bfaef14c864f8c8834103fc2ea069b33dc928f2b804d911eec21b09427f7c619 SHA512 522b2b40ca1eefc7df66cb421c66734699a2ffb1e7d1797181c2718f7ca018d3376c1a2b3617b5d3549115af69108db4c3c4632e2682329d5baf24bfdae92b42
+DIST tilt-2.2.0.tar.gz 57826 BLAKE2B 10729ac9cb2e2d0b2292a6fdacc0d705179d719d7f4bbdb11075e0eeaeb82933daec22063d3448ea2ada6e50f37b2b66303854707f50162efd11a6151ded45df SHA512 135a32402512fda71952dc2534b02a291d749dbdcb9e17f52c7fa6ecfe3bd7e894f28f3d3d4a595daa63ffbe90cca106347aa916541292558a26d8122fcd7c90
+DIST tilt-2.3.0.tar.gz 57454 BLAKE2B 2c3c934e73c015be850951c67731b2f1640fb340ab1807c72c654363c2ab3aca939b8452327cd54e2c1964add81176cec0dfd2639901284476f0dd13d42a2ccf SHA512 3438c196c2e0936f2c3551fe3786d71b1336118352b97c95d3504b900082ce4248bbaf715f3f812eb7fe6e959767c75e316bf6cd5b659c216bbfd630dbf678bc
diff --git a/dev-ruby/tilt/metadata.xml b/dev-ruby/tilt/metadata.xml
index 5ec123a4f728..2657482a994c 100644
--- a/dev-ruby/tilt/metadata.xml
+++ b/dev-ruby/tilt/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tilt/tilt-2.0.9.ebuild b/dev-ruby/tilt/tilt-2.0.9.ebuild
deleted file mode 100644
index c190a02b649a..000000000000
--- a/dev-ruby/tilt/tilt-2.0.9.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md docs/TEMPLATES.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Thin interface over template engines to make their usage as generic as possible"
-HOMEPAGE="https://github.com/rtomayko/tilt"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="amd64 arm ~arm64 ~hppa ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-# Block on some of the potential test dependencies. These dependencies
-# are optional for the test suite, and we don't want to depend on all of
-# them to faciliate keywording and stabling.
-ruby_add_bdepend "test? (
- dev-ruby/coffee-script
- dev-ruby/erubis
- dev-ruby/nokogiri
- !!<dev-ruby/maruku-0.7.2 )"
-
-ruby_add_rdepend "!!<dev-ruby/tilt-1.4.1-r2:0"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -e '/bundler/I s:^:#:' -i Rakefile test/test_helper.rb || die
-
- # Avoid tests with minor syntax differences since this happens all
- # the time when details in the dependencies change.
- sed -e '/test_smarty_pants_true/,/^ end/ s:^:#:' \
- -e '/test_smart_quotes_true/,/^ end/ s:^:#:' -i test/tilt_markdown_test.rb || die
- sed -e '/smartypants when :smart is set/,/^ end/ s:^:#:' -i test/tilt_rdiscounttemplate_test.rb || die
-}
diff --git a/dev-ruby/tilt/tilt-2.2.0.ebuild b/dev-ruby/tilt/tilt-2.2.0.ebuild
new file mode 100644
index 000000000000..9b0f38c10106
--- /dev/null
+++ b/dev-ruby/tilt/tilt-2.2.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md docs/TEMPLATES.md"
+
+RUBY_FAKEGEM_GEMSPEC="tilt.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Thin interface over template engines to make their usage as generic as possible"
+HOMEPAGE="https://github.com/jeremyevans/tilt"
+SRC_URI="https://github.com/jeremyevans/tilt/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+# Block on some of the potential test dependencies. These dependencies
+# are optional for the test suite, and we don't want to depend on all of
+# them to facilitate keywording and stabling.
+ruby_add_bdepend "test? (
+ dev-ruby/erubi
+ dev-ruby/nokogiri
+)"
+
+all_ruby_prepare() {
+ sed -e '/bundler/I s:^:#:' -i Rakefile test/test_helper.rb || die
+ sed -e '7irequire "uri"' -i test/test_helper.rb || die
+
+ # Avoid tests with minor syntax differences since this happens all
+ # the time when details in the dependencies change.
+ rm -f test/tilt_sasstemplate_test.rb || die
+
+ # Skip tests for unpackaged asciidoctor converter
+ sed -i -e '/docbook 4.5/askip' test/tilt_asciidoctor_test.rb || die
+}
diff --git a/dev-ruby/tilt/tilt-2.3.0.ebuild b/dev-ruby/tilt/tilt-2.3.0.ebuild
new file mode 100644
index 000000000000..a784f723b03b
--- /dev/null
+++ b/dev-ruby/tilt/tilt-2.3.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md docs/TEMPLATES.md"
+
+RUBY_FAKEGEM_GEMSPEC="tilt.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Thin interface over template engines to make their usage as generic as possible"
+HOMEPAGE="https://github.com/jeremyevans/tilt"
+SRC_URI="https://github.com/jeremyevans/tilt/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+# Block on some of the potential test dependencies. These dependencies
+# are optional for the test suite, and we don't want to depend on all of
+# them to facilitate keywording and stabling.
+ruby_add_bdepend "test? (
+ dev-ruby/erubi
+ dev-ruby/nokogiri
+)"
+
+all_ruby_prepare() {
+ sed -e '/bundler/I s:^:#:' -i Rakefile test/test_helper.rb || die
+ sed -e '7irequire "uri"' -i test/test_helper.rb || die
+
+ # Avoid tests with minor syntax differences since this happens all
+ # the time when details in the dependencies change.
+ rm -f test/tilt_sasstemplate_test.rb || die
+
+ # Skip tests for unpackaged asciidoctor converter
+ sed -i -e '/docbook 4.5/askip' test/tilt_asciidoctor_test.rb || die
+}
diff --git a/dev-ruby/time/Manifest b/dev-ruby/time/Manifest
new file mode 100644
index 000000000000..5f2a62e3f9fb
--- /dev/null
+++ b/dev-ruby/time/Manifest
@@ -0,0 +1,2 @@
+DIST time-0.2.2.tar.gz 26129 BLAKE2B 9d7c507c06fca17c9a2734f1116524344518635562b0ba924cdf5e0b0b52cb31f6dffa7aa3c8c06e0d2f5f2c1ffdcef2a92756cd915822be6a1510f08fa91c56 SHA512 4866cd7df233222ed76cf3b35c842b6e1652b429aa15609bfe40f89683ad5df2ce7f37f41dfb0e85f610f2ebf4e431ea8046d67c3aed7aa345d928fe33ba1ae3
+DIST time-0.3.0.tar.gz 15520 BLAKE2B 05d30c8dd6da8544fe89e1f92a94d91adf198712acc236703947abef86c9ceefeedc2bc78150d3d1918b29972509c927510fea2e4bfec0a01ad12aa751e27fc2 SHA512 17483eebbddd3be40f83b35813ef5faa3b3fe695e3c13e4cc6d13579b64fd5d1637e2aca2f5e60192b4de6ae761efaa76aa6a6cbbcce7bade31f5f415f224b70
diff --git a/dev-ruby/time/metadata.xml b/dev-ruby/time/metadata.xml
new file mode 100644
index 000000000000..3491d92c0b1d
--- /dev/null
+++ b/dev-ruby/time/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/time</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/time/time-0.2.2.ebuild b/dev-ruby/time/time-0.2.2.ebuild
new file mode 100644
index 000000000000..d49a30a10564
--- /dev/null
+++ b/dev-ruby/time/time-0.2.2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="time.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Extends the Time class with methods for parsing and conversion"
+HOMEPAGE="https://github.com/ruby/time"
+SRC_URI="https://github.com/ruby/time/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/date"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/time/time-0.3.0.ebuild b/dev-ruby/time/time-0.3.0.ebuild
new file mode 100644
index 000000000000..b548f3127fb9
--- /dev/null
+++ b/dev-ruby/time/time-0.3.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="time.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Extends the Time class with methods for parsing and conversion"
+HOMEPAGE="https://github.com/ruby/time"
+SRC_URI="https://github.com/ruby/time/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/date"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:.:test:test/lib -rhelper -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/timecop/Manifest b/dev-ruby/timecop/Manifest
index 506ad8c82a5e..349e6553d843 100644
--- a/dev-ruby/timecop/Manifest
+++ b/dev-ruby/timecop/Manifest
@@ -1,2 +1,3 @@
-DIST timecop-0.8.1.gem 16384 BLAKE2B ca3aa8422841b83f4631afa102c4475f4df73c3968eb9ec17d2159a41ed976330ac9c078970f3ed2a504146ae0f4d88650892c314c92da6dab0f8a0ff0a24a35 SHA512 c4d281aa04fe94636dc23dc0fa6ea4a1dc27fc1debe550b06a208ceaab1d9d8b160f792bd5f14a7c004cecf489d4427df39873a68fe6ab27fe9c0e94770cc764
-DIST timecop-0.9.1.gem 16896 BLAKE2B f4dd9293743f0be4dc5616aae077965a32e348faa7019867d694689b0376c6be06817870842bdcbf5f398ec4814ae1e4f6546c75c95639bbd2cb8021a1dee3f7 SHA512 2c8429ad4d9c706865810caa80dfb12c16acaaa97ea289fc300e172a359817fea7d31789f4bea75cfae8ce1f84e7d8effd32b39a0482f3d68fb4e225b487e13e
+DIST timecop-0.9.6.gem 17408 BLAKE2B 53afa8313be94fb8774812b014f11d9a134b51b7dafcc0fd8d91d10756e042bfd6d56b10f8072c1d606519e532beb2e02032bd4e3f6d45b4cf41dd968ba86224 SHA512 a5cbdf38caa5bccb9887a6abb5d99bdd1470c9ff8d52d19f0c46f116dc73b62512f76021adc1ec98ca4abe85ca61a4ab1e821d80980fa7ab3c821abd13b9695a
+DIST timecop-0.9.7.tar.gz 17818 BLAKE2B c978a3765864963b4dbbb8a9cf2172208fa7b66afd68417a057bba44b6d35141bab5182bef3404d6233f394e9d874026886dc85b2e400908bdbf2f3af273b6bf SHA512 4db43b655225b8017769497b5ffc88d7b6d728677439ade09d8e0b8e8ef01c0307e49575ed9e1d2ac379cd222a5a0d34feae018d15ee34b70934e93a019a76e6
+DIST timecop-0.9.8.tar.gz 17936 BLAKE2B bb66dac74df498b6a5c284805c2c8a486523d43c2923c2e11f65d24bc2e9ad59c3bdd356bf3e93946859ed9e95ac9924e48747afb17ec81a5378e0370d7dff20 SHA512 cbf74e8d4e459f17cb841fee14353feccfa26e401d999521abb5653639a3d6b8e0dbd73d4317cb18b185d33d23e20e7603992cd6e2752ac74cbf0c0c927263b3
diff --git a/dev-ruby/timecop/metadata.xml b/dev-ruby/timecop/metadata.xml
index 65d4daade49b..5aac3be6af1a 100644
--- a/dev-ruby/timecop/metadata.xml
+++ b/dev-ruby/timecop/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">jtrupiano/timecop</remote-id>
+ <remote-id type="github">travisjeffery/timecop</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/timecop/timecop-0.8.1.ebuild b/dev-ruby/timecop/timecop-0.8.1.ebuild
deleted file mode 100644
index 224e12a09298..000000000000
--- a/dev-ruby/timecop/timecop-0.8.1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_TASK_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A gem providing 'time travel' and 'time freezing' capabilities"
-HOMEPAGE="https://github.com/travisjeffery/timecop"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm hppa ppc ppc64 sparc x86 ~x86-fbsd"
-IUSE=""
-
-# Missing testdep activesupport
-ruby_add_bdepend "test? ( dev-ruby/mocha )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' -e '/History.rdoc/d' Rakefile test/test_helper.rb || die
- sed -i -e '/rubygems/ a\gem "test-unit"' \
- -e '/minitest\/rg/ s:^:#:' test/test_helper.rb || die
- # FIXME after activesupport gained ruby22 support
- rm test/time_stack_item_test.rb || die
-}
-
-each_ruby_test() {
- for f in test/*_test.rb ; do
- ${RUBY} -Ilib $f || die
- done
-}
diff --git a/dev-ruby/timecop/timecop-0.9.1.ebuild b/dev-ruby/timecop/timecop-0.9.1.ebuild
deleted file mode 100644
index 32ae668084d8..000000000000
--- a/dev-ruby/timecop/timecop-0.9.1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test"
-
-RUBY_FAKEGEM_TASK_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.markdown"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A gem providing 'time travel' and 'time freezing' capabilities"
-HOMEPAGE="https://github.com/travisjeffery/timecop"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ppc ppc64 sparc x86 ~x86-fbsd"
-IUSE=""
-
-# Missing testdep activesupport
-ruby_add_bdepend "test? ( dev-ruby/mocha )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' -e '/History.rdoc/d' Rakefile test/test_helper.rb || die
- sed -i -e '/rubygems/ a\gem "test-unit"' \
- -e '/minitest\/rg/ s:^:#:' test/test_helper.rb || die
- # FIXME after activesupport gained ruby22 support
- rm test/time_stack_item_test.rb || die
-}
-
-each_ruby_test() {
- for f in test/*_test.rb ; do
- ${RUBY} -Ilib $f || die
- done
-}
diff --git a/dev-ruby/timecop/timecop-0.9.6.ebuild b/dev-ruby/timecop/timecop-0.9.6.ebuild
new file mode 100644
index 000000000000..6dee71de2de0
--- /dev/null
+++ b/dev-ruby/timecop/timecop-0.9.6.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="test"
+
+RUBY_FAKEGEM_TASK_DOC="rdoc"
+RUBY_FAKEGEM_DOCDIR="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.markdown"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A gem providing 'time travel' and 'time freezing' capabilities"
+HOMEPAGE="https://github.com/travisjeffery/timecop"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+# Missing testdep activesupport
+ruby_add_bdepend "test? ( dev-ruby/mocha )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' -e '/History.rdoc/d' Rakefile test/test_helper.rb || die
+ sed -i -e '/rubygems/ a\gem "test-unit"' \
+ -e '/minitest\/rg/ s:^:#:' -e '/pry/ s:^:#:' test/test_helper.rb || die
+ # FIXME after activesupport gained ruby22 support
+ rm test/time_stack_item_test.rb || die
+}
+
+each_ruby_test() {
+ for f in test/*_test.rb ; do
+ ${RUBY} -Ilib $f || die
+ done
+}
diff --git a/dev-ruby/timecop/timecop-0.9.7.ebuild b/dev-ruby/timecop/timecop-0.9.7.ebuild
new file mode 100644
index 000000000000..5c78acdec7fd
--- /dev/null
+++ b/dev-ruby/timecop/timecop-0.9.7.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_TASK_TEST="test"
+
+RUBY_FAKEGEM_TASK_DOC="rdoc"
+RUBY_FAKEGEM_DOCDIR="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.markdown"
+RUBY_FAKEGEM_GEMSPEC="timecop.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A gem providing 'time travel' and 'time freezing' capabilities"
+HOMEPAGE="https://github.com/travisjeffery/timecop"
+SRC_URI="https://github.com/travisjeffery/timecop/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/activesupport dev-ruby/mocha )"
+
+all_ruby_prepare() {
+ sed -e '/bundler/ s:^:#:' -e '/History.rdoc/d' \
+ -i Rakefile test/test_helper.rb test/timecop_with_active_support_test.rb || die
+ sed -i -e '/rubygems/ a\gem "test-unit"' \
+ -e '/minitest\/rg/ s:^:#:' -e '/pry/ s:^:#:' test/test_helper.rb || die
+}
+
+each_ruby_test() {
+ for f in test/*_test.rb ; do
+ ${RUBY} -Ilib $f || die
+ done
+}
diff --git a/dev-ruby/timecop/timecop-0.9.8.ebuild b/dev-ruby/timecop/timecop-0.9.8.ebuild
new file mode 100644
index 000000000000..c8a8081ee674
--- /dev/null
+++ b/dev-ruby/timecop/timecop-0.9.8.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_TASK_TEST="test"
+
+RUBY_FAKEGEM_TASK_DOC="rdoc"
+RUBY_FAKEGEM_DOCDIR="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.markdown"
+RUBY_FAKEGEM_GEMSPEC="timecop.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A gem providing 'time travel' and 'time freezing' capabilities"
+HOMEPAGE="https://github.com/travisjeffery/timecop"
+SRC_URI="https://github.com/travisjeffery/timecop/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/activesupport dev-ruby/mocha )"
+
+all_ruby_prepare() {
+ sed -e '/bundler/ s:^:#:' -e '/History.rdoc/d' \
+ -i Rakefile test/test_helper.rb test/timecop_with_active_support_test.rb || die
+ sed -i -e '/rubygems/ a\gem "test-unit"' \
+ -e '/minitest\/rg/ s:^:#:' -e '/pry/ s:^:#:' test/test_helper.rb || die
+}
+
+each_ruby_test() {
+ for f in test/*_test.rb ; do
+ ${RUBY} -Ilib $f || die
+ done
+}
diff --git a/dev-ruby/timeout/Manifest b/dev-ruby/timeout/Manifest
new file mode 100644
index 000000000000..776b186a628d
--- /dev/null
+++ b/dev-ruby/timeout/Manifest
@@ -0,0 +1,3 @@
+DIST timeout-0.3.2.tar.gz 16920 BLAKE2B ec3bb38a8c60b9156a8fb8b5bb99b74a606ee8d18aa81b4b5ed5067c38cea1856ccfc00a841cc58c33cf5159fc1065f68728c48acec6df2eed28f364a36fc7a5 SHA512 70220781ecaec61a4243dfd95c6be13050513e78dd3239b58b0c8f6904b29c2bfbf895f769a1e122a30fbdad761577c2ddae94b328c4ee390867d1ab6391b8ec
+DIST timeout-0.4.0.tar.gz 6897 BLAKE2B 1fa606e15001ba929d7a1e6e254c97f7948de9042c90174263a2d3fc671b26c22197f9c1376c2cec60d8fe64361a63f29cdc02cf4e9bd0b912754bc65f594c0e SHA512 9337cac1f2ba76efb769c6602ae60fa1f3be4a6fc04ebd845c32332d1a25e0c669485f0f64611e09e1648908abe768aa78779c6568345a9729502efefa753485
+DIST timeout-0.4.1.tar.gz 7197 BLAKE2B 182b8904345228f90406b2b567a9342b0724ad0abb103392ec2682c8040168e1bb98c90256d3715d5938f09bf92e9650fc3423903dacd620b753d5119f143910 SHA512 1ca23bfcaf2c67a59805f814b20a9fe6e492b8f68e492c86290d6c638b07ea9b6f14c4cc84c14b891b5aaf611f46968af8947565ea83d783c90144df4e3e612f
diff --git a/dev-ruby/timeout/metadata.xml b/dev-ruby/timeout/metadata.xml
new file mode 100644
index 000000000000..632f98915b47
--- /dev/null
+++ b/dev-ruby/timeout/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/timeout</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/timeout/timeout-0.3.2.ebuild b/dev-ruby/timeout/timeout-0.3.2.ebuild
new file mode 100644
index 000000000000..c0e0f4c220b7
--- /dev/null
+++ b/dev-ruby/timeout/timeout-0.3.2.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="timeout.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a framework for message digest libraries"
+HOMEPAGE="https://github.com/ruby/timeout"
+SRC_URI="https://github.com/ruby/timeout/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/timeout/timeout-0.4.0.ebuild b/dev-ruby/timeout/timeout-0.4.0.ebuild
new file mode 100644
index 000000000000..e58a7ade545e
--- /dev/null
+++ b/dev-ruby/timeout/timeout-0.4.0.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="timeout.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a framework for message digest libraries"
+HOMEPAGE="https://github.com/ruby/timeout"
+SRC_URI="https://github.com/ruby/timeout/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/timeout/timeout-0.4.1.ebuild b/dev-ruby/timeout/timeout-0.4.1.ebuild
new file mode 100644
index 000000000000..4a6f8a776f71
--- /dev/null
+++ b/dev-ruby/timeout/timeout-0.4.1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="timeout.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a framework for message digest libraries"
+HOMEPAGE="https://github.com/ruby/timeout"
+SRC_URI="https://github.com/ruby/timeout/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit dev-ruby/test-unit-ruby-core )"
+
+all_ruby_prepare() {
+ sed -e 's/__dir__/"."/' \
+ -e 's/__FILE__/"'${RUBY_FAKEGEM_GEMSPEC}'"/' \
+ -e 's/git ls-files -z/find * -print0/' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/timers/Manifest b/dev-ruby/timers/Manifest
index 73c640363da6..3b92b548bcbd 100644
--- a/dev-ruby/timers/Manifest
+++ b/dev-ruby/timers/Manifest
@@ -1,3 +1 @@
-DIST timers-4.1.2.gem 15360 BLAKE2B 2480b6051825e26c9c30418e4acd7f9d8d0173d21038349ff16c086a2712eff7e9349720d270ed6505d8f90b14fc4dc99cf06d948922a222196d338b7933b5a8 SHA512 8c43f6ab09b918fc047056de20e85371929cd6841d7e26dedf54d565585eba040e23cef83c8747eb0ec43df8c9d9cf5915b5ea0ac6f6d551a0b086de3a9f3499
-DIST timers-4.2.0.gem 14848 BLAKE2B 0d3c1b70e6b4dade1664eac6951dfa1ff876098747d2f6eab21a2dff2f334cd614ac2c73e0651b93e92b3850c7933445a14bc4f43b50adbf1895b49c05d9507d SHA512 c5516c45e47bcd35bb5f16be0ddb31a2b1370bf06ee833c50b3121a7c36437fb418c58986b0d71979cd01af47bceb1ccd2ff50b1472592868175c4271c85e15c
-DIST timers-4.3.0.gem 14848 BLAKE2B b6dfa758b8b16fbc2a28da08df05ade4551d398cfcf1ce09cc080dac4ac6adda4e741a9c5dc89d71594fbc81e5b55303556b012b03bd836ab1f63f0565acafc4 SHA512 6783424cf79f7f36292198621f93e17540e93011146c3a33b1b14a118c31a508352e56e479e3df8d9692c6f95b366561f27b374611851e88ad3fb6bbd1606037
+DIST timers-4.3.5.tar.gz 15651 BLAKE2B 2dc34bb23a4971c673aff5120502714035fe31aed34854b5f7beb744ca46ad704b88d1403ad594ea49f71bb709db7942ed521d237e2477fe2e9d41cc3cd2b538 SHA512 fa5a25eda15628f5a17cd2e7acc4eb2819a766de7ffdba03d425a93cb3229f0f7b8083e9990b5308e65c2d8aab396e33dd4d152252888eff1cc0039cac6a5e46
diff --git a/dev-ruby/timers/files/timers-4.3.5-timers-slow.patch b/dev-ruby/timers/files/timers-4.3.5-timers-slow.patch
new file mode 100644
index 000000000000..da786b724a6d
--- /dev/null
+++ b/dev-ruby/timers/files/timers-4.3.5-timers-slow.patch
@@ -0,0 +1,259 @@
+https://github.com/socketry/timers/issues/82
+https://github.com/socketry/timers/commit/039bbd2750d5e50721789ef5d3404b18c36517bc
+
+From 039bbd2750d5e50721789ef5d3404b18c36517bc Mon Sep 17 00:00:00 2001
+From: Samuel Williams <samuel.williams@oriontransfer.co.nz>
+Date: Wed, 12 Apr 2023 17:25:59 +1200
+Subject: [PATCH] Modernize gem (#83)
+
+* Improve robustness of `Timer#inspect`.
+
+* 100% test coverage.
+--- a/fixtures/timer_quantum.rb
++++ b/fixtures/timer_quantum.rb
+@@ -1,3 +1,5 @@
++# frozen_string_literal: true
++
+ # Released under the MIT License.
+ # Copyright, 2022, by Samuel Williams.
+
+--- a/lib/timers/group.rb
++++ b/lib/timers/group.rb
+@@ -92,8 +92,9 @@ def wait
+ # - 0: timers ready to fire
+ # - +ve: timers waiting to fire
+ def wait_interval(offset = current_offset)
+- handle = @events.first
+- handle.time - Float(offset) if handle
++ if handle = @events.first
++ handle.time - Float(offset)
++ end
+ end
+
+ # Fire all timers that are ready.
+--- a/lib/timers/priority_heap.rb
++++ b/lib/timers/priority_heap.rb
+@@ -84,9 +84,10 @@ def valid?
+
+ private
+
+- def swap(i, j)
+- @contents[i], @contents[j] = @contents[j], @contents[i]
+- end
++ # Left here for reference, but unused.
++ # def swap(i, j)
++ # @contents[i], @contents[j] = @contents[j], @contents[i]
++ # end
+
+ def bubble_up(index)
+ parent_index = (index - 1) / 2 # watch out, integer division!
+--- a/lib/timers/timer.rb
++++ b/lib/timers/timer.rb
+@@ -23,12 +23,11 @@ def initialize(group, interval, recurring = false, offset = nil, &block)
+ @interval = interval
+ @recurring = recurring
+ @block = block
+- @offset = offset
+-
++ @offset = nil
+ @handle = nil
+
+ # If a start offset was supplied, use that, otherwise use the current timers offset.
+- reset(@offset || @group.current_offset)
++ reset(offset || @group.current_offset)
+ end
+
+ def paused?
+@@ -73,7 +72,7 @@ def cancel
+ @handle = nil
+
+ # This timer is no longer valid:
+- @group.timers.delete self if @group
++ @group.timers.delete(self) if @group
+ end
+
+ # Reset this timer. Do not call while paused.
+@@ -117,18 +116,18 @@ def fires_in
+
+ # Inspect a timer
+ def inspect
+- buffer = "#{to_s[0..-2]} ".dup
++ buffer = to_s[0..-2]
+
+ if @offset
+- if fires_in >= 0
+- buffer << "fires in #{fires_in} seconds"
++ delta_offset = @offset - @group.current_offset
++
++ if delta_offset > 0
++ buffer << " fires in #{delta_offset} seconds"
+ else
+- buffer << "fired #{fires_in.abs} seconds ago"
++ buffer << " fired #{delta_offset.abs} seconds ago"
+ end
+
+ buffer << ", recurs every #{interval}" if recurring
+- else
+- buffer << "dead"
+ end
+
+ buffer << ">"
+--- a/lib/timers/wait.rb
++++ b/lib/timers/wait.rb
+@@ -17,6 +17,7 @@ def self.for(duration, &block)
+
+ timeout.while_time_remaining(&block)
+ else
++ # If there is no "duration" to wait for, we wait forever.
+ loop do
+ yield(nil)
+ end
+--- a/license.md
++++ b/license.md
+@@ -28,6 +28,7 @@ Copyright, 2017-2020, by Olle Jonsson.
+ Copyright, 2020, by Tim Smith.
+ Copyright, 2021, by Wander Hillen.
+ Copyright, 2022, by Yoshiki Takagi.
++Copyright, 2023, by Peter Goldstein.
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+--- a/test/timers/group.rb
++++ b/test/timers/group.rb
+@@ -36,18 +36,31 @@
+ expect(called).to be == true
+ expect(fired).to be == true
+ end
++
++ it "repeatedly calls the wait block if it sleeps less than the interval" do
++ called = 0
++ fired = false
++
++ group.after(0.1) { fired = true }
++
++ group.wait do |interval|
++ called += 1
++ sleep(0.01)
++ end
++
++ expect(called).to be > 1
++ expect(fired).to be == true
++ end
+ end
+
+ it "sleeps until the next timer" do
+ interval = 0.1
+- started_at = Time.now
+
+ fired = false
+ group.after(interval) {fired = true}
+ group.wait
+
+ expect(fired).to be == true
+- expect(Time.now - started_at).to be_within(TIMER_QUANTUM).of(interval)
+ end
+
+ it "fires instantly when next timer is in the past" do
+@@ -88,6 +101,26 @@
+ end.to raise_exception(TypeError)
+ end
+
++ with "#now_and_after" do
++ it "fires the timer immediately" do
++ result = []
++
++ group.now_and_after(TIMER_QUANTUM * 2) { result << :foo }
++
++ expect(result).to be == [:foo]
++ end
++
++ it "fires the timer at the correct time" do
++ result = []
++
++ group.now_and_after(TIMER_QUANTUM * 2) { result << :foo }
++
++ group.wait
++
++ expect(result).to be == [:foo, :foo]
++ end
++ end
++
+ with "recurring timers" do
+ it "continues to fire the timers at each interval" do
+ result = []
+--- a/test/timers/group/cancel.rb
++++ b/test/timers/group/cancel.rb
+@@ -10,6 +10,17 @@
+ describe Timers::Group do
+ let(:group) {subject.new}
+
++ it "can cancel a timer" do
++ fired = false
++
++ timer = group.after(0.1) { fired = true }
++ timer.cancel
++
++ group.wait
++
++ expect(fired).to be == false
++ end
++
+ it "should be able to cancel twice" do
+ fired = false
+
+@@ -51,4 +62,18 @@
+ expect(group.timers).to be(:empty?)
+ expect(x).to be == 0
+ end
++
++ with "#cancel" do
++ it "should cancel all timers" do
++ timers = 3.times.map do
++ group.every(0.1) {}
++ end
++
++ expect(group.timers).not.to be(:empty?)
++
++ group.cancel
++
++ expect(group.timers).to be(:empty?)
++ end
++ end
+ end
+--- a/test/timers/wait.rb
++++ b/test/timers/wait.rb
+@@ -14,9 +14,14 @@
+ it "repeats until timeout expired" do
+ timeout = Timers::Wait.new(interval*repeats)
+ count = 0
++ previous_remaining = nil
+
+ timeout.while_time_remaining do |remaining|
+- expect(remaining).to be_within(TIMER_QUANTUM).of(timeout.duration - (count * interval))
++ if previous_remaining
++ expect(remaining).to be_within(TIMER_QUANTUM).of(previous_remaining - interval)
++ end
++
++ previous_remaining = remaining
+
+ count += 1
+ sleep(interval)
+@@ -34,4 +39,18 @@
+
+ expect(result).to be == :done
+ end
++
++ with "#for" do
++ with "no duration" do
++ it "waits forever" do
++ count = 0
++ Timers::Wait.for(nil) do
++ count += 1
++ break if count > 10
++ end
++
++ expect(count).to be > 10
++ end
++ end
++ end
+ end
diff --git a/dev-ruby/timers/metadata.xml b/dev-ruby/timers/metadata.xml
index 51e9bb0ab855..b93a94607cde 100644
--- a/dev-ruby/timers/metadata.xml
+++ b/dev-ruby/timers/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">tarcieri/timers</remote-id>
+ <remote-id type="github">socketry/timers</remote-id>
+ <remote-id type="rubygems">timers</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/timers/timers-4.1.2.ebuild b/dev-ruby/timers/timers-4.1.2.ebuild
deleted file mode 100644
index 1b548c4cbbe8..000000000000
--- a/dev-ruby/timers/timers-4.1.2.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Pure Ruby one-shot and periodic timers"
-HOMEPAGE="https://github.com/tarcieri/timers"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend "dev-ruby/hitimes"
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
- sed -i -e '/coveralls/ s:^:#:' spec/spec_helper.rb || die
- sed -i -e '/Coveralls/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/timers/timers-4.2.0.ebuild b/dev-ruby/timers/timers-4.2.0.ebuild
deleted file mode 100644
index 73d35384f4aa..000000000000
--- a/dev-ruby/timers/timers-4.2.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Pure Ruby one-shot and periodic timers"
-HOMEPAGE="https://github.com/tarcieri/timers"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
- sed -i -e '/coveralls/ s:^:#:' spec/spec_helper.rb || die
- sed -i -e '/Coveralls/ s:^:#:' spec/spec_helper.rb || die
-
- # Avoid performance specs to avoid ruby-prof dependency and
- # because we cannot provide a good environment for performance testing.
- rm -f spec/timers/performance_spec.rb || die
-}
diff --git a/dev-ruby/timers/timers-4.3.0.ebuild b/dev-ruby/timers/timers-4.3.0.ebuild
deleted file mode 100644
index 20d6276706bd..000000000000
--- a/dev-ruby/timers/timers-4.3.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Pure Ruby one-shot and periodic timers"
-HOMEPAGE="https://github.com/tarcieri/timers"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-all_ruby_prepare() {
- rm Gemfile || die
- sed -i -e '/bundler/I s:^:#:' spec/spec_helper.rb || die
- sed -i -e '/coveralls/ s:^:#:' spec/spec_helper.rb || die
- sed -i -e '/Coveralls/ s:^:#:' spec/spec_helper.rb || die
-
- # Avoid performance specs to avoid ruby-prof dependency and
- # because we cannot provide a good environment for performance testing.
- rm -f spec/timers/performance_spec.rb || die
-}
diff --git a/dev-ruby/timers/timers-4.3.5-r1.ebuild b/dev-ruby/timers/timers-4.3.5-r1.ebuild
new file mode 100644
index 000000000000..ebfb920e9b77
--- /dev/null
+++ b/dev-ruby/timers/timers-4.3.5-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="readme.md"
+
+RUBY_FAKEGEM_GEMSPEC="timers.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="sus"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Pure Ruby one-shot and periodic timers"
+HOMEPAGE="https://github.com/socketry/timers"
+SRC_URI="https://github.com/socketry/timers/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="4"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc x86 ~ppc-macos ~x64-macos ~x64-solaris"
+
+PATCHES=(
+ # https://github.com/socketry/timers/issues/82
+ "${FILESDIR}"/${P}-timers-slow.patch
+)
+
+all_ruby_prepare() {
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid performance-based tests since we cannot guarantee specific performance levels.
+ rm -f test/timers/performance.rb || die
+}
diff --git a/dev-ruby/tins/Manifest b/dev-ruby/tins/Manifest
index 5d52f0a3f9c5..ef60b155e9a2 100644
--- a/dev-ruby/tins/Manifest
+++ b/dev-ruby/tins/Manifest
@@ -1,4 +1,2 @@
-DIST tins-1.20.2.gem 305664 BLAKE2B 37d206664077aa1ba8bac395e076b448797c9d73f46950ff339834b55cb1eaa36e1cdd47a9795d783671a8ef393f6059578ed684240de377ec8824c2468f5014 SHA512 c6c7694ddadf0cf46176a1fabda8ffc2d6b098ca6ed4d568f30c66100a2f55c25ce83c09e8ba379ee6c49dd68d6f1572f17f70f9666628c1fe5225fcc9d7b788
-DIST tins-1.20.3.gem 305664 BLAKE2B 26c78cf94acba6651c631b274a98cc7e19d3e215a450d255886d201c5bf94c343141edeb03456a178943cf70efbc9b75ea12cc2ccaec5c929fe5b2c08e918d2c SHA512 f5f723402096e869a8e44e64db9dcd0be4620812f0b5cc291df79010fcb87774ad56298de328242c96ce9dca64f7313271b9fec8cff758a6b3b689bec17c965d
-DIST tins-1.21.0.gem 305664 BLAKE2B 843b19b1208c3db8b9c21be6d249ca334bb3e8eb172a54623a7f6c6c1d6c62c2891e08cce5ec9a86fbc55637d7d8e2012925efe57fa23e68976bbd83c7f8cbda SHA512 88de2c493ad4ded353d58fa9647844fc14043233e0baa33180218cc068ab34d6a86e8841f41106ffa67215af26ccf3207ac9ef58f7db80f14c59c96591bd4a85
-DIST tins-1.21.1.gem 305664 BLAKE2B 1a86b55f0334d4e28fe4d4e67c12103ab4ed53056fb00d9d375ffc9b8213419bf277c37d23970e99c6bd7d3a2035cdde661dd63524b81082739d01271370be9c SHA512 25288e3c8e633bc9cef11b988bf778e75a304a52146a4501cd3ebbeee4c845a6be795d4ce7d01b24ff4a9a122fc16afbc20d9d88f7b1559c9b433d8f9282e29d
+DIST tins-1.32.1.gem 307712 BLAKE2B 5e48a9895aaaf52010de4c1759a0cedcfe2133d9f2e2a44eea8041cd425804f092f47dbb2fec4c84ccaf1975e35a082988fd56056cf0e175dc08691f38799c3f SHA512 d80fcf92af1178149a2b579f12963a092d5ef8017ba710a20642ab83b7312179b4cefe31cc99f8fbc1bbd93d5c7427be4f4128cefcb2ec58807fa5cd3a96ed02
+DIST tins-1.33.0.gem 307712 BLAKE2B 73f2211e73a99b06f1ad9ff7c770b5e7a9a478eb8d596bd2b1225f072d8be031a361ebfbdf5f1fdd402844d591640523640fa362dcf21fa24da86887fe383f46 SHA512 3a287ca5e8420c3e2582f8996b5a52c5337c82e1abc8f4311751196f94c75518515d534a7fb020886cf41118b9fcc9142299ca06a809255003029a2512e5b32e
diff --git a/dev-ruby/tins/metadata.xml b/dev-ruby/tins/metadata.xml
index e7eea7549592..b9c41230c09f 100644
--- a/dev-ruby/tins/metadata.xml
+++ b/dev-ruby/tins/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tins/tins-1.20.2.ebuild b/dev-ruby/tins/tins-1.20.2.ebuild
deleted file mode 100644
index 7abef2233f99..000000000000
--- a/dev-ruby/tins/tins-1.20.2.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="All the stuff that isn't good enough for a real library"
-HOMEPAGE="https://github.com/flori/tins"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~sparc x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib tests/*_test.rb
-}
diff --git a/dev-ruby/tins/tins-1.20.3.ebuild b/dev-ruby/tins/tins-1.20.3.ebuild
deleted file mode 100644
index 19bbb25c440d..000000000000
--- a/dev-ruby/tins/tins-1.20.3.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="All the stuff that isn't good enough for a real library"
-HOMEPAGE="https://github.com/flori/tins"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib tests/*_test.rb
-}
diff --git a/dev-ruby/tins/tins-1.21.0.ebuild b/dev-ruby/tins/tins-1.21.0.ebuild
deleted file mode 100644
index 19bbb25c440d..000000000000
--- a/dev-ruby/tins/tins-1.21.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="All the stuff that isn't good enough for a real library"
-HOMEPAGE="https://github.com/flori/tins"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib tests/*_test.rb
-}
diff --git a/dev-ruby/tins/tins-1.21.1.ebuild b/dev-ruby/tins/tins-1.21.1.ebuild
deleted file mode 100644
index 19bbb25c440d..000000000000
--- a/dev-ruby/tins/tins-1.21.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="All the stuff that isn't good enough for a real library"
-HOMEPAGE="https://github.com/flori/tins"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib tests/*_test.rb
-}
diff --git a/dev-ruby/tins/tins-1.32.1.ebuild b/dev-ruby/tins/tins-1.32.1.ebuild
new file mode 100644
index 000000000000..3acb801f587a
--- /dev/null
+++ b/dev-ruby/tins/tins-1.32.1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="All the stuff that isn't good enough for a real library"
+HOMEPAGE="https://github.com/flori/tins"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 ~sparc x86"
+IUSE=""
+
+ruby_add_rdepend "dev-ruby/sync"
+
+ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
+
+each_ruby_test() {
+ ruby-ng_testrb-2 -Ilib tests/*_test.rb
+}
diff --git a/dev-ruby/tins/tins-1.33.0.ebuild b/dev-ruby/tins/tins-1.33.0.ebuild
new file mode 100644
index 000000000000..49ef1e3e0fb7
--- /dev/null
+++ b/dev-ruby/tins/tins-1.33.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="All the stuff that isn't good enough for a real library"
+HOMEPAGE="https://github.com/flori/tins"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/bigdecimal dev-ruby/sync"
+
+ruby_add_bdepend "test? ( >=dev-ruby/test-unit-2.5.1-r1 )"
+
+each_ruby_test() {
+ ruby-ng_testrb-2 -Ilib tests/*_test.rb
+}
diff --git a/dev-ruby/tokyocabinet/metadata.xml b/dev-ruby/tokyocabinet/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/tokyocabinet/metadata.xml
+++ b/dev-ruby/tokyocabinet/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tokyocabinet/tokyocabinet-1.32.0-r1.ebuild b/dev-ruby/tokyocabinet/tokyocabinet-1.32.0-r1.ebuild
new file mode 100644
index 000000000000..a70a1392dc75
--- /dev/null
+++ b/dev-ruby/tokyocabinet/tokyocabinet-1.32.0-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_TASK_TEST=""
+
+RUBY_FAKEGEM_EXTENSIONS=(./extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby bindings for Tokyo Cabinet"
+HOMEPAGE="https://fallabs.com/tokyocabinet/"
+LICENSE="GPL-2"
+
+KEYWORDS="~amd64 ~ppc ~x86"
+SLOT="0"
+IUSE=""
+
+RDEPEND+="dev-db/tokyocabinet"
diff --git a/dev-ruby/tokyocabinet/tokyocabinet-1.32.0.ebuild b/dev-ruby/tokyocabinet/tokyocabinet-1.32.0.ebuild
deleted file mode 100644
index 684621f05a57..000000000000
--- a/dev-ruby/tokyocabinet/tokyocabinet-1.32.0.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby bindings for Tokyo Cabinet"
-HOMEPAGE="http://fallabs.com/tokyocabinet/"
-LICENSE="GPL-2"
-
-KEYWORDS="~amd64 ~ppc ~x86"
-SLOT="0"
-IUSE=""
-
-RDEPEND+="dev-db/tokyocabinet"
-
-each_ruby_configure() {
- ${RUBY} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1
-}
-
-each_ruby_install() {
- emake install DESTDIR="${D}"
-
- each_fakegem_install
-}
diff --git a/dev-ruby/tomlrb/Manifest b/dev-ruby/tomlrb/Manifest
index 0b087d68d54a..bf4260c8cbec 100644
--- a/dev-ruby/tomlrb/Manifest
+++ b/dev-ruby/tomlrb/Manifest
@@ -1,2 +1 @@
-DIST tomlrb-1.2.6.tar.gz 15642 BLAKE2B 4f9d19fd66a88a049360f6d3636fcaf6caa7164149a543db5a162ee48c8fb301a4a884dc77d183a9c9f190d6f9e9e92bca66179c250f240d7014791f11f7a600 SHA512 ada1d801ceda014d4ef9d3c973a14b970ad592323c259dfe0e851c00b554551d59010bb65ee64f8acbf5521132d2fdb4de14306c1a2dd6bf5307035bca100fcf
-DIST tomlrb-1.2.8.tar.gz 15897 BLAKE2B 536eaf3a2cb2b7e54e91aac28032b95900f53c0c9b10fb48129bd963e0efab1711848cefeb20c5df3bb5ea367dc375188db57b79990daf3e62f8b781477ea30e SHA512 a6f8a7ae5db02a8efca8ae75fc1a680d26016d221ec238e4f5ecd59bead4efff7cfe14f541a0be17ea6790699aeb7621d9a4d1b7e38a40828f8f66424fc9fb94
+DIST tomlrb-2.0.3.tar.gz 22929 BLAKE2B e67dd81f2d8a49e6c2d296d030d80809d10e780d1fb65e29744ba37ba35a58b8b34fe6bfc4046754ed0f919db2649b68d4feda8b31c35dd09d3df9d607100f68 SHA512 43b02de19b8816fad4e94656ee9ec22e0401cb62b982baa0ac9f4a6af2072e4e8df54ec657016c4dc407e6d977a27eab5b954a7f4ec7bb70b26062022bda96ea
diff --git a/dev-ruby/tomlrb/metadata.xml b/dev-ruby/tomlrb/metadata.xml
index 069d509f369b..9378b79e3e62 100644
--- a/dev-ruby/tomlrb/metadata.xml
+++ b/dev-ruby/tomlrb/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tomlrb/tomlrb-1.2.6.ebuild b/dev-ruby/tomlrb/tomlrb-1.2.6.ebuild
deleted file mode 100644
index 62a611d08c6b..000000000000
--- a/dev-ruby/tomlrb/tomlrb-1.2.6.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A racc based toml parser"
-HOMEPAGE="https://github.com/fbernier/tomlrb/"
-SRC_URI="https://github.com/fbernier/tomlrb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/reporters/I s:^:#:' test/minitest_helper.rb || die
-}
diff --git a/dev-ruby/tomlrb/tomlrb-1.2.8.ebuild b/dev-ruby/tomlrb/tomlrb-1.2.8.ebuild
deleted file mode 100644
index 426771e5fc6c..000000000000
--- a/dev-ruby/tomlrb/tomlrb-1.2.8.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A racc based toml parser"
-HOMEPAGE="https://github.com/fbernier/tomlrb/"
-SRC_URI="https://github.com/fbernier/tomlrb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/reporters/I s:^:#:' test/minitest_helper.rb || die
-}
diff --git a/dev-ruby/tomlrb/tomlrb-2.0.3.ebuild b/dev-ruby/tomlrb/tomlrb-2.0.3.ebuild
new file mode 100644
index 000000000000..38c4f7936dc9
--- /dev/null
+++ b/dev-ruby/tomlrb/tomlrb-2.0.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="tomlrb.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A racc based toml parser"
+HOMEPAGE="https://github.com/fbernier/tomlrb/"
+SRC_URI="https://github.com/fbernier/tomlrb/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_bdepend "dev-ruby/racc test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+ sed -i -e '/reporters/I s:^:#:' test/minitest_helper.rb || die
+}
diff --git a/dev-ruby/totoridipjp/Manifest b/dev-ruby/totoridipjp/Manifest
deleted file mode 100644
index f035d7270422..000000000000
--- a/dev-ruby/totoridipjp/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST totoridipjp-0.1.0.gem 7168 BLAKE2B 9a78da0b8309c9886506a80b7206530f3398d1591eaa75a32a4085bbdc56492da7465e6183fe5979e5e3e9ff486a089d1495ae2105f694c407fce40c29809dfe SHA512 5298fe39b0705a0b913f7f6cad452be48480a6832e9451d86a7fe9a1248fe893a76af2f56c0bd6d3a65c756d4ed3fd29b4483ef82beeccfc78dcf9dbf43ed748
diff --git a/dev-ruby/totoridipjp/metadata.xml b/dev-ruby/totoridipjp/metadata.xml
deleted file mode 100644
index ddf5da98f687..000000000000
--- a/dev-ruby/totoridipjp/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>naota@gentoo.org</email>
- </maintainer>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="rubygems">totoridipjp</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/totoridipjp/totoridipjp-0.1.0.ebuild b/dev-ruby/totoridipjp/totoridipjp-0.1.0.ebuild
deleted file mode 100644
index fa62433f97dd..000000000000
--- a/dev-ruby/totoridipjp/totoridipjp-0.1.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="A ruby binding to use totori.dip.jp Web API"
-HOMEPAGE="https://rubygems.org/gems/totoridipjp"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
diff --git a/dev-ruby/transaction-simple/metadata.xml b/dev-ruby/transaction-simple/metadata.xml
index 0873e28d946b..b7ddee8e72fb 100644
--- a/dev-ruby/transaction-simple/metadata.xml
+++ b/dev-ruby/transaction-simple/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">halostatue/transaction-simple</remote-id>
+ <remote-id type="github">halostatue-archive/transaction-simple</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/transaction-simple/transaction-simple-1.4.0.2-r2.ebuild b/dev-ruby/transaction-simple/transaction-simple-1.4.0.2-r2.ebuild
deleted file mode 100644
index 3ba729a19f8f..000000000000
--- a/dev-ruby/transaction-simple/transaction-simple-1.4.0.2-r2.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_TASK_DOC="docs"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Provides transaction support at the object level"
-HOMEPAGE="https://github.com/halostatue/transaction-simple"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~ppc ~ppc64 x86"
-IUSE="test"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/test-unit-2.5.1-r1
- )"
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib test/test_*.rb
-}
diff --git a/dev-ruby/transaction-simple/transaction-simple-1.4.0.2-r3.ebuild b/dev-ruby/transaction-simple/transaction-simple-1.4.0.2-r3.ebuild
new file mode 100644
index 000000000000..a9c41d24844b
--- /dev/null
+++ b/dev-ruby/transaction-simple/transaction-simple-1.4.0.2-r3.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_TASK_DOC="docs"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides transaction support at the object level"
+HOMEPAGE="https://github.com/halostatue-archive/transaction-simple"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~ppc ~ppc64 x86"
+IUSE="test"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/test-unit-2.5.1-r1
+ )"
+
+each_ruby_test() {
+ ruby-ng_testrb-2 -Ilib test/test_*.rb
+}
diff --git a/dev-ruby/travis/Manifest b/dev-ruby/travis/Manifest
deleted file mode 100644
index 01180ae777ba..000000000000
--- a/dev-ruby/travis/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST travis-1.8.10.gem 194048 BLAKE2B fa3daaa50e4c7024f6eac7978cecba526378022451deca9148a10b6f28528dc4ee5a42cc794628860b2861aafce0dc62c207023fc1f61676b48e00022112c834 SHA512 ca8adfb2d1541e157d1fa19837ce6d7a75ce491e0a3402447642f9f3b1f0c19ec16344016ed494947e3fde4e838669e4e5ba48087baea3f097605bef700dde55
-DIST travis-1.8.9.gem 193536 BLAKE2B b889127e07b2126ef193d64361059d514db4df4e3dc70fd30b55dac3fe67624df20d156aa6d9842d6bb766788626358ab38d7e6a59455c91a80925628e30764b SHA512 fce5dfb8071629de172b8a91fad15b1d6fcc50af1ab1a41eaa1e5eb91042b90fd58e1be24779fb02972077af743ebd65183b2dff42ee47d48818f7ed2755980a
diff --git a/dev-ruby/travis/metadata.xml b/dev-ruby/travis/metadata.xml
deleted file mode 100644
index 3fb523c30fc0..000000000000
--- a/dev-ruby/travis/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">travis-ci/travis.rb</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/travis/travis-1.8.10.ebuild b/dev-ruby/travis/travis-1.8.10.ebuild
deleted file mode 100644
index 0fe6741042e9..000000000000
--- a/dev-ruby/travis/travis-1.8.10.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_EXTRAINSTALL="assets"
-
-inherit bash-completion-r1 ruby-fakegem
-
-DESCRIPTION="Travis CI Client (CLI and Ruby library)"
-HOMEPAGE="https://github.com/travis-ci/travis.rb"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-#RESTRICT="test"
-
-DEPEND+="test? ( dev-vcs/git )"
-RDEPEND+="dev-vcs/git"
-
-ruby_add_bdepend "
- test? ( >dev-ruby/rack-test-0.6 )
- >dev-ruby/sinatra-1.3
-"
-
-ruby_add_rdepend "
- dev-ruby/backports
- >dev-ruby/faraday-0.9
- >=dev-ruby/faraday_middleware-0.9.1
- >dev-ruby/gh-0.13
- >=dev-ruby/highline-1.6:0
- >dev-ruby/launchy-2.1
- >dev-ruby/pusher-client-0.4
- dev-ruby/typhoeus:0
-"
-
-all_ruby_prepare() {
- if use test ; then
- git init --quiet . || die
- git remote add origin "${HOMEPAGE}" || die
- touch .travis.yml || die
- fi
-
- # Remove failing spec where cause is not fully clear.
- # May be related to highline compatibility issues.
- rm spec/cli/login_spec.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- newbashcomp "assets/travis.sh" "travis"
-}
diff --git a/dev-ruby/travis/travis-1.8.9-r1.ebuild b/dev-ruby/travis/travis-1.8.9-r1.ebuild
deleted file mode 100644
index 628e3462bf47..000000000000
--- a/dev-ruby/travis/travis-1.8.9-r1.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_EXTRAINSTALL="assets"
-
-inherit bash-completion-r1 ruby-fakegem
-
-DESCRIPTION="Travis CI Client (CLI and Ruby library)"
-HOMEPAGE="https://github.com/travis-ci/travis.rb"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-#RESTRICT="test"
-
-DEPEND+="test? ( dev-vcs/git )"
-RDEPEND+="dev-vcs/git"
-
-ruby_add_bdepend "
- test? ( >dev-ruby/rack-test-0.6 )
- >dev-ruby/sinatra-1.3
-"
-
-ruby_add_rdepend "
- dev-ruby/backports
- >dev-ruby/faraday-0.9
- >=dev-ruby/faraday_middleware-0.9.1
- >dev-ruby/gh-0.13
- >=dev-ruby/highline-1.6:0
- >dev-ruby/launchy-2.1
- >dev-ruby/pusher-client-0.4
- dev-ruby/typhoeus:0
-"
-
-all_ruby_prepare() {
- if use test ; then
- git init --quiet . || die
- git remote add origin "${HOMEPAGE}" || die
- touch .travis.yml || die
- fi
-
- # Remove failing spec where cause is not fully clear.
- # May be related to highline compatibility issues.
- rm spec/cli/login_spec.rb || die
-}
-
-all_ruby_install() {
- all_fakegem_install
-
- newbashcomp "assets/travis.sh" "travis"
-}
diff --git a/dev-ruby/treetop/Manifest b/dev-ruby/treetop/Manifest
index 681eff4c9b6a..1ea51b14530c 100644
--- a/dev-ruby/treetop/Manifest
+++ b/dev-ruby/treetop/Manifest
@@ -1 +1 @@
-DIST treetop-1.6.10.gem 92160 BLAKE2B ff3b6f0a92bcd2ad279c186e3a3eea72aa8243a89d4a1382df6322d73a19b79bede6c9f5c443644a5011b755a673bc9592f964cf61ab68fdd9f2da2dfcc0be94 SHA512 adff1cf93d1ea071be948437e3fd2800c2e892d1dac49d4571a89336773e012007abb1b4e15f0a86031077c46a6667f8fca8e22920e5c29186e0c3227b4d82ee
+DIST treetop-1.6.12.tar.gz 104225 BLAKE2B c0748409d20231d075f7461ecc7b96922a100922a4db75265fd7f687d2212c020d24fbd3011459b48b8f786bff2c025579d5f0cacbc9c7d3694a5bf717cd9d35 SHA512 210a2225a83f10ce6d79f2eb4d5937e7fa805384767f4e2d1ca91fe8408436560ad062b8d6c69209651fdf304e6a850e14b9d0a509dc25fe13ab9225d2ca7bdc
diff --git a/dev-ruby/treetop/metadata.xml b/dev-ruby/treetop/metadata.xml
index 920ba0cb8e53..e6c12ca8f8fa 100644
--- a/dev-ruby/treetop/metadata.xml
+++ b/dev-ruby/treetop/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/treetop/treetop-1.6.10.ebuild b/dev-ruby/treetop/treetop-1.6.10.ebuild
deleted file mode 100644
index 076b0dc7f933..000000000000
--- a/dev-ruby/treetop/treetop-1.6.10.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Treetop is a language for describing languages"
-HOMEPAGE="https://github.com/cjheath/treetop"
-LICENSE="Ruby"
-
-KEYWORDS="~amd64 ~arm ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "test? ( >=dev-ruby/rr-1.0 dev-ruby/activesupport )"
-ruby_add_rdepend ">=dev-ruby/polyglot-0.3.1:0"
-
-all_ruby_install() {
- all_fakegem_install
-
- insinto /usr/share/doc/${PF}/examples
- doins -r examples/*
-}
diff --git a/dev-ruby/treetop/treetop-1.6.12.ebuild b/dev-ruby/treetop/treetop-1.6.12.ebuild
new file mode 100644
index 000000000000..f255b7c9d3e4
--- /dev/null
+++ b/dev-ruby/treetop/treetop-1.6.12.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="treetop.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Treetop is a language for describing languages"
+HOMEPAGE="https://github.com/cjheath/treetop"
+SRC_URI="https://github.com/cjheath/treetop/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE=""
+
+ruby_add_bdepend "test? ( >=dev-ruby/rr-1.0 dev-ruby/activesupport )"
+ruby_add_rdepend ">=dev-ruby/polyglot-0.3.1:0"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ dodoc -r examples
+}
diff --git a/dev-ruby/trollop/Manifest b/dev-ruby/trollop/Manifest
deleted file mode 100644
index 563a9380b8eb..000000000000
--- a/dev-ruby/trollop/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST trollop-2.1.3.gem 30208 BLAKE2B a5fd19679821c55459cf7792f3ec26b8580732e84107f7a3519dcbcf1729ce48567ca2d35346b3e27d3083a3b6cae160ded8c18a118cb04a7a6e60c82bd91e78 SHA512 4d172c6d75f40edb36c353d2e32afce10b012f02927772fa201256126f88c62adce39400225434a80fd678e1cad703e3d3f32cdeddd150287a44ff81a2fca819
diff --git a/dev-ruby/trollop/metadata.xml b/dev-ruby/trollop/metadata.xml
deleted file mode 100644
index eb1e47f2edfb..000000000000
--- a/dev-ruby/trollop/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-ruby/trollop/trollop-2.1.3.ebuild b/dev-ruby/trollop/trollop-2.1.3.ebuild
deleted file mode 100644
index 08bad14c968d..000000000000
--- a/dev-ruby/trollop/trollop-2.1.3.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="FAQ.txt History.txt README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Trollop is a commandline option parser for Ruby"
-HOMEPAGE="https://manageiq.github.io/trollop/"
-LICENSE="MIT"
-
-KEYWORDS="~alpha amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="2"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/chronic )"
-
-all_ruby_prepare() {
- sed -i -e '/bundle/ s:^:#:' Rakefile || die
-}
-
-each_ruby_test() {
- MUTANT=true ${RUBY} -S rake test || die "Tests failed."
-}
diff --git a/dev-ruby/ttfunk/Manifest b/dev-ruby/ttfunk/Manifest
index 923d98deb1a6..9f26518ede30 100644
--- a/dev-ruby/ttfunk/Manifest
+++ b/dev-ruby/ttfunk/Manifest
@@ -1 +1,2 @@
-DIST ttfunk-1.5.1.tar.gz 1454516 BLAKE2B 08bb349f4289977b7391013a6686a05f27b4faea9f4b005a5056e525ce02fba2de43712e4538ccf17d967d9cc2c29cbb95e6fc39fc11b6c17291ceac54f63849 SHA512 6f2ffb30200b5b5d36150fe8e81e376e8f4ceec3ac4b1bfe9363191f37616f7a22849a826c19a87458ea5ca70c381e6f976311964bac113bfe5aa767d9e459d4
+DIST ttfunk-1.7.0.tar.gz 13625349 BLAKE2B 1d401d181eb9cffea9bbb31b631b6a5d1a9c268af41baa1d976ab589111413ad02e3c32ca9c7a0493d9399dc169effa7a06e22bc9b2443afabb297cc7bb0ec03 SHA512 5b026feae0b2a32e141edc6bccd926292ddbff1569f1c11f075647e8a0e6c0fdd4d7e4ecca023bf71f08438a4782556c5f5106d067310937124ad154c7225d78
+DIST ttfunk-1.8.0.tar.gz 13640189 BLAKE2B 68e44c86aecef83dbb50f65296a9115fa870129806e59cf5a23dfd474819fba7da65637e54253522b572a19df3698250965dea5f6ac29b0ed717703fc4e2364f SHA512 af37f2ad4151bb74248156481813d700049ae68fed98aec0719636ae593e8dd3445ec2c7504072e68d07e5df340c50b29e6661a76af0fe1efbcb3469fff08777
diff --git a/dev-ruby/ttfunk/metadata.xml b/dev-ruby/ttfunk/metadata.xml
index 5c2d455d6ee0..0d006c0dd8bc 100644
--- a/dev-ruby/ttfunk/metadata.xml
+++ b/dev-ruby/ttfunk/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/ttfunk/ttfunk-1.5.1.ebuild b/dev-ruby/ttfunk/ttfunk-1.5.1.ebuild
deleted file mode 100644
index d62a7fee0b7f..000000000000
--- a/dev-ruby/ttfunk/ttfunk-1.5.1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="A TrueType font parser written in pure ruby"
-HOMEPAGE="https://github.com/prawnpdf/ttfunk/"
-SRC_URI="https://github.com/prawnpdf/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="|| ( GPL-2 GPL-3 Ruby )"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/bundler/I s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/ttfunk/ttfunk-1.7.0-r1.ebuild b/dev-ruby/ttfunk/ttfunk-1.7.0-r1.ebuild
new file mode 100644
index 000000000000..ee72ee670981
--- /dev/null
+++ b/dev-ruby/ttfunk/ttfunk-1.7.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="ttfunk.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A TrueType font parser written in pure ruby"
+HOMEPAGE="https://github.com/prawnpdf/ttfunk/"
+SRC_URI="https://github.com/prawnpdf/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( GPL-2 GPL-3 Ruby )"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/ttfunk/ttfunk-1.8.0.ebuild b/dev-ruby/ttfunk/ttfunk-1.8.0.ebuild
new file mode 100644
index 000000000000..d00d42937e02
--- /dev/null
+++ b/dev-ruby/ttfunk/ttfunk-1.8.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="ttfunk.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A TrueType font parser written in pure ruby"
+HOMEPAGE="https://github.com/prawnpdf/ttfunk/"
+SRC_URI="https://github.com/prawnpdf/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( GPL-2 GPL-3 Ruby )"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+
+ruby_add_rdepend ">=dev-ruby/bigdecimal-3.1:0"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/tty-color/Manifest b/dev-ruby/tty-color/Manifest
index b12ec93129c8..57cc6141f031 100644
--- a/dev-ruby/tty-color/Manifest
+++ b/dev-ruby/tty-color/Manifest
@@ -1,2 +1 @@
-DIST tty-color-0.4.3.gem 11776 BLAKE2B 4e51a41fb97b343c22a6ae832a449905fc215b7e218a31c993a47c66c66c049f70ce0da163d27f593309c6e49c014badc378ea89dec42c94ce6ba9e088798952 SHA512 4447c02f9b738f4fbecc14149d6c09da2da36c489d118f7d18b85f48b9c22b7939e5c62a32048f1a0c958533be15ead3952c72ea03fd1d06b23b1ed29beadcd8
-DIST tty-color-0.5.0.gem 11776 BLAKE2B fc22689783c86b5d18bd3134b198b2bdf50563bc14a25b8a02611ac6a46f494c86b17ff1307089a87ad92442d99da3d408b4907b83f3c67f495a66ceaaddc2ee SHA512 998da9196055b011edf8b20595e548447d7a3cda3555a61c2645dac618dcebf8fcd3b257ae8948f93fd7720956f6dc2b554fb5521a8847017c4a2ab2e2b74e73
+DIST tty-color-0.6.0.tar.gz 12298 BLAKE2B c6d86666cbc8b46f2e5ef37556457bcffd4a92c65ae6a281ad989ded3d89ded8e3e3f5a1a3f91b009b7acdad9f2697d7100239c13eece4d2222c1fe1e8c2c2d0 SHA512 ab4f550ccf8fdc2cd0ad9368948819e4b77473a087510a4853036f18cfb21bab89e36631372cc5f2ee4f5d44c8c84954d14956d7cb7c3050e58d1ce19d11754f
diff --git a/dev-ruby/tty-color/metadata.xml b/dev-ruby/tty-color/metadata.xml
index bb1d1133ed40..2a58a8fc1bdd 100644
--- a/dev-ruby/tty-color/metadata.xml
+++ b/dev-ruby/tty-color/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tty-color/tty-color-0.4.3.ebuild b/dev-ruby/tty-color/tty-color-0.4.3.ebuild
deleted file mode 100644
index af90325690f8..000000000000
--- a/dev-ruby/tty-color/tty-color-0.4.3.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Terminal color capabilities detection"
-HOMEPAGE="https://github.com/piotrmurach/tty-color"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- echo '-rspec_helper' > .rspec || die
-}
diff --git a/dev-ruby/tty-color/tty-color-0.5.0.ebuild b/dev-ruby/tty-color/tty-color-0.5.0.ebuild
deleted file mode 100644
index af90325690f8..000000000000
--- a/dev-ruby/tty-color/tty-color-0.5.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Terminal color capabilities detection"
-HOMEPAGE="https://github.com/piotrmurach/tty-color"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- echo '-rspec_helper' > .rspec || die
-}
diff --git a/dev-ruby/tty-color/tty-color-0.6.0-r1.ebuild b/dev-ruby/tty-color/tty-color-0.6.0-r1.ebuild
new file mode 100644
index 000000000000..02f13af63803
--- /dev/null
+++ b/dev-ruby/tty-color/tty-color-0.6.0-r1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="tty-color.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Terminal color capabilities detection"
+HOMEPAGE="https://github.com/piotrmurach/tty-color"
+SRC_URI="https://github.com/piotrmurach/tty-color/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+all_ruby_prepare() {
+ echo '-rspec_helper' > .rspec || die
+
+ sed -i -e 's:require_relative ":require "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/tty-color/tty-color-0.6.0.ebuild b/dev-ruby/tty-color/tty-color-0.6.0.ebuild
new file mode 100644
index 000000000000..139c2d86ea3f
--- /dev/null
+++ b/dev-ruby/tty-color/tty-color-0.6.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="tty-color.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Terminal color capabilities detection"
+HOMEPAGE="https://github.com/piotrmurach/tty-color"
+SRC_URI="https://github.com/piotrmurach/tty-color/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ echo '-rspec_helper' > .rspec || die
+
+ sed -i -e 's:require_relative ":require "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/tty-command/Manifest b/dev-ruby/tty-command/Manifest
index b8f21fb31199..f9ece87fe750 100644
--- a/dev-ruby/tty-command/Manifest
+++ b/dev-ruby/tty-command/Manifest
@@ -1 +1 @@
-DIST tty-command-0.8.2.tar.gz 30126 BLAKE2B 858b9c60380859bd984295e00638ba93416c62acbe4e5c1d0e33b411862d729c129f00dda236f4ca9943962859a35c9fe1fa2431327fb2e3170366412f8d83e3 SHA512 151af5fe0cf241b4e8004560d04fe967d8fe1d24cf311d64c4fab46d1c11b1fe27849f3925f13d3a73b7b86a55aabacd3e4bbffa9a96c34669c93b29756fe88e
+DIST tty-command-0.10.1.tar.gz 32359 BLAKE2B 85dd115d113abda7464f1d6935a730c97c312bcd280c16bbff44f5da294ed9197df2615449656ce8d403b4118c6d363710eb32e49a2ebb3c75896f5feda85bce SHA512 aa707f3af6b72f20ea692469c7dc60bbf146bc59eaedf4a57408a463e7f96b48dc9ec60de31f2298e36b6d56320b238b4364ee0f90d1499784d001e963ea6fa1
diff --git a/dev-ruby/tty-command/metadata.xml b/dev-ruby/tty-command/metadata.xml
index 9be0b27e3e08..a50d4c84fd80 100644
--- a/dev-ruby/tty-command/metadata.xml
+++ b/dev-ruby/tty-command/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tty-command/tty-command-0.10.1-r1.ebuild b/dev-ruby/tty-command/tty-command-0.10.1-r1.ebuild
new file mode 100644
index 000000000000..070f71a6b410
--- /dev/null
+++ b/dev-ruby/tty-command/tty-command-0.10.1-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Terminal color capabilities detection"
+HOMEPAGE="https://github.com/piotrmurach/tty-command"
+SRC_URI="https://github.com/piotrmurach/tty-command/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/pastel-0.8:0"
+
+all_ruby_prepare() {
+ echo '-rspec_helper' > .rspec || die
+
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/tty-command/tty-command-0.8.2.ebuild b/dev-ruby/tty-command/tty-command-0.8.2.ebuild
deleted file mode 100644
index 3bb1808e5d9c..000000000000
--- a/dev-ruby/tty-command/tty-command-0.8.2.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Terminal color capabilities detection"
-HOMEPAGE="https://github.com/piotrmurach/tty-command"
-SRC_URI="https://github.com/piotrmurach/tty-command/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "=dev-ruby/pastel-0.7*"
-
-all_ruby_prepare() {
- echo '-rspec_helper' > .rspec || die
-}
diff --git a/dev-ruby/tty-cursor/Manifest b/dev-ruby/tty-cursor/Manifest
index 301fca50f93e..7d714e52e271 100644
--- a/dev-ruby/tty-cursor/Manifest
+++ b/dev-ruby/tty-cursor/Manifest
@@ -1 +1 @@
-DIST tty-cursor-0.7.0.gem 11776 BLAKE2B 5dea8f2bde63f803639b4300bf3a8b22a89de7a20530ede38f75bdae7fbb522fe70adb0c78e20cc45e8001dba9fb378722f9fce6d26a68c0af00b7bc98a62a96 SHA512 00de195ba183174ebd10da7f1fdbb436a17fe9befc6eacb2d4cf4b1505be2c7d0719c0dc32d75a82900b2252ffbed00219ce31836c442b63c267e26dad40da63
+DIST tty-cursor-0.7.1.tar.gz 11015 BLAKE2B 222602d7dd3ef2372555913dc59bdd4b4965ac5c3601268d0f77060835d4ae9bc9fa23d54f811e7c0a453b80786d4ef07e0bd26cc8d76f6b963787a04b17569b SHA512 7c1f664bfb3c8c46aab08cb3806b8a00d92b45195fae47e851967f88040cc64d598bdd80e37f782be83fa60dff82c607d93026ffbf003125fea8230f4e18639e
diff --git a/dev-ruby/tty-cursor/metadata.xml b/dev-ruby/tty-cursor/metadata.xml
index 87a04500289e..b947d55ae204 100644
--- a/dev-ruby/tty-cursor/metadata.xml
+++ b/dev-ruby/tty-cursor/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tty-cursor/tty-cursor-0.7.0.ebuild b/dev-ruby/tty-cursor/tty-cursor-0.7.0.ebuild
deleted file mode 100644
index 560f169fc107..000000000000
--- a/dev-ruby/tty-cursor/tty-cursor-0.7.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Move the terminal cursor around and manipulate text using intuitive method calls"
-HOMEPAGE="https://github.com/piotrmurach/tty-cursor"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- echo '-rspec_helper' > .rspec || die
-}
diff --git a/dev-ruby/tty-cursor/tty-cursor-0.7.1-r1.ebuild b/dev-ruby/tty-cursor/tty-cursor-0.7.1-r1.ebuild
new file mode 100644
index 000000000000..bf71d2b5e4ef
--- /dev/null
+++ b/dev-ruby/tty-cursor/tty-cursor-0.7.1-r1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="tty-cursor.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Move the terminal cursor around and manipulate text using intuitive method calls"
+HOMEPAGE="https://github.com/piotrmurach/tty-cursor"
+SRC_URI="https://github.com/piotrmurach/tty-cursor/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+all_ruby_prepare() {
+ echo '-rspec_helper' > .rspec || die
+
+ sed -i -e 's:require_relative ":require "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/tty-cursor/tty-cursor-0.7.1.ebuild b/dev-ruby/tty-cursor/tty-cursor-0.7.1.ebuild
new file mode 100644
index 000000000000..bba595145135
--- /dev/null
+++ b/dev-ruby/tty-cursor/tty-cursor-0.7.1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby26 ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="tty-cursor.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Move the terminal cursor around and manipulate text using intuitive method calls"
+HOMEPAGE="https://github.com/piotrmurach/tty-cursor"
+SRC_URI="https://github.com/piotrmurach/tty-cursor/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ echo '-rspec_helper' > .rspec || die
+
+ sed -i -e 's:require_relative ":require "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/tty-editor/Manifest b/dev-ruby/tty-editor/Manifest
new file mode 100644
index 000000000000..899446d4cb5f
--- /dev/null
+++ b/dev-ruby/tty-editor/Manifest
@@ -0,0 +1 @@
+DIST tty-editor-0.7.0.tar.gz 18140 BLAKE2B 917ea287b30588ffdf705d4ea06c711884b4dc7ba348f9acd08f0cf4e71c854ebcec6f7b8285e9fc1d45225f8ccb295dcb23b9493fcea2ac831c352cd7cc3680 SHA512 c5d6a781b0be00ee14e6fa30ff0bbb26fd9548726ff0e101163a8b4206bec9c7ffb520679041c1f174c2f65d76ea71177718a6fc5e06e8191dc5510aafd33175
diff --git a/dev-ruby/tty-editor/metadata.xml b/dev-ruby/tty-editor/metadata.xml
new file mode 100644
index 000000000000..03bcb30c7219
--- /dev/null
+++ b/dev-ruby/tty-editor/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">piotrmurach/tty-editor</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/tty-editor/tty-editor-0.7.0.ebuild b/dev-ruby/tty-editor/tty-editor-0.7.0.ebuild
new file mode 100644
index 000000000000..3eb336c2de5b
--- /dev/null
+++ b/dev-ruby/tty-editor/tty-editor-0.7.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Opens a file or text in the user's preferred editor"
+HOMEPAGE="https://github.com/piotrmurach/tty-editor"
+SRC_URI="https://github.com/piotrmurach/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ruby_add_rdepend ">=dev-ruby/tty-prompt-0.22"
+
+all_ruby_prepare() {
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+ echo '-rspec_helper' > .rspec || die
+}
+
+each_ruby_prepare() {
+ mkdir tmp || die
+}
diff --git a/dev-ruby/tty-file/Manifest b/dev-ruby/tty-file/Manifest
index 577be768f2dc..5a4916ba3981 100644
--- a/dev-ruby/tty-file/Manifest
+++ b/dev-ruby/tty-file/Manifest
@@ -1 +1 @@
-DIST tty-file-0.7.0.tar.gz 26418 BLAKE2B d1fa189a5dc25a64f14e6a14e4c8e92504db262d2acd4f47ee96c1becc59a8ef7cbe18457a492583f9a5a7568dbbfe299b5b90b0ba607df09da3601ec23f8e2a SHA512 178b5da7ef4f265bc2a8203d68219e97b09746571cd485e738d79b6bf1c58e8ed85c5745dda6e094958a20bb75be6de87c4c16e8aaf807220e9ea36cf7a8aca1
+DIST tty-file-0.10.0.tar.gz 31033 BLAKE2B 6d91034fb9ff83f758b260b947a9556a4c45071953025856e65a1d3bf12baab1f583f4d1b01f75aeb8329a4d21c4bcb761cc584ea2944beeda423e8452d0b07e SHA512 5bf3b08b16dc4d7ad918809c8d7860e925fd9ed02fd00f02852674c55a8cd0584d28f39a5b4f28f564aeb38eb0fbe62f89d82fb2a4a7262c874ccec843252946
diff --git a/dev-ruby/tty-file/metadata.xml b/dev-ruby/tty-file/metadata.xml
index 5d386b19e9f2..576d06b2393f 100644
--- a/dev-ruby/tty-file/metadata.xml
+++ b/dev-ruby/tty-file/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tty-file/tty-file-0.10.0-r1.ebuild b/dev-ruby/tty-file/tty-file-0.10.0-r1.ebuild
new file mode 100644
index 000000000000..49b275de0ec5
--- /dev/null
+++ b/dev-ruby/tty-file/tty-file-0.10.0-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="File manipulation utility methods"
+HOMEPAGE="https://github.com/piotrmurach/tty-file"
+SRC_URI="https://github.com/piotrmurach/tty-file/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/diff-lcs-1.3:0
+ >=dev-ruby/pastel-0.8:0
+ >=dev-ruby/tty-prompt-0.22:0
+"
+
+ruby_add_bdepend "test? ( dev-ruby/webmock )"
+
+all_ruby_prepare() {
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+ echo '-rspec_helper' > .rspec || die
+}
+
+each_ruby_prepare() {
+ mkdir tmp || die
+}
diff --git a/dev-ruby/tty-file/tty-file-0.7.0.ebuild b/dev-ruby/tty-file/tty-file-0.7.0.ebuild
deleted file mode 100644
index 736397cd1e6b..000000000000
--- a/dev-ruby/tty-file/tty-file-0.7.0.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="File manipulation utility methods"
-HOMEPAGE="https://github.com/piotrmurach/tty-file"
-SRC_URI="https://github.com/piotrmurach/tty-file/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/diff-lcs-1.3:0
- =dev-ruby/pastel-0.7*
- >=dev-ruby/tty-prompt-0.18:0
-"
-
-ruby_add_bdepend "test? ( dev-ruby/webmock )"
-
-all_ruby_prepare() {
- echo '-rspec_helper' > .rspec || die
-}
-
-each_ruby_prepare() {
- mkdir tmp || die
-}
diff --git a/dev-ruby/tty-platform/Manifest b/dev-ruby/tty-platform/Manifest
index 086bfe2d0895..fb1d9850947f 100644
--- a/dev-ruby/tty-platform/Manifest
+++ b/dev-ruby/tty-platform/Manifest
@@ -1,2 +1 @@
-DIST tty-platform-0.2.0.gem 10240 BLAKE2B 5a49c928cc6c7940bf5feb99a9433dd978a1d21e139f43f646f6a566111ef2e1b6bd4a971327275bd05aaa0394199c7489f00ac4883be9b1ff9bba3ad840dbfc SHA512 56f81c326e81f407246aa7363e4734f3d7e11b6b4abaa5d8f41e684124407df4866ecbc31aa4180703149659245e740d84aa2baee2192e21eccb9ed251db32ac
-DIST tty-platform-0.2.1.gem 10240 BLAKE2B 71f89d0c4a606bb24d1ff2531f8c9a70a3aa9e2ec8b86e83e370742028dd4d3e767791d7553c483078f677ccddedb3bbe2c6c4b5f498256a2b4d6845de9920ee SHA512 f519ab30d242a258d130bedc8fe153c1e31430d85405273b7ff6a409aed294db392c66a96bb6a344fc97ca40fb88cb87db3af26495e755293089d2ce7134db71
+DIST tty-platform-0.3.0.tar.gz 8768 BLAKE2B e4328ff961658906a81d409ffb775b9dc6363dd1ff24a05d98aafd8e85b4c304025d3fd7598f5d2884de9abf0f85dc8389105994d5b6757d96fcfe91041a357e SHA512 78ca0ce5f75bb387d5f79b8ce59603608501afdc1130e04dfb1f233325be5af8d99eb4ec08ec9848eb1d708434a8479484f36aafa9b7112ef02c51369bf75a00
diff --git a/dev-ruby/tty-platform/metadata.xml b/dev-ruby/tty-platform/metadata.xml
index 8254c548c088..2e58f44d8860 100644
--- a/dev-ruby/tty-platform/metadata.xml
+++ b/dev-ruby/tty-platform/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tty-platform/tty-platform-0.2.0.ebuild b/dev-ruby/tty-platform/tty-platform-0.2.0.ebuild
deleted file mode 100644
index e30b88aa6f9c..000000000000
--- a/dev-ruby/tty-platform/tty-platform-0.2.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Query methods for detecting different operating systems"
-HOMEPAGE="https://github.com/piotrmurach/tty-platform"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- echo '-rspec_helper' > .rspec || die
-}
diff --git a/dev-ruby/tty-platform/tty-platform-0.2.1.ebuild b/dev-ruby/tty-platform/tty-platform-0.2.1.ebuild
deleted file mode 100644
index e30b88aa6f9c..000000000000
--- a/dev-ruby/tty-platform/tty-platform-0.2.1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Query methods for detecting different operating systems"
-HOMEPAGE="https://github.com/piotrmurach/tty-platform"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- echo '-rspec_helper' > .rspec || die
-}
diff --git a/dev-ruby/tty-platform/tty-platform-0.3.0-r1.ebuild b/dev-ruby/tty-platform/tty-platform-0.3.0-r1.ebuild
new file mode 100644
index 000000000000..54c973ca6d74
--- /dev/null
+++ b/dev-ruby/tty-platform/tty-platform-0.3.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="tty-platform.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Query methods for detecting different operating systems"
+HOMEPAGE="https://github.com/piotrmurach/tty-platform"
+SRC_URI="https://github.com/piotrmurach/tty-platform/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv"
+IUSE=""
+
+all_ruby_prepare() {
+ echo '-rspec_helper' > .rspec || die
+}
diff --git a/dev-ruby/tty-prompt/Manifest b/dev-ruby/tty-prompt/Manifest
index 17949469a8e4..94787486a854 100644
--- a/dev-ruby/tty-prompt/Manifest
+++ b/dev-ruby/tty-prompt/Manifest
@@ -1 +1 @@
-DIST tty-prompt-0.19.0.gem 71680 BLAKE2B 67da3c428fa5ab602fa4735d06115ba5bab53f06d43109fa06810e538cafae5486767f41927fc77616e608278a0f955659734704c9536b40e87682e6f0e5718b SHA512 958263a7b3b7cfbac2877d81878b324fe53bc258be36749597f959085643e50247651bf48fceff4bf1098b68cf47dae68f30173e45585bfdbf7126959387427a
+DIST tty-prompt-0.23.1.tar.gz 554471 BLAKE2B ae39444b80781ee5c85df87f4ec2b2231b4551a23202070c4570d0e4807a3e4465bb026299dd775de9abf2b8cefe3157cb3fc5297cce4d248f6f8e2aca8c572d SHA512 5e2762d2b229f0aadde7fa09e43ccd317dbda057d829c9003fc6b18f9aaacda1416357af733c4e4f308041c8119ef344b3adc1954a6d31abf801cffdb1848a61
diff --git a/dev-ruby/tty-prompt/metadata.xml b/dev-ruby/tty-prompt/metadata.xml
index a2602b5574e6..4fb022c1c931 100644
--- a/dev-ruby/tty-prompt/metadata.xml
+++ b/dev-ruby/tty-prompt/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tty-prompt/tty-prompt-0.19.0.ebuild b/dev-ruby/tty-prompt/tty-prompt-0.19.0.ebuild
deleted file mode 100644
index 9e021c8b536c..000000000000
--- a/dev-ruby/tty-prompt/tty-prompt-0.19.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A beautiful and powerful interactive command line prompt"
-HOMEPAGE="https://github.com/piotrmurach/tty-prompt"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- =dev-ruby/necromancer-0.5*
- =dev-ruby/pastel-0.7*
- =dev-ruby/tty-reader-0.6*
-"
-
-all_ruby_prepare() {
- echo '-rspec_helper' > .rspec || die
-}
diff --git a/dev-ruby/tty-prompt/tty-prompt-0.23.1-r1.ebuild b/dev-ruby/tty-prompt/tty-prompt-0.23.1-r1.ebuild
new file mode 100644
index 000000000000..cdefde250a22
--- /dev/null
+++ b/dev-ruby/tty-prompt/tty-prompt-0.23.1-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="tty-prompt.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A beautiful and powerful interactive command line prompt"
+HOMEPAGE="https://github.com/piotrmurach/tty-prompt"
+SRC_URI="https://github.com/piotrmurach/tty-prompt/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/pastel-0.8:0
+ >=dev-ruby/tty-reader-0.8:0
+"
+
+all_ruby_prepare() {
+ echo '-rspec_helper' > .rspec || die
+ sed -i -e 's:require_relative ":require "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/tty-prompt/tty-prompt-0.23.1.ebuild b/dev-ruby/tty-prompt/tty-prompt-0.23.1.ebuild
new file mode 100644
index 000000000000..83aeb404b223
--- /dev/null
+++ b/dev-ruby/tty-prompt/tty-prompt-0.23.1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="tty-prompt.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A beautiful and powerful interactive command line prompt"
+HOMEPAGE="https://github.com/piotrmurach/tty-prompt"
+SRC_URI="https://github.com/piotrmurach/tty-prompt/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/pastel-0.8:0
+ >=dev-ruby/tty-reader-0.8:0
+"
+
+all_ruby_prepare() {
+ echo '-rspec_helper' > .rspec || die
+ sed -i -e 's:require_relative ":require "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/tty-reader/Manifest b/dev-ruby/tty-reader/Manifest
index 62f9b47a77ec..4e46cdc47bad 100644
--- a/dev-ruby/tty-reader/Manifest
+++ b/dev-ruby/tty-reader/Manifest
@@ -1 +1 @@
-DIST tty-reader-0.6.0.gem 24576 BLAKE2B a89c74bc97a57961c3779b96aa328b536d110517ab2663fbf566f84f434eb552f9a38dd00c644d64430a4e8806611b454ee6d46a76e9c89fb4c93c276f050eb1 SHA512 562c204f0dd43539b64bab0f55731ad8650b17d8052c245467aa60cc113e6b31998086fcb7f37f8503ec51ae4511241d5994e8ae1586ed528a07c5ebdc3fce83
+DIST tty-reader-0.9.0.tar.gz 461051 BLAKE2B f2a48a929fc7ec0f6f98e4508ed50638e041939ae2eadf96cb8d04e4a771304e63648d5c3a85581fef3ae4740a570114e8d427637c6b3a05ece400f7963a26cb SHA512 2480f480a6ab0fa0854386ba0c31b5e78ff53a2d65b23825b13e50929337f56f8e38d1277f61509139cb43eddd8a933fadcd9d3c916c9dbaacf4dac1ec38dbaf
diff --git a/dev-ruby/tty-reader/metadata.xml b/dev-ruby/tty-reader/metadata.xml
index 06cd02994117..daef087f75d0 100644
--- a/dev-ruby/tty-reader/metadata.xml
+++ b/dev-ruby/tty-reader/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tty-reader/tty-reader-0.6.0-r1.ebuild b/dev-ruby/tty-reader/tty-reader-0.6.0-r1.ebuild
deleted file mode 100644
index 3bcd1faf6603..000000000000
--- a/dev-ruby/tty-reader/tty-reader-0.6.0-r1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Methods for processing keyboard input in character, line and multiline modes"
-HOMEPAGE="https://github.com/piotrmurach/tty-reader"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/tty-cursor-0.7:0
- >=dev-ruby/tty-screen-0.7:0
- =dev-ruby/wisper-2.0*
-"
-
-all_ruby_prepare() {
- echo '-rspec_helper' > .rspec || die
-}
diff --git a/dev-ruby/tty-reader/tty-reader-0.9.0-r1.ebuild b/dev-ruby/tty-reader/tty-reader-0.9.0-r1.ebuild
new file mode 100644
index 000000000000..e6a9b9c8278b
--- /dev/null
+++ b/dev-ruby/tty-reader/tty-reader-0.9.0-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="tty-reader.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Methods for processing keyboard input in character, line and multiline modes"
+HOMEPAGE="https://github.com/piotrmurach/tty-reader"
+SRC_URI="https://github.com/piotrmurach/tty-reader/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/tty-cursor-0.7:0
+ >=dev-ruby/tty-screen-0.8:0
+ =dev-ruby/wisper-2*
+"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/tty-reader/tty-reader-0.9.0.ebuild b/dev-ruby/tty-reader/tty-reader-0.9.0.ebuild
new file mode 100644
index 000000000000..093514201713
--- /dev/null
+++ b/dev-ruby/tty-reader/tty-reader-0.9.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="tty-reader.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Methods for processing keyboard input in character, line and multiline modes"
+HOMEPAGE="https://github.com/piotrmurach/tty-reader"
+SRC_URI="https://github.com/piotrmurach/tty-reader/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/tty-cursor-0.7:0
+ >=dev-ruby/tty-screen-0.8:0
+ =dev-ruby/wisper-2*
+"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/tty-screen/Manifest b/dev-ruby/tty-screen/Manifest
index eadd70a239a3..c31a55eed6e4 100644
--- a/dev-ruby/tty-screen/Manifest
+++ b/dev-ruby/tty-screen/Manifest
@@ -1 +1,2 @@
-DIST tty-screen-0.7.0.gem 12288 BLAKE2B e61b5462d6c2a8dae96d6e89d8025f2d2ea8bba8328318e067d612832b479ccd34a457a74432ccbe4cf27f26e439f44d67890a492dfa6f8836d2b86512ce9198 SHA512 1851c0ea90af65cd1fa9a4a2b4c93d3fa2badf81507d4bb149183aa49578208ddef0065f3047cef4ffa23d3f34840af919ac4f6a2805f7ce0f01096f27101694
+DIST tty-screen-0.8.1.tar.gz 13019 BLAKE2B 9c9ccb49ae323ebc67c5bca918303586fb749813539aed32a892f3135aa392f6c77b078bab2c7bd116d9f152ee2745d72aae38a91cf4292d1f360085d88060ba SHA512 b0a01c49bb0c56f23c8b384a2d4f4b5c7168863a35c3ab7160d0f34c7d63a2b10b3b9f0f54c6d56e2424a8b16e6ba74268ac81af631976876fb37eb9c347c393
+DIST tty-screen-0.8.2.tar.gz 16861 BLAKE2B 47e1035ec9275a4034be09eab35e9bf63c2425a42fbc176cc20f314f9bfefb86e854d4ee1982ad0c90b7e47f4153f067e9b55da7e48f921b19fc36aad35f7257 SHA512 ab91cd41e888a3ec3a0029c62253bfe5fa708865ed946fe6859c2d64cc8dcfadece57ce6fa773ab924e78782b57b107e1614519088ab3197b0eaed3dd76e54b0
diff --git a/dev-ruby/tty-screen/files/tty-screen-0.8.1-ioctl-test.patch b/dev-ruby/tty-screen/files/tty-screen-0.8.1-ioctl-test.patch
new file mode 100644
index 000000000000..0933f1f611b0
--- /dev/null
+++ b/dev-ruby/tty-screen/files/tty-screen-0.8.1-ioctl-test.patch
@@ -0,0 +1,55 @@
+From dba351b178ae06b56985cc77a291918a0fc4aff4 Mon Sep 17 00:00:00 2001
+From: Piotr Murach <pmurach@gmail.com>
+Date: Mon, 16 Aug 2021 22:13:27 +0200
+Subject: [PATCH] Fix ioctl call test to stub terminal size encoding for
+ big-endian systems
+
+Fixes #13
+---
+ CHANGELOG.md | 6 ++++++
+ spec/unit/screen_spec.rb | 8 +++++++-
+ 2 files changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/CHANGELOG.md b/CHANGELOG.md
+index 91dd6ab..0f369bd 100644
+--- a/CHANGELOG.md
++++ b/CHANGELOG.md
+@@ -1,5 +1,10 @@
+ # Change log
+
++## [v0.8.2] - unreleased
++
++### Fixed
++* Fix ioctl call test to stub terminal size encoding for big-endian systems
++
+ ## [v0.8.1] - 2020-07-17
+
+ ### Fixed
+@@ -136,6 +141,7 @@
+ ### Fixed
+ * Fix bug with screen detection from_io_console by @luxflux
+
++[v0.8.2]: https://github.com/piotrmurach/tty-screen/compare/v0.8.1...v0.8.2
+ [v0.8.1]: https://github.com/piotrmurach/tty-screen/compare/v0.8.0...v0.8.1
+ [v0.8.0]: https://github.com/piotrmurach/tty-screen/compare/v0.7.1...v0.8.0
+ [v0.7.1]: https://github.com/piotrmurach/tty-screen/compare/v0.7.0...v0.7.1
+diff --git a/spec/unit/screen_spec.rb b/spec/unit/screen_spec.rb
+index 3666a3c..de78ff3 100644
+--- a/spec/unit/screen_spec.rb
++++ b/spec/unit/screen_spec.rb
+@@ -6,8 +6,14 @@ def winsize
+ [100, 200]
+ end
+
++ def big_endian?
++ [1].pack("S") == [1].pack("n")
++ end
++
+ def ioctl(control, buf)
+- buf.replace("3\x00\xD3\x00\xF2\x04\xCA\x02\x00")
++ little_endian = "3\x00\xD3\x00\xF2\x04\xCA\x02\x00"
++ big_endian = "\x003\x00\xD3\x04\xF2\x02\xCA"
++ buf.replace(big_endian? ? big_endian : little_endian)
+ 0
+ end
+ end
diff --git a/dev-ruby/tty-screen/metadata.xml b/dev-ruby/tty-screen/metadata.xml
index f15476d6e7fc..396bc9b6049b 100644
--- a/dev-ruby/tty-screen/metadata.xml
+++ b/dev-ruby/tty-screen/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tty-screen/tty-screen-0.7.0.ebuild b/dev-ruby/tty-screen/tty-screen-0.7.0.ebuild
deleted file mode 100644
index d676a6aa0842..000000000000
--- a/dev-ruby/tty-screen/tty-screen-0.7.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Terminal screen size detection which works on Linux, OS X and Windows/Cygwin"
-HOMEPAGE="https://github.com/piotrmurach/tty-screen"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- echo '-rspec_helper' > .rspec || die
-}
diff --git a/dev-ruby/tty-screen/tty-screen-0.8.1.ebuild b/dev-ruby/tty-screen/tty-screen-0.8.1.ebuild
new file mode 100644
index 000000000000..40667d07ea73
--- /dev/null
+++ b/dev-ruby/tty-screen/tty-screen-0.8.1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="tty-screen.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Terminal screen size detection which works on Linux, OS X and Windows/Cygwin"
+HOMEPAGE="https://github.com/piotrmurach/tty-screen"
+SRC_URI="https://github.com/piotrmurach/tty-screen/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+PATCHES=( "${FILESDIR}/${P}-ioctl-test.patch" )
+
+all_ruby_prepare() {
+ echo '-rspec_helper' > .rspec || die
+ sed -i -e 's:require_relative ":require "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+ rm -f spec/perf/size_spec.rb || die
+}
diff --git a/dev-ruby/tty-screen/tty-screen-0.8.2.ebuild b/dev-ruby/tty-screen/tty-screen-0.8.2.ebuild
new file mode 100644
index 000000000000..8e09d60f9ed2
--- /dev/null
+++ b/dev-ruby/tty-screen/tty-screen-0.8.2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+RUBY_FAKEGEM_GEMSPEC="tty-screen.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Terminal screen size detection which works on Linux, OS X and Windows/Cygwin"
+HOMEPAGE="https://github.com/piotrmurach/tty-screen"
+SRC_URI="https://github.com/piotrmurach/tty-screen/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ echo '-rspec_helper' > .rspec || die
+ sed -i -e 's:require_relative ":require "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid performance specs. These depend on unpackaged
+ # rspec-benchmark and are likely to fail on at least some Gentoo
+ # systems.
+ rm -f spec/perf/{screen,size}_spec.rb || die
+}
diff --git a/dev-ruby/tty-which/Manifest b/dev-ruby/tty-which/Manifest
index ccb058bc7a06..837a6ca96d32 100644
--- a/dev-ruby/tty-which/Manifest
+++ b/dev-ruby/tty-which/Manifest
@@ -1 +1 @@
-DIST tty-which-0.4.1.gem 11264 BLAKE2B 540249aaeaa5458fef3572413cf673e04765c1ad41971ac3f9bd930a42855459db6c6f8f47c90ee1021993161db6a399ba6edd0384da7db91da999550d3e733b SHA512 e48b284abb3e4177b9f04acec5202a70d3fcaa2d477444c5a9d9920ac00eb192656bc48ca33d72c26845b415a0a90e907dab1dd35608b62bc8e4b1b1b25af51c
+DIST tty-which-0.5.0.tar.gz 11560 BLAKE2B 0b8d821168759ff744ded5a5d7b0864303ed71510dd233b39b6f12fe42f044c4fb48da8f9b0cb16875ae9cce5c66060af8cff858aaa88bdaddfc971886f2ce8b SHA512 a5be30dc857eed2aa8ce81f1c62467451760482b1f51f1c0654c57001a9ab828d31b22b35cd9e37ea2fe91a7514a1a15107b5fc948a561a2ee4e58e0748bacd3
diff --git a/dev-ruby/tty-which/metadata.xml b/dev-ruby/tty-which/metadata.xml
index 5fd42b5104ca..c8c94d104289 100644
--- a/dev-ruby/tty-which/metadata.xml
+++ b/dev-ruby/tty-which/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/tty-which/tty-which-0.4.1.ebuild b/dev-ruby/tty-which/tty-which-0.4.1.ebuild
deleted file mode 100644
index 74bbc5701956..000000000000
--- a/dev-ruby/tty-which/tty-which-0.4.1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Platform independent implementation of Unix which command"
-HOMEPAGE="https://github.com/piotrmurach/tty-which"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- echo '-rspec_helper' > .rspec || die
-}
diff --git a/dev-ruby/tty-which/tty-which-0.5.0.ebuild b/dev-ruby/tty-which/tty-which-0.5.0.ebuild
new file mode 100644
index 000000000000..5e7be26bf8c5
--- /dev/null
+++ b/dev-ruby/tty-which/tty-which-0.5.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="tty-which.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Platform independent implementation of Unix which command"
+HOMEPAGE="https://github.com/piotrmurach/tty-which"
+SRC_URI="https://github.com/piotrmurach/tty-which/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv"
+IUSE=""
+
+all_ruby_prepare() {
+ echo '-rspec_helper' > .rspec || die
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Fix running specs without bundler, fixed upstream
+ sed -e 's/receive(:join)$/receive(:join).and_call_original/' \
+ -e '96iallow(::File).to receive(:join).and_call_original' \
+ -e '115iallow(::File).to receive(:join).and_call_original' \
+ -i spec/unit/which_spec.rb || die
+ sed -e '5iallow(::File).to receive(:join).and_call_original' \
+ -i spec/unit/executable_file_spec.rb || die
+}
diff --git a/dev-ruby/turbolinks-source/Manifest b/dev-ruby/turbolinks-source/Manifest
deleted file mode 100644
index 3949c98031dd..000000000000
--- a/dev-ruby/turbolinks-source/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST turbolinks-source-5.2.0.gem 13824 BLAKE2B cdb7adb85e275d5e6edc4f0a03d75edac2f974ff0c1e2f7c003865edef018f0b0d24775d3db2cdabf1f7bf49869441d6af2362f236904fb9d6773b1a47173795 SHA512 19d1fc17f3af81bfc79a1e513aec88dfafa808a2f7954acb14f32909b308ce399f36bc18de313ea58812b13cdc9e65cbae5392cd4c88ea010f1efcef99356557
diff --git a/dev-ruby/turbolinks-source/metadata.xml b/dev-ruby/turbolinks-source/metadata.xml
deleted file mode 100644
index e4d253a9873e..000000000000
--- a/dev-ruby/turbolinks-source/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rails/turbolinks-source-gem</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/turbolinks-source/turbolinks-source-5.2.0.ebuild b/dev-ruby/turbolinks-source/turbolinks-source-5.2.0.ebuild
deleted file mode 100644
index 608c955b8689..000000000000
--- a/dev-ruby/turbolinks-source/turbolinks-source-5.2.0.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-# The gem does not contain runnable tests.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Turbolinks JavaScript assets"
-HOMEPAGE="https://github.com/rails/turbolinks-source-gem"
-
-LICENSE="MIT"
-SLOT="5"
-KEYWORDS="~amd64"
-IUSE="test"
diff --git a/dev-ruby/turbolinks/Manifest b/dev-ruby/turbolinks/Manifest
deleted file mode 100644
index 81ef4d3c9532..000000000000
--- a/dev-ruby/turbolinks/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST turbolinks-2.5.4.gem 21504 BLAKE2B fdf34659e1db5d4ed8e7ed2894c46b4cba8aa30b5f9492797507e7e2c7a212dcc55b673874162fabf017594cbd1e36eac58d03f9d6951e7701293fabe135fb91 SHA512 052cff2ecfbad7a98371572c09c8c66f6c8babb3e997dfd12fcebc1dda6f9c0d8065be83c0f6b04ca1b1f2e0548abb73ada3fb32bc71f1eceb90b5f0ef61a195
-DIST turbolinks-5.2.0.gem 6656 BLAKE2B 7a50571a24175fc5e2c186b79fc40dd9f7a4fc3eb162b64a6b9656bb0263a25e2053bbf8685792186e5aeea8d9795e1a98e0c97e4a3155760a9b7160496b5c79 SHA512 dd69f6249463844da655ec57db34e55fe7e9fb43d2cf0eed87d20deb578ae9f84541b80df00b0f056da7cbea6b3fda3d55bff10c3e7709c50f98ef543710cc7d
diff --git a/dev-ruby/turbolinks/metadata.xml b/dev-ruby/turbolinks/metadata.xml
deleted file mode 100644
index 037810619008..000000000000
--- a/dev-ruby/turbolinks/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">rails/turbolinks</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/turbolinks/turbolinks-2.5.4.ebuild b/dev-ruby/turbolinks/turbolinks-2.5.4.ebuild
deleted file mode 100644
index 28f5af89698e..000000000000
--- a/dev-ruby/turbolinks/turbolinks-2.5.4.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby22 ruby23 ruby24"
-
-# The gem does not contain runnable tests.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Makes following links in your web application faster"
-HOMEPAGE="https://github.com/rails/turbolinks"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-ruby_add_rdepend "dev-ruby/coffee-rails:*"
diff --git a/dev-ruby/turbolinks/turbolinks-5.2.0.ebuild b/dev-ruby/turbolinks/turbolinks-5.2.0.ebuild
deleted file mode 100644
index f80db61b833b..000000000000
--- a/dev-ruby/turbolinks/turbolinks-5.2.0.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-# The gem does not contain runnable tests.
-RUBY_FAKEGEM_TASK_TEST=""
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Makes following links in your web application faster"
-HOMEPAGE="https://github.com/rails/turbolinks"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
diff --git a/dev-ruby/twitter-text/Manifest b/dev-ruby/twitter-text/Manifest
index cb5af5ec378c..fe29d90d2899 100644
--- a/dev-ruby/twitter-text/Manifest
+++ b/dev-ruby/twitter-text/Manifest
@@ -1,3 +1 @@
-DIST twitter-text-1.14.7.gem 48128 BLAKE2B c80b9cb894438ca427ab3ba864362bd3b1b58a852c4720178fdbffef7d42b276a62d6c39d2163fa875101210a72cebbe2e4aad5c080631f07efb3657da2668b5 SHA512 98addbf8efe7b9f2685f00827194dbb255b31512e8aa5c9dab22ec08b95ccebbcf53790dfc983e71b0644c687b4db98c5d30f74f15b925377403b4d5cf6e5194
-DIST twitter-text-2.1.0.gem 54784 BLAKE2B e0ee791f63d43f8ff8d87f5b4cca337761efac24417702ba5cc0fb50db3b622ef86a2d4ca1ce753272668df825fd92ac561a2cc528ae6435976d830d1ac9a329 SHA512 ac23e05f13a008d733a9417d47e633838584b548a41741a28ca399e1548344b39081b0c6677b7be9df1feb6ffcc491718ddfb5cd55cffb63d7bb680f1431907c
-DIST twitter-text-3.0.0.gem 58880 BLAKE2B daf80ac931ee68a9f0f84ae13433169c70147dd738039b95268e01da59c61717f1df067685df5923bb799b728d788316c3bc7cf1da5b5dc209c485220e8bc8aa SHA512 2afd07636e1cfe140ff26e52ec8a4c23b6116f7166a73e1af1fec283aff7549c06ff46ed51fd178acddd607c1f9c82eff1eee7cb3ce81eeb78a73305e14120ad
+DIST twitter-text-3.1.0.gem 59392 BLAKE2B 91f906db8d4cc17086b7bc421f1730646756aec9e041166e18d816da4b680282f312743c52e412e6595d7565c2c7faf0dd18fea815f3bbc53afa675a33ac3c66 SHA512 b0d5a876bd9c1d4788378ebd5029bed51db6a0c3a7cd2c97433eab3ec3655d7bc427c3873364a368c0a10216871c7373e762cfd57c4bdd69800adc95869aa03a
diff --git a/dev-ruby/twitter-text/files/twitter-text-3.1.0-frozen-string.patch b/dev-ruby/twitter-text/files/twitter-text-3.1.0-frozen-string.patch
new file mode 100644
index 000000000000..02959cafb983
--- /dev/null
+++ b/dev-ruby/twitter-text/files/twitter-text-3.1.0-frozen-string.patch
@@ -0,0 +1,69 @@
+# https://github.com/twitter/twitter-text/pull/337
+diff --git a/lib/twitter-text/deprecation.rb b/lib/twitter-text/deprecation.rb
+index b377abf9..bc66d60f 100644
+--- a/lib/twitter-text/deprecation.rb
++++ b/lib/twitter-text/deprecation.rb
+@@ -8,7 +8,7 @@ module Deprecation
+ def deprecate(method, new_method = nil)
+ deprecated_method = :"deprecated_#{method}"
+ message = "Deprecation: `#{method}` is deprecated."
+- message << " Please use `#{new_method}` instead." if new_method
++ message += " Please use `#{new_method}` instead." if new_method
+
+ alias_method(deprecated_method, method)
+ define_method method do |*args, &block|
+
+diff --git a/lib/twitter-text/autolink.rb b/lib/twitter-text/autolink.rb
+index 82f35302..9b243ec6 100644
+--- a/lib/twitter-text/autolink.rb
++++ b/lib/twitter-text/autolink.rb
+@@ -325,10 +326,10 @@ def link_url_with_entity(entity, options)
+ # <span style='font-size:0'>&nbsp;</span>
+ # …
+ # </span>
+- %(<span class="tco-ellipsis">#{preceding_ellipsis}<span #{invisible_tag_attrs}>&nbsp;</span></span>) <<
+- %(<span #{invisible_tag_attrs}>#{html_escape(before_display_url)}</span>) <<
+- %(<span class="js-display-url">#{html_escape(display_url_sans_ellipses)}</span>) <<
+- %(<span #{invisible_tag_attrs}>#{html_escape(after_display_url)}</span>) <<
++ %(<span class="tco-ellipsis">#{preceding_ellipsis}<span #{invisible_tag_attrs}>&nbsp;</span></span>) +
++ %(<span #{invisible_tag_attrs}>#{html_escape(before_display_url)}</span>) +
++ %(<span class="js-display-url">#{html_escape(display_url_sans_ellipses)}</span>) +
++ %(<span #{invisible_tag_attrs}>#{html_escape(after_display_url)}</span>) +
+ %(<span class="tco-ellipsis"><span #{invisible_tag_attrs}>&nbsp;</span>#{following_ellipsis}</span>)
+ else
+ html_escape(display_url)
+@@ -444,7 +445,7 @@ def tag_attrs(attributes)
+ else
+ value
+ end
+- attrs << %( #{html_escape(key)}="#{html_escape(value)}")
++ attrs = attrs + %( #{html_escape(key)}="#{html_escape(value)}")
+ end
+
+ attrs
+diff --git a/lib/twitter-text/deprecation.rb b/lib/twitter-text/deprecation.rb
+index bc66d60f..cfc4858c 100644
+--- a/lib/twitter-text/deprecation.rb
++++ b/lib/twitter-text/deprecation.rb
+@@ -8,7 +9,7 @@ module Deprecation
+ def deprecate(method, new_method = nil)
+ deprecated_method = :"deprecated_#{method}"
+ message = "Deprecation: `#{method}` is deprecated."
+- message += " Please use `#{new_method}` instead." if new_method
++ message = "#{message} Please use `#{new_method}` instead." if new_method
+
+ alias_method(deprecated_method, method)
+ define_method method do |*args, &block|
+diff --git a/lib/twitter-text/extractor.rb b/lib/twitter-text/extractor.rb
+index a2fd7db7..c96ec200 100644
+--- a/lib/twitter-text/extractor.rb
++++ b/lib/twitter-text/extractor.rb
+@@ -19,7 +20,7 @@ def codepoint_length
+
+ # Helper function to convert this string into an array of unicode code points.
+ def to_codepoint_a
+- @to_codepoint_a ||= if chars.kind_of?(Enumerable)
++ if chars.kind_of?(Enumerable)
+ chars.to_a
+ else
+ codepoint_array = []
diff --git a/dev-ruby/twitter-text/metadata.xml b/dev-ruby/twitter-text/metadata.xml
index d4d877c50e52..79b41d6d58bc 100644
--- a/dev-ruby/twitter-text/metadata.xml
+++ b/dev-ruby/twitter-text/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/twitter-text/twitter-text-1.14.7.ebuild b/dev-ruby/twitter-text/twitter-text-1.14.7.ebuild
deleted file mode 100644
index e619358f7b9b..000000000000
--- a/dev-ruby/twitter-text/twitter-text-1.14.7.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Text handling for Twitter"
-HOMEPAGE="https://github.com/twitter/twitter-text"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "=dev-ruby/unf-0.1*"
-
-ruby_add_bdepend "test? ( >=dev-ruby/multi_json-1.3
- >=dev-ruby/nokogiri-1.5.10 )"
-
-all_ruby_prepare() {
- sed -i -e 's/2.14.0/2.14/' twitter-text.gemspec || die
- sed -i -e '/simplecov/,/end/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/twitter-text/twitter-text-2.1.0.ebuild b/dev-ruby/twitter-text/twitter-text-2.1.0.ebuild
deleted file mode 100644
index c99fa83a6806..000000000000
--- a/dev-ruby/twitter-text/twitter-text-2.1.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Text handling for Twitter"
-HOMEPAGE="https://github.com/twitter/twitter-text"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/idn-ruby
- =dev-ruby/unf-0.1*
-"
-
-ruby_add_bdepend "test? ( >=dev-ruby/multi_json-1.3
- >=dev-ruby/nokogiri-1.8.0 )"
-
-all_ruby_prepare() {
- sed -i -e 's/2.14.0/2.14/' twitter-text.gemspec || die
- sed -i -e '/simplecov/,/end/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/twitter-text/twitter-text-3.0.0.ebuild b/dev-ruby/twitter-text/twitter-text-3.0.0.ebuild
deleted file mode 100644
index 0c091cf061e1..000000000000
--- a/dev-ruby/twitter-text/twitter-text-3.0.0.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_EXTRAINSTALL="config"
-
-inherit ruby-fakegem eapi7-ver
-
-DESCRIPTION="Text handling for Twitter"
-HOMEPAGE="https://github.com/twitter/twitter-text"
-
-LICENSE="MIT"
-SLOT="$(ver_cut 1-2)"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- dev-ruby/idn-ruby
- =dev-ruby/unf-0.1*
-"
-
-ruby_add_bdepend "test? ( >=dev-ruby/multi_json-1.3
- >=dev-ruby/nokogiri-1.8.0 )"
-
-all_ruby_prepare() {
- sed -i -e 's/2.14.0/2.14/' twitter-text.gemspec || die
- sed -i -e '/simplecov/,/end/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/twitter-text/twitter-text-3.1.0-r2.ebuild b/dev-ruby/twitter-text/twitter-text-3.1.0-r2.ebuild
new file mode 100644
index 000000000000..764525f8d6dd
--- /dev/null
+++ b/dev-ruby/twitter-text/twitter-text-3.1.0-r2.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTRAINSTALL="config"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Text handling for Twitter"
+HOMEPAGE="https://github.com/twitter/twitter-text"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~riscv"
+IUSE=""
+
+ruby_add_rdepend "
+ dev-ruby/idn-ruby
+ =dev-ruby/unf-0.1*
+"
+
+ruby_add_bdepend "test? ( >=dev-ruby/nokogiri-1.8.0 )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.1.0-frozen-string.patch"
+)
+
+all_ruby_prepare() {
+ #sed -i -e 's/2.14.0/2.14/' twitter-text.gemspec || die
+ sed -i -e '/simplecov/,/end/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/twitter/Manifest b/dev-ruby/twitter/Manifest
index 75894b2c8261..87742ff58691 100644
--- a/dev-ruby/twitter/Manifest
+++ b/dev-ruby/twitter/Manifest
@@ -1 +1,2 @@
-DIST twitter-6.2.0.tar.gz 519470 BLAKE2B 4c3d929d8706845610b31c8ae702563d0330a95a165e417b77ecfd894b1f216100678c9862856c3c450952e3025940a701d96f0aeb1b29de55e612c6c69ab231 SHA512 5d2bd653233f285e0c08503031317a966ec098e9b302f9e0c65bdbf4632465988b1139719dae1cabb856b08200fc7793cd341fd926981484cf416a01f309d242
+DIST twitter-8.0.0.tar.gz 830698 BLAKE2B 187c37adb2971845730ba8ef15f7350083130c1c2f1704f3dc909aee28e8b7742e1a45b3bac8d198eb45f4e415dd15ebfe0099d9e52b7c5a5ec40ca2a6cdaa2e SHA512 b67e97385cb53cb4d75381fb16a6395d0ea72dc2fa0a900ff072ef0ef87947364967da9070e5a2449f5a938740ac0910a342d8ff3bd62095ecfb468b173a754e
+DIST twitter-8.0.1.tar.gz 830580 BLAKE2B a6a89eeaaf0095b022f31363d153fe980777e6588755115e6a3ee469ece8a753c9abf72747e986858562ec0ea4ca9b0eed31067aee1713dadc221b705db33d7e SHA512 864b882e2797efe7e3c846b8ea39bb323395cacc42128d6a1fe74106249ca4e3419efd04237c5b46a697ce0204a109fbd1af906917820d67f1a2b1ecb71501fa
diff --git a/dev-ruby/twitter/metadata.xml b/dev-ruby/twitter/metadata.xml
index c2f0c34d2d39..5815f286bc32 100644
--- a/dev-ruby/twitter/metadata.xml
+++ b/dev-ruby/twitter/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">sferik/twitter</remote-id>
+ <remote-id type="github">sferik/twitter-ruby</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/twitter/twitter-6.2.0.ebuild b/dev-ruby/twitter/twitter-6.2.0.ebuild
deleted file mode 100644
index 881a81d4f042..000000000000
--- a/dev-ruby/twitter/twitter-6.2.0.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="twitter.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby wrapper around the Twitter API"
-HOMEPAGE="https://sferik.github.com/twitter/"
-SRC_URI="https://github.com/sferik/twitter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="6"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/addressable-2.3
- >=dev-ruby/buftok-0.2.0
- >=dev-ruby/equalizer-0.0.11
- =dev-ruby/equalizer-0.0*
- dev-ruby/http:3
- dev-ruby/http-form_data:2
- >=dev-ruby/http_parser_rb-0.6.0
- >=dev-ruby/memoizable-0.4.2
- =dev-ruby/multipart-post-2*
- >=dev-ruby/naught-1.1
- =dev-ruby/simple_oauth-0.3*
-"
-
-ruby_add_bdepend "test? (
- dev-ruby/rspec:3
- dev-ruby/webmock:3
- >=dev-ruby/timecop-0.6.1
- )
- doc? ( dev-ruby/yard )"
-
-all_ruby_prepare() {
- #sed -i -e '/equalizer/ s/0.0.10/~>0.0.10/' ${RUBY_FAKEGEM_GEMSPEC} || die
-
-# rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die "Unable to remove bundler code."
-
- sed -i -e '/simplecov/,/^end/ s:^:#:' \
- -e '1igem "webmock", "~>3.0"' spec/helper.rb || die
-
- # Avoid a spec that fails due to changes in dependencies.
- sed -i -e '/#reverse_token/,/^ end/ s:^:#:' \
- spec/twitter/rest/oauth_spec.rb
-}
-
-each_ruby_test() {
- CI=true RSPEC_VERSION=3 ruby-ng_rspec || die
-}
diff --git a/dev-ruby/twitter/twitter-8.0.0.ebuild b/dev-ruby/twitter/twitter-8.0.0.ebuild
new file mode 100644
index 000000000000..257c39045bae
--- /dev/null
+++ b/dev-ruby/twitter/twitter-8.0.0.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="twitter.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby wrapper around the Twitter API"
+HOMEPAGE="https://github.com/sferik/twitter/"
+SRC_URI="https://github.com/sferik/twitter/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/addressable-2.3
+ =dev-ruby/buftok-0.3.0*
+ >=dev-ruby/equalizer-0.0.11
+ =dev-ruby/equalizer-0.0*
+ >=dev-ruby/http-5.1:5
+ >=dev-ruby/http-form_data-2.3:2
+ =dev-ruby/llhttp-ffi-0.4*
+ =dev-ruby/memoizable-0.4*
+ =dev-ruby/multipart-post-2*
+ >=dev-ruby/naught-1.1
+ =dev-ruby/simple_oauth-0.3*
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/rspec:3
+ dev-ruby/webmock:3
+ >=dev-ruby/timecop-0.6.1
+ )
+ doc? ( dev-ruby/yard )"
+
+all_ruby_prepare() {
+# rm Gemfile || die
+ sed -i -e '/[Bb]undler/d' Rakefile || die "Unable to remove bundler code."
+
+ sed -i -e '/simplecov/,/^end/ s:^:#:' \
+ -e '1igem "webmock", "~>3.0"' spec/helper.rb || die
+
+ # Avoid a spec that fails due to changes in dependencies.
+ sed -i -e '/#reverse_token/,/^ end/ s:^:#:' \
+ spec/twitter/rest/oauth_spec.rb
+}
+
+each_ruby_test() {
+ CI=true RSPEC_VERSION=3 ruby-ng_rspec || die
+}
diff --git a/dev-ruby/twitter/twitter-8.0.1.ebuild b/dev-ruby/twitter/twitter-8.0.1.ebuild
new file mode 100644
index 000000000000..44b8ac9258c8
--- /dev/null
+++ b/dev-ruby/twitter/twitter-8.0.1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="twitter.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby wrapper around the Twitter API"
+HOMEPAGE="https://github.com/sferik/twitter-ruby/"
+SRC_URI="https://github.com/sferik/twitter-ruby/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="twitter-ruby-${PV}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/addressable-2.3
+ =dev-ruby/buftok-0.3.0*
+ >=dev-ruby/equalizer-0.0.11
+ =dev-ruby/equalizer-0.0*
+ >=dev-ruby/http-5.1:5
+ >=dev-ruby/http-form_data-2.3:2
+ =dev-ruby/llhttp-ffi-0.4*
+ =dev-ruby/memoizable-0.4*
+ =dev-ruby/multipart-post-2*
+ >=dev-ruby/naught-1.1
+ =dev-ruby/simple_oauth-0.3*
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/rspec:3
+ dev-ruby/webmock:3
+ >=dev-ruby/timecop-0.6.1
+ )
+ doc? ( dev-ruby/yard )"
+
+all_ruby_prepare() {
+# rm Gemfile || die
+ sed -i -e '/[Bb]undler/d' Rakefile || die "Unable to remove bundler code."
+
+ sed -i -e '/simplecov/,/^end/ s:^:#:' \
+ -e '1igem "webmock", "~>3.0"' spec/helper.rb || die
+
+ # Avoid a spec that fails due to changes in dependencies.
+ sed -i -e '/#reverse_token/,/^ end/ s:^:#:' \
+ spec/twitter/rest/oauth_spec.rb
+}
+
+each_ruby_test() {
+ CI=true RSPEC_VERSION=3 ruby-ng_rspec || die
+}
diff --git a/dev-ruby/typed-array/metadata.xml b/dev-ruby/typed-array/metadata.xml
index dd9230ccc876..ada2ae4b50a7 100644
--- a/dev-ruby/typed-array/metadata.xml
+++ b/dev-ruby/typed-array/metadata.xml
@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>naota@gentoo.org</email>
+ <name>Naohiro Aota</name>
</maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/typed-array/typed-array-0.1.2-r1.ebuild b/dev-ruby/typed-array/typed-array-0.1.2-r1.ebuild
deleted file mode 100644
index 069f08c3c4bc..000000000000
--- a/dev-ruby/typed-array/typed-array-0.1.2-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-fakegem
-DESCRIPTION="Gem provides enforced-type functionality to Arrays"
-HOMEPAGE="https://github.com/yaauie/typed-array"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- # There is a trash...
- rm "${S}"/lib/typed-array/.DS_Store || die
-}
diff --git a/dev-ruby/typed-array/typed-array-0.1.2-r2.ebuild b/dev-ruby/typed-array/typed-array-0.1.2-r2.ebuild
new file mode 100644
index 000000000000..ad806591d180
--- /dev/null
+++ b/dev-ruby/typed-array/typed-array-0.1.2-r2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="README.rdoc"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+inherit ruby-fakegem
+DESCRIPTION="Gem provides enforced-type functionality to Arrays"
+HOMEPAGE="https://github.com/yaauie/typed-array"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ # There is a trash...
+ rm "${S}"/lib/typed-array/.DS_Store || die
+
+ sed -i -e 's/Fixnum/Integer/' spec/typed-array_spec.rb || die
+}
diff --git a/dev-ruby/typeprof/Manifest b/dev-ruby/typeprof/Manifest
new file mode 100644
index 000000000000..b033c245d3d1
--- /dev/null
+++ b/dev-ruby/typeprof/Manifest
@@ -0,0 +1,5 @@
+DIST typeprof-0.21.10.tar.gz 1035767 BLAKE2B a36dd2a4cc607740294926f53364f67ce2f09fe9f5cb2a5e73f39d9f431fda1d9d7447d2c7e7f0205e25583e4ff935c52fc3a7cb50c7c9ff991d2a0ea5b3e919 SHA512 03eccb6717adfeaa6434fc2fc0e766a38e527830c828d54905fc8bce48f6994ef2c9b10af3ec77b3f5b1c0b2c4cd52336cb9618656dad3b43b991406c1854308
+DIST typeprof-0.21.11.tar.gz 1035785 BLAKE2B 8f121016220ba8b778710acaaac3edfbee6a7f7fec69e76130ef8dedacd034a2b3444ad6bdecabbc5b030782bb65f5fda2b1b03e65ccafd1e03bae9763eaeb67 SHA512 3ef58d5cee24f037a32984a7f9757958f0276732918a58c27aed15b11e43d57da92d4fcf41eeb017d7fe8cacfd801f0fc9cdcf03cfc2e663f8660097cde8fb61
+DIST typeprof-0.21.7.tar.gz 1036834 BLAKE2B c0a8a1ed3a0592f72489eb342cbaf132e647d11ef5f3eef003b4208e512f581aacd586cac137c9b405d59f71e1b9e2cbc9903a9c1b4791db0ad0a64485247eea SHA512 0dd149da7873ec4422a03fa31a828a8efafa5faff0c23dffde74650b71e14d472f1bb0c36d28a48e0538a761538504937ad4e0f8a711a9f5c2b52ac4128a8f37
+DIST typeprof-0.21.8.tar.gz 1035592 BLAKE2B 8fe8749e802ddc6dc94212f433acbd86bf2e9ddb96a62f1591606cde9748a52aff6287bac9139de4d4e6f55e85b03b309938329b1b0f3206b822ed9f073301b5 SHA512 1c4e7ba04b3342d688976cd03e8c0181d94035284d8bb2a8b35aabad07252938d4ce4d4118128d6647bda2b36c01d4a14465859e1d79e8a3804fb7307d6d0fb9
+DIST typeprof-0.21.9.tar.gz 1035626 BLAKE2B 20582ec0591ed4f375e68960e304f22515cbd28ad00bbe6001a0fc32ad19e03f41b54dff8cb03e9b1220417aa12ae2807d193d891b74b47e54130d277d1afb3a SHA512 53182db1fe2187d2ab0fda1a07d40c6767e485d15588b101384beabbdcacddaa8044587b59fc166e03d2b768c549938b0e9893557c4854b3431694d6e3f4bc45
diff --git a/dev-ruby/typeprof/metadata.xml b/dev-ruby/typeprof/metadata.xml
new file mode 100644
index 000000000000..a81dd975e116
--- /dev/null
+++ b/dev-ruby/typeprof/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/typeprof</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/typeprof/typeprof-0.21.10.ebuild b/dev-ruby/typeprof/typeprof-0.21.10.ebuild
new file mode 100644
index 000000000000..a498fca36c5b
--- /dev/null
+++ b/dev-ruby/typeprof/typeprof-0.21.10.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINDIR="exe"
+
+RUBY_FAKEGEM_GEMSPEC="typeprof.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Performs a type analysis of non-annotated Ruby code"
+HOMEPAGE="https://github.com/ruby/typeprof"
+SRC_URI="https://github.com/ruby/typeprof/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/rbs-1.8.1"
+
+all_ruby_prepare() {
+ # Avoid tests that download live code using git
+ rm -r test/typeprof/diff-lcs_test.rb || die
+
+ sed -i -e "s:_relative ': './:" -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/typeprof/typeprof-0.21.11.ebuild b/dev-ruby/typeprof/typeprof-0.21.11.ebuild
new file mode 100644
index 000000000000..a498fca36c5b
--- /dev/null
+++ b/dev-ruby/typeprof/typeprof-0.21.11.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINDIR="exe"
+
+RUBY_FAKEGEM_GEMSPEC="typeprof.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Performs a type analysis of non-annotated Ruby code"
+HOMEPAGE="https://github.com/ruby/typeprof"
+SRC_URI="https://github.com/ruby/typeprof/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/rbs-1.8.1"
+
+all_ruby_prepare() {
+ # Avoid tests that download live code using git
+ rm -r test/typeprof/diff-lcs_test.rb || die
+
+ sed -i -e "s:_relative ': './:" -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/typeprof/typeprof-0.21.7.ebuild b/dev-ruby/typeprof/typeprof-0.21.7.ebuild
new file mode 100644
index 000000000000..abc0af17aad3
--- /dev/null
+++ b/dev-ruby/typeprof/typeprof-0.21.7.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINDIR="exe"
+
+RUBY_FAKEGEM_GEMSPEC="typeprof.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Performs a type analysis of non-annotated Ruby code"
+HOMEPAGE="https://github.com/ruby/typeprof"
+SRC_URI="https://github.com/ruby/typeprof/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/rbs-1.8.1"
+
+all_ruby_prepare() {
+ # Avoid tests that download live code using git
+ rm -r test/typeprof/{goodcheck,diff-lcs}_test.rb || die
+
+ sed -i -e "s:_relative ': './:" -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/typeprof/typeprof-0.21.8.ebuild b/dev-ruby/typeprof/typeprof-0.21.8.ebuild
new file mode 100644
index 000000000000..1e06e21cd0bd
--- /dev/null
+++ b/dev-ruby/typeprof/typeprof-0.21.8.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINDIR="exe"
+
+RUBY_FAKEGEM_GEMSPEC="typeprof.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Performs a type analysis of non-annotated Ruby code"
+HOMEPAGE="https://github.com/ruby/typeprof"
+SRC_URI="https://github.com/ruby/typeprof/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/rbs-1.8.1"
+
+all_ruby_prepare() {
+ # Avoid tests that download live code using git
+ rm -r test/typeprof/diff-lcs_test.rb || die
+
+ sed -i -e "s:_relative ': './:" -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/typeprof/typeprof-0.21.9.ebuild b/dev-ruby/typeprof/typeprof-0.21.9.ebuild
new file mode 100644
index 000000000000..3503da9cc378
--- /dev/null
+++ b/dev-ruby/typeprof/typeprof-0.21.9.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_DOC="none"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINDIR="exe"
+
+RUBY_FAKEGEM_GEMSPEC="typeprof.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Performs a type analysis of non-annotated Ruby code"
+HOMEPAGE="https://github.com/ruby/typeprof"
+SRC_URI="https://github.com/ruby/typeprof/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/rbs-1.8.1"
+
+all_ruby_prepare() {
+ # Avoid tests that download live code using git
+ rm -r test/typeprof/diff-lcs_test.rb || die
+
+ sed -i -e "s:_relative ': './:" -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/typhoeus/Manifest b/dev-ruby/typhoeus/Manifest
index 7302c3f2005d..4638122f44ff 100644
--- a/dev-ruby/typhoeus/Manifest
+++ b/dev-ruby/typhoeus/Manifest
@@ -1,2 +1 @@
-DIST typhoeus-0.6.9.gem 49152 BLAKE2B 0c80c76c6ed8e9e564d6fc48b259b6c1d9c5c4422d29ef356fb092dc722e96afba319e682f5548603f1bebce96aa3e616161a5e036a7c23264b98835c41955e0 SHA512 5063d3217f35db29d216327b6eed10d6613d018c496935e78aa8e2b10ec21f3372df11fe48155b45387767d5572efa93e74afb0bb9b10782d28e87dead0294a4
-DIST typhoeus-1.3.1.gem 55808 BLAKE2B e3153870bfe2d5187aa433d81a287c2f9e9e6cf3caaf52b0f542fd35e4ac812786abc389c47ab56dd4267adb5206a5ce25c5ab6cc8559fa8dfbbd6b78e53fc16 SHA512 f826cdb7e48577226b12fc2715123e13519148f67d036470e385f80f8f3112d1ad24bf580c2ed0d213242c9afc1bdf868084266d430858b2cf6de73e50a11422
+DIST typhoeus-1.4.1.gem 57856 BLAKE2B a1562bcaa8a824d40184b043b85f87475f3d31e6488f5bb87d84b9b37933c3fa090cee5a9b2f4910b31c61d2642ad338b321bb741c33713cd43f8cfd77a842e3 SHA512 2970793dfa94a80abf140779a148d9b8d6ab212ca0072c5353b8d158cc625e023e4c7a28ae8471d18ae3bd8cde46f31aae54bbf7a3fde33e980b533af0f81578
diff --git a/dev-ruby/typhoeus/metadata.xml b/dev-ruby/typhoeus/metadata.xml
index a3f384d09ec2..6fbfacef4779 100644
--- a/dev-ruby/typhoeus/metadata.xml
+++ b/dev-ruby/typhoeus/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/typhoeus/typhoeus-0.6.9-r1.ebuild b/dev-ruby/typhoeus/typhoeus-0.6.9-r1.ebuild
deleted file mode 100644
index 5e09b760aef8..000000000000
--- a/dev-ruby/typhoeus/typhoeus-0.6.9-r1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md UPGRADE.md"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Runs HTTP requests in parallel while cleanly encapsulating handling logic"
-HOMEPAGE="https://rubygems.org/gems/typhoeus/
- https://github.com/typhoeus/typhoeus"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/ethon-0.7.1"
-
-ruby_add_bdepend "test? ( dev-ruby/json >=dev-ruby/faraday-0.9 >=dev-ruby/sinatra-1.3 )"
-
-all_ruby_prepare() {
- sed -e '/bundler/I s:^:#:' -i Rakefile spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/typhoeus/typhoeus-1.3.1.ebuild b/dev-ruby/typhoeus/typhoeus-1.3.1.ebuild
deleted file mode 100644
index 049e000a88be..000000000000
--- a/dev-ruby/typhoeus/typhoeus-1.3.1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md UPGRADE.md"
-RUBY_FAKEGEM_TASK_DOC=""
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Runs HTTP requests in parallel while cleanly encapsulating handling logic"
-HOMEPAGE="https://rubygems.org/gems/typhoeus/
- https://github.com/typhoeus/typhoeus"
-
-LICENSE="Ruby"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/ethon-0.9.0"
-
-ruby_add_bdepend "test? ( dev-ruby/json >=dev-ruby/faraday-0.9 >=dev-ruby/sinatra-1.3 >=dev-ruby/redis-3.0 >=dev-ruby/dalli-2.7.9 )"
-
-all_ruby_prepare() {
- sed -e '/bundler/I s:^:#:' -i Rakefile spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/typhoeus/typhoeus-1.4.1.ebuild b/dev-ruby/typhoeus/typhoeus-1.4.1.ebuild
new file mode 100644
index 000000000000..5eda113ddead
--- /dev/null
+++ b/dev-ruby/typhoeus/typhoeus-1.4.1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md UPGRADE.md"
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Runs HTTP requests in parallel while cleanly encapsulating handling logic"
+HOMEPAGE="https://rubygems.org/gems/typhoeus/
+ https://github.com/typhoeus/typhoeus"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="~amd64"
+IUSE=""
+
+# Tests fail with ethon-0.16.0
+# https://github.com/typhoeus/typhoeus/issues/710
+ruby_add_rdepend "<dev-ruby/ethon-0.16.0"
+
+ruby_add_bdepend "test? (
+ dev-ruby/json
+ dev-ruby/faraday:1
+ dev-ruby/rack:2.2
+ >=dev-ruby/sinatra-1.3
+ >=dev-ruby/redis-3.0
+ >=dev-ruby/dalli-2.7.9
+)"
+
+all_ruby_prepare() {
+ sed -e '/bundler/I s:^:#:' -i Rakefile spec/spec_helper.rb || die
+ sed -i -e '3igem "rack", "~> 2.2.0"; gem "faraday", "<2"; require "timeout"' spec/spec_helper.rb || die
+ sed -i -e '/Rack::Handler::WEBrick/ s/options/\*\*options/' spec/support/localhost_server.rb || die
+
+ # Avoid specs failing because default headers are provided or
+ # checked now, probably due to changes in either rack or webrick.
+ sed -e '/calls on_headers and on_\(body\|complete\)/ s/it/xit/' \
+ -i spec/typhoeus/request/operations_spec.rb || die
+}
diff --git a/dev-ruby/tzinfo/Manifest b/dev-ruby/tzinfo/Manifest
index 07eac54de832..1be2be374f26 100644
--- a/dev-ruby/tzinfo/Manifest
+++ b/dev-ruby/tzinfo/Manifest
@@ -1,2 +1,2 @@
-DIST tzinfo-1.2.5.gem 153600 BLAKE2B 3df5625c61eabf94bb457381ac7d0cdebd5b55da3bb043fe58063cccccb623b502e026a71faef4f7d7efe75eae2fdfd0bf3e0b97a3763fec9a1018f0c6c2ae0f SHA512 87f7cd66d6e80d51d216cb993cc76fe7758db03ffd39dde96eb24a9d208699766a8dbff048485fb732ce125ee9f971e38ed9ee1197f3ee3fc3ee8a8da840dd45
-DIST tzinfo-2.0.0.tar.gz 210379 BLAKE2B e3b8b7763dbe26ce58b1a1672d11c412f362910d695c321e51a9c28f1e742db34aa7c066827d7a4634e4a1f7824205007b66191cbeba7776dbc6cac1c9f144ca SHA512 cdc3393af8402dbde491f4547a1b169d90bcf7228c89b64f104538223fcb8f5cf8f7861ae1e11a723b213de7ab09fe31fc04ed9f275f80fe2929f0279d830679
+DIST tzinfo-1.2.11.gem 166912 BLAKE2B 3fcd2917848a400ca8938914219ce3263638ab605df82a62bf42fc021e7930df9cc399e94668d03df529bff1396f0261fa6c5624c4084660ed12e7a756aea182 SHA512 21a00c464013c3122c8d647a59f7c6b6c6af6b303d3ee24226067482bcd27fd5f02a4cf51fa0b8d70d3e08831c084f54d5ffb8f6784cd1112d62dd0dff6e8aeb
+DIST tzinfo-2.0.6.tar.gz 226143 BLAKE2B 8a7918c0edc1e70f3b805dfcdc351d9ec78f42a66973ec7cb0a8bfad31d9ccdadefe93b941aca5c15510ff857bd8282046e8d20d02f308934e087de541c26383 SHA512 88af68b13becc4b6b85b4653df95e19e24d8804ac2b2393ef03cfe551b5eaee827a5aecd2156a56572d554dd5239ae828a65e5c49854671aa1989f5c31ba320d
diff --git a/dev-ruby/tzinfo/files/tzinfo-2.0.6-ruby33.patch b/dev-ruby/tzinfo/files/tzinfo-2.0.6-ruby33.patch
new file mode 100644
index 000000000000..91a9843aab22
--- /dev/null
+++ b/dev-ruby/tzinfo/files/tzinfo-2.0.6-ruby33.patch
@@ -0,0 +1,35 @@
+From 9e04c58ce10920538dc55ba6e547aa15cff39a84 Mon Sep 17 00:00:00 2001
+From: Phil Ross <phil.ross@gmail.com>
+Date: Sat, 16 Dec 2023 19:14:20 +0000
+Subject: [PATCH] Fix loading the gemspec file from rake with Ruby 3.3.
+
+Calculating the current directory name from within the gemspec would
+fail.
+
+`__FILE__` was '(eval)' with Ruby < 3.3. `File.dirname(__FILE__)` is
+'.'.
+
+`__FILE__` is '(eval at /path/Rakefile:linenumber)' with Ruby >= 3.3.
+`File.dirname(__FILE__)` is '(eval at /path'.
+---
+ Rakefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Rakefile b/Rakefile
+index 8a34fa33..69bee7b5 100644
+--- a/Rakefile
++++ b/Rakefile
+@@ -11,11 +11,11 @@ rescue LoadError, RuntimeError
+ end
+
+ BASE_DIR = File.expand_path(File.dirname(__FILE__))
++GEMSPEC_PATH = File.join(BASE_DIR, 'tzinfo.gemspec')
++spec = TOPLEVEL_BINDING.eval(File.read(GEMSPEC_PATH), GEMSPEC_PATH)
+
+ task default: [:test]
+
+-spec = eval(File.read('tzinfo.gemspec'))
+-
+ class TZInfoPackageTask < Gem::PackageTask
+ alias_method :orig_sh, :sh
+ private :orig_sh
diff --git a/dev-ruby/tzinfo/metadata.xml b/dev-ruby/tzinfo/metadata.xml
index eb1e47f2edfb..46ec7bdfdb80 100644
--- a/dev-ruby/tzinfo/metadata.xml
+++ b/dev-ruby/tzinfo/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">tzinfo/tzinfo</remote-id>
+ <remote-id type="rubygems">tzinfo</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-ruby/tzinfo/tzinfo-1.2.11.ebuild b/dev-ruby/tzinfo/tzinfo-1.2.11.ebuild
new file mode 100644
index 000000000000..f3dfe4242ab8
--- /dev/null
+++ b/dev-ruby/tzinfo/tzinfo-1.2.11.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="test_zoneinfo"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Daylight-savings aware timezone library"
+HOMEPAGE="https://tzinfo.github.io/"
+
+LICENSE="MIT"
+SLOT="1"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ppc ~ppc64 ~riscv ~sparc x86 ~amd64-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+RDEPEND="sys-libs/timezone-data"
+DEPEND="test? ( sys-libs/timezone-data )"
+
+ruby_add_rdepend ">=dev-ruby/thread_safe-0.1:0"
+ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
+
+all_ruby_prepare() {
+ # Set the secure permissions that tests expect.
+ chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
+
+ # Avoid taint tests that throw SecurityErrors on newer ruby versions.
+ sed -i -e '/_info_tainted/askip"SecurityError"' test/tc_ruby_data_source.rb || die
+}
diff --git a/dev-ruby/tzinfo/tzinfo-1.2.5.ebuild b/dev-ruby/tzinfo/tzinfo-1.2.5.ebuild
deleted file mode 100644
index 1b36cf383f93..000000000000
--- a/dev-ruby/tzinfo/tzinfo-1.2.5.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test_zoneinfo"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Daylight-savings aware timezone library"
-HOMEPAGE="https://tzinfo.github.io/"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ppc ~ppc64 x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND="sys-libs/timezone-data"
-DEPEND="test? ( sys-libs/timezone-data )"
-
-ruby_add_rdepend ">=dev-ruby/thread_safe-0.1:0"
-ruby_add_bdepend "test? ( dev-ruby/minitest:5 )"
-
-all_ruby_prepare() {
- # Set the secure permissions that tests expect.
- chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
-}
diff --git a/dev-ruby/tzinfo/tzinfo-2.0.0.ebuild b/dev-ruby/tzinfo/tzinfo-2.0.0.ebuild
deleted file mode 100644
index bc31b7ea1596..000000000000
--- a/dev-ruby/tzinfo/tzinfo-2.0.0.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test_zoneinfo"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Daylight-savings aware timezone library"
-HOMEPAGE="https://tzinfo.github.io/"
-SRC_URI="https://github.com/tzinfo/tzinfo/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND="sys-libs/timezone-data"
-DEPEND="test? ( sys-libs/timezone-data )"
-
-ruby_add_rdepend "dev-ruby/concurrent-ruby:1"
-ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/minitest:5 )"
-
-all_ruby_prepare() {
- # Set the secure permissions that tests expect.
- chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
-
- # Skip safe tests since we cannot guarantee the correct permissions
- # on directories for it to pass.
- sed -e '/safe_test/askip "does not pass in gentoo test environment"' -i test/test_utils.rb || die
-
- # Loosen test dependencies
- sed -e '/rake/ s/12.2.1/12.2/' \
- -e '/simplecov/d' \
- -i Gemfile || die
- sed -e '/TEST_COVERAGE/d' -i Rakefile || die
-}
-
-each_ruby_test() {
- ${RUBY} -S bundle exec rake test || die
-}
diff --git a/dev-ruby/tzinfo/tzinfo-2.0.6.ebuild b/dev-ruby/tzinfo/tzinfo-2.0.6.ebuild
new file mode 100644
index 000000000000..aebdb3e76137
--- /dev/null
+++ b/dev-ruby/tzinfo/tzinfo-2.0.6.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="test_zoneinfo"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="tzinfo.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Daylight-savings aware timezone library"
+HOMEPAGE="https://tzinfo.github.io/"
+SRC_URI="https://github.com/tzinfo/tzinfo/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+RDEPEND="sys-libs/timezone-data"
+DEPEND="test? ( sys-libs/timezone-data )"
+
+PATCHES=( "${FILESDIR}/${P}-ruby33.patch" )
+
+ruby_add_rdepend "dev-ruby/concurrent-ruby:1"
+ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/minitest:5 )"
+
+all_ruby_prepare() {
+ # Set the secure permissions that tests expect.
+ chmod 0755 "${HOME}" || die "Failed to fix permissions on home"
+
+ # Skip safe tests since we cannot guarantee the correct permissions
+ # on directories for it to pass.
+ sed -e '/safe_test/askip "does not pass in gentoo test environment"' -i test/test_utils.rb || die
+
+ # Loosen test dependencies
+ sed -e '/rake/ s/12.2.1/12.2/' \
+ -e '/simplecov/d' \
+ -i Gemfile || die
+ sed -e '/TEST_COVERAGE/d' -i Rakefile || die
+}
+
+each_ruby_test() {
+ ${RUBY} -S bundle exec rake test || die
+}
diff --git a/dev-ruby/uconv/metadata.xml b/dev-ruby/uconv/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/uconv/metadata.xml
+++ b/dev-ruby/uconv/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/uconv/uconv-0.6.1-r2.ebuild b/dev-ruby/uconv/uconv-0.6.1-r2.ebuild
deleted file mode 100644
index 2906e33d06d9..000000000000
--- a/dev-ruby/uconv/uconv-0.6.1-r2.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-inherit ruby-ng
-
-DESCRIPTION="A module to convert ISO/IEC 10646 (Unicode) string and Japanese strings"
-HOMEPAGE="http://www.yoshidam.net/Ruby.html#uconv"
-SRC_URI="http://www.yoshidam.net/${P}.tar.gz"
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="~amd64 ppc ppc64 x86"
-IUSE=""
-
-RUBY_S=${PN}
-
-all_ruby_prepare() {
- sed -i -e '/^\$CFLAGS = ""/d' extconf.rb || die "Unable to remove CFLAGS line"
-}
-
-each_ruby_configure() {
- ${RUBY} extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1
-}
-
-each_ruby_install() {
- emake V=1 DESTDIR="${D}" install
-}
-
-all_ruby_install() {
- dodoc README*
-}
diff --git a/dev-ruby/uconv/uconv-0.6.1-r3.ebuild b/dev-ruby/uconv/uconv-0.6.1-r3.ebuild
new file mode 100644
index 000000000000..a2b77f54d30d
--- /dev/null
+++ b/dev-ruby/uconv/uconv-0.6.1-r3.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+inherit ruby-ng
+
+DESCRIPTION="A module to convert ISO/IEC 10646 (Unicode) string and Japanese strings"
+HOMEPAGE="http://www.yoshidam.net/Ruby.html#uconv"
+SRC_URI="http://www.yoshidam.net/${P}.tar.gz"
+LICENSE="Ruby-BSD"
+SLOT="0"
+KEYWORDS="~amd64 ppc ppc64 x86"
+IUSE=""
+
+RUBY_S=${PN}
+
+all_ruby_prepare() {
+ sed -i -e '/^\$CFLAGS = ""/d' extconf.rb || die "Unable to remove CFLAGS line"
+}
+
+each_ruby_configure() {
+ ${RUBY} extconf.rb || die
+}
+
+each_ruby_compile() {
+ emake V=1
+}
+
+each_ruby_install() {
+ emake V=1 DESTDIR="${D}" install
+}
+
+all_ruby_install() {
+ dodoc README*
+}
diff --git a/dev-ruby/uglifier/Manifest b/dev-ruby/uglifier/Manifest
index 7115090dd20e..ac1a267d7a7e 100644
--- a/dev-ruby/uglifier/Manifest
+++ b/dev-ruby/uglifier/Manifest
@@ -1,2 +1 @@
-DIST uglifier-4.1.19.tar.gz 200607 BLAKE2B 8e8031c162bf5d12bcd85638dcdb3da2fa2877a8246a62ab9db7cc33dfc91926076c2c7231ee3f99729e9a34e6d18f6eb296f9d67e81db818a8fd7997210900f SHA512 dce40803daf0101f4d9934e2b100688ce08019ef5660f9851ea5d65743dad071d6af4bc7ee00b65ae4d245602d6a2678c3d90e838f9d7e1935fec46fe0f3c2da
-DIST uglifier-4.1.20.tar.gz 200470 BLAKE2B 64cd5a7dffc0becd66003658db3a0870de6c379755bc3025334c5374061240de1493d877c9c638f7be0438fdef4f58813fe89c77413c4e0a8d489e35b431259e SHA512 9846612e00568b359672f6bce78302839b8b1f9d2bf607338bd299ed7c3c3e948a223903077eea419aed3f0bf47df8024531ddd7ca645df90203ba2d50d99992
+DIST uglifier-4.2.0.tar.gz 201913 BLAKE2B 90390308f116dc82fbf889b603b1ecd118adf9a6f541def408fe3229db02d78f3f7ba790822cc5524870317131260ad7f8c7191a69a9e158a43d9c3822fcc95f SHA512 869194db8fffdb7d243fc5639e0286d73dfa3ca9485efda760a9eb00424e6797f0bf7aa9f6c8f410daac556e01b6a1a1701300bc373eb492ea21d864494f8246
diff --git a/dev-ruby/uglifier/metadata.xml b/dev-ruby/uglifier/metadata.xml
index 0c3d4eeeff21..be983f839c2b 100644
--- a/dev-ruby/uglifier/metadata.xml
+++ b/dev-ruby/uglifier/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/uglifier/uglifier-4.1.19.ebuild b/dev-ruby/uglifier/uglifier-4.1.19.ebuild
deleted file mode 100644
index b822aa8c1b9d..000000000000
--- a/dev-ruby/uglifier/uglifier-4.1.19.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby wrapper for UglifyJS JavaScript compressor"
-HOMEPAGE="https://github.com/lautis/uglifier"
-SRC_URI="https://github.com/lautis/uglifier/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
-
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/execjs-0.3.0:*"
-
-ruby_add_bdepend "test? ( dev-ruby/sourcemap )"
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/uglifier/uglifier-4.1.20.ebuild b/dev-ruby/uglifier/uglifier-4.1.20.ebuild
deleted file mode 100644
index c5192c241285..000000000000
--- a/dev-ruby/uglifier/uglifier-4.1.20.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby wrapper for UglifyJS JavaScript compressor"
-HOMEPAGE="https://github.com/lautis/uglifier"
-SRC_URI="https://github.com/lautis/uglifier/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="4"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux"
-
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/execjs-0.3.0:*"
-
-ruby_add_bdepend "test? ( dev-ruby/sourcemap )"
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/uglifier/uglifier-4.2.0-r1.ebuild b/dev-ruby/uglifier/uglifier-4.2.0-r1.ebuild
new file mode 100644
index 000000000000..d8e20e7fbce2
--- /dev/null
+++ b/dev-ruby/uglifier/uglifier-4.2.0-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby wrapper for UglifyJS JavaScript compressor"
+HOMEPAGE="https://github.com/lautis/uglifier"
+SRC_URI="https://github.com/lautis/uglifier/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="4"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
+
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/execjs-0.3.0:*"
+
+ruby_add_bdepend "test? ( dev-ruby/sourcemap )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/ultraviolet/Manifest b/dev-ruby/ultraviolet/Manifest
deleted file mode 100644
index 9087354a2f56..000000000000
--- a/dev-ruby/ultraviolet/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ultraviolet-1.0.1.gem 46592 BLAKE2B 2dd9b69bafdb83c321eee2c4fed9a39782959893993bdd27d3c1ab8337ac1f9a68d8cf7cddbef12404041d541d183f0bd205a4c36ee4978a2c0a631d0df3fbce SHA512 f974f95743b56d7424c8ac96867c56f4d849247ba552bd09ba8893ca6520758ff2132ac46a42f22b8547732bd148531d177a7d38522fad1dfb86d54ffbb29861
diff --git a/dev-ruby/ultraviolet/metadata.xml b/dev-ruby/ultraviolet/metadata.xml
deleted file mode 100644
index 680619e07c05..000000000000
--- a/dev-ruby/ultraviolet/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>ruby@gentoo.org</email>
- <name>Gentoo Ruby Project</name>
- </maintainer>
- <upstream>
- <remote-id type="github">grosser/ultraviolet</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-ruby/ultraviolet/ultraviolet-1.0.1.ebuild b/dev-ruby/ultraviolet/ultraviolet-1.0.1.ebuild
deleted file mode 100644
index 388c85ac1ee2..000000000000
--- a/dev-ruby/ultraviolet/ultraviolet-1.0.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_EXTRADOC="Readme.md"
-RUBY_FAKEGEM_EXTRAINSTALL="render"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A syntax highlighting engine based on Textpow"
-HOMEPAGE="https://github.com/grosser/ultraviolet"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/textpow-1.3.0"
-
-all_ruby_prepare() {
- sed -i -e '/rdoc_patter/d' Rakefile || die
- sed -i -e '/git ls-files/d' ultraviolet.gemspec || die
-}
diff --git a/dev-ruby/unf/metadata.xml b/dev-ruby/unf/metadata.xml
index b0d01ac86eed..69d76f85f45f 100644
--- a/dev-ruby/unf/metadata.xml
+++ b/dev-ruby/unf/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/unf/unf-0.1.4-r1.ebuild b/dev-ruby/unf/unf-0.1.4-r1.ebuild
new file mode 100644
index 000000000000..d06732c84903
--- /dev/null
+++ b/dev-ruby/unf/unf-0.1.4-r1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A wrapper library to bring Unicode Normalization Form support to Ruby/JRuby"
+HOMEPAGE="https://github.com/knu/ruby-unf"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/unf_ext"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/test-unit-2.5.1-r1
+ dev-ruby/shoulda
+ )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/,/end/ d' test/helper.rb || die
+
+ # Remove development dependencies; also remove platform as we don't
+ # care about it as it is, they only use it to avoid the unf_ext dep
+ # that we tackle on our own; finally remove git ls-files usage.
+ sed -i -e '/dependency.*\(shoulda\|bundler\|jeweler\|rcov\)/d' \
+ -e '/platform/d' \
+ -e '/git ls/d' \
+ ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ruby-ng_testrb-2 test/test_*.rb
+}
diff --git a/dev-ruby/unf/unf-0.1.4.ebuild b/dev-ruby/unf/unf-0.1.4.ebuild
deleted file mode 100644
index 04649ab71624..000000000000
--- a/dev-ruby/unf/unf-0.1.4.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A wrapper library to bring Unicode Normalization Form support to Ruby/JRuby"
-HOMEPAGE="https://github.com/knu/ruby-unf"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="test"
-
-ruby_add_rdepend "dev-ruby/unf_ext"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/test-unit-2.5.1-r1
- dev-ruby/shoulda
- )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/,/end/ d' test/helper.rb || die
-
- # Remove development dependencies; also remove platform as we don't
- # care about it as it is, they only use it to avoid the unf_ext dep
- # that we tackle on our own; finally remove git ls-files usage.
- sed -i -e '/dependency.*\(shoulda\|bundler\|jeweler\|rcov\)/d' \
- -e '/platform/d' \
- -e '/git ls/d' \
- ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- ruby-ng_testrb-2 test/test_*.rb
-}
diff --git a/dev-ruby/unf_ext/Manifest b/dev-ruby/unf_ext/Manifest
index 6e3696af0eaf..0bbf44dcbd22 100644
--- a/dev-ruby/unf_ext/Manifest
+++ b/dev-ruby/unf_ext/Manifest
@@ -1,2 +1,3 @@
-DIST unf_ext-0.0.7.5.gem 398848 BLAKE2B 3c7b2a6765360f59b7b921155bb6532981c8b31fd1fcebf1adc1e113da2404fa752ef95bb385155de1a6025d51f4564e52b497c5396624a0a5e99357fff88662 SHA512 5d60740172034253fec9659bec49e60f639e93d8f147582e26a012712ec2e5fca30674efc52695def0c3cd145c5ddd93a56a6d0f854ab04e7fc81544e6aede16
-DIST unf_ext-0.0.7.6.gem 399360 BLAKE2B a805d991580ced26400194bb45d4e4ab395e4936e8416a9469443c12015ca231c6277fd5d2112c346085a5fe9756786cc18626578f0d5ed0d68544043699fa41 SHA512 c6b6bc797015875b0a3422dc1e9656eae6c42d2263fd6e73ba41a1789ac1ffe927f81d5d9874973fd8d9bd9486494efa725b081e553954121588818d454db7f2
+DIST unf_ext-0.0.8.2.gem 399360 BLAKE2B 01c98ff018ec3471d4068e79b6a80980e891835a940b109c9b240226ed97f89ce71b3236b9185c6087a4e61fe6b77b249fc952b65483b5adb96fc25ee0d4bb05 SHA512 c9d3e54c96a525031d3b2fe349b5ffa1d03e3f28f74c3a2715af299e5274c7514526d07be5d7244a2cf9561c11e170b15c75d34c5e2a7143cef1ee25d32d2137
+DIST unf_ext-0.0.9.1.gem 399872 BLAKE2B 2c51c426a6740e56a2d15977c46c1fdfb8129691070bd234a3d11bbc8f85466e015eb75feb13ab0be565ad43958506baec9fd09e204efc3ea69f2dbf340e4588 SHA512 f2d0d58dc0ed30e3e99ac75022c8ea78bf4ad51c8803009c059de087b1cd439e06a8e7ef4c1be5c75048f85afe6c301f402ed21405ff02ad36ea73209416994d
+DIST unf_ext-0.0.9.gem 399872 BLAKE2B ec32d0357d7e72d001962b16f70fe616910eff6641eabf56dd2403f995c60a8a0dc4b1901ce3154032645e9af2378b9cdf9a23795899a5f7230f5f7ad52bd3c9 SHA512 b89edde90ccd7a71c7ae0e284ded7d8963239fcc976ea2876e569562bad44ff8eb8825ec8adcc61242772cc37c924ff1962bbcf1cea4e4333db446af1f055d30
diff --git a/dev-ruby/unf_ext/metadata.xml b/dev-ruby/unf_ext/metadata.xml
index c1a95acc6216..77351690727f 100644
--- a/dev-ruby/unf_ext/metadata.xml
+++ b/dev-ruby/unf_ext/metadata.xml
@@ -1,12 +1,11 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="sourceforge-jp">unf</remote-id>
<remote-id type="github">knu/ruby-unf_ext</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/unf_ext/unf_ext-0.0.7.5.ebuild b/dev-ruby/unf_ext/unf_ext-0.0.7.5.ebuild
deleted file mode 100644
index 5543990925e9..000000000000
--- a/dev-ruby/unf_ext/unf_ext-0.0.7.5.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem multilib
-
-DESCRIPTION="Unicode Normalization Form support library for CRuby"
-HOMEPAGE="https://github.com/knu/ruby-unf_ext"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="doc test"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/test-unit-2.5.1-r1
- )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/,/end/ s:^:#:' Rakefile test/helper.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/unf_ext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/unf_ext CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}" V=1
- cp ext/unf_ext/*$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ruby-ng_testrb-2 test/test_*.rb
-}
diff --git a/dev-ruby/unf_ext/unf_ext-0.0.7.6.ebuild b/dev-ruby/unf_ext/unf_ext-0.0.7.6.ebuild
deleted file mode 100644
index f9b94b9809b6..000000000000
--- a/dev-ruby/unf_ext/unf_ext-0.0.7.6.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="none"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="doc"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem multilib
-
-DESCRIPTION="Unicode Normalization Form support library for CRuby"
-HOMEPAGE="https://github.com/knu/ruby-unf_ext"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE="doc test"
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/test-unit-2.5.1-r1
- )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/,/end/ s:^:#:' Rakefile test/helper.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/unf_ext extconf.rb || die
-}
-
-each_ruby_compile() {
- emake -Cext/unf_ext CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}" V=1
- cp ext/unf_ext/*$(get_modname) lib/ || die
-}
-
-each_ruby_test() {
- ruby-ng_testrb-2 test/test_*.rb
-}
diff --git a/dev-ruby/unf_ext/unf_ext-0.0.8.2.ebuild b/dev-ruby/unf_ext/unf_ext-0.0.8.2.ebuild
new file mode 100644
index 000000000000..2853bd01efb9
--- /dev/null
+++ b/dev-ruby/unf_ext/unf_ext-0.0.8.2.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/unf_ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Unicode Normalization Form support library for CRuby"
+HOMEPAGE="https://github.com/knu/ruby-unf_ext"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="doc test"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/test-unit-2.5.1-r1
+ )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/,/end/ s:^:#:' Rakefile test/helper.rb || die
+}
+
+each_ruby_test() {
+ ruby-ng_testrb-2 test/test_*.rb
+}
diff --git a/dev-ruby/unf_ext/unf_ext-0.0.9.1.ebuild b/dev-ruby/unf_ext/unf_ext-0.0.9.1.ebuild
new file mode 100644
index 000000000000..1731bc8730ff
--- /dev/null
+++ b/dev-ruby/unf_ext/unf_ext-0.0.9.1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/unf_ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Unicode Normalization Form support library for CRuby"
+HOMEPAGE="https://github.com/knu/ruby-unf_ext"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="doc test"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/test-unit-2.5.1-r1
+ )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/,/end/ s:^:#:' Rakefile test/helper.rb || die
+}
+
+each_ruby_test() {
+ ruby-ng_testrb-2 test/test_*.rb
+}
diff --git a/dev-ruby/unf_ext/unf_ext-0.0.9.ebuild b/dev-ruby/unf_ext/unf_ext-0.0.9.ebuild
new file mode 100644
index 000000000000..93ee53a957d2
--- /dev/null
+++ b/dev-ruby/unf_ext/unf_ext-0.0.9.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="none"
+
+RUBY_FAKEGEM_DOCDIR="doc"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/unf_ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Unicode Normalization Form support library for CRuby"
+HOMEPAGE="https://github.com/knu/ruby-unf_ext"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="doc test"
+
+ruby_add_bdepend "
+ test? (
+ >=dev-ruby/test-unit-2.5.1-r1
+ )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/,/end/ s:^:#:' Rakefile test/helper.rb || die
+}
+
+each_ruby_test() {
+ ruby-ng_testrb-2 test/test_*.rb
+}
diff --git a/dev-ruby/unicode-display_width/Manifest b/dev-ruby/unicode-display_width/Manifest
new file mode 100644
index 000000000000..ffad72f4c458
--- /dev/null
+++ b/dev-ruby/unicode-display_width/Manifest
@@ -0,0 +1,3 @@
+DIST unicode-display_width-1.7.0.tar.gz 10822 BLAKE2B c3db387b9d61ba4ea9d5559824b22e40f173f9e9bcf7fdad3dba1edc36b39ae90276818bd54e74a6731bd2cb8c48b28e440d07f7e3cedbd8dc13441f79a2b56c SHA512 2b6d2b0118f4a2ad69e98fe2fac611ca94adc0dc59ad076083d0243c630a81a01d650965149a25feaf8986c262a5d55294e064361420e2140b53c5ced5fb1c77
+DIST unicode-display_width-2.4.2.tar.gz 13096 BLAKE2B 89f7f8ded131a6c049242ede8822475c2629e2377a6b06ca59b1264c1c18981039c95c0aea8a24c00488b8f5c48aed3cc1b5672785eb36bbcf3cee1af8c2cc53 SHA512 c0815c19821855fed2d3205a6cae2059e0338fb27148f55281c910b54d5b0be2d34ba4bf990ba1c328c454f7ec8dbc0c69427550f2d62d1ac4ce5174b53b8ff3
+DIST unicode-display_width-2.5.0.tar.gz 13115 BLAKE2B 93d50190346409b3ba0dc23cbce841cabab7584f07a5b152851e40fd06168ff26a38c4872aed994e1a77292cf04de31f54075ad6b4329975fd93c30d9afe38b3 SHA512 cd6302136e5d61e6209bd9c6eb432c09d562b59a6a02868a3343a5968c56239cff0f547ed5bed15d5a6a06265385a6a499b148e59f9b84778241c9f8c5efa2be
diff --git a/dev-ruby/unicode-display_width/metadata.xml b/dev-ruby/unicode-display_width/metadata.xml
new file mode 100644
index 000000000000..320aa7dd1242
--- /dev/null
+++ b/dev-ruby/unicode-display_width/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">janlelis/unicode-display_width</remote-id>
+ <remote-id type="rubygems">unicode-display_width</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/unicode-display_width/unicode-display_width-1.7.0-r1.ebuild b/dev-ruby/unicode-display_width/unicode-display_width-1.7.0-r1.ebuild
new file mode 100644
index 000000000000..355b9b1c4284
--- /dev/null
+++ b/dev-ruby/unicode-display_width/unicode-display_width-1.7.0-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+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 -i -e '/\[emoji\]/,/^ end/ s:^:#:' spec/display_width_spec.rb || die
+}
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..f4bfe763a339
--- /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 ruby32"
+
+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
+}
diff --git a/dev-ruby/unicode-display_width/unicode-display_width-2.5.0.ebuild b/dev-ruby/unicode-display_width/unicode-display_width-2.5.0.ebuild
new file mode 100644
index 000000000000..dda7b712d77c
--- /dev/null
+++ b/dev-ruby/unicode-display_width/unicode-display_width-2.5.0.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="ruby31 ruby32 ruby33"
+
+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
+}
diff --git a/dev-ruby/unindent/metadata.xml b/dev-ruby/unindent/metadata.xml
index 86b67396cc49..79b4a04a6f0d 100644
--- a/dev-ruby/unindent/metadata.xml
+++ b/dev-ruby/unindent/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/unindent/unindent-1.0-r2.ebuild b/dev-ruby/unindent/unindent-1.0-r2.ebuild
new file mode 100644
index 000000000000..1b2ef7cd6d55
--- /dev/null
+++ b/dev-ruby/unindent/unindent-1.0-r2.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby method to unindent strings"
+HOMEPAGE="https://github.com/mynyml/unindent"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+
+ruby_add_bdepend "test? ( dev-ruby/nanotest )"
+
+each_ruby_test() {
+ ${RUBY} -I.:lib test/test_unindent.rb || die
+}
diff --git a/dev-ruby/unindent/unindent-1.0.ebuild b/dev-ruby/unindent/unindent-1.0.ebuild
deleted file mode 100644
index 89dc2e66e263..000000000000
--- a/dev-ruby/unindent/unindent-1.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby method to unindent strings"
-HOMEPAGE="https://github.com/mynyml/unindent"
-LICENSE="MIT"
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86"
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/nanotest )"
-
-each_ruby_test() {
- ${RUBY} -I.:lib test/test_unindent.rb || die
-}
diff --git a/dev-ruby/uuidtools/Manifest b/dev-ruby/uuidtools/Manifest
index 64285f0efa5f..b303dc0dbd7a 100644
--- a/dev-ruby/uuidtools/Manifest
+++ b/dev-ruby/uuidtools/Manifest
@@ -1 +1 @@
-DIST uuidtools-2.1.5.gem 25600 BLAKE2B 8219d559d92d86e7a87b97d4eda9454b6c203f89beb4a74ff619f51470d339c4063b1982ffb6f8acd5b9c206ac7d0dc537e968b1744a030a4f6cd629a358fc7a SHA512 c56e6329e48638bd5049d348beedec7fadb9ee7a133a5013ddd41ae98baa8213d8944903059729c9ca4f38b24d9b565b5653332685982337a4233f11d4865ac0
+DIST uuidtools-2.2.0.gem 27136 BLAKE2B 1760c3fcb193901a552b8d32acddd67a0737b95a79bde47854c11a3a6378b008b0e17339ac2e95157329314f35612adc9355068eaef90f93f4d1976fdd430182 SHA512 17f15e8816fd17d31e1296522d9c68b8da71211556c3284770197b06a6fe01f9038c1e6c6e5e8272b4290cfb23b48914a27717c4705fba17e5d9848257664360
diff --git a/dev-ruby/uuidtools/metadata.xml b/dev-ruby/uuidtools/metadata.xml
index 5ff607a30251..58789c4e708c 100644
--- a/dev-ruby/uuidtools/metadata.xml
+++ b/dev-ruby/uuidtools/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/uuidtools/uuidtools-2.1.5-r1.ebuild b/dev-ruby/uuidtools/uuidtools-2.1.5-r1.ebuild
deleted file mode 100644
index 66257c1a5443..000000000000
--- a/dev-ruby/uuidtools/uuidtools-2.1.5-r1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC="-f tasks/yard.rake doc"
-RUBY_FAKEGEM_DOCDIR="doc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Simple library to generate UUIDs"
-HOMEPAGE="https://github.com/sporkmonger/uuidtools"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 x86 ~x86-macos"
-IUSE="doc"
-
-ruby_add_bdepend "doc? ( dev-ruby/yard )"
-
-all_ruby_prepare() {
- # Avoid specs that require an actual network interface to get a MAC
- # address. We can't assume that a network interface is available.
- sed -e '/when obtaining a MAC address/,/^end/ s:^:#:' \
- -i spec/uuidtools/mac_address_spec.rb || die
- sed -e '/should correctly generate timestamp variant UUIDs/,/^ end/ s:^:#:' \
- -i spec/uuidtools/uuid_creation_spec.rb || die
- sed -e '/should not treat a timestamp version UUID as a random node UUID/,/^ end/ s:^:#:' \
- -i spec/uuidtools/uuid_parsing_spec.rb || die
-}
diff --git a/dev-ruby/uuidtools/uuidtools-2.2.0-r1.ebuild b/dev-ruby/uuidtools/uuidtools-2.2.0-r1.ebuild
new file mode 100644
index 000000000000..614a9762271a
--- /dev/null
+++ b/dev-ruby/uuidtools/uuidtools-2.2.0-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC="-f tasks/yard.rake doc"
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Simple library to generate UUIDs"
+HOMEPAGE="https://github.com/sporkmonger/uuidtools"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="doc"
+
+ruby_add_bdepend "doc? ( dev-ruby/yard )"
+
+all_ruby_prepare() {
+ # Avoid specs that require an actual network interface to get a MAC
+ # address. We can't assume that a network interface is available.
+ sed -e '/when obtaining a MAC address/,/^end/ s:^:#:' \
+ -i spec/uuidtools/mac_address_spec.rb || die
+ sed -e '/should correctly generate timestamp variant UUIDs/,/^ end/ s:^:#:' \
+ -i spec/uuidtools/uuid_creation_spec.rb || die
+ sed -e '/should not treat a timestamp version UUID as a random node UUID/,/^ end/ s:^:#:' \
+ -i spec/uuidtools/uuid_parsing_spec.rb || die
+}
diff --git a/dev-ruby/vagrant_cloud/Manifest b/dev-ruby/vagrant_cloud/Manifest
index 8472478fc191..b7c876dce84a 100644
--- a/dev-ruby/vagrant_cloud/Manifest
+++ b/dev-ruby/vagrant_cloud/Manifest
@@ -1 +1,3 @@
-DIST vagrant_cloud-2.0.2.tar.gz 13515 BLAKE2B 3014effb70df8aa7aa793cc75e92e46ceec406e3ad1c30f4cd40e1f05075e3e3b399d5d89424920c7312189b4f48cff82bb8e02f4c30b33a7194c973c365ed79 SHA512 13d56c3090092c6e1b6d47a98e8c21afabfe9fc28ee75b402b91e58869c221821141c4fdba3aaceca8970ae5474fe9a8109513f8dd525fab2cfa3623042d01c8
+DIST vagrant_cloud-3.0.5.tar.gz 34844 BLAKE2B 2624219c470ed62e60056c825dc40611bf1bd2d1e822cc40e1592f8473517df53d814934f4426ef61d9adabbf89112bc1c44b61ee7129c4270e67b468fcf87cb SHA512 e3b138584baa956de30be5b307b7a05a728a9c84e5c4c831d9a703f0367886b82905057c8d6dda5e337b7b4256704d22a60869710e98493da8eea2074df70995
+DIST vagrant_cloud-3.1.0.tar.gz 62991 BLAKE2B 264c262d8d1fe4f3de93d1a463520bf6ec460c7a946067c4add71ad5bc0d971c078abe32148b35416ee01335eaf9fa95bacba58bc76d3d891158f979d10c7775 SHA512 90a0ac7047e1f3693c542ef633c77866821ba607e2c3d059ce297895217d22854f275ee61e6d17f9703bda2f9b67bf467bc55aed805840ee8fe913cb285d02d6
+DIST vagrant_cloud-3.1.1.tar.gz 63633 BLAKE2B e2d6db7079eef43441427a0288fb33a37da530276592b95698e610043b70b59020f5ba7e393f85a2455fda62cf80729e946b07103d0d8a54143211688b1974f6 SHA512 957b35111a530baabccd337c94009cc643322ca64d4c8b1874672eee292d77db9741d67d209391503ecbc45e2b9c6cd298409405183a2cd04a0c935d04e0c316
diff --git a/dev-ruby/vagrant_cloud/metadata.xml b/dev-ruby/vagrant_cloud/metadata.xml
index 98834cb94845..3cb8a3040b39 100644
--- a/dev-ruby/vagrant_cloud/metadata.xml
+++ b/dev-ruby/vagrant_cloud/metadata.xml
@@ -1,9 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>gyakovlev@gentoo.org</email>
- <name>Georgy Yakovlev</name>
+ <email>guillaumeseren@gmail.com</email>
+ <name>Guillaume Seren</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
</maintainer>
<upstream>
<remote-id type="github">hashicorp/vagrant_cloud</remote-id>
diff --git a/dev-ruby/vagrant_cloud/vagrant_cloud-2.0.2.ebuild b/dev-ruby/vagrant_cloud/vagrant_cloud-2.0.2.ebuild
deleted file mode 100644
index e93960d4206e..000000000000
--- a/dev-ruby/vagrant_cloud/vagrant_cloud-2.0.2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 2018-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Vagrant Cloud API Library"
-HOMEPAGE="https://github.com/hashicorp/vagrant_cloud"
-SRC_URI="https://github.com/hashicorp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rest-client-2.0.2"
-ruby_add_bdepend ">=dev-ruby/rake-10.4
- test? ( >=dev-ruby/webmock-3.0 )"
-
-all_ruby_prepare() {
- sed -i -e '/rubocop/I s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/vagrant_cloud/vagrant_cloud-3.0.5-r1.ebuild b/dev-ruby/vagrant_cloud/vagrant_cloud-3.0.5-r1.ebuild
new file mode 100644
index 000000000000..9c8b674c0db5
--- /dev/null
+++ b/dev-ruby/vagrant_cloud/vagrant_cloud-3.0.5-r1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_GEMSPEC="vagrant_cloud.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Vagrant Cloud API Library"
+HOMEPAGE="https://github.com/hashicorp/vagrant_cloud"
+SRC_URI="https://github.com/hashicorp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/excon-0.73
+ >=dev-ruby/log4r-1.1.10
+"
+ruby_add_bdepend ">=dev-ruby/rake-12.3
+ test? (
+ >=dev-ruby/webmock-3.0
+ )
+"
+
+all_ruby_prepare() {
+ # # loosen dependencies
+ sed -e 's:require_relative ":require "./:' \
+ -e '/excon/s/~>/>=/' \
+ -e '/log4r/s/~>/>=/' \
+ -e '/rake/s/~>/>=/' \
+ -e '/rspec/s/~>/>=/' \
+ -e '/webmock/s/~>/>=/' \
+ -i ${PN}.gemspec || die
+}
diff --git a/dev-ruby/vagrant_cloud/vagrant_cloud-3.1.0.ebuild b/dev-ruby/vagrant_cloud/vagrant_cloud-3.1.0.ebuild
new file mode 100644
index 000000000000..c220002e1052
--- /dev/null
+++ b/dev-ruby/vagrant_cloud/vagrant_cloud-3.1.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_GEMSPEC="vagrant_cloud.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Vagrant Cloud API Library"
+HOMEPAGE="https://github.com/hashicorp/vagrant_cloud"
+SRC_URI="https://github.com/hashicorp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/excon-0.73
+ >=dev-ruby/log4r-1.1.10
+ >=dev-ruby/rexml-3.2.5 =dev-ruby/rexml-3.2*
+"
+ruby_add_bdepend ">=dev-ruby/rake-12.3
+ test? (
+ >=dev-ruby/webmock-3.0
+ )
+"
+
+all_ruby_prepare() {
+ # # loosen dependencies
+ sed -e 's:require_relative ":require "./:' \
+ -e '/log4r/s/~>/>=/' \
+ -e '/rake/s/~>/>=/' \
+ -e '/rspec/s/~>/>=/' \
+ -e '/webmock/s/~>/>=/' \
+ -i ${PN}.gemspec || die
+}
diff --git a/dev-ruby/vagrant_cloud/vagrant_cloud-3.1.1.ebuild b/dev-ruby/vagrant_cloud/vagrant_cloud-3.1.1.ebuild
new file mode 100644
index 000000000000..f870eb83df58
--- /dev/null
+++ b/dev-ruby/vagrant_cloud/vagrant_cloud-3.1.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_GEMSPEC="vagrant_cloud.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Vagrant Cloud API Library"
+HOMEPAGE="https://github.com/hashicorp/vagrant_cloud"
+SRC_URI="https://github.com/hashicorp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/excon-0.73
+ >=dev-ruby/log4r-1.1.10
+ >=dev-ruby/rexml-3.2.5 =dev-ruby/rexml-3.2*
+"
+ruby_add_bdepend ">=dev-ruby/rake-12.3
+ test? (
+ >=dev-ruby/webmock-3.0
+ )
+"
+
+all_ruby_prepare() {
+ # # loosen dependencies
+ sed -e 's:require_relative ":require "./:' \
+ -e '/log4r/s/~>/>=/' \
+ -e '/rake/s/~>/>=/' \
+ -e '/rspec/s/~>/>=/' \
+ -e '/webmock/s/~>/>=/' \
+ -i ${PN}.gemspec || die
+}
diff --git a/dev-ruby/vcard/Manifest b/dev-ruby/vcard/Manifest
index dcb13966b474..dd69ce6525c6 100644
--- a/dev-ruby/vcard/Manifest
+++ b/dev-ruby/vcard/Manifest
@@ -1 +1 @@
-DIST vcard-0.2.15.gem 52224 BLAKE2B bb9850d69048709b27f5031c038dad774a175161d70402e0cb8edd8976a88da7ddb8effeab1efe3d0f794a41fbc45ce748fd0d170d9eafe99556d396792d28d1 SHA512 598133f82fcbb3e953a0ec9e933fd140f5b3501870a1698f202ae7990aea82aa2c9951c7ab4e6abd29b826771fb810fee3c8c890feb0ca3a19bd3ca9197c176b
+DIST vcard-0.3.0.gem 54272 BLAKE2B ed019b7f771dbe2da574fc059dacdc8eb5b5eca735abe15c2d8aec08b4f91b22c413f317d4f39f100bc78d16bf8e3edf0e0a99d55b8fbdda5b47315bc33d37b1 SHA512 5b54bada881f4d6cce66bb76c15b3594e310659024d163598f857c4c434379c57e07f28873646d0a5a5aecef4313c8fc731313e80df5542e982f333c05802d4d
diff --git a/dev-ruby/vcard/metadata.xml b/dev-ruby/vcard/metadata.xml
index 7e08f0d3aad8..360674f85417 100644
--- a/dev-ruby/vcard/metadata.xml
+++ b/dev-ruby/vcard/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>mjo@gentoo.org</email>
diff --git a/dev-ruby/vcard/vcard-0.2.15.ebuild b/dev-ruby/vcard/vcard-0.2.15.ebuild
deleted file mode 100644
index a3f74a90943b..000000000000
--- a/dev-ruby/vcard/vcard-0.2.15.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-# ruby25: not compatible
-USE_RUBY="ruby22 ruby23 ruby24"
-
-# Avoid the complexity of the "rake" recipe and run testrb-2 manually.
-RUBY_FAKEGEM_RECIPE_TEST=none
-RUBY_FAKEGEM_RECIPE_DOC=none
-
-inherit ruby-fakegem
-
-DESCRIPTION="Ruby vcard support extracted from Vpim"
-HOMEPAGE="https://github.com/qoobaa/vcard"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
-
-each_ruby_test() {
- ruby-ng_testrb-2 --load-path=lib --pattern='.*_test\.rb' test/
-}
diff --git a/dev-ruby/vcard/vcard-0.3.0-r1.ebuild b/dev-ruby/vcard/vcard-0.3.0-r1.ebuild
new file mode 100644
index 000000000000..580591ea1dd3
--- /dev/null
+++ b/dev-ruby/vcard/vcard-0.3.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+# Avoid the complexity of the "rake" recipe and run testrb-2 manually.
+RUBY_FAKEGEM_RECIPE_TEST=none
+RUBY_FAKEGEM_RECIPE_DOC=none
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby vcard support extracted from Vpim"
+HOMEPAGE="https://github.com/qoobaa/vcard"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit:2 )"
+
+each_ruby_test() {
+ ruby-ng_testrb-2 --load-path=lib --pattern='.*_test\.rb' test/
+}
diff --git a/dev-ruby/vcr/Manifest b/dev-ruby/vcr/Manifest
index 19ec1d181786..ed2bc6336184 100644
--- a/dev-ruby/vcr/Manifest
+++ b/dev-ruby/vcr/Manifest
@@ -1,3 +1,2 @@
-DIST vcr-1.11.3.gem 87552 BLAKE2B 296651072c30cbba3bf329a9cf2d5eb743f8250fe250ee2794883de2ce7b99e6b4dba06f868bec3b78d7ae8fbea0624f628ebfa48239b36bc0413e3c55339168 SHA512 0d62b0699e42484a4ba385a2ec653881183b44d85fd46ffc1ea693ebb746b225566cdb2799cdb60235c24adecd7575e0f20d743968326eeeb5b24fbd3232354a
-DIST vcr-4.0.0.tar.gz 146920 BLAKE2B 19ae33d2f40821d2cfe5c0fc55d5e91e02b8e6ba2bba000c326d993987fd641dd5b4cedd6a8a441f86664ecb67dfe2501d335936af9271fa83aef6dc001b12f2 SHA512 2f98eedd021f7c125fc3f29189190ddc817bb95fc8e8e0ab53e65eaf94c5c0c41f3ca4abf9d829591acdefe97b931943c47129f95c21f2ef590ed500cc6f56f9
-DIST vcr-5.0.0.tar.gz 147602 BLAKE2B 031c9a70c9483b496ed3cda1c65138d214c257392aa5f9157135b0fd4c33d35dd6143afc0e775c5061bb823d936d1bdaa084eaf0024e87747e6101b582d8bd1e SHA512 88e4d82f1c5b3d48c89a75324a256c66858740d2889a4d86851ebb3a303745829e42f20b20d4cbc18d7b0510eb0b229a770bb6209be93dbb8c8b0be84bf5f645
+DIST vcr-6.1.0.tar.gz 153296 BLAKE2B b34fbb88458bca2faef0b7bc801f664eb7b1ed79c09362f0fd1ed25da9d768098721cb45edbf6801cc63d9c78c8d615ef8d468daf5757043cd130de2b7029859 SHA512 62ab8abfe8e0dff391df4e8874bf10315aa58baef1cc28bb60e5fd63a207bb054a3b253dbfc9ad32dfdfe7d832557c262cb0139178fb778b77150def77214a68
+DIST vcr-6.2.0.tar.gz 154715 BLAKE2B 5d6054c81106a1498c91a578347d1c092908d98d79e58303b5718620ef699705d33bfa1ea4ea8fd37653298cc18812a84d8125b79ad5fab746277ecf27725afc SHA512 516e7a8acb06872e111f20e07f3b95713a8e2cf7b5f6939ae1b643cafa8e87488a98ee5d0cf1ec0e150c128e19241c2e6d0c4ab8e811584d9f8ed05e8f93a691
diff --git a/dev-ruby/vcr/metadata.xml b/dev-ruby/vcr/metadata.xml
index 3e7ac4fc6b7b..1743808815d8 100644
--- a/dev-ruby/vcr/metadata.xml
+++ b/dev-ruby/vcr/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
@@ -8,4 +8,7 @@
<upstream>
<remote-id type="github">myronmarston/vcr</remote-id>
</upstream>
+ <use>
+ <flag name="json">Add support for casettes serialized with JSON</flag>
+ </use>
</pkgmetadata>
diff --git a/dev-ruby/vcr/vcr-1.11.3.ebuild b/dev-ruby/vcr/vcr-1.11.3.ebuild
deleted file mode 100644
index 6801924a8456..000000000000
--- a/dev-ruby/vcr/vcr-1.11.3.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-# ruby25: code is not compatible
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Records your test suite's HTTP interactions and replay them during test runs"
-HOMEPAGE="https://github.com/myronmarston/vcr/"
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="1"
-IUSE="test"
-
-# Tests require all supported HTTP libraries to be present, and it is
-# not possible to avoid some of them without very extensive patches.
-RESTRICT="test"
diff --git a/dev-ruby/vcr/vcr-4.0.0.ebuild b/dev-ruby/vcr/vcr-4.0.0.ebuild
deleted file mode 100644
index cae5212ae316..000000000000
--- a/dev-ruby/vcr/vcr-4.0.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md CONTRIBUTING.md README.md Upgrade.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Records your test suite's HTTP interactions and replay them during test runs"
-HOMEPAGE="https://github.com/vcr/vcr/"
-SRC_URI="https://github.com/vcr/vcr/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-
-KEYWORDS="amd64 ~arm ~ppc ~ppc64 ~x86"
-SLOT="3"
-IUSE="test"
-
-# Tests require all supported HTTP libraries to be present, and it is
-# not possible to avoid some of them without very extensive patches.
-RESTRICT="test"
diff --git a/dev-ruby/vcr/vcr-5.0.0.ebuild b/dev-ruby/vcr/vcr-5.0.0.ebuild
deleted file mode 100644
index ecf35311d517..000000000000
--- a/dev-ruby/vcr/vcr-5.0.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md CONTRIBUTING.md README.md Upgrade.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Records your test suite's HTTP interactions and replay them during test runs"
-HOMEPAGE="https://github.com/vcr/vcr/"
-SRC_URI="https://github.com/vcr/vcr/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-SLOT="5"
-IUSE="test"
-
-# Tests require all supported HTTP libraries to be present, and it is
-# not possible to avoid some of them without very extensive patches.
-RESTRICT="test"
diff --git a/dev-ruby/vcr/vcr-6.1.0.ebuild b/dev-ruby/vcr/vcr-6.1.0.ebuild
new file mode 100644
index 000000000000..fbccf7266804
--- /dev/null
+++ b/dev-ruby/vcr/vcr-6.1.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md CONTRIBUTING.md README.md Upgrade.md"
+
+RUBY_FAKEGEM_GEMSPEC="vcr.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Records your test suite's HTTP interactions and replay them during test runs"
+HOMEPAGE="https://github.com/vcr/vcr/"
+SRC_URI="https://github.com/vcr/vcr/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="amd64 ~arm ~ppc ~ppc64 ~riscv ~x86"
+SLOT="$(ver_cut 1)"
+IUSE="json test"
+
+# Tests require all supported HTTP libraries to be present, and it is
+# not possible to avoid some of them without very extensive patches.
+RESTRICT="test"
+
+ruby_add_rdepend "json? ( dev-ruby/json )"
diff --git a/dev-ruby/vcr/vcr-6.2.0.ebuild b/dev-ruby/vcr/vcr-6.2.0.ebuild
new file mode 100644
index 000000000000..97396eacf382
--- /dev/null
+++ b/dev-ruby/vcr/vcr-6.2.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md CONTRIBUTING.md README.md Upgrade.md"
+
+RUBY_FAKEGEM_GEMSPEC="vcr.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Records your test suite's HTTP interactions and replay them during test runs"
+HOMEPAGE="https://github.com/vcr/vcr/"
+SRC_URI="https://github.com/vcr/vcr/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+
+KEYWORDS="amd64 ~arm ~ppc ~ppc64 ~riscv ~x86"
+SLOT="$(ver_cut 1)"
+IUSE="json test"
+
+# Tests require all supported HTTP libraries to be present, and it is
+# not possible to avoid some of them without very extensive patches.
+RESTRICT="test"
+
+ruby_add_rdepend "json? ( dev-ruby/json )"
diff --git a/dev-ruby/version_gem/Manifest b/dev-ruby/version_gem/Manifest
new file mode 100644
index 000000000000..66cec4983c80
--- /dev/null
+++ b/dev-ruby/version_gem/Manifest
@@ -0,0 +1 @@
+DIST version_gem-1.1.3.tar.bz2 24554 BLAKE2B 419851cb5fcc5391449b28785aecc1c4e145bed4eafb443cdcd284d3b19d0911307afd226e43a829f34784a2fe7ece5e7e00502bfa5a9b0bb7eb49d0b6dcebf4 SHA512 77e90c6c2a52495ad9096fb83a10492f5b9bda35160287e15898351204ead174677021bde58f5dc7cd8f02f1d599736b3c3b7aba291f73e44edece10c61646e4
diff --git a/dev-ruby/version_gem/metadata.xml b/dev-ruby/version_gem/metadata.xml
new file mode 100644
index 000000000000..bcdd12220565
--- /dev/null
+++ b/dev-ruby/version_gem/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gitlab">oauth-xx/version_gem</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/version_gem/version_gem-1.1.3.ebuild b/dev-ruby/version_gem/version_gem-1.1.3.ebuild
new file mode 100644
index 000000000000..51562f14aa2a
--- /dev/null
+++ b/dev-ruby/version_gem/version_gem-1.1.3.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="version_gem.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+#RUBY_FAKEGEM_GEMSPEC="oauth.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Enhance that VERSION! Sugar for boring Version modules"
+HOMEPAGE="https://gitlab.com/oauth-xx/version_gem"
+SRC_URI="https://gitlab.com/oauth-xx/version_gem/-/archive/v${PV}/version_gem-v${PV}.tar.bz2 -> ${P}.tar.bz2"
+RUBY_S="version_gem-v${PV}"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~ppc ~riscv ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/rspec-block_is_expected )"
+
+all_ruby_prepare() {
+ sed -i -e 's/if RUN_COVERAGE/if false/' spec/spec_helper.rb || die
+
+ # Avoid broken implementation already fixed upstream
+ sed -i -e "s/'when actual' do/'when actual', pending: 'broken spec' do/" spec/version_gem/ruby_spec.rb || die
+}
diff --git a/dev-ruby/virtus/Manifest b/dev-ruby/virtus/Manifest
index 3735a9360e63..00f43398aaba 100644
--- a/dev-ruby/virtus/Manifest
+++ b/dev-ruby/virtus/Manifest
@@ -1 +1 @@
-DIST virtus-1.0.5.gem 49152 BLAKE2B 24f422d96b10c38f9599c48a2018dac5b5bb8979acce1ee206b11d64d74a852ffbd276b78bd55b3b184cc109eb00d27ff1347d143695a4e06edfb94a3e87fd5b SHA512 468b74d6a49410bb4e59c535b9f7736cd5e4743817f19f97483247b0d259e17b069044bd5ccc787d72df972d37903eb7c9a9d6ca0c6642c550f1c84a3bc71825
+DIST virtus-2.0.0.gem 50176 BLAKE2B 16a8977b782691faa48e239354c8d25d63e350bcc0e8499691586021817d462e7575eb9d6c6911c371e00a711bc404f2be6dae2168d167fc683049fb14c798f6 SHA512 17f1a0b13ca0912d0a245886b7d8c1b0bcb9f08c1ac3c89d8e5de234e6afa3989c4f15b555342827ab3f8a5570e888bfee893aff851189b1769fb34fb3f1a64a
diff --git a/dev-ruby/virtus/files/virtus-1.0.5-equalizer.patch b/dev-ruby/virtus/files/virtus-1.0.5-equalizer.patch
deleted file mode 100644
index 22fc19298505..000000000000
--- a/dev-ruby/virtus/files/virtus-1.0.5-equalizer.patch
+++ /dev/null
@@ -1,208 +0,0 @@
-From 5f33f8147fc9d84e69a33758b000486ebe42c8ae Mon Sep 17 00:00:00 2001
-From: Sergey Novik <konnigun@gmail.com>
-Date: Sun, 19 Jul 2015 18:11:07 +0300
-Subject: [PATCH 1/3] Add specs for attributes comparison (based on latest
- Equalizer gem working version)
-
----
- spec/unit/virtus/attribute/comparison_spec.rb | 23 +++++++++++++++++++++++
- 1 file changed, 23 insertions(+)
- create mode 100644 spec/unit/virtus/attribute/comparison_spec.rb
-
-diff --git a/spec/unit/virtus/attribute/comparison_spec.rb b/spec/unit/virtus/attribute/comparison_spec.rb
-new file mode 100644
-index 0000000..0b51a9c
---- /dev/null
-+++ b/spec/unit/virtus/attribute/comparison_spec.rb
-@@ -0,0 +1,23 @@
-+require 'spec_helper'
-+
-+describe Virtus::Attribute, '#== (defined by including Virtus::Equalizer)' do
-+ let(:attribute) { described_class.build(String, :name => :name) }
-+
-+ # Currently that's the way it works and it happens because default_value objects
-+ # don't have equalizer, resulting in attributes object mismatch.
-+ # This behavior (and a spec) will need a change in future.
-+ it 'returns false when attributes have same type and options' do
-+ equal_attribute = described_class.build(String, :name => :name)
-+ expect(attribute == equal_attribute).to be_falsey
-+ end
-+
-+ it 'returns false when attributes have different type' do
-+ different_attribute = described_class.build(Integer, :name => :name)
-+ expect(attribute == different_attribute).to be_falsey
-+ end
-+
-+ it 'returns false when attributes have different options' do
-+ different_attribute = described_class.build(Integer, :name => :name_two)
-+ expect(attribute == different_attribute).to be_falsey
-+ end
-+end
-
-From 3748f6eb2cf368d6a78fb1ef50c2724648d96a9b Mon Sep 17 00:00:00 2001
-From: Sergey Novik <konnigun@gmail.com>
-Date: Sun, 19 Jul 2015 18:11:24 +0300
-Subject: [PATCH 2/3] Use Virtus::Equalizer instead of Equalizer gem in
- Virtus#Attribute (behavior preserved)
-
----
- lib/virtus/attribute.rb | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/virtus/attribute.rb b/lib/virtus/attribute.rb
-index 999a2ef..0654d4d 100644
---- a/lib/virtus/attribute.rb
-+++ b/lib/virtus/attribute.rb
-@@ -18,7 +18,7 @@ module Virtus
- class Attribute
- extend DescendantsTracker, Options, TypeLookup
-
-- include ::Equalizer.new(:type, :options)
-+ include Equalizer.new(inspect) << :type << :options
-
- accept_options :primitive, :accessor, :default, :lazy, :strict, :required, :finalize, :nullify_blank
-
-
-From ef57af319334a1d4f3e0860acbde7c6d6f0eb8ef Mon Sep 17 00:00:00 2001
-From: Sergey Novik <konnigun@gmail.com>
-Date: Sun, 19 Jul 2015 18:26:50 +0300
-Subject: [PATCH 3/3] Change behavior of Attribute#== method
-
-By changing Coercer#== and DefaultValue#== methods, we allow
-Attribute#== to actually compare objects now (before, every comparison
-would return `false` because of different instances of DefaultValue
-model in options[:default_value] key.
----
- lib/virtus/attribute/default_value.rb | 2 ++
- lib/virtus/coercer.rb | 1 +
- spec/unit/virtus/attribute/comparison_spec.rb | 7 ++-----
- spec/unit/virtus/attribute_set/append_spec.rb | 8 ++++----
- spec/unit/virtus/attribute_set/element_set_spec.rb | 22 +++++++++++++++-------
- spec/unit/virtus/attribute_set/merge_spec.rb | 8 +++++---
- 6 files changed, 29 insertions(+), 19 deletions(-)
-
-diff --git a/lib/virtus/attribute/default_value.rb b/lib/virtus/attribute/default_value.rb
-index a2fcd31..eca7350 100644
---- a/lib/virtus/attribute/default_value.rb
-+++ b/lib/virtus/attribute/default_value.rb
-@@ -7,6 +7,8 @@ class Attribute
- class DefaultValue
- extend DescendantsTracker
-
-+ include Equalizer.new(inspect) << :value
-+
- # Builds a default value instance
- #
- # @return [Virtus::Attribute::DefaultValue]
-diff --git a/lib/virtus/coercer.rb b/lib/virtus/coercer.rb
-index a06e273..676d553 100644
---- a/lib/virtus/coercer.rb
-+++ b/lib/virtus/coercer.rb
-@@ -3,6 +3,7 @@ module Virtus
- # Abstract coercer class
- #
- class Coercer
-+ include Equalizer.new(inspect) << :primitive << :type
-
- # @api private
- attr_reader :primitive, :type
-diff --git a/spec/unit/virtus/attribute/comparison_spec.rb b/spec/unit/virtus/attribute/comparison_spec.rb
-index 0b51a9c..796cd20 100644
---- a/spec/unit/virtus/attribute/comparison_spec.rb
-+++ b/spec/unit/virtus/attribute/comparison_spec.rb
-@@ -3,12 +3,9 @@
- describe Virtus::Attribute, '#== (defined by including Virtus::Equalizer)' do
- let(:attribute) { described_class.build(String, :name => :name) }
-
-- # Currently that's the way it works and it happens because default_value objects
-- # don't have equalizer, resulting in attributes object mismatch.
-- # This behavior (and a spec) will need a change in future.
-- it 'returns false when attributes have same type and options' do
-+ it 'returns true when attributes have same type and options' do
- equal_attribute = described_class.build(String, :name => :name)
-- expect(attribute == equal_attribute).to be_falsey
-+ expect(attribute == equal_attribute).to be_truthy
- end
-
- it 'returns false when attributes have different type' do
-diff --git a/spec/unit/virtus/attribute_set/append_spec.rb b/spec/unit/virtus/attribute_set/append_spec.rb
-index 7fbb20a..577b07e 100644
---- a/spec/unit/virtus/attribute_set/append_spec.rb
-+++ b/spec/unit/virtus/attribute_set/append_spec.rb
-@@ -38,10 +38,10 @@
-
- it { is_expected.to equal(object) }
-
-- it 'replaces the original attribute' do
-- expect { subject }.to change { object.to_a }.
-- from(attributes).
-- to([ attribute ])
-+ it "replaces the original attribute object" do
-+ expect { subject }.to change { object.to_a.map(&:__id__) }.
-+ from(attributes.map(&:__id__)).
-+ to([attribute.__id__])
- end
- end
- end
-diff --git a/spec/unit/virtus/attribute_set/element_set_spec.rb b/spec/unit/virtus/attribute_set/element_set_spec.rb
-index 5db7e41..8d9c638 100644
---- a/spec/unit/virtus/attribute_set/element_set_spec.rb
-+++ b/spec/unit/virtus/attribute_set/element_set_spec.rb
-@@ -37,20 +37,28 @@
-
- it { is_expected.to equal(attribute) }
-
-- it 'replaces the original attribute' do
-- expect { subject }.to change { object.to_a }.from(attributes).to([ attribute ])
-+ it "replaces the original attribute object" do
-+ expect { subject }.to change { object.to_a.map(&:__id__) }.
-+ from(attributes.map(&:__id__)).
-+ to([attribute.__id__])
- end
-
-- it 'allows #[] to access the attribute with a symbol' do
-- expect { subject }.to change { object['name'] }.from(original).to(attribute)
-+ it 'allows #[] to access the attribute with a string' do
-+ expect { subject }.to change { object['name'].__id__ }.
-+ from(original.__id__).
-+ to(attribute.__id__)
- end
-
-- it 'allows #[] to access the attribute with a string' do
-- expect { subject }.to change { object[:name] }.from(original).to(attribute)
-+ it 'allows #[] to access the attribute with a symbol' do
-+ expect { subject }.to change { object[:name].__id__ }.
-+ from(original.__id__).
-+ to(attribute.__id__)
- end
-
- it 'allows #reset to track overridden attributes' do
-- expect { subject }.to change { object.reset.to_a }.from(attributes).to([ attribute ])
-+ expect { subject }.to change { object.reset.to_a.map(&:__id__) }.
-+ from(attributes.map(&:__id__)).
-+ to([attribute.__id__])
- end
- end
- end
-diff --git a/spec/unit/virtus/attribute_set/merge_spec.rb b/spec/unit/virtus/attribute_set/merge_spec.rb
-index 72dc39c..9981ece 100644
---- a/spec/unit/virtus/attribute_set/merge_spec.rb
-+++ b/spec/unit/virtus/attribute_set/merge_spec.rb
-@@ -21,12 +21,14 @@
-
- context 'with a duplicate attribute' do
- let(:attributes) { [Virtus::Attribute.build(String, :name => name)] }
-- let(:attribute) { Virtus::Attribute.build(String, :name => name) }
-+ let(:attribute) { Virtus::Attribute.build(String, :name => name) }
-
- it { is_expected.to equal(object) }
-
-- it 'replaces the original attribute' do
-- expect { subject }.to change { object.to_a }.from(attributes).to([attribute])
-+ it "replaces the original attribute object" do
-+ expect { subject }.to change { object.to_a.map(&:__id__) }.
-+ from(attributes.map(&:__id__)).
-+ to([attribute.__id__])
- end
- end
- end
diff --git a/dev-ruby/virtus/metadata.xml b/dev-ruby/virtus/metadata.xml
index fc67007cce91..ce9546955576 100644
--- a/dev-ruby/virtus/metadata.xml
+++ b/dev-ruby/virtus/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/virtus/virtus-1.0.5.ebuild b/dev-ruby/virtus/virtus-1.0.5.ebuild
deleted file mode 100644
index 54d033f79d7f..000000000000
--- a/dev-ruby/virtus/virtus-1.0.5.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="Changelog.md CONTRIBUTING.md README.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="yard"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Attributes on Steroids for Plain Old Ruby Objects"
-HOMEPAGE="https://github.com/solnic/virtus https://rubygems.org/gems/virtus"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-PATCHES=( "${FILESDIR}/${P}-equalizer.patch" )
-
-ruby_add_rdepend ">=dev-ruby/axiom-types-0.1
- <dev-ruby/axiom-types-1
- >=dev-ruby/coercible-1.0
- <dev-ruby/coercible-2
- >=dev-ruby/descendants_tracker-0.0.3
- <dev-ruby/descendants_tracker-1
- >=dev-ruby/equalizer-0.0.9
- <dev-ruby/equalizer-1"
-
-ruby_add_bdepend "test? (
- dev-ruby/inflecto
- dev-ruby/bogus
-)"
diff --git a/dev-ruby/virtus/virtus-2.0.0.ebuild b/dev-ruby/virtus/virtus-2.0.0.ebuild
new file mode 100644
index 000000000000..ba61caa6a249
--- /dev/null
+++ b/dev-ruby/virtus/virtus-2.0.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="Changelog.md CONTRIBUTING.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Attributes on Steroids for Plain Old Ruby Objects"
+HOMEPAGE="https://github.com/solnic/virtus https://rubygems.org/gems/virtus"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/axiom-types-0.1
+ <dev-ruby/axiom-types-1
+ >=dev-ruby/coercible-1.0
+ <dev-ruby/coercible-2
+ >=dev-ruby/descendants_tracker-0.0.3
+ <dev-ruby/descendants_tracker-1
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bogus
+)"
+
+all_ruby_prepare() {
+ # Avoid specs that require unpackaged dry-inflector for now.
+ rm -f spec/unit/virtus/class_methods/finalize_spec.rb || die
+
+ # Fix specs for ruby 3.2
+ sed -i -e 's/Fixnum/Integer/' spec/integration/inheritance_spec.rb || die
+
+ # Avoid developer dependencies
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/vlad/Manifest b/dev-ruby/vlad/Manifest
index dc62b3b46bc7..21e10de05651 100644
--- a/dev-ruby/vlad/Manifest
+++ b/dev-ruby/vlad/Manifest
@@ -1 +1 @@
-DIST vlad-2.7.0.gem 29184 BLAKE2B 5eda039d0d618950089ce743cde95c011edd476573058064d3c20b55bca9ce598ddafb352902fc48d9f4d7dbd0cf3a26b6c39acdf5d592a35654aeb8d62fcfb4 SHA512 088739f975e7b9b218b76518a690a7a1fbc534dbc169a704b769a8e99bc5efe0c915012d65a35590fb8f1a27caff4d7c7eaae325431a28ffa973afb25d5890fb
+DIST vlad-2.7.1.gem 29184 BLAKE2B eb35f357d87daaf2903ca880139ac41c1725419fb6f0e3d00e1a31fd24697373c8d4869e31d17e6dc88ce31ecad1a0747ee2ec08a31871b4c44b32dce28424bc SHA512 520ef393fdf63daa348015306003cdd3bd9b8f162b44b31d78c170d1ece466b804226b030640a180a8538c6908c77d80dcfc13078ce295a6c59f1f5b9df9ef13
diff --git a/dev-ruby/vlad/metadata.xml b/dev-ruby/vlad/metadata.xml
index ef0f10affabf..10bc87812a40 100644
--- a/dev-ruby/vlad/metadata.xml
+++ b/dev-ruby/vlad/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/vlad/vlad-2.7.0.ebuild b/dev-ruby/vlad/vlad-2.7.0.ebuild
deleted file mode 100644
index a4e74ebefc07..000000000000
--- a/dev-ruby/vlad/vlad-2.7.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="considerations.txt History.txt README.txt"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Pragmatic application deployment automation, without mercy"
-HOMEPAGE="https://github.com/seattlerb/vlad"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-ruby_add_bdepend ">=dev-ruby/hoe-3.13
- test? ( >=dev-ruby/minitest-5.7 )"
-ruby_add_rdepend ">=dev-ruby/rake-remote_task-2.3"
-
-all_ruby_prepare() {
- # Keep Isolate from managing the dependencies.
- sed -i -e '/isolate/ s:^:#:' -e '/rubyforge/ s:^:#:' Rakefile || die
-}
diff --git a/dev-ruby/vlad/vlad-2.7.1-r1.ebuild b/dev-ruby/vlad/vlad-2.7.1-r1.ebuild
new file mode 100644
index 000000000000..38a8ba0ce20d
--- /dev/null
+++ b/dev-ruby/vlad/vlad-2.7.1-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="considerations.txt History.txt README.txt"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Pragmatic application deployment automation, without mercy"
+HOMEPAGE="https://github.com/seattlerb/vlad"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+ruby_add_bdepend ">=dev-ruby/hoe-3.13
+ test? ( >=dev-ruby/minitest-5.7 )"
+ruby_add_rdepend ">=dev-ruby/rake-remote_task-2.3"
+
+all_ruby_prepare() {
+ # Keep Isolate from managing the dependencies.
+ sed -i -e '/isolate/ s:^:#:' -e '/rubyforge/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/warden/Manifest b/dev-ruby/warden/Manifest
index 639e20741db3..8f7a91efef64 100644
--- a/dev-ruby/warden/Manifest
+++ b/dev-ruby/warden/Manifest
@@ -1 +1 @@
-DIST warden-1.2.8.tar.gz 29841 BLAKE2B 657f9d1b5a7fbf3b07ac8cfa514c410561cce853cbc2e6c7bf6d98deab8f625771b20d339613738a979395638b654b066080fad5a7378b15345cb46e273966c9 SHA512 efd7a416f2da3095d6d33c2dca3a7e09d127fb0abec86e959aba56739ae865ea9a11e234ea1f6d557466d9076e3f271481e20982bc159a3f09a4d55148d45734
+DIST warden-1.2.9.tar.gz 29992 BLAKE2B 8a4470c6503c89cb759ebcc155171e86dbb124585d391d6d06c09da0fc0a4095f0235816b9e80895dafe7290584ba49e6699adc9fe8121b2aaee8d1045919b59 SHA512 2ec1129d9afc178c9883a72ffed06f184001147463827f4c5d09475ad65beb084832902a94980e22136400648ad97f2e42a779faf6d49d5a110f545d82a4ddb7
diff --git a/dev-ruby/warden/metadata.xml b/dev-ruby/warden/metadata.xml
index fa9e331a8fb3..b3477bf38d5f 100644
--- a/dev-ruby/warden/metadata.xml
+++ b/dev-ruby/warden/metadata.xml
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">hassox/warden</remote-id>
+ <remote-id type="github">wardencommunity/warden</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/warden/warden-1.2.8.ebuild b/dev-ruby/warden/warden-1.2.8.ebuild
deleted file mode 100644
index 79deefe54f09..000000000000
--- a/dev-ruby/warden/warden-1.2.8.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="General Rack Authentication Framework"
-HOMEPAGE="https://github.com/wardencommunity/warden"
-SRC_URI="https://github.com/wardencommunity/warden/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/rack-2.0.6:*"
-
-all_ruby_prepare() {
- sed -i -e 's/git ls-files -z/find . -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/warden/warden-1.2.9-r1.ebuild b/dev-ruby/warden/warden-1.2.9-r1.ebuild
new file mode 100644
index 000000000000..440afa9c2907
--- /dev/null
+++ b/dev-ruby/warden/warden-1.2.9-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="General Rack Authentication Framework"
+HOMEPAGE="https://github.com/wardencommunity/warden"
+SRC_URI="https://github.com/wardencommunity/warden/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+
+KEYWORDS="~amd64"
+SLOT="0"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/rack-2.0.9:*"
+
+ruby_add_bdepend "test? ( dev-ruby/rack:2.2 )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '1igem "rack", "<3"' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/warning/Manifest b/dev-ruby/warning/Manifest
new file mode 100644
index 000000000000..2a94b4ffb5db
--- /dev/null
+++ b/dev-ruby/warning/Manifest
@@ -0,0 +1 @@
+DIST warning-1.3.0.tar.gz 10376 BLAKE2B 661e2af457805542e07db2eacdbc867ffda66a574a981b6834063fc497eacfa565f01ad21a0c6b0c57185a8019e0fd2d80ae14b77f902dc3378f7f655ee07000 SHA512 a6d1ef0a70f024d9527dbbe2236805a32c6aa9d00def92f1a345f4f0bc8757d23d6933784c96e9282fba038c276999b85f2d0c1bd581a2c1994efd6440adc39f
diff --git a/dev-ruby/warning/metadata.xml b/dev-ruby/warning/metadata.xml
new file mode 100644
index 000000000000..2b047cc3a096
--- /dev/null
+++ b/dev-ruby/warning/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version = '1.0' encoding = 'UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jeremyevans/ruby-warning</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/warning/warning-1.3.0.ebuild b/dev-ruby/warning/warning-1.3.0.ebuild
new file mode 100644
index 000000000000..16e4ab7846fe
--- /dev/null
+++ b/dev-ruby/warning/warning-1.3.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG README.rdoc"
+RUBY_FAKEGEM_GEMSPEC="warning.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Custom processing for warnings"
+
+HOMEPAGE="https://github.com/jeremyevans/ruby-warning"
+SRC_URI="https://github.com/jeremyevans/ruby-warning/archive/${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="ruby-${P}"
+LICENSE="MIT"
+
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+SLOT="$(ver_cut 1)"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/minitest-global_expectations )"
diff --git a/dev-ruby/web-console/Manifest b/dev-ruby/web-console/Manifest
index 459e3dcd400c..e11e6ca37822 100644
--- a/dev-ruby/web-console/Manifest
+++ b/dev-ruby/web-console/Manifest
@@ -1,2 +1,2 @@
-DIST web-console-2.3.0.tar.gz 47641 BLAKE2B 2756f3958ea77df7dbdf7e7bd79f64711b4f958433f347175a29db2272ba549c79f1f94e2be18c17ceb8f4f1e8d281cf09995354f6ccd21da314df14dde886ec SHA512 36136242012053c2049b0faef682a8fe79f931904cd1007a6e08f36aca7a8923fc47fc058304f11cc0b205db876ca77b1cca65048c8ba4db401123ed9c05c834
-DIST web-console-3.7.0.tar.gz 53714 BLAKE2B d69a7b467e419e87d43c988026f278aea5ca142e336d120e0a50ef85b36186d2f388d551f19820e01d85fdca5a49c471aed69cb2ae0d6f1828a99350dfe86d55 SHA512 d44e4dc3ef12216829b3f522e3645b0fa9b8ae34fa70b5e52a96e345b8b5fc8dad9af6f9918ea23d276cae03445133b15f780041a8cb61584b182ca6934fd71b
+DIST web-console-4.2.0.tar.gz 53991 BLAKE2B 8145e5bf2e13230c7411a49af34129130fb99c8a65afc7b628d77572723cdfcb2afbdc9f3be63a9bad0d3d92013cc291882bbe228058e2b84595566a48b5cdba SHA512 3a9fd5c7a184fd28961a4d8d0e4ad9850d8a4fe39a9c97f13cbd78b34a69be49a78ad94570fcd45e8af6ef523948ead3fb4350a4e49fbbe76855b4115a9afc61
+DIST web-console-4.2.1.tar.gz 54529 BLAKE2B 71cda457da24db4f96205557a37afe46ffa0cf4beea79c8249135c31fa5ce01cf1484213bb935ac4ff6849c4f71d11c7545c1888df27f13c9e9bb417b92ecd23 SHA512 3800f89f430927eb7b77f3f613a223d666ae135958d38fc215139a77d74a21f87207c7002f364a916e021486063d2a67aed3a7d12210674add7608b89e9ff2e5
diff --git a/dev-ruby/web-console/metadata.xml b/dev-ruby/web-console/metadata.xml
index 70b5eebfce2c..438da6f6ec2e 100644
--- a/dev-ruby/web-console/metadata.xml
+++ b/dev-ruby/web-console/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/web-console/web-console-2.3.0.ebuild b/dev-ruby/web-console/web-console-2.3.0.ebuild
deleted file mode 100644
index f7bc2da2f20a..000000000000
--- a/dev-ruby/web-console/web-console-2.3.0.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby22 ruby23 ruby24"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.markdown README.markdown"
-
-RUBY_FAKEGEM_GEMSPEC="web-console.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A debugging tool for your Ruby on Rails applications"
-HOMEPAGE="https://github.com/rails/web-console"
-SRC_URI="https://github.com/rails/web-console/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/activemodel-4.0:*
- >=dev-ruby/binding_of_caller-0.7.2
- >=dev-ruby/railties-4.0:*
- >=dev-ruby/sprockets-rails-2.0:* <dev-ruby/sprockets-rails-4.0:*
-"
-
-ruby_add_bdepend "test? (
- dev-ruby/bundler
- dev-ruby/rails:4.2
- dev-ruby/sqlite3
- dev-ruby/mocha
- dev-ruby/simplecov
-)"
-
-all_ruby_prepare() {
- # Use an installed rails version rather than live source from github.
- sed -i -e "/'rails'/ s/,/, '~> 4.2' #/" \
- -e "/'arel'/ s/,/#/" \
- -e '/simplecov/ s:^:#:' Gemfile || die
- sed -i -e '/simplecov/I s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/web-console/web-console-3.7.0.ebuild b/dev-ruby/web-console/web-console-3.7.0.ebuild
deleted file mode 100644
index 01beea3d2e88..000000000000
--- a/dev-ruby/web-console/web-console-3.7.0.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.markdown README.markdown"
-
-RUBY_FAKEGEM_GEMSPEC="web-console.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A debugging tool for your Ruby on Rails applications"
-HOMEPAGE="https://github.com/rails/web-console"
-SRC_URI="https://github.com/rails/web-console/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_rdepend "
- >=dev-ruby/actionview-5.0:*
- >=dev-ruby/activemodel-5.0:*
- >=dev-ruby/bindex-0.4.0
- >=dev-ruby/railties-5.0:*
-"
-
-ruby_add_bdepend "test? (
- dev-ruby/bundler
- >=dev-ruby/rails-5.0
- dev-ruby/sqlite3
- dev-ruby/mocha
- www-servers/puma
-)"
-
-all_ruby_prepare() {
- # Use an installed rails version rather than live source from github.
- sed -i -e '/\(rack\|rails\|simplecov\)/ s/,/#/' \
- -e '/\(byebug\|simplecov\)/ s:^:#:' Gemfile || die
-
- sed -i -e '/simplecov/I s:^:#:' test/test_helper.rb || die
-}
diff --git a/dev-ruby/web-console/web-console-4.2.0.ebuild b/dev-ruby/web-console/web-console-4.2.0.ebuild
new file mode 100644
index 000000000000..d8c735f6df97
--- /dev/null
+++ b/dev-ruby/web-console/web-console-4.2.0.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.markdown README.markdown"
+
+RUBY_FAKEGEM_GEMSPEC="web-console.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A debugging tool for your Ruby on Rails applications"
+HOMEPAGE="https://github.com/rails/web-console"
+SRC_URI="https://github.com/rails/web-console/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/actionview-6.0:*
+ >=dev-ruby/activemodel-6.0:*
+ >=dev-ruby/bindex-0.4.0
+ >=dev-ruby/railties-6.0:*
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ >=dev-ruby/rails-6.0
+ dev-ruby/rack
+ dev-ruby/sqlite3
+ dev-ruby/mocha
+ www-servers/puma
+)"
+
+all_ruby_prepare() {
+ # Use an installed rails version rather than live source from github, and
+ # rack is now part of rails.
+ sed -e '/\(rack\|arel\|rails\|simplecov\)/ s/,/#/' \
+ -e '/\(byebug\|simplecov\)/ s:^:#:' \
+ -e '/arel/ s:^:#:' \
+ -i Gemfile || die
+
+ sed -i -e '/simplecov/I s:^:#:' test/test_helper.rb || 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
new file mode 100644
index 000000000000..088894682e5a
--- /dev/null
+++ b/dev-ruby/web-console/web-console-4.2.1.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="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.markdown README.markdown"
+
+RUBY_FAKEGEM_GEMSPEC="web-console.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A debugging tool for your Ruby on Rails applications"
+HOMEPAGE="https://github.com/rails/web-console"
+SRC_URI="https://github.com/rails/web-console/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/actionview-6.0:*
+ >=dev-ruby/activemodel-6.0:*
+ >=dev-ruby/bindex-0.4.0
+ >=dev-ruby/railties-6.0:*
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/bundler
+ >=dev-ruby/rails-6.0
+ dev-ruby/rack
+ dev-ruby/sqlite3
+ dev-ruby/mocha
+ www-servers/puma
+)"
+
+all_ruby_prepare() {
+ # Use an installed rails version rather than live source from github, and
+ # rack is now part of rails.
+ sed -e '/\(rack\|arel\|rails\|simplecov\)/ s/,/#/' \
+ -e '/\(byebug\|simplecov\)/ s:^:#:' \
+ -e '/arel/ s:^:#:' \
+ -i Gemfile || die
+
+ sed -i -e '/simplecov/I s:^:#:' test/test_helper.rb || die
+}
diff --git a/dev-ruby/webmock/Manifest b/dev-ruby/webmock/Manifest
index ec8fd364f8e0..2a6816d91bbe 100644
--- a/dev-ruby/webmock/Manifest
+++ b/dev-ruby/webmock/Manifest
@@ -1,4 +1,3 @@
-DIST webmock-2.3.2.gem 112128 BLAKE2B ef0a722374057d7c5392924f68de8520f08cb0aa038fc0b8511e00bbd9dc13f6535955f77611e414a33dbf0ed7a519e9c18caf8517d10be7438e7360c3037a1e SHA512 bb61b645b287d15690aa81db4d4c937d3456e1911d394ef1fb31e8ff3530d47b865aa039c8aaa4d4b6a72132dfcdd06be66adf1b53793384dc27ac1c9f9c01e6
-DIST webmock-3.5.1.gem 116736 BLAKE2B eb6531dd481588419932a93d091bf2c2802d98a9abe650e892e568f13a642c61ccbf395e293fb0b24b2e96f464902f8311d03a7afe84e917c4780d2da6000a78 SHA512 6096ebe84140e7385ac941c2f63951d19523b2f7e3330fb38181f19c423b4c4d47828d200d8921e02850374b048902191f96f8d693746bcdf284cf0c5eacd924
-DIST webmock-3.6.0.gem 117248 BLAKE2B 251f80c90777deacc24588a947426252522c3b4ec1670e77801391e9ed495cc7790b2f7211abc728ac357b2876fbb16b654fffe410c5aa3e837c46e927f031f7 SHA512 4bb3ed9cf7e67c1560c1835e26275657b28b40e3f95dbe50156ce1960e418519020675b6ed07e80521d85ea0b0e53c22d674b7b17b4c9349ef62c089e6bc7891
-DIST webmock-3.6.2.gem 117760 BLAKE2B 132b700323cbc4e753406ccfcc69375107c1d8546fd71bacf13db614d1818926321e2cd27dfc08670f908e0ac5946b06892138c2701fb1f27cfcf9fb6dd56c3d SHA512 1d6141be90840d01e3d7b8e925e0a981ac715fbca1219dd35edd7cf3bcea1c1da3442aaa131e3586f0827a7b06207314119c1f47e6ae64f11f154c70ba6fc5c2
+DIST webmock-3.18.1.gem 128000 BLAKE2B 792622ef256e5b106e480f40fbec06bfb970b41d5745dc50be125143b925f5ba1fb7c28173d39268550076d6bd5803a0150740ecdcc31537415af3fb1da9e7d6 SHA512 109f1ced28c4c273f75378e193b772314854fdb5ceea2ef1926d8b790169d07cdb30fdbe1c12e3461a9307f3fea073aa90cfe7421379bf36fa0d550d4bb93c5a
+DIST webmock-3.19.1.tar.gz 127208 BLAKE2B 0753201f8584159a01d73aecc0670bafaaad059c9b08befa51d482916cfeec50d272f6772de11b76f9b209b960021c2d92042094aa853fb4f7e082340c0807f8 SHA512 40fb5587221693662e8c970aab52b4e73114c45f26850f05799b8cc0ae5f18a2b2941ab4c5d595dbd40501b93d421c9cb3158e911a8c9b31b97966cfcebe4b14
+DIST webmock-3.23.0.tar.gz 129686 BLAKE2B 28210f5836af9b3ad66edf84380c318b055817602ee03001929613678fcad799f1a5efb79e09ec78a4aae74e162d14f8efe80b8917869392c99e590ac9cfac9f SHA512 39e8f85e0bb5ee2a497e3ae88ba8aadbbc72bee304f095c82502662cdb676cf5d00732eb89dcb75ba31ca5ab4fd87011687250df081071f43ea3486214b395ab
diff --git a/dev-ruby/webmock/metadata.xml b/dev-ruby/webmock/metadata.xml
index e8554f2411a1..853d15bea836 100644
--- a/dev-ruby/webmock/metadata.xml
+++ b/dev-ruby/webmock/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/webmock/webmock-2.3.2.ebuild b/dev-ruby/webmock/webmock-2.3.2.ebuild
deleted file mode 100644
index cef9721304f7..000000000000
--- a/dev-ruby/webmock/webmock-2.3.2.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby23 ruby24"
-
-RUBY_FAKEGEM_TASK_TEST="test spec NO_CONNECTION=true"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Allows stubbing HTTP requests and setting expectations on HTTP requests"
-HOMEPAGE="https://github.com/bblimke/webmock"
-
-LICENSE="GPL-2"
-SLOT="2"
-KEYWORDS="amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/addressable-2.3.6 >=dev-ruby/crack-0.3.2 dev-ruby/hashdiff"
-
-ruby_add_bdepend "test? (
- dev-ruby/minitest:5
- dev-ruby/rspec:3
- >=dev-ruby/test-unit-3.0.0
- dev-ruby/rack
- >=dev-ruby/httpclient-2.8.0
- >=dev-ruby/patron-0.4.18
- >=dev-ruby/http-0.8.0:0.8 )"
-
-all_ruby_prepare() {
- # Remove bundler support
- rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -i -e '/simplecov/I s:^:#:' -e '1i gem "http", "~>0.8"' spec/spec_helper.rb || die
- sed -i -e '1igem "test-unit"' test/test_helper.rb || die
-
- # There is now optional support for curb and typhoeus which we don't
- # have in Gentoo yet. em_http_request is available in Gentoo but its
- # version is too old.
- sed -i -e '/\(curb\|typhoeus\|em-http\)/d' spec/spec_helper.rb || die
- rm spec/acceptance/{typhoeus,curb,excon,em_http_request}/* || die
-
- # Avoid httpclient specs that require network access, most likely
- # because mocking does not fully work.
- sed -i -e '/httpclient streams response/,/^ end/ s:^:#:' \
- -e '/are detected when manually specifying Authorization header/,/^ end/ s:^:#:' \
- spec/acceptance/httpclient/httpclient_spec.rb
-
- # Avoid specs that require network access
- sed -i -e '/when request is not stubbed/,/^ end/ s:^:#:' spec/acceptance/shared/callbacks.rb
-}
-
-each_ruby_test() {
- ${RUBY} -S rake test NO_CONNECTION=true || die
- ${RUBY} -S rspec-3 spec || die
-
- einfo "Delay to allow the test server to stop"
- sleep 10
-}
diff --git a/dev-ruby/webmock/webmock-3.18.1.ebuild b/dev-ruby/webmock/webmock-3.18.1.ebuild
new file mode 100644
index 000000000000..77159821c0b0
--- /dev/null
+++ b/dev-ruby/webmock/webmock-3.18.1.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_TASK_TEST="test spec NO_CONNECTION=true"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Allows stubbing HTTP requests and setting expectations on HTTP requests"
+HOMEPAGE="https://github.com/bblimke/webmock"
+
+LICENSE="GPL-2"
+SLOT="3"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/addressable-2.8.0
+ >=dev-ruby/crack-0.3.2
+ >=dev-ruby/hashdiff-0.4.0:0
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitest:5
+ dev-ruby/rspec:3
+ >=dev-ruby/test-unit-3.0.0
+ dev-ruby/rack
+ dev-ruby/webrick
+)"
+
+all_ruby_prepare() {
+ # Remove bundler support
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+ sed -i -e '1igem "test-unit"' test/test_helper.rb || die
+
+ # There is now optional support for curb and typhoeus which we don't
+ # have in Gentoo yet. em_http_request is available in Gentoo but its
+ # version is too old. patron's latest version is not compatible.
+ # httpclient is no longer maintained and has various test failures.
+ sed -i -e '/\(curb\|typhoeus\|em-http\|patron\|httpclient\)/ s:^:#:' spec/spec_helper.rb || die
+ rm -f spec/acceptance/{typhoeus,curb,excon,em_http_request,patron,async_http_client,httpclient}/* || die
+
+ # Drop tests for dev-ruby/http for now since this package only works with ruby26
+ sed -i -e '/http_rb/ s:^:#:' spec/spec_helper.rb || die
+ rm -f spec/acceptance/http_rb/* || die
+
+ # Avoid specs that require network access
+ sed -i -e '/when request is not stubbed/,/^ end/ s:^:#:' spec/acceptance/shared/callbacks.rb
+}
+
+each_ruby_test() {
+ ${RUBY} -S rake test NO_CONNECTION=true || die
+ ${RUBY} -S rspec-3 spec || die
+
+ einfo "Delay to allow the test server to stop"
+ sleep 10
+}
diff --git a/dev-ruby/webmock/webmock-3.19.1.ebuild b/dev-ruby/webmock/webmock-3.19.1.ebuild
new file mode 100644
index 000000000000..a49326e4f027
--- /dev/null
+++ b/dev-ruby/webmock/webmock-3.19.1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="test spec NO_CONNECTION=true"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="webmock.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Allows stubbing HTTP requests and setting expectations on HTTP requests"
+HOMEPAGE="https://github.com/bblimke/webmock"
+SRC_URI="https://github.com/bblimke/webmock/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_rdepend "
+ >=dev-ruby/addressable-2.8.0
+ >=dev-ruby/crack-0.3.2
+ >=dev-ruby/hashdiff-0.4.0:0
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitest:5
+ dev-ruby/rspec:3
+ dev-ruby/rspec-retry
+ >=dev-ruby/test-unit-3.0.0
+ dev-ruby/rack
+ dev-ruby/webrick
+)"
+
+all_ruby_prepare() {
+ # Remove bundler support
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+ sed -i -e '1igem "test-unit"' test/test_helper.rb || die
+
+ # There is now optional support for curb and typhoeus which we don't
+ # have in Gentoo yet. em_http_request is available in Gentoo but its
+ # version is too old. patron's latest version is not compatible.
+ # httpclient is no longer maintained and has various test failures.
+ sed -i -e '/\(curb\|typhoeus\|em-http\|patron\|httpclient\)/ s:^:#:' spec/spec_helper.rb || die
+ rm -f spec/acceptance/{typhoeus,curb,excon,em_http_request,patron,async_http_client,httpclient}/* || die
+
+ # Drop tests for dev-ruby/http for now since this package only works with ruby26
+ sed -i -e '/http_rb/ s:^:#:' spec/spec_helper.rb || die
+ rm -f spec/acceptance/http_rb/* || die
+
+ # Avoid specs that require network access
+ sed -i -e '/when request is not stubbed/,/^ end/ s:^:#:' spec/acceptance/shared/callbacks.rb
+}
+
+each_ruby_test() {
+ ${RUBY} -S rake test NO_CONNECTION=true || die
+ ${RUBY} -S rspec-3 spec || die
+
+ einfo "Delay to allow the test server to stop"
+ sleep 10
+}
diff --git a/dev-ruby/webmock/webmock-3.23.0.ebuild b/dev-ruby/webmock/webmock-3.23.0.ebuild
new file mode 100644
index 000000000000..475a1b5900b6
--- /dev/null
+++ b/dev-ruby/webmock/webmock-3.23.0.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="test spec NO_CONNECTION=true"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="webmock.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Allows stubbing HTTP requests and setting expectations on HTTP requests"
+HOMEPAGE="https://github.com/bblimke/webmock"
+SRC_URI="https://github.com/bblimke/webmock/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="test"
+
+ruby_add_rdepend "
+ >=dev-ruby/addressable-2.8.0
+ >=dev-ruby/crack-0.3.2
+ >=dev-ruby/hashdiff-0.4.0:0
+"
+
+ruby_add_bdepend "test? (
+ dev-ruby/minitest:5
+ dev-ruby/rspec:3
+ dev-ruby/rspec-retry
+ >=dev-ruby/test-unit-3.0.0
+ dev-ruby/rack
+ dev-ruby/webrick
+)"
+
+all_ruby_prepare() {
+ # Remove bundler support
+ rm Gemfile || die
+ sed -i -e '/[Bb]undler/d' Rakefile || die
+ sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
+ sed -i -e '1igem "test-unit"' test/test_helper.rb || die
+
+ # There is now optional support for curb and typhoeus which we don't
+ # have in Gentoo yet. em_http_request is available in Gentoo but its
+ # version is too old. patron's latest version is not compatible.
+ # httpclient is no longer maintained and has various test failures.
+ sed -i -e '/\(curb\|typhoeus\|em-http\|patron\|httpclient\)/ s:^:#:' spec/spec_helper.rb || die
+ rm -f spec/acceptance/{typhoeus,curb,excon,em_http_request,patron,async_http_client,httpclient}/* || die
+
+ # Drop tests for dev-ruby/http for now since this package only works with ruby26
+ sed -i -e '/http_rb/ s:^:#:' spec/spec_helper.rb || die
+ rm -f spec/acceptance/http_rb/* || die
+
+ # Avoid specs that require network access
+ sed -i -e '/when request is not stubbed/,/^ end/ s:^:#:' spec/acceptance/shared/callbacks.rb
+}
+
+each_ruby_test() {
+ ${RUBY} -S rake test NO_CONNECTION=true || die
+ ${RUBY} -S rspec-3 spec || die
+
+ einfo "Delay to allow the test server to stop"
+ sleep 10
+}
diff --git a/dev-ruby/webmock/webmock-3.5.1.ebuild b/dev-ruby/webmock/webmock-3.5.1.ebuild
deleted file mode 100644
index ae5c4de7fff4..000000000000
--- a/dev-ruby/webmock/webmock-3.5.1.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test spec NO_CONNECTION=true"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Allows stubbing HTTP requests and setting expectations on HTTP requests"
-HOMEPAGE="https://github.com/bblimke/webmock"
-
-LICENSE="GPL-2"
-SLOT="3"
-KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/addressable-2.3.6 >=dev-ruby/crack-0.3.2 dev-ruby/hashdiff"
-
-ruby_add_bdepend "test? (
- dev-ruby/minitest:5
- dev-ruby/rspec:3
- >=dev-ruby/test-unit-3.0.0
- dev-ruby/rack
- >=dev-ruby/httpclient-2.8.0
- || ( dev-ruby/http:4 dev-ruby/http:3 ) )"
-
-all_ruby_prepare() {
- # Remove bundler support
- rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
- sed -i -e '1igem "test-unit"' test/test_helper.rb || die
-
- # There is now optional support for curb and typhoeus which we don't
- # have in Gentoo yet. em_http_request is available in Gentoo but its
- # version is too old. patron's latest version is not compatible.
- sed -i -e '/\(curb\|typhoeus\|em-http\|patron\)/d' spec/spec_helper.rb || die
- rm spec/acceptance/{typhoeus,curb,excon,em_http_request,patron}/* || die
-
- # Avoid httpclient specs that require network access, most likely
- # because mocking does not fully work.
- sed -i -e '/httpclient streams response/,/^ end/ s:^:#:' \
- -e '/are detected when manually specifying Authorization header/,/^ end/ s:^:#:' \
- spec/acceptance/httpclient/httpclient_spec.rb
-
- # Avoid specs that require network access
- sed -i -e '/when request is not stubbed/,/^ end/ s:^:#:' spec/acceptance/shared/callbacks.rb
-}
-
-each_ruby_test() {
- ${RUBY} -S rake test NO_CONNECTION=true || die
- ${RUBY} -S rspec-3 spec || die
-
- einfo "Delay to allow the test server to stop"
- sleep 10
-}
diff --git a/dev-ruby/webmock/webmock-3.6.0.ebuild b/dev-ruby/webmock/webmock-3.6.0.ebuild
deleted file mode 100644
index 2e45dbdb6ddb..000000000000
--- a/dev-ruby/webmock/webmock-3.6.0.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test spec NO_CONNECTION=true"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Allows stubbing HTTP requests and setting expectations on HTTP requests"
-HOMEPAGE="https://github.com/bblimke/webmock"
-
-LICENSE="GPL-2"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/addressable-2.3.6 >=dev-ruby/crack-0.3.2 >=dev-ruby/hashdiff-0.4.0"
-
-ruby_add_bdepend "test? (
- dev-ruby/minitest:5
- dev-ruby/rspec:3
- >=dev-ruby/test-unit-3.0.0
- dev-ruby/rack
- >=dev-ruby/httpclient-2.8.0
- || ( dev-ruby/http:4 dev-ruby/http:3 ) )"
-
-all_ruby_prepare() {
- # Remove bundler support
- rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
- sed -i -e '1igem "test-unit"' test/test_helper.rb || die
-
- # There is now optional support for curb and typhoeus which we don't
- # have in Gentoo yet. em_http_request is available in Gentoo but its
- # version is too old. patron's latest version is not compatible.
- sed -i -e '/\(curb\|typhoeus\|em-http\|patron\)/d' spec/spec_helper.rb || die
- rm spec/acceptance/{typhoeus,curb,excon,em_http_request,patron}/* || die
-
- # Avoid httpclient specs that require network access, most likely
- # because mocking does not fully work.
- sed -i -e '/httpclient streams response/,/^ end/ s:^:#:' \
- -e '/are detected when manually specifying Authorization header/,/^ end/ s:^:#:' \
- spec/acceptance/httpclient/httpclient_spec.rb
-
- # Avoid specs that require network access
- sed -i -e '/when request is not stubbed/,/^ end/ s:^:#:' spec/acceptance/shared/callbacks.rb
-}
-
-each_ruby_test() {
- ${RUBY} -S rake test NO_CONNECTION=true || die
- ${RUBY} -S rspec-3 spec || die
-
- einfo "Delay to allow the test server to stop"
- sleep 10
-}
diff --git a/dev-ruby/webmock/webmock-3.6.2.ebuild b/dev-ruby/webmock/webmock-3.6.2.ebuild
deleted file mode 100644
index ae657834d2fe..000000000000
--- a/dev-ruby/webmock/webmock-3.6.2.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_TASK_TEST="test spec NO_CONNECTION=true"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Allows stubbing HTTP requests and setting expectations on HTTP requests"
-HOMEPAGE="https://github.com/bblimke/webmock"
-
-LICENSE="GPL-2"
-SLOT="3"
-KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/addressable-2.3.6 >=dev-ruby/crack-0.3.2 >=dev-ruby/hashdiff-0.4.0:0"
-
-ruby_add_bdepend "test? (
- dev-ruby/minitest:5
- dev-ruby/rspec:3
- >=dev-ruby/test-unit-3.0.0
- dev-ruby/rack
- >=dev-ruby/httpclient-2.8.0
- || ( dev-ruby/http:4 dev-ruby/http:3 ) )"
-
-all_ruby_prepare() {
- # Remove bundler support
- rm Gemfile || die
- sed -i -e '/[Bb]undler/d' Rakefile || die
- sed -i -e '/simplecov/I s:^:#:' spec/spec_helper.rb || die
- sed -i -e '1igem "test-unit"' test/test_helper.rb || die
-
- # There is now optional support for curb and typhoeus which we don't
- # have in Gentoo yet. em_http_request is available in Gentoo but its
- # version is too old. patron's latest version is not compatible.
- sed -i -e '/\(curb\|typhoeus\|em-http\|patron\)/d' spec/spec_helper.rb || die
- rm spec/acceptance/{typhoeus,curb,excon,em_http_request,patron}/* || die
-
- # Avoid httpclient specs that require network access, most likely
- # because mocking does not fully work.
- sed -i -e '/httpclient streams response/,/^ end/ s:^:#:' \
- -e '/are detected when manually specifying Authorization header/,/^ end/ s:^:#:' \
- spec/acceptance/httpclient/httpclient_spec.rb
-
- # Avoid specs that require network access
- sed -i -e '/when request is not stubbed/,/^ end/ s:^:#:' spec/acceptance/shared/callbacks.rb
-}
-
-each_ruby_test() {
- ${RUBY} -S rake test NO_CONNECTION=true || die
- ${RUBY} -S rspec-3 spec || die
-
- einfo "Delay to allow the test server to stop"
- sleep 10
-}
diff --git a/dev-ruby/webrick/Manifest b/dev-ruby/webrick/Manifest
new file mode 100644
index 000000000000..d57b3c2e1cf7
--- /dev/null
+++ b/dev-ruby/webrick/Manifest
@@ -0,0 +1,2 @@
+DIST webrick-1.7.0.tar.gz 114413 BLAKE2B ff0d09a3137edabde37392d4c8a5e1f37d9899c60db8e96e4034ef60626225c0508c6b2797281878bbb7a0c6db16e20bd46a83b61b3de2ed059cb95e80255a38 SHA512 785e8c6af6e2f8ac497bab6d0ad0e9383fa4c4ac8dee6ceee38e20c5e9b631b805ec3c8f5438ebea651ee4113698de1a370ae506927bdc04e512ea6cac433cd1
+DIST webrick-1.8.1.tar.gz 91111 BLAKE2B eff3f2dff64d017fa0ef5370b07d97bfcd39f1df426a3b04ffdd0b5b0ea43cdd5d267420ea64bd0c3e4de3f1ee88df2f09959fd17b2b158b5ce0ddc16995b2bb SHA512 21cb396887025f85cfe04868e7fa7ef039809ca42a3acadfe1decb4dcd02eeeb3c9163e970324b56a9e0eb6202d971370af56e200c69de2d224c1941f866400c
diff --git a/dev-ruby/webrick/metadata.xml b/dev-ruby/webrick/metadata.xml
new file mode 100644
index 000000000000..6a5fb7e9c854
--- /dev/null
+++ b/dev-ruby/webrick/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/webrick</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/webrick/webrick-1.7.0-r1.ebuild b/dev-ruby/webrick/webrick-1.7.0-r1.ebuild
new file mode 100644
index 000000000000..b1530a745e2d
--- /dev/null
+++ b/dev-ruby/webrick/webrick-1.7.0-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="webrick.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An HTTP server toolkit"
+HOMEPAGE="https://github.com/ruby/webrick"
+SRC_URI="https://github.com/ruby/webrick/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( Ruby-BSD BSD-2 )"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ': './:" ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/webrick/webrick-1.8.1.ebuild b/dev-ruby/webrick/webrick-1.8.1.ebuild
new file mode 100644
index 000000000000..bdac5a6095e7
--- /dev/null
+++ b/dev-ruby/webrick/webrick-1.8.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="webrick.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="An HTTP server toolkit"
+HOMEPAGE="https://github.com/ruby/webrick"
+SRC_URI="https://github.com/ruby/webrick/archive/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 ~x64-solaris"
+SLOT="0"
+IUSE="test"
+
+all_ruby_prepare() {
+ sed -i -e "s:_relative ': './:" ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Increase timeout for test to help out slow arches
+ sed -i -e '/EnvUtil.timeout(10) do/s:10:60:' test/webrick/test_ssl_server.rb || die
+}
diff --git a/dev-ruby/webrobots/metadata.xml b/dev-ruby/webrobots/metadata.xml
index dc2b266475d2..1643db6ac9d9 100644
--- a/dev-ruby/webrobots/metadata.xml
+++ b/dev-ruby/webrobots/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/webrobots/webrobots-0.1.2-r1.ebuild b/dev-ruby/webrobots/webrobots-0.1.2-r1.ebuild
deleted file mode 100644
index c24d5f4d202a..000000000000
--- a/dev-ruby/webrobots/webrobots-0.1.2-r1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_DOCDIR="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.rdoc"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A library to help write robots.txt compliant web robots"
-HOMEPAGE="https://github.com/knu/webrobots"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/nokogiri-1.4.4"
-
-ruby_add_bdepend "test? ( dev-ruby/shoulda dev-ruby/test-unit:2 dev-ruby/webmock dev-ruby/vcr )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/,/end/d' Rakefile test/helper.rb || die
-
- # Avoid tests for live websites requirering a network connection.
- sed -i -e '/robots.txt in the real world/,/^ end/ s:^:#:' test/test_webrobots.rb || die
-}
-
-each_ruby_test() {
- ruby-ng_testrb-2 -Ilib test/test_*.rb
-}
diff --git a/dev-ruby/webrobots/webrobots-0.1.2-r3.ebuild b/dev-ruby/webrobots/webrobots-0.1.2-r3.ebuild
new file mode 100644
index 000000000000..37805bde0fb9
--- /dev/null
+++ b/dev-ruby/webrobots/webrobots-0.1.2-r3.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_DOCDIR="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.rdoc"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A library to help write robots.txt compliant web robots"
+HOMEPAGE="https://github.com/knu/webrobots"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/nokogiri-1.4.4"
+
+ruby_add_bdepend "test? ( dev-ruby/shoulda dev-ruby/test-unit:2 dev-ruby/webmock dev-ruby/vcr )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/,/end/d' Rakefile test/helper.rb || die
+
+ # Avoid tests for live websites requirering a network connection.
+ sed -i -e '/robots.txt in the real world/,/^ end/ s:^:#:' test/test_webrobots.rb || die
+}
+
+each_ruby_test() {
+ ruby-ng_testrb-2 -Ilib test/test_*.rb
+}
diff --git a/dev-ruby/websocket-driver/Manifest b/dev-ruby/websocket-driver/Manifest
index 48b165a9ea8e..a92156788621 100644
--- a/dev-ruby/websocket-driver/Manifest
+++ b/dev-ruby/websocket-driver/Manifest
@@ -1,3 +1 @@
-DIST websocket-driver-0.6.5.tar.gz 24737 BLAKE2B 137c16a69309a1aad07fff663ff95a888a151f0fa20e78e754ae62ddfc8c2bdbfda926d7f4c53549e92646d018df7f374721e95246eb2985012e6b219970c4c6 SHA512 6915fdefac26a24e1f7d3d9a7e6bc6afc84b491150290a75a14243c233f5029d7d6e90a803b34bd6a8e8717322c6ae6fd4d3f3dad7a50c8eb18f17c3f2e9bbd0
-DIST websocket-driver-0.7.0.tar.gz 25557 BLAKE2B 5d8af63c50b9c61b05e822a3bef7bd9c15a25875afa2cb0eb909f174801ff10445452c11d83790d9053438ea5556d91739bba27b2c1d6b5dc93397fbfa64bfd6 SHA512 cc022a53c546e66eb2b7ab04ff2a809ad22087343807f0e31c51e36e028123d808cbfc1956bc8e14d1fd913661664302a41ae5abc9a34562562da2e5cba58368
-DIST websocket-driver-0.7.1.tar.gz 25722 BLAKE2B 6046fe93a52ef958fa22402f67d544cb4375248997cc5104bd6ff46fde40493f3b342a29aec5a803e5d884528ee593f605e30150eb1e770508ef26b2af126cda SHA512 77e285eb038c0bff612f24f2edb79747ab37d167d861a7e580827da2ff5bc371cbb76041dbe47224384e58c1beaea7ef78cd875d08f218fb1ca9c4657783efaa
+DIST websocket-driver-0.7.6.tar.gz 26332 BLAKE2B e8da76846b519603f7eef9cef53afdff3d48176cba21de1ce6b17e3718dd33b8309aaca721d4d11480e34e04b1ed2bfbb8892af507fbc72c1ff846c800f46499 SHA512 5444a0748821ab651e9e5ed40fd737c9af50eca1f8046b3110ab436bb8c0c56250ee8a8e762ae1668249d9ebfa2712b52802950529a949aba2574ffc66c1c58a
diff --git a/dev-ruby/websocket-driver/metadata.xml b/dev-ruby/websocket-driver/metadata.xml
index 26fde833098f..390cb1f78fb3 100644
--- a/dev-ruby/websocket-driver/metadata.xml
+++ b/dev-ruby/websocket-driver/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/websocket-driver/websocket-driver-0.6.5.ebuild b/dev-ruby/websocket-driver/websocket-driver-0.6.5.ebuild
deleted file mode 100644
index 71ee4dc6b7a8..000000000000
--- a/dev-ruby/websocket-driver/websocket-driver-0.6.5.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A complete implementation of the WebSocket protocols"
-HOMEPAGE="https://github.com/faye/websocket-driver-ruby"
-SRC_URI="https://github.com/faye/websocket-driver-ruby/archive/${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="${PN}-ruby-${PV}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/websocket-extensions-0.1.0"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/websocket-driver extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/websocket-driver
- cp ext/websocket-driver/websocket_mask.so lib/ || die
-}
diff --git a/dev-ruby/websocket-driver/websocket-driver-0.7.0.ebuild b/dev-ruby/websocket-driver/websocket-driver-0.7.0.ebuild
deleted file mode 100644
index 391319022a1e..000000000000
--- a/dev-ruby/websocket-driver/websocket-driver-0.7.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A complete implementation of the WebSocket protocols"
-HOMEPAGE="https://github.com/faye/websocket-driver-ruby"
-SRC_URI="https://github.com/faye/websocket-driver-ruby/archive/${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="${PN}-ruby-${PV}"
-
-LICENSE="MIT"
-SLOT="0.7"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/websocket-extensions-0.1.0"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/websocket-driver extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/websocket-driver
- cp ext/websocket-driver/websocket_mask.so lib/ || die
-}
diff --git a/dev-ruby/websocket-driver/websocket-driver-0.7.1.ebuild b/dev-ruby/websocket-driver/websocket-driver-0.7.1.ebuild
deleted file mode 100644
index 80babbc69e6f..000000000000
--- a/dev-ruby/websocket-driver/websocket-driver-0.7.1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A complete implementation of the WebSocket protocols"
-HOMEPAGE="https://github.com/faye/websocket-driver-ruby"
-SRC_URI="https://github.com/faye/websocket-driver-ruby/archive/${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="${PN}-ruby-${PV}"
-
-LICENSE="MIT"
-SLOT="0.7"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/websocket-extensions-0.1.0"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/websocket-driver extconf.rb || die
-}
-
-each_ruby_compile() {
- emake V=1 -Cext/websocket-driver
- cp ext/websocket-driver/websocket_mask.so lib/ || die
-}
diff --git a/dev-ruby/websocket-driver/websocket-driver-0.7.6.ebuild b/dev-ruby/websocket-driver/websocket-driver-0.7.6.ebuild
new file mode 100644
index 000000000000..b5338e18052a
--- /dev/null
+++ b/dev-ruby/websocket-driver/websocket-driver-0.7.6.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/websocket-driver/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="A complete implementation of the WebSocket protocols"
+HOMEPAGE="https://github.com/faye/websocket-driver-ruby"
+SRC_URI="https://github.com/faye/websocket-driver-ruby/archive/${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="${PN}-ruby-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0.7"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/websocket-extensions-0.1.0"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/websocket-extensions/Manifest b/dev-ruby/websocket-extensions/Manifest
index 6700c388fdc7..2856c9f13283 100644
--- a/dev-ruby/websocket-extensions/Manifest
+++ b/dev-ruby/websocket-extensions/Manifest
@@ -1,2 +1 @@
-DIST websocket-extensions-0.1.3.tar.gz 9897 BLAKE2B 279045331c8901b643a41fe1a3c053ff9137b613b9e1bcd2fed5ec16afecc971aa8575515186e5b1236779680e2809fbdd2ffa8f4ee76ff0f191caa8f960fe6f SHA512 6cff75cbf2465a20061ad05d08ef15913b294c92bf91bb8a6c62dc0d7f4459a42979e15c1db6a1f38a5d3a10af8dc9b9f579b3e6e713ebfb3b1a718afa6f83e7
-DIST websocket-extensions-0.1.4.tar.gz 9666 BLAKE2B 21446168b3f7c4a52fe25ddffcaeb31bd1e8f2d8c459b19871cf15f03934b6e25793aa15baad639ec07a4eba399b16343b23889d05d417b83e097846e15e9d8c SHA512 928b3cdf66a6cb16a0a735ea8335b861af9dd8c4b6962a2a9132dd538d452c81dd683a7648e194bc81db4cd8b52f52203145c5c90475e00157315e46a09a53fa
+DIST websocket-extensions-0.1.5-r1.tar.gz 9795 BLAKE2B ea387b9bd56d02372740a8f42e0c8259cd2013876f86a13c8203e1e1c5ae9e0e6a8d0c2cf11f653c3517c2bff0c283370ec7a5760c29df39493c4b41d8e55450 SHA512 a80154d0c83743ffa4dd3eee1adcc93bb38907fbae4260602a91c922e5a022806413a8aa84dc10bc14b5ed2ca928765ef4c39e04ff0a0c5f9b423aff2b2514fd
diff --git a/dev-ruby/websocket-extensions/files/websocket-extensions-0.1.5-rspec-mocks.patch b/dev-ruby/websocket-extensions/files/websocket-extensions-0.1.5-rspec-mocks.patch
new file mode 100644
index 000000000000..152972e232dc
--- /dev/null
+++ b/dev-ruby/websocket-extensions/files/websocket-extensions-0.1.5-rspec-mocks.patch
@@ -0,0 +1,37 @@
+From 5891358639fcfa7a2e2004855275bd7da0c85c64 Mon Sep 17 00:00:00 2001
+From: James Coglan <jcoglan@gmail.com>
+Date: Sun, 6 Feb 2022 23:36:18 +0000
+Subject: [PATCH] As of rspec-mocks v3.10.3, mock expectations need to use
+ explicit hashes to avoid confusion with keyword args
+
+---
+ spec/websocket/extensions_spec.rb | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/spec/websocket/extensions_spec.rb b/spec/websocket/extensions_spec.rb
+index 7c1e4f1..ccb305d 100644
+--- a/spec/websocket/extensions_spec.rb
++++ b/spec/websocket/extensions_spec.rb
+@@ -134,18 +134,18 @@
+ end
+
+ it "activates one session with a boolean param" do
+- expect(@session).to receive(:activate).with("gzip" => true).exactly(1).and_return(true)
++ expect(@session).to receive(:activate).with({ "gzip" => true }).exactly(1).and_return(true)
+ @extensions.activate("deflate; gzip")
+ end
+
+ it "activates one session with a string param" do
+- expect(@session).to receive(:activate).with("mode" => "compress").exactly(1).and_return(true)
++ expect(@session).to receive(:activate).with({ "mode" => "compress" }).exactly(1).and_return(true)
+ @extensions.activate("deflate; mode=compress")
+ end
+
+ it "activate multiple sessions" do
+- expect(@session).to receive(:activate).with("a" => true).exactly(1).and_return(true)
+- expect(@nonconflict_session).to receive(:activate).with("b" => true).exactly(1).and_return(true)
++ expect(@session).to receive(:activate).with({ "a" => true }).exactly(1).and_return(true)
++ expect(@nonconflict_session).to receive(:activate).with({ "b" => true }).exactly(1).and_return(true)
+ @extensions.activate("deflate; a, reverse; b")
+ end
+
diff --git a/dev-ruby/websocket-extensions/metadata.xml b/dev-ruby/websocket-extensions/metadata.xml
index 2c59180b3b2f..470d349522f7 100644
--- a/dev-ruby/websocket-extensions/metadata.xml
+++ b/dev-ruby/websocket-extensions/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/websocket-extensions/websocket-extensions-0.1.3.ebuild b/dev-ruby/websocket-extensions/websocket-extensions-0.1.3.ebuild
deleted file mode 100644
index be1e21f483a4..000000000000
--- a/dev-ruby/websocket-extensions/websocket-extensions-0.1.3.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Generic extension manager for WebSocket connections"
-HOMEPAGE="https://github.com/faye/websocket-extensions-ruby"
-SRC_URI="https://github.com/faye/websocket-extensions-ruby/archive/${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="${PN}-ruby-${PV}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE=""
diff --git a/dev-ruby/websocket-extensions/websocket-extensions-0.1.4.ebuild b/dev-ruby/websocket-extensions/websocket-extensions-0.1.4.ebuild
deleted file mode 100644
index 14cdc5899daa..000000000000
--- a/dev-ruby/websocket-extensions/websocket-extensions-0.1.4.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Generic extension manager for WebSocket connections"
-HOMEPAGE="https://github.com/faye/websocket-extensions-ruby"
-SRC_URI="https://github.com/faye/websocket-extensions-ruby/archive/${PV}.tar.gz -> ${P}.tar.gz"
-RUBY_S="${PN}-ruby-${PV}"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-IUSE=""
diff --git a/dev-ruby/websocket-extensions/websocket-extensions-0.1.5-r2.ebuild b/dev-ruby/websocket-extensions/websocket-extensions-0.1.5-r2.ebuild
new file mode 100644
index 000000000000..2b78aff419cd
--- /dev/null
+++ b/dev-ruby/websocket-extensions/websocket-extensions-0.1.5-r2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="websocket-extensions.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Generic extension manager for WebSocket connections"
+HOMEPAGE="https://github.com/faye/websocket-extensions-ruby"
+SRC_URI="https://github.com/faye/websocket-extensions-ruby/archive/${PV}.tar.gz -> ${P}-r1.tar.gz"
+RUBY_S="${PN}-ruby-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+PATCHES=( "${FILESDIR}"/${P}-rspec-mocks.patch )
diff --git a/dev-ruby/websocket/Manifest b/dev-ruby/websocket/Manifest
index 47e2d1378718..3b3c917a4fbb 100644
--- a/dev-ruby/websocket/Manifest
+++ b/dev-ruby/websocket/Manifest
@@ -1,2 +1,2 @@
-DIST websocket-1.2.7.gem 28160 BLAKE2B 11890ed86379a1d19dca142794ff2161c02566d46a00c77d534c708cd689662801cd3ee9ebae39c6622783873bfe00985c7ed303e0ed886d837f4f322ee5c3c3 SHA512 3200ee562a59e9ce064189cafabea8c8fe8bfd87ded452f1fd9b2498cb1a2108ccd685107b8848efa21f7bc9934942e366dce2ccb3783e974570682374553dbf
-DIST websocket-1.2.8.gem 28160 BLAKE2B 25c7c055710f8d42d44417b3127de9a5ff8ef87dbf766cd468a88bfe116fcaa4f7d36b3caccb5780f2a1b4be05e5c4bcc74efffe6c2f4b65d0f1c8d12055b2a2 SHA512 42630e9d577a0fcbfa9f28ba487d12e4d96c59c615dddf91f810abc151a716aa9eaac3788999cb8eb2e729eff92fe8d262639b4b460029690994c710e78c138c
+DIST websocket-1.2.10.gem 28672 BLAKE2B 352289d39d374032bd8ab11ec1c38f0b3abb3c3ec7cdb05373d5ccdc7419d896088412657b54cbcd93b15d4bab07a3fdf27829a38e35a0c62f09eed1b8302a05 SHA512 c06598a4988b1a4361ba55d807577c756d82295e5c5316fe9f0492a32776599b8ce878615c5c0d4ed2d70d37bfed5ec188398922dd140fd195b894262df63f57
+DIST websocket-1.2.9.gem 28160 BLAKE2B 1d0423050d26ee9c719de1803bd5fbcda80acb2c47825e2ad4203b8ac6e3e9a925fbe3cab8f5c0b283841dbfdbb97b753cc4f2c7a9c689486dadd9573b8fb87d SHA512 42044df313e1ca2525700decaac6f77b8bf9d4f1dd21723de408c636196e9f77c4b9d865abeb1de68575ad3b59ad48a9e7c30f0e16dbd15695958f8cf6ca3d57
diff --git a/dev-ruby/websocket/files/websocket-1.2.9-default-port.patch b/dev-ruby/websocket/files/websocket-1.2.9-default-port.patch
new file mode 100644
index 000000000000..5830036da62e
--- /dev/null
+++ b/dev-ruby/websocket/files/websocket-1.2.9-default-port.patch
@@ -0,0 +1,134 @@
+https://github.com/imanel/websocket-ruby/commit/736a7515aff808a5c268b87066e928b59aed769e
+
+From 736a7515aff808a5c268b87066e928b59aed769e Mon Sep 17 00:00:00 2001
+From: Bernard Potocki <bernard.potocki@imanel.org>
+Date: Thu, 17 Feb 2022 20:02:21 +0100
+Subject: [PATCH] Ensure correct port is always specified (#48)
+
+--- a/lib/websocket/handshake/base.rb
++++ b/lib/websocket/handshake/base.rb
+@@ -7,7 +7,7 @@ class Base
+ include ExceptionHandler
+ include NiceInspect
+
+- attr_reader :host, :port, :path, :query,
++ attr_reader :host, :path, :query,
+ :state, :version, :secure,
+ :headers, :protocols
+
+@@ -66,6 +66,20 @@ def leftovers
+ (@leftovers.to_s.split("\n", reserved_leftover_lines + 1)[reserved_leftover_lines] || '').strip
+ end
+
++ # Return default port for protocol (80 for ws, 443 for wss)
++ def default_port
++ secure ? 443 : 80
++ end
++
++ # Check if provided port is a default one
++ def default_port?
++ port == default_port
++ end
++
++ def port
++ @port || default_port
++ end
++
+ # URI of request.
+ # @return [String] Full URI with protocol
+ # @example
+@@ -73,7 +87,7 @@ def leftovers
+ def uri
+ uri = String.new(secure ? 'wss://' : 'ws://')
+ uri << host
+- uri << ":#{port}" if port
++ uri << ":#{port}" unless default_port?
+ uri << path
+ uri << "?#{query}" if query
+ uri
+--- a/lib/websocket/handshake/client.rb
++++ b/lib/websocket/handshake/client.rb
+@@ -61,7 +61,7 @@ def initialize(args = {})
+ uri = URI.parse(@url || @uri)
+ @secure ||= (uri.scheme == 'wss')
+ @host ||= uri.host
+- @port ||= uri.port
++ @port ||= uri.port || default_port
+ @path ||= uri.path
+ @query ||= uri.query
+ end
+--- a/lib/websocket/handshake/handler/client04.rb
++++ b/lib/websocket/handshake/handler/client04.rb
+@@ -21,7 +21,7 @@ def handshake_keys
+ %w[Connection Upgrade]
+ ]
+ host = @handshake.host
+- host += ":#{@handshake.port}" if @handshake.port
++ host += ":#{@handshake.port}" unless @handshake.default_port?
+ keys << ['Host', host]
+ keys += super
+ keys << ['Sec-WebSocket-Origin', @handshake.origin] if @handshake.origin
+--- a/lib/websocket/handshake/handler/client75.rb
++++ b/lib/websocket/handshake/handler/client75.rb
+@@ -18,7 +18,7 @@ def handshake_keys
+ %w[Connection Upgrade]
+ ]
+ host = @handshake.host
+- host += ":#{@handshake.port}" if @handshake.port
++ host += ":#{@handshake.port}" unless @handshake.default_port?
+ keys << ['Host', host]
+ keys << ['Origin', @handshake.origin] if @handshake.origin
+ keys << ['WebSocket-Protocol', @handshake.protocols.first] if @handshake.protocols.any?
+--- a/lib/websocket/handshake/server.rb
++++ b/lib/websocket/handshake/server.rb
+@@ -129,13 +129,13 @@ def should_respond?
+ # Host of server according to client header
+ # @return [String] host
+ def host
+- @headers['host'].to_s.split(':')[0].to_s
++ @host || @headers['host'].to_s.split(':')[0].to_s
+ end
+
+ # Port of server according to client header
+- # @return [String] port
++ # @return [Integer] port
+ def port
+- @headers['host'].to_s.split(':')[1]
++ (@port || @headers['host'].to_s.split(':')[1] || default_port).to_i
+ end
+
+ private
+--- a/spec/support/all_client_drafts.rb
++++ b/spec/support/all_client_drafts.rb
+@@ -38,6 +38,10 @@ def validate_request
+ expect(handshake.query).to eql('aaa=bbb')
+ end
+
++ it 'returns default port' do
++ expect(handshake.port).to be(80)
++ end
++
+ it 'returns valid port' do
+ @request_params = { port: 123 }
+ expect(handshake.port).to be(123)
+--- a/spec/support/all_server_drafts.rb
++++ b/spec/support/all_server_drafts.rb
+@@ -47,11 +47,17 @@ def validate_request
+ expect(handshake.query).to eql('aaa=bbb')
+ end
+
++ it 'returns default port' do
++ handshake << client_request
++
++ expect(handshake.port).to be(80)
++ end
++
+ it 'returns valid port' do
+ @request_params = { port: 123 }
+ handshake << client_request
+
+- expect(handshake.port).to eql('123')
++ expect(handshake.port).to be(123)
+ end
+
+ it 'returns valid response' do
diff --git a/dev-ruby/websocket/metadata.xml b/dev-ruby/websocket/metadata.xml
index 045f90e542ef..b8a9e238c34c 100644
--- a/dev-ruby/websocket/metadata.xml
+++ b/dev-ruby/websocket/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/websocket/websocket-1.2.10.ebuild b/dev-ruby/websocket/websocket-1.2.10.ebuild
new file mode 100644
index 000000000000..861f6b2eb148
--- /dev/null
+++ b/dev-ruby/websocket/websocket-1.2.10.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Universal Ruby library to handle WebSocket protocol"
+HOMEPAGE="https://github.com/imanel/websocket-ruby"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/rspec-its
+ dev-ruby/webrick
+ )
+"
diff --git a/dev-ruby/websocket/websocket-1.2.7.ebuild b/dev-ruby/websocket/websocket-1.2.7.ebuild
deleted file mode 100644
index e29d617a82e7..000000000000
--- a/dev-ruby/websocket/websocket-1.2.7.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Universal Ruby library to handle WebSocket protocol"
-HOMEPAGE="https://github.com/imanel/websocket-ruby"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/rspec-its )"
diff --git a/dev-ruby/websocket/websocket-1.2.8.ebuild b/dev-ruby/websocket/websocket-1.2.8.ebuild
deleted file mode 100644
index 75a9fcb1f5b0..000000000000
--- a/dev-ruby/websocket/websocket-1.2.8.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Universal Ruby library to handle WebSocket protocol"
-HOMEPAGE="https://github.com/imanel/websocket-ruby"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/rspec-its )"
diff --git a/dev-ruby/websocket/websocket-1.2.9-r2.ebuild b/dev-ruby/websocket/websocket-1.2.9-r2.ebuild
new file mode 100644
index 000000000000..32f26fb23e92
--- /dev/null
+++ b/dev-ruby/websocket/websocket-1.2.9-r2.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 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Universal Ruby library to handle WebSocket protocol"
+HOMEPAGE="https://github.com/imanel/websocket-ruby"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE=""
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/rspec-its
+ dev-ruby/webrick
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-default-port.patch
+)
diff --git a/dev-ruby/whole_history_rating/Manifest b/dev-ruby/whole_history_rating/Manifest
new file mode 100644
index 000000000000..4da63267e27e
--- /dev/null
+++ b/dev-ruby/whole_history_rating/Manifest
@@ -0,0 +1 @@
+DIST whole_history_rating-0.1.2.gem 9728 BLAKE2B 506354634ab0390b7805e31ee1982309a903000b69a20992cfa53196da8e685b4ea1c89df7ed96ddd4fc5c8a8974d23dc48625d3e93ebbc09121b32e0ab7216e SHA512 4ee9a3340a5bbe1a0250b469c1210663ff226a1884d13729e169d2c04ef57c615bef117a641d6ac3b29b5d72147009149c291e1f7ad8c4c8028ad3e6fb44c56c
diff --git a/dev-ruby/whole_history_rating/metadata.xml b/dev-ruby/whole_history_rating/metadata.xml
new file mode 100644
index 000000000000..cca2e95794e4
--- /dev/null
+++ b/dev-ruby/whole_history_rating/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Ruby project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">goshrine/whole_history_rating</remote-id>
+ </upstream>
+ <longdescription lang="en">This gem provides a library and executables that take as input as set of games and output a set of skill rankings for the players of those games. The algorithm is a version of Remi Coulom's Whole-History Rating modified to support handicaps, and implemented in Ruby.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-ruby/whole_history_rating/whole_history_rating-0.1.2-r2.ebuild b/dev-ruby/whole_history_rating/whole_history_rating-0.1.2-r2.ebuild
new file mode 100644
index 000000000000..ae2429ee2142
--- /dev/null
+++ b/dev-ruby/whole_history_rating/whole_history_rating-0.1.2-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_TASK_TEST="test_units"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A pure ruby implementation of Remi Coulom's Whole-History Rating algorithm"
+HOMEPAGE="https://github.com/goshrine/whole_history_rating"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/matrix"
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/test-unit:2
+ )
+"
diff --git a/dev-ruby/will_paginate/Manifest b/dev-ruby/will_paginate/Manifest
index 25e237c9bf5f..886ada85f58d 100644
--- a/dev-ruby/will_paginate/Manifest
+++ b/dev-ruby/will_paginate/Manifest
@@ -1,3 +1,2 @@
-DIST will_paginate-3.1.6.gem 36864 BLAKE2B c6babf7125c20d7ed646930b7df39db864d0d46fd89d743daab73ba35254650ec0b4c7e203c5d5a2b00439d928b95508c1a82107db142f8cd77d27a14be00e7f SHA512 50e0fed5a3ea6a62f8620db3d30046a7a4cc602d9d7936a265d0c20a50eb267ecebb2c7d3bb07f3a514f70e556dad78085971bb80f94e1f4baf7048d6fd34c11
-DIST will_paginate-3.1.7.gem 36864 BLAKE2B d003952c78f3447a21c332c2dd6e878cd5c24486e7697e0abe6d70db5e0c56858a0d03fa76a4c18dcf10e121b706cd80812d9f438360eb931430244a0e31ee11 SHA512 2741fb24482a6b55322e6ae83fc1d269074be39014e1b0e719025c86d20edf82b6b551cfb1264381b28dec240a0b5b10e9f41e3b081dd5aca94767cd98ce7376
-DIST will_paginate-3.1.8.gem 36864 BLAKE2B e9089ea72fb12f7010d95c1f3233f66e3189dabf41a2c9bc3a624cf43a6423711c8150a423b8c6f85af390b107d945aa659d30df4e71e00cae8e7d973e423479 SHA512 51e5fe45b14451b7fd8014a5fddd3a9c049e2ec52d2f6e0ec25019b0680a32fe157f8ffa48449d07df880d0255b2aff59ba24a82398659ae4520c25aec6d99aa
+DIST will_paginate-3.3.1.gem 34816 BLAKE2B c8506fd9c529764e539ba799b3ef12f47e8d17a8579f2337163ab316cb6d9fe40c3d41c94e9616f55b9f3766989b11e5fb0579f0a69d2ee52c3f5c6104f32b7b SHA512 6b17ba13aeb3733811d6ab10f8c873b9f3687c88a86971f2aa820df7d294b304eaf74c699f34aca2242a0be6033db03d07f67d76fc183b2685ee1be53c9c1c64
+DIST will_paginate-4.0.0.tar.gz 36062 BLAKE2B 9d2c61bc7e223be1b94b67807ef80c0d0094c062b06415dd688af8a5e8f62b9eb1a81c84c9fc15ada328cb9df28d354b98cdbbcaa5056cfa3b48a2c6d0ce1be3 SHA512 b6268ef9ec45a03cd21928578ad7df14c80de905b386978cc2dd50b42ea919c9e139ee820362cdd64ed0258bb3f38b3a1c39f4207828891cb1691d16f7699bc0
diff --git a/dev-ruby/will_paginate/metadata.xml b/dev-ruby/will_paginate/metadata.xml
index c9ac7a14579c..899730a75c64 100644
--- a/dev-ruby/will_paginate/metadata.xml
+++ b/dev-ruby/will_paginate/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/will_paginate/will_paginate-3.1.6.ebuild b/dev-ruby/will_paginate/will_paginate-3.1.6.ebuild
deleted file mode 100644
index 4d75f1b64d29..000000000000
--- a/dev-ruby/will_paginate/will_paginate-3.1.6.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Most awesome pagination solution for Ruby"
-HOMEPAGE="https://github.com/mislav/will_paginate/"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~x86-macos"
-IUSE=""
-
-all_ruby_prepare() {
- # Remove tests for unpackaged ORMs
- rm -f spec/finders/{sequel,mongoid,data_mapper}* || die
-}
-
-ruby_add_bdepend "
- test? (
- dev-ruby/rails
- dev-ruby/mocha
- )"
diff --git a/dev-ruby/will_paginate/will_paginate-3.1.7.ebuild b/dev-ruby/will_paginate/will_paginate-3.1.7.ebuild
deleted file mode 100644
index 474b9d8d398b..000000000000
--- a/dev-ruby/will_paginate/will_paginate-3.1.7.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Most awesome pagination solution for Ruby"
-HOMEPAGE="https://github.com/mislav/will_paginate/"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~x86-macos"
-IUSE=""
-
-all_ruby_prepare() {
- # Remove tests for unpackaged ORMs
- rm -f spec/finders/{sequel,mongoid,data_mapper}* || die
-}
-
-ruby_add_bdepend "
- test? (
- dev-ruby/rails
- dev-ruby/mocha
- )"
diff --git a/dev-ruby/will_paginate/will_paginate-3.1.8.ebuild b/dev-ruby/will_paginate/will_paginate-3.1.8.ebuild
deleted file mode 100644
index 3c47cb11bdea..000000000000
--- a/dev-ruby/will_paginate/will_paginate-3.1.8.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Most awesome pagination solution for Ruby"
-HOMEPAGE="https://github.com/mislav/will_paginate/"
-
-LICENSE="MIT"
-SLOT="3"
-KEYWORDS="~amd64 ~x86-macos"
-IUSE=""
-
-all_ruby_prepare() {
- # Remove tests for unpackaged ORMs
- rm -f spec/finders/{sequel,mongoid,data_mapper}* || die
-}
-
-ruby_add_bdepend "
- test? (
- dev-ruby/rails
- dev-ruby/mocha
- )"
diff --git a/dev-ruby/will_paginate/will_paginate-3.3.1.ebuild b/dev-ruby/will_paginate/will_paginate-3.3.1.ebuild
new file mode 100644
index 000000000000..f417796a4b52
--- /dev/null
+++ b/dev-ruby/will_paginate/will_paginate-3.3.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Most awesome pagination solution for Ruby"
+HOMEPAGE="https://github.com/mislav/will_paginate/"
+
+LICENSE="MIT"
+SLOT="3"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ # Remove tests for unpackaged ORMs
+ rm -f spec/finders/{sequel,mongoid,data_mapper}* || die
+
+ # Use a supported rails version
+ sed -e '1igem "activerecord", "<7"; gem "actionpack", "<7"' -i spec/spec_helper.rb || die
+}
+
+ruby_add_bdepend "
+ test? (
+ <dev-ruby/rails-7
+ dev-ruby/sqlite3
+ dev-ruby/mocha
+ )"
diff --git a/dev-ruby/will_paginate/will_paginate-4.0.0.ebuild b/dev-ruby/will_paginate/will_paginate-4.0.0.ebuild
new file mode 100644
index 000000000000..c9a6d92dedaf
--- /dev/null
+++ b/dev-ruby/will_paginate/will_paginate-4.0.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="will_paginate.gemspec"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Most awesome pagination solution for Ruby"
+HOMEPAGE="https://github.com/mislav/will_paginate/"
+SRC_URI="https://github.com/mislav/will_paginate/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE=""
+
+all_ruby_prepare() {
+ # Remove tests for unpackaged ORMs
+ rm -f spec/finders/{sequel,mongoid,data_mapper}* || die
+}
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/rails
+ dev-ruby/activerecord[sqlite]
+ dev-ruby/mocha
+ )"
diff --git a/dev-ruby/windows_error/Manifest b/dev-ruby/windows_error/Manifest
index fee231d43444..d729e9cd71e6 100644
--- a/dev-ruby/windows_error/Manifest
+++ b/dev-ruby/windows_error/Manifest
@@ -1 +1 @@
-DIST windows_error-0.1.2.gem 227328 BLAKE2B 99cd75d66f3e3322d62daea39a8e217dfeda89141ec3d78c61a29306b78206a40c4bd7867d59a783752da20007b43c45577ec3afe53b7037b850d4983f482e4b SHA512 32e94e561f53f77c5efff5457068e31e66b1d3c73531870b52af00297f69341e390b6d8419a0c0b78ec05f6b65be6456128b9055c143e7b65663520baeac90ad
+DIST windows_error-0.1.5.gem 359936 BLAKE2B 54b713421f60d77f74048108f5da73edd72607554b2dd16bac15b6be260e5c83fdf2c975793dfdb54ef98109f2b6df3ff848292fe1aca2d8cae837912f359768 SHA512 c79d0d7fb1968edac9868e542b4a81d62b4dd549de0e1be3a60ca41cf8b949dbab5f32cf4bfdd6697ce1c48ce8d37ccaa4d91a490d0c3f4a263ebd589cd8b027
diff --git a/dev-ruby/windows_error/metadata.xml b/dev-ruby/windows_error/metadata.xml
index 229ac8603f89..32074a5c0573 100644
--- a/dev-ruby/windows_error/metadata.xml
+++ b/dev-ruby/windows_error/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
<remote-id type="github">rapid7/windows_error</remote-id>
diff --git a/dev-ruby/windows_error/windows_error-0.1.2.ebuild b/dev-ruby/windows_error/windows_error-0.1.2.ebuild
deleted file mode 100644
index 81203fd25450..000000000000
--- a/dev-ruby/windows_error/windows_error-0.1.2.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem versionator
-
-DESCRIPTION="reference for standard Windows API Error Codes"
-HOMEPAGE="https://github.com/rapid7/windows_error"
-
-LICENSE="BSD"
-SLOT="$(get_version_component_range 1-2)"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE=""
-
-all_ruby_prepare() {
- rm -f .rspec || die
-}
diff --git a/dev-ruby/windows_error/windows_error-0.1.5.ebuild b/dev-ruby/windows_error/windows_error-0.1.5.ebuild
new file mode 100644
index 000000000000..fbd5690fac28
--- /dev/null
+++ b/dev-ruby/windows_error/windows_error-0.1.5.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="reference for standard Windows API Error Codes"
+HOMEPAGE="https://github.com/rapid7/windows_error"
+
+LICENSE="BSD"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~x86"
+
+all_ruby_prepare() {
+ rm -f .rspec || die
+}
diff --git a/dev-ruby/wirble/metadata.xml b/dev-ruby/wirble/metadata.xml
index 28ab0c15f206..658c72b1920d 100644
--- a/dev-ruby/wirble/metadata.xml
+++ b/dev-ruby/wirble/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/wirble/wirble-0.1.3-r4.ebuild b/dev-ruby/wirble/wirble-0.1.3-r4.ebuild
deleted file mode 100644
index bc5653037de5..000000000000
--- a/dev-ruby/wirble/wirble-0.1.3-r4.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README ChangeLog"
-
-RUBY_FAKEGEM_TASK_TEST=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Wirble is a set of enhancements for Irb"
-HOMEPAGE="http://pablotron.org/software/wirble/"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="amd64 ppc x86"
-IUSE=""
-
-pkg_postinst() {
- elog "The quick way to use wirble is to make your ~/.irbrc look like this:"
- elog " # load libraries"
- elog " require 'rubygems'"
- elog " require 'wirble'"
- elog " "
- elog " # start wirble (with color)"
- elog " Wirble.init"
- elog " Wirble.colorize"
-}
diff --git a/dev-ruby/wirble/wirble-0.1.3-r5.ebuild b/dev-ruby/wirble/wirble-0.1.3-r5.ebuild
new file mode 100644
index 000000000000..aa23fdd0b4e5
--- /dev/null
+++ b/dev-ruby/wirble/wirble-0.1.3-r5.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="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README ChangeLog"
+
+RUBY_FAKEGEM_TASK_TEST=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Wirble is a set of enhancements for Irb"
+HOMEPAGE="http://pablotron.org/software/wirble/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+pkg_postinst() {
+ elog "The quick way to use wirble is to make your ~/.irbrc look like this:"
+ elog " # load libraries"
+ elog " require 'rubygems'"
+ elog " require 'wirble'"
+ elog " "
+ elog " # start wirble (with color)"
+ elog " Wirble.init"
+ elog " Wirble.colorize"
+}
diff --git a/dev-ruby/wisper/Manifest b/dev-ruby/wisper/Manifest
index 23734d1e5f05..d57506e67604 100644
--- a/dev-ruby/wisper/Manifest
+++ b/dev-ruby/wisper/Manifest
@@ -1 +1 @@
-DIST wisper-2.0.0.gem 21504 BLAKE2B 6a15adcc4424810ebaeab3bc77a1508df52fb96817edb4e04a620196eeef0e4ff773dcb384e11be93effc13773a642db96f83d93651bac97f137d70985514123 SHA512 0c932f799ea1bb4c9d11ebee72a36d5b2c6c3547ab50d44dcab3e666b00b6e2068bec76d3417d2e7f62cb33c7450aafabcfd2b823b4080946a2fc1731240b521
+DIST wisper-2.0.1.gem 26112 BLAKE2B 3dc78cecb80e052ec8bc308d02e5093ca55fc7d26a1dd98614907707d62d15e0cea1a20c7843ca7e6ee175800d320c3ef5854396505aaf0648161153b0e61368 SHA512 3518c218c0cb4ceb5d96260f7ac8845fb2f35d4a77c478cb56f1251fc29910a655ce070ebf3c17eaffd7d144ac54b436420bd2b2c4f72a8743f68dfdd72a514c
diff --git a/dev-ruby/wisper/metadata.xml b/dev-ruby/wisper/metadata.xml
index bf9897b17676..e6a8022e20fd 100644
--- a/dev-ruby/wisper/metadata.xml
+++ b/dev-ruby/wisper/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/wisper/wisper-2.0.0.ebuild b/dev-ruby/wisper/wisper-2.0.0.ebuild
deleted file mode 100644
index d61903efec6e..000000000000
--- a/dev-ruby/wisper/wisper-2.0.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="A micro library providing objects with Publish-Subscribe capabilities"
-HOMEPAGE="https://github.com/krisleech/wisper"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- sed -i -e '/coverall/I s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/wisper/wisper-2.0.1-r1.ebuild b/dev-ruby/wisper/wisper-2.0.1-r1.ebuild
new file mode 100644
index 000000000000..b661a7733100
--- /dev/null
+++ b/dev-ruby/wisper/wisper-2.0.1-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="A micro library providing objects with Publish-Subscribe capabilities"
+HOMEPAGE="https://github.com/krisleech/wisper"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/coverall/I s:^:#:' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/x25519/Manifest b/dev-ruby/x25519/Manifest
new file mode 100644
index 000000000000..784a9ec5e447
--- /dev/null
+++ b/dev-ruby/x25519/Manifest
@@ -0,0 +1 @@
+DIST x25519-1.0.10.tar.gz 44353 BLAKE2B 5ad7a7b68af8bdc5e64692b9b650504df3d152c63c6044cea6978e42cef856dfbd3c0bc9261b014eab80a3bfcfaaf6c7a85675806aa9529e6978228ce2956497 SHA512 10a2baeff5be2eca31ae96893f08877ae351f6c7d30d0cc5d2a9b63ada74733ab30ed7dd709b26802d3f1a130aa513747a32c370d031fc95b136e3a699eb2987
diff --git a/dev-ruby/x25519/metadata.xml b/dev-ruby/x25519/metadata.xml
new file mode 100644
index 000000000000..dc01f2fda85b
--- /dev/null
+++ b/dev-ruby/x25519/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">crypto-rb/x25519</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/x25519/x25519-1.0.10.ebuild b/dev-ruby/x25519/x25519-1.0.10.ebuild
new file mode 100644
index 000000000000..f7d61e4b04f4
--- /dev/null
+++ b/dev-ruby/x25519/x25519-1.0.10.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_GEMSPEC="x25519.gemspec"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/x25519_ref10/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="Key exchange via the X25519 (Curve25519) Elliptic Curve Diffie-Hellman function"
+HOMEPAGE="https://github.com/crypto-rb/x25519"
+SRC_URI="https://github.com/crypto-rb/x25519/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="$(ver_cut 1)"
+KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#: ; /coverall/I s:^:#:' spec/spec_helper.rb || die
+
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # The precomputed implementation only works on amd64
+ if use amd64 ; then
+ RUBY_FAKEGEM_EXTENSIONS+=(ext/x25519_precomputed/extconf.rb)
+ else
+ sed -i -e '/\(x25519_precomputed\|X25519::Provider::Precomputed\)/ s:^:#:' lib/x25519.rb || die
+ rm -f spec/x25519/provider/precomputed_spec.rb || die
+ fi
+}
diff --git a/dev-ruby/xdr/Manifest b/dev-ruby/xdr/Manifest
index 4025278b8ef4..49010f4d77ed 100644
--- a/dev-ruby/xdr/Manifest
+++ b/dev-ruby/xdr/Manifest
@@ -1,2 +1 @@
-DIST xdr-2.0.0.gem 24064 BLAKE2B 183414b9ef719784729a415adbf85889abe30dfbbc1a7b988a01a841caba6c02c04563b01b5e101a0284729671d1957bfdd78d13781d619a1281f14476cdfa81 SHA512 9ba84364c7a4c52ce415361803491d514f9d83f59b7197301d0c4fa94dc715365a89f3a784a90ec077b54de6b6dd64467386c575b42de375a3a9af6a84a5d650
-DIST xdr-3.0.0.gem 24576 BLAKE2B a9366e5a8261dadfc71658e4a8e18b98f418d4993b6a25c3ba5fabc22557e1ba19954f4451d7d95598e9d1d5c597d484f763e6b1a4689740e782ec06ed0041f5 SHA512 8176378330d9060cf8abe0f9ee18f69682674c407934dcc01b76d561acc10a94b573db3b04a17b9940d6a5d1682181ad15147c3e3acce692a3ccb9e275ec0062
+DIST xdr-3.0.3.tar.gz 26738 BLAKE2B b12016d6a6b2d20448f09a2cb768a38aaf6411ad3002712ec7b9fbb51058528912b401cbfc9f10f3cfacd57c787deb440a14df30c377aae8935a02fedfc78118 SHA512 e02e4b1580c3c9633924c7e505b8a666aa0a5883ea258e4965231e6f1e0adc379903a9f83da13bfd48dd67ce45b6eb2c02f2df045a53857801c117fde70bc776
diff --git a/dev-ruby/xdr/metadata.xml b/dev-ruby/xdr/metadata.xml
index 72d25f8de2e3..eb6dd2559c31 100644
--- a/dev-ruby/xdr/metadata.xml
+++ b/dev-ruby/xdr/metadata.xml
@@ -1,15 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>zerochaos@gentoo.org</email>
- <name>Rick Farina</name>
- </maintainer>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">stellar/ruby-xdr</remote-id>
+ <remote-id type="github">astroband/ruby-xdr</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/xdr/xdr-2.0.0.ebuild b/dev-ruby/xdr/xdr-2.0.0.ebuild
deleted file mode 100644
index 3a851ac8ed35..000000000000
--- a/dev-ruby/xdr/xdr-2.0.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Read/write XDR encoded data structures"
-HOMEPAGE="https://github.com/stellar/ruby-xdr"
-
-LICENSE="Apache-2.0"
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/activemodel-4.2.7:*
- >=dev-ruby/activesupport-4.2.7:*"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/,/pry/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/xdr/xdr-3.0.0.ebuild b/dev-ruby/xdr/xdr-3.0.0.ebuild
deleted file mode 100644
index 3f0664d26d18..000000000000
--- a/dev-ruby/xdr/xdr-3.0.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Read/write XDR encoded data structures"
-HOMEPAGE="https://github.com/stellar/ruby-xdr"
-
-LICENSE="Apache-2.0"
-SLOT="${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="test"
-
-ruby_add_rdepend ">=dev-ruby/activemodel-5.2.0:*
- >=dev-ruby/activesupport-5.2.0:*"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/,/pry/ s:^:#:' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/xdr/xdr-3.0.3.ebuild b/dev-ruby/xdr/xdr-3.0.3.ebuild
new file mode 100644
index 000000000000..013ae090cc56
--- /dev/null
+++ b/dev-ruby/xdr/xdr-3.0.3.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRADOC="README.md CHANGELOG.md"
+RUBY_FAKEGEM_GEMSPEC="xdr.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Read/write XDR encoded data structures"
+HOMEPAGE="https://github.com/astroband/ruby-xdr"
+SRC_URI="https://github.com/astroband/ruby-xdr/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+RUBY_S="ruby-${P}"
+
+LICENSE="Apache-2.0"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/activemodel-5.2.0:*
+ >=dev-ruby/activesupport-5.2.0:*"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/,/pry/ s:^:#:' -e '/simplecov/,/^end/ s:^:#:' spec/spec_helper.rb || die
+
+ sed -i -e 's:_relative ": "./:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/xml-simple/Manifest b/dev-ruby/xml-simple/Manifest
index ee8078d5dcf6..e6ffdd811e50 100644
--- a/dev-ruby/xml-simple/Manifest
+++ b/dev-ruby/xml-simple/Manifest
@@ -1 +1 @@
-DIST xml-simple-1.1.5.tar.gz 126288 BLAKE2B 0fb7f8cebee23e422d2941de790426e494bce51af90cda8a3b7f3b27129f6272aa277a80fce004aca2658d5ae5f62b7aa9f251b53839d14e6d5b7f5a33b819af SHA512 df81a05a0c32141cb5a0328fb782292438ec3ad6037c150e2ff4fee07b65ba9a739987f25f28c196ff8565af53c62120c3a729820a94dd3da0551fe43948f9a3
+DIST xml-simple-1.1.9.tar.gz 119573 BLAKE2B fd23d75f45265093f7d7a6a1a96a5872bc12d918f775a88339f82bd3a5f710c3db23390769b3d88832b145aee04863734061b27210f129dc23b62ce8c6b02824 SHA512 3bc53558adb65b0d9c4c1e7f2980b5d3cd2fa7f2b0ec1969c1631bd95960be504eacc459830ce83f08d11c080250346e6059c8c463faf372c1e61bbc1fc86804
diff --git a/dev-ruby/xml-simple/metadata.xml b/dev-ruby/xml-simple/metadata.xml
index 931db2a32b71..d9f4612f7d72 100644
--- a/dev-ruby/xml-simple/metadata.xml
+++ b/dev-ruby/xml-simple/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/xml-simple/xml-simple-1.1.5.ebuild b/dev-ruby/xml-simple/xml-simple-1.1.5.ebuild
deleted file mode 100644
index 60487aa304f0..000000000000
--- a/dev-ruby/xml-simple/xml-simple-1.1.5.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-# Gem only contains lib code, and github repository has no tags.
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-
-inherit ruby-fakegem
-
-SRC_URI="https://github.com/maik/xml-simple/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-DESCRIPTION="Easy API to maintain XML. A Ruby port of Grant McLean's Perl module XML::Simple"
-HOMEPAGE="https://github.com/maik/xml-simple"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="amd64 ~ppc ~x86"
-IUSE=""
-
-each_ruby_test() {
- cd test || die
- for i in *.rb; do
- ${RUBY} -I../lib ${i} || die
- done
-}
diff --git a/dev-ruby/xml-simple/xml-simple-1.1.9.ebuild b/dev-ruby/xml-simple/xml-simple-1.1.9.ebuild
new file mode 100644
index 000000000000..4a7728708066
--- /dev/null
+++ b/dev-ruby/xml-simple/xml-simple-1.1.9.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+COMMIT=7b8bdf7b33ab872bb4d1fb8eeecba5c5e1a4a421
+
+RUBY_FAKEGEM_GEMSPEC="xml-simple.gemspec"
+
+inherit ruby-fakegem
+
+SRC_URI="https://github.com/maik/xml-simple/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+DESCRIPTION="Easy API to maintain XML. A Ruby port of Grant McLean's Perl module XML::Simple"
+HOMEPAGE="https://github.com/maik/xml-simple"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~ppc x86"
+IUSE=""
+
+RUBY_S="${PN}-${COMMIT}"
+
+ruby_add_rdepend "dev-ruby/rexml"
+
+each_ruby_test() {
+ cd test || die
+ for i in *.rb; do
+ ${RUBY} -I../lib ${i} || die
+ done
+}
diff --git a/dev-ruby/xmlrpc/Manifest b/dev-ruby/xmlrpc/Manifest
index ef959955e0d4..e3c2599a177f 100644
--- a/dev-ruby/xmlrpc/Manifest
+++ b/dev-ruby/xmlrpc/Manifest
@@ -1 +1,2 @@
-DIST xmlrpc-0.3.0.tar.gz 34157 BLAKE2B 862bff09fdd7febfd85ef4fde77a913b77f20024692b1475994b93b394d587f1b2139c82ed7159cc756bd1757ee2fee55f103866c52d4297d8a38be70c066c22 SHA512 370b2fe2ed9ca37fbbc2e85d08328450671019a2dc0c2a31ecf8fc8af95105ccf1b8f728307a5d9cf5f4dbcd93ccfb2f66244b441c0aea1cd1aaca2e820dfe31
+DIST xmlrpc-0.3.2.tar.gz 34780 BLAKE2B 9aeabd5c2549bd36a28bb56162471e5f822f873e3f976fa101a8fe26af9b0ab72bcceaf7b9bfac5488f315f79708db18bc7c507360aa567d95f136fe807084b5 SHA512 9d594971211d556f19db86e2bd5f948610342dbcee031e58cc83bc28c44bb02c54a8c00c44eb15bd96daafe02859a894193d5e507973a0a1df36251138d4999c
+DIST xmlrpc-0.3.3.tar.gz 35499 BLAKE2B 4a7ce19c9e3c656cd68cfdb3801ad2997f6de7ff2415be583c4a976f191f1775597467b1eb101ddfe9ec7a67a738ec81ada60fa4082849b8bdf16c9b8a82d9f7 SHA512 4f9872d820ba87f04b6f7ccfd0646397d19361d27f6c3103963b274eb71668f038596a66e99e2379d2bb0f636d5f6b7f34adc57289e537efa702a116b45c7644
diff --git a/dev-ruby/xmlrpc/metadata.xml b/dev-ruby/xmlrpc/metadata.xml
index 3256ec25dd0c..f231a137b6bf 100644
--- a/dev-ruby/xmlrpc/metadata.xml
+++ b/dev-ruby/xmlrpc/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/xmlrpc/xmlrpc-0.3.0.ebuild b/dev-ruby/xmlrpc/xmlrpc-0.3.0.ebuild
deleted file mode 100644
index 9ecbdd985be0..000000000000
--- a/dev-ruby/xmlrpc/xmlrpc-0.3.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_BINWRAP=""
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="XMLRPC is a lightweight protocol that enables remote procedure calls over HTTP"
-HOMEPAGE="https://github.com/ruby/xmlrpc"
-SRC_URI="https://github.com/ruby/xmlrpc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Ruby"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-
-ruby_add_bdepend "test? ( dev-ruby/test-unit )"
-
-all_ruby_prepare() {
- sed -i -e '/bundler/ s:^:#:' Rakefile || die
-
- # Avoid dependency on git
- sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
diff --git a/dev-ruby/xmlrpc/xmlrpc-0.3.2-r1.ebuild b/dev-ruby/xmlrpc/xmlrpc-0.3.2-r1.ebuild
new file mode 100644
index 000000000000..7087e62d2039
--- /dev/null
+++ b/dev-ruby/xmlrpc/xmlrpc-0.3.2-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="XMLRPC is a lightweight protocol that enables remote procedure calls over HTTP"
+HOMEPAGE="https://github.com/ruby/xmlrpc"
+SRC_URI="https://github.com/ruby/xmlrpc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Ruby-BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/webrick"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+
+ # Avoid dependency on git
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/xmlrpc/xmlrpc-0.3.3.ebuild b/dev-ruby/xmlrpc/xmlrpc-0.3.3.ebuild
new file mode 100644
index 000000000000..0618bb3639e1
--- /dev/null
+++ b/dev-ruby/xmlrpc/xmlrpc-0.3.3.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="XMLRPC is a lightweight protocol that enables remote procedure calls over HTTP"
+HOMEPAGE="https://github.com/ruby/xmlrpc"
+SRC_URI="https://github.com/ruby/xmlrpc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Ruby-BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+ruby_add_rdepend "dev-ruby/webrick"
+
+ruby_add_bdepend "test? ( dev-ruby/test-unit )"
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+
+ # Avoid dependency on git
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/xpath/Manifest b/dev-ruby/xpath/Manifest
index c2021678d2c9..e48669f94fb7 100644
--- a/dev-ruby/xpath/Manifest
+++ b/dev-ruby/xpath/Manifest
@@ -1,2 +1 @@
-DIST xpath-2.1.0.gem 16896 BLAKE2B b8dc2b0e207c666446ba5948f6e37c71f410d8a5a027dddd17d5ccb2fa8b0c32f274a34cc144a2380b22266248acad288828114a755d4f04c2a1caeec6ee55e3 SHA512 50d80cac3fd65cbd211d3a87b8844a6607b14c841a1a5609e2370c3624daf719b937a61e526bf31aedee13346802d6bbb721d58bda2bef9c564c187b28bb90e2
DIST xpath-3.2.0.gem 14336 BLAKE2B a7e1927fe8831669171e4ffa4677d33fb2276820742596d20f7cadc47f0a523b1b438d7568c195119259c8e2f9f49e3bdf1bc224001f7e215a4a02af1e84e142 SHA512 2059938387f4d1656867457a480182bd73e02f265071a394472122aea0b5b4fb0af985ec5be513d2425cf1c341bf18c3cfb67616ba02e30ce6331879964dedc3
diff --git a/dev-ruby/xpath/metadata.xml b/dev-ruby/xpath/metadata.xml
index cff3d3a3b4b1..b3826aa3c301 100644
--- a/dev-ruby/xpath/metadata.xml
+++ b/dev-ruby/xpath/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
<name>Gentoo Ruby Project</name>
</maintainer>
<upstream>
- <remote-id type="github">jnicklas/xpath</remote-id>
+ <remote-id type="github">teamcapybara/xpath</remote-id>
+ <remote-id type="rubygems">xpath</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-ruby/xpath/xpath-2.1.0.ebuild b/dev-ruby/xpath/xpath-2.1.0.ebuild
deleted file mode 100644
index 9b9e37ac162e..000000000000
--- a/dev-ruby/xpath/xpath-2.1.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_RECIPE_TEST="rspec"
-
-inherit ruby-fakegem
-
-DESCRIPTION="XPath is a Ruby DSL around a subset of XPath 1.0"
-HOMEPAGE="https://github.com/jnicklas/xpath"
-LICENSE="MIT"
-
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~x86"
-SLOT="2"
-IUSE=""
-
-ruby_add_bdepend "test? ( dev-ruby/nokogiri )"
-
-all_ruby_prepare() {
- sed -i -e '/\(bundler\|pry\)/d' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/xpath/xpath-3.2.0-r1.ebuild b/dev-ruby/xpath/xpath-3.2.0-r1.ebuild
new file mode 100644
index 000000000000..b7a71070fc44
--- /dev/null
+++ b/dev-ruby/xpath/xpath-3.2.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="XPath is a Ruby DSL around a subset of XPath 1.0"
+HOMEPAGE="https://github.com/teamcapybara/xpath"
+LICENSE="MIT"
+
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+SLOT="3"
+IUSE=""
+
+ruby_add_rdepend ">=dev-ruby/nokogiri-1.8:0"
+
+all_ruby_prepare() {
+ sed -i -e '/\(bundler\|pry\)/d' spec/spec_helper.rb || die
+}
diff --git a/dev-ruby/xpath/xpath-3.2.0.ebuild b/dev-ruby/xpath/xpath-3.2.0.ebuild
deleted file mode 100644
index e2840a4fb89a..000000000000
--- a/dev-ruby/xpath/xpath-3.2.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-
-RUBY_FAKEGEM_TASK_DOC=""
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-inherit ruby-fakegem
-
-DESCRIPTION="XPath is a Ruby DSL around a subset of XPath 1.0"
-HOMEPAGE="https://github.com/jnicklas/xpath"
-LICENSE="MIT"
-
-KEYWORDS="amd64 ~arm ~arm64 ~hppa ~x86"
-SLOT="3"
-IUSE=""
-
-ruby_add_rdepend ">=dev-ruby/nokogiri-1.8:0"
-
-all_ruby_prepare() {
- sed -i -e '/\(bundler\|pry\)/d' spec/spec_helper.rb || die
-}
diff --git a/dev-ruby/yajl-ruby/Manifest b/dev-ruby/yajl-ruby/Manifest
index 5966c4c7424c..e1a442dc3ec2 100644
--- a/dev-ruby/yajl-ruby/Manifest
+++ b/dev-ruby/yajl-ruby/Manifest
@@ -1,3 +1 @@
-DIST yajl-ruby-1.3.1.gem 550912 BLAKE2B 809608b5c767c560cf40a0a8d4160f17092762788af9c66e729762ade50fbb0cccd266f1bbd411076ef4b2dc7a4cdfcdeeb552b6d86a58a0d9a38ebf1bad638c SHA512 f18b47f1fd0b039bfec01db0ee298296199fbf91b22a00042e1220a1d8471f72424c082b696829e48ce7dee7514510dd731c2bc36fe29bd08ba7246c820621f4
-DIST yajl-ruby-1.4.0.gem 556544 BLAKE2B 8eea447ef98cdd9b48fe6c91f2a385740339e78e6395b2f63add8757fe437dfd4ae721b604ca5b381c59e36412e1807c930730bcc1a7c7f921c50ccd7f03857b SHA512 63407542a58231305d1cf326de09e8fdb0f4f5bbf28d3b83a3d8f4099db2a425b7a310fc23c62a37681cb24b50d2ce9d10a6641e07be16b52783ea7401ec7ca5
-DIST yajl-ruby-1.4.1.gem 557056 BLAKE2B ade1c18bff1d95a733a1981f7898f1ebaecaed6e9a0354af2a6b4d0190a37e613830f77d5e57178b622c32e2d8688aaa11a7edd543c17a30a16f9045d21ea4aa SHA512 24cd82380658d784bbf0a7a16d4048125cc5a856b0e0b4d3bdec29a550a9131d3959f9a75eba0d18d5db8d0a23158fb7ef6ea6f60d221a7bc3d8efc437d52df5
+DIST yajl-ruby-1.4.3.gem 558592 BLAKE2B f4ea86014ed7570530e77ba4a2c67bf39c998b816f6100a526406b62ee8c30bb3b7be61853432cd1f6febdc19b20596915a242b2f47645da734b21f2a2c879c3 SHA512 8cfde677f11ad80a468dce7876b97aa87fa35d78fcd727d4542e00c09cc28d1cca3301cf7c4e1f773edf2192262ec8d6ffab93b11d488d2b048d8013f6c7645a
diff --git a/dev-ruby/yajl-ruby/metadata.xml b/dev-ruby/yajl-ruby/metadata.xml
index 64e99138bedc..c573e679590f 100644
--- a/dev-ruby/yajl-ruby/metadata.xml
+++ b/dev-ruby/yajl-ruby/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/yajl-ruby/yajl-ruby-1.3.1.ebuild b/dev-ruby/yajl-ruby/yajl-ruby-1.3.1.ebuild
deleted file mode 100644
index b91568acef13..000000000000
--- a/dev-ruby/yajl-ruby/yajl-ruby-1.3.1.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby C bindings to the Yajl JSON stream-based parser library"
-HOMEPAGE="https://github.com/brianmario/yajl-ruby"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND="${RDEPEND} dev-libs/yajl"
-DEPEND="${DEPEND} dev-libs/yajl"
-
-each_ruby_prepare() {
- # Make sure the right ruby interpreter is used
- sed -e '/capture/ s:ruby:'${RUBY}':' -i spec/parsing/large_number_spec.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/yajl extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake -Cext/yajl CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}" V=1
- cp ext/yajl/yajl$(get_modname) lib/yajl/ || die
-}
-
-each_ruby_test() {
- # Set RUBYLIB to pass search path on to additional interpreters that
- # are started.
- RUBYLIB=lib RSPEC_VERSION=3 ruby-ng_rspec || die
-}
diff --git a/dev-ruby/yajl-ruby/yajl-ruby-1.4.0.ebuild b/dev-ruby/yajl-ruby/yajl-ruby-1.4.0.ebuild
deleted file mode 100644
index d9cb6a9d9beb..000000000000
--- a/dev-ruby/yajl-ruby/yajl-ruby-1.4.0.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby C bindings to the Yajl JSON stream-based parser library"
-HOMEPAGE="https://github.com/brianmario/yajl-ruby"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND="${RDEPEND} dev-libs/yajl"
-DEPEND="${DEPEND} dev-libs/yajl"
-
-each_ruby_prepare() {
- # Make sure the right ruby interpreter is used
- sed -e '/capture/ s:ruby:'${RUBY}':' -i spec/parsing/large_number_spec.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/yajl extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake -Cext/yajl CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}" V=1
- cp ext/yajl/yajl$(get_modname) lib/yajl/ || die
-}
-
-each_ruby_test() {
- # Set RUBYLIB to pass search path on to additional interpreters that
- # are started.
- RUBYLIB=lib RSPEC_VERSION=3 ruby-ng_rspec || die
-}
diff --git a/dev-ruby/yajl-ruby/yajl-ruby-1.4.1.ebuild b/dev-ruby/yajl-ruby/yajl-ruby-1.4.1.ebuild
deleted file mode 100644
index 984b8f365735..000000000000
--- a/dev-ruby/yajl-ruby/yajl-ruby-1.4.1.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-
-RUBY_FAKEGEM_TASK_DOC=""
-
-inherit multilib ruby-fakegem
-
-DESCRIPTION="Ruby C bindings to the Yajl JSON stream-based parser library"
-HOMEPAGE="https://github.com/brianmario/yajl-ruby"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND="${RDEPEND} dev-libs/yajl"
-DEPEND="${DEPEND} dev-libs/yajl"
-
-each_ruby_prepare() {
- # Make sure the right ruby interpreter is used
- sed -e '/capture/ s:ruby:'${RUBY}':' -i spec/parsing/large_number_spec.rb || die
-}
-
-each_ruby_configure() {
- ${RUBY} -Cext/yajl extconf.rb || die "extconf.rb failed"
-}
-
-each_ruby_compile() {
- emake -Cext/yajl CFLAGS="${CFLAGS} -fPIC" archflag="${LDFLAGS}" V=1
- cp ext/yajl/yajl$(get_modname) lib/yajl/ || die
-}
-
-each_ruby_test() {
- # Set RUBYLIB to pass search path on to additional interpreters that
- # are started.
- RUBYLIB=lib RSPEC_VERSION=3 ruby-ng_rspec || die
-}
diff --git a/dev-ruby/yajl-ruby/yajl-ruby-1.4.3.ebuild b/dev-ruby/yajl-ruby/yajl-ruby-1.4.3.ebuild
new file mode 100644
index 000000000000..7ce51ee69fec
--- /dev/null
+++ b/dev-ruby/yajl-ruby/yajl-ruby-1.4.3.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/yajl/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR="lib/yajl"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Ruby C bindings to the Yajl JSON stream-based parser library"
+HOMEPAGE="https://github.com/brianmario/yajl-ruby"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+RDEPEND="${RDEPEND} dev-libs/yajl"
+DEPEND="${DEPEND} dev-libs/yajl"
+
+each_ruby_prepare() {
+ # Make sure the right ruby interpreter is used
+ sed -e '/capture/ s:ruby:'${RUBY}':' -i spec/parsing/large_number_spec.rb || die
+}
+
+each_ruby_test() {
+ # Set RUBYLIB to pass search path on to additional interpreters that
+ # are started.
+ RUBYLIB=lib RSPEC_VERSION=3 ruby-ng_rspec || die
+}
diff --git a/dev-ruby/yard/Manifest b/dev-ruby/yard/Manifest
index 5354ca18f436..89b44fe7cfb7 100644
--- a/dev-ruby/yard/Manifest
+++ b/dev-ruby/yard/Manifest
@@ -1 +1,4 @@
-DIST yard-0.9.20-git.tgz 921130 BLAKE2B 37b1b2524147a1a8cb36c3835cce4e7666e2c8d3d5c187eb402000fb251df64111c4f104957ac9d28bd0e8d9328eb1d97571337ae54479626dcaab3cf07625a6 SHA512 b7e035a3598c8ef32fcbaae57254c0fb0cba875606b434571da2ef754f3171b5c42a4b3a45bd4bf41bce368f6fb7e448567f601a9cab5fbdae695bbec1b73608
+DIST yard-0.9.34-bom-encoding.patch 1045 BLAKE2B be4ac8c52c27b916f83d87334c64427e19a831b4b81dc926db4963c651df5106b7d63a8ecd3cdf9889d023bb8f43134c00a1db0c3f10578997e6abf94d3c08fa SHA512 6af3f7c80a0044c1b14b61bff6c0e539a8512956cea8ceb9dbe84d38e1072f49c7119d95f4313af5a054f6462eb330b66dec55c199db92c1b16fcb89c6ebc482
+DIST yard-0.9.34-git.tgz 938057 BLAKE2B 0e5b96b29efc6b7ab6c52dc34a15d4df9b614eb56698eb76fc7d2dc1f1fcfa5f8883034697f5a3fbd76ff588a9ebf2c7ee164936809bfe4640663c996e9f648a SHA512 fb87e3706d2c1408a172e17cdb588aacb2c67b9e7ac8c9b2d2a4d2e8a67a0c571d05938f8a4a88357834f6dac13a38cf1faa086680d58380a65cc2fca93aad8f
+DIST yard-0.9.34-yield-ruby33.patch 920 BLAKE2B a0492919b8038c21c109732aa12afa4d494ceacf6ff5e2c8fbae56bc279b5e9c6a951f77144d069183d7dc9ad818066aab5c4d82c4dc39c31a48272dad6a0d0b SHA512 86bd7d2b8ccfccc73a46365b0814c0d741bde8508317856d80ae6a2cccff1a338ad9754afd21f8f64d2587195f8cc3f38b6eba78e8de1d729ac3b2141bdb124a
+DIST yard-0.9.36-git.tgz 938567 BLAKE2B 8672b94149b4bbecd3fb80c1d386e3cdfd4013ad88969958269abd480426e41990067df0e5352df1a983a1572129b91a31129a71eae872cc00712e6e992a07c5 SHA512 09639d7ac6fed28906b40e08c16e305f44416206f67947fbdedf4adbb0be92d1e15ade9a04509f2847063b39baaa7a5bcbd585031808baaaf5acf14f06b471d5
diff --git a/dev-ruby/yard/files/yard-0.9.34-beginless-range.patch b/dev-ruby/yard/files/yard-0.9.34-beginless-range.patch
new file mode 100644
index 000000000000..4284ad83acb9
--- /dev/null
+++ b/dev-ruby/yard/files/yard-0.9.34-beginless-range.patch
@@ -0,0 +1,38 @@
+From 8481180b935922f76a36e29e83914ee6fad782cd Mon Sep 17 00:00:00 2001
+From: Brad Feehan <git@bradfeehan.com>
+Date: Tue, 21 Jun 2022 17:05:20 +1000
+Subject: [PATCH] Fix "cannot get the first element of beginless range" error
+
+This implements the fix suggested by @akimd:
+
+See https://github.com/lsegal/yard/issues/1434#issuecomment-1087817139
+
+Fixes lsegal/yard#1434.
+---
+ lib/yard/parser/ruby/ast_node.rb | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/lib/yard/parser/ruby/ast_node.rb b/lib/yard/parser/ruby/ast_node.rb
+index c9deb3ed1..d10bdfa3a 100644
+--- a/lib/yard/parser/ruby/ast_node.rb
++++ b/lib/yard/parser/ruby/ast_node.rb
+@@ -271,7 +271,7 @@ def has_line?
+
+ # @return [Fixnum] the starting line number of the node
+ def line
+- line_range && line_range.first
++ line_range && line_range.begin || 1
+ end
+
+ # @return [String] the first line of source represented by the node.
+@@ -345,8 +345,8 @@ def reset_line_info
+ elsif !children.empty?
+ f = children.first
+ l = children.last
+- self.line_range = Range.new(f.line_range.first, l.line_range.last)
+- self.source_range = Range.new(f.source_range.first, l.source_range.last)
++ self.line_range = Range.new(f.line_range.begin || 1, l.line_range.last)
++ self.source_range = Range.new(f.source_range.begin || 1, l.source_range.last)
+ elsif @fallback_line || @fallback_source
+ self.line_range = @fallback_line
+ self.source_range = @fallback_source
diff --git a/dev-ruby/yard/metadata.xml b/dev-ruby/yard/metadata.xml
index 55feb7157006..3c1750796a2b 100644
--- a/dev-ruby/yard/metadata.xml
+++ b/dev-ruby/yard/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/yard/yard-0.9.20.ebuild b/dev-ruby/yard/yard-0.9.20.ebuild
deleted file mode 100644
index 5c5880dae066..000000000000
--- a/dev-ruby/yard/yard-0.9.20.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_TEST="rspec3"
-RUBY_FAKEGEM_TASK_DOC="yard"
-
-RUBY_FAKEGEM_EXTRADOC="README.md"
-RUBY_FAKEGEM_DOCDIR="doc docs"
-
-RUBY_FAKEGEM_EXTRAINSTALL="templates"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Documentation generation tool for the Ruby programming language"
-HOMEPAGE="https://yardoc.org/"
-
-# The gem lakes the gemspec file needed to pass tests.
-SRC_URI="https://github.com/lsegal/yard/archive/v${PV}.tar.gz -> ${P}-git.tgz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-ruby_add_bdepend "doc? ( || ( dev-ruby/maruku dev-ruby/rdiscount dev-ruby/bluecloth dev-ruby/kramdown ) )"
-
-ruby_add_bdepend "test? ( >=dev-ruby/ruby-gettext-2.3.8 dev-ruby/rack )"
-
-all_ruby_prepare() {
- sed -i -e '/[Bb]undler/ s:^:#:' spec/spec_helper.rb || die
-
- sed -i -e '/samus/I s:^:#:' Rakefile || die
-
- # Avoid specs that make assumptions on load ordering that are not
- # true for us. This may be related to how we install in Gentoo. This
- # also drops a test requirement on dev-ruby/rack.
- rm -f spec/cli/server_spec.rb || die
-
- # Avoid specs that only work with bundler
- sed -i -e '/#initialize/,/^ end/ s:^:#:' spec/cli/yri_spec.rb || die
-
- # Avoid redcarpet-specific spec that is not optional
- sed -i -e '/autolinks URLs/askip "make redcarpet optional"' spec/templates/helpers/html_helper_spec.rb || die
-
- # Avoid asciidoc-specific spec that is not optional
- sed -i -e '/\(AsciiDoc specific\|AsciiDoc header\)/askip "skipping asciidoc test"' spec/templates/helpers/html_helper_spec.rb || die
-}
diff --git a/dev-ruby/yard/yard-0.9.34-r2.ebuild b/dev-ruby/yard/yard-0.9.34-r2.ebuild
new file mode 100644
index 000000000000..5edc4dfc2ad4
--- /dev/null
+++ b/dev-ruby/yard/yard-0.9.34-r2.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_TASK_DOC="yard"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_DOCDIR="doc docs"
+
+RUBY_FAKEGEM_EXTRAINSTALL="templates .yardopts"
+
+RUBY_FAKEGEM_GEMSPEC="yard.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Documentation generation tool for the Ruby programming language"
+HOMEPAGE="https://yardoc.org/"
+
+# The gem lacks the gemspec file needed to pass tests.
+SRC_URI="https://github.com/lsegal/yard/archive/v${PV}.tar.gz -> ${P}-git.tgz
+ https://github.com/lsegal/yard/commit/fe4f32e06fcbadbf80540807a4033448b826dfe8.patch -> ${P}-bom-encoding.patch
+ https://github.com/lsegal/yard/commit/d840ee127dfd79abd208a155f01d66293ae290ca.patch -> ${P}-yield-ruby33.patch"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+PATCHES=(
+ "${FILESDIR}/${P}-beginless-range.patch"
+ "${DISTDIR}/${P}-bom-encoding.patch"
+ "${DISTDIR}/${P}-yield-ruby33.patch"
+)
+
+ruby_add_bdepend "doc? ( || ( dev-ruby/maruku dev-ruby/rdiscount dev-ruby/kramdown ) )"
+
+ruby_add_bdepend "test? ( dev-ruby/rack:2.2 >=dev-ruby/rspec-3.11.0 dev-ruby/webrick )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/ s:^:#:' -e '3igem "rack", "~> 2.2.0"' spec/spec_helper.rb || die
+
+ sed -i -e '/samus/I s:^:#:' Rakefile || die
+
+ sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid specs that make assumptions on load ordering that are not
+ # true for us. This may be related to how we install in Gentoo. This
+ # also drops a test requirement on dev-ruby/rack.
+ rm -f spec/cli/server_spec.rb || die
+
+ # Avoid specs that only work with bundler
+ sed -i -e '/#initialize/,/^ end/ s:^:#:' spec/cli/yri_spec.rb || die
+ sed -e '/overwrites options with data in/askip "wrong assumptions on file access"' \
+ -e '/loads any gem plugins starting with/askip "wrong assumptions on file access"' \
+ -i spec/config_spec.rb || die
+
+ # Avoid specs making assumptions about how rubygems works internally
+ sed -i -e '/searches for .gem file/askip "rubygems internals"' spec/cli/diff_spec.rb || die
+
+ # Fix broken spec
+ sed -i -e '/:exist?/aallow(File).to receive(:exist?).and_call_original' spec/i18n/locale_spec.rb || die
+
+ # Avoid ruby31 failure on whitespace-only differences
+ sed -i -e '/shows a list of nodes/askip "Whitespace differences on ruby31"' spec/parser/ruby/ast_node_spec.rb || die
+
+ # Avoid redcarpet-specific spec that is not optional
+ sed -i -e '/autolinks URLs/askip "make redcarpet optional"' spec/templates/helpers/html_helper_spec.rb || die
+
+ # Avoid asciidoc-specific spec that is not optional
+ sed -e '/\(AsciiDoc specific\|AsciiDoc header\)/askip "skipping asciidoc test"' \
+ -i spec/templates/helpers/html_helper_spec.rb || die
+}
diff --git a/dev-ruby/yard/yard-0.9.34.ebuild b/dev-ruby/yard/yard-0.9.34.ebuild
new file mode 100644
index 000000000000..5e2af6de6910
--- /dev/null
+++ b/dev-ruby/yard/yard-0.9.34.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby27 ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_TASK_DOC="yard"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_DOCDIR="doc docs"
+
+RUBY_FAKEGEM_EXTRAINSTALL="templates .yardopts"
+
+RUBY_FAKEGEM_GEMSPEC="yard.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Documentation generation tool for the Ruby programming language"
+HOMEPAGE="https://yardoc.org/"
+
+# The gem lacks the gemspec file needed to pass tests.
+SRC_URI="https://github.com/lsegal/yard/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE=""
+
+ruby_add_bdepend "doc? ( || ( dev-ruby/maruku dev-ruby/rdiscount dev-ruby/kramdown ) )"
+
+ruby_add_bdepend "test? ( dev-ruby/rack:2.2 >=dev-ruby/rspec-3.11.0 dev-ruby/webrick )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/ s:^:#:' -e '3igem "rack", "~> 2.2.0"' spec/spec_helper.rb || die
+
+ sed -i -e '/samus/I s:^:#:' Rakefile || die
+
+ sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid specs that make assumptions on load ordering that are not
+ # true for us. This may be related to how we install in Gentoo. This
+ # also drops a test requirement on dev-ruby/rack.
+ rm -f spec/cli/server_spec.rb || die
+
+ # Avoid specs that only work with bundler
+ sed -i -e '/#initialize/,/^ end/ s:^:#:' spec/cli/yri_spec.rb || die
+ sed -e '/overwrites options with data in/askip "wrong assumptions on file access"' \
+ -e '/loads any gem plugins starting with/askip "wrong assumptions on file access"' \
+ -i spec/config_spec.rb || die
+
+ # Avoid specs making assumptions about how rubygems works internally
+ sed -i -e '/searches for .gem file/askip "rubygems internals"' spec/cli/diff_spec.rb || die
+
+ # Fix broken spec
+ sed -i -e '/:exist?/aallow(File).to receive(:exist?).and_call_original' spec/i18n/locale_spec.rb || die
+
+ # Avoid ruby31 failure on whitespace-only differences
+ sed -i -e '/shows a list of nodes/askip "Whitespace differences on ruby31"' spec/parser/ruby/ast_node_spec.rb || die
+
+ # Avoid redcarpet-specific spec that is not optional
+ sed -i -e '/autolinks URLs/askip "make redcarpet optional"' spec/templates/helpers/html_helper_spec.rb || die
+
+ # Avoid asciidoc-specific spec that is not optional
+ sed -e '/\(AsciiDoc specific\|AsciiDoc header\)/askip "skipping asciidoc test"' \
+ -i spec/templates/helpers/html_helper_spec.rb || die
+}
diff --git a/dev-ruby/yard/yard-0.9.36.ebuild b/dev-ruby/yard/yard-0.9.36.ebuild
new file mode 100644
index 000000000000..5d1f8575ffe4
--- /dev/null
+++ b/dev-ruby/yard/yard-0.9.36.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_TASK_DOC="yard"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_DOCDIR="doc docs"
+
+RUBY_FAKEGEM_EXTRAINSTALL="templates .yardopts"
+
+RUBY_FAKEGEM_GEMSPEC="yard.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Documentation generation tool for the Ruby programming language"
+HOMEPAGE="https://yardoc.org/"
+
+# The gem lacks the gemspec file needed to pass tests.
+SRC_URI="https://github.com/lsegal/yard/archive/v${PV}.tar.gz -> ${P}-git.tgz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.9.34-beginless-range.patch"
+)
+
+ruby_add_bdepend "doc? ( || ( dev-ruby/maruku dev-ruby/rdiscount dev-ruby/kramdown ) )"
+
+ruby_add_bdepend "test? ( dev-ruby/rack:2.2 >=dev-ruby/rspec-3.11.0 dev-ruby/webrick )"
+
+all_ruby_prepare() {
+ sed -i -e '/[Bb]undler/ s:^:#:' -e '3igem "rack", "~> 2.2.0"' spec/spec_helper.rb || die
+
+ sed -i -e '/samus/I s:^:#:' Rakefile || die
+
+ sed -i -e 's/git ls-files/find/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ # Avoid specs that make assumptions on load ordering that are not
+ # true for us. This may be related to how we install in Gentoo. This
+ # also drops a test requirement on dev-ruby/rack.
+ rm -f spec/cli/server_spec.rb || die
+
+ # Avoid specs that only work with bundler
+ sed -i -e '/#initialize/,/^ end/ s:^:#:' spec/cli/yri_spec.rb || die
+ sed -e '/overwrites options with data in/askip "wrong assumptions on file access"' \
+ -e '/loads any gem plugins starting with/askip "wrong assumptions on file access"' \
+ -i spec/config_spec.rb || die
+
+ # Avoid specs making assumptions about how rubygems works internally
+ sed -i -e '/searches for .gem file/askip "rubygems internals"' spec/cli/diff_spec.rb || die
+
+ # Fix broken spec
+ sed -i -e '/:exist?/aallow(File).to receive(:exist?).and_call_original' spec/i18n/locale_spec.rb || die
+
+ # Avoid ruby31 failure on whitespace-only differences
+ sed -i -e '/shows a list of nodes/askip "Whitespace differences on ruby31"' spec/parser/ruby/ast_node_spec.rb || die
+
+ # Avoid redcarpet-specific spec that is not optional
+ sed -i -e '/autolinks URLs/askip "make redcarpet optional"' spec/templates/helpers/html_helper_spec.rb || die
+
+ # Avoid asciidoc-specific spec that is not optional
+ sed -e '/\(AsciiDoc specific\|AsciiDoc header\)/askip "skipping asciidoc test"' \
+ -i spec/templates/helpers/html_helper_spec.rb || die
+}
diff --git a/dev-ruby/zeitwerk/Manifest b/dev-ruby/zeitwerk/Manifest
index c0ac98d0cf13..6abe4f9d7e76 100644
--- a/dev-ruby/zeitwerk/Manifest
+++ b/dev-ruby/zeitwerk/Manifest
@@ -1,3 +1,4 @@
-DIST zeitwerk-1.4.3.tar.gz 84202 BLAKE2B 8e14790f4a5b5122efacbe89a0d1ede5c9933564db40f3b498423b73852e91990e09321b3d2854ada8c57aa914bb596d1381ea697e751bc22d7b9ecf4e5653b8 SHA512 e3ba6dcaf5b85c117278e65f15559e7750062ba204b3cdeba4248eb4f153ad4aa09164db61671f6ea00846a9d89ec218b66338dbcbd2c376f4e7b28364533f55
-DIST zeitwerk-2.1.8.tar.gz 90774 BLAKE2B b42c56937b5f9709ce05125ab9358012f4132a49f23a3a56f464aed0c20ba7582e77e7d6cb65d2607d75eed089140827efcec14a2ffe8dd1adb3ead3c10fc882 SHA512 14db7e467b45536cb796f7dae4ca96e8167be023a562cc723843b1a63586ec6678ed23cb3307c3389ce5dba099c70dbdd257d23f5ce649af676aea795fa36243
-DIST zeitwerk-2.1.9.tar.gz 92046 BLAKE2B e4b48c9de3ee575d6b82427211e129478c9839d5716472896f2d6056ba42b7aaf861e644f92329af5034d92092bf02789f04cf6e5d6390151601eb138d7dfa58 SHA512 15de54c5e5b4042e99109707240627aaf5b76f4bf21a1a94d1230c1973404fdeecdc5f64ab16f75158608f64865ff8cc55f4841091c76e2731cc274b0109f677
+DIST zeitwerk-2.6.11.tar.gz 127029 BLAKE2B 7d810c1b6087522757e60ed0d70fe73dc8633474769992a9b9864a4437a44b482e804f8a7d10c1bc54395054539e80e98be926f31025a7abde5016df87636622 SHA512 6fb2fcf158497f7c11b8edc815a4ac4318d9794c9c76af9a6bed969cee3192f552624c9dfcde8147aafbdf6a754e6715523721d91eb219174f9b768ef4688431
+DIST zeitwerk-2.6.12.tar.gz 127162 BLAKE2B 863e9ff44c14843378e49b34c1ce7694d8d5026f823df5abf69c810f01e3affe9a96de5b615b2d04ab5d71f61e24d42df5b72ef4a415f238428efb4914ac695d SHA512 9d153ed6833a799b0cc2fcbeacab9daca4ef94c2b3871ec5a5cc79cb413f845d53901a875d7b4f2d2b13bd18e2aa9f0858642b76ef3550a1b58f90a9f5d54e9e
+DIST zeitwerk-2.6.13.tar.gz 127927 BLAKE2B 434da46147eb90d171a93a415dc3cca9c326136efd29a9fa46794dfc5bfcb5fc424fa5f64215281c36473d857c81895758129a0f779f13f6dc536839e240d455 SHA512 4ce3406cc77123439f3499d3f60030d043e9fca6ab1921ec95a5be58a0d4f2af22de06c1e0f48ad9a463f194f2f851eb0d815a1d7f35d9f6a6c0cb2ab3bd403d
+DIST zeitwerk-2.6.8.tar.gz 124209 BLAKE2B 7274b0e9cd55d48fa619d1e9da44074268186c119584fdc3ba18656db33884ec2e24a76ace863d18b0ec51601cde5a3cb9ed35889dcfd3f619960ddfcb1465c6 SHA512 b0609f7d38572d95bdf1a065a9051a7c39b15a7910e354981c991862692e2535477b4abd0a3c623a5d37e53622d95566ecf0d0243ca96fef59f0135693731a71
diff --git a/dev-ruby/zeitwerk/metadata.xml b/dev-ruby/zeitwerk/metadata.xml
index ac1e76fe49cb..7e72bb12bdf1 100644
--- a/dev-ruby/zeitwerk/metadata.xml
+++ b/dev-ruby/zeitwerk/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/zeitwerk/zeitwerk-1.4.3.ebuild b/dev-ruby/zeitwerk/zeitwerk-1.4.3.ebuild
deleted file mode 100644
index 13a52f0e3d6a..000000000000
--- a/dev-ruby/zeitwerk/zeitwerk-1.4.3.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Efficient and thread-safe code loader for Ruby"
-HOMEPAGE="https://github.com/fxn/zeitwerk"
-SRC_URI="https://github.com/fxn/zeitwerk/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="1"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- rm -f Gemfile.lock || die
- sed -i -e '/\(focus\|reporters\|Reporters\)/ s:^:#:' Gemfile test/test_helper.rb || die
-
- sed -i -e 's:require_relative "lib:require "./lib:' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- ${RUBY} -S bundle exec rake test || die
-}
diff --git a/dev-ruby/zeitwerk/zeitwerk-2.1.8.ebuild b/dev-ruby/zeitwerk/zeitwerk-2.1.8.ebuild
deleted file mode 100644
index e3f56d54a1b1..000000000000
--- a/dev-ruby/zeitwerk/zeitwerk-2.1.8.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Efficient and thread-safe code loader for Ruby"
-HOMEPAGE="https://github.com/fxn/zeitwerk"
-SRC_URI="https://github.com/fxn/zeitwerk/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64"
-IUSE=""
-
-all_ruby_prepare() {
- rm -f Gemfile.lock || die
- sed -i -e '/\(focus\|reporters\|Reporters\)/ s:^:#:' Gemfile test/test_helper.rb || die
-
- sed -i -e 's:require_relative "lib:require "./lib:' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- ${RUBY} -S bundle exec rake test || die
-}
diff --git a/dev-ruby/zeitwerk/zeitwerk-2.1.9.ebuild b/dev-ruby/zeitwerk/zeitwerk-2.1.9.ebuild
deleted file mode 100644
index 6ba2e45be88b..000000000000
--- a/dev-ruby/zeitwerk/zeitwerk-2.1.9.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-USE_RUBY="ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
-
-RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
-
-RUBY_FAKEGEM_BINWRAP=""
-
-inherit ruby-fakegem
-
-DESCRIPTION="Efficient and thread-safe code loader for Ruby"
-HOMEPAGE="https://github.com/fxn/zeitwerk"
-SRC_URI="https://github.com/fxn/zeitwerk/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="2"
-KEYWORDS="~amd64 ~arm64"
-IUSE=""
-
-all_ruby_prepare() {
- rm -f Gemfile.lock || die
- sed -i -e '/\(focus\|reporters\|Reporters\)/ s:^:#:' Gemfile test/test_helper.rb || die
-
- sed -i -e 's:require_relative "lib:require "./lib:' ${RUBY_FAKEGEM_GEMSPEC} || die
-}
-
-each_ruby_test() {
- ${RUBY} -S bundle exec rake test || die
-}
diff --git a/dev-ruby/zeitwerk/zeitwerk-2.6.11-r1.ebuild b/dev-ruby/zeitwerk/zeitwerk-2.6.11-r1.ebuild
new file mode 100644
index 000000000000..5c95637eee14
--- /dev/null
+++ b/dev-ruby/zeitwerk/zeitwerk-2.6.11-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Efficient and thread-safe code loader for Ruby"
+HOMEPAGE="https://github.com/fxn/zeitwerk"
+SRC_URI="https://github.com/fxn/zeitwerk/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/warning )"
+
+all_ruby_prepare() {
+ rm -f Gemfile.lock || die
+ # Dropping proveit should be fine based on https://github.com/fxn/zeitwerk/pull/253
+ # It's more of a quality check for the tests themselves rather than a test
+ sed -i -e '/\(focus\|reporters\|Reporters\|prove_\?it\)/ s:^:#:' Gemfile test/test_helper.rb || die
+
+ sed -i -e 's:require_relative "lib:require "./lib:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -S bundle exec rake test || die
+}
diff --git a/dev-ruby/zeitwerk/zeitwerk-2.6.12.ebuild b/dev-ruby/zeitwerk/zeitwerk-2.6.12.ebuild
new file mode 100644
index 000000000000..76e0dde2d98f
--- /dev/null
+++ b/dev-ruby/zeitwerk/zeitwerk-2.6.12.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Efficient and thread-safe code loader for Ruby"
+HOMEPAGE="https://github.com/fxn/zeitwerk"
+SRC_URI="https://github.com/fxn/zeitwerk/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/warning )"
+
+all_ruby_prepare() {
+ rm -f Gemfile.lock || die
+ # Dropping proveit should be fine based on https://github.com/fxn/zeitwerk/pull/253
+ # It's more of a quality check for the tests themselves rather than a test
+ sed -i -e '/\(focus\|reporters\|Reporters\|prove_\?it\)/ s:^:#:' Gemfile test/test_helper.rb || die
+
+ sed -i -e 's:require_relative "lib:require "./lib:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -S bundle exec rake test || die
+}
diff --git a/dev-ruby/zeitwerk/zeitwerk-2.6.13.ebuild b/dev-ruby/zeitwerk/zeitwerk-2.6.13.ebuild
new file mode 100644
index 000000000000..eb0be93eb354
--- /dev/null
+++ b/dev-ruby/zeitwerk/zeitwerk-2.6.13.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Efficient and thread-safe code loader for Ruby"
+HOMEPAGE="https://github.com/fxn/zeitwerk"
+SRC_URI="https://github.com/fxn/zeitwerk/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/warning )"
+
+all_ruby_prepare() {
+ rm -f Gemfile.lock || die
+ # Dropping proveit should be fine based on https://github.com/fxn/zeitwerk/pull/253
+ # It's more of a quality check for the tests themselves rather than a test
+ sed -i -e '/\(focus\|reporters\|Reporters\|prove_\?it\)/ s:^:#:' Gemfile test/test_helper.rb || die
+
+ sed -i -e 's:require_relative "lib:require "./lib:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -S bundle exec rake test || die
+}
diff --git a/dev-ruby/zeitwerk/zeitwerk-2.6.8.ebuild b/dev-ruby/zeitwerk/zeitwerk-2.6.8.ebuild
new file mode 100644
index 000000000000..3b19cabfa28f
--- /dev/null
+++ b/dev-ruby/zeitwerk/zeitwerk-2.6.8.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby30 ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Efficient and thread-safe code loader for Ruby"
+HOMEPAGE="https://github.com/fxn/zeitwerk"
+SRC_URI="https://github.com/fxn/zeitwerk/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="2"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE=""
+
+ruby_add_bdepend "test? ( dev-ruby/bundler dev-ruby/warning )"
+
+all_ruby_prepare() {
+ rm -f Gemfile.lock || die
+ # Dropping proveit should be fine based on https://github.com/fxn/zeitwerk/pull/253
+ # It's more of a quality check for the tests themselves rather than a test
+ sed -i -e '/\(focus\|reporters\|Reporters\|prove_\?it\)/ s:^:#:' Gemfile test/test_helper.rb || die
+
+ sed -i -e 's:require_relative "lib:require "./lib:' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_test() {
+ ${RUBY} -S bundle exec rake test || die
+}
diff --git a/dev-ruby/zentest/Manifest b/dev-ruby/zentest/Manifest
index 1f7b01b13d15..990b476495ae 100644
--- a/dev-ruby/zentest/Manifest
+++ b/dev-ruby/zentest/Manifest
@@ -1,2 +1 @@
-DIST ZenTest-4.11.1.gem 71680 BLAKE2B 27bd94ca98a6739829526c06689ee5a890aa254bef3cb7b7b02d79d82a4fa96faa1853d36069aa801983b4927d44b2af2c852c111ece3b64459c99d63a7a072d SHA512 6f3b5dfb8cc8154856e94f20134e9a6bd2d54e052d05d3e7a250f831ee0a3d3196b497cf118322c51201fb8dd30a05b8a0a0462c58a8852354c4dee2a10d867b
-DIST ZenTest-4.11.2.gem 71680 BLAKE2B a5d608bb789d1f0932bf823166fe6ddef7565e7f6c68fdcec1be47dbffd2e026fdf20ba8be64bee46e932a6542e3d45cc6fe7cccfb0257020f9ace7d59767960 SHA512 6596d49fe3f3a05db69fe81ff0825b3158a30a54c63e2794e0c09a4abb51b60fc612765dd811a9ad99db0390904ca59f4afd4fe780dfaeddb3cb6623184228e8
+DIST ZenTest-4.12.1.gem 48128 BLAKE2B 6e42c5974aa20cc9f926d3baa633a39f0a87d7dfed132e685b9476ea5f793eae1e747ea289705a6607c1f3cb2c0aea9d2d41a3d2607244dd25d6d7ae82ccf824 SHA512 20d51c18ddf1d4573e7350dc5b1cbca461e7c422652bb4a14d9645282d813e694134c42be7243b113d841a761fa644b9394500858c5cffc233731a3ed3ed50a7
diff --git a/dev-ruby/zentest/metadata.xml b/dev-ruby/zentest/metadata.xml
index bef15b99ffc2..5eb39327df7f 100644
--- a/dev-ruby/zentest/metadata.xml
+++ b/dev-ruby/zentest/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ruby@gentoo.org</email>
diff --git a/dev-ruby/zentest/zentest-4.11.1.ebuild b/dev-ruby/zentest/zentest-4.11.1.ebuild
deleted file mode 100644
index 546db06d651c..000000000000
--- a/dev-ruby/zentest/zentest-4.11.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-USE_RUBY="ruby22 ruby23 ruby24 ruby25"
-
-RUBY_FAKEGEM_NAME=ZenTest
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.txt History.txt example.txt example1.rb example2.rb example_dot_autotest.rb"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Testing tools: zentest, unit_diff, autotest, multiruby, and Test::Rails"
-HOMEPAGE="https://github.com/seattlerb/zentest"
-LICENSE="Ruby"
-
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- >=dev-ruby/hoe-2.10
- dev-ruby/hoe-seattlerb
- dev-ruby/minitest:5
- )"
diff --git a/dev-ruby/zentest/zentest-4.11.2.ebuild b/dev-ruby/zentest/zentest-4.11.2.ebuild
deleted file mode 100644
index ab766d32f51a..000000000000
--- a/dev-ruby/zentest/zentest-4.11.2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-USE_RUBY="ruby23 ruby24 ruby25 ruby26"
-
-RUBY_FAKEGEM_NAME=ZenTest
-
-RUBY_FAKEGEM_RECIPE_DOC="rdoc"
-RUBY_FAKEGEM_EXTRADOC="README.txt History.txt example.txt example1.rb example2.rb example_dot_autotest.rb"
-
-inherit ruby-fakegem
-
-DESCRIPTION="Testing tools: zentest, unit_diff, autotest, multiruby, and Test::Rails"
-HOMEPAGE="https://github.com/seattlerb/zentest"
-LICENSE="Ruby"
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-SLOT="0"
-IUSE=""
-
-ruby_add_bdepend "
- test? (
- dev-ruby/minitest:5
- )"
-
-each_ruby_test() {
- ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
-}
diff --git a/dev-ruby/zentest/zentest-4.12.1.ebuild b/dev-ruby/zentest/zentest-4.12.1.ebuild
new file mode 100644
index 000000000000..3979fefea17e
--- /dev/null
+++ b/dev-ruby/zentest/zentest-4.12.1.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="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_NAME=ZenTest
+
+RUBY_FAKEGEM_EXTRADOC="README.txt History.txt example.txt example1.rb example2.rb"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Testing tools: zentest, unit_diff, autotest, multiruby, and Test::Rails"
+HOMEPAGE="https://github.com/seattlerb/zentest"
+LICENSE="MIT"
+
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+SLOT="0"
+IUSE=""
+
+ruby_add_bdepend "
+ test? (
+ dev-ruby/minitest:5
+ )"
+
+each_ruby_test() {
+ MT_NO_PLUGINS=true ${RUBY} -Ilib:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+}