This message is intended for people working on the Perl toolchain and,
in particular, for attendees at the Perl Toolchain Summit starting
tomorrow in Oslo.
The test-against-dev work I have been conducting for several months has
identified at least one CPAN distro, high up in the toolchain, which is
broken on non-Linux operating systems. The reasons for this breakage
are sub-optimal code in modules or test suites, not "Blead Breaks CPAN."
Such breakage prevents the distro from being installed and means that
its revdeps are never reached during the following cases:
* Installation via 'cpan' shell: Distro fails and is graded as FAIL and
reported to metabase. Assuming on 'force install' is attempted on
distro, revdep is graded as DISCARD and no report is sent to metabase or
to revdep's maintainers.
* Installation via 'cpanm': Distro fails and is graded as FAIL. Revdep
is not attempted and is not graded anywhere. You have to examine
build.log for messages reporting "Bailing out ...." No report is sent
to metabase or to maintainers.
* Because test-against-dev relies on 'cpanm', if a distro in, say, the
top 1000 of the CPAN river fails, its revdeps are never reached, meaning
their code does not get exercised against the latest monthly development
release.
The CPAN distro of greatest concern right now is
File-Copy-Recursive(http://search.cpan.org/~dmuey/File-Copy-Recursive-0.40/),
currently ranked about #128 in the CPAN river. On FreeBSD (and perhaps
other OSes), FCR's current version (0.40 as of Apr 17 2018) has an
unfixed bug (https://rt.cpan.org/Ticket/Display.html?id=123964) leading
to test failures and failure to install. Unless a user chooses to
'--force' install FCR, that prevents its revdeps from being installed in
an automated manner or tested against dev/blead.
Over 6000 CPAN distributions have direct or indirect dependencies on
FCR, including CPAN-Reporter, Test-File-ShareDir, DateTime, Dist-Zilla
and Catalyst-Devel. So thousands of CPAN distros cannot be installed on
FreeBSD and other systems.
The author of FCR is aware of the bug ticket and Tom Hukins provided a
patch which I have tested successfully on FreeBSD. But the patch has
not been applied as of yesterday. As we are now in the countdown to
perl-5.28.0, we really need to be able to assess the impact of release
candidates on CPAN -- and not just on Linux.
Earlier this week I wanted to resume sending CPANtesters reports from
FreeBSD-11.1. I tried to install CPAN-Reporter but could not, due to
the bug in its dependency, FCR. To address that I have uploaded to CPAN
a new CPAN distro, File-Copy-Recursive-Reduced (FCR2), which provides
stripped-down versions of 2 FCR subroutines, fcopy() and dircopy(),
which are used in the CPAN-Reporter test suite. I then branched
CPAN-Reporter to create a version which uses the FCR2 versions of these
functions rather than FCR. That makes CPAN-Reporter installable again.
I have therefore filed:
https://github.com/cpan-testers/CPAN-Reporter/issues/88
and
https://github.com/cpan-testers/CPAN-Reporter/pull/90 (a better p.r.
than my earlier /89)
I hope that during the PTS you can review and apply this p.r. and upload
a new version of CPAN-Reporter. This will once again permit automated
installation on FreeBSD and other non-Linux operating systems. It will
also help us to assess perl-5.28's possible impact on that distro and
its revdeps.
Thank you very much.
Jim Keenan