Bug 728737 - Review Request: libinstpatch - MIDI instrument patch library
Summary: Review Request: libinstpatch - MIDI instrument patch library
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Brendan Jones
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2011-08-06 20:00 UTC by Orcan Ogetbil
Modified: 2011-08-31 01:36 UTC (History)
3 users (show)

Fixed In Version: libinstpatch-1.0.0-3.20110806svn386.fc15
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2011-08-30 20:44:31 UTC
Type: ---
brendan.jones.it: fedora-review+
gwync: fedora-cvs+

Attachments (Terms of Use)

Description Orcan Ogetbil 2011-08-06 20:00:14 UTC
Spec URL: http://oget.fedorapeople.org/review/libinstpatch.spec
SRPM URL: http://oget.fedorapeople.org/review/libinstpatch-1.0.0-1.20110806svn386.fc15.src.rpm

libInstPatch stands for lib-Instrument-Patch and is a library for processing
digital sample based MIDI instrument "patch" files. The types of files
libInstPatch supports are used for creating instrument sounds for wavetable
synthesis. libInstPatch provides an object framework (based on GObject) to load
patch files into, which can then be edited, converted, compressed and saved.

We need this package so that we can update our swami (based on gtk1) package to swami-2 (based on gtk2).

Comment 1 Orcan Ogetbil 2011-08-06 20:06:56 UTC
Sorry, the correct SRPM link should be:
SRPM URL: http://oget.fedorapeople.org/review/libinstpatch-1.0.0-2.20110806svn386.fc15.src.rpm

Comment 2 Brendan Jones 2011-08-07 07:13:15 UTC
Hi Orcan,

The base package requirement in the subpackages needs to be in the format
"%{name}%{?_isa} = %{version}-%{release}"

Not a blocker but noted use of old FSF address. Most source headers are OK.

bsjones@f15laptop ~$rpmlint /home/rawhide/rpmbuild/SRPMS/libinstpatch*.rpm
libinstpatch.src: W: spelling-error %description -l en_US wavetable -> wave table, wave-table, vegetable
libinstpatch.src: W: invalid-url Source0: libinstpatch-1.0.0-svn386.tar.bz2
1 packages and 0 specfiles checked; 0 errors, 2 warnings.

bsjones@f15laptop ~$rpmlint /home/rawhide/rpmbuild/RPMS/x86_64/libinstpatch*.rpm
libinstpatch.x86_64: W: spelling-error %description -l en_US wavetable -> wave table, wave-table, vegetable
libinstpatch-devel.x86_64: E: incorrect-fsf-address /usr/include/libinstpatch-1.0/libinstpatch/version.h
libinstpatch-devel.x86_64: E: incorrect-fsf-address /usr/include/libinstpatch-1.0/libinstpatch/libinstpatch.h
3 packages and 0 specfiles checked; 2 errors, 1 warnings.

Comment 3 Orcan Ogetbil 2011-08-07 22:36:09 UTC
Thanks, updated the Requires, added the COPYING file to %doc, and emailed upstream about the FSF address:
Spec URL: http://oget.fedorapeople.org/review/libinstpatch.spec

Comment 4 Brendan Jones 2011-08-08 11:17:16 UTC
Hi Orcan,

this looks good to go. I did have trouble running the test included in the devel package, but I'll leave up that up to you to decide.



+ OK
- N/A
! Problem
? Not evaluated


[+] named according to the Package Naming Guidelines 
[+] The spec file name must match the base package %{name}, in the format
[+] Meet the Packaging Guidelines
unless building for F12 and below  or EPEL   
[+] Be licensed with a Fedora approved license and meet the Licensing
[+] The License field in the package spec file must match the actual license 
[+] License file must be included in %doc
[+] The spec file must be written in American English
[+] The spec file for the package MUST be legible
[+] The sources used to build the package must match the upstream source
[+] Successfully compile and build into binary rpms on at least one primary
[+] Proper use of ExcludeArch 
[+] All build dependencies must be listed in BuildRequires
[+] The spec file MUST handle locales properly
[+] Shared library files (not just symlinks) in any of the dynamic linker's
default paths, must call ldconfig in %post and %postun
[+] Packages must NOT bundle copies of system libraries
[-] If the package is designed to be relocatable, the packager must state this
fact in the request for review, along with the rationalization for relocation
of that specific package
[+] A package must own all directories that it creates
directories under this
[+] A Fedora package must not list a file more than once in the spec file's
%files listings
[+] Permissions on files must be set properly. Every %files section must
include a %defattr(...) line
[+] Each package must consistently use macros
[+] The package must contain code, or permissable content
[-] Large documentation files must go in a -doc subpackage
[+] If a package includes something as %doc, it must not affect the runtime of
the application
[+] Header files must be in a -devel package
[-] Static libraries must be in a -static package
[+] library files that end in .so (without suffix) must go in a -devel package
[+] devel packages must require the base package using a fully versioned
[+] Packages must NOT contain any .la libtool archives
[-] GUI apps must include a %{name}.desktop file, properly installed with
desktop-file-install in the %install section 
[+] Packages must not own files or directories already owned by other packages
[+] All filenames in rpm packages must be valid UTF-8

Should Items
[+] the packager SHOULD query upstream for any missing license text files to
include it
[-] Non-English language support for description and summary sections in the
package spec if available
[+] The reviewer should test that the package builds in mock
[+] The package should compile and build into binary rpms on all supported
[?] The reviewer should test that the package functions as described
*** see below
[+] If scriptlets are used, those scriptlets must be sane
[-] Usually, subpackages other than devel should require the base package using
a fully versioned dependency
[+] The placement of pkgconfig(.pc) should usually be placed in a -devel pkg
[-] 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 contain man pages for binaries/scripts

gcc -o /tmp/test_libinst /./usr/share/doc/libinstpatch-devel-1.0.0/create_sf2.c -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libinstpatch-1.0 -linstpatch-1.0 -lglib-2.0 -lgobject-2.0

./test_libinst Synth_Stab_10.wav 

(process:18473): GLib-GObject-CRITICAL **: g_object_ref: assertion `object->ref_count > 0' failed

(process:18473): GLib-GObject-CRITICAL **: g_object_unref: assertion `object->ref_count > 0' failed

Comment 5 Orcan Ogetbil 2011-08-08 12:09:43 UTC
Thanks for the review Breandan. I'll check out the issue with the test.

New Package SCM Request
Package Name: libinstpatch
Short Description: MIDI instrument patch library
Owners: oget
Branches: f15 f16

Comment 6 Gwyn Ciesla 2011-08-08 15:02:51 UTC
Git done (by process-git-requests).

Comment 7 Orcan Ogetbil 2011-08-12 04:00:54 UTC
Hi, I tried your test and it produced an output.sf2 file in the directory where you executed the ./test_libinst binary, and it looks like a valid .sf2 file to me.

I don't know about the importance of the warning messages. I see such messages with some other gtk2 applications too.

Comment 8 Fedora Update System 2011-08-12 23:51:59 UTC
libinstpatch-1.0.0-3.20110806svn386.fc15 has been submitted as an update for Fedora 15.

Comment 9 Fedora Update System 2011-08-12 23:52:59 UTC
libinstpatch-1.0.0-3.20110806svn386.fc16 has been submitted as an update for Fedora 16.

Comment 10 Fedora Update System 2011-08-15 20:27:01 UTC
libinstpatch-1.0.0-3.20110806svn386.fc16 has been pushed to the Fedora 16 testing repository.

Comment 11 Fedora Update System 2011-08-30 20:44:26 UTC
libinstpatch-1.0.0-3.20110806svn386.fc16 has been pushed to the Fedora 16 stable repository.

Comment 12 Fedora Update System 2011-08-31 01:36:10 UTC
libinstpatch-1.0.0-3.20110806svn386.fc15 has been pushed to the Fedora 15 stable repository.

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