Bug 518779 - Review Request: libnfc - NFC SDK and Programmers API
Summary: Review Request: libnfc - NFC SDK and Programmers API
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Martin Gieseking
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-08-22 18:39 UTC by François Kooman
Modified: 2010-01-21 00:06 UTC (History)
3 users (show)

Fixed In Version: 1.3.0-1.fc12
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-01-21 00:06:53 UTC
Type: ---
Embargoed:
martin.gieseking: fedora-review+
j: fedora-cvs+


Attachments (Terms of Use)

Description François Kooman 2009-08-22 18:39:54 UTC
Spec URL: http://fkooman.fedorapeople.org/libnfc/libnfc.spec
SRPM URL: http://fkooman.fedorapeople.org/libnfc/libnfc-1.2.1-1.fc11.src.rpm
Description: libnfc is the first free NFC SDK and Programmers API released under the GNU Lesser General Public License. It provides complete transparency and 
royalty-free use for everyone.

Comment 1 Martin Gieseking 2009-10-03 17:24:30 UTC
Here's my review of your package. You've done a good job, the package is pretty clean. Just three minor suggestions:

- You should prefix the filenames of the patches with libnfc, e.g. libnfc_no_cflags.patch

- I recommend to replace %{_datadir}/man/man1/* by %{_mandir}/man1/*

- in Requires, I would prefer to use the macro %{name} instead of explicitely mention libnfc


$ rpmlint /var/lib/mock/fedora-11-x86_64/result/libnfc-*
libnfc-devel.x86_64: W: no-documentation
5 packages and 0 specfiles checked; 0 errors, 1 warnings.

The warning is expected and can be ignored.

---------------------------------
keys used in following checklist:

[+] 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.
    - LGPLv3+ according to source file headers

[+] MUST: The License field in the package spec file must match the actual license.

[+] MUST: File(s) containing the text of the license(s) for the package must be included in %doc.
    - COPYING added to %doc

[+] 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, as provided in the spec URL.
    $ sha1sum libnfc-1.2.1.tar.gz*
    2e0c4798d47c0bed3ef52bb0bce31b44210b2266  libnfc-1.2.1.tar.gz
    2e0c4798d47c0bed3ef52bb0bce31b44210b2266  libnfc-1.2.1.tar.gz.1


[+] MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture.
    koji scratch build:
    https://koji.fedoraproject.org/koji/taskinfo?taskID=1725893

[.] 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. 
    - no locales

[+] MUST: Every binary RPM package (or subpackage) which stores shared library files (not just symlinks) in any of the dynamic linker's default paths, must call ldconfig in %post and %postun.

[.] MUST: If the package is designed to be relocatable, ...
    - not relocatable

[+] MUST: A package must own all directories that it creates. 

[+] MUST: A Fedora package must not list a file more than once in the spec file's %files listings.

[+] MUST: Permissions on files must be set properly.

[+] MUST: Each package must have a %clean section, which contains rm -rf %{buildroot}.

[+] 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.
    - no large docs

[+] MUST: If a package includes something as %doc, it 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.
    - no static libs packaged

[+] MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig'

[+] MUST: If a package contains library files with a suffix (e.g. libfoo.so.1.1), then library files that end in .so (without suffix) must go in a -devel package.

[+] MUST: devel packages must require the base package using a fully versioned dependency: Requires: %{name} = %{version}-%{release}

[+] MUST: Packages must NOT contain any .la libtool archives, these must be removed in the spec if they are built.
    - .la files removed 

[.] MUST: Packages containing GUI applications must include a %{name}.desktop file.
    - no GUI

[+] MUST: Packages must not own files or directories already owned by other packages.

[+] MUST: At the beginning of %install, each package MUST run rm -rf %{buildroot} (or $RPM_BUILD_ROOT).

[+] MUST: All filenames in rpm packages must be valid UTF-8.


[+] SHOULD: The reviewer should test that the package builds in mock.
    - builds in mock

[+] SHOULD: The package should compile and build into binary rpms on all supported architectures.
    - builds in koji

[+] SHOULD: If scriptlets are used, those scriptlets must be sane.

[+] SHOULD: Usually, subpackages other than devel should require the base package using a fully versioned dependency.
    - tools package requires base package

[+] SHOULD: pkgconfig(.pc) files should be placed in a -devel pkg

Comment 2 François Kooman 2009-10-03 18:49:31 UTC
Thanks for your review! :)

I've been working with upstream to smooth some things. I've packaged now an SVN snapshot so no patches are required. I addressed your remarks. I would like to hold of adding libnfc until the 1.3.0 release. Or would it be better to import 1.2.1 (with your remarks addressed)?


* Sat Oct 03 2009 François Kooman <fkooman at tuxed net> 1.3.0-0.1
- next version will be 1.3.0
- use better macro for mandir
- use name macro instead of "libnfc" in Requires and includedir

* Mon Sep 12 2009 François Kooman <fkooman at tuxed net> 1.2.2-0.1
- update to SVN snapshot
- use CMake instead of autotools

Spec URL: http://fkooman.fedorapeople.org/libnfc/libnfc.spec
SRPM URL: http://fkooman.fedorapeople.org/libnfc/libnfc-1.3.0-0.1.fc11.src.rpm

Comment 3 Martin Gieseking 2009-10-04 06:26:48 UTC
(In reply to comment #2)
> Thanks for your review! :)
You're welcome.

 
> I would like to
> hold of adding libnfc until the 1.3.0 release. Or would it be better to import
> 1.2.1 (with your remarks addressed)?


To me, it's fine if you want to wait until version 1.3.0 is released. When the new package is ready, clear the Whiteboard field above. Then I'll have a look into it.

Comment 4 François Kooman 2010-01-16 21:14:32 UTC
Ok, I've updated to version 1.3.0. Maybe because of the switch back to autotools and the inclusion of Doxygen which adds lots of files to the devel package, not everything from the checklist above is still valid?

* Sat Jan 16 2010 François Kooman <fkooman at tuxed net> 1.3.0-1
- update to final version 1.3.0
- drop CMake for now as upstream does not include CMake build scripts
  in release
- generate API documentation using Doxygen

Spec URL: http://fkooman.fedorapeople.org/libnfc/libnfc.spec
SRPM URL: http://fkooman.fedorapeople.org/libnfc/libnfc-1.3.0-1.fc12.src.rpm

Koji scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=1927310


[fkooman@franek SPECS]$ rpmlint libnfc.spec ../SRPMS/libnfc-1.3.0-1.fc12.src.rpm  ../RPMS/x86_64/libnfc-*
5 packages and 1 specfiles checked; 0 errors, 0 warnings.
[fkooman@franek SPECS]$ 

Thanks! :)

Comment 5 Martin Gieseking 2010-01-17 10:59:01 UTC
Since there are several important changes compared to the previous version, I rechecked the complete package. I couldn't find anything to complain about, so the package is approved. :)

---------------------------------
keys used in following checklist:

[+] 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.
    - LGPL v3 according to COPYING and boilerplates

[+] MUST: The License field in the package spec file must match the actual license.

[+] MUST: File(s) containing the text of the license(s) must be included in %doc.

[+] 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.
    $ sha1sum libnfc-1.3.0.tar.gz*
    f4e0b746ecfe0e4ce446812eaf785a29bcc91b84  libnfc-1.3.0.tar.gz
    f4e0b746ecfe0e4ce446812eaf785a29bcc91b84  libnfc-1.3.0.tar.gz.1

[+] MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture.
    - koji scratch build:
      https://koji.fedoraproject.org/koji/taskinfo?taskID=1927878

[.] 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.
    - no locales

[+] MUST: Packages containing shared libraries 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, ...
    - not 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 have a %clean section, which contains rm -rf %{buildroot}.

[+] 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 section 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: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig'
[+] MUST: .so files w/o suffix must go in a -devel package.
[+] MUST: devel packages must require the base package using a fully versioned dependency: Requires: %{name} = %{version}-%{release}

[+] 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: At the beginning of %install, each package MUST run rm -rf %{buildroot}.

[+] MUST: All filenames in rpm packages must be valid UTF-8.

[+] SHOULD: The reviewer should test that the package builds in mock.
    - build in mock

[+] SHOULD: The package should compile and build into binary rpms on all supported architectures.
    - builds in koji

[+] SHOULD: The reviewer should test that the package functions as described.
[+] SHOULD: If scriptlets are used, those scriptlets must be sane.
[+] SHOULD: Usually, subpackages other than devel should require the base package using a fully versioned dependency.
[+] SHOULD: pkgconfig(.pc) files should be placed in a -devel pkg.

========================
The package is APPROVED.
========================

Comment 6 François Kooman 2010-01-17 11:17:04 UTC
New Package CVS Request
=======================
Package Name: libnfc
Short Description: NFC SDK and Programmers API
Owners: fkooman
Branches: F-12
InitialCC:

Comment 7 Jason Tibbitts 2010-01-19 05:00:17 UTC
CVS done (by process-cvs-requests.py).

Comment 8 Fedora Update System 2010-01-19 18:43:32 UTC
libnfc-1.3.0-1.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/libnfc-1.3.0-1.fc12

Comment 9 Fedora Update System 2010-01-21 00:06:48 UTC
libnfc-1.3.0-1.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.


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