pronto 0.0.1 → 0.0.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/lib/pronto.rb +7 -4
- data/lib/pronto/runner.rb +42 -1
- data/lib/pronto/version.rb +1 -1
- data/lib/rugged/diff.rb +6 -0
- data/lib/rugged/diff/delta.rb +26 -0
- data/lib/rugged/tree.rb +6 -0
- metadata +6 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 32afa53492ee02c977a4c7def6376ff63f1789af
|
4
|
+
data.tar.gz: c62b2494b9f26207d368e4788b432e971c0f81c5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4ccaf764dfd8eb44ac04dfd5e48d65c119ef98c0a1388cb2936450bc9d7f644a8c32714b8ee9b8a43d94868ce342aa9553dc834b5952f860737dbf25250ad30b
|
7
|
+
data.tar.gz: 94ee6628d7ac7443f4992afc3ae0a0694dfa00d16580edd5d86c3a00996dbe1c890de2386e092ed7c7826c50cfe6e62923efeeaec491d7cb121aabe859f82b64
|
data/lib/pronto.rb
CHANGED
@@ -1,4 +1,7 @@
|
|
1
1
|
require 'rugged'
|
2
|
+
require_relative 'rugged/diff'
|
3
|
+
require_relative 'rugged/tree'
|
4
|
+
require_relative 'rugged/diff/delta'
|
2
5
|
|
3
6
|
require 'pronto/plugin'
|
4
7
|
require 'pronto/message'
|
@@ -8,8 +11,8 @@ require 'pronto/formatter/text_formatter'
|
|
8
11
|
|
9
12
|
module Pronto
|
10
13
|
def self.run(commit1 = nil, commit2 = 'master', repo_path = '.')
|
11
|
-
|
12
|
-
result = run_all_runners(
|
14
|
+
patches = diff(repo_path, commit1, commit2)
|
15
|
+
result = run_all_runners(patches)
|
13
16
|
Formatter::TextFormatter.new.format(result)
|
14
17
|
end
|
15
18
|
|
@@ -37,9 +40,9 @@ module Pronto
|
|
37
40
|
repo.diff(commit1, commit2)
|
38
41
|
end
|
39
42
|
|
40
|
-
def self.run_all_runners(
|
43
|
+
def self.run_all_runners(patches)
|
41
44
|
Runner.runners.map do |runner|
|
42
|
-
runner.new.run(
|
45
|
+
runner.new.run(patches)
|
43
46
|
end.flatten.compact
|
44
47
|
end
|
45
48
|
end
|
data/lib/pronto/runner.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'tempfile'
|
2
|
+
|
1
3
|
module Pronto
|
2
4
|
class Runner
|
3
5
|
include Plugin
|
@@ -6,10 +8,49 @@ module Pronto
|
|
6
8
|
repository
|
7
9
|
end
|
8
10
|
|
11
|
+
def create_tempfiles(blobs)
|
12
|
+
return [] if blobs.nil?
|
13
|
+
|
14
|
+
files = blobs.map { |blob| write(blob) }.compact
|
15
|
+
return [] if files.empty?
|
16
|
+
|
17
|
+
begin
|
18
|
+
if block_given?
|
19
|
+
files.each(&:flush)
|
20
|
+
yield(files)
|
21
|
+
else
|
22
|
+
files
|
23
|
+
end
|
24
|
+
ensure
|
25
|
+
files.each do |file|
|
26
|
+
file.close unless file.closed?
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
9
31
|
def create_tempfile(blob)
|
32
|
+
file = write(blob)
|
33
|
+
return if file.nil?
|
34
|
+
|
35
|
+
begin
|
36
|
+
if block_given?
|
37
|
+
file.flush
|
38
|
+
yield(file)
|
39
|
+
else
|
40
|
+
file
|
41
|
+
end
|
42
|
+
ensure
|
43
|
+
file.close if file && !file.closed?
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
private
|
48
|
+
|
49
|
+
def write(blob)
|
50
|
+
return if blob.nil?
|
51
|
+
|
10
52
|
file = Tempfile.new(blob.oid)
|
11
53
|
file.write(blob.text)
|
12
|
-
file.close
|
13
54
|
file
|
14
55
|
end
|
15
56
|
end
|
data/lib/pronto/version.rb
CHANGED
data/lib/rugged/diff.rb
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
module Rugged
|
2
|
+
class Diff
|
3
|
+
class Delta
|
4
|
+
def new_blob
|
5
|
+
blob(new_file)
|
6
|
+
end
|
7
|
+
|
8
|
+
def old_blob
|
9
|
+
blob(old_file)
|
10
|
+
end
|
11
|
+
|
12
|
+
def repo
|
13
|
+
diff.tree.repo
|
14
|
+
end
|
15
|
+
|
16
|
+
private
|
17
|
+
|
18
|
+
def blob(file)
|
19
|
+
return if file.nil?
|
20
|
+
return if file[:oid] == '0000000000000000000000000000000000000000'
|
21
|
+
|
22
|
+
repo.lookup(file[:oid])
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
data/lib/rugged/tree.rb
ADDED
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.0.
|
4
|
+
version: 0.0.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: 2013-
|
11
|
+
date: 2013-09-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rugged
|
@@ -80,6 +80,9 @@ files:
|
|
80
80
|
- lib/pronto/runner.rb
|
81
81
|
- lib/pronto/version.rb
|
82
82
|
- lib/pronto.rb
|
83
|
+
- lib/rugged/diff/delta.rb
|
84
|
+
- lib/rugged/diff.rb
|
85
|
+
- lib/rugged/tree.rb
|
83
86
|
- LICENSE
|
84
87
|
- README.md
|
85
88
|
- bin/pronto
|
@@ -103,7 +106,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
103
106
|
version: 1.3.6
|
104
107
|
requirements: []
|
105
108
|
rubyforge_project:
|
106
|
-
rubygems_version: 2.0.
|
109
|
+
rubygems_version: 2.0.7
|
107
110
|
signing_key:
|
108
111
|
specification_version: 4
|
109
112
|
summary: pronto
|