%global commit 1d187cc9e455d3d11915da135937fe8bcf502c4b %global short_commit 1d187cc9e455 %global libname yappi Name: python-%{libname} Version: hg20141022 Release: 1%{?dist} Summary: Yet Another Python Profiler Group: python License: MIT URL: http://yappi.googlecode.com/ Source0: https://pypi.python.org/packages/source/y/yappi/%{commit}.tar.gz BuildRequires: python2-devel >= 2.6 Requires: python2 >= 2.6 %description CPython standard distribution is coming with three profilers. cProfile, Profile and hotshot. cProfile module is implemented as a C module based on lsprof, Profile is in pure Python and the hotshot can be seen as a small subset of a cProfile. The motivation to implement a new profiler is that all of these profilers lacks the support of multi-threaded programs. If you want to profile a multi-threaded application, you must give an entry point to these profilers and then maybe merge the outputs. None of these profilers is designed to work on long-running multi-threaded application. While implementing a game server, it turns out that is is impossible to profile an application retrieve the statistics then stop and then start later on on the fly(without affecting the profiled application). With the experience of implementing a game server in Python, we have identified most of the problems, tricky parts regarding profiler usage and so, we have come up with simple but powerful requirements. %prep %setup -q -n sumerc-%{libname}-%{short_commit} %build %{__python} setup.py build %install %{__python} setup.py install --root $RPM_BUILD_ROOT %files %{_bindir}/%{libname} %{python_sitearch}/%{libname}.py* %{python_sitearch}/%{libname}-*-py*.egg-info %attr(755, root, root) %{python_sitearch}/_%{libname}.so* %changelog * Wed Oct 22 2014 Saggi Mizrahi - 0.92 - Initial rpm release