r52407 - in /trunk/dh-make-perl: TODO debian/changelog lib/DhMakePerl.pm

dmn at users.alioth.debian.org dmn at users.alioth.debian.org
Tue Feb 9 20:45:29 UTC 2010


Author: dmn
Date: Tue Feb  9 20:45:21 2010
New Revision: 52407

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=52407
Log:
scan WNPP for missing dependencies

wnpp scanning needs to be improved:
- use http://www.debian.org/devel/wnpp/prospective (or ../requested and
  ../being_packaged) as source in order to avoid overloading the BTS
- cache the parsed hash and update it daily

Modified:
    trunk/dh-make-perl/TODO
    trunk/dh-make-perl/debian/changelog
    trunk/dh-make-perl/lib/DhMakePerl.pm

Modified: trunk/dh-make-perl/TODO
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/dh-make-perl/TODO?rev=52407&op=diff
==============================================================================
--- trunk/dh-make-perl/TODO (original)
+++ trunk/dh-make-perl/TODO Tue Feb  9 20:45:21 2010
@@ -4,6 +4,9 @@
   May be similar to #525847
 * when ITP for the package is found, try to deduce short/long description from
   the bug report
+* get_itp() should look at http://www.debian.org/devel/wnpp/prospective (or
+  requested and being_packaged), cache the resulting hash and update the cache
+  daily
 * add new command, --trace-depends. To be used like
 
    dh-make-perl --trace-depends --cpan Foo-Bar
@@ -14,8 +17,6 @@
   Ryan52 already has a program which does this, in svn as
    ./scripts/cpan-unpackaged-deps.pl. Steal code. or wait for Ryan52
    to eventually do it himself.
-* when a dependency is not packaged, search wnpp's bugs and report if there is
-  ITP about the package
 * versioned dependencies should add the epochs too (found in
   libpoex-role-sessioninstantiation-perl, where META.yml and Build.PL
   request 'POE 1.005' which should translate to "libpoe-perl (>= 2:1.0050)")

Modified: trunk/dh-make-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/dh-make-perl/debian/changelog?rev=52407&op=diff
==============================================================================
--- trunk/dh-make-perl/debian/changelog (original)
+++ trunk/dh-make-perl/debian/changelog Tue Feb  9 20:45:21 2010
@@ -8,6 +8,7 @@
   * --directory now accepts an optional directory argument
   * document that override mechanism is not used with --refresh
   * add tests for --refresh
+  * when a required dependency is not found, scan WNPP for a corresponding ITP
 
  -- Damyan Ivanov <dmn at debian.org>  Fri, 05 Feb 2010 09:05:25 +0200
 

Modified: trunk/dh-make-perl/lib/DhMakePerl.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/dh-make-perl/lib/DhMakePerl.pm?rev=52407&op=diff
==============================================================================
--- trunk/dh-make-perl/lib/DhMakePerl.pm (original)
+++ trunk/dh-make-perl/lib/DhMakePerl.pm Tue Feb  9 20:45:21 2010
@@ -1199,19 +1199,29 @@
     if (@$missing) {
         my ($missing_debs_str);
         if ($apt_contents) {
-            $missing_debs_str = join( "\n",
-                "Needs the following modules for which there are no debian packages available",
-                map( {" - $_"} @$missing ),
-                '' );
+            $missing_debs_str
+                = "Needs the following modules for which there are no debian packages available:\n";
+            for (@$missing) {
+                my $itp = $self->get_itp($_);
+                $missing_debs_str .= " - $_";
+                $missing_debs_str .= " (ITP #$itp)" if $itp;
+                $missing_debs_str .= "\n";
+            }
         }
         else {
-            $missing_debs_str = join( "\n",
-                "The following Perl modules are required and not installed in your system:",
-                map( {" - $_"} @$missing ),
-                "You do not have 'apt-file' currently installed, or have not ran",
-                "'apt-file update' - If you install it and run 'apt-file update' as",
-                "root, I will be able to tell you which Debian packages are those",
-                "modules in (if they are packaged)." );
+            $missing_debs_str = "The following Perl modules are required and not installed in your system:\n";
+            for (@$missing) {
+                my $itp = $self->get_itp($_);
+                $missing_debs_str .= " - $_";
+                $missing_debs_str .= " (ITP #$itp)" if $itp;
+                $missing_debs_str .= "\n";
+            }
+            $missing_debs_str .= <<EOF
+You do not have 'apt-file' currently installed, or have not ran
+'apt-file update' - If you install it and run 'apt-file update' as
+root, I will be able to tell you which Debian packages are those
+modules in (if they are packaged).
+EOF
         }
 
         if ($self->cfg->requiredeps) {




More information about the Pkg-perl-cvs-commits mailing list