panolint 0.1.2 → 0.1.3

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: 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