diff options
Diffstat (limited to 'dev-ruby')
21 files changed, 365 insertions, 68 deletions
diff --git a/dev-ruby/curb/Manifest b/dev-ruby/curb/Manifest index bce98e665722..37a443aa42de 100644 --- a/dev-ruby/curb/Manifest +++ b/dev-ruby/curb/Manifest @@ -1,2 +1,3 @@ DIST curb-1.0.6.gem 92160 BLAKE2B b764611321981e1b5706c51400c3b08f1bd9a73ee1df56f3fa818ac0d7074be6e7b77969794cd1452f2d6f5685f29e772383913276cb4c81576760057f278584 SHA512 24c0e65a88bda3dd20a4d9386be22a6f09aa9a86f37c0f462048e621e95567bb3f825e41c41889a1699a966a6943ce1ce9c380287ecb120eef7e268f598a2de7 DIST curb-1.0.9.gem 97280 BLAKE2B 66a5267f5be670f13f477bfd881ee0212fc84b4955b76c535cab811f0f3ec1ff5036388e677c57cf23772eb0e5b0b7373ee46b06a0fa6bb9ba7b8b70022d40d5 SHA512 259e5fa66614451060c80522c7623473ea7c197a328e26097219bedc72316907bc12bab7eef34528911c97c2a0e4fc4d3633757c68ab0e08edad63de68f69bce +DIST curb-1.1.0.gem 97792 BLAKE2B 1a79cec78f3a5ed3d76d73e0ace24c0bffa4a1d9262a4985eabe4c6c365f3cd2296b1bb4b29c833a7399e8e27cdb0d12a4a6a4c99dadbd98e316548ece4e0188 SHA512 7b807a0fc7002bcfcbd1c3aee72c5f572c4808543c5b53a996b2f410986143906e4ca9ad2ebd33f886c23538d2c5c0b7633055086e7073884021c2b9537a9549 diff --git a/dev-ruby/curb/curb-1.1.0.ebuild b/dev-ruby/curb/curb-1.1.0.ebuild new file mode 100644 index 000000000000..294512f67f49 --- /dev/null +++ b/dev-ruby/curb/curb-1.1.0.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34" + +RUBY_FAKEGEM_RECIPE_TEST="rake" + +RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb) + +inherit ruby-fakegem + +DESCRIPTION="Ruby-language bindings for libcurl" +HOMEPAGE="https://github.com/taf2/curb" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="test" + +DEPEND=" net-misc/curl[ssl] test? ( net-misc/curl )" +RDEPEND=" net-misc/curl[ssl]" + +ruby_add_bdepend "test? ( dev-ruby/webrick )" + +all_ruby_prepare() { + # 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 + + # 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 + + # Skip test failing on an encoding issue. + sed -e '/test_post_streaming/aomit "Fails on encoding difference"' \ + -i tests/tc_curl_easy.rb || die +} diff --git a/dev-ruby/haml/Manifest b/dev-ruby/haml/Manifest index 112cc9c4049e..5ade4f836b4d 100644 --- a/dev-ruby/haml/Manifest +++ b/dev-ruby/haml/Manifest @@ -1,3 +1,2 @@ DIST haml-5.2.2.tar.gz 129833 BLAKE2B d68c24c7a3c817d6d364b2ec92b84b4f56f4fffa48b99d17b2df27da35f50b1fb1f69b184a7b21d899c476e0d4c8ad2b940a7cb2995ec24ecdafab8ef61fe393 SHA512 1aec59fab20d8139a5dfedde2007fa8137a377a345e4d30229f9d1140d56cdf970c8ae70e2647e6a408d7fa543a16050f66a8a636efa6a6b1f91ee1ffcc136c1 -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/files/haml-6.3.0-ruby34-backtrace.patch b/dev-ruby/haml/files/haml-6.3.0-ruby34-backtrace.patch new file mode 100644 index 000000000000..b70ad956dd6f --- /dev/null +++ b/dev-ruby/haml/files/haml-6.3.0-ruby34-backtrace.patch @@ -0,0 +1,27 @@ +From 4f36be66d080cc57433ae2dbd13984e8361dec4b Mon Sep 17 00:00:00 2001 +From: Akira Matsuda <ronnie@dio.jp> +Date: Mon, 19 Aug 2024 04:00:31 +0900 +Subject: [PATCH] Backtrace format has been changed since Ruby 3.4 + +Method names are quoted with '' +https://bugs.ruby-lang.org/issues/16495 + +Method names include method owner +https://bugs.ruby-lang.org/issues/19117 +--- + test/haml/engine_test.rb | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/test/haml/engine_test.rb b/test/haml/engine_test.rb +index f0fe006d7..6cebd913e 100644 +--- a/test/haml/engine_test.rb ++++ b/test/haml/engine_test.rb +@@ -97,7 +97,7 @@ def use_test_tracing(options) + unless options[:filename] + # use caller method name as fake filename. useful for debugging + i = -1 +- caller[i+=1] =~ /`(.+?)'/ until $1 and $1.index('test_') == 0 ++ caller[i+=1] =~ /[`'](?:.+?#)?(.+?)'/ until $1 and $1.index('test_') == 0 + options[:filename] = "(#{$1})" + end + options diff --git a/dev-ruby/haml/files/haml-6.3.0-ruby34.patch b/dev-ruby/haml/files/haml-6.3.0-ruby34.patch new file mode 100644 index 000000000000..2f2878cb453e --- /dev/null +++ b/dev-ruby/haml/files/haml-6.3.0-ruby34.patch @@ -0,0 +1,57 @@ +From a08d5cd792555621d8e778e4d71db5e88b7292c0 Mon Sep 17 00:00:00 2001 +From: Geremia Taglialatela <tagliala.dev@gmail.com> +Date: Sat, 28 Dec 2024 10:27:55 +0100 +Subject: [PATCH] Test against 3.4 and fix tests for `Hash#inspect` + +Ref: ruby/ruby@a8a0591 + +Close #1173 +--- + .github/workflows/test.yml | 1 + + test/haml/engine/old_attribute_test.rb | 2 +- + test/haml/engine/text_test.rb | 2 +- + test/test_helper.rb | 5 +++++ + 4 files changed, 8 insertions(+), 2 deletions(-) + +diff --git a/test/haml/engine/old_attribute_test.rb b/test/haml/engine/old_attribute_test.rb +index c03740341..7570aefce 100644 +--- a/test/haml/engine/old_attribute_test.rb ++++ b/test/haml/engine/old_attribute_test.rb +@@ -182,7 +182,7 @@ + + it 'does not join others' do + assert_render(<<-HTML.unindent, <<-HAML.unindent) +- <a data-value='[{:count=>1}]'></a> ++ <a data-value='[#{render_hash({ count: 1 })}]'></a> + HTML + %a{ data: { value: [count: 1] } } + HAML +diff --git a/test/haml/engine/text_test.rb b/test/haml/engine/text_test.rb +index f72e76cd0..cec239ee8 100644 +--- a/test/haml/engine/text_test.rb ++++ b/test/haml/engine/text_test.rb +@@ -6,7 +6,7 @@ + skip 'escape is not working well in truffleruby' if RUBY_ENGINE == 'truffleruby' + assert_render(<<-HTML.unindent, <<-'HAML'.unindent) + a3aa" ["1", 2] b " ! +- a{:a=>3} ++ a#{render_hash({ a: 3 })} + <ht2ml> + HTML + #{ "a#{3}a" }a" #{["1", 2]} b " ! +diff --git a/test/test_helper.rb b/test/test_helper.rb +index 8a94f3578..40d89bbd4 100644 +--- a/test/test_helper.rb ++++ b/test/test_helper.rb +@@ -46,6 +46,11 @@ def assert_haml(haml, options = {}) + actual = render_haml(haml, options) + assert_equal expected, actual + end ++ ++ # See haml/haml#1173 and ruby/ruby@a8a0591 ++ def render_hash(hash) ++ Haml::Util.escape_html(hash) ++ end + end + + class Haml::TestCase < BASE_TEST_CLASS diff --git a/dev-ruby/haml/haml-6.2.3.ebuild b/dev-ruby/haml/haml-6.2.3.ebuild deleted file mode 100644 index bb678ec5bb1e..000000000000 --- a/dev-ruby/haml/haml-6.2.3.ebuild +++ /dev/null @@ -1,61 +0,0 @@ -# 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="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-r1.ebuild b/dev-ruby/haml/haml-6.3.0-r1.ebuild index cf0916b76cc0..4aa73c9cd239 100644 --- a/dev-ruby/haml/haml-6.3.0-r1.ebuild +++ b/dev-ruby/haml/haml-6.3.0-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -USE_RUBY="ruby31 ruby32 ruby33" +USE_RUBY="ruby32 ruby33 ruby34" RUBY_FAKEGEM_BINWRAP="" @@ -23,6 +23,8 @@ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ IUSE="doc test" +PATCHES=( "${FILESDIR}/${P}-ruby34-backtrace.patch" "${FILESDIR}/${P}-ruby34.patch" ) + ruby_add_rdepend ">=dev-ruby/temple-0.8.2 dev-ruby/thor dev-ruby/tilt:*" ruby_add_bdepend " diff --git a/dev-ruby/json/Manifest b/dev-ruby/json/Manifest index 592f21f62e51..74205fbfe9d3 100644 --- a/dev-ruby/json/Manifest +++ b/dev-ruby/json/Manifest @@ -3,4 +3,5 @@ DIST json-2.11.3.tar.gz 840952 BLAKE2B 33423f7508371b9052e04041664567d60819682aa DIST json-2.12.0.tar.gz 846422 BLAKE2B 7beaa7974f34804865e21729af95ef5f3283a9eae1eef721cb3ef1bfb034434ba44cf68b63daffbecd074c5ee82089292d3df10307c9862ece1705f6d7fcf6a1 SHA512 a7707fcd318512a013887ff89c8f1489c0d35adece04cb0929129f9be7f4375db9fb8e82fcdb4b0dd1f1d385053db0f2f613e775d2fe463143270e597dbc46b9 DIST json-2.12.2.tar.gz 848560 BLAKE2B 489660e253a40c4274cc7d1c45a959a32674d2bab32fc9d16820744d6acdd0ef07cddafa586e7b1266815d68c5dc3b8a50a75242cd18d6f0503cfa6ad065bb0a SHA512 ccaf9813fb51f735d0961b97ccb6f71d9c0124d3b179dc936664b502dd2136fe48df16cc0b2384bbb46d514f29ef0241ee7bcbea5677e608935a63c8a9dacf6e DIST json-2.13.0.tar.gz 850890 BLAKE2B 04f8042cf57c3008c835158a270e481786b135247eef499c6c7d5b6c17bdb9a5e34d684098f5fc85c78c6401d94886e8cc3a0f487f16b1c36286008edbe8e8f3 SHA512 ca9512cb6f54c3c912320f0c879cfedd65eded7e75d6914c71d4e9fcb2bfd49f93101933526b33c7ae908485a5a986ccd983b013f9ac2e75bc82dd056c08ee3a +DIST json-2.13.1.tar.gz 851179 BLAKE2B bf8710c90572f9808beb478c0114d889416b109f8d2b00210cd05717cac497eb0e696f4abdb56c994efb7341f7ed9d7f2e92d3174654438b4160bc08a6dad430 SHA512 957b97f1940d7b21559348458766b0dd101a487551f88be7735eaa98a2de99329a979193dd17a7d9390f8cf584b2ac2313b338e3a89f0df54e383ee1ce8b3bd8 DIST json-2.7.2.tar.gz 125814 BLAKE2B 450c9495053c762446e77997bdc7e0291f8baf160a4da7e56d04ed18aa5629a11f1309e40bab0849692433392cfba8a19dda905fe5044ab363591a49e6e18b60 SHA512 5c432c293eed69b9810b5d0ca782383ba3f206d561641c354515e357c663ed4a4fb5ae35d3336d48605f9e82156d2f14a7ec6fa26642351214f60d91bac84f0e diff --git a/dev-ruby/json/json-2.13.1.ebuild b/dev-ruby/json/json-2.13.1.ebuild new file mode 100644 index 000000000000..35899578f2ec --- /dev/null +++ b/dev-ruby/json/json-2.13.1.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34" + +RUBY_FAKEGEM_EXTRADOC="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/ruby/json" +SRC_URI="https://github.com/ruby/json/archive/v${PV}.tar.gz -> ${P}.tar.gz" +LICENSE="|| ( BSD-2 Ruby )" + +SLOT="$(ver_cut 1)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="doc test" + +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`|""|' \ + -e '/extensiontask/I s:^:#:' \ + 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:^:#:' test/json/test_helper.rb || die + + # Fix version number + sed -e 's/2.8.2/2.9.0/' -i lib/json/version.rb || die +} diff --git a/dev-ruby/language_server-protocol/language_server-protocol-3.17.0.4.ebuild b/dev-ruby/language_server-protocol/language_server-protocol-3.17.0.4-r1.ebuild index 8ef539a4ab96..e82893c21536 100644 --- a/dev-ruby/language_server-protocol/language_server-protocol-3.17.0.4.ebuild +++ b/dev-ruby/language_server-protocol/language_server-protocol-3.17.0.4-r1.ebuild @@ -17,6 +17,11 @@ LICENSE="MIT" SLOT="0" KEYWORDS="~amd64" +# TODO: if necessary create ebuilds for testing dependencies +# most test dependencies can be satisfied aside from m (short for metal) +# which has proven to be an entire rabbithole of extra packages +RUBY_FAKEGEM_RECIPE_TEST="none" + all_ruby_unpack() { default @@ -29,8 +34,13 @@ each_fakegem_configure() { # by default these lines contain code that runs unnecessary shell commands or # searches that don't make sense with the ebuild directory structure. # values are set independently by the eclass anyways, so can be removed - sed -i '/^spec.files*/d' "${PN}.gemspec" || die - sed -i '/^spec.executables*/d' "${PN}.gemspec" || die + sed -i '/^\s*spec.files*/d' "${PN}.gemspec" || die + sed -i '/^\s*spec.executables*/d' "${PN}.gemspec" || die + + default +} +each_fakegem_test() { + ewarn "Tests disabled due to dependency issues" default } diff --git a/dev-ruby/language_server-protocol/language_server-protocol-3.17.0.5.ebuild b/dev-ruby/language_server-protocol/language_server-protocol-3.17.0.5-r1.ebuild index 8ef539a4ab96..e82893c21536 100644 --- a/dev-ruby/language_server-protocol/language_server-protocol-3.17.0.5.ebuild +++ b/dev-ruby/language_server-protocol/language_server-protocol-3.17.0.5-r1.ebuild @@ -17,6 +17,11 @@ LICENSE="MIT" SLOT="0" KEYWORDS="~amd64" +# TODO: if necessary create ebuilds for testing dependencies +# most test dependencies can be satisfied aside from m (short for metal) +# which has proven to be an entire rabbithole of extra packages +RUBY_FAKEGEM_RECIPE_TEST="none" + all_ruby_unpack() { default @@ -29,8 +34,13 @@ each_fakegem_configure() { # by default these lines contain code that runs unnecessary shell commands or # searches that don't make sense with the ebuild directory structure. # values are set independently by the eclass anyways, so can be removed - sed -i '/^spec.files*/d' "${PN}.gemspec" || die - sed -i '/^spec.executables*/d' "${PN}.gemspec" || die + sed -i '/^\s*spec.files*/d' "${PN}.gemspec" || die + sed -i '/^\s*spec.executables*/d' "${PN}.gemspec" || die + + default +} +each_fakegem_test() { + ewarn "Tests disabled due to dependency issues" default } diff --git a/dev-ruby/parser/Manifest b/dev-ruby/parser/Manifest index 1811d945c1de..d64506cad14c 100644 --- a/dev-ruby/parser/Manifest +++ b/dev-ruby/parser/Manifest @@ -1 +1,2 @@ DIST parser-3.3.8.0.tar.gz 334410 BLAKE2B 42a58d3e3f82bec1b8afb9ed78bb1731dd34a84d0af69607182200117b19ccde9bb2d7a6a0087752af3c7f41455c905d21e5686932e6e16ac67855eea95d15ee SHA512 e278da52ab865315afef5476cfaf7ed36c49fe916dbfe01d0ee1a327d3a951522636fb79ca4a35ca53233769467c4f12af2148a21218b1f6d5b52dbade949953 +DIST parser-3.3.9.0.tar.gz 334402 BLAKE2B 1428bd11f404a07a3fdc9b040a34eac53506e37514d87b6d6f51481b7c81c6b3926e705de9a765d8f04957c03b6b4ad1ea8a7289a1cea78775ddfd915fe206b1 SHA512 67fdb74966bdc180bd99b8919f666b4415f1f6095670e399c756fc89b670e555fe53632f108f513698692b9a09ce062e4b993643b37361f57f4f64b387740f45 diff --git a/dev-ruby/parser/parser-3.3.9.0.ebuild b/dev-ruby/parser/parser-3.3.9.0.ebuild new file mode 100644 index 000000000000..b60d89aa491b --- /dev/null +++ b/dev-ruby/parser/parser-3.3.9.0.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34" + +RUBY_FAKEGEM_RECIPE_DOC="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/ruby-lsp/Manifest b/dev-ruby/ruby-lsp/Manifest index eba7a11f8097..e0f2a93e539f 100644 --- a/dev-ruby/ruby-lsp/Manifest +++ b/dev-ruby/ruby-lsp/Manifest @@ -1,2 +1,3 @@ DIST ruby-lsp-0.23.11.tar.gz 27071970 BLAKE2B 0a86024a40db46670e57570f1047c02f59178388933beea372ce378794f8950aa5ba4272491b2e0fe3c9a55216880c368671fd33d3234527029c8a465b77d62b SHA512 f111192710c6603bb127bff546a3e84d4ef7a3c29823e1400ade475ecee22f1272123a44e86eac89e8dcae57f1584c6f40108b52a1718ff8562c2b7bb8279ad2 DIST ruby-lsp-0.23.23.tar.gz 35014426 BLAKE2B 7baa50e4898b0d789956a7f786151dc7b11cc8e86d582bb4ce55b5840b319d7052eaec71c8d9786f07ca610db5104bbd5272b1426c25ca61fe8d44e3840fb952 SHA512 db09b0a6fd2c6b295c7635a910697e3b707bf1db1dbc03bfb9946816db7ad1826b51171a014fe9a47321960004f51edc0e4258e0cb0281e182574b7c377d8fbb +DIST ruby-lsp-0.26.0.tar.gz 35037573 BLAKE2B 7e3746fed21e3787f88ac807304f303a4d5fd848428a49aa76e9e61169eba541dfcdf90671c9e466b80562744030817b9bf80fe1fae9ed67b425f2dbfebdbda0 SHA512 599e90083af068c7519951397c8890a5ae41244783bb42c4c7d5fb1b5baeaa4a5470290e13b4037425ffce6e50b980963a26e2bb4a4e615f75f2ef934d4f87a3 diff --git a/dev-ruby/ruby-lsp/ruby-lsp-0.23.11.ebuild b/dev-ruby/ruby-lsp/ruby-lsp-0.23.11-r1.ebuild index 8ab20092cf5f..cd3b0fb963bb 100644 --- a/dev-ruby/ruby-lsp/ruby-lsp-0.23.11.ebuild +++ b/dev-ruby/ruby-lsp/ruby-lsp-0.23.11-r1.ebuild @@ -17,9 +17,18 @@ LICENSE="MIT" SLOT="0" KEYWORDS="~amd64" +# TODO: if necessary create extra packages with test dependencies +# currently tests would require many more gems/ebuilds +RUBY_FAKEGEM_RECIPE_TEST="none" + DEPEND+=" >=dev-ruby/prism-1.2 <dev-ruby/prism-2 >=dev-ruby/rbs-3 <dev-ruby/rbs-4 =dev-ruby/language_server-protocol-3.17* >=dev-ruby/sorbet-runtime-0.5.10782 " + +each_fakegem_test() { + ewarn "Tests disabled due requiring ~10 extra gems to be installed, most of which do not have ebuilds" + default +} diff --git a/dev-ruby/ruby-lsp/ruby-lsp-0.23.23.ebuild b/dev-ruby/ruby-lsp/ruby-lsp-0.23.23-r1.ebuild index 0f4f8f972f45..c80a2bfc493c 100644 --- a/dev-ruby/ruby-lsp/ruby-lsp-0.23.23.ebuild +++ b/dev-ruby/ruby-lsp/ruby-lsp-0.23.23-r1.ebuild @@ -17,9 +17,18 @@ LICENSE="MIT" SLOT="0" KEYWORDS="~amd64" +# TODO: if necessary create extra packages with test dependencies +# currently tests would require many more gems/ebuilds +RUBY_FAKEGEM_RECIPE_TEST="none" + DEPEND+=" >=dev-ruby/prism-1.2 <dev-ruby/prism-2 >=dev-ruby/rbs-3 <dev-ruby/rbs-5 =dev-ruby/language_server-protocol-3.17* >=dev-ruby/sorbet-runtime-0.5.10782 " + +each_fakegem_test() { + ewarn "Tests disabled due requiring ~10 extra gems to be installed, most of which do not have ebuilds" + default +} diff --git a/dev-ruby/ruby-lsp/ruby-lsp-0.26.0.ebuild b/dev-ruby/ruby-lsp/ruby-lsp-0.26.0.ebuild new file mode 100644 index 000000000000..267931b52069 --- /dev/null +++ b/dev-ruby/ruby-lsp/ruby-lsp-0.26.0.ebuild @@ -0,0 +1,33 @@ +# Copyright 2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" +RUBY_FAKEGEM_BINDIR="exe" # 'bin' contains only testing functions +RUBY_FAKEGEM_EXTRAINSTALL="static_docs VERSION" +USE_RUBY="ruby31 ruby32 ruby33 ruby34" +inherit ruby-fakegem + +DESCRIPTION="An opinionated language server for Ruby" +HOMEPAGE="https://shopify.github.io/ruby-lsp" +SRC_URI="https://github.com/Shopify/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" + +# TODO: if necessary create extra packages with test dependencies +# currently tests would require many more gems/ebuilds +RUBY_FAKEGEM_RECIPE_TEST="none" + +DEPEND+=" + >=dev-ruby/prism-1.2 <dev-ruby/prism-2 + >=dev-ruby/rbs-3 <dev-ruby/rbs-5 + =dev-ruby/language_server-protocol-3.17* +" + +each_fakegem_test() { + ewarn "Tests disabled due requiring ~10 extra gems to be installed, most of which do not have ebuilds" + default +} diff --git a/dev-ruby/sorbet-runtime/Manifest b/dev-ruby/sorbet-runtime/Manifest index bbf770add431..5a5906357f43 100644 --- a/dev-ruby/sorbet-runtime/Manifest +++ b/dev-ruby/sorbet-runtime/Manifest @@ -1,2 +1,3 @@ DIST sorbet-runtime-0.5.11882.gem 89088 BLAKE2B 408059cd2e66e04bd803501de41ce395aa3413216b8098eb6d9c245e478fd9432aa5c5bd81964c79ae55bd153f9639c744b8082cdeeb1dce276f79bc514f1cb4 SHA512 8b2c1dffe58b32bddea311a4aad033b677846749c14f93fac22ae0b8c339c3aa17b81e18e045c97ec201c5f6cf1099ee26908191be6ab13290c99b55a73998d9 DIST sorbet-runtime-0.5.12134.gem 89088 BLAKE2B 4b8affd46b929e75379e09a420dd7e2d8f2670d9fb73cfa8c186ce3d52b20b30dcba709cd84c80a84913fdc849be1590d6138abdc3b19750fc09ef8e80c7df16 SHA512 f8a300263b1960b5abe2a2a5368ce7f11b8b46be83eed8bd3d856b59cd979dce4415099518547388b5507e413d18d5922a38647e41017d0e5c1bdb3f38dcd6ac +DIST sorbet-runtime-0.5.12356.gem 90112 BLAKE2B ec834db4e1d3852febf942a7dac25aefca9265d2e0791e5403dd5893556e015c82cc7ecb8b43d5131607a9d92f77c34d4d3badb0f0854fff86631c0bf620b0a7 SHA512 87d7e06bbd058ca8ab5571aa45ea8c7395b126dd54ce1e833f1f0688d19ccf2d03ed651700fb25f8d6958e24f1948d594e584a87d733f6e7ae25d3f98497f98f diff --git a/dev-ruby/sorbet-runtime/sorbet-runtime-0.5.12356.ebuild b/dev-ruby/sorbet-runtime/sorbet-runtime-0.5.12356.ebuild new file mode 100644 index 000000000000..2fc2eb43a868 --- /dev/null +++ b/dev-ruby/sorbet-runtime/sorbet-runtime-0.5.12356.ebuild @@ -0,0 +1,19 @@ +# Copyright 2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby31 ruby32 ruby33 ruby34" +inherit ruby-fakegem + +DESCRIPTION="Sorbet's runtime static type checker component" +HOMEPAGE="https://sorbet.org/" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" + +# sorbet itself is a huge package, with a mix of c++ & ruby +# the tests defined in the main repo are for the full package and wouldn't +# make sense for this gem +RUBY_FAKEGEM_RECIPE_TEST="none" diff --git a/dev-ruby/temple/Manifest b/dev-ruby/temple/Manifest index a7faefed1110..6534b4926064 100644 --- a/dev-ruby/temple/Manifest +++ b/dev-ruby/temple/Manifest @@ -1 +1,2 @@ DIST temple-0.10.3.tar.gz 37780 BLAKE2B 9b18f9103f05935ac774423958372b0c518aa0976e46b59d4d80ab4649fae96b83486a0f650a6d3b27ae7af20ce9f9f49b50989da3313d13134e2b29bdfcd32d SHA512 3f41e5897fb43be844f7c0804c01e6bb8843034ca5cad9550eb96140136fdc3a2251ae682f4566520476d7b5e8a7e1585b65aedb5c922643d71b6c4454d3e1bd +DIST temple-0.10.4.tar.gz 37788 BLAKE2B c49c56edb7dfd1dbd779e0ebd518f0a538cc0d76dd9690a29445156b1bf3323d2d4c7c0ae2d407ab97d7df393f178b941aad1497c4a7834de7c5e5584d25e44b SHA512 6683f33cc83adcb9a27a9b8a89cf9e68e5a42c2081eb2a5359ea4ff80e410fa97695e6ab2d74d8e99f8e104eb921d80c90e6f20686440537ddbd90bfcdacdf99 diff --git a/dev-ruby/temple/temple-0.10.4.ebuild b/dev-ruby/temple/temple-0.10.4.ebuild new file mode 100644 index 000000000000..e60196e114c3 --- /dev/null +++ b/dev-ruby/temple/temple-0.10.4.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +USE_RUBY="ruby32 ruby33 ruby34" + +RUBY_FAKEGEM_EXTRADOC="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="test" + +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 +} |
