forked from pool/python-trio
Accepting request 965606 from home:bnavigator:branches:devel:languages:python
- Update to version 0.20.0 * You can now conveniently spawn a child process in a background task and interact it with on the fly using process = await nursery.start(run_process, ...). See run_process for more details. We recommend most users switch to this new API. Also note that: - trio.open_process has been deprecated in favor of trio.lowlevel.open_process, - The aclose method on Process has been deprecated along with async with process_obj. (#1104) * Now context variables set with contextvars are preserved when running functions in a worker thread with trio.to_thread.run_sync, or when running functions from the worker thread in the parent Trio thread with trio.from_thread.run, and trio.from_thread.run_sync. This is done by automatically copying the contextvars context. trio.lowlevel.spawn_system_task now also receives an optional context argument. (#2160) * Trio now avoids creating cyclic garbage when a MultiError is generated and filtered, including invisibly within the cancellation system. This means errors raised through nurseries and cancel scopes should result in less GC latency. (#2063) * Trio now deterministically cleans up file descriptors that were opened before subprocess creation fails. Previously, they would remain open until the next run of the garbage collector. (#2193) * Add compatibility with OpenSSL 3.0 on newer Python and PyPy versions by working around SSLEOFError not being raised properly. (#2203) * Fix a bug that could cause Process.wait to hang on Linux OBS-URL: https://build.opensuse.org/request/show/965606 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-trio?expand=0&rev=22
This commit is contained in:
parent
d9bf2aeb47
commit
bc80c8af88
@ -1,3 +1,41 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Mar 29 09:40:18 UTC 2022 - Ben Greiner <code@bnavigator.de>
|
||||||
|
|
||||||
|
- Update to version 0.20.0
|
||||||
|
* You can now conveniently spawn a child process in a background
|
||||||
|
task and interact it with on the fly using process = await
|
||||||
|
nursery.start(run_process, ...). See run_process for more
|
||||||
|
details. We recommend most users switch to this new API. Also
|
||||||
|
note that:
|
||||||
|
- trio.open_process has been deprecated in favor of
|
||||||
|
trio.lowlevel.open_process,
|
||||||
|
- The aclose method on Process has been deprecated along with
|
||||||
|
async with process_obj. (#1104)
|
||||||
|
* Now context variables set with contextvars are preserved when
|
||||||
|
running functions in a worker thread with
|
||||||
|
trio.to_thread.run_sync, or when running functions from the
|
||||||
|
worker thread in the parent Trio thread with
|
||||||
|
trio.from_thread.run, and trio.from_thread.run_sync. This is
|
||||||
|
done by automatically copying the contextvars context.
|
||||||
|
trio.lowlevel.spawn_system_task now also receives an optional
|
||||||
|
context argument. (#2160)
|
||||||
|
* Trio now avoids creating cyclic garbage when a MultiError is
|
||||||
|
generated and filtered, including invisibly within the
|
||||||
|
cancellation system. This means errors raised through nurseries
|
||||||
|
and cancel scopes should result in less GC latency. (#2063)
|
||||||
|
* Trio now deterministically cleans up file descriptors that were
|
||||||
|
opened before subprocess creation fails. Previously, they would
|
||||||
|
remain open until the next run of the garbage collector.
|
||||||
|
(#2193)
|
||||||
|
* Add compatibility with OpenSSL 3.0 on newer Python and PyPy
|
||||||
|
versions by working around SSLEOFError not being raised
|
||||||
|
properly. (#2203)
|
||||||
|
* Fix a bug that could cause Process.wait to hang on Linux
|
||||||
|
systems using pidfds, if another task were to access
|
||||||
|
Process.returncode after the process exited but before wait
|
||||||
|
woke up (#2209)
|
||||||
|
- Drop trio-pr2043-py310ssl-deprecationwarnings.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sun Dec 12 18:53:24 UTC 2021 - Ben Greiner <code@bnavigator.de>
|
Sun Dec 12 18:53:24 UTC 2021 - Ben Greiner <code@bnavigator.de>
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package python-trio
|
# spec file for package python-trio
|
||||||
#
|
#
|
||||||
# Copyright (c) 2021 SUSE LLC
|
# Copyright (c) 2022 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -19,18 +19,16 @@
|
|||||||
%{?!python_module:%define python_module() python3-%{**}}
|
%{?!python_module:%define python_module() python3-%{**}}
|
||||||
%define skip_python2 1
|
%define skip_python2 1
|
||||||
Name: python-trio
|
Name: python-trio
|
||||||
Version: 0.19.0
|
Version: 0.20.0
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Python async/await-native I/O library
|
Summary: Python async/await-native I/O library
|
||||||
License: Apache-2.0 OR MIT
|
License: Apache-2.0 OR MIT
|
||||||
URL: https://github.com/python-trio/trio
|
URL: https://github.com/python-trio/trio
|
||||||
Source: https://github.com/python-trio/trio/archive/v%{version}.tar.gz#/trio-%{version}.tar.gz
|
Source: https://github.com/python-trio/trio/archive/v%{version}.tar.gz#/trio-%{version}.tar.gz
|
||||||
#PATCH-FIX-UPSTREAM trio-pr2043-py310ssl-deprecationwarnings.patch -- gh#python-trio/trio#2043
|
|
||||||
Patch0: https://github.com/python-trio/trio/pull/2043.patch#/trio-pr2043-py310ssl-deprecationwarnings.patch
|
|
||||||
BuildRequires: %{python_module astor >= 0.8}
|
BuildRequires: %{python_module astor >= 0.8}
|
||||||
BuildRequires: %{python_module async_generator >= 1.9}
|
BuildRequires: %{python_module async_generator >= 1.9}
|
||||||
BuildRequires: %{python_module attrs >= 19.2.0}
|
BuildRequires: %{python_module attrs >= 19.2.0}
|
||||||
BuildRequires: %{python_module base >= 3.6}
|
BuildRequires: %{python_module base >= 3.7}
|
||||||
BuildRequires: %{python_module idna}
|
BuildRequires: %{python_module idna}
|
||||||
BuildRequires: %{python_module outcome}
|
BuildRequires: %{python_module outcome}
|
||||||
BuildRequires: %{python_module pyOpenSSL}
|
BuildRequires: %{python_module pyOpenSSL}
|
||||||
@ -38,7 +36,6 @@ BuildRequires: %{python_module pytest >= 5.0}
|
|||||||
BuildRequires: %{python_module setuptools}
|
BuildRequires: %{python_module setuptools}
|
||||||
# for protocol specifications
|
# for protocol specifications
|
||||||
BuildRequires: %{python_module sniffio}
|
BuildRequires: %{python_module sniffio}
|
||||||
BuildRequires: %{python_module contextvars >= 2.1 if %python-base < 3.7}
|
|
||||||
BuildRequires: %{python_module sortedcontainers}
|
BuildRequires: %{python_module sortedcontainers}
|
||||||
BuildRequires: %{python_module trustme}
|
BuildRequires: %{python_module trustme}
|
||||||
BuildRequires: %{python_module yapf >= 0.27.0}
|
BuildRequires: %{python_module yapf >= 0.27.0}
|
||||||
@ -51,9 +48,6 @@ Requires: python-idna
|
|||||||
Requires: python-outcome
|
Requires: python-outcome
|
||||||
Requires: python-sniffio
|
Requires: python-sniffio
|
||||||
Requires: python-sortedcontainers
|
Requires: python-sortedcontainers
|
||||||
%if 0%{?python_version_nodots} < 37
|
|
||||||
Requires: python-contextvars >= 2.1
|
|
||||||
%endif
|
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
%python_subpackages
|
%python_subpackages
|
||||||
|
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:453afdf9a9b128f271d7d89626c060af475cd8297b4c7d7730f0e377c359244e
|
|
||||||
size 486036
|
|
3
trio-0.20.0.tar.gz
Normal file
3
trio-0.20.0.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:353ab8b9ad925e74665ae869af6fe0b39d7eee0fa86edd4e2dd1f52b96996fd5
|
||||||
|
size 491254
|
@ -1,35 +0,0 @@
|
|||||||
From 0639f87e58bae400070c5642f6fb339c7bb6e704 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Kyle Altendorf <sda@fstab.net>
|
|
||||||
Date: Tue, 22 Jun 2021 11:33:12 -0400
|
|
||||||
Subject: [PATCH] update tests for SSL related deprecations in 3.10
|
|
||||||
|
|
||||||
---
|
|
||||||
trio/tests/test_ssl.py | 8 ++++++--
|
|
||||||
1 file changed, 6 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/trio/tests/test_ssl.py b/trio/tests/test_ssl.py
|
|
||||||
index 75f99df13..933e0be47 100644
|
|
||||||
--- a/trio/tests/test_ssl.py
|
|
||||||
+++ b/trio/tests/test_ssl.py
|
|
||||||
@@ -80,7 +80,10 @@ def client_ctx(request):
|
|
||||||
if request.param in ["default", "tls13"]:
|
|
||||||
return ctx
|
|
||||||
elif request.param == "tls12":
|
|
||||||
- ctx.options |= ssl.OP_NO_TLSv1_3
|
|
||||||
+ if sys.version_info >= (3, 7):
|
|
||||||
+ ctx.maximum_version = ssl.TLSVersion.TLSv1_2
|
|
||||||
+ else:
|
|
||||||
+ ctx.options |= ssl.OP_NO_TLSv1_3
|
|
||||||
return ctx
|
|
||||||
else: # pragma: no cover
|
|
||||||
assert False
|
|
||||||
@@ -1200,7 +1203,8 @@ async def test_selected_npn_protocol_before_handshake(client_ctx):
|
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.filterwarnings(
|
|
||||||
- r"ignore: ssl module. NPN is deprecated, use ALPN instead:UserWarning"
|
|
||||||
+ r"ignore: ssl module. NPN is deprecated, use ALPN instead:UserWarning",
|
|
||||||
+ r"ignore:ssl NPN is deprecated, use ALPN instead:DeprecationWarning",
|
|
||||||
)
|
|
||||||
async def test_selected_npn_protocol_when_not_set(client_ctx):
|
|
||||||
# NPN protocol still returns None when it's not set,
|
|
Loading…
Reference in New Issue
Block a user