%global srcname asv %global jquery_version 3.3.1 # Testing using conda requires the network to install packages. %bcond_with network Name: %{srcname} Version: 0.4.2 Release: 9%{?dist} Summary: Airspeed Velocity: A simple Python history benchmarking tool # Mostly BSD; MIT for extern & www/vendor/*.{css,js} License: BSD and MIT URL: https://github.com/airspeed-velocity/asv Source0: %{pypi_source} # Not needed upstream. Patch0001: 0001-Don-t-allow-extension-build-errors-to-be-ignored.patch # Not wanted upstream: https://github.com/airspeed-velocity/asv/pull/762 Patch0002: 0002-Unbundle-JSON-minify.patch # Fedora-specific. Patch0003: 0003-Remove-unnecessary-shebang.patch # https://github.com/airspeed-velocity/asv/pull/857 Patch0004: 0004-Disable-W3C-mode-in-Chrome-webdriver.patch Patch0005: 0005-Fix-pypy-version-environment-test-on-latest-pypy.patch BuildRequires: python3-devel BuildRequires: python3dist(setuptools) BuildRequires: python3dist(json-minify) BuildRequires: python3dist(six) >= 1.4 BuildRequires: web-assets-devel BuildRequires: (js-jquery >= %{jquery_version} with js-jquery < 4) BuildRequires: python3dist(sphinx) BuildRequires: python3-sphinx-bootstrap-theme %if %{with network} BuildRequires: conda %endif %ifarch x86_64 aarch64 BuildRequires: chromedriver BuildRequires: chromium %endif BuildRequires: gcc-c++ BuildRequires: git-core BuildRequires: hg %ifnarch aarch64 %{power64} BuildRequires: pypy %endif BuildRequires: python3dist(feedparser) BuildRequires: python3dist(numpy) BuildRequires: python3dist(pip) BuildRequires: python3dist(pytest) BuildRequires: python3dist(python-hglib) >= 1.5 BuildRequires: python3dist(rpy2) BuildRequires: python3dist(scipy) BuildRequires: python3dist(selenium) BuildRequires: python3dist(virtualenv) BuildRequires: python3dist(wheel) Provides: python3-%{srcname}%{?_isa} = %{version}-%{release} %{?python_provide:%python_provide python3-%{srcname}} Provides: bundled(python-asizeof) = 5.10 Provides: bundled(nodejs-blueimp-md5) = 2.10.0 Provides: bundled(nodejs-flot) = 0.8.3 Provides: bundled(nodejs-flot-axislabels) = 0.20120405ga0d11e5 Provides: bundled(nodejs-flot-orderbars) = 0.20100920 Provides: bundled(nodejs-stupid-table) = 1.0.1 Requires: python3dist(setuptools) Requires: python3dist(six) >= 1.4 Requires: python3dist(json-minify) Requires: (js-jquery >= %{jquery_version} with js-jquery < 4) Suggests: conda Suggests: python3-virtualenv Suggests: python3-hglib >= 1.5 Suggests: hg Suggests: git # Recommend "all the Pythons", like tox. Recommends: python27 Recommends: python34 Recommends: python35 Recommends: python36 Recommends: python37 Recommends: python38 Recommends: python39 Recommends: pypy Recommends: pypy3 Recommends: python2 Recommends: python3 %description Airspeed Velocity (asv) is a tool for benchmarking Python packages over their lifetime. It is primarily designed to benchmark a single project over its lifetime using a given suite of benchmarks. The results are displayed in an interactive web frontend that requires only a basic static webserver to host. %package -n %{srcname}-doc Summary: asv documentation %description -n %{srcname}-doc Documentation for asv %prep %autosetup -n %{srcname}-%{version} -p1 # Remove bundled egg-info rm -rf %{srcname}.egg-info # Remove useless shebang sed -i -e '/^#!\//, 1d' asv/extern/asizeof.py %build %py3_build # generate html docs PYTHONPATH=$(ls -d build/lib*) \ sphinx-build-3 docs/source html # remove the sphinx-build leftovers rm -rf html/.{doctrees,buildinfo} %install %py3_install # Unbundle jQuery pushd %{buildroot}%{python3_sitearch}/asv/www/vendor rm jquery-%{jquery_version}.min.js ln -s %{_jsdir}/jquery/3/jquery.min.js jquery-%{jquery_version}.min.js popd %check # Must do this to load from buildroot rm -rf asv %ifarch x86_64 aarch64 WEBDRIVER="--webdriver=ChromeHeadless" %endif %{pytest} -ra $WEBDRIVER \ %if %{fedora} >= 34 -k 'not test_web' \ %endif %{nil} %files -n %{srcname} %license LICENSE.rst %doc README.rst %{_bindir}/asv %{python3_sitearch}/%{srcname}/ %{python3_sitearch}/%{srcname}-%{version}-py%{python3_version}.egg-info/ %files -n %{srcname}-doc %doc html %license LICENSE.rst %changelog * Sat Jan 29 2022 Elliott Sales de Andrade - 0.4.2-9 - Drop i686 dependency on Chromium - Fix test for pypy environment setup * Wed Jan 19 2022 Fedora Release Engineering - 0.4.2-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Wed Jul 21 2021 Fedora Release Engineering - 0.4.2-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Fri Jun 04 2021 Python Maint - 0.4.2-7 - Rebuilt for Python 3.10 * Sun May 16 2021 Elliott Sales de Andrade - 0.4.2-6 - Fix incorrect bundled Provides * Tue Jan 26 2021 Fedora Release Engineering - 0.4.2-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Mon Jan 18 2021 Elliott Sales de Andrade - 0.4.2-4 - Skip web test on Fedora 34 temporarily * Mon Jul 27 2020 Fedora Release Engineering - 0.4.2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Tue May 26 2020 Miro Hrončok - 0.4.2-2 - Rebuilt for Python 3.9 * Sat May 16 2020 Elliott Sales de Andrade - 0.4.2-1 - Update to latest version * Mon May 11 2020 Elliott Sales de Andrade - 0.4.1-8 - Loosen up jQuery dependency * Sun Feb 23 2020 Elliott Sales de Andrade - 0.4.1-7 - Re-bundle flot - Small cleanups to spec * Tue Jan 28 2020 Fedora Release Engineering - 0.4.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Thu Oct 03 2019 Miro Hrončok - 0.4.1-5 - Rebuilt for Python 3.8.0rc1 (#1748018) * Mon Aug 19 2019 Miro Hrončok - 0.4.1-4 - Rebuilt for Python 3.8 * Wed Jul 24 2019 Fedora Release Engineering - 0.4.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Mon Jul 22 2019 Elliott Sales de Andrade - 0.4.1-2 - Fix tests against latest Chrome webdriver * Tue Jun 04 2019 Elliott Sales de Andrade - 0.4.1-1 - Update to latest version * Sun May 26 2019 Elliott Sales de Andrade - 0.4-1 - Update to latest version * Sat Feb 09 2019 Elliott Sales de Andrade - 0.3.1-7 - Rebuild against jQuery 3.3.1 * Thu Jan 31 2019 Fedora Release Engineering - 0.3.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Fri Dec 07 2018 Elliott Sales de Andrade - 0.3.1-5 - Improve testing of web app - Fix jQuery unbundling * Wed Dec 05 2018 Elliott Sales de Andrade - 0.3.1-4 - Add missing json-minify Requires * Tue Nov 13 2018 Elliott Sales de Andrade - 0.3.1-3 - Mark bundled JS libraries * Mon Nov 12 2018 Elliott Sales de Andrade - 0.3.1-2 - Unbundle json-minify, jQuery, and flot * Sun Oct 21 2018 Elliott Sales de Andrade - 0.3.1-1 - Update to latest version * Sat Oct 20 2018 Elliott Sales de Andrade - 0.3-1 - Update to latest version * Sun Nov 19 2017 Elliott Sales de Andrade - 0.2.1-1 - Initial package.