unifacop 0.49.1.0 → 0.52.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3e6794874824e26df487a552c89f232229793fcd
4
- data.tar.gz: d3dda778e1ec37f3c882315137462e4e5d3fba0f
3
+ metadata.gz: e1e7645fb07188ba90fbb7165f563caba945bdad
4
+ data.tar.gz: 7a2fedeafc6480154828bbf4fff11ed38fcbfd3c
5
5
  SHA512:
6
- metadata.gz: 340d3dae78c3a0ac5b384063e60861bf44bc91ff22cc7fec412c3bf74fa178c8c0a8a8c3dcbb6fd9b8f6aec846d32e978a910458bf1b15339b509301d7bf3837
7
- data.tar.gz: 01a8a9605452929520e4d8242d624e0b7cff9bddd829e2c55114898be7fb897cf8eaa10697a7e3a5f86f59bef9dbe36ce61c99e139c8e4edd3e8b56817add81d
6
+ metadata.gz: 38e7f4c59cabe8b8fb5057fcc05b6f0dbb9c42fe9b311a1a30ae0ee70b25738c57a23cb2f6119667e7cdc53dad67830f27fe4a2e8504d1e9941b4611150dbde0
7
+ data.tar.gz: e21c1d840095b3b15d68870ee69c9495a0695bf15ab01c1030a714b77b37face68ecaa831512b9e209604b05c8a3a5edced336705061a811b08bb5e946c90a22
data/Gemfile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
 
3
5
  gemspec
data/config/rails.yml CHANGED
@@ -1,6 +1,29 @@
1
1
  Rails:
2
2
  Enabled: true
3
3
 
4
+ # onkcop参照
5
+ # > ActiveRecord で association を安易に delegate すると
6
+ # > N+1 を起こしまくるので、なるべく delegate 的なメソッドを使わずに
7
+ # > コストが掛かっていることを自覚できるようにしておきたい。
8
+ # > メソッドでも危ういが、DSL だと更に意識から抜けるので無効に。
9
+ Rails/Delegate:
10
+ Enabled: false
11
+
12
+ # onkcop参照
13
+ # > -File.join(Rails.root, "app", "models")
14
+ # > +Rails.root.join("app", "models")
15
+ # > はともかく
16
+ # > -Rails.root.join("app/models")
17
+ # > +Rails.root.join("app", "models")
18
+ # > は Pathname#plus が行っているので意味無いのでは?
19
+ Rails/FilePath:
20
+ Enabled: false
21
+
22
+ # 少しでもオプションつけるとすぐ引っかかってしまう。
23
+ # inverse_ofが必要かどうかは、bulletでN+1を検知してから対応としたい。
24
+ Rails/InverseOf:
25
+ Enabled: false
26
+
4
27
  # onkcop参照
5
28
  # > slug とか created_by とか、NOT NULL だが create_table 時に
6
29
  # > default 値を定義できないカラムは存在する。
@@ -11,3 +34,12 @@ Rails/NotNullColumn:
11
34
  # > valid? チェックし忘れを防ぎたい
12
35
  Rails/SaveBang:
13
36
  Enabled: true
37
+
38
+ # 多くの場合、staging環境は用意するのでデフォルトで追加。
39
+ # 他にもある場合、各プロジェクトで上書きしてもらう。
40
+ Rails/UnknownEnv:
41
+ Environments:
42
+ - development # rubocop default.yml
43
+ - test # rubocop default.yml
44
+ - production # rubocop default.yml
45
+ - staging
data/config/rspec.yml CHANGED
@@ -1,5 +1,10 @@
1
1
  require: 'rubocop-rspec'
2
2
 
3
+ # 日本語でcontextを書く場合、「〜の場合」と書くのでPrefixesでは対応できない。
4
+ # 英語と日本語が混じるケースでも対応が難しいので、各自の努力に任せる。
5
+ RSpec/ContextWording:
6
+ Enabled: false
7
+
3
8
  # onkcop参照
4
9
  # > subject はコピペ可搬性よりもそのまま USAGE であって欲しい
5
10
  # described_classより直接クラス名を参照する方が、使い方が見えやすくてよい。
data/config/rubocop.yml CHANGED
@@ -24,6 +24,10 @@ Layout/DotPosition:
24
24
  Enabled: true
25
25
  EnforcedStyle: leading
26
26
 
27
+ # 誤検知、誤修正が多い。安定するまで無効化。
28
+ Layout/EmptyLinesAroundArguments:
29
+ Enabled: false
30
+
27
31
  # onkcop参照
28
32
  # > special_inside_parentheses (default) と比べて
29
33
  # > * 横に長くなりづらい
@@ -149,10 +153,33 @@ Metrics/ParameterLists:
149
153
  Metrics/PerceivedComplexity:
150
154
  Max: 8
151
155
 
156
+ ## Naming
157
+ # http://rubocop.readthedocs.io/en/latest/cops_naming/
158
+
159
+ # onkcop参照
160
+ # > has_ から始まるメソッドは許可する
161
+ Naming/PredicateName:
162
+ NamePrefixBlacklist:
163
+ - 'is_'
164
+ - 'have_'
165
+ NamePrefix:
166
+ - 'is_'
167
+ - 'have_'
168
+
152
169
  ## Performance
153
170
  # https://rubocop.readthedocs.io/en/latest/cops_performance/
154
171
 
155
- # nothing to customize
172
+ # onkcop参照
173
+ # > downcase or upcase しての比較はイディオムの域なので、多少の
174
+ # > パフォーマンスの違いがあろうが casecmp に変える意義を感じない
175
+ Performance/Casecmp:
176
+ Enabled: false
177
+
178
+ # onkcop参照
179
+ # > 2.4 以降では each_key でも特にパフォーマンスに差が無いので
180
+ # > 読みやすさはほとんど変わらないし、書きやすさを取る。
181
+ Performance/HashEachMethods:
182
+ Enabled: false
156
183
 
157
184
  ## Security
158
185
  # https://rubocop.readthedocs.io/en/latest/cops_security/
@@ -238,6 +265,13 @@ Style/EmptyMethod:
238
265
  Style/Encoding:
239
266
  Enabled: true
240
267
 
268
+ # onkcop参照
269
+ # > strftime("%Y%m%d") の %d で引っかかる false positive がある。
270
+ # > また、url escape でも引っかかるらしい。
271
+ # > see: pull/5230, issues/5242
272
+ Style/FormatStringToken:
273
+ Enabled: false
274
+
241
275
  # onkcop参照
242
276
  # > if 文の中に 3 行程度のブロックを書くぐらいは許容した方が現実的
243
277
  # > NOTE: https://github.com/bbatsov/rubocop/commit/29945958034db13af9e8ff385ec58cb9eb464596
@@ -283,6 +317,16 @@ Style/MixinGrouping:
283
317
  Exclude:
284
318
  - 'spec/**/*'
285
319
 
320
+ # onkcop参照
321
+ # > この 2 つは単発で動かすのが分かっているので Object を汚染しても問題ない。
322
+ # > spec/dummy は Rails Engine を開発するときに絶対に引っかかるので入れておく。
323
+ Style/MixinUsage:
324
+ Exclude:
325
+ - 'bin/setup'
326
+ - 'bin/update'
327
+ - 'spec/dummy/bin/setup'
328
+ - 'spec/dummy/bin/update'
329
+
286
330
  # onkcop参照
287
331
  # > 1_000_000 と区切り文字が 2 個以上必要になる場合のみ _ 区切りを必須にする
288
332
  # > 10_000_00 は許可しない。(これは例えば 10000 ドルをセント単位にする時に便利だが
@@ -298,6 +342,12 @@ Style/NumericLiterals:
298
342
  Style/NumericPredicate:
299
343
  Enabled: false
300
344
 
345
+ # onkcop参照
346
+ # > false な場合という条件式の方を意識させたい場合がある。
347
+ # > Style/IfUnlessModifier と同じ雰囲気。
348
+ Style/OrAssignment:
349
+ Enabled: false
350
+
301
351
  # デフォルトでは %w[] が推奨だが、今いるメンバーでは %w() の方が合っているため
302
352
  # また %i() も %w() と統一感を取るため合わせる
303
353
  # %r{} はRubyStyleGuideの推奨を使用する。
@@ -316,16 +366,6 @@ Style/PercentLiteralDelimiters:
316
366
  Style/PerlBackrefs:
317
367
  AutoCorrect: false
318
368
 
319
- # onkcop参照
320
- # > has_ から始まるメソッドは許可する
321
- Style/PredicateName:
322
- NamePrefixBlacklist:
323
- - 'is_'
324
- - 'have_'
325
- NamePrefix:
326
- - 'is_'
327
- - 'have_'
328
-
329
369
  # onkcop参照
330
370
  # > Hash#has_key? の方が key? よりも意味が通る
331
371
  Style/PreferredHashMethods:
@@ -342,7 +382,14 @@ Style/RedundantSelf:
342
382
  Enabled: false
343
383
 
344
384
  # onkcop参照
345
- # > 無理して使うモンじゃない
385
+ # > user&.admin? が、[nil, true, false] の 3 値を返すことに一瞬で気づけず
386
+ # > boolean を返すっぽく見えてしまうので無効に。
387
+ # > user && user.admin? なら短絡評価で nil が返ってくるのが一目で分かるので。
388
+ # > (boolean を返すメソッド以外なら積極的に使いたいんだけどねぇ
389
+ #
390
+ # > 他に auto-correct してはいけないパターンとして
391
+ # > if hoge && hoge.count > 1
392
+ # > がある。
346
393
  Style/SafeNavigation:
347
394
  Enabled: false
348
395
 
data/exe/unifacop CHANGED
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
4
  $LOAD_PATH.unshift File.dirname(__FILE__) + '/../lib'
4
5
 
data/lib/unifacop/cli.rb CHANGED
@@ -18,7 +18,7 @@ module UniFaCop
18
18
  puts "Could not find command #{action_name}."
19
19
  print_help
20
20
  exit(1)
21
- rescue => e
21
+ rescue StandardError => e
22
22
  puts e.message
23
23
  exit(1)
24
24
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module UniFaCop
4
- VERSION = '0.49.1.0'.freeze
4
+ VERSION = '0.52.0.0'.freeze
5
5
  end
data/unifacop.gemspec CHANGED
@@ -21,9 +21,10 @@ Gem::Specification.new do |spec|
21
21
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
22
22
  spec.require_paths = ['lib']
23
23
 
24
- spec.add_runtime_dependency 'rubocop', '~> 0.49.1'
25
- # Latest rubocop-rspec supports since Ruby 2.1. But we want to use it on Ruby 2.0.
26
- spec.add_runtime_dependency 'rubocop-rspec', '>= 1.4.0'
24
+ spec.required_ruby_version = '>= 2.1.0'
25
+
26
+ spec.add_runtime_dependency 'rubocop', '~> 0.52.0'
27
+ spec.add_runtime_dependency 'rubocop-rspec', '>= 1.21.0'
27
28
  spec.add_development_dependency 'bundler'
28
29
  spec.add_development_dependency 'rake'
29
30
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unifacop
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.49.1.0
4
+ version: 0.52.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - UniFa Co. Ltd.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-08-25 00:00:00.000000000 Z
11
+ date: 2018-01-09 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.49.1
19
+ version: 0.52.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.49.1
26
+ version: 0.52.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.4.0
33
+ version: 1.21.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.4.0
40
+ version: 1.21.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -95,7 +95,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
95
95
  requirements:
96
96
  - - ">="
97
97
  - !ruby/object:Gem::Version
98
- version: '0'
98
+ version: 2.1.0
99
99
  required_rubygems_version: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - ">="
@@ -103,7 +103,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
103
103
  version: '0'
104
104
  requirements: []
105
105
  rubyforge_project:
106
- rubygems_version: 2.6.11
106
+ rubygems_version: 2.6.13
107
107
  signing_key:
108
108
  specification_version: 4
109
109
  summary: A rubocop configuration gem for UniFa Coding Style Guide.