rubycut-vclog 1.9.4

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.
Files changed (76) hide show
  1. data/.yardopts +7 -0
  2. data/History.md +249 -0
  3. data/License.txt +23 -0
  4. data/README.md +133 -0
  5. data/bin/vclog +6 -0
  6. data/bin/vclog-autotag +6 -0
  7. data/bin/vclog-bump +6 -0
  8. data/bin/vclog-formats +6 -0
  9. data/bin/vclog-news +6 -0
  10. data/bin/vclog-version +6 -0
  11. data/lib/vclog.rb +6 -0
  12. data/lib/vclog.yml +68 -0
  13. data/lib/vclog/adapters.rb +12 -0
  14. data/lib/vclog/adapters/abstract.rb +131 -0
  15. data/lib/vclog/adapters/darcs.rb +93 -0
  16. data/lib/vclog/adapters/git.rb +190 -0
  17. data/lib/vclog/adapters/hg.rb +129 -0
  18. data/lib/vclog/adapters/svn.rb +155 -0
  19. data/lib/vclog/change.rb +207 -0
  20. data/lib/vclog/change_point.rb +77 -0
  21. data/lib/vclog/changelog.rb +233 -0
  22. data/lib/vclog/cli.rb +8 -0
  23. data/lib/vclog/cli/abstract.rb +92 -0
  24. data/lib/vclog/cli/autotag.rb +36 -0
  25. data/lib/vclog/cli/bump.rb +29 -0
  26. data/lib/vclog/cli/formats.rb +28 -0
  27. data/lib/vclog/cli/log.rb +86 -0
  28. data/lib/vclog/cli/news.rb +29 -0
  29. data/lib/vclog/cli/version.rb +30 -0
  30. data/lib/vclog/config.rb +143 -0
  31. data/lib/vclog/core_ext.rb +11 -0
  32. data/lib/vclog/heuristics.rb +192 -0
  33. data/lib/vclog/heuristics/rule.rb +73 -0
  34. data/lib/vclog/heuristics/type.rb +29 -0
  35. data/lib/vclog/history_file.rb +69 -0
  36. data/lib/vclog/metadata.rb +16 -0
  37. data/lib/vclog/rc.rb +9 -0
  38. data/lib/vclog/release.rb +67 -0
  39. data/lib/vclog/repo.rb +298 -0
  40. data/lib/vclog/report.rb +200 -0
  41. data/lib/vclog/tag.rb +151 -0
  42. data/lib/vclog/templates/changelog.ansi.rb +35 -0
  43. data/lib/vclog/templates/changelog.atom.erb +52 -0
  44. data/lib/vclog/templates/changelog.gnu.rb +24 -0
  45. data/lib/vclog/templates/changelog.html.erb +49 -0
  46. data/lib/vclog/templates/changelog.json.rb +1 -0
  47. data/lib/vclog/templates/changelog.markdown.rb +30 -0
  48. data/lib/vclog/templates/changelog.rdoc.rb +30 -0
  49. data/lib/vclog/templates/changelog.rss.erb +54 -0
  50. data/lib/vclog/templates/changelog.xml.erb +28 -0
  51. data/lib/vclog/templates/changelog.xsl +34 -0
  52. data/lib/vclog/templates/changelog.yaml.rb +1 -0
  53. data/lib/vclog/templates/history.ansi.rb +57 -0
  54. data/lib/vclog/templates/history.atom.erb +84 -0
  55. data/lib/vclog/templates/history.gnu.rb +39 -0
  56. data/lib/vclog/templates/history.html.erb +60 -0
  57. data/lib/vclog/templates/history.json.rb +1 -0
  58. data/lib/vclog/templates/history.markdown.rb +38 -0
  59. data/lib/vclog/templates/history.rdoc.rb +36 -0
  60. data/lib/vclog/templates/history.rss.erb +84 -0
  61. data/lib/vclog/templates/history.xml.erb +43 -0
  62. data/lib/vclog/templates/history.yaml.rb +1 -0
  63. data/man/man1/index.txt +9 -0
  64. data/man/man1/vclog-autotag.1.ronn +29 -0
  65. data/man/man1/vclog-bump.1.ronn +21 -0
  66. data/man/man1/vclog-news.1.ronn +25 -0
  67. data/man/man1/vclog-version.1.ronn +14 -0
  68. data/man/man1/vclog.1.ronn +49 -0
  69. data/spec/feature_git_changes.rb +58 -0
  70. data/spec/feature_git_history.rb +58 -0
  71. data/spec/feature_hg_changes.rb +58 -0
  72. data/spec/feature_hg_history.rb +58 -0
  73. data/spec/featurettes/repo_creation.rb +64 -0
  74. data/spec/featurettes/shellout.rb +16 -0
  75. data/test/case_metadata.rb +10 -0
  76. metadata +265 -0
@@ -0,0 +1,58 @@
1
+ #require_relative 'featurettes/repo_creation'
2
+ #require_relative 'featurettes/shellout'
3
+
4
+ Feature "Mercurial Support" do
5
+ As "Mercurial users"
6
+ We "want to generate a nicely formatted Changelog"
7
+
8
+ Scenario "Mercurial Changelog" do
9
+ Given "a suitable Mercurial repository"
10
+ When "I run `vclog`"
11
+ Then "the exit status should be 0"
12
+ end
13
+
14
+ Scenario "Mercurial Changelog in RDoc" do
15
+ Given "a suitable Mercurial repository"
16
+ When "I run `vclog -f rdoc`"
17
+ Then "the exit status should be 0"
18
+ end
19
+
20
+ Scenario "Mercurial Changelog in Markdown" do
21
+ Given "a suitable Mercurial repository"
22
+ When "I run `vclog -f markdown`"
23
+ Then "the exit status should be 0"
24
+ end
25
+
26
+ Scenario "Mercurial Changelog in HTML" do
27
+ Given "a suitable Mercurial repository"
28
+ When "I run `vclog -f html`"
29
+ Then "the exit status should be 0"
30
+ end
31
+
32
+ Scenario "Mercurial Changelog in XML" do
33
+ Given "a suitable Mercurial repository"
34
+ When "I run `vclog -f xml`"
35
+ Then "the exit status should be 0"
36
+ end
37
+
38
+ Scenario "Mercurial Changelog in Atom" do
39
+ Given "a suitable Mercurial repository"
40
+ When "I run `vclog -f atom`"
41
+ Then "the exit status should be 0"
42
+ end
43
+
44
+ Scenario "Mercurial Changelog in YAML" do
45
+ Given "a suitable Mercurial repository"
46
+ When "I run `vclog -f yaml`"
47
+ Then "the exit status should be 0"
48
+ end
49
+
50
+ Scenario "Mercurial Changelog in JSON" do
51
+ Given "a suitable Mercurial repository"
52
+ When "I run `vclog -f json`"
53
+ Then "the exit status should be 0"
54
+ end
55
+
56
+ include RepoCreation
57
+ include Shellout
58
+ end
@@ -0,0 +1,58 @@
1
+ #require_relative 'featurettes/repo_creation'
2
+ #require_relative 'featurettes/shellout'
3
+
4
+ Feature "Mercurial Release History Support" do
5
+ As "Mercurial users"
6
+ We "want to generate nicely formatted Release Histories"
7
+
8
+ Scenario "Mercurial Release History" do
9
+ Given "a suitable Mercurial repository"
10
+ When "I run `vclog rel`"
11
+ Then "the exit status should be 0"
12
+ end
13
+
14
+ Scenario "Mercurial Release History in RDoc" do
15
+ Given "a suitable Mercurial repository"
16
+ When "I run `vclog rel -f rdoc`"
17
+ Then "the exit status should be 0"
18
+ end
19
+
20
+ Scenario "Mercurial Release History in Markdown" do
21
+ Given "a suitable Mercurial repository"
22
+ When "I run `vclog rel -f markdown`"
23
+ Then "the exit status should be 0"
24
+ end
25
+
26
+ Scenario "Mercurial Release History in HTML" do
27
+ Given "a suitable Mercurial repository"
28
+ When "I run `vclog rel -f html`"
29
+ Then "the exit status should be 0"
30
+ end
31
+
32
+ Scenario "Mercurial Release History in XML" do
33
+ Given "a suitable Mercurial repository"
34
+ When "I run `vclog rel -f xml`"
35
+ Then "the exit status should be 0"
36
+ end
37
+
38
+ Scenario "Mercurial Release History in Atom" do
39
+ Given "a suitable Mercurial repository"
40
+ When "I run `vclog rel -f atom`"
41
+ Then "the exit status should be 0"
42
+ end
43
+
44
+ Scenario "Mercurial Release History in YAML" do
45
+ Given "a suitable Mercurial repository"
46
+ When "I run `vclog rel -f yaml`"
47
+ Then "the exit status should be 0"
48
+ end
49
+
50
+ Scenario "Mercurial Release History in JSON" do
51
+ Given "a suitable Mercurial repository"
52
+ When "I run `vclog rel -f json`"
53
+ Then "the exit status should be 0"
54
+ end
55
+
56
+ include RepoCreation
57
+ include Shellout
58
+ end
@@ -0,0 +1,64 @@
1
+ module RepoCreation
2
+ include Lime::Featurette
3
+
4
+ Given 'a suitable Git repository' do
5
+ url = "git://github.com/rubyworks/vclog.git"
6
+ name = "vclog"
7
+ type = "git"
8
+ marker = ".git"
9
+ clone = "git clone #{url} #{name}"
10
+
11
+ setup_repo(name, type, marker, clone)
12
+ end
13
+
14
+ Given 'a suitable Mercurial repository' do
15
+ url = "http://bitbucket.org/birkenfeld/sphinx"
16
+ name = "sphinx"
17
+ type = "hg"
18
+ marker = ".hg"
19
+ clone = "hg clone #{url} #{name}"
20
+
21
+ setup_repo(name, type, marker, clone)
22
+ end
23
+
24
+ Given 'a suitable Subversion repository' do
25
+ url = "svn://rubyforge.org/var/svn/rubygems"
26
+ name = "rubygems"
27
+ type = "svn"
28
+ marker = ".svn"
29
+ clone = "svn checkout #{url} #{name}"
30
+
31
+ setup_repo(name, type, marker, clone)
32
+ end
33
+
34
+ # TODO: test darcs repo
35
+ Given 'a suitable Darcs repository' do
36
+ url =
37
+ name =
38
+ type = "darcs"
39
+ marker = "_darcs"
40
+ clone = ""
41
+ end
42
+
43
+ #
44
+ # Checkout reporsitory if need be and copy to working location.
45
+ #
46
+ def setup_repo(name, type, marker, clone_command)
47
+ dir = File.expand_path("tmp/hold/#{type}")
48
+ dst = File.expand_path("tmp/repo/#{type}")
49
+
50
+ unless File.exist?("#{dir}/#{name}/#{marker}")
51
+ $stderr.puts(" #{clone_command}")
52
+ `mkdir -p #{dir}` unless File.directory?(dir)
53
+ `cd #{dir}; #{clone_command}`
54
+ end
55
+
56
+ unless File.directory?("#{dst}/#{name}")
57
+ `mkdir -p #{dst}`
58
+ `cp -r #{dir}/#{name} #{dst}/#{name}`
59
+ end
60
+
61
+ @working_directory = "#{dst}/#{name}"
62
+ end
63
+
64
+ end
@@ -0,0 +1,16 @@
1
+ require 'open3'
2
+
3
+ module Shellout
4
+ include Lime::Featurette
5
+
6
+ When 'I run `(((.*?)))`' do |cmd|
7
+ Dir.chdir(@working_directory) do
8
+ @stdout, @stderr, @status = Open3.capture3(cmd)
9
+ end
10
+ end
11
+
12
+ Then 'the exit status should be (((\d+)))' do |status|
13
+ @status = status.to_i
14
+ end
15
+
16
+ end
@@ -0,0 +1,10 @@
1
+ require 'vclog/metadata'
2
+
3
+ testcase "VCLog" do
4
+
5
+ test "VERSION is set" do
6
+ ::VCLog::VERSION.assert == File.read('index/version').strip
7
+ end
8
+
9
+ end
10
+
metadata ADDED
@@ -0,0 +1,265 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rubycut-vclog
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.9.4
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Trans
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-03-21 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: facets
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '2.4'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '2.4'
30
+ - !ruby/object:Gem::Dependency
31
+ name: ansi
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '1.2'
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '1.2'
46
+ - !ruby/object:Gem::Dependency
47
+ name: xml-simple
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: ergo
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ type: :development
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: citron
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ type: :development
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: lime
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
102
+ type: :development
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ - !ruby/object:Gem::Dependency
111
+ name: ae
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: rubytest-cli
128
+ requirement: !ruby/object:Gem::Requirement
129
+ none: false
130
+ requirements:
131
+ - - ! '>='
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
134
+ type: :development
135
+ prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
142
+ description: VCLog is a cross-VCS/SCM ChangeLog generator.
143
+ email:
144
+ - transfire@gmail.com
145
+ executables:
146
+ - vclog-version
147
+ - vclog-news
148
+ - vclog
149
+ - vclog-bump
150
+ - vclog-formats
151
+ - vclog-autotag
152
+ extensions: []
153
+ extra_rdoc_files:
154
+ - License.txt
155
+ - History.md
156
+ - README.md
157
+ files:
158
+ - .yardopts
159
+ - bin/vclog
160
+ - bin/vclog-autotag
161
+ - bin/vclog-bump
162
+ - bin/vclog-formats
163
+ - bin/vclog-news
164
+ - bin/vclog-version
165
+ - lib/vclog/adapters/abstract.rb
166
+ - lib/vclog/adapters/darcs.rb
167
+ - lib/vclog/adapters/git.rb
168
+ - lib/vclog/adapters/hg.rb
169
+ - lib/vclog/adapters/svn.rb
170
+ - lib/vclog/adapters.rb
171
+ - lib/vclog/change.rb
172
+ - lib/vclog/change_point.rb
173
+ - lib/vclog/changelog.rb
174
+ - lib/vclog/cli/abstract.rb
175
+ - lib/vclog/cli/autotag.rb
176
+ - lib/vclog/cli/bump.rb
177
+ - lib/vclog/cli/formats.rb
178
+ - lib/vclog/cli/log.rb
179
+ - lib/vclog/cli/news.rb
180
+ - lib/vclog/cli/version.rb
181
+ - lib/vclog/cli.rb
182
+ - lib/vclog/config.rb
183
+ - lib/vclog/core_ext.rb
184
+ - lib/vclog/heuristics/rule.rb
185
+ - lib/vclog/heuristics/type.rb
186
+ - lib/vclog/heuristics.rb
187
+ - lib/vclog/history_file.rb
188
+ - lib/vclog/metadata.rb
189
+ - lib/vclog/rc.rb
190
+ - lib/vclog/release.rb
191
+ - lib/vclog/repo.rb
192
+ - lib/vclog/report.rb
193
+ - lib/vclog/tag.rb
194
+ - lib/vclog/templates/changelog.ansi.rb
195
+ - lib/vclog/templates/changelog.atom.erb
196
+ - lib/vclog/templates/changelog.gnu.rb
197
+ - lib/vclog/templates/changelog.html.erb
198
+ - lib/vclog/templates/changelog.json.rb
199
+ - lib/vclog/templates/changelog.markdown.rb
200
+ - lib/vclog/templates/changelog.rdoc.rb
201
+ - lib/vclog/templates/changelog.rss.erb
202
+ - lib/vclog/templates/changelog.xml.erb
203
+ - lib/vclog/templates/changelog.xsl
204
+ - lib/vclog/templates/changelog.yaml.rb
205
+ - lib/vclog/templates/history.ansi.rb
206
+ - lib/vclog/templates/history.atom.erb
207
+ - lib/vclog/templates/history.gnu.rb
208
+ - lib/vclog/templates/history.html.erb
209
+ - lib/vclog/templates/history.json.rb
210
+ - lib/vclog/templates/history.markdown.rb
211
+ - lib/vclog/templates/history.rdoc.rb
212
+ - lib/vclog/templates/history.rss.erb
213
+ - lib/vclog/templates/history.xml.erb
214
+ - lib/vclog/templates/history.yaml.rb
215
+ - lib/vclog.rb
216
+ - lib/vclog.yml
217
+ - man/man1/index.txt
218
+ - man/man1/vclog-autotag.1.ronn
219
+ - man/man1/vclog-bump.1.ronn
220
+ - man/man1/vclog-news.1.ronn
221
+ - man/man1/vclog-version.1.ronn
222
+ - man/man1/vclog.1.ronn
223
+ - spec/feature_git_changes.rb
224
+ - spec/feature_git_history.rb
225
+ - spec/feature_hg_changes.rb
226
+ - spec/feature_hg_history.rb
227
+ - spec/featurettes/repo_creation.rb
228
+ - spec/featurettes/shellout.rb
229
+ - test/case_metadata.rb
230
+ - README.md
231
+ - History.md
232
+ - License.txt
233
+ homepage: http://rubyworks.github.com/vclog
234
+ licenses:
235
+ - BSD-2-Clause
236
+ post_install_message:
237
+ rdoc_options: []
238
+ require_paths:
239
+ - lib
240
+ required_ruby_version: !ruby/object:Gem::Requirement
241
+ none: false
242
+ requirements:
243
+ - - ! '>='
244
+ - !ruby/object:Gem::Version
245
+ version: '0'
246
+ required_rubygems_version: !ruby/object:Gem::Requirement
247
+ none: false
248
+ requirements:
249
+ - - ! '>='
250
+ - !ruby/object:Gem::Version
251
+ version: '0'
252
+ requirements: []
253
+ rubyforge_project:
254
+ rubygems_version: 1.8.25
255
+ signing_key:
256
+ specification_version: 3
257
+ summary: Cross-VCS/SCM ChangeLog Generator
258
+ test_files:
259
+ - test/case_metadata.rb
260
+ - spec/feature_hg_history.rb
261
+ - spec/feature_git_changes.rb
262
+ - spec/feature_hg_changes.rb
263
+ - spec/featurettes/repo_creation.rb
264
+ - spec/featurettes/shellout.rb
265
+ - spec/feature_git_history.rb