binman 4.1.0 → 4.2.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2b919eb526cd3af62dc86a638b74af4569487723
4
- data.tar.gz: 1ddf9d14c886406da79b2c4b6f5fbe6129ae629f
3
+ metadata.gz: 38369c43c1ea8af088cf3eaeb5296faee043d338
4
+ data.tar.gz: f1a223a6c61c468678049192da91dd7b2b7f1d05
5
5
  SHA512:
6
- metadata.gz: 18978c8074e6b15cb9201f54b8e7c2a2366414dd01d78e6c0f34889dfc84cc1b51eb6526296b0b26d0e459a0d7ce8d5771ade4b9ca7c536b74bc36ad93bae91b
7
- data.tar.gz: ecbfcfb0be03016bf1f1ed836ffeb059e0b1d6dd232c424c0e6365f07da548446b36f1eb91de53d01579a1e8bef6c10ceb5d756cd918bd79678b91ca4f8f5835
6
+ metadata.gz: 15414e1a37a4ed99312e222535f39aaff07e5b611875f166318a24d392fe919fadd1db501fc792ad48da1b7c2fd44e834c796f4143793049bf69a78b3771d9c9
7
+ data.tar.gz: f2ced26dbf65b04d829efca5be61772f8dd40fa37e42fc5e431cbcf3a7c1b9859424c315280415d28618815bc0a3118cc14c4cfed7e8b95a3f6ff7638f6f77c1
@@ -1,3 +1,35 @@
1
+ ## Version 4.2.1 (2016-02-12)
2
+
3
+ ### Patch:
4
+
5
+ * Failure when `binman show` is given input on STDIN.
6
+
7
+ binman.rb:51:in `basename': no implicit conversion of IO into String (TypeError)
8
+
9
+ ## Version 4.2.0 (2016-02-12)
10
+
11
+ ### Minor:
12
+
13
+ * Add `binman:mkd` rake task to extract `man/man1/*.1.markdown` files.
14
+
15
+ ### Patch:
16
+
17
+ * Shell out to md2man-rake(1) for dynamic man pages.
18
+
19
+ Requiring the md2man/rakefile.rb script builds Rake tasks only once, so
20
+ it ignores any man page files generated dynamically after the require().
21
+
22
+ This fix shells out to md2man-rake(1) causing that script to be required
23
+ every time afresh, so that such dynamically generated files are handled.
24
+
25
+ * Failure when `binman help` is called without ARGV.
26
+
27
+ binman.rb:63:in `help': undefined method `index' for nil:NilClass (NoMethodError)
28
+
29
+ * Failure when `binman show` is called without ARGV.
30
+
31
+ binman.rb:47:in `basename': no implicit conversion of IO into String (TypeError)
32
+
1
33
  ## Version 4.1.0 (2016-02-10)
2
34
 
3
35
  ### Minor:
data/bin/binman CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  =begin =======================================================================
3
3
 
4
- # BINMAN 1 2016-02-10 4.1.0
4
+ # BINMAN 1 2016-02-12 4.2.1
5
5
 
6
6
  ## NAME
7
7
 
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  =begin =======================================================================
3
3
 
4
- # BINMAN-RAKE 1 2016-02-10 4.1.0
4
+ # BINMAN-RAKE 1 2016-02-12 4.2.1
5
5
 
6
6
  ## NAME
7
7
 
@@ -25,6 +25,11 @@ If no *TASK* is specified, then the `binman` task is run by default.
25
25
  `binman`
26
26
  Runs the `binman:man` and `binman:web` tasks, in that order.
27
27
 
28
+ `binman:mkd`
29
+ Extracts manual page sources embedded in scripts found in your `bin/`
30
+ directory and saves them as `man/man1/*.1.markdown` files, which can
31
+ then be rendered as HTML or UNIX manual pages using md2man-rake(1).
32
+
28
33
  `binman:man`
29
34
  Builds UNIX manual pages from scripts found in your `bin/` directory.
30
35
  It also runs the `md2man:man` task, provided by md2man-rake(1), which
@@ -43,7 +43,7 @@ module BinMan
43
43
  # Tries to display a pre-rendered UNIX man page under ./man/ if possible.
44
44
  def show source=nil, query=nil
45
45
  # try showing existing man page files for given source
46
- if file = find(source) and File.exist? file
46
+ if file = find(source) and File.file? file and file.respond_to? :to_str
47
47
  man_page = File.basename(file)
48
48
  man_path = File.expand_path('../../man', file)
49
49
  return if show_man(man_path, man_page, query)
@@ -59,7 +59,8 @@ module BinMan
59
59
  # if the given argument vector contains '-h' or '--help', except after '--',
60
60
  # optionally followed by a regular expression argument that specifies text
61
61
  # to search for and, if found, jump to inside the displayed UNIX man page.
62
- def help source=nil, argv=ARGV
62
+ def help source=nil, argv=nil
63
+ argv = Array(argv || ARGV)
63
64
  limit = argv.index('--') || argv.length
64
65
  index = [argv.index('-h'), argv.index('--help')].compact.min
65
66
  if index and index < limit
@@ -91,7 +92,7 @@ private
91
92
  def read source=nil
92
93
  if source.respond_to? :read
93
94
  source.read
94
- elsif file = find(source) and File.exist? file
95
+ elsif file = find(source) and File.file? file
95
96
  File.read file
96
97
  else
97
98
  source
@@ -22,18 +22,19 @@ bins.zip(mkds).each do |src, dst|
22
22
  end
23
23
  end
24
24
 
25
+ desc 'Extract manuals embedded in bin/ scripts.'
26
+ task 'binman:mkd' => mkds
27
+
25
28
  #-----------------------------------------------------------------------------
26
29
  desc 'Build UNIX manual pages for bin/ scripts.'
27
- task 'binman:man' => mkds do
30
+ task 'binman:man' => 'binman:mkd' do
28
31
  #-----------------------------------------------------------------------------
29
- require 'md2man/rakefile'
30
- Rake::Task['md2man:man'].invoke
32
+ sh 'md2man-rake', 'md2man:man'
31
33
  end
32
34
 
33
35
  #-----------------------------------------------------------------------------
34
36
  desc 'Build HTML manual pages for bin/ scripts.'
35
- task 'binman:web' => mkds do
37
+ task 'binman:web' => 'binman:mkd' do
36
38
  #-----------------------------------------------------------------------------
37
- require 'md2man/rakefile'
38
- Rake::Task['md2man:web'].invoke
39
+ sh 'md2man-rake', 'md2man:web'
39
40
  end
@@ -1,3 +1,3 @@
1
1
  module BinMan
2
- VERSION = "4.1.0"
2
+ VERSION = "4.2.1"
3
3
  end
@@ -7,11 +7,27 @@
7
7
  <link rel="stylesheet" href="../style.css"/>
8
8
  <!--[if lt IE 9]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
9
9
  </head>
10
- <body><div class="navbar"><div class="navbar-inner"><span class="brand"><a href="../index.html#man0">man0</a>/VERSION</span></div></div><div class="container-fluid"><h2 id="version-4-1-0-2016-02-10"><a name="version-4-1-0-2016-02-10" href="#version-4-1-0-2016-02-10" class="md2man-permalink" title="permalink"></a>Version 4.1.0 (2016-02-10)</h2><h3 id="minor"><a name="minor" href="#minor" class="md2man-permalink" title="permalink"></a>Minor:</h3>
10
+ <body><div class="navbar"><div class="navbar-inner"><span class="brand"><a href="../index.html#man0">man0</a>/VERSION</span></div></div><div class="container-fluid"><h2 id="version-4-2-1-2016-02-12"><a name="version-4-2-1-2016-02-12" href="#version-4-2-1-2016-02-12" class="md2man-permalink" title="permalink"></a>Version 4.2.1 (2016-02-12)</h2><h3 id="patch"><a name="patch" href="#patch" class="md2man-permalink" title="permalink"></a>Patch:</h3>
11
+ <ul>
12
+ <li><p>Failure when <code>binman show</code> is given input on STDIN.</p><p>binman.rb:51:in `basename&#39;: no implicit conversion of IO into String (TypeError)</p></li>
13
+ </ul>
14
+ <h2 id="version-4-2-0-2016-02-12"><a name="version-4-2-0-2016-02-12" href="#version-4-2-0-2016-02-12" class="md2man-permalink" title="permalink"></a>Version 4.2.0 (2016-02-12)</h2><h3 id="minor"><a name="minor" href="#minor" class="md2man-permalink" title="permalink"></a>Minor:</h3>
15
+ <ul>
16
+ <li>Add <code>binman:mkd</code> rake task to extract <code>man/man1/*.1.markdown</code> files.</li>
17
+ </ul>
18
+ <h3 id="patch-1"><a name="patch-1" href="#patch-1" class="md2man-permalink" title="permalink"></a>Patch:</h3>
19
+ <ul>
20
+ <li><p>Shell out to <a class="md2man-reference">md2man-rake(1)</a> for dynamic man pages.</p><p>Requiring the md2man/rakefile.rb script builds Rake tasks only once, so
21
+ it ignores any man page files generated dynamically after the require().</p><p>This fix shells out to <a class="md2man-reference">md2man-rake(1)</a> causing that script to be required
22
+ every time afresh, so that such dynamically generated files are handled.</p></li>
23
+ <li><p>Failure when <code>binman help</code> is called without ARGV.</p><p>binman.rb:63:in <code>help&#39;: undefined method</code>index&#39; for nil:NilClass (NoMethodError)</p></li>
24
+ <li><p>Failure when <code>binman show</code> is called without ARGV.</p><p>binman.rb:47:in `basename&#39;: no implicit conversion of IO into String (TypeError)</p></li>
25
+ </ul>
26
+ <h2 id="version-4-1-0-2016-02-10"><a name="version-4-1-0-2016-02-10" href="#version-4-1-0-2016-02-10" class="md2man-permalink" title="permalink"></a>Version 4.1.0 (2016-02-10)</h2><h3 id="minor-1"><a name="minor-1" href="#minor-1" class="md2man-permalink" title="permalink"></a>Minor:</h3>
11
27
  <ul>
12
28
  <li>Print path of HTML man page to STDOUT when launching browser.</li>
13
29
  </ul>
14
- <h3 id="patch"><a name="patch" href="#patch" class="md2man-permalink" title="permalink"></a>Patch:</h3>
30
+ <h3 id="patch-2"><a name="patch-2" href="#patch-2" class="md2man-permalink" title="permalink"></a>Patch:</h3>
15
31
  <ul>
16
32
  <li><p>Revert &quot;ensure &#39;binman:web&#39; task works the first time thru&quot;.</p><p>This reverts commit dd0511e78e02546cac4903b5c6de6243607a8bba,
17
33
  which was causing the following error under Ruby 2.3.0p0.</p><dl><dd>% rake build
@@ -39,7 +55,7 @@ exit 1</dd></dl></li>
39
55
  <li><p>Upgrade to md2man 4.0, which no longer expands cross references in code
40
56
  spans and code blocks. Your manuals might be rendered differently now.</p></li>
41
57
  </ul>
42
- <h2 id="version-3-4-1-2014-07-01"><a name="version-3-4-1-2014-07-01" href="#version-3-4-1-2014-07-01" class="md2man-permalink" title="permalink"></a>Version 3.4.1 (2014-07-01)</h2><p>This release fixes the help options&#39; REGEXP argument under non-Debian systems.</p><h3 id="patch-1"><a name="patch-1" href="#patch-1" class="md2man-permalink" title="permalink"></a>Patch:</h3>
58
+ <h2 id="version-3-4-1-2014-07-01"><a name="version-3-4-1-2014-07-01" href="#version-3-4-1-2014-07-01" class="md2man-permalink" title="permalink"></a>Version 3.4.1 (2014-07-01)</h2><p>This release fixes the help options&#39; REGEXP argument under non-Debian systems.</p><h3 id="patch-3"><a name="patch-3" href="#patch-3" class="md2man-permalink" title="permalink"></a>Patch:</h3>
43
59
  <ul>
44
60
  <li><p><a class="md2man-reference">pager(1)</a> isn&#39;t a universal command: CentOS uses <code>less -is</code> instead.</p></li>
45
61
  <li><p>Silence <a class="md2man-reference">man(1)</a> stderr when displaying dynamically extracted manual.</p></li>
@@ -50,7 +66,7 @@ spans and code blocks. Your manuals might be rendered differently now.</p></li>
50
66
  <li><p>Document REGEXP argument for help options in <code>bin/*</code>.</p></li>
51
67
  <li><p>Refer to REGEXP argument as PATTERN like less does.</p></li>
52
68
  </ul>
53
- <h2 id="version-3-4-0-2014-06-29"><a name="version-3-4-0-2014-06-29" href="#version-3-4-0-2014-06-29" class="md2man-permalink" title="permalink"></a>Version 3.4.0 (2014-06-29)</h2><h3 id="minor-1"><a name="minor-1" href="#minor-1" class="md2man-permalink" title="permalink"></a>Minor:</h3>
69
+ <h2 id="version-3-4-0-2014-06-29"><a name="version-3-4-0-2014-06-29" href="#version-3-4-0-2014-06-29" class="md2man-permalink" title="permalink"></a>Version 3.4.0 (2014-06-29)</h2><h3 id="minor-2"><a name="minor-2" href="#minor-2" class="md2man-permalink" title="permalink"></a>Minor:</h3>
54
70
  <ul>
55
71
  <li><p>GH-3: add optional regexp argument to <code>-h</code>/<code>--help</code> to search in <a class="md2man-reference">man(1)</a>.</p><p>The <code>-h</code> and <code>--help</code> options in <code>BinMan.help()</code> can now be optionally
56
72
  followed by a regular expression argument that specifies text to search
@@ -1,4 +1,4 @@
1
- .TH BINMAN\-RAKE 1 2016\-02\-10 4.1.0
1
+ .TH BINMAN\-RAKE 1 2016\-02\-12 4.2.1
2
2
  .SH NAME
3
3
  .PP
4
4
  binman\-rake \- run
@@ -29,6 +29,12 @@ If no \fITASK\fP is specified, then the \fB\fCbinman\fR task is run by default.
29
29
  \fB\fCbinman\fR
30
30
  Runs the \fB\fCbinman:man\fR and \fB\fCbinman:web\fR tasks, in that order.
31
31
  .TP
32
+ \fB\fCbinman:mkd\fR
33
+ Extracts manual page sources embedded in scripts found in your \fB\fCbin/\fR
34
+ directory and saves them as \fB\fCman/man1/*.1.markdown\fR files, which can
35
+ then be rendered as HTML or UNIX manual pages using
36
+ .BR md2man-rake (1).
37
+ .TP
32
38
  \fB\fCbinman:man\fR
33
39
  Builds UNIX manual pages from scripts found in your \fB\fCbin/\fR directory.
34
40
  It also runs the \fB\fCmd2man:man\fR task, provided by
@@ -7,10 +7,12 @@
7
7
  <link rel="stylesheet" href="../style.css"/>
8
8
  <!--[if lt IE 9]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
9
9
  </head>
10
- <body><div class="navbar"><div class="navbar-inner"><span class="brand"><a href="../index.html#man1">man1</a>/binman-rake.1</span></div></div><div class="container-fluid"><h1 id="binman-rake-1-2016-02-10-4-1-0"><a name="binman-rake-1-2016-02-10-4-1-0" href="#binman-rake-1-2016-02-10-4-1-0" class="md2man-permalink" title="permalink"></a><span class="md2man-title">BINMAN-RAKE</span> <span class="md2man-section">1</span> <span class="md2man-date">2016-02-10</span> <span class="md2man-source">4.1.0</span></h1><h2 id="name"><a name="name" href="#name" class="md2man-permalink" title="permalink"></a>NAME</h2><p>binman-rake - run <a class="md2man-reference">rake(1)</a> tasks from <a class="md2man-reference" href="../man1/binman.1.html">binman(1)</a></p><h2 id="synopsis"><a name="synopsis" href="#synopsis" class="md2man-permalink" title="permalink"></a>SYNOPSIS</h2><p><code>binman-rake</code> [<em>OPTION</em>]... [<em>TASK</em>]...</p><h2 id="description"><a name="description" href="#description" class="md2man-permalink" title="permalink"></a>DESCRIPTION</h2><p>This program lets you run <a class="md2man-reference">rake(1)</a> tasks provided by <a class="md2man-reference" href="../man1/binman.1.html">binman(1)</a> without having
10
+ <body><div class="navbar"><div class="navbar-inner"><span class="brand"><a href="../index.html#man1">man1</a>/binman-rake.1</span></div></div><div class="container-fluid"><h1 id="binman-rake-1-2016-02-12-4-2-1"><a name="binman-rake-1-2016-02-12-4-2-1" href="#binman-rake-1-2016-02-12-4-2-1" class="md2man-permalink" title="permalink"></a><span class="md2man-title">BINMAN-RAKE</span> <span class="md2man-section">1</span> <span class="md2man-date">2016-02-12</span> <span class="md2man-source">4.2.1</span></h1><h2 id="name"><a name="name" href="#name" class="md2man-permalink" title="permalink"></a>NAME</h2><p>binman-rake - run <a class="md2man-reference">rake(1)</a> tasks from <a class="md2man-reference" href="../man1/binman.1.html">binman(1)</a></p><h2 id="synopsis"><a name="synopsis" href="#synopsis" class="md2man-permalink" title="permalink"></a>SYNOPSIS</h2><p><code>binman-rake</code> [<em>OPTION</em>]... [<em>TASK</em>]...</p><h2 id="description"><a name="description" href="#description" class="md2man-permalink" title="permalink"></a>DESCRIPTION</h2><p>This program lets you run <a class="md2man-reference">rake(1)</a> tasks provided by <a class="md2man-reference" href="../man1/binman.1.html">binman(1)</a> without having
11
11
  to create a special file named <code>Rakefile</code> that contains the following snippet:</p><pre><code>require &#39;binman/rakefile&#39;
12
12
  </code></pre>
13
- <p>If no <em>TASK</em> is specified, then the <code>binman</code> task is run by default.</p><h2 id="tasks"><a name="tasks" href="#tasks" class="md2man-permalink" title="permalink"></a>TASKS</h2><dl><dt><code>binman</code></dt><dd>Runs the <code>binman:man</code> and <code>binman:web</code> tasks, in that order.</dd></dl><dl><dt><code>binman:man</code></dt><dd>Builds UNIX manual pages from scripts found in your <code>bin/</code> directory.
13
+ <p>If no <em>TASK</em> is specified, then the <code>binman</code> task is run by default.</p><h2 id="tasks"><a name="tasks" href="#tasks" class="md2man-permalink" title="permalink"></a>TASKS</h2><dl><dt><code>binman</code></dt><dd>Runs the <code>binman:man</code> and <code>binman:web</code> tasks, in that order.</dd></dl><dl><dt><code>binman:mkd</code></dt><dd>Extracts manual page sources embedded in scripts found in your <code>bin/</code>
14
+ directory and saves them as <code>man/man1/*.1.markdown</code> files, which can
15
+ then be rendered as HTML or UNIX manual pages using <a class="md2man-reference">md2man-rake(1)</a>.</dd></dl><dl><dt><code>binman:man</code></dt><dd>Builds UNIX manual pages from scripts found in your <code>bin/</code> directory.
14
16
  It also runs the <code>md2man:man</code> task, provided by <a class="md2man-reference">md2man-rake(1)</a>, which
15
17
  builds UNIX manual pages from <code>*.markdown</code>, <code>*.mkd</code>, and <code>*.md</code> files
16
18
  found in or beneath the <code>man/</code> subdirectory in your working directory.</dd></dl><dl><dt><code>binman:web</code></dt><dd>Builds HTML manual pages from scripts found in your <code>bin/</code> directory.
@@ -1,4 +1,4 @@
1
- .TH BINMAN 1 2016\-02\-10 4.1.0
1
+ .TH BINMAN 1 2016\-02\-12 4.2.1
2
2
  .SH NAME
3
3
  .PP
4
4
  binman \- man pages for bin scripts
@@ -7,7 +7,7 @@
7
7
  <link rel="stylesheet" href="../style.css"/>
8
8
  <!--[if lt IE 9]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
9
9
  </head>
10
- <body><div class="navbar"><div class="navbar-inner"><span class="brand"><a href="../index.html#man1">man1</a>/binman.1</span></div></div><div class="container-fluid"><h1 id="binman-1-2016-02-10-4-1-0"><a name="binman-1-2016-02-10-4-1-0" href="#binman-1-2016-02-10-4-1-0" class="md2man-permalink" title="permalink"></a><span class="md2man-title">BINMAN</span> <span class="md2man-section">1</span> <span class="md2man-date">2016-02-10</span> <span class="md2man-source">4.1.0</span></h1><h2 id="name"><a name="name" href="#name" class="md2man-permalink" title="permalink"></a>NAME</h2><p>binman - man pages for bin scripts</p><h2 id="synopsis"><a name="synopsis" href="#synopsis" class="md2man-permalink" title="permalink"></a>SYNOPSIS</h2><p><code>binman</code> [<em>OPTION</em>]... <em>COMMAND</em></p><h2 id="description"><a name="description" href="#description" class="md2man-permalink" title="permalink"></a>DESCRIPTION</h2><p><a href="https://github.com/sunaku/binman">binman</a> produces UNIX manual pages for your executable scripts. It can
10
+ <body><div class="navbar"><div class="navbar-inner"><span class="brand"><a href="../index.html#man1">man1</a>/binman.1</span></div></div><div class="container-fluid"><h1 id="binman-1-2016-02-12-4-2-1"><a name="binman-1-2016-02-12-4-2-1" href="#binman-1-2016-02-12-4-2-1" class="md2man-permalink" title="permalink"></a><span class="md2man-title">BINMAN</span> <span class="md2man-section">1</span> <span class="md2man-date">2016-02-12</span> <span class="md2man-source">4.2.1</span></h1><h2 id="name"><a name="name" href="#name" class="md2man-permalink" title="permalink"></a>NAME</h2><p>binman - man pages for bin scripts</p><h2 id="synopsis"><a name="synopsis" href="#synopsis" class="md2man-permalink" title="permalink"></a>SYNOPSIS</h2><p><code>binman</code> [<em>OPTION</em>]... <em>COMMAND</em></p><h2 id="description"><a name="description" href="#description" class="md2man-permalink" title="permalink"></a>DESCRIPTION</h2><p><a href="https://github.com/sunaku/binman">binman</a> produces UNIX manual pages for your executable scripts. It can
11
11
  extract their leading comment headers (defined below), convert them from
12
12
  <a class="md2man-reference">markdown(7)</a> into <a class="md2man-reference">roff(7)</a> using <a href="https://github.com/sunaku/md2man">md2man</a>, and display them using <a class="md2man-reference">man(1)</a>.</p><h3 id="leading-comment-headers"><a name="leading-comment-headers" href="#leading-comment-headers" class="md2man-permalink" title="permalink"></a>Leading comment headers</h3><p>A leading comment header can be one of the following two things:</p>
13
13
  <ol>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: binman
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.1.0
4
+ version: 4.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Suraj N. Kurapati
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-02-11 00:00:00.000000000 Z
11
+ date: 2016-02-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: md2man