pronto-reek 0.10.0 → 0.11.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/CODEOWNERS +3 -0
- data/.github/workflows/checks.yml +23 -0
- data/README.md +9 -0
- data/lib/pronto/reek/version.rb +1 -1
- data/lib/pronto/reek.rb +15 -4
- data/pronto-reek.gemspec +2 -2
- metadata +13 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8b5dfd4b3e1094f4e66c8f3d371f9663b3c140dc810c3ec7e1600ba1e08fe797
|
4
|
+
data.tar.gz: 86dbfdb203ea9d8740ddbea37e2af155c71f789d86874424d132c1668df24e8e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c54258b02c26d857678243b6deca4d8381ca1bb0ca8a9d55dcf75889a546b810c0402ef6014551302befe5b7153251484f60ad6b9ca91a2548d78c8fe7e80a8c
|
7
|
+
data.tar.gz: 3e3603f8c8ad72bc23bd964f2cb521eb6bb6ab1a982ec8bbd0ecc177e85479e83bcf05cb72fcfa230dcdbf0f54a9bb6d5e5dd4455387049ac888856a1bf4f380
|
data/.github/CODEOWNERS
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
name: Checks
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches: [ master ]
|
6
|
+
pull_request:
|
7
|
+
branches: [ master ]
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
ruby:
|
11
|
+
runs-on: ubuntu-latest
|
12
|
+
strategy:
|
13
|
+
matrix:
|
14
|
+
ruby: ['2.3', '2.4', '2.5', '2.6', '2.7', '3.0', '3.1', '3.2']
|
15
|
+
fail-fast: false
|
16
|
+
steps:
|
17
|
+
- uses: actions/checkout@v3
|
18
|
+
- uses: ruby/setup-ruby@v1
|
19
|
+
with:
|
20
|
+
ruby-version: ${{ matrix.ruby }}
|
21
|
+
bundler-cache: true
|
22
|
+
- name: rake spec
|
23
|
+
run: bundle exec rake spec
|
data/README.md
CHANGED
@@ -10,3 +10,12 @@ Pronto runner for [Reek](https://github.com/troessner/reek), code smell detector
|
|
10
10
|
## Configuration
|
11
11
|
|
12
12
|
Configuring Reek via [config.reek](https://github.com/troessner/reek#configuration-file), or any file ending with .reek, will work just fine with pronto-reek.
|
13
|
+
|
14
|
+
You can also specify a custom severity level for the reek smells with the environment variable PRONTO_REEK_SEVERITY_LEVEL.
|
15
|
+
|
16
|
+
Or if you prefer provide it on your `.pronto.yml` (environment variable has precedence over file):
|
17
|
+
|
18
|
+
```yaml
|
19
|
+
reek:
|
20
|
+
severity_level: warning # default is info
|
21
|
+
```
|
data/lib/pronto/reek/version.rb
CHANGED
data/lib/pronto/reek.rb
CHANGED
@@ -1,10 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'pronto'
|
2
4
|
require 'reek'
|
3
5
|
|
4
6
|
module Pronto
|
5
7
|
class Reek < Runner
|
6
8
|
def run
|
7
|
-
files = ruby_patches.map
|
9
|
+
files = ruby_patches.map do |patch|
|
10
|
+
patch.new_file_full_path.relative_path_from(Pathname.pwd)
|
11
|
+
end
|
12
|
+
|
8
13
|
configuration = ::Reek::Configuration::AppConfiguration.from_path(nil)
|
9
14
|
|
10
15
|
smells = files.flat_map do |file|
|
@@ -30,15 +35,21 @@ module Pronto
|
|
30
35
|
|
31
36
|
def new_message(line, error)
|
32
37
|
path = line.patch.delta.new_file[:path]
|
33
|
-
message = "#{error.message.capitalize}
|
38
|
+
message = "#{error.message.capitalize} - [#{error.smell_type}](#{error.explanatory_link})"
|
34
39
|
|
35
|
-
Message.new(path, line,
|
40
|
+
Message.new(path, line, severity_level, message, nil, self.class)
|
36
41
|
end
|
37
42
|
|
38
43
|
def patch_for_error(error)
|
39
44
|
ruby_patches.find do |patch|
|
40
|
-
patch.new_file_full_path.to_s == error.source
|
45
|
+
patch.new_file_full_path.relative_path_from(Pathname.pwd).to_s == error.source
|
41
46
|
end
|
42
47
|
end
|
48
|
+
|
49
|
+
def severity_level
|
50
|
+
@severity_level ||= begin
|
51
|
+
ENV['PRONTO_REEK_SEVERITY_LEVEL'] || Pronto::ConfigFile.new.to_h.dig('reek', 'severity_level') || :info
|
52
|
+
end.to_sym
|
53
|
+
end
|
43
54
|
end
|
44
55
|
end
|
data/pronto-reek.gemspec
CHANGED
@@ -32,8 +32,8 @@ Gem::Specification.new do |s|
|
|
32
32
|
s.extra_rdoc_files = ['LICENSE', 'README.md']
|
33
33
|
s.require_paths = ['lib']
|
34
34
|
|
35
|
-
s.add_dependency('pronto', '~> 0.
|
36
|
-
s.add_dependency('reek', '>= 4.2', '<
|
35
|
+
s.add_dependency('pronto', '~> 0.11.0')
|
36
|
+
s.add_dependency('reek', '>= 4.2', '< 7.0')
|
37
37
|
s.add_development_dependency('rake', '~> 12.0')
|
38
38
|
s.add_development_dependency('rspec', '~> 3.4')
|
39
39
|
s.add_development_dependency('rspec-its', '~> 1.2')
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pronto-reek
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.11.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mindaugas Mozūras
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-01-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: pronto
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 0.11.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.
|
26
|
+
version: 0.11.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: reek
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -33,7 +33,7 @@ dependencies:
|
|
33
33
|
version: '4.2'
|
34
34
|
- - "<"
|
35
35
|
- !ruby/object:Gem::Version
|
36
|
-
version: '
|
36
|
+
version: '7.0'
|
37
37
|
type: :runtime
|
38
38
|
prerelease: false
|
39
39
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -43,7 +43,7 @@ dependencies:
|
|
43
43
|
version: '4.2'
|
44
44
|
- - "<"
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: '
|
46
|
+
version: '7.0'
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rake
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -86,7 +86,7 @@ dependencies:
|
|
86
86
|
- - "~>"
|
87
87
|
- !ruby/object:Gem::Version
|
88
88
|
version: '1.2'
|
89
|
-
description:
|
89
|
+
description:
|
90
90
|
email: mindaugas.mozuras@gmail.com
|
91
91
|
executables: []
|
92
92
|
extensions: []
|
@@ -94,6 +94,8 @@ extra_rdoc_files:
|
|
94
94
|
- LICENSE
|
95
95
|
- README.md
|
96
96
|
files:
|
97
|
+
- ".github/CODEOWNERS"
|
98
|
+
- ".github/workflows/checks.yml"
|
97
99
|
- LICENSE
|
98
100
|
- README.md
|
99
101
|
- lib/pronto/reek.rb
|
@@ -103,7 +105,7 @@ homepage: http://github.com/mmozuras/pronto-reek
|
|
103
105
|
licenses:
|
104
106
|
- MIT
|
105
107
|
metadata: {}
|
106
|
-
post_install_message:
|
108
|
+
post_install_message:
|
107
109
|
rdoc_options: []
|
108
110
|
require_paths:
|
109
111
|
- lib
|
@@ -118,8 +120,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
118
120
|
- !ruby/object:Gem::Version
|
119
121
|
version: '0'
|
120
122
|
requirements: []
|
121
|
-
rubygems_version: 3.0.
|
122
|
-
signing_key:
|
123
|
+
rubygems_version: 3.0.9
|
124
|
+
signing_key:
|
123
125
|
specification_version: 4
|
124
126
|
summary: Pronto runner for Reek, code smell detector for Ruby
|
125
127
|
test_files: []
|