inochi 2.0.1 → 3.0.0
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/CREDITS +8 -4
- data/lib/inochi/inochi.rb +8 -16
- data/lib/inochi/tasks/2-api.rake +1 -1
- data/lib/inochi/tasks/3-man.rake +3 -3
- data/lib/inochi/tasks/4-ann.rake +3 -4
- data/lib/inochi/tasks/6-pub.rake +4 -4
- data/lib/inochi/templates/CREDITS.rbs +11 -2
- data/lib/inochi/templates/README.rbs +0 -4
- data/lib/inochi/templates/inochi.rb.rbs +6 -15
- data/lib/inochi/templates/test_helper.rb.rbs +1 -1
- data/man.html +89 -82
- data/man/man1/inochi.1.gz +0 -0
- metadata +35 -18
data/CREDITS
CHANGED
@@ -1,12 +1,16 @@
|
|
1
|
+
%#----------------------------------------------------------------------------
|
2
|
+
## AUTHORS
|
3
|
+
%#----------------------------------------------------------------------------
|
4
|
+
|
5
|
+
Suraj N. Kurapati
|
6
|
+
|
1
7
|
%#----------------------------------------------------------------------------
|
2
8
|
## CREDITS
|
3
9
|
%#----------------------------------------------------------------------------
|
4
10
|
|
5
|
-
|
6
|
-
Peileppe Production
|
7
|
-
Florian Gilcher
|
11
|
+
Florian Gilcher,
|
12
|
+
Peileppe Production
|
8
13
|
|
9
|
-
### Logo
|
10
14
|
%< "logo/README"
|
11
15
|
|
12
16
|
%#----------------------------------------------------------------------------
|
data/lib/inochi/inochi.rb
CHANGED
@@ -18,12 +18,12 @@ module Inochi
|
|
18
18
|
##
|
19
19
|
# Number of this release of this project.
|
20
20
|
#
|
21
|
-
VERSION = '
|
21
|
+
VERSION = '3.0.0'
|
22
22
|
|
23
23
|
##
|
24
24
|
# Date of this release of this project.
|
25
25
|
#
|
26
|
-
RELDATE = '2010-04-
|
26
|
+
RELDATE = '2010-04-27'
|
27
27
|
|
28
28
|
##
|
29
29
|
# Description of this release of this project.
|
@@ -55,6 +55,7 @@ module Inochi
|
|
55
55
|
# }
|
56
56
|
#
|
57
57
|
RUNTIME = {
|
58
|
+
'ember' => [ '>= 0.3.0' , '< 1' ], # for eRuby templates
|
58
59
|
'highline' => [ '>= 1.5' , '< 2' ], # for echoless password entry
|
59
60
|
'mechanize' => [ '~> 1' ], # for publishing announcements
|
60
61
|
'nokogiri' => [ '>= 1.4' , '< 2' ], # for parsing HTML and XML
|
@@ -84,26 +85,17 @@ module Inochi
|
|
84
85
|
'dfect' => [ '>= 1.1.0', '< 2' ], # for unit testing
|
85
86
|
}
|
86
87
|
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
#
|
92
|
-
def self.require gem_name_or_library
|
93
|
-
# prepare the correct version of the gem for loading
|
94
|
-
if respond_to? :gem
|
95
|
-
gem_name = gem_name_or_library.to_s.sub(%r{/.*$}, '')
|
96
|
-
if gem_version = RUNTIME[gem_name] || DEVTIME[gem_name]
|
88
|
+
# establish gem version dependencies
|
89
|
+
if respond_to? :gem
|
90
|
+
[RUNTIME, DEVTIME].each do |deps|
|
91
|
+
deps.each do |gem_name, gem_version|
|
97
92
|
begin
|
98
|
-
gem gem_name, *gem_version
|
93
|
+
gem gem_name, *Array(gem_version)
|
99
94
|
rescue LoadError => error
|
100
95
|
warn "#{self.inspect}: #{error}"
|
101
96
|
end
|
102
97
|
end
|
103
98
|
end
|
104
|
-
|
105
|
-
# do the loading
|
106
|
-
super
|
107
99
|
end
|
108
100
|
|
109
101
|
end
|
data/lib/inochi/tasks/2-api.rake
CHANGED
@@ -7,7 +7,7 @@ task :api => @api_dst
|
|
7
7
|
file @api_dst => FileList['lib/**/*.rb'].include('LICENSE') do
|
8
8
|
inner_task_name = 'api:yard'
|
9
9
|
|
10
|
-
|
10
|
+
require 'yard'
|
11
11
|
require 'yard/rake/yardoc_task'
|
12
12
|
YARD::Rake::YardocTask.new(inner_task_name) do |yardoc|
|
13
13
|
yardoc.options = [
|
data/lib/inochi/tasks/3-man.rake
CHANGED
@@ -43,7 +43,7 @@ task :@man_doc => @man_src do
|
|
43
43
|
:infer_end => true,
|
44
44
|
}
|
45
45
|
|
46
|
-
|
46
|
+
require 'ember'
|
47
47
|
ronn_input = Ember::Template.new(ember_input, ember_opts).render
|
48
48
|
File.write @man_ronn_dst, ronn_input # for debugging / sanity check
|
49
49
|
|
@@ -55,7 +55,7 @@ task :@man_doc => @man_src do
|
|
55
55
|
}
|
56
56
|
ronn_file = "#{@project_package_name}.1.ronn"
|
57
57
|
|
58
|
-
|
58
|
+
require 'ronn'
|
59
59
|
@man_doc = Ronn::Document.new(ronn_file, ronn_opts) { ronn_input }
|
60
60
|
end
|
61
61
|
end
|
@@ -71,7 +71,7 @@ task :@man_html_dom do
|
|
71
71
|
unless @man_html_dom
|
72
72
|
Rake::Task[:@man_html].invoke
|
73
73
|
|
74
|
-
|
74
|
+
require 'nokogiri'
|
75
75
|
@man_html_dom = Nokogiri::HTML(@man_html)
|
76
76
|
end
|
77
77
|
end
|
data/lib/inochi/tasks/4-ann.rake
CHANGED
@@ -17,7 +17,7 @@ end
|
|
17
17
|
task :@ann_nfo_html_nodes do
|
18
18
|
unless @ann_nfo_html_nodes
|
19
19
|
begin
|
20
|
-
head, body = fetch_nodes_between('h2#
|
20
|
+
head, body = fetch_nodes_between('h2#NAME ~ p', 'h1,h2,h3,h4,h5,h6')
|
21
21
|
rescue => error
|
22
22
|
error.message.insert 0,
|
23
23
|
"The manual lacks a <H2> ABOUT heading.\n"
|
@@ -55,11 +55,10 @@ end
|
|
55
55
|
task :@project_authors_html_nodes do
|
56
56
|
unless @project_authors_html_nodes
|
57
57
|
begin
|
58
|
-
head, body = fetch_nodes_between('h2#AUTHORS,h2
|
59
|
-
'h1,h2,h3,h4,h5,h6')
|
58
|
+
head, body = fetch_nodes_between('h2#AUTHORS', 'h1,h2,h3,h4,h5,h6')
|
60
59
|
rescue => error
|
61
60
|
error.message.insert 0,
|
62
|
-
"The manual lacks content under a <H2> AUTHORS
|
61
|
+
"The manual lacks content under a <H2> AUTHORS heading.\n"
|
63
62
|
raise error
|
64
63
|
end
|
65
64
|
|
data/lib/inochi/tasks/6-pub.rake
CHANGED
@@ -40,7 +40,7 @@ desc 'Announce release on ruby-talk mailing list.'
|
|
40
40
|
task 'pub:ann:ruby-talk' do
|
41
41
|
site = 'http://ruby-forum.com'
|
42
42
|
|
43
|
-
|
43
|
+
require 'mechanize'
|
44
44
|
browser = Mechanize.new
|
45
45
|
|
46
46
|
# fetch login form
|
@@ -49,7 +49,7 @@ task 'pub:ann:ruby-talk' do
|
|
49
49
|
raise "cannot find login form on Web page: #{page.uri}"
|
50
50
|
|
51
51
|
# fill login information
|
52
|
-
|
52
|
+
require 'highline'
|
53
53
|
highline = HighLine.new
|
54
54
|
|
55
55
|
form['name'] = highline.ask("#{site} username: ")
|
@@ -92,7 +92,7 @@ task 'pub:ann:raa' do
|
|
92
92
|
Rake::Task[:@project].invoke
|
93
93
|
project = @project_package_name
|
94
94
|
|
95
|
-
|
95
|
+
require 'mechanize'
|
96
96
|
browser = Mechanize.new
|
97
97
|
|
98
98
|
# fetch project information form
|
@@ -111,7 +111,7 @@ task 'pub:ann:raa' do
|
|
111
111
|
form['url'] = @project_module::WEBSITE
|
112
112
|
|
113
113
|
# fill login information
|
114
|
-
|
114
|
+
require 'highline'
|
115
115
|
highline = HighLine.new
|
116
116
|
|
117
117
|
prompt = '%s password for %s project and %s owner: ' %
|
@@ -1,10 +1,19 @@
|
|
1
|
+
%#----------------------------------------------------------------------------
|
2
|
+
## AUTHORS
|
3
|
+
%#----------------------------------------------------------------------------
|
4
|
+
|
5
|
+
> TODO: attribute yourself, your predecessors, and substantial contributors
|
6
|
+
|
7
|
+
Predecessor name,
|
8
|
+
Your name,
|
9
|
+
Substantial contributor name
|
10
|
+
|
1
11
|
%#----------------------------------------------------------------------------
|
2
12
|
## CREDITS
|
3
13
|
%#----------------------------------------------------------------------------
|
4
14
|
|
5
|
-
> TODO: attribute
|
15
|
+
> TODO: attribute everyone else who has contributed to this project
|
6
16
|
|
7
|
-
Your Name,
|
8
17
|
Contributor name,
|
9
18
|
[Contributor name](http://the.contributor.url),
|
10
19
|
Another contributor <contributor@email.address>,
|
@@ -1,7 +1,3 @@
|
|
1
|
-
%#----------------------------------------------------------------------------
|
2
|
-
## ABOUT
|
3
|
-
%#----------------------------------------------------------------------------
|
4
|
-
|
5
1
|
#{project_name} is a TODO that TODO.
|
6
2
|
|
7
3
|
%#----------------------------------------------------------------------------
|
@@ -74,29 +74,20 @@ module #{library_name}
|
|
74
74
|
# }
|
75
75
|
#
|
76
76
|
DEVTIME = {
|
77
|
-
"inochi" => [ "
|
77
|
+
"inochi" => [ ">= #{Inochi::VERSION}", "< #{Inochi::VERSION.to_i.next}" ],
|
78
78
|
}
|
79
79
|
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
#
|
85
|
-
def self.require gem_name_or_library
|
86
|
-
# prepare the correct version of the gem for loading
|
87
|
-
if respond_to? :gem
|
88
|
-
gem_name = gem_name_or_library.to_s.sub(%r{/.*$}, '')
|
89
|
-
if gem_version = RUNTIME[gem_name] || DEVTIME[gem_name]
|
80
|
+
# establish gem version dependencies
|
81
|
+
if respond_to? :gem
|
82
|
+
[RUNTIME, DEVTIME].each do |deps|
|
83
|
+
deps.each do |gem_name, gem_version|
|
90
84
|
begin
|
91
|
-
gem gem_name, *gem_version
|
85
|
+
gem gem_name, *Array(gem_version)
|
92
86
|
rescue LoadError => error
|
93
87
|
warn "\#{self.inspect}: \#{error}"
|
94
88
|
end
|
95
89
|
end
|
96
90
|
end
|
97
|
-
|
98
|
-
# do the loading
|
99
|
-
super
|
100
91
|
end
|
101
92
|
|
102
93
|
end
|
data/man.html
CHANGED
@@ -73,22 +73,20 @@
|
|
73
73
|
<body>
|
74
74
|
<div id='man'>
|
75
75
|
|
76
|
-
<div class='man-navigation'><a href='#NAME'>NAME</a> <a href='#
|
76
|
+
<div class='man-navigation'><a href='#NAME'>NAME</a> <a href='#SYNOPSIS'>SYNOPSIS</a> <a href='#DESCRIPTION'>DESCRIPTION</a> <a href='#OPTIONS'>OPTIONS</a> <a href='#TASKS'>TASKS</a> <a href='#PROJECTS'>PROJECTS</a> <a href='#TUTORIAL'>TUTORIAL</a> <a href='#HACKING'>HACKING</a> <a href='#VERSIONS'>VERSIONS</a> <a href='#AUTHORS'>AUTHORS</a> <a href='#CREDITS'>CREDITS</a> <a href='#LICENSE'>LICENSE</a> <a href='#SEE-ALSO'>SEE ALSO</a></div>
|
77
77
|
|
78
78
|
<h1 class='man-title'>inochi(1)</h1>
|
79
79
|
|
80
80
|
<ol class='head man'>
|
81
81
|
<li class='tl'>inochi(1)</li>
|
82
|
-
<li class='tc'>Version
|
82
|
+
<li class='tc'>Version 3.0.0</li>
|
83
83
|
<li class='tr'>inochi(1)</li>
|
84
84
|
</ol>
|
85
85
|
|
86
86
|
<h2 id='NAME'>NAME</h2>
|
87
87
|
<p><code>inochi</code> - Gives life to Ruby projects</p>
|
88
88
|
|
89
|
-
<p><img src="logo/inochi.png" alt="
|
90
|
-
|
91
|
-
<h2 id="ABOUT">ABOUT</h2>
|
89
|
+
<p><img src="logo/inochi.png" alt="" /></p>
|
92
90
|
|
93
91
|
<p>Inochi is an infrastructure for Ruby projects that helps you test, document,
|
94
92
|
package, publish, and announce your projects. It encourages <em>great</em>
|
@@ -145,10 +143,25 @@ documentation and reduces project administrivia.</p>
|
|
145
143
|
|
146
144
|
<p><code>inochi</code> [<var>OPTIONS</var>] <var>TASK</var> [<var>RAKE_OPTIONS</var>]</p>
|
147
145
|
|
146
|
+
<p><code>inochi init</code> project=<var>PROJECT</var> [package=<var>PACKAGE</var>] [merger=<var>MERGER</var>]</p>
|
147
|
+
|
148
148
|
<h2 id="DESCRIPTION">DESCRIPTION</h2>
|
149
149
|
|
150
|
-
<p>Runs <var>TASK</var>
|
151
|
-
|
150
|
+
<p>Runs the given <var>TASK</var> (see <strong>TASKS</strong> below) while passing the given
|
151
|
+
<var>RAKE_OPTIONS</var> to rake(1).</p>
|
152
|
+
|
153
|
+
<h2 id="OPTIONS">OPTIONS</h2>
|
154
|
+
|
155
|
+
<dl>
|
156
|
+
<dt><code>-h</code>, <code>--help</code></dt><dd><p>Display this manual and exit.</p></dd>
|
157
|
+
<dt><code>-v</code>, <code>--version</code></dt><dd><p>Print version number and exit.</p></dd>
|
158
|
+
</dl>
|
159
|
+
|
160
|
+
|
161
|
+
<h2 id="TASKS">TASKS</h2>
|
162
|
+
|
163
|
+
<p>The following tasks are available for running. Some of them are explained in
|
164
|
+
more detail below.</p>
|
152
165
|
|
153
166
|
<dl>
|
154
167
|
<dt class="flush"><strong>ann</strong></dt><dd>Build all release announcements.</dd>
|
@@ -170,50 +183,29 @@ are passed. The following tasks are available for running:</p>
|
|
170
183
|
</dl>
|
171
184
|
|
172
185
|
|
173
|
-
<
|
174
|
-
|
175
|
-
<dl>
|
176
|
-
<dt><code>-h</code>, <code>--help</code></dt><dd><p>Display this manual and exit.</p></dd>
|
177
|
-
<dt><code>-v</code>, <code>--version</code></dt><dd><p>Print version number and exit.</p></dd>
|
178
|
-
</dl>
|
179
|
-
|
180
|
-
|
181
|
-
<h2 id="inochi-init">inochi init</h2>
|
186
|
+
<h3 id="inochi-init">inochi init</h3>
|
182
187
|
|
183
|
-
<p>
|
184
|
-
|
185
|
-
<h3 id="SYNOPSIS">SYNOPSIS</h3>
|
188
|
+
<p>Installs the Inochi infrastructure for the project (see <strong>PROJECTS</strong> below) in
|
189
|
+
the current working directory or upgrades a previous installation thereof.</p>
|
186
190
|
|
187
191
|
<p><code>inochi</code> init <code>project</code>=<var>PROJECT</var> [<code>package</code>=<var>PACKAGE</var>] [<code>merger</code>=<var>MERGER</var>]</p>
|
188
192
|
|
189
|
-
<
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
<p>Pre-existing files are not overwritten. Instead, it is your responsibility to
|
196
|
-
merge changes (hopefully with the aid of an automated text merging tool; see
|
197
|
-
<var>MERGER</var> below) between pre-existing and newly generated files.</p>
|
198
|
-
|
199
|
-
<h3 id="PARAMETERS">PARAMETERS</h3>
|
200
|
-
|
201
|
-
<ul>
|
202
|
-
<li><p><var>PROJECT</var>:
|
203
|
-
Name of the project. This will be normalized into the name of a Ruby
|
204
|
-
module that will serve as a namespace for all code in the project.</p></li>
|
205
|
-
<li><p><var>PACKAGE</var>:
|
206
|
-
Name of the project's package directory, shell command, and basename of the
|
207
|
-
project library file.</p></li>
|
208
|
-
<li><p><var>MERGER</var>:
|
209
|
-
Command that invokes a text merging tool with three arguments: (1) old file,
|
193
|
+
<dl>
|
194
|
+
<dt class="flush"><var>PROJECT</var></dt><dd><p>Name of the project. This will be normalized into the name of a Ruby
|
195
|
+
module that will serve as a namespace for all code in the project.</p></dd>
|
196
|
+
<dt class="flush"><var>PACKAGE</var></dt><dd><p>Name of the project's package directory, shell command, and basename of the
|
197
|
+
project library file.</p></dd>
|
198
|
+
<dt class="flush"><var>MERGER</var></dt><dd><p>Command that invokes a text merging tool with three arguments: (1) old file,
|
210
199
|
(2) new file, (3) output file. The command should direct the result of
|
211
200
|
merging the old file and the new file to the output file. In addition, the
|
212
|
-
command <em>must not</em> modify the old file or the new file.</p>
|
201
|
+
command <em>must not</em> modify the old file or the new file.</p></dd>
|
202
|
+
</dl>
|
203
|
+
|
213
204
|
|
214
|
-
<p
|
215
|
-
between
|
216
|
-
<a href="http://
|
205
|
+
<p>Pre-existing files are not overwritten. Instead, it is your responsibility to
|
206
|
+
merge changes between pre-existing and newly generated files. You can do this
|
207
|
+
with the aid of an automated text merging tool such as <a href="http://meld.sourceforge.net">meld</a>, <a href="http://tkdiff.sourceforge.net">tkdiff</a>, or
|
208
|
+
<a href="http://kdiff3.sourceforge.net">kdiff3</a> by following these steps:</p>
|
217
209
|
|
218
210
|
<ol>
|
219
211
|
<li><p>Create a file named <code>merge2</code> containing the following text:</p>
|
@@ -221,8 +213,8 @@ between files semi-automatically using a text merging tool such as <a href="http
|
|
221
213
|
<pre><code>#!/bin/sh
|
222
214
|
old=$1; new=$2; out=$3;
|
223
215
|
# meld "$new" "$out" # use meld
|
224
|
-
# kdiff3 --merge "$old" "$new" --output "$out" # use kdiff3
|
225
216
|
# tkdiff "$old" "$new" -o "$out" # use tkdiff
|
217
|
+
# kdiff3 --merge "$old" "$new" --output "$out" # use kdiff3
|
226
218
|
</code></pre></li>
|
227
219
|
<li><p>Uncomment the line corresponding to the tool you wish to use.</p></li>
|
228
220
|
<li><p>Make the file executable:</p>
|
@@ -239,29 +231,14 @@ old=$1; new=$2; out=$3;
|
|
239
231
|
<p>Now your chosen text merging tool will be launched to help you transfer your
|
240
232
|
changes. When you are finished, save the merged file and exit the merging
|
241
233
|
tool. If you do not want to transfer any changes, then simply exit the
|
242
|
-
merging tool <em>without saving</em> any changes to the merged file!</p
|
243
|
-
</ul>
|
244
|
-
|
245
|
-
|
246
|
-
<h3 id="NOTIFICATIONS">NOTIFICATIONS</h3>
|
247
|
-
|
248
|
-
<dl>
|
249
|
-
<dt>create <var>FILE</var></dt><dd><p>A file is being created because it does not exist.</p></dd>
|
250
|
-
<dt>skip <var>FILE</var></dt><dd><p>A file is being skipped because it is already up to date.</p></dd>
|
251
|
-
<dt>update <var>FILE</var></dt><dd><p>A file is being updated because it is out of date. A text merging tool
|
252
|
-
(see the <strong>merger</strong> parameter above) will be launched to transfer content
|
253
|
-
from the old file (*.old) and the new file (*.new) to the out of date
|
254
|
-
file. If a text merging tool is not specified, then you will have to do
|
255
|
-
the merging by hand.</p></dd>
|
256
|
-
</dl>
|
257
|
-
|
234
|
+
merging tool <em>without saving</em> any changes to the merged file!</p>
|
258
235
|
|
259
|
-
<
|
236
|
+
<h3 id="inochi-api">inochi api</h3>
|
260
237
|
|
261
238
|
<p>Builds API documentation for the project's Ruby library using <a href="http://yardoc.org/more">YARD</a>. Ruby
|
262
239
|
constructs marked with <code>@private</code> are omitted from the API documentation.</p>
|
263
240
|
|
264
|
-
<
|
241
|
+
<h3 id="inochi-man">inochi man</h3>
|
265
242
|
|
266
243
|
<p>Renders the help manual's source files (see <strong>Help manual</strong> below) into:</p>
|
267
244
|
|
@@ -272,7 +249,7 @@ constructs marked with <code>@private</code> are omitted from the API documentat
|
|
272
249
|
</dl>
|
273
250
|
|
274
251
|
|
275
|
-
<
|
252
|
+
<h3 id="inochi-gem">inochi gem</h3>
|
276
253
|
|
277
254
|
<p>Builds a release package in RubyGems format (plainly known as a <strong>gem</strong>):</p>
|
278
255
|
|
@@ -288,8 +265,8 @@ Ruby library and help manual. In particular:</p>
|
|
288
265
|
<dl>
|
289
266
|
<dt>gem.description</dt><dd><p>Plain text version of all content between the <strong>ABOUT</strong> heading and any
|
290
267
|
subsequent heading.</p></dd>
|
291
|
-
<dt>gem.authors</dt><dd><p>Plain text version of all content between the <strong>AUTHORS</strong>
|
292
|
-
|
268
|
+
<dt>gem.authors</dt><dd><p>Plain text version of all content between the <strong>AUTHORS</strong> heading and any
|
269
|
+
subsequent heading.</p></dd>
|
293
270
|
<dt>gem.files</dt><dd><p>Only contains the project's <code>LICENSE</code> and <code>CREDITS</code> files, rendered help
|
294
271
|
manual, Ruby library, shell command, and C extension.</p>
|
295
272
|
|
@@ -302,7 +279,7 @@ needed during development.</p></dd>
|
|
302
279
|
<p>The gem specification can be further customized through the <code>:gem_spec_logic</code>
|
303
280
|
parameter defined in the project's options file (see <strong>Options file</strong> below).</p>
|
304
281
|
|
305
|
-
<
|
282
|
+
<h3 id="inochi-ann">inochi ann</h3>
|
306
283
|
|
307
284
|
<p>Builds release announcements which can be edited by hand before publishing:</p>
|
308
285
|
|
@@ -314,7 +291,7 @@ version by <a href="http://lynx.isc.org">Lynx</a>.</p></dd>
|
|
314
291
|
</dl>
|
315
292
|
|
316
293
|
|
317
|
-
<
|
294
|
+
<h3 id="inochi-pub-ann-ruby-talk">inochi pub:ann:ruby-talk</h3>
|
318
295
|
|
319
296
|
<p>Announces the release on the <a href="http://www.ruby-lang.org/en/community/mailing-lists/">ruby-talk</a> mailing list.</p>
|
320
297
|
|
@@ -323,7 +300,7 @@ hand</em> before running this command because (1) the body of that file is
|
|
323
300
|
published directly as the announcement message and (2) HTML to plain text
|
324
301
|
conversion is not perfect.</p>
|
325
302
|
|
326
|
-
<
|
303
|
+
<h3 id="inochi-pub-web">inochi pub:web</h3>
|
327
304
|
|
328
305
|
<p>Publishes the help manual, API documentation, and RSS feed to project website
|
329
306
|
using rsync(1) according to the :pub_web_* parameters defined in the
|
@@ -387,9 +364,10 @@ of the project directory.</p>
|
|
387
364
|
<dt>lib/<var>PACKAGE</var>.rb</dt><dd><p>Defines the project's namespace (Ruby module or class) and registers
|
388
365
|
sub-libraries to be automatically loaded on demand (Kernel#autoload).</p></dd>
|
389
366
|
<dt>lib/<var>PACKAGE</var>/inochi.rb</dt><dd><p>Defines project information in Ruby constants within the project's namespace
|
390
|
-
(Ruby module or class)
|
391
|
-
project
|
392
|
-
|
367
|
+
(Ruby module or class) and establishes version constraints for gems this
|
368
|
+
project depends on if RubyGems is available in the user's environment.
|
369
|
+
Unsatisfied constraints are simply printed to the standard error stream;
|
370
|
+
they do not raise a <code>Gem::LoadError</code> exception.</p></dd>
|
393
371
|
</dl>
|
394
372
|
|
395
373
|
|
@@ -462,8 +440,7 @@ source file.</p>
|
|
462
440
|
|
463
441
|
<h2 id="TUTORIAL">TUTORIAL</h2>
|
464
442
|
|
465
|
-
<p>This section shows
|
466
|
-
WordCount project throughout the various stages of its life.</p>
|
443
|
+
<p>This section shows Inochi is used to create a simple WordCount project.</p>
|
467
444
|
|
468
445
|
<h3 id="Creating-a-new-project">Creating a new project</h3>
|
469
446
|
|
@@ -472,7 +449,7 @@ WordCount project throughout the various stages of its life.</p>
|
|
472
449
|
<pre><code>mkdir word_count
|
473
450
|
</code></pre>
|
474
451
|
|
475
|
-
<p>Instill Inochi into the
|
452
|
+
<p>Instill Inochi into the directory:</p>
|
476
453
|
|
477
454
|
<pre><code>cd word_count
|
478
455
|
inochi init project=WordCount
|
@@ -480,7 +457,7 @@ inochi init project=WordCount
|
|
480
457
|
|
481
458
|
<p>Review pending work marked as "TODO":</p>
|
482
459
|
|
483
|
-
<pre><code>
|
460
|
+
<pre><code>grep TODO -R .
|
484
461
|
</code></pre>
|
485
462
|
|
486
463
|
<h3 id="Running-the-shell-command">Running the shell command</h3>
|
@@ -668,6 +645,35 @@ in the <code>test/test_helper.rb</code> file.</p>
|
|
668
645
|
|
669
646
|
<p>This section contains release notes of current and past releases.</p>
|
670
647
|
|
648
|
+
<h3 id="Version-3-0-0-2010-04-27-">Version 3.0.0 (2010-04-27)</h3>
|
649
|
+
|
650
|
+
<p>Incompatible changes:</p>
|
651
|
+
|
652
|
+
<ul>
|
653
|
+
<li><p>The <code>require()</code> class method is no longer emitted on your project's
|
654
|
+
namespace. Instead, gem version constraints are established up front when
|
655
|
+
your project's Ruby library is first loaded.</p></li>
|
656
|
+
<li><p>Author names are now fetched from the AUTHORS section, not CREDITS.</p></li>
|
657
|
+
<li><p>Project information is now placed in the NAME section, not ABOUT.</p></li>
|
658
|
+
</ul>
|
659
|
+
|
660
|
+
|
661
|
+
<p>Bug fixes:</p>
|
662
|
+
|
663
|
+
<ul>
|
664
|
+
<li><p>Reflect current Inochi version in gem constraint.</p></li>
|
665
|
+
<li><p>Forgot to list Ember as a runtime gem dependency.</p></li>
|
666
|
+
</ul>
|
667
|
+
|
668
|
+
|
669
|
+
<p>Housekeeping:</p>
|
670
|
+
|
671
|
+
<ul>
|
672
|
+
<li><p>Move all task documentation into new <strong>TASKS</strong> section.</p></li>
|
673
|
+
<li><p>Move TASKS & PROJECTS information into separate files.</p></li>
|
674
|
+
</ul>
|
675
|
+
|
676
|
+
|
671
677
|
<h3 id="Version-2-0-1-2010-04-25-">Version 2.0.1 (2010-04-25)</h3>
|
672
678
|
|
673
679
|
<p>This release fixes some bugs and adds a simple tutorial to the help manual.</p>
|
@@ -1062,13 +1068,14 @@ The "Installing" section has been updated accordingly.</p></li>
|
|
1062
1068
|
|
1063
1069
|
<p>This is the first release of Inochi. Enjoy!</p>
|
1064
1070
|
|
1065
|
-
<h2 id="
|
1071
|
+
<h2 id="AUTHORS">AUTHORS</h2>
|
1072
|
+
|
1073
|
+
<p>Suraj N. Kurapati</p>
|
1066
1074
|
|
1067
|
-
<
|
1068
|
-
Peileppe Production,
|
1069
|
-
Florian Gilcher</p>
|
1075
|
+
<h2 id="CREDITS">CREDITS</h2>
|
1070
1076
|
|
1071
|
-
<
|
1077
|
+
<p>Florian Gilcher,
|
1078
|
+
Peileppe Production</p>
|
1072
1079
|
|
1073
1080
|
<p>The "inochi.png" image and its "inochi.svg" source utilize the
|
1074
1081
|
<a href="http://www.openclipart.org/detail/17456">"3 flowers"</a> graphic, which was created and released into
|
@@ -1078,7 +1085,7 @@ the public domain by <a href="http://www.openclipart.org/user-detail/Peileppe">P
|
|
1078
1085
|
|
1079
1086
|
<p>(the ISC license)</p>
|
1080
1087
|
|
1081
|
-
<p>Copyright 2008 Suraj N. Kurapati <a href="mail&#
|
1088
|
+
<p>Copyright 2008 Suraj N. Kurapati <a href="mailto:sunaku@gmail.com" data-bare-link="true">sunaku@gmail.com</a></p>
|
1082
1089
|
|
1083
1090
|
<p>Permission to use, copy, modify, and/or distribute this software for any
|
1084
1091
|
purpose with or without fee is hereby granted, provided that the above
|
data/man/man1/inochi.1.gz
CHANGED
Binary file
|
metadata
CHANGED
@@ -3,20 +3,18 @@ name: inochi
|
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease: false
|
5
5
|
segments:
|
6
|
-
-
|
6
|
+
- 3
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
version:
|
8
|
+
- 0
|
9
|
+
version: 3.0.0
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Suraj N. Kurapati
|
13
|
-
- Peileppe Production
|
14
|
-
- Florian Gilcher
|
15
13
|
autorequire:
|
16
14
|
bindir: bin
|
17
15
|
cert_chain: []
|
18
16
|
|
19
|
-
date: 2010-04-
|
17
|
+
date: 2010-04-27 00:00:00 -07:00
|
20
18
|
default_executable:
|
21
19
|
dependencies:
|
22
20
|
- !ruby/object:Gem::Dependency
|
@@ -39,9 +37,28 @@ dependencies:
|
|
39
37
|
type: :development
|
40
38
|
version_requirements: *id001
|
41
39
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
40
|
+
name: ember
|
43
41
|
prerelease: false
|
44
42
|
requirement: &id002 !ruby/object:Gem::Requirement
|
43
|
+
requirements:
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
segments:
|
47
|
+
- 0
|
48
|
+
- 3
|
49
|
+
- 0
|
50
|
+
version: 0.3.0
|
51
|
+
- - <
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
segments:
|
54
|
+
- 1
|
55
|
+
version: "1"
|
56
|
+
type: :runtime
|
57
|
+
version_requirements: *id002
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: highline
|
60
|
+
prerelease: false
|
61
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
45
62
|
requirements:
|
46
63
|
- - ">="
|
47
64
|
- !ruby/object:Gem::Version
|
@@ -55,11 +72,11 @@ dependencies:
|
|
55
72
|
- 2
|
56
73
|
version: "2"
|
57
74
|
type: :runtime
|
58
|
-
version_requirements: *
|
75
|
+
version_requirements: *id003
|
59
76
|
- !ruby/object:Gem::Dependency
|
60
77
|
name: mechanize
|
61
78
|
prerelease: false
|
62
|
-
requirement: &
|
79
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
63
80
|
requirements:
|
64
81
|
- - ~>
|
65
82
|
- !ruby/object:Gem::Version
|
@@ -67,11 +84,11 @@ dependencies:
|
|
67
84
|
- 1
|
68
85
|
version: "1"
|
69
86
|
type: :runtime
|
70
|
-
version_requirements: *
|
87
|
+
version_requirements: *id004
|
71
88
|
- !ruby/object:Gem::Dependency
|
72
89
|
name: nokogiri
|
73
90
|
prerelease: false
|
74
|
-
requirement: &
|
91
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
75
92
|
requirements:
|
76
93
|
- - ">="
|
77
94
|
- !ruby/object:Gem::Version
|
@@ -85,11 +102,11 @@ dependencies:
|
|
85
102
|
- 2
|
86
103
|
version: "2"
|
87
104
|
type: :runtime
|
88
|
-
version_requirements: *
|
105
|
+
version_requirements: *id005
|
89
106
|
- !ruby/object:Gem::Dependency
|
90
107
|
name: rake
|
91
108
|
prerelease: false
|
92
|
-
requirement: &
|
109
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
93
110
|
requirements:
|
94
111
|
- - ">="
|
95
112
|
- !ruby/object:Gem::Version
|
@@ -104,11 +121,11 @@ dependencies:
|
|
104
121
|
- 1
|
105
122
|
version: "1"
|
106
123
|
type: :runtime
|
107
|
-
version_requirements: *
|
124
|
+
version_requirements: *id006
|
108
125
|
- !ruby/object:Gem::Dependency
|
109
126
|
name: ronn
|
110
127
|
prerelease: false
|
111
|
-
requirement: &
|
128
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
112
129
|
requirements:
|
113
130
|
- - ">="
|
114
131
|
- !ruby/object:Gem::Version
|
@@ -122,11 +139,11 @@ dependencies:
|
|
122
139
|
- 1
|
123
140
|
version: "1"
|
124
141
|
type: :runtime
|
125
|
-
version_requirements: *
|
142
|
+
version_requirements: *id007
|
126
143
|
- !ruby/object:Gem::Dependency
|
127
144
|
name: yard
|
128
145
|
prerelease: false
|
129
|
-
requirement: &
|
146
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
130
147
|
requirements:
|
131
148
|
- - ">="
|
132
149
|
- !ruby/object:Gem::Version
|
@@ -134,7 +151,7 @@ dependencies:
|
|
134
151
|
- 0
|
135
152
|
version: "0"
|
136
153
|
type: :runtime
|
137
|
-
version_requirements: *
|
154
|
+
version_requirements: *id008
|
138
155
|
description: Inochi is an infrastructure for Ruby projects that helps you test, document, package, publish, and announce your projects. It encourages great documentation and reduces project administrivia.
|
139
156
|
email:
|
140
157
|
executables:
|