rubocop-37signals 1.0.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b665740afdba1b02ebfb9018beb0b1a847890869d95f6701d0c0f9b4969f12cd
4
- data.tar.gz: 424502dd3f130e0da614b740bf202350a5bba5e8f5efe8e70c5fe3123f6ba73f
3
+ metadata.gz: 4401b98f88e6ca312ad0c0ef5922778550c77be925007c06c536835ba81b6362
4
+ data.tar.gz: 1c5758a7e2e0ea9a49e4081dbd3610d3ee0fbe69218fa56eb9aaa726e9e50443
5
5
  SHA512:
6
- metadata.gz: 90c8fc1d3d9ac976ccf593388b6504469be513ddb52ddd2c31d82223760e008febb2399839f5b53700940d2fddb77b69eb7f632c38d501eae748f699c1941b63
7
- data.tar.gz: cdc44906b24b81645dc70251ae4f76e08d544cb6817096b46e90b7aac3113d80a9c79a3a995bbf27e4163cddc695ae4281bcd288d0a7692e72ce60e8c426cc44
6
+ metadata.gz: 0fb49106202f099d55c3cb87447df29112b9f52207d5895c6dfc08b3b15146c8b7661abd1cc4ab4f041ce2cb3aead82c40eede9efd8f81838530872d579b32cd
7
+ data.tar.gz: 19fe7c1aec30259c42bf3975763d8929bedb9ae7a504eb04f4992427391b2ffd0449135315b4c2b85f330294e1220e5a1c560e3907d042b31521e863ab4fe9a1
@@ -0,0 +1 @@
1
+ # Stub so Bundler can quietly require the gem.
data/rubocop-ruby.yml ADDED
@@ -0,0 +1,206 @@
1
+ inherit_mode:
2
+ merge:
3
+ - Exclude
4
+
5
+ AllCops:
6
+ DisabledByDefault: true
7
+
8
+ # We generally prefer &&/|| but like low-precedence and/or in context
9
+ Style/AndOr:
10
+ Enabled: false
11
+
12
+ # Align `when` with `end`.
13
+ Layout/CaseIndentation:
14
+ Enabled: true
15
+ EnforcedStyle: end
16
+
17
+ # Align comments with method definitions.
18
+ Layout/CommentIndentation:
19
+ Enabled: true
20
+
21
+ Layout/ElseAlignment:
22
+ Enabled: true
23
+
24
+ # Align `end` with the matching keyword or starting expression except for
25
+ # assignments, where it should be aligned with the LHS.
26
+ Layout/EndAlignment:
27
+ Enabled: true
28
+ EnforcedStyleAlignWith: variable
29
+ AutoCorrect: true
30
+
31
+ Layout/EmptyLineAfterMagicComment:
32
+ Enabled: true
33
+
34
+ Layout/EmptyLinesAroundBlockBody:
35
+ Enabled: true
36
+
37
+ # In a regular class definition, no empty lines around the body.
38
+ Layout/EmptyLinesAroundClassBody:
39
+ Enabled: true
40
+
41
+ # In a regular method definition, no empty lines around the body.
42
+ Layout/EmptyLinesAroundMethodBody:
43
+ Enabled: true
44
+
45
+ # In a regular module definition, no empty lines around the body.
46
+ Layout/EmptyLinesAroundModuleBody:
47
+ Enabled: true
48
+
49
+ # Use Ruby >= 1.9 syntax for hashes. Prefer { a: :b } over { :a => :b }.
50
+ Style/HashSyntax:
51
+ Enabled: true
52
+ EnforcedShorthandSyntax: either
53
+
54
+ # Method definitions after `private` or `protected` isolated calls need one
55
+ # extra level of indentation.
56
+ #
57
+ # We break this rule in context, though, e.g. for private-only concerns,
58
+ # so we leave it disabled.
59
+ Layout/IndentationConsistency:
60
+ Enabled: false
61
+ EnforcedStyle: indented_internal_methods
62
+
63
+ # Two spaces, no tabs (for indentation).
64
+ #
65
+ # Doesn't behave properly with private-only concerns, so it's disabled.
66
+ Layout/IndentationWidth:
67
+ Enabled: false
68
+
69
+ Layout/LeadingCommentSpace:
70
+ Enabled: true
71
+
72
+ Layout/SpaceAfterColon:
73
+ Enabled: true
74
+
75
+ Layout/SpaceAfterComma:
76
+ Enabled: true
77
+
78
+ Layout/SpaceAroundEqualsInParameterDefault:
79
+ Enabled: true
80
+
81
+ Layout/SpaceAroundKeyword:
82
+ Enabled: true
83
+
84
+ Layout/SpaceBeforeComma:
85
+ Enabled: true
86
+
87
+ Layout/SpaceBeforeFirstArg:
88
+ Enabled: true
89
+
90
+ Style/DefWithParentheses:
91
+ Enabled: true
92
+
93
+ # Defining a method with parameters needs parentheses.
94
+ Style/MethodDefParentheses:
95
+ Enabled: true
96
+
97
+ # Use `foo {}` not `foo{}`.
98
+ Layout/SpaceBeforeBlockBraces:
99
+ Enabled: true
100
+
101
+ # Use `->(x, y) { x + y }` not `-> (x, y) { x + y }`
102
+ Layout/SpaceInLambdaLiteral:
103
+ Enabled: true
104
+
105
+ Style/StabbyLambdaParentheses:
106
+ Enabled: true
107
+
108
+ # Use `foo { bar }` not `foo {bar}`.
109
+ # Use `foo { }` not `foo {}`.
110
+ Layout/SpaceInsideBlockBraces:
111
+ Enabled: true
112
+ EnforcedStyleForEmptyBraces: space
113
+
114
+ # Use `[ a, [ b, c ] ]` not `[a, [b, c]]`
115
+ # Use `[]` not `[ ]`
116
+ Layout/SpaceInsideArrayLiteralBrackets:
117
+ Enabled: true
118
+ EnforcedStyle: space
119
+ EnforcedStyleForEmptyBrackets: no_space
120
+
121
+ # Use `%w[ a b ]` not `%w[ a b ]`.
122
+ Layout/SpaceInsideArrayPercentLiteral:
123
+ Enabled: true
124
+
125
+ # Use `{ a: 1 }` not `{a:1}`.
126
+ # Use `{}` not `{ }`.
127
+ Layout/SpaceInsideHashLiteralBraces:
128
+ Enabled: true
129
+ EnforcedStyle: space
130
+ EnforcedStyleForEmptyBraces: no_space
131
+
132
+ # Use `foo(bar)` not `foo( bar )`
133
+ Layout/SpaceInsideParens:
134
+ Enabled: true
135
+
136
+ # Requiring a space is not yet supported as of 0.59.2
137
+ # Use `%w[ foo ]` not `%w[foo]`
138
+ Layout/SpaceInsidePercentLiteralDelimiters:
139
+ Enabled: false
140
+ #EnforcedStyle: space
141
+
142
+ # Use `hash[:key]` not `hash[ :key ]`
143
+ Layout/SpaceInsideReferenceBrackets:
144
+ Enabled: true
145
+
146
+ # Use `"foo"` not `'foo'` unless escaping is required
147
+ Style/StringLiterals:
148
+ Enabled: true
149
+ EnforcedStyle: double_quotes
150
+
151
+ # Detect hard tabs, no hard tabs.
152
+ Layout/IndentationStyle:
153
+ Enabled: true
154
+
155
+ # Blank lines should not have any spaces.
156
+ Layout/TrailingEmptyLines:
157
+ Enabled: true
158
+
159
+ # No trailing whitespace.
160
+ Layout/TrailingWhitespace:
161
+ Enabled: true
162
+
163
+ # Use quotes for string literals when they are enough.
164
+ Style/RedundantPercentQ:
165
+ Enabled: false
166
+
167
+ # Use my_method(my_arg) not my_method( my_arg ) or my_method my_arg.
168
+ Lint/RequireParentheses:
169
+ Enabled: true
170
+
171
+ Lint/RedundantStringCoercion:
172
+ Enabled: true
173
+
174
+ Lint/UriEscapeUnescape:
175
+ Enabled: true
176
+
177
+ Style/ParenthesesAroundCondition:
178
+ Enabled: true
179
+
180
+ Style/RedundantReturn:
181
+ Enabled: true
182
+ AllowMultipleReturnValues: true
183
+
184
+ Style/Semicolon:
185
+ Enabled: true
186
+ AllowAsExpressionSeparator: true
187
+
188
+ # Prefer Foo.method over Foo::method
189
+ Style/ColonMethodCall:
190
+ Enabled: true
191
+
192
+ Style/PercentLiteralDelimiters:
193
+ Enabled: true
194
+ PreferredDelimiters:
195
+ default: "()"
196
+ "%i": "[]"
197
+ "%I": "[]"
198
+ "%r": "{}"
199
+ "%w": "[]"
200
+ "%W": "[]"
201
+
202
+ Style/TrailingCommaInArrayLiteral:
203
+ Enabled: true
204
+
205
+ Style/TrailingCommaInHashLiteral:
206
+ Enabled: true
data/rubocop.yml CHANGED
@@ -1,4 +1,6 @@
1
- require:
1
+ inherit_from: rubocop-ruby.yml
2
+
3
+ plugins:
2
4
  - rubocop-performance
3
5
  - rubocop-rails
4
6
  - rubocop-minitest
@@ -8,7 +10,6 @@ inherit_mode:
8
10
  - Exclude
9
11
 
10
12
  AllCops:
11
- DisabledByDefault: true
12
13
  Exclude:
13
14
  - "data/**/*"
14
15
  - "db/*schema.rb"
@@ -23,6 +24,12 @@ Performance:
23
24
  Exclude:
24
25
  - "test/**/*"
25
26
 
27
+ Performance/FlatMap:
28
+ Enabled: true
29
+
30
+ Performance/UnfreezeString:
31
+ Enabled: true
32
+
26
33
  # Prefer assert_not over assert !
27
34
  Rails/AssertNot:
28
35
  Include:
@@ -33,214 +40,11 @@ Rails/RefuteMethods:
33
40
  Include:
34
41
  - "test/**/*"
35
42
 
36
- # We generally prefer &&/|| but like low-precedence and/or in context
37
- Style/AndOr:
38
- Enabled: false
39
-
40
- # Align `when` with `end`.
41
- Layout/CaseIndentation:
42
- Enabled: true
43
- EnforcedStyle: end
44
-
45
- # Align comments with method definitions.
46
- Layout/CommentIndentation:
47
- Enabled: true
48
-
49
- Layout/ElseAlignment:
50
- Enabled: true
51
-
52
- # Align `end` with the matching keyword or starting expression except for
53
- # assignments, where it should be aligned with the LHS.
54
- Layout/EndAlignment:
55
- Enabled: true
56
- EnforcedStyleAlignWith: variable
57
- AutoCorrect: true
58
-
59
- Layout/EmptyLineAfterMagicComment:
60
- Enabled: true
61
-
62
- Layout/EmptyLinesAroundBlockBody:
63
- Enabled: true
64
-
65
- # In a regular class definition, no empty lines around the body.
66
- Layout/EmptyLinesAroundClassBody:
67
- Enabled: true
68
-
69
- # In a regular method definition, no empty lines around the body.
70
- Layout/EmptyLinesAroundMethodBody:
71
- Enabled: true
72
-
73
- # In a regular module definition, no empty lines around the body.
74
- Layout/EmptyLinesAroundModuleBody:
75
- Enabled: true
76
-
77
- # Use Ruby >= 1.9 syntax for hashes. Prefer { a: :b } over { :a => :b }.
78
- Style/HashSyntax:
79
- Enabled: true
80
-
81
- # Method definitions after `private` or `protected` isolated calls need one
82
- # extra level of indentation.
83
- #
84
- # We break this rule in context, though, e.g. for private-only concerns,
85
- # so we leave it disabled.
86
- Layout/IndentationConsistency:
87
- Enabled: false
88
- EnforcedStyle: indented_internal_methods
89
-
90
- # Two spaces, no tabs (for indentation).
91
- #
92
- # Doesn't behave properly with private-only concerns, so it's disabled.
93
- Layout/IndentationWidth:
94
- Enabled: false
95
-
96
- Layout/LeadingCommentSpace:
97
- Enabled: true
98
-
99
- Layout/SpaceAfterColon:
100
- Enabled: true
101
-
102
- Layout/SpaceAfterComma:
103
- Enabled: true
104
-
105
- Layout/SpaceAroundEqualsInParameterDefault:
106
- Enabled: true
107
-
108
- Layout/SpaceAroundKeyword:
109
- Enabled: true
110
-
111
- Layout/SpaceBeforeComma:
112
- Enabled: true
113
-
114
- Layout/SpaceBeforeFirstArg:
115
- Enabled: true
116
-
117
- Style/DefWithParentheses:
118
- Enabled: true
119
-
120
- # Defining a method with parameters needs parentheses.
121
- Style/MethodDefParentheses:
122
- Enabled: true
123
-
124
- # Use `foo {}` not `foo{}`.
125
- Layout/SpaceBeforeBlockBraces:
126
- Enabled: true
127
-
128
- # Use `->(x, y) { x + y }` not `-> (x, y) { x + y }`
129
- Layout/SpaceInLambdaLiteral:
130
- Enabled: true
131
-
132
- Style/StabbyLambdaParentheses:
133
- Enabled: true
134
-
135
- # Use `foo { bar }` not `foo {bar}`.
136
- # Use `foo { }` not `foo {}`.
137
- Layout/SpaceInsideBlockBraces:
138
- Enabled: true
139
- EnforcedStyleForEmptyBraces: space
140
-
141
- # Use `[ a, [ b, c ] ]` not `[a, [b, c]]`
142
- # Use `[]` not `[ ]`
143
- Layout/SpaceInsideArrayLiteralBrackets:
144
- Enabled: true
145
- EnforcedStyle: space
146
- EnforcedStyleForEmptyBrackets: no_space
147
-
148
- # Use `%w[ a b ]` not `%w[ a b ]`.
149
- Layout/SpaceInsideArrayPercentLiteral:
150
- Enabled: true
151
-
152
- # Use `{ a: 1 }` not `{a:1}`.
153
- # Use `{}` not `{ }`.
154
- Layout/SpaceInsideHashLiteralBraces:
155
- Enabled: true
156
- EnforcedStyle: space
157
- EnforcedStyleForEmptyBraces: no_space
158
-
159
- # Use `foo(bar)` not `foo( bar )`
160
- Layout/SpaceInsideParens:
161
- Enabled: true
162
-
163
- # Requiring a space is not yet supported as of 0.59.2
164
- # Use `%w[ foo ]` not `%w[foo]`
165
- Layout/SpaceInsidePercentLiteralDelimiters:
166
- Enabled: false
167
- #EnforcedStyle: space
168
-
169
- # Use `hash[:key]` not `hash[ :key ]`
170
- Layout/SpaceInsideReferenceBrackets:
171
- Enabled: true
172
-
173
43
  # Use `"foo"` not `'foo'` unless escaping is required
174
44
  Style/StringLiterals:
175
- Enabled: true
176
- EnforcedStyle: double_quotes
177
45
  Include:
178
46
  - "app/**/*"
179
47
  - "config/**/*"
180
48
  - "lib/**/*"
181
49
  - "test/**/*"
182
50
  - "Gemfile"
183
-
184
- # Detect hard tabs, no hard tabs.
185
- Layout/IndentationStyle:
186
- Enabled: true
187
-
188
- # Blank lines should not have any spaces.
189
- Layout/TrailingEmptyLines:
190
- Enabled: true
191
-
192
- # No trailing whitespace.
193
- Layout/TrailingWhitespace:
194
- Enabled: true
195
-
196
- # Use quotes for string literals when they are enough.
197
- Style/RedundantPercentQ:
198
- Enabled: false
199
-
200
- # Use my_method(my_arg) not my_method( my_arg ) or my_method my_arg.
201
- Lint/RequireParentheses:
202
- Enabled: true
203
-
204
- Lint/RedundantStringCoercion:
205
- Enabled: true
206
-
207
- Lint/UriEscapeUnescape:
208
- Enabled: true
209
-
210
- Style/ParenthesesAroundCondition:
211
- Enabled: true
212
-
213
- Style/RedundantReturn:
214
- Enabled: true
215
- AllowMultipleReturnValues: true
216
-
217
- Style/Semicolon:
218
- Enabled: true
219
- AllowAsExpressionSeparator: true
220
-
221
- # Prefer Foo.method over Foo::method
222
- Style/ColonMethodCall:
223
- Enabled: true
224
-
225
- Style/PercentLiteralDelimiters:
226
- Enabled: true
227
- PreferredDelimiters:
228
- default: "()"
229
- "%i": "[]"
230
- "%I": "[]"
231
- "%r": "{}"
232
- "%w": "[]"
233
- "%W": "[]"
234
-
235
- Style/TrailingCommaInArrayLiteral:
236
- Enabled: true
237
-
238
- Style/TrailingCommaInHashLiteral:
239
- Enabled: true
240
-
241
- Performance/FlatMap:
242
- Enabled: true
243
-
244
- Performance/UnfreezeString:
245
- Enabled: true
246
-
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubocop-37signals
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - 37signals
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2023-09-08 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: rubocop
@@ -16,68 +15,68 @@ dependencies:
16
15
  requirements:
17
16
  - - ">="
18
17
  - !ruby/object:Gem::Version
19
- version: '0'
18
+ version: '1.72'
20
19
  type: :runtime
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
23
  - - ">="
25
24
  - !ruby/object:Gem::Version
26
- version: '0'
25
+ version: '1.72'
27
26
  - !ruby/object:Gem::Dependency
28
27
  name: rubocop-rails
29
28
  requirement: !ruby/object:Gem::Requirement
30
29
  requirements:
31
30
  - - ">="
32
31
  - !ruby/object:Gem::Version
33
- version: '0'
32
+ version: '2.30'
34
33
  type: :runtime
35
34
  prerelease: false
36
35
  version_requirements: !ruby/object:Gem::Requirement
37
36
  requirements:
38
37
  - - ">="
39
38
  - !ruby/object:Gem::Version
40
- version: '0'
39
+ version: '2.30'
41
40
  - !ruby/object:Gem::Dependency
42
41
  name: rubocop-performance
43
42
  requirement: !ruby/object:Gem::Requirement
44
43
  requirements:
45
44
  - - ">="
46
45
  - !ruby/object:Gem::Version
47
- version: '0'
46
+ version: '1.24'
48
47
  type: :runtime
49
48
  prerelease: false
50
49
  version_requirements: !ruby/object:Gem::Requirement
51
50
  requirements:
52
51
  - - ">="
53
52
  - !ruby/object:Gem::Version
54
- version: '0'
53
+ version: '1.24'
55
54
  - !ruby/object:Gem::Dependency
56
55
  name: rubocop-minitest
57
56
  requirement: !ruby/object:Gem::Requirement
58
57
  requirements:
59
58
  - - ">="
60
59
  - !ruby/object:Gem::Version
61
- version: '0'
60
+ version: 0.37.0
62
61
  type: :runtime
63
62
  prerelease: false
64
63
  version_requirements: !ruby/object:Gem::Requirement
65
64
  requirements:
66
65
  - - ">="
67
66
  - !ruby/object:Gem::Version
68
- version: '0'
69
- description:
67
+ version: 0.37.0
70
68
  email: support@37signals.com
71
69
  executables: []
72
70
  extensions: []
73
71
  extra_rdoc_files: []
74
72
  files:
73
+ - lib/rubocop-37signals.rb
74
+ - rubocop-ruby.yml
75
75
  - rubocop.yml
76
76
  homepage: https://github.com/basecamp/house-style
77
77
  licenses:
78
78
  - MIT
79
79
  metadata: {}
80
- post_install_message:
81
80
  rdoc_options: []
82
81
  require_paths:
83
82
  - lib
@@ -92,8 +91,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
92
91
  - !ruby/object:Gem::Version
93
92
  version: '0'
94
93
  requirements: []
95
- rubygems_version: 3.4.12
96
- signing_key:
94
+ rubygems_version: 3.6.7
97
95
  specification_version: 4
98
96
  summary: 37signals house style for Ruby programming
99
97
  test_files: []