%global srcname anyio %if %{defined fedora} # As of 2022-03-04, neither EL9 or EPEL9 have python3-uvloop %bcond_without tests # As of 2022-03-04, neither EL9 or EPEL9 have python3-sphinx-autodoc-typehints %bcond_without docs %endif %global common_description %{expand: AnyIO is an asynchronous networking and concurrency library that works on top of either asyncio or trio. It implements trio-like structured concurrency (SC) on top of asyncio, and works in harmony with the native SC of trio itself.} %global python3_pkgversion 3.11 Name: python-%{srcname} Version: 3.7.1 Release: 3%{?dist} Summary: Compatibility layer for multiple asynchronous event loop implementations License: MIT URL: https://github.com/agronholm/anyio Source: %pypi_source BuildArch: noarch %description %{common_description} %package -n python%{python3_pkgversion}-%{srcname} Summary: %{summary} BuildRequires: python%{python3_pkgversion}-devel %description -n python%{python3_pkgversion}-%{srcname} %{common_description} %pyproject_extras_subpkg -n python3-%{srcname} trio %if %{with docs} %package -n python-%{srcname}-doc Summary: anyio documentation %description -n python-%{srcname}-doc Documentation for anyio %endif %prep %autosetup -n %{srcname}-%{version} -p1 # disable coverage test requirement sed -e '/"coverage/d' -i pyproject.toml # relax the trio version for trio extra # some tests fail with trio for now # we might need to upgrade to # https://github.com/agronholm/anyio/commit/082169494be46f2f6d32db2c8950ba374504e048 or later sed -i 's/"trio < 0.22"/"trio"/' pyproject.toml # despite the prescense of a pytest "network" marker, socket tests still fail # without internet access rm tests/test_sockets.py %generate_buildrequires %pyproject_buildrequires -x trio%{?with_tests:,test}%{?with_docs:,doc} %build %pyproject_wheel %if %{with docs} # generate html docs PYTHONPATH=${PWD} sphinx-build-3 docs html # remove the sphinx-build leftovers rm -rf html/.{doctrees,buildinfo} %endif %install %pyproject_install %pyproject_save_files %{srcname} %if %{with tests} %check # tests deselected with -k fail with trio 0.22 %pytest -Wdefault -m "not network" -k "not ((trio and exception_group) or test_properties)" %endif %files -n python%{python3_pkgversion}-%{srcname} -f %{pyproject_files} %doc README.rst %if %{with docs} %files -n python-%{srcname}-doc %doc html %license LICENSE %endif %changelog * Fri Jan 26 2024 Fedora Release Engineering - 3.7.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Sun Jan 21 2024 Fedora Release Engineering - 3.7.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Mon Aug 7 2023 Lumír Balhar - 3.7.1-1 - Update to 3.7.1 (rhbz#2085426) * Fri Jul 21 2023 Fedora Release Engineering - 3.7.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Sat Jul 01 2023 Miro Hrončok - 3.7.0-1 - Update to 3.7.0 * Sat Jul 01 2023 Python Maint - 3.5.0-6 - Rebuilt for Python 3.12 * Fri Jan 20 2023 Fedora Release Engineering - 3.5.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Fri Jul 22 2022 Fedora Release Engineering - 3.5.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Tue Jun 14 2022 Python Maint - 3.5.0-3 - Rebuilt for Python 3.11 * Tue Mar 29 2022 Miro Hrončok - 3.5.0-2 - Fix for pytest7 - Fixes: rhbz#2069194 * Fri Mar 04 2022 Carl George - 3.5.0-1 - Latest upstream rhbz#2007952 - Enable test suite - Only run test on Fedora - Only build docs on Fedora * Fri Jan 21 2022 Fedora Release Engineering - 3.3.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Fri Oct 08 2021 Benjamin A. Beasley - 3.3.1-2 - Add metapackage for “trio” extra * Wed Sep 08 2021 Fabian Affolter - 3.3.1-1 - Update to latest upstream release 3.3.1 (closes rhbz#1975540) * Fri Jul 23 2021 Fedora Release Engineering - 3.2.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Tue Jun 22 2021 Carl George - 3.2.0-1 - Latest upstream - Fixes: rhbz#1926501 - Fixes: rhbz#1900506 * Fri Jun 04 2021 Python Maint - 2.0.2-2 - Rebuilt for Python 3.10 * Thu Jan 28 2021 Dan Čermák - 2.0.2-1 - New upstream release 2.0.2 * Wed Jan 27 2021 Fedora Release Engineering - 1.3.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Tue Jul 28 2020 Fedora Release Engineering - 1.3.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Tue Jun 02 2020 Carl George - 1.3.1-1 - Latest upstream * Tue May 26 2020 Miro Hrončok - 1.2.3-3 - Rebuilt for Python 3.9 * Thu Jan 30 2020 Fedora Release Engineering - 1.2.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Mon Jan 13 2020 Carl George - 1.2.3-1 - Latest upstream rhbz#1786957 * Thu Oct 03 2019 Miro Hrončok - 1.0.0-4 - Rebuilt for Python 3.8.0rc1 (#1748018) * Mon Aug 19 2019 Miro Hrončok - 1.0.0-3 - Rebuilt for Python 3.8 * Fri Jul 26 2019 Fedora Release Engineering - 1.0.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Thu May 16 2019 Carl George - 1.0.0-1 - Initial package