pronto 0.4.1 → 0.4.2
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.
- checksums.yaml +4 -4
- data/README.md +30 -22
- data/lib/pronto.rb +5 -3
- data/lib/pronto/formatter/formatter.rb +2 -1
- data/lib/pronto/formatter/null_formatter.rb +8 -0
- data/lib/pronto/git/line.rb +1 -1
- data/lib/pronto/git/patch.rb +9 -3
- data/lib/pronto/git/repository.rb +4 -5
- data/lib/pronto/github.rb +1 -1
- data/lib/pronto/gitlab.rb +1 -1
- data/lib/pronto/version.rb +1 -1
- metadata +31 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9149bddf536219f6ce110152983b12b8e3249957
|
4
|
+
data.tar.gz: f8c8c629426c28bad4d33e0eb957769cdd61cc4a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fb990d2399c3d425d21caab02aaee8122441ed4fed6dab984f02725f508468bfa0e57852642ebe9d5b36a0e5f88156de678796a7f8954ee3ace2dcf7bf6b4e57
|
7
|
+
data.tar.gz: a2471ed52d16972c70403c2ca4ef312bd30183a8bef915344098e66896cf64c377ad5928e57bd63b3d5d5d751a8110d742144a1664a44407523eaef63667731c
|
data/README.md
CHANGED
@@ -17,6 +17,29 @@ to your [styleguide](https://github.com/mmozuras/pronto-rubocop), [are DRY](http
|
|
17
17
|
|
18
18
|
Pronto runs the checks on a diff between the current HEAD and the provided commit-ish (default is master).
|
19
19
|
|
20
|
+
### Local Changes
|
21
|
+
|
22
|
+
You can run Pronto locally. First, install Pronto and the runners you want to use:
|
23
|
+
```bash
|
24
|
+
gem install pronto
|
25
|
+
gem install pronto-rubocop
|
26
|
+
```
|
27
|
+
Then navigate to the repository you want to run Pronto on, and:
|
28
|
+
```bash
|
29
|
+
git checkout feature/branch
|
30
|
+
|
31
|
+
# Analyze diff of committed changes on current branch and master:
|
32
|
+
pronto run
|
33
|
+
|
34
|
+
# Analyze diff of uncommitted changes and master:
|
35
|
+
pronto run --index
|
36
|
+
|
37
|
+
# Analyze *all* changes since the *initial* commit (may take some time):
|
38
|
+
pronto run --commit=$(git log --pretty=format:%H | tail -1)
|
39
|
+
```
|
40
|
+
|
41
|
+
Just run `pronto` without any arguments to see what Pronto is capable of.
|
42
|
+
|
20
43
|
### GitHub Integration
|
21
44
|
|
22
45
|
You can run Pronto as a step of your CI builds and get the results as comments
|
@@ -92,35 +115,20 @@ formatter = Pronto::Formatter::GitlabFormatter.new
|
|
92
115
|
Pronto.run('origin/master', '.', formatter)
|
93
116
|
```
|
94
117
|
|
95
|
-
### Local Changes
|
96
|
-
|
97
|
-
You can run Pronto locally. First, install Pronto and the runners you want to use:
|
98
|
-
```bash
|
99
|
-
gem install pronto
|
100
|
-
gem install pronto-rubocop
|
101
|
-
```
|
102
|
-
Then navigate to the repository you want to run Pronto on, and:
|
103
|
-
```bash
|
104
|
-
git checkout feature/branch
|
105
|
-
pronto run # Pronto runs against master by default
|
106
|
-
```
|
107
|
-
|
108
|
-
Just run `pronto` without any arguments to see what Pronto is capable off.
|
109
|
-
|
110
118
|
## Runners
|
111
119
|
|
112
120
|
Pronto can run various tools and libraries, as long as there's a runner for it.
|
113
121
|
Currently available:
|
114
122
|
|
115
|
-
* [pronto-rubocop](https://github.com/mmozuras/pronto-rubocop)
|
116
|
-
* [pronto-flay](https://github.com/mmozuras/pronto-flay)
|
117
123
|
* [pronto-brakeman](https://github.com/mmozuras/pronto-brakeman)
|
124
|
+
* [pronto-coffeelint](https://github.com/siebertm/pronto-coffeelint)
|
125
|
+
* [pronto-flay](https://github.com/mmozuras/pronto-flay)
|
118
126
|
* [pronto-foodcritic](https://github.com/mmozuras/pronto-foodcritic)
|
119
|
-
* [pronto-rails_best_practices](https://github.com/mmozuras/pronto-rails_best_practices)
|
120
|
-
* [pronto-reek](https://github.com/mmozuras/pronto-reek)
|
121
|
-
* [pronto-poper](https://github.com/mmozuras/pronto-poper)
|
122
127
|
* [pronto-jshint](https://github.com/mmozuras/pronto-jshint)
|
123
|
-
* [pronto-spell](https://github.com/mmozuras/pronto-spell)
|
124
128
|
* [pronto-haml](https://github.com/mmozuras/pronto-haml)
|
129
|
+
* [pronto-poper](https://github.com/mmozuras/pronto-poper)
|
130
|
+
* [pronto-rails_best_practices](https://github.com/mmozuras/pronto-rails_best_practices)
|
131
|
+
* [pronto-reek](https://github.com/mmozuras/pronto-reek)
|
132
|
+
* [pronto-rubocop](https://github.com/mmozuras/pronto-rubocop)
|
125
133
|
* [pronto-scss](https://github.com/mmozuras/pronto-scss)
|
126
|
-
* [pronto-
|
134
|
+
* [pronto-spell](https://github.com/mmozuras/pronto-spell)
|
data/lib/pronto.rb
CHANGED
@@ -20,6 +20,7 @@ require 'pronto/formatter/github_formatter'
|
|
20
20
|
require 'pronto/formatter/github_pull_request_formatter'
|
21
21
|
require 'pronto/formatter/gitlab_formatter'
|
22
22
|
require 'pronto/formatter/checkstyle_formatter'
|
23
|
+
require 'pronto/formatter/null_formatter'
|
23
24
|
require 'pronto/formatter/formatter'
|
24
25
|
|
25
26
|
module Pronto
|
@@ -33,7 +34,8 @@ module Pronto
|
|
33
34
|
|
34
35
|
result = run_all_runners(patches)
|
35
36
|
|
36
|
-
|
37
|
+
formatted = formatter.format(result, repo)
|
38
|
+
puts formatted if formatted
|
37
39
|
|
38
40
|
result
|
39
41
|
end
|
@@ -49,8 +51,8 @@ module Pronto
|
|
49
51
|
end
|
50
52
|
|
51
53
|
gems.map { |gem| gem.name.sub(/^pronto-/, '') }
|
52
|
-
|
53
|
-
|
54
|
+
.uniq
|
55
|
+
.sort
|
54
56
|
end
|
55
57
|
|
56
58
|
private
|
data/lib/pronto/git/line.rb
CHANGED
data/lib/pronto/git/patch.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
module Pronto
|
2
2
|
module Git
|
3
|
-
|
3
|
+
Patch = Struct.new(:patch, :repo) do
|
4
4
|
extend Forwardable
|
5
5
|
|
6
6
|
def_delegators :patch, :delta, :hunks, :stat
|
@@ -14,7 +14,7 @@ module Pronto
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def blame(lineno)
|
17
|
-
repo.blame(
|
17
|
+
repo.blame(new_file_path, lineno)
|
18
18
|
end
|
19
19
|
|
20
20
|
def lines
|
@@ -34,7 +34,13 @@ module Pronto
|
|
34
34
|
end
|
35
35
|
|
36
36
|
def new_file_full_path
|
37
|
-
repo.path.join(
|
37
|
+
repo.path.join(new_file_path)
|
38
|
+
end
|
39
|
+
|
40
|
+
private
|
41
|
+
|
42
|
+
def new_file_path
|
43
|
+
delta.new_file[:path]
|
38
44
|
end
|
39
45
|
end
|
40
46
|
end
|
@@ -44,11 +44,10 @@ module Pronto
|
|
44
44
|
Pathname.new(@repo.path).parent
|
45
45
|
end
|
46
46
|
|
47
|
-
def blame(
|
48
|
-
Rugged::Blame.new(@repo,
|
49
|
-
|
50
|
-
|
51
|
-
track_copies_any_commit_copies: true)[0]
|
47
|
+
def blame(path, lineno)
|
48
|
+
Rugged::Blame.new(@repo, path, min_line: lineno, max_line: lineno,
|
49
|
+
track_copies_same_file: true,
|
50
|
+
track_copies_any_commit_copies: true)[0]
|
52
51
|
end
|
53
52
|
|
54
53
|
def branch
|
data/lib/pronto/github.rb
CHANGED
data/lib/pronto/gitlab.rb
CHANGED
data/lib/pronto/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pronto
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mindaugas Mozūras
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-01
|
11
|
+
date: 2015-06-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rugged
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 0.22.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.22.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: thor
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -44,70 +44,84 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
47
|
+
version: 3.8.0
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
54
|
+
version: 3.8.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: gitlab
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
61
|
+
version: 3.4.0
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
68
|
+
version: 3.4.0
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rake
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version:
|
75
|
+
version: 10.4.0
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version:
|
82
|
+
version: 10.4.0
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: rspec
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version:
|
89
|
+
version: 3.2.0
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version:
|
96
|
+
version: 3.2.0
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: rspec-its
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
101
|
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version:
|
103
|
+
version: 1.2.0
|
104
104
|
type: :development
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
108
|
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version:
|
110
|
+
version: 1.2.0
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: rspec-expectations
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 3.2.0
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 3.2.0
|
111
125
|
description: |2
|
112
126
|
Pronto runs analysis quickly by checking only the relevant changes. Created
|
113
127
|
to be used on pull requests, but suited for other scenarios as well. Perfect
|
@@ -130,6 +144,7 @@ files:
|
|
130
144
|
- lib/pronto/formatter/github_pull_request_formatter.rb
|
131
145
|
- lib/pronto/formatter/gitlab_formatter.rb
|
132
146
|
- lib/pronto/formatter/json_formatter.rb
|
147
|
+
- lib/pronto/formatter/null_formatter.rb
|
133
148
|
- lib/pronto/formatter/text_formatter.rb
|
134
149
|
- lib/pronto/git/line.rb
|
135
150
|
- lib/pronto/git/patch.rb
|
@@ -142,7 +157,7 @@ files:
|
|
142
157
|
- lib/pronto/rake_task/travis_pull_request.rb
|
143
158
|
- lib/pronto/runner.rb
|
144
159
|
- lib/pronto/version.rb
|
145
|
-
homepage: http://github.
|
160
|
+
homepage: http://github.com/mmozuras/pronto
|
146
161
|
licenses:
|
147
162
|
- MIT
|
148
163
|
metadata: {}
|
@@ -162,9 +177,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
162
177
|
version: 1.3.6
|
163
178
|
requirements: []
|
164
179
|
rubyforge_project:
|
165
|
-
rubygems_version: 2.
|
180
|
+
rubygems_version: 2.4.5
|
166
181
|
signing_key:
|
167
182
|
specification_version: 4
|
168
183
|
summary: Pronto runs analysis by checking only the introduced changes
|
169
184
|
test_files: []
|
170
|
-
has_rdoc:
|