Compare commits

..

No commits in common. "rawhide" and "f34" have entirely different histories.

5 changed files with 15 additions and 218 deletions

View file

@ -1,25 +0,0 @@
From 1c20fa80772ca7a1ed0512056ce7cd6a94f8e68d Mon Sep 17 00:00:00 2001
From: Jon Rowe <hello@jonrowe.co.uk>
Date: Fri, 28 Nov 2025 10:59:10 +0000
Subject: [PATCH] Cope with the changes to block source_location in Ruby 4
---
rspec-core/lib/rspec/core/hooks.rb | 2 +-
rspec-core/lib/rspec/core/metadata.rb | 2 +-
rspec-core/lib/rspec/core/shared_example_group.rb | 2 +-
.../lib/rspec/expectations/block_snippet_extractor.rb | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/rspec-expectations/lib/rspec/expectations/block_snippet_extractor.rb b/rspec-expectations/lib/rspec/expectations/block_snippet_extractor.rb
index 5c66ac639..24dbaf88e 100644
--- a/rspec-expectations/lib/rspec/expectations/block_snippet_extractor.rb
+++ b/rspec-expectations/lib/rspec/expectations/block_snippet_extractor.rb
@@ -62,7 +62,7 @@ def file_path
end
def beginning_line_number
- source_location.last
+ source_location[1]
end
def source_location

View file

@ -14,12 +14,10 @@ CURRDIR=$(pwd)
TMPDIRPATH=$(mktemp -d /var/tmp/rspec-tar-XXXXXX)
pushd $TMPDIRPATH
git clone https://github.com/rspec/rspec.git
pushd rspec
# https://github.com/rspec/rspec/issues/220
git reset --hard $1-v$2 || \
git reset --hard rspec-expecations-v$2
git clone https://github.com/rspec/$1.git
pushd $1
git reset --hard v$2
popd
ln -sf $1 $1-$2
tar czf ${CURRDIR}/rubygem-$1-$2-full.tar.gz $1-$2/./

View file

@ -1,66 +0,0 @@
--- rspec-expectations-3.13.4/spec/rspec/matchers/built_in/include_spec.rb 2025-05-15 11:40:49.000000000 +0900
+++ rspec-expectations-3.13.3/spec/rspec/matchers/built_in/include_spec.rb 2024-09-08 16:39:38.000000000 +0900
@@ -109,7 +104,7 @@ RSpec.describe "#include matcher" do
failure_string = if use_string_keys_in_failure_message?
dedent(<<-END)
|Diff:
- |@@ #{one_line_header(3)} @@
+ |@@ -1,3 +1,3 @@
|-:bar => 3,
|-:foo => 1,
|+"bar" => 2,
@@ -137,7 +132,7 @@ RSpec.describe "#include matcher" do
failure_string = if use_string_keys_in_failure_message?
dedent(<<-END)
|Diff:
- |@@ #{one_line_header(3)} @@
+ |@@ -1,3 +1,3 @@
|-(match /FOO/i) => 1,
|-:bar => 3,
|+"bar" => 2,
@@ -146,7 +141,7 @@ RSpec.describe "#include matcher" do
else
dedent(<<-END)
|Diff:
- |@@ #{one_line_header(3)} @@
+ |@@ -1,3 +1,3 @@
|-(match /FOO/i) => 1,
|-:bar => 3,
|+:bar => 2,
--- rspec-expectations-3.13.4/spec/rspec/matchers/built_in/compound_spec.rb 2025-05-15 11:40:49.000000000 +0900
+++ rspec-expectations-3.13.3/spec/rspec/matchers/built_in/compound_spec.rb 2024-09-08 16:39:38.000000000 +0900
@@ -596,14 +595,14 @@ module RSpec::Matchers::BuiltIn
|
| expected "HELLO\\nWORLD" to eq downcase "hola\\nmon"
|Diff for (eq downcase "bonjour\\nmonde"):
- |@@ #{one_line_header(3)} @@
+ |@@ -1,3 +1,3 @@
|-bonjour
|-monde
|+hello
|+world
|
|Diff for (eq downcase "hola\\nmon"):
- |@@ #{one_line_header(3)} @@
+ |@@ -1,3 +1,3 @@
|-hola
|-mon
|+hello
@@ -639,14 +638,14 @@ module RSpec::Matchers::BuiltIn
|
| expected "hello\\nworld" to eq downcase "hola\\nmon"
|Diff for (eq downcase "bonjour\\nmonde"):
- |@@ #{one_line_header(3)} @@
+ |@@ -1,3 +1,3 @@
|-bonjour
|-monde
|+hello
|+world
|
|Diff for (eq downcase "hola\\nmon"):
- |@@ #{one_line_header(3)} @@
+ |@@ -1,3 +1,3 @@
|-hola
|-mon
|+hello

View file

@ -1,47 +1,37 @@
%global majorver 3.13.5
%global majorver 3.10.2
#%%global preminorver .rc6
%global rpmminorver .%(echo %preminorver | sed -e 's|^\\.\\.*||')
%global fullver %{majorver}%{?preminorver}
%global baserelease 4
%global fedorarel 1
%global gem_name rspec-expectations
%bcond_with bootstrap
%global need_bootstrap_set 0
%undefine __brp_mangle_shebangs
Summary: RSpec expectations (should and matchers)
Name: rubygem-%{gem_name}
Version: %{majorver}
Release: %{?preminorver:0.}%{baserelease}%{?preminorver:%{rpmminorver}}%{?dist}
Release: %{?preminorver:0.}%{fedorarel}%{?preminorver:%{rpmminorver}}%{?dist}
# SPDX confirmed
License: MIT
URL: https://rspec.info
URL: http://github.com/rspec/rspec-expectations
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
# Workaround tests wrt diff/lcs diff format
# Partially revert 3.13.3 -> 3.13.4 change
Patch0: rubygem-rspec-expectations-3.13.4-diff_spec-format-revert.patch
# https://github.com/rspec/rspec/pull/282/commits/1c20fa80772ca7a1ed0512056ce7cd6a94f8e68d
# Support ruby4_0 source_location behavior change
Patch1: rspec-expectations-pr282-ruby4_0-source_location.patch
#BuildRequires: ruby(release)
BuildRequires: rubygems-devel
%if %{without bootstrap}
%if 0%{?need_bootstrap_set} < 1
BuildRequires: rubygem(rspec)
BuildRequires: rubygem(rake)
# Some features in expectations needs this
BuildRequires: rubygem(rspec-support) >= 3.9.3
BuildRequires: rubygem(minitest) >= 5
%if ! 0%{?rhel}
BuildRequires: rubygem(aruba)
BuildRequires: rubygem(cucumber)
%endif
BuildRequires: git
%endif
BuildArch: noarch
@ -61,9 +51,6 @@ This package contains documentation for %{name}.
%prep
%setup -q -T -n %{gem_name}-%{version} -b 1
%patch -P0 -p1
%patch -P1 -p2
gem specification %{SOURCE0} -l --ruby > %{gem_name}.gemspec
%build
@ -78,27 +65,10 @@ cp -a .%{gem_dir}/* \
# cleanups
rm -f %{buildroot}%{gem_instdir}/{.document,.yardopts}
%if 0%{?need_bootstrap_set} < 1
%check
%if %{with bootstrap}
# Skip test, exiting
exit 0
%endif
LANG=C.UTF-8
export RUBYLIB=$(pwd)/lib
rspec spec/
%if 0%{?rhel}
# Skip cucumber test
exit 0
%endif
# Fix minitest 6 compatibility
# Behavior changed on: https://github.com/minitest/minitest/commit/2572c78420af73dbe9b202d535a1474405a32173
if ( ruby -e 'require "minitest" ; exit Minitest::VERSION >= "6"' ) ; then
sed -i features/test_frameworks/minitest.feature \
-e 's|9 runs, 10 assertions, 5 failures, 0 errors|9 runs, 11 assertions, 5 failures, 0 errors|'
fi
ruby -rrubygems -Ilib/ -S rspec spec/
# Skip one failing scenario, needs investigating...
sed -i features/built_in_matchers/include.feature -e '\@skip-on-fedora@d'
@ -108,6 +78,7 @@ cucumber \
--tag "not @skip-when-diff-lcs-1.3" \
--tag "not @skip-on-fedora" \
%{nil}
%endif
%files
%dir %{gem_instdir}
@ -125,87 +96,6 @@ cucumber \
%{gem_docdir}
%changelog
* Thu Jan 01 2026 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.5-4
- Fix compatibility for minitest 6
* Tue Dec 02 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.5-3
- Backport upstream patch to support ruby4_0 source_location behavior change
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.13.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Thu May 29 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.5-1
- 3.13.5
* Thu May 15 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.4-1
- 3.13.4
* Sat Jan 18 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.13.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Sun Dec 29 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.3-2
- Backport upstream fix to support ruby34 Hash inspect syntax
* Sun Sep 08 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.3-1
- 3.13.3
* Wed Aug 21 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.2-1
- 3.13.2
* Fri Jul 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.13.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Tue Jun 18 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.1-1
- 3.13.1
* Fri Feb 09 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.0-1
- 3.13.0
* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.12.3-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Aug 06 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.12.3-4
- Remove unneeded conditionals for new MiniTest support
* Fri Aug 4 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.12.3-3
- Support MiniTest 5.19+
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.12.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Fri Apr 21 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.12.3-1
- 3.12.3
* Fri Mar 10 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 3.12.2-2
- Disable unwanted dependencies in RHEL builds
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.12.2-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Tue Jan 17 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.12.2-1
- 3.12.2
* Wed Dec 21 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.12.1-1
- 3.12.1
* Thu Oct 27 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.12.0-1
- 3.12.0
* Thu Sep 15 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.11.1-1
- 3.11.1
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.11.0-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Thu Feb 10 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.11.0-1
- 3.11.0
* Sun Jan 30 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.10.2-2
- BR: rubygem(rake) for check
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.10.2-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Tue Jan 18 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.10.2-1
- 3.10.2
- Execute cucumber test

View file

@ -1,2 +1,2 @@
SHA512 (rspec-expectations-3.13.5.gem) = 4fde5ddae1c723bb3f25c65db61ec959146b1b92a08ddf09d4caf1164d25fd67e4d6d7a73b576fdb48477a3ee54763a8a2d3b93ea573ba6962d65ae80379cd03
SHA512 (rubygem-rspec-expectations-3.13.5-full.tar.gz) = 057bf2ff409248ab4a37bc615806e786cdcf4324bd47bb606459a6ceece07799dc488838d008511bb7d798db6b8dddf2339cb6509c2d78911aa9aa06f50607ea
SHA512 (rspec-expectations-3.10.2.gem) = b01a2fbee344c4094de6e23e78a5533920c05ad60a9a990237d77c4b3376f14e7b3adbc2dea013c539f9ee627ae887e40678a15dee89b4c64c5c8c1c40f826ca
SHA512 (rubygem-rspec-expectations-3.10.2-full.tar.gz) = 06e123bd691fb4627f4ed2c7f1342101a780aefbadc23565a2a62473acf2ad5d79cf4515dd32f20d7a255e37b6c992c30005228eb80605cfc84918e6d6390552