commit 013dafdc73d95d8a445ed7ddb721c4a7543109a6a6a14cad5730fc492d85d376 Author: Dirk Mueller Date: Mon Apr 28 16:37:21 2025 +0000 - update to 2.9.0: * Feature: A new hook, perf_record, is available to turn Linux perf profiling on and off around the benchmark code. To use it, pass --hook perf_record. Patch by Matt Page. * Feature: pyperf will now warn if you are collecting too few or too many samples for stable results. Patch by Michael Droettboom OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pyperf?expand=0&rev=25 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/pyperf-2.7.0.tar.gz b/pyperf-2.7.0.tar.gz new file mode 100644 index 0000000..37fdbf8 --- /dev/null +++ b/pyperf-2.7.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4201c6601032f374e9c900c6d2544a2f5891abedc1a96eec0e7b2338a6247589 +size 222458 diff --git a/pyperf-2.8.0.tar.gz b/pyperf-2.8.0.tar.gz new file mode 100644 index 0000000..ab64044 --- /dev/null +++ b/pyperf-2.8.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b30a20465819daf102b6543b512f6799a5a879ff2a123981e6cd732d0e6a7a79 +size 225186 diff --git a/pyperf-2.8.1.tar.gz b/pyperf-2.8.1.tar.gz new file mode 100644 index 0000000..3830bdd --- /dev/null +++ b/pyperf-2.8.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef103e21a4d04999315003026a2d659c48a7cfce5e1440f03d6e72591400713a +size 225161 diff --git a/pyperf-2.9.0.tar.gz b/pyperf-2.9.0.tar.gz new file mode 100644 index 0000000..2989363 --- /dev/null +++ b/pyperf-2.9.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbe0feef8ec1a465df191bba2576149762d15a8c9985c9fea93ab625d875c362 +size 227189 diff --git a/python-pyperf.changes b/python-pyperf.changes new file mode 100644 index 0000000..2a2632a --- /dev/null +++ b/python-pyperf.changes @@ -0,0 +1,160 @@ +------------------------------------------------------------------- +Mon Apr 28 16:37:10 UTC 2025 - Dirk Müller + +- update to 2.9.0: + * Feature: A new hook, perf_record, is available to turn Linux + perf profiling on and off around the benchmark code. To use + it, pass --hook perf_record. Patch by Matt Page. + * Feature: pyperf will now warn if you are collecting too few + or too many samples for stable results. Patch by Michael + Droettboom + +------------------------------------------------------------------- +Mon Feb 3 09:45:35 UTC 2025 - John Paul Adrian Glaubitz + +- Update to 2.9.0 + * Bugfix: Hooks now work correctly in subprocess benchmarks + (bench.run_command). + * Python 3.8 is now unsupported. +- Limit Python files matched in %files section + +------------------------------------------------------------------- +Fri Oct 18 10:45:53 UTC 2024 - Dirk Müller + +- update to 2.8.0: + * Refactor operations to fully work on AArch64. + * Fix the max_mem_rss measurement + * Allow setting the amount of warmup values in Runner + * Add hooks for calling arbitrary code around each benchmark + * Use KiB and MiB as units instead of kB and MB. + * Fix Spelling Error + * Make hooks work in bench_command subprocesses + * Fix deprecated method in bench_time_func example + * Separate subprocess writing/parsing into their own functions + * Fix "std dev" link + * Implement --timeout when running benchmarks + +------------------------------------------------------------------- +Mon Jun 24 15:29:45 UTC 2024 - Dirk Müller + +- update to 2.7.0: + * Fix logic in MSR availability test. + * Disable tuning TurboBoost setting on non-Intel device. + * Include CONFIG_ARGS in Metadata. + * Support environment variables PYTHON_GIL / PYTHON_CPU_COUNT. + +------------------------------------------------------------------- +Sat Mar 16 09:47:08 UTC 2024 - Dirk Müller + +- update to 2.6.3: + * Support Free-threading CPython (PEP-703) by disabling psutil + related features. + * Fix mem_max_rss measurement on macOS. + +------------------------------------------------------------------- +Sun Jan 7 20:18:54 UTC 2024 - Dirk Müller + +- update to 2.6.2: + * Now, pystats stats are collected during warmups. + * system: Fix detection of battery. + * Fix a possible attribute error in argument parsing. + * Inherit PYTHONPATH environment variable by default. + * Runner.bench_async_func() takes an optional loop_factory to + support custom loop construction. + +------------------------------------------------------------------- +Wed Nov 9 18:34:02 UTC 2022 - Yogalakshmi Arunachalam + +- Update to version 2.5.0 + * Recognize new name of Graal-based Python as jitted by @timfel in #139 + * Collect specialization statistics from running benchmarks by @mdboom in #140 + * Add support for Python 3.11 by @hugovk in #142 + +------------------------------------------------------------------- +Thu Oct 6 21:53:01 UTC 2022 - Yogalakshmi Arunachalam + +- version update to 2.4.1 + * Reject --tracemalloc in pyperf command by @oraluben in #131 + +------------------------------------------------------------------- +Thu Apr 7 07:58:28 UTC 2022 - pgajdos@suse.com + +- version update to 2.3.1 + Version 2.3.1 (2022-02-03) + -------------------------- + * Add a ``Runner.bench_async_func()`` to benchmark an asyncio coroutine. + Patch by Inada Naoki. + * pyperf now recognizes graalpython as the JIT-based implementation. + Patch by Tim Felgentreff. + Version 2.3.0 (2021-09-28) + -------------------------- + * pyperf ref:`compare_to command ` now supports the + ``--table-format`` option which can designate the table format + between reST and markdown. + Version 2.2.0 (2021-03-24) + -------------------------- + * ``--track-memory`` option now supports macOS by using ``psutil``. + * Added ``--copy-env`` command line option that inherits all environment variables. + * The development branch ``master`` was renamed to ``main``. + See https://sfconservancy.org/news/2020/jun/23/gitbranchname/ for the + rationale. + Version 2.1.0 (2021-01-14) + -------------------------- + * The :ref:`compare_to command ` now computes the geometric + mean. + * The :ref:`compare_to command ` no longer displays + percentages: display less numbers to make the output easier to read. Also, + percentage were almost the same values than the xxx faster or xxx slower + values, but rounded differenly which introduced confusion. + * Project moved to https://github.com/psf/pyperf/ + * system command now only emits a warning rather than failing with a hard error + if it fails to get or set the frequency of a CPU. + * The pyperf project is now covered by the `PSF Code of Conduct + `_. + +------------------------------------------------------------------- +Wed May 20 07:26:37 UTC 2020 - Petr Gajdos + +- %python3_only -> %python_alternative + +------------------------------------------------------------------- +Fri Mar 20 12:42:05 UTC 2020 - Marketa Calabkova + +- Update to version 2.0.0 + * Drop Python 2 support. Use pyperf 1.7.1 if you still need Python 2.7 + support. + * Remove ``python_unicode`` metadata. + * pyperf.perf_counter() is now deprecated: use time.perf_counter() directly. + * Support Python 3.8: ``time.clock()`` no longer exists. +- Drop no longer needed patches python-retcode.patch and python38.patch + +------------------------------------------------------------------- +Mon Mar 9 10:35:44 UTC 2020 - Tomáš Chvátal + +- Add patches to work with py3.8: + * python-retcode.patch + * python38.patch + +------------------------------------------------------------------- +Mon Mar 9 09:21:24 UTC 2020 - Tomáš Chvátal + +- Update to 1.7.0: + * metadata: add ``python_compiler`` + * Windows: inherit ``SystemDrive`` environment variable by default. + * Fix tests on ARM and PPC: cpu_model_name metadata is no longer required + on Linux. + * tests: Do not allow test suite to execute without unittest2 on Python2, + otherwise man failures occur due to missing 'assertRegex'. + * doc: Update old/dead links. + * Travis CI: drop Python 3.4 support. + +------------------------------------------------------------------- +Sat Oct 12 16:36:04 UTC 2019 - John Vandenberg + +- Fixed execution of test suite, skipping test_collect_metadata +- Fixed Python 2 runtime dependencies and recommends psutil + +------------------------------------------------------------------- +Thu Sep 12 12:39:59 PM UTC 2019 - John Vandenberg + +- Initial spec for v1.6.1 diff --git a/python-pyperf.spec b/python-pyperf.spec new file mode 100644 index 0000000..dee918a --- /dev/null +++ b/python-pyperf.spec @@ -0,0 +1,74 @@ +# +# spec file for package python-pyperf +# +# Copyright (c) 2025 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%{?sle15_python_module_pythons} +Name: python-pyperf +Version: 2.9.0 +Release: 0 +Summary: Python module to run and analyze benchmarks +License: MIT +URL: https://github.com/vstinner/pyperf +Source: https://files.pythonhosted.org/packages/source/p/pyperf/pyperf-%{version}.tar.gz +BuildRequires: %{python_module pip} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} +BuildRequires: fdupes +BuildRequires: python-rpm-macros +Requires(post): update-alternatives +Requires(postun): update-alternatives +Recommends: python-psutil +BuildArch: noarch +# SECTION test requirements +BuildRequires: %{python_module psutil} +BuildRequires: %{python_module pytest} +# /SECTION +%python_subpackages + +%description +Python module to run and analyze benchmarks. + +%prep +%setup -q -n pyperf-%{version} +sed -i '/\/usr\/bin\/env\ python3/d' pyperf/tests/mult_list_bench.py + +%build +%pyproject_wheel + +%install +%pyproject_install +%python_clone -a %{buildroot}%{_bindir}/pyperf +%python_expand %fdupes %{buildroot}%{$python_sitelib} + +%check +%pytest + +%post +%python_install_alternative pyperf + +%postun +%python_uninstall_alternative pyperf + +%files %{python_files} +%doc README.rst +%license COPYING +%python_alternative %{_bindir}/pyperf +%{python_sitelib}/pyperf +%{python_sitelib}/pyperf +%{python_sitelib}/pyperf-%{version}.dist-info + +%changelog