[Bug 588941] Review Request: pypy - Implementation of the Python language, using Python itself

bugzilla at redhat.com bugzilla at redhat.com
Mon May 31 02:19:24 UTC 2010


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug.


https://bugzilla.redhat.com/show_bug.cgi?id=588941

--- Comment #5 from Kevin Fenzi <kevin at tummy.com> 2010-05-30 22:19:17 EDT ---

OK - Package meets naming and packaging guidelines
OK - Spec file matches base package name. 
OK - Spec has consistant macro usage. 
OK - Meets Packaging Guidelines. 
See below - License
OK - License field in spec matches
OK - License file included in package
OK - Spec in American English
OK - Spec is legible.
See below - Sources match upstream md5sum:
d423bd7dfbfbcfebb8435e55bcb36516  pypy-1.2-src.tar.bz2
d423bd7dfbfbcfebb8435e55bcb36516  pypy-1.2-src.tar.bz2.orig

OK - BuildRequires correct
See below - Package has %defattr and permissions on files is good. 
OK - Package has a correct %clean section. 
OK - Package has correct buildroot
OK - Package is code or permissible content. 
OK - Packages %doc files don't affect runtime. 
OK - Package has rm -rf RPM_BUILD_ROOT at top of %install

OK - Package compiles and builds on at least one arch. 
OK - Package has no duplicate files in %files. 
OK - Package doesn't own any directories other packages own. 
OK - Package owns all the directories it creates. 
OK - Package obey's FHS standard (except for 2 exceptions)
See below - No rpmlint output. 
See below - final provides and requires are sane.

SHOULD Items:

OK - Should build in mock. 
OK - Should build on all supported archs
OK - Should function as described. 
OK - Should have sane scriptlets. 
See below - Should have subpackages require base package with fully versioned
depend. 
OK - Should have dist tag
OK - Should package latest version
OK - Should not use file requires outside of /etc, /bin, /sbin, /usr/bin, or
/usr/sbin

Issues: 

1. Can you use " and " in the License tag between Licenses, not commas?
(This is an and I think, not an or)

2. Can you fix the Source0 to use the full upstream url?
http://pypy.org/download/pypy-1.2-src.tar.bz2

3. Should the Requires: pypy-libs be versioned? 

4. I assume there's not any parallel make support here?
Would sure be nice to speed up the build. 

5. rpmlint says: 

a) Fixed by using 'and': 

pypy.src: W: invalid-license MIT, PSL, LGPL, Distributable
pypy-debuginfo.x86_64: W: invalid-license MIT, PSL, LGPL, Distributable
pypy-libs.x86_64: W: invalid-license MIT, PSL, LGPL, Distributable
pypy-nojit.x86_64: W: invalid-license MIT, PSL, LGPL, Distributable
pypy-sandbox.x86_64: W: invalid-license MIT, PSL, LGPL, Distributable
pypy-stackless.x86_64: W: invalid-license MIT, PSL, LGPL, Distributable

b) Fixed by using full url: 

pypy.src: W: invalid-url Source0: pypy-1.2-src.tar.bz2

c) I think these are bogus, just looking at -libs name, but it's not really a
libraries
file. Perhaps it should be something like pypy-library ? Or pypy-lib-python? 
I guess it's not a big deal. 

pypy-stackless.x86_64: E: explicit-lib-dependency pypy-libs
pypy-nojit.x86_64: E: explicit-lib-dependency pypy-libs
pypy-sandbox.x86_64: E: explicit-lib-dependency pypy-libs

d) I can see why this is, but not sure on a solution. 
Supress debuginfo? 

pypy-debuginfo.x86_64: E: debuginfo-without-sources

e) What is this link for?

pypy-libs.x86_64: W: dangling-relative-symlink /usr/share/pypy-1.2/pypy/lib/py
../../py

f) Might be worth fixing the non executable py files to not have the python
shebang?

pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_bz2.py 0644L /usr/bin/python
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/modified-2.5.2/test/test_optparse.py 0644L
/usr/bin/python
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/plat-freebsd7/regen 0644L /bin/sh
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/modified-2.5.2/test/test_sets.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_codecmaps_jp.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_tcl.py 0644L /usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-sunos5/SUNAUDIODEV.py
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/IN.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/unittest.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script /usr/share/pypy-1.2/pypy/lib/md5.py
0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_anydbm.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/difflib.py 0644L /usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/AL.py
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/CD.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_urllib2net.py 0644L /usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/FL.py
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/readcd.py
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-mac/Carbon/CoreGraphics.py
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/GET.py
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/cdplayer.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_with.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_codecencodings_jp.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/WAIT.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_random.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_multibytecodec.py 0644L
/usr/bin/env
pypy-libs.x86_64: W: devel-file-in-non-devel-package
/usr/share/pypy-1.2/pypy/lib/app_test/ctypes_tests/_ctypes_test.c
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/pypy/lib/app_test/test_binascii.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_whichdb.py 0644L /usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_aepack.py
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/FILE.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_codecencodings_hk.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-mac/Carbon/CG.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_codecmaps_tw.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-mac/Carbon/CarbonEvents.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_marshal.py 0644L /usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_htmlparser.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/encodings/rot_13.py 0644L /usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/lib-tk/Tix.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/tarfile.py 0644L /usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/IOCTL.py
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/jpeg.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_urllibnet.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/plat-atheos/regen 0644L /bin/sh
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/CL.py
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/GLWS.py
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/idlelib/idle.bat
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/timeit.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_codecmaps_hk.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_codecencodings_kr.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_codecmaps_kr.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/trace.py 0644L /usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/torgb.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/modified-2.5.2/trace.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/modified-2.5.2/test/test_socket.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-sunos5/IN.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_multibytecodec_support.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/plat-os2emx/regen 0644L /bin/sh
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/SV.py
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/DEVICE.py
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-mac/Carbon/CarbonEvt.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/idlelib/PyShell.py 0644L /usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/panelparser.py
pypy-libs.x86_64: W: spurious-executable-perm
/usr/share/doc/pypy-libs-1.2/demo/bpnn.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/modified-2.5.2/test/test_random.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/readcd.doc
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/Cookie.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/modified-2.5.2/encodings/rot_13.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/modified-2.5.2/test/test_bz2.py 0644L
/usr/bin/python
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/modified-2.5.2/test/test_marshal.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_socket.py 0644L /usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_wsgiref.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_codecencodings_cn.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_optparse.py 0644L
/usr/bin/python
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_popen.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/bsddb/dbshelve.py 0644L /bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/modified-2.5.2/test/test_dumbdbm.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/cddb.py
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/CL_old.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/webbrowser.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_sets.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_eof.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test___future__.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_urllib2_localnet.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/modified-2.5.2/test/test_urllib2_localnet.py
0644L /usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/flp.py
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_binascii.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/plat-freebsd4/regen 0644L /bin/sh
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/GL.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/plat-freebsd6/regen 0644L /bin/sh
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_urlparse.py 0644L /usr/bin/env
pypy-libs.x86_64: E: wrong-script-interpreter
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_largefile.py python
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_largefile.py 0644L python
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/pypy/lib/test2/pickledtasklet.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/crashers/recursive_call.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/bsddb/test/test_dbtables.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_popen2.py 0644L /usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/panel.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_codecencodings_tw.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/flp.doc
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_logging.py 0644L /usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_grp.py
pypy-libs.x86_64: E: wrong-script-interpreter
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_pep263.py -*-
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_pep263.py 0644L -*-
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/plat-irix5/ERRNO.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_dumbdbm.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_gzip.py 0644L /usr/bin/env
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/test/test_codecmaps_cn.py 0644L
/usr/bin/env
pypy-libs.x86_64: E: non-executable-script /usr/share/pypy-1.2/pypy/lib/sha.py
0644L /usr/bin/env
pypy-libs.x86_64: E: script-without-shebang
/usr/share/pypy-1.2/lib-python/2.5.2/runpy.py
pypy-libs.x86_64: E: non-executable-script
/usr/share/pypy-1.2/lib-python/2.5.2/plat-freebsd5/regen 0644L /bin/sh

Can be ignored: 

pypy.src: W: spelling-error %description -l en_US reimplementation -> re
implementation, re-implementation, implementation
pypy-nojit.x86_64: W: no-documentation
pypy-nojit.x86_64: W: no-manual-page-for-binary pypy-nojit
pypy-sandbox.x86_64: W: spelling-error Summary(en_US) Sandboxed -> Sand boxed,
Sand-boxed, Sandboxes
pypy-sandbox.x86_64: W: no-documentation
pypy-sandbox.x86_64: W: no-manual-page-for-binary pypy-sandbox
pypy-stackless.x86_64: W: no-documentation
pypy-stackless.x86_64: W: no-manual-page-for-binary pypy-stackless

-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the package-review mailing list