ws-style 6.6.1 → 6.9.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
  SHA256:
3
- metadata.gz: abe84e96213f192d2391e16ebed078c926b389d9805b307e3c32c54cb8737abe
4
- data.tar.gz: '018e79383b41b5160578f3990dfeada90281707c938188760c027aed6fd0febb'
3
+ metadata.gz: 5c3052065b3051c117f5c7b7c61595251dcf7f8a570a2466b6e49cdba05576f5
4
+ data.tar.gz: 56ccc78ce8d6eef314dc82a08a979de0f7bf60d43edb5fcd5b9dd467399e42f9
5
5
  SHA512:
6
- metadata.gz: f2899c5225396cc1e720fc596d620afa78594d7f6572f2f24eccf5e71ff9a67a0a5b16e660db5454380bdde19b17b08fed23b891868a07651f0140d02c35e480
7
- data.tar.gz: 9dad673788f66cea027aef97e33abde49052f1e21f54d4ee5c598114e49d7be8e331ab4c93e8f442a6104d0b82ee176bcf1f1b565cd25bd0795507e6771235e5
6
+ metadata.gz: 76d5a74efb8384b113edfe82577dc2297b63ce6e2082e1bc6d2ac707a02f5cbf3f8fbc2734de39e42645db57ea1545994a091e1446f1eb8de9458c3caa545b97
7
+ data.tar.gz: b48a8e1f03c3bc0a6079177ce0cd81593d6bfa9bd9f68257fe43c5924eb0e6fbc9cc1f85e4d8866db96cfb7eaa282be2bbccd9a3b0fe165ec8916de2f5ef5d2a
@@ -12,18 +12,27 @@ jobs:
12
12
  ref: ${{ github.event.pull_request.head.sha }}
13
13
  - uses: ruby/setup-ruby@v1
14
14
  with:
15
- ruby-version: 2.5.8
15
+ ruby-version: 2.7.2
16
16
  bundler-cache: true
17
17
  - uses: r7kamura/rubocop-problem-matchers-action@v1
18
- - name: Rubocop
19
- run: bundle exec rubocop
18
+ - uses: wealthsimple/toolbox-script@main
19
+ name: RuboCop
20
+ with:
21
+ script: toolbox.ruby.lint.run()
20
22
  - name: Run rspec
21
23
  run: bundle exec rspec
22
24
  - name: Release the gem
23
25
  if: ${{ github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master' }}
24
26
  run: |
25
- git config user.name "Wolfbot"
27
+ mkdir -p ~/.gem
28
+ cat << EOF > ~/.gem/credentials
29
+ ---
30
+ :github: Bearer ${GITHUB_TOKEN}
31
+ :rubygems_api_key: ${RUBYGEMS_API_KEY}
32
+ EOF
33
+ chmod 0600 ~/.gem/credentials
26
34
  git config user.email "noreply@wealthsimple.com"
35
+ git config user.name "Wolfbot"
27
36
  bundle exec rake release
28
37
  env:
29
38
  RUBYGEMS_API_KEY: ${{ secrets.RUBYGEMS_API_KEY }}
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.5.8
1
+ 2.7.2
data/CHANGELOG.md CHANGED
@@ -4,6 +4,33 @@ All notable changes to this project will be documented in this file.
4
4
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5
5
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## 6.9.0 - 2021-04-06
8
+ - Upgraded rubocop to 1.12.1
9
+ - Upgraded rubocop-performance to 1.10.2
10
+ - Upgraded rubocop-vendor to 0.6.0
11
+
12
+ ## 6.8.9 - 2021-04-02
13
+ - Set minimum required ruby version to 2.7.2
14
+
15
+ ## 6.7.2 - 2021-03-15
16
+ - Increase Metrics/MethodLength to 25 (1/6 of class length).
17
+
18
+ ## 6.7.1 - 2021-03-09
19
+ - Disable Lint/EmptyBlock
20
+
21
+ ## 6.7.0 - 2021-03-05
22
+ - Upgraded rubocop to 1.11.0
23
+ - Upgraded rubocop-performance to 1.10.1
24
+ - Upgraded rubocop-rails to 2.9.1
25
+ - Upgraded rubocop-rspec to 2.2.0
26
+ - Upgraded rubocop-vendor to 0.5.0
27
+
28
+ ## 6.6.3 - 2021-03-01
29
+ - One more version bump to get it published
30
+
31
+ ## 6.6.2 - 2021-03-01
32
+ - Use GitHub Actions to publish gem
33
+
7
34
  ## 6.6.1 - 2021-03-01
8
35
  - Mostly just trying to get the version number bumped
9
36
 
data/Rakefile CHANGED
@@ -12,15 +12,19 @@ task default: :spec
12
12
  desc 'Print out comments that can be used for a GitHub cop election'
13
13
  task :election do
14
14
  configuration_path = File.expand_path('default.yml', File.dirname(__FILE__))
15
- RuboCop::ConfigLoader.load_file(configuration_path).pending_cops.each do |pending_cop|
15
+ configuration = RuboCop::ConfigLoader.load_file(configuration_path)
16
+ RuboCop::ConfigLoader.default_configuration.pending_cops.each do |pending_cop|
16
17
  base_urls = {
17
18
  'layout' => 'https://docs.rubocop.org/rubocop/cops_layout.html#layout',
19
+ 'gemspec' => 'https://docs.rubocop.org/rubocop/cops_gemspec.html#gemspec',
18
20
  'lint' => 'https://docs.rubocop.org/rubocop/cops_lint.html#lint',
19
21
  'style' => 'https://docs.rubocop.org/rubocop/cops_style.html#style',
20
22
  'performance' => 'https://docs.rubocop.org/rubocop-performance/cops_performance.html#performance',
21
23
  'rails' => 'https://docs.rubocop.org/rubocop-rails/cops_rails.html#rails',
22
24
  'rspec' => 'https://docs.rubocop.org/rubocop-rspec/cops_rspec.html#rspec',
23
25
  }
26
+ next if configuration.key?(pending_cop.name)
27
+
24
28
  department, anchor = pending_cop.name.downcase.split('/')
25
29
  puts <<~COMMENT
26
30
  [**#{pending_cop.name}**](#{base_urls.fetch(department)}#{anchor})
@@ -29,3 +33,25 @@ task :election do
29
33
  COMMENT
30
34
  end
31
35
  end
36
+
37
+ desc 'Print out comments that can be used for a GitHub cop election'
38
+ task "election:config" do
39
+ configuration_path = File.expand_path('default.yml', File.dirname(__FILE__))
40
+ configuration = RuboCop::ConfigLoader.load_file(configuration_path)
41
+ pending_cops = RuboCop::ConfigLoader.default_configuration.pending_cops.reject { |cop|
42
+ configuration.key?(cop.name)
43
+ }
44
+ ascending_by_version = pending_cops.group_by { |cop|
45
+ cop.metadata.fetch('VersionAdded')
46
+ }.sort_by(&:first)
47
+ ascending_by_version.each do |(version, cops)|
48
+ puts "# #{version}"
49
+ cops.each do |cop|
50
+ puts <<~CONFIGURATION
51
+ #{cop.name}:
52
+ Enabled: True
53
+
54
+ CONFIGURATION
55
+ end
56
+ end
57
+ end
data/bin/rake ADDED
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'rake' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ require "pathname"
12
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
+ Pathname.new(__FILE__).realpath)
14
+
15
+ bundle_binstub = File.expand_path("../bundle", __FILE__)
16
+
17
+ if File.file?(bundle_binstub)
18
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
+ load(bundle_binstub)
20
+ else
21
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
+ end
24
+ end
25
+
26
+ require "rubygems"
27
+ require "bundler/setup"
28
+
29
+ load Gem.bin_path("rake", "rake")
data/bin/rspec ADDED
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'rspec' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ require "pathname"
12
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
+ Pathname.new(__FILE__).realpath)
14
+
15
+ bundle_binstub = File.expand_path("../bundle", __FILE__)
16
+
17
+ if File.file?(bundle_binstub)
18
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
+ load(bundle_binstub)
20
+ else
21
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
+ end
24
+ end
25
+
26
+ require "rubygems"
27
+ require "bundler/setup"
28
+
29
+ load Gem.bin_path("rspec-core", "rspec")
data/bin/rubocop ADDED
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'rubocop' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ require "pathname"
12
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
+ Pathname.new(__FILE__).realpath)
14
+
15
+ bundle_binstub = File.expand_path("../bundle", __FILE__)
16
+
17
+ if File.file?(bundle_binstub)
18
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
+ load(bundle_binstub)
20
+ else
21
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
+ end
24
+ end
25
+
26
+ require "rubygems"
27
+ require "bundler/setup"
28
+
29
+ load Gem.bin_path("rubocop", "rubocop")
data/core.yml CHANGED
@@ -86,7 +86,7 @@ Metrics/CyclomaticComplexity:
86
86
 
87
87
  Metrics/MethodLength:
88
88
  IgnoredMethods: ["extended"]
89
- Max: 15
89
+ Max: 25
90
90
 
91
91
  Metrics/ModuleLength:
92
92
  Exclude:
@@ -347,3 +347,123 @@ Style/SoleNestedConditional:
347
347
  # rubocop-performance 1.7
348
348
  Performance/Sum:
349
349
  Enabled: True
350
+
351
+ # rubocop 1.1
352
+ Lint/DuplicateRegexpCharacterClassElement:
353
+ Enabled: True
354
+
355
+ Lint/EmptyBlock:
356
+ Enabled: False
357
+
358
+ Lint/ToEnumArguments:
359
+ Enabled: True
360
+
361
+ Lint/UnmodifiedReduceAccumulator:
362
+ Enabled: True
363
+
364
+ Style/ArgumentsForwarding:
365
+ Enabled: True
366
+
367
+ Style/DocumentDynamicEvalDefinition:
368
+ Enabled: True
369
+
370
+ Style/SwapValues:
371
+ Enabled: True
372
+
373
+ # rubocop 1.2
374
+ Lint/NoReturnInBeginEndBlocks:
375
+ Enabled: True
376
+
377
+ Style/CollectionCompact:
378
+ Enabled: True
379
+
380
+ Style/NegatedIfElseCondition:
381
+ Enabled: True
382
+
383
+ # rubocop 1.3
384
+ Lint/DuplicateBranch:
385
+ Enabled: True
386
+
387
+ Lint/EmptyClass:
388
+ Enabled: False
389
+
390
+ Style/NilLambda:
391
+ Enabled: False
392
+
393
+ # rubocop 1.4
394
+ Style/RedundantArgument:
395
+ Enabled: True
396
+
397
+ # rubocop 1.5
398
+ Lint/UnexpectedBlockArity:
399
+ Enabled: True
400
+
401
+ # rubocop 1.7
402
+ Layout/SpaceBeforeBrackets:
403
+ Enabled: True
404
+
405
+ Lint/AmbiguousAssignment:
406
+ Enabled: True
407
+
408
+ Style/HashExcept:
409
+ Enabled: True
410
+
411
+ # rubocop 1.8
412
+ Lint/DeprecatedConstants:
413
+ Enabled: True
414
+
415
+ Lint/LambdaWithoutLiteralBlock:
416
+ Enabled: True
417
+
418
+ Lint/RedundantDirGlobSort:
419
+ Enabled: True
420
+
421
+ Style/EndlessMethod:
422
+ Enabled: True
423
+
424
+ Performance/CollectionLiteralInLoop:
425
+ Enabled: True
426
+
427
+ # rubocop 1.9
428
+ Lint/NumberedParameterAssignment:
429
+ Enabled: False
430
+
431
+ Lint/OrAssignmentToConstant:
432
+ Enabled: True
433
+
434
+ Lint/SymbolConversion:
435
+ Enabled: True
436
+
437
+ Lint/TripleQuotes:
438
+ Enabled: True
439
+
440
+ Style/IfWithBooleanLiteralBranches:
441
+ Enabled: False
442
+
443
+ # rubocop 1.10
444
+ Gemspec/DateAssignment:
445
+ Enabled: True
446
+
447
+ Style/HashConversion:
448
+ Enabled: True
449
+
450
+ # rubocop-performance 1.9
451
+ Performance/BlockGivenWithExplicitBlock:
452
+ Enabled: True
453
+
454
+ Performance/ConstantRegexp:
455
+ Enabled: True
456
+
457
+ Performance/MethodObjectAsBlock:
458
+ Enabled: True
459
+
460
+ # rubocop-performance 1.10
461
+ Performance/RedundantEqualityComparisonBlock:
462
+ Enabled: False
463
+
464
+ Performance/RedundantSplitRegexpArgument:
465
+ Enabled: True
466
+
467
+ # rubocop 1.12.0
468
+ Style/StringChars:
469
+ Enabled: True
@@ -1,5 +1,5 @@
1
1
  module Ws
2
2
  module Style
3
- VERSION = '6.6.1'.freeze
3
+ VERSION = '6.9.0'.freeze
4
4
  end
5
5
  end
data/rails.yml CHANGED
@@ -59,3 +59,10 @@ Rails/SquishedSQLHeredocs:
59
59
 
60
60
  Rails/WhereNot:
61
61
  Enabled: True
62
+
63
+ # rubocop-rails 2.9
64
+ Rails/AttributeDefaultBlockValue:
65
+ Enabled: True
66
+
67
+ Rails/WhereEquals:
68
+ Enabled: True
data/ws-style.gemspec CHANGED
@@ -20,16 +20,16 @@ Gem::Specification.new do |s|
20
20
  s.bindir = 'exe'
21
21
  s.executables = s.files.grep(%r{^exe/}) { |f| File.basename(f) }
22
22
  s.require_paths = ['lib']
23
- s.required_ruby_version = '>= 2.5.7'
23
+ s.required_ruby_version = '>= 2.7.2'
24
24
 
25
- s.add_dependency 'rubocop', '>= 1.0.0'
26
- s.add_dependency 'rubocop-performance', '>= 1.8.1'
27
- s.add_dependency 'rubocop-rails', '>= 2.8.1'
28
- s.add_dependency 'rubocop-rspec', '>= 1.44.1'
29
- s.add_dependency 'rubocop-vendor', '~> 0'
25
+ s.add_dependency 'rubocop', '>= 1.12.1'
26
+ s.add_dependency 'rubocop-performance', '>= 1.10.2'
27
+ s.add_dependency 'rubocop-rails', '>= 2.9.1'
28
+ s.add_dependency 'rubocop-rspec', '>= 2.2.0'
29
+ s.add_dependency 'rubocop-vendor', '>= 0.6.0'
30
30
 
31
31
  s.add_development_dependency 'bundler'
32
32
  s.add_development_dependency 'bundler-audit'
33
33
  s.add_development_dependency 'rake'
34
- s.add_development_dependency 'rspec', '~> 3.9.0'
34
+ s.add_development_dependency 'rspec', '~> 3.10.0'
35
35
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ws-style
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.6.1
4
+ version: 6.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Graham
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-03-01 00:00:00.000000000 Z
11
+ date: 2021-04-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rubocop
@@ -16,70 +16,70 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 1.0.0
19
+ version: 1.12.1
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: 1.0.0
26
+ version: 1.12.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rubocop-performance
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 1.8.1
33
+ version: 1.10.2
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.8.1
40
+ version: 1.10.2
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rubocop-rails
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 2.8.1
47
+ version: 2.9.1
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: 2.8.1
54
+ version: 2.9.1
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rubocop-rspec
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: 1.44.1
61
+ version: 2.2.0
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: 1.44.1
68
+ version: 2.2.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rubocop-vendor
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
- version: '0'
75
+ version: 0.6.0
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - "~>"
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
- version: '0'
82
+ version: 0.6.0
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: bundler
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -128,14 +128,14 @@ dependencies:
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: 3.9.0
131
+ version: 3.10.0
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: 3.9.0
138
+ version: 3.10.0
139
139
  description: Shared config to enforce Ruby style consistently across Wealthsimple
140
140
  services.
141
141
  email:
@@ -156,6 +156,9 @@ files:
156
156
  - README.md
157
157
  - Rakefile
158
158
  - bin/console
159
+ - bin/rake
160
+ - bin/rspec
161
+ - bin/rubocop
159
162
  - bin/setup
160
163
  - catalog-info.yaml
161
164
  - core.yml
@@ -169,7 +172,7 @@ files:
169
172
  homepage: https://github.com/wealthsimple/ws-style
170
173
  licenses: []
171
174
  metadata: {}
172
- post_install_message:
175
+ post_install_message:
173
176
  rdoc_options: []
174
177
  require_paths:
175
178
  - lib
@@ -177,16 +180,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
177
180
  requirements:
178
181
  - - ">="
179
182
  - !ruby/object:Gem::Version
180
- version: 2.5.7
183
+ version: 2.7.2
181
184
  required_rubygems_version: !ruby/object:Gem::Requirement
182
185
  requirements:
183
186
  - - ">="
184
187
  - !ruby/object:Gem::Version
185
188
  version: '0'
186
189
  requirements: []
187
- rubyforge_project:
188
- rubygems_version: 2.7.6.2
189
- signing_key:
190
+ rubygems_version: 3.1.4
191
+ signing_key:
190
192
  specification_version: 4
191
193
  summary: Shared rubocop config
192
194
  test_files: []