reviewer 0.1.4 → 0.1.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.alexignore +1 -0
- data/.github/workflows/main.yml +5 -3
- data/.reviewer.example.yml +20 -10
- data/.reviewer.future.yml +221 -0
- data/.reviewer.yml +45 -8
- data/.reviewer_stdout +0 -0
- data/.rubocop.yml +1 -0
- data/Gemfile.lock +29 -28
- data/LICENSE.txt +4 -20
- data/README.md +26 -7
- data/lib/reviewer/arguments/files.rb +14 -8
- data/lib/reviewer/arguments/keywords.rb +5 -2
- data/lib/reviewer/arguments/tags.rb +11 -4
- data/lib/reviewer/arguments.rb +11 -4
- data/lib/reviewer/batch.rb +41 -14
- data/lib/reviewer/command/string/env.rb +4 -0
- data/lib/reviewer/command/string/flags.rb +12 -1
- data/lib/reviewer/command/string.rb +12 -18
- data/lib/reviewer/command.rb +7 -32
- data/lib/reviewer/configuration.rb +8 -1
- data/lib/reviewer/conversions.rb +0 -11
- data/lib/reviewer/guidance.rb +9 -5
- data/lib/reviewer/history.rb +32 -1
- data/lib/reviewer/keywords/git/staged.rb +16 -0
- data/lib/reviewer/output/printer.rb +44 -0
- data/lib/reviewer/output/scrubber.rb +48 -0
- data/lib/reviewer/output/token.rb +85 -0
- data/lib/reviewer/output.rb +73 -43
- data/lib/reviewer/runner/strategies/captured.rb +157 -0
- data/lib/reviewer/runner/strategies/{verbose.rb → passthrough.rb} +13 -13
- data/lib/reviewer/runner.rb +71 -13
- data/lib/reviewer/shell/result.rb +22 -7
- data/lib/reviewer/shell/timer.rb +15 -0
- data/lib/reviewer/shell.rb +7 -11
- data/lib/reviewer/tool/settings.rb +12 -5
- data/lib/reviewer/tool.rb +25 -3
- data/lib/reviewer/version.rb +1 -1
- data/lib/reviewer.rb +11 -10
- data/reviewer.gemspec +9 -5
- data/structure.svg +1 -0
- metadata +34 -28
- data/.ruby-version +0 -1
- data/lib/reviewer/command/string/verbosity.rb +0 -51
- data/lib/reviewer/command/verbosity.rb +0 -65
- data/lib/reviewer/printer.rb +0 -25
- data/lib/reviewer/runner/strategies/quiet.rb +0 -90
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4269dc4784c9a22232bd47db41cff0bf7d57b023ee50dc5fc455a650fb138b2a
|
4
|
+
data.tar.gz: 73d9261188abd69db6aa23aa7db6f76a59696b1dac3e35eb1a5615e013b40354
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 66894ea63a67d4964e93a5ab83ce92b95e0757d38af05a1587e136d0cc2d61fcf146d2c30534ce3f58aa4f08ed406e328ecad1293a617df73b2d1167c6146782
|
7
|
+
data.tar.gz: 0614f40cbd184e0e20aad58a8f4c320af3a5db358078cecdfac236047a0c85060b15b7dccbade7c599c4ebc030ea0eb4348d239fbbf3f25a48079f6f3a0464f7
|
data/.alexignore
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
CODE_OF_CONDUCT.md
|
data/.github/workflows/main.yml
CHANGED
@@ -1,12 +1,15 @@
|
|
1
|
-
name:
|
1
|
+
name: Review
|
2
2
|
|
3
3
|
on: [push,pull_request]
|
4
4
|
|
5
|
+
env:
|
6
|
+
CI: true
|
7
|
+
|
5
8
|
jobs:
|
6
9
|
build:
|
7
10
|
strategy:
|
8
11
|
matrix:
|
9
|
-
ruby: [2.5.9, 2.6.
|
12
|
+
ruby: [2.5.9, 2.6.9, 2.7.5, 3.0.3]
|
10
13
|
runs-on: ubuntu-latest
|
11
14
|
steps:
|
12
15
|
- uses: actions/checkout@v2
|
@@ -21,4 +24,3 @@ jobs:
|
|
21
24
|
run: bundle exec ./exe/rvw tests
|
22
25
|
- name: Multiple Command Review
|
23
26
|
run: bundle exec ./exe/rvw bundle_audit tests
|
24
|
-
|
data/.reviewer.example.yml
CHANGED
@@ -9,6 +9,7 @@
|
|
9
9
|
# links:
|
10
10
|
# home: // Optional. A link to the home page for the tool.
|
11
11
|
# install: // Optional. A link to the installation instructions for the tool.
|
12
|
+
# usage: // Optional. A link to the general usage instructions for the tool.
|
12
13
|
# ignore_syntax: // Optional. A link to the syntax for ignoring some rules for small sections of code.
|
13
14
|
# disable_syntax: // Optional. A link to the syntax for disabling entire rules for a tool.
|
14
15
|
# commands:
|
@@ -16,16 +17,22 @@
|
|
16
17
|
# prepare: // Optional. Command to run prior to the review phase. ex. 'bundle exec bundle-audit update'
|
17
18
|
# review: // Required. The only truly required field because this is the whole point.
|
18
19
|
# format: // Optional. Command to auto-update rule violations when possible.
|
19
|
-
#
|
20
|
+
# serve: // Optional. Command to start a local server with reports generated by the tool.
|
21
|
+
# generate: // Optional. Command to generate artifacts from the tool for viewing separately.
|
20
22
|
# max_exit_status: // Optional, defaults to 0. Some tools like Yarn Audit essentially won't return less than a 3. This specifies the threshold that's still considered passing.
|
21
|
-
#
|
22
|
-
#
|
23
|
+
# files:
|
24
|
+
# flag: // Optional, defaults to '' (empty string). The name of the flag used to pass subsets of files to the command.
|
25
|
+
# separator: // Optional, defaults to ' ' (single space). The character used to separate lists of files and directories.
|
23
26
|
# env: // Optional. A way to specify necessary environment variables for the tools commands. The key is the variable name, and the value is, well, the value.
|
24
27
|
# example_one: value // - The names will automatically be capitalized, so you can freely use lower-case here.
|
25
28
|
# example_one: value // - Reviewer is smart enough to handle string values with spaces and automatically quote them.
|
26
29
|
# flags: // Optional. A way to specify flags *only for the review command*. The key is the flag name, and the value is, well, the value.
|
27
30
|
# example_one: value // - Reviewer is smart enough to handle single-letter (-f) and multi-letter (--format) flags.
|
28
31
|
# example_two: value // - It's highly-recommended to use the longer-name format for flags when possible to serve as self-documentation.
|
32
|
+
# example_three: // - If the flag doesn't need or have a value, leaving it blank will translate it to a flag without a value.
|
33
|
+
# other: // Optional. A way to specify paramters that don't follow the standard flags conventions.
|
34
|
+
# description: value // - The key (ex. 'description') only serves as documentation and won't be used. Instead, the raw value will be applied
|
35
|
+
|
29
36
|
|
30
37
|
# In practice, a configuration block would look something like the block below.
|
31
38
|
tool-name-key:
|
@@ -43,11 +50,14 @@ tool-name-key:
|
|
43
50
|
prepare: 'bundle exec tool update'
|
44
51
|
review: 'bundle exec tool'
|
45
52
|
format: 'bundle exec tool --format'
|
46
|
-
quiet_option: '--quiet'
|
47
53
|
max_exit_status: 1
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
+
files:
|
55
|
+
flag: 'files'
|
56
|
+
separator: ','
|
57
|
+
env:
|
58
|
+
report: false
|
59
|
+
flags:
|
60
|
+
format: json
|
61
|
+
verbose:
|
62
|
+
other:
|
63
|
+
example: '--example | other'
|
@@ -0,0 +1,221 @@
|
|
1
|
+
# This represents the long-term vision for reviewer. It's a sort of documentation-driven design, but
|
2
|
+
# it's also heavily based on the initial exploration and iteration to determine what's possible and
|
3
|
+
# what's practical based on testing out a variety of command types and structures.
|
4
|
+
|
5
|
+
# Options for `rvw` command
|
6
|
+
# -c <file>, --config=<file>
|
7
|
+
# -f <file>,<file>..., --files=<file>,<file>...
|
8
|
+
# -t <tag>,<tag>..., --tags=<tag>,<tag>...
|
9
|
+
# -l <tool_key>,<tool_key>..., --tools=<tool_key>,<tool_key>...
|
10
|
+
# -c <command>, --command=<command>
|
11
|
+
# -k, --keywords
|
12
|
+
# -s, --settings
|
13
|
+
# -h, --help
|
14
|
+
# -v, --version
|
15
|
+
# <keyword>
|
16
|
+
|
17
|
+
# Implicit Keywords:
|
18
|
+
# - every <tag>
|
19
|
+
# - every <tool_key>
|
20
|
+
# - <tool_key>:settings
|
21
|
+
# - <tool_key>:links
|
22
|
+
# - every <tool_key>:<link>
|
23
|
+
# - <tool_key>:commands
|
24
|
+
# - every <tool_key>:<command>
|
25
|
+
|
26
|
+
# Reserved Keywords:
|
27
|
+
# - every link type
|
28
|
+
# - every command type
|
29
|
+
# - staged // currently staged git files
|
30
|
+
# - untracked // currently untracked git files
|
31
|
+
# - fresh // untracked files updated in last 5 minutes
|
32
|
+
# - fresh_15 // ... 15 minutes
|
33
|
+
# - fresh_30 // ... 30 minutes
|
34
|
+
# - fresh_60 // ... 60 minutes
|
35
|
+
# - stale // untracked files updated more than 5 minutes ago
|
36
|
+
# - stale_15 // ... 15 minutes
|
37
|
+
# - stale_30 // ... 30 minutes
|
38
|
+
# - stale_60 // ... 60 minutes
|
39
|
+
# - branch|diff // All files created or updated on the current branch
|
40
|
+
# - last_commit // All files created or updated in the last commit
|
41
|
+
# - current // alias for branch or diff?
|
42
|
+
|
43
|
+
# Command Examples:
|
44
|
+
|
45
|
+
# The Basics
|
46
|
+
# - rvw // runs :review command for all enabled tools
|
47
|
+
# - rvw <command> // runs <command> for all enabled tools (not disabled or solo)
|
48
|
+
# - rvw <keyword> // runs :review command for all enabled tools and translates the <keyword>
|
49
|
+
# - rvw <tag> // runs :review command for all enabled tools tagged with <tag>
|
50
|
+
|
51
|
+
# Tools
|
52
|
+
# - rvw <tool_key> // shortcut for `rvw <tool_key>:review`
|
53
|
+
# - rvw <tool_key>:<command> // runs <command> for <tool_key> in passthrough mode
|
54
|
+
# - rvw <tool_key>:<link> // opens the <link> via `open <link>` if present, otherwise, shares that it's not configured
|
55
|
+
# - rvw <tool_key>:settings // displays all settings for <tool_key>
|
56
|
+
# - rvw <tool_key>:commands // displays all configured commands for <tool_key>
|
57
|
+
# - rvw <tool_key>:links // displays all configured links for <tool_key>
|
58
|
+
|
59
|
+
# Combos
|
60
|
+
# - rvw <keyword> <tag> // ex. `rvw staged ruby` -> `rvw review staged ruby`
|
61
|
+
# - rvw <command> <tag> // ex. `rvw format ruby` -> `rvw format ruby`
|
62
|
+
# - rvw <command> <reserved_keyword> // ex. `rvw install ruby`
|
63
|
+
# - rvw <command> <reserved_keyword> <tag> // ex. `rvw format last_commit ruby`
|
64
|
+
# - rvw <command> <reserved_keyword> <tag> <tag> // ex. `rvw format last_commit ruby erb`
|
65
|
+
|
66
|
+
reviewer:
|
67
|
+
# Whether to run tools consecutively or in parallel if available
|
68
|
+
# :linear - It would suck if your first command is `bundle audit` and fails but 6 other tools
|
69
|
+
# are running in parallel but will take time to fail. So :linear with :stop as the behavior
|
70
|
+
# ensures you don't attepmt commands.
|
71
|
+
# :parallel - Reviewer will attempt to run commands on multiple threads/processors for more speed.
|
72
|
+
# Best used when groups of commands are not dependent on each other.
|
73
|
+
default_batch_mode: <:linear|:safe, :parallel|:fast>
|
74
|
+
|
75
|
+
# Fallback failure behavior for all commands where it isn't explicitly defined. Applies to
|
76
|
+
# linear runs independent of each other. So if you have two batches (ex. ruby, javascript), and
|
77
|
+
# one batch fails immediately, the remaining commands willn ot be run. But the other batch will
|
78
|
+
# safely continue independently.
|
79
|
+
# Optional. Defaults to :fast.
|
80
|
+
# :stop - Don't run any additional commands in that batch.
|
81
|
+
# :continue - Keep running the other commands.
|
82
|
+
default_command_failure_behavior_in_batch: <:stop, :continue>
|
83
|
+
|
84
|
+
# Fallback install behavior for all commands where it isn't explicitly defined.
|
85
|
+
# Maybe if the install command is present, `:auto` is implied?
|
86
|
+
# Optional. Defaults to :guidance.
|
87
|
+
# - :guidance shows the installation command and/or link for manual installation.
|
88
|
+
# - :auto attempts to automatically install if the command is missing
|
89
|
+
# - :skip quietly moves on without worrying about it
|
90
|
+
default_install_behavior: <:guidance, :auto, :skip>
|
91
|
+
|
92
|
+
# Fallback behavior for displaying results.
|
93
|
+
# Optional. Defaults to :full
|
94
|
+
# - :full - Re-run the command directly so you see the full output
|
95
|
+
# - :fast - Show the results, but potentially lose colorizing and some formatting
|
96
|
+
default_results_behavior: <:full, :fast, :timer>
|
97
|
+
|
98
|
+
# Fallback definition for determining whether a command is slow.
|
99
|
+
# Only used if :default_results_behavior is :timer
|
100
|
+
# Optional. Defaults to 10 seconds
|
101
|
+
default_slow_window: <integer seconds>
|
102
|
+
|
103
|
+
# Fallback defintion for determining whether a command needs to be prepped again.
|
104
|
+
# Optional. Defaults to 6 hours
|
105
|
+
default_prep_window: <integer hours>
|
106
|
+
|
107
|
+
# Primarily for debugging/improving performance of reviewer. But if low-level performance info is
|
108
|
+
# interesting, it can be enabled.
|
109
|
+
# Optional. Defaults to :min
|
110
|
+
# :min - Shows simply the total time for each command. Breaks out install/prep % if relevant.
|
111
|
+
timer_detail: <:min, :max>
|
112
|
+
|
113
|
+
# Custom-defined keywords for shortcuts
|
114
|
+
keywords:
|
115
|
+
# Compact version
|
116
|
+
mgc: 'format last_commit ruby erb'
|
117
|
+
# Long-form version of `mgc` (a little more self-documenting and explicit)
|
118
|
+
magic: '--command=format --keywords=last_commit --tags=ruby,erb'
|
119
|
+
# Long-form of `mgc` (most self-documentating and explicit)
|
120
|
+
magic:
|
121
|
+
- '--command=format'
|
122
|
+
- '--keywords=last_commit'
|
123
|
+
- '--tags=ruby,erb'
|
124
|
+
|
125
|
+
# The real core of the configuration for each individual tool.
|
126
|
+
tools:
|
127
|
+
<tool_key>: # Required. ex. 'rubocop', 'bundler-audit', etc.
|
128
|
+
status: <:enabled, :disabled, :solo> # Optional. Tools are enabled by default
|
129
|
+
name: # Optional. Defaults to <tool_key> capitalized
|
130
|
+
description: # Optional. Remind folks of the specific task this tool performs.
|
131
|
+
tags: [one, two, three] # Optional. For running groups of commands.
|
132
|
+
batch: # Optional. Only used if run in batch mode. ex. Run ruby commands on one thread and yarn commands on another.
|
133
|
+
install_behavior: <:auto, :guidance> # Optional. Defaults to Reviewer default.
|
134
|
+
failure_behavior: <:continue, :fast, :informative> # Optional
|
135
|
+
links:
|
136
|
+
home:
|
137
|
+
repo:
|
138
|
+
support:
|
139
|
+
install:
|
140
|
+
usage:
|
141
|
+
options:
|
142
|
+
syntax:
|
143
|
+
ignore:
|
144
|
+
disable:
|
145
|
+
files_syntax:
|
146
|
+
flag:
|
147
|
+
separator:
|
148
|
+
quotes:
|
149
|
+
shared_options: # Optional. Used for all commands.
|
150
|
+
prefix: 'bundle exec'
|
151
|
+
stale: <hours>
|
152
|
+
base: '<command>'
|
153
|
+
quiet: '--quiet'
|
154
|
+
max_exit_status:
|
155
|
+
flags:
|
156
|
+
<flag>: '<value>'
|
157
|
+
env:
|
158
|
+
<env_var>: '<value>'
|
159
|
+
raw:
|
160
|
+
- '<value>'
|
161
|
+
commands:
|
162
|
+
install:
|
163
|
+
desc:
|
164
|
+
stale:
|
165
|
+
prefix:
|
166
|
+
base:
|
167
|
+
quiet:
|
168
|
+
max_exit_status:
|
169
|
+
flags:
|
170
|
+
env:
|
171
|
+
raw:
|
172
|
+
prepare:
|
173
|
+
desc:
|
174
|
+
stale:
|
175
|
+
prefix:
|
176
|
+
base:
|
177
|
+
quiet:
|
178
|
+
max_exit_status:
|
179
|
+
flags:
|
180
|
+
env:
|
181
|
+
raw:
|
182
|
+
review:
|
183
|
+
desc:
|
184
|
+
stale:
|
185
|
+
prefix:
|
186
|
+
base:
|
187
|
+
quiet:
|
188
|
+
max_exit_status:
|
189
|
+
flags:
|
190
|
+
env:
|
191
|
+
raw:
|
192
|
+
format:
|
193
|
+
desc:
|
194
|
+
stale:
|
195
|
+
prefix:
|
196
|
+
base:
|
197
|
+
quiet:
|
198
|
+
max_exit_status:
|
199
|
+
flags:
|
200
|
+
env:
|
201
|
+
raw:
|
202
|
+
serve:
|
203
|
+
desc:
|
204
|
+
stale:
|
205
|
+
prefix:
|
206
|
+
base:
|
207
|
+
quiet:
|
208
|
+
max_exit_status:
|
209
|
+
flags:
|
210
|
+
env:
|
211
|
+
raw:
|
212
|
+
generate:
|
213
|
+
desc:
|
214
|
+
stale:
|
215
|
+
prefix:
|
216
|
+
base:
|
217
|
+
quiet:
|
218
|
+
max_exit_status:
|
219
|
+
flags:
|
220
|
+
env:
|
221
|
+
raw:
|
data/.reviewer.yml
CHANGED
@@ -9,7 +9,6 @@ bundle_audit:
|
|
9
9
|
install: 'bundle exec gem install bundler-audit'
|
10
10
|
prepare: 'bundle exec bundle-audit update'
|
11
11
|
review: 'bundle exec bundle-audit check --no-update'
|
12
|
-
quiet_option: '--quiet'
|
13
12
|
|
14
13
|
tests:
|
15
14
|
name: Minitest
|
@@ -18,14 +17,14 @@ tests:
|
|
18
17
|
links:
|
19
18
|
home:
|
20
19
|
commands:
|
21
|
-
review: "bundle exec rake
|
22
|
-
quiet_option: '--silent'
|
20
|
+
review: "bundle exec rake"
|
23
21
|
reports:
|
24
22
|
open_on_fail: true
|
25
23
|
local_file: coverage/index.html
|
26
24
|
local_uri: 'file:///Users/garrettdimon/Code/reviewer/coverage/index.html#_AllFiles'
|
27
25
|
env:
|
28
|
-
|
26
|
+
testopts: --seed=$SEED
|
27
|
+
# coverage: false
|
29
28
|
|
30
29
|
reek:
|
31
30
|
name: Reek
|
@@ -86,18 +85,56 @@ rubocop:
|
|
86
85
|
install: 'bundle exec gem install rubocop'
|
87
86
|
review: 'bundle exec rubocop --parallel'
|
88
87
|
format: 'bundle exec rubocop --auto-correct'
|
89
|
-
|
90
|
-
|
91
|
-
|
88
|
+
files:
|
89
|
+
flag: ''
|
90
|
+
separator: ' '
|
92
91
|
flags:
|
93
92
|
color:
|
94
93
|
|
94
|
+
|
95
|
+
# The YARD Parser can also come in handy:
|
96
|
+
# https://yardoc.org/types
|
95
97
|
inch:
|
98
|
+
disabled: true
|
96
99
|
tags: [docs, ruby, dev]
|
97
100
|
name: Inch
|
98
|
-
description: Review Ruby Documentation
|
101
|
+
description: Review Ruby Documentation Quality
|
99
102
|
links:
|
100
103
|
home: https://rrrene.org/inch/
|
104
|
+
usage: https://www.rubydoc.info/gems/yard/file/docs/Tags.md
|
101
105
|
commands:
|
102
106
|
install: 'bundle exec gem install inch'
|
103
107
|
review: 'bundle exec inch'
|
108
|
+
|
109
|
+
|
110
|
+
yard:
|
111
|
+
disabled: true
|
112
|
+
tags: [docs, ruby, dev]
|
113
|
+
name: Yard
|
114
|
+
description: Generates Documentation
|
115
|
+
links:
|
116
|
+
home: https://yardoc.org
|
117
|
+
usage: https://www.rubydoc.info/gems/yard/file/docs/GettingStarted.md#using
|
118
|
+
install: https://github.com/lsegal/yard#installing
|
119
|
+
commands:
|
120
|
+
install: 'bundle exec gem install yard'
|
121
|
+
prepare: "yard doc 'lib/**/*.rb'"
|
122
|
+
review: 'yard stats'
|
123
|
+
serve: 'yard server --reload && open http://0.0.0.0:8808'
|
124
|
+
generate:
|
125
|
+
quiet_flag: '--quiet'
|
126
|
+
|
127
|
+
|
128
|
+
alex:
|
129
|
+
disabled: true
|
130
|
+
tags: [language, docs]
|
131
|
+
name: Yard
|
132
|
+
description: Generates Documentation
|
133
|
+
links:
|
134
|
+
home:
|
135
|
+
usage:
|
136
|
+
install:
|
137
|
+
commands:
|
138
|
+
install: 'yarn global add alex'
|
139
|
+
review: 'alex .'
|
140
|
+
quiet_flag: '--quiet'
|
data/.reviewer_stdout
ADDED
Binary file
|
data/.rubocop.yml
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,22 +1,20 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
reviewer (0.1.
|
5
|
-
|
4
|
+
reviewer (0.1.5)
|
5
|
+
rainbow
|
6
6
|
slop
|
7
7
|
|
8
8
|
GEM
|
9
9
|
remote: https://rubygems.org/
|
10
10
|
specs:
|
11
11
|
ast (2.4.2)
|
12
|
-
bundler-audit (0.
|
12
|
+
bundler-audit (0.9.0.1)
|
13
13
|
bundler (>= 1.2.0, < 3)
|
14
14
|
thor (~> 1.0)
|
15
|
-
codecov (0.
|
15
|
+
codecov (0.6.0)
|
16
16
|
simplecov (>= 0.15, < 0.22)
|
17
17
|
coderay (1.1.3)
|
18
|
-
colorize (0.8.1)
|
19
|
-
dead_end (1.1.7)
|
20
18
|
docile (1.4.0)
|
21
19
|
erubis (2.7.0)
|
22
20
|
flay (2.12.1)
|
@@ -35,45 +33,45 @@ GEM
|
|
35
33
|
yard (~> 0.9.12)
|
36
34
|
kwalify (0.7.2)
|
37
35
|
method_source (1.0.0)
|
38
|
-
minitest (5.
|
39
|
-
minitest-
|
40
|
-
minitest
|
41
|
-
parallel (1.
|
42
|
-
parser (3.0.2
|
36
|
+
minitest (5.15.0)
|
37
|
+
minitest-heat (1.1.0)
|
38
|
+
minitest
|
39
|
+
parallel (1.21.0)
|
40
|
+
parser (3.0.3.2)
|
43
41
|
ast (~> 2.4.1)
|
44
42
|
path_expander (1.1.0)
|
45
43
|
pry (0.14.1)
|
46
44
|
coderay (~> 1.1)
|
47
45
|
method_source (~> 1.0)
|
48
|
-
psych (
|
46
|
+
psych (4.0.3)
|
47
|
+
stringio
|
49
48
|
rainbow (3.0.0)
|
50
49
|
rake (13.0.6)
|
51
|
-
reek (6.0.
|
50
|
+
reek (6.0.6)
|
52
51
|
kwalify (~> 0.7.0)
|
53
52
|
parser (~> 3.0.0)
|
54
|
-
psych (>= 3.1, < 5.0)
|
55
53
|
rainbow (>= 2.0, < 4.0)
|
56
|
-
regexp_parser (2.
|
54
|
+
regexp_parser (2.2.0)
|
57
55
|
rexml (3.2.5)
|
58
|
-
rubocop (1.
|
56
|
+
rubocop (1.23.0)
|
59
57
|
parallel (~> 1.10)
|
60
58
|
parser (>= 3.0.0.0)
|
61
59
|
rainbow (>= 2.2.2, < 4.0)
|
62
60
|
regexp_parser (>= 1.8, < 3.0)
|
63
61
|
rexml
|
64
|
-
rubocop-ast (>= 1.
|
62
|
+
rubocop-ast (>= 1.12.0, < 2.0)
|
65
63
|
ruby-progressbar (~> 1.7)
|
66
64
|
unicode-display_width (>= 1.4.0, < 3.0)
|
67
|
-
rubocop-ast (1.
|
65
|
+
rubocop-ast (1.15.0)
|
68
66
|
parser (>= 3.0.1.1)
|
69
|
-
rubocop-minitest (0.
|
67
|
+
rubocop-minitest (0.17.0)
|
70
68
|
rubocop (>= 0.90, < 2.0)
|
71
69
|
rubocop-rake (0.6.0)
|
72
70
|
rubocop (~> 1.0)
|
73
71
|
ruby-progressbar (1.11.0)
|
74
|
-
ruby_parser (3.
|
75
|
-
sexp_processor (~> 4.
|
76
|
-
sexp_processor (4.
|
72
|
+
ruby_parser (3.18.1)
|
73
|
+
sexp_processor (~> 4.16)
|
74
|
+
sexp_processor (4.16.0)
|
77
75
|
simplecov (0.21.2)
|
78
76
|
docile (~> 1.1)
|
79
77
|
simplecov-html (~> 0.11)
|
@@ -82,14 +80,17 @@ GEM
|
|
82
80
|
simplecov_json_formatter (0.1.3)
|
83
81
|
slop (4.9.1)
|
84
82
|
sparkr (0.4.1)
|
83
|
+
stringio (3.0.1)
|
85
84
|
sync (0.5.0)
|
86
85
|
term-ansicolor (1.7.1)
|
87
86
|
tins (~> 1.0)
|
88
87
|
thor (1.1.0)
|
89
88
|
tins (1.29.1)
|
90
89
|
sync
|
91
|
-
unicode-display_width (2.
|
92
|
-
|
90
|
+
unicode-display_width (2.1.0)
|
91
|
+
webrick (1.7.0)
|
92
|
+
yard (0.9.27)
|
93
|
+
webrick (~> 1.7.0)
|
93
94
|
|
94
95
|
PLATFORMS
|
95
96
|
ruby
|
@@ -99,13 +100,12 @@ PLATFORMS
|
|
99
100
|
DEPENDENCIES
|
100
101
|
bundler-audit
|
101
102
|
codecov
|
102
|
-
dead_end
|
103
103
|
flay
|
104
104
|
flog
|
105
105
|
inch
|
106
106
|
minitest
|
107
|
-
minitest-
|
108
|
-
psych
|
107
|
+
minitest-heat
|
108
|
+
psych
|
109
109
|
rake (~> 13.0)
|
110
110
|
reek
|
111
111
|
reviewer!
|
@@ -113,6 +113,7 @@ DEPENDENCIES
|
|
113
113
|
rubocop-minitest
|
114
114
|
rubocop-rake
|
115
115
|
simplecov
|
116
|
+
yard
|
116
117
|
|
117
118
|
BUNDLED WITH
|
118
|
-
2.2.
|
119
|
+
2.2.33
|
data/LICENSE.txt
CHANGED
@@ -1,21 +1,5 @@
|
|
1
|
-
|
1
|
+
Copyright (c) Garrett Dimon
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
7
|
-
in the Software without restriction, including without limitation the rights
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
10
|
-
furnished to do so, subject to the following conditions:
|
11
|
-
|
12
|
-
The above copyright notice and this permission notice shall be included in
|
13
|
-
all copies or substantial portions of the Software.
|
14
|
-
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
-
THE SOFTWARE.
|
3
|
+
Reviewer is an Open Source project licensed under the terms of
|
4
|
+
the LGPLv3 license. Please see <http://www.gnu.org/licenses/lgpl-3.0.html>
|
5
|
+
for license text.
|
data/README.md
CHANGED
@@ -1,18 +1,37 @@
|
|
1
|
+
# [Reviewer](https://github.com/garrettdimon/reviewer)
|
2
|
+
by [Garrett Dimon](https://garrettdimon.com)
|
1
3
|
|
2
|
-
|
4
|
+
---
|
3
5
|
|
4
|
-
|
6
|
+
**Note:** As of December 2021, Reviewer is a work in progress. While it's working great reviewing its own code, it's not quite ready for wider usage. Once, it's ready, it will provide more helpful installation and usage details.
|
5
7
|
|
6
|
-
|
8
|
+
---
|
7
9
|
|
8
|
-
*Reviewer
|
10
|
+
*With Reviewer, you can seamlessly use multiple automated code review tools with orders of magnitude less friction so you can use them more frequently and consistently.*
|
9
11
|
|
10
|
-
|
12
|
+
So instead of remembering and typing...
|
13
|
+
```bash
|
14
|
+
$ yarn audit --level moderate
|
15
|
+
$ bundle exec bundle-audit check --no-update
|
16
|
+
$ bundle exec rubocop --parallel
|
17
|
+
$ bundle exec erblint --lint-all --enable-all-linters
|
18
|
+
$ yarn stylelint .
|
19
|
+
$ yarn eslint .
|
20
|
+
```
|
21
|
+
...you could just type...
|
22
|
+
```
|
23
|
+
$ rvw
|
24
|
+
```
|
11
25
|
|
12
|
-
|
26
|
+
That's just the tip of the iceberg, though. For the full story on Reviewer's capabilities and benefits, the [Overview](https://github.com/garrettdimon/reviewer/wiki/Overview) is the best place to start. Or if you'd like to see how it's configured under the hood, the [Configuration Instructions](https://github.com/garrettdimon/reviewer/wiki/Configuration) go even deeper.
|
27
|
+
|
28
|
+
[![build](https://github.com/garrettdimon/reviewer/actions/workflows/main.yml/badge.svg?branch=main)](https://github.com/garrettdimon/reviewer/actions/workflows/main.yml)
|
29
|
+
[![coverage](https://img.shields.io/codecov/c/github/garrettdimon/reviewer?token=UuXUlQAA2e)](https://codecov.io/gh/garrettdimon/reviewer)
|
30
|
+
[![last commit](https://img.shields.io/github/last-commit/garrettdimon/reviewer/main)](https://github.com/garrettdimon/reviewer/commits/main)
|
31
|
+
[![gem version](https://img.shields.io/gem/v/reviewer)](https://rubygems.org/gems/reviewer)
|
13
32
|
|
33
|
+
## License
|
14
34
|
The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
|
15
35
|
|
16
36
|
## Code of Conduct
|
17
|
-
|
18
37
|
Everyone interacting in the Reviewer project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/reviewer/blob/master/CODE_OF_CONDUCT.md).
|