On Thu, Jun 05, 2003 at 07:50:48PM +0200, Guillaume Rousse wrote:
Ainsi parlait David Walser :
Shouldn't the perl package just provide perl(strict) so that a whole bunch
of packages don't have to do that requires exception?
Perl modules are supposed to begin with an uper case, while pragmas are supposed to begin with a lower case. Just changing the regexp would be enough to retains only modules as dependencies.

supposed does not mean all modules do


use "sarca.pl"; happens

btw pragma list is very short:
constant, diagnostics, integer, sigtrap, strict, subs, warnings, sort
it can be hardcoded in perl.req

this is another try in my perl.req patch,
it correctoly distinguishes between heredocs and unary << operator and
adds pragmas

--- /usr/lib/rpm/perl.req       2003-05-13 17:07:19.000000000 +0200
+++ perl.req    2003-06-07 11:50:11.000000000 +0200
@@ -93,6 +93,12 @@
    if ( (m/^=(over)/) .. (m/^=(back)/) ) {
      next;
    }
+
+    # skip heredocs (unary << is ok)
+    if ((m/.*<<(\s*[\"\'])?(\w+)[\"\']?\s*[[:punct:]]/) &&
+       (! m/(\d+|\$\w+)\s*<<\s*(\d+|\$\w+)/))  { $tarocco=$2; }
+    next unless ($tarocco eq "" || m/^$tarocco$/);
+    $tarocco="";

    # skip the data section
    if (m/^__(DATA|END)__$/) {
@@ -145,6 +151,16 @@
      # skip if the phrase was "use of" -- shows up in gimp-perl, et al
      next if $module eq 'of';

+      # skip pragmas
+      next if $module eq 'constant';
+      next if $module eq 'diagnostics';
+      next if $module eq 'integer';
+      next if $module eq 'sigtrap';
+      next if $module eq 'strict';
+      next if $module eq 'subs';
+      next if $module eq 'warnings';
+      next if $module eq 'sort';
+
      # if the module ends in a comma we probaly caught some
      # documentation of the form 'check stuff,\n do stuff, clean
      # stuff.' there are several of these in the perl distribution

--
Luca Berra -- [EMAIL PROTECTED]
       Communication Media & Services S.r.l.
/"\
\ /     ASCII RIBBON CAMPAIGN
 X        AGAINST HTML MAIL
/ \



Reply via email to