Spec URL: https://spot.fedorapeople.org/perl-Mail-Message.spec SRPM URL: https://spot.fedorapeople.org/perl-Mail-Message-3.000-1.fc26.src.rpm Description: MIME message handling code, formerly part of the Mail::Box package. Fedora Account System Username: spot Note: This component used to be part of perl-Mail-Box, but was split off in 3.000.
The standalone and the packaged spec file differ in white space only. I will use the standalone one for this review. URL and Source0 addresses are Ok. Source archive (SHA-256: 3a70553d4898e783c0ae8645d6bb3c8fa1ed66f997627685a72119b02dd0be1d) is Ok. Summary is Ok. Description is Ok. License verified from lib/Mail/Message.pod and other POD files. Ok. FIX: The t/203-mlfolder.mbox and t/204-sgfolder.mbox files contain e-mail messages whose license is not very likely "GPL or Artistic". Since Fedora does not modify them and I believe their authors are content with their redistribution (because they were sent to public mailing lists), I think their existence in Fedora source packages does not violate copyright law. But they still can be unacceptable for Fedora because Fedora requires a permission for modification. Please add a notice into the spec file about their existence and negotiate their license with the Mail-Message author and their permissibility with Fedora legal department. No XS code, noarch BuildArch is Ok. FIX: Build-require `perl' because you execute it the spec file on lines 32 and 55. FIX: Build-require `coreutils' (perl-Mail-Message.spec:55). FIX: Build-require `make' (perl-Mail-Message.spec:56). FIX: Build-require `findutils' (perl-Mail-Message.spec:60). FIX: Build-require `glibc-common' (perl-Mail-Message.spec:66). TODO: Constrain `perl(URI)' dependency with `>= 1.23' (META.json:47). FIX: Build-require `perl(IO::Handle)' (Makefile.PL:5). FIX: Build-require `perl(warnings)' (Makefile.PL:96). FIX: Build-require `perl(base)' (lib/Mail/Message.pm:12). FIX: Build-require `perl(Carp)' (lib/Mail/Message.pm:22). FIX: Build-require `perl(Cwd)' (lib/Mail/Message/Test.pm:17). FIX: Build-require `perl(Email::Simple)' (lib/Mail/Message/Convert/EmailSimple.pm:20). FIX: Build-require `perl(Encode::Alias)' (lib/Mail/Message/Body/Encode.pm:24). FIX: Build-require `perl(Exporter)' (lib/Mail/Message/Test.pm:11). FIX: Build-require `perl(File::Basename)' (lib/Mail/Message/Body.pm:20). FIX: Build-require `perl(File::Copy)' (lib/Mail/Message/Test.pm:13). FIX: Build-require `perl(File::Temp)' (lib/Mail/Message/Body/File.pm:18). FIX: Build-require `perl(HTML::FormatText)' (lib/Mail/Message/Convert/HtmlFormatPS.pm:17). FIX: Build-require `perl(HTML::TreeBuilder)' (lib/Mail/Message/Convert/HtmlFormatPS.pm:16). FIX: Build-require `perl(integer)' (lib/Mail/Box/FastScalar.pm:13). FIX: Build-require `perl(IO::File)' (lib/Mail/Box/Parser/Perl.pm:16). FIX: Build-require `perl(IO::Handle)' (lib/Mail/Message/Field.pm:17). FIX: Build-require `perl(IO::Lines)' (lib/Mail/Message/Body/Lines.pm:15). FIX: Build-require `perl(List::Util)' (lib/Mail/Box/Parser/Perl.pm:15). FIX: Build-require `perl(Mail::Header)' (lib/Mail/Message/Convert/EmailSimple.pm:15). FIX: Build-require `perl(Mail::Identity)' (lib/Mail/Message/Field/Address.pm:12). FIX: Build-require `perl(Mail::Internet)' (lib/Mail/Message/Convert/EmailSimple.pm:14). FIX: Build-require `perl(MIME::Parser)' (lib/Mail/Message/Convert/MimeEntity.pm:16). FIX: Build-require `perl(MIME::QuotedPrint)' (lib/Mail/Message/Field/Full.pm:16). FIX: Build-require `perl(overload)' (lib/Mail/Message/Body.pm:27). FIX: Build-require `perl(POSIX)' (lib/Mail/Message/Field/Date.pm:14). FIX: Build-require `perl(Storable)' (lib/Mail/Message/Field/Full.pm:17). FIX: Build-require `perl(strict)' (lib/Mail/Message.pm:5). FIX: Build-require `perl(Text::Autoformat)' (lib/Mail/Message/Convert/TextAutoformat.pm:15). FIX: Build-require `perl(User::Identity::Collection::Emails)' (lib/Mail/Message/Field/AddrGroup.pm:12). FIX: Build-require `perl(utf8)' (lib/Mail/Message/Field/Full.pm:14). FIX: Build-require `perl(vars)' (lib/Mail/Message.pm:9). FIX: Build-require `perl(Data::Dumper)' (t/314encode-charset.t:13). TODO: Build-require `perl(Email::Abstract)' (t/423msgconv-emabs.t:14). TODO: Build-require `perl(Email::Simple)' (t/422msgconv-emsimp.t:16). FIX: Run-require `perl(Mail::Transport::Send)' (lib/Mail/Message.pm:164). FIX: Tests fail for me: t/322bodyconv-htmlps.t .... Can't locate Font/Metrics/TimesRoman.pm in @INC (you may need to install the Font::Metrics::TimesRoman module) (@INC contains: /home/test/rpmbuild/BUILD/Mail-Message-3.000/blib/lib /home/test/rpmbuild/BUILD/Mail-Message-3.000/blib/arch /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /usr/share/perl5/vendor_perl/HTML/FormatPS.pm line 219. # Looks like your test exited with 2 before it could output anything. t/322bodyconv-htmlps.t .... Dubious, test returned 2 (wstat 512, 0x200) Failed 5/5 subtests Please correct all `FIX' items, consider fixing `TODO' items and provide a new spec file. Resolution: Package NOT approved.
New SPEC: https://spot.fedorapeople.org/perl-Mail-Message.spec New SRPM: https://spot.fedorapeople.org/perl-Mail-Message-3.000-2.fc26.src.rpm Opened upstream ticket for the test files, removed them in %setup. Added 40 billion BuildRequires. Lifting FE-Legal.
I think removing the bad-licensed tests in %prep is too late as they are still distributed in the SRPM package, but I believe you know what you do. Mail::Transfer is not needed. Ok. All tests pass. Ok. $ rpmlint perl-Mail-Message.spec ../SRPMS/perl-Mail-Message-3.000-2.fc26.src.rpm ../RPMS/noarch/perl-Mail-Message-3.000-2.fc26.noarch.rpm 2 packages and 1 specfiles checked; 0 errors, 0 warnings. rpmlint is Ok. File layout and permissions are Ok. $ rpm -q --requires -p ../RPMS/noarch/perl-Mail-Message-3.000-2.fc26.noarch.rpm | sort -f | uniq -c 1 perl(:MODULE_COMPAT_5.24.1) 1 perl(:VERSION) >= 5.7.3 1 perl(base) 1 perl(Carp) 1 perl(Cwd) 1 perl(Date::Format) 1 perl(Email::Simple) 1 perl(Encode) 1 perl(Encode::Alias) 1 perl(Exporter) 1 perl(File::Basename) 1 perl(File::Copy) 1 perl(File::Spec) 1 perl(File::Temp) 1 perl(HTML::FormatText) 1 perl(HTML::TreeBuilder) 1 perl(integer) 1 perl(IO::File) 1 perl(IO::Handle) 1 perl(IO::Lines) 1 perl(List::Util) 1 perl(Mail::Address) 1 perl(Mail::Box::FastScalar) 1 perl(Mail::Box::Parser) 1 perl(Mail::Box::Parser::Perl) 1 perl(Mail::Header) 1 perl(Mail::Identity) 1 perl(Mail::Internet) 1 perl(Mail::Message) 1 perl(Mail::Message::Body) 1 perl(Mail::Message::Body::File) 1 perl(Mail::Message::Body::Lines) 1 perl(Mail::Message::Body::Multipart) 1 perl(Mail::Message::Body::Nested) 1 perl(Mail::Message::Body::String) 1 perl(Mail::Message::Construct) 1 perl(Mail::Message::Convert) 1 perl(Mail::Message::Field) 1 perl(Mail::Message::Field::Address) 1 perl(Mail::Message::Field::Addresses) 1 perl(Mail::Message::Field::AddrGroup) 1 perl(Mail::Message::Field::Attribute) 1 perl(Mail::Message::Field::Date) 1 perl(Mail::Message::Field::Fast) 1 perl(Mail::Message::Field::Full) 1 perl(Mail::Message::Field::Structured) 1 perl(Mail::Message::Field::Unstructured) 1 perl(Mail::Message::Field::URIs) 1 perl(Mail::Message::Head) 1 perl(Mail::Message::Head::Complete) 1 perl(Mail::Message::Head::FieldGroup) 1 perl(Mail::Message::Head::Partial) 1 perl(Mail::Message::Part) 1 perl(Mail::Message::TransferEnc) 1 perl(Mail::Reporter) 1 perl(MIME::Base64) 1 perl(MIME::Entity) 1 perl(MIME::Parser) 1 perl(MIME::QuotedPrint) 1 perl(MIME::Types) 1 perl(overload) 1 perl(POSIX) 1 perl(Scalar::Util) 1 perl(Storable) 1 perl(strict) 1 perl(Sys::Hostname) 1 perl(Test::More) 1 perl(Text::Autoformat) 1 perl(URI) 1 perl(User::Identity::Collection::Emails) 1 perl(utf8) 1 perl(vars) 1 perl(warnings) 1 rpmlib(CompressedFileNames) <= 3.0.4-1 1 rpmlib(FileDigests) <= 4.6.0-1 1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 1 rpmlib(PayloadIsXz) <= 5.2-1 FIX: Run-require `perl(Date::Parse)' (lib/Mail/Message/Field.pm:329). FIX: Run-require `perl(Mail::Transport::Send)' (lib/Mail/Message.pm:164). FIX: Run-require `perl(Time::Zone)' (lib/Mail/Message/Field.pm:296). TODO: Remove the __requires_exclude for Mail::SpamAssassin. The dependency is not autogenerated. $ rpm -q --provides -p ../RPMS/noarch/perl-Mail-Message-3.000-2.fc26.noarch.rpm | sort -f | uniq -c 1 perl(Mail::Box::FastScalar) = 3.000 1 perl(Mail::Box::Parser) = 3.000 1 perl(Mail::Box::Parser::Perl) = 3.000 1 perl(Mail::Message) = 3.000 1 perl(Mail::Message::Body) = 3.000 1 perl(Mail::Message::Body::Construct) = 3.000 1 perl(Mail::Message::Body::File) = 3.000 1 perl(Mail::Message::Body::Lines) = 3.000 1 perl(Mail::Message::Body::Multipart) = 3.000 1 perl(Mail::Message::Body::Nested) = 3.000 1 perl(Mail::Message::Body::String) = 3.000 1 perl(Mail::Message::Construct) = 3.000 1 perl(Mail::Message::Construct::Bounce) = 3.000 1 perl(Mail::Message::Construct::Build) = 3.000 1 perl(Mail::Message::Construct::Forward) = 3.000 1 perl(Mail::Message::Construct::Read) = 3.000 1 perl(Mail::Message::Construct::Rebuild) = 3.000 1 perl(Mail::Message::Construct::Reply) = 3.000 1 perl(Mail::Message::Construct::Text) = 3.000 1 perl(Mail::Message::Convert) = 3.000 1 perl(Mail::Message::Convert::EmailSimple) = 3.000 1 perl(Mail::Message::Convert::Html) = 3.000 1 perl(Mail::Message::Convert::HtmlFormatPS) = 3.000 1 perl(Mail::Message::Convert::HtmlFormatText) = 3.000 1 perl(Mail::Message::Convert::MailInternet) = 3.000 1 perl(Mail::Message::Convert::MimeEntity) = 3.000 1 perl(Mail::Message::Convert::TextAutoformat) = 3.000 1 perl(Mail::Message::Field) = 3.000 1 perl(Mail::Message::Field::Address) = 3.000 1 perl(Mail::Message::Field::Addresses) = 3.000 1 perl(Mail::Message::Field::AddrGroup) = 3.000 1 perl(Mail::Message::Field::Attribute) = 3.000 1 perl(Mail::Message::Field::Date) = 3.000 1 perl(Mail::Message::Field::Fast) = 3.000 1 perl(Mail::Message::Field::Flex) = 3.000 1 perl(Mail::Message::Field::Full) = 3.000 1 perl(Mail::Message::Field::Structured) = 3.000 1 perl(Mail::Message::Field::Unstructured) = 3.000 1 perl(Mail::Message::Field::URIs) = 3.000 1 perl(Mail::Message::Head) = 3.000 1 perl(Mail::Message::Head::Complete) = 3.000 1 perl(Mail::Message::Head::FieldGroup) = 3.000 1 perl(Mail::Message::Head::ListGroup) = 3.000 1 perl(Mail::Message::Head::Partial) = 3.000 1 perl(Mail::Message::Head::ResentGroup) = 3.000 1 perl(Mail::Message::Head::SpamGroup) = 3.000 1 perl(Mail::Message::Part) = 3.000 1 perl(Mail::Message::Replace::MailHeader) = 3.000 1 perl(Mail::Message::Replace::MailInternet) = 3.000 1 perl(Mail::Message::Test) = 3.000 1 perl(Mail::Message::TransferEnc) = 3.000 1 perl(Mail::Message::TransferEnc::Base64) = 3.000 1 perl(Mail::Message::TransferEnc::Binary) = 3.000 1 perl(Mail::Message::TransferEnc::EightBit) = 3.000 1 perl(Mail::Message::TransferEnc::QuotedPrint) = 3.000 1 perl(Mail::Message::TransferEnc::SevenBit) = 3.000 1 perl(Mail::Reporter) = 3.000 1 perl-Mail-Message = 3.000-2.fc26 Binary provides are Ok. Notice: The Mail::Message::*Construct* provides are not found because generators work on file content and there is no Perl module declared with the name (`package' keyword). Those identifiers are used for loading by a file name. Declaring the provides explicitly is fine. $ resolvedeps rawhide ../RPMS/noarch/perl-Mail-Message-3.000-2.fc26.noarch.rpm Binary dependencies resolvable. Ok. Package builds in F26 (https://koji.fedoraproject.org/koji/taskinfo?taskID=17686373). OK. Otherwise the package is in line with Fedora and Perl packaging guidelines. Please correct all the `FIX' items and consider fixing `TODO' items before building this package. Resolution: Package APPROVED.
Package request has been approved: https://admin.fedoraproject.org/pkgdb/package/rpms/perl-Mail-Message
Built in rawhide.