Trollop 1.1 released

Trollop version 1.1 has been released!

http://trollop.rubyforge.org

Trollop is YAFCLAP — yet another fine commandline argument
processing library for Ruby. Trollop is designed to provide the
maximal amount of GNU-style argument processing in the minimum number
of lines of code (for you, the programmer).

Trollop provides a nice automatically-generated help page, robust
option parsing, and sensible defaults for everything you don’t
specify.

Synopsis:

simple

opts = Trollop::options do
opt :monkey, “Use monkey mode.”
opt :goat, “Use goat model”, :default => true
opt :num_limbs, “Set number of limbs”, :default => 4
end

p opts

complex

opts = Trollop::options do
version “test 1.2.3 (c) 2007 William M.”
banner <<-EOS
Test is an awesome program that does something very, very important.

Usage:
test [options] +
where [options] are:
EOS

opt :ignore, "Ignore incorrect values"
opt :file, "Extra data filename to read in, with a very long option 

description like this one", :type => String
opt :volume, “Volume level”, :default => 3.0
opt :iters, “Number of iterations”, :default => 5
end
Trollop::die :volume, “must be non-negative” if opts[:volume] < 0
Trollop::die :file, “must exist” unless File.exists?(opts[:file]) if
opts[:file]

== REQUIREMENTS:

  • none

Changes:

== 1.1 / 2007-01-30

  • Trollop::options now passes any arguments as block arguments. Since
    instance variables are not properly captured by the block, this
    makes it slightly less noisy to pass them in as local variables.
    (A real-life use for _why’s cloaker!)

  • Help display now preserves original argument order.

  • Trollop::die now also has a single string form in case death is not
    due to a single argument.

  • Parser#text now an alias for Parser#banner, and can be called
    multiple times, with the output being placed in the right position
    in the help text.

  • Slightly more indicative formatting for parameterized arguments.

    http://trollop.rubyforge.org

Hello William,

2007/1/30, William M. [email protected]:

== REQUIREMENTS:

  • none

I beg to differ:
$ gem dependency trollop
Gem trollop-1.1
hoe (>= 1.1.7)

$ gem dependency hoe
Gem hoe-1.1.7
rubyforge (>= 0.4.0)
rake (>= 0.7.1)

So in effect, Trollop depends on Hoe and Rubyforge. Do you know any
way to not depend on hoe ? I would like to find out, so I can use
Trollop in Piston and not bother with Hoe.

My understanding is that Hoe allows you to generate gems. Is it still
useful after the initial generation ?

Thanks !

On Jan 30, 2007, at 9:52 PM, Francois B. wrote:

So in effect, Trollop depends on Hoe and Rubyforge. Do you know any
way to not depend on hoe ? I would like to find out, so I can use
Trollop in Piston and not bother with Hoe.

Can we NOT start with this again??

On 1/31/07, Ryan D. [email protected] wrote:

On Jan 30, 2007, at 9:52 PM, Francois B. wrote:

So in effect, Trollop depends on Hoe and Rubyforge. Do you know any
way to not depend on hoe ? I would like to find out, so I can use
Trollop in Piston and not bother with Hoe.

Can we NOT start with this again??

As usual, the path to enlightenment is cuts through the garden of
education:

For the benefit of the OP, here is the (somewhat long) discussion that
went on on this topic recently:
http://rubyurl.com/fm5

And here is one solution:

hth,
-Harold

Harold H. wrote:

On Jan 30, 2007, at 9:52 PM, Francois B. wrote:

So in effect, Trollop depends on Hoe and Rubyforge. Do you know any
way to not depend on hoe ? I would like to find out, so I can use
Trollop in Piston and not bother with Hoe.

And here is one solution:
if you don’t want to hoe… echoe « evan weaver

That’s the solution for gem-makers. For gem-installers, it’s:
gem install trollop --ignore-dependencies
vi $RUBYLIB/gems/1.8/specifications/trollop-1.1.gemspec

(Is there a simpler/cleaner way?)

Devin

Excerpts from Francois B.'s message of Wed Jan 31 08:04:24 -0800
2007:

I am so sorry. Thinking back, I do remember seeing messages to that
effect.

Thanks for bringing this up. I was unaware of the issue.

I’ve released version 1.2, which has no dependency on hoe.

Hi,

2007/1/31, Ryan D. [email protected]:

Can we NOT start with this again??

I am so sorry. Thinking back, I do remember seeing messages to that
effect.

I forgot to check the archives.

Thanks for reminding me.

Bye !

On Jan 31, 2007, at 9:27 AM, William M. wrote:

Thanks for bringing this up. I was unaware of the issue.
I’ve released version 1.2, which has no dependency on hoe

WIMP! Don’t give in to them!

Excerpts from Ryan D.'s message of Wed Jan 31 10:50:30 -0800 2007:

WIMP! Don’t give in to them!

:slight_smile: