Bug 676146 - Review request: trace-gui - GUI tools from trace-cmd
Summary: Review request: trace-gui - GUI tools from trace-cmd
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Christoph Wickert
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-02-08 23:00 UTC by Jon Stanley
Modified: 2011-03-07 02:42 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-03-07 02:42:12 UTC
Type: ---
cwickert: fedora-review+
j: fedora-cvs+


Attachments (Terms of Use)

Description Jon Stanley 2011-02-08 23:00:16 UTC
Spec file: http://jstanley.fedorapeople.org/trace-gui.spec
SRPM: http://jstanley.fedorapeople.org/trace-gui-1.0.4-1.fc13.src.rpm

trace-cmd is a user interface to Ftrace. Instead of needing to use the
debugfs directly, trace-cmd will handle of setting of options and
tracers and will record into a data file.

This package is the GUI components of trace-cmd, that is not packaged in RHEL,
built for EPEL only.
---------
This is meant only for EPEL - Fedora does not have trace-cmd packaged (I'll submit a separate review to get it in Fedora, and package the latest upstream release there, this tracks the RHEL release of trace-cmd)

RHEL packages the upstream trace-cmd, but without the GUI components (trace-graph, trace-view, and kernelshark). This package includes ONLY those components, and has a requirement on trace-cmd being installed.

Note that during the build process, the entire package is built. During %install, I remove the parts that are shipped in RHEL.

This package only applies to RHEL6, since it depends on Ftrace in the kernel.

Comment 1 Christoph Wickert 2011-02-14 21:50:11 UTC
REVIEW FOR b1759276bf8aec03a09306b1683894ab  trace-gui-1.0.4-1.fc13.src.rpm


FIX - MUST:  rpmlint /var/lib/mock/fedora-rawhide-x86_64/result/*.rpm
trace-gui.src: W: spelling-error Summary(en_US) cmd -> cm, cd, cad
trace-gui.src: W: summary-not-capitalized C trace-cmd is a user interface to Ftrace
trace-gui.src: W: spelling-error %description -l en_US cmd -> cm, cd, cad
trace-gui.src: W: spelling-error %description -l en_US debugfs -> debugs, debuggers, debugged
trace-gui.src: W: no-version-in-last-changelog
trace-gui.src:51: W: macro-in-comment %{_bindir}
trace-gui.src:55: W: macro-in-comment %{_datadir}
trace-gui.src:55: W: macro-in-comment %{upstream_name}
trace-gui.src:56: W: macro-in-comment %{_mandir}
trace-gui.src:57: W: macro-in-comment %{_mandir}
trace-gui.src: W: invalid-url Source0: %{URL}/trace-cmd-1.0.4.tar.gz
trace-gui.x86_64: W: spelling-error Summary(en_US) cmd -> cm, cd, cad
trace-gui.x86_64: W: summary-not-capitalized C trace-cmd is a user interface to Ftrace
trace-gui.x86_64: W: spelling-error %description -l en_US cmd -> cm, cd, cad
trace-gui.x86_64: W: spelling-error %description -l en_US debugfs -> debugs, debuggers, debugged
trace-gui.x86_64: W: no-version-in-last-changelog
trace-gui.x86_64: W: no-manual-page-for-binary trace-graph
trace-gui.x86_64: W: no-manual-page-for-binary kernelshark
trace-gui.x86_64: W: no-manual-page-for-binary trace-view
trace-gui-debuginfo.x86_64: W: no-version-in-last-changelog

You can ignore spelling-error and no-manual-page-for-binary and summary-not-capitalized, but the rest needs fixing.

OK - MUST: named according to the Package Naming Guidelines
OK - MUST: spec file name matches the base package %{name}
FIX - MUST: package does not meet the Packaging Guidelines
OK - MUST: Fedora approved license and meets the Licensing Guidelines (GPLv2)
OK - MUST: License field in spec file matches the actual license
OK - MUST: license file included in %doc
OK - MUST: spec is in American English
OK - MUST: spec is legible (could be more legible if properly formatted with indention)
OK - MUST: sources match the upstream source by MD5 a91e23aa860359d5c4b8359ba45cef5b
OK - MUST: successfully compiles and builds into binary rpms on x86_64
N/A - MUST: If the package does not successfully compile, build or work on an architecture, then those architectures should be listed in the spec in ExcludeArch.
OK - MUST: all build dependencies are listed in BuildRequires.
N/A - MUST: handles locales properly with %find_lang
N/A - 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.
OK - MUST: Package does not bundle copies of system libraries.
N/A - MUST: 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.
OK - MUST: owns all directories that it creates (none)
OK - MUST: no duplicate files in the %files listing
OK - MUST: Permissions on files are set properly, includes %defattr(...)
OK - MUST: consistently uses macros
OK - MUST: package contains code, or permissable content
N/A - MUST: Large documentation files should go in a -doc subpackage
OK - MUST: Files included as %doc do not affect the runtime of the application
N/A - MUST: Header files must be in a -devel package
N/A - MUST: Static libraries must be in a -static package
N/A - MUST: library files that end in .so are in the -devel package.
N/A - MUST: devel packages must require the base package using a fully versioned dependency
OK - MUST: The package does not contain any .la libtool archives.
FIX - MUST: The package contains a GUI application but does not include a %{name}.desktop file, see https://fedoraproject.org/wiki/Packaging:Guidelines#Desktop_files

OK - MUST: package does not own files or directories already owned by other packages.
OK - Should: at the beginning of %install, the package runs rm -rf %{buildroot}.
OK - MUST: all filenames valid UTF-8


SHOULD Items:
OK - SHOULD: Source package includes license text(s) as a separate file.
N/A - SHOULD: The description and summary sections in the package spec file should contain translations for supported Non-English languages, if available.
OK - SHOULD: builds in mock.
OK - SHOULD: compiles and builds into binary rpms on all supported architectures.
OK - SHOULD: functions as described.
N/A - SHOULD: Scriptlets are sane.
N/A - SHOULD: Usually, subpackages other than devel should require the base package using a fully versioned dependency.
N/A - SHOULD: pkgconfig(.pc) files should be placed in a -devel pkg
OK - SHOULD: no file dependencies outside of /etc, /bin, /sbin, /usr/bin, or /usr/sbin
N/A - SHOULD: package should contain man pages for binaries/scripts.


Other items:
FIX - not latest stable version (or do we rely on 1.0.4 from RHEL?)
FIX - SourceURL valid
FIX - Compiler not flags ok
OK - Debuginfo complete
OK - SHOULD: package has a %clean section, which contains rm -rf %{buildroot}.
N/A - SHOULD: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig'.


Issues:
- Please fix all item marked as FIX
- Please get rid of the URL macro and use a single line to make spectool work
- "Source" should be "Source0"
- Remove the stuff that is commented out, e.g. in %files to get rid of rpmlint warnings
- make is not verbose, add V=1
- Package doesn't use %{optflags}
- Remove COPYING.LIB, not needed
- Should "Requires: trace-cmd" be versioned?
- Do not hardcode things like "prefix=/usr", "%{buildroot}/usr/bin/trace-cmd" or "%{buildroot}/usr/share", use macros instead.
- changelog entries should contain the version as in
  https://fedoraproject.org/wiki/Packaging:Guidelines#Changelogs

Comment 2 Christoph Wickert 2011-02-14 21:51:35 UTC
One more thing: Please use the bzipped source instead of tar.gz

Comment 3 Jon Stanley 2011-02-20 00:46:01 UTC
Sorry, thought that I had replied here awhile back. I've taken care of everything in the review I think, spec location is the same.

New SRPM: http://jstanley.fedorapeople.org/trace-gui-1.0.4-2.fc13.src.rpm

The requirement for trace-cmd is now versioned, and the version requirement on 1.0.4 is in order to keep in sync with RHEL.

Comment 4 Christoph Wickert 2011-02-20 01:22:32 UTC
OK, makes sense. The new package looks good:

OK - $ rpmlint /var/lib/mock/fedora-rawhide-x86_64/result/trace-gui-*
trace-gui.src: W: spelling-error Summary(en_US) cmd -> cm, cd, cad
trace-gui.src: W: summary-not-capitalized C trace-cmd is a user interface to Ftrace
trace-gui.src: W: spelling-error %description -l en_US cmd -> cm, cd, cad
trace-gui.src: W: spelling-error %description -l en_US debugfs -> debugs, debuggers, debugged
trace-gui.x86_64: W: spelling-error Summary(en_US) cmd -> cm, cd, cad
trace-gui.x86_64: W: summary-not-capitalized C trace-cmd is a user interface to Ftrace
trace-gui.x86_64: W: spelling-error %description -l en_US cmd -> cm, cd, cad
trace-gui.x86_64: W: spelling-error %description -l en_US debugfs -> debugs, debuggers, debugged
trace-gui.x86_64: W: no-manual-page-for-binary trace-graph
trace-gui.x86_64: W: no-manual-page-for-binary kernelshark
trace-gui.x86_64: W: no-manual-page-for-binary trace-view
3 packages and 0 specfiles checked; 0 errors, 11 warnings.

OK - MUST: package meets the Packaging Guidelines
OK - MUST: The package contains a GUI application and includes a
%{name}.desktop file, and that file is properly validated with desktop-file-validate in the %install section
OK - not latest stable version, but should be in sync with 1.0.4 from RHEL
OK - SourceURL valid
OK - Compiler not flags ok


Two minor things:
- When using "install", add -p to preserve timestamps, see https://fedoraproject.org/wiki/Packaging:Guidelines#Timestamps
- Please add an icon to the desktop file. As the package doesn't have an icon of it's own, I suggest something generic like "application-x-executable", "applications-development" or "applications-engineering". These are provided by all icon themes.


APPROVED

Comment 5 Jon Stanley 2011-03-01 04:27:03 UTC
New Package SCM Request
=======================
Package Name: trace-gui
Short Description: GUI components of trace-cmd
Owners: jstanley
Branches: EL-6
InitialCC:

Comment 6 Jason Tibbitts 2011-03-01 14:53:59 UTC
Git done (by process-git-requests).

Comment 7 Christoph Wickert 2011-03-06 14:13:23 UTC
Can this be closed now?

Comment 8 Jon Stanley 2011-03-07 02:42:12 UTC
Yep, I submitted an update that's now in testing that I somehow forgot to link to this bug.


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