Hi!

In a few weeks from now, Wheezy will be frozen. One of the goals of the
Ruby Team for Wheezy is to try to push as far as possible the transition
to a new policy for Ruby library.

You receive this email because you are listed as the maintainer or
uploader of a Ruby package which has been detected as not using this new
policy. See the list of maintainers/packages at the end of this email.

The Debian Ruby Team have put a lot of effort on this goal, converting
(most of) the packages they maintain to this policy. The success of this
effort can be measured on the graph [0].

    0: http://pkg-ruby-extras.alioth.debian.org/wheezy/

The data used for this graph taken into account *all* Ruby libraries
contained in Debian, and not only those maintained by the Ruby packaging
team. In order to improve the overall quality of Ruby packages in Debian
and to ensure consistency in the way Ruby packages are installed and
used, we need to finish the transition, and therefore we strongly
encourage all maintainers of Ruby packages in Debian to update their
packages to reflect these changes. These changes concern three
different aspects: the package naming convention, the path where
libraries are installed, and the execution of test suites at build time.
These aspects are briefly described below and detailed in the draft of
the Ruby policy [1], most of which being taken care of automatically by
our packaging tool gem2deb.

    1: 
http://anonscm.debian.org/gitweb/?p=pkg-ruby-extras/ruby-policy.git;=summary
    2: http://packages.debian.org/sid/gem2deb

Naming conventions
==================

The source packages libfoo-ruby should be renamed ruby-foo. If these
packages provide extensions needing to be compiled for the various Ruby
versions, these should nevertheless be shipped in the same binary
package, also called ruby-foo. If the package is mainly used as an
application, then it can be named just "foo". The naming convention can
be of course adapted in the case of the packaging of utilities (chef,
rails, redmine...).

With the convention we used before, not only were we shipping distinct
Ruby packages per interpreter version (i.e. libfoo-ruby1.8 and
libfoo-ruby1.9.1) and needed to hold large-scale repackaging on ABI
jumpis (as in the latest 1.9 → 1.9.1 change). With this new convention
(and build system – read on for details) only one binary package will be
built, and will carry all of the needed components, either in a common
place or in the version-specific directories.

For more extensive information see our guidelines for Ruby packaging [3].

    3: http://wiki.debian.org/Teams/Ruby/Packaging#Guidelines_for_Ruby_packaging


Install locations for libraries
===============================

Libraries not bundled with the Ruby interpreters should be installed
somewhere in /usr/lib/ruby/vendor_ruby directory, instead of
/usr/lib/ruby/1.8 or /usr/lib/ruby/1.9.1. A Pure Ruby library working
for all Ruby version would go in /usr/lib/ruby/vendor_ruby.  Files
specific to a version of the interpreter should go in
/usr/lib/ruby/vendor_ruby/$RUBYVER (vendorlibdir). Code compiled
specifically for the host architecture should go to
/usr/lib/ruby/vendor_ruby/$RUBYVER/$ARCH (vendorarchdir).

For the moment, MRI Ruby 1.8 and 1.9 can use the libraries installed in
these directories. JRuby would need to have theses directories added to
$LOAD_PATH and advertised by RbConfig (see #663342).


Running test suites during package build
========================================

A large number of Ruby libraries provide a test suite. It is recommended
to run these tests during the construction of the package in order to
check that the package will (at least partially) work with the
interpreters and other libraries included in the distribution.


A new packaging tool: gem2deb
=============================

The "gem2deb" tool takes care of most of the points mentioned above in
an automatised way. Running gem2deb on your orig tarball or a gem
package from your upstream will get you most of the way towards making
your package compatible with the new draft Ruby policy.  Instructions
for the transition to gem2deb are available on the wiki page [4] of the
team.

    4: 
http://wiki.debian.org/Teams/Ruby/Packaging#Howto:_converting_a_package_from_ruby-pkg-tools_to_gem2deb

gem2deb builds binary packages which are amenable to all of the
currently existing Ruby interpreters, and is future-proofed so that when
a new one is included in Debian, all of our packages will gain support
with just a rebuild. It also adds niceties such as proper Gem following
via debian/watch or packaging with simple, current practices for
debian/*. Please do consider repackaging using it!

To conclude, we encourage you to update these Ruby packages
packages so that they follow the guidelines above. Everyone willing to
team maintain their Ruby packages is of course welcome to join the Ruby
Packaging team (pkg-ruby-extras on alioth) and import their packages in
the team repository. We would be happy to answer your questions and hear
your comments on [email protected] or on the #debian-ruby IRC
channel.

Cédric Boutillier, for the Ruby Team.


________

List of Ruby packages needing to be converted to the new policy, sorted
by maintainer/uploader:


Adam Majer <[email protected]>
   libbz2-ruby

akira yamada <[email protected]>
   bsfilter
   libeb-ruby
   libkakasi-ruby
   libshadow-ruby
   libuconv-ruby
   racc
   rdtool

Alan Boudreault <[email protected]>
   mapserver (U)

Aleksey Kravchenko <[email protected]>
   rhash

Alessandro Ghedini <[email protected]>
   ecasound (U)

Alessio Treglia <[email protected]>
   ecasound (U)

Alex Pennace <[email protected]>
   raspell

Alexander Wirt <[email protected]>
   rrdtool (U)

Andreas Tille <[email protected]>
   libsbml (U)

Andrew Pollock <[email protected]>
   puppet (U)

ARAKI Yasuhiro <[email protected]>
   gonzui
   mod-ruby (U)

Arnaud Cornet <[email protected]>
   ruby-prof

Athena Capital Research <[email protected]>
   quickfix
   rubyluabridge

Aurélien GÉRÔME <[email protected]>
   libnet-irc-ruby
   libsnmp-ruby

Benjamin Drung <[email protected]>
   xmms2

Bernd Zeimetz <[email protected]>
   rrdtool (U)

Bram Senders <[email protected]>
   shoes

Bryan McLellan <[email protected]>
   libabstract-ruby

C.J. Adams-Collier <[email protected]>
   dlr-languages (U)

Cajus Pollmeier <[email protected]>
   qpid-cpp

Changyan Xie <[email protected]>
   libsbml (U)

Christoph Egger <[email protected]>
   graphviz (U)

Cleto Martín <[email protected]>
   zeroc-ice (U)

Dafydd Harries <[email protected]>
   rbbr
   ruby-amazon

Daigo Moriwaki <[email protected]>
   tdiary

Daniel Watkins <[email protected]>
   ditz

Dave Beckett <[email protected]>
   redland-bindings

David Claughton <[email protected]>
   graphviz

David Palacio <[email protected]>
   korundum (U)
   qtruby (U)

Debian CLI Libraries Team <[email protected]>
   dlr-languages

Debian GIS Project <[email protected]>
   gdal
   geos
   mapserver
   ruby-hdfeos5

Debian Med Packaging Team <[email protected]>
   libsbml

Debian Multimedia Maintainers
<[email protected]>
   ecasound

Debian Qt/KDE Maintainers <[email protected]>
   korundum
   qtruby

Debian RRDtool Team <[email protected]>
   rrdtool

Debian Vim Maintainers <[email protected]>
   vim

Decklin Foster <[email protected]>
   libchronic-ruby
   liblockfile-ruby
   libtrollop-ruby

Deepak Tripathi <[email protected]>
   libhtml-htmltokenizer-ruby
   libxml-simple-ruby

Dirk Eddelbuettel <[email protected]>
   quantlib-swig

Esteban Manchado Velázquez <[email protected]>
   dhelp

Francesco Paolo Lovergine <[email protected]>
   gdal (U)
   geos (U)
   mapserver (U)

Francesco Poli (wintermute) <[email protected]>
   apt-listbugs

Francisco Moya <[email protected]>
   zeroc-ice

Georgios M. Zarkadas <[email protected]>
   dhelp (U)

Gudjon I. Gudjonsson <[email protected]>
   comedilib

Guilherme de S. Pastore <[email protected]>
   subversion (U)

Gustavo Franco <[email protected]>
   ruby-mp3info

Hendrik Sattler <[email protected]>
   obexftp

Ivo Maintz <[email protected]>
   libsbml (U)

James McCoy <[email protected]>
   vim (U)

Janos Guljas <[email protected]>
   uwsgi

Jesse van den Kieboom <[email protected]>
   gnoemoe

Joey Schulze <[email protected]>
   vpim

Jon Bernard <[email protected]>
   libfam-ruby
   libimlib2-ruby

Jérémy Bobbio <[email protected]>
   schleuder

Kenshi Muto <[email protected]>
   quickml

KURASHIKI Satoru <[email protected]>
   hyperestraier
   qdbm

Kurt Roeckx <[email protected]>
   epic5

Masahito Omote <[email protected]>
   prime
   prime-dict
   sary-ruby
   suikyo

Matt Palmer <[email protected]>
   dns323-firmware-tools
   libaugeas-ruby

Matthias Klose <[email protected]>
   dlr-languages (U)

Micah Anderson <[email protected]>
   puppet (U)

Michael Janssen <[email protected]>
   player

Michael Meskes <[email protected]>
   korundum (U)
   qtruby (U)

Mirco Bauer <[email protected]>
   dlr-languages (U)

Moritz Muehlenhoff <[email protected]>
   elinks (U)

Moriyoshi Koizumi <[email protected]>
   libsbml (U)

Nico Golde <[email protected]>
   stfl
   tpp

Nicolas Valcárcel Scerpella (Canonical) <[email protected]>
   libaugeas-ruby (U)

Nigel Kersten <[email protected]>
   puppet (U)

NIIBE Yutaka <[email protected]>
   gonzui (U)
   htree
   langscan
   libescape-ruby
   libwebapp-ruby
   samidare
   tomoe
   treil
   wfo

Nobuhiro IMAI <[email protected]>
   rubilicious

Olly Betts <[email protected]>
   xapian-bindings

Pablo Lorenzzoni <[email protected]>
   html-template

Paul van Tilburg <[email protected]>
   gnoemoe (U)
   shoes (U)

Peter Samuelson <[email protected]>
   subversion

Puppet Package Maintainers <[email protected]>
   puppet

Roberto C. Sanchez <[email protected]>
   quickfix (U)
   rubyluabridge (U)

Russ Allbery <[email protected]>
   remctl

Ryan Niebur <[email protected]>
   libxml-simple-ruby (U)

Sebastian Harl <[email protected]>
   graphviz (U)
   rrdtool (U)

Sebastien Delafond <[email protected]>
   god

Shugo Maeda <[email protected]>
   eruby
   librmail-ruby
   libwrap-ruby
   mod-ruby
   mod-ruby (U)

Siegfried-Angel Gevatter Pujals <[email protected]>
   screenruler

Stefan Hornburg (Racke) <[email protected]>
   dhelp (U)

Stig Sandbeck Mathisen <[email protected]>
   puppet (U)

Sune Vuorela <[email protected]>
   korundum (U)
   qtruby (U)

Sylvestre Ledru <[email protected]>
   ohcount

Taku YASUI <[email protected]>
   libgettext-ruby (U)
   libimage-size-ruby (U)
   librd-html-ext-ruby (U)
   libzip-ruby (U)

Taku YASUI <[email protected]>
   hiki
   libexif-ruby
   libfilesystem-ruby (U)
   libmp3tag-ruby
   nadoka
   ruby-exif (U)

TANIGUCHI Takaki <[email protected]>
   amrita2
   aswiki

Tatsuki Sugiura <[email protected]>
   libfcgi-ruby
   libfilesystem-ruby
   libgettext-ruby
   libimage-size-ruby
   libneedle-extras-ruby
   libneedle-ruby
   libnet-netrc-ruby
   libnora-ruby
   librd-html-ext-ruby
   libvorbisfile-ruby
   libzip-ruby

Tatsuya Kinoshita <[email protected]>
   mhc

Thomas Mueller <[email protected]>
   apt-listbugs (U)

Thorsten Alteholz <[email protected]>
   libsbml (U)

Todd Troxell <[email protected]>
   flvtool2

Tomas Pospisek <[email protected]>
   posixlock

Torsten Marek <[email protected]>
   korundum (U)
   qtruby (U)

Torsten Werner <[email protected]>
   ohcount (U)

Troy Heber <[email protected]>
   subversion (U)

Y Giridhar Appaji Nag <[email protected]>
   elinks

YAEGASHI Takeshi <[email protected]>
   rubyfilter

Youhei SASAKI <[email protected]>
   rttool
   ruby-hdfeos5 (U)

Yukiharu YABUKI <[email protected]>
   td2planet


--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: 
http://lists.debian.org/CAFcjS5VnDk_N-S5bCYgZvfc_SQ7GOwHA6ErMhUz4RZKzsp=h...@mail.gmail.com

Reply via email to