rspec-mocks 3.13.7 → 3.13.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: df5f0cc9f39c7b8143bdf25e4b257a2ece85d0ce3b132d4a37b3cc569d6ef94e
4
- data.tar.gz: 30ae99bd407c4e45996ddfa971ee376e8f3521a026ce4fe6af0e4cb8ec452f60
3
+ metadata.gz: b278e5b46f591add62ff285b128c57e72afd02e0cf76be56039f57062b08103f
4
+ data.tar.gz: efbc56184844f95466ed307aa686016defb1c0596323d6f3dd67c381e30b8533
5
5
  SHA512:
6
- metadata.gz: cd2282442579d7e2a393ed94cd23161d671f9135996db2553f4714c8727ef7f2bf7fdd4be4cf4d6db44328a0434c71474633fbe108fb3b0c715d2d028749563c
7
- data.tar.gz: 7cc97b1522fd69ae712a23c21953e165db5790ccc6dbdab3f06b66384bd485af31f4dfb7553fb9f2ee0ac877112ecf4d8194a8f3079a352f994a38a519e5508c
6
+ metadata.gz: 9a1d4027984daedf2de696846f383a325b5f39ce76415de40cccc5a6284bf0d81e4201c880f83b1ceedd9a8444405972bba0815bf7c34a420854c4f4d241044f
7
+ data.tar.gz: 23561778a08ba4fd6e7a24669389bc41ed1b386cc554cedc0a3cbd253afcb7520ff658d3a1b7d8b9f8fe6a7b7cfe1e4f31a48c443fde20dbafe51d17afdd8ba6
checksums.yaml.gz.sig CHANGED
Binary file
data/Changelog.md CHANGED
@@ -1,5 +1,13 @@
1
1
  ### Development
2
- [Full Changelog](https://github.com/rspec/rspec/compare/rspec-mocks-v3.13.7...3-13-maintenance)
2
+ [Full Changelog](https://github.com/rspec/rspec/compare/rspec-mocks-v3.13.8...3-13-maintenance)
3
+
4
+ ### 3.13.8 / 2026-02-27
5
+ [Full Changelog](https://github.com/rspec/rspec/compare/rspec-mocks-v3.13.7...rspec-mocks-v3.13.8)
6
+
7
+ Bug Fixes:
8
+
9
+ * Improve thread safety of mocks invocation recording. (Chad Wilson, #286)
10
+ * Expand `any_instance` warning about prepended methods to private/protected methods. (Alex Dean, #297)
3
11
 
4
12
  ### 3.13.7 / 2025-10-31
5
13
  [Full Changelog](https://github.com/rspec/rspec/compare/rspec-mocks-v3.13.6...rspec-mocks-v3.13.7)
@@ -283,7 +283,9 @@ module RSpec
283
283
  if Support::RubyFeatures.module_prepends_supported?
284
284
  def allow_no_prepended_module_definition_of(method_name)
285
285
  prepended_modules = RSpec::Mocks::Proxy.prepended_modules_of(@klass)
286
- problem_mod = prepended_modules.find { |mod| mod.method_defined?(method_name) }
286
+ problem_mod = prepended_modules.find do |mod|
287
+ MethodReference.method_defined_at_any_visibility?(mod, method_name)
288
+ end
287
289
  return unless problem_mod
288
290
 
289
291
  AnyInstance.error_generator.raise_not_supported_with_prepend_error(method_name, problem_mod)
@@ -1,3 +1,5 @@
1
+ RSpec::Support.require_rspec_support 'reentrant_mutex'
2
+
1
3
  module RSpec
2
4
  module Mocks
3
5
  # @private
@@ -5,6 +7,7 @@ module RSpec
5
7
  def initialize
6
8
  @expectations = []
7
9
  @invocation_order = []
10
+ @invocation_order_mutex = Support::Mutex.new
8
11
  @index = 0
9
12
  end
10
13
 
@@ -14,7 +17,9 @@ module RSpec
14
17
  end
15
18
 
16
19
  def invoked(message)
17
- @invocation_order << message
20
+ @invocation_order_mutex.synchronize do
21
+ @invocation_order << message
22
+ end
18
23
  end
19
24
 
20
25
  # @private
@@ -47,7 +52,9 @@ module RSpec
47
52
 
48
53
  def clear
49
54
  @index = 0
50
- @invocation_order.clear
55
+ @invocation_order_mutex.synchronize do
56
+ @invocation_order.clear
57
+ end
51
58
  @expectations.clear
52
59
  end
53
60
 
@@ -66,11 +73,15 @@ module RSpec
66
73
  end
67
74
 
68
75
  def invoked_expectations
69
- @expectations.select { |e| e.ordered? && @invocation_order.include?(e) }
76
+ @invocation_order_mutex.synchronize do
77
+ @expectations.select { |e| e.ordered? && @invocation_order.include?(e) }
78
+ end
70
79
  end
71
80
 
72
81
  def expected_invocations
73
- @invocation_order.map { |invocation| expectation_for(invocation) }.compact
82
+ @invocation_order_mutex.synchronize do
83
+ @invocation_order.map { |invocation| expectation_for(invocation) }.compact
84
+ end
74
85
  end
75
86
 
76
87
  def expectation_for(message)
@@ -3,7 +3,7 @@ module RSpec
3
3
  # Version information for RSpec mocks.
4
4
  module Version
5
5
  # Version of RSpec mocks currently in use in SemVer format.
6
- STRING = '3.13.7'
6
+ STRING = '3.13.8'
7
7
  end
8
8
  end
9
9
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-mocks
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.13.7
4
+ version: 3.13.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steven Baker
@@ -11,11 +11,11 @@ bindir: bin
11
11
  cert_chain:
12
12
  - |
13
13
  -----BEGIN CERTIFICATE-----
14
- MIIFvjCCA6agAwIBAgIJAPXjfUbCjdXVMA0GCSqGSIb3DQEBCwUAMIGAMQswCQYD
14
+ MIIFvjCCA6agAwIBAgIJAPXjfUbCjdXWMA0GCSqGSIb3DQEBCwUAMIGAMQswCQYD
15
15
  VQQGEwJVUzETMBEGA1UECAwKV2FzaGluZ3RvbjEQMA4GA1UEBwwHU2VhdHRsZTEO
16
16
  MAwGA1UECgwFUlNwZWMxEzARBgNVBAMMCnJzcGVjLmluZm8xJTAjBgkqhkiG9w0B
17
- CQEWFnJzcGVjQGdvb2dsZWdyb3Vwcy5jb20wHhcNMjUwMjA2MTE0NjU2WhcNMjYw
18
- MjA2MTE0NjU2WjCBgDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCldhc2hpbmd0b24x
17
+ CQEWFnJzcGVjQGdvb2dsZWdyb3Vwcy5jb20wHhcNMjYwMjE3MTE0ODM0WhcNMjcw
18
+ MjE3MTE0ODM0WjCBgDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCldhc2hpbmd0b24x
19
19
  EDAOBgNVBAcMB1NlYXR0bGUxDjAMBgNVBAoMBVJTcGVjMRMwEQYDVQQDDApyc3Bl
20
20
  Yy5pbmZvMSUwIwYJKoZIhvcNAQkBFhZyc3BlY0Bnb29nbGVncm91cHMuY29tMIIC
21
21
  IjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAsSmjgcHaKlD0jizRJowi2bGI
@@ -31,17 +31,17 @@ cert_chain:
31
31
  gpEMqf80lEmhX59VUsm0Pv6OEo+ZPHBvXPiJA6DShQh9t3YtpwyA8uVDMbT/i32u
32
32
  2FUsqZbbJcCmkBrGposCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
33
33
  HQYDVR0OBBYEFPPvQ5XT0Nvuhi6k+hrWVv35J+TeMA0GCSqGSIb3DQEBCwUAA4IC
34
- AQBGBr0ll2yLrkO6IeK5Q7qZFnANaUCKfi6Of9VztZJXgKAU5KAQxyOidGktoA5N
35
- lp+bFKudRkW8jSehqoNaNBdSZ9Bc07EGMXIhUFJZF9rq7Z2SKPwUm6EaSsBK13QR
36
- U4K6wuaw5ZJSFzklapoGOJRGnFlnNtlhNFY6+tTwCeblwZbcuYGyGY8+Rg7GbyVl
37
- 3Tr4Gi1aS/qG/MDXKdE8HWm39dmaAMdbw6dg1VBd0JrX2VqH7xvE1dM/D3OlKrNp
38
- gNFRNJig3Y8qPjocZR0cGkhgZoC9wribWxHSNawZm4CoV3fja2HNx9QyM7BaB+as
39
- yuqAiBbA7vBcyc8nKATip3mxbyXYXoDD7nmO8JCPP7O/WsgG+U/B2a0kPdvYFoxE
40
- Q0Js3GtFCuMvL+0rifqdxBOLtu0Pw9q4RvToTJIl2IR6eTgCb82B1hw9qKf7PjuL
41
- BoEsYjjDhGw6FZvcJG8O6uj7aB+z4aF21YR74UGL7sq/RIPNNez5JI95jTGfqCPy
42
- 6yo0w3zja3yg28QK3Fj+tbOHeSLv9SDQWi/1jiPprGzbxGvbVvjvX11YZc46vkmY
43
- AwP+qZPPf97FXXZGEGIYhhHpnj+Ltx9nCetRPiZ4rvYBcXgCWVQSg6eiEofrMwn/
44
- AKMCABhZ1Y2eATsfMgdkmIZk7JIPZiSi6eUxPiCMP9M/pw==
34
+ AQBaeeGIZtBFDP33D1/4sXldSgwntVcL5qC5pcjamLWM4HK4/a6ePMy1uoX+dEnJ
35
+ J+BjZWURsUfFOob+xnUe8AMSbv9gupckfVehZoBzOvJDaWcALo8GKjJlmVtzEIqZ
36
+ TvBLO5zQwR4cWIrg0NWjkDOSQOrNNQ2Degv/aOFrR8dFPJSgxZG/IC0/t6s72cEt
37
+ V4SIe/NLIU4RyBzfgn/RBsalDEF1yIVlDWspMa78clS3bPmntkNyfLwIUwINDHhn
38
+ swFA8bEKMQWqRlupuRmEiy3nGe6az46YlPXzK5UWfXJ6Lb1wIE8W80TRx0HpSC7j
39
+ JfXPfQ0PLgiU4nnQqain2bIn96Ooco8kspeqp8rSJ8sbaMPTNmcFuwD3gzWsRnJ3
40
+ rIaJbmrUcq6DlJ7jfv3u5TPt4JWzDP7oDPf3nXNiF2Cn48Ne598G5lHH6Heyxe39
41
+ pYZdhEptKJWPHxbJWHXD02omKprkNuQKHpnXrW+mmbiO4IcqAMggiud+DaEQg20x
42
+ Dae4cNbvK5p3D+5xqvcEO2G4uCMDmJjrSd61kvTLBnm1qroHqrpi9GauEVWZZmD0
43
+ n0ph8oFAXOsKQWxZ+4uh6yGISk+WhngCZEVPZUjq7SIGAuVhQy2ZgwdjnLEz//lD
44
+ x0Qexp5yGeoxAL9qKM/RXYKtuRZBJV1z+L9A1YOtwaXXNg==
45
45
  -----END CERTIFICATE-----
46
46
  date: 1980-01-02 00:00:00.000000000 Z
47
47
  dependencies:
@@ -136,11 +136,11 @@ licenses:
136
136
  - MIT
137
137
  metadata:
138
138
  bug_tracker_uri: https://github.com/rspec/rspec/issues
139
- changelog_uri: https://github.com/rspec/rspec/blob/rspec-mocks-v3.13.7/rspec-mocks/Changelog.md
139
+ changelog_uri: https://github.com/rspec/rspec/blob/rspec-mocks-v3.13.8/rspec-mocks/Changelog.md
140
140
  documentation_uri: https://rspec.info/documentation/
141
141
  mailing_list_uri: https://groups.google.com/forum/#!forum/rspec
142
142
  rubygems_mfa_required: 'true'
143
- source_code_uri: https://github.com/rspec/rspec/blob/rspec-mocks-v3.13.7/rspec-mocks
143
+ source_code_uri: https://github.com/rspec/rspec/blob/rspec-mocks-v3.13.8/rspec-mocks
144
144
  rdoc_options:
145
145
  - "--charset=UTF-8"
146
146
  require_paths:
@@ -156,7 +156,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
156
156
  - !ruby/object:Gem::Version
157
157
  version: '0'
158
158
  requirements: []
159
- rubygems_version: 3.6.9
159
+ rubygems_version: 4.0.6
160
160
  specification_version: 4
161
- summary: rspec-mocks-3.13.7
161
+ summary: rspec-mocks-3.13.8
162
162
  test_files: []
metadata.gz.sig CHANGED
Binary file