reviewer 0.1.4 → 0.1.5

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.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/.alexignore +1 -0
  3. data/.github/workflows/main.yml +5 -3
  4. data/.reviewer.example.yml +20 -10
  5. data/.reviewer.future.yml +221 -0
  6. data/.reviewer.yml +45 -8
  7. data/.reviewer_stdout +0 -0
  8. data/.rubocop.yml +1 -0
  9. data/Gemfile.lock +29 -28
  10. data/LICENSE.txt +4 -20
  11. data/README.md +26 -7
  12. data/lib/reviewer/arguments/files.rb +14 -8
  13. data/lib/reviewer/arguments/keywords.rb +5 -2
  14. data/lib/reviewer/arguments/tags.rb +11 -4
  15. data/lib/reviewer/arguments.rb +11 -4
  16. data/lib/reviewer/batch.rb +41 -14
  17. data/lib/reviewer/command/string/env.rb +4 -0
  18. data/lib/reviewer/command/string/flags.rb +12 -1
  19. data/lib/reviewer/command/string.rb +12 -18
  20. data/lib/reviewer/command.rb +7 -32
  21. data/lib/reviewer/configuration.rb +8 -1
  22. data/lib/reviewer/conversions.rb +0 -11
  23. data/lib/reviewer/guidance.rb +9 -5
  24. data/lib/reviewer/history.rb +32 -1
  25. data/lib/reviewer/keywords/git/staged.rb +16 -0
  26. data/lib/reviewer/output/printer.rb +44 -0
  27. data/lib/reviewer/output/scrubber.rb +48 -0
  28. data/lib/reviewer/output/token.rb +85 -0
  29. data/lib/reviewer/output.rb +73 -43
  30. data/lib/reviewer/runner/strategies/captured.rb +157 -0
  31. data/lib/reviewer/runner/strategies/{verbose.rb → passthrough.rb} +13 -13
  32. data/lib/reviewer/runner.rb +71 -13
  33. data/lib/reviewer/shell/result.rb +22 -7
  34. data/lib/reviewer/shell/timer.rb +15 -0
  35. data/lib/reviewer/shell.rb +7 -11
  36. data/lib/reviewer/tool/settings.rb +12 -5
  37. data/lib/reviewer/tool.rb +25 -3
  38. data/lib/reviewer/version.rb +1 -1
  39. data/lib/reviewer.rb +11 -10
  40. data/reviewer.gemspec +9 -5
  41. data/structure.svg +1 -0
  42. metadata +34 -28
  43. data/.ruby-version +0 -1
  44. data/lib/reviewer/command/string/verbosity.rb +0 -51
  45. data/lib/reviewer/command/verbosity.rb +0 -65
  46. data/lib/reviewer/printer.rb +0 -25
  47. data/lib/reviewer/runner/strategies/quiet.rb +0 -90
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9223e406b7f957249c7d39ba4c56e3fbdabe323e52b270af076de0a530b51b9f
4
- data.tar.gz: afb2714ed785bd91b2fe3d3d7b6f75fa8826f9387609ba6eb21ed21960883e10
3
+ metadata.gz: 4269dc4784c9a22232bd47db41cff0bf7d57b023ee50dc5fc455a650fb138b2a
4
+ data.tar.gz: 73d9261188abd69db6aa23aa7db6f76a59696b1dac3e35eb1a5615e013b40354
5
5
  SHA512:
6
- metadata.gz: 7f56b586b5bea303b4dab387ba4c66535caf2f1cdbc0d8ff3b2a8e092b54d0a3bc340ae864a0ae90729bb89a2925294c51c8bab9476cb2a34f886b429efb3694
7
- data.tar.gz: 71da282037c2f26c339afe21ddb71ff0713ff7bf652bb0787f74df3b16bf12cd9aea86a7bf7625c0ee43d8d80e6d1e0ca03315e6cf9c1e8eee33cb6082415558
6
+ metadata.gz: 66894ea63a67d4964e93a5ab83ce92b95e0757d38af05a1587e136d0cc2d61fcf146d2c30534ce3f58aa4f08ed406e328ecad1293a617df73b2d1167c6146782
7
+ data.tar.gz: 0614f40cbd184e0e20aad58a8f4c320af3a5db358078cecdfac236047a0c85060b15b7dccbade7c599c4ebc030ea0eb4348d239fbbf3f25a48079f6f3a0464f7
data/.alexignore ADDED
@@ -0,0 +1 @@
1
+ CODE_OF_CONDUCT.md
@@ -1,12 +1,15 @@
1
- name: Ruby
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.8, 2.7.4, 3.0.2]
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
-
@@ -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
- # quiet_option: // Optional, but strongly suggested. Helps keep output under control when running multiple tools.
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
- # files_flag: // Optional, defaults to '' (empty string). The name of the flag used to pass subsets of files to the command.
22
- # files_separator: // Optional, defaults to ' ' (single space). The character used to separate lists of files and directories.
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
- files_flag: 'files'
49
- files_separator: ','
50
- env:
51
- report: false
52
- flags:
53
- format: json
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 TESTOPTS='--seed=$SEED'"
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
- coverage: true
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
- quiet_option: '--format q'
90
- files_flag: ''
91
- files_list_separator: ' '
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
@@ -1,4 +1,5 @@
1
1
  AllCops:
2
+ TargetRubyVersion: 2.5
2
3
  NewCops: enable
3
4
  UseCache: true
4
5
  CacheRootDirectory: './'
data/Gemfile.lock CHANGED
@@ -1,22 +1,20 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- reviewer (0.1.4)
5
- colorize
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.8.0)
12
+ bundler-audit (0.9.0.1)
13
13
  bundler (>= 1.2.0, < 3)
14
14
  thor (~> 1.0)
15
- codecov (0.5.2)
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.14.4)
39
- minitest-color (0.0.2)
40
- minitest (~> 5)
41
- parallel (1.20.1)
42
- parser (3.0.2.0)
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 (3.3.2)
46
+ psych (4.0.3)
47
+ stringio
49
48
  rainbow (3.0.0)
50
49
  rake (13.0.6)
51
- reek (6.0.5)
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.1.1)
54
+ regexp_parser (2.2.0)
57
55
  rexml (3.2.5)
58
- rubocop (1.18.4)
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.8.0, < 2.0)
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.8.0)
65
+ rubocop-ast (1.15.0)
68
66
  parser (>= 3.0.1.1)
69
- rubocop-minitest (0.14.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.16.0)
75
- sexp_processor (~> 4.15, >= 4.15.1)
76
- sexp_processor (4.15.3)
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.0.0)
92
- yard (0.9.26)
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-color
108
- psych (~> 3.3.2)
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.25
119
+ 2.2.33
data/LICENSE.txt CHANGED
@@ -1,21 +1,5 @@
1
- The MIT License (MIT)
1
+ Copyright (c) Garrett Dimon
2
2
 
3
- Copyright (c) 2021 Garrett Dimon
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
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
- **Note:** As of August 4th, 2021, Reviewer is a work in progress. While it's working great reviewing its own code, it's not quite ready for wider usage.
4
+ ---
3
5
 
4
- [![Gem Version](https://badge.fury.io/rb/reviewer.svg)](https://badge.fury.io/rb/reviewer) [![Ruby](https://github.com/garrettdimon/reviewer/actions/workflows/main.yml/badge.svg?branch=main)](https://github.com/garrettdimon/reviewer/actions/workflows/main.yml) [![codecov](https://codecov.io/gh/garrettdimon/reviewer/branch/main/graph/badge.svg?token=UuXUlQAA2e)](https://codecov.io/gh/garrettdimon/reviewer)
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
- # What is Reviewer?
8
+ ---
7
9
 
8
- *Reviewer reduces the friction of using multiple automated code review tools so you can use them more frequently and consistently.*
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
- For more detailed information, the [Wiki](https://github.com/garrettdimon/reviewer/wiki) is the best place to start. Or if you'd like the full story, you can go straight to the [Overview](https://github.com/garrettdimon/reviewer/wiki/Overview).
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
- ## License
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).