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!
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.
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”.
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.
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!
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.