Spec URL: http://salimma.fedorapeople.org/specs/gnome/bamf.spec SRPM URL: http://salimma.fedorapeople.org/specs/gnome/bamf-0.3.6-1.fc18.src.rpm Description: BAMF removes the headache of applications matching into a simple DBus daemon and C wrapper library. Currently features application matching at amazing levels of accuracy (covering nearly every corner case). This is a re-review as the package was orphaned; needed for gnome-pie Fedora Account System Username: salimma Koji scratch build (F18): http://koji.fedoraproject.org/koji/taskinfo?taskID=5377332
Hi Praveen, Please consider reviewing this - the release engineering team requires a re-review of Bamf before it can be unblocked, and we can't build gnome-pie on recent releases until that happens. Note that the SRPM here builds fine on F18 and below, but not on F19 and above due to deprecation warnings treated as errors. Will work on updating the code and upstreaming the patch once this goes in.
Hi Michel, Thanks for taking this package, I will do a formal review today. I am not changing "Assigned Flag" right now, will do it later.
Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed ===== MUST items ===== C/C++: [-]: Package does not contain kernel modules. [-]: Package contains no static executables. [x]: Header files in -devel subpackage, if present. [x]: ldconfig called in %post and %postun if required. [x]: Package does not contain any libtool archives (.la) [x]: Rpath absent or only used for internal libs. [x]: Development (unversioned) .so files in -devel subpackage, if present. Generic: [x]: Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: %build honors applicable compiler flags or justifies otherwise. [x]: Package contains no bundled libraries without FPC exception. [x]: Changelog in prescribed format. [!]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. Note: rm -rf %{buildroot} present but not required [x]: Sources contain only permissible code or content. [!]: Each %files section contains %defattr if rpm < 4.4 Note: %defattr present but not needed [-]: Package contains desktop file if it is a GUI application. [x]: Development files must be in a -devel package [-]: Package requires other packages for directories it uses. [x]: Package uses nothing in %doc for runtime. [x]: Package is not known to require ExcludeArch. [x]: Fully versioned dependency in subpackages, if present. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in bamf-devel , bamf-daemon [x]: Package complies to the Packaging Guidelines [!]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "GPL", "GPL (v2 or later)", "GPL (v3 or later)", "Unknown or generated", "LGPL (v3 or later)", "GPL (v3)". 18 files have unknown license. Detailed output of licensecheck in /home/daredevil/962651-bamf/licensecheck.txt [x]: License file installed when any subpackage combination is installed. [x]: Package consistently uses macro is (instead of hard-coded directory names). [-]: If the package is under multiple licenses, the licensing breakdown must be documented in the spec. [x]: Package is named according to the Package Naming Guidelines. [x]: Package does not generate any conflict. [x]: Package obeys FHS, except libexecdir and /usr/target. [-]: If the package is a rename of another package, proper Obsoletes and Provides are present. [x]: Package must own all directories that it creates. [x]: Package does not own files or directories owned by other packages. [x]: Requires correct, justified where necessary. [x]: Spec file is legible and written in American English. [-]: Package contains systemd file(s) if in need. [x]: Useful -debuginfo package or justification otherwise. [x]: Large documentation must go in a -doc subpackage. Note: Documentation size is 245760 bytes in 9 files. [x]: All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [x]: Macros in Summary, %description expandable at SRPM build time. [x]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [x]: If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package is included in %doc. [x]: Package use %makeinstall only when make install' ' DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: Package is not relocatable. [x]: Sources used to build the package match the upstream source, as provided in the spec URL. [x]: Spec file name must match the spec package %{name}, in the format %{name}.spec. [x]: File names are valid UTF-8. [x]: Packages must not store files under /srv, /opt or /usr/local [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [x]: Package installs properly. [x]: Rpmlint is run on all rpms the build produces. Note: No rpmlint messages. ===== SHOULD items ===== Generic: [-]: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [ ]: Final provides and requires are sane (see attachments). [x]: Package functions as described. [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [x]: Patches link to upstream bugs/comments/lists or are otherwise justified. [-]: Scriptlets must be sane, if used. [x]: Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [x]: Package should compile and build into binary rpms on all supported architectures. [?]: %check is present and all tests pass. [x]: Packages should try to preserve timestamps of original installed files. [x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: Sources can be downloaded from URI in Source: tag [x]: Reviewer should test that the package builds in mock. [x]: Buildroot is not present [x]: Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) [x]: Dist tag is present. [x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: Uses parallel make. [x]: The placement of pkgconfig(.pc) files are correct. [x]: SourceX tarball generation or download is documented. [x]: SourceX is a working URL. [x]: Spec use %global instead of %define. ===== EXTRA items ===== Generic: [x]: Large data in /usr/share should live in a noarch subpackage if package is arched. [x]: Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). [x]: Spec file according to URL is the same as in SRPM. Rpmlint ------- Checking: bamf-0.3.6-1.fc17.x86_64.rpm bamf-devel-0.3.6-1.fc17.x86_64.rpm bamf-daemon-0.3.6-1.fc17.x86_64.rpm 3 packages and 0 specfiles checked; 0 errors, 0 warnings. Rpmlint (installed packages) ---------------------------- # rpmlint bamf bamf-daemon bamf-devel bamf.x86_64: W: unused-direct-Shelia-dependency /usr/lib64/libbamf.so.0.0.0 /lib64/libm.so.6 bamf.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libbamf.so.0.0.0 /lib64/libgtk-x11-2.0.so.0 bamf.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libbamf.so.0.0.0 /lib64/libgdk-x11-2.0.so.0 bamf.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libbamf.so.0.0.0 /lib64/libatk-1.0.so.0 bamf.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libbamf.so.0.0.0 /lib64/libpangoft2-1.0.so.0 bamf.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libbamf.so.0.0.0 /lib64/libpangocairo-1.0.so.0 bamf.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libbamf.so.0.0.0 /lib64/libgdk_pixbuf-2.0.so.0 bamf.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libbamf.so.0.0.0 /lib64/libcairo.so.2 bamf.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libbamf.so.0.0.0 /lib64/libpango-1.0.so.0 bamf.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libbamf.so.0.0.0 /lib64/libfreetype.so.6 bamf.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libbamf.so.0.0.0 /lib64/libfontconfig.so.1 bamf.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libbamf.so.0.0.0 /lib64/libdbus-1.so.3 bamf.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libbamf.so.0.0.0 /lib64/libpthread.so.0 bamf.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libbamf.so.0.0.0 /lib64/librt.so.1 3 packages and 0 specfiles checked; 0 errors, 14 warnings. # echo 'rpmlint-done:' - Please refer http://fedoraproject.org/wiki/Common_Rpmlint_issues#unused-direct-shlib-dependency Requires -------- bamf (rpmlib, GLIBC filtered): /sbin/ldconfig libatk-1.0.so.0()(64bit) libc.so.6()(64bit) libcairo.so.2()(64bit) libdbus-1.so.3()(64bit) libdbus-glib-1.so.2()(64bit) libfontconfig.so.1()(64bit) libfreetype.so.6()(64bit) libgdk-x11-2.0.so.0()(64bit) libgdk_pixbuf-2.0.so.0()(64bit) libgio-2.0.so.0()(64bit) libglib-2.0.so.0()(64bit) libgobject-2.0.so.0()(64bit) libgtk-x11-2.0.so.0()(64bit) libm.so.6()(64bit) libpango-1.0.so.0()(64bit) libpangocairo-1.0.so.0()(64bit) libpangoft2-1.0.so.0()(64bit) libpthread.so.0()(64bit) librt.so.1()(64bit) rtld(GNU_HASH) bamf-daemon (rpmlib, GLIBC filtered): libX11.so.6()(64bit) libatk-1.0.so.0()(64bit) libc.so.6()(64bit) libcairo-gobject.so.2()(64bit) libcairo.so.2()(64bit) libgdk-3.so.0()(64bit) libgdk_pixbuf-2.0.so.0()(64bit) libgio-2.0.so.0()(64bit) libglib-2.0.so.0()(64bit) libgobject-2.0.so.0()(64bit) libgtk-3.so.0()(64bit) libgtop-2.0.so.7()(64bit) libm.so.6()(64bit) libpango-1.0.so.0()(64bit) libpangocairo-1.0.so.0()(64bit) libpthread.so.0()(64bit) libwnck-3.so.0()(64bit) rtld(GNU_HASH) bamf-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config bamf libbamf.so.0()(64bit) pkgconfig pkgconfig(glib-2.0) pkgconfig(libwnck-1.0) Provides -------- bamf: bamf bamf(x86-64) libbamf.so.0()(64bit) bamf-daemon: bamf-daemon bamf-daemon(x86-64) bamf-devel: bamf-devel bamf-devel(x86-64) pkgconfig(libbamf) Source checksums ---------------- http://launchpad.net/bamf/0.3/0.3.6/+download/bamf-0.3.6.tar.gz : CHECKSUM(SHA256) this package : df7c7e3635329e0bc702941ec9b0d026b773017e85eb6c62c9a2af9f8957aa7a CHECKSUM(SHA256) upstream package : df7c7e3635329e0bc702941ec9b0d026b773017e85eb6c62c9a2af9f8957aa7a Generated by fedora-review 0.4.1 (b2e211f) last change: 2013-04-29 Buildroot used: fedora-17-x86_64 Command line :/usr/bin/fedora-review -b 962651 Issues: ======= - Package do not use a name that already exist Note: A package already exist with this name, please check https://admin.fedoraproject.org/pkgdb/acls/name/bamf See: https://fedoraproject.org/wiki/Packaging/NamingGuidelines#Conflicting_Package_Names - Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. - Each %files section contains %defattr if rpm < 4.4 Note: %defattr present but not needed - License field in the package spec file matches the actual license. It should be v2+ and v3+. GPL (v2 or later) ----------------- /var/lib/mock/fedora-17-x86_64/root/builddir/build/BUILD/bamf-0.3.6/lib/libbamf/bamf-application-private.h /var/lib/mock/fedora-17-x86_64/root/builddir/build/BUILD/bamf-0.3.6/lib/libbamf/bamf-tab.c /var/lib/mock/fedora-17-x86_64/root/builddir/build/BUILD/bamf-0.3.6/lib/libbamf/bamf-tab.h /var/lib/mock/fedora-17-x86_64/root/builddir/build/BUILD/bamf-0.3.6/lib/libbamf/bamf-view-private.h /var/lib/mock/fedora-17-x86_64/root/builddir/build/BUILD/bamf-0.3.6/ltmain.sh GPL (v3 or later) ----------------- /var/lib/mock/fedora-17-x86_64/root/builddir/build/BUILD/bamf-0.3.6/tests/libbamf/test-libbamf.c /var/lib/mock/fedora-17-x86_64/root/builddir/build/BUILD/bamf-0.3.6/tests/libbamf/test-matcher.c
the package bamf-0.3.6-2 from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/source/SRPMS/b/bamf-0.3.6-2.fc20.src.rpm builds on f19 + f20 but not on f18. Koji scratch build (F19): http://koji.fedoraproject.org/koji/taskinfo?taskID=5398119
Hi both, bamf 0.3.6 requires Vala 0.20, which is why it does not build on F18. Do you want to just base the review on bamf 0.3.6? I won't do a major update on F18 as it's already released, and we don't want to break dependent apps (in this case gnome-pie), we just need to get bamf unblocked so we can actually build gnome-pie against it Could one of you do a formal review? Thanks
Hi Michel, I already did a formal review, is below issues resolved? As you said we don't have to provide a major update for f18, just have to unblock it for dependent applications. I assigned it to myself now. Issues: ======= - Package do not use a name that already exist Note: A package already exist with this name, please check https://admin.fedoraproject.org/pkgdb/acls/name/bamf See: https://fedoraproject.org/wiki/Packaging/NamingGuidelines#Conflicting_Package_Names - Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. - Each %files section contains %defattr if rpm < 4.4 Note: %defattr present but not needed - License field in the package spec file matches the actual license. It should be v2+ and v3+. GPL (v2 or later) ----------------- /var/lib/mock/fedora-17-x86_64/root/builddir/build/BUILD/bamf-0.3.6/lib/libbamf/bamf-application-private.h /var/lib/mock/fedora-17-x86_64/root/builddir/build/BUILD/bamf-0.3.6/lib/libbamf/bamf-tab.c /var/lib/mock/fedora-17-x86_64/root/builddir/build/BUILD/bamf-0.3.6/lib/libbamf/bamf-tab.h /var/lib/mock/fedora-17-x86_64/root/builddir/build/BUILD/bamf-0.3.6/lib/libbamf/bamf-view-private.h /var/lib/mock/fedora-17-x86_64/root/builddir/build/BUILD/bamf-0.3.6/ltmain.sh GPL (v3 or later) ----------------- /var/lib/mock/fedora-17-x86_64/root/builddir/build/BUILD/bamf-0.3.6/tests/libbamf/test-libbamf.c /var/lib/mock/fedora-17-x86_64/root/builddir/build/BUILD/bamf-0.3.6/tests/libbamf/test-matcher.c
Hi Praveen, I've fixed the other issues you pointed out, but the license situation is thornier than expected: - some files are GPLv2+ and GPLv3+, as you pointed out - all bamf-*.c files in src/ are GPLv3 *only* (without +) - some files in lib are GPLv2 or GPLv3 I *think* the v3-only code are out of the library, and everything in libbamf is either (LGPLv2+) or (LGPLv2 or LGPLv3), and either way, linking from GPL code to LGPL code should be fine anyway, but let me take a more thorough look at the files first - it's likely that the subpackages might end up with different license descriptions. An updated spec will suffice, I take it, as the requested changes only affects the packaging metadata? Thanks!
Hi Salim, Yes a updated SPEC and SRPM will be enough for this review, what is the progress on License issue?
Hi Praveen, Sorry for the delay, been busy with work. http://salimma.fedorapeople.org/specs/gnome/bamf.spec http://salimma.fedorapeople.org/specs/gnome/bamf-0.3.6-3.fc19.src.rpm As for the license, it looks like the current license tags are already accurate. As explained in the comment above the first license field, libbamf contains some files that are marked GPL, so the combination of those with LGPL files are effectively under the GPL, not LGPL. I'll file a bug upstream, but is that alright if we get the review done and I'll make the license update as soon as update fixes them?
Looks like below issue is fix now. [x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. [x]: Each %files section contains %defattr if rpm < 4.4 [!]Package do not use a name that already exist Note: A package already exist with this name, please check https://admin.fedoraproject.org/pkgdb/acls/name/bamf See: https://fedoraproject.org/wiki/Packaging/NamingGuidelines#Conflicting_Package_Names But it's not a blocker since it is a re-review request after package drop. Please update upstream about License issue and update spec accordingly. ======================================================== APPROVED ========================================================
Thanks, requesting unblocking in the rel-eng trac https://fedorahosted.org/rel-eng/ticket/5589
Hi Salim, As per rel-eng ticket looks like it's unblocked, if this resolve your issue please close this bug or do needful.
Hi Salim, This package is really becoming a blocker for other gnome-pie bugs, can you please provide your input?