Mailinglist Archive: opensuse-ruby (83 mails)

< Previous Next >
Re: [opensuse-ruby] Revised gem packaging
  • From: Adam Spiers <aspiers@xxxxxxxx>
  • Date: Tue, 6 Nov 2012 13:32:24 +0000
  • Message-id: <20121106133224.GA8107@pacific.linksys.moosehall>
Stephan Kulow (coolo@xxxxxxx) wrote:
On 06.11.2012 12:54, Adam Spiers wrote:

However, in the few ugly cases where multi-version is required, it
should be possible to accommodate - rubygemsdeps.rb could generate the
following extra Provides:

multiversion(rubygem)
multiversion(rubygem-foo)
multiversion(rubygem-foo-1)
multiversion(rubygem-foo-1_2)
multiversion(1.9:rubygem-foo)
multiversion(1.9:rubygem-foo-1)
multiversion(1.9:rubygem-foo-1_2)

and then any product-oriented rpm could install the appropriate
multiversion policy / policies into /etc/zypp/multiversion.d/
e.g.

multiversion = provides:multiversion(1.9:rubygem-foo)'

which would allow multiple versions of the foo gem to co-exist
simultaneously for a 1.9 ruby install.

So I have *still* not heard a convincing reason why we would ever need
suffices in the Name: field.

OK, let me give you one: to avoid all the mess you just listed.

It's not any more messy than the automatic Provides: which
rubygemsdeps.rb already generates, and has a number of advantages
over -1_0 suffixing:

- automatically generated so no manual renaming required by packager

- doesn't pollute the Name: field with version info already in the
Version: field

- eliminates confusion in the packaging policy about when to
use suffixing and when not to use it

- hidden from the user (e.g. 'rpm -q rubygem-foo' always gives the
user the answer they intuitively expect)

- allows multiple minor versions to co-exist on the same machine,
just like bundler does

- allows *optional* enabling/disabling of multiversion:
- for all gems system-wide
- per gem
- per gem major version
- per gem minor version
- per Ruby version and gem
- per Ruby version and gem major version
- per Ruby version and gem minor version
--
To unsubscribe, e-mail: opensuse-ruby+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: opensuse-ruby+owner@xxxxxxxxxxxx

< Previous Next >
List Navigation
Follow Ups