Release-Checklist

 view release on metacpan or  search on metacpan

scripts/used-by.pl  view on Meta::CPAN

#!/usr/bin/env perl

use 5.016000;
use warnings;

our $VERSION = "2.02 - 20211221";

sub usage {
    my $err = shift and select STDERR;
    say "usage: $0 [--list]";
    exit $err;
    } # usage

use blib;
use Cwd;
use LWP;
use LWP::UserAgent;
use HTML::TreeBuilder;
use CPAN;
use Capture::Tiny qw( :all );
use Term::ANSIColor qw(:constants :constants256);
use Test::More;

use Getopt::Long qw(:config bundling passthrough);
GetOptions (
    "help|?"	=> sub { usage (0); },
    "V|version"	=> sub { say $0 =~ s{.*/}{}r, " [$VERSION]"; exit 0; },
    "a|all!"	=> \ my $opt_a,	# Also build for known FAIL (they might have fixed it)
    "l|list!"	=> \ my $opt_l,
    "d|dir=s"	=> \(my $opt_d = "used-by-t"),
    ) or usage (1);

my $tm = shift // do {
    (my $d = getcwd) =~ s{.*CPAN/([^/]+)(?:/.*)?}{$1};
    $d;
    } or die "No module to check\n";

diag ("Testing used-by for $tm\n");
my %tm = map { $_ => 1 } qw( );

if ($opt_d) {
    mkdir $opt_d, 0775;
    unlink glob "$opt_d/*.t";
    -d $opt_d or die "$opt_d cannot be used as test folder\n";
    }

$| = 1;
$ENV{AUTOMATED_TESTING}   = 1;
$ENV{PERL_USE_UNSAFE_INC} = 1; # My modules are not responsible
# Skip all dists that
# - are FAIL not due to the mudule being tested (e.g. POD or signature mismatch)
# - that require interaction (not dealt with in distroprefs or %ENV)
# - are not proper dists (cannot use CPAN's ->test)
# - require external connections or special devices
my %skip = $opt_a ? () : map { $_ => 1 } (
    # Data-Peek
    "GSM-Gnokii",			# External device
    # DBD-CSV
    "ASNMTAP",
    "Gtk2-Ex-DBITableFilter",		# Unmet prerequisites
    # Text-CSV_XS
    "ACME-QuoteDB",			# ::CSV Possible precedence issues
    "App-Framework",			# Questions
    "App-mojopaste",			# failing internet connections
    "ASNMTAP",				# Questions
    "Business-Shipping-DataTools",	# Questions and unmet prereqs
    "Catalyst-TraitFor-Model-DBIC-Schema-QueryLog-AdoptPlack", # maint/Maker.pm
    "CGI-Application-Framework",	# Unmet prerequisites
    "chart",				# Questions (in Apache-Wyrd)
    "CohortExplorer",			# Unmet prerequisites
    "Connector",			# No Makefile.PL (in Annelidous)
    "Data-Importer",			# test fail in DBIx::Class::Storage::DBI::insert
    "DBIx-Class-DigestColumns",		# unmet prereqs
    "DBIx-Class-FilterColumn-ByType",	# ::CSV - unmet prereqs
    # DBIx-Class-EncodedColumn",	# Busted configuration
    "DBIx-Class-FormTools",		# ::CSV POD
    "DBIx-Class-FromSledge",		# ::CSV Spelling
    "DBIx-Class-Graph",			# won't build at all
    "DBIx-Class-InflateColumn-Serializer-CompressJSON",	# ::CSV POD
    "DBIx-Class-Loader",		# ::CSV Deprecated
    "DBIx-Class-QueryProfiler",		# ::CSV - Kwalitee test (2011)
    "DBIx-Class-RDBOHelpers",		# ::CSV - Unmet prereqs
    "DBIx-Class-ResultSet-WithMetaData",# Bad test, deep list is unsorted RT#113517
    "DBIx-Class-Schema-Slave",		# ::CSV - Tests br0ken
    "DBIx-Class-Snowflake",		# ::CSV - Bad tests. SQLite fail
    "DBIx-Class-StorageReadOnly",	# ::CSV - POD coverage
    "DBIx-NoSQL",			# ::CSV - Syntax
    "DBIx-Patcher",			# ::CSV - Own tests fail
    "dbMan",				# Questions
    "Finance-Bank-DE-NetBank",		# Module signatures
    "FormValidator-Nested",		# ::CSV - Questions
    "FreeRADIUS-Database",		# ::CSV - Questions
    "Fsdb",				# ::CSV -
    "Geo-Coder-Free",			# prereqs LEHMANN-ware
    "Geo-USCensus-Geocoding",		# '302 Found'
    "Gtk2-Ex-DBITableFilter",		# Unmet prerequisites
    "Gtk2-Ex-Threads-DBI",		# Distribution is incomplete
    "hwd",				# Own tests fail
    "Iterator-BreakOn",			# ::CSV - Syntax, POD, badness
    "Mail-Karmasphere-Client",		# ::CSV - No karmaclient
    "Metabolomics::Fragment::Annotation", # Own tests fail
    "Module-CPANTS-ProcessCPAN",	# ::CSV - Questions
    "Module-CPANTS-Site",		# ::CSV - Unmet prerequisites
    "Mojolicious::Plugin::ReplyTable",	# Own tests fail
    "Mojolicious::Plugin::Tables",	# Unmet prerequisites
    "Net-IPFromZip",			# Missing zip file(s)
    "OWL-DirectSemantics",		# dot-in-INC problem
    "Parse-CSV-Colnames",		# ::CSV - Fails because of Parse::CSV
    "Pcore",				# Unmet prereqs (common::header)
    "PkgForge-Registry",		# Moose conflict
    "Plack-Middleware-DBIC-QueryLog",	# maint/Maker.pm
    "Plack-Middleware-Debug-DBIC-QueryLog",	# maint/Maker.pm



( run in 2.208 seconds using v1.01-cache-2.11-cpan-8f98c5d2c55 )