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:
Dirk Mueller 2022-03-29 11:37:25 +00:00 committed by Git OBS Bridge
parent d9bf2aeb47
commit bc80c8af88
5 changed files with 44 additions and 47 deletions

View File

@ -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>

View File

@ -1,7 +1,7 @@
#
# 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
# remain the property of their copyright owners, unless otherwise agreed
@ -19,18 +19,16 @@
%{?!python_module:%define python_module() python3-%{**}}
%define skip_python2 1
Name: python-trio
Version: 0.19.0
Version: 0.20.0
Release: 0
Summary: Python async/await-native I/O library
License: Apache-2.0 OR MIT
URL: https://github.com/python-trio/trio
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 async_generator >= 1.9}
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 outcome}
BuildRequires: %{python_module pyOpenSSL}
@ -38,7 +36,6 @@ BuildRequires: %{python_module pytest >= 5.0}
BuildRequires: %{python_module setuptools}
# for protocol specifications
BuildRequires: %{python_module sniffio}
BuildRequires: %{python_module contextvars >= 2.1 if %python-base < 3.7}
BuildRequires: %{python_module sortedcontainers}
BuildRequires: %{python_module trustme}
BuildRequires: %{python_module yapf >= 0.27.0}
@ -51,9 +48,6 @@ Requires: python-idna
Requires: python-outcome
Requires: python-sniffio
Requires: python-sortedcontainers
%if 0%{?python_version_nodots} < 37
Requires: python-contextvars >= 2.1
%endif
BuildArch: noarch
%python_subpackages

View File

@ -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
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:353ab8b9ad925e74665ae869af6fe0b39d7eee0fa86edd4e2dd1f52b96996fd5
size 491254

View File

@ -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,