[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 3/6] iotests: Change imports for Python 3.13
From: |
John Snow |
Subject: |
[PULL 3/6] iotests: Change imports for Python 3.13 |
Date: |
Mon, 15 Jul 2024 13:32:38 -0400 |
Python 3.13 isn't out yet, but it's in beta and Fedora is ramping up to
make it the default system interpreter for Fedora 41.
They moved our cheese for where ContextManager lives; add a conditional
to locate it while we support both pre-3.9 and 3.13+.
Signed-off-by: John Snow <jsnow@redhat.com>
Message-id: 20240626232230.408004-4-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com>
---
tests/qemu-iotests/testenv.py | 7 ++++++-
tests/qemu-iotests/testrunner.py | 9 ++++++---
2 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/tests/qemu-iotests/testenv.py b/tests/qemu-iotests/testenv.py
index 588f30a4f14..96d69e56963 100644
--- a/tests/qemu-iotests/testenv.py
+++ b/tests/qemu-iotests/testenv.py
@@ -25,7 +25,12 @@
import random
import subprocess
import glob
-from typing import List, Dict, Any, Optional, ContextManager
+from typing import List, Dict, Any, Optional
+
+if sys.version_info >= (3, 9):
+ from contextlib import AbstractContextManager as ContextManager
+else:
+ from typing import ContextManager
DEF_GDB_OPTIONS = 'localhost:12345'
diff --git a/tests/qemu-iotests/testrunner.py b/tests/qemu-iotests/testrunner.py
index 7b322272e92..2e236c8fa39 100644
--- a/tests/qemu-iotests/testrunner.py
+++ b/tests/qemu-iotests/testrunner.py
@@ -27,11 +27,14 @@
import shutil
import sys
from multiprocessing import Pool
-from typing import List, Optional, Any, Sequence, Dict, \
- ContextManager
-
+from typing import List, Optional, Any, Sequence, Dict
from testenv import TestEnv
+if sys.version_info >= (3, 9):
+ from contextlib import AbstractContextManager as ContextManager
+else:
+ from typing import ContextManager
+
def silent_unlink(path: Path) -> None:
try:
--
2.45.0
- [PULL 0/6] Python patches, John Snow, 2024/07/15
- [PULL 1/6] python: linter changes for pylint 3.x, John Snow, 2024/07/15
- [PULL 2/6] python: Do not use pylint 3.2.4 with python 3.8, John Snow, 2024/07/15
- [PULL 3/6] iotests: Change imports for Python 3.13,
John Snow <=
- [PULL 4/6] python: enable testing for 3.13, John Snow, 2024/07/15
- [PULL 5/6] Python: bump minimum sphinx version to 3.4.3, John Snow, 2024/07/15
- [PULL 6/6] docs: remove Sphinx 1.x compatibility code, John Snow, 2024/07/15
- Re: [PULL 0/6] Python patches, Richard Henderson, 2024/07/15