commit:     1134425c83c1a45f201720d8f09266aa86fd58f1
Author:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 18 15:50:34 2022 +0000
Commit:     Hans de Graaff <graaff <AT> gentoo <DOT> org>
CommitDate: Sun Dec 18 15:51:50 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1134425c

dev-ruby/slim: loosen temple dep and fix tests

Closes: https://bugs.gentoo.org/886579
Signed-off-by: Hans de Graaff <graaff <AT> gentoo.org>

 dev-ruby/slim/files/slim-4.1.0-temple.patch | 39 ++++++++++++++++++
 dev-ruby/slim/slim-4.1.0-r3.ebuild          | 61 +++++++++++++++++++++++++++++
 2 files changed, 100 insertions(+)

diff --git a/dev-ruby/slim/files/slim-4.1.0-temple.patch 
b/dev-ruby/slim/files/slim-4.1.0-temple.patch
new file mode 100644
index 000000000000..c8c939cd6933
--- /dev/null
+++ b/dev-ruby/slim/files/slim-4.1.0-temple.patch
@@ -0,0 +1,39 @@
+From 45a8087bbdde309703db3860a160bab3fdb8c14a Mon Sep 17 00:00:00 2001
+From: Takashi Kokubun <takashik...@gmail.com>
+Date: Tue, 25 Oct 2022 09:25:18 -0700
+Subject: [PATCH] Support temple 0.9.1+ (#894)
+
+---
+ slim.gemspec               | 2 +-
+ test/core/test_commands.rb | 6 +++++-
+ 2 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/slim.gemspec b/slim.gemspec
+index 0bbc7ae4..095dafd5 100644
+--- a/slim.gemspec
++++ b/slim.gemspec
+@@ -19,6 +19,6 @@ Gem::Specification.new do |s|
+ 
+   s.required_ruby_version = '>=2.0.0'
+ 
+-  s.add_runtime_dependency('temple', ['>= 0.7.6', '< 0.9'])
++  s.add_runtime_dependency('temple', ['>= 0.7.6', '!= 0.9.0'])
+   s.add_runtime_dependency('tilt', ['>= 2.0.6', '< 2.1'])
+ end
+diff --git a/test/core/test_commands.rb b/test/core/test_commands.rb
+index 7cf8e838..15a77dd7 100644
+--- a/test/core/test_commands.rb
++++ b/test/core/test_commands.rb
+@@ -58,7 +58,11 @@ def test_rails
+     prepare_common_test DYNAMIC_TEMPLATE, '--rails' do |out, err|
+       assert err.empty?
+ 
+-      assert out.include? %Q{@output_buffer = ActiveSupport::SafeBuffer.new;}
++      if Gem::Version.new(Temple::VERSION) >= Gem::Version.new('0.9')
++        assert out.include? %Q{@output_buffer = output_buffer || 
ActionView::OutputBuffer.new;}
++      else
++        assert out.include? %Q{@output_buffer = 
ActiveSupport::SafeBuffer.new;}
++      end
+       assert out.include? %Q{@output_buffer.safe_concat(("<p>Hello 
"#{STRING_FREEZER}));}
+       assert out.include? 
%Q{@output_buffer.safe_concat(((::Temple::Utils.escape_html((name))).to_s));}
+       assert out.include? 
%Q{@output_buffer.safe_concat(("!</p>"#{STRING_FREEZER}));}

diff --git a/dev-ruby/slim/slim-4.1.0-r3.ebuild 
b/dev-ruby/slim/slim-4.1.0-r3.ebuild
new file mode 100644
index 000000000000..6e762dea8710
--- /dev/null
+++ b/dev-ruby/slim/slim-4.1.0-r3.ebuild
@@ -0,0 +1,61 @@
+# 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_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="http://slim-lang.com/";
+LICENSE="MIT"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~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
+       !!<dev-ruby/slim-3.0.9-r1"
+
+ruby_add_bdepend "doc? ( dev-ruby/yard dev-ruby/redcarpet )"
+
+ruby_add_bdepend "test? ( dev-ruby/redcarpet dev-ruby/sassc )"
+
+all_ruby_prepare() {
+       eapply "${FILESDIR}/${P}-temple.patch"
+
+       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
+
+       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
+}

Reply via email to