niftany 0.5.0 → 0.9.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5bf91705f64576fd41a260006215c2b61760a731c5137de5c40445da683ad4eb
4
- data.tar.gz: f5ad80dd870b64d68faa74855acb03302117c4e43cfebe9384aa86ab7e51aad0
3
+ metadata.gz: e7d595491f6830b1348ae95055cfcc9f07c7aa63aa4d3f2ec480131a2b954fcd
4
+ data.tar.gz: 68501f826457628cec281a8f0dcbe406d225c432b6a244780ac6705d3cbd54a1
5
5
  SHA512:
6
- metadata.gz: 17409ed3226dbc64b48917632fb7544a7908d0dc695d383654149bdb994ac27a0bb568e3522a61799440ee363f42abdbd59e7e6e6bbd1ae7bc717fff66f34e40
7
- data.tar.gz: 76d6ceb812f870ece48526a250aecc429c3567e0b79ff1be42fc103fc68d5c38ca8a3d20aee31c1b1af2570287ac72b16f77c16f7c875e8a81b1b41ad6e0d947
6
+ metadata.gz: da186b9080ca9587e1354369716cb00a01ab1b6117e0e61a659bab1890499f12d580c977152699465d2bc3edcacc63534694817c10d9d48b7047e21450edea94
7
+ data.tar.gz: 7c8507cc4510803d5044df304b46a4c4448e15e5296a91e41a7cc640cf0414957f4a1200e42e5df93e00ca84f5c2fb81df194ec4285d9660e0a022400974954c
@@ -0,0 +1,25 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches: [ main ]
6
+ pull_request:
7
+ branches: [ main ]
8
+
9
+ jobs:
10
+ test:
11
+
12
+ runs-on: ubuntu-latest
13
+ strategy:
14
+ matrix:
15
+ ruby-version: ['2.6', '2.7']
16
+
17
+ steps:
18
+ - uses: actions/checkout@v2
19
+ - name: Set up Ruby
20
+ uses: ruby/setup-ruby@v1
21
+ with:
22
+ ruby-version: ${{ matrix.ruby-version }}
23
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
24
+ - name: Run Rubocop
25
+ run: bundle exec rubocop
data/.rubocop.yml CHANGED
@@ -1,2 +1,2 @@
1
- inherit_from: .rubocop_todo.yml
1
+ inherit_from: niftany_rubocop.yml
2
2
 
data/.rubocop_todo.yml CHANGED
@@ -14,5 +14,5 @@ Metrics/MethodLength:
14
14
  # Offense count: 2
15
15
  # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
16
16
  # URISchemes: http, https
17
- Metrics/LineLength:
17
+ Layout/LineLength:
18
18
  Max: 114
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.6.3
1
+ 2.7.1
data/exe/niftany CHANGED
@@ -12,6 +12,7 @@ require 'colorize'
12
12
  def parse_opts(args)
13
13
  options = OpenStruct.new
14
14
  options.auto_correct = false
15
+ options.parallel = false
15
16
 
16
17
  parser = OptionParser.new do |opts|
17
18
  opts.banner = 'Usage: niftany [options]'
@@ -20,6 +21,10 @@ def parse_opts(args)
20
21
  options.auto_correct = auto
21
22
  end
22
23
 
24
+ opts.on('-p', '--parallel', 'Run RuboCop in parallel') do |parallel|
25
+ options.parallel = parallel
26
+ end
27
+
23
28
  opts.on_tail('-h', '--help', 'Show this message') do
24
29
  puts opts
25
30
  exit
@@ -30,9 +35,10 @@ def parse_opts(args)
30
35
  end
31
36
 
32
37
  def rubocop_options(options)
33
- return [] unless options.auto_correct
34
-
35
- ['--auto-correct']
38
+ rubocop_options = []
39
+ rubocop_options.append('--auto-correct') if options.auto_correct
40
+ rubocop_options.append('--parallel') if options.parallel
41
+ rubocop_options
36
42
  end
37
43
 
38
44
  def erblint_options(options)
@@ -65,7 +71,7 @@ else
65
71
  end
66
72
 
67
73
  puts 'Running SCSSLint'.yellow
68
- logger = SCSSLint::Logger.new(STDOUT)
74
+ logger = SCSSLint::Logger.new($stdout)
69
75
  scss_lint = SCSSLint::CLI.new(logger).run(ARGV) # returns integer
70
76
 
71
77
  if scss_lint.zero?
data/niftany.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = 'niftany'
5
- spec.version = '0.5.0'
5
+ spec.version = '0.9.0'
6
6
  spec.authors = ['Adam Wead']
7
7
  spec.email = ['amsterdamos@gmail.com']
8
8
  spec.summary = 'Manages configurations and versions of linters used in projects at '\
@@ -13,10 +13,13 @@ Gem::Specification.new do |spec|
13
13
  spec.bindir = 'exe'
14
14
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
15
15
 
16
+ spec.required_ruby_version = '>= 2.6.0'
17
+
16
18
  spec.add_dependency 'colorize', '~> 0.8.1'
17
19
  spec.add_dependency 'erb_lint', '~> 0.0.22'
18
- spec.add_dependency 'rubocop', '~> 0.61'
20
+ spec.add_dependency 'rubocop', '~> 0.79'
19
21
  spec.add_dependency 'rubocop-performance', '~> 1.1'
22
+ spec.add_dependency 'rubocop-rails', '~> 2.3'
20
23
  spec.add_dependency 'rubocop-rspec', '~> 1.3'
21
24
  spec.add_dependency 'scss_lint', '~> 0.55'
22
25
 
data/niftany_erblint.yml CHANGED
@@ -22,7 +22,7 @@ linters:
22
22
  - niftany_rubocop_rails.yml
23
23
  Layout/InitialIndentation:
24
24
  Enabled: false
25
- Layout/TrailingBlankLines:
25
+ Layout/TrailingEmptyLines:
26
26
  Enabled: false
27
27
  Layout/TrailingWhitespace:
28
28
  Enabled: false
@@ -30,7 +30,7 @@ linters:
30
30
  Enabled: false
31
31
  Style/FrozenStringLiteralComment:
32
32
  Enabled: false
33
- Metrics/LineLength:
33
+ Layout/LineLength:
34
34
  Enabled: false
35
35
  Lint/UselessAssignment:
36
36
  Enabled: false
@@ -1,4 +1,6 @@
1
1
  ---
2
+ require: rubocop-rails
3
+
2
4
  Rails/Delegate:
3
5
  Description: 'Prefer delegate method for delegations.'
4
6
  Enabled: false
@@ -43,3 +43,11 @@ RSpec/DescribeClass:
43
43
 
44
44
  RSpec/BeforeAfterAll:
45
45
  Enabled: false
46
+
47
+ RSpec/ExampleLength:
48
+ Enabled:
49
+ false
50
+
51
+ RSpec/MultipleExpectations:
52
+ Enabled:
53
+ false
@@ -8,4 +8,6 @@ inherit_from:
8
8
  - rubocop/style.yml
9
9
 
10
10
  AllCops:
11
+ TargetRubyVersion: 2.6
11
12
  DisplayCopNames: true
13
+ NewCops: enable
data/rubocop/layout.yml CHANGED
@@ -1,5 +1,5 @@
1
1
  ---
2
- Layout/AlignParameters:
2
+ Layout/ParameterAlignment:
3
3
  Description: 'Here we check if the parameters on a multi-line method call or definition are aligned.'
4
4
  StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-double-indent'
5
5
  Enabled: false
@@ -41,8 +41,20 @@ Layout/ConditionPosition:
41
41
 
42
42
  Layout/IndentationConsistency:
43
43
  Description: 'Checks for inconsistent indentation.'
44
- EnforcedStyle: rails
44
+ EnforcedStyle: indented_internal_methods
45
45
 
46
46
  Layout/MultilineBlockLayout:
47
47
  Description: 'Checks whether the multiline do end blocks have a newline after the start of the block.'
48
48
  Enabled: true
49
+
50
+ Layout/LineLength:
51
+ Description: 'Limit lines to 120 characters.'
52
+ StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#80-character-limits'
53
+ Enabled: true
54
+ Max: 120
55
+
56
+ Layout/SpaceAroundMethodCallOperator:
57
+ Enabled: true
58
+
59
+ Layout/EmptyLinesAroundAttributeAccessor:
60
+ Enabled: true
data/rubocop/lint.yml CHANGED
@@ -25,7 +25,7 @@ Lint/DeprecatedClassMethods:
25
25
  Description: 'Check for deprecated class method calls.'
26
26
  Enabled: false
27
27
 
28
- Lint/DuplicatedKey:
28
+ Lint/DuplicateHashKey:
29
29
  Description: 'Check for duplicate keys in hash literals.'
30
30
  Enabled: true
31
31
 
@@ -41,7 +41,7 @@ Lint/FormatParameterMismatch:
41
41
  Description: 'The number of parameters to format/sprint must match the fields.'
42
42
  Enabled: false
43
43
 
44
- Lint/HandleExceptions:
44
+ Lint/SuppressedException:
45
45
  Description: "Don't suppress exception."
46
46
  StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#dont-hide-exceptions'
47
47
  Enabled: false
@@ -101,3 +101,10 @@ Lint/UselessAssignment:
101
101
  Checks for every useless assignment to local variable in every scope.
102
102
  The basic idea for this cop was from the warning of `ruby -cw`:'
103
103
  Enabled: true
104
+
105
+ Lint/RaiseException:
106
+ Description: 'This cop checks for raise or fail statements which are raising Exception class.'
107
+ Enabled: true
108
+
109
+ Lint/StructNewOverride:
110
+ Enabled: true
data/rubocop/metrics.yml CHANGED
@@ -1,4 +1,8 @@
1
1
  ---
2
+ Metrics/BlockLength:
3
+ Exclude:
4
+ - 'spec/**/*'
5
+
2
6
  Metrics/BlockNesting:
3
7
  Description: 'Avoid excessive block nesting'
4
8
  StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#three-is-the-number-thou-shalt-count'
@@ -30,13 +34,6 @@ Metrics/PerceivedComplexity:
30
34
  the reader experiences when looking at a method
31
35
  Enabled: true
32
36
 
33
- # Override style guide to allow length of up to 120 characters.
34
- Metrics/LineLength:
35
- Description: 'Limit lines to 120 characters.'
36
- StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#80-character-limits'
37
- Enabled: true
38
- Max: 120
39
-
40
37
  Metrics/MethodLength:
41
38
  Description: 'Avoid methods longer than 10 lines of code.'
42
39
  StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#short-methods'
data/rubocop/naming.yml CHANGED
@@ -21,7 +21,7 @@ Naming/BinaryOperatorParameterName:
21
21
  Naming/PredicateName:
22
22
  Description: 'Check the names of predicate methods.'
23
23
  StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#bool-methods-qmark'
24
- NamePrefixBlacklist:
24
+ ForbiddenPrefixes:
25
25
  - is_
26
26
 
27
27
  Naming/VariableName:
data/rubocop/style.yml CHANGED
@@ -19,12 +19,6 @@ Style/Attr:
19
19
  StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#attr'
20
20
  Enabled: false
21
21
 
22
- Style/BracesAroundHashParameters:
23
- Description: >-
24
- Checks for braces around the last parameter in a method call if the last parameter is a hash.
25
- It supports 3 styles: braces, no_braces, context_dependent
26
- Enabled: true
27
-
28
22
  Style/CaseEquality:
29
23
  Description: 'Avoid explicit use of the case equality operator(===).'
30
24
  StyleGuide: 'https://github.com/bbatsov/ruby-style-guide#no-case-equality'
@@ -315,3 +309,18 @@ Style/Sample:
315
309
  `shuffle.last`, and `shuffle[Fixnum]`.
316
310
  Reference: 'https://github.com/JuanitoFatas/fast-ruby#arrayshufflefirst-vs-arraysample-code'
317
311
  Enabled: false
312
+
313
+ Style/ExponentialNotation:
314
+ Enabled: true
315
+
316
+ Style/HashEachMethods:
317
+ Enabled: true
318
+
319
+ Style/HashTransformKeys:
320
+ Enabled: false
321
+
322
+ Style/HashTransformValues:
323
+ Enabled: false
324
+
325
+ Style/SlicingWithRange:
326
+ Enabled: true
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: niftany
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Wead
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-05-08 00:00:00.000000000 Z
11
+ date: 2021-04-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: colorize
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0.61'
47
+ version: '0.79'
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: '0.61'
54
+ version: '0.79'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rubocop-performance
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -66,6 +66,20 @@ dependencies:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '1.1'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rubocop-rails
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '2.3'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '2.3'
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: rubocop-rspec
71
85
  requirement: !ruby/object:Gem::Requirement
@@ -132,11 +146,11 @@ extensions: []
132
146
  extra_rdoc_files: []
133
147
  files:
134
148
  - ".erb-linters/self_closing_custom.rb"
149
+ - ".github/workflows/ci.yml"
135
150
  - ".gitignore"
136
151
  - ".rubocop.yml"
137
152
  - ".rubocop_todo.yml"
138
153
  - ".ruby-version"
139
- - ".travis.yml"
140
154
  - Gemfile
141
155
  - LICENSE.md
142
156
  - README.md
@@ -160,7 +174,7 @@ files:
160
174
  homepage: https://github.com/psu-libraries/niftany
161
175
  licenses: []
162
176
  metadata: {}
163
- post_install_message:
177
+ post_install_message:
164
178
  rdoc_options: []
165
179
  require_paths:
166
180
  - lib
@@ -168,15 +182,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
168
182
  requirements:
169
183
  - - ">="
170
184
  - !ruby/object:Gem::Version
171
- version: '0'
185
+ version: 2.6.0
172
186
  required_rubygems_version: !ruby/object:Gem::Requirement
173
187
  requirements:
174
188
  - - ">="
175
189
  - !ruby/object:Gem::Version
176
190
  version: '0'
177
191
  requirements: []
178
- rubygems_version: 3.0.3
179
- signing_key:
192
+ rubygems_version: 3.1.4
193
+ signing_key:
180
194
  specification_version: 4
181
195
  summary: Manages configurations and versions of linters used in projects at Penn State
182
196
  University Libraries.
data/.travis.yml DELETED
@@ -1,8 +0,0 @@
1
- sudo: false
2
- language: ruby
3
- rvm:
4
- - 2.6.3
5
- before_install:
6
- - gem update --system
7
- - gem install bundler
8
- script: bundle exec rubocop