git-commit-notifier 0.9.2 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -52,6 +52,12 @@ class GitCommitNotifier::Emailer
52
52
  IO.read(stylesheet)
53
53
  end
54
54
 
55
+ def perform_delivery_debug(content)
56
+ content.each do |line|
57
+ puts line
58
+ end
59
+ end
60
+
55
61
  def perform_delivery_smtp(content, smtp_settings)
56
62
  settings = { }
57
63
  %w(address port domain user_name password authentication enable_tls).each do |key|
@@ -128,6 +134,7 @@ class GitCommitNotifier::Emailer
128
134
  case config['delivery_method'].to_sym
129
135
  when :smtp then perform_delivery_smtp(content, config['smtp_server'])
130
136
  when :nntp then perform_delivery_nntp(content, config['nntp_settings'])
137
+ when :debug then perform_delivery_debug(content)
131
138
  else # sendmail
132
139
  perform_delivery_sendmail(content, @config['sendmail_options'])
133
140
  end
@@ -7,17 +7,17 @@ module GitCommitNotifier
7
7
  def self.run!(args)
8
8
  case args.length
9
9
  when 0
10
- CommitHook.show_error("You have to add a path to the config file for git-commit-notifier")
10
+ GitCommitNotifier::CommitHook.show_error("You have to add a path to the config file for git-commit-notifier")
11
11
  puts "Usage: git-commit-notifier config-script [oldrev newrev [ref]]"
12
12
  when 1
13
13
  oldrev, newrev, ref = $stdin.gets.strip.split
14
- CommitHook.run args.first, oldrev, newrev, ref
14
+ GitCommitNotifier::CommitHook.run args.first, oldrev, newrev, ref
15
15
  when 2
16
- CommitHook.run args.first, args.last, args.last, ""
16
+ GitCommitNotifier::CommitHook.run args.first, args.last, args.last, ""
17
17
  when 3
18
- CommitHook.run args.first, args[1], args.last, ""
18
+ GitCommitNotifier::CommitHook.run args.first, args[1], args.last, ""
19
19
  else
20
- CommitHook.run args.first, args[1], args[2], args[3]
20
+ GitCommitNotifier::CommitHook.run args.first, args[1], args[2], args[3]
21
21
  end
22
22
  end
23
23
  end
@@ -1,17 +1,29 @@
1
1
  class GitCommitNotifier::Git
2
2
  class << self
3
3
  def from_shell(cmd)
4
- `#{cmd}`
4
+ r = `#{cmd}`
5
+ raise ArgumentError.new("#{cmd} failed") unless $?.exitstatus.zero?
6
+ r
5
7
  end
6
8
 
7
- def show(rev)
8
- from_shell("git show #{rev.strip} -w")
9
+ def show(rev, ignore_whitespace)
10
+ gitopt = ""
11
+ gitopt += " -w" if ignore_whitespace
12
+ from_shell("git show #{rev.strip}#{gitopt}")
9
13
  end
10
14
 
11
15
  def log(rev1, rev2)
12
16
  from_shell("git log #{rev1}..#{rev2}").strip
13
17
  end
14
18
 
19
+ def changed_files(rev1, rev2)
20
+ output = ""
21
+ lines = from_shell("git log #{rev1}..#{rev2} --name-status --oneline")
22
+ lines = lines.lines if lines.respond_to?(:lines)
23
+ lines = lines.select {|line| line =~ /^\w{1}\s+\w+/} # grep out only filenames
24
+ lines.uniq
25
+ end
26
+
15
27
  def branch_commits(treeish)
16
28
  args = branch_heads - [ branch_head(treeish) ]
17
29
  args.map! { |tree| "^#{tree}" }
@@ -0,0 +1,4 @@
1
+ e5be953 add install script
2
+ M README.rdoc
3
+ D git_commit_notifier/Rakefile
4
+ M post-receive
@@ -49,6 +49,7 @@ describe GitCommitNotifier::CommitHook do
49
49
 
50
50
  def run_and_reject(config,times,branch)
51
51
  mock(GitCommitNotifier::Git).mailing_list_address { 'recipient@test.com' }
52
+ mock(GitCommitNotifier::Git).repo_name { 'testproject' }
52
53
 
53
54
  emailer = mock!.send.times(times).subject
54
55
  mock(GitCommitNotifier::Emailer).new(anything, anything).times(times)
@@ -71,8 +72,10 @@ describe GitCommitNotifier::CommitHook do
71
72
  def expect_repository_access
72
73
  mock(GitCommitNotifier::Git).log(REVISIONS.first, REVISIONS.last) { IO.read(FIXTURES_PATH + 'git_log') }
73
74
  mock(GitCommitNotifier::Git).mailing_list_address { 'recipient@test.com' }
75
+ mock(GitCommitNotifier::Git).repo_name { 'testproject' }
76
+ mock(GitCommitNotifier::Git).changed_files('7e4f6b4', '4f13525') { [] }
74
77
  REVISIONS.each do |rev|
75
- mock(GitCommitNotifier::Git).show(rev) { IO.read(FIXTURES_PATH + "git_show_#{rev}") }
78
+ mock(GitCommitNotifier::Git).show(rev, true) { IO.read(FIXTURES_PATH + "git_show_#{rev}") }
76
79
  end
77
80
  end
78
81
 
@@ -1,72 +1,100 @@
1
1
  require File.expand_path('../../../spec_helper', __FILE__)
2
+ require 'tempfile'
2
3
  require 'nokogiri'
3
4
  require 'git_commit_notifier'
4
5
 
5
6
  describe GitCommitNotifier::DiffToHtml do
6
7
 
8
+ describe :new_file_rights do
9
+ before(:all) do
10
+ @diff_to_html = GitCommitNotifier::DiffToHtml.new
11
+ end
12
+
13
+ it "should be DEFAULT_NEW_FILE_RIGHTS unless get stats of git config file" do
14
+ mock(File).stat(File.expand_path(GitCommitNotifier::DiffToHtml::GIT_CONFIG_FILE, '.')) { raise Errno::ENOENT.new('') }
15
+ @diff_to_html.new_file_rights.should == GitCommitNotifier::DiffToHtml::DEFAULT_NEW_FILE_RIGHTS
16
+ end
17
+
18
+ it "should be rights of git config file if exists" do
19
+ stats = mock!.mode { 0444 }.subject
20
+ mock(File).stat(File.expand_path(GitCommitNotifier::DiffToHtml::GIT_CONFIG_FILE, '.')) { stats }
21
+ @diff_to_html.new_file_rights.should == 0444
22
+ end
23
+ end
24
+
25
+ describe :chmod do
26
+ it "should not raise anything and set mode from stats mode" do
27
+ file = Tempfile.new('stattest')
28
+ file.close
29
+ lambda do
30
+ File.chmod(File.stat(file.path).mode, file.path)
31
+ end.should_not raise_error
32
+ end
33
+ end
34
+
7
35
  describe :lines_are_sequential? do
8
36
  before(:all) do
9
37
  @diff_to_html = GitCommitNotifier::DiffToHtml.new
10
38
  end
11
39
 
12
40
  it "should be true if left line numbers are sequential" do
13
- @diff_to_html.lines_are_sequential?({
41
+ @diff_to_html.should be_lines_are_sequential({
14
42
  :added => 2,
15
43
  :removed => 2
16
44
  }, {
17
45
  :added => 3,
18
46
  :removed => 6
19
- }).should be_true
47
+ })
20
48
  end
21
49
 
22
50
  it "should be true if right line numbers are sequential" do
23
- @diff_to_html.lines_are_sequential?({
51
+ @diff_to_html.should be_lines_are_sequential({
24
52
  :added => 2,
25
53
  :removed => 2
26
54
  }, {
27
55
  :added => 7,
28
56
  :removed => 3
29
- }).should be_true
57
+ })
30
58
  end
31
59
 
32
60
  it "should be false unless line numbers are sequential" do
33
- @diff_to_html.lines_are_sequential?({
61
+ @diff_to_html.should_not be_lines_are_sequential({
34
62
  :added => 2,
35
63
  :removed => 2
36
64
  }, {
37
65
  :added => 4,
38
66
  :removed => 6
39
- }).should be_false
67
+ })
40
68
  end
41
69
 
42
70
  it "should be true if left line numbers are sequential (right are nil)" do
43
- @diff_to_html.lines_are_sequential?({
71
+ @diff_to_html.should be_lines_are_sequential({
44
72
  :added => 2,
45
73
  :removed => 2
46
74
  }, {
47
75
  :added => 3,
48
76
  :removed => nil
49
- }).should be_true
77
+ })
50
78
  end
51
79
 
52
80
  it "should be true if right line numbers are sequential (left are nil)" do
53
- @diff_to_html.lines_are_sequential?({
81
+ @diff_to_html.should be_lines_are_sequential({
54
82
  :added => nil,
55
83
  :removed => 2
56
84
  }, {
57
85
  :added => 7,
58
86
  :removed => 3
59
- }).should be_true
87
+ })
60
88
  end
61
89
 
62
90
  it "should be false unless line numbers are sequential (nils)" do
63
- @diff_to_html.lines_are_sequential?({
91
+ @diff_to_html.should_not be_lines_are_sequential({
64
92
  :added => nil,
65
93
  :removed => nil
66
94
  }, {
67
95
  :added => 4,
68
96
  :removed => 6
69
- }).should be_false
97
+ })
70
98
  end
71
99
  end
72
100
 
@@ -98,9 +126,10 @@ describe GitCommitNotifier::DiffToHtml do
98
126
  end
99
127
 
100
128
  it "multiple commits" do
129
+ mock(GitCommitNotifier::Git).changed_files('7e4f6b4', '4f13525') { [] }
101
130
  mock(GitCommitNotifier::Git).log(REVISIONS.first, REVISIONS.last) { IO.read(FIXTURES_PATH + 'git_log') }
102
131
  REVISIONS.each do |rev|
103
- mock(GitCommitNotifier::Git).show(rev) { IO.read(FIXTURES_PATH + 'git_show_' + rev) }
132
+ mock(GitCommitNotifier::Git).show(rev, true) { IO.read(FIXTURES_PATH + 'git_show_' + rev) }
104
133
  end
105
134
 
106
135
  diff = GitCommitNotifier::DiffToHtml.new
@@ -131,7 +160,8 @@ describe GitCommitNotifier::DiffToHtml do
131
160
 
132
161
  # third commit - dce6ade4cdc2833b53bd600ef10f9bce83c7102d
133
162
  hp = Nokogiri::HTML diff.result[2][:html_content]
134
- (hp/"table").should have(6).tables # 6 files updated
163
+ (hp/"h2").should have(6).headers # 6 files in commit
164
+ (hp/"table").should have(4).tables # 4 files updated
135
165
  (hp/"h2")[1].inner_text.should == 'Added binary file railties/doc/guides/source/images/icons/callouts/11.png'
136
166
  (hp/"h2")[2].inner_text.should == 'Deleted binary file railties/doc/guides/source/icons/up.png'
137
167
  (hp/"h2")[3].inner_text.should == 'Deleted file railties/doc/guides/source/icons/README'
@@ -152,7 +182,7 @@ describe GitCommitNotifier::DiffToHtml do
152
182
  first_rev, last_rev = %w[ 0000000000000000000000000000000000000000 9b15cebcc5434e27c00a4a2acea43509f9faea21 ]
153
183
  mock(GitCommitNotifier::Git).branch_commits('rvm') { %w[ ff037a73fc1094455e7bbf506171a3f3cf873ae6 ] }
154
184
  %w[ ff037a73fc1094455e7bbf506171a3f3cf873ae6 ].each do |rev|
155
- mock(GitCommitNotifier::Git).show(rev) { IO.read(FIXTURES_PATH + 'git_show_' + rev) }
185
+ mock(GitCommitNotifier::Git).show(rev, true) { IO.read(FIXTURES_PATH + 'git_show_' + rev) }
156
186
  end
157
187
  diff = GitCommitNotifier::DiffToHtml.new
158
188
  mock(diff).check_handled_commits(anything) { |commits| commits }
@@ -12,15 +12,21 @@ describe GitCommitNotifier::Git do
12
12
  end
13
13
 
14
14
  describe :show do
15
- it "should get data from shell: git show" do
15
+ it "should get data from shell: git show without whitespaces" do
16
16
  expected = 'some data from git show'
17
17
  mock(GitCommitNotifier::Git).from_shell("git show #{SAMPLE_REV} -w") { expected }
18
- GitCommitNotifier::Git.show(SAMPLE_REV).should == expected
18
+ GitCommitNotifier::Git.show(SAMPLE_REV, true).should == expected
19
+ end
20
+
21
+ it "should get data from shell: git show with whitespaces" do
22
+ expected = 'some data from git show'
23
+ mock(GitCommitNotifier::Git).from_shell("git show #{SAMPLE_REV}") { expected }
24
+ GitCommitNotifier::Git.show(SAMPLE_REV, false).should == expected
19
25
  end
20
26
 
21
27
  it "should strip given revision" do
22
28
  mock(GitCommitNotifier::Git).from_shell("git show #{SAMPLE_REV} -w")
23
- GitCommitNotifier::Git.show("#{SAMPLE_REV}\n")
29
+ GitCommitNotifier::Git.show("#{SAMPLE_REV}\n", true)
24
30
  end
25
31
  end
26
32
 
@@ -86,4 +92,13 @@ describe GitCommitNotifier::Git do
86
92
  end
87
93
  end
88
94
 
95
+ describe :changed_files do
96
+ it "should run git log --name-status --oneline with given args and strip out the result" do
97
+ files = ["M README.rdoc\n",
98
+ "D git_commit_notifier/Rakefile\n",
99
+ "M post-receive\n"]
100
+ mock(GitCommitNotifier::Git).from_shell("git log #{SAMPLE_REV}..#{SAMPLE_REV_2} --name-status --oneline" ) { IO.read(FIXTURES_PATH + 'git_log_name_status') }
101
+ GitCommitNotifier::Git.changed_files(SAMPLE_REV, SAMPLE_REV_2).should == files
102
+ end
103
+ end
89
104
  end
data/spec/spec_helper.rb CHANGED
@@ -4,6 +4,11 @@ if RUBY_VERSION < '1.9'
4
4
  require 'jcode'
5
5
  end
6
6
 
7
+ if RUBY_VERSION >= '1.9'
8
+ Encoding.default_external = "utf-8"
9
+ Encoding.default_internal = "utf-8"
10
+ end
11
+
7
12
  require 'rubygems'
8
13
  require 'faker'
9
14
  require 'rspec/core'
metadata CHANGED
@@ -1,164 +1,166 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: git-commit-notifier
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.10.0
4
5
  prerelease:
5
- version: 0.9.2
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Bodo Tasche
9
+ - Akzhan Abdulin
9
10
  autorequire:
10
11
  bindir: bin
11
12
  cert_chain: []
12
-
13
- date: 2011-04-29 00:00:00 Z
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
13
+ date: 2011-09-03 00:00:00.000000000 +02:00
14
+ default_executable:
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
16
17
  name: diff-lcs
17
- prerelease: false
18
- requirement: &id001 !ruby/object:Gem::Requirement
18
+ requirement: &70356965199120 !ruby/object:Gem::Requirement
19
19
  none: false
20
- requirements:
21
- - - ">="
22
- - !ruby/object:Gem::Version
23
- version: "0"
20
+ requirements:
21
+ - - ! '>='
22
+ - !ruby/object:Gem::Version
23
+ version: '0'
24
24
  type: :runtime
25
- version_requirements: *id001
26
- - !ruby/object:Gem::Dependency
27
- name: nntp
28
25
  prerelease: false
29
- requirement: &id002 !ruby/object:Gem::Requirement
26
+ version_requirements: *70356965199120
27
+ - !ruby/object:Gem::Dependency
28
+ name: nntp
29
+ requirement: &70356965198640 !ruby/object:Gem::Requirement
30
30
  none: false
31
- requirements:
32
- - - ">="
33
- - !ruby/object:Gem::Version
34
- version: "0"
31
+ requirements:
32
+ - - ! '>='
33
+ - !ruby/object:Gem::Version
34
+ version: '0'
35
35
  type: :runtime
36
- version_requirements: *id002
37
- - !ruby/object:Gem::Dependency
38
- name: premailer
39
36
  prerelease: false
40
- requirement: &id003 !ruby/object:Gem::Requirement
37
+ version_requirements: *70356965198640
38
+ - !ruby/object:Gem::Dependency
39
+ name: premailer
40
+ requirement: &70356965198160 !ruby/object:Gem::Requirement
41
41
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
45
  version: 1.7.1
46
46
  type: :runtime
47
- version_requirements: *id003
48
- - !ruby/object:Gem::Dependency
49
- name: nokogiri
50
47
  prerelease: false
51
- requirement: &id004 !ruby/object:Gem::Requirement
48
+ version_requirements: *70356965198160
49
+ - !ruby/object:Gem::Dependency
50
+ name: nokogiri
51
+ requirement: &70356965197680 !ruby/object:Gem::Requirement
52
52
  none: false
53
- requirements:
54
- - - ">="
55
- - !ruby/object:Gem::Version
53
+ requirements:
54
+ - - ! '>='
55
+ - !ruby/object:Gem::Version
56
56
  version: 1.4.4
57
57
  type: :runtime
58
- version_requirements: *id004
59
- - !ruby/object:Gem::Dependency
60
- name: bundler
61
58
  prerelease: false
62
- requirement: &id005 !ruby/object:Gem::Requirement
59
+ version_requirements: *70356965197680
60
+ - !ruby/object:Gem::Dependency
61
+ name: rake
62
+ requirement: &70356965197200 !ruby/object:Gem::Requirement
63
63
  none: false
64
- requirements:
65
- - - ">="
66
- - !ruby/object:Gem::Version
67
- version: 1.0.10
64
+ requirements:
65
+ - - ! '!='
66
+ - !ruby/object:Gem::Version
67
+ version: 0.9.0
68
68
  type: :development
69
- version_requirements: *id005
70
- - !ruby/object:Gem::Dependency
71
- name: code-cleaner
72
69
  prerelease: false
73
- requirement: &id006 !ruby/object:Gem::Requirement
70
+ version_requirements: *70356965197200
71
+ - !ruby/object:Gem::Dependency
72
+ name: bundler
73
+ requirement: &70356965196720 !ruby/object:Gem::Requirement
74
74
  none: false
75
- requirements:
76
- - - ">="
77
- - !ruby/object:Gem::Version
78
- version: "0"
75
+ requirements:
76
+ - - ! '>='
77
+ - !ruby/object:Gem::Version
78
+ version: 1.0.10
79
79
  type: :development
80
- version_requirements: *id006
81
- - !ruby/object:Gem::Dependency
82
- name: rspec-core
83
80
  prerelease: false
84
- requirement: &id007 !ruby/object:Gem::Requirement
81
+ version_requirements: *70356965196720
82
+ - !ruby/object:Gem::Dependency
83
+ name: code-cleaner
84
+ requirement: &70356965196240 !ruby/object:Gem::Requirement
85
85
  none: false
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: "0"
86
+ requirements:
87
+ - - ! '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
90
  type: :development
91
- version_requirements: *id007
92
- - !ruby/object:Gem::Dependency
93
- name: rspec-expectations
94
91
  prerelease: false
95
- requirement: &id008 !ruby/object:Gem::Requirement
92
+ version_requirements: *70356965196240
93
+ - !ruby/object:Gem::Dependency
94
+ name: rspec-core
95
+ requirement: &70356965195760 !ruby/object:Gem::Requirement
96
96
  none: false
97
- requirements:
98
- - - ">="
99
- - !ruby/object:Gem::Version
100
- version: "0"
97
+ requirements:
98
+ - - ! '>='
99
+ - !ruby/object:Gem::Version
100
+ version: '0'
101
101
  type: :development
102
- version_requirements: *id008
103
- - !ruby/object:Gem::Dependency
104
- name: rr
105
102
  prerelease: false
106
- requirement: &id009 !ruby/object:Gem::Requirement
103
+ version_requirements: *70356965195760
104
+ - !ruby/object:Gem::Dependency
105
+ name: rspec-expectations
106
+ requirement: &70356965195280 !ruby/object:Gem::Requirement
107
107
  none: false
108
- requirements:
109
- - - ">="
110
- - !ruby/object:Gem::Version
111
- version: "0"
108
+ requirements:
109
+ - - ! '>='
110
+ - !ruby/object:Gem::Version
111
+ version: '0'
112
112
  type: :development
113
- version_requirements: *id009
114
- - !ruby/object:Gem::Dependency
115
- name: faker
116
113
  prerelease: false
117
- requirement: &id010 !ruby/object:Gem::Requirement
114
+ version_requirements: *70356965195280
115
+ - !ruby/object:Gem::Dependency
116
+ name: rr
117
+ requirement: &70356969054480 !ruby/object:Gem::Requirement
118
118
  none: false
119
- requirements:
120
- - - ">="
121
- - !ruby/object:Gem::Version
122
- version: "0"
119
+ requirements:
120
+ - - ! '>='
121
+ - !ruby/object:Gem::Version
122
+ version: '0'
123
123
  type: :development
124
- version_requirements: *id010
125
- - !ruby/object:Gem::Dependency
126
- name: rcov
127
124
  prerelease: false
128
- requirement: &id011 !ruby/object:Gem::Requirement
125
+ version_requirements: *70356969054480
126
+ - !ruby/object:Gem::Dependency
127
+ name: faker
128
+ requirement: &70356969054000 !ruby/object:Gem::Requirement
129
129
  none: false
130
- requirements:
131
- - - ">="
132
- - !ruby/object:Gem::Version
133
- version: "0"
130
+ requirements:
131
+ - - ! '>='
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
134
134
  type: :development
135
- version_requirements: *id011
136
- - !ruby/object:Gem::Dependency
137
- name: metric_fu
138
135
  prerelease: false
139
- requirement: &id012 !ruby/object:Gem::Requirement
136
+ version_requirements: *70356969054000
137
+ - !ruby/object:Gem::Dependency
138
+ name: rcov
139
+ requirement: &70356969053520 !ruby/object:Gem::Requirement
140
140
  none: false
141
- requirements:
142
- - - ">="
143
- - !ruby/object:Gem::Version
144
- version: "0"
141
+ requirements:
142
+ - - ! '>='
143
+ - !ruby/object:Gem::Version
144
+ version: '0'
145
145
  type: :development
146
- version_requirements: *id012
147
- description: This git commit notifier sends html mails with nice diffs for every changed file.
146
+ prerelease: false
147
+ version_requirements: *70356969053520
148
+ description: This git commit notifier sends html mails with nice diffs for every changed
149
+ file.
148
150
  email: bodo@bitboxer.de
149
- executables:
151
+ executables:
150
152
  - git-commit-notifier
151
153
  extensions: []
152
-
153
- extra_rdoc_files:
154
+ extra_rdoc_files:
154
155
  - LICENSE
155
- - README.textile
156
- files:
156
+ - README.md
157
+ files:
157
158
  - .gitignore
158
159
  - .rspec
160
+ - .travis.yml
159
161
  - Gemfile
160
162
  - LICENSE
161
- - README.textile
163
+ - README.md
162
164
  - Rakefile
163
165
  - VERSION
164
166
  - bin/git-commit-notifier
@@ -181,6 +183,7 @@ files:
181
183
  - spec/fixtures/git-notifier-with-branch-restrictions.yml
182
184
  - spec/fixtures/git-notifier-with-merge.yml
183
185
  - spec/fixtures/git_log
186
+ - spec/fixtures/git_log_name_status
184
187
  - spec/fixtures/git_show_055850e7d925110322b8db4e17c3b840d76e144c
185
188
  - spec/fixtures/git_show_51b986619d88f7ba98be7d271188785cbbb541a0
186
189
  - spec/fixtures/git_show_a4629e707d80a5769f7a71ca6ed9471015e14dc9
@@ -197,40 +200,42 @@ files:
197
200
  - spec/spec_helper.rb
198
201
  - template/email.html.erb
199
202
  - template/styles.css
203
+ has_rdoc: true
200
204
  homepage: http://github.com/bitboxer/git-commit-notifier
201
205
  licenses: []
202
-
203
206
  post_install_message:
204
207
  rdoc_options: []
205
-
206
- require_paths:
208
+ require_paths:
207
209
  - lib
208
- required_ruby_version: !ruby/object:Gem::Requirement
210
+ required_ruby_version: !ruby/object:Gem::Requirement
209
211
  none: false
210
- requirements:
211
- - - ">="
212
- - !ruby/object:Gem::Version
213
- version: "0"
214
- required_rubygems_version: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - ! '>='
214
+ - !ruby/object:Gem::Version
215
+ version: '0'
216
+ segments:
217
+ - 0
218
+ hash: 1995003777923227847
219
+ required_rubygems_version: !ruby/object:Gem::Requirement
215
220
  none: false
216
- requirements:
217
- - - ">="
218
- - !ruby/object:Gem::Version
219
- version: "0"
221
+ requirements:
222
+ - - ! '>='
223
+ - !ruby/object:Gem::Version
224
+ version: '0'
220
225
  requirements: []
221
-
222
226
  rubyforge_project:
223
- rubygems_version: 1.7.2
227
+ rubygems_version: 1.6.2
224
228
  signing_key:
225
229
  specification_version: 3
226
230
  summary: Sends git commit messages with diffs
227
- test_files:
231
+ test_files:
228
232
  - spec/fixtures/existing_file_one_line.txt
229
233
  - spec/fixtures/git-notifier-group-email-by-push.yml
230
234
  - spec/fixtures/git-notifier-ignore-merge.yml
231
235
  - spec/fixtures/git-notifier-with-branch-restrictions.yml
232
236
  - spec/fixtures/git-notifier-with-merge.yml
233
237
  - spec/fixtures/git_log
238
+ - spec/fixtures/git_log_name_status
234
239
  - spec/fixtures/git_show_055850e7d925110322b8db4e17c3b840d76e144c
235
240
  - spec/fixtures/git_show_51b986619d88f7ba98be7d271188785cbbb541a0
236
241
  - spec/fixtures/git_show_a4629e707d80a5769f7a71ca6ed9471015e14dc9
@@ -245,4 +250,3 @@ test_files:
245
250
  - spec/lib/git_commit_notifier/logger_spec.rb
246
251
  - spec/lib/git_commit_notifier/result_processor_spec.rb
247
252
  - spec/spec_helper.rb
248
- has_rdoc: