rubocop-rspec 2.13.2 → 2.14.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (30) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +402 -383
  3. data/CODE_OF_CONDUCT.md +4 -4
  4. data/MIT-LICENSE.md +1 -2
  5. data/config/default.yml +65 -4
  6. data/lib/rubocop/cop/rspec/capybara/negation_matcher.rb +106 -0
  7. data/lib/rubocop/cop/rspec/capybara/specific_actions.rb +85 -0
  8. data/lib/rubocop/cop/rspec/capybara/specific_matcher.rb +5 -82
  9. data/lib/rubocop/cop/rspec/change_by_zero.rb +1 -1
  10. data/lib/rubocop/cop/rspec/context_wording.rb +4 -2
  11. data/lib/rubocop/cop/rspec/example_wording.rb +32 -0
  12. data/lib/rubocop/cop/rspec/factory_bot/consistent_parentheses_style.rb +99 -0
  13. data/lib/rubocop/cop/rspec/factory_bot/create_list.rb +2 -2
  14. data/lib/rubocop/cop/rspec/factory_bot/syntax_methods.rb +1 -19
  15. data/lib/rubocop/cop/rspec/implicit_subject.rb +86 -19
  16. data/lib/rubocop/cop/rspec/let_before_examples.rb +15 -1
  17. data/lib/rubocop/cop/rspec/mixin/capybara_help.rb +80 -0
  18. data/lib/rubocop/cop/rspec/mixin/css_selector.rb +48 -1
  19. data/lib/rubocop/cop/rspec/mixin/skip_or_pending.rb +23 -0
  20. data/lib/rubocop/cop/rspec/no_expectation_example.rb +42 -9
  21. data/lib/rubocop/cop/rspec/pending.rb +2 -11
  22. data/lib/rubocop/cop/rspec/rails/inferred_spec_type.rb +135 -0
  23. data/lib/rubocop/cop/rspec/repeated_include_example.rb +1 -1
  24. data/lib/rubocop/cop/rspec/sort_metadata.rb +102 -0
  25. data/lib/rubocop/cop/rspec/subject_declaration.rb +1 -1
  26. data/lib/rubocop/cop/rspec_cops.rb +5 -0
  27. data/lib/rubocop/rspec/factory_bot/language.rb +20 -0
  28. data/lib/rubocop/rspec/version.rb +1 -1
  29. data/lib/rubocop-rspec.rb +2 -0
  30. metadata +9 -2
data/CHANGELOG.md CHANGED
@@ -2,417 +2,433 @@
2
2
 
3
3
  ## Master (Unreleased)
4
4
 
5
+ ## 2.14.0 (2022-10-23)
6
+
7
+ - Add `require_implicit` style to `RSpec/ImplicitSubject`. ([@r7kamura])
8
+ - Fix a false positive for `RSpec/Capybara/SpecificMatcher` when `have_css("a")` without attribute. ([@ydah])
9
+ - Update `RSpec/ExampleWording` cop to raise error for insufficient descriptions. ([@akrox58])
10
+ - Add new `RSpec/Capybara/NegationMatcher` cop. ([@ydah])
11
+ - Add `AllowedPatterns` configuration option to `RSpec/NoExpectationExample`. ([@ydah])
12
+ - Improve `RSpec/NoExpectationExample` cop to ignore examples skipped or pending via metadata. ([@pirj])
13
+ - Add `RSpec/FactoryBot/ConsistentParenthesesStyle` cop. ([@Liberatys])
14
+ - Add `RSpec/Rails/InferredSpecType` cop. ([@r7kamura])
15
+ - Add new `RSpec/Capybara/SpecificActions` cop. ([@ydah])
16
+ - Update `config/default.yml` removing deprecated option to make the config correctable by users. ([@ignaciovillaverde])
17
+ - Do not attempt to auto-correct example groups with `include_examples` in `RSpec/LetBeforeExamples`. ([@pirj])
18
+ - Add new `RSpec/SortMetadata` cop. ([@leoarnold])
19
+ - Add support for subject! method to `RSpec/SubjectDeclaration`. ([@ydah][])
20
+
5
21
  ## 2.13.2 (2022-09-23)
6
22
 
7
- * Fix an error for `RSpec/Capybara/SpecificFinders` with no parentheses. ([@ydah][])
8
- * Fix a false positive for `RSpec/NoExpectationExample` with pending using `skip` or `pending` inside an example. ([@ydah][])
9
- * Exclude `have_text` and `have_content` that raise `ArgumentError` with `RSpec/Capybara/VisibilityMatcher` where `:visible` is an invalid option. ([@ydah][])
10
- * Fix a false negative for `RSpec/Capybara/VisibilityMatcher` with negative matchers. ([@ydah][])
23
+ - Fix an error for `RSpec/Capybara/SpecificFinders` with no parentheses. ([@ydah])
24
+ - Fix a false positive for `RSpec/NoExpectationExample` with pending using `skip` or `pending` inside an example. ([@ydah])
25
+ - Exclude `have_text` and `have_content` that raise `ArgumentError` with `RSpec/Capybara/VisibilityMatcher` where `:visible` is an invalid option. ([@ydah])
26
+ - Fix a false negative for `RSpec/Capybara/VisibilityMatcher` with negative matchers. ([@ydah])
11
27
 
12
28
  ## 2.13.1 (2022-09-12)
13
29
 
14
- * Include config/obsoletion.yml in the gemspec. ([@hosamaly][])
30
+ - Include config/obsoletion.yml in the gemspec. ([@hosamaly])
15
31
 
16
32
  ## 2.13.0 (2022-09-12)
17
33
 
18
- * Fix `RSpec/FilePath` cop missing mismatched expanded namespace. ([@sl4vr][])
19
- * Add new `AllowConsecutiveOneLiners` (default true) option for `Rspec/EmptyLineAfterHook` cop. ([@ngouy][])
20
- * Add autocorrect support for `RSpec/EmptyExampleGroup`. ([@r7kamura][])
21
- * Fix `RSpec/ChangeByZero` with compound expressions using `&` or `|` operators. ([@BrianHawley][])
22
- * Add `RSpec/NoExpectationExample`. ([@r7kamura][])
23
- * Add some expectation methods to default configuration. ([@r7kamura][])
24
- * Fix a false positive for `RSpec/Capybara/SpecificMatcher`. ([@ydah][])
25
- * Fix a false negative for `RSpec/Capybara/SpecificMatcher` for `have_field`. ([@ydah][])
26
- * Fix a false positive for `RSpec/Capybara/SpecificMatcher` when may not have a `href` by `have_link`. ([@ydah][])
27
- * Add `NegatedMatcher` configuration option to `RSpec/ChangeByZero`. ([@ydah][])
28
- * Add new `RSpec/Capybara/SpecificFinders` cop. ([@ydah][])
29
- * Add support for numblocks to `RSpec/AroundBlock`, `RSpec/EmptyLineAfterHook`, `RSpec/ExpectInHook`, `RSpec/HookArgument`, `RSpec/HooksBeforeExamples`, `RSpec/IteratedExpectation`, and `RSpec/NoExpectationExample`. ([@ydah][])
30
- * Fix incorrect documentation URLs when using `rubocop --show-docs-url`. ([@r7kamura][])
31
- * Add `AllowedGroups` configuration option to `RSpec/NestedGroups`. ([@ydah][])
32
- * Deprecate `IgnoredPatterns` option in favor of the `AllowedPatterns` options. ([@ydah][])
33
- * Add `AllowedPatterns` configuration option to `RSpec/ContextWording`. ([@ydah][])
34
- * Add `RSpec/ClassCheck` cop. ([@r7kamura][])
35
- * Fix a false positive for `RSpec/Capybara/SpecificMatcher` when pseudo-classes. ([@ydah][])
36
- * Fix a false negative for `RSpec/SubjectStub` when the subject is declared with the `subject!` method and called by name. ([@eikes][])
37
- * Support `Array.new(n)` on `RSpec/FactoryBot/CreateList` cop. ([@r7kamura][])
34
+ - Fix `RSpec/FilePath` cop missing mismatched expanded namespace. ([@sl4vr])
35
+ - Add new `AllowConsecutiveOneLiners` (default true) option for `Rspec/EmptyLineAfterHook` cop. ([@ngouy])
36
+ - Add autocorrect support for `RSpec/EmptyExampleGroup`. ([@r7kamura])
37
+ - Fix `RSpec/ChangeByZero` with compound expressions using `&` or `|` operators. ([@BrianHawley])
38
+ - Add `RSpec/NoExpectationExample`. ([@r7kamura])
39
+ - Add some expectation methods to default configuration. ([@r7kamura])
40
+ - Fix a false positive for `RSpec/Capybara/SpecificMatcher`. ([@ydah])
41
+ - Fix a false negative for `RSpec/Capybara/SpecificMatcher` for `have_field`. ([@ydah])
42
+ - Fix a false positive for `RSpec/Capybara/SpecificMatcher` when may not have a `href` by `have_link`. ([@ydah])
43
+ - Add `NegatedMatcher` configuration option to `RSpec/ChangeByZero`. ([@ydah])
44
+ - Add new `RSpec/Capybara/SpecificFinders` cop. ([@ydah])
45
+ - Add support for numblocks to `RSpec/AroundBlock`, `RSpec/EmptyLineAfterHook`, `RSpec/ExpectInHook`, `RSpec/HookArgument`, `RSpec/HooksBeforeExamples`, `RSpec/IteratedExpectation`, and `RSpec/NoExpectationExample`. ([@ydah])
46
+ - Fix incorrect documentation URLs when using `rubocop --show-docs-url`. ([@r7kamura])
47
+ - Add `AllowedGroups` configuration option to `RSpec/NestedGroups`. ([@ydah])
48
+ - Deprecate `IgnoredPatterns` option in favor of the `AllowedPatterns` options. ([@ydah])
49
+ - Add `AllowedPatterns` configuration option to `RSpec/ContextWording`. ([@ydah])
50
+ - Add `RSpec/ClassCheck` cop. ([@r7kamura])
51
+ - Fix a false positive for `RSpec/Capybara/SpecificMatcher` when pseudo-classes. ([@ydah])
52
+ - Fix a false negative for `RSpec/SubjectStub` when the subject is declared with the `subject!` method and called by name. ([@eikes])
53
+ - Support `Array.new(n)` on `RSpec/FactoryBot/CreateList` cop. ([@r7kamura])
38
54
 
39
55
  ## 2.12.1 (2022-07-03)
40
56
 
41
- * Fix a false positive for `RSpec/Capybara/SpecificMatcher`. ([@ydah][])
57
+ - Fix a false positive for `RSpec/Capybara/SpecificMatcher`. ([@ydah])
42
58
 
43
59
  ## 2.12.0 (2022-07-02)
44
60
 
45
- * Fix incorrect path suggested by `RSpec/FilePath` cop when second argument contains spaces. ([@tejasbubane][])
46
- * Fix autocorrect for EmptyLineSeparation. ([@johnny-miyake][])
47
- * Add new `RSpec/Capybara/SpecificMatcher` cop. ([@ydah][])
48
- * Fixed false offense detection in `FactoryBot/CreateList` when a n.times block is including method calls in the factory create arguments. ([@ngouy][])
49
- * Fix error in `RSpec/RSpec/FactoryBot/CreateList` cop for empty block. ([@tejasbubane][])
50
- * Update `RSpec/MultipleExpectations` cop documentation with examples of aggregate_failures use. ([@edgibbs][])
51
- * Declare autocorrect as unsafe for `RSpec/VerifiedDoubleReference`. ([@Drowze][])
52
- * Add new `RSpec/Rails/HaveHttpStatus` cop. ([@akiomik][])
61
+ - Fix incorrect path suggested by `RSpec/FilePath` cop when second argument contains spaces. ([@tejasbubane])
62
+ - Fix autocorrect for EmptyLineSeparation. ([@johnny-miyake])
63
+ - Add new `RSpec/Capybara/SpecificMatcher` cop. ([@ydah])
64
+ - Fixed false offense detection in `FactoryBot/CreateList` when a n.times block is including method calls in the factory create arguments. ([@ngouy])
65
+ - Fix error in `RSpec/RSpec/FactoryBot/CreateList` cop for empty block. ([@tejasbubane])
66
+ - Update `RSpec/MultipleExpectations` cop documentation with examples of aggregate_failures use. ([@edgibbs])
67
+ - Declare autocorrect as unsafe for `RSpec/VerifiedDoubleReference`. ([@Drowze])
68
+ - Add new `RSpec/Rails/HaveHttpStatus` cop. ([@akiomik])
53
69
 
54
70
  ## 2.11.1 (2022-05-18)
55
71
 
56
- * Fix a regression in `RSpec/ExpectChange` flagging chained method calls. ([@pirj][])
72
+ - Fix a regression in `RSpec/ExpectChange` flagging chained method calls. ([@pirj])
57
73
 
58
74
  ## 2.11.0 (2022-05-18)
59
75
 
60
- * Drop Ruby 2.5 support. ([@ydah][])
61
- * Add new `RSpec/ChangeByZero` cop. ([@ydah][])
62
- * Improve `RSpec/ExpectChange` to detect namespaced and top-level constants. ([@M-Yamashita01][])
63
- * Introduce an amendment to `Metrics/BlockLength` to exclude spec files. ([@luke-hill][])
76
+ - Drop Ruby 2.5 support. ([@ydah])
77
+ - Add new `RSpec/ChangeByZero` cop. ([@ydah])
78
+ - Improve `RSpec/ExpectChange` to detect namespaced and top-level constants. ([@M-Yamashita01])
79
+ - Introduce an amendment to `Metrics/BlockLength` to exclude spec files. ([@luke-hill])
64
80
 
65
81
  ## 2.10.0 (2022-04-19)
66
82
 
67
- * Fix a false positive for `RSpec/EmptyExampleGroup` when expectations in case statement. ([@ydah][])
68
- * Add `RSpec/VerifiedDoubleReference` cop. ([@t3h2mas][])
69
- * Make `RSpec/BeNil` cop configurable with a `be_nil` style and a `be` style. ([@bquorning][])
70
- * Fix `Capybara/CurrentPathExpectation` autocorrect incompatible with `Style/TrailingCommaInArguments` autocorrect. ([@ydah][])
83
+ - Fix a false positive for `RSpec/EmptyExampleGroup` when expectations in case statement. ([@ydah])
84
+ - Add `RSpec/VerifiedDoubleReference` cop. ([@t3h2mas])
85
+ - Make `RSpec/BeNil` cop configurable with a `be_nil` style and a `be` style. ([@bquorning])
86
+ - Fix `Capybara/CurrentPathExpectation` autocorrect incompatible with `Style/TrailingCommaInArguments` autocorrect. ([@ydah])
71
87
 
72
88
  ## 2.9.0 (2022-02-28)
73
89
 
74
- * Add new `RSpec/BeNil` cop. ([@bquorning][])
75
- * Add new `RSpec/BeEq` cop. ([@bquorning][])
90
+ - Add new `RSpec/BeNil` cop. ([@bquorning])
91
+ - Add new `RSpec/BeEq` cop. ([@bquorning])
76
92
 
77
93
  ## 2.8.0 (2022-01-24)
78
94
 
79
- * Fix `RSpec/FactoryBot/SyntaxMethods` and `RSpec/Capybara/FeatureMethods` to inspect shared groups. ([@pirj][])
80
- * Fix `RSpec/LeadingSubject` failure in non-spec code. ([@pirj][])
81
- * Add bad example to `RSpec/SubjectStub` cop. ([@oshiro3][])
82
- * Replace non-styleguide cops `StyleGuide` attribute with `Reference`. ([@pirj][])
83
- * Fix `RSpec/SubjectStub` to disallow stubbing of subjects defined in parent example groups. ([@pirj][])
95
+ - Fix `RSpec/FactoryBot/SyntaxMethods` and `RSpec/Capybara/FeatureMethods` to inspect shared groups. ([@pirj])
96
+ - Fix `RSpec/LeadingSubject` failure in non-spec code. ([@pirj])
97
+ - Add bad example to `RSpec/SubjectStub` cop. ([@oshiro3])
98
+ - Replace non-styleguide cops `StyleGuide` attribute with `Reference`. ([@pirj])
99
+ - Fix `RSpec/SubjectStub` to disallow stubbing of subjects defined in parent example groups. ([@pirj])
84
100
 
85
101
  ## 2.7.0 (2021-12-26)
86
102
 
87
- * Add new `RSpec/FactoryBot/SyntaxMethods` cop. ([@leoarnold][])
88
- * Exclude `task` type specs from `RSpec/DescribeClass` cop. ([@harry-graham][])
103
+ - Add new `RSpec/FactoryBot/SyntaxMethods` cop. ([@leoarnold])
104
+ - Exclude `task` type specs from `RSpec/DescribeClass` cop. ([@harry-graham])
89
105
 
90
106
  ## 2.6.0 (2021-11-08)
91
107
 
92
- * Fix merging RSpec DSL configuration from third-party gems. ([@pirj][])
93
- * Fix `RSpec/ExcessiveDocstringSpacing` false positive for multi-line indented strings. ([@G-Rath][])
94
- * Fix `Include` configuration for sub-departments. ([@pirj][])
95
- * Ignore heredocs in `RSpec/ExcessiveDocstringSpacing`. ([@G-Rath][])
96
- * Stop `RSpec/ExampleWording` from trying to correct heredocs. ([@G-Rath][])
97
- * Add autocorrect support for `RSpec/VariableDefinition`. ([@r7kamura][])
108
+ - Fix merging RSpec DSL configuration from third-party gems. ([@pirj])
109
+ - Fix `RSpec/ExcessiveDocstringSpacing` false positive for multi-line indented strings. ([@G-Rath])
110
+ - Fix `Include` configuration for sub-departments. ([@pirj])
111
+ - Ignore heredocs in `RSpec/ExcessiveDocstringSpacing`. ([@G-Rath])
112
+ - Stop `RSpec/ExampleWording` from trying to correct heredocs. ([@G-Rath])
113
+ - Add autocorrect support for `RSpec/VariableDefinition`. ([@r7kamura])
98
114
 
99
115
  ## 2.5.0 (2021-09-21)
100
116
 
101
- * Declare autocorrect as unsafe for `ExpectChange`. ([@francois-ferrandis][])
102
- * Fix each example for `RSpec/HookArgument`. ([@lokhi][])
103
- * Exclude unrelated Rails directories from `RSpec/DescribeClass`. ([@MothOnMars][])
104
- * Add `RSpec/ExcessiveDocstringSpacing` cop. ([@G-Rath][])
105
- * Add `RSpec/SubjectDeclaration` cop. ([@dswij][])
106
- * Fix excessive whitespace removal in `RSpec/EmptyHook` autocorrection. ([@pirj][])
107
- * Bump RuboCop requirement to v1.19.0. ([@pirj][])
108
- * Fix false positive in `RSpec/IteratedExpectation` when there is single, non-expectation statement in the block body. ([@Darhazer][])
117
+ - Declare autocorrect as unsafe for `ExpectChange`. ([@francois-ferrandis])
118
+ - Fix each example for `RSpec/HookArgument`. ([@lokhi])
119
+ - Exclude unrelated Rails directories from `RSpec/DescribeClass`. ([@MothOnMars])
120
+ - Add `RSpec/ExcessiveDocstringSpacing` cop. ([@G-Rath])
121
+ - Add `RSpec/SubjectDeclaration` cop. ([@dswij])
122
+ - Fix excessive whitespace removal in `RSpec/EmptyHook` autocorrection. ([@pirj])
123
+ - Bump RuboCop requirement to v1.19.0. ([@pirj])
124
+ - Fix false positive in `RSpec/IteratedExpectation` when there is single, non-expectation statement in the block body. ([@Darhazer])
109
125
 
110
126
  ## 2.4.0 (2021-06-09)
111
127
 
112
- * Update `RSpec/FilePath` to check suffix when given a non-constant top-level node (e.g. features). ([@topalovic][])
113
- * Add missing documentation for `single_statement_only` style of `RSpec/ImplicitSubject` cop. ([@tejasbubane][])
114
- * Fix an exception in `DescribedClass` when accessing a constant on a variable in a spec that is nested in a namespace. ([@rrosenblum][])
115
- * Add new `RSpec/IdenticalEqualityAssertion` cop. ([@tejasbubane][])
116
- * Add `RSpec/Rails/AvoidSetupHook` cop. ([@paydaylight][])
117
- * Fix false negative in `RSpec/ExpectChange` cop with block style and chained method call. ([@tejasbubane][])
128
+ - Update `RSpec/FilePath` to check suffix when given a non-constant top-level node (e.g. features). ([@topalovic])
129
+ - Add missing documentation for `single_statement_only` style of `RSpec/ImplicitSubject` cop. ([@tejasbubane])
130
+ - Fix an exception in `DescribedClass` when accessing a constant on a variable in a spec that is nested in a namespace. ([@rrosenblum])
131
+ - Add new `RSpec/IdenticalEqualityAssertion` cop. ([@tejasbubane])
132
+ - Add `RSpec/Rails/AvoidSetupHook` cop. ([@paydaylight])
133
+ - Fix false negative in `RSpec/ExpectChange` cop with block style and chained method call. ([@tejasbubane])
118
134
 
119
135
  ## 2.3.0 (2021-04-28)
120
136
 
121
- * Allow `RSpec/ContextWording` to accept multi-word prefixes. ([@hosamaly][])
122
- * Drop support for ruby 2.4. ([@bquorning][])
123
- * Add `CountAsOne` configuration option to `RSpec/ExampleLength`. ([@stephannv][])
124
- * Fix a false positive for `RSpec/RepeatedExampleGroupBody` when `pending` or `skip` have argument(s). ([@Tietew][])
137
+ - Allow `RSpec/ContextWording` to accept multi-word prefixes. ([@hosamaly])
138
+ - Drop support for ruby 2.4. ([@bquorning])
139
+ - Add `CountAsOne` configuration option to `RSpec/ExampleLength`. ([@stephannv])
140
+ - Fix a false positive for `RSpec/RepeatedExampleGroupBody` when `pending` or `skip` have argument(s). ([@Tietew])
125
141
 
126
142
  ## 2.2.0 (2021-02-02)
127
143
 
128
- * Fix `HooksBeforeExamples`, `LeadingSubject`, `LetBeforeExamples` and `ScatteredLet` autocorrection to take into account inline comments and comments immediately before the moved node. ([@Darhazer][])
129
- * Improve rubocop-rspec performance. ([@Darhazer][], [@bquorning][])
130
- * Include `Enabled: true` to prevent a mismatched configuration parameter warning when `RSpec` cops are explicitly enabled in the user configuration. ([@pirj][])
144
+ - Fix `HooksBeforeExamples`, `LeadingSubject`, `LetBeforeExamples` and `ScatteredLet` autocorrection to take into account inline comments and comments immediately before the moved node. ([@Darhazer])
145
+ - Improve rubocop-rspec performance. ([@Darhazer], [@bquorning])
146
+ - Include `Enabled: true` to prevent a mismatched configuration parameter warning when `RSpec` cops are explicitly enabled in the user configuration. ([@pirj])
131
147
 
132
148
  ## 2.1.0 (2020-12-17)
133
149
 
134
- * Fix `RSpec/FilePath` false positive for relative file path runs with long namespaces. ([@ahukkanen][])
135
- * Update `RSpec/Focus` to have auto-correction. ([@dvandersluis][])
150
+ - Fix `RSpec/FilePath` false positive for relative file path runs with long namespaces. ([@ahukkanen])
151
+ - Update `RSpec/Focus` to have auto-correction. ([@dvandersluis])
136
152
 
137
153
  ## 2.0.1 (2020-12-02)
138
154
 
139
- * Fixed infinite loop in `RSpec/ExpectActual` autocorrection when both expected and actual values are literals. ([@Darhazer][])
155
+ - Fixed infinite loop in `RSpec/ExpectActual` autocorrection when both expected and actual values are literals. ([@Darhazer])
140
156
 
141
157
  ## 2.0.0 (2020-11-06)
142
158
 
143
- * Remove deprecated class `::RuboCop::Cop::RSpec::Cop`. ([@bquorning][])
144
- * Retire `RSpec/InvalidPredicateMatcher` cop. ([@pirj][])
145
- * Remove the code responsible for filtering files to inspect. ([@pirj][])
146
- * Make RSpec language elements configurable. ([@sl4vr][])
147
- * Remove `CustomIncludeMethods` `RSpec/EmptyExampleGroup` option in favour of the new RSpec DSL configuration. ([@pirj][])
148
- * Enabled pending cop (`RSpec/StubbedMock`). ([@pirj][])
159
+ - Remove deprecated class `::RuboCop::Cop::RSpec::Cop`. ([@bquorning])
160
+ - Retire `RSpec/InvalidPredicateMatcher` cop. ([@pirj])
161
+ - Remove the code responsible for filtering files to inspect. ([@pirj])
162
+ - Make RSpec language elements configurable. ([@sl4vr])
163
+ - Remove `CustomIncludeMethods` `RSpec/EmptyExampleGroup` option in favour of the new RSpec DSL configuration. ([@pirj])
164
+ - Enabled pending cop (`RSpec/StubbedMock`). ([@pirj])
149
165
 
150
166
  ## 2.0.0.pre (2020-10-22)
151
167
 
152
- * Update RuboCop dependency to v1.0.0. ([@bquorning][])
153
- * Change namespace of several cops (`Capybara/*` -> `RSpec/Capybara/*`, `FactoryBot/*` -> `RSpec/FactoryBot/*`, `Rails/*` -> `RSpec/Rails/*`). ([@pirj][], [@bquorning][])
168
+ - Update RuboCop dependency to v1.0.0. ([@bquorning])
169
+ - Change namespace of several cops (`Capybara/*` -> `RSpec/Capybara/*`, `FactoryBot/*` -> `RSpec/FactoryBot/*`, `Rails/*` -> `RSpec/Rails/*`). ([@pirj], [@bquorning])
154
170
 
155
171
  ## 1.44.1 (2020-10-20)
156
172
 
157
- * Relax `rubocop-ast` version constraint. ([@PhilCoggins][])
173
+ - Relax `rubocop-ast` version constraint. ([@PhilCoggins])
158
174
 
159
175
  ## 1.44.0 (2020-10-20)
160
176
 
161
- * Move our documentation from rubocop-rspec.readthedocs.io to docs.rubocop.org/rubocop-rspec. ([@bquorning][])
162
- * Add `RSpec/RepeatedIncludeExample` cop. ([@biinari][])
163
- * Add `RSpec/StubbedMock` cop. ([@bquorning][], [@pirj][])
164
- * Add `IgnoredMetadata` configuration option to `RSpec/DescribeClass`. ([@Rafix02][])
165
- * Fix false positives in `RSpec/EmptyExampleGroup`. ([@pirj][])
166
- * Fix a false positive for `RSpec/EmptyExampleGroup` when example is defined in an `if` branch. ([@koic][])
177
+ - Move our documentation from rubocop-rspec.readthedocs.io to docs.rubocop.org/rubocop-rspec. ([@bquorning])
178
+ - Add `RSpec/RepeatedIncludeExample` cop. ([@biinari])
179
+ - Add `RSpec/StubbedMock` cop. ([@bquorning], [@pirj])
180
+ - Add `IgnoredMetadata` configuration option to `RSpec/DescribeClass`. ([@Rafix02])
181
+ - Fix false positives in `RSpec/EmptyExampleGroup`. ([@pirj])
182
+ - Fix a false positive for `RSpec/EmptyExampleGroup` when example is defined in an `if` branch. ([@koic])
167
183
 
168
184
  ## 1.43.2 (2020-08-25)
169
185
 
170
- * Fix `RSpec/FilePath` when checking a file with a shared example. ([@pirj][])
171
- * Fix subject nesting detection in `RSpec/LeadingSubject`. ([@pirj][])
186
+ - Fix `RSpec/FilePath` when checking a file with a shared example. ([@pirj])
187
+ - Fix subject nesting detection in `RSpec/LeadingSubject`. ([@pirj])
172
188
 
173
189
  ## 1.43.1 (2020-08-17)
174
190
 
175
- * Fix `RSpec/FilePath` when checking a file defining e.g. an empty class. ([@bquorning][])
191
+ - Fix `RSpec/FilePath` when checking a file defining e.g. an empty class. ([@bquorning])
176
192
 
177
193
  ## 1.43.0 (2020-08-17)
178
194
 
179
- * Add a new base cop class `::RuboCop::Cop::RSpec::Base`. The old base class `::RuboCop::Cop::RSpec::Cop` is deprecated, and will be removed in the next major release. ([@bquorning][])
180
- * Add support for subject detection after includes and example groups in `RSpec/LeadingSubject`. ([@pirj][])
181
- * Ignore trailing punctuation in context description prefix. ([@elliterate][])
182
- * Relax `RSpec/VariableDefinition` cop so interpolated and multiline strings are accepted even when configured to enforce the `symbol` style. ([@bquorning][])
183
- * Fix `RSpec/EmptyExampleGroup` to flag example groups with examples in invalid scopes. ([@mlarraz][])
184
- * Fix `RSpec/EmptyExampleGroup` to ignore examples groups with examples defined inside iterators. ([@pirj][])
185
- * Improve `RSpec/NestedGroups`, `RSpec/FilePath`, `RSpec/DescribeMethod`, `RSpec/MultipleDescribes`, `RSpec/DescribeClass`'s top-level example group detection. ([@pirj][])
186
- * Add detection of `let!` with a block-pass or a string literal to `RSpec/LetSetup`. ([@pirj][])
187
- * Add `IgnoredPatterns` configuration option to `RSpec/VariableName`. ([@jtannas][])
188
- * Add `RSpec/MultipleMemoizedHelpers` cop. ([@mockdeep][])
195
+ - Add a new base cop class `::RuboCop::Cop::RSpec::Base`. The old base class `::RuboCop::Cop::RSpec::Cop` is deprecated, and will be removed in the next major release. ([@bquorning])
196
+ - Add support for subject detection after includes and example groups in `RSpec/LeadingSubject`. ([@pirj])
197
+ - Ignore trailing punctuation in context description prefix. ([@elliterate])
198
+ - Relax `RSpec/VariableDefinition` cop so interpolated and multiline strings are accepted even when configured to enforce the `symbol` style. ([@bquorning])
199
+ - Fix `RSpec/EmptyExampleGroup` to flag example groups with examples in invalid scopes. ([@mlarraz])
200
+ - Fix `RSpec/EmptyExampleGroup` to ignore examples groups with examples defined inside iterators. ([@pirj])
201
+ - Improve `RSpec/NestedGroups`, `RSpec/FilePath`, `RSpec/DescribeMethod`, `RSpec/MultipleDescribes`, `RSpec/DescribeClass`'s top-level example group detection. ([@pirj])
202
+ - Add detection of `let!` with a block-pass or a string literal to `RSpec/LetSetup`. ([@pirj])
203
+ - Add `IgnoredPatterns` configuration option to `RSpec/VariableName`. ([@jtannas])
204
+ - Add `RSpec/MultipleMemoizedHelpers` cop. ([@mockdeep])
189
205
 
190
206
  ## 1.42.0 (2020-07-09)
191
207
 
192
- * Update RuboCop dependency to 0.87.0 because of changes to internal APIs. ([@bquorning][], [@Darhazer][])
208
+ - Update RuboCop dependency to 0.87.0 because of changes to internal APIs. ([@bquorning], [@Darhazer])
193
209
 
194
210
  ## 1.41.0 (2020-07-03)
195
211
 
196
- * Extend the list of Rails spec types for `RSpec/DescribeClass`. ([@pirj][])
197
- * Fix `FactoryBot/AttributeDefinedStatically` to allow `#traits_for_enum` without a block. ([@harrylewis][])
198
- * Improve the performance of `FactoryBot/AttributeDefinedStatically`, `RSpec/InstanceVariable`, `RSpec/LetSetup`, `RSpec/NestedGroups` and `RSpec/ReturnFromStub`. ([@andrykonchin][])
212
+ - Extend the list of Rails spec types for `RSpec/DescribeClass`. ([@pirj])
213
+ - Fix `FactoryBot/AttributeDefinedStatically` to allow `#traits_for_enum` without a block. ([@harrylewis])
214
+ - Improve the performance of `FactoryBot/AttributeDefinedStatically`, `RSpec/InstanceVariable`, `RSpec/LetSetup`, `RSpec/NestedGroups` and `RSpec/ReturnFromStub`. ([@andrykonchin])
199
215
 
200
216
  ## 1.40.0 (2020-06-11)
201
217
 
202
- * Add new `RSpec/VariableName` cop. ([@tejasbubane][])
203
- * Add new `RSpec/VariableDefinition` cop. ([@tejasbubane][])
204
- * Expand `Capybara/VisibilityMatcher` to support more than just `have_selector`. ([@twalpole][])
205
- * Add new `SpecSuffixOnly` option to `RSpec/FilePath` cop. ([@zdennis][])
206
- * Allow `RSpec/RepeatedExampleGroupBody` to differ only by described_class. ([@robotdana][])
207
- * Fix `RSpec/FilePath` detection across sibling directories. ([@rolfschmidt][])
208
- * Improve the performance of `RSpec/SubjectStub` by an order of magnitude. ([@andrykonchin][])
218
+ - Add new `RSpec/VariableName` cop. ([@tejasbubane])
219
+ - Add new `RSpec/VariableDefinition` cop. ([@tejasbubane])
220
+ - Expand `Capybara/VisibilityMatcher` to support more than just `have_selector`. ([@twalpole])
221
+ - Add new `SpecSuffixOnly` option to `RSpec/FilePath` cop. ([@zdennis])
222
+ - Allow `RSpec/RepeatedExampleGroupBody` to differ only by described_class. ([@robotdana])
223
+ - Fix `RSpec/FilePath` detection across sibling directories. ([@rolfschmidt])
224
+ - Improve the performance of `RSpec/SubjectStub` by an order of magnitude. ([@andrykonchin])
209
225
 
210
226
  ## 1.39.0 (2020-05-01)
211
227
 
212
- * Fix `RSpec/FilePath` detection when absolute path includes test subject. ([@eitoball][])
213
- * Add new `Capybara/VisibilityMatcher` cop. ([@aried3r][])
214
- * Ignore String constants by `RSpec/Describe`. ([@AlexWayfer][])
215
- * Drop support for ruby 2.3. ([@bquorning][])
216
- * Fix multiple cops to detect `let` with proc argument. ([@tejasbubane][])
217
- * Add autocorrect support for `RSpec/ScatteredLet`. ([@Darhazer][])
218
- * Add new `RSpec/EmptyHook` cop. ([@tejasbubane][])
228
+ - Fix `RSpec/FilePath` detection when absolute path includes test subject. ([@eitoball])
229
+ - Add new `Capybara/VisibilityMatcher` cop. ([@aried3r])
230
+ - Ignore String constants by `RSpec/Describe`. ([@AlexWayfer])
231
+ - Drop support for ruby 2.3. ([@bquorning])
232
+ - Fix multiple cops to detect `let` with proc argument. ([@tejasbubane])
233
+ - Add autocorrect support for `RSpec/ScatteredLet`. ([@Darhazer])
234
+ - Add new `RSpec/EmptyHook` cop. ([@tejasbubane])
219
235
 
220
236
  ## 1.38.1 (2020-02-15)
221
237
 
222
- * Fix `RSpec/RepeatedDescription` to detect descriptions with interpolation and methods. ([@lazycoder9][])
238
+ - Fix `RSpec/RepeatedDescription` to detect descriptions with interpolation and methods. ([@lazycoder9])
223
239
 
224
240
  ## 1.38.0 (2020-02-11)
225
241
 
226
- * Fix `RSpec/InstanceVariable` detection inside custom matchers. ([@pirj][])
227
- * Fix `RSpec/ScatteredSetup` to distinguish hooks with different metadata. ([@pirj][])
228
- * Add autocorrect support for `RSpec/ExpectActual` cop. ([@dduugg][], [@pirj][])
229
- * Add `RSpec/RepeatedExampleGroupBody` cop. ([@lazycoder9][])
230
- * Add `RSpec/RepeatedExampleGroupDescription` cop. ([@lazycoder9][])
231
- * Add block name and other lines to `RSpec/ScatteredSetup` message. ([@elebow][])
232
- * Fix `RSpec/RepeatedDescription` to take into account example metadata. ([@lazycoder9][])
242
+ - Fix `RSpec/InstanceVariable` detection inside custom matchers. ([@pirj])
243
+ - Fix `RSpec/ScatteredSetup` to distinguish hooks with different metadata. ([@pirj])
244
+ - Add autocorrect support for `RSpec/ExpectActual` cop. ([@dduugg], [@pirj])
245
+ - Add `RSpec/RepeatedExampleGroupBody` cop. ([@lazycoder9])
246
+ - Add `RSpec/RepeatedExampleGroupDescription` cop. ([@lazycoder9])
247
+ - Add block name and other lines to `RSpec/ScatteredSetup` message. ([@elebow])
248
+ - Fix `RSpec/RepeatedDescription` to take into account example metadata. ([@lazycoder9])
233
249
 
234
250
  ## 1.37.1 (2019-12-16)
235
251
 
236
- * Improve message and description of `FactoryBot/FactoryClassName`. ([@ybiquitous][])
237
- * Fix `FactoryBot/FactoryClassName` to ignore `Hash` and `OpenStruct`. ([@jfragoulis][])
252
+ - Improve message and description of `FactoryBot/FactoryClassName`. ([@ybiquitous])
253
+ - Fix `FactoryBot/FactoryClassName` to ignore `Hash` and `OpenStruct`. ([@jfragoulis])
238
254
 
239
255
  ## 1.37.0 (2019-11-25)
240
256
 
241
- * Implement `RSpec/DescribedClassModuleWrapping` to disallow RSpec statements within a module. ([@kellysutton][])
242
- * Fix documentation rake task to support Rubocop 0.75. ([@nickcampbell18][])
243
- * Fix `RSpec/SubjectStub` to detect implicit subjects stubbed. ([@QQism][])
244
- * Fix `RSpec/Pending` not flagging `skip` with string values. ([@pirj][])
245
- * Add `AllowedExplicitMatchers` config option for `RSpec/PredicateMatcher`. ([@mkrawc][])
246
- * Add `FactoryBot/FactoryClassName` cop. ([@jfragoulis][])
257
+ - Implement `RSpec/DescribedClassModuleWrapping` to disallow RSpec statements within a module. ([@kellysutton])
258
+ - Fix documentation rake task to support Rubocop 0.75. ([@nickcampbell18])
259
+ - Fix `RSpec/SubjectStub` to detect implicit subjects stubbed. ([@QQism])
260
+ - Fix `RSpec/Pending` not flagging `skip` with string values. ([@pirj])
261
+ - Add `AllowedExplicitMatchers` config option for `RSpec/PredicateMatcher`. ([@mkrawc])
262
+ - Add `FactoryBot/FactoryClassName` cop. ([@jfragoulis])
247
263
 
248
264
  ## 1.36.0 (2019-09-27)
249
265
 
250
- * Fix `RSpec/DescribedClass`'s error when `described_class` is used as part of a constant. ([@pirj][])
251
- * Fix `RSpec/ExampleWording` autocorrect of multi-line docstrings. ([@pirj][])
252
- * Add `RSpec/ContextMethod` cop, to detect method names in `context`. ([@geniou][])
253
- * Update RuboCop dependency to 0.68.1 with support for children matching node pattern syntax. ([@pirj][])
254
- * Add `RSpec/EmptyLineAfterExample` cop to check that there is an empty line after example blocks. ([@pirj][])
255
- * Fix `Capybara/CurrentPathExpectation` auto-corrector, to include option `ignore_query: true`. ([@onumis][])
256
- * Fix `RSpec/Focus` detecting mixed array/hash metadata. ([@dgollahon][])
257
- * Fix `RSpec/Focus` to also detect `pending` examples. ([@dgollahon][])
266
+ - Fix `RSpec/DescribedClass`'s error when `described_class` is used as part of a constant. ([@pirj])
267
+ - Fix `RSpec/ExampleWording` autocorrect of multi-line docstrings. ([@pirj])
268
+ - Add `RSpec/ContextMethod` cop, to detect method names in `context`. ([@geniou])
269
+ - Update RuboCop dependency to 0.68.1 with support for children matching node pattern syntax. ([@pirj])
270
+ - Add `RSpec/EmptyLineAfterExample` cop to check that there is an empty line after example blocks. ([@pirj])
271
+ - Fix `Capybara/CurrentPathExpectation` auto-corrector, to include option `ignore_query: true`. ([@onumis])
272
+ - Fix `RSpec/Focus` detecting mixed array/hash metadata. ([@dgollahon])
273
+ - Fix `RSpec/Focus` to also detect `pending` examples. ([@dgollahon])
258
274
 
259
275
  ## 1.35.0 (2019-08-02)
260
276
 
261
- * Add `RSpec/ImplicitBlockExpectation` cop. ([@pirj][])
277
+ - Add `RSpec/ImplicitBlockExpectation` cop. ([@pirj])
262
278
 
263
279
  ## 1.34.1 (2019-07-31)
264
280
 
265
- * Fix `RSpec/DescribedClass`'s error when a local variable is part of the namespace. ([@pirj][])
281
+ - Fix `RSpec/DescribedClass`'s error when a local variable is part of the namespace. ([@pirj])
266
282
 
267
283
  ## 1.34.0 (2019-07-23)
268
284
 
269
- * Remove `AggregateFailuresByDefault` config option of `RSpec/MultipleExpectations`. ([@pirj][])
270
- * Add `RSpec/LeakyConstantDeclaration` cop. ([@jonatas][], [@pirj][])
271
- * Improve `aggregate_failures` metadata detection of `RSpec/MultipleExpectations`. ([@pirj][])
272
- * Improve `RSpec/SubjectStub` detection and message. ([@pirj][])
273
- * Change message of `RSpec/LetSetup` cop to be more descriptive. ([@foton][])
274
- * Improve `RSpec/ExampleWording` to handle interpolated example messages. ([@nc-holodakg][])
275
- * Improve detection by allowing the use of `RSpec` as a top-level constant. ([@pirj][])
276
- * Fix `RSpec/DescribedClass`'s incorrect detection. ([@pirj][])
277
- * Improve `RSpec/DescribedClass`'s ability to detect inside modules and classes. ([@pirj][])
285
+ - Remove `AggregateFailuresByDefault` config option of `RSpec/MultipleExpectations`. ([@pirj])
286
+ - Add `RSpec/LeakyConstantDeclaration` cop. ([@jonatas], [@pirj])
287
+ - Improve `aggregate_failures` metadata detection of `RSpec/MultipleExpectations`. ([@pirj])
288
+ - Improve `RSpec/SubjectStub` detection and message. ([@pirj])
289
+ - Change message of `RSpec/LetSetup` cop to be more descriptive. ([@foton])
290
+ - Improve `RSpec/ExampleWording` to handle interpolated example messages. ([@nc-holodakg])
291
+ - Improve detection by allowing the use of `RSpec` as a top-level constant. ([@pirj])
292
+ - Fix `RSpec/DescribedClass`'s incorrect detection. ([@pirj])
293
+ - Improve `RSpec/DescribedClass`'s ability to detect inside modules and classes. ([@pirj])
278
294
 
279
295
  ## 1.33.0 (2019-05-13)
280
296
 
281
- * Let `RSpec/DescribedClass` pass `Struct` instantiation closures. ([@schmijos][])
282
- * Fixed `RSpec/ContextWording` missing `context`s with metadata. ([@pirj][])
283
- * Fix `FactoryBot/AttributeDefinedStatically` not working with an explicit receiver. ([@composerinteralia][])
284
- * Add `RSpec/Dialect` enforces custom RSpec dialects. ([@gsamokovarov][])
285
- * Fix redundant blank lines in `RSpec/MultipleSubjects`'s autocorrect. ([@pirj][])
286
- * Drop support for ruby `2.2`. ([@bquorning][])
297
+ - Let `RSpec/DescribedClass` pass `Struct` instantiation closures. ([@schmijos])
298
+ - Fixed `RSpec/ContextWording` missing `context`s with metadata. ([@pirj])
299
+ - Fix `FactoryBot/AttributeDefinedStatically` not working with an explicit receiver. ([@composerinteralia])
300
+ - Add `RSpec/Dialect` enforces custom RSpec dialects. ([@gsamokovarov])
301
+ - Fix redundant blank lines in `RSpec/MultipleSubjects`'s autocorrect. ([@pirj])
302
+ - Drop support for ruby `2.2`. ([@bquorning])
287
303
 
288
304
  ## 1.32.0 (2019-01-27)
289
305
 
290
- * Add `RSpec/Yield` cop, suggesting using the `and_yield` method when stubbing a method, accepting a block. ([@Darhazer][])
291
- * Fix `FactoryBot/CreateList` autocorrect crashing when the factory is called with a block=. ([@Darhazer][])
292
- * Fixed `RSpec/Focus` not flagging some cases of `RSpec.describe` with `focus: true`. ([@Darhazer][])
293
- * Fixed `RSpec/Pending` not flagging some cases of `RSpec.describe` with `:skip`. ([@Darhazer][])
294
- * Fix false positive in `RSpec/ReceiveCounts` when method name `exactly`, `at_least` or `at_most` is used along with `times`, without being an RSpec API. ([@Darhazer][])
306
+ - Add `RSpec/Yield` cop, suggesting using the `and_yield` method when stubbing a method, accepting a block. ([@Darhazer])
307
+ - Fix `FactoryBot/CreateList` autocorrect crashing when the factory is called with a block=. ([@Darhazer])
308
+ - Fixed `RSpec/Focus` not flagging some cases of `RSpec.describe` with `focus: true`. ([@Darhazer])
309
+ - Fixed `RSpec/Pending` not flagging some cases of `RSpec.describe` with `:skip`. ([@Darhazer])
310
+ - Fix false positive in `RSpec/ReceiveCounts` when method name `exactly`, `at_least` or `at_most` is used along with `times`, without being an RSpec API. ([@Darhazer])
295
311
 
296
312
  ## 1.31.0 (2019-01-02)
297
313
 
298
- * Add `IgnoreSharedExamples` option for `RSpec/NamedSubject`. ([@RST-J][])
299
- * Add autocorrect support for `Capybara/CurrentPathExpectation` cop. ([@ypresto][])
300
- * Add support for built-in `exists` matcher for `RSpec/PredicateMatcher` cop. ([@mkenyon][])
301
- * `SingleArgumentMessageChain` no longer reports an array as it's only argument as an offense. ([@Darhazer][])
314
+ - Add `IgnoreSharedExamples` option for `RSpec/NamedSubject`. ([@RST-J])
315
+ - Add autocorrect support for `Capybara/CurrentPathExpectation` cop. ([@ypresto])
316
+ - Add support for built-in `exists` matcher for `RSpec/PredicateMatcher` cop. ([@mkenyon])
317
+ - `SingleArgumentMessageChain` no longer reports an array as it's only argument as an offense. ([@Darhazer])
302
318
 
303
319
  ## 1.30.1 (2018-11-01)
304
320
 
305
- * `FactoryBot/CreateList` now ignores `times` blocks with an argument. ([@Darhazer][])
321
+ - `FactoryBot/CreateList` now ignores `times` blocks with an argument. ([@Darhazer])
306
322
 
307
323
  ## 1.30.0 (2018-10-08)
308
324
 
309
- * Add config to `RSpec/VerifiedDoubles` to enforcement of verification on unnamed doubles. ([@BrentWheeldon][])
310
- * Fix `FactoryBot/AttributeDefinedStatically` not working when there is a non-symbol key. ([@vzvu3k6k][])
311
- * Fix false positive in `RSpec/ImplicitSubject` when `is_expected` is used inside `its()` block. ([@Darhazer][])
312
- * Add `single_statement_only` style to `RSpec/ImplicitSubject` as a more relaxed alternative to `single_line_only`. ([@Darhazer][])
313
- * Add `RSpec/UnspecifiedException` as a default cop to encourage more-specific `expect{}.to raise_error(ExceptionType)`, or `raise_exception` style handling of exceptions. ([@daveworth][])
325
+ - Add config to `RSpec/VerifiedDoubles` to enforcement of verification on unnamed doubles. ([@BrentWheeldon])
326
+ - Fix `FactoryBot/AttributeDefinedStatically` not working when there is a non-symbol key. ([@vzvu3k6k])
327
+ - Fix false positive in `RSpec/ImplicitSubject` when `is_expected` is used inside `its()` block. ([@Darhazer])
328
+ - Add `single_statement_only` style to `RSpec/ImplicitSubject` as a more relaxed alternative to `single_line_only`. ([@Darhazer])
329
+ - Add `RSpec/UnspecifiedException` as a default cop to encourage more-specific `expect{}.to raise_error(ExceptionType)`, or `raise_exception` style handling of exceptions. ([@daveworth])
314
330
 
315
331
  ## 1.29.1 (2018-09-01)
316
332
 
317
- * Fix false negative in `FactoryBot/AttributeDefinedStatically` when attribute is defined on `self`. ([@Darhazer][])
318
- * `RSpec/FactoryBot` cops will now also inspect the `spec/factories.rb` path by default. ([@bquorning][])
333
+ - Fix false negative in `FactoryBot/AttributeDefinedStatically` when attribute is defined on `self`. ([@Darhazer])
334
+ - `RSpec/FactoryBot` cops will now also inspect the `spec/factories.rb` path by default. ([@bquorning])
319
335
 
320
336
  ## 1.29.0 (2018-08-25)
321
337
 
322
- * `RSpec/InstanceVariable` - Recommend local variables in addition to `let`. ([@jaredbeck][])
323
- * Add `RSpec/ImplicitSubject` cop. ([@Darhazer][])
324
- * Add `RSpec/HooksBeforeExamples` cop. ([@Darhazer][])
338
+ - `RSpec/InstanceVariable` - Recommend local variables in addition to `let`. ([@jaredbeck])
339
+ - Add `RSpec/ImplicitSubject` cop. ([@Darhazer])
340
+ - Add `RSpec/HooksBeforeExamples` cop. ([@Darhazer])
325
341
 
326
342
  ## 1.28.0 (2018-08-14)
327
343
 
328
- * Add `RSpec/ReceiveNever` cop enforcing usage of `not_to receive` instead of `never` matcher. ([@Darhazer][])
329
- * Fix false positive in `RSpec/EmptyLineAfterExampleGroup` cop when example is inside `if`. ([@Darhazer][])
330
- * Add `RSpec/MissingExampleGroupArgument` to enforce first argument for an example group. ([@geniou][])
331
- * Drop support for ruby `2.1`. ([@bquorning][])
332
- * Add `FactoryBot/AttributeDefinedStatically` cop to help FactoryBot users with the deprecation of static attributes. ([@composerinteralia][], [@seanpdoyle][])
333
- * Remove `FactoryBot/DynamicAttributeDefinedStatically` and `FactoryBot/StaticAttributeDefinedDynamically` cops. ([@composerinteralia][])
344
+ - Add `RSpec/ReceiveNever` cop enforcing usage of `not_to receive` instead of `never` matcher. ([@Darhazer])
345
+ - Fix false positive in `RSpec/EmptyLineAfterExampleGroup` cop when example is inside `if`. ([@Darhazer])
346
+ - Add `RSpec/MissingExampleGroupArgument` to enforce first argument for an example group. ([@geniou])
347
+ - Drop support for ruby `2.1`. ([@bquorning])
348
+ - Add `FactoryBot/AttributeDefinedStatically` cop to help FactoryBot users with the deprecation of static attributes. ([@composerinteralia], [@seanpdoyle])
349
+ - Remove `FactoryBot/DynamicAttributeDefinedStatically` and `FactoryBot/StaticAttributeDefinedDynamically` cops. ([@composerinteralia])
334
350
 
335
351
  ## 1.27.0 (2018-06-14)
336
352
 
337
- * `RSpec/LeadingSubject` now enforces subject to be before any examples, hooks or let declarations. ([@Darhazer][])
338
- * Fix `RSpec/NotToNot` to highlight only the selector (`not_to` or `to_not`), so it works also on `expect { ... }` blocks. ([@bquorning][])
339
- * Add `RSpec/EmptyLineAfterHook` cop. ([@bquorning][])
340
- * Add `RSpec/EmptyLineAfterExampleGroup` cop to check that there is an empty line after example group blocks. ([@bquorning][])
341
- * Fix `RSpec/DescribeClass` crashing on `RSpec.describe` without arguments. ([@Darhazer][])
342
- * Bump RuboCop requirement to v0.56.0. ([@bquorning][])
343
- * Fix `RSpec/OverwritingSetup` crashing if a variable is used as an argument for `let`. ([@Darhazer][])
353
+ - `RSpec/LeadingSubject` now enforces subject to be before any examples, hooks or let declarations. ([@Darhazer])
354
+ - Fix `RSpec/NotToNot` to highlight only the selector (`not_to` or `to_not`), so it works also on `expect { ... }` blocks. ([@bquorning])
355
+ - Add `RSpec/EmptyLineAfterHook` cop. ([@bquorning])
356
+ - Add `RSpec/EmptyLineAfterExampleGroup` cop to check that there is an empty line after example group blocks. ([@bquorning])
357
+ - Fix `RSpec/DescribeClass` crashing on `RSpec.describe` without arguments. ([@Darhazer])
358
+ - Bump RuboCop requirement to v0.56.0. ([@bquorning])
359
+ - Fix `RSpec/OverwritingSetup` crashing if a variable is used as an argument for `let`. ([@Darhazer])
344
360
 
345
361
  ## 1.26.0 (2018-06-06)
346
362
 
347
- * Fix false positive in `RSpec/EmptyExampleGroup` cop when methods named like a RSpec method are used. ([@Darhazer][])
348
- * Fix `Capybara/FeatureMethods` not working when there is require before the spec. ([@Darhazer][])
349
- * Fix `RSpec/EmptyLineAfterFinalLet`: allow a comment to be placed after latest let, requiring empty line after the comment. ([@Darhazer][])
350
- * Add `RSpec/ReceiveCounts` cop to enforce usage of :once and :twice matchers. ([@Darhazer][])
363
+ - Fix false positive in `RSpec/EmptyExampleGroup` cop when methods named like a RSpec method are used. ([@Darhazer])
364
+ - Fix `Capybara/FeatureMethods` not working when there is require before the spec. ([@Darhazer])
365
+ - Fix `RSpec/EmptyLineAfterFinalLet`: allow a comment to be placed after latest let, requiring empty line after the comment. ([@Darhazer])
366
+ - Add `RSpec/ReceiveCounts` cop to enforce usage of :once and :twice matchers. ([@Darhazer])
351
367
 
352
368
  ## 1.25.1 (2018-04-10)
353
369
 
354
- * Fix false positive in `RSpec/Pending` cop when pending is used as a method name. ([@Darhazer][])
355
- * Fix `FactoryBot/DynamicAttributeDefinedStatically` false positive when using symbol proc argument for a sequence. ([@tdeo][])
370
+ - Fix false positive in `RSpec/Pending` cop when pending is used as a method name. ([@Darhazer])
371
+ - Fix `FactoryBot/DynamicAttributeDefinedStatically` false positive when using symbol proc argument for a sequence. ([@tdeo])
356
372
 
357
373
  ## 1.25.0 (2018-04-07)
358
374
 
359
- * Add `RSpec/SharedExamples` cop to enforce consistent usage of string to titleize shared examples. ([@anthony-robin][])
360
- * Add `RSpec/Be` cop to enforce passing argument to the generic `be` matcher. ([@Darhazer][])
361
- * Fix false positives in `StaticAttributeDefinedDynamically` and `ReturnFromStub` when a const is used in an array or hash. ([@Darhazer][])
362
- * Add `RSpec/Pending` cop to enforce no existing pending or skipped examples. This is disabled by default. ([@patrickomatic][])
363
- * Fix `RSpec/NestedGroups` cop support --auto-gen-config. ([@walf443][])
364
- * Fix false positives in `Capybara/FeatureMethods` when feature methods are used as property names in a factory. ([@Darhazer][])
365
- * Allow configuring enabled methods in `Capybara/FeatureMethods`. ([@Darhazer][])
366
- * Add `FactoryBot/CreateList` cop. ([@Darhazer][])
375
+ - Add `RSpec/SharedExamples` cop to enforce consistent usage of string to titleize shared examples. ([@anthony-robin])
376
+ - Add `RSpec/Be` cop to enforce passing argument to the generic `be` matcher. ([@Darhazer])
377
+ - Fix false positives in `StaticAttributeDefinedDynamically` and `ReturnFromStub` when a const is used in an array or hash. ([@Darhazer])
378
+ - Add `RSpec/Pending` cop to enforce no existing pending or skipped examples. This is disabled by default. ([@patrickomatic])
379
+ - Fix `RSpec/NestedGroups` cop support --auto-gen-config. ([@walf443])
380
+ - Fix false positives in `Capybara/FeatureMethods` when feature methods are used as property names in a factory. ([@Darhazer])
381
+ - Allow configuring enabled methods in `Capybara/FeatureMethods`. ([@Darhazer])
382
+ - Add `FactoryBot/CreateList` cop. ([@Darhazer])
367
383
 
368
384
  ## 1.24.0 (2018-03-06)
369
385
 
370
- * Compatibility with RuboCop v0.53.0. ([@bquorning][])
371
- * The `Rails/HttpStatus` cop is unavailable if the `rack` gem cannot be loaded. ([@bquorning][])
372
- * Fix `Rails/HttpStatus` not working with custom HTTP status codes. ([@bquorning][])
373
- * Fix `FactoryBot/StaticAttributeDefinedDynamically` to handle empty block. ([@abrom][])
374
- * Fix false positive in `FactoryBot/DynamicAttributeDefinedStatically` when a before/after callback has a symbol proc argument. ([@abrom][])
386
+ - Compatibility with RuboCop v0.53.0. ([@bquorning])
387
+ - The `Rails/HttpStatus` cop is unavailable if the `rack` gem cannot be loaded. ([@bquorning])
388
+ - Fix `Rails/HttpStatus` not working with custom HTTP status codes. ([@bquorning])
389
+ - Fix `FactoryBot/StaticAttributeDefinedDynamically` to handle empty block. ([@abrom])
390
+ - Fix false positive in `FactoryBot/DynamicAttributeDefinedStatically` when a before/after callback has a symbol proc argument. ([@abrom])
375
391
 
376
392
  ## 1.23.0 (2018-02-23)
377
393
 
378
- * Add `RSpec/Rails/HttpStatus` cop to enforce consistent usage of the status format (numeric or symbolic). ([@anthony-robin][], [@jojos003][])
379
- * Fix false negative in `RSpec/ReturnFromStub` when a constant is being returned by the stub. ([@Darhazer][])
380
- * Fix `FactoryBot/DynamicAttributeDefinedStatically` to handle dynamic attributes inside arrays/hashes. ([@abrom][])
381
- * Add `FactoryBot/StaticAttributeDefinedDynamically` (based on dynamic attribute cop). ([@abrom][])
394
+ - Add `RSpec/Rails/HttpStatus` cop to enforce consistent usage of the status format (numeric or symbolic). ([@anthony-robin], [@jojos003])
395
+ - Fix false negative in `RSpec/ReturnFromStub` when a constant is being returned by the stub. ([@Darhazer])
396
+ - Fix `FactoryBot/DynamicAttributeDefinedStatically` to handle dynamic attributes inside arrays/hashes. ([@abrom])
397
+ - Add `FactoryBot/StaticAttributeDefinedDynamically` (based on dynamic attribute cop). ([@abrom])
382
398
 
383
399
  ## 1.22.2 (2018-02-01)
384
400
 
385
- * Fix error in `RSpec/DescribedClass` when working on an empty `describe` block. ([@bquorning][])
401
+ - Fix error in `RSpec/DescribedClass` when working on an empty `describe` block. ([@bquorning])
386
402
 
387
403
  ## 1.22.1 (2018-01-17)
388
404
 
389
- * Fix false positives in `RSpec/ReturnFromStub`. ([@Darhazer][])
405
+ - Fix false positives in `RSpec/ReturnFromStub`. ([@Darhazer])
390
406
 
391
407
  ## 1.22.0 (2018-01-10)
392
408
 
393
- * Updates `describe_class` to account for RSpecs `:system` wrapper of rails system tests. ([@EliseFitz15][])
394
- * Add `RSpec/ExpectChange` cop to enforce consistent usage of the change matcher. ([@Darhazer][])
395
- * Add autocorrect support to `RSpec/LetBeforeExamples`. ([@Darhazer][])
396
- * Fix `RSpec/InstanceVariable` flagging instance variables inside dynamically defined class. ([@Darhazer][])
397
- * Add autocorrect support for `RSpec/ReturnFromStub` cop. ([@bquorning][])
398
- * Add `RSpec/ExampleWithoutDescription` cop. ([@Darhazer][])
409
+ - Updates `describe_class` to account for RSpecs `:system` wrapper of rails system tests. ([@EliseFitz15])
410
+ - Add `RSpec/ExpectChange` cop to enforce consistent usage of the change matcher. ([@Darhazer])
411
+ - Add autocorrect support to `RSpec/LetBeforeExamples`. ([@Darhazer])
412
+ - Fix `RSpec/InstanceVariable` flagging instance variables inside dynamically defined class. ([@Darhazer])
413
+ - Add autocorrect support for `RSpec/ReturnFromStub` cop. ([@bquorning])
414
+ - Add `RSpec/ExampleWithoutDescription` cop. ([@Darhazer])
399
415
 
400
416
  ## 1.21.0 (2017-12-13)
401
417
 
402
- * Compatibility with RuboCop v0.52.0. ([@bquorning][])
403
- * Improve performance when user does not override default RSpec Pattern config. ([@walf443][])
404
- * Add `AggregateFailuresByDefault` configuration for `RSpec/MultipleExpectations` cop. ([@onk][])
418
+ - Compatibility with RuboCop v0.52.0. ([@bquorning])
419
+ - Improve performance when user does not override default RSpec Pattern config. ([@walf443])
420
+ - Add `AggregateFailuresByDefault` configuration for `RSpec/MultipleExpectations` cop. ([@onk])
405
421
 
406
422
  ## 1.20.1 (2017-11-15)
407
423
 
408
- * Add "without" to list of default allowed prefixes for `RSpec/ContextWording`. ([@bquorning][])
424
+ - Add "without" to list of default allowed prefixes for `RSpec/ContextWording`. ([@bquorning])
409
425
 
410
426
  ## 1.20.0 (2017-11-09)
411
427
 
412
- * Rename namespace `FactoryGirl` to `FactoryBot` following original library update. ([@walf443][])
413
- * Fix exception in `RSpec/ReturnFromStub` on empty block. ([@yevhene][])
414
- * Add `RSpec/ContextWording` cop. ([@pirj][], [@telmofcosta][])
415
- * Fix `RSpec/SubjectStub` cop matches receive message inside all matcher. ([@walf443][])
428
+ - Rename namespace `FactoryGirl` to `FactoryBot` following original library update. ([@walf443])
429
+ - Fix exception in `RSpec/ReturnFromStub` on empty block. ([@yevhene])
430
+ - Add `RSpec/ContextWording` cop. ([@pirj], [@telmofcosta])
431
+ - Fix `RSpec/SubjectStub` cop matches receive message inside all matcher. ([@walf443])
416
432
 
417
433
  ## 1.19.0 (2017-10-18)
418
434
 
@@ -420,234 +436,235 @@ Compatibility release so users can upgrade RuboCop to 0.51.0. No new features.
420
436
 
421
437
  ## 1.18.0 (2017-09-29)
422
438
 
423
- * Fix false positive in `Capybara/FeatureMethods`. ([@Darhazer][])
424
- * Add `RSpec/Capybara/CurrentPathExpectation` cop for feature specs, disallowing setting expectations on `current_path`. ([@timrogers][])
425
- * Fix false positive in `RSpec/LetBeforeExamples` cop when example group contains single let. ([@Darhazer][])
439
+ - Fix false positive in `Capybara/FeatureMethods`. ([@Darhazer])
440
+ - Add `RSpec/Capybara/CurrentPathExpectation` cop for feature specs, disallowing setting expectations on `current_path`. ([@timrogers])
441
+ - Fix false positive in `RSpec/LetBeforeExamples` cop when example group contains single let. ([@Darhazer])
426
442
 
427
443
  ## 1.17.1 (2017-09-20)
428
444
 
429
- * Improved `RSpec/ReturnFromStub` to handle string interpolation, hashes and do..end blocks. ([@Darhazer][])
430
- * Fixed compatibility with JRuby. ([@zverok][])
445
+ - Improved `RSpec/ReturnFromStub` to handle string interpolation, hashes and do..end blocks. ([@Darhazer])
446
+ - Fixed compatibility with JRuby. ([@zverok])
431
447
 
432
448
  ## 1.17.0 (2017-09-14)
433
449
 
434
- * Add `RSpec/Capybara` namespace including the first cop for feature specs: `Capybara/FeatureMethods`. ([@rspeicher][])
435
- * Update to RuboCop 0.50.0. ([@bquorning][])
450
+ - Add `RSpec/Capybara` namespace including the first cop for feature specs: `Capybara/FeatureMethods`. ([@rspeicher])
451
+ - Update to RuboCop 0.50.0. ([@bquorning])
436
452
 
437
453
  ## 1.16.0 (2017-09-06)
438
454
 
439
- * Add `RSpec/FactoryGirl` namespace including the first cop for factories: `FactoryGirl/DynamicAttributeDefinedStatically`. ([@jonatas][])
440
- * Add disabled by default `RSpec/AlignLeftLetBrace`. ([@backus][])
441
- * Add disabled by default `RSpec/AlignRightLetBrace`. ([@backus][])
442
- * Add `RSpec/LetBeforeExamples` cop. ([@Darhazer][])
443
- * Add `RSpec/MultipleSubjects` cop. ([@backus][])
444
- * Add `RSpec/ReturnFromStub` cop. ([@Darhazer][])
445
- * Add `RSpec/VoidExpect` cop. ([@pocke][])
446
- * Add `RSpec/InvalidPredicateMatcher` cop. ([@pocke][])
447
- * Change HookArgument cop to detect when hook has a receiver. ([@pocke][])
448
- * Add `RSpec/PredicateMatcher` cop. ([@pocke][])
449
- * Add `RSpec/ExpectInHook` cop. ([@pocke][])
450
- * `RSpec/MultipleExpectations` now detects usage of expect_any_instance_of. ([@Darhazer][])
451
- * `RSpec/MultipleExpectations` now detects usage of is_expected. ([@bmorrall][])
455
+ - Add `RSpec/FactoryGirl` namespace including the first cop for factories: `FactoryGirl/DynamicAttributeDefinedStatically`. ([@jonatas])
456
+ - Add disabled by default `RSpec/AlignLeftLetBrace`. ([@backus])
457
+ - Add disabled by default `RSpec/AlignRightLetBrace`. ([@backus])
458
+ - Add `RSpec/LetBeforeExamples` cop. ([@Darhazer])
459
+ - Add `RSpec/MultipleSubjects` cop. ([@backus])
460
+ - Add `RSpec/ReturnFromStub` cop. ([@Darhazer])
461
+ - Add `RSpec/VoidExpect` cop. ([@pocke])
462
+ - Add `RSpec/InvalidPredicateMatcher` cop. ([@pocke])
463
+ - Change HookArgument cop to detect when hook has a receiver. ([@pocke])
464
+ - Add `RSpec/PredicateMatcher` cop. ([@pocke])
465
+ - Add `RSpec/ExpectInHook` cop. ([@pocke])
466
+ - `RSpec/MultipleExpectations` now detects usage of expect_any_instance_of. ([@Darhazer])
467
+ - `RSpec/MultipleExpectations` now detects usage of is_expected. ([@bmorrall])
452
468
 
453
469
  ## 1.15.1 (2017-04-30)
454
470
 
455
- * Fix the handling of various edge cases in the `RSpec/ExampleWording` cop, including one that would cause autocorrect to crash. ([@dgollahon][])
456
- * Fix `RSpec/IteratedExpectation` crashing when there is an assignment in the iteration. ([@Darhazer][])
457
- * Fix false positive in `RSpec/SingleArgumentMessageChain` cop when the single argument is a hash. ([@Darhazer][])
471
+ - Fix the handling of various edge cases in the `RSpec/ExampleWording` cop, including one that would cause autocorrect to crash. ([@dgollahon])
472
+ - Fix `RSpec/IteratedExpectation` crashing when there is an assignment in the iteration. ([@Darhazer])
473
+ - Fix false positive in `RSpec/SingleArgumentMessageChain` cop when the single argument is a hash. ([@Darhazer])
458
474
 
459
475
  ## 1.15.0 (2017-03-24)
460
476
 
461
- * Add `RSpec/DescribeSymbol` cop. ([@rspeicher][])
462
- * Fix error when `RSpec/OverwritingSetup` and `RSpec/ScatteredLet` analyzed empty example groups. ([@backus][])
477
+ - Add `RSpec/DescribeSymbol` cop. ([@rspeicher])
478
+ - Fix error when `RSpec/OverwritingSetup` and `RSpec/ScatteredLet` analyzed empty example groups. ([@backus])
463
479
 
464
480
  ## 1.14.0 (2017-03-24)
465
481
 
466
- * Add `RSpec/OverwritingSetup` cop. ([@Darhazer][])
467
- * Add autocorrect support for `RSpec/LeadingSubject` cop. ([@Darhazer][])
468
- * Add `RSpec/ScatteredLet` cop. ([@Darhazer][])
469
- * Add `RSpec/IteratedExpectation` cop. ([@Darhazer][])
470
- * Add `RSpec/EmptyLineAfterSubject` cop. ([@Darhazer][])
471
- * Add `RSpec/EmptyLineAfterFinalLet` cop. ([@Darhazer][])
482
+ - Add `RSpec/OverwritingSetup` cop. ([@Darhazer])
483
+ - Add autocorrect support for `RSpec/LeadingSubject` cop. ([@Darhazer])
484
+ - Add `RSpec/ScatteredLet` cop. ([@Darhazer])
485
+ - Add `RSpec/IteratedExpectation` cop. ([@Darhazer])
486
+ - Add `RSpec/EmptyLineAfterSubject` cop. ([@Darhazer])
487
+ - Add `RSpec/EmptyLineAfterFinalLet` cop. ([@Darhazer])
472
488
 
473
489
  ## 1.13.0 (2017-03-07)
474
490
 
475
- * Add repeated 'it' detection to `RSpec/ExampleWording` cop. ([@dgollahon][])
476
- * Add [observed_nesting/max_nesting] info to `RSpec/NestedGroups` messages. ([@dgollahon][])
477
- * Add `RSpec/ItBehavesLike` cop. ([@dgollahon][])
478
- * Add `RSpec/SharedContext` cop. ([@Darhazer][])
479
- * `RSpec/MultipleExpectations`: Count aggregate_failures block as single expectation. ([@Darhazer][])
480
- * Fix `ExpectActual` cop flagging `rspec-rails` routing specs. ([@backus][])
481
- * Fix `FilePath` cop not registering offenses for files like `spec/blog/user.rb` when it should be `spec/blog/user_spec.rb`. ([@backus][])
491
+ - Add repeated 'it' detection to `RSpec/ExampleWording` cop. ([@dgollahon])
492
+ - Add \[observed_nesting/max_nesting\] info to `RSpec/NestedGroups` messages. ([@dgollahon])
493
+ - Add `RSpec/ItBehavesLike` cop. ([@dgollahon])
494
+ - Add `RSpec/SharedContext` cop. ([@Darhazer])
495
+ - `RSpec/MultipleExpectations`: Count aggregate_failures block as single expectation. ([@Darhazer])
496
+ - Fix `ExpectActual` cop flagging `rspec-rails` routing specs. ([@backus])
497
+ - Fix `FilePath` cop not registering offenses for files like `spec/blog/user.rb` when it should be `spec/blog/user_spec.rb`. ([@backus])
482
498
 
483
499
  ## 1.12.0 (2017-02-21)
484
500
 
485
- * Add `RSpec/InstanceSpy` cop. ([@Darhazer][])
486
- * Add `RSpec/BeforeAfterAll` for avoiding leaky global test setup. ([@cfabianski][])
501
+ - Add `RSpec/InstanceSpy` cop. ([@Darhazer])
502
+ - Add `RSpec/BeforeAfterAll` for avoiding leaky global test setup. ([@cfabianski])
487
503
 
488
504
  ## 1.11.0 (2017-02-16)
489
505
 
490
- * Add `AroundBlock` cop. ([@Darhazer][])
491
- * Add `EnforcedStyle` configuration for `RSpec/DescribedClass` cop. ([@Darhazer][])
492
- * Fix false positive for `RSpec/RepeatedExample` cop. ([@redross][])
506
+ - Add `AroundBlock` cop. ([@Darhazer])
507
+ - Add `EnforcedStyle` configuration for `RSpec/DescribedClass` cop. ([@Darhazer])
508
+ - Fix false positive for `RSpec/RepeatedExample` cop. ([@redross])
493
509
 
494
510
  ## 1.10.0 (2017-01-15)
495
511
 
496
- * Fix false negative for `RSpec/MessageSpies` cop. ([@onk][])
497
- * Fix internal dependencies on RuboCop to be compatible with 0.47 release. ([@backus][])
498
- * Add autocorrect support for `SingleArgumentMessageChain` cop. ([@bquorning][])
499
- * Rename `NestedGroups`' configuration key from `MaxNesting` to `Max` in order to be consistent with other cop configuration. ([@backus][])
500
- * Add `RepeatedExample` cop for detecting repeated examples within example groups. ([@backus][])
501
- * Add `ScatteredSetup` cop for enforcing that only one `before`, `around`, and `after` hook are used per example group scope. ([@backus][])
502
- * Add `ExpectOutput` cop for recommending `expect { ... }.to output(...).to_stdout`. ([@backus][])
512
+ - Fix false negative for `RSpec/MessageSpies` cop. ([@onk])
513
+ - Fix internal dependencies on RuboCop to be compatible with 0.47 release. ([@backus])
514
+ - Add autocorrect support for `SingleArgumentMessageChain` cop. ([@bquorning])
515
+ - Rename `NestedGroups`' configuration key from `MaxNesting` to `Max` in order to be consistent with other cop configuration. ([@backus])
516
+ - Add `RepeatedExample` cop for detecting repeated examples within example groups. ([@backus])
517
+ - Add `ScatteredSetup` cop for enforcing that only one `before`, `around`, and `after` hook are used per example group scope. ([@backus])
518
+ - Add `ExpectOutput` cop for recommending `expect { ... }.to output(...).to_stdout`. ([@backus])
503
519
 
504
520
  ## 1.9.1 (2017-01-02)
505
521
 
506
- * Fix unintentional regression change in `NestedGroups` reported in #270. ([@backus][])
507
- * Change `MaxNesting` for `NestedGroups` from 2 to 3. ([@backus][])
522
+ - Fix unintentional regression change in `NestedGroups` reported in #270. ([@backus])
523
+ - Change `MaxNesting` for `NestedGroups` from 2 to 3. ([@backus])
508
524
 
509
525
  ## 1.9.0 (2016-12-29)
510
526
 
511
- * Add `MessageSpies` cop for enforcing consistent style of either `expect(...).to have_received` or `expect(...).to receive`, intended as a replacement for the `MessageExpectation` cop. ([@bquorning][])
512
- * Fix `DescribeClass` to not flag `describe` at the top of a block of shared examples. ([@clupprich][])
513
- * Add `SingleArgumentMessageChain` cop for recommending use of `receive` instead of `receive_message_chain` where possible. ([@bquorning][])
514
- * Add `RepeatedDescription` cop for detecting repeated example descriptions within example groups. ([@backus][])
527
+ - Add `MessageSpies` cop for enforcing consistent style of either `expect(...).to have_received` or `expect(...).to receive`, intended as a replacement for the `MessageExpectation` cop. ([@bquorning])
528
+ - Fix `DescribeClass` to not flag `describe` at the top of a block of shared examples. ([@clupprich])
529
+ - Add `SingleArgumentMessageChain` cop for recommending use of `receive` instead of `receive_message_chain` where possible. ([@bquorning])
530
+ - Add `RepeatedDescription` cop for detecting repeated example descriptions within example groups. ([@backus])
515
531
 
516
532
  ## 1.8.0 (2016-10-27)
517
533
 
518
- * Optionally ignore method names in the `describe` argument when running the `FilePath` cop. ([@bquorning][])
519
- * Fix regression in how `FilePath` converts alphanumeric class names into paths. ([@bquorning][])
520
- * Add `ImplicitExpect` cop for enforcing `should` vs. `is_expected.to`. ([@backus][])
521
- * Disable `MessageExpectation` cop in the default configuration. ([@bquorning][])
534
+ - Optionally ignore method names in the `describe` argument when running the `FilePath` cop. ([@bquorning])
535
+ - Fix regression in how `FilePath` converts alphanumeric class names into paths. ([@bquorning])
536
+ - Add `ImplicitExpect` cop for enforcing `should` vs. `is_expected.to`. ([@backus])
537
+ - Disable `MessageExpectation` cop in the default configuration. ([@bquorning])
522
538
 
523
539
  ## 1.7.0 (2016-08-24)
524
540
 
525
- * Add support for checking all example groups with `ExampleLength`. ([@backus][])
526
- * Add support for checking shared example groups for `DescribedClass`. ([@backus][])
527
- * Add support for checking `its` from [rspec-its](https://github.com/rspec/rspec-its). ([@backus][])
528
- * Add `EmptyExampleGroup` cop for detecting `describe`s and `context`s without any tests inside. ([@backus][])
529
- * Add `CustomIncludeMethods` configuration option for `EmptyExampleGroup`. ([@backus][])
530
- * Add `NestedGroups` cop for detecting excessive example group nesting. ([@backus][])
531
- * Add `MaxNesting` configuration option for `NestedGroups` cop. ([@backus][])
532
- * Add `ExpectActual` cop for detecting literal values within `expect(...)`. ([@backus][])
533
- * Add `MultipleExpectations` cop for detecting multiple `expect(...)` calls within one example. ([@backus][])
534
- * Add `Max` configuration option for `MultipleExpectations`. ([@backus][])
535
- * Add `SubjectStub` cop for testing stubbed test subjects. ([@backus][])
536
- * Add `LetSetup` cop for detecting cases where `let!` is used for test setup. ([@backus][])
537
- * Change all cops to only inspect files with names following rspec convention (`*/spec/*` and/or `_spec.rb`). ([@backus][])
538
- * Add `AllCops/RSpec` configuration option for specifying custom spec file patterns. ([@backus][])
539
- * Add `AssignmentOnly` configuration option for `RSpec/InstanceVariable` cop. ([@backus][])
540
- * Add `BeEql` cop which looks for expectations that can use `be(...)` instead of `eql(...)`. ([@backus][])
541
- * Add autocorrect support for `BeEql` cop. ([@backus][])
542
- * Add `MessageExpectation` cop for enforcing consistent style of either `expect(...).to receive` or `allow(...).to receive`. ([@backus][])
543
- * Add `MessageChain` cop. ([@bquorning][])
541
+ - Add support for checking all example groups with `ExampleLength`. ([@backus])
542
+ - Add support for checking shared example groups for `DescribedClass`. ([@backus])
543
+ - Add support for checking `its` from [rspec-its](https://github.com/rspec/rspec-its). ([@backus])
544
+ - Add `EmptyExampleGroup` cop for detecting `describe`s and `context`s without any tests inside. ([@backus])
545
+ - Add `CustomIncludeMethods` configuration option for `EmptyExampleGroup`. ([@backus])
546
+ - Add `NestedGroups` cop for detecting excessive example group nesting. ([@backus])
547
+ - Add `MaxNesting` configuration option for `NestedGroups` cop. ([@backus])
548
+ - Add `ExpectActual` cop for detecting literal values within `expect(...)`. ([@backus])
549
+ - Add `MultipleExpectations` cop for detecting multiple `expect(...)` calls within one example. ([@backus])
550
+ - Add `Max` configuration option for `MultipleExpectations`. ([@backus])
551
+ - Add `SubjectStub` cop for testing stubbed test subjects. ([@backus])
552
+ - Add `LetSetup` cop for detecting cases where `let!` is used for test setup. ([@backus])
553
+ - Change all cops to only inspect files with names following rspec convention (`*/spec/*` and/or `_spec.rb`). ([@backus])
554
+ - Add `AllCops/RSpec` configuration option for specifying custom spec file patterns. ([@backus])
555
+ - Add `AssignmentOnly` configuration option for `RSpec/InstanceVariable` cop. ([@backus])
556
+ - Add `BeEql` cop which looks for expectations that can use `be(...)` instead of `eql(...)`. ([@backus])
557
+ - Add autocorrect support for `BeEql` cop. ([@backus])
558
+ - Add `MessageExpectation` cop for enforcing consistent style of either `expect(...).to receive` or `allow(...).to receive`. ([@backus])
559
+ - Add `MessageChain` cop. ([@bquorning])
544
560
 
545
561
  ## 1.6.0 (2016-08-03)
546
562
 
547
- * Add `SkipBlocks` option for `DescribedClass` cop. ([@backus][])
563
+ - Add `SkipBlocks` option for `DescribedClass` cop. ([@backus])
548
564
 
549
565
  ## 1.5.3 (2016-08-02)
550
566
 
551
- * Add `RSpec/NamedSubject` cop. ([@backus][])
567
+ - Add `RSpec/NamedSubject` cop. ([@backus])
552
568
 
553
569
  ## 1.5.2 (2016-08-01)
554
570
 
555
- * Drop support for ruby `2.0.0` and `2.1.0`. ([@backus][])
556
- * Internal refactorings and improved test coverage. ([@backus][])
571
+ - Drop support for ruby `2.0.0` and `2.1.0`. ([@backus])
572
+ - Internal refactorings and improved test coverage. ([@backus])
557
573
 
558
574
  ## 1.5.1 (2016-07-20)
559
575
 
560
- * Fix `unrecognized parameter RSpec/VerifiedDoubles:IgnoreSymbolicNames` warning. ([@jeffreyc][])
561
- * Update to rubocop 0.41.2. ([@backus][])
576
+ - Fix `unrecognized parameter RSpec/VerifiedDoubles:IgnoreSymbolicNames` warning. ([@jeffreyc])
577
+ - Update to rubocop 0.41.2. ([@backus])
562
578
 
563
579
  ## 1.5.0 (2016-05-17)
564
580
 
565
- * Expand `VerifiedDoubles` cop to check for `spy` as well as `double`. ([@andyw8][])
566
- * Enable `VerifiedDoubles` cop by default. ([@andyw8][])
567
- * Add `IgnoreSymbolicNames` option for `VerifiedDoubles` cop. ([@andyw8][])
568
- * Add `RSpec::ExampleLength` cop. ([@andyw8][])
569
- * Handle alphanumeric class names in `FilePath` cop. ([@andyw8][])
570
- * Skip `DescribeClass` cop for view specs. ([@andyw8][])
571
- * Skip `FilePath` cop for Rails routing specs. ([@andyw8][])
572
- * Add cop to check for focused specs. ([@renanborgescampos][], [@jaredmoody][])
573
- * Clean-up `RSpec::NotToNot` to use same configuration semantics as other Rubocop cops, add autocorrect support for `RSpec::NotToNot`. ([@baberthal][])
574
- * Update to rubocop 0.40.0. ([@nijikon][])
581
+ - Expand `VerifiedDoubles` cop to check for `spy` as well as `double`. ([@andyw8])
582
+ - Enable `VerifiedDoubles` cop by default. ([@andyw8])
583
+ - Add `IgnoreSymbolicNames` option for `VerifiedDoubles` cop. ([@andyw8])
584
+ - Add `RSpec::ExampleLength` cop. ([@andyw8])
585
+ - Handle alphanumeric class names in `FilePath` cop. ([@andyw8])
586
+ - Skip `DescribeClass` cop for view specs. ([@andyw8])
587
+ - Skip `FilePath` cop for Rails routing specs. ([@andyw8])
588
+ - Add cop to check for focused specs. ([@renanborgescampos], [@jaredmoody])
589
+ - Clean-up `RSpec::NotToNot` to use same configuration semantics as other Rubocop cops, add autocorrect support for `RSpec::NotToNot`. ([@baberthal])
590
+ - Update to rubocop 0.40.0. ([@nijikon])
575
591
 
576
592
  ## 1.4.1 (2016-04-03)
577
593
 
578
- * Ignore routing specs for DescribeClass cop. ([@nijikon][])
579
- * Move rubocop dependency to runtime. ([@nijikon][])
580
- * Update to rubocop 0.39.0. ([@nijikon][])
594
+ - Ignore routing specs for DescribeClass cop. ([@nijikon])
595
+ - Move rubocop dependency to runtime. ([@nijikon])
596
+ - Update to rubocop 0.39.0. ([@nijikon])
581
597
 
582
598
  ## 1.4.0 (2016-02-15)
583
599
 
584
- * Update to rubocop 0.37.2. ([@nijikon][])
585
- * Update ruby versions we test against. ([@nijikon][])
586
- * Add `RSpec::NotToNot` cop. ([@miguelfteixeira][])
587
- * Add `RSpec/AnyInstance` cop. ([@mlarraz][])
600
+ - Update to rubocop 0.37.2. ([@nijikon])
601
+ - Update ruby versions we test against. ([@nijikon])
602
+ - Add `RSpec::NotToNot` cop. ([@miguelfteixeira])
603
+ - Add `RSpec/AnyInstance` cop. ([@mlarraz])
588
604
 
589
605
  ## 1.3.1
590
606
 
591
- * Fix auto correction issue - syntax had changed in RuboCop v0.31. ([@bquorning][])
592
- * Add RuboCop clone to vendor folder - see #39 for details. ([@bquorning][])
607
+ - Fix auto correction issue - syntax had changed in RuboCop v0.31. ([@bquorning])
608
+ - Add RuboCop clone to vendor folder - see #39 for details. ([@bquorning])
593
609
 
594
610
  ## 1.3.0
595
611
 
596
- * Ignore non string arguments for FilePathCop - thanks to @deivid-rodriguez. ([@geniou][])
597
- * Skip DescribeMethod cop for tagged specs. ([@deivid-rodriguez][])
598
- * Skip DescribeClass cop for feature/request specs. ([@deivid-rodriguez][])
612
+ - Ignore non string arguments for FilePathCop - thanks to @deivid-rodriguez. ([@geniou])
613
+ - Skip DescribeMethod cop for tagged specs. ([@deivid-rodriguez])
614
+ - Skip DescribeClass cop for feature/request specs. ([@deivid-rodriguez])
599
615
 
600
616
  ## 1.2.2
601
617
 
602
- * Make `RSpec::ExampleWording` case insensitive. ([@geniou][])
618
+ - Make `RSpec::ExampleWording` case insensitive. ([@geniou])
603
619
 
604
620
  ## 1.2.1
605
621
 
606
- * Add `RSpec::VerifiedDoubles` cop. ([@andyw8][])
622
+ - Add `RSpec::VerifiedDoubles` cop. ([@andyw8])
607
623
 
608
624
  ## 1.2.0
609
625
 
610
- * Drop support of ruby `1.9.2`. ([@geniou][])
611
- * Update to RuboCop `~> 0.24`. ([@geniou][])
612
- * Add `autocorrect` to `RSpec::ExampleWording`. This experimental - use with care and check the changes. ([@geniou][])
613
- * Fix config loader debug output. ([@geniou][])
614
- * Rename `FileName` cop to `FilePath` as a workaround - see [#19](https://github.com/nevir/rubocop-rspec/issues/19). ([@geniou][])
626
+ - Drop support of ruby `1.9.2`. ([@geniou])
627
+ - Update to RuboCop `~> 0.24`. ([@geniou])
628
+ - Add `autocorrect` to `RSpec::ExampleWording`. This experimental - use with care and check the changes. ([@geniou])
629
+ - Fix config loader debug output. ([@geniou])
630
+ - Rename `FileName` cop to `FilePath` as a workaround - see [#19](https://github.com/nevir/rubocop-rspec/issues/19). ([@geniou])
615
631
 
616
632
  ## 1.1.0
617
633
 
618
- * Add `autocorrect` to `RSpec::DescribedClass` cop. ([@geniou][])
634
+ - Add `autocorrect` to `RSpec::DescribedClass` cop. ([@geniou])
619
635
 
620
636
  ## 1.0.1
621
637
 
622
- * Add `config` folder to gemspec. ([@pstengel][])
638
+ - Add `config` folder to gemspec. ([@pstengel])
623
639
 
624
640
  ## 1.0.rc3
625
641
 
626
- * Update to RuboCop `>= 0.23`. ([@geniou][])
627
- * Add configuration option for `CustomTransformation` to `FileName` cop. ([@geniou][])
642
+ - Update to RuboCop `>= 0.23`. ([@geniou])
643
+ - Add configuration option for `CustomTransformation` to `FileName` cop. ([@geniou])
628
644
 
629
645
  ## 1.0.rc2
630
646
 
631
- * Gem is no longer 20MB (sorry!). ([@nevir][])
632
- * `RspecFileName` cop allows for method specs to organized into directories by class and type. ([@nevir][])
647
+ - Gem is no longer 20MB (sorry!). ([@nevir])
648
+ - `RspecFileName` cop allows for method specs to organized into directories by class and type. ([@nevir])
633
649
 
634
650
  ## 1.0.rc1
635
651
 
636
- * Update code to work with rubocop `>= 0.19`. ([@geniou][])
637
- * Split `UnitSpecNaming` cop into `RSpecDescribeClass`, `RSpecDescribeMethod` and `RSpecFileName` and enabled them all by default. ([@geniou][])
638
- * Add `RSpecExampleWording` cop to prevent to use of should at the beginning of the spec description. ([@geniou][])
639
- * Fix `RSpecFileName` cop for non-class specs. ([@geniou][])
640
- * Adapt `RSpecFileName` cop to common naming convention and skip spec with multiple top level describes. ([@geniou][])
641
- * Add `RSpecMultipleDescribes` cop to check for multiple top level describes. ([@geniou][])
642
- * Add `RSpecDescribedClass` to promote the use of `described_class`. ([@geniou][])
643
- * Add `RSpecInstanceVariable` cop to check for the usage of instance variables. ([@geniou][])
652
+ - Update code to work with rubocop `>= 0.19`. ([@geniou])
653
+ - Split `UnitSpecNaming` cop into `RSpecDescribeClass`, `RSpecDescribeMethod` and `RSpecFileName` and enabled them all by default. ([@geniou])
654
+ - Add `RSpecExampleWording` cop to prevent to use of should at the beginning of the spec description. ([@geniou])
655
+ - Fix `RSpecFileName` cop for non-class specs. ([@geniou])
656
+ - Adapt `RSpecFileName` cop to common naming convention and skip spec with multiple top level describes. ([@geniou])
657
+ - Add `RSpecMultipleDescribes` cop to check for multiple top level describes. ([@geniou])
658
+ - Add `RSpecDescribedClass` to promote the use of `described_class`. ([@geniou])
659
+ - Add `RSpecInstanceVariable` cop to check for the usage of instance variables. ([@geniou])
644
660
 
645
661
  <!-- Contributors (alphabetically) -->
646
662
 
647
663
  [@abrom]: https://github.com/abrom
648
664
  [@ahukkanen]: https://github.com/ahukkanen
649
665
  [@akiomik]: https://github.com/akiomik
650
- [@AlexWayfer]: https://github.com/AlexWayfer
666
+ [@akrox58]: https://github.com/akrox58
667
+ [@alexwayfer]: https://github.com/AlexWayfer
651
668
  [@andrykonchin]: https://github.com/andrykonchin
652
669
  [@andyw8]: https://github.com/andyw8
653
670
  [@anthony-robin]: https://github.com/anthony-robin
@@ -657,33 +674,34 @@ Compatibility release so users can upgrade RuboCop to 0.51.0. No new features.
657
674
  [@biinari]: https://github.com/biinari
658
675
  [@bmorrall]: https://github.com/bmorrall
659
676
  [@bquorning]: https://github.com/bquorning
660
- [@BrentWheeldon]: https://github.com/BrentWheeldon
661
- [@BrianHawley]: https://github.com/BrianHawley
677
+ [@brentwheeldon]: https://github.com/BrentWheeldon
678
+ [@brianhawley]: https://github.com/BrianHawley
662
679
  [@cfabianski]: https://github.com/cfabianski
663
680
  [@clupprich]: https://github.com/clupprich
664
681
  [@composerinteralia]: https://github.com/composerinteralia
665
- [@Darhazer]: https://github.com/Darhazer
682
+ [@darhazer]: https://github.com/Darhazer
666
683
  [@daveworth]: https://github.com/daveworth
667
684
  [@dduugg]: https://github.com/dduugg
668
685
  [@deivid-rodriguez]: https://github.com/deivid-rodriguez
669
686
  [@dgollahon]: https://github.com/dgollahon
670
- [@Drowze]: https://github.com/Drowze
687
+ [@drowze]: https://github.com/Drowze
671
688
  [@dswij]: https://github.com/dswij
672
689
  [@dvandersluis]: https://github.com/dvandersluis
673
690
  [@edgibbs]: https://github.com/edgibbs
674
691
  [@eikes]: https://github.com/eikes
675
692
  [@eitoball]: https://github.com/eitoball
676
693
  [@elebow]: https://github.com/elebow
677
- [@EliseFitz15]: https://github.com/EliseFitz15
694
+ [@elisefitz15]: https://github.com/EliseFitz15
678
695
  [@elliterate]: https://github.com/elliterate
679
696
  [@foton]: https://github.com/foton
680
697
  [@francois-ferrandis]: https://github.com/francois-ferrandis
681
- [@G-Rath]: https://github.com/G-Rath
698
+ [@g-rath]: https://github.com/G-Rath
682
699
  [@geniou]: https://github.com/geniou
683
700
  [@gsamokovarov]: https://github.com/gsamokovarov
684
701
  [@harry-graham]: https://github.com/harry-graham
685
702
  [@harrylewis]: https://github.com/harrylewis
686
703
  [@hosamaly]: https://github.com/hosamaly
704
+ [@ignaciovillaverde]: https://github.com/ignaciovillaverde
687
705
  [@jaredbeck]: https://github.com/jaredbeck
688
706
  [@jaredmoody]: https://github.com/jaredmoody
689
707
  [@jeffreyc]: https://github.com/jeffreyc
@@ -696,15 +714,16 @@ Compatibility release so users can upgrade RuboCop to 0.51.0. No new features.
696
714
  [@koic]: https://github.com/koic
697
715
  [@lazycoder9]: https://github.com/lazycoder9
698
716
  [@leoarnold]: https://github.com/leoarnold
717
+ [@liberatys]: https://github.com/Liberatys
699
718
  [@lokhi]: https://github.com/lokhi
700
719
  [@luke-hill]: https://github.com/luke-hill
701
- [@M-Yamashita01]: https://github.com/M-Yamashita01
720
+ [@m-yamashita01]: https://github.com/M-Yamashita01
702
721
  [@miguelfteixeira]: https://github.com/miguelfteixeira
703
722
  [@mkenyon]: https://github.com/mkenyon
704
723
  [@mkrawc]: https://github.com/mkrawc
705
724
  [@mlarraz]: https://github.com/mlarraz
706
725
  [@mockdeep]: https://github.com/mockdeep
707
- [@MothOnMars]: https://github.com/MothOnMars
726
+ [@mothonmars]: https://github.com/MothOnMars
708
727
  [@nc-holodakg]: https://github.com/nc-holodakg
709
728
  [@nevir]: https://github.com/nevir
710
729
  [@ngouy]: https://github.com/ngouy
@@ -715,20 +734,20 @@ Compatibility release so users can upgrade RuboCop to 0.51.0. No new features.
715
734
  [@oshiro3]: https://github.com/oshiro3
716
735
  [@patrickomatic]: https://github.com/patrickomatic
717
736
  [@paydaylight]: https://github.com/paydaylight
718
- [@PhilCoggins]: https://github.com/PhilCoggins
737
+ [@philcoggins]: https://github.com/PhilCoggins
719
738
  [@pirj]: https://github.com/pirj
720
739
  [@pocke]: https://github.com/pocke
721
740
  [@pstengel]: https://github.com/pstengel
722
- [@QQism]: https://github.com/QQism
741
+ [@qqism]: https://github.com/QQism
723
742
  [@r7kamura]: https://github.com/r7kamura
724
- [@Rafix02]: https://github.com/Rafix02
743
+ [@rafix02]: https://github.com/Rafix02
725
744
  [@redross]: https://github.com/redross
726
745
  [@renanborgescampos]: https://github.com/renanborgescampos
727
746
  [@robotdana]: https://github.com/robotdana
728
747
  [@rolfschmidt]: https://github.com/rolfschmidt
729
748
  [@rrosenblum]: https://github.com/rrosenblum
730
749
  [@rspeicher]: https://github.com/rspeicher
731
- [@RST-J]: https://github.com/RST-J
750
+ [@rst-j]: https://github.com/RST-J
732
751
  [@schmijos]: https://github.com/schmijos
733
752
  [@seanpdoyle]: https://github.com/seanpdoyle
734
753
  [@sl4vr]: https://github.com/sl4vr
@@ -737,7 +756,7 @@ Compatibility release so users can upgrade RuboCop to 0.51.0. No new features.
737
756
  [@tdeo]: https://github.com/tdeo
738
757
  [@tejasbubane]: https://github.com/tejasbubane
739
758
  [@telmofcosta]: https://github.com/telmofcosta
740
- [@Tietew]: https://github.com/Tietew
759
+ [@tietew]: https://github.com/Tietew
741
760
  [@timrogers]: https://github.com/timrogers
742
761
  [@topalovic]: https://github.com/topalovic
743
762
  [@twalpole]: https://github.com/twalpole