Bug 573932 (perl-IO-Compress)
Summary: | Review Request: perl-IO-Compress - IO::Compress Perl module | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Marcela Mašláňová <mmaslano> |
Component: | Package Review | Assignee: | Chris Weyl <cweyl> |
Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | rawhide | CC: | Aleksey84, cweyl, fedora-package-review, jplesnik, notting, paul, rlandman, tomo.vuckovic |
Target Milestone: | --- | Flags: | cweyl:
fedora-review+
gwync: fedora-cvs+ |
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2010-05-11 06:23:19 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | 573928, 573929 | ||
Bug Blocks: | 555420, 577669, 589482 |
Description
Marcela Mašláňová
2010-03-16 08:47:07 UTC
Hm, after closing the dependent bugs, I've found that it must be obsoleted some modules. This module is a wrapper for different IO::Compress modules. I changed it in specfile and will do a build of this package: Rebuild of package: http://mmaslano.fedorapeople.org/review/perl-IO-Compress.spec http://mmaslano.fedorapeople.org/review/perl-IO-Compress-2.024-1.fc13.src.rpm This will also need update of perl-Compress-Raw-Bzip2. I run into this problem on update: file /usr/share/man/man3/IO::Compress::Bzip2.3pm.gz from install of perl-IO-Compress-0:2.024-1.fc13.noarch conflicts with file from package perl-IO-Compress-Bzip2-2.005-6.fc12.noarch ... I've tried add epoch into Provides/Obsoletes, but that didn't help. Maybe it will be needed some scriptlet :-/ Instead of obsoleting the virtual provide perl(IO::Compress::Bzip2), obsolete the actual package name, perl-IO-Compress-Bzip2. That's how I did it in my own local package a while back: http://trac.city-fan.org/cfo-trac/browser/perl-IO-Compress/trunk/perl-IO-Compress.spec I think you also need provides/obsoletes for perl-IO-Compress-Zlib. Thank you. http://mmaslano.fedorapeople.org/review/perl-IO-Compress.spec http://mmaslano.fedorapeople.org/review/perl-IO-Compress-2.024-1.fc13.src.rpm So, I want to get started here, but I do think we should resolve the question of where to put these modules -- core/perl or vendor -- first. I have bug 574267 open showing how I think we should do this dual-lifed packages and a question open in the mailing list... Using core dirs seems to be the right way here, from a consistency and sanity perspective. I agree with core dirs. Ok -- can we update to the spec to show it installing into core ("INSTALLDIRS='perl'" and the core macros under %files should do it), include %perl_default_filter, and we should be good to go here :) http://mmaslano.fedorapeople.org/review/perl-IO-Compress-2.024-2.fc13.src.rpm http://mmaslano.fedorapeople.org/review/perl-IO-Compress.spec Ok? Anyway I'm blocked by BR's. (In reply to comment #8) > Ok? Anyway I'm blocked by BR's. No pressure -- just levelsetting us to start :) Koji (FAILURE) http://koji.fedoraproject.org/koji/taskinfo?taskID=2107756 Hmm.... Got it; needs a newer level of perl-Compress-Raw-Bzip2. Koji (success) http://koji.fedoraproject.org/koji/taskinfo?taskID=2108542 Alright! So. :) The invocation of %{?perl_default_filter} needs to be done before the first %description stanza in the spec file. If you're not invoking any other filtering macros, the %{?perl_default_filter} incantation is sufficiently conditionalized without wrapping it in %{?filter_setup: ... }. Looks like we need Test::Pod; and t/020isize.t needs COMPRESS_ZLIB_RUN_ALL=1 set and Test::NoWarnings BR'ed to run all its tests. %files needs a '%exclude %dir %{perl_archlib}/auto'. There's an examples/ directory in the tarball; why not include it under %doc? Similarly, theres a pod/FAQ.pod. The %description is a touch misleading, as modules like IO::Compress::Gzip are most certainly intended to be used by application code. Perhaps the part under "DESCRIPTION" in the README would work better? And, it looks like this is being built as "noarch" but is still installing (and packaging) files under the arch-specific %perl_archlib... which is not entirely optimal :) The files should either be under %perl_privlib or the package should be built for each supported architecture. Update as described above, and I'll approve :) koji: http://koji.fedoraproject.org/koji/taskinfo?taskID=2108542 Spec looks clean and consistent; license is correct (GPL+ or Artistic); make test passes cleanly. Source tarballs match upstream (sha1sum): 20329a7c1a1eac90f4f60735f15829e0a915c429 IO-Compress-2.024.tar.gz 20329a7c1a1eac90f4f60735f15829e0a915c429 IO-Compress-2.024.tar.gz.srpm Final provides / requires are sane: 0 packages and 1 specfiles checked; 0 errors, 0 warnings. =====> perl-IO-Compress-2.024-2.fc14.noarch.rpm <===== ====> rpmlint 1 packages and 0 specfiles checked; 0 errors, 0 warnings. ====> provides for perl-IO-Compress-2.024-2.fc14.noarch.rpm perl(Compress::Zlib) = 2.024 perl-Compress-Zlib = 2.024-2.fc14 perl(File::GlobMapper) = 1.000 perl-IO-Compress = 2.024-2.fc14 perl(IO::Compress::Adapter::Bzip2) = 2.024 perl(IO::Compress::Adapter::Deflate) = 2.024 perl(IO::Compress::Adapter::Identity) = 2.024 perl(IO::Compress::Base) = 2.024 perl-IO-Compress-Base = 2.024-2.fc14 perl(IO::Compress::Base::Common) = 2.024 perl(IO::Compress::Bzip2) = 2.024 perl-IO-Compress-Bzip2 = 2.024-2.fc14 perl(IO::Compress::Deflate) = 2.024 perl(IO::Compress::Gzip) = 2.024 perl(IO::Compress::Gzip::Constants) = 2.024 perl(IO::Compress::RawDeflate) = 2.024 perl(IO::Compress::Zip) = 2.024 perl(IO::Compress::Zip::Constants) = 2.024 perl-IO-Compress-Zlib = 2.024-2.fc14 perl(IO::Compress::Zlib::Constants) = 2.024 perl(IO::Compress::Zlib::Extra) = 2.024 perl(IO::Uncompress::Adapter::Bunzip2) = 2.024 perl(IO::Uncompress::Adapter::Identity) = 2.024 perl(IO::Uncompress::Adapter::Inflate) = 2.024 perl(IO::Uncompress::AnyInflate) = 2.024 perl(IO::Uncompress::AnyUncompress) = 2.024 perl(IO::Uncompress::Base) = 2.024 perl(IO::Uncompress::Bunzip2) = 2.024 perl(IO::Uncompress::Gunzip) = 2.024 perl(IO::Uncompress::Inflate) = 2.024 perl(IO::Uncompress::RawInflate) = 2.024 perl(IO::Uncompress::Unzip) = 2.024 perl(U64) perl(Zlib::OldDeflate) perl(Zlib::OldInflate) ====> requires for perl-IO-Compress-2.024-2.fc14.noarch.rpm perl >= 0:5.004 perl(AutoLoader) perl(bytes) perl(Carp) perl(Compress::Raw::Bzip2) >= 2.024 perl(Compress::Raw::Zlib) >= 2.024 perl(constant) perl(Exporter) perl(File::GlobMapper) perl(IO::Compress::Adapter::Bzip2) >= 2.024 perl(IO::Compress::Adapter::Deflate) >= 2.024 perl(IO::Compress::Adapter::Identity) >= 2.024 perl(IO::Compress::Base) >= 2.024 perl(IO::Compress::Base::Common) >= 2.024 perl(IO::Compress::Gzip) >= 2.024 perl(IO::Compress::Gzip::Constants) >= 2.024 perl(IO::Compress::RawDeflate) >= 2.024 perl(IO::Compress::Zip::Constants) >= 2.024 perl(IO::Compress::Zlib::Constants) >= 2.024 perl(IO::Compress::Zlib::Extra) >= 2.024 perl(IO::File) perl(IO::Handle) perl(IO::Seekable) perl(IO::Uncompress::Adapter::Bunzip2) >= 2.024 perl(IO::Uncompress::Adapter::Identity) >= 2.024 perl(IO::Uncompress::Adapter::Inflate) >= 2.024 perl(IO::Uncompress::Base) >= 2.024 perl(IO::Uncompress::Gunzip) >= 2.024 perl(IO::Uncompress::Inflate) >= 2.024 perl(IO::Uncompress::RawInflate) >= 2.024 perl(IO::Uncompress::Unzip) >= 2.024 perl(List::Util) perl(:MODULE_COMPAT_5.10.1) perl(POSIX) perl(Scalar::Util) perl(strict) perl(Symbol) perl(utf8) perl(warnings) =====> perl-IO-Compress-2.024-2.fc14.src.rpm <===== ====> rpmlint 1 packages and 0 specfiles checked; 0 errors, 0 warnings. ====> provides for perl-IO-Compress-2.024-2.fc14.src.rpm ====> requires for perl-IO-Compress-2.024-2.fc14.src.rpm perl(Compress::Raw::Bzip2) >= 2.024 perl(Compress::Raw::Zlib) >= 2.024 perl(ExtUtils::MakeMaker) (In reply to comment #13) > Alright! So. :) > > The invocation of %{?perl_default_filter} needs to be done before the first > %description stanza in the spec file. If you're not invoking any other > filtering macros, the %{?perl_default_filter} incantation is sufficiently > conditionalized without wrapping it in %{?filter_setup: ... }. DONE > > Looks like we need Test::Pod; and t/020isize.t needs COMPRESS_ZLIB_RUN_ALL=1 > set and Test::NoWarnings BR'ed to run all its tests. t/020isize.t takes forever so I didn't add this variable into 'make test' > > %files needs a '%exclude %dir %{perl_archlib}/auto'. There's an examples/ > directory in the tarball; why not include it under %doc? Similarly, theres a > pod/FAQ.pod. I've excluded %{perl_privlib}/auto because this should be noarch package. > > The %description is a touch misleading, as modules like IO::Compress::Gzip are > most certainly intended to be used by application code. Perhaps the part > under "DESCRIPTION" in the README would work better? DONE > > And, it looks like this is being built as "noarch" but is still installing > (and packaging) files under the arch-specific %perl_archlib... which is not > entirely optimal :) The files should either be under %perl_privlib or the > package should be built for each supported architecture. Tests in Makefile probably didn't work well in our case. I wrote a Fedora patch which set perl_privlib as installation path. > > Update as described above, and I'll approve :) Not sure if you are content now ;-) http://mmaslano.fedorapeople.org/review/perl-IO-Compress-2.024-3.fc13.src.rpm Can we update the IO::Compress stack to 2.027? I need that for IO::Compress::Lzma and Compress::Raw::Lzma (IO::Compress interface to xz) that I'm ready to submit. (In reply to comment #15) > Can we update the IO::Compress stack to 2.027? I need that for > IO::Compress::Lzma and Compress::Raw::Lzma (IO::Compress interface to xz) that > I'm ready to submit. I've already updated BR. SRPM of this: http://mmaslano.fedorapeople.org/review/perl-IO-Compress-2.027-1.fc14.src.rpm RPM: http://mmaslano.fedorapeople.org/review/perl-IO-Compress.spec Good koji build off the new srpm: http://koji.fedoraproject.org/koji/taskinfo?taskID=2174461 I'm never content :) We really should be running the ZLIB tests in the buildsystem; one workaround to not invoke those tests on a local system would be to macros conditionalize the variable setting. APPROVED Strange, zlib test are working locally on my computer. Anyway, I need this finally push into Fedora: New Package CVS Request ======================= Package Name: perl-IO-Compress Short Description: IO::Compress Perl module Owners: mmaslano Branches: F-13 F-12 InitialCC: perl-sig CVS done (by process-cvs-requests.py). Marcela, can you build and push the F-13 version now? It'll satisfy the broken dependency on IO::Uncompress::Bunzip2 for cpanspec. Scratch build is now working: http://koji.fedoraproject.org/koji/taskinfo?taskID=2242148 perl-IO-Compress-2.027-1.fc13 has been submitted as an update for Fedora 13. http://admin.fedoraproject.org/updates/perl-IO-Compress-2.027-1.fc13 (In reply to comment #20) > Marcela, can you build and push the F-13 version now? It'll satisfy the broken > dependency on IO::Uncompress::Bunzip2 for cpanspec. > > Scratch build is now working: > http://koji.fedoraproject.org/koji/taskinfo?taskID=2242148 Thanks. (In reply to comment #20) > Marcela, can you build and push the F-13 version now? It'll satisfy the broken > dependency on IO::Uncompress::Bunzip2 for cpanspec. Actually I was thrown by the .fc13 dist tag on Rawhide cpanspec: the broken dep is actually in Rawhide (dist-rawhide, not dist-f14-perltest) so it would need perl-Compress-Raw-Bzip2, perl-Compress-Raw-Zlib and perl-IO-Compress building for dist-rawhide to fix that. Sorry about that. (In reply to comment #23) > (In reply to comment #20) > > Marcela, can you build and push the F-13 version now? It'll satisfy the broken > > dependency on IO::Uncompress::Bunzip2 for cpanspec. > > Actually I was thrown by the .fc13 dist tag on Rawhide cpanspec: the broken dep > is actually in Rawhide (dist-rawhide, not dist-f14-perltest) so it would need > perl-Compress-Raw-Bzip2, perl-Compress-Raw-Zlib and perl-IO-Compress building > for > dist-rawhide to fix that. Sorry about that. I hope soon will be fixed all problem with dist-f14-perltest, so I'll ignore this warning until then. Is everything in dist-f14-perltest going to be tagged over to dist-rawhide then, or are you planning another mass rebuild with 5.12.1 first? That's really good question. I'm not even sure, how would be possible to move packages from dist-f14-perltest into rawhide. Some packages could be rebuild meanwhile. I suppose rebuild with 5.12.1 won't be needed, I have to check list of changes. rel-eng should be able to move them all over at once if you raise a ticket with them. Need to watch out for packages that have been built more recently in dist-rawhide than dist-f14-perltest though - they will probably need rebuilding again in dist-f14-perltest. ---> Package perl-IO-Compress.noarch 0:2.027-1.fc13 set to be updated --> Processing Dependency: perl(Compress::Raw::Bzip2) >= 2.027 for package: perl-IO-Compress-2.027-1.fc13.noarch --> Finished Dependency Resolution Error: Package: perl-IO-Compress-2.027-1.fc13.noarch (updates-testing) Requires: perl(Compress::Raw::Bzip2) >= 2.027 Installed: perl-Compress-Raw-Bzip2-2.026-1.fc13.i686 (@fedora) perl-Compress-Raw-Bzip2-2.027-1.fc13 and perl-Compress-Raw-Zlib-2.027-1.fc13 are released/stable updates: http://download.fedora.redhat.com/pub/fedora/linux/updates/13/i386/ Have you disabled the usual updates repo? Thank you. Turns to blame "fastestmirror". It turns out not all mirrors have been updated. /usr/bin/yum repolist enabled fedora rpmfusion-free rpmfusion-free-updates rpmfusion-nonfree rpmfusion-nonfree-updates updates-testing perl-IO-Compress-2.027-1.fc13 has been pushed to the Fedora 13 stable repository. If problems still persist, please make note of it in this bug report. Duplicate package perl-IO-Compress in Fedora 15 repository : http://download.fedora.redhat.com/pub/fedora/linux/development/15/i386/os/Packages/perl-IO-Compress-2.026-155.fc15.i686.rpm and http://download.fedora.redhat.com/pub/fedora/linux/development/15/i386/os/Packages/perl-IO-Compress-2.033-2.fc15.noarch.rpm This package create from different source, one from core perl, other from standalone perl module IO-Compress. This is normal and expected. Many perl modules are "dual-lived", being bundled with perl and also distributed separately via CPAN. There's no problem having multiple versions in the repository; yum will pick the highest versioned for you. Package Change Request ====================== Package Name: perl-IO-Compress New Branches: el5 el6 Owners: rlandmann I am a maintainer of devel branch, but I don't have enough time to maintain it for epel. rlandmann requested the branches and he wants to take care of them. Is this a good idea? At least in el6, there is perl-IO-Compress-{Base,Zlib,Bzip2}, all of which are obsoleted by perl-IO-Compress, at least in the Fedora specs. I don't have time to look at it now. rlandmann: Could you please check comment #35? Git done (by process-git-requests). |