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

Re: Lintian check for Ruby PKG



Hi Jonas,

On Sun, Aug 18, 2013 at 11:13:13PM +0200, Jonas Genannt wrote:
> Hello,
> 
> as discussed in the Ruby Bof on Debconf, I have written Lintian checks for our Ruby PKG:
> 
> 	https://github.com/hggh/ruby-lintian
> 
> The lintian checks includes the following three checks:
> 
>  * old naming schema (libfoo-ruby) if it's no transitional package
>  * depends on ruby1.8
>  * depends on ruby1.9.1
> 
> 
> These are my first lintian checks, please feel free to comment.

Thanks a lot for working on this! I have some suggestions on the wording
of the tag descriptions, see the attached patch.

With regard to the checks code:

>  my $pkg_description = $info->field('description');
>  if ($pkg_description) {
>    if ($pkg =~ /^lib.*-ruby.*/ and $pkg_description !~ /transitional/im ) {
>      tag 'ruby-library-old-package-name-schema';
>    }
>  }

maybe lintian already has some logic to detect a package as transitional that
is more ellaborate than that?

There is also the case where the package was not converted for wheezy, so the
wheezy package still needs to have the transitional packages ...

>  my $str_deps = $info->relation('strong');
>  if ($str_deps and $str_deps->implies("ruby1.8")) {
>      tag 'ruby-depends-on-ruby1.8';
>  }

This looks fine to me.

>  if ($str_deps and $str_deps->implies("ruby1.9.1")) {
>      tag 'ruby-depends-on-specific-ruby-version';
>  }

Is it possible to put this tag on any dependency that matches ruby[0-9.]+
instead of checking explictly on ruby1.9.1? e.g. a package depending explicitly
on ruby2.0 should also receive such warning.

IMO this tags should be severity normal instead of wishlist.

-- 
Antonio Terceiro <terceiro@debian.org>
From 7bcb1eabcf028c42cd1a9e5101ca3c215ada7ae5 Mon Sep 17 00:00:00 2001
From: Antonio Terceiro <terceiro@softwarelivre.org>
Date: Sat, 24 Aug 2013 17:37:09 -0300
Subject: [PATCH] Wording suggestions

---
 ruby.desc | 20 ++++++++++++--------
 1 file changed, 12 insertions(+), 8 deletions(-)

diff --git a/ruby.desc b/ruby.desc
index b62cd0c..4c4c4b4 100644
--- a/ruby.desc
+++ b/ruby.desc
@@ -7,9 +7,10 @@ Needs-Info: bin-pkg-control, index, scripts, unpacked
 Tag: ruby-depends-on-ruby1.8
 Severity: serious
 Certainty: certain
-Info: This package depends on ruby1.8, but ruby 1.8 is end of live.
- Please check your package against newer Ruby versions and update
- your dependencies to "ruby | ruby-interpreter".
+Info: This package depends on ruby1.8, but ruby 1.8 is at its end of life.
+ Please check your package against newer Ruby versions and update your
+ dependencies to "ruby | ruby-interpreter", or in the worst case, to a newer
+ Ruby version.
  .
  https://wiki.debian.org/Teams/Ruby/Packaging
 
@@ -17,16 +18,19 @@ Tag: ruby-depends-on-specific-ruby-version
 Severity: wishlist
 Certainty: certain
 Info: This package depends on a specific ruby version.
- Packages should not depend on a specific ruby version, it should use generic
- "ruby | ruby-interpreter" as dependency.
+ Packages should not depend on a specific ruby version if possible, because
+ this makes it harder to drop support for obsolete Ruby versions. Ideally
+ packages should declare a dependency on Ruby using a generic
+ "ruby | ruby-interpreter".
  .
  https://wiki.debian.org/Teams/Ruby/Packaging
 
 Tag: ruby-library-old-package-name-schema
 Severity: serious
 Certainty: certain
-Info: Your ruby library package name does not fit our Jessie release goals.
- The package name does not fit our new naming schema. Ruby libraries should
- named like `ruby-foo`.
+Info: Your ruby library package name does not fit the Debian standards for Ruby.
+ The package name does not fit the current naming scheme for Ruby packages.
+ Ruby libraries should named like `ruby-foo`. Packages named libfoo-ruby* are
+ deprecated.
  .
  https://wiki.debian.org/Teams/Ruby/Packaging
-- 
1.8.4.rc3

Attachment: signature.asc
Description: Digital signature


Reply to: