Bug 1491725 - Review Request: tracker-miners - Tracker miners and metadata extractors
Summary: Review Request: tracker-miners - Tracker miners and metadata extractors
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Debarshi Ray
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-09-14 13:43 UTC by Kalev Lember
Modified: 2017-09-18 20:47 UTC (History)
2 users (show)

Fixed In Version: tracker-miners-2.0.0-2.fc27
Clone Of:
Environment:
Last Closed: 2017-09-18 20:47:32 UTC
Type: ---
Embargoed:
debarshir: fedora-review+


Attachments (Terms of Use)

Description Kalev Lember 2017-09-14 13:43:06 UTC
Spec URL: https://kalev.fedorapeople.org/tracker-miners.spec
SRPM URL: https://kalev.fedorapeople.org/tracker-miners-2.0.0-1.fc27.src.rpm
Description:
Tracker is a powerful desktop-neutral first class object database,
tag/metadata database, search tool and indexer.

This package contains various miners and metadata extractors for tracker.

Fedora Account System Username: kalev

Comment 1 Kalev Lember 2017-09-14 14:03:43 UTC
Koji scratch build: https://koji.fedoraproject.org/koji/taskinfo?taskID=21860831
Test builds in copr: https://copr.fedorainfracloud.org/coprs/kalev/tracker/

Comment 2 Debarshi Ray 2017-09-15 14:36:19 UTC
MUST items
----------


rpmlint output:

$ rpmlint tracker-miners-2.0.0-1.fc27.src.rpm
tracker-miners.src: W: spelling-error Summary(en_US) metadata -> meta data, meta-data, metatarsal
tracker-miners.src: W: spelling-error %description -l en_US metadata -> meta data, meta-data, metatarsal
tracker-miners.src: E: unknown-key RSA#5dc2a74b (MD5
1 packages and 0 specfiles checked; 1 errors, 2 warnings.

$ rpmlint tracker-miners-2.0.0-1.fc27.x86_64.rpm
tracker-miners.x86_64: W: spelling-error Summary(en_US) metadata -> meta data, meta-data, metatarsal
tracker-miners.x86_64: W: spelling-error %description -l en_US metadata -> meta data, meta-data, metatarsal
tracker-miners.x86_64: W: obsolete-not-provided tracker
tracker-miners.x86_64: W: devel-file-in-non-devel-package /usr/lib64/tracker-miners-2.0/libtracker-extract.so
tracker-miners.x86_64: W: hidden-file-or-dir /usr/lib/.build-id
tracker-miners.x86_64: W: hidden-file-or-dir /usr/lib/.build-id
tracker-miners.x86_64: E: unknown-key RSA#5dc2a74b (MD5
tracker-miners.x86_64: W: one-line-command-in-%postun /sbin/ldconfig
1 packages and 0 specfiles checked; 1 errors, 7 warnings.

$ rpmlint tracker-miners-debuginfo-2.0.0-1.fc27.x86_64.rpm
tracker-miners-debuginfo.x86_64: E: useless-provides debuginfo(build-id)
tracker-miners-debuginfo.x86_64: E: unknown-key RSA#5dc2a74b (MD5
1 packages and 0 specfiles checked; 2 errors, 0 warnings.

$ rpmlint tracker-miners-debugsource-2.0.0-1.fc27.x86_64.rpm
tracker-miners-debugsource.x86_64: W: no-documentation
tracker-miners-debugsource.x86_64: W: devel-file-in-non-devel-package /usr/src/debug/tracker-miners-2.0.0-1.fc27.x86_64/src/miners/rss/tracker-miner-rss.h
tracker-miners-debugsource.x86_64: W: devel-file-in-non-devel-package /usr/src/debug/tracker-miners-2.0.0-1.fc27.x86_64/src/miners/rss/tracker-main.c
...
tracker-miners-debugsource.x86_64: E: unknown-key RSA#5dc2a74b (MD5
1 packages and 0 specfiles checked; 1 errors, 135 warnings.

All those look harmless, except this one:
tracker-miners.x86_64: W: devel-file-in-non-devel-package /usr/lib64/tracker-miners-2.0/libtracker-extract.so

It should be fixed by:
-rm -f %{buildroot}%{_libdir}/tracker-2.0/*.so
+rm -f %{buildroot}%{_libdir}/tracker-miners-2.0/*.so


YES - package follows Naming Guidelines
YES - spec file name matches base package %{name}
YES - package follows Packaging Guidelines
YES - package is under a Fedora approved license

YES - license field matches actual license

    I wonder if it should be GPLv2+ and LGPLv2+ because the binaries are generated from a mix of both. See:
    https://fedoraproject.org/wiki/Packaging:LicensingGuidelines#Mixed_Source_Licensing_Scenario

YES - source package includes license text, which is included in %license
YES - spec file written in American English
YES - spec file is legible
YES - sources match upstream source
YES - package compiles on all primary architectures
YES - there is no need for ExcludeArch

YES - all build dependencies in BuildRequires

    Pedantically speaking it should also mention pkgconfig(tracker-sparql-2.0) >= %{tracker_version} but it is unlikely to make a difference in reality.

YES - handles locales properly

YES - no need for ldconfig

    There is no need to call /sbin/ldconfig in %post and %postun because it doesn't install shared library files in any of the dynamic linker's default paths.

YES - doesn't bundle system libraries
YES - package is not relocatable
YES - package owns all directories that it creates
YES - files are listed only once in %files
YES - file permissions are set properly
YES - consistent use of macros
YES - package contains code or permissible content
YES - no need for doc subpackage
YES - no chance of items marked as %doc affecting runtime
YES - no static libraries
YES - no need for devel subpackage

YES - devel subpackage requires base package
    There is no devel subpackage, but tracker-miners requires tracker using a loose dependency

YES - package removes all libtool archives
YES - package doesn't need a .desktop file
YES - doesn't own files or directories owned by other packages
YES - all filenames are valid UTF-8


SHOULD items
------------

YES - package includes license text from upstream
NO  - description and summary doesn't have translations
YES - package builds in Koji
YES - builds on all primary architectures
YES - package functions as described
YES - package doesn't use scriptlets
YES - no subpackages
YES - no pkgconfig files
YES - no file dependencies outside of /etc/, /bin/, /sbin, etc.
YES - contains man pages

Comment 3 Kalev Lember 2017-09-15 14:46:59 UTC
(In reply to Debarshi Ray from comment #2)
> YES - all build dependencies in BuildRequires
> 
>     Pedantically speaking it should also mention
> pkgconfig(tracker-sparql-2.0) >= %{tracker_version} but it is unlikely to
> make a difference in reality.

It already has exactly that in BuildRequires. :)

Hopefully fixed all the rest. Thanks for reviewing this!

Spec URL: https://kalev.fedorapeople.org/tracker-miners.spec
SRPM URL: https://kalev.fedorapeople.org/tracker-miners-2.0.0-2.fc28.src.rpm

* Fri Sep 15 2017 Kalev Lember <klember> - 2.0.0-2
- Package review fixes (#1491725):
- Pass --disable-mp3 to use the generic gstreamer extractor
- Disable libstemmer support to match the previous behaviour
- Fix removing .so symlinks for private libraries
- Remove ldconfig rpm scripts as we don't install any shared libraries
- Correct license tag and add comment explaining mixed source licensing

Comment 4 Debarshi Ray 2017-09-15 15:37:51 UTC
(In reply to Kalev Lember from comment #3)
> (In reply to Debarshi Ray from comment #2)
> > YES - all build dependencies in BuildRequires
> > 
> >     Pedantically speaking it should also mention
> > pkgconfig(tracker-sparql-2.0) >= %{tracker_version} but it is unlikely to
> > make a difference in reality.
> 
> It already has exactly that in BuildRequires. :)

Sorry, I typoed it. Embarassing. I meant tracker-miner-2.0.

I see that you added --disable-mp3 and removed libstemmer-devel, so it should match the build before the split.

ACCEPTED.

Comment 5 Kalev Lember 2017-09-15 15:38:57 UTC
Ahh, let me add tracker-miner-2.0 as well. Thanks Debarshi!

Comment 6 Gwyn Ciesla 2017-09-15 15:43:05 UTC
(fedrepo-req-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/tracker-miners

Comment 7 Kalev Lember 2017-09-18 20:47:32 UTC
Package imported and built.


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