Perl / perl5

🐪 The Perl programming language
https://dev.perl.org/perl5/
Other
1.93k stars 549 forks source link

perlbug should identify trackable module better #15981

Open p5pRT opened 7 years ago

p5pRT commented 7 years ago

Migrated from rt.perl.org#131316 (status was 'open')

Searchable as RT131316$

p5pRT commented 7 years ago

From @iabyn

Created by @iabyn

This is an issue forked from RT #131258\, where I pointed out​:

On Sat\, May 06\, 2017 at 07​:05​:58PM +0200\, Jeroen van Wolffelaar via perl5-porters wrote​:

(maybe an idea if perlbug would've redirected me? It asked me about which module this was\, so theoretically it should be able to figure out/even correctly route the ticket?)

Perlbug is supposed to do this. However\, the code currently only does​:

  if the module is not bundled with perl​:   suggest a mis-spelling or try http​://rt.cpan.org\,   else if module has a bug tracker entry​:   suggest using that bug tracker instead

However\, Module​::CoreList's pod entry for it's bug_tracker() method implies that bug_tracker() is only to override the default of   http​://rt.cpan.org/Public/Dist/Display.html?Name=$ModuleName

So perlbug won't correctly handle modules bundled with perl that have a default bugtracker.

I think the actual logic should be​:

  if the module is not bundled with perl​:   suggest a mis-spelling or try http​://rt.cpan.org;   else if Module​::CoreList​::upstream($module)   $tracker = Module​::CoreList​::bug_tracker($module)   // "http​://rt.cpan.org/Public/Dist/Display.html?Name=$module"   suggest using $tracker instead   else   accept bug report

Perl Info ``` Flags: category=utilities severity=wishlist Site configuration information for perl 5.26.0: Configured by davem at Thu May 11 18:56:22 BST 2017. Summary of my perl5 (revision 5 version 26 subversion 0) configuration: Platform: osname=linux osvers=4.4.14-200.fc22.x86_64 archname=x86_64-linux uname='linux robin 4.4.14-200.fc22.x86_64 #1 smp fri jun 24 21:19:33 utc 2016 x86_64 x86_64 x86_64 gnulinux ' config_args='-des -Dprefix=/home/davem/perl5/a/perl-5.26.0-RC1.out -Uinstallusrbinperl -Doptimize=-g -Accflags=-DDEBUGGING -ggdb' hint=recommended useposix=true d_sigaction=define useithreads=undef usemultiplicity=undef use64bitint=define use64bitall=define uselongdouble=undef usemymalloc=n default_inc_excludes_dot=define bincompat5005=undef Compiler: cc='cc' ccflags ='-DDEBUGGING -ggdb -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' optimize='-g' cppflags='-DDEBUGGING -ggdb -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include' ccversion='' gccversion='5.3.1 20160406 (Red Hat 5.3.1-6)' gccosandvers='' intsize=4 longsize=8 ptrsize=8 doublesize=8 byteorder=12345678 doublekind=3 d_longlong=define longlongsize=8 d_longdbl=define longdblsize=16 longdblkind=3 ivtype='long' ivsize=8 nvtype='double' nvsize=8 Off_t='off_t' lseeksize=8 alignbytes=8 prototype=define Linker and Libraries: ld='cc' ldflags =' -fstack-protector-strong -L/usr/local/lib' libpth=/usr/local/lib /usr/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64 libs=-lpthread -lnsl -ldb -ldl -lm -lcrypt -lutil -lc perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc libc=libc-2.21.so so=so useshrplib=false libperl=libperl.a gnulibc_version='2.21' Dynamic Linking: dlsrc=dl_dlopen.xs dlext=so d_dlsymun=undef ccdlflags='-Wl,-E' cccdlflags='-fPIC' lddlflags='-shared -g -L/usr/local/lib -fstack-protector-strong' Locally applied patches: RC1 @INC for perl 5.26.0: /home/davem/perl5/a/perl-5.26.0-RC1.out/lib/site_perl/5.26.0/x86_64-linux /home/davem/perl5/a/perl-5.26.0-RC1.out/lib/site_perl/5.26.0 /home/davem/perl5/a/perl-5.26.0-RC1.out/lib/5.26.0/x86_64-linux /home/davem/perl5/a/perl-5.26.0-RC1.out/lib/5.26.0 Environment for perl 5.26.0: HOME=/home/davem LANG=en_GB.UTF-8 LANGUAGE (unset) LD_LIBRARY_PATH (unset) LOGDIR (unset) PATH=/usr/lib64/ccache:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/home/davem/bin:/home/davem/bin-perl PERL_BADLANG (unset) SHELL=/bin/bash ```
p5pRT commented 7 years ago

From @jkeenan

On Mon\, 15 May 2017 07​:36​:17 GMT\, davem wrote​:

This is a bug report for perl from davem@​iabyn.com\, generated with the help of perlbug 1.40 running under perl 5.26.0.

----------------------------------------------------------------- [Please describe your issue here]

This is an issue forked from RT #131258\, where I pointed out​:

On Sat\, May 06\, 2017 at 07​:05​:58PM +0200\, Jeroen van Wolffelaar via perl5-porters wrote​:

(maybe an idea if perlbug would've redirected me? It asked me about which module this was\, so theoretically it should be able to figure out/even correctly route the ticket?)

Perlbug is supposed to do this. However\, the code currently only does​:

if the module is not bundled with perl​: suggest a mis-spelling or try http​://rt.cpan.org\, else if module has a bug tracker entry​: suggest using that bug tracker instead

However\, Module​::CoreList's pod entry for it's bug_tracker() method implies that bug_tracker() is only to override the default of http​://rt.cpan.org/Public/Dist/Display.html?Name=$ModuleName

So perlbug won't correctly handle modules bundled with perl that have a default bugtracker.

I think the actual logic should be​:

if the module is not bundled with perl​: suggest a mis-spelling or try http​://rt.cpan.org; else if Module​::CoreList​::upstream($module) $tracker = Module​::CoreList​::bug_tracker($module) // "http​://rt.cpan.org/Public/Dist/Display.html?Name=$module" suggest using $tracker instead else accept bug report

How is the data in %Module​::CoreList​::upstream and %Module​::CoreList​::bug_tracker updated?

I ask because\, in the course of looking at this RT\, I noticed that the data for File​::Path is out-of-date.

##### 14954 %upstream = ( ... 15088 'File​::Path' => 'cpan'\, # correct ... 15394 ); 15395 15396 %bug_tracker = ( ... 15528 'File​::Path' => undef\, #wrong ... 15834 ); #####

I could push a change for this one line\, but that would beg the question of how many other inaccurate entries there currently are?

Thank you very much.

-- James E Keenan (jkeenan@​cpan.org)

p5pRT commented 7 years ago

The RT System itself - Status changed from 'new' to 'open'