From 24be9f16de488e9e6d3810693fa6458246d534af33c5d01cf4a6a94ec5f26e7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20Su=C3=A1rez=20Hern=C3=A1ndez?= Date: Tue, 10 Jan 2023 12:44:14 +0000 Subject: [PATCH] osc copypac from project:systemsmanagement:saltstack:testing package:salt revision:453 OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:saltstack/salt?expand=0&rev=206 --- _lastrevision | 2 +- fixes-for-python-3.10-502.patch | 66 +++++---------------------------- 2 files changed, 10 insertions(+), 58 deletions(-) diff --git a/_lastrevision b/_lastrevision index 4e19e87..19342cc 100644 --- a/_lastrevision +++ b/_lastrevision @@ -1 +1 @@ -fd11fac966ec6080a5ce39240fd3fa386e547bf1 \ No newline at end of file +cc4854c45cb99305dbd59ffe392c981c49178ae2 \ No newline at end of file diff --git a/fixes-for-python-3.10-502.patch b/fixes-for-python-3.10-502.patch index 2fd0d62..053ed45 100644 --- a/fixes-for-python-3.10-502.patch +++ b/fixes-for-python-3.10-502.patch @@ -1,64 +1,15 @@ -From 5e3ff4d662321c237ddd5b2c5c83f35a84af594c Mon Sep 17 00:00:00 2001 +From d5fae6bd4a4f243115ee220393e05440f0d48b5a Mon Sep 17 00:00:00 2001 From: Victor Zhestkov Date: Tue, 5 Apr 2022 12:04:46 +0300 Subject: [PATCH] Fixes for Python 3.10 (#502) -* Fix _compat.py importlib logic for Python 3.10 - -Use the same logic in _compat.py and entrypoints.py to load -the same importlib.metadata. Python's built in implementation for -Python >= 3.10 and the Salt one for others. - * Use collections.abc.Mapping instead collections.Mapping in state - -Co-authored-by: piterpunk --- - salt/_compat.py | 29 +++++++++++++++++------------ - salt/state.py | 4 ++-- - 2 files changed, 19 insertions(+), 14 deletions(-) + salt/state.py | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) -diff --git a/salt/_compat.py b/salt/_compat.py -index ed404e877b..a402f17a3c 100644 ---- a/salt/_compat.py -+++ b/salt/_compat.py -@@ -11,18 +11,23 @@ if sys.version_info >= (3, 9, 5): - else: - import salt.ext.ipaddress as ipaddress - --# importlib_metadata before version 3.3.0 does not include the functionality we need. --try: -- import importlib_metadata -+if sys.version_info >= (3, 10): -+ # Python 3.10 will include a fix in importlib.metadata which allows us to -+ # get the distribution of a loaded entry-point -+ import importlib.metadata # pylint: disable=no-member,no-name-in-module -+else: -+ # importlib_metadata before version 3.3.0 does not include the functionality we need. -+ try: -+ import importlib_metadata - -- importlib_metadata_version = [ -- int(part) -- for part in importlib_metadata.version("importlib_metadata").split(".") -- if part.isdigit() -- ] -- if tuple(importlib_metadata_version) < (3, 3, 0): -+ importlib_metadata_version = [ -+ int(part) -+ for part in importlib_metadata.version("importlib_metadata").split(".") -+ if part.isdigit() -+ ] -+ if tuple(importlib_metadata_version) < (3, 3, 0): -+ # Use the vendored importlib_metadata -+ import salt.ext.importlib_metadata as importlib_metadata -+ except ImportError: - # Use the vendored importlib_metadata - import salt.ext.importlib_metadata as importlib_metadata --except ImportError: -- # Use the vendored importlib_metadata -- import salt.ext.importlib_metadata as importlib_metadata diff --git a/salt/state.py b/salt/state.py -index f5579fbb69..9f3792fe5f 100644 +index f5579fbb69..61519d5042 100644 --- a/salt/state.py +++ b/salt/state.py @@ -12,7 +12,6 @@ The data sent to the state calls is as follows: @@ -69,15 +20,16 @@ index f5579fbb69..9f3792fe5f 100644 import copy import datetime import fnmatch -@@ -25,6 +24,7 @@ import site - import sys +@@ -26,6 +25,8 @@ import sys import time import traceback -+from collections.abc import Mapping ++from collections.abc import Mapping ++ import salt.channel.client import salt.fileclient -@@ -3405,7 +3405,7 @@ class State: + import salt.loader +@@ -3405,7 +3406,7 @@ class State: """ for chunk in high: state = high[chunk]