inochi 2.0.1 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
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
- Suraj N. Kurapati,
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 = '2.0.1'
21
+ VERSION = '3.0.0'
22
22
 
23
23
  ##
24
24
  # Date of this release of this project.
25
25
  #
26
- RELDATE = '2010-04-25'
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
- # Loads the correct version (as defined by the {RUNTIME} or {DEVTIME}
89
- # constant in this module) of the given gem or the gem that contains
90
- # the given library.
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
@@ -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
- Inochi.require 'yard'
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 = [
@@ -43,7 +43,7 @@ task :@man_doc => @man_src do
43
43
  :infer_end => true,
44
44
  }
45
45
 
46
- Inochi.require 'ember'
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
- Inochi.require 'ronn'
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
- Inochi.require 'nokogiri'
74
+ require 'nokogiri'
75
75
  @man_html_dom = Nokogiri::HTML(@man_html)
76
76
  end
77
77
  end
@@ -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#ABOUT', 'h1,h2,h3,h4,h5,h6')
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#CREDITS',
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 or CREDITS heading.\n"
61
+ "The manual lacks content under a <H2> AUTHORS heading.\n"
63
62
  raise error
64
63
  end
65
64
 
@@ -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
- Inochi.require 'mechanize'
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
- Inochi.require 'highline'
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
- Inochi.require 'mechanize'
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
- Inochi.require 'highline'
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 yourself, your predecessors, and your contributors
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" => [ "~> #{Inochi::VERSION.to_i}" ], # for managing this project
77
+ "inochi" => [ ">= #{Inochi::VERSION}", "< #{Inochi::VERSION.to_i.next}" ],
78
78
  }
79
79
 
80
- ##
81
- # Loads the correct version (as defined by the {RUNTIME} or {DEVTIME}
82
- # constant in this module) of the given gem or the gem that contains
83
- # the given library.
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
@@ -1,3 +1,3 @@
1
1
  # TODO: activate the testing framework of your choice and
2
2
  # also set up the testing environment for your tests
3
- #{library_name}.require 'test/unit'
3
+ require 'test/unit'
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='#ABOUT'>ABOUT</a> <a href='#SYNOPSIS'>SYNOPSIS</a> <a href='#DESCRIPTION'>DESCRIPTION</a> <a href='#OPTIONS'>OPTIONS</a> <a href='#inochi-init'>inochi init</a> <a href='#inochi-api'>inochi api</a> <a href='#inochi-man'>inochi man</a> <a href='#inochi-gem'>inochi gem</a> <a href='#inochi-ann'>inochi ann</a> <a href='#inochi-pub-ann-ruby-talk'>inochi pub:ann:ruby-talk</a> <a href='#inochi-pub-web'>inochi pub:web</a> <a href='#PROJECTS'>PROJECTS</a> <a href='#TUTORIAL'>TUTORIAL</a> <a href='#HACKING'>HACKING</a> <a href='#VERSIONS'>VERSIONS</a> <a href='#CREDITS'>CREDITS</a> <a href='#LICENSE'>LICENSE</a> <a href='#SEE-ALSO'>SEE ALSO</a></div>
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 2.0.1</li>
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="Inochi Logo" /></p>
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> using rake(1), to which <var>RAKE_OPTIONS</var> (see <code>rake --help</code> output)
151
- are passed. The following tasks are available for running:</p>
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
- <h2 id="OPTIONS">OPTIONS</h2>
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>Instill Inochi into current directory.</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
- <h3 id="DESCRIPTION">DESCRIPTION</h3>
190
-
191
- <p>Installs the Inochi infrastructure for the project (see <strong>PROJECTS</strong> below)
192
- named <var>PROJECT</var> into the current working directory, or upgrades a previous
193
- installation thereof.</p>
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><strong>TIP</strong>: Instead of merging files by hand, you can transfer wanted changes
215
- between files semi-automatically using a text merging tool such as <a href="http://meld.sourceforge.net">meld</a>,
216
- <a href="http://kdiff3.sourceforge.net">kdiff3</a>, or <a href="http://tkdiff.sourceforge.net">tkdiff</a> as follows:</p>
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></li>
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
- <h2 id="inochi-api">inochi api</h2>
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
- <h2 id="inochi-man">inochi man</h2>
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
- <h2 id="inochi-gem">inochi gem</h2>
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> or <strong>CREDITS</strong>
292
- heading (whichever comes first) and any subsequent heading.</p></dd>
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
- <h2 id="inochi-ann">inochi ann</h2>
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
- <h2 id="inochi-pub-ann-ruby-talk">inochi pub:ann:ruby-talk</h2>
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
- <h2 id="inochi-pub-web">inochi pub:web</h2>
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). Also defines a <code>require</code> class method on the
391
- project's namespace that loads the correct version (as defined by the
392
- project's dependency information) of a given gem if RubyGems is available.</p></dd>
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 how Inochi is used to manage a hypothetical
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 project:</p>
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>ack -a TODO || grep TODO -R .
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 &amp; 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="CREDITS">CREDITS</h2>
1071
+ <h2 id="AUTHORS">AUTHORS</h2>
1072
+
1073
+ <p>Suraj N. Kurapati</p>
1066
1074
 
1067
- <p>Suraj N. Kurapati,
1068
- Peileppe Production,
1069
- Florian Gilcher</p>
1075
+ <h2 id="CREDITS">CREDITS</h2>
1070
1076
 
1071
- <h3 id="Logo">Logo</h3>
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="&#x6d;&#97;&#x69;&#108;&#116;&#111;&#58;&#115;&#x75;&#110;&#97;&#107;&#117;&#x40;&#103;&#x6d;&#x61;&#x69;&#x6c;&#46;&#x63;&#111;&#x6d;" data-bare-link="true">&#x73;&#x75;&#x6e;&#x61;&#x6b;&#x75;&#64;&#103;&#109;&#97;&#105;&#x6c;&#46;&#99;&#x6f;&#109;</a></p>
1088
+ <p>Copyright 2008 Suraj N. Kurapati <a href="&#x6d;&#97;&#x69;&#108;&#x74;&#111;&#58;&#x73;&#x75;&#x6e;&#x61;&#107;&#x75;&#x40;&#x67;&#x6d;&#x61;&#105;&#108;&#x2e;&#x63;&#111;&#x6d;" data-bare-link="true">&#x73;&#117;&#x6e;&#x61;&#x6b;&#117;&#64;&#103;&#109;&#97;&#x69;&#108;&#46;&#x63;&#111;&#x6d;</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
- - 2
6
+ - 3
7
7
  - 0
8
- - 1
9
- version: 2.0.1
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-25 00:00:00 -07:00
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: highline
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: *id002
75
+ version_requirements: *id003
59
76
  - !ruby/object:Gem::Dependency
60
77
  name: mechanize
61
78
  prerelease: false
62
- requirement: &id003 !ruby/object:Gem::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: *id003
87
+ version_requirements: *id004
71
88
  - !ruby/object:Gem::Dependency
72
89
  name: nokogiri
73
90
  prerelease: false
74
- requirement: &id004 !ruby/object:Gem::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: *id004
105
+ version_requirements: *id005
89
106
  - !ruby/object:Gem::Dependency
90
107
  name: rake
91
108
  prerelease: false
92
- requirement: &id005 !ruby/object:Gem::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: *id005
124
+ version_requirements: *id006
108
125
  - !ruby/object:Gem::Dependency
109
126
  name: ronn
110
127
  prerelease: false
111
- requirement: &id006 !ruby/object:Gem::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: *id006
142
+ version_requirements: *id007
126
143
  - !ruby/object:Gem::Dependency
127
144
  name: yard
128
145
  prerelease: false
129
- requirement: &id007 !ruby/object:Gem::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: *id007
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: