panolint 0.1.2 → 0.1.3

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: d91cca0d11b65106166fdc20c47fd0427f3f62fa9240ad8bee27cb61e7211f1f
4
- data.tar.gz: 7edf9f2cf80c4fac4e236f4e7dc72692ef46f4ce9608b6f72d0c482d90e78d40
3
+ metadata.gz: c79b43e9d0b3c82a967915f4aa10a0c080fa9787f499d6eee34e74441ad172fa
4
+ data.tar.gz: 004b7d765ebaf18ae0835da06c5361d86c5a505f5d2dd1a370ae03eb51553235
5
5
  SHA512:
6
- metadata.gz: 548905cd943d90008fc922a138d482f5314f7389f0224e5903ae705571c149dc148d52ecc92011e236d745b258fa06c3a3d86919dffedc1699ffbafc0ade2a87
7
- data.tar.gz: 246f67a54a7fd838b6c3e48ddc760664a5286cc2471154cc6c3faff323a40b6971b2547f133f0c9c8a193678b17a6fd158a9724c1da3261507fd676cc2944a5e
6
+ metadata.gz: 053dfc4b264e78e26e2a7654658d1cb2fcb5251fa80d1fff4fc28e321047391727b3502161deea2c58c21d9c7ff53bea6602f552304a2411e5bc454cd5eb5628
7
+ data.tar.gz: 616a43c8fa81855c8bf3c60baa613b1945e8ac467157b0e306c45ab3cba1e5348b7c11b5e0f7bb2a4b4d3568f6073411cf580c57df8500bccfad344eb37735aa
@@ -6,6 +6,41 @@
6
6
  # Reference: https://dependabot.com/docs/config-file/
7
7
  version: 1
8
8
  update_configs:
9
+ # This configures dependency updates for one package manager. In some
10
+ # projects, such as warehouse, where we have Ruby and Python, there can be
11
+ # separate package_manager entries.
9
12
  - package_manager: "ruby:bundler"
10
13
  directory: "/"
11
14
  update_schedule: "weekly"
15
+
16
+ default_labels:
17
+ - "dependencies"
18
+ - "Needs QA"
19
+
20
+ # Dependabot will use a repository's default branch. This will override
21
+ # that.
22
+ # target_branch: "master"
23
+
24
+ allowed_updates:
25
+ - match:
26
+ dependency_type: "direct"
27
+
28
+ automerged_updates:
29
+ # This allows all dependencies that are used for development, e.g., rspec,
30
+ # rspec-mock, vcr, etc, to be automatically updated. This is generally
31
+ # okay because the dependencies are not used in production.
32
+ - match:
33
+ dependency_type: "all"
34
+ update_type: "all"
35
+
36
+ # # This is an example entry to enable automerging of a specific dependency
37
+ # # when the update is only for minor or patch semantic versions.
38
+ # #
39
+ # # The dependency_name can also be a wildcard.
40
+ # #
41
+ # # This is left commented, but whitelisting a dependency for automatic
42
+ # # merging is as simple as creating a new entry that looks like the below.
43
+ # - match:
44
+ # dependency_type: "all"
45
+ # dependency_name: "aws-sdk-s3"
46
+ # update_type: "semver:minor"
@@ -0,0 +1,26 @@
1
+ # This workflow auto-approves pull-requests when the github actor is a
2
+ # dependabot user and it is opening a new pull request.
3
+ #
4
+ # The problem that this workflow solves is that we have branch protection on
5
+ # our repositories that prevent PRs from merging unless there is an
6
+ # approval present. The problem is that this will block PRs that dependabot
7
+ # may want to merge automatically. Auto-approving dependabot PRs will allow
8
+ # the automatic merge to complete. We control what gets automerged through
9
+ # the dependabot configuration.
10
+ #
11
+ # This is a known issue: https://github.com/dependabot/feedback/issues/852
12
+ name: Auto-approve dependabot pull requests
13
+ on:
14
+ pull_request:
15
+ types: [opened]
16
+
17
+ jobs:
18
+ dependabot-triage:
19
+ runs-on: ubuntu-latest
20
+ if: (github.actor == 'dependabot[bot]' || github.actor == 'dependabot-preview[bot]')
21
+
22
+ steps:
23
+ - name: Auto-approve for dependabot
24
+ uses: hmarr/auto-approve-action@v2.0.0
25
+ with:
26
+ github-token: "${{ secrets.GITHUB_TOKEN }}"
@@ -0,0 +1,35 @@
1
+ # This workflow removes a "Needs QA" label from a PR when the actor is the
2
+ # dependabot user merging a PR.
3
+ #
4
+ # We need this mechanism to allow for automerging whitelisted dependencies while
5
+ # also allowing for blocking a merge to master for deployment (in the way that
6
+ # our other PRs work). When the automerge script runs in henchman, it looks
7
+ # for `Needs QA` on github pull requests, and if the label is present,
8
+ # blocks the commit from merging.
9
+ name: Remove 'Needs QA' label for auto-merged PRs.
10
+ on:
11
+ pull_request:
12
+ types: [closed]
13
+
14
+ jobs:
15
+ remove-label:
16
+ runs-on: ubuntu-latest
17
+ if: >
18
+ (github.actor == 'dependabot[bot]' || github.actor == 'dependabot-preview[bot]')
19
+ && github.event.pull_request.merged
20
+
21
+ steps:
22
+ # Our triage workflow adds 'Needs QA' to the PR in order to block it from
23
+ # merging to production. This removes that label when dependabot is doing
24
+ # the merging.
25
+ - name: Remove QA Label
26
+ uses: actions/github-script@0.4.0
27
+ with:
28
+ github-token: ${{ secrets.GITHUB_TOKEN }}
29
+ script: |
30
+ github.issues.removeLabel({
31
+ issue_number: context.issue.number,
32
+ owner: context.repo.owner,
33
+ repo: context.repo.repo,
34
+ name: 'Needs QA'
35
+ })
File without changes
data/CHANGELOG.md CHANGED
@@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) a
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [0.1.3] - 2021-04-22
10
+
9
11
  ## [0.1.2] - 2020-04-10
10
12
 
11
13
  ### Changed
@@ -26,7 +28,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) a
26
28
 
27
29
  - Initial release. 🎉
28
30
 
29
- [unreleased]: https://github.com/panorama-ed/panolint/compare/v0.1.2...HEAD
31
+ [unreleased]: https://github.com/panorama-ed/panolint/compare/v0.1.3...HEAD
32
+ [0.1.3]: https://github.com/panorama-ed/panolint/compare/v0.1.2...v0.1.3
30
33
  [0.1.2]: https://github.com/panorama-ed/panolint/compare/v0.1.1...v0.1.2
31
34
  [0.1.1]: https://github.com/panorama-ed/panolint/compare/v0.1.0...v0.1.1
32
35
  [0.1.0]: https://github.com/panorama-ed/panolint/compare/45c38b...v0.1.0
data/Gemfile.lock CHANGED
@@ -2,71 +2,78 @@ PATH
2
2
  remote: .
3
3
  specs:
4
4
  panolint (0.1.2)
5
- brakeman (~> 4.8)
6
- rubocop (~> 0.81)
5
+ brakeman (>= 4.8, < 6.0)
6
+ rubocop (>= 0.83, < 2.0)
7
7
  rubocop-performance (~> 1.5)
8
8
  rubocop-rails (~> 2.5)
9
- rubocop-rspec (~> 1.38)
9
+ rubocop-rake (~> 0.5)
10
+ rubocop-rspec (~> 2.0)
10
11
 
11
12
  GEM
12
13
  remote: https://rubygems.org/
13
14
  specs:
14
- activesupport (6.0.2.2)
15
+ activesupport (6.1.1)
15
16
  concurrent-ruby (~> 1.0, >= 1.0.2)
16
- i18n (>= 0.7, < 2)
17
- minitest (~> 5.1)
18
- tzinfo (~> 1.1)
19
- zeitwerk (~> 2.2)
20
- ast (2.4.0)
21
- brakeman (4.8.1)
22
- concurrent-ruby (1.1.6)
23
- diff-lcs (1.3)
24
- i18n (1.8.2)
17
+ i18n (>= 1.6, < 2)
18
+ minitest (>= 5.1)
19
+ tzinfo (~> 2.0)
20
+ zeitwerk (~> 2.3)
21
+ ast (2.4.2)
22
+ brakeman (5.0.0)
23
+ concurrent-ruby (1.1.8)
24
+ diff-lcs (1.4.4)
25
+ i18n (1.8.7)
25
26
  concurrent-ruby (~> 1.0)
26
- jaro_winkler (1.5.4)
27
- minitest (5.14.0)
28
- parallel (1.19.1)
29
- parser (2.7.1.0)
30
- ast (~> 2.4.0)
31
- rack (2.2.2)
27
+ minitest (5.14.3)
28
+ parallel (1.20.1)
29
+ parser (3.0.0.0)
30
+ ast (~> 2.4.1)
31
+ rack (2.2.3)
32
32
  rainbow (3.0.0)
33
- rake (13.0.1)
33
+ rake (13.0.3)
34
+ regexp_parser (2.1.1)
34
35
  rexml (3.2.4)
35
- rspec (3.9.0)
36
- rspec-core (~> 3.9.0)
37
- rspec-expectations (~> 3.9.0)
38
- rspec-mocks (~> 3.9.0)
39
- rspec-core (3.9.1)
40
- rspec-support (~> 3.9.1)
41
- rspec-expectations (3.9.1)
36
+ rspec (3.10.0)
37
+ rspec-core (~> 3.10.0)
38
+ rspec-expectations (~> 3.10.0)
39
+ rspec-mocks (~> 3.10.0)
40
+ rspec-core (3.10.0)
41
+ rspec-support (~> 3.10.0)
42
+ rspec-expectations (3.10.0)
42
43
  diff-lcs (>= 1.2.0, < 2.0)
43
- rspec-support (~> 3.9.0)
44
- rspec-mocks (3.9.1)
44
+ rspec-support (~> 3.10.0)
45
+ rspec-mocks (3.10.0)
45
46
  diff-lcs (>= 1.2.0, < 2.0)
46
- rspec-support (~> 3.9.0)
47
- rspec-support (3.9.2)
48
- rubocop (0.81.0)
49
- jaro_winkler (~> 1.5.1)
47
+ rspec-support (~> 3.10.0)
48
+ rspec-support (3.10.0)
49
+ rubocop (1.12.1)
50
50
  parallel (~> 1.10)
51
- parser (>= 2.7.0.1)
51
+ parser (>= 3.0.0.0)
52
52
  rainbow (>= 2.2.2, < 4.0)
53
+ regexp_parser (>= 1.8, < 3.0)
53
54
  rexml
55
+ rubocop-ast (>= 1.2.0, < 2.0)
54
56
  ruby-progressbar (~> 1.7)
55
- unicode-display_width (>= 1.4.0, < 2.0)
56
- rubocop-performance (1.5.2)
57
- rubocop (>= 0.71.0)
58
- rubocop-rails (2.5.2)
59
- activesupport
57
+ unicode-display_width (>= 1.4.0, < 3.0)
58
+ rubocop-ast (1.4.1)
59
+ parser (>= 2.7.1.5)
60
+ rubocop-performance (1.10.2)
61
+ rubocop (>= 0.90.0, < 2.0)
62
+ rubocop-ast (>= 0.4.0)
63
+ rubocop-rails (2.9.1)
64
+ activesupport (>= 4.2.0)
60
65
  rack (>= 1.1)
61
- rubocop (>= 0.72.0)
62
- rubocop-rspec (1.38.1)
63
- rubocop (>= 0.68.1)
64
- ruby-progressbar (1.10.1)
65
- thread_safe (0.3.6)
66
- tzinfo (1.2.7)
67
- thread_safe (~> 0.1)
68
- unicode-display_width (1.7.0)
69
- zeitwerk (2.3.0)
66
+ rubocop (>= 0.90.0, < 2.0)
67
+ rubocop-rake (0.5.1)
68
+ rubocop
69
+ rubocop-rspec (2.2.0)
70
+ rubocop (~> 1.0)
71
+ rubocop-ast (>= 1.1.0)
72
+ ruby-progressbar (1.11.0)
73
+ tzinfo (2.0.4)
74
+ concurrent-ruby (~> 1.0)
75
+ unicode-display_width (2.0.0)
76
+ zeitwerk (2.4.2)
70
77
 
71
78
  PLATFORMS
72
79
  ruby
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Panolint
4
- VERSION = "0.1.2"
4
+ VERSION = "0.1.3"
5
5
  end
data/panolint.gemspec CHANGED
@@ -24,11 +24,12 @@ Gem::Specification.new do |spec|
24
24
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
25
25
  spec.require_paths = ["lib"]
26
26
 
27
- spec.add_dependency "brakeman", "~> 4.8"
28
- spec.add_dependency "rubocop", "~> 0.81"
27
+ spec.add_dependency "brakeman", ">= 4.8", "< 6.0"
28
+ spec.add_dependency "rubocop", ">= 0.83", "< 2.0"
29
29
  spec.add_dependency "rubocop-performance", "~> 1.5"
30
30
  spec.add_dependency "rubocop-rails", "~> 2.5"
31
- spec.add_dependency "rubocop-rspec", "~> 1.38"
31
+ spec.add_dependency "rubocop-rake", "~> 0.5"
32
+ spec.add_dependency "rubocop-rspec", "~> 2.0"
32
33
 
33
34
  spec.add_development_dependency "bundler", "~> 2.1"
34
35
  spec.add_development_dependency "rake", "~> 13.0"
data/rubocop.yml CHANGED
@@ -3,7 +3,7 @@
3
3
  # You can use this in your project's .rubocop.yml with the following at the top:
4
4
  #
5
5
  # inherit_gem:
6
- # panolint: .rubocop.yml
6
+ # panolint: rubocop.yml
7
7
  #
8
8
  # This allows you to selectively override settings in projects, for example, if
9
9
  # you're working on a Sinatra project, disabling the Rails cops is probably
@@ -18,6 +18,10 @@ AllCops:
18
18
  - !ruby/regexp /vendor\/(?!panoramaed).*$/
19
19
  - "db/schema.rb"
20
20
  - "db/migrate/**/*"
21
+ NewCops: enable
22
+
23
+ Gemspec/RequiredRubyVersion:
24
+ Enabled: false
21
25
 
22
26
  Layout/DotPosition:
23
27
  EnforcedStyle: trailing
@@ -33,6 +37,12 @@ Lint/AmbiguousBlockAssociation:
33
37
  Lint/Debugger:
34
38
  Severity: error
35
39
 
40
+ Lint/DuplicateElsifCondition:
41
+ Enabled: true
42
+
43
+ Lint/MixedRegexpCaptureTypes:
44
+ Enabled: true
45
+
36
46
  Lint/SuppressedException:
37
47
  Enabled: false
38
48
 
@@ -81,6 +91,9 @@ RSpec/LetSetup:
81
91
  RSpec/MessageSpies:
82
92
  EnforcedStyle: receive
83
93
 
94
+ RSpec/MultipleMemoizedHelpers:
95
+ Enabled: false
96
+
84
97
  RSpec/NamedSubject:
85
98
  Enabled: false
86
99
 
@@ -91,6 +104,12 @@ Style/Alias:
91
104
  Enabled: true
92
105
  EnforcedStyle: prefer_alias_method
93
106
 
107
+ Style/ArrayCoercion:
108
+ Enabled: true
109
+
110
+ Style/CaseLikeIf:
111
+ Enabled: true
112
+
94
113
  Style/Documentation:
95
114
  Enabled: false
96
115
 
@@ -106,6 +125,9 @@ Style/FormatString:
106
125
  Style/GuardClause:
107
126
  Enabled: false
108
127
 
128
+ Style/HashAsLastArrayItem:
129
+ Enabled: true
130
+
109
131
  Style/MixinUsage:
110
132
  Exclude:
111
133
  - bin/**/*
@@ -113,6 +135,15 @@ Style/MixinUsage:
113
135
  Style/MultilineBlockChain:
114
136
  Enabled: false
115
137
 
138
+ Style/RedundantFileExtensionInRequire:
139
+ Enabled: true
140
+
141
+ Style/RedundantRegexpCharacterClass:
142
+ Enabled: true
143
+
144
+ Style/RedundantRegexpEscape:
145
+ Enabled: true
146
+
116
147
  Style/RedundantReturn:
117
148
  AllowMultipleReturnValues: true
118
149
 
@@ -152,12 +183,24 @@ RSpec/MultipleExpectations:
152
183
  # following rules all mirror the default rubocop configuration, but they're here
153
184
  # just to silence the warnings. They can be removed when 1.0 comes out.
154
185
 
186
+ Lint/DeprecatedOpenSSLConstant:
187
+ Enabled: true
188
+
189
+ Layout/EmptyLinesAroundAttributeAccessor:
190
+ Enabled: true
191
+
192
+ Layout/SpaceAroundMethodCallOperator:
193
+ Enabled: true
194
+
155
195
  Lint/RaiseException:
156
196
  Enabled: true
157
197
 
158
198
  Lint/StructNewOverride:
159
199
  Enabled: true
160
200
 
201
+ Style/ExponentialNotation:
202
+ Enabled: true
203
+
161
204
  Style/HashEachMethods:
162
205
  Enabled: true
163
206
 
@@ -166,3 +209,6 @@ Style/HashTransformKeys:
166
209
 
167
210
  Style/HashTransformValues:
168
211
  Enabled: true
212
+
213
+ Style/SlicingWithRange:
214
+ Enabled: true
metadata CHANGED
@@ -1,43 +1,55 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: panolint
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin Deisz
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-04-10 00:00:00.000000000 Z
11
+ date: 2021-04-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: brakeman
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '4.8'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '6.0'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
25
28
  - !ruby/object:Gem::Version
26
29
  version: '4.8'
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '6.0'
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: rubocop
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
- - - "~>"
37
+ - - ">="
32
38
  - !ruby/object:Gem::Version
33
- version: '0.81'
39
+ version: '0.83'
40
+ - - "<"
41
+ - !ruby/object:Gem::Version
42
+ version: '2.0'
34
43
  type: :runtime
35
44
  prerelease: false
36
45
  version_requirements: !ruby/object:Gem::Requirement
37
46
  requirements:
38
- - - "~>"
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: '0.83'
50
+ - - "<"
39
51
  - !ruby/object:Gem::Version
40
- version: '0.81'
52
+ version: '2.0'
41
53
  - !ruby/object:Gem::Dependency
42
54
  name: rubocop-performance
43
55
  requirement: !ruby/object:Gem::Requirement
@@ -66,20 +78,34 @@ dependencies:
66
78
  - - "~>"
67
79
  - !ruby/object:Gem::Version
68
80
  version: '2.5'
81
+ - !ruby/object:Gem::Dependency
82
+ name: rubocop-rake
83
+ requirement: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - "~>"
86
+ - !ruby/object:Gem::Version
87
+ version: '0.5'
88
+ type: :runtime
89
+ prerelease: false
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - "~>"
93
+ - !ruby/object:Gem::Version
94
+ version: '0.5'
69
95
  - !ruby/object:Gem::Dependency
70
96
  name: rubocop-rspec
71
97
  requirement: !ruby/object:Gem::Requirement
72
98
  requirements:
73
99
  - - "~>"
74
100
  - !ruby/object:Gem::Version
75
- version: '1.38'
101
+ version: '2.0'
76
102
  type: :runtime
77
103
  prerelease: false
78
104
  version_requirements: !ruby/object:Gem::Requirement
79
105
  requirements:
80
106
  - - "~>"
81
107
  - !ruby/object:Gem::Version
82
- version: '1.38'
108
+ version: '2.0'
83
109
  - !ruby/object:Gem::Dependency
84
110
  name: bundler
85
111
  requirement: !ruby/object:Gem::Requirement
@@ -130,7 +156,9 @@ extensions: []
130
156
  extra_rdoc_files: []
131
157
  files:
132
158
  - ".dependabot/config.yml"
133
- - ".github/workflows/main.yml"
159
+ - ".github/workflows/auto-approve-dependabot.yml"
160
+ - ".github/workflows/remove-needs-qa.yml"
161
+ - ".github/workflows/tests.yml"
134
162
  - ".gitignore"
135
163
  - ".rspec"
136
164
  - CHANGELOG.md
@@ -166,7 +194,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
166
194
  - !ruby/object:Gem::Version
167
195
  version: '0'
168
196
  requirements: []
169
- rubygems_version: 3.1.2
197
+ rubygems_version: 3.0.3
170
198
  signing_key:
171
199
  specification_version: 4
172
200
  summary: Rules for linting code at Panorama Education