# # spec file for package python-curio # # Copyright (c) 2021 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/ # %{?!python_module:%define python_module() python-%{**} python3-%{**}} %define skip_python2 1 %define skip_python36 1 %define skip_python39 1 Name: python-curio Version: 1.5 Release: 1.2 Summary: Concurrent I/O library for Python 3 License: BSD-Source-Code URL: https://github.com/dabeaz/curio Source: https://github.com/dabeaz/curio/archive/%{version}.tar.gz#/curio-%{version}.tar.gz Patch0: make-tests-reproducible.patch BuildRequires: %{python_module base >= 3.6} BuildRequires: %{python_module contextvars} BuildRequires: %{python_module pytest} BuildRequires: %{python_module setuptools} BuildRequires: fdupes BuildRequires: python-rpm-macros BuildArch: noarch %if 0%{?python_version_nodots} == 36 Requires: python-contextvars %endif %python_subpackages %description Curio is a library for performing concurrent I/O with coroutines in Python 3. %prep %setup -q -n curio-%{version} %patch0 -p1 %build %python_build %install %python_install %python_expand %fdupes %{buildroot}%{$python_sitelib} %check # disabled network tests skiptest_allpython="test_ssl_outgoing or test_socket_funcs" # https://github.com/dabeaz/curio/issues/336 # The dependency tree on curio is too large to just define skip_python36. # Let's hope the python36 flavor will be in Tumbleweed before upstream drops # Python 3.6 support completely, so that a dedicated staging project can work # out the skips on all the depending packages. skiptest_python36_only=" or test_uqueue_asyncio_consumer or test_uevent_get_asyncio or test_universal" %if 0%{?python3_version_nodots} == 36 skiptest_python3_only="$skiptest_python36_only" %endif %pytest -k "not (${skiptest_allpython} ${skiptest_$python_only})" %files %{python_files} %license LICENSE %doc CHANGES README.rst %{python_sitelib}/curio %{python_sitelib}/curio-%{version}*-info %changelog * Tue Aug 24 2021 John Paul Adrian Glaubitz - Update to 1.5: * Fixed Issue #340 related to the handling of daemonic tasks in a TaskGroup. * Changed all cancellation related exceptions to inherit from BaseException instead of Exception. * Added ps() and where() commands to the monitor that can be used from the Curio REPL when you run `python -m curio`. * Wed Dec 9 2020 Benjamin Greiner - Reenable python36 build and skip the failing tests. The dependency tree on curio is too large to just define skip_python36 * gh#dabeaz/curio#336 * gh#openSUSE/python-rpm-macros#66 * Thu Dec 3 2020 Benjamin Greiner - Although upstream reduced their requirement to python >= 3.6, we keep python >= 3.7 and skip the upcoming python36 flavor, because the unittests fail. * https://github.com/dabeaz/curio/commit/1ea5653 * gh#dabeaz/curio#336 * gh#openSUSE/python-rpm-macros#66 * Thu Oct 22 2020 Steve Kowalik - Update to 1.4: * Fixed minimum requirement in setup.py * Moved the Pytest plugin to the examples directory. * Refined the detection of coroutines to use collections.abc.Coroutine. * Added a Result object. * Mon Jun 15 2020 Ondřej Súkup - Update to 1.2 * Removed hard dependency on contextvars * Added a default selector timeout of 1 second for Windows. * First crack at a Curio repl. * Added a pytest plugin * Slight refinement to TaskGroup result reporting. * Thu Mar 5 2020 Antonio Larrosa - Add patch to make tests reproducible and not depend on a race condition: * make-tests-reproducible.patch * Thu Mar 5 2020 Ondřej Súkup - update to 1.1 - drop gh_313.patch * Fixed a very subtle edge case involving epoll() and duplicated file descriptors on Linux * Mon Feb 24 2020 Ondřej Súkup - update to 1.0 - minimal python version bump to 3.7 - please see CHANGES file for detailed changelog - add gh_313.patch to fix epool problem * Sun Jun 2 2019 Jan Engelhardt - Avoid name repetition in summary. * Tue May 14 2019 Tomáš Chvátal - Make the tests executed * Sat May 11 2019 Torsten Gruner - Initial release 0.9