[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#728356: /usr/bin/how-can-i-help:30: undefined method `home' for Dir:Class (NoMethodError)



On 31/10/13 at 11:55 +0800, Paul Wise wrote:
> Package: how-can-i-help
> Version: 0.7
> Severity: serious
> 
> how-can-i-help now crashes on startup:
> 
> $ how-can-i-help 
> /usr/bin/how-can-i-help:30: undefined method `home' for Dir:Class (NoMethodError)

Hi,

That's because ruby1.8 misses Dir.home (it's 1.9+ -specific).

This is clearly a bug in how-can-i-help, that I will solve by dropping
the requirement of Dir.home.

But I wonder if we have really explored all the scenarios for the
upgrade to 1.9/2.0. For example, what if:
- user runs wheezy, installs ruby1.8, and how-can-i-help
- user upgrades to jessie. in jessie, ruby1.8 is removed, but user still
  has it installed locally
- user upgrades how-can-i-help to a newer version

If the new version of how-can-i-help still depends on ruby | ruby-interpreter,
the dependency is statisfied by the ruby1.8 package still installed locally.
however, how-can-i-help might not work with ruby1.8, and ruby1.8 is no
longer part of jessie, so it's not obvious as a maintainer that I should
test with it.

While this could be solved by having stricter dependencies in
applications, it kinda defeats the purpose of gem2deb if I need to
depend on ruby1.9.1 instead of ruby | ruby-interpreter (and it will
require a package change when moving to ruby2.0).

What I really need is a way to express (in how-can-i-help):
  "I need '/usr/bin/ruby' to point to an intrepreter >= 1.9.1"

Sounds like a nice mess :(
 
Lucas


Reply to: