git-commit-notifier 0.10.1 → 0.10.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.
data/Gemfile CHANGED
@@ -2,3 +2,6 @@ source :rubygems
2
2
 
3
3
  gemspec
4
4
 
5
+ gem "rcov", :group => :test, :platforms => :mri_18
6
+ gem "erubis", "~> 2.7"
7
+
data/README.md CHANGED
@@ -28,17 +28,18 @@ Example email:
28
28
 
29
29
  ## Requirements
30
30
 
31
- * Ruby 1.8.7 or higher
32
- * RubyGems
31
+ * Ruby 1.8.7 or higher.
32
+ * RubyGems.
33
+ * libxml2 and libxslt with headers (see [nokogiri installation notes](http://nokogiri.org/tutorials/installing_nokogiri.html) for details).
33
34
 
34
- We do not support ruby 1.8.6 because of nokogiri gem.
35
+ We do not support ruby 1.8.6 because of nokogiri gem requirements.
35
36
 
36
37
  ## Installing and Configuring
37
38
 
38
39
  Install the gem:
39
40
 
40
41
  ```bash
41
- sudo gem install git-commit-notifier
42
+ gem install git-commit-notifier
42
43
  ```
43
44
 
44
45
  After you installed the gem, you need to configure your git repository. Add a file called
@@ -51,13 +52,13 @@ git-commit-notifier path_to_config.yml
51
52
 
52
53
  (Don't forget to make that file executable.)
53
54
 
54
- An example for the config file can be found in [config/git-notifier-config.yml.sample](http://github.com/bitboxer/git-commit-notifier/blob/master/config/git-notifier-config.yml.sample).
55
+ An example for the config file can be found in [config/git-notifier-config.example.yml](http://github.com/bitboxer/git-commit-notifier/blob/master/config/git-notifier-config.example.yml).
55
56
 
56
57
  If you want to send mails on each commit instead on each push, you should add a file called "post-commit" with this content:
57
58
 
58
59
  ```bash
59
- #!/bin/sh
60
- echo "HEAD^1 HEAD refs/heads/master" | git-commit-notifier path_to_config.yml
60
+ #!/bin/sh
61
+ echo "HEAD^1 HEAD refs/heads/master" | git-commit-notifier path_to_config.yml
61
62
  ```
62
63
 
63
64
  ## Integration with Redmine, Bugzilla, MediaWiki
@@ -117,7 +118,7 @@ The file _previously.txt_ is created at the first commit. If you moved the file
117
118
 
118
119
  ## Credits
119
120
 
120
- Thanks for [Primalgrasp](http://www.primalgrasp.com) and [Undev](http://undev.ru/) for sponsoring this work.
121
+ Thanks for [putpat.tv](http://www.putpat.tv), [Primalgrasp](http://www.primalgrasp.com) and [Undev](http://undev.ru/) for sponsoring this work.
121
122
 
122
123
  ## License
123
124
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.10.1
1
+ 0.10.2
@@ -25,17 +25,16 @@ Gem::Specification.new do |s|
25
25
 
26
26
  s.specification_version = 3
27
27
 
28
- s.add_runtime_dependency(%q<diff-lcs>, [">= 0"])
29
- s.add_runtime_dependency(%q<nntp>, [">= 0"])
30
- s.add_runtime_dependency(%q<premailer>, [">= 1.7.1"])
31
- s.add_runtime_dependency(%q<nokogiri>, [">= 1.4.4"])
32
- s.add_development_dependency(%q<rake>, ["!= 0.9.0"])
33
- s.add_development_dependency(%q<bundler>, [">= 1.0.10"])
28
+ s.add_runtime_dependency(%q<diff-lcs>, ["~> 1.1.2"])
29
+ s.add_runtime_dependency(%q<nntp>, ["~> 1.0"])
30
+ s.add_runtime_dependency(%q<premailer>, ["~> 1.7", "!= 1.7.2"])
31
+ s.add_runtime_dependency(%q<nokogiri>, ["~> 1.4"])
32
+ s.add_development_dependency(%q<rake>, ["~> 0.8", "!= 0.9.0"])
33
+ s.add_development_dependency(%q<bundler>, ["~> 1.0", ">=1.0.10"])
34
34
  s.add_development_dependency(%q<code-cleaner>, [">= 0"])
35
35
  s.add_development_dependency(%q<rspec-core>, [">= 0"])
36
36
  s.add_development_dependency(%q<rspec-expectations>, [">= 0"])
37
- s.add_development_dependency(%q<rr>, [">= 0"])
38
- s.add_development_dependency(%q<faker>, [">= 0"])
39
- s.add_development_dependency(%q<rcov>, [">= 0"])
37
+ s.add_development_dependency(%q<rr>, ["~> 1.0"])
38
+ s.add_development_dependency(%q<faker>, ["~> 0.9.5"])
40
39
  end
41
40
 
@@ -313,17 +313,22 @@ module GitCommitNotifier
313
313
  end
314
314
 
315
315
  def extract_commit_info_from_git_show_output(content)
316
- result = { :message => [], :commit => '', :author => '', :date => '', :email => '' }
316
+ result = { :message => [], :commit => '', :author => '', :date => '', :email => '',
317
+ :committer => '', :commit_date => '', :committer_email => ''}
317
318
  content.split("\n").each do |line|
318
319
  if line =~ /^diff/ # end of commit info, return results
319
320
  return result
320
- elsif line =~ /^commit/
321
+ elsif line =~ /^commit /
321
322
  result[:commit] = line[7..-1]
322
- elsif line =~ /^Author/
323
- result[:author], result[:email] = author_name_and_email(line[8..-1])
324
- elsif line =~ /^Date/
325
- result[:date] = line[8..-1]
326
- elsif line =~ /^Merge/
323
+ elsif line =~ /^Author:/
324
+ result[:author], result[:email] = author_name_and_email(line[12..-1])
325
+ elsif line =~ /^AuthorDate:/
326
+ result[:date] = line[12..-1]
327
+ elsif line =~ /^Commit:/
328
+ result[:committer], result[:commit_email] = author_name_and_email(line[12..-1])
329
+ elsif line =~ /^CommitDate:/
330
+ result[:commit_date] = line[12..-1]
331
+ elsif line =~ /^Merge:/
327
332
  result[:merge] = line[7..-1]
328
333
  else
329
334
  clean_line = line.strip
@@ -457,7 +462,9 @@ module GitCommitNotifier
457
462
 
458
463
  title += "<strong>Branch:</strong> #{CGI.escapeHTML(branch_name)}\n<br />"
459
464
  title += "<strong>Date:</strong> #{CGI.escapeHTML commit_info[:date]}\n<br />"
460
- title += "<strong>Author:</strong> #{CGI.escapeHTML(commit_info[:author])} &lt;#{commit_info[:email]}&gt;\n</div>"
465
+ title += "<strong>Author:</strong> #{CGI.escapeHTML(commit_info[:author])} &lt;#{commit_info[:email]}&gt;\n<br />"
466
+ title += "<strong>Committer:</strong> #{CGI.escapeHTML(commit_info[:committer])} &lt;#{commit_info[:commit_email]}&gt;\n</div>"
467
+
461
468
  text = "#{raw_diff}"
462
469
  text += "#{changed_files}\n\n\n"
463
470
 
@@ -8,12 +8,13 @@ class GitCommitNotifier::Git
8
8
 
9
9
  def show(rev, ignore_whitespace)
10
10
  gitopt = ""
11
+ gitopt += " --pretty=fuller"
11
12
  gitopt += " -w" if ignore_whitespace
12
13
  from_shell("git show #{rev.strip}#{gitopt}")
13
14
  end
14
15
 
15
16
  def log(rev1, rev2)
16
- from_shell("git log #{rev1}..#{rev2}").strip
17
+ from_shell("git log --pretty=fuller #{rev1}..#{rev2}").strip
17
18
  end
18
19
 
19
20
  def changed_files(rev1, rev2)
@@ -14,18 +14,18 @@ describe GitCommitNotifier::Git do
14
14
  describe :show do
15
15
  it "should get data from shell: git show without whitespaces" do
16
16
  expected = 'some data from git show'
17
- mock(GitCommitNotifier::Git).from_shell("git show #{SAMPLE_REV} -w") { expected }
17
+ mock(GitCommitNotifier::Git).from_shell("git show #{SAMPLE_REV} --pretty=fuller -w") { expected }
18
18
  GitCommitNotifier::Git.show(SAMPLE_REV, true).should == expected
19
19
  end
20
20
 
21
21
  it "should get data from shell: git show with whitespaces" do
22
22
  expected = 'some data from git show'
23
- mock(GitCommitNotifier::Git).from_shell("git show #{SAMPLE_REV}") { expected }
23
+ mock(GitCommitNotifier::Git).from_shell("git show #{SAMPLE_REV} --pretty=fuller") { expected }
24
24
  GitCommitNotifier::Git.show(SAMPLE_REV, false).should == expected
25
25
  end
26
26
 
27
27
  it "should strip given revision" do
28
- mock(GitCommitNotifier::Git).from_shell("git show #{SAMPLE_REV} -w")
28
+ mock(GitCommitNotifier::Git).from_shell("git show #{SAMPLE_REV} --pretty=fuller -w")
29
29
  GitCommitNotifier::Git.show("#{SAMPLE_REV}\n", true)
30
30
  end
31
31
  end
@@ -73,7 +73,7 @@ describe GitCommitNotifier::Git do
73
73
 
74
74
  describe :log do
75
75
  it "should run git log with given args" do
76
- mock(GitCommitNotifier::Git).from_shell("git log #{SAMPLE_REV}..#{SAMPLE_REV_2}") { " ok " }
76
+ mock(GitCommitNotifier::Git).from_shell("git log --pretty=fuller #{SAMPLE_REV}..#{SAMPLE_REV_2}") { " ok " }
77
77
  GitCommitNotifier::Git.log(SAMPLE_REV, SAMPLE_REV_2).should == "ok"
78
78
  end
79
79
  end
@@ -1,9 +1,10 @@
1
- <html><meta http-equiv="Content-type" content="text/html; charset=utf-8" /><head>
1
+ <html><head>
2
+ <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
2
3
  <style type="text/css">
3
- <%= stylesheet_string %>
4
+ <%= stylesheet_string %>
4
5
  </style>
5
6
  </head>
6
7
  <body>
7
- <%= @html_message %>
8
+ <%= @html_message %>
8
9
  </body>
9
10
  </html>
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: git-commit-notifier
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.1
4
+ version: 0.10.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,78 +10,87 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2011-09-06 00:00:00.000000000 +02:00
13
+ date: 2011-09-08 00:00:00.000000000 +02:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: diff-lcs
18
- requirement: &70201197492480 !ruby/object:Gem::Requirement
18
+ requirement: &70327232962420 !ruby/object:Gem::Requirement
19
19
  none: false
20
20
  requirements:
21
- - - ! '>='
21
+ - - ~>
22
22
  - !ruby/object:Gem::Version
23
- version: '0'
23
+ version: 1.1.2
24
24
  type: :runtime
25
25
  prerelease: false
26
- version_requirements: *70201197492480
26
+ version_requirements: *70327232962420
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: nntp
29
- requirement: &70201197492000 !ruby/object:Gem::Requirement
29
+ requirement: &70327232961940 !ruby/object:Gem::Requirement
30
30
  none: false
31
31
  requirements:
32
- - - ! '>='
32
+ - - ~>
33
33
  - !ruby/object:Gem::Version
34
- version: '0'
34
+ version: '1.0'
35
35
  type: :runtime
36
36
  prerelease: false
37
- version_requirements: *70201197492000
37
+ version_requirements: *70327232961940
38
38
  - !ruby/object:Gem::Dependency
39
39
  name: premailer
40
- requirement: &70201197491520 !ruby/object:Gem::Requirement
40
+ requirement: &70327232961440 !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
- - - ! '>='
43
+ - - ~>
44
44
  - !ruby/object:Gem::Version
45
- version: 1.7.1
45
+ version: '1.7'
46
+ - - ! '!='
47
+ - !ruby/object:Gem::Version
48
+ version: 1.7.2
46
49
  type: :runtime
47
50
  prerelease: false
48
- version_requirements: *70201197491520
51
+ version_requirements: *70327232961440
49
52
  - !ruby/object:Gem::Dependency
50
53
  name: nokogiri
51
- requirement: &70201193363020 !ruby/object:Gem::Requirement
54
+ requirement: &70327225451960 !ruby/object:Gem::Requirement
52
55
  none: false
53
56
  requirements:
54
- - - ! '>='
57
+ - - ~>
55
58
  - !ruby/object:Gem::Version
56
- version: 1.4.4
59
+ version: '1.4'
57
60
  type: :runtime
58
61
  prerelease: false
59
- version_requirements: *70201193363020
62
+ version_requirements: *70327225451960
60
63
  - !ruby/object:Gem::Dependency
61
64
  name: rake
62
- requirement: &70201193362540 !ruby/object:Gem::Requirement
65
+ requirement: &70327225692660 !ruby/object:Gem::Requirement
63
66
  none: false
64
67
  requirements:
68
+ - - ~>
69
+ - !ruby/object:Gem::Version
70
+ version: '0.8'
65
71
  - - ! '!='
66
72
  - !ruby/object:Gem::Version
67
73
  version: 0.9.0
68
74
  type: :development
69
75
  prerelease: false
70
- version_requirements: *70201193362540
76
+ version_requirements: *70327225692660
71
77
  - !ruby/object:Gem::Dependency
72
78
  name: bundler
73
- requirement: &70201193362060 !ruby/object:Gem::Requirement
79
+ requirement: &70327226404100 !ruby/object:Gem::Requirement
74
80
  none: false
75
81
  requirements:
82
+ - - ~>
83
+ - !ruby/object:Gem::Version
84
+ version: '1.0'
76
85
  - - ! '>='
77
86
  - !ruby/object:Gem::Version
78
87
  version: 1.0.10
79
88
  type: :development
80
89
  prerelease: false
81
- version_requirements: *70201193362060
90
+ version_requirements: *70327226404100
82
91
  - !ruby/object:Gem::Dependency
83
92
  name: code-cleaner
84
- requirement: &70201193361580 !ruby/object:Gem::Requirement
93
+ requirement: &70327226682620 !ruby/object:Gem::Requirement
85
94
  none: false
86
95
  requirements:
87
96
  - - ! '>='
@@ -89,10 +98,10 @@ dependencies:
89
98
  version: '0'
90
99
  type: :development
91
100
  prerelease: false
92
- version_requirements: *70201193361580
101
+ version_requirements: *70327226682620
93
102
  - !ruby/object:Gem::Dependency
94
103
  name: rspec-core
95
- requirement: &70201193361100 !ruby/object:Gem::Requirement
104
+ requirement: &70327226991100 !ruby/object:Gem::Requirement
96
105
  none: false
97
106
  requirements:
98
107
  - - ! '>='
@@ -100,10 +109,10 @@ dependencies:
100
109
  version: '0'
101
110
  type: :development
102
111
  prerelease: false
103
- version_requirements: *70201193361100
112
+ version_requirements: *70327226991100
104
113
  - !ruby/object:Gem::Dependency
105
114
  name: rspec-expectations
106
- requirement: &70201193360620 !ruby/object:Gem::Requirement
115
+ requirement: &70327227187340 !ruby/object:Gem::Requirement
107
116
  none: false
108
117
  requirements:
109
118
  - - ! '>='
@@ -111,40 +120,29 @@ dependencies:
111
120
  version: '0'
112
121
  type: :development
113
122
  prerelease: false
114
- version_requirements: *70201193360620
123
+ version_requirements: *70327227187340
115
124
  - !ruby/object:Gem::Dependency
116
125
  name: rr
117
- requirement: &70201193360140 !ruby/object:Gem::Requirement
126
+ requirement: &70327227206520 !ruby/object:Gem::Requirement
118
127
  none: false
119
128
  requirements:
120
- - - ! '>='
129
+ - - ~>
121
130
  - !ruby/object:Gem::Version
122
- version: '0'
131
+ version: '1.0'
123
132
  type: :development
124
133
  prerelease: false
125
- version_requirements: *70201193360140
134
+ version_requirements: *70327227206520
126
135
  - !ruby/object:Gem::Dependency
127
136
  name: faker
128
- requirement: &70201193359660 !ruby/object:Gem::Requirement
137
+ requirement: &70327229452500 !ruby/object:Gem::Requirement
129
138
  none: false
130
139
  requirements:
131
- - - ! '>='
140
+ - - ~>
132
141
  - !ruby/object:Gem::Version
133
- version: '0'
134
- type: :development
135
- prerelease: false
136
- version_requirements: *70201193359660
137
- - !ruby/object:Gem::Dependency
138
- name: rcov
139
- requirement: &70201193359180 !ruby/object:Gem::Requirement
140
- none: false
141
- requirements:
142
- - - ! '>='
143
- - !ruby/object:Gem::Version
144
- version: '0'
142
+ version: 0.9.5
145
143
  type: :development
146
144
  prerelease: false
147
- version_requirements: *70201193359180
145
+ version_requirements: *70327229452500
148
146
  description: This git commit notifier sends html mails with nice diffs for every changed
149
147
  file.
150
148
  email: bodo@bitboxer.de
@@ -164,7 +162,7 @@ files:
164
162
  - Rakefile
165
163
  - VERSION
166
164
  - bin/git-commit-notifier
167
- - config/git-notifier-config.yml.sample
165
+ - config/git-notifier-config.example.yml
168
166
  - git-commit-notifier.gemspec
169
167
  - lib/git_commit_notifier.rb
170
168
  - lib/git_commit_notifier/commit_hook.rb
@@ -215,7 +213,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
215
213
  version: '0'
216
214
  segments:
217
215
  - 0
218
- hash: -1623397156377293911
216
+ hash: 2795611329410386434
219
217
  required_rubygems_version: !ruby/object:Gem::Requirement
220
218
  none: false
221
219
  requirements: