Spec URL: http://berrange.fedorapeople.org/review/perl-Glib-Object-Introspection/perl-Glib-Object-Introspection.spec SRPM URL: http://berrange.fedorapeople.org/review/perl-Glib-Object-Introspection/perl-Glib-Object-Introspection-0.003-1.fc15.src.rpm Description: Glib::Object::Introspection uses the gobject-introspection and libffi projects to dynamically create Perl bindings for a wide variety of libraries. Examples include gtk+, webkit, libsoup and many more.
A few comments and nitpicks: 1. According to the perl packaging guidelines[1] you should include a Requires to the particular version of perl the module was built against: Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) 2. The same guidelines also states that the package should own vendorarch and exlude the auto dir: %{perl_vendorarch}/* %exclude %dir %{perl_vendorarch}/auto/ 3. If you plan an EPEL branch, you need to add a %clean section, and for EPEL5 and below also a BuildRoot tag and manual cleaning of %{buildroot} in the %install section. Just something to consider. 4. I prefer %{buildroot} and %{optflags} over $RPM_BUILD_ROOT and $RPM_OPT_FLAGS, respectively, but that's just me :) [1] http://fedoraproject.org/wiki/Packaging:Perl
Taking.
FYI, EPEL is not relevant here because AFAIK there is no GTK3 support in EPEL, nor can it be added, since the base RHEL version of glib2 is too old to support it.
This package fails to build so I can't properly start review. Daniel, you'll want to add a BuildRequires on perl-Glib-devel (Glib::MakeHelper is needed during build and that's the package it's in). FTR, It's probably best to test that your package builds, in mock and/or in a scratch koji build before submitting it. As Trond noted, you'll definitely want to include a MODULE_COMPAT Requires. Is there a reason you're forcing LANG=en_US.UTF8 ? If so, it's recommended to add a comment explaining why. Note that the defattr line is no longer needed in Fedora-only packages (but leaving it in isn't a blocker).
Sigh, I don't know why I forgot to test it in mock, as I normally do that. Here is an updated SRPM which does actually build in mock. Updated .spec at the same URL as before. http://berrange.fedorapeople.org/review/perl-Glib-Object-Introspection/perl-Glib-Object-Introspection-0.003-2.fc15.src.rpm
=== KEY === - = N/A x = Check ! = Problem ? = Not evaluated === REQUIRED ITEMS === [x] Package is named according to the Package Naming Guidelines. [x] Spec file name must match the base package %{name}, in the format %{name}.spec. [x] Package meets the Packaging Guidelines including the Perl specific items [x] Package successfully compiles and builds into binary rpms on at least one supported architecture. Tested on: http://koji.fedoraproject.org/koji/taskinfo?taskID=3533759 [x] Rpmlint output: perl-Glib-Object-Introspection.src: W: spelling-error %description -l en_US gobject -> object, g object perl-Glib-Object-Introspection.src: W: spelling-error %description -l en_US libffi -> bailiff perl-Glib-Object-Introspection.src: W: spelling-error %description -l en_US gtk -> gt, gt k perl-Glib-Object-Introspection.src: W: spelling-error %description -l en_US webkit -> web kit, web-kit, website perl-Glib-Object-Introspection.src: W: spelling-error %description -l en_US libsoup -> lib soup, lib-soup, libelous perl-Glib-Object-Introspection.x86_64: W: spelling-error %description -l en_US gobject -> object, g object perl-Glib-Object-Introspection.x86_64: W: spelling-error %description -l en_US libffi -> bailiff perl-Glib-Object-Introspection.x86_64: W: spelling-error %description -l en_US gtk -> gt, gt k perl-Glib-Object-Introspection.x86_64: W: spelling-error %description -l en_US webkit -> web kit, web-kit, website perl-Glib-Object-Introspection.x86_64: W: spelling-error %description -l en_US libsoup -> lib soup, lib-soup, libelous perl-Glib-Object-Introspection.x86_64: W: private-shared-object-provides /usr/lib64/perl5/vendor_perl/auto/Glib/Object/Introspection/Introspection.so Introspection.so()(64bit) perl-Glib-Object-Introspection.x86_64: W: private-shared-object-provides /usr/lib64/perl5/vendor_perl/auto/Glib/Object/Introspection/Introspection.so Introspection.so()(64bit) perl-Glib-Object-Introspection.x86_64: E: incorrect-fsf-address /usr/share/doc/perl-Glib-Object-Introspection-0.003/LICENSE perl-Glib-Object-Introspection.x86_64: E: incorrect-fsf-address /usr/lib64/perl5/vendor_perl/Glib/Object/Introspection.pm The spelling mistakes are rpmlint's usual false positives. You can fix the private-shared-object-provides by using the perl default filter. Feel free to do this with all your perl module packages. http://fedoraproject.org/wiki/Perl_default_filter Please file a bug in CPAN's RT for the incorrect fsf address. This isn't a blocker but it's in upstream's best interest to have the correct address. [x] Package is not relocatable. [x] Buildroot is correct None specified, default used. [x] Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [!] License field in the package spec file matches the actual license. This module is distributed under the LGPL but the License field says "GPLv2+". What's going on? [x] If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package is included in %doc. [x] Spec file is legible and written in American English. [x] Sources used to build the package matches the upstream source, as provided in the spec URL. bbcfe3c9a0bd392a9b6c826f319e6b03 Glib-Object-Introspection-0.003.tar.gz [x] Package is not known to require ExcludeArch [x] All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [-] The spec file handles locales properly. [-] ldconfig called in %post and %postun if required. [x] Package must own all directories that it creates. [x] Package requires other packages for directories it uses. [x] Package does not contain duplicates in %files. [x] Permissions on files are set properly. [x] Package consistently uses macros. [x] Package contains code, or permissable content. [-] Large documentation files are in a -doc subpackage, if required. [-] Package uses nothing in %doc for runtime. [-] Header files in -devel subpackage, if present. [-] Static libraries in -devel subpackage, if present. [-] Package requires pkgconfig, if .pc files are present. [-] Development .so files in -devel subpackage, if present. [-] Fully versioned dependency in subpackages, if present. [x] Package does not contain any libtool archives (.la). [-] Package contains a properly installed %{name}.desktop file if it is a GUI application. [x] Package does not own files or directories owned by other packages. === SUGGESTED ITEMS === [!] Latest version is packaged. Version 0.004 came out a few days ago. [x] Package does not include license text files separate from upstream. [-] Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [x] Reviewer should test that the package builds in mock. Tested on: fedora-rawhide-x86_64 [x] Package should compile and build into binary rpms on all supported architectures. Tested on: http://koji.fedoraproject.org/koji/taskinfo?taskID=3533759 [?] Package functions as described. [-] Scriptlets must be sane, if used. [-] The placement of pkgconfig(.pc) files is correct. [-] File based requires are sane. [!] %check is present and the tests pass Files=14, Tests=0, 0 wallclock secs ( 0.05 usr 0.03 sys + 0.44 cusr 0.11 csys = 0.63 CPU) Result: NOTESTS Say what? Please have the tests actually run. Fix the filter error, the License field, make the tests run and you're good to go.
Updated spec + SRPM: http://berrange.fedorapeople.org/review/perl-Glib-Object-Introspection/perl-Glib-Object-Introspection.spec http://berrange.fedorapeople.org/review/perl-Glib-Object-Introspection/perl-Glib-Object-Introspection-0.004-1.fc17.src.rpm
Running a diff of the changes made to the latest spec file and making a scratch build of the .src.rpm (http://koji.fedoraproject.org/koji/taskinfo?taskID=3536070), this fixes all the issues in the previous .src.rpm. Note that the build log contains this line : t/cairo-integration.t ......... skipped: Need Cairo::GObject Daniel, feel free to add perl(Cairo::GObject) once this module is packaged in Fedora. APPROVED.
New Package SCM Request ======================= Package Name: perl-Glib-Object-Introspection Short Description: Dynamically create Perl language bindings Owners: berrange Branches: f15 f16 InitialCC: perl-sig
Git done (by process-git-requests).
Built into rawhide.
perl-Glib-Object-Introspection-0.004-1.fc16 has been submitted as an update for Fedora 16. https://admin.fedoraproject.org/updates/perl-Glib-Object-Introspection-0.004-1.fc16
perl-Glib-Object-Introspection-0.004-1.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/perl-Glib-Object-Introspection-0.004-1.fc15
perl-Glib-Object-Introspection-0.004-1.fc15 has been pushed to the Fedora 15 stable repository.
perl-Glib-Object-Introspection-0.004-1.fc16 has been pushed to the Fedora 16 stable repository.