Spec URL: http://fedorapeople.org/~cweyl/review/perl-MooseX-Storage.spec SRPM URL: http://fedorapeople.org/~cweyl/review/perl-MooseX-Storage-0.17-1.fc10.src.rpm Description: MooseX::Storage is a serialization framework for Moose, it provides a very flexible and highly pluggable way to serialize Moose classes to a number of different formats and styles. This is still an early release of this module, so use with caution. It's outward facing serialization API should be considered stable, but I still reserve the right to make tweaks if I need too. Anything beyond the basic pack/unpack, freeze/thaw and load/store should not be relied on. There are 3 levels to the serialization, each of which builds upon the other and each of which can be customized to the specific needs of your class. Koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=1292522 *rt-0.06
+ source files match upstream. 89f835ca0cad9a2c3707cb8f748bc44f43dc6112 MooseX-Storage-0.17.tar.gz + package meets naming and versioning guidelines. + specfile is properly named, is cleanly written and uses macros consistently. - summary matches upstream, but is poor English. Should be "A serialization framework for Moose classes" (not "An...") + description is OK. + dist tag is present. + build root is OK. + license field matches the actual license. GPL+ or Artistic + license is open source-compatible. + license text not included upstream. + latest version is being packaged. + BuildRequires are proper. + compiler flags are appropriate. + %clean is present. + package builds in mock http://koji.fedoraproject.org/koji/taskinfo?taskID=1292522 + package installs properly. + rpmlint has no complaints: perl-MooseX-Storage.noarch: I: checking perl-MooseX-Storage.src: I: checking 2 packages and 0 specfiles checked; 0 errors, 0 warnings. - final provides and requires: perl(Moose::Meta::Attribute::Custom::DoNotSerialize) = 0.17 perl(Moose::Meta::Attribute::Custom::Trait::DoNotSerialize) = 0.17 perl(MooseX::Storage) = 0.17 perl(MooseX::Storage::Base::WithChecksum) = 0.17 perl(MooseX::Storage::Basic) = 0.17 perl(MooseX::Storage::Deferred) = 0.17 perl(MooseX::Storage::Engine) = 0.17 perl(MooseX::Storage::Engine::IO::AtomicFile) = 0.17 perl(MooseX::Storage::Engine::IO::File) = 0.17 perl(MooseX::Storage::Format::JSON) = 0.17 perl(MooseX::Storage::Format::Storable) = 0.17 perl(MooseX::Storage::Format::YAML) = 0.17 perl(MooseX::Storage::IO::AtomicFile) = 0.17 perl(MooseX::Storage::IO::File) = 0.17 perl(MooseX::Storage::IO::StorableFile) = 0.17 perl(MooseX::Storage::Meta::Attribute::DoNotSerialize) = 0.17 perl(MooseX::Storage::Meta::Attribute::Trait::DoNotSerialize) = 0.17 perl(MooseX::Storage::Util) = 0.17 perl-MooseX-Storage = 0.17-1.fc11 = perl(:MODULE_COMPAT_5.10.0) perl(Best) perl(Data::Dumper) perl(Digest) perl(IO::AtomicFile) perl(IO::File) perl(JSON::Any) perl(Moose) perl(Moose::Role) perl(MooseX::Storage::Engine) perl(MooseX::Storage::Engine::IO::AtomicFile) perl(MooseX::Storage::Engine::IO::File) perl(MooseX::Storage::Meta::Attribute::DoNotSerialize) perl(Scalar::Util) perl(Storable) perl(utf8) rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(VersionedDependencies) <= 3.0.3-1 + %check is present and all tests pass. All tests successful. Files=27, Tests=349, 14 wallclock secs ( 0.20 usr 0.06 sys + 13.43 cusr 0.76 csys = 14.45 CPU) Result: PASS + no shared libraries are added to the regular linker search paths. + owns the directories it creates. + doesn't own any directories it shouldn't. + no duplicates in %files. + file permissions are appropriate. + no generically named files + code, not content. + documentation is small, so no -doc subpackage is necessary. + %docs are not necessary for the proper functioning of the package. Minor niggle with the summary. And you need to filter the provides: perl(Moose::Meta::Attribute::Custom::DoNotSerialize) = 0.17 perl(Moose::Meta::Attribute::Custom::Trait::DoNotSerialize) = 0.17 Other than that, APPROVED.
New Package CVS Request ======================= Package Name: perl-MooseX-Storage Short Description: An serialization framework for Moose classes Owners: cweyl Branches: F-9 F-10 devel InitialCC: perl-sig
cvs done.
(In reply to comment #1) > - summary matches upstream, but is poor English. Should be > "A serialization framework for Moose classes" (not "An...") Ugh. Thanks :) > Minor niggle with the summary. And you need to filter the provides: > perl(Moose::Meta::Attribute::Custom::DoNotSerialize) = 0.17 > perl(Moose::Meta::Attribute::Custom::Trait::DoNotSerialize) = 0.17 Hm. Why would we need to filter these? They're valid packages, even if Moose::Meta::Attribute::Custom::Trait::DoNotSerialize is in lib/MooseX/Storage/Meta/Attribute/Trait/DoNotSerialize.pm.
My simple test for provides is that after installing, I should be able to use them: # yum install 'perl(Moose::Meta::Attribute::Custom::DoNotSerialize)' $ perl -MMoose::Meta::Attribute::Custom::DoNotSerialize -e '' Can't locate Moose/Meta/Attribute/Custom/DoNotSerialize.pm in @INC It isn't particularly useful for rpm to provide things if they're not directly usable. Or is Moose able to make it available automagically?
(sorry this is taking so long; $work has its way of interfering... :)) Hrm. Well, I think that's a pretty reasonable approach. I tend to use "is it filtered in META.yml or otherwise hidden from the CPAN indexer", but TMTOWTDI :) In this case, that's a stub class that Moose uses to help do name resolution on traits. It's made available when the owning file is use'd, and could reasonably be looked for if we ever get the autoreq handling Moose-y bits. We also have precedent for this, in that, e.g. perl-RPC-XML does the same sort of thing (multiple packages in one .pm) and perl-App-Asciio does it in reverse (multiple .pm's for a single class). I guess the heart of the question is: are perl(*) provides file or package based? I'd say it's package based, given the way autoprov currently works, but it does seem ripe for discussion...
I'd say file based myself, give the way autoreq currently seems to work ;) But probably best discussed on the list for real rather than as bugspam. Until it's resolved one way or the other, I bow to your experience - whatever you think is best.
Spec URL: http://fedorapeople.org/~cweyl/review/perl-MooseX-Storage.spec SRPM URL: http://fedorapeople.org/~cweyl/review/perl-MooseX-Storage-0.17-2.fc10.src.rpm
Thanks for the review! :-)