Bug 827649 - Review Request: supercat - colorized cat
Review Request: supercat - colorized cat
Status: CLOSED WONTFIX
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Fabian Affolter
Fedora Extras Quality Assurance
:
Depends On:
Blocks: FE-DEADREVIEW
  Show dependency treegraph
 
Reported: 2012-06-01 21:57 EDT by Adrian Alves
Modified: 2013-01-20 09:14 EST (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-01-20 09:14:39 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Adrian Alves 2012-06-01 21:57:48 EDT
Spec URL: http://alvesadrian.fedorapeople.org/supercat.spec
SRPM URL: http://alvesadrian.fedorapeople.org/supercat-0.5.5-1.fc16.src.rpm
Description: Supercat is a program that colorizes text based on matching regular expressions/strings/characters. Supercat supports html output as well as standard ASCII text. Unlike some text-colorizing programs that exist, Supercat does not require you to have to be a programmer to make colorization rules
Fedora Account System Username: alvesadrian
Comment 1 Fabian Affolter 2012-06-06 07:52:54 EDT
Just some quick comments:

- You are mixing variable style ($RPM_BUILD_ROOT) and macro style (%{buildroot}).
- There is a typo in the summary. 
- Using macros in Source0 would make your life easier when updating the package later.
- The %clean section is no longer needed. The build root is clean in the %install section automatically too.
  https://fedoraproject.org/wiki/Packaging:Guidelines#.25clean
- In the description at the end a period is missing.
Comment 2 Michael Schwendt 2012-06-08 04:17:14 EDT
Copying the comment from devel list:

* Check this out:
  https://fedoraproject.org/wiki/Packaging:UnownedDirectories

* And the following page is _not_ just for reviewers: ;-)
  https://fedoraproject.org/wiki/Packaging:ReviewGuidelines

At least process the first MUST item on that list yourself instead of waiting for somebody else to do it.
Comment 3 Adrian Alves 2012-06-09 21:33:00 EDT
(In reply to comment #1)
> Just some quick comments:
> 
> - You are mixing variable style ($RPM_BUILD_ROOT) and macro style
> (%{buildroot}).
> - There is a typo in the summary. 
> - Using macros in Source0 would make your life easier when updating the
> package later.
> - The %clean section is no longer needed. The build root is clean in the
> %install section automatically too.
>   https://fedoraproject.org/wiki/Packaging:Guidelines#.25clean
> - In the description at the end a period is missing.
Thanks for ur help I made all the fixes that u suggest and even tested with rpmlint

Spec URL: http://alvesadrian.fedorapeople.org/supercat.spec
SRPM URL: http://alvesadrian.fedorapeople.org/supercat-0.5.5-2.fc16.src.rpm
Comment 4 Fabian Affolter 2012-06-10 10:25:51 EDT
(In reply to comment #2)
> * Check this out:
>   https://fedoraproject.org/wiki/Packaging:UnownedDirectories

Can you please address this issue too?
Comment 5 Adrian Alves 2012-06-11 20:20:17 EDT
(In reply to comment #4)
> (In reply to comment #2)
> > * Check this out:
> >   https://fedoraproject.org/wiki/Packaging:UnownedDirectories
> 
> Can you please address this issue too?

I added the missing dir in %%files
Spec URL: http://alvesadrian.fedorapeople.org/supercat.spec
SRPM URL: http://alvesadrian.fedorapeople.org/supercat-0.5.5-3.fc16.src.rpm
Comment 6 Fabian Affolter 2012-06-19 16:57:32 EDT
rpmlint says...

[fab@laptop11 x86_64]$ rpmlint supercat-0.5.5-3.fc17.x86_64.rpm 
supercat.x86_64: W: spelling-error %description -l en_US html -> HTML, ht ml, ht-ml
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-c
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-gentooconfd
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-py
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-ChangeLog
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-xorg
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-access_log
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-diff
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-svn
supercat.x86_64: W: manual-page-warning /usr/share/man/man1/spc.1.gz 112: warning: macro `r':reverse' not defined
supercat.x86_64: W: manual-page-warning /usr/share/man/man1/spc.1.gz 123: warning: macro `r':RE.' not defined
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-emerge
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-patch
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-error_log
supercat.x86_64: E: standard-dir-owned-by-package /usr/share/man/man1
1 packages and 0 specfiles checked; 1 errors, 14 warnings.
Comment 7 Fabian Affolter 2012-07-01 04:20:04 EDT
Any progress?
Comment 8 Adrian Alves 2012-07-01 13:43:17 EDT
Fixed:
rpmlint supercat-0.5.5-4.fc17.src.rpm 
supercat.src: I: enchant-dictionary-not-found en_US
1 packages and 0 specfiles checked; 0 errors, 0 warnings.

Spec URL: http://alvesadrian.fedorapeople.org/supercat.spec
SRPM URL: http://alvesadrian.fedorapeople.org/supercat-0.5.5-4.fc16.src.rpm
Comment 9 Fabian Affolter 2012-07-15 05:48:53 EDT
(In reply to comment #8)
SRPM URL: http://alvesadrian.fedorapeople.org/supercat-0.5.5-4.fc17.src.rpm

Seams to be the latest SRPM.
Comment 10 Fabian Affolter 2012-07-15 05:58:23 EDT
(In reply to comment #6)
> rpmlint says...
> supercat.x86_64: W: manual-page-warning /usr/share/man/man1/spc.1.gz 112:
> warning: macro `r':reverse' not defined
> supercat.x86_64: W: manual-page-warning /usr/share/man/man1/spc.1.gz 123:
> warning: macro `r':RE.' not defined

What's about a patch?

- The license statement in the spec file is not correct.

[fab@laptop11 827649]$ licensecheck -r *
supercat-0.5.5/src/spc.h: GPL (v3 or later) 
supercat-0.5.5/src/spc.c: GPL (v3 or later)

- The upstream license file is not included in the package.
Comment 11 Fabian Affolter 2012-07-15 06:02:43 EDT
Use a wildcard for the manpage compression because at the moment it's gz but this can change in the future.
Comment 12 Fabian Affolter 2012-08-29 03:34:25 EDT
Adrian, can you please fix the issues?
Comment 13 Adrian Alves 2012-09-15 21:34:09 EDT
What you mean? how I accomplish that?
(In reply to comment #11)
> Use a wildcard for the manpage compression because at the moment it's gz but
> this can change in the future.
Comment 14 Fabian Affolter 2012-09-16 03:35:53 EDT
%{_mandir}/man*/%{namebin}.*.* instead of %{_mandir}/man*/%{namebin}.*.gz
Comment 15 Adrian Alves 2012-09-16 07:50:39 EDT
Fixed check this release:
Spec URL: http://alvesadrian.fedorapeople.org/supercat.spec
SRPM URL: http://alvesadrian.fedorapeople.org/supercat-0.5.5-4.fc16.src.rpm
Comment 16 Fabian Affolter 2012-09-28 18:27:30 EDT
How about those two warnings?

supercat.x86_64: W: manual-page-warning /usr/share/man/man1/spc.1.gz 112: warning: macro `r':reverse' not defined
supercat.x86_64: W: manual-page-warning /usr/share/man/man1/spc.1.gz 123: warning: macro `r':RE.' not defined

run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install is only needed if supporting EPEL5
Comment 17 Adrian Alves 2012-10-21 07:32:14 EDT
its already there:

%install
rm -rf $RPM_BUILD_ROOT
Comment 18 Adrian Alves 2012-10-21 07:34:03 EDT
 rpmlint ../SRPMS/supercat-0.5.5-4.fc16.src.rpm 
supercat.src: W: spelling-error %description -l en_US html -> HTML, ht ml, ht-ml
1 packages and 0 specfiles checked; 0 errors, 1 warnings.
Comment 19 Fabian Affolter 2012-11-04 04:08:46 EST
(In reply to comment #17)
> %install
> rm -rf $RPM_BUILD_ROOT

As mentioned in Comment #16, the Buildroot is cleaned automatically on recent Fedora releases.

(In reply to comment #16)
> supercat.x86_64: W: manual-page-warning /usr/share/man/man1/spc.1.gz 112:
> warning: macro `r':reverse' not defined
> supercat.x86_64: W: manual-page-warning /usr/share/man/man1/spc.1.gz 123:
> warning: macro `r':RE.' not defined

A patch to fix this is available for the Debian package [1]. 

[1] http://patch-tracker.debian.org/package/supercat/0.5.5-4
Comment 21 Fabian Affolter 2012-11-10 05:32:44 EST
I, like every other reviewer, would really appreciate if you address all issues mentioned in a comment and not only half of it. 

- The license issue was mentioned in Comment #10
- The Buildroot cleaning was first mentioned in Comment #16 and again in Comment #19.

Package Review
==============

Key:
[x] = Pass
[!] = Fail
[-] = Not applicable
[?] = Not evaluated
[ ] = Manual review needed



===== MUST items =====

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]: Package successfully compiles and builds into binary rpms on at least one
     supported primary architecture.
[x]: %build honors applicable compiler flags or justifies otherwise.
[x]: All build dependencies are listed in BuildRequires, except for any that
     are listed in the exceptions section of Packaging Guidelines.
[x]: Package contains no bundled libraries.
[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.
[x]: %config files are marked noreplace or the reason is justified.
[x]: Each %files section contains %defattr if rpm < 4.4
[x]: Macros in Summary, %description expandable at SRPM build time.
[-]: Package contains desktop file if it is a GUI application.
[-]: Development files must be in a -devel package
[x]: 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]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package complies to the Packaging Guidelines
[x]: Spec file lacks Packager, Vendor, PreReq tags.
[-]: 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.
[!]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses found:
     "GPL (v3 or later)". 1 files have unknown license. 
[x]: Package consistently uses macro is (instead of hard-coded directory
     names).
[x]: Package is named using only allowed ASCII characters.
[x]: Package is named according to the Package Naming Guidelines.
[x]: No %config files under /usr.
[x]: Package does not generate any conflict.
     Note: Package contains no Conflicts: tag(s)
[x]: Package do not use a name that already exist
[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]: Package installs properly.
[x]: Package is not relocatable.
[x]: Requires correct, justified where necessary.
[x]: CheckResultdir
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: Sources used to build the package match the upstream source, as provided
     in the spec URL.
[x]: Spec file is legible and written in American English.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[-]: Package contains systemd file(s) if in need.
[x]: File names are valid UTF-8.
[x]: Useful -debuginfo package or justification otherwise.
[x]: Large documentation must go in a -doc subpackage.
     Note: Documentation size is 0 bytes in 0 files.
[x]: Packages must not store files under /srv, /opt or /usr/local

===== SHOULD items =====

Generic:
[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)
[!]: If the source package does not include license text(s) as a separate file
     from upstream, the packager SHOULD query upstream to include it.
[x]: Dist tag is present.
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Final provides and requires are sane (rpm -q --provides and rpm -q
     --requires).
[x]: Package functions as described.
[x]: Latest version is packaged.
[-]: Package does not include license text files separate from upstream.
[!]: Patches link to upstream bugs/comments/lists or are otherwise justified.
[x]: The placement of pkgconfig(.pc) files are correct.
[x]: SourceX tarball generation or download is documented.
[!]: SourceX / PatchY prefixed with %{name}.
     Note: Patch0 (manpage_fix.diff) Source1 (spcrc-emerge)
[x]: SourceX is a working URL.
[-]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[-]: Package should compile and build into binary rpms on all supported
     architectures.
[-]: %check is present and all tests pass.
[!]: Packages should try to preserve timestamps of original installed files.
[x]: Spec use %global instead of %define.

===== EXTRA items =====

Generic:
[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.
[x]: Large data in /usr/share should live in a noarch subpackage if package is
     arched.


Rpmlint
-------
Checking: supercat-0.5.5-5.fc17.src.rpm
          supercat-0.5.5-5.fc17.x86_64.rpm
          supercat-debuginfo-0.5.5-5.fc17.x86_64.rpm
supercat.src: W: spelling-error %description -l en_US html -> HTML, ht ml, ht-ml
supercat.x86_64: W: spelling-error %description -l en_US html -> HTML, ht ml, ht-ml
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-c
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-gentooconfd
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-py
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-ChangeLog
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-xorg
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-access_log
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-diff
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-svn
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-emerge
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-patch
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-error_log
3 packages and 0 specfiles checked; 0 errors, 13 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint supercat-debuginfo supercat
supercat.x86_64: W: spelling-error %description -l en_US html -> HTML, ht ml, ht-ml
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-c
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-gentooconfd
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-py
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-ChangeLog
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-xorg
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-access_log
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-diff
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-svn
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-emerge
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-patch
supercat.x86_64: W: non-conffile-in-etc /etc/supercat/spcrc-error_log
2 packages and 0 specfiles checked; 0 errors, 12 warnings.
# echo 'rpmlint-done:'



Requires
--------
supercat-0.5.5-5.fc17.x86_64.rpm (rpmlib, GLIBC filtered):
    
    config(supercat) = 0.5.5-5.fc17
    libc.so.6()(64bit)  
    rtld(GNU_HASH)  

supercat-debuginfo-0.5.5-5.fc17.x86_64.rpm (rpmlib, GLIBC filtered):
    



Provides
--------
supercat-0.5.5-5.fc17.x86_64.rpm:
    
    config(supercat) = 0.5.5-5.fc17
    supercat = 0.5.5-5.fc17
    supercat(x86-64) = 0.5.5-5.fc17

supercat-debuginfo-0.5.5-5.fc17.x86_64.rpm:
    
    supercat-debuginfo = 0.5.5-5.fc17
    supercat-debuginfo(x86-64) = 0.5.5-5.fc17



MD5-sum check
-------------
http://supercat.nosredna.net/supercat-0.5.5.tar.gz :
  CHECKSUM(SHA256) this package     : c49bd0b72509a166fb8686c999169b2c970595bc565d0b0379a01323657c01bf
  CHECKSUM(SHA256) upstream package : c49bd0b72509a166fb8686c999169b2c970595bc565d0b0379a01323657c01bf


Generated by fedora-review 0.3.1 (b71abc1) last change: 2012-10-16
Buildroot used: fedora-17-x86_64
Command line :/usr/bin/fedora-review -b 827649
Comment 22 Fabian Affolter 2012-11-10 05:34:02 EST
A period at the end of the description is mssing.
Comment 23 Fabian Affolter 2013-01-09 03:04:39 EST
Any progress?

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