Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

corelist shows a non existent module Pod::Functions::Functions

by LanX (Saint)
on Jul 24, 2022 at 22:19 UTC ( [id://11145693]=perlquestion: print w/replies, xml ) Need Help??

LanX has asked for the wisdom of the Perl Monks concerning the following question:

The title says it already, I stumbled over a strange module's name Pod::Functions::Functions in corelist and - surprise - it doesn't exist, neither locally nor on CPAN.

I suppose the data for corelist is automatically created...

Questions:

  • Can you reproduce?
  • Does anyone know° where to find the bug?
FWIW: Pod::Functions exists!
C:\>corelist Pod::Functions::Functions Data for 2021-01-23 Pod::Functions::Functions was first released with perl v5.20.0 C:\>perldoc Pod::Functions::Functions No documentation found for "Pod::Functions::Functions". C:\>perl -v This is perl 5, version 32, subversion 1 (v5.32.1) built for MSWin32-x +64-multi-thread

update

°) OK It's hardcoded into the data inside Module::CoreList

-> https://metacpan.org/release/BINGOS/Module-CoreList-5.20220720/source/lib/Module/CoreList.pm

seems like it's manually maintained and no tests are run. (shrug)

Cheers Rolf
(addicted to the Perl Programming Language :)
Wikisyntax for the Monastery

Replies are listed 'Best First'.
Re: corelist shows a non existent module Pod::Functions::Functions
by choroba (Cardinal) on Jul 25, 2022 at 00:18 UTC
    Reported, a fix proposed.

    map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]
      I couldn't sleep and was desperate enough to hack a test script checking my Strawberry portable for missing core modules and missing documentation...

      I'm stunned!

      (Edit: Not sure if it's a Strawberry issue, I mean there is not very often need for Amiga stuff on Win...)

      Update

      Oops, I should check if core list says if they're still installed...

      Update

      Fixed code by providing the current Version of Perl $]

      There are still modules missing but much less than before

      update
      This should be run on a linux system again.

      use v5.12; use warnings; use Data::Dump qw/pp dd/; use Module::CoreList; my $verbose = 0; my $limit = -20; $|=1; sub out { say @_ if $verbose >0; } my @missing; my @no_doc; my @list = Module::CoreList->find_modules( qr/./, $] ); my $pod_path; for my $module (@list) { out "--- checking $module"; $pod_path = qx/perldoc -l $module 2>&1/; if ($pod_path =~ /no documentation found/i) { chomp $pod_path; out " $pod_path"; unless (find_module($module)){ # explicit require to be sure it's not a filesystem issue my $require_module = qx/perl -m$module -e0 2>&1/; if ( $require_module =~ /can't locate/i ) { out " Couldn't require $module:"; push @missing, $module; } } else { push @no_doc, $module; } } last if $limit-- == 0; # short test } warn pp '\@missing: ', \@missing; warn pp '\@no_doc: ', \@no_doc; sub find_module { my ( $filename ) = @_ ; # --- snippet from perldoc -f require $filename =~ s~::~/~g; $filename .= ".pm"; for my $prefix (@INC) { my $realfilename = "$prefix/$filename"; next if ! -e $realfilename || -d _ || -b _; return 1; } out " Couldn't locate $filename in \@INC ..."; return; }

      Cheers Rolf
      (addicted to the Perl Programming Language :)
      Wikisyntax for the Monastery

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://11145693]
Approved by Athanasius
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having a coffee break in the Monastery: (8)
As of 2024-04-23 12:42 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found