Hide Forgot
Description of problem: See bugs https://bugzilla.mozilla.org/show_bug.cgi?id=1588175 for a description of the bugzilla side of things, and see https://github.com/Perl/perl5/issues/17271 for the perl side of things. The problem is, when running checksetup.pl, perl at some point complains about Undefined subroutine utf8::SWASHNEW. It seems that perl needs to pre-load this function in Safe.pm, but the way it attempts to do so is outdated. Version-Release number of selected component (if applicable): perl-interpreter-5.30.3-452.fc31.x86_64 perl-interpreter-5.30.3-453.fc32.x86_64 Since the perl bug report says the bug has been fixes, I assume there is a newer version available. Otherwise the simple patch described in the perl bug report should be applied. How reproducible: Steps to Reproduce: 1. install and configure a minimal bugzilla (in a VM) 2. cd /usr/share/Bugzilla 3. ./checksetup.pl Actual results: Error message about Undefined subroutine utf8::SWASHNEW Expected results: No such error. Additional info:
The Perl bug is still open and the fix was not merged into Perl sources. Bugzilla bug is closed. Can you please provide a minimal Perl reproducer that does not involve installing Bugzilla?
I can't provide a reproducer. I haven't done any serious Perl programming since about 1988 and have no intention of starting now. A simple google search on utf8::SWASHNEW shows quite a few instances of this problem, but they all involve checksetup.pl in bugzilla.
I managed to minimize it; main.pl: #!/usr/bin/perl BEGIN { require Safe; Safe->new; } tr/\x{100}//; $ perl main.pl Undefined subroutine utf8::SWASHNEW called at main.pl line 6. It happens when a tr/// with a 255-above code point is compiled after creating a Safe object. (Bugzilla checksetup.pl has "new Safe" in Bugzilla::Install::Util::_get_string_from_file() and tr/// in Bugzilla::Util.) In my opinion it's an unintended effect of the Safe implementation. Safe should affect only a code ($unsafe_code) compiled (reval()) inside a Safe object ($compartment) as read in the documentation: use Safe; $compartment = new Safe; $compartment->permit(qw(time sort :browse)); $result = $compartment->reval($unsafe_code);
perl-libs-5.30.3-452.fc31 is affected. perl-libs-5.32.0-456.fc33 is not affected, because utf8_heavy.pl whose loading is prevented by Safe was removed in perl 5.31.6 and is not loaded anymore. That's probably the reason why Perl upstream has never fixed it.
FEDORA-2020-59f945f4be has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2020-59f945f4be
FEDORA-2020-54c4dc151a has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2020-54c4dc151a
FEDORA-2020-59f945f4be has been pushed to the Fedora 32 testing repository. In short time you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-59f945f4be` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-59f945f4be See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
FEDORA-2020-54c4dc151a has been pushed to the Fedora 31 testing repository. In short time you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-54c4dc151a` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-54c4dc151a See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
FEDORA-2020-59f945f4be has been pushed to the Fedora 32 stable repository. If problem still persists, please make note of it in this bug report.
FEDORA-2020-54c4dc151a has been pushed to the Fedora 31 stable repository. If problem still persists, please make note of it in this bug report.
FEDORA-MODULAR-2020-bfc9507514 has been submitted as an update to Fedora 32 Modular. https://bodhi.fedoraproject.org/updates/FEDORA-MODULAR-2020-bfc9507514
FEDORA-MODULAR-2020-b67d5de786 has been submitted as an update to Fedora 31 Modular. https://bodhi.fedoraproject.org/updates/FEDORA-MODULAR-2020-b67d5de786
FEDORA-MODULAR-2020-bfc9507514 has been pushed to the Fedora 32 Modular testing repository. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-MODULAR-2020-bfc9507514 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
FEDORA-MODULAR-2020-b67d5de786 has been pushed to the Fedora 31 Modular testing repository. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-MODULAR-2020-b67d5de786 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
FEDORA-MODULAR-2020-b67d5de786 has been pushed to the Fedora 31 Modular stable repository. If problem still persists, please make note of it in this bug report.
FEDORA-MODULAR-2020-bfc9507514 has been pushed to the Fedora 32 Modular stable repository. If problem still persists, please make note of it in this bug report.