Bug 635875

Summary: Review Request: mawk - An interpreter for the AWK programming language
Product: [Fedora] Fedora Reporter: Mark McKinstry <mmckinst>
Component: Package ReviewAssignee: Martin Gieseking <martin.gieseking>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: fedora-package-review, martin.gieseking, notting
Target Milestone: ---Flags: martin.gieseking: fedora-review+
gwync: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: mawk-1.3.4-6.20131226.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-10-27 22:40:25 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Mark McKinstry 2010-09-20 22:48:41 UTC
Spec URL: http://mmckinst.nexcess.net/mawk/mawk.spec
SRPM URL: http://mmckinst.nexcess.net/mawk/mawk-1.3.4.20100625-1.fc13.src.rpm
Description: mawk is an interpreter for the AWK programming language.  The AWK language is
useful for manipulation of data files, text retrieval and processing, and for
prototyping and experimenting with algorithms.

The FTP server is slow to respond sometimes. If you wget the tarball it works.

[mmckinst@fedora13 SRPMS]$ rpmlint mawk-1.3.4.20100625-1.fc13.src.rpm 
mawk.src: W: invalid-url Source0: ftp://invisible-island.net/mawk/mawk-1.3.4-20100625.tgz <urlopen error ftp error: timed out>
1 packages and 0 specfiles checked; 0 errors, 1 warnings.
[mmckinst@fedora13 SRPMS]$

Comment 1 Martin Gieseking 2010-10-05 13:14:09 UTC
- replace %define with %global
  see http://fedoraproject.org/wiki/Packaging/Guidelines#.25global_preferred_over_.25define

- Since the date suffix of the version number indicates a post-release, you 
  can also move the suffix to the Release field:
  %global pver 20100625
  Version: 1.3.4
  Release: <X>.%{pver}%{?dist} 
  where <X> is the usual release number to increase

  This way it's easier to maintain the package because you don't need to adapt
  the version number in several places.

- you should avoid leading articles in the Summary to keep it concise:
  "Interpreter for the AWK programming language" is sufficient

Comment 2 Mark McKinstry 2010-10-05 22:42:02 UTC
> replace %define with %global

Done.

> move the suffix to the Release field

I spent a lot of time trying to figure out how to do the versioning but never thought of this. Thanks. 

> avoid leading articles in the Summary to keep it concise

Done.

SPEC: http://mmckinst.nexcess.net/mawk/mawk.spec
SRPM: http://mmckinst.nexcess.net/mawk/mawk-1.3.4-2.20100625.fc13.src.rpm
Scratch: http://koji.fedoraproject.org/koji/taskinfo?taskID=2515704

Comment 3 Martin Gieseking 2010-10-06 18:11:14 UTC
Hi Mark,

the package looks fine now. I suggest to add the examples folder to the package (as %doc). Some users might be interested in the sample scripts.

$ rpmlint /var/lib/mock/fedora-13-x86_64/result/*.rpm
3 packages and 0 specfiles checked; 0 errors, 0 warnings.

---------------------------------
key:

[+] OK
[.] OK, not applicable
[X] needs work
---------------------------------

[+] MUST: The package must be named according to the Package Naming Guidelines.
[+] MUST: The spec file name must match the base package %{name}.
[+] MUST: The package must meet the Packaging Guidelines.
[+] MUST: The package must be licensed with a Fedora approved license.
    GPLv2 according to source file headers

[+] MUST: The License field in the package spec file must match the actual license.
[+] MUST: The file containing the text of the license(s) for the package must be included in %doc.
[+] MUST: The spec file must be written in American English.
[+] MUST: The spec file for the package MUST be legible.
[+] MUST: The sources used to build the package must match the upstream source.
    $ md5sum mawk-1.3.4-20100625.tgz*
    447e7c322fa1e58141f5085bae87351f  mawk-1.3.4-20100625.tgz
    447e7c322fa1e58141f5085bae87351f  mawk-1.3.4-20100625.tgz.1

[+] MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture.
[.] MUST: If the package does not successfully compile, ...
[+] MUST: All build dependencies must be listed in BuildRequires.
[.] MUST: The spec file MUST handle locales properly.
[.] MUST: Packages storing shared library files (not just symlinks) must call ldconfig in %post and %postun.
[+] MUST: Packages must NOT bundle copies of system libraries.
[.] MUST: If the package is designed to be relocatable, ...
[+] MUST: A package must own all directories that it creates. 
[+] MUST: A Fedora package must not list a file more than once in %files.
[+] MUST: Permissions on files must be set properly.
[+] MUST: Each package must consistently use macros.
[+] MUST: The package must contain code, or permissable content.
[.] MUST: Large documentation files must go in a -doc subpackage.
[+] MUST: Files in %doc must not affect the runtime of the application.
[.] MUST: Header files must be in a -devel package.
[.] MUST: Static libraries must be in a -static package.
[.] MUST: If a package contains library files with a suffix ...
[.] MUST: devel packages must require the base package using a fully versioned dependency
[+] MUST: Packages must NOT contain any .la libtool archives.
[.] MUST: Packages containing GUI applications must include a %{name}.desktop file.
[+] MUST: Packages must not own files or directories already owned by other packages.
[+] MUST: All filenames in rpm packages must be valid UTF-8.

[.] SHOULD: If the source package does not include license text(s) ...
[+] SHOULD: The reviewer should test that the package builds in mock.
[+] SHOULD: The package should compile and build into binary rpms on all supported architectures.
[+] SHOULD: The reviewer should test that the package functions as described.
[.] SHOULD: If scriptlets are used, those scriptlets must be sane.
[.] SHOULD: subpackages other than devel should require the base package.
[.] SHOULD: pkgconfig(.pc) files should be placed in a -devel pkg.
[.] SHOULD: If the package has file dependencies outside of /etc, /bin, /sbin, /usr/bin, or /usr/sbin ...
[+] SHOULD: your package should contain man pages for binaries/scripts.

Comment 4 Mark McKinstry 2010-10-07 00:41:01 UTC
The examples are now included. Should example scripts be executable? rpmlint complains if they are so I've chmoded them to 644. Looking at some packages in /usr/share/doc on my system there's no consensus, there's a mix of example scripts being 644 and 755.

SPEC: http://mmckinst.nexcess.net/mawk/mawk.spec
SRPM: http://mmckinst.nexcess.net/mawk/mawk-1.3.4-3.20100625.fc13.src.rpm
Scratch: http://koji.fedoraproject.org/koji/taskinfo?taskID=2518773

Comment 5 Martin Gieseking 2010-10-07 07:10:45 UTC
IMHO, %doc files (including sample scripts) should not get exec permissions. I recommend to chmod them to 644. However, as you noticed correctly, there are many packages in Fedora placing executable files in %doc (even images, and plain text files like README). Not sure if this is always intentional.

Your latest SPEC adds the example scripts twice. Drop line
%doc %attr(644,root,root) examples/*

Maybe you can also add a trailing slash to 'examples' in %doc. This way it's easier to notice that a folder is added:
%doc COPYING CHANGES README examples/

Comment 6 Mark McKinstry 2010-10-07 22:25:39 UTC
> Your latest SPEC adds the example scripts twice. Drop line
> %doc %attr(644,root,root) examples/*

Woops. Fixed.

> Maybe you can also add a trailing slash to 'examples' in %doc. This way it's
> easier to notice that a folder is added:
> %doc COPYING CHANGES README examples/

Done

SPEC: http://mmckinst.nexcess.net/mawk/mawk.spec
SRPM: http://mmckinst.nexcess.net/mawk/mawk-1.3.4-4.20100625.fc13.src.rpm
Scratch: http://koji.fedoraproject.org/koji/taskinfo?taskID=2518773

Comment 7 Martin Gieseking 2010-10-08 11:58:16 UTC
OK, since I couldn't find any further issues, we can finish here.

----------------
Package APPROVED
----------------

Comment 8 Mark McKinstry 2010-10-08 15:13:36 UTC
Thanks Martin!


New Package SCM Request
=======================
Package Name: mawk
Short Description: Interpreter for the AWK programming language
Owners: mmckinst
Branches: f12 f13 f14 el4 el5 el6

Comment 9 Kevin Fenzi 2010-10-08 20:31:24 UTC
Git done (by process-git-requests).

Comment 10 Fedora Update System 2010-10-11 03:33:51 UTC
mawk-1.3.4-5.20100625.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/mawk-1.3.4-5.20100625.fc14

Comment 11 Fedora Update System 2010-10-11 03:33:57 UTC
mawk-1.3.4-5.20100625.el4 has been submitted as an update for Fedora EPEL 4.
https://admin.fedoraproject.org/updates/mawk-1.3.4-5.20100625.el4

Comment 12 Fedora Update System 2010-10-11 03:34:06 UTC
mawk-1.3.4-5.20100625.el5 has been submitted as an update for Fedora EPEL 5.
https://admin.fedoraproject.org/updates/mawk-1.3.4-5.20100625.el5

Comment 13 Fedora Update System 2010-10-11 03:34:13 UTC
mawk-1.3.4-5.20100625.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/mawk-1.3.4-5.20100625.fc13

Comment 14 Fedora Update System 2010-10-11 03:34:20 UTC
mawk-1.3.4-5.20100625.fc12 has been submitted as an update for Fedora 12.
https://admin.fedoraproject.org/updates/mawk-1.3.4-5.20100625.fc12

Comment 15 Fedora Update System 2010-10-11 17:30:22 UTC
mawk-1.3.4-5.20100625.el4 has been pushed to the Fedora EPEL 4 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update mawk'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/mawk-1.3.4-5.20100625.el4

Comment 16 Fedora Update System 2010-10-27 22:40:20 UTC
mawk-1.3.4-5.20100625.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 17 Fedora Update System 2010-10-27 22:42:04 UTC
mawk-1.3.4-5.20100625.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 18 Fedora Update System 2010-10-28 06:05:34 UTC
mawk-1.3.4-5.20100625.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 19 Fedora Update System 2010-10-28 16:51:16 UTC
mawk-1.3.4-5.20100625.el5 has been pushed to the Fedora EPEL 5 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 20 Fedora Update System 2010-10-28 16:51:51 UTC
mawk-1.3.4-5.20100625.el4 has been pushed to the Fedora EPEL 4 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 21 Fedora Update System 2011-02-25 14:32:13 UTC
mawk-1.3.4-4.20100625.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/mawk-1.3.4-4.20100625.el6

Comment 22 Fedora Update System 2011-03-18 19:26:57 UTC
mawk-1.3.4-4.20100625.el6 has been pushed to the Fedora EPEL 6 stable repository.

Comment 23 Mark McKinstry 2014-09-10 01:13:12 UTC
Package Change Request
======================
Package Name: mawk
New Branches: epel7
Owners: mmckinst

Comment 24 Gwyn Ciesla 2014-09-10 10:18:05 UTC
Git done (by process-git-requests).

Comment 25 Fedora Update System 2014-09-12 22:11:18 UTC
mawk-1.3.4-6.20131226.el7 has been submitted as an update for Fedora EPEL 7.
https://admin.fedoraproject.org/updates/mawk-1.3.4-6.20131226.el7

Comment 26 Fedora Update System 2014-10-28 11:01:57 UTC
mawk-1.3.4-6.20131226.el7 has been pushed to the Fedora EPEL 7 stable repository.