I noticed that packaged tests in /usr/libexec/... generates Provides because they are matched by perllib.attr: $ cat /usr/lib/rpm/fileattrs/perllib.attr %__perllib_provides %{_rpmconfigdir}/perl.prov %__perllib_requires %{_rpmconfigdir}/perl.req %__perllib_magic ^Perl[[:digit:]] module source.* %__perllib_path \\.pm$ %__perllib_flags magic_and_path I think they were meant to be only covered with perltest.attr: # cat /usr/lib/rpm/fileattrs/perltest.attr %__perltest_requires %{_rpmconfigdir}/perl.req %__perltest_magic ^.*[Pp]erl[[:digit:]]* .*$ %__perltest_path /usr/libexec/.*\\.(pl|pm|t)$ %__perltest_flags magic_and_path But perltest.attr is more similar to perl.attr, it's about scripts: $ cat /usr/lib/rpm/fileattrs/perl.attr %__perl_requires %{_rpmconfigdir}/perl.req %__perl_magic ^.*[Pp]erl .*$ %__perl_flags exeonly Would it be possible to change perllib.attr to match only files under /usr/{share,lib,lib64}/perl? Observed with perl-generators-1.13-5.fc36.noarch. (I find out that filtering those Provides with %__exclude_provides is a problem when the tests involve symlinks to modules in the main package. See perl-Module-Install-TestBase-tests-0.86-24.fc36 which erroneously provides perl(Module::Install::TestBase) <https://koji.fedoraproject.org/koji/buildinfo?buildID=1892296>. I will try to work it around on packaged file level in perl-Module-Install-TestBase.)
This bug appears to have been reported against 'rawhide' during the Fedora Linux 37 development cycle. Changing version to 37.
> Would it be possible to change perllib.attr to match only files under > /usr/{share,lib,lib64}/perl? I'll try if using exclude_path in perllib.attr can help. The definition could be: %__perllib_exclude_path /usr/libexec/.*\\.(pl|pm|t)$$