From a71b6748bb7f1614918d45fc3cb6d3e98023ea46 Mon Sep 17 00:00:00 2001 From: tuShenmei Date: Sun, 23 May 2021 21:39:50 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BB=BA=E4=BB=93=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- profilehooks-1.12.0.tar.gz | Bin 0 -> 19120 bytes python-profilehooks.spec | 152 +++++++++++++++++++++++++++++++++++++ 2 files changed, 152 insertions(+) create mode 100644 profilehooks-1.12.0.tar.gz create mode 100644 python-profilehooks.spec diff --git a/profilehooks-1.12.0.tar.gz b/profilehooks-1.12.0.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..a538ba0ce2dcbd27673910c7304745e19a128957 GIT binary patch literal 19120 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 profile + + $ python -m profilehooks yourmodule +Full documentation is available through ``pydoc profilehooks`` after +installation. +The home page for this module is https://mg.pov.lt/profilehooks. It has +screensho, uh, that is, more examples. + +%package -n python3-profilehooks +Summary: Decorators for profiling/timing/tracing individual functions +Provides: python-profilehooks +BuildRequires: python3-devel +BuildRequires: python3-setuptools +%description -n python3-profilehooks +It's a collection of decorators for profiling functions. E.g. to profile a +single function:: + from profilehooks import profile + @profile + def my_function(args, etc): + pass +The results will be printed when the program exits (or you can use +``@profile(immediate=True)``). +If you're interested in coarse timings and don't want to pay for the overhead +of profiling, use :: + from profilehooks import timecall + @timecall # or @timecall(immediate=True) + def my_function(args, etc): + pass +Finally, you may be interested in seeing line coverage for a single function :: + from profilehooks import coverage + @coverage + def my_function(args, etc): + pass +Also functions can be available in Python console or module if run it with -m arg :: + $ python -m profilehooks + >>> profile + + $ python -m profilehooks yourmodule +Full documentation is available through ``pydoc profilehooks`` after +installation. +The home page for this module is https://mg.pov.lt/profilehooks. It has +screensho, uh, that is, more examples. + +%package help +Summary: Development documents and examples for profilehooks +Provides: python3-profilehooks-doc +%description help +It's a collection of decorators for profiling functions. E.g. to profile a +single function:: + from profilehooks import profile + @profile + def my_function(args, etc): + pass +The results will be printed when the program exits (or you can use +``@profile(immediate=True)``). +If you're interested in coarse timings and don't want to pay for the overhead +of profiling, use :: + from profilehooks import timecall + @timecall # or @timecall(immediate=True) + def my_function(args, etc): + pass +Finally, you may be interested in seeing line coverage for a single function :: + from profilehooks import coverage + @coverage + def my_function(args, etc): + pass +Also functions can be available in Python console or module if run it with -m arg :: + $ python -m profilehooks + >>> profile + + $ python -m profilehooks yourmodule +Full documentation is available through ``pydoc profilehooks`` after +installation. +The home page for this module is https://mg.pov.lt/profilehooks. It has +screensho, uh, that is, more examples. + +%prep +%autosetup -n profilehooks-1.12.0 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-profilehooks -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Sun May 23 2021 Python_Bot +- Package Spec generated -- Gitee