Bug 502978 - Review Request: python-line_profiler - A Python line-by-line profiler
Summary: Review Request: python-line_profiler - A Python line-by-line profiler
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Parag AN(पराग)
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-05-28 05:10 UTC by Silas Sewell
Modified: 2015-07-10 13:09 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-06-07 20:55:20 UTC
Type: ---
Embargoed:
panemade: fedora-review+
j: fedora-cvs+


Attachments (Terms of Use)

Description Silas Sewell 2009-05-28 05:10:52 UTC
Spec Url:
http://silassewell.googlecode.com/svn/trunk/projects/packages/rpms/python-line_profiler/python-line_profiler.spec

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

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

rpmlint

[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 04:00:45 UTC
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 19:21:41 UTC
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.

rpmlint

[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 04:53:46 UTC
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-02 03:25:15 UTC
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

rpmlint

[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-03 03:53:09 UTC
Review:
+ 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)

APPROVED.

Comment 6 Silas Sewell 2009-06-03 04:41:55 UTC
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
InitialCC:

Comment 7 Jason Tibbitts 2009-06-03 17:07:10 UTC
Please note that the proper branch name is "F-11".

CVS done.

Comment 8 Fedora Update System 2009-06-07 20:52:05 UTC
python-line_profiler-1.0-0.3.b2.fc11 has been submitted as an update for Fedora 11.
http://admin.fedoraproject.org/updates/python-line_profiler-1.0-0.3.b2.fc11

Comment 9 Silas Sewell 2009-06-07 20:55:20 UTC
Built.

Thanks Parag and Jason.

Comment 10 Fedora Update System 2009-06-16 02:42:03 UTC
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.