diff options
author | Hans de Graaff <graaff@gentoo.org> | 2024-02-10 09:02:01 +0100 |
---|---|---|
committer | Hans de Graaff <graaff@gentoo.org> | 2024-02-10 09:03:02 +0100 |
commit | 4d970fb79e56ac9e47db8c0359157834c3d19ea3 (patch) | |
tree | 7274cfcf3f6e36f50e60714eaba9dabf1b240691 /dev-ruby/yard | |
parent | dev-ruby/sinatra: relax activesupport requirement (diff) | |
download | gentoo-4d970fb79e56ac9e47db8c0359157834c3d19ea3.tar.gz gentoo-4d970fb79e56ac9e47db8c0359157834c3d19ea3.tar.bz2 gentoo-4d970fb79e56ac9e47db8c0359157834c3d19ea3.zip |
dev-ruby/yard: add ruby33
Backport one upstream change and apply another unmerged PR to make the
tests pass also on ruby33.
Signed-off-by: Hans de Graaff <graaff@gentoo.org>
Diffstat (limited to 'dev-ruby/yard')
-rw-r--r-- | dev-ruby/yard/Manifest | 2 | ||||
-rw-r--r-- | dev-ruby/yard/yard-0.9.34-r2.ebuild | 76 |
2 files changed, 78 insertions, 0 deletions
diff --git a/dev-ruby/yard/Manifest b/dev-ruby/yard/Manifest index 7e7779e5033a..0c159ee5ea53 100644 --- a/dev-ruby/yard/Manifest +++ b/dev-ruby/yard/Manifest @@ -1,2 +1,4 @@ DIST yard-0.9.28-git.tgz 932436 BLAKE2B 7340f6815698ddb85aa16752266af75ecd3e1f1a5f328e147dd8ea01a750c48259e6f3413bb5d00777d4e983b340b36b21110e058cf6b326973c0a7c3d756836 SHA512 f57ce1f63ab1763729c85121cf1ac5927d4f7c53eed2fb58b1ea7d700db22481e767926845558d3db31bcef50d0181f0b6cf449e558a5548243256cdda0cd355 +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 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 +} |