Compare commits

...
Sign in to create a new pull request.

60 commits

Author SHA1 Message Date
Fedora Release Engineering
cbe178e9d7 Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild 2026-07-17 00:15:44 +00:00
1724c532f0 3.13.8 2026-03-01 23:07:52 +09:00
Fedora Release Engineering
71926956c7 Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild 2026-01-17 12:04:39 +00:00
18f1a22546 Backport upstream patch to skip mock for Kernel#inspect on ruby4_0 2025-12-02 16:42:08 +09:00
84c1aaf566 kill bootstrap 2025-11-24 10:26:50 +09:00
a36833c28c 3.13.7 2025-11-24 10:18:24 +09:00
9630dad5df 3.13.6 2025-10-17 16:09:32 +09:00
Fedora Release Engineering
ea7c65f947 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-25 12:45:43 +00:00
e8c6bb2889 3.13.5 2025-05-29 17:33:05 +09:00
c90968f649 3.13.4 2025-05-15 14:50:56 +09:00
Fedora Release Engineering
f61b7f5c69 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-18 23:57:55 +00:00
c8bf8300ed Coordinate with rspec-support change wrt ruby34 hash inspect support 2024-12-29 11:06:39 +09:00
1c042ffadc Backport upstream patch to support ruby34 formatting 2024-11-06 17:09:00 +09:00
3665cf0e86 3.13.2 2024-10-03 19:33:47 +09:00
Fedora Release Engineering
e5b0f4df0b Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-19 19:55:06 +00:00
c7006f9137 3.13.1 2024-05-09 17:23:35 +09:00
898969673b bump release and build 2024-04-18 20:21:50 +09:00
Jun Aruga
ccc4fd302a Remove unused thread_order build dependency. 2024-04-17 18:19:07 +02:00
284f768d3d enable test again 2024-02-09 15:46:11 +09:00
a818ea3193 3.13.0 2024-02-09 15:22:52 +09:00
Fedora Release Engineering
c577550897 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-26 17:26:50 +00:00
Fedora Release Engineering
cf6a009f48 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-21 18:20:39 +00:00
0ea2b628db 3.12.6 2023-07-16 16:14:37 +09:00
Yaakov Selkowitz
2d95f7b052 Fix RHEL build
The aruba dependency is already avoided in BuildRequires, but these
files require aruba.  They cannot be removed though, as the tests
fail if they are absent.
2023-06-02 15:46:05 -04:00
73e82a7350 3.12.5 2023-04-01 16:34:03 +09:00
782f500451 3.12.4 2023-03-14 16:06:16 +09:00
a21d562ba0 rename release macro to make rpmdev-bumprelease work 2023-03-13 10:36:40 +09:00
60348c9329 Disable unwanted dependencies in RHEL builds 2023-03-09 16:28:46 +09:00
Yaakov Selkowitz
1cbc29fbad Fix ELN build
The patches do not apply against the current version, but regardless,
the condition is incorrect for the stated intention.  Also, remove
test dependencies that are unwanted in RHEL/ELN.
2023-03-08 17:05:44 -05:00
b527e5d20d 3.12.3 2023-02-16 18:09:39 +09:00
Fedora Release Engineering
7643aa8e8d Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-20 21:04:53 +00:00
48056bf83c Backport upstream reviewing patch for ruby32 ruby2_keywords treatment change 2022-12-02 11:27:56 +09:00
2ed99dbfd4 On Fedora 37, remove "Display keyword hashes" feature for now
(On Fedora 38, this is effective)
2022-11-04 01:41:53 +09:00
ee6f2a42cb enable test again 2022-10-27 16:03:34 +09:00
7b31c28708 3.12.0 2022-10-27 15:40:18 +09:00
ae84f53d6d 3.11.2 2022-10-26 17:06:42 +09:00
2d7218ef19 Backport upstream patch for ruby32 wrt method reference changes 2022-10-03 22:37:23 +09:00
Fedora Release Engineering
e0d9afcb63 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-23 02:13:27 +00:00
af762d9f91 fix date 2022-04-07 15:26:46 +09:00
a51ae3a4c2 3.11.1 2022-04-07 15:25:05 +09:00
262bfe1247 kill bootstrap 2022-02-10 13:24:19 +09:00
afc127b0f7 3.11.0 2022-02-10 12:32:53 +09:00
21d4900b2e 3.10.3 2022-01-30 12:17:03 +09:00
c4fd1e2c04 simplify gitignore 2022-01-30 12:07:21 +09:00
7b0da07d43 BR: rubygem(rake) for check 2022-01-30 12:01:05 +09:00
f502111f26 Execute cucumber test 2022-01-20 16:25:38 +09:00
Fedora Release Engineering
58604d2c08 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-23 12:37:55 +00:00
4b7a4f3798 3.10.2 2021-02-01 15:47:51 +09:00
Fedora Release Engineering
c7118356f6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-27 16:26:21 +00:00
5ef010f374 3.10.1 2020-12-29 14:57:00 +09:00
a6d77eca9a Enable tests again 2020-12-11 15:23:03 +09:00
19875edad2 3.10.0
Once disable test for bootstrap
2020-12-11 14:43:51 +09:00
Fedora Release Engineering
985e3b5a35 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-29 07:00:36 +00:00
Fedora Release Engineering
85e0472e25 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-30 19:18:03 +00:00
9fb0caf4e9 3.9.1 2020-01-02 22:11:02 +09:00
1d598b1b65 really bump 2019-12-10 16:16:36 +09:00
aad03aa25d enable tests again, really 2019-12-10 16:15:42 +09:00
4d70a744d5 Enable tests again 2019-12-10 15:52:57 +09:00
c651525d92 3.9.0
Once disable test for bootstrap
2019-12-10 14:59:34 +09:00
Fedora Release Engineering
2a6c47bea1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-26 20:03:18 +00:00
7 changed files with 854 additions and 52 deletions

38
.gitignore vendored
View file

@ -1,36 +1,2 @@
/rspec-mocks-2.5.0.gem
/rspec-mocks-2.6.0.rc4.gem
/rspec-mocks-2.6.0.rc6.gem
/rspec-mocks-2.6.0.gem
/rspec-mocks-2.8.0.gem
/rspec-mocks-2.11.3.gem
/rspec-mocks-2.12.1.gem
/rspec-mocks-2.12.2.gem
/rspec-mocks-2.13.0.gem
/rspec-mocks-2.13.1.gem
/rspec-mocks-2.14.3.gem
/rspec-mocks-2.14.4.gem
/rspec-mocks-2.14.5.gem
/rspec-mocks-2.14.6.gem
/rspec-mocks-3.1.3.gem
/rubygem-rspec-mocks-3.1.3-full.tar.gz
/rspec-mocks-3.2.0.gem
/rubygem-rspec-mocks-3.2.0-full.tar.gz
/rspec-mocks-3.2.1.gem
/rubygem-rspec-mocks-3.2.1-full.tar.gz
/rspec-mocks-3.3.2.gem
/rubygem-rspec-mocks-3.3.2-full.tar.gz
/rspec-mocks-3.4.0.gem
/rubygem-rspec-mocks-3.4.0-full.tar.gz
/rspec-mocks-3.4.1.gem
/rubygem-rspec-mocks-3.4.1-full.tar.gz
/rspec-mocks-3.5.0.gem
/rubygem-rspec-mocks-3.5.0-full.tar.gz
/rspec-mocks-3.6.0.gem
/rubygem-rspec-mocks-3.6.0-full.tar.gz
/rspec-mocks-3.7.0.gem
/rubygem-rspec-mocks-3.7.0-full.tar.gz
/rspec-mocks-3.8.0.gem
/rubygem-rspec-mocks-3.8.0-full.tar.gz
/rspec-mocks-3.8.1.gem
/rubygem-rspec-mocks-3.8.1-full.tar.gz
/rspec-mocks-*.gem
/rubygem-rspec-mocks-*-full.tar.gz

View file

@ -0,0 +1,429 @@
From f8b49348d02d0220e20391665f7418f9212dac02 Mon Sep 17 00:00:00 2001
From: Jon Rowe <hello@jonrowe.co.uk>
Date: Fri, 18 Oct 2024 21:39:26 +0100
Subject: [PATCH] Relax specs for Ruby 3.4 hash formatting
---
.../matching_arguments.feature | 6 +-
.../step_definitions/additional_cli_steps.rb | 7 +-
spec/rspec/mocks/argument_matchers_spec.rb | 14 ++--
spec/rspec/mocks/diffing_spec.rb | 84 ++++++++++++-------
spec/rspec/mocks/double_spec.rb | 9 +-
.../mocks/hash_excluding_matcher_spec.rb | 9 +-
.../mocks/hash_including_matcher_spec.rb | 9 +-
spec/rspec/mocks/matchers/receive_spec.rb | 26 ++++--
.../expected_arg_verification_spec.rb | 11 ++-
9 files changed, 124 insertions(+), 51 deletions(-)
diff --git a/features/setting_constraints/matching_arguments.feature b/features/setting_constraints/matching_arguments.feature
index caea74248..cad5cea4c 100644
--- a/features/setting_constraints/matching_arguments.feature
+++ b/features/setting_constraints/matching_arguments.feature
@@ -73,7 +73,7 @@ Feature: Matching arguments
end
"""
When I run `rspec keyword_example_spec.rb`
- Then it should fail with the following output:
+ Then it should fail with the following output, ignoring hash syntax:
| 2 examples, 1 failure |
| |
| Failure/Error: dbl.foo(bar: "incorrect") |
@@ -100,7 +100,7 @@ Feature: Matching arguments
end
"""
When I run `rspec keyword_example_spec.rb`
- Then it should fail with the following output:
+ Then it should fail with the following output, ignoring hash syntax:
| 1 example, 1 failure |
| |
| Failure/Error: dbl.foo({bar: "also incorrect"}) |
@@ -156,7 +156,7 @@ Feature: Matching arguments
end
"""
When I run `rspec rspec_satisfy_spec.rb`
- Then it should fail with the following output:
+ Then it should fail with the following output, ignoring hash syntax:
| 2 examples, 1 failure |
| |
| Failure/Error: dbl.foo({ :a => { :b => { :c => 3 } } }) |
diff --git a/features/step_definitions/additional_cli_steps.rb b/features/step_definitions/additional_cli_steps.rb
index 77f8c0f30..acf1117e0 100644
--- a/features/step_definitions/additional_cli_steps.rb
+++ b/features/step_definitions/additional_cli_steps.rb
@@ -22,8 +22,13 @@
diffable
end
-Then /^it should fail with the following output:$/ do |table|
+Then /^it should fail with the following output(, ignoring hash syntax)?:$/ do |ignore_hash_syntax, table|
step %q(the exit status should be 1)
lines = table.raw.flatten.reject(&:empty?)
+
+ if ignore_hash_syntax && RUBY_VERSION.to_f > 3.3
+ lines = lines.map { |line| line.gsub(/([^\s])=>/, '\1 => ') }
+ end
+
expect(all_output).to match_table(lines)
end
diff --git a/spec/rspec/mocks/argument_matchers_spec.rb b/spec/rspec/mocks/argument_matchers_spec.rb
index eb101a04c..8f31d1786 100644
--- a/spec/rspec/mocks/argument_matchers_spec.rb
+++ b/spec/rspec/mocks/argument_matchers_spec.rb
@@ -256,7 +256,7 @@ module Mocks
expect(a_double).to receive(:random_call).with(hash_including(:a => 1))
expect {
a_double.random_call(:a => 2)
- }.to fail_including "expected: (hash_including(:a=>1))"
+ }.to fail_including "expected: (hash_including(#{hash_syntax(:a => 1)}))"
end
end
@@ -270,7 +270,7 @@ module Mocks
expect(a_double).to receive(:random_call).with(hash_excluding(:a => 1))
expect {
a_double.random_call(:a => 1)
- }.to fail_including "expected: (hash_not_including(:a=>1))"
+ }.to fail_including "expected: (hash_not_including(#{hash_syntax(:a => 1)}))"
end
end
@@ -431,7 +431,7 @@ def ==(other)
expect(a_double).to receive(:random_call).with(:a => "a", :b => "b")
expect do
a_double.random_call(opts)
- end.to fail_with(/expected: \(\{(:a=>\"a\", :b=>\"b\"|:b=>\"b\", :a=>\"a\")\}\)/)
+ end.to fail_with(/expected: \(\{(:a\s*=>\s*\"a\", :b\s*=>\s*\"b\"|:b\s*=>\s*\"b\", :a\s*=>\s*\"a\")\}\)/)
end
else
it "matches against a hash submitted as a positional argument and received as keyword arguments in Ruby 2.7 or before" do
@@ -445,14 +445,14 @@ def ==(other)
expect(a_double).to receive(:random_call).with(:a => "b", :c => "d")
expect do
a_double.random_call(:a => "b", :c => "e")
- end.to fail_with(/expected: \(\{(:a=>\"b\", :c=>\"d\"|:c=>\"d\", :a=>\"b\")\}\)/)
+ end.to fail_with(/expected: \(\{(:a\s*=>\s*\"b\", :c\s*=>\s*\"d\"|:c\s*=>\s*\"d\", :a\s*=>\s*\"b\")\}\)/)
end
it "fails for a hash w/ wrong keys", :reset => true do
expect(a_double).to receive(:random_call).with(:a => "b", :c => "d")
expect do
a_double.random_call("a" => "b", "c" => "d")
- end.to fail_with(/expected: \(\{(:a=>\"b\", :c=>\"d\"|:c=>\"d\", :a=>\"b\")\}\)/)
+ end.to fail_with(/expected: \(\{(:a\s*=>\s*\"b\", :c\s*=>\s*\"d\"|:c\s*=>\s*\"d\", :a\s*=>\s*\"b\")\}\)/)
end
it "matches a class against itself" do
@@ -502,6 +502,10 @@ def ==(other)
expect { a_double.msg 3 }.to fail_including "expected: (my_thing)"
end
end
+
+ def hash_syntax(hash)
+ hash.inspect.gsub(/\{(.*)\}/, '\1')
+ end
end
end
end
diff --git a/spec/rspec/mocks/diffing_spec.rb b/spec/rspec/mocks/diffing_spec.rb
index e40fa55b6..8be6510da 100644
--- a/spec/rspec/mocks/diffing_spec.rb
+++ b/spec/rspec/mocks/diffing_spec.rb
@@ -100,15 +100,18 @@
if RSpec::Support::RubyFeatures.distincts_kw_args_from_positional_hash?
eval <<-'RUBY', nil, __FILE__, __LINE__ + 1
it "prints a diff when keyword argument were expected but got an option hash (using splat)" do
+ message =
+ "#<Double \"double\"> received :foo with unexpected arguments\n" \
+ " expected: ({:baz=>:quz, :foo=>:bar}) (keyword arguments)\n" \
+ " got: ({:baz=>:quz, :foo=>:bar}) (options hash)"
+
+ message = message.gsub('=>', ' => ') if RUBY_VERSION.to_f > 3.3
+
with_unfulfilled_double do |d|
expect(d).to receive(:foo).with(**expected_hash)
expect {
d.foo(expected_hash)
- }.to fail_with(
- "#<Double \"double\"> received :foo with unexpected arguments\n" \
- " expected: ({:baz=>:quz, :foo=>:bar}) (keyword arguments)\n" \
- " got: ({:baz=>:quz, :foo=>:bar}) (options hash)"
- )
+ }.to fail_with(message)
end
end
RUBY
@@ -117,14 +120,18 @@
it "prints a diff when keyword argument were expected but got an option hash (literal)" do
with_unfulfilled_double do |d|
expect(d).to receive(:foo).with(:positional, keyword: 1)
- expect {
- options = { keyword: 1 }
- d.foo(:positional, options)
- }.to fail_with(
+
+ message =
"#<Double \"double\"> received :foo with unexpected arguments\n" \
" expected: (:positional, {:keyword=>1}) (keyword arguments)\n" \
" got: (:positional, {:keyword=>1}) (options hash)"
- )
+
+ message = message.gsub('=>',' => ') if RUBY_VERSION.to_f > 3.3
+
+ expect {
+ options = { keyword: 1 }
+ d.foo(:positional, options)
+ }.to fail_with(message)
end
end
RUBY
@@ -139,10 +146,7 @@
expect(d).to receive(:foo).with(expected_input, one: 1)
- expect {
- options = { one: 1 }
- d.foo(actual_input, options)
- }.to fail_with(
+ message =
"#<Double \"double\"> received :foo with unexpected arguments\n" \
" expected: (#{expected_input.inspect}, {:one=>1}) (keyword arguments)\n" \
" got: (#{actual_input.inspect}, {:one=>1}) (options hash)\n" \
@@ -150,7 +154,13 @@
"@@ -1 +1 @@\n" \
"-[#{expected_input.inspect}, {:one=>1}]\n" \
"+[#{actual_input.inspect}, {:one=>1}]\n"
- )
+
+ message = message.gsub('=>',' => ') if RUBY_VERSION.to_f > 3.3
+
+ expect {
+ options = { one: 1 }
+ d.foo(actual_input, options)
+ }.to fail_with(message)
end
end
RUBY
@@ -172,28 +182,34 @@
if RSpec::Support::RubyFeatures.distincts_kw_args_from_positional_hash?
eval <<-'RUBY', nil, __FILE__, __LINE__ + 1
it "prints a diff when keyword argument were expected but got an option hash (using splat)" do
- expect(d).to receive(:foo).with(:positional, **expected_hash)
- expect {
- d.foo(:positional, expected_hash)
- }.to fail_with(
+ message =
"#{d.inspect} received :foo with unexpected arguments\n" \
" expected: (:positional, {:baz=>:quz, :foo=>:bar}) (keyword arguments)\n" \
" got: (:positional, {:baz=>:quz, :foo=>:bar}) (options hash)"
- )
+
+ message.gsub!('=>',' => ') if RUBY_VERSION.to_f > 3.3
+
+ expect(d).to receive(:foo).with(:positional, **expected_hash)
+ expect {
+ d.foo(:positional, expected_hash)
+ }.to fail_with(message)
end
RUBY
eval <<-'RUBY', nil, __FILE__, __LINE__ + 1
it "prints a diff when keyword argument were expected but got an option hash (literal)" do
+ message =
+ "#{d.inspect} received :foo with unexpected arguments\n" \
+ " expected: (:positional, {:keyword=>1}) (keyword arguments)\n" \
+ " got: (:positional, {:keyword=>1}) (options hash)"
+
+ message.gsub!('=>',' => ') if RUBY_VERSION.to_f > 3.3
+
expect(d).to receive(:foo).with(:positional, keyword: 1)
expect {
options = { keyword: 1 }
d.foo(:positional, options)
- }.to fail_with(
- "#{d.inspect} received :foo with unexpected arguments\n" \
- " expected: (:positional, {:keyword=>1}) (keyword arguments)\n" \
- " got: (:positional, {:keyword=>1}) (options hash)"
- )
+ }.to fail_with(message)
end
RUBY
@@ -206,10 +222,7 @@
expect(d).to receive(:foo).with(expected_input, one: 1)
- expect {
- options = { one: 1 }
- d.foo(actual_input, options)
- }.to fail_with(
+ message =
"#{d.inspect} received :foo with unexpected arguments\n" \
" expected: (#{expected_input.inspect}, {:one=>1}) (keyword arguments)\n" \
" got: (#{actual_input.inspect}, {:one=>1}) (options hash)\n" \
@@ -217,7 +230,13 @@
"@@ -1 +1 @@\n" \
"-[#{expected_input.inspect}, {:one=>1}]\n" \
"+[#{actual_input.inspect}, {:one=>1}]\n"
- )
+
+ message = message.gsub('=>', ' => ') if RUBY_VERSION.to_f > 3.3
+
+ expect {
+ options = { one: 1 }
+ d.foo(actual_input, options)
+ }.to fail_with(message)
end
RUBY
end
@@ -232,6 +251,11 @@
def hash_regex_inspect(hash)
"\\{(#{hash.map { |key, value| "#{key.inspect}=>#{value.inspect}.*" }.join "|"}){#{hash.size}}\\}"
end
+ elsif RUBY_VERSION.to_f > 3.3
+ # Ruby head / 3.4 is changing the hash syntax inspect, but we use PP when diffing which just spaces out hashrockets
+ def hash_regex_inspect(hash)
+ Regexp.escape("{#{hash.map { |key, value| "#{key.inspect} => #{value.inspect}"}.join(", ")}}")
+ end
else
def hash_regex_inspect(hash)
Regexp.escape(hash.inspect)
diff --git a/spec/rspec/mocks/double_spec.rb b/spec/rspec/mocks/double_spec.rb
index d5dff63b3..ac65c590f 100644
--- a/spec/rspec/mocks/double_spec.rb
+++ b/spec/rspec/mocks/double_spec.rb
@@ -526,10 +526,17 @@ def initialize(amount, units)
if kw_args_supported?
it 'fails when calling yielding method with invalid kw args' do
+ message =
+ if RUBY_VERSION.to_f > 3.3
+ '#<Double "test double"> yielded |{:x => 1, :y => 2}| to block with optional keyword args (:x)'
+ else
+ '#<Double "test double"> yielded |{:x=>1, :y=>2}| to block with optional keyword args (:x)'
+ end
+
expect(@double).to receive(:yield_back).and_yield(:x => 1, :y => 2)
expect {
eval("@double.yield_back { |x: 1| }")
- }.to fail_with '#<Double "test double"> yielded |{:x=>1, :y=>2}| to block with optional keyword args (:x)'
+ }.to fail_with message
end
end
diff --git a/spec/rspec/mocks/hash_excluding_matcher_spec.rb b/spec/rspec/mocks/hash_excluding_matcher_spec.rb
index fc0faed05..3fca99823 100644
--- a/spec/rspec/mocks/hash_excluding_matcher_spec.rb
+++ b/spec/rspec/mocks/hash_excluding_matcher_spec.rb
@@ -4,7 +4,14 @@ module ArgumentMatchers
RSpec.describe HashExcludingMatcher do
it "describes itself properly" do
- expect(HashExcludingMatcher.new(:a => 5).description).to eq "hash_not_including(:a=>5)"
+ message =
+ if RUBY_VERSION.to_f > 3.3
+ "hash_not_including(a: 5)"
+ else
+ "hash_not_including(:a=>5)"
+ end
+
+ expect(HashExcludingMatcher.new(:a => 5).description).to eq message
end
describe "passing" do
diff --git a/spec/rspec/mocks/hash_including_matcher_spec.rb b/spec/rspec/mocks/hash_including_matcher_spec.rb
index ad5e8587a..057aec55d 100644
--- a/spec/rspec/mocks/hash_including_matcher_spec.rb
+++ b/spec/rspec/mocks/hash_including_matcher_spec.rb
@@ -4,7 +4,14 @@ module ArgumentMatchers
RSpec.describe HashIncludingMatcher do
it "describes itself properly" do
- expect(HashIncludingMatcher.new(:a => 1).description).to eq "hash_including(:a=>1)"
+ message =
+ if RUBY_VERSION.to_f > 3.3
+ "hash_including(a: 1)"
+ else
+ "hash_including(:a=>1)"
+ end
+
+ expect(HashIncludingMatcher.new(:a => 1).description).to eq message
end
it "describes passed matchers" do
diff --git a/spec/rspec/mocks/matchers/receive_spec.rb b/spec/rspec/mocks/matchers/receive_spec.rb
index 1b71dd58f..abf266935 100644
--- a/spec/rspec/mocks/matchers/receive_spec.rb
+++ b/spec/rspec/mocks/matchers/receive_spec.rb
@@ -130,7 +130,7 @@ def kw_args_method(a:, b:); end
dbl.kw_args_method(a: 1, b: 2)
end
- if RUBY_VERSION >= '3.0'
+ if RUBY_VERSION.to_f >= 3.0
it "fails to expect to receive hash with keyword args" do
expect {
dbl = instance_double(TestObject)
@@ -138,9 +138,16 @@ def kw_args_method(a:, b:); end
dbl.kw_args_method({a: 1, b: 2})
}.to fail_with do |failure|
reset_all
- expect(failure.message)
- .to include('expected: ({:a=>1, :b=>2}) (keyword arguments)')
- .and include('got: ({:a=>1, :b=>2}) (options hash)')
+
+ if RUBY_VERSION.to_f > 3.3
+ expect(failure.message)
+ .to include('expected: ({:a => 1, :b => 2}) (keyword arguments)')
+ .and include('got: ({:a => 1, :b => 2}) (options hash)')
+ else
+ expect(failure.message)
+ .to include('expected: ({:a=>1, :b=>2}) (keyword arguments)')
+ .and include('got: ({:a=>1, :b=>2}) (options hash)')
+ end
end
end
else
@@ -505,9 +512,14 @@ def receiver.method_missing(*); end # a poor man's stub...
receiver.foo(1, :bar => 2)
receiver.foo(1, :bar => 3)
- expect { verify_all }.to(
- raise_error(/received: 2 times with arguments: \(anything, hash_including\(:bar=>"anything"\)\)$/)
- )
+ message =
+ if RUBY_VERSION.to_f > 3.3
+ /received: 2 times with arguments: \(anything, hash_including\(bar: "anything"\)\)$/
+ else
+ /received: 2 times with arguments: \(anything, hash_including\(:bar=>"anything"\)\)$/
+ end
+
+ expect { verify_all }.to raise_error(message)
end
end
end
diff --git a/spec/rspec/mocks/verifying_doubles/expected_arg_verification_spec.rb b/spec/rspec/mocks/verifying_doubles/expected_arg_verification_spec.rb
index d39995341..1860afa1a 100644
--- a/spec/rspec/mocks/verifying_doubles/expected_arg_verification_spec.rb
+++ b/spec/rspec/mocks/verifying_doubles/expected_arg_verification_spec.rb
@@ -130,12 +130,19 @@ module Mocks
dbl.kw_args_method(1, :required_arg => 2, :optional_arg => 3)
end
- if RUBY_VERSION >= "3"
+ if RUBY_VERSION.to_f >= 3.0
it "fails to match against a hash submitted as a positional argument and received as keyword arguments in Ruby 3.0 or later", :reset => true do
+ messages =
+ if RUBY_VERSION.to_f > 3.3
+ ["expected: (1, {:optional_arg => 3, :required_arg => 2}) (keyword arguments)", "got: (1, {:optional_arg => 3, :required_arg => 2}) (options hash)"]
+ else
+ ["expected: (1, {:optional_arg=>3, :required_arg=>2}) (keyword arguments)", "got: (1, {:optional_arg=>3, :required_arg=>2}) (options hash)"]
+ end
+
expect(dbl).to receive(:kw_args_method).with(1, :required_arg => 2, :optional_arg => 3)
expect do
dbl.kw_args_method(1, {:required_arg => 2, :optional_arg => 3})
- end.to fail_with(a_string_including("expected: (1, {:optional_arg=>3, :required_arg=>2}) (keyword arguments)", "got: (1, {:optional_arg=>3, :required_arg=>2}) (options hash)"))
+ end.to fail_with(a_string_including(*messages))
end
else
it "matches against a hash submitted as a positional argument and received as keyword arguments in Ruby 2.7 or before" do

View file

@ -0,0 +1,190 @@
From 9310b4b72e205c6352c4b30015a3b8f3d2fb02e8 Mon Sep 17 00:00:00 2001
From: Jon Rowe <hello@jonrowe.co.uk>
Date: Thu, 26 Dec 2024 11:06:37 +0000
Subject: [PATCH 1/2] Format hashes in new {a: :b} format on Ruby 3.4
---
.../step_definitions/additional_cli_steps.rb | 2 +-
.../rspec/mocks/argument_matchers_spec.rb | 24 ++++++++++++++++---
rspec-mocks/spec/rspec/mocks/diffing_spec.rb | 17 +++++--------
rspec-mocks/spec/rspec/mocks/double_spec.rb | 2 +-
.../spec/rspec/mocks/matchers/receive_spec.rb | 4 ++--
.../expected_arg_verification_spec.rb | 2 +-
.../lib/rspec/support/object_formatter.rb | 2 ++
.../spec/rspec/support/differ_spec.rb | 2 +-
.../rspec/support/object_formatter_spec.rb | 22 +++++++++++++++--
9 files changed, 55 insertions(+), 22 deletions(-)
diff --git a/rspec-mocks/features/step_definitions/additional_cli_steps.rb b/rspec-mocks/features/step_definitions/additional_cli_steps.rb
index acf1117e0..9ccfac5b1 100644
--- a/rspec-mocks/features/step_definitions/additional_cli_steps.rb
+++ b/rspec-mocks/features/step_definitions/additional_cli_steps.rb
@@ -27,7 +27,7 @@
lines = table.raw.flatten.reject(&:empty?)
if ignore_hash_syntax && RUBY_VERSION.to_f > 3.3
- lines = lines.map { |line| line.gsub(/([^\s])=>/, '\1 => ') }
+ lines = lines.map { |line| line.gsub(/:(\w+)=>/, '\1: ') }
end
expect(all_output).to match_table(lines)
diff --git a/rspec-mocks/spec/rspec/mocks/argument_matchers_spec.rb b/rspec-mocks/spec/rspec/mocks/argument_matchers_spec.rb
index 8f31d1786..4bffa727d 100644
--- a/rspec-mocks/spec/rspec/mocks/argument_matchers_spec.rb
+++ b/rspec-mocks/spec/rspec/mocks/argument_matchers_spec.rb
@@ -431,7 +431,13 @@ def ==(other)
expect(a_double).to receive(:random_call).with(:a => "a", :b => "b")
expect do
a_double.random_call(opts)
- end.to fail_with(/expected: \(\{(:a\s*=>\s*\"a\", :b\s*=>\s*\"b\"|:b\s*=>\s*\"b\", :a\s*=>\s*\"a\")\}\)/)
+ end.to fail_with(
+ if RUBY_VERSION.to_f > 3.3
+ /expected: \(\{a: \"a\", b: \"b\"\}\)/
+ else
+ /expected: \(\{(:a\s*=>\s*\"a\", :b\s*=>\s*\"b\"|:b\s*=>\s*\"b\", :a\s*=>\s*\"a\")\}\)/
+ end
+ )
end
else
it "matches against a hash submitted as a positional argument and received as keyword arguments in Ruby 2.7 or before" do
@@ -445,14 +451,26 @@ def ==(other)
expect(a_double).to receive(:random_call).with(:a => "b", :c => "d")
expect do
a_double.random_call(:a => "b", :c => "e")
- end.to fail_with(/expected: \(\{(:a\s*=>\s*\"b\", :c\s*=>\s*\"d\"|:c\s*=>\s*\"d\", :a\s*=>\s*\"b\")\}\)/)
+ end.to fail_with(
+ if RUBY_VERSION.to_f > 3.3
+ /expected: \(\{a: \"b\", c: \"d\"\}\)/
+ else
+ /expected: \(\{(:a\s*=>\s*\"b\", :c\s*=>\s*\"d\"|:c\s*=>\s*\"d\", :a\s*=>\s*\"b\")\}\)/
+ end
+ )
end
it "fails for a hash w/ wrong keys", :reset => true do
expect(a_double).to receive(:random_call).with(:a => "b", :c => "d")
expect do
a_double.random_call("a" => "b", "c" => "d")
- end.to fail_with(/expected: \(\{(:a\s*=>\s*\"b\", :c\s*=>\s*\"d\"|:c\s*=>\s*\"d\", :a\s*=>\s*\"b\")\}\)/)
+ end.to fail_with(
+ if RUBY_VERSION.to_f > 3.3
+ /expected: \(\{a: \"b\", c: \"d\"\}\)/
+ else
+ /expected: \(\{(:a\s*=>\s*\"b\", :c\s*=>\s*\"d\"|:c\s*=>\s*\"d\", :a\s*=>\s*\"b\")\}\)/
+ end
+ )
end
it "matches a class against itself" do
diff --git a/rspec-mocks/spec/rspec/mocks/diffing_spec.rb b/rspec-mocks/spec/rspec/mocks/diffing_spec.rb
index f071cc1ec..b4492b4e8 100644
--- a/rspec-mocks/spec/rspec/mocks/diffing_spec.rb
+++ b/rspec-mocks/spec/rspec/mocks/diffing_spec.rb
@@ -105,7 +105,7 @@
" expected: ({:baz=>:quz, :foo=>:bar}) (keyword arguments)\n" \
" got: ({:baz=>:quz, :foo=>:bar}) (options hash)"
- message = message.gsub('=>', ' => ') if RUBY_VERSION.to_f > 3.3
+ message = message.gsub(/:(\w+)=>/, '\1: ') if RUBY_VERSION.to_f > 3.3
with_unfulfilled_double do |d|
expect(d).to receive(:foo).with(**expected_hash)
@@ -126,7 +126,7 @@
" expected: (:positional, {:keyword=>1}) (keyword arguments)\n" \
" got: (:positional, {:keyword=>1}) (options hash)"
- message = message.gsub('=>',' => ') if RUBY_VERSION.to_f > 3.3
+ message = message.gsub(/:(\w+)=>/, '\1: ') if RUBY_VERSION.to_f > 3.3
expect {
options = { keyword: 1 }
@@ -155,7 +155,7 @@
"-[#{expected_input.inspect}, {:one=>1}]\n" \
"+[#{actual_input.inspect}, {:one=>1}]\n"
- message = message.gsub('=>',' => ') if RUBY_VERSION.to_f > 3.3
+ message = message.gsub(/:(\w+)=>/, '\1: ') if RUBY_VERSION.to_f > 3.3
expect {
options = { one: 1 }
@@ -187,7 +187,7 @@
" expected: (:positional, {:baz=>:quz, :foo=>:bar}) (keyword arguments)\n" \
" got: (:positional, {:baz=>:quz, :foo=>:bar}) (options hash)"
- message.gsub!('=>',' => ') if RUBY_VERSION.to_f > 3.3
+ message = message.gsub(/:(\w+)=>/, '\1: ') if RUBY_VERSION.to_f > 3.3
expect(d).to receive(:foo).with(:positional, **expected_hash)
expect {
@@ -203,7 +203,7 @@
" expected: (:positional, {:keyword=>1}) (keyword arguments)\n" \
" got: (:positional, {:keyword=>1}) (options hash)"
- message.gsub!('=>',' => ') if RUBY_VERSION.to_f > 3.3
+ message = message.gsub(/:(\w+)=>/, '\1: ') if RUBY_VERSION.to_f > 3.3
expect(d).to receive(:foo).with(:positional, keyword: 1)
expect {
@@ -231,7 +231,7 @@
"-[#{expected_input.inspect}, {:one=>1}]\n" \
"+[#{actual_input.inspect}, {:one=>1}]\n"
- message = message.gsub('=>', ' => ') if RUBY_VERSION.to_f > 3.3
+ message = message.gsub(/:(\w+)=>/, '\1: ') if RUBY_VERSION.to_f > 3.3
expect {
options = { one: 1 }
@@ -251,11 +251,6 @@
def hash_regex_inspect(hash)
"\\{(#{hash.map { |key, value| "#{key.inspect}=>#{value.inspect}.*" }.join "|"}){#{hash.size}}\\}"
end
- elsif RUBY_VERSION.to_f > 3.3
- # Ruby head / 3.4 is changing the hash syntax inspect, but we use PP when diffing which just spaces out hashrockets
- def hash_regex_inspect(hash)
- Regexp.escape("{#{hash.map { |key, value| "#{key.inspect} => #{value.inspect}"}.join(", ")}}")
- end
else
def hash_regex_inspect(hash)
Regexp.escape(hash.inspect)
diff --git a/rspec-mocks/spec/rspec/mocks/double_spec.rb b/rspec-mocks/spec/rspec/mocks/double_spec.rb
index ac65c590f..9738edfa7 100644
--- a/rspec-mocks/spec/rspec/mocks/double_spec.rb
+++ b/rspec-mocks/spec/rspec/mocks/double_spec.rb
@@ -528,7 +528,7 @@ def initialize(amount, units)
it 'fails when calling yielding method with invalid kw args' do
message =
if RUBY_VERSION.to_f > 3.3
- '#<Double "test double"> yielded |{:x => 1, :y => 2}| to block with optional keyword args (:x)'
+ '#<Double "test double"> yielded |{x: 1, y: 2}| to block with optional keyword args (:x)'
else
'#<Double "test double"> yielded |{:x=>1, :y=>2}| to block with optional keyword args (:x)'
end
diff --git a/rspec-mocks/spec/rspec/mocks/matchers/receive_spec.rb b/rspec-mocks/spec/rspec/mocks/matchers/receive_spec.rb
index 3e71bd289..307c86a6f 100644
--- a/rspec-mocks/spec/rspec/mocks/matchers/receive_spec.rb
+++ b/rspec-mocks/spec/rspec/mocks/matchers/receive_spec.rb
@@ -141,8 +141,8 @@ def kw_args_method(a:, b:); end
if RUBY_VERSION.to_f > 3.3
expect(failure.message)
- .to include('expected: ({:a => 1, :b => 2}) (keyword arguments)')
- .and include('got: ({:a => 1, :b => 2}) (options hash)')
+ .to include('expected: ({a: 1, b: 2}) (keyword arguments)')
+ .and include('got: ({a: 1, b: 2}) (options hash)')
else
expect(failure.message)
.to include('expected: ({:a=>1, :b=>2}) (keyword arguments)')
diff --git a/rspec-mocks/spec/rspec/mocks/verifying_doubles/expected_arg_verification_spec.rb b/rspec-mocks/spec/rspec/mocks/verifying_doubles/expected_arg_verification_spec.rb
index a3f3d2034..48646a1e6 100644
--- a/rspec-mocks/spec/rspec/mocks/verifying_doubles/expected_arg_verification_spec.rb
+++ b/rspec-mocks/spec/rspec/mocks/verifying_doubles/expected_arg_verification_spec.rb
@@ -134,7 +134,7 @@ module Mocks
it "fails to match against a hash submitted as a positional argument and received as keyword arguments in Ruby 3.0 or later", :reset => true do
messages =
if RUBY_VERSION.to_f > 3.3
- ["expected: (1, {:optional_arg => 3, :required_arg => 2}) (keyword arguments)", "got: (1, {:optional_arg => 3, :required_arg => 2}) (options hash)"]
+ ["expected: (1, {optional_arg: 3, required_arg: 2}) (keyword arguments)", "got: (1, {optional_arg: 3, required_arg: 2}) (options hash)"]
else
["expected: (1, {:optional_arg=>3, :required_arg=>2}) (keyword arguments)", "got: (1, {:optional_arg=>3, :required_arg=>2}) (options hash)"]
end

View file

@ -0,0 +1,35 @@
From 939c4799993b7ff7e524fac701ae6490772ca6de Mon Sep 17 00:00:00 2001
From: Jon Rowe <hello@jonrowe.co.uk>
Date: Mon, 1 Dec 2025 14:08:25 +0000
Subject: [PATCH] Skip mock for calls to `:respond_to?` from `Kernel#inspect`
---
rspec-mocks/lib/rspec/mocks/method_double.rb | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/rspec-mocks/lib/rspec/mocks/method_double.rb b/rspec-mocks/lib/rspec/mocks/method_double.rb
index e2edb1e21..3276c49a5 100644
--- a/rspec-mocks/lib/rspec/mocks/method_double.rb
+++ b/rspec-mocks/lib/rspec/mocks/method_double.rb
@@ -68,8 +68,19 @@ def define_proxy_method
save_original_implementation_callable!
definition_target.class_exec(self, method_name, @original_visibility || visibility) do |method_double, method_name, visibility|
- define_method(method_name) do |*args, &block|
- method_double.proxy_method_invoked(self, *args, &block)
+ if RUBY_VERSION.to_f > 3 && method_name == :respond_to?
+ define_method(method_name) do |*args, &block|
+ # This is a work around for a respond_to? check within kernel_inspect
+ if caller_locations[0].label == "Kernel#inspect"
+ super(*args, &block)
+ else
+ method_double.proxy_method_invoked(self, *args, &block)
+ end
+ end
+ else
+ define_method(method_name) do |*args, &block|
+ method_double.proxy_method_invoked(self, *args, &block)
+ end
end
# This can't be `if respond_to?(:ruby2_keywords, true)`,
# see https://github.com/rspec/rspec-mocks/pull/1385#issuecomment-755340298

View file

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

View file

@ -1,33 +1,43 @@
%global majorver 3.8.1
%global majorver 3.13.8
#%%global preminorver .rc6
%global rpmminorver .%(echo %preminorver | sed -e 's|^\\.\\.*||')
%global fullver %{majorver}%{?preminorver}
%global fedorarel 1
%global baserelease 2
%global gem_name rspec-mocks
%global need_bootstrap_set 0
%bcond_with bootstrap
%undefine __brp_mangle_shebangs
Summary: RSpec's 'test double' framework (mocks and stubs)
Name: rubygem-%{gem_name}
Version: %{majorver}
Release: %{?preminorver:0.}%{fedorarel}%{?preminorver:%{rpmminorver}}%{?dist}
Release: %{?preminorver:0.}%{baserelease}%{?preminorver:%{rpmminorver}}%{?dist}
# SPDX confirmed
License: MIT
URL: http://github.com/rspec/rspec-mocks
URL: https://rspec.info
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/pull/282/commits/939c4799993b7ff7e524fac701ae6490772ca6de
# Skip mock for ruby4_0 Kernel#inspect
Patch0: rspec-mocks-pr282-skip-mock-for-ruby4_0-inspect.patch
#BuildRequires: ruby(release)
BuildRequires: rubygems-devel
%if 0%{?need_bootstrap_set} < 1
%if %{without bootstrap}
# rspec
BuildRequires: rubygem(rspec)
BuildRequires: rubygem(thread_order)
BuildRequires: rubygem(rake)
%if %{undefined rhel}
# cucumber
BuildRequires: rubygem(aruba)
BuildRequires: rubygem(cucumber)
BuildRequires: rubygem(minitest)
%endif
BuildRequires: git
%endif
BuildArch: noarch
@ -48,6 +58,11 @@ This package contains documentation for %{name}.
gem unpack %{SOURCE0}
%setup -q -D -T -n %{gem_name}-%{version} -b 1
%patch -P0 -p2
# Cucumber 7 syntax change
sed -i cucumber.yml -e "s|~@wip|not @wip|"
sed -i features/support/disallow_certain_apis.rb -e "s|~@allow-old-syntax|not @allow-old-syntax|"
gem specification %{SOURCE0} -l --ruby > %{gem_name}.gemspec
@ -63,12 +78,33 @@ cp -a .%{gem_dir}/* \
# cleanups
rm -f %{buildroot}%{gem_instdir}/{.document,.yardopts}
%if 0%{?need_bootstrap_set} < 1
%check
%if %{with bootstrap}
# Don't do actual check
exit 0
%endif
%if %{defined rhel}
# avoid aruba dep on RHEL, but tests fail if files are removed entirely
echo -n > spec/integration/rails_support_spec.rb
echo -n > spec/support/aruba.rb
%else
# Don't call bundler
sed -i spec/integration/rails_support_spec.rb \
-e 's|bundle exec rspec|rspec|'
%endif
# library_wide_checks.rb needs UTF-8
LANG=C.UTF-8
ruby -rrubygems -Ilib/ -S rspec spec/
export RUBYLIB=$(pwd)/lib
rspec spec/
%if 0%{?rhel}
# Don't do cucumber test
exit 0
%endif
export CUCUMBER_PUBLISH_QUIET=true
cucumber
%files
%dir %{gem_instdir}
@ -86,6 +122,153 @@ ruby -rrubygems -Ilib/ -S rspec spec/
%{gem_docdir}
%changelog
* Fri Jul 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 3.13.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
* Sun Mar 01 2026 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.8-1
- 3.13.8
* Sat Jan 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 3.13.7-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Tue Dec 02 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.7-2
- Backport upstream patch to skip mock for Kernel#inspect on ruby4_0
* Mon Nov 24 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.7-1
- 3.13.7
* Fri Oct 17 2025 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.6-1
- 3.13.6
* 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.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Sun Dec 29 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.2-3
- Coordinate with rspec-support change wrt ruby34 hash inspect support
* Wed Nov 06 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.2-2
- Backport upstream patch to support ruby34 formatting
* Thu Oct 03 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
* Thu May 09 2024 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.13.1-1
- 3.13.1
* Thu Apr 18 2024 Jun Aruga <jaruga@redhat.com> - 3.13.0-2
- Remove unused thread_order build dependency
* 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.6-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.12.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Sun Jul 16 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.12.6-1
- 3.12.6
* Sat Apr 1 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.12.5-1
- 3.12.5
* Tue Mar 14 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.12.4-1
- 3.12.4
* Thu Mar 09 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 3.12.3-2
- Disable unwanted dependencies in RHEL builds
* Thu Feb 16 2023 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.12.3-1
- 3.12.3
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.12.0-3.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Fri Dec 2 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.12.0-3
- Backport upstream reviewing patch for ruby32 ruby2_keywords treatment change
* Thu Nov 3 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.12.0-2
- On Fedora 37, remove "Display keyword hashes" feature for now
(On Fedora 38, this is effective)
* Thu Oct 27 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.12.0-1
- 3.12.0
* Wed Oct 26 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.11.2-1
- 3.11.2
* Mon Oct 3 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.11.1-2
- Backport upstream patch for ruby32 wrt method reference changes
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.11.1-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Thu Apr 7 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.11.1-1
- 3.11.1
* 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.3-1
- 3.10.3
* Sun Jan 30 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.10.2-3
- BR: rubygem(rake) for check
* Thu Jan 20 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.10.2-2
- Execute cucumber test
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.10.2-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Mon Feb 1 2021 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.10.2-1
- 3.10.2
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.10.1-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Dec 29 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.10.1-1
- 3.10.1
* Fri Dec 11 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.10.0-1
- Enable tests again
* Fri Dec 11 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.10.0-0.1
- 3.10.0
- Once disable test for bootstrap
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.9.1-1.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.9.1-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Thu Jan 2 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.9.1-1
- 3.9.1
* Tue Dec 10 2019 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.9.0-2
- Enable tests again
* Tue Dec 10 2019 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.9.0-0.1
- 3.9.0
- Once disable test for bootstrap
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.8.1-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Jun 21 2019 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.8.1-1
- 3.8.1

View file

@ -1,2 +1,2 @@
SHA512 (rspec-mocks-3.8.1.gem) = d02dd2d1ee51e020b5e9eddee17b0e3949256f17f30042b7dafbd735fc32c5f9cfd7769bc95df95211cd35fc2b8cc1c309eb180434b870f239bec23afcba2e2c
SHA512 (rubygem-rspec-mocks-3.8.1-full.tar.gz) = 9191187e1871624d01cf1259d2c33fe2f0eb4a17d66b80d36293d79843b607cfa88c70f65111846e4c77c6e356c2eea269ff27b4e4386978c6cab8796d44a51e
SHA512 (rspec-mocks-3.13.8.gem) = 0da3eaca9ec1991d3dd8567c5375e523f31ebef8111facf9a43ba7a938f3184751518817dd01e0e88e990e0e09be8c041fdc8a621b160eab0336f675dac589e9
SHA512 (rubygem-rspec-mocks-3.13.8-full.tar.gz) = 17731d7421d1393d4d7ad0c8c86719fb6e21ca7c8365e8a18c1b00e8fcef692aa6624942d2a515e666253ee48cbdae799abd560e08b11235ae56befdad02344c