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

Re: Ruby packaging in wheezy: gem2deb, new policy, etc.



On Wed, 2011-01-19 at 12:44 -0600, Gunnar Wolf wrote:
> Lucas Nussbaum dijo [Tue, Jan 18, 2011 at 08:33:02PM +0100]:
> > > How is the compatibility between implementations right now? If a
> > > package works across interpreters (it should be human-tested! Maybe
> > > running its test suite with the different available interpreters would
> > > do, although I don't want to do it for every uploaded package...),
> > 
> > Why wouldn't you want to do it with every available interpreter? That's
> > what is implemented in gem2deb currently.
> 
> Run the test suite four times per package, once with each interpreter?
> Well, of course it gives better coverage... But some test suites are
> quite long to run. And if we reach a stage where the different
> interpreters are compatible enough, it might be pointless. 
> 
> Also, it bloats our build-dependencies. If I have to install
> traditional Ruby, Java (to get jruby) and Mono (to get IronRuby), and
> whatever it takes to run Rubinius... Well, setups will be huge.
> 

I'd say its 100% worth it. The more implementations you test against at
build time, the more likely it is that you will catch bugs in either the
ruby code or the interpreters. As long as its easy to disable an
interpreter until a fix is available, having 200 extra build deps lying
around isn't really that big of a concern when compared with the
benefits of full test coverage.

> > > it can depend on ruby-interpreter. If it breaks, say, under jruby,
> > > it could depend on ruby-traditional | rubinius. It would be a win
> > > and would as you said, encourage advance and homogeneization of
> > > the implementations.
> > 
> > Well, if we use alternatives to select the ruby interpreter, a complex
> > dependency scheme doesn't bring us anything, since it would still be
> > possible for the users to shoot themselves in the foot.
> 
> Do you think Ruby has reached a stability point where it can be
> handled through alternatives? i.e. where a user can change
> /usr/bin/ruby to point from ruby to jruby and expect random programs
> not to break?
> 

Should that be the standard for alternatives? I would think that the
standard should be that its meant to be an implementation of the same
standard, right or wrong. Different JVM's break random programs too.



Reply to: