Bug 626446

Summary: Review Request: libmutil - A C++ library providing various utilities
Product: [Fedora] Fedora Reporter: Peter Lemenkov <lemenkov>
Component: Package ReviewAssignee: Martin Gieseking <martin.gieseking>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fedora-package-review, martin.gieseking, notting, pahan
Target Milestone: ---Flags: martin.gieseking: fedora-review+
kevin: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: libmutil-0.8.0-0.3.20100319svn3760.fc14.1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-10-05 09:23:11 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:    
Bug Blocks: 626458, 626462, 626699, 626701, 626726    

Description Peter Lemenkov 2010-08-23 15:05:51 UTC
Spec URL: http://peter.fedorapeople.org/libmutil.spec
SRPM URL: http://peter.fedorapeople.org/libmutil-0.8.0-0.1.20100319svn3760.fc12.src.rpm
Description: libmutil is a library providing convenient C++ utilities (threads, mutexes, memory object management, ...). It is used by the minisip project.

Koji scratchbuild:
http://koji.fedoraproject.org/koji/taskinfo?taskID=2418394

rpmlint:
Sulaco ~/rpmbuild/SPECS: rpmlint ../RPMS/ppc/libmutil-*
libmutil.ppc: W: spelling-error %description -l en_US mutexes -> mut exes, mut-exes, muteness
libmutil.ppc: W: spelling-error %description -l en_US minisip -> mini sip, mini-sip, miniskirt
libmutil.ppc: W: shared-lib-calls-exit /usr/lib/libmutil.so.0.0.0 exit
libmutil-debuginfo.ppc: W: hidden-file-or-dir /usr/src/debug/libmutil-0.8.0/libltdl/.libs
libmutil-debuginfo.ppc: W: hidden-file-or-dir /usr/src/debug/libmutil-0.8.0/libltdl/.libs
libmutil-devel.ppc: W: no-documentation
3 packages and 0 specfiles checked; 0 errors, 6 warnings.
Sulaco ~/rpmbuild/SPECS:


This library is one of the requirements for minisip sip client.

Comment 1 Peter Lemenkov 2010-08-23 15:09:09 UTC
I'll provide packages for the rest of libraries required by minisip in a couple of days (there are some packaging issues).

Comment 2 Martin Gieseking 2010-08-24 07:15:41 UTC
Hi Peter, here are some quick comments:

- File %{_datadir}/aclocal/winfuncs.m4 is licensed under GPLv2+. This should
  be reflected in the License tag of the devel package (LGPLv2+ and GPLv2+).

- I recommend to replace %{_includedir}/* with %{_includedir}/%{name}/

- The folder %{_datadir}/%{name}/examples/ contains sample source code and
  should probably be added with %doc.

Comment 3 Peter Lemenkov 2010-08-24 07:28:39 UTC
(In reply to comment #2)
> Hi Peter, here are some quick comments:

Hello Martin!

> - File %{_datadir}/aclocal/winfuncs.m4 is licensed under GPLv2+. This should
>   be reflected in the License tag of the devel package (LGPLv2+ and GPLv2+).
> 
> - I recommend to replace %{_includedir}/* with %{_includedir}/%{name}/
> 
> - The folder %{_datadir}/%{name}/examples/ contains sample source code and
>   should probably be added with %doc.

Thanks for the quick reply - I'll fix these issues shortly. Stay tuned!

Comment 4 Peter Lemenkov 2010-09-23 12:54:21 UTC
New package:

http://peter.fedorapeople.org/libmutil.spec
http://peter.fedorapeople.org/libmutil-0.8.0-0.2.20100319svn3760.fc12.src.rpm

* Added note that -devel part containing GPLv2+ bits
* Replaced %{_includedir}/* with %{_includedir}/%{name}/
* Re-arranged examples.

Finally cleaned up NotReady keyword.

Comment 5 Martin Gieseking 2010-09-23 18:41:58 UTC
Hi Peter,

the package looks good. There are just some (minor) cosmetic things:

- I suggest to replace the Summary with:
  Minisip library providing various C++ utility classes

- I'd also prefer a complete sentence in the %description the -devel package:
  This package contains the development files for library %{name}.

- Remove the DOS line endings from the example sources, e.g. with 
  for f in examples/*; do
    sed "s|\r||g" $f > $f.new
    touch -r $f $f.new
    mv $f.new $f
  done


$ rpmlint /var/lib/mock/fedora-13-x86_64/result/*.rpm
libmutil.src: W: spelling-error %description -l en_US mutexes -> mut exes, mut-exes, muteness
libmutil.src: W: spelling-error %description -l en_US minisip -> mini sip, mini-sip, miniskirt
libmutil.src: W: invalid-url Source0: libmutil-0.8.0.tar.bz2
libmutil.x86_64: W: spelling-error %description -l en_US mutexes -> mut exes, mut-exes, muteness
libmutil.x86_64: W: spelling-error %description -l en_US minisip -> mini sip, mini-sip, miniskirt
libmutil.x86_64: W: shared-lib-calls-exit /usr/lib64/libmutil.so.0.0.0 exit.5
libmutil-debuginfo.x86_64: W: hidden-file-or-dir /usr/src/debug/libmutil-0.8.0/libltdl/.libs
libmutil-debuginfo.x86_64: W: hidden-file-or-dir /usr/src/debug/libmutil-0.8.0/libltdl/.libs
libmutil-devel.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/libmutil-devel-0.8.0/threadtest.cpp
libmutil-devel.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/libmutil-devel-0.8.0/mutextest.cpp
libmutil-devel.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/libmutil-devel-0.8.0/semaphoretest.cpp
4 packages and 0 specfiles checked; 0 errors, 11 warnings.

---------------------------------
key:

[+] OK
[.] OK, not applicable
[X] needs work
---------------------------------

[+] MUST: The package must be named according to the Package Naming Guidelines.
[+] MUST: The spec file name must match the base package %{name}.
[+] MUST: The package must meet the Packaging Guidelines.
[+] MUST: The package must be licensed with a Fedora approved license.
    - LGPLv2 (and GPLv2 for a single file in -devel)

[+] MUST: The License field in the package spec file must match the actual license.
[+] MUST: The file containing the text of the license(s) for the package must be included in %doc.
    - COPYING.LIB added
    - tarball doesn't contain text of GPLv2

[+] MUST: The spec file must be written in American English.
[+] MUST: The spec file for the package MUST be legible.
[+] MUST: The sources used to build the package must match the upstream source.
    $ diff -qr a/libmutil-0.8.0 b/libmutil-0.8.0
    (no output)

[+] MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture.
[.] MUST: If the package does not successfully compile, ...
[+] MUST: All build dependencies must be listed in BuildRequires.
[.] MUST: The spec file MUST handle locales properly. 
[+] MUST: Packages storing shared library files must call ldconfig in %post and %postun.
[+] MUST: Packages must NOT bundle copies of system libraries.
[.] MUST: If the package is designed to be relocatable, ...
[+] MUST: A package must own all directories that it creates. 
[+] MUST: A Fedora package must not list a file more than once in %files.
[+] MUST: Permissions on files must be set properly.
[+] MUST: Each package must consistently use macros.
[+] MUST: The package must contain code, or permissable content.
[.] MUST: Large documentation files must go in a -doc subpackage.
[+] MUST: Files in %doc must not affect the runtime of the application.
[+] MUST: Header files must be in a -devel package.
[.] MUST: Static libraries must be in a -static package.
[+] MUST: .so (without suffix) must go in a -devel package.
[+] MUST: devel packages must require the base package.
[+] MUST: Packages must NOT contain any .la libtool archives.
[.] MUST: Packages containing GUI applications must include a %{name}.desktop file.
[+] MUST: Packages must not own files or directories already owned by other packages.
[+] MUST: All filenames in rpm packages must be valid UTF-8.

[X] SHOULD: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it.
    - the GPLv2 license text should be added to the tarball

[+] SHOULD: The reviewer should test that the package builds in mock.
[+] SHOULD: The package should compile and build into binary rpms on all supported architectures.
[+] SHOULD: If scriptlets are used, those scriptlets must be sane.
[.] SHOULD: subpackages other than devel should require the base package.
[+] SHOULD: pkgconfig(.pc) files should be placed in a -devel pkg.
[+] SHOULD: If the package has file dependencies outside of /etc, /bin, /sbin, /usr/bin, or /usr/sbin consider requiring the package which provides the file instead of the file itself.
[.] SHOULD: your package should contain man pages for binaries/scripts.

Comment 7 Martin Gieseking 2010-09-23 19:04:19 UTC
Wow, that was fast. :)

Everything looks fine now. The remaining rpmlint warnings can be ignored.

----------------
Package APPROVED
----------------

Comment 8 Peter Lemenkov 2010-09-23 19:10:13 UTC
New Package SCM Request
=======================
Package Name: libmutil
Short Description: Minisip library providing various C++ utility classes
Owners: peter
Branches: f12 f13 f14 el6
InitialCC:

Comment 9 Kevin Fenzi 2010-09-25 04:58:01 UTC
Git done (by process-git-requests).

Comment 10 Fedora Update System 2010-09-25 05:29:55 UTC
libmutil-0.8.0-0.3.20100319svn3760.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/libmutil-0.8.0-0.3.20100319svn3760.fc13

Comment 11 Fedora Update System 2010-09-25 07:43:16 UTC
libmutil-0.8.0-0.3.20100319svn3760.fc14.1 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/libmutil-0.8.0-0.3.20100319svn3760.fc14.1

Comment 12 Fedora Update System 2010-09-25 07:44:29 UTC
libmutil-0.8.0-0.3.20100319svn3760.fc13.1 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/libmutil-0.8.0-0.3.20100319svn3760.fc13.1

Comment 13 Fedora Update System 2010-09-25 07:45:50 UTC
libmutil-0.8.0-0.3.20100319svn3760.fc12.1 has been submitted as an update for Fedora 12.
https://admin.fedoraproject.org/updates/libmutil-0.8.0-0.3.20100319svn3760.fc12.1

Comment 14 Fedora Update System 2010-09-26 04:32:37 UTC
libmutil-0.8.0-0.3.20100319svn3760.fc12.1 has been pushed to the Fedora 12 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update libmutil'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/libmutil-0.8.0-0.3.20100319svn3760.fc12.1

Comment 15 Fedora Update System 2010-10-05 09:23:07 UTC
libmutil-0.8.0-0.3.20100319svn3760.fc13.1 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 16 Fedora Update System 2010-10-05 09:38:59 UTC
libmutil-0.8.0-0.3.20100319svn3760.fc12.1 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 17 Fedora Update System 2010-10-05 13:25:27 UTC
libmutil-0.8.0-0.3.20100319svn3760.fc14.1 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.