detroit-vclog 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
data/.ruby CHANGED
@@ -1,4 +1,6 @@
1
1
  ---
2
+ source:
3
+ - meta
2
4
  authors:
3
5
  - name: T. Sawyer
4
6
  email: transfire@gmail.com
@@ -6,28 +8,29 @@ copyrights:
6
8
  - holder: Thomas Sawyer
7
9
  year: '2011'
8
10
  license: GPL-3
9
- replacements: []
10
- conflicts: []
11
11
  requirements:
12
12
  - name: detroit
13
+ version: 0.3.0+
13
14
  - name: vclog
14
15
  dependencies: []
16
+ alternatives: []
17
+ conflicts: []
15
18
  repositories: []
16
19
  resources:
17
20
  home: http://detroit.github.com/
18
21
  code: http://github.com/detroit/detroit-vclog
19
22
  mail: http://groups.google.com/group/rubyworks-mailinglist
23
+ extra: {}
20
24
  load_path:
21
25
  - lib
22
- extra: {}
23
26
  revision: 0
24
- source:
25
- - Profile
26
- alternatives: []
27
- version: 0.1.0
28
- date: '2011-10-16'
29
- name: detroit-vclog
30
- title: Detroit VCLog
27
+ created: '2011-10-16'
31
28
  summary: VCLog plugin for Detroit
29
+ title: Detroit VCLog
30
+ version: 0.2.0
31
+ name: detroit-vclog
32
+ suite: detroit
32
33
  description: VCLog plugin for Detroit build system. This plugin generates changelog
33
34
  and/or history documents for a project during the document phase.
35
+ organization: rubyworks
36
+ date: '2012-04-01'
File without changes
@@ -0,0 +1,350 @@
1
+ require 'detroit/tool'
2
+
3
+ module Detroit
4
+
5
+ # VCLog tool.
6
+ def VClog(options={})
7
+ VClog.new(options)
8
+ end
9
+
10
+ # VClog service generates changelogs from
11
+ # SCM commit messages.
12
+ #
13
+ # TODO: Support multiple formats in one pass.
14
+ class VClog < Tool
15
+
16
+ #
17
+ VALID_FORMATS = /^(html|yaml|json|xml|rdoc|md|markdown|gnu|txt|atom|rss|ansi)$/
18
+
19
+ #
20
+ VALID_TYPES = /^(log|rel|history|changelog)$/
21
+
22
+
23
+ # A T T R I B U T E S
24
+
25
+ # Current version of project.
26
+ attr_accessor :version
27
+
28
+ # Changelog layout type (+changelog+ or +history+). Default is +changelog+.
29
+ attr_reader :type
30
+
31
+ # Output is either a file name with a clear extension to infer type
32
+ # or a list of such file names, or a hash mapping file name to type.
33
+ #
34
+ # output: NOTES.rdoc
35
+ #
36
+ # output:
37
+ # - NOTES.rdoc
38
+ # - site/notes.html
39
+ #
40
+ # output:
41
+ # NOTES: markdown
42
+ # site/notes.html: html
43
+ #
44
+ # Recognized formats include `html`, `xml`, `atom`, `rss`, `json`, `yaml`,
45
+ # `rdoc`, `markdown` and `md`, `ansi`, `gnu` and `txt`.
46
+ attr_accessor :output
47
+
48
+ # Show revision/reference numbers (true/false)?
49
+ attr_accessor :id
50
+
51
+ # Some formats, such as +rdoc+, use a title field. Defaults to project title.
52
+ attr_accessor :title
53
+
54
+ # Some formats can reference an optional stylesheet (namely +xml+ and +html+).
55
+ attr_accessor :style
56
+
57
+ # Minimum change level to include.
58
+ attr_accessor :level
59
+
60
+ # Divide messages into change points (true/false)?
61
+ attr_accessor :point
62
+
63
+ # Reduced detail?
64
+ attr_accessor :summary
65
+
66
+ # Set output type.
67
+ def type=(f)
68
+ type = f.to_s.downcase
69
+ if type !~ VALID_TYPES
70
+ abort "Invalid vclog type - #{type}"
71
+ end
72
+ @type = type
73
+ end
74
+
75
+
76
+ # A S S E M B L Y M E T H O D S
77
+
78
+ #
79
+ def assemble?(station, options={})
80
+ case station
81
+ when :document then true
82
+ when :reset then true
83
+ when :purge then true
84
+ end
85
+ end
86
+
87
+ #
88
+ def assemble(station, options={})
89
+ case station
90
+ when :document then document
91
+ when :reset then reset
92
+ when :purge then purge
93
+ end
94
+ end
95
+
96
+
97
+ # S E R V I C E M E T H O D S
98
+
99
+ # TODO: Check the output files and see if they are older than
100
+ # the current change log.
101
+ #
102
+ # @return [Boolean] whether output is up-to-date
103
+ def current?
104
+ false
105
+ #output_mapping.each do |file, format|
106
+ # return false if outofdate?(file, *dnote_session.files)
107
+ #else
108
+ # "VCLogs are current."
109
+ #end
110
+ end
111
+
112
+ # Generate the log.
113
+ def document
114
+ output_mapping.each do |file, format, type|
115
+ next unless verify_format(format, file)
116
+ #file = File.join(output, fname)
117
+ trace "vclog --#{type} -f #{format} >> #{file}"
118
+ if dryrun?
119
+ false # file hasn't changed
120
+ else
121
+ changed = save(file, format, type)
122
+ if changed
123
+ report "Updated " + relative_from_root(file)
124
+ else
125
+ report "Current " + relative_from_root(file)
126
+ end
127
+ changed
128
+ end
129
+ end
130
+ end
131
+
132
+ # Save changelog/history to +output+ file.
133
+ def save(file, format, type)
134
+ text = render(format, type)
135
+ if File.exist?(file)
136
+ return false if File.read(file) == text
137
+ else
138
+ dir = File.dirname(file)
139
+ mkdir_p(dir) unless File.exist?(dir)
140
+ end
141
+ File.open(file, 'w'){ |f| f << text }
142
+ return true
143
+ end
144
+
145
+ # Mark the output directory as out of date.
146
+ def reset
147
+ output_mapping.each do |file, format, type|
148
+ if File.exist?(file)
149
+ utime(0,0,file)
150
+ report "Reset #{file}."
151
+ end
152
+ end
153
+ end
154
+
155
+ # TODO: anything to remove ?
156
+ def clean
157
+ end
158
+
159
+ # Remove output directory output directory.
160
+ def purge
161
+ output_mapping.each do |file, format, type|
162
+ if File.exist?(file)
163
+ rm(file)
164
+ report "Removed #{file}"
165
+ end
166
+ end
167
+ end
168
+
169
+ # Access to version control system.
170
+ def repo
171
+ @repo ||= VCLog::Repo.new(project.root.to_s)
172
+ end
173
+
174
+ # Convert log to desired format.
175
+ def render(format, doctype)
176
+ doctype = type if doctype.nil?
177
+ doctype = 'history' if doctype == 'rel'
178
+ doctype = 'changelog' if doctype == 'log'
179
+
180
+ options = {
181
+ :type => doctype,
182
+ :format => format,
183
+ :stylesheet => style,
184
+ :level => level,
185
+ :point => point,
186
+ :is => id,
187
+ :version => version,
188
+ :title => title,
189
+ :summary => summary
190
+ }
191
+
192
+ repo.report(options)
193
+ end
194
+
195
+ private
196
+
197
+ #
198
+ def verify_format(format, file)
199
+ if format !~ VALID_FORMATS
200
+ report "Invalid format for `#{file}' - `#{fmt}'." # report_error
201
+ false
202
+ else
203
+ true
204
+ end
205
+ end
206
+
207
+ # Convert output into a list of [file, format, type].
208
+ #++
209
+ # TODO: apply_naming_policy ?
210
+ #--
211
+ def output_mapping
212
+ @output_mapping ||= (
213
+ list = []
214
+ case output
215
+ when Array
216
+ output.each do |path|
217
+ list << [path, infer_format(path), infer_type(path)]
218
+ end
219
+ when String
220
+ list << [output, infer_format(output), infer_type(output)]
221
+ when Hash
222
+ output.each do |path, format|
223
+ list << [path, format, infer_type(path)]
224
+ end
225
+ end
226
+ list
227
+ )
228
+ end
229
+
230
+ #
231
+ def infer_format(file)
232
+ fmt = File.extname(file).sub('.','')
233
+ fmt = DEFAULT_FORMAT if type.empty?
234
+ fmt
235
+ end
236
+
237
+ #
238
+ def infer_type(file)
239
+ case file
240
+ when /history/i
241
+ 'history'
242
+ when /log/
243
+ 'changelog'
244
+ else
245
+ type
246
+ end
247
+ end
248
+
249
+ #
250
+ def relative_from_root(path)
251
+ begin
252
+ Pathname.new(path).relative_path_from(project.root)
253
+ rescue
254
+ path
255
+ end
256
+ end
257
+
258
+ #
259
+ def initialize_requires
260
+ require 'vclog'
261
+ end
262
+
263
+ #
264
+ def initialize_defaults
265
+ @version = metadata.version
266
+ @title = metadata.title
267
+ @output = project.log + 'changelog.atom'
268
+ @type = 'log'
269
+ @level = 0
270
+ @summary = false
271
+ end
272
+
273
+ ## Returns changelog or history depending on type selection.
274
+ #def log
275
+ # @log ||= (
276
+ # case type
277
+ # when 'log', 'changelog'
278
+ # log = repo.changelog
279
+ # when 'rel', 'history'
280
+ # log = repo.history(:title=>title, :version=>version)
281
+ # else
282
+ # log = repo.changelog
283
+ # end
284
+ # )
285
+ #end
286
+
287
+ #def vclog_config
288
+ # @vclog_config ||= (
289
+ # vcf = VCLog::Config.new(project.root.to_s)
290
+ # vcf.level = level
291
+ # vcf
292
+ # )
293
+ #end
294
+
295
+ =begin
296
+ # Convert formats into a hash of `format => fname`.
297
+ def formats_mapping(formats=nil)
298
+ formats ||= self.formats
299
+ case formats
300
+ when String
301
+ formats_mapping([formats])
302
+ when Array
303
+ h = {}
304
+ formats.each do |format|
305
+ h[format] = infer_output_fname(format, type)
306
+ end
307
+ h
308
+ when Hash
309
+ formats
310
+ else
311
+ raise ArgumentError, "invalid formats field -- #{formats.inspect}"
312
+ end
313
+ end
314
+
315
+ #
316
+ def infer_output_fname(format, type)
317
+ fname = case type
318
+ when 'rel', 'history'
319
+ 'history'
320
+ else
321
+ 'changelog'
322
+ end
323
+ #apply_naming_policy(fname, log_format.downcase)
324
+ ext = format_extension(format)
325
+ fname + ext
326
+ end
327
+
328
+ #
329
+ def format_extension(format)
330
+ ".#{format}"
331
+ end
332
+
333
+ # #
334
+ # def valid?
335
+ # return false unless output.all?{ |x, f| f =~ VALID_FORMATS }
336
+ # return false unless type =~ VALID_TYPES
337
+ # return true
338
+ # end
339
+
340
+ =end
341
+
342
+ public
343
+
344
+ def self.man_page
345
+ File.dirname(__FILE__)+'/../man/detroit-vclog.5'
346
+ end
347
+
348
+ end
349
+
350
+ end
@@ -0,0 +1,124 @@
1
+ .\" generated with Ronn/v0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
+ .
4
+ .TH "DETROIT\-VCLOG" "5" "October 2011" "" ""
5
+ .
6
+ .SH "NAME"
7
+ \fBdetroit\-vclog\fR \- generate changelogs using vclog for detroit
8
+ .
9
+ .SH "DESCRIPTION"
10
+ The VcLog plug\-in for Detroit utilize the \fBvclog\fR command line tool to generate nicely formated changelogs and/or history documents\.
11
+ .
12
+ .SH "OPTIONS"
13
+ The following options can be used in the Detroit assembly file for defining a vclog service\.
14
+ .
15
+ .IP "\(bu" 4
16
+ \fBoutput\fR \- Output is either a file name with a clear extension to infer the file format, or a list of such file names, or a hash mapping file name to file format\. Recognized formats include \fBhtml\fR, \fBxml\fR, \fBatom\fR, \fBrss\fR, \fBjson\fR, \fByaml\fR, \fBrdoc\fR, \fBmarkdown\fR and \fBmd\fR, \fBansi\fR, \fBgnu\fR and \fBtxt\fR\. See EXAMPLES below\.
17
+ .
18
+ .IP "\(bu" 4
19
+ \fBlevel\fR \- Minimum change level to include\. VCLog categorizes commits by level\. This setting filters commits with a level lower than the figure given\.
20
+ .
21
+ .IP "\(bu" 4
22
+ \fBrev\fR \- Show revision numbers\. Default is \fBfalse\fR\.
23
+ .
24
+ .IP "\(bu" 4
25
+ \fBsummary\fR \- Show reduced detail\. Default is \fBfalse\fR\.
26
+ .
27
+ .IP "\(bu" 4
28
+ \fBtitle\fR \- Some formats, such as +rdoc+, use a title field\. Defaults to project title from project metadata\.
29
+ .
30
+ .IP "\(bu" 4
31
+ \fBversion\fR \- The current version of the project\. The default is extracted from project metadata\.
32
+ .
33
+ .IP "\(bu" 4
34
+ \fBtype\fR \- Changelog layout type can be either \fBchangelog\fR or \fBhistory\fR\. If type is not given explicitly it will be infered from the name of the output file\. Otherwise if defaults to +changelog+\.
35
+ .
36
+ .IP "\(bu" 4
37
+ \fBstyle\fR \- Use external stylesheet\. Some formats, namely \fBxml\fR and \fBhtml\fR, can use a stylesheet\. Give the location of this file reltive to the output\.
38
+ .
39
+ .IP "" 0
40
+ .
41
+ .SH "Examples:"
42
+ The simplist entry is
43
+ .
44
+ .IP "" 4
45
+ .
46
+ .nf
47
+
48
+ vclog:
49
+ output: HISTORY\.rdoc
50
+ .
51
+ .fi
52
+ .
53
+ .IP "" 0
54
+ .
55
+ .P
56
+ To produce multiple formats use a list\.
57
+ .
58
+ .IP "" 4
59
+ .
60
+ .nf
61
+
62
+ vclog:
63
+ output:
64
+ \- log/CHANGES\.md
65
+ \- log/HISTORY\.md
66
+ .
67
+ .fi
68
+ .
69
+ .IP "" 0
70
+ .
71
+ .P
72
+ If the extension is atypical use a mapping\.
73
+ .
74
+ .IP "" 4
75
+ .
76
+ .nf
77
+
78
+ vclog:
79
+ output:
80
+ HISTORY: markdown
81
+ site/history\.html: html
82
+ .
83
+ .fi
84
+ .
85
+ .IP "" 0
86
+ .
87
+ .P
88
+ A fuller example might look something like this\.
89
+ .
90
+ .IP "" 4
91
+ .
92
+ .nf
93
+
94
+ vclog:
95
+ rev: true
96
+ level: \-2
97
+ output:
98
+ \- HISTORY\.rdoc
99
+ \- CHANGELOG\.rdoc
100
+ \- site/HISTORY\.html
101
+ .
102
+ .fi
103
+ .
104
+ .IP "" 0
105
+ .
106
+ .SH "RESOURCES"
107
+ For more information:
108
+ .
109
+ .IP "\(bu" 4
110
+ API Documentation \fIhttp://rubydoc\.info/gems/detroit\-vclog\fR
111
+ .
112
+ .IP "\(bu" 4
113
+ Development Site \fIhttp://github\.com/detroit/detroit\-vclog\fR
114
+ .
115
+ .IP "" 0
116
+ .
117
+ .SH "COPYRIGHT"
118
+ Copyright (c) 2010 Thomas Sawyer, Rubyworks
119
+ .
120
+ .P
121
+ Detroit VCLog is distributable in accordance with the GPL v\.3 license\.
122
+ .
123
+ .SH "SEE ALSO"
124
+ detroit(1), vclog(1)
@@ -0,0 +1,173 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta http-equiv='content-type' value='text/html;charset=utf8'>
5
+ <meta name='generator' value='Ronn/v0.7.3 (http://github.com/rtomayko/ronn/tree/0.7.3)'>
6
+ <title>detroit-vclog(5) - generate changelogs using vclog for detroit</title>
7
+ <style type='text/css' media='all'>
8
+ /* style: man */
9
+ body#manpage {margin:0}
10
+ .mp {max-width:100ex;padding:0 9ex 1ex 4ex}
11
+ .mp p,.mp pre,.mp ul,.mp ol,.mp dl {margin:0 0 20px 0}
12
+ .mp h2 {margin:10px 0 0 0}
13
+ .mp > p,.mp > pre,.mp > ul,.mp > ol,.mp > dl {margin-left:8ex}
14
+ .mp h3 {margin:0 0 0 4ex}
15
+ .mp dt {margin:0;clear:left}
16
+ .mp dt.flush {float:left;width:8ex}
17
+ .mp dd {margin:0 0 0 9ex}
18
+ .mp h1,.mp h2,.mp h3,.mp h4 {clear:left}
19
+ .mp pre {margin-bottom:20px}
20
+ .mp pre+h2,.mp pre+h3 {margin-top:22px}
21
+ .mp h2+pre,.mp h3+pre {margin-top:5px}
22
+ .mp img {display:block;margin:auto}
23
+ .mp h1.man-title {display:none}
24
+ .mp,.mp code,.mp pre,.mp tt,.mp kbd,.mp samp,.mp h3,.mp h4 {font-family:monospace;font-size:14px;line-height:1.42857142857143}
25
+ .mp h2 {font-size:16px;line-height:1.25}
26
+ .mp h1 {font-size:20px;line-height:2}
27
+ .mp {text-align:justify;background:#fff}
28
+ .mp,.mp code,.mp pre,.mp pre code,.mp tt,.mp kbd,.mp samp {color:#131211}
29
+ .mp h1,.mp h2,.mp h3,.mp h4 {color:#030201}
30
+ .mp u {text-decoration:underline}
31
+ .mp code,.mp strong,.mp b {font-weight:bold;color:#131211}
32
+ .mp em,.mp var {font-style:italic;color:#232221;text-decoration:none}
33
+ .mp a,.mp a:link,.mp a:hover,.mp a code,.mp a pre,.mp a tt,.mp a kbd,.mp a samp {color:#0000ff}
34
+ .mp b.man-ref {font-weight:normal;color:#434241}
35
+ .mp pre {padding:0 4ex}
36
+ .mp pre code {font-weight:normal;color:#434241}
37
+ .mp h2+pre,h3+pre {padding-left:0}
38
+ ol.man-decor,ol.man-decor li {margin:3px 0 10px 0;padding:0;float:left;width:33%;list-style-type:none;text-transform:uppercase;color:#999;letter-spacing:1px}
39
+ ol.man-decor {width:100%}
40
+ ol.man-decor li.tl {text-align:left}
41
+ ol.man-decor li.tc {text-align:center;letter-spacing:4px}
42
+ ol.man-decor li.tr {text-align:right;float:right}
43
+ </style>
44
+ </head>
45
+ <!--
46
+ The following styles are deprecated and will be removed at some point:
47
+ div#man, div#man ol.man, div#man ol.head, div#man ol.man.
48
+
49
+ The .man-page, .man-decor, .man-head, .man-foot, .man-title, and
50
+ .man-navigation should be used instead.
51
+ -->
52
+ <body id='manpage'>
53
+ <div class='mp' id='man'>
54
+
55
+ <div class='man-navigation' style='display:none'>
56
+ <a href="#NAME">NAME</a>
57
+ <a href="#DESCRIPTION">DESCRIPTION</a>
58
+ <a href="#OPTIONS">OPTIONS</a>
59
+ <a href="#Examples-">Examples:</a>
60
+ <a href="#RESOURCES">RESOURCES</a>
61
+ <a href="#COPYRIGHT">COPYRIGHT</a>
62
+ <a href="#SEE-ALSO">SEE ALSO</a>
63
+ </div>
64
+
65
+ <ol class='man-decor man-head man head'>
66
+ <li class='tl'>detroit-vclog(5)</li>
67
+ <li class='tc'></li>
68
+ <li class='tr'>detroit-vclog(5)</li>
69
+ </ol>
70
+
71
+ <h2 id="NAME">NAME</h2>
72
+ <p class="man-name">
73
+ <code>detroit-vclog</code> - <span class="man-whatis">generate changelogs using vclog for detroit</span>
74
+ </p>
75
+
76
+ <h2 id="DESCRIPTION">DESCRIPTION</h2>
77
+
78
+ <p>The VcLog plug-in for Detroit utilize the <code>vclog</code> command line tool
79
+ to generate nicely formated changelogs and/or history documents.</p>
80
+
81
+ <h2 id="OPTIONS">OPTIONS</h2>
82
+
83
+ <p>The following options can be used in the Detroit assembly file
84
+ for defining a vclog service.</p>
85
+
86
+ <ul>
87
+ <li><p><code>output</code> - Output is either a file name with a clear extension to infer
88
+ the file format, or a list of such file names, or a hash mapping file name
89
+ to file format. Recognized formats include <code>html</code>, <code>xml</code>, <code>atom</code>, <code>rss</code>,
90
+ <code>json</code>, <code>yaml</code>, <code>rdoc</code>, <code>markdown</code> and <code>md</code>, <code>ansi</code>, <code>gnu</code> and <code>txt</code>.
91
+ See EXAMPLES below.</p></li>
92
+ <li><p><code>level</code> - Minimum change level to include. VCLog categorizes commits
93
+ by level. This setting filters commits with a level lower than the
94
+ figure given.</p></li>
95
+ <li><p><code>rev</code> - Show revision numbers. Default is <code>false</code>.</p></li>
96
+ <li><p><code>summary</code> - Show reduced detail. Default is <code>false</code>.</p></li>
97
+ <li><p><code>title</code> - Some formats, such as +rdoc+, use a title field.
98
+ Defaults to project title from project metadata.</p></li>
99
+ <li><p><code>version</code> - The current version of the project. The default is extracted
100
+ from project metadata.</p></li>
101
+ <li><p><code>type</code> - Changelog layout type can be either <code>changelog</code> or <code>history</code>.
102
+ If type is not given explicitly it will be infered from the name of
103
+ the output file. Otherwise if defaults to +changelog+.</p></li>
104
+ <li><p><code>style</code> - Use external stylesheet. Some formats, namely <code>xml</code> and <code>html</code>,
105
+ can use a stylesheet. Give the location of this file reltive to the output.</p></li>
106
+ </ul>
107
+
108
+
109
+ <h2 id="Examples-">Examples:</h2>
110
+
111
+ <p>The simplist entry is</p>
112
+
113
+ <pre><code>vclog:
114
+ output: HISTORY.rdoc
115
+ </code></pre>
116
+
117
+ <p>To produce multiple formats use a list.</p>
118
+
119
+ <pre><code>vclog:
120
+ output:
121
+ - log/CHANGES.md
122
+ - log/HISTORY.md
123
+ </code></pre>
124
+
125
+ <p>If the extension is atypical use a mapping.</p>
126
+
127
+ <pre><code> vclog:
128
+ output:
129
+ HISTORY: markdown
130
+ site/history.html: html
131
+ </code></pre>
132
+
133
+ <p>A fuller example might look something like this.</p>
134
+
135
+ <pre><code> vclog:
136
+ rev: true
137
+ level: -2
138
+ output:
139
+ - HISTORY.rdoc
140
+ - CHANGELOG.rdoc
141
+ - site/HISTORY.html
142
+ </code></pre>
143
+
144
+ <h2 id="RESOURCES">RESOURCES</h2>
145
+
146
+ <p>For more information:</p>
147
+
148
+ <ul>
149
+ <li><p><a href="http://rubydoc.info/gems/detroit-vclog">API Documentation</a></p></li>
150
+ <li><p><a href="http://github.com/detroit/detroit-vclog">Development Site</a></p></li>
151
+ </ul>
152
+
153
+
154
+ <h2 id="COPYRIGHT">COPYRIGHT</h2>
155
+
156
+ <p>Copyright (c) 2010 Thomas Sawyer, Rubyworks</p>
157
+
158
+ <p>Detroit VCLog is distributable in accordance with the GPL v.3 license.</p>
159
+
160
+ <h2 id="SEE-ALSO">SEE ALSO</h2>
161
+
162
+ <p><span class="man-ref">detroit<span class="s">(1)</span></span>, <span class="man-ref">vclog<span class="s">(1)</span></span></p>
163
+
164
+
165
+ <ol class='man-decor man-foot man foot'>
166
+ <li class='tl'></li>
167
+ <li class='tc'>October 2011</li>
168
+ <li class='tr'>detroit-vclog(5)</li>
169
+ </ol>
170
+
171
+ </div>
172
+ </body>
173
+ </html>
@@ -0,0 +1,93 @@
1
+ detroit-vclog(5) - generate changelogs using vclog for detroit
2
+ ==============================================================
3
+
4
+ ## DESCRIPTION
5
+
6
+ The VCLog plug-in for Detroit utilize the `vclog` command line tool
7
+ to generate nicely formatted changelogs and/or history documents.
8
+
9
+
10
+ ## OPTIONS
11
+
12
+ The following options can be used in the Detroit assembly file
13
+ for defining a vclog service.
14
+
15
+ * `output` - Output is either a file name with a clear extension to infer
16
+ the file format, or a list of such file names, or a hash mapping file name
17
+ to file format. Recognized formats include `html`, `xml`, `atom`, `rss`,
18
+ `json`, `yaml`, `rdoc`, `markdown` and `md`, `ansi`, `gnu` and `txt`.
19
+ See EXAMPLES below.
20
+
21
+ * `level` - Minimum change level to include. VCLog categorizes commits
22
+ by level. This setting filters commits with a level lower than the
23
+ figure given.
24
+
25
+ * `rev` - Show revision numbers. Default is `false`.
26
+
27
+ * `summary` - Show reduced detail. Default is `false`.
28
+
29
+ * `title` - Some formats, such as +rdoc+, use a title field.
30
+ Defaults to project title from project metadata.
31
+
32
+ * `version` - The current version of the project. The default is extracted
33
+ from project metadata.
34
+
35
+ * `type` - Changelog layout type can be either `changelog` or `history`.
36
+ If type is not given explicitly it will be inferred from the name of
37
+ the output file. Otherwise if defaults to +changelog+.
38
+
39
+ * `style` - Use external stylesheet. Some formats, namely `xml` and `html`,
40
+ can use a stylesheet. Give the location of this file relative to the output.
41
+
42
+
43
+ ## Examples:
44
+
45
+ The simplest entry is
46
+
47
+ vclog:
48
+ output: HISTORY.rdoc
49
+
50
+ To produce multiple formats use a list.
51
+
52
+ vclog:
53
+ output:
54
+ - log/CHANGES.md
55
+ - log/HISTORY.md
56
+
57
+ If the extension is atypical use a mapping.
58
+
59
+ vclog:
60
+ output:
61
+ HISTORY: markdown
62
+ site/history.html: html
63
+
64
+ A fuller example might look something like this.
65
+
66
+ vclog:
67
+ rev: true
68
+ level: -2
69
+ output:
70
+ - HISTORY.rdoc
71
+ - CHANGELOG.rdoc
72
+ - site/HISTORY.html
73
+
74
+
75
+ ## RESOURCES
76
+
77
+ For more information:
78
+
79
+ * [API Documentation](http://rubydoc.info/gems/detroit-vclog)
80
+
81
+ * [Development Site](http://github.com/detroit/detroit-vclog)
82
+
83
+
84
+ ## COPYRIGHT
85
+
86
+ Copyright (c) 2010 Thomas Sawyer, Rubyworks
87
+
88
+ Detroit VCLog is distributable in accordance with the GPL v.3 license.
89
+
90
+
91
+ ## SEE ALSO
92
+
93
+ detroit(1), vclog(1)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: detroit-vclog
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,22 +9,22 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-10-19 00:00:00.000000000 Z
12
+ date: 2012-04-02 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: detroit
16
- requirement: &13194740 !ruby/object:Gem::Requirement
16
+ requirement: &19249580 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
- version: '0'
21
+ version: 0.3.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *13194740
24
+ version_requirements: *19249580
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: vclog
27
- requirement: &13189880 !ruby/object:Gem::Requirement
27
+ requirement: &19249100 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,7 +32,7 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *13189880
35
+ version_requirements: *19249100
36
36
  description: VCLog plugin for Detroit build system. This plugin generates changelog
37
37
  and/or history documents for a project during the document phase.
38
38
  email:
@@ -40,16 +40,21 @@ email:
40
40
  executables: []
41
41
  extensions: []
42
42
  extra_rdoc_files:
43
- - GPL3.txt
43
+ - LICENSE.txt
44
44
  - README.rdoc
45
45
  - COPYING.rdoc
46
46
  files:
47
47
  - .ruby
48
+ - lib/detroit-vclog.rb
49
+ - man/detroit-vclog.5
50
+ - man/detroit-vclog.5.html
51
+ - man/detroit-vclog.5.ronn
52
+ - LICENSE.txt
48
53
  - README.rdoc
49
- - GPL3.txt
50
54
  - COPYING.rdoc
51
55
  homepage: http://detroit.github.com/
52
- licenses: []
56
+ licenses:
57
+ - GPL-3
53
58
  post_install_message:
54
59
  rdoc_options: []
55
60
  require_paths:
@@ -68,7 +73,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
68
73
  version: '0'
69
74
  requirements: []
70
75
  rubyforge_project:
71
- rubygems_version: 1.8.5
76
+ rubygems_version: 1.8.11
72
77
  signing_key:
73
78
  specification_version: 3
74
79
  summary: VCLog plugin for Detroit