Bug 754754 - Review Request: perl-Gtk3 - Perl interface to the 3.x series of the GTK+ toolkit
Summary: Review Request: perl-Gtk3 - Perl interface to the 3.x series of the GTK+ toolkit
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Petr Pisar
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 754749
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-11-17 16:20 UTC by Daniel Berrangé
Modified: 2012-01-16 21:21 UTC (History)
4 users (show)

Fixed In Version: perl-Gtk3-0.002-2.fc16
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-01-06 13:05:08 UTC
Type: ---
Embargoed:
ppisar: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Daniel Berrangé 2011-11-17 16:20:55 UTC
Spec URL:http://berrange.fedorapeople.org/review/perl-Gtk3/perl-Gtk3.spec
SRPM URL: http://berrange.fedorapeople.org/review/perl-Gtk3/perl-Gtk3-0.001-1.fc15.src.rpm
Description:The Gtk3 module allows a Perl developer to use the gtk+ graphical user
interface library. Find out more about gtk+ at http://www.gtk.org.

Comment 1 Daniel Berrangé 2011-11-17 16:21:19 UTC
NB requires bug 754749 to be reviewed first.

Comment 2 Mario Blättermann 2011-11-27 19:17:21 UTC
Koji scratch build fails on Rawhide:
http://koji.fedoraproject.org/koji/taskinfo?taskID=3544890

See build.log for more details:
http://koji.fedoraproject.org/koji/getfile?taskID=3544891&name=build.log

Comment 3 Daniel Berrangé 2011-11-28 11:57:19 UTC
There were some issues with the test suite. Updated srpm & spec build in brew f17 targets succesfully:

  http://berrange.fedorapeople.org/review/perl-Gtk3/perl-Gtk3.spec
  http://berrange.fedorapeople.org/review/perl-Gtk3/perl-Gtk3-0.001-2.fc17.src.rpm

Filed upstream RT ticket for actual bug

  https://rt.cpan.org/Ticket/Display.html?id=72773

Comment 4 Daniel Berrangé 2011-12-15 17:19:17 UTC
Updated to 0.002 which also fixes the RT ticket mentioned above

http://berrange.fedorapeople.org/review/perl-Gtk3/perl-Gtk3.spec
http://berrange.fedorapeople.org/review/perl-Gtk3/perl-Gtk3-0.002-1.fc17.src.rpm

Comment 5 Petr Pisar 2012-01-04 17:38:32 UTC
Source tar ball is original. Ok.
Summary verified from lib/Gtk3.pm.
TODO: Capitalize the `GTK+' to comply with official name (http://www.gtk.org/).

License verified from lib/Gtk3.pm and LICENSE. Ok.
URL and Source0 are usable. Ok.
Package does not contain any architecture depended code. noarch BuildArch is Ok.
Description verified from lib/Gtk3.pm.
TODO: Capitalize the `GTK+' to comply with official name (http://www.gtk.org/).
TODO: Append slash to the URL as conforming HTTP URL must contain path.

FIX: Build-require perl(Carp) for tests (lib/Gtk3.pm:8)
TODO: Build-require perl(Exporter) for tests (lib/Gtk3.pm:10)
FIX: Build-require perl(Test::More) for tests (t/00-init.t:6)
FIX: Build-require perl(Scalar::Util) for tests (t/floating-refs.t:7)

TODO: Run tests against Xvfb to perform X11 tests (<https://fedoraproject.org/wiki/Perl/Tips#Tests_require_X11_server>; actually there is easier way using xvfb-run tool).

TODO: Remove useless %defattr from %files section.

TODO: Do not package dist.ini and perl-Gtk3.doap. They do not provide any useful data not mentioned anywhere else.

All tests pass. Ok.

$ rpmlint perl-Gtk3.spec ../SRPMS/perl-Gtk3-0.002-1.fc17.src.rpm ../RPMS/noarch/perl-Gtk3-0.002-1.fc17.noarch.rpm 
perl-Gtk3.src: W: spelling-error Summary(en_US) gtk -> Gk, gt, GTE
perl-Gtk3.src: W: spelling-error %description -l en_US gtk -> Gk, gt, GTE
perl-Gtk3.noarch: W: spelling-error Summary(en_US) gtk -> Gk, gt, GTE
perl-Gtk3.noarch: W: spelling-error %description -l en_US gtk -> Gk, gt, GTE
2 packages and 1 specfiles checked; 0 errors, 4 warnings.

rpmlint is Ok.

$ rpm -q -lv -p ../RPMS/noarch/perl-Gtk3-0.002-1.fc17.noarch.rpm 
drwxr-xr-x    2 root    root                        0 Jan  4 18:27 /usr/share/doc/perl-Gtk3-0.002
-rw-r--r--    1 root    root                    24657 Dec  9 11:37 /usr/share/doc/perl-Gtk3-0.002/LICENSE
-rw-r--r--    1 root    root                      285 Dec  9 11:37 /usr/share/doc/perl-Gtk3-0.002/NEWS
-rw-r--r--    1 root    root                      289 Dec  9 11:37 /usr/share/doc/perl-Gtk3-0.002/README
-rw-r--r--    1 root    root                      712 Dec  9 11:37 /usr/share/doc/perl-Gtk3-0.002/dist.ini
-rw-r--r--    1 root    root                      799 Dec  9 11:37 /usr/share/doc/perl-Gtk3-0.002/perl-Gtk3.doap
-rw-r--r--    1 root    root                     2632 Jan  4 18:27 /usr/share/man/man3/Gtk3.3pm.gz
-rw-r--r--    1 root    root                     9665 Dec  9 11:37 /usr/share/perl5/vendor_perl/Gtk3.pm
File permissions and layout Ok.

$ rpm -q --requires -p ../RPMS/noarch/perl-Gtk3-0.002-1.fc17.noarch.rpm |sort |uniq -c
      1 gtk3  
      1 perl(Carp)  
      1 perl(Exporter)  
      1 perl(Glib) >= 1.240
      1 perl(Glib::Object::Introspection)  
      1 perl(Glib::Object::Introspection) >= 0.002
      1 perl(:MODULE_COMPAT_5.14.2)  
      1 perl(strict)  
      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
Binary requires Ok.
TODO: Do not export perl(Glib::Object::Introspection) without version.

$ rpm -q --provides -p ../RPMS/noarch/perl-Gtk3-0.002-1.fc17.noarch.rpm |sort |uniq -c
      1 perl(Gtk3) = 0.002
      1 perl-Gtk3 = 0.002-1.fc17
Binary provides Ok.

$ resolvedeps rawhide ../RPMS/noarch/perl-Gtk3-0.002-1.fc17.noarch.rpm 
Binary dependencies resolvable. Ok.

Package builds in F17 (http://koji.fedoraproject.org/koji/taskinfo?taskID=3619080). Ok.

Otherwise package is in line with Fedora and Perl packaging guidelines.


Please correct all `FIX' prefixed issues, consider fixing `TODO' items, and provide new spec file.

Resolution: Package NOT approved.

Comment 6 Daniel Berrangé 2012-01-05 12:09:09 UTC
The extra 'perl(Glib::Object::Introspection)' without version, is an automagically added dep. The versions deps are manually added, since I need to force a minimal version to ensure the package works correctly. The unversioned automatic dep is harmless so I don't think it is worth trying to filter it out.

Updated SRPM with all other FIX & TODO items addressed:

http://berrange.fedorapeople.org/review/perl-Gtk3/perl-Gtk3-0.002-2.fc17.src.rpm

Comment 7 Petr Pisar 2012-01-05 13:23:23 UTC
Spec file changes:

--- perl-Gtk3.spec.old	2011-12-15 16:09:39.000000000 +0100
+++ perl-Gtk3.spec	2012-01-05 14:02:07.934998296 +0100
@@ -1,7 +1,9 @@
+%global use_x11_tests 1
+
 Name:           perl-Gtk3
 Version:        0.002
-Release:        1%{?dist}
-Summary:        Perl interface to the 3.x series of the gtk+ toolkit
+Release:        2%{?dist}
+Summary:        Perl interface to the 3.x series of the GTK+ toolkit
 License:        LGPLv2+
 Group:          Development/Libraries
 URL:            http://search.cpan.org/dist/Gtk3/
@@ -12,14 +14,24 @@
 BuildRequires:  perl(Glib::Object::Introspection) >= 0.002
 BuildRequires:  perl(Test::More)
 BuildRequires:  gtk3
+BuildRequires:  perl(Carp)
+BuildRequires:  perl(Exporter)
+BuildRequires:  perl(Test::More)
+BuildRequires:  perl(Scalar::Util)
 Requires:       perl(Glib) >= 1.240
 Requires:       perl(Glib::Object::Introspection) >= 0.002
 Requires:       perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
 Requires:       gtk3
+%if %{use_x11_tests}
+# X11 tests:
+BuildRequires:  xorg-x11-server-Xvfb
+BuildRequires:  xorg-x11-xinit
+BuildRequires:  font(:lang=en)
+%endif
 
 %description
-The Gtk3 module allows a Perl developer to use the gtk+ graphical user
-interface library. Find out more about gtk+ at http://www.gtk.org.
+The Gtk3 module allows a Perl developer to use the GTK+ graphical user
+interface library. Find out more about GTK+ at http://www.gtk.org/
 
 %prep
 %setup -q -n Gtk3-%{version}
@@ -37,17 +49,27 @@
 %{_fixperms} $RPM_BUILD_ROOT/*
 
 %check
-# NB, we expect most of these checks to be skipped
-# because of lack of a $DISPLAY inside koji
-make test
+%if %{use_x11_tests}
+    xinit /bin/sh -c 'rm -f ok; make test && touch ok' -- /usr/bin/Xvfb :666
+    test -e ok
+%else
+    make test
+%endif
 
 %files
-%defattr(-,root,root,-)
-%doc dist.ini LICENSE NEWS perl-Gtk3.doap README
+%doc LICENSE NEWS README
 %{perl_vendorlib}/*
 %{_mandir}/man3/*
 
 %changelog
+* Thu Jan  5 2012 Daniel P. Berrange <berrange> - 0.002-2
+- Use xvfb to run test suite
+- Fix capitalization of GTK+
+- Remove dist.ini & perl-Gtk3.doap
+- Remove defattr from files section
+- Add missing BuildRequires for test suite
+- Add trailing / into URIs
+
 * Thu Dec 15 2011 Daniel P. Berrange <berrange> - 0.002-1
 - Update to 0.002 release
 

> TODO: Capitalize the `GTK+' to comply with official name (http://www.gtk.org/).
-Summary:        Perl interface to the 3.x series of the gtk+ toolkit
+Release:        2%{?dist}
+Summary:        Perl interface to the 3.x series of the GTK+ toolkit

-The Gtk3 module allows a Perl developer to use the gtk+ graphical user
-interface library. Find out more about gtk+ at http://www.gtk.org.
+The Gtk3 module allows a Perl developer to use the GTK+ graphical user
+interface library. Find out more about GTK+ at http://www.gtk.org/

Ok.

> TODO: Append slash to the URL as conforming HTTP URL must contain path.
-The Gtk3 module allows a Perl developer to use the gtk+ graphical user
-interface library. Find out more about gtk+ at http://www.gtk.org.
+The Gtk3 module allows a Perl developer to use the GTK+ graphical user
+interface library. Find out more about GTK+ at http://www.gtk.org/
TODO: You are missing full stop at the and of the description. If you hesitate because of URL, close URL into angle brackets (<http://www.gtk.org/>.).

> FIX: Build-require perl(Carp) for tests (lib/Gtk3.pm:8)
> TODO: Build-require perl(Exporter) for tests (lib/Gtk3.pm:10)
> FIX: Build-require perl(Test::More) for tests (t/00-init.t:6)
> FIX: Build-require perl(Scalar::Util) for tests (t/floating-refs.t:7)
+BuildRequires:  perl(Carp)
+BuildRequires:  perl(Exporter)
+BuildRequires:  perl(Test::More)
+BuildRequires:  perl(Scalar::Util)
Ok.

> TODO: Run tests against Xvfb to perform X11 tests
> (<https://fedoraproject.org/wiki/Perl/Tips#Tests_require_X11_server>; actually
> there is easier way using xvfb-run tool).
Ok.

> TODO: Remove useless %defattr from %files section.
> TODO: Do not package dist.ini and perl-Gtk3.doap. They do not provide any
useful data not mentioned anywhere else.
 %files
-%defattr(-,root,root,-)
-%doc dist.ini LICENSE NEWS perl-Gtk3.doap README
+%doc LICENSE NEWS README
Ok.

All tests pass. Ok.

$ rpmlint perl-Gtk3.spec ../SRPMS/perl-Gtk3-0.002-2.fc17.src.rpm ../RPMS/noarch/perl-Gtk3-0.002-2.fc17.noarch.rpm 
perl-Gtk3.spec:29: W: comparison-operator-in-deptoken font(:lang=en)
perl-Gtk3.src:29: W: comparison-operator-in-deptoken font(:lang=en)
2 packages and 1 specfiles checked; 0 errors, 2 warnings.
rpmlint Ok.

Package builds in F17 (http://koji.fedoraproject.org/koji/taskinfo?taskID=3622033). Ok.


Please consider fixing `TODO' items before building this package.

Resolution: Package APPROVED.

Comment 8 Daniel Berrangé 2012-01-05 15:39:15 UTC
New Package SCM Request
=======================
Package Name: perl-Gtk3
Short Description: Perl interface to the 3.x series of the GTK+ toolkit
Owners: berrange
Branches: f16
InitialCC: perl-sig

Comment 9 Gwyn Ciesla 2012-01-05 16:54:35 UTC
Git done (by process-git-requests).

Comment 10 Daniel Berrangé 2012-01-06 13:05:08 UTC
Built into rawhide

Comment 11 Fedora Update System 2012-01-06 13:05:47 UTC
perl-Gtk3-0.002-2.fc16 has been submitted as an update for Fedora 16.
https://admin.fedoraproject.org/updates/perl-Gtk3-0.002-2.fc16

Comment 12 Fedora Update System 2012-01-16 21:21:34 UTC
perl-Gtk3-0.002-2.fc16 has been pushed to the Fedora 16 stable repository.


Note You need to log in before you can comment on or make changes to this bug.