panolint 0.1.0 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.dependabot/config.yml +46 -0
- data/.github/workflows/auto-approve-dependabot.yml +26 -0
- data/.github/workflows/remove-needs-qa.yml +35 -0
- data/.github/workflows/{main.yml → tests.yml} +1 -1
- data/CHANGELOG.md +35 -0
- data/Gemfile.lock +57 -49
- data/README.md +17 -2
- data/brakeman.yml +13 -0
- data/lib/panolint/version.rb +1 -1
- data/{.rubocop.yml → panolint-rubocop.yml} +52 -1
- data/panolint.gemspec +5 -2
- metadata +58 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a7bcaf44939e18713d7b9072ee3236b2508388b4fd061240d6ec1bc704c44a6e
|
4
|
+
data.tar.gz: 90f7a81732f9f894ddfe08019a40ed6bf889150f9a7422b10090419d346bc683
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c9a0b75079305a13426a1261f30326001ddf50685634314ebd8714690b24bbbc124acd3b6004d02979db160294abab01c91ac3fc0b784f21e1eba6612e7f77c5
|
7
|
+
data.tar.gz: 222e53ef2cb0a74c4e2a0c00e6e5eff97c4c9feed130d39c0c91aa2485b1be95dd5b14c4f16f5ebb42d873dd5ba2969fe8b3e7df3610a2fa3fafffd9e7e9c42a
|
@@ -0,0 +1,46 @@
|
|
1
|
+
# This is a dependabot configuration file. When this file is seen on github, a
|
2
|
+
# dependabot configuration is created for the project. We can use this to
|
3
|
+
# control various aspects of the automated dependency checking, such as the
|
4
|
+
# frequency and the target_branch.
|
5
|
+
#
|
6
|
+
# Reference: https://dependabot.com/docs/config-file/
|
7
|
+
version: 1
|
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.
|
12
|
+
- package_manager: "ruby:bundler"
|
13
|
+
directory: "/"
|
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
|
+
})
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
# Changelog
|
2
|
+
|
3
|
+
All notable changes to this project will be documented in this file.
|
4
|
+
|
5
|
+
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
6
|
+
|
7
|
+
## [Unreleased]
|
8
|
+
|
9
|
+
## [0.1.3] - 2021-04-22
|
10
|
+
|
11
|
+
## [0.1.2] - 2020-04-10
|
12
|
+
|
13
|
+
### Changed
|
14
|
+
|
15
|
+
- The `panolint.yml` file renamed to `rubocop.yml`.
|
16
|
+
- Add `brakeman` and instructions for running it.
|
17
|
+
|
18
|
+
## [0.1.1] - 2020-04-10
|
19
|
+
|
20
|
+
### Changed
|
21
|
+
|
22
|
+
- Explicitly ignore the `Naming/FileName` rule on `.overcommit/Gemfile` files.
|
23
|
+
- Change the config name from `.rubocop.yml` to `panolint.yml`.
|
24
|
+
|
25
|
+
## [0.1.0] - 2020-04-09
|
26
|
+
|
27
|
+
### Added
|
28
|
+
|
29
|
+
- Initial release. 🎉
|
30
|
+
|
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
|
33
|
+
[0.1.2]: https://github.com/panorama-ed/panolint/compare/v0.1.1...v0.1.2
|
34
|
+
[0.1.1]: https://github.com/panorama-ed/panolint/compare/v0.1.0...v0.1.1
|
35
|
+
[0.1.0]: https://github.com/panorama-ed/panolint/compare/45c38b...v0.1.0
|
data/Gemfile.lock
CHANGED
@@ -1,70 +1,78 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
panolint (0.1.
|
5
|
-
|
4
|
+
panolint (0.1.4)
|
5
|
+
brakeman (>= 4.8, < 6.0)
|
6
|
+
rubocop (>= 0.83, < 2.0)
|
6
7
|
rubocop-performance (~> 1.5)
|
7
8
|
rubocop-rails (~> 2.5)
|
8
|
-
rubocop-
|
9
|
+
rubocop-rake (~> 0.5)
|
10
|
+
rubocop-rspec (~> 2.0)
|
9
11
|
|
10
12
|
GEM
|
11
13
|
remote: https://rubygems.org/
|
12
14
|
specs:
|
13
|
-
activesupport (6.
|
15
|
+
activesupport (6.1.4.1)
|
14
16
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
15
|
-
i18n (>=
|
16
|
-
minitest (
|
17
|
-
tzinfo (~>
|
18
|
-
zeitwerk (~> 2.
|
19
|
-
ast (2.4.
|
20
|
-
|
21
|
-
|
22
|
-
|
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.1.2)
|
23
|
+
concurrent-ruby (1.1.9)
|
24
|
+
diff-lcs (1.4.4)
|
25
|
+
i18n (1.8.11)
|
23
26
|
concurrent-ruby (~> 1.0)
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
rack (2.2.2)
|
27
|
+
minitest (5.14.4)
|
28
|
+
parallel (1.21.0)
|
29
|
+
parser (3.0.2.0)
|
30
|
+
ast (~> 2.4.1)
|
31
|
+
rack (2.2.3)
|
30
32
|
rainbow (3.0.0)
|
31
|
-
rake (13.0.
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
rspec-
|
36
|
-
rspec-
|
37
|
-
|
38
|
-
|
39
|
-
|
33
|
+
rake (13.0.6)
|
34
|
+
regexp_parser (2.1.1)
|
35
|
+
rexml (3.2.5)
|
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)
|
40
43
|
diff-lcs (>= 1.2.0, < 2.0)
|
41
|
-
rspec-support (~> 3.
|
42
|
-
rspec-mocks (3.
|
44
|
+
rspec-support (~> 3.10.0)
|
45
|
+
rspec-mocks (3.10.0)
|
43
46
|
diff-lcs (>= 1.2.0, < 2.0)
|
44
|
-
rspec-support (~> 3.
|
45
|
-
rspec-support (3.
|
46
|
-
rubocop (
|
47
|
-
jaro_winkler (~> 1.5.1)
|
47
|
+
rspec-support (~> 3.10.0)
|
48
|
+
rspec-support (3.10.0)
|
49
|
+
rubocop (1.22.1)
|
48
50
|
parallel (~> 1.10)
|
49
|
-
parser (>=
|
51
|
+
parser (>= 3.0.0.0)
|
50
52
|
rainbow (>= 2.2.2, < 4.0)
|
53
|
+
regexp_parser (>= 1.8, < 3.0)
|
51
54
|
rexml
|
55
|
+
rubocop-ast (>= 1.12.0, < 2.0)
|
52
56
|
ruby-progressbar (~> 1.7)
|
53
|
-
unicode-display_width (>= 1.4.0, <
|
54
|
-
rubocop-
|
55
|
-
|
56
|
-
rubocop-
|
57
|
-
|
57
|
+
unicode-display_width (>= 1.4.0, < 3.0)
|
58
|
+
rubocop-ast (1.13.0)
|
59
|
+
parser (>= 3.0.1.1)
|
60
|
+
rubocop-performance (1.11.5)
|
61
|
+
rubocop (>= 1.7.0, < 2.0)
|
62
|
+
rubocop-ast (>= 0.4.0)
|
63
|
+
rubocop-rails (2.12.2)
|
64
|
+
activesupport (>= 4.2.0)
|
58
65
|
rack (>= 1.1)
|
59
|
-
rubocop (>=
|
60
|
-
rubocop-
|
61
|
-
rubocop (
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
66
|
+
rubocop (>= 1.7.0, < 2.0)
|
67
|
+
rubocop-rake (0.6.0)
|
68
|
+
rubocop (~> 1.0)
|
69
|
+
rubocop-rspec (2.5.0)
|
70
|
+
rubocop (~> 1.19)
|
71
|
+
ruby-progressbar (1.11.0)
|
72
|
+
tzinfo (2.0.4)
|
73
|
+
concurrent-ruby (~> 1.0)
|
74
|
+
unicode-display_width (2.1.0)
|
75
|
+
zeitwerk (2.5.1)
|
68
76
|
|
69
77
|
PLATFORMS
|
70
78
|
ruby
|
@@ -76,4 +84,4 @@ DEPENDENCIES
|
|
76
84
|
rspec (~> 3.0)
|
77
85
|
|
78
86
|
BUNDLED WITH
|
79
|
-
2.
|
87
|
+
2.2.29
|
data/README.md
CHANGED
@@ -1,5 +1,8 @@
|
|
1
1
|
# Panolint
|
2
2
|
|
3
|
+
[![Build Status](https://github.com/panorama-ed/panolint/workflows/Main/badge.svg)](https://github.com/panorama-ed/panolint/actions)
|
4
|
+
[![Gem Version](https://img.shields.io/gem/v/panolint.svg)](https://github.com/panorama-ed/panolint)
|
5
|
+
|
3
6
|
A small gem containing rules for linting code at Panorama Education.
|
4
7
|
|
5
8
|
## Installation
|
@@ -20,13 +23,25 @@ Or install it yourself as:
|
|
20
23
|
|
21
24
|
## Usage
|
22
25
|
|
23
|
-
|
26
|
+
### `brakeman`
|
27
|
+
|
28
|
+
You can use `panolint`'s `brakeman` configuration in your project by pointing the `brakeman` run at the configuration file in this repo:
|
29
|
+
|
30
|
+
```
|
31
|
+
$ bundle exec brakeman -c "$(bundle show brakeman)/brakeman.yml"
|
32
|
+
```
|
33
|
+
|
34
|
+
### `rubocop`
|
35
|
+
|
36
|
+
You can use `panolint`'s rubocop configuration in your project with the following addition to the top of your project's `.rubocop.yml`:
|
24
37
|
|
25
38
|
```
|
26
39
|
inherit_gem:
|
27
|
-
panolint:
|
40
|
+
panolint: panolint-rubocop.yml
|
28
41
|
```
|
29
42
|
|
43
|
+
Note that it for this gem in particular in needs to not be a `.rubocop.yml` file because of rubocop's [path relativity](https://github.com/rubocop-hq/rubocop/blob/master/manual/configuration.md#path-relativity).
|
44
|
+
|
30
45
|
## Development
|
31
46
|
|
32
47
|
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
data/brakeman.yml
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
---
|
2
|
+
:ensure_latest: true # From brakeman --help: "Fail when Brakeman is outdated"
|
3
|
+
:run_all_checks: true # "Run all default and optional checks"
|
4
|
+
:branch_limit: -1 # "Limit depth of values in branches (-1 for no limit)"
|
5
|
+
|
6
|
+
# The brakeman wiki says this option "enables deeper data flow analysis by
|
7
|
+
# allowing Brakeman to inspect called methods and attempt to determine the
|
8
|
+
# return value of the call."
|
9
|
+
:interprocedural: true
|
10
|
+
:additional_libs_path:
|
11
|
+
# This ensures brakeman is run on all files, not just those in standard Rails
|
12
|
+
# directories.
|
13
|
+
- .
|
data/lib/panolint/version.rb
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:
|
6
|
+
# panolint: 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,11 @@ AllCops:
|
|
18
18
|
- !ruby/regexp /vendor\/(?!panoramaed).*$/
|
19
19
|
- "db/schema.rb"
|
20
20
|
- "db/migrate/**/*"
|
21
|
+
- "node_modules/**/*"
|
22
|
+
NewCops: enable
|
23
|
+
|
24
|
+
Gemspec/RequiredRubyVersion:
|
25
|
+
Enabled: false
|
21
26
|
|
22
27
|
Layout/DotPosition:
|
23
28
|
EnforcedStyle: trailing
|
@@ -33,6 +38,12 @@ Lint/AmbiguousBlockAssociation:
|
|
33
38
|
Lint/Debugger:
|
34
39
|
Severity: error
|
35
40
|
|
41
|
+
Lint/DuplicateElsifCondition:
|
42
|
+
Enabled: true
|
43
|
+
|
44
|
+
Lint/MixedRegexpCaptureTypes:
|
45
|
+
Enabled: true
|
46
|
+
|
36
47
|
Lint/SuppressedException:
|
37
48
|
Enabled: false
|
38
49
|
|
@@ -65,6 +76,10 @@ Metrics/PerceivedComplexity:
|
|
65
76
|
Naming/BinaryOperatorParameterName:
|
66
77
|
Enabled: false
|
67
78
|
|
79
|
+
Naming/FileName:
|
80
|
+
Exclude:
|
81
|
+
- .overcommit/Gemfile
|
82
|
+
|
68
83
|
RSpec/ExpectChange:
|
69
84
|
Enabled: false
|
70
85
|
|
@@ -77,6 +92,9 @@ RSpec/LetSetup:
|
|
77
92
|
RSpec/MessageSpies:
|
78
93
|
EnforcedStyle: receive
|
79
94
|
|
95
|
+
RSpec/MultipleMemoizedHelpers:
|
96
|
+
Enabled: false
|
97
|
+
|
80
98
|
RSpec/NamedSubject:
|
81
99
|
Enabled: false
|
82
100
|
|
@@ -87,6 +105,12 @@ Style/Alias:
|
|
87
105
|
Enabled: true
|
88
106
|
EnforcedStyle: prefer_alias_method
|
89
107
|
|
108
|
+
Style/ArrayCoercion:
|
109
|
+
Enabled: true
|
110
|
+
|
111
|
+
Style/CaseLikeIf:
|
112
|
+
Enabled: true
|
113
|
+
|
90
114
|
Style/Documentation:
|
91
115
|
Enabled: false
|
92
116
|
|
@@ -102,6 +126,9 @@ Style/FormatString:
|
|
102
126
|
Style/GuardClause:
|
103
127
|
Enabled: false
|
104
128
|
|
129
|
+
Style/HashAsLastArrayItem:
|
130
|
+
Enabled: true
|
131
|
+
|
105
132
|
Style/MixinUsage:
|
106
133
|
Exclude:
|
107
134
|
- bin/**/*
|
@@ -109,6 +136,15 @@ Style/MixinUsage:
|
|
109
136
|
Style/MultilineBlockChain:
|
110
137
|
Enabled: false
|
111
138
|
|
139
|
+
Style/RedundantFileExtensionInRequire:
|
140
|
+
Enabled: true
|
141
|
+
|
142
|
+
Style/RedundantRegexpCharacterClass:
|
143
|
+
Enabled: true
|
144
|
+
|
145
|
+
Style/RedundantRegexpEscape:
|
146
|
+
Enabled: true
|
147
|
+
|
112
148
|
Style/RedundantReturn:
|
113
149
|
AllowMultipleReturnValues: true
|
114
150
|
|
@@ -148,12 +184,24 @@ RSpec/MultipleExpectations:
|
|
148
184
|
# following rules all mirror the default rubocop configuration, but they're here
|
149
185
|
# just to silence the warnings. They can be removed when 1.0 comes out.
|
150
186
|
|
187
|
+
Lint/DeprecatedOpenSSLConstant:
|
188
|
+
Enabled: true
|
189
|
+
|
190
|
+
Layout/EmptyLinesAroundAttributeAccessor:
|
191
|
+
Enabled: true
|
192
|
+
|
193
|
+
Layout/SpaceAroundMethodCallOperator:
|
194
|
+
Enabled: true
|
195
|
+
|
151
196
|
Lint/RaiseException:
|
152
197
|
Enabled: true
|
153
198
|
|
154
199
|
Lint/StructNewOverride:
|
155
200
|
Enabled: true
|
156
201
|
|
202
|
+
Style/ExponentialNotation:
|
203
|
+
Enabled: true
|
204
|
+
|
157
205
|
Style/HashEachMethods:
|
158
206
|
Enabled: true
|
159
207
|
|
@@ -162,3 +210,6 @@ Style/HashTransformKeys:
|
|
162
210
|
|
163
211
|
Style/HashTransformValues:
|
164
212
|
Enabled: true
|
213
|
+
|
214
|
+
Style/SlicingWithRange:
|
215
|
+
Enabled: true
|
data/panolint.gemspec
CHANGED
@@ -13,6 +13,7 @@ Gem::Specification.new do |spec|
|
|
13
13
|
spec.summary = "Rules for linting code at Panorama Education"
|
14
14
|
spec.homepage = "https://github.com/panorama-ed/panolint"
|
15
15
|
spec.license = "MIT"
|
16
|
+
spec.metadata = { "rubygems_mfa_required" => "true" }
|
16
17
|
|
17
18
|
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
18
19
|
`git ls-files -z`.split("\x0").reject do |f|
|
@@ -24,10 +25,12 @@ Gem::Specification.new do |spec|
|
|
24
25
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
25
26
|
spec.require_paths = ["lib"]
|
26
27
|
|
27
|
-
spec.add_dependency "
|
28
|
+
spec.add_dependency "brakeman", ">= 4.8", "< 6.0"
|
29
|
+
spec.add_dependency "rubocop", ">= 0.83", "< 2.0"
|
28
30
|
spec.add_dependency "rubocop-performance", "~> 1.5"
|
29
31
|
spec.add_dependency "rubocop-rails", "~> 2.5"
|
30
|
-
spec.add_dependency "rubocop-
|
32
|
+
spec.add_dependency "rubocop-rake", "~> 0.5"
|
33
|
+
spec.add_dependency "rubocop-rspec", "~> 2.0"
|
31
34
|
|
32
35
|
spec.add_development_dependency "bundler", "~> 2.1"
|
33
36
|
spec.add_development_dependency "rake", "~> 13.0"
|
metadata
CHANGED
@@ -1,29 +1,55 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: panolint
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kevin Deisz
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-12-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: brakeman
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '4.8'
|
20
|
+
- - "<"
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '6.0'
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '4.8'
|
30
|
+
- - "<"
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '6.0'
|
13
33
|
- !ruby/object:Gem::Dependency
|
14
34
|
name: rubocop
|
15
35
|
requirement: !ruby/object:Gem::Requirement
|
16
36
|
requirements:
|
17
|
-
- - "
|
37
|
+
- - ">="
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '0.83'
|
40
|
+
- - "<"
|
18
41
|
- !ruby/object:Gem::Version
|
19
|
-
version: '0
|
42
|
+
version: '2.0'
|
20
43
|
type: :runtime
|
21
44
|
prerelease: false
|
22
45
|
version_requirements: !ruby/object:Gem::Requirement
|
23
46
|
requirements:
|
24
|
-
- - "
|
47
|
+
- - ">="
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '0.83'
|
50
|
+
- - "<"
|
25
51
|
- !ruby/object:Gem::Version
|
26
|
-
version: '0
|
52
|
+
version: '2.0'
|
27
53
|
- !ruby/object:Gem::Dependency
|
28
54
|
name: rubocop-performance
|
29
55
|
requirement: !ruby/object:Gem::Requirement
|
@@ -52,20 +78,34 @@ dependencies:
|
|
52
78
|
- - "~>"
|
53
79
|
- !ruby/object:Gem::Version
|
54
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'
|
55
95
|
- !ruby/object:Gem::Dependency
|
56
96
|
name: rubocop-rspec
|
57
97
|
requirement: !ruby/object:Gem::Requirement
|
58
98
|
requirements:
|
59
99
|
- - "~>"
|
60
100
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
101
|
+
version: '2.0'
|
62
102
|
type: :runtime
|
63
103
|
prerelease: false
|
64
104
|
version_requirements: !ruby/object:Gem::Requirement
|
65
105
|
requirements:
|
66
106
|
- - "~>"
|
67
107
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
108
|
+
version: '2.0'
|
69
109
|
- !ruby/object:Gem::Dependency
|
70
110
|
name: bundler
|
71
111
|
requirement: !ruby/object:Gem::Requirement
|
@@ -115,10 +155,13 @@ executables: []
|
|
115
155
|
extensions: []
|
116
156
|
extra_rdoc_files: []
|
117
157
|
files:
|
118
|
-
- ".
|
158
|
+
- ".dependabot/config.yml"
|
159
|
+
- ".github/workflows/auto-approve-dependabot.yml"
|
160
|
+
- ".github/workflows/remove-needs-qa.yml"
|
161
|
+
- ".github/workflows/tests.yml"
|
119
162
|
- ".gitignore"
|
120
163
|
- ".rspec"
|
121
|
-
-
|
164
|
+
- CHANGELOG.md
|
122
165
|
- CODE_OF_CONDUCT.md
|
123
166
|
- Gemfile
|
124
167
|
- Gemfile.lock
|
@@ -127,13 +170,16 @@ files:
|
|
127
170
|
- Rakefile
|
128
171
|
- bin/console
|
129
172
|
- bin/setup
|
173
|
+
- brakeman.yml
|
130
174
|
- lib/panolint.rb
|
131
175
|
- lib/panolint/version.rb
|
176
|
+
- panolint-rubocop.yml
|
132
177
|
- panolint.gemspec
|
133
178
|
homepage: https://github.com/panorama-ed/panolint
|
134
179
|
licenses:
|
135
180
|
- MIT
|
136
|
-
metadata:
|
181
|
+
metadata:
|
182
|
+
rubygems_mfa_required: 'true'
|
137
183
|
post_install_message:
|
138
184
|
rdoc_options: []
|
139
185
|
require_paths:
|
@@ -149,7 +195,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
149
195
|
- !ruby/object:Gem::Version
|
150
196
|
version: '0'
|
151
197
|
requirements: []
|
152
|
-
rubygems_version: 3.
|
198
|
+
rubygems_version: 3.0.3
|
153
199
|
signing_key:
|
154
200
|
specification_version: 4
|
155
201
|
summary: Rules for linting code at Panorama Education
|