Bug 878236

Summary: Review Request: python-waitress - Waitress WSGI server
Product: [Fedora] Fedora Reporter: Lorenzo Gil Sanchez <lorenzo.gil.sanchez>
Component: Package ReviewAssignee: Gianluca Sforna <giallu>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: giallu, notting, package-review
Target Milestone: ---Flags: giallu: fedora-review+
gwync: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-12-08 04:25:46 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 Lorenzo Gil Sanchez 2012-11-19 22:15:46 UTC
Spec URL: http://lorenzogil.com/rpms/python-waitress/python-waitress.spec
SRPM URL: http://lorenzogil.com/rpms/python-waitress/python-waitress-0.8.2-1.fc17.src.rpm
Description:
Waitress is meant to be a production-quality pure-Python WSGI server with
very acceptable performance. It has no dependencies except ones which live
in the Python standard library. It runs on CPython on Unix and Windows under
Python 2.6+ and Python 3.2. It is also known to run on PyPy 1.6.0 on UNIX.
It supports HTTP/1.0 and HTTP/1.1.

For more information, see the "docs" directory of the Waitress package
or http://docs.pylonsproject.org/projects/waitress/en/latest/ .

Fedora Account System Username: lgs

Koji builds:

 Fedora 17: http://koji.fedoraproject.org/koji/taskinfo?taskID=4706231
 Fedora 18: http://koji.fedoraproject.org/koji/taskinfo?taskID=4706203

Comment 1 Gianluca Sforna 2012-11-21 23:04:30 UTC
I am taking this review, spec looks very clean at first sight.

Comment 2 Gianluca Sforna 2012-11-23 00:28:57 UTC
Few point we can improve.

cosmetic: the 'for more information' part can be rewritten to point user to the full path in the system like this:

For more information, see %{docdir}/docs or http://docs.pylonsproject.org/projects/waitress/en/latest/

comparing the spec with the guidelines at https://fedoraproject.org/wiki/Packaging:Python I see it is recommended to run

rm -rf %{py3dir}
just before
cp -a . %{py3dir}


Not sure it is useful, but there also minor differences in build and install:

CFLAGS="$RPM_OPT_FLAGS" is prepended to setup.py build lines, and setup.py install now lacks the -O1 flag (maybe it was deprecated at some point)

pakcage builds fine in mock. rpmlint has few things to say:

[giallu@novo SPECS]$ rpmlint /var/lib/mock/fedora-17-x86_64/result/*.rpm
python3-waitress.noarch: W: spurious-executable-perm /usr/share/doc/python3-waitress-0.8.2/docs/rebuild
python3-waitress.noarch: E: version-control-internal-file /usr/share/doc/python3-waitress-0.8.2/docs/.gitignore
python-waitress.noarch: E: version-control-internal-file /usr/share/doc/python-waitress-0.8.2/docs/.gitignore
python-waitress.noarch: W: spurious-executable-perm /usr/share/doc/python-waitress-0.8.2/docs/rebuild

I guess these are all files you remove outright

Comment 3 Lorenzo Gil Sanchez 2012-11-24 11:06:36 UTC
Thanks a lot for this review!

I've updated the package with all your suggestions except the CFLAGS="$RPM_OPT_FLAGS" thing. This package does not have any C extensions so I think the CFLAGS are not needed. I guess the guidelines try to cover all cases but this time is cleaner if we don't put that.

The update links:

Spec URL: http://lorenzogil.com/rpms/python-waitress/python-waitress.spec
SRPM URL: http://lorenzogil.com/rpms/python-waitress/python-waitress-0.8.2-2.fc17.src.rpm

Koji builds:

 Fedora 17: http://koji.fedoraproject.org/koji/taskinfo?taskID=4723002
 Fedora 18: http://koji.fedoraproject.org/koji/taskinfo?taskID=4723006


rpmlint is much happier now :-)

Comment 4 Gianluca Sforna 2012-11-26 22:48:12 UTC
(In reply to comment #3)
> I've updated the package with all your suggestions except the
> CFLAGS="$RPM_OPT_FLAGS" thing. This package does not have any C extensions
> so I think the CFLAGS are not needed. I guess the guidelines try to cover
> all cases but this time is cleaner if we don't put that.

Yeah. I suppose it could grow such extension in the future, but I trust your packager powers to fix it in case it will ever do :)

I think we are in a good shape to go. 

Just a minor remark: I suggest you use the  %{version} macro in the Source0 line, so you don't need to change it at each new upstream release.

==== REVIEW CHECKLIST ====
- package named according to package naming guidelines
- package licensed with allowed license (ZPLv2.1)
- license matches actual license
- license file included in %doc
- spec written in American english
- spec legible
- sources match upstream sha256sum
- successfully builds in mock for rawhide x86_64
- no locales
- no shared libraries
- package owns all directories it creates
- default file permissions
- macro usage is consistent
- package contains code
- no large documentation
- not a GUI app needing a .desktop file

- rpmlint is mostly silent, the only warning can be ignored:

rpmlint /var/lib/mock/fedora-17-x86_64/result/*.rpm
python-waitress.src: W: spelling-error %description -l en_US usr -> use, us, user
3 packages and 0 specfiles checked; 0 errors, 1 warnings.


This package is APPROVED

PS. I have a package in the queue as well, bug #804125. If you have spare cycles to help me get it in Fedora it would be great. However, it is much more complicated than this one, so do not feel obligated in any way.

Comment 5 Lorenzo Gil Sanchez 2012-11-28 19:02:11 UTC
Thanks a lot Gianluca. I updated the package with your %{version} suggestion.

I'll take a look at your package.

Comment 6 Lorenzo Gil Sanchez 2012-11-28 19:07:54 UTC
New Package SCM Request
=======================
Package Name: python-waitress
Short Description: Waitress WSGI server
Owners: lgs
Branches: f17 f18
InitialCC:

Comment 7 Gwyn Ciesla 2012-11-28 19:25:50 UTC
Git done (by process-git-requests).

Comment 8 Fedora Update System 2012-11-28 22:10:45 UTC
python-waitress-0.8.2-3.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/python-waitress-0.8.2-3.fc18

Comment 9 Fedora Update System 2012-11-28 22:12:23 UTC
python-waitress-0.8.2-3.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/python-waitress-0.8.2-3.fc17

Comment 10 Fedora Update System 2012-11-30 06:41:33 UTC
python-waitress-0.8.2-3.fc18 has been pushed to the Fedora 18 testing repository.

Comment 11 Fedora Update System 2012-12-08 04:25:47 UTC
python-waitress-0.8.2-3.fc18 has been pushed to the Fedora 18 stable repository.

Comment 12 Fedora Update System 2012-12-09 05:59:02 UTC
python-waitress-0.8.2-3.fc17 has been pushed to the Fedora 17 stable repository.