commit: 3dfc448531890d921a1f333ba33a093291c8b98e Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Sun Apr 2 23:41:19 2023 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Mon Apr 3 00:46:29 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3dfc4485
dev-ruby/sus-fixtures-async: new package, add 0.1.1 Signed-off-by: Sam James <sam <AT> gentoo.org> dev-ruby/sus-fixtures-async/Manifest | 1 + .../sus-fixtures-async-0.1.1-tests-require.patch | 43 ++++++++++++++++++++++ dev-ruby/sus-fixtures-async/metadata.xml | 11 ++++++ .../sus-fixtures-async-0.1.1.ebuild | 37 +++++++++++++++++++ 4 files changed, 92 insertions(+) diff --git a/dev-ruby/sus-fixtures-async/Manifest b/dev-ruby/sus-fixtures-async/Manifest new file mode 100644 index 000000000000..3b8571b90174 --- /dev/null +++ b/dev-ruby/sus-fixtures-async/Manifest @@ -0,0 +1 @@ +DIST sus-fixtures-async-0.1.1.tar.gz 5017 BLAKE2B f293d9fe336b05e510a82c4337250f48b871eab8c38b7d9587a6402d19689197eb6a2b1f7f14e7b5823246b6f14d104e7e49f14f84a980392dd545543ffcd733 SHA512 cca073491d143b0ceaff34ada08d416ea43a035bc887c6dec02f62372724d891f47e9dfa8d749f6e485e7d14da8c395dc67185ed0a91d9ea0eb5466d3164c378 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 <[email protected]> +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>[email protected]</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..c1969443f83f --- /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" + +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 +}
