Bug 635515 - Review Request: libphidget - Drivers and API for Phidget devices
Review Request: libphidget - Drivers and API for Phidget devices
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Peter Lemenkov
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2010-09-20 00:11 EDT by Rich Mattes
Modified: 2010-10-14 02:37 EDT (History)
3 users (show)

See Also:
Fixed In Version: libphidget-2.1.7.20100621-5.fc12
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2010-10-12 08:46:48 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
lemenkov: fedora‑review+
kevin: fedora‑cvs+


Attachments (Terms of Use)

  None (edit)
Description Rich Mattes 2010-09-20 00:11:43 EDT
Spec URL: http://rmattes.fedorapeople.org/RPMS/libphidget/libphidget.spec
SRPM URL: http://rmattes.fedorapeople.org/RPMS/libphidget/libphidget-2.1.7.20100621-1.fc13.src.rpm 

Description: Phidgets are a set of "plug and play" building blocks for low cost USB sensing and control from your PC.  All the USB complexity is taken care of by the robust libphidget API.

koji-f12: http://koji.fedoraproject.org/koji/taskinfo?taskID=2476637
koji-f13: http://koji.fedoraproject.org/koji/taskinfo?taskID=2476642
koji-f14: http://koji.fedoraproject.org/koji/taskinfo?taskID=2476645

$ rpmlint ../RPMS/x86_64/libphidget-* libphidget*
libphidget.x86_64: W: spelling-error %description -l en_US Phidgets -> Fidgets, Midgets, Widgets
libphidget-devel.x86_64: W: no-documentation
libphidget.src: W: spelling-error %description -l en_US Phidgets -> Fidgets, Midgets, Widgets
4 packages and 0 specfiles checked; 0 errors, 3 warnings.
Comment 1 Peter Lemenkov 2010-09-20 08:04:37 EDT
I'll review it
Comment 2 Peter Lemenkov 2010-09-20 08:31:07 EDT
REVIEW:

Legend: + = PASSED, - = FAILED, 0 = Not Applicable

+ rpmlint is (almost) silent

work ~/Desktop: rpmlint libphidget-*
libphidget.i686: W: spelling-error %description -l en_US Phidgets -> Fidgets
libphidget-devel.i686: W: no-documentation
3 packages and 0 specfiles checked; 0 errors, 2 warnings.
work ~/Desktop: 

+ The package is named according to the Package Naming Guidelines .
+ The spec file name matches the base package %{name}, in the format %{name}.spec.
+ The package meets the Packaging Guidelines .
+ The package is licensed with a Fedora approved license and meets the Licensing Guidelines .
+ The License field in the package spec file matches the actual license.(LGPLv3)
+ The file, containing the text of the license(s) for the package is included in %doc.
+ The spec file is written in American English.
+ The spec file for the package is legible.
+ The sources used to build the package matches the upstream source, as provided in the spec URL.

Sulaco ~/rpmbuild/SOURCES: sha256sum libphidget_2.1.7.20100621.tar.gz*
63a1a7157f4a2b976b6d6858d8ae03ebef2fdc44f8dbb5832a3bfe2c9579e20c  libphidget_2.1.7.20100621.tar.gz
63a1a7157f4a2b976b6d6858d8ae03ebef2fdc44f8dbb5832a3bfe2c9579e20c  libphidget_2.1.7.20100621.tar.gz.1
Sulaco ~/rpmbuild/SOURCES: 

+ The package successfully compiles and builds into binary rpms on at least one primary architecture. See koji links above.
+ All build dependencies are listed in BuildRequires.
0 No need to handle locales.
+ The package calls ldconfig in %post and %postun.
+ The package does NOT bundle copies of system libraries.
0 The package is not designed to be relocatable.
+ The package owns all directories that it creates.
+ The package does not list a file more than once in the spec file's %files listings.
+ Permissions on files are set properly.
+ The package consistently uses macros.
+ The package contains code, or permissible content.
0 No extremely large documentation files.
+ Anything, the package includes as %doc, does not affect the runtime of the application.
+ Header files are in a -devel package.
0 No static libraries.
+ The library files that end in .so (without suffix) are in a -devel package.
+ The devel package requires the base package using a fully versioned dependency: Requires: %{name} = %{version}-%{release}
+ The package does NOT contain any .la libtool archives
0 Not a GUI application.
+ The package does not own files or directories already owned by other packages.
+ All filenames in rpm packages are valid UTF-8.

Ok, looks good but some questions are still remains:

1. Why you don't enable java support? Is is intentional? See --enable-jni configure option.
2. No zeroconf support too. Why?
3. Config-files for hotplug/udev also not installed. I belive that they worth installing.
4. You provided patch for removing ldconfig and rm at %install stage, but there is a configure switch --disable-ldconfig. Why not to use it instead?
Comment 3 Rich Mattes 2010-09-20 20:48:55 EDT
Thanks for taking on the review!

I've enabled zeroconf, zeroconf-lookup, and am now using the ldconfig switch.  I added the patch to keep the buildsystem from trying to rm old versions of itself, and commented out the ldconfig stuff cause i was already in there.  I've dropped the patches (and the calls to aclocal and libtoolize.)  I've also installed the udev rules.  

--enable-jni didn't seem to do anything, but I did a little digging and the .jar file has a separate make target.  I've enabled it and installed the .jar file to the jnidir.  I'm not really sure what to do with the resulting .jar file: the packaging guidelines say that the .jar file should be installed in %{_libdir}/%{name}, but then it goes on to outline the %{_jnidir}.  I've put the .jar in the jnidir for now.  If it's wrong, I'll fix or remove it.

Spec URL: http://rmattes.fedorapeople.org/RPMS/libphidget/libphidget.spec
SRPM URL:
http://rmattes.fedorapeople.org/RPMS/libphidget/libphidget-2.1.7.20100621-2.fc13.src.rpm 


$ rpmlint ../RPMS/x86_64/libphidget-* ../SRPMS/libphidget*
libphidget.x86_64: W: spelling-error %description -l en_US Phidgets -> Fidgets, Midgets, Widgets
libphidget-devel.x86_64: W: no-documentation
libphidget.src: W: spelling-error %description -l en_US Phidgets -> Fidgets, Midgets, Widgets
4 packages and 0 specfiles checked; 0 errors, 3 warnings.
Comment 4 Peter Lemenkov 2010-09-21 04:27:41 EDT
Ok, we almost finished, but now you'd better to split off java-part into its own sub-package. 

Also there are some new issues:

* You need to install into %{_javadir} instead of %{_jnidir}. Take a look at the following link:

https://fedoraproject.org/wiki/Packaging:Java#Directory_structure

* You need to add "Requires: udev" (owner of %{_sysconfdir}/udev/rules.d)
* You also need to add necessary (Build)Requires for java-related stuff. See this link for details:

https://fedoraproject.org/wiki/Packaging:Java#BuildRequires_and_Requires
Comment 5 Rich Mattes 2010-09-21 08:41:52 EDT
Thanks, I split the java stuff into its own subpackage and corrected the issues you pointed out.  The package builds fine for me in mock (fedora-13-x86_64.)  The new spec and SRPM are available here:

Spec URL: http://rmattes.fedorapeople.org/RPMS/libphidget/libphidget.spec
SRPM URL:
http://rmattes.fedorapeople.org/RPMS/libphidget/libphidget-2.1.7.20100621-3.fc13.src.rpm 

$ rpmlint ../RPMS/x86_64/libphidget-* ../SRPMS/libphidget-*
libphidget.x86_64: W: spelling-error %description -l en_US Phidgets -> Fidgets
libphidget-devel.x86_64: W: no-documentation
libphidget-java.x86_64: W: no-documentation
libphidget.src: W: spelling-error %description -l en_US Phidgets -> Fidgets
5 packages and 0 specfiles checked; 0 errors, 4 warnings.
Comment 6 Peter Lemenkov 2010-09-21 08:50:36 EDT
Ok, I don't see any other issues so far. This package is

APPROVED.
Comment 7 Rich Mattes 2010-09-21 10:55:15 EDT
Thanks for the quick review Peter!
Comment 8 Rich Mattes 2010-09-21 10:55:44 EDT
New Package SCM Request
=======================
Package Name: libphidget
Short Description: Drivers and API for Phidget devices
Owners: rmattes
Branches: f12 f13 f14
Comment 9 Kevin Fenzi 2010-09-25 01:02:31 EDT
Git done (by process-git-requests).
Comment 10 Fedora Update System 2010-09-27 09:09:39 EDT
libphidget-2.1.7.20100621-4.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/libphidget-2.1.7.20100621-4.fc14
Comment 11 Fedora Update System 2010-09-27 16:07:46 EDT
libphidget-2.1.7.20100621-4.fc14 has been pushed to the Fedora 14 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 libphidget'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/libphidget-2.1.7.20100621-4.fc14
Comment 12 Fedora Update System 2010-10-03 23:17:55 EDT
libphidget-2.1.7.20100621-5.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/libphidget-2.1.7.20100621-5.fc13
Comment 13 Fedora Update System 2010-10-03 23:18:02 EDT
libphidget-2.1.7.20100621-5.fc12 has been submitted as an update for Fedora 12.
https://admin.fedoraproject.org/updates/libphidget-2.1.7.20100621-5.fc12
Comment 14 Fedora Update System 2010-10-03 23:18:08 EDT
libphidget-2.1.7.20100621-5.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/libphidget-2.1.7.20100621-5.fc14
Comment 15 Fedora Update System 2010-10-12 08:46:43 EDT
libphidget-2.1.7.20100621-5.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 16 Fedora Update System 2010-10-14 02:28:01 EDT
libphidget-2.1.7.20100621-5.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 17 Fedora Update System 2010-10-14 02:37:51 EDT
libphidget-2.1.7.20100621-5.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.