aroundhome_cops 2.0.0 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.ruby-version +1 -0
- data/CHANGELOG.md +16 -0
- data/aroundhome_cops.gemspec +4 -1
- data/default.yml +129 -27
- data/lib/aroundhome_cops.rb +1 -1
- metadata +21 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0aa989da6d5148c3fec013805e7cf05eb35e9cc5474e1c8e0b1b9586ff49ad83
|
4
|
+
data.tar.gz: 2599d7b62ac3bb217689b1f5e72bc9ee21e53617a7b0318b551a53e5d60471b5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 77d867c3da27835acc6533928c487f2f7825ed8552ecf7cd167a05b97030345c5cac11abd8e1d3d35cc7f52f8363aa9977b9206251759f9ec66d44e16601b413
|
7
|
+
data.tar.gz: 304234f4fd850d263bfcfb8ccd72fdf77aab3a60fb94ff476b8be7d4bed18e8a3b4829ac0dcf49370372dc4df6ec208eaa42f69a2fc7c7c1f32ea379815f0c47
|
data/.ruby-version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
2.5.8
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,19 @@
|
|
1
|
+
## Version 4.1.0
|
2
|
+
* Specify more precise defaults for rspec
|
3
|
+
* upgrade rubocop and rubocop-rspec and enable new offenses
|
4
|
+
|
5
|
+
## Version 4.0.0
|
6
|
+
* Opt into all Rubocop offenses up until 1.18
|
7
|
+
* Add rubocop-rspec as a dependency, to enforce better specs
|
8
|
+
|
9
|
+
## Version 3.0.0
|
10
|
+
|
11
|
+
* Support Rubocop 1.0 and opt into all offenses up until 1.13
|
12
|
+
|
13
|
+
## Version 2.1.0
|
14
|
+
|
15
|
+
* Allow ambiguous blocks in specs
|
16
|
+
|
1
17
|
## Version 2.0.0
|
2
18
|
|
3
19
|
* Rename to `aroundhome_cops` (our company name changed a while ago)
|
data/aroundhome_cops.gemspec
CHANGED
@@ -18,5 +18,8 @@ Gem::Specification.new do |spec|
|
|
18
18
|
.reject { |f| f.match(%r{^spec/}) }
|
19
19
|
spec.require_paths = ['lib']
|
20
20
|
|
21
|
-
spec.
|
21
|
+
spec.required_ruby_version = '>= 2.5.0'
|
22
|
+
|
23
|
+
spec.add_dependency 'rubocop', '~> 1.22'
|
24
|
+
spec.add_dependency 'rubocop-rspec', '~> 2.5'
|
22
25
|
end
|
data/default.yml
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
require:
|
2
|
+
- rubocop-rspec
|
3
|
+
|
1
4
|
AllCops:
|
2
5
|
Exclude:
|
3
6
|
- 'bin/**/*'
|
@@ -19,6 +22,17 @@ AllCops:
|
|
19
22
|
- 'db/migrate/2015*.rb'
|
20
23
|
- 'db/migrate/2016*.rb'
|
21
24
|
- 'db/migrate/2017*.rb'
|
25
|
+
SuggestExtensions:
|
26
|
+
rubocop-rails: false
|
27
|
+
|
28
|
+
# While we like to write blocks like the following
|
29
|
+
# expect { add_special_project }.not_to change { SpecialProject.count }
|
30
|
+
# Rubocop doesn't like that and prefers either of the following options for clarity
|
31
|
+
# expect { add_special_project }.not_to change(SpecialProject, :count)
|
32
|
+
# expect { add_special_project }.not_to(change { SpecialProject.count })
|
33
|
+
Lint/AmbiguousBlockAssociation:
|
34
|
+
Exclude:
|
35
|
+
- 'spec/**/*'
|
22
36
|
|
23
37
|
# Models can have a bunch of attributes which lead to long methods and high
|
24
38
|
# complexity values. However, these methods are still very readable because they
|
@@ -38,7 +52,7 @@ Layout/LineLength:
|
|
38
52
|
# long, since they are less comparable to methods and more comparable to
|
39
53
|
# modules/classes.
|
40
54
|
Metrics/BlockLength:
|
41
|
-
|
55
|
+
IgnoredMethods:
|
42
56
|
- context
|
43
57
|
- describe
|
44
58
|
- namespace
|
@@ -116,6 +130,35 @@ Style/FormatStringToken:
|
|
116
130
|
Metrics/ParameterLists:
|
117
131
|
CountKeywordArgs: false
|
118
132
|
|
133
|
+
# Adding "and" prefix to list of allowed prefixes to allow for nested contexts
|
134
|
+
# that start with "and" as a connector word "when foo is true and bar is false"
|
135
|
+
RSpec/ContextWording:
|
136
|
+
Prefixes:
|
137
|
+
- when
|
138
|
+
- with
|
139
|
+
- without
|
140
|
+
- and
|
141
|
+
|
142
|
+
# Complex tests require more flexibility in their length than allowed by default (5).
|
143
|
+
RSpec/ExampleLength:
|
144
|
+
Max: 10
|
145
|
+
|
146
|
+
# Complex tests often rely on more objects than allowed by default (5).
|
147
|
+
RSpec/MultipleMemoizedHelpers:
|
148
|
+
Max: 10
|
149
|
+
|
150
|
+
# We rarely use named subjects in our own projects.
|
151
|
+
# While it is a good practice in some cases, we do not want to enforce it
|
152
|
+
# through Rubocop.
|
153
|
+
# https://www.rubydoc.info/gems/rubocop-rspec/1.6.0/RuboCop/Cop/RSpec/NamedSubject
|
154
|
+
RSpec/NamedSubject:
|
155
|
+
Enabled: false
|
156
|
+
|
157
|
+
# Complex tests often generate more readable output with deeper nesting. The
|
158
|
+
# default (3) doesn't provide enough flexibility.
|
159
|
+
RSpec/NestedGroups:
|
160
|
+
Max: 7
|
161
|
+
|
119
162
|
# ----------------- Rubocop-forced enablements --------------
|
120
163
|
|
121
164
|
# Since version 0.80 rubocop wants to cause fewer breaking changes by new cops.
|
@@ -124,44 +167,103 @@ Metrics/ParameterLists:
|
|
124
167
|
# them below.
|
125
168
|
# Disabled cops will appear above with a comment explaining disablement.
|
126
169
|
|
127
|
-
|
170
|
+
Gemspec/DateAssignment: # (new in 1.10)
|
128
171
|
Enabled: true
|
129
|
-
|
130
|
-
Lint/RaiseException:
|
172
|
+
Layout/SpaceBeforeBrackets: # (new in 1.7)
|
131
173
|
Enabled: true
|
132
|
-
|
133
|
-
Lint/StructNewOverride:
|
174
|
+
Lint/AmbiguousAssignment: # (new in 1.7)
|
134
175
|
Enabled: true
|
135
|
-
|
136
|
-
Style/ExponentialNotation:
|
176
|
+
Lint/AmbiguousOperatorPrecedence: # (new in 1.21)
|
137
177
|
Enabled: true
|
138
|
-
|
139
|
-
Style/HashEachMethods:
|
178
|
+
Lint/AmbiguousRange: # (new in 1.19)
|
140
179
|
Enabled: true
|
141
|
-
|
142
|
-
Style/HashTransformKeys:
|
180
|
+
Lint/DeprecatedConstants: # (new in 1.8)
|
143
181
|
Enabled: true
|
144
|
-
|
145
|
-
Style/HashTransformValues:
|
182
|
+
Lint/DuplicateBranch: # (new in 1.3)
|
146
183
|
Enabled: true
|
147
|
-
|
148
|
-
Layout/EmptyLinesAroundAttributeAccessor:
|
184
|
+
Lint/DuplicateRegexpCharacterClassElement: # (new in 1.1)
|
149
185
|
Enabled: true
|
150
|
-
|
151
|
-
Lint/DeprecatedOpenSSLConstant:
|
186
|
+
Lint/EmptyBlock: # (new in 1.1)
|
152
187
|
Enabled: true
|
153
|
-
|
154
|
-
Lint/MixedRegexpCaptureTypes:
|
188
|
+
Lint/EmptyClass: # (new in 1.3)
|
155
189
|
Enabled: true
|
156
|
-
|
157
|
-
Style/RedundantFetchBlock:
|
190
|
+
Lint/IncompatibleIoSelectWithFiberScheduler: # (new in 1.21)
|
158
191
|
Enabled: true
|
159
|
-
|
160
|
-
Style/RedundantRegexpCharacterClass:
|
192
|
+
Lint/LambdaWithoutLiteralBlock: # (new in 1.8)
|
161
193
|
Enabled: true
|
162
|
-
|
163
|
-
|
194
|
+
Lint/NoReturnInBeginEndBlocks: # (new in 1.2)
|
195
|
+
Enabled: true
|
196
|
+
Lint/NumberedParameterAssignment: # (new in 1.9)
|
197
|
+
Enabled: true
|
198
|
+
Lint/OrAssignmentToConstant: # (new in 1.9)
|
199
|
+
Enabled: true
|
200
|
+
Lint/RedundantDirGlobSort: # (new in 1.8)
|
201
|
+
Enabled: true
|
202
|
+
Lint/RequireRelativeSelfPath: # (new in 1.22)
|
203
|
+
Enabled: true
|
204
|
+
Lint/SymbolConversion: # (new in 1.9)
|
205
|
+
Enabled: true
|
206
|
+
Lint/ToEnumArguments: # (new in 1.1)
|
207
|
+
Enabled: true
|
208
|
+
Lint/TripleQuotes: # (new in 1.9)
|
209
|
+
Enabled: true
|
210
|
+
Lint/UnexpectedBlockArity: # (new in 1.5)
|
211
|
+
Enabled: true
|
212
|
+
Lint/UnmodifiedReduceAccumulator: # (new in 1.1)
|
213
|
+
Enabled: true
|
214
|
+
Security/IoMethods: # (new in 1.22)
|
215
|
+
Enabled: true
|
216
|
+
Style/ArgumentsForwarding: # (new in 1.1)
|
217
|
+
Enabled: true
|
218
|
+
Style/CollectionCompact: # (new in 1.2)
|
219
|
+
Enabled: true
|
220
|
+
Style/DocumentDynamicEvalDefinition: # (new in 1.1)
|
221
|
+
Enabled: true
|
222
|
+
Style/EndlessMethod: # (new in 1.8)
|
223
|
+
Enabled: true
|
224
|
+
Style/HashConversion: # (new in 1.10)
|
225
|
+
Enabled: true
|
226
|
+
Style/HashExcept: # (new in 1.7)
|
227
|
+
Enabled: true
|
228
|
+
Style/IfWithBooleanLiteralBranches: # (new in 1.9)
|
229
|
+
Enabled: true
|
230
|
+
Style/NegatedIfElseCondition: # (new in 1.2)
|
231
|
+
Enabled: true
|
232
|
+
Style/NilLambda: # (new in 1.3)
|
233
|
+
Enabled: true
|
234
|
+
Style/NumberedParameters: # (new in 1.22)
|
235
|
+
Enabled: true
|
236
|
+
Style/NumberedParametersLimit: # (new in 1.22)
|
237
|
+
Enabled: true
|
238
|
+
Style/RedundantArgument: # (new in 1.4)
|
239
|
+
Enabled: true
|
240
|
+
Style/RedundantSelfAssignmentBranch: # (new in 1.19)
|
241
|
+
Enabled: true
|
242
|
+
Style/SelectByRegexp: # (new in 1.22)
|
243
|
+
Enabled: true
|
244
|
+
Style/StringChars: # (new in 1.12)
|
245
|
+
Enabled: true
|
246
|
+
Style/SwapValues: # (new in 1.1)
|
247
|
+
Enabled: true
|
248
|
+
Layout/LineEndStringConcatenationIndentation: # (new in 1.18)
|
249
|
+
Enabled: true
|
250
|
+
Lint/EmptyInPattern: # (new in 1.16)
|
251
|
+
Enabled: true
|
252
|
+
Naming/InclusiveLanguage: # (new in 1.18)
|
253
|
+
Enabled: true
|
254
|
+
Style/InPatternThen: # (new in 1.16)
|
255
|
+
Enabled: true
|
256
|
+
Style/MultilineInPatternThen: # (new in 1.16)
|
257
|
+
Enabled: true
|
258
|
+
Style/QuotedSymbols: # (new in 1.16)
|
164
259
|
Enabled: true
|
165
260
|
|
166
|
-
|
261
|
+
# ----------------- Rubocop-Rspec forced enablements --------------
|
262
|
+
RSpec/ExcessiveDocstringSpacing: # (new in 2.5)
|
263
|
+
Enabled: true
|
264
|
+
RSpec/IdenticalEqualityAssertion: # (new in 2.4)
|
265
|
+
Enabled: true
|
266
|
+
RSpec/Rails/AvoidSetupHook: # (new in 2.4)
|
267
|
+
Enabled: true
|
268
|
+
RSpec/SubjectDeclaration: # (new in 2.5)
|
167
269
|
Enabled: true
|
data/lib/aroundhome_cops.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aroundhome_cops
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 4.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jan Sandbrink
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-10-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rubocop
|
@@ -16,14 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '1.22'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '1.22'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rubocop-rspec
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '2.5'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '2.5'
|
27
41
|
description:
|
28
42
|
email:
|
29
43
|
- jan.sandbrink@aroundhome.de
|
@@ -34,6 +48,7 @@ files:
|
|
34
48
|
- ".gitignore"
|
35
49
|
- ".gitlab-ci.yml"
|
36
50
|
- ".rubocop.yml"
|
51
|
+
- ".ruby-version"
|
37
52
|
- CHANGELOG.md
|
38
53
|
- Gemfile
|
39
54
|
- README.md
|
@@ -51,14 +66,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
51
66
|
requirements:
|
52
67
|
- - ">="
|
53
68
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
69
|
+
version: 2.5.0
|
55
70
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
56
71
|
requirements:
|
57
72
|
- - ">="
|
58
73
|
- !ruby/object:Gem::Version
|
59
74
|
version: '0'
|
60
75
|
requirements: []
|
61
|
-
rubygems_version: 3.
|
76
|
+
rubygems_version: 3.2.22
|
62
77
|
signing_key:
|
63
78
|
specification_version: 4
|
64
79
|
summary: Dependency and configuration for rubocop.
|