From ea96da04557fb541a927e99b7fd9e49c8e68bcfd Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Wed, 14 Feb 2018 15:04:43 +0900 Subject: [PATCH] Backport upstream patch to fix test failure on ruby 25 --- ...expectations-3.7.0-aggregator-ruby25.patch | 33 +++++++++++++++++++ rubygem-rspec-expectations.spec | 14 ++++++-- 2 files changed, 44 insertions(+), 3 deletions(-) create mode 100644 rspec-expectations-3.7.0-aggregator-ruby25.patch diff --git a/rspec-expectations-3.7.0-aggregator-ruby25.patch b/rspec-expectations-3.7.0-aggregator-ruby25.patch new file mode 100644 index 0000000..feeddb0 --- /dev/null +++ b/rspec-expectations-3.7.0-aggregator-ruby25.patch @@ -0,0 +1,33 @@ +From 5999ad46df4782a3136c4bad0c2353daede2cbbd Mon Sep 17 00:00:00 2001 +From: Myron Marston +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/rubygem-rspec-expectations.spec b/rubygem-rspec-expectations.spec index a266df7..70f0732 100644 --- a/rubygem-rspec-expectations.spec +++ b/rubygem-rspec-expectations.spec @@ -3,7 +3,7 @@ %global rpmminorver .%(echo %preminorver | sed -e 's|^\\.\\.*||') %global fullver %{majorver}%{?preminorver} -%global fedorarel 2 +%global fedorarel 3 %global gem_name rspec-expectations @@ -14,7 +14,7 @@ Summary: RSpec expectations (should and matchers) Name: rubygem-%{gem_name} Version: %{majorver} -Release: %{?preminorver:0.}%{fedorarel}%{?preminorver:%{rpmminorver}}%{?dist}.1 +Release: %{?preminorver:0.}%{fedorarel}%{?preminorver:%{rpmminorver}}%{?dist} Group: Development/Languages License: MIT @@ -23,6 +23,9 @@ Source0: https://rubygems.org/gems/%{gem_name}-%{fullver}.gem # %%{SOURCE2} %%{name} %%{version} Source1: rubygem-%{gem_name}-%{version}-full.tar.gz Source2: rspec-related-create-full-tarball.sh +# https://github.com/rspec/rspec-expectations/pull/1037 +# https://github.com/rspec/rspec-expectations/commit/5999ad46df4782a3136c4bad0c2353daede2cbbd.patch +Patch1: rspec-expectations-3.7.0-aggregator-ruby25.patch #BuildRequires: ruby(release) BuildRequires: rubygems-devel @@ -48,6 +51,8 @@ This package contains documentation for %{name}. %prep %setup -q -T -n %{gem_name}-%{version} -b 1 +%patch1 -p1 + gem specification %{SOURCE0} -l --ruby > %{gem_name}.gemspec %build @@ -84,7 +89,10 @@ ruby -rrubygems -Ilib/ -S rspec spec/ %{gem_docdir} %changelog -* Tue Feb 13 2018 Mamoru TASAKA - 3.7.1-2 +* Wed Feb 14 2018 Mamoru TASAKA - 3.7.0-3 +- Backport upstream patch to fix test failure on ruby 25 + +* Tue Feb 13 2018 Mamoru TASAKA - 3.7.0-2 - ruby 2.5 drops -rubygems usage * Fri Feb 09 2018 Fedora Release Engineering - 3.7.0-1.1