On Wed, Jan 30, 2013 at 09:21:08PM +0000, Thorsten Glaser wrote:
> Marc Haber <mh+debian-devel <at> zugschlus.de> writes:
> 
> > In my past experience it is the usual case where and upstream and/or
> > its community takes at as a personal offense when a user is not using
> > the latest and greatest software version[1] and does not understand
> 
> I think the Ruby case involved more:
> 
> “What, you’re not running version x of the dependency y but a newer
> one? Ignore the fact that version x is vulnerable, because that’s
> the one you *must* be using for my code! Ah, and no, the dependency
> of package z of version x+1 of package y is not a problem, because
> with out cool package manager you can install them in parallel!”

That was a bit of both issue, but that happens in pretty much every
language community out there.

I just tried installing some cool thing in Perl, and installing it from
CPAN into $HOME blew up because of incompatibilities with some Perl
package installed via dpkg, and could only test the said package when I
tried installing it from CPAN in a clean chroot.

There is always impedance mismatch between those who want to build
stable, dependable, predictable systems and those who want to live in
the bleeding edge, and as said elsewhere in this thread, that's not
exclusive to the Ruby people.

IMO the noise caused by "the Ruby situation" was amplified by the
concurrent development of two different of factors:

- a lot of leading (and very vocal) Ruby developers were using a system
  that had no proper package management (MacOS X), so they didn't care
  enough to understand the requirements "from our side". But the Ruby
  packages in Debian implemented those requirements.

- that also happened during the boom of Ruby development outside of
  Japan -- skyrocketed by the boom of Rails -- where everything was new
  and everyone was experimenting like crazy. That led to the
  lack-of-stables-API and let's-break-our-reverse-dependencies
  bandwagons.

Today, the situation is improving from our side, if not by discussing
the relationship, at least by writing the proper code. With Rubygems
moving into the core -- what makes sense, because we cannot fight
against the fact that several users of the language won't have proper
package managers provided by their OS, we had to deal with it.  As a
sort of technology preview, in Wheezy one will be able to have Rubygems
detect dpkg-installed packages¹.

¹ http://packages.debian.org/rubygems-integration

Also, switching the default Ruby version on a per-user/pre-project² or
even on a per-system² basis was made easier.

² http://packages.debian.org/rbenv
³ update-alternatives --config ruby

From the Ruby community side the situation is a lot better. You will
even see the occasional "don't you break a stable API" rant within the
Ruby community.

-- 
Antonio Terceiro <terce...@debian.org>

Attachment: signature.asc
Description: Digital signature

Reply via email to