Bug 502978 - Review Request: python-line_profiler - A Python line-by-line profiler
Review Request: python-line_profiler - A Python line-by-line profiler
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
All Linux
low Severity medium
: ---
: ---
Assigned To: Parag AN(पराग)
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2009-05-28 01:10 EDT by Silas Sewell
Modified: 2015-07-10 09:09 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2009-06-07 16:55:20 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
panemade: fedora‑review+
tibbs: fedora‑cvs+

Attachments (Terms of Use)

  None (edit)
Description Silas Sewell 2009-05-28 01:10:52 EDT
Spec Url:


line_profiler will profile the time individual lines of code take to execute.


[silas@silas rpmbuild]$ rpmlint /var/lib/mock/fedora-10-i386/result/*.rpm
3 packages and 0 specfiles checked; 0 errors, 0 warnings.
Comment 1 Parag AN(पराग) 2009-05-29 00:00:45 EDT
hmm. Build failed with error
    File not found by glob: /builddir/build/BUILDROOT/python-line_profiler-1.0-0.1.b2.fc12.i386/usr/bin/kernprof.py[co]

see http://koji.fedoraproject.org/koji/taskinfo?taskID=1382215
Comment 2 Silas Sewell 2009-05-30 15:21:41 EDT
I'm not sure the correct way to fix this, Koji doesn't create the pyc and pyo files in bindir, but mock still does.

The documentation ( https://fedoraproject.org/wiki/Packaging/Python#Unnecessary_Byte_compilation ) recommends using the exclude, but as you've seen this breaks Koji builds.

I removed the exclude from the package above, but it will have the unnecessary glob in the files' bindir (ex: %{_bindir}/kernprof.py*) and if you build with mock the .pyc and .pyo files will be in the bindir along with the following warnings.


[silas@silas rpmbuild]$ rpmlint /var/lib/mock/fedora-10-i386/result/*.rpm
python-line_profiler.i386: W: non-executable-in-bin /usr/bin/kernprof.pyc 0644
python-line_profiler.i386: W: non-executable-in-bin /usr/bin/kernprof.pyo 0644
3 packages and 0 specfiles checked; 0 errors, 2 warnings.

SPEC Diff: http://code.google.com/p/silassewell/source/diff?spec=svn280&r=280&format=side&path=/trunk/projects/packages/rpms/python-line_profiler/python-line_profiler.spec

SRPM URL: http://silassewell.googlecode.com/files/python-line_profiler-1.0-0.2.b2.fc10.src.rpm
Comment 3 Parag AN(पराग) 2009-06-01 00:53:46 EDT
I think you can even follow suggestion given on that guidelines page
1. Rename scripts in %{_bindir} to not have a .py extension: For instance, from /usr/bin/orient.py to /usr/bin/orient.
This will clean rpmlint output.
Comment 4 Silas Sewell 2009-06-01 23:25:15 EDT
Generally I don't like to rename stuff like this because it can break tutorials and such, but this is probably fine.

SRPM Url: http://silassewell.googlecode.com/files/python-line_profiler-1.0-0.3.b2.fc10.src.rpm

SPEC Diff: http://code.google.com/p/silassewell/source/diff?spec=svn281&r=281&format=side&path=/trunk/projects/packages/rpms/python-line_profiler/python-line_profiler.spec


[silas@silas rpmbuild]$ rpmlint /var/lib/mock/fedora-10-i386/result/*.rpm
3 packages and 0 specfiles checked; 0 errors, 0 warnings.
Comment 5 Parag AN(पराग) 2009-06-02 23:53:09 EDT
+ package builds in mock (rawhide i586).
koji Build =>http://koji.fedoraproject.org/koji/taskinfo?taskID=1389114
+ rpmlint is silent for SRPM and for RPM.
+ source files match upstream url
c509b763c0d2fe8df1c1b654bc4892c11bb7e83e  line_profiler-1.0b2.tar.gz
+ package meets naming and packaging guidelines.
+ specfile is properly named, is cleanly written
+ Spec file is written in American English.
+ Spec file is legible.
+ dist tag is present.
+ build root is correct.
+ license is open source-compatible.
+ License text is included in package.
+ %doc is present.
+ BuildRequires are proper.
+ %clean is present.
+ package installed properly.
+ Macro use appears rather consistent.
+ Package contains code, not content.
+ no headers or static libraries.
+ no .pc file present.
+ no -devel subpackage
+ no .la files.
+ no translations are available
+ Does owns the directories it creates.
+ no scriptlets present.
+ no duplicates in %files.
+ file permissions are appropriate.
+ Not a GUI application
+ Package python-line_profiler-1.0-0.3.b2.fc12.i586 =>
  Provides: _line_profiler.so
  Requires: /usr/bin/python libc.so.6 libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1.3) libpthread.so.0 libpython2.6.so.1.0 python(abi) = 2.6 rtld(GNU_HASH)

Comment 6 Silas Sewell 2009-06-03 00:41:55 EDT
Thanks for the review!

New Package CVS Request
Package Name: python-line_profiler
Short Description: A Python line-by-line profiler
Owners: silas
Branches: F11
Comment 7 Jason Tibbitts 2009-06-03 13:07:10 EDT
Please note that the proper branch name is "F-11".

CVS done.
Comment 8 Fedora Update System 2009-06-07 16:52:05 EDT
python-line_profiler-1.0-0.3.b2.fc11 has been submitted as an update for Fedora 11.
Comment 9 Silas Sewell 2009-06-07 16:55:20 EDT

Thanks Parag and Jason.
Comment 10 Fedora Update System 2009-06-15 22:42:03 EDT
python-line_profiler-1.0-0.3.b2.fc11 has been pushed to the Fedora 11 stable repository.  If problems still persist, please make note of it in this bug report.

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