onkcop 0.47.1.2 → 0.48.0.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/CHANGELOG.md +14 -0
- data/README.md +2 -0
- data/config/rails.yml +4 -0
- data/config/rspec.yml +0 -1
- data/config/rubocop.yml +40 -7
- data/lib/onkcop/version.rb +1 -1
- data/onkcop.gemspec +2 -2
- data/templates/.rubocop.yml +2 -0
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fd88a1e7c280b9906ee97779d4ab30ededc487c7
|
4
|
+
data.tar.gz: 40667f4dccfe647bf057ca1d9ae47761fee83e40
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5022365b6f6c2c676255435abe44815ad9f2b0d92700432849c58c2344ad4020ba8c37217f6eb699fbb984061c35b4dab07f0e0bd54aeea611f3453fedb150c2
|
7
|
+
data.tar.gz: 5cd30da46be0569c8e6b1e2d9f083fbc543c86942ba566372292d908a68d2bdd15b603eaf424a4504bb0cb1bd5cf619c28bf179229304095ad605b89e6ec25cc
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,19 @@
|
|
1
1
|
# onkcop
|
2
2
|
|
3
|
+
## v0.48.0.0 (2017-03-29)
|
4
|
+
|
5
|
+
[full changelog](https://github.com/onk/onkcop/compare/v0.47.1.2...v0.48.0.0)
|
6
|
+
|
7
|
+
* Update `rubocop` v0.48.0.
|
8
|
+
* Disable new `Lint/AmbiguousBlockAssociation` cop.
|
9
|
+
* Disable new `Rails/Blank` cop.
|
10
|
+
* Disable `Style/SymbolArray`, `StyleWordArray` cop.
|
11
|
+
* Change `Style/MultilineMethodCallIndentation` to `indented_relative_to_receiver` style.
|
12
|
+
* Exclude RSpec directory from new `Style/MixinGrouping` cop.
|
13
|
+
* Ignore `node_modules` dir.
|
14
|
+
* Add `TargetRailsVersion` to README and template
|
15
|
+
|
16
|
+
|
3
17
|
## v0.47.1.2 (2017-03-01)
|
4
18
|
|
5
19
|
[full changelog](https://github.com/onk/onkcop/compare/v0.47.1.1...v0.47.1.2)
|
data/README.md
CHANGED
data/config/rails.yml
CHANGED
data/config/rspec.yml
CHANGED
data/config/rubocop.yml
CHANGED
@@ -1,14 +1,12 @@
|
|
1
|
-
# target_version:
|
2
|
-
# rubocop v0.47.1
|
3
|
-
|
4
1
|
# 自動生成されるものはチェック対象から除外する
|
5
2
|
AllCops:
|
6
3
|
Exclude:
|
7
4
|
- "vendor/**/*" # rubocop config/default.yml
|
8
5
|
- "db/schema.rb"
|
6
|
+
- "node_modules/**/*"
|
9
7
|
DisplayCopNames: true
|
10
8
|
|
11
|
-
|
9
|
+
#################### Style #################################
|
12
10
|
|
13
11
|
# レキシカルスコープの扱いが alias_method の方が自然。
|
14
12
|
# https://ernie.io/2014/10/23/in-defense-of-alias/ のように
|
@@ -147,9 +145,23 @@ Style/Lambda:
|
|
147
145
|
Style/MethodCalledOnDoEndBlock:
|
148
146
|
Enabled: true
|
149
147
|
|
148
|
+
# RSpec の matcher を誤検知するため
|
149
|
+
# expect(array).to include("a", "b")
|
150
|
+
Style/MixinGrouping:
|
151
|
+
Exclude:
|
152
|
+
- "spec/**/*"
|
153
|
+
|
154
|
+
# メソッドチェーン感がより感じられるインデントにする
|
155
|
+
Style/MultilineMethodCallIndentation:
|
156
|
+
EnforcedStyle: indented_relative_to_receiver
|
157
|
+
|
150
158
|
# 1_000_000 と区切り文字が 2 個以上必要になる場合のみ _ 区切りを必須にする
|
159
|
+
# 10_000_00 は許可しない。(これは例えば 10000 ドルをセント単位にする時に便利だが
|
160
|
+
# 頻出しないので foolproof に振る
|
161
|
+
# TODO: Strict パラメータは warning が出るので一旦無効に。 pull/4180
|
151
162
|
Style/NumericLiterals:
|
152
163
|
MinDigits: 7
|
164
|
+
# Strict: true
|
153
165
|
|
154
166
|
# foo.positive? は foo > 0 に比べて意味が曖昧になる
|
155
167
|
# foo.zero? は許可したいけどメソッドごとに指定できないので一括で disable に
|
@@ -206,6 +218,11 @@ Style/StringLiteralsInInterpolation:
|
|
206
218
|
Style/StringMethods:
|
207
219
|
Enabled: true
|
208
220
|
|
221
|
+
# %w() と %i() が見分けづらいので Style/WordArray と合わせて無効に。
|
222
|
+
# 書き手に委ねるという意味で、Enabled: false にしています。使っても良い。
|
223
|
+
Style/SymbolArray:
|
224
|
+
Enabled: false
|
225
|
+
|
209
226
|
# 三項演算子は分かりやすく使いたい。
|
210
227
|
# () を外さない方が条件式が何なのか読み取りやすいと感じる。
|
211
228
|
Style/TernaryParentheses:
|
@@ -215,6 +232,11 @@ Style/TernaryParentheses:
|
|
215
232
|
Style/TrailingCommaInLiteral:
|
216
233
|
EnforcedStyleForMultiline: comma
|
217
234
|
|
235
|
+
# %w() と %i() が見分けづらいので Style/SymbolArray と合わせて無効に。
|
236
|
+
# 書き手に委ねるという意味で、Enabled: false にしています。使っても良い。
|
237
|
+
Style/WordArray:
|
238
|
+
Enabled: false
|
239
|
+
|
218
240
|
# 条件式で arr.size > 0 が使われた時に
|
219
241
|
# if !arr.empty?
|
220
242
|
# else
|
@@ -224,7 +246,18 @@ Style/TrailingCommaInLiteral:
|
|
224
246
|
Style/ZeroLengthPredicate:
|
225
247
|
Enabled: false
|
226
248
|
|
227
|
-
|
249
|
+
#################### Lint ##################################
|
250
|
+
|
251
|
+
# メソッドの引数に lambda を渡すパターンが検出されるため。
|
252
|
+
# この場合は単一引数だし Ambiguous ではない (と思う) ので誤検知っぽい。
|
253
|
+
# some_method ->(a) { a }
|
254
|
+
# pull/4191 で修正済み
|
255
|
+
#
|
256
|
+
# assignment(`=`) が OK で `==`, `!=` が NG なのも考慮漏れっぽく見える。
|
257
|
+
# if [a, b] != array.sort_by { |e| e["id"] }
|
258
|
+
# は右から評価されるのを意図しているし違和感無い。
|
259
|
+
Lint/AmbiguousBlockAssociation:
|
260
|
+
Enabled: false
|
228
261
|
|
229
262
|
# Style/EmptyCaseCondition と同じく網羅の表現力が empty when を認めた方が高いし、
|
230
263
|
# 頻出する対象を最初の when で撥ねるのはパフォーマンス向上で頻出する。
|
@@ -255,7 +288,7 @@ Lint/UnderscorePrefixedVariableName:
|
|
255
288
|
Lint/UnusedMethodArgument:
|
256
289
|
Enabled: false
|
257
290
|
|
258
|
-
|
291
|
+
#################### Metrics ###############################
|
259
292
|
|
260
293
|
# 30 まではギリギリ許せる範囲だったけど
|
261
294
|
# リリースごとに 3 ずつぐらい下げていきます。20 まで下げたい。
|
@@ -298,7 +331,7 @@ Metrics/MethodLength:
|
|
298
331
|
Metrics/PerceivedComplexity:
|
299
332
|
Max: 8
|
300
333
|
|
301
|
-
|
334
|
+
#################### Security ##############################
|
302
335
|
|
303
336
|
# 毎回 YAML.safe_load(yaml_str, [Date, Time]) するのは面倒で。。
|
304
337
|
Security/YAMLLoad:
|
data/lib/onkcop/version.rb
CHANGED
data/onkcop.gemspec
CHANGED
@@ -19,8 +19,8 @@ Gem::Specification.new do |spec|
|
|
19
19
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
20
20
|
spec.require_paths = ["lib"]
|
21
21
|
|
22
|
-
spec.add_dependency "rubocop", "~> 0.
|
23
|
-
spec.add_dependency "rubocop-rspec", ">= 1.
|
22
|
+
spec.add_dependency "rubocop", "~> 0.48.0"
|
23
|
+
spec.add_dependency "rubocop-rspec", ">= 1.15.0"
|
24
24
|
spec.add_development_dependency "bundler"
|
25
25
|
spec.add_development_dependency "rake"
|
26
26
|
end
|
data/templates/.rubocop.yml
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: onkcop
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.48.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Takafumi ONAKA
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-03-
|
11
|
+
date: 2017-03-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rubocop
|
@@ -16,28 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 0.48.0
|
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: 0.
|
26
|
+
version: 0.48.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rubocop-rspec
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 1.
|
33
|
+
version: 1.15.0
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 1.
|
40
|
+
version: 1.15.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: bundler
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|