Why gem built with hoe depends on hoe?

Hi,

I find hoe a cool tool to build and release gems. But I find that
the gem built with hoe get a dependency to hoe automatically.
I think the user will only need to install hoe if he want to build
the gem manually. So adding this dependency automatically
is unreasonable, isn’t it?

Or am I wrong? Is it that the gem built by hoe need hoe to run?
Thanks!

On Feb 1, 2008, at 7:20 AM, pluskid wrote:

Hoe’s gotta eat too!

On 1 feb, 11:19, pluskid [email protected] wrote:

Hi,

I find hoe a cool tool to build and release gems. But I find that
the gem built with hoe get a dependency to hoe automatically.
I think the user will only need to install hoe if he want to build
the gem manually. So adding this dependency automatically
is unreasonable, isn’t it?

Or am I wrong? Is it that the gem built by hoe need hoe to run?
Thanks!

The argument behind this is that you can “gem check -t gemname” to run
the unit tests for a gem.

If the user firing that command don’t have ‘hoe’ installed, will fail
due a missing dependency.

There is no way to differentiate build, test and runtime environments
for RubyGems.

Is quite common things like this were asked (I have tracked a mail
from 2005 AFAIK).

Anyhow, Susan Potter just raised this issue [1].

She is using something interally that could, adapted to mainstream,
help everybody in the long run.

[1]
http://rubyforge.org/pipermail/rubygems-developers/2008-February/003538.html

On 1 feb, 14:09, Luis L. [email protected] wrote:

[…]

Anyhow, Susan Potter just raised this issue [1].

She is using something interally that could, adapted to mainstream,
help everybody in the long run.

Wrong link:

[1]
http://rubyforge.org/pipermail/rubygems-developers/2008-January/003522.html

Yeah! I see. I think apt-get (of Debian) has done a great job
on this topic. It just install all runtime dependencies when you
run
apt-get install something
And it provides an extra command to install the dev dependecies:
apt-get build-dep something
I think RubyGems have no such features yet, isn’t it? Maybe they
can think about similar things. So currently I should think the
definition of “dependency” be “dev dependency”.

2008/2/2, Luis L. [email protected]:

On Feb 1, 2008 6:20 AM, pluskid [email protected] wrote:

You should look at Mr Bones. It does the same thing as hoe, but
without the viral dependency.

sudo gem install bones

http://codeforpeople.rubyforge.org/bones

Blessings,
TwP

I use newgem, which sits on top of hoe (and removes it from the
deplist). It’s written by Dr. Nic and works really, really well.

I haven’t tried Mr Bones. Perhaps I will on my next project…

–Jeremy

On Feb 3, 2008 9:49 AM, pluskid [email protected] wrote:

is unreasonable, isn’t it?

Blessings,
TwP
Yeah! It looks great! Even with integrate with rspec. Hmm. I’ll
investigate it more. Thanks!


http://www.jeremymcanally.com/

My books:
Ruby in Practice

My free Ruby e-book
http://www.humblelittlerubybook.com/

My blogs:
http://www.mrneighborly.com/
http://www.rubyinpractice.com/

On Feb 2, 2008 6:51 AM, Tim P. [email protected] wrote:

On Feb 1, 2008 6:20 AM, pluskid [email protected] wrote:
You should look at Mr Bones. It does the same thing as hoe, but
without the viral dependency.

sudo gem install bones

On a related note, I wanted to share my own methodology. I’ve got a
Monotone branch that I use as the basis of my projects, which includes
some starting directories, a Rakefile and a gemspec.rb. As I discover
variations and improvements, or adapt to updates of rubygems or rake,
I update the project and propagate them automatically out to all the
projects based on the branch. I’ve got a couple of tricks that I
yionked from hoe in there, and I expect I’ll take a gander at Mr Bones
as well.

Advantages:

  • No extra dependencies in the eventual gems.
  • Improvements to the skeleton can be propagated to projects - without
    destroying local tweaks for the projects
  • I have my own control over how I use rake, rubygems, etc.

I suppose there’s the disadvantage that it ties me to monotone. I
suspect (but am not sure) that a similar thing could be accomplished
with git, but probably not with subversion.

Judson

On Feb 2, 10:51 pm, Tim P. [email protected] wrote:

Or am I wrong? Is it that the gem built by hoe need hoe to run?
TwP
Yeah! It looks great! Even with integrate with rspec. Hmm. I’ll
investigate it more. Thanks!