rspec-expectations 3.13.0 → 3.13.5

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.
data/Changelog.md CHANGED
@@ -1,5 +1,46 @@
1
1
  ### Development
2
- [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.3...main)
2
+ [Full Changelog](https://github.com/rspec/rspec/compare/rspec-expectations-v3.13.4...3-13-maintenance)
3
+
4
+ ### 3.13.5 / 2025-05-27
5
+ [Full Changelog](https://github.com/rspec/rspec/compare/rspec-expectations-v3.13.4...rspec-expectations-v3.13.5)
6
+
7
+ Bug Fixes:
8
+
9
+ * Fix links in gemspec to point to the monorepo / homepage.
10
+
11
+ ### 3.13.4 / 2025-05-01
12
+ [Full Changelog](https://github.com/rspec/rspec/compare/rspec-expectations-v3.13.3...rspec-expectations-v3.13.4)
13
+
14
+ Bug Fixes:
15
+
16
+ * Prevent `match` from trying to compare strings and arrays using `Array#match`. (Joseph Haig, rspec/rspec#183)
17
+
18
+ ### 3.13.3 / 2024-09-07
19
+ [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.13.2...v3.13.3)
20
+
21
+ Bug Fixes:
22
+
23
+ * Fix passing a regular expression to the `include` matcher without a count constraint.
24
+ (Jon Rowe, rspec/rspec-expectations#1485)
25
+
26
+ ### 3.13.2 / 2024-08-20
27
+ [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.13.1...v3.13.2)
28
+
29
+ Bug Fixes:
30
+
31
+ * When using null object doubles, prevent typos triggering dynamic matchers.
32
+ (Eric Mueller, rspec/rspec-expectations#1455)
33
+ * Use `RSpec.warning` for an expectation warning rather than `Kernel.warn`. (Jon Rowe, rspec/rspec-expectations#1472)
34
+ * Prevent mismatched use of block and value matchers in compound expectations. (Phil Pirozhkov, rspec/rspec-expectations#1476)
35
+ * Raise an error when passing no arguments to the `include` matcher. (Eric Mueller, rspec/rspec-expectations#1479)
36
+
37
+ ### 3.13.1 / 2024-06-13
38
+ [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.13.0...v3.13.1)
39
+
40
+ Bug Fixes:
41
+
42
+ * Fix the "false positive" warning message when using a negated `raise_error` matcher
43
+ with a `RegExp` instance. (Eric Mueller, rspec/rspec-expectations#1456)
3
44
 
4
45
  ### 3.13.0 / 2024-02-04
5
46
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.4...v3.13.0)
@@ -7,7 +48,7 @@
7
48
  Enhancements:
8
49
 
9
50
  * Update `eq` and `eql` matchers to better highlight difference in string encoding.
10
- (Alan Foster, #1425)
51
+ (Alan Foster, rspec/rspec-expectations#1425)
11
52
 
12
53
  ### 3.12.4 / 2024-02-04
13
54
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.3...v3.12.4)
@@ -15,7 +56,7 @@ Enhancements:
15
56
  Bug Fixes:
16
57
 
17
58
  * Fix the diff for redefined `actual` and reassigned `@actual` in compound
18
- expectations failure messages. (Phil Pirozhkov, #1440)
59
+ expectations failure messages. (Phil Pirozhkov, rspec/rspec-expectations#1440)
19
60
 
20
61
  ### 3.12.3 / 2023-04-20
21
62
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.2...v3.12.3)
@@ -24,7 +65,7 @@ Bug Fixes:
24
65
 
25
66
  * Fix `include` matcher when fuzzy matching on keys with a hash-like actual which
26
67
  has a non standard `key?` method which may raise.
27
- (Jon Rowe, #1416)
68
+ (Jon Rowe, rspec/rspec-expectations#1416)
28
69
 
29
70
  ### 3.12.2 / 2023-01-07
30
71
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.1...v3.12.2)
@@ -32,16 +73,16 @@ Bug Fixes:
32
73
  Bug Fixes:
33
74
 
34
75
  * Prevent deprecation warning when using the `exist` matcher with `Dir`.
35
- (Steve Dierker, #1398)
76
+ (Steve Dierker, rspec/rspec-expectations#1398)
36
77
 
37
78
  ### 3.12.1 / 2022-12-16
38
79
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.0...v3.12.1)
39
80
 
40
81
  Bug Fixes:
41
82
 
42
- * Pass keyword arguments through to aliased (and thus negated) matchers. (Jon Rowe, #1394)
83
+ * Pass keyword arguments through to aliased (and thus negated) matchers. (Jon Rowe, rspec/rspec-expectations#1394)
43
84
  * When handling failures in an aggregated_failures block (or example) prevent
44
- the failure list leaking out. (Maciek Rząsa, #1392)
85
+ the failure list leaking out. (Maciek Rząsa, rspec/rspec-expectations#1392)
45
86
 
46
87
  ### 3.12.0 / 2022-10-26
47
88
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.11.1...v3.12.0)
@@ -49,7 +90,7 @@ Bug Fixes:
49
90
  Enhancements:
50
91
 
51
92
  * Add `an_array_matching` alias for `match_array` to improve readability as an argument
52
- matcher. (Mark Schneider, #1361)
93
+ matcher. (Mark Schneider, rspec/rspec-expectations#1361)
53
94
 
54
95
  ### 3.11.1 / 2022-09-12
55
96
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.11.0...v3.11.1)
@@ -57,33 +98,33 @@ Enhancements:
57
98
  Bug Fixes:
58
99
 
59
100
  * Allow the `contain_exactly` matcher to be reused by resetting its
60
- internals on `matches?` (@bclayman-sq, #1326)
101
+ internals on `matches?` (@bclayman-sq, rspec/rspec-expectations#1326)
61
102
  * Using the exist matcher on `FileTest` no longer produces a deprecation warning.
62
- (Ryo Nakamura, #1383)
103
+ (Ryo Nakamura, rspec/rspec-expectations#1383)
63
104
 
64
105
  ### 3.11.0 / 2022-02-09
65
106
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.10.2...v3.11.0)
66
107
 
67
108
  Enhancements:
68
109
 
69
- * Return `true` from `aggregate_failures` when no exception occurs. (Jon Rowe, #1225)
110
+ * Return `true` from `aggregate_failures` when no exception occurs. (Jon Rowe, rspec/rspec-expectations#1225)
70
111
 
71
112
  Deprecations:
72
113
 
73
114
  * Print a deprecation message when using the implicit block expectation syntax.
74
- (Phil Pirozhkov, #1139)
115
+ (Phil Pirozhkov, rspec/rspec-expectations#1139)
75
116
 
76
117
  ### 3.10.2 / 2022-01-14
77
118
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.10.1...v3.10.2)
78
119
 
79
120
  Bug Fixes:
80
121
 
81
- * Fix support for dynamic matchers for expectation target checks (Phil Pirozhkov, #1294)
122
+ * Fix support for dynamic matchers for expectation target checks (Phil Pirozhkov, rspec/rspec-expectations#1294)
82
123
  * Fix `expect(array).to include(hash).times`, previously this would fail due to
83
124
  matching the entire array as a single hash, rather than a member of the hash.
84
- (Slava Kardakov, #1322)
125
+ (Slava Kardakov, rspec/rspec-expectations#1322)
85
126
  * Ensure `raise_error` matches works with the `error_highlight` option from Ruby 3.1.
86
- (Peter Goldstein, #1339)
127
+ (Peter Goldstein, rspec/rspec-expectations#1339)
87
128
 
88
129
  ### 3.10.1 / 2020-12-27
89
130
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.10.0...v3.10.1)
@@ -91,7 +132,7 @@ Bug Fixes:
91
132
  Bug Fixes:
92
133
 
93
134
  * Allow JRuby 9.2.x.x to generate backtraces normally rather than via our
94
- backfill workaround. (#1230, Jon Rowe)
135
+ backfill workaround. (rspec/rspec-expectations#1230, Jon Rowe)
95
136
 
96
137
  ### 3.10.0 / 2020-10-30
97
138
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.9.3...v3.10.0)
@@ -99,19 +140,19 @@ Bug Fixes:
99
140
  Enhancements:
100
141
 
101
142
  * Allow `include` matcher to be chained with `once`, `at_least`, etc. for simple cases.
102
- (Marc-André Lafortune, #1168)
103
- * Add an explicit warning when `nil` is passed to `raise_error`. (Phil Pirozhkov, #1143)
104
- * Improve `include` matcher's composability. (Phil Pirozhkov, #1155)
143
+ (Marc-André Lafortune, rspec/rspec-expectations#1168)
144
+ * Add an explicit warning when `nil` is passed to `raise_error`. (Phil Pirozhkov, rspec/rspec-expectations#1143)
145
+ * Improve `include` matcher's composability. (Phil Pirozhkov, rspec/rspec-expectations#1155)
105
146
  * Mocks expectations can now set a custom failure message.
106
- (Benoit Tigeot and Nicolas Zermati, #1156)
107
- * `aggregate_failures` now shows the backtrace line for each failure. (Fabricio Bedin, #1163)
147
+ (Benoit Tigeot and Nicolas Zermati, rspec/rspec-expectations#1156)
148
+ * `aggregate_failures` now shows the backtrace line for each failure. (Fabricio Bedin, rspec/rspec-expectations#1163)
108
149
  * Support multiple combinations of `yield_control` modifiers like `at_least`, `at_most`.
109
- (Jon Rowe, #1169)
150
+ (Jon Rowe, rspec/rspec-expectations#1169)
110
151
  * Dynamic `have_<n>` matchers now have output consistent with other dynamic matchers.
111
- (Marc-André Lafortune, #1195)
152
+ (Marc-André Lafortune, rspec/rspec-expectations#1195)
112
153
  * New config option `strict_predicate_matchers` allows predicate matcher to be strict
113
154
  (i.e. match for `true` or `false`) instead of the default (match truthy vs `false` or `nil`).
114
- (Marc-André Lafortune, #1196)
155
+ (Marc-André Lafortune, rspec/rspec-expectations#1196)
115
156
 
116
157
  ### 3.9.4 / 2020-10-29
117
158
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.9.3...v3.9.4)
@@ -119,7 +160,7 @@ Enhancements:
119
160
  Bug Fixes:
120
161
 
121
162
  * Fix regression with `be_` and `have_` matchers and arguments implementing `to_hash`
122
- were they would act like keywords and be cast to a hash. (Jon Rowe, #1222)
163
+ were they would act like keywords and be cast to a hash. (Jon Rowe, rspec/rspec-expectations#1222)
123
164
 
124
165
  ### 3.9.3 / 2020-10-23
125
166
 
@@ -127,14 +168,14 @@ Bug Fixes:
127
168
 
128
169
  * Swap the comparison of the delta vs the expected for the `be_within` matcher allowing
129
170
  more complicated oobjects to be compared providing they provide `abs` and other
130
- comparison methods. (Kelly Stannard, #1182)
131
- * Properly format expected in the description of the `be_within` matcher. (Jon Rowe, #1185)
171
+ comparison methods. (Kelly Stannard, rspec/rspec-expectations#1182)
172
+ * Properly format expected in the description of the `be_within` matcher. (Jon Rowe, rspec/rspec-expectations#1185)
132
173
  * Remove warning when using keyword arguments with `be_` and `have_` matchers on 2.7.x
133
- (Jon Rowe, #1187)
174
+ (Jon Rowe, rspec/rspec-expectations#1187)
134
175
  * Prevent formatting a single hash as a list of key value pairs in default failure messages
135
- for custom matches (fixes formatting in `EnglishPhrasing#list`). (Robert Eshleman, #1193)
176
+ for custom matches (fixes formatting in `EnglishPhrasing#list`). (Robert Eshleman, rspec/rspec-expectations#1193)
136
177
  * Prevent errors from causing false positives when using `be <operator>` comparison, e.g.
137
- `expect(1).not_to be < 'a'` will now correctly fail rather than pass. (Jon Rowe, #1208)
178
+ `expect(1).not_to be < 'a'` will now correctly fail rather than pass. (Jon Rowe, rspec/rspec-expectations#1208)
138
179
 
139
180
 
140
181
  ### 3.9.2 / 2020-05-08
@@ -143,9 +184,9 @@ Bug Fixes:
143
184
  Bug Fixes:
144
185
 
145
186
  * Issue a proper `ArgumentError` when invalid arguments are given to `yield_control`
146
- modifiers such as `at_least` et al. (Marc-André Lafortune, #1167)
187
+ modifiers such as `at_least` et al. (Marc-André Lafortune, rspec/rspec-expectations#1167)
147
188
  * Prevent Ruby 2.7 keyword arguments warning from being issued by custom
148
- matcher definitions. (Jon Rowe, #1176)
189
+ matcher definitions. (Jon Rowe, rspec/rspec-expectations#1176)
149
190
 
150
191
  ### 3.9.1 / 2020-03-13
151
192
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.9.0...v3.9.1)
@@ -153,7 +194,7 @@ Bug Fixes:
153
194
  Bug Fixes:
154
195
 
155
196
  * Issue an improved warning when using `respond_to(...).with(n).arguments` and ignore
156
- the warning when using with `have_attributes(...)`. (Jon Rowe, #1164)
197
+ the warning when using with `have_attributes(...)`. (Jon Rowe, rspec/rspec-expectations#1164)
157
198
 
158
199
  ### 3.9.0 / 2019-10-08
159
200
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.6...v3.9.0)
@@ -161,19 +202,19 @@ Bug Fixes:
161
202
  Enhancements:
162
203
 
163
204
  * The `respond_to` matcher now uses the signature from `initialize` to validate checks
164
- for `new` (unless `new` is non standard). (Jon Rowe, #1072)
205
+ for `new` (unless `new` is non standard). (Jon Rowe, rspec/rspec-expectations#1072)
165
206
  * Generated descriptions for matchers now use `is expected to` rather than `should` in
166
- line with our preferred DSL. (Pete Johns, #1080, rspec/rspec-core#2572)
207
+ line with our preferred DSL. (Pete Johns, rspec/rspec-expectations#1080, rspec/rspec-corerspec/rspec-expectations#2572)
167
208
  * Add the ability to re-raise expectation errors when matching
168
- with `match_when_negated` blocks. (Jon Rowe, #1130)
209
+ with `match_when_negated` blocks. (Jon Rowe, rspec/rspec-expectations#1130)
169
210
  * Add a warning when an empty diff is produce due to identical inspect output.
170
- (Benoit Tigeot, #1126)
211
+ (Benoit Tigeot, rspec/rspec-expectations#1126)
171
212
 
172
213
  ### 3.8.6 / 2019-10-07
173
214
 
174
215
  Bug Fixes:
175
216
 
176
- * Revert #1125 due to the change being incompatible with our semantic versioning
217
+ * Revert rspec/rspec-expectations#1125 due to the change being incompatible with our semantic versioning
177
218
  policy.
178
219
 
179
220
  ### 3.8.5 / 2019-10-02
@@ -182,7 +223,7 @@ Bug Fixes:
182
223
  Bug Fixes:
183
224
 
184
225
  * Prevent unsupported implicit block expectation syntax from being used.
185
- (Phil Pirozhkov, #1125)
226
+ (Phil Pirozhkov, rspec/rspec-expectations#1125)
186
227
 
187
228
  ### 3.8.4 / 2019-06-10
188
229
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.3...v3.8.4)
@@ -190,7 +231,7 @@ Bug Fixes:
190
231
  Bug Fixes:
191
232
 
192
233
  * Prevent false negatives when checking objects for the methods required to run the
193
- the `be_an_instance_of` and `be_kind_of` matchers. (Nazar Matus, #1112)
234
+ the `be_an_instance_of` and `be_kind_of` matchers. (Nazar Matus, rspec/rspec-expectations#1112)
194
235
 
195
236
  ### 3.8.3 / 2019-04-20
196
237
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.2...v3.8.3)
@@ -198,12 +239,12 @@ Bug Fixes:
198
239
  Bug Fixes:
199
240
 
200
241
  * Prevent composed `all` matchers from leaking into their siblings leading to duplicate
201
- failures. (Jamie English, #1086)
242
+ failures. (Jamie English, rspec/rspec-expectations#1086)
202
243
  * Prevent objects which change their hash on comparison from failing change checks.
203
- (Phil Pirozhkov, #1100)
244
+ (Phil Pirozhkov, rspec/rspec-expectations#1100)
204
245
  * Issue an `ArgumentError` rather than a `NoMethodError` when `be_an_instance_of` and
205
246
  `be_kind_of` matchers encounter objects not supporting those methods.
206
- (Taichi Ishitani, #1107)
247
+ (Taichi Ishitani, rspec/rspec-expectations#1107)
207
248
 
208
249
  ### 3.8.2 / 2018-10-09
209
250
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.1...v3.8.2)
@@ -211,9 +252,9 @@ Bug Fixes:
211
252
  Bug Fixes:
212
253
 
213
254
  * Change `include` matcher to rely on a `respond_to?(:include?)` check rather than a direct
214
- Hash comparison before calling `to_hash` to convert to a hash. (Jordan Owens, #1073)
255
+ Hash comparison before calling `to_hash` to convert to a hash. (Jordan Owens, rspec/rspec-expectations#1073)
215
256
  * Prevent unexpected call stack jumps from causing an obscure error (`IndexError`), and
216
- replace that error with a proper informative message. (Jon Rowe, #1076)
257
+ replace that error with a proper informative message. (Jon Rowe, rspec/rspec-expectations#1076)
217
258
 
218
259
  ### 3.8.1 / 2018-08-06
219
260
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.0...v3.8.1)
@@ -222,7 +263,7 @@ Bug Fixes:
222
263
 
223
264
  * Fix regression in `include` matcher so stopped
224
265
  `expect(hash.with_indifferent_access).to include(:symbol_key)`
225
- from working. (Eito Katagiri, #1069)
266
+ from working. (Eito Katagiri, rspec/rspec-expectations#1069)
226
267
 
227
268
  ### 3.8.0 / 2018-08-04
228
269
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.7.0...v3.8.0)
@@ -230,20 +271,20 @@ Bug Fixes:
230
271
  Enhancements:
231
272
 
232
273
  * Improve failure message of `change(receiver, :message)` by including the
233
- receiver as `SomeClass#some_message`. (Tomohiro Hashidate, #1005)
274
+ receiver as `SomeClass#some_message`. (Tomohiro Hashidate, rspec/rspec-expectations#1005)
234
275
  * Improve `change` matcher so that it can correctly detect changes in
235
276
  deeply nested mutable objects (such as arrays-of-hashes-of-arrays).
236
277
  The improved logic uses the before/after `hash` value to see if the
237
278
  object has been mutated, rather than shallow duping the object.
238
- (Myron Marston, #1034)
279
+ (Myron Marston, rspec/rspec-expectations#1034)
239
280
  * Improve `include` matcher so that pseudo-hash objects (e.g. objects
240
281
  that decorate a hash using a `SimpleDelegator` or similar) are treated
241
- as a hash, as long as they implement `to_hash`. (Pablo Brasero, #1012)
282
+ as a hash, as long as they implement `to_hash`. (Pablo Brasero, rspec/rspec-expectations#1012)
242
283
  * Add `max_formatted_output_length=` to configuration, allowing changing
243
284
  the length at which we truncate large output strings.
244
- (Sam Phippen #951, Benoit Tigeot #1056)
285
+ (Sam Phippen rspec/rspec-expectations#951, Benoit Tigeot rspec/rspec-expectations#1056)
245
286
  * Improve error message when passing a matcher that doesn't support block
246
- expectations to a block based `expect`. (@nicktime, #1066)
287
+ expectations to a block based `expect`. (@nicktime, rspec/rspec-expectations#1066)
247
288
 
248
289
  ### 3.7.0 / 2017-10-17
249
290
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.6.0...v3.7.0)
@@ -251,27 +292,27 @@ Enhancements:
251
292
  Enhancements:
252
293
 
253
294
  * Improve compatibility with `--enable-frozen-string-literal` option
254
- on Ruby 2.3+. (Pat Allan, #997)
295
+ on Ruby 2.3+. (Pat Allan, rspec/rspec-expectations#997)
255
296
 
256
297
  ### 3.6.0 / 2017-05-04
257
298
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.6.0.beta2...v3.6.0)
258
299
 
259
300
  Enhancements:
260
301
 
261
- * Treat NoMethodError as a failure for comparison matchers. (Jon Rowe, #972)
302
+ * Treat NoMethodError as a failure for comparison matchers. (Jon Rowe, rspec/rspec-expectations#972)
262
303
  * Allow for scoped aliased and negated matchers--just call
263
304
  `alias_matcher` or `define_negated_matcher` from within an example
264
- group. (Markus Reiter, #974)
305
+ group. (Markus Reiter, rspec/rspec-expectations#974)
265
306
  * Improve failure message of `change` matcher with block and `satisfy` matcher
266
307
  by including the block snippet instead of just describing it as `result` or
267
- `block` when Ripper is available. (Yuji Nakayama, #987)
308
+ `block` when Ripper is available. (Yuji Nakayama, rspec/rspec-expectations#987)
268
309
 
269
310
  Bug Fixes:
270
311
 
271
312
  * Fix `yield_with_args` and `yield_successive_args` matchers so that
272
313
  they compare expected to actual args at the time the args are yielded
273
314
  instead of at the end, in case the method that is yielding mutates the
274
- arguments after yielding. (Alyssa Ross, #965)
315
+ arguments after yielding. (Alyssa Ross, rspec/rspec-expectations#965)
275
316
 
276
317
  ### 3.6.0.beta2 / 2016-12-12
277
318
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.6.0.beta1...v3.6.0.beta2)
@@ -279,29 +320,29 @@ Bug Fixes:
279
320
  Bug Fixes:
280
321
 
281
322
  * Using the exist matcher on `File` no longer produces a deprecation warning.
282
- (Jon Rowe, #954)
323
+ (Jon Rowe, rspec/rspec-expectations#954)
283
324
 
284
325
  ### 3.6.0.beta1 / 2016-10-09
285
326
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.5.0...v3.6.0.beta1)
286
327
 
287
328
  Bug Fixes:
288
329
 
289
- * Fix `contain_exactly` to work correctly with ranges. (Myron Marston, #940)
290
- * Fix `change` to work correctly with sets. (Marcin Gajewski, #939)
330
+ * Fix `contain_exactly` to work correctly with ranges. (Myron Marston, rspec/rspec-expectations#940)
331
+ * Fix `change` to work correctly with sets. (Marcin Gajewski, rspec/rspec-expectations#939)
291
332
 
292
333
  ### 3.5.0 / 2016-07-01
293
334
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.5.0.beta4...v3.5.0)
294
335
 
295
336
  Enhancements:
296
337
 
297
- * Add support for keyword arguments to the `respond_to` matcher. (Rob Smith, #915).
338
+ * Add support for keyword arguments to the `respond_to` matcher. (Rob Smith, rspec/rspec-expectations#915).
298
339
 
299
340
  ### 3.5.0.beta4 / 2016-06-05
300
341
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.5.0.beta3...v3.5.0.beta4)
301
342
 
302
343
  Bug Fixes:
303
344
 
304
- * Fix `include` matcher so that it provides a valid diff for hashes. (Yuji Nakayama, #916)
345
+ * Fix `include` matcher so that it provides a valid diff for hashes. (Yuji Nakayama, rspec/rspec-expectations#916)
305
346
 
306
347
  ### 3.5.0.beta3 / 2016-04-02
307
348
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.5.0.beta2...v3.5.0.beta3)
@@ -309,11 +350,11 @@ Bug Fixes:
309
350
  Enhancements:
310
351
 
311
352
  * Make `rspec/expectations/minitest_integration` work on Minitest::Spec
312
- 5.6+. (Myron Marston, #904)
353
+ 5.6+. (Myron Marston, rspec/rspec-expectations#904)
313
354
  * Add an alias `having_attributes` for `have_attributes` matcher.
314
- (Yuji Nakayama, #905)
355
+ (Yuji Nakayama, rspec/rspec-expectations#905)
315
356
  * Improve `change` matcher error message when block is mis-used.
316
- (Alex Altair, #908)
357
+ (Alex Altair, rspec/rspec-expectations#908)
317
358
 
318
359
  ### 3.5.0.beta2 / 2016-03-10
319
360
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.5.0.beta1...v3.5.0.beta2)
@@ -321,15 +362,15 @@ Enhancements:
321
362
  Enhancements:
322
363
 
323
364
  * Add the ability to raise an error on encountering false positives via
324
- `RSpec::Configuration#on_potential_false_positives = :raise`. (Jon Rowe, #900)
365
+ `RSpec::Configuration#on_potential_false_positives = :raise`. (Jon Rowe, rspec/rspec-expectations#900)
325
366
  * When using the custom matcher DSL, support new
326
367
  `notify_expectation_failures: true` option for the `match` method to
327
368
  allow expectation failures to be raised as normal instead of being
328
- converted into a `false` return value for `matches?`. (Jon Rowe, #892)
369
+ converted into a `false` return value for `matches?`. (Jon Rowe, rspec/rspec-expectations#892)
329
370
 
330
371
  Bug Fixes:
331
372
 
332
- * Allow `should` deprecation check to work on `BasicObject`s. (James Coleman, #898)
373
+ * Allow `should` deprecation check to work on `BasicObject`s. (James Coleman, rspec/rspec-expectations#898)
333
374
 
334
375
  ### 3.5.0.beta1 / 2016-02-06
335
376
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.4.0...v3.5.0.beta1)
@@ -337,14 +378,14 @@ Bug Fixes:
337
378
  Enhancements:
338
379
 
339
380
  * Make `match_when_negated` in custom matcher DSL support use of
340
- expectations within the match logic. (Chris Arcand, #789)
381
+ expectations within the match logic. (Chris Arcand, rspec/rspec-expectations#789)
341
382
 
342
383
  Bug Fixes:
343
384
 
344
385
  * Return `true` as expected from passing negated expectations
345
386
  (such as `expect("foo").not_to eq "bar"`), so they work
346
387
  properly when used within a `match` or `match_when_negated`
347
- block. (Chris Arcand, #789)
388
+ block. (Chris Arcand, rspec/rspec-expectations#789)
348
389
 
349
390
  ### 3.4.0 / 2015-11-11
350
391
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.3.1...v3.4.0)
@@ -353,22 +394,22 @@ Enhancements:
353
394
 
354
395
  * Warn when `RSpec::Matchers` is included in a superclass after it has
355
396
  already been included in a subclass on MRI 1.9, since that situation
356
- can cause uses of `super` to trigger infinite recursion. (Myron Marston, #816)
397
+ can cause uses of `super` to trigger infinite recursion. (Myron Marston, rspec/rspec-expectations#816)
357
398
  * Stop rescuing `NoMemoryError`, `SignalExcepetion`, `Interrupt` and
358
- `SystemExit`. It is dangerous to interfere with these. (Myron Marston, #845)
399
+ `SystemExit`. It is dangerous to interfere with these. (Myron Marston, rspec/rspec-expectations#845)
359
400
  * Add `#with_captures` to the match matcher which allows a user to specify expected
360
- captures when matching a regex against a string. (Sam Phippen, #848)
401
+ captures when matching a regex against a string. (Sam Phippen, rspec/rspec-expectations#848)
361
402
  * Always print compound failure messages in the multi-line form. Trying
362
- to print it all on a single line didn't read very well. (Myron Marston, #859)
403
+ to print it all on a single line didn't read very well. (Myron Marston, rspec/rspec-expectations#859)
363
404
 
364
405
  Bug Fixes:
365
406
 
366
407
  * Fix failure message from dynamic predicate matchers when the object
367
408
  does not respond to the predicate so that it is inspected rather
368
409
  than relying upon its `to_s` -- that way for `nil`, `"nil"` is
369
- printed rather than an empty string. (Myron Marston, #841)
410
+ printed rather than an empty string. (Myron Marston, rspec/rspec-expectations#841)
370
411
  * Fix SystemStackError raised when diffing an Enumerable object
371
- whose `#each` includes the object itself. (Yuji Nakayama, #857)
412
+ whose `#each` includes the object itself. (Yuji Nakayama, rspec/rspec-expectations#857)
372
413
 
373
414
  ### 3.3.1 / 2015-07-15
374
415
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.3.0...v3.3.1)
@@ -378,9 +419,9 @@ Bug Fixes:
378
419
  * Fix `be >`, `be <`, etc so that it fails rather than allowing an
379
420
  argument error to be raised when compared against an object of the
380
421
  wrong type. This allows it to be used in composed matcher expressions
381
- against heterogeneous objects. (Dennis Günnewig, #809)
422
+ against heterogeneous objects. (Dennis Günnewig, rspec/rspec-expectations#809)
382
423
  * Fix `respond_to` to work properly on target objects
383
- that redefine the `method` method. (unmanbearpig, #821)
424
+ that redefine the `method` method. (unmanbearpig, rspec/rspec-expectations#821)
384
425
 
385
426
  ### 3.3.0 / 2015-06-12
386
427
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.2.1...v3.3.0)
@@ -388,50 +429,50 @@ Bug Fixes:
388
429
  Enhancements:
389
430
 
390
431
  * Expose `RSpec::Matchers::EnglishPhrasing` to make it easier to write
391
- nice failure messages in custom matchers. (Jared Beck, #736)
432
+ nice failure messages in custom matchers. (Jared Beck, rspec/rspec-expectations#736)
392
433
  * Add `RSpec::Matchers::FailMatchers`, a mixin which provides
393
434
  `fail`, `fail_with` and `fail_including` matchers for use in
394
435
  specifying that an expectation fails for use by
395
- extension/plugin authors. (Charlie Rudolph, #729)
436
+ extension/plugin authors. (Charlie Rudolph, rspec/rspec-expectations#729)
396
437
  * Avoid loading `tempfile` (and its dependencies) unless
397
- it is absolutely needed. (Myron Marston, #735)
438
+ it is absolutely needed. (Myron Marston, rspec/rspec-expectations#735)
398
439
  * Improve failure output when attempting to use `be_true` or `be_false`.
399
- (Tim Wade, #744)
440
+ (Tim Wade, rspec/rspec-expectations#744)
400
441
  * Define `RSpec::Matchers#respond_to_missing?` so that
401
442
  `RSpec::Matchers#respond_to?` and `RSpec::Matchers#method` handle
402
- dynamic predicate matchers. (Andrei Botalov, #751)
443
+ dynamic predicate matchers. (Andrei Botalov, rspec/rspec-expectations#751)
403
444
  * Use custom Time/DateTime/BigDecimal formatting for all matchers
404
445
  so they are consistently represented in failure messages.
405
- (Gavin Miller, #740)
446
+ (Gavin Miller, rspec/rspec-expectations#740)
406
447
  * Add configuration to turn off warnings about matcher combinations that
407
- may cause false positives. (Jon Rowe, #768)
448
+ may cause false positives. (Jon Rowe, rspec/rspec-expectations#768)
408
449
  * Warn when using a bare `raise_error` matcher that you may be subject to
409
- false positives. (Jon Rowe, #768)
450
+ false positives. (Jon Rowe, rspec/rspec-expectations#768)
410
451
  * Warn rather than raise when using the`raise_error` matcher in negative
411
- expectations that may be subject to false positives. (Jon Rowe, #775)
452
+ expectations that may be subject to false positives. (Jon Rowe, rspec/rspec-expectations#775)
412
453
  * Improve failure message for `include(a, b, c)` so that if `a` and `b`
413
- are included the failure message only mentions `c`. (Chris Arcand, #780)
454
+ are included the failure message only mentions `c`. (Chris Arcand, rspec/rspec-expectations#780)
414
455
  * Allow `satisfy` matcher to take an optional description argument
415
456
  that will be used in the `description`, `failure_message` and
416
457
  `failure_message_when_negated` in place of the undescriptive
417
- "sastify block". (Chris Arcand, #783)
458
+ "sastify block". (Chris Arcand, rspec/rspec-expectations#783)
418
459
  * Add new `aggregate_failures` API that allows multiple independent
419
460
  expectations to all fail and be listed in the failure output, rather
420
- than the example aborting on the first failure. (Myron Marston, #776)
461
+ than the example aborting on the first failure. (Myron Marston, rspec/rspec-expectations#776)
421
462
  * Improve `raise_error` matcher so that it can accept a matcher as a single argument
422
- that matches the message. (Time Wade, #782)
463
+ that matches the message. (Time Wade, rspec/rspec-expectations#782)
423
464
 
424
465
  Bug Fixes:
425
466
 
426
467
  * Make `contain_exactly` / `match_array` work with strict test doubles
427
- that have not defined `<=>`. (Myron Marston, #758)
468
+ that have not defined `<=>`. (Myron Marston, rspec/rspec-expectations#758)
428
469
  * Fix `include` matcher so that it omits the diff when it would
429
470
  confusingly highlight items that are actually included but are not
430
- an exact match in a line-by-line diff. (Tim Wade, #763)
471
+ an exact match in a line-by-line diff. (Tim Wade, rspec/rspec-expectations#763)
431
472
  * Fix `match` matcher so that it does not blow up when matching a string
432
473
  or regex against another matcher (rather than a string or regex).
433
- (Myron Marston, #772)
434
- * Silence whitespace-only diffs. (Myron Marston, #801)
474
+ (Myron Marston, rspec/rspec-expectations#772)
475
+ * Silence whitespace-only diffs. (Myron Marston, rspec/rspec-expectations#801)
435
476
 
436
477
  ### 3.2.1 / 2015-04-06
437
478
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.2.0...v3.2.1)
@@ -439,9 +480,9 @@ Bug Fixes:
439
480
  Bug Fixes:
440
481
 
441
482
  * Prevent `Range`s from being enumerated when generating matcher
442
- descriptions. (Jon Rowe, #755)
483
+ descriptions. (Jon Rowe, rspec/rspec-expectations#755)
443
484
  * Ensure exception messages are compared as strings in the `raise_error`
444
- matcher. (Jon Rowe, #755)
485
+ matcher. (Jon Rowe, rspec/rspec-expectations#755)
445
486
 
446
487
  ### 3.2.0 / 2015-02-03
447
488
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.1.2...v3.2.0)
@@ -450,25 +491,25 @@ Enhancements:
450
491
 
451
492
  * Add `block_arg` method to custom matcher API, which allows you to
452
493
  access the block passed to a custom matcher, if there is one.
453
- (Mike Dalton, #645)
494
+ (Mike Dalton, rspec/rspec-expectations#645)
454
495
  * Provide more detail in failure message of `yield_control` matcher.
455
- (Jon Rowe, #650)
496
+ (Jon Rowe, rspec/rspec-expectations#650)
456
497
  * Add a shorthand syntax for `chain` in the matcher DSL which assigns values
457
498
  for use elsewhere, for example `chain :and_smaller_than, :small_value`
458
- creates an `attr_reader` for `small_value` (Tom Stuart, #644)
499
+ creates an `attr_reader` for `small_value` (Tom Stuart, rspec/rspec-expectations#644)
459
500
  * Provide a more helpful deprecation message when using the `should` syntax.
460
- (Elia Schito, #663)
501
+ (Elia Schito, rspec/rspec-expectations#663)
461
502
  * Provide more detail in the `have_attributes` matcher failure message.
462
- (Jon Rowe, #668)
503
+ (Jon Rowe, rspec/rspec-expectations#668)
463
504
  * Make the `have_attributes` matcher diffable.
464
- (Jon Rowe, Alexey Fedorov, #668)
505
+ (Jon Rowe, Alexey Fedorov, rspec/rspec-expectations#668)
465
506
  * Add `output(...).to_std(out|err)_from_any_process` as alternatives
466
507
  to `output(...).to_std(out|err)`. The latter doesn't work when a sub
467
508
  process writes to the named stream but is much faster.
468
- (Alex Genco, #700)
509
+ (Alex Genco, rspec/rspec-expectations#700)
469
510
  * Improve compound matchers (created by `and` and `or`) so that diffs
470
511
  are included in failures when one or more of their matchers
471
- are diffable. (Alexey Fedorov, #713)
512
+ are diffable. (Alexey Fedorov, rspec/rspec-expectations#713)
472
513
 
473
514
  Bug Fixes:
474
515
 
@@ -476,17 +517,17 @@ Bug Fixes:
476
517
  the target object if the object publicly responds to the predicate
477
518
  method. This avoids a possible error that can occur if the object
478
519
  raises errors from `private_methods` (which can happen with celluloid
479
- objects). (@chapmajs, #670)
520
+ objects). (@chapmajs, rspec/rspec-expectations#670)
480
521
  * Make `yield_control` (with no modifier) default to
481
522
  `at_least(:once)` rather than raising a confusing error
482
523
  when multiple yields are encountered.
483
- (Myron Marston, #675)
524
+ (Myron Marston, rspec/rspec-expectations#675)
484
525
  * Fix "instance variable @color not initialized" warning when using
485
- rspec-expectations outside of an rspec-core context. (Myron Marston, #689)
526
+ rspec-expectations outside of an rspec-core context. (Myron Marston, rspec/rspec-expectations#689)
486
527
  * Fix `start_with` and `end_with` to work properly when checking a
487
- string against an array of strings. (Myron Marston, #690)
528
+ string against an array of strings. (Myron Marston, rspec/rspec-expectations#690)
488
529
  * Don't use internally delegated matchers when generating descriptions
489
- for examples without doc strings. (Myron Marston, #692)
530
+ for examples without doc strings. (Myron Marston, rspec/rspec-expectations#692)
490
531
 
491
532
  ### 3.1.2 / 2014-09-26
492
533
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.1.1...v3.1.2)
@@ -495,9 +536,9 @@ Bug Fixes:
495
536
 
496
537
  * Fix `define_negated_matcher` so that matchers that support fluent
497
538
  interfaces continue to be negated after you use the chained method.
498
- (Myron Marston, #656)
539
+ (Myron Marston, rspec/rspec-expectations#656)
499
540
  * Fix `define_negated_matcher` so that the matchers fail with an
500
- appropriate failure message. (Myron Marston, #659)
541
+ appropriate failure message. (Myron Marston, rspec/rspec-expectations#659)
501
542
 
502
543
  ### 3.1.1 / 2014-09-15
503
544
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.1.0...v3.1.1)
@@ -506,7 +547,7 @@ Bug Fixes:
506
547
 
507
548
  * Fix regression in `all` matcher in 3.1.0 that prevented it from
508
549
  working on objects that are not `Enumerable` but do implement
509
- `each_with_index` (such as an ActiveRecord proxy). (Jori Hardman, #647)
550
+ `each_with_index` (such as an ActiveRecord proxy). (Jori Hardman, rspec/rspec-expectations#647)
510
551
 
511
552
  ### 3.1.0 / 2014-09-04
512
553
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.4...v3.1.0)
@@ -518,26 +559,26 @@ Enhancements:
518
559
  `Person = Struct.new(:name, :age)`
519
560
  `person = Person.new("Bob", 32)`
520
561
  `expect(person).to have_attributes(:name => "Bob", :age => 32)`.
521
- (Adam Farhi, #571)
562
+ (Adam Farhi, rspec/rspec-expectations#571)
522
563
  * Extended compound matcher support to block matchers, for cases like:
523
564
  `expect { ... }.to change { x }.to(3).and change { y }.to(4)`. (Myron
524
- Marston, #567)
565
+ Marston, rspec/rspec-expectations#567)
525
566
  * Include chained methods in custom matcher description and failure message
526
567
  when new `include_chain_clauses_in_custom_matcher_descriptions` config
527
- option is enabled. (Dan Oved, #600)
568
+ option is enabled. (Dan Oved, rspec/rspec-expectations#600)
528
569
  * Add `thrice` modifier to `yield_control` matcher as a synonym for
529
- `exactly(3).times`. (Dennis Taylor, #615)
570
+ `exactly(3).times`. (Dennis Taylor, rspec/rspec-expectations#615)
530
571
  * Add `RSpec::Matchers.define_negated_matcher`, which defines a negated
531
- version of the named matcher. (Adam Farhi, Myron Marston, #618)
572
+ version of the named matcher. (Adam Farhi, Myron Marston, rspec/rspec-expectations#618)
532
573
  * Document and support negation of `contain_exactly`/`match_array`.
533
- (Jon Rowe, #626).
574
+ (Jon Rowe, rspec/rspec-expectations#626).
534
575
 
535
576
  Bug Fixes:
536
577
 
537
578
  * Rename private `LegacyMacherAdapter` constant to `LegacyMatcherAdapter`
538
- to fix typo. (Abdelkader Boudih, #563)
579
+ to fix typo. (Abdelkader Boudih, rspec/rspec-expectations#563)
539
580
  * Fix `all` matcher so that it fails properly (rather than raising a
540
- `NoMethodError`) when matched against a non-enumerable. (Hao Su, #622)
581
+ `NoMethodError`) when matched against a non-enumerable. (Hao Su, rspec/rspec-expectations#622)
541
582
 
542
583
  ### 3.0.4 / 2014-08-14
543
584
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.3...v3.0.4)
@@ -545,12 +586,12 @@ Bug Fixes:
545
586
  Bug Fixes:
546
587
 
547
588
  * Fix `start_with` and `end_with` so that they work properly with
548
- structs. (Myron Marston, #620)
589
+ structs. (Myron Marston, rspec/rspec-expectations#620)
549
590
  * Fix failure message generation so that structs are printed properly
550
591
  in failures. Previously failure messages would represent them as
551
- an array. (Myron Marston, #620)
592
+ an array. (Myron Marston, rspec/rspec-expectations#620)
552
593
  * Fix composable matcher support so that it does not wrongly treat
553
- structs as arrays. (Myron Marston, #620)
594
+ structs as arrays. (Myron Marston, rspec/rspec-expectations#620)
554
595
 
555
596
  ### 3.0.3 / 2014-07-21
556
597
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.2...v3.0.3)
@@ -558,10 +599,10 @@ Bug Fixes:
558
599
  Bug Fixes:
559
600
 
560
601
  * Fix issue with detection of generic operator matchers so they work
561
- correctly when undefined. (Myron Marston, #597)
562
- * Don't inadvertently define `BasicObject` in 1.8.7. (Chris Griego, #603)
602
+ correctly when undefined. (Myron Marston, rspec/rspec-expectations#597)
603
+ * Don't inadvertently define `BasicObject` in 1.8.7. (Chris Griego, rspec/rspec-expectations#603)
563
604
  * Fix `include` matcher so that it fails gracefully when matched against
564
- an object that does not respond to `include?`. (Myron Marston, #607)
605
+ an object that does not respond to `include?`. (Myron Marston, rspec/rspec-expectations#607)
565
606
 
566
607
  ### 3.0.2 / 2014-06-19
567
608
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.1...v3.0.2)
@@ -569,12 +610,12 @@ Bug Fixes:
569
610
  Bug Fixes:
570
611
 
571
612
  * Fix regression in `contain_exactly` (AKA `match_array`) that caused it
572
- to wrongly pass when the expected array was empty. (Myron Marston, #581)
613
+ to wrongly pass when the expected array was empty. (Myron Marston, rspec/rspec-expectations#581)
573
614
  * Provide a better error message when you use the `change(obj, :msg)`
574
615
  form of the change matcher but forget the message argument. (Alex
575
- Sunderland, #585)
616
+ Sunderland, rspec/rspec-expectations#585)
576
617
  * Make the `contain_exactly` matcher work with arrays that contain hashes in
577
- arbitrary ordering. (Sam Phippen, #578)
618
+ arbitrary ordering. (Sam Phippen, rspec/rspec-expectations#578)
578
619
 
579
620
  ### 3.0.1 / 2014-06-12
580
621
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.0...v3.0.1)
@@ -583,8 +624,8 @@ Bug Fixes:
583
624
 
584
625
  * Add a missing `require` that would cause the `respond_to` matcher to
585
626
  fail when used in a project where the rest of RSpec (e.g. core and
586
- expecatations) weren't being used. (Myron Marston, #566)
587
- * Structs are no longer treated as arrays when diffed. (Jon Rowe, #576)
627
+ expecatations) weren't being used. (Myron Marston, rspec/rspec-expectations#566)
628
+ * Structs are no longer treated as arrays when diffed. (Jon Rowe, rspec/rspec-expectations#576)
588
629
 
589
630
  ### 3.0.0 / 2014-06-01
590
631
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.0.rc1...v3.0.0)
@@ -802,9 +843,9 @@ Bug Fixes:
802
843
 
803
844
  * Fix regression in `Expectations#method_handle_for` where proxy objects
804
845
  with method delegated would wrongly not return a method handle.
805
- (Jon Rowe, #594)
846
+ (Jon Rowe, rspec/rspec-expectations#594)
806
847
  * Fix issue with detection of generic operator matchers so they work
807
- correctly when undefined. (Myron Marston, #597)
848
+ correctly when undefined. (Myron Marston, rspec/rspec-expectations#597)
808
849
 
809
850
  ### 2.99.1 / 2014-06-19
810
851
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.99.0...v2.99.1)
@@ -812,7 +853,7 @@ Bug Fixes:
812
853
  Bug Fixes:
813
854
 
814
855
  * Fix typo in custom matcher `expected` deprecation warning -- it's
815
- `expected_as_array`, not `expected_array`. (Frederick Cheung, #562)
856
+ `expected_as_array`, not `expected_array`. (Frederick Cheung, rspec/rspec-expectations#562)
816
857
 
817
858
  ### 2.99.0 / 2014-06-01
818
859
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.99.0.rc1...v2.99.0)