Bug 574506

Summary: Review Request: python26-distribute - the "Distribute" fork of setuptools for the python26 EPEL5 package
Product: [Fedora] Fedora Reporter: Dave Malcolm <dmalcolm>
Component: Package ReviewAssignee: Steve Traylen <steve.traylen>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: derks, fedora-package-review, notting, steve.traylen
Target Milestone: ---Flags: steve.traylen: fedora-review+
kevin: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: python26-distribute-0.6.10-4.el5 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-06-08 21:40:19 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:
Bug Depends On: 573151    
Bug Blocks: 574531, 574545, 585598    

Description Dave Malcolm 2010-03-17 17:11:32 UTC
Spec URL:
http://dmalcolm.fedorapeople.org/epel-packaging/python26-setuptools.spec


SRPM URL:
http://dmalcolm.fedorapeople.org/epel-packaging/python26-setuptools-0.6.10-1.el5.src.rpm

Note: this is purely intended for the EPEL5 branch, not for Fedora

Description:

This is a python26-setuptools to go with python26 in EPEL5.  I haven't been as conservative as I could, as this is the latest F-13 version of python-setuptools, with the Python 3 support removed, and with some ideas taken from the IUS python26-setuptools.

It is a rebase to the "distribute" fork of setuptools.

I haven't split out a separate -devel subpackage, as in the python26 build (see bug 573151) the files needed at runtime by easy_install are in the core "python26" subpackage, rather than "python26-devel"

If desired, I could instead be more conservative and simply reuse the python26-setuptools from IUS.

It contains the .pyc fix referred to in https://bugzilla.redhat.com/show_bug.cgi?id=573151#c9

I wasn't able to scratch build in Koji, as it needs python26  ("No Package Found for python26-devel"); is this doable with chain builds?

The rpmlint output is clean, apart from this warning (due to the dist tag):
python26-setuptools.noarch: W: incoherent-version-in-changelog 0.6.10-1 0.6.10-1.el5

Comment 1 BJ Dierkes 2010-03-17 17:24:18 UTC
Why not package as 'python26-distribute' which 'Provides: python26-setuptools'?

Comment 2 Dave Malcolm 2010-03-17 18:05:32 UTC
My bad: this package doesn't actually install :(

I missed the move of easy_install to easy_install-2.6, which meant that it shadowed the version from the main stack.

Updated specfile:
http://dmalcolm.fedorapeople.org/epel-packaging/python26-setuptools.spec

Updated SRPM:
http://dmalcolm.fedorapeople.org/epel-packaging/python26-setuptools-0.6.10-2.el5.src.rpm

Diff of specfile:
http://dmalcolm.fedorapeople.org/epel-packaging/from-0.6.10-1-to-0.6.10-2.diff

Fixes the shadowing issue; rpmlint output is as before

Comment 3 Dave Malcolm 2010-03-17 18:06:41 UTC
(In reply to comment #1)
> Why not package as 'python26-distribute' which 'Provides: python26-setuptools'?    

OK.  I was following what Fedora 13 did here.

Is the rebase acceptable, or would you prefer a most conservative approach?

Comment 4 Dave Malcolm 2010-03-17 18:07:32 UTC
(In reply to comment #3)

> Is the rebase acceptable, or would you prefer a most conservative approach?    

s/most/more , I meant to write

Comment 5 BJ Dierkes 2010-03-17 18:56:08 UTC
(In reply to comment #3)
> (In reply to comment #1)
> > Why not package as 'python26-distribute' which 'Provides: python26-setuptools'?    
> 
> OK.  I was following what Fedora 13 did here.
> 
> Is the rebase acceptable, or would you prefer a most conservative approach?    


Hmm... wonder why they did it that way.  Functionality is the important thing... though it seems confusing to me... most users would assume that python26-setuptools means setuptools...  not distribute.  Maybe there was some reason why they did it that way that I'm missing.  Maybe your reviewer can comment.

Comment 6 Dave Malcolm 2010-03-19 19:10:12 UTC
(In reply to comment #5)
This was taken from python-setuptools.spec in Fedora, which is so named because until recently it _was_ setuptools.

I've reworked this to be "python26-distribute" in order to be more explicit that we're using the "Distribute" fork.  I'm renaming this review request accordingly.

Updated specfile:
http://dmalcolm.fedorapeople.org/epel-packaging/python26-distribute.spec

Updated SRPM:
http://dmalcolm.fedorapeople.org/epel-packaging/python26-distribute-0.6.10-3.el5.src.rpm

Difference between specfiles (since comment #2):
http://dmalcolm.fedorapeople.org/epel-packaging/from-python26-setuptools-0.6.10-2-to-python26-distribute-0.6.10-3.diff

rpmlint output is as in comment #0:
python26-distribute.noarch: W: incoherent-version-in-changelog 0.6.10-3 0.6.10-3.el5

Comment 7 Steve Traylen 2010-04-23 20:20:21 UTC
Review: python26-distribute.
Date:   

* PASS: rpmlint output
$ rpmlint SPECS/python26-distribute.spec \
   SRPMS/python26-distribute-0.6.10-3.el5.src.rpm \
   RPMS/noarch/python26-distribute-0.6.10-3.el5.noarch.rpm  \
python26-distribute.noarch: W: incoherent-version-in-changelog 0.6.10-3 0.6.10-3.el5
2 packages and 1 specfiles checked; 0 errors, 1 warnings.

* PASS: Named according to the Package Naming Guidelines.
python26-<tarballname>
* PASS: spec file name same as  base package %{name}.
* PASS: Packaging Guidelines.
* PASS: Approved license in .spec file.
Python or ZPLv2.0
* PASS: License on Source code.
zpl.txt and psfl.txt
* PASS: Include LICENSE file or similar if it exist.
zpl.txt and psfl.txt
* PASS: Written in American English.
* PASS: Spec file legible. 
* PASS: Included source must match upstream source.
$ md5sum distribute-0.6.10.tar.gz ../SOURCES/distribute-0.6.10.tar.gz 
99fb4b3e4ef0861bba11aa1905e89fed  distribute-0.6.10.tar.gz
99fb4b3e4ef0861bba11aa1905e89fed  ../SOURCES/distribute-0.6.10.tar.gz
* PASS: Build on one architecture.
* PASS: Not building on an architecture must highlighted.
* PASS: Build dependencies must be listed in BuildRequires.
* PASS: Handle locales properly. 
no locales
* PASS: ldconfig must be called on shared libs.
no libs
* PASS: No bundled copies of system libraries.
none present
* PASS: Package must state why relocatable if relocatable.
not relocatalbe.
* PASS: A package must own all directories that it creates
* PASS:  No duplicate files in %files listings. 
None
* PASS:  Permissions on files must be set properly. %defattr
%defatt present,
* PASS:  %clean section contains rm -rf %{buildroot} (or $RPM_BUILD_ROOT).
Present
* FAIL:  Each package must consistently use macros.
 See below
* PASS:  The package must contain code, or permissable content.
* PASS:  Large documentation files must go in a -doc subpackage.  
No large docs
* PASS:  %doc  must not affect the runtime of the application. 
* PASS:  Header files must be in a -devel package.
No headers
* PASS:  Static libraries must be in a -static package.
No libs
* PASS:  Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig'
None
* PASS:  Then library files that end in .so 
None
* PASS:  devel packages must require the exact base package
None
* PASS:  No .la libtool archives
None
* PASS:  GUI apps should have %{name}.desktop file
No Gui
* PASS:  No files or directories already owned by other packages. 
None
* PASS:  %install must run rm -rf %{buildroot} (or $RPM_BUILD_ROOT).
It does
* PASS:  All filenames in rpm packages must be valid UTF-8.
They are.

Summary:
Just one things.

The .spec file uses both {buildroot} and $RPM_BUILD_ROOT which it
should not. On a similar but less important you want to replace
$RPM_OPT_FLAGS with %{optflags}

Comment 9 Steve Traylen 2010-04-24 21:55:18 UTC
APPROVED

this should open up a lot more.

Comment 10 Dave Malcolm 2010-04-25 19:36:37 UTC
New Package CVS Request
=======================
Package Name: python26-distribute
Short Description: the "Distribute" fork of setuptools for the python26 EPEL package
Owners: dmalcolm
Branches: EL-5
InitialCC:

Note: this package is intended purely for EPEL, not for Fedora.

Comment 11 Kevin Fenzi 2010-04-26 03:39:17 UTC
CVS done (by process-cvs-requests.py).

Comment 12 Dave Malcolm 2010-04-26 19:00:00 UTC
Thanks

I've added a "dead.package" to the devel branch:
  http://cvs.fedoraproject.org/viewvc/rpms/python26-distribute/devel/dead.package?view=log

I've imported the src.rpm to the EL-5 branch
  http://cvs.fedoraproject.org/viewvc/rpms/python26-distribute/EL-5/

pkgdb shows the package here:
  https://admin.fedoraproject.org/pkgdb/acls/name/python26-distribute

Can't build it in Koji until python26 reaches the buildroots:
http://koji.fedoraproject.org/koji/getfile?taskID=2139067&name=root.log
shows:
  "No Package Found for python26-devel"
(see http://admin.fedoraproject.org/updates/python26-2.6.5-3.el5 )

Comment 13 Steve Traylen 2010-04-26 19:12:14 UTC
> Can't build it in Koji until python26 reaches the buildroots:
> http://koji.fedoraproject.org/koji/getfile?taskID=2139067&name=root.log
> shows:
>   "No Package Found for python26-devel"
> (see http://admin.fedoraproject.org/updates/python26-2.6.5-3.el5 )    

If you like you can request a build override via a ticket to

https://fedorahosted.org/fedora-infrastructure/

category EPEL.

Comment 14 Steve Traylen 2010-05-19 18:32:34 UTC
Hi,
Can this be built now?

Comment 15 Fedora Update System 2010-06-01 19:55:46 UTC
python26-distribute-0.6.10-4.el5 has been submitted as an update for Fedora EPEL 5.
http://admin.fedoraproject.org/updates/python26-distribute-0.6.10-4.el5

Comment 16 Fedora Update System 2010-06-08 21:40:13 UTC
python26-distribute-0.6.10-4.el5 has been pushed to the Fedora EPEL 5 stable repository.  If problems still persist, please make note of it in this bug report.