Bug 521707 - Review Request: python-zc.buildout - System for managing Python development buildouts
Review Request: python-zc.buildout - System for managing Python development b...
Status: CLOSED DUPLICATE of bug 629324
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Nobody's working on this, feel free to take it
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2009-09-07 16:56 EDT by Jonathan Steffan
Modified: 2010-09-01 12:20 EDT (History)
7 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2010-09-01 12:11:18 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description Jonathan Steffan 2009-09-07 16:56:18 EDT
Spec URL: http://jsteffan.fedorapeople.org/SPECS/python-zc.buildout.spec
SRPM URL: http://jsteffan.fedorapeople.org/SRPMS/python-zc.buildout-1.4.1-1.fc11.src.rpm
Description: System for managing Python development buildouts
Comment 1 Jonathan Steffan 2009-09-07 16:57:28 EDT
This package blocks any updates to plone. I'll need it to push out any builds/updates to the plone packages.
Comment 2 Mamoru TASAKA 2009-10-06 01:03:29 EDT
(The submitter should not change fedora-review flag, revoking)
Comment 3 caius.chance 2010-01-05 02:21:38 EST
Hi, I'm here for pre-review:

=====

$ rpmlint python-zc.buildout.spec 
python-zc.buildout.spec: W: mixed-use-of-spaces-and-tabs (spaces: line 3, tab: line 9)
0 packages and 1 specfiles checked; 0 errors, 1 warnings.

Please use either spaces or tabs.

=====

You could use macros on 'rm'.

You should put 'ZPLv2.1' at license field.

Where is the ZPL license in the package?
Comment 4 Jonathan Steffan 2010-04-10 19:28:11 EDT
Updated to fix rpmlint warnings. Updated License field. Updated to use %{__rm} macro. The ZPL 2.1 license is not shipped with the upstream source. http://www.zope.org/Resources/ZPL which is GPL compatible and is approved for use with Fedora: http://fedoraproject.org/wiki/Licensing#Good_Licenses (see ZPL 2.1)

Spec URL: http://jsteffan.fedorapeople.org/SPECS/python-zc.buildout.spec
SRPM URL: http://jsteffan.fedorapeople.org/SRPMS/python-zc.buildout-1.4.1-1.fc12.src.rpm
Comment 5 Jonathan Steffan 2010-06-19 17:45:09 EDT
Hoping for some progress on this. Plone 4 utilizes zope 2.12.x which supports python 2.6 so we can get this stack back into Fedora. However, a lot more projects are utilizing zc.buildout. I've updated the package to the lastest stable release.

SPEC URL: http://jsteffan.fedorapeople.org/SPECS/python-zc.buildout.spec
SRPM URL: http://jsteffan.fedorapeople.org/SRPMS/python-zc.buildout-1.4.3-1.fc13.src.rpm
Comment 6 Kalev Lember 2010-06-19 19:29:12 EDT
Taking for review.

I think "fixing" the spec to use %{__rm} doesn't add anything useful and if you wish you should just revert back to using plain rm. There was a recent discussion about the %__ macros in fedora-devel list and the consensus was that they are useless.


Are the .txt files in site-packages/zc/buildout/ and site-packages/zc.buildout-1.4.1-py2.6.egg-info/ needed? Perhaps they'd be more useful in the standard docdir?

You could do something like this at the end of %install to move them to docdir:
mkdir _docdir
find $RPM_BUILD_ROOT%{python_sitelib}/ -name "*.txt" -exec echo mv {} _docdir/ \;

and then later:
%files
%doc _docdir/*


> # Remove CFLAGS=... for noarch packages (unneeded)
> CFLAGS="$RPM_OPT_FLAGS" %{__python} setup.py build

You can remove CFLAGS= as you commented yourself.


Current python guidelines [1] suggest to wrap the sitelib definition in an %if, as it's not needed in F13 and up. But this is just nitpicking and no real need to change it.
%if ! (0%{?fedora} > 12 || 0%{?rhel} > 5)
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
%endif

[1] https://fedoraproject.org/wiki/Packaging:Python
Comment 7 Jonathan Steffan 2010-06-19 19:50:15 EDT
python-zc.buildout.noarch: W: no-manual-page-for-binary buildout
2 packages and 0 specfiles checked; 0 errors, 1 warnings.

SPEC URL: http://jsteffan.fedorapeople.org/SPECS/python-zc.buildout.spec
SRPM URL:
http://jsteffan.fedorapeople.org/SRPMS/python-zc.buildout-1.4.3-2.fc13.src.rpm

There is no upstream manpage and I'm not sure there should really be one.
Comment 8 Kalev Lember 2010-06-19 20:37:35 EDT
Fedora review python-zc.buildout-1.4.3-2.fc13.src.rpm 2010-06-20

+ OK
! needs attention

(In reply to comment #7)
> python-zc.buildout.noarch: W: no-manual-page-for-binary buildout
> 2 packages and 0 specfiles checked; 0 errors, 1 warnings.
> There is no upstream manpage and I'm not sure there should really be one.    

Yes, I also think there's no real need for a man page. Even Debian (usually very strict about man pages) doesn't have one for this package.

+ rpmlint warning can be ignored
+ The package is named according to the Package Naming Guidelines.
  Naming Guildelines [1] say that a package must not use . as a separator,
  but I think it's OK in this case:
  - rpm / yum seems to handle it just fine
  - there are already a few packages which have . in their names
    (openoffice.org and java-1.6.0-openjdk for example)
  - upstream uses . in package name
  - debian also calls it python-zc.buildout

[1] http://fedoraproject.org/wiki/PackageNamingGuidelines#Separators

+ Spec file name matches the base package name
+ The package follows the Packaging Guidelines
+ The package is licensed with a Fedora approved license and meets the Licensing Guidelines.
+ The license field in the spec file matches the actual license
n/a The package doesn't contain a separate license file and thus it's also not in %doc
+ Spec file is written in American English
+ Spec file is legible
+ Upstream sources match sources in the srpm. md5sum:
  527cece8ca7ee087dc4e23360bbd9bcb  zc.buildout-1.4.3.tar.gz
  527cece8ca7ee087dc4e23360bbd9bcb  Download/zc.buildout-1.4.3.tar.gz
+ The package builds in koji
n/a ExcludeArch bugs filed
+ BuildRequires look sane
n/a The spec file handles locales properly
+ Package does not bundle copies of system libraries
n/a Does not use Prefix: /usr
+ Package owns all directories it creates
+ No duplicate files in %files
+ Permissions are properly set and %files has %defattr
+ %clean contains rm -rf $RPM_BUILD_ROOT
+ Consistent use of macros
+ Package contains code or permissible content
n/a Large documentation files should go in -doc subpackage
+ Files marked %doc should not affect package
n/a Header files should be in -devel
n/a Static libraries should be in -static
n/a Library files that end in .so must go in a -devel package
n/a -devel must require the fully versioned base
n/a Packages should not contain libtool .la files
n/a Packages containing GUI apps must include %{name}.desktop file
+ Packages must not own files or directories owned by other packages

APPROVED
Comment 9 Chen Lei 2010-06-19 21:30:12 EDT
This package should renamed to python-zc-buildout before import to cvs.
Comment 10 Chen Lei 2010-06-19 21:32:58 EDT
Note:

Normally all xxx.yyy python should be renamed to python-xxx-xxx, because namespace for those modules are xxx/yyy


See http://koji.fedoraproject.org/koji/packageinfo?packageID=8780
Comment 11 Chen Lei 2010-06-19 23:00:55 EDT
(In reply to comment #5)
> Hoping for some progress on this. Plone 4 utilizes zope 2.12.x which supports
> python 2.6 so we can get this stack back into Fedora. However, a lot more
> projects are utilizing zc.buildout. I've updated the package to the lastest
> stable release.

Zope2 is already packaged :)
See http://cheeselee.fedorapeople.org/yum/zope/

Maybe you can work together with cheeselee after python2.7 is available in F14, some of those modules need patch to make it compatible with python2.7.
Comment 12 Chen Lei 2010-06-20 05:02:17 EDT
I list all the dependecies of Zope2 in http://fedoraproject.org/wiki/Zope2

I also add some informations on your wiki page http://fedoraproject.org/wiki/SIGs/Zope, next we need to create some communication way e.g. mailist IRC
Comment 13 Rakesh Pandit 2010-06-21 03:22:26 EDT
Fixed missing assigned to.
Comment 14 Kalev Lember 2010-07-09 15:01:09 EDT
Jonathan, what's the status here?
Comment 15 Robin Lee 2010-07-10 02:21:44 EDT
It is not acceptable that this package owns the directory %{python_sitelib}/zc/{,/recipe/} !
We should decide a more sophisticated and uniform mechanism to deal with namespaces. I will soon post a proposal to the python-devel mailing list.

And package name usually contains no '.', 'python-zc-buildout' is preferred.

This package requires 'python-setuptools'.

I also drafted a version of python-zc-buildout.spec: http://fedorapeople.org/gitweb?p=cheeselee/public_git/zope-rpm.git;a=blob;f=python-zc-buildout/F-13/python-zc-buildout.spec;hb=master
Comment 16 Robin Lee 2010-07-10 02:25:36 EDT
It is not acceptable that this package owns the directory %{python_sitelib}/zc/ !
We should decide a more sophisticated and uniform mechanism to deal with
namespaces. I will soon post a proposal to the python-devel mailing list.

And package name usually contains no '.', 'python-zc-buildout' is preferred.

This package requires 'python-setuptools'.

I also drafted a version of python-zc-buildout.spec:
http://fedorapeople.org/gitweb?p=cheeselee/public_git/zope-rpm.git;a=blob;f=python-zc-buildout/F-13/python-zc-buildout.spec;hb=master
Comment 17 Kalev Lember 2010-08-09 12:35:02 EDT
Jonathan, are you still interested in this package?
Comment 18 Kalev Lember 2010-08-16 17:07:19 EDT
Jonathan, could you address the issues pointed out by Chen and Robin?

Setting fedora‑review flag back to "?".
Comment 19 Chen Lei 2010-08-16 22:44:45 EDT
Hi Toshio,

Would you mind to help us to point out which name is suitable for this package, python-zc.buildout or python-zc-buildout?

Currently, debian/ubuntu use python-zc.buildout, however some existed packages in fedora repo use python-zope-* as package names.
Comment 20 Toshio Ernie Kuratomi 2010-08-17 01:53:30 EDT
"""
When naming packages for Fedora, the maintainer must use the dash '-' as the delimiter for name parts. The maintainer must NOT use an underscore '_', a plus '+', or a period '.' as a delimiter. 

There are a few exceptions to the no underscore '_' rule. 
[But no exceptions for the '+' or '.']
"""

https://fedoraproject.org/wiki/Packaging:NamingGuidelines#Separators

If you think this should be changed, you can submit a draft to the packaging committee.
Comment 21 Kalev Lember 2010-08-28 09:57:52 EDT
Jonathan, could you please respond?
Comment 22 Robin Lee 2010-09-01 12:11:18 EDT
I take over this review request.

*** This bug has been marked as a duplicate of bug 629324 ***

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