diff --git a/anyio-3.6.2.tar.gz b/anyio-3.6.2.tar.gz deleted file mode 100644 index 41b8787..0000000 --- a/anyio-3.6.2.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:25ea0d673ae30af41a0c442f81cf3b38c7e79fdc7b60335a4c14e05eb0947421 -size 140378 diff --git a/anyio-3.7.1.tar.gz b/anyio-3.7.1.tar.gz new file mode 100644 index 0000000..5c1ae7e --- /dev/null +++ b/anyio-3.7.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44a3c9aba0f5defa43261a8b3efb97891f2bd7d804e0e1f56419befa1adfc780 +size 142927 diff --git a/python-anyio.changes b/python-anyio.changes index 2f92e3d..e7b886e 100644 --- a/python-anyio.changes +++ b/python-anyio.changes @@ -1,3 +1,139 @@ +------------------------------------------------------------------- +Thu Nov 16 15:31:07 UTC 2023 - Dirk Müller + +- update to 3.7.1: + * Fixed sending large buffers via UNIX stream sockets on + asyncio + * Fixed several minor documentation issues (broken links to + classes, missing classes or attributes) + * Dropped support for Python 3.6 + * Improved type annotations: + * Several functions and methods that were previously annotated + as accepting ``Coroutine[Any, Any, Any]`` as the return type + of the callable have been amended to accept ``Awaitable[Any]`` + instead, to allow a slightly broader set of coroutine-like + inputs, like ``async_generator_asend`` objects returned from + the ``asend()`` method of async generators, and to match + the ``trio`` annotations: + * ``anyio.run()`` + * ``anyio.from_thread.run()`` + * ``TaskGroup.start_soon()`` + * ``TaskGroup.start()`` + * ``BlockingPortal.call()`` + * ``BlockingPortal.start_task_soon()`` + * ``BlockingPortal.start_task()`` + * Changed ``TLSAttribute.shared_ciphers`` to match the + documented semantics of ``SSLSocket.shared_ciphers`` + of always returning ``None`` for client-side streams + * Fixed ``CapacityLimiter`` on the asyncio backend to order + waiting tasks in the FIFO order (instead of LIFO) + * Fixed ``CancelScope.cancel()`` not working on asyncio if + called before entering the scope + * Fixed ``open_signal_receiver()`` inconsistently yielding + integers instead of ``signal.Signals`` instances on the + ``trio`` backend + * Fixed ``to_thread.run_sync()`` hanging on asyncio if the + target callable raises ``StopIteration`` + * Fixed ``start_blocking_portal()`` raising an unwarranted + * ``RuntimeError: This portal is not running`` if a task raises + an exception that causes the event loop to be closed + * Fixed ``current_effective_deadline()`` not returning ``-inf`` + on asyncio when the currently active cancel scope has been + cancelled (PR by Ganden Schaffner) + * Fixed the ``OP_IGNORE_UNEXPECTED_EOF`` flag in an SSL context + created by default in ``TLSStream.wrap()`` being inadvertently + set on Python 3.11.3 and 3.10.11 + * Fixed ``CancelScope`` to properly handle asyncio task + uncancellation on Python 3.11 + * Fixed ``OSError`` when trying to use + ``create_tcp_listener()`` to bind to a link-local + * IPv6 address (and worked around related bugs in ``uvloop``) + * Worked around a `PyPy bug + `_ + when using ``anyio.getaddrinfo()`` with for IPv6 link-local + addresses containing interface names + +------------------------------------------------------------------- +Thu Nov 16 15:30:25 UTC 2023 - Dirk Müller + +- update to 3.7.1: + * Fixed sending large buffers via UNIX stream sockets on + asyncio + * Fixed several minor documentation issues (broken links to + classes, missing classes or + * attributes) + * **3.7.0** + * Dropped support for Python 3.6 + * Improved type annotations: + * Several functions and methods that were previously annotated + as accepting + * ``Coroutine[Any, Any, Any]`` as the return type of the + callable have been amended to + * accept ``Awaitable[Any]`` instead, to allow a slightly + broader set of coroutine-like + * inputs, like ``async_generator_asend`` objects returned from + the ``asend()`` method + * of async generators, and to match the ``trio`` annotations: + * ``anyio.run()`` + * ``anyio.from_thread.run()`` + * ``TaskGroup.start_soon()`` + * ``TaskGroup.start()`` + * ``BlockingPortal.call()`` + * ``BlockingPortal.start_task_soon()`` + * ``BlockingPortal.start_task()`` + * Note that this change involved only changing the type + annotations; run-time + * functionality was not altered. + * The ``TaskStatus`` class is now a generic protocol, and + should be parametrized to + * indicate the type of the value passed to + ``task_status.started()`` + * The ``Listener`` class is now covariant in its stream type + * ``create_memory_object_stream()`` now allows passing only + ``item_type`` + * Object receive streams are now covariant and object send + streams are correspondingly + * contravariant + * Changed ``TLSAttribute.shared_ciphers`` to match the + documented semantics of + * ``SSLSocket.shared_ciphers`` of always returning ``None`` for + client-side streams + * Fixed ``CapacityLimiter`` on the asyncio backend to order + waiting tasks in the FIFO + * order (instead of LIFO) (PR by Conor Stevenson) + * Fixed ``CancelScope.cancel()`` not working on asyncio if + called before entering the + * scope + * Fixed ``open_signal_receiver()`` inconsistently yielding + integers instead of + * ``signal.Signals`` instances on the ``trio`` backend + * Fixed ``to_thread.run_sync()`` hanging on asyncio if the + target callable raises + * ``StopIteration`` + * Fixed ``start_blocking_portal()`` raising an unwarranted + * ``RuntimeError: This portal is not running`` if a task raises + an exception that causes + * the event loop to be closed + * Fixed ``current_effective_deadline()`` not returning ``-inf`` + on asyncio when the + * currently active cancel scope has been cancelled (PR by + Ganden Schaffner) + * Fixed the ``OP_IGNORE_UNEXPECTED_EOF`` flag in an SSL context + created by default in + * ``TLSStream.wrap()`` being inadvertently set on Python 3.11.3 + and 3.10.11 + * Fixed ``CancelScope`` to properly handle asyncio task + uncancellation on Python 3.11 + * (PR by Nikolay Bryskin) + * Fixed ``OSError`` when trying to use + ``create_tcp_listener()`` to bind to a link-local + * IPv6 address (and worked around related bugs in ``uvloop``) + * Worked around a `PyPy bug + `_ + * when using ``anyio.getaddrinfo()`` with for IPv6 link-local + addresses containing + * interface names + ------------------------------------------------------------------- Thu Nov 2 10:42:51 UTC 2023 - Jiri Slaby @@ -8,7 +144,7 @@ Thu Nov 2 10:42:51 UTC 2023 - Jiri Slaby Thu May 4 07:29:22 UTC 2023 - Steve Kowalik - Add patch fix-failing-tls-tests.patch: - * Fix test failures with Python TLS changes. + * Fix test failures with Python TLS changes. ------------------------------------------------------------------- Fri Apr 21 12:21:49 UTC 2023 - Dirk Müller @@ -29,7 +165,7 @@ Tue Mar 7 06:29:28 UTC 2023 - Steve Kowalik ------------------------------------------------------------------- Fri Dec 16 15:06:08 UTC 2022 - Markéta Machová -- Skip trio exception tests for now +- Skip trio exception tests for now * https://github.com/agronholm/anyio/issues/508 * https://github.com/agronholm/anyio/commit/787cb0c2e53c2a3307873d202fbd49dc5eac4e96 @@ -59,7 +195,7 @@ Sun Mar 27 18:32:27 UTC 2022 - Ben Greiner ------------------------------------------------------------------- Tue Feb 15 16:06:39 UTC 2022 - Dirk Müller -- skip some tests for older distros (lack of TLSv1.3 support) +- skip some tests for older distros (lack of TLSv1.3 support) ------------------------------------------------------------------- Sat Jan 15 16:36:24 UTC 2022 - Dirk Müller @@ -102,7 +238,7 @@ Sat Oct 16 21:03:37 UTC 2021 - Dirk Müller * Changed unconnected UDP sockets to be always bound to a local port (on "any" interface) to avoid errors on asyncio + Windows * Fixed cancellation problem on asyncio where level-triggered cancellation - for **all** parent cancel scopes would not resume after exiting a + for **all** parent cancel scopes would not resume after exiting a shielded nested scope ------------------------------------------------------------------- diff --git a/python-anyio.spec b/python-anyio.spec index 13037fd..e439dcf 100644 --- a/python-anyio.spec +++ b/python-anyio.spec @@ -18,26 +18,24 @@ %{?sle15_python_module_pythons} Name: python-anyio -Version: 3.6.2 +Version: 3.7.1 Release: 0 Summary: High level compatibility layer for asynchronous event loop implementations License: MIT URL: https://github.com/agronholm/anyio Source: https://files.pythonhosted.org/packages/source/a/anyio/anyio-%{version}.tar.gz -# PATCH-FIX-OPENSUSE Support trio >= 0.22 just enough for asyncclick -Patch0: support-trio-0.22.patch -# PATCH-FIX-UPSTREAM Based on gh#agronholm/anyio#553 -Patch1: fix-failing-tls-tests.patch # PATCH-FIX-UPSTREAM see gh#agronholm/anyio#626 Patch2: tests-test_fileio.py-don-t-follow-symlinks-in-dev.patch BuildRequires: %{python_module contextlib2 if %python-base < 3.7} BuildRequires: %{python_module dataclasses if %python-base < 3.7} BuildRequires: %{python_module idna >= 2.8} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module psutil} BuildRequires: %{python_module setuptools_scm} -BuildRequires: %{python_module setuptools} BuildRequires: %{python_module sniffio >= 1.1} BuildRequires: %{python_module toml} BuildRequires: %{python_module typing_extensions if %python-base < 3.8} +BuildRequires: %{python_module wheel} BuildRequires: python-rpm-macros >= 20210127.3a18043 # SECTION test requirements BuildRequires: %{python_module hypothesis >= 4.0} @@ -69,10 +67,10 @@ against it to run unmodified on asyncio, curio and trio. %autosetup -p1 -n anyio-%{version} %build -%python_build +%pyproject_wheel %install -%python_install +%pyproject_install %python_expand %fdupes %{buildroot}%{$python_sitelib} %check @@ -85,13 +83,13 @@ donttest+=" or (TestUDPSocket and (ipv4 or ipv6))" # wrong localhost address donttest+=" or (TestTCPStream and test_happy_eyeballs)" donttest+=" or (TestTCPStream and test_connection_refused)" +donttest+=" or test_bind_link_local" # does not raise an exception donttest+=" or (TestTLSStream and test_ragged_eofs)" %if 0%{?suse_version} < 1550 donttest+=" or (test_send_eof_not_implemented)" %endif -# anyio 3.6.2 and lower is broken with new trio, some tests fail https://github.com/agronholm/anyio/commit/787cb0c2e53c2a3307873d202fbd49dc5eac4e96 -donttest+=" or (test_exception_group and trio)" +#donttest+=" or (test_exception_group and trio)" %pytest -m "not network" -k "not (${donttest:4})" -ra %files %{python_files}