Bug 707617 - Review Request: libircclient-qt - Cross-platform IRC client library written with Qt 4
Summary: Review Request: libircclient-qt - Cross-platform IRC client library written w...
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Michael Schwendt
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-05-25 14:23 UTC by Jan Kaluža
Modified: 2012-10-03 19:14 UTC (History)
4 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2012-10-03 19:14:02 UTC
Type: ---
Embargoed:
bugs.michael: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Jan Kaluža 2011-05-25 14:23:12 UTC
Spec URL: http://jkaluza.fedorapeople.org/libircclient-qt.spec
SRPM URL: http://jkaluza.fedorapeople.org/libircclient-qt-0.5.0-1.fc14.src.rpm
Description: Cross-platform IRC client library written with Qt 4

$ rpmlint libircclient-qt-0.5.0-1.fc14.src.rpm
1 packages and 0 specfiles checked; 0 errors, 0 warnings.

$ rpmlint libirc*
3 packages and 0 specfiles checked; 0 errors, 0 warnings.

I'm adding this package, because new version of Spectrum will need it (optionally) for IRC support.

Comment 1 Michael Schwendt 2011-07-30 10:49:24 UTC
* "spectool -g libircclient-qt.spec" fails downloading the tarball. Visiting the web page download area, it seems the correct Source0 location is without the leading 'www.' - download then succeeds:
https://bitbucket.org/jpnurmi/libircclient-qt/downloads/%{name}-src-%{version}.tar.gz


> %package devel
> Group:          System Environment/Libraries

As long as we keep filling this Group tag, the correct group for library -devel packages is:  Development/Libraries


> %package devel
> License:        LGPLv2+
> URL:            http://www.bitbucket.org/jpnurmi/libircclient-qt

Repeating License and URL tags here is not needed. So, unless you insist on maintaining them in two places, better delete them here.


> %package devel
> Requires:       %{name} = %{version}-%{release}

%{?_isa} is missing:
https://fedoraproject.org/wiki/Packaging:Guidelines#Requiring_Base_Package


> %files devel
> ...
> %{_includedir}/ircclient-qt/Irc
> ...
> %{_libdir}/qt4/mkspecs/features/libircclient-qt-config.prf
> %{_libdir}/qt4/mkspecs/features/libircclient-qt.prf

Which package owns %{_includedir}/ircclient-qt/ and the several directories below %_libdir?
https://fedoraproject.org/wiki/Packaging:UnownedDirectories

Also, since several essential headers, such as "irc.h" include Qt headers, there's a "Requires: qt-devel" missing in the -devel package.


> %files devel
> ...
> %doc COPYING AUTHORS README CHANGELOG

These %doc files are duplicates of the ones installed by the base package. As a result, this only clutters up /usr/share/doc/ where two directories for the libircclient-qt packages would be created.


* What about packaging the 'doc' directory with its HTML documentation?


* Build log warns about deprecated features being enabled and adds many warnings about individual deprecated items. What's the story here? The 'INSTALL' file comments on that, but doesn't answer when the "deprecated backwards compatible functionality" could be needed.


* Build log: compilation is non-verbose. One cannot see the used compiler flags, for example. This is because the QMake project file adds CONFIG += silent.

Comment 2 Jan Kaluža 2011-08-03 07:28:00 UTC
Thanks for taking this.

Spec URL: http://jkaluza.fedorapeople.org/libircclient-qt.spec
SRPM: http://jkaluza.fedorapeople.org/libircclient-qt-0.5.0-2.fc15.src.rpm
Koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=3248944

(In reply to comment #1)
> * "spectool -g libircclient-qt.spec" fails downloading the tarball.

Should be fixed now.

> As long as we keep filling this Group tag, the correct group for library -devel
> packages is:  Development/Libraries

Fixed too.
 
> Repeating License and URL tags here is not needed. So, unless you insist on
> maintaining them in two places, better delete them here.

Fixed.

> %{?_isa} is missing:

Fixed.

> > %{_includedir}/ircclient-qt/Irc

This directory is now owned by libircclient-qt

> > %{_libdir}/qt4/mkspecs/features/libircclient-qt-config.prf
> > %{_libdir}/qt4/mkspecs/features/libircclient-qt.prf

Those are owned by qt-devel. I've added qt-devel as Requires for -devel package.

> Also, since several essential headers, such as "irc.h" include Qt headers,
> there's a "Requires: qt-devel" missing in the -devel package.

Fixed.

> These %doc files are duplicates of the ones installed by the base package.

Removed from -devel.

> * What about packaging the 'doc' directory with its HTML documentation?

Added.

> * Build log warns about deprecated features being enabled and adds many
> warnings about individual deprecated items. What's the story here? The
> 'INSTALL' file comments on that, but doesn't answer when the "deprecated
> backwards compatible functionality" could be needed.

During make, moc_FILENAME.cpp meta files are created by Qt, which does some magic to make Qt signals working (generates unique signals signatures and so on). This meta files also contain signals handlers, so the signals are called there. If some signals are deprecated, it will trigger that warning. This could be fixed by disabling deprecated signals completely, but I think this should be done by upstream first.
 
> 
> * Build log: compilation is non-verbose. One cannot see the used compiler
> flags, for example. This is because the QMake project file adds CONFIG +=
> silent.

I'm commenting that line using sed now.

Comment 3 Michael Schwendt 2011-08-06 10:58:56 UTC
APPROVED

Except for one thing the rpmdev-diff output reveals:

  -%post -p /sbin/ldconfig
  +%post -p /bin/echo 
  +1
 
  -%postun -p /sbin/ldconfig
  +%postun -p /bin/echo 
  +1

Probably you've tested something there, but it makes no sense to keep that change. ;)

Comment 4 Jan Kaluža 2011-08-08 08:34:48 UTC
Ah, you're right. I've been testing one rpm behaviour there (which resulted in rpm bugzilla) and forgot to remove it. I will remove it when committing to repo.

Comment 5 Jan Kaluža 2011-08-08 08:49:31 UTC
New Package SCM Request
=======================
Package Name: libircclient-qt
Short Description: Cross-platform IRC client library written with Qt 4
Owners: jkaluza
Branches: f15 f16
InitialCC:

Comment 6 Gwyn Ciesla 2011-08-08 10:05:01 UTC
Git done (by process-git-requests).

Comment 7 Jan Kaluža 2012-10-03 19:14:02 UTC
Uhm, this is done for looong time. I forgot to close this review. Sorry for that.


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