Revert "More recent versions of immutables require typing_extensions"

This reverts commit c9a6100a4f503e2640d8baf394aabae49c40b054.
This commit is contained in:
Pedro Algarvio 2023-06-01 16:58:42 +01:00 committed by Pedro Algarvio
parent 9017809e4e
commit 85e4687c4a
2 changed files with 18 additions and 36 deletions

View file

@ -33,16 +33,14 @@ import salt.utils.stringutils
import salt.version
# This is needed until we drop support for python 3.6
has_immutables = False
try:
import immutables
except ImportError:
immutables = None
try:
# typing_extensions is an immutables dependency on newer versions
import typing_extensions
has_immutables = True
except ImportError:
typing_extensions = None
pass
try:
import zlib
@ -434,7 +432,6 @@ def get_tops(extra_mods="", so_mods=""):
backports_abc,
looseversion,
packaging,
immutables,
]
modules = find_site_modules("contextvars")
if modules:
@ -443,8 +440,8 @@ def get_tops(extra_mods="", so_mods=""):
contextvars = py_contextvars
log.debug("Using contextvars %r", contextvars)
mods.append(contextvars)
if typing_extensions is not None:
mods.append(typing_extensions)
if has_immutables:
mods.append(immutables)
for mod in mods:
if mod:
log.debug('Adding module to the tops: "%s"', mod.__name__)

View file

@ -446,15 +446,11 @@ class SSHThinTestCase(TestCase):
"salt.utils.thin.looseversion",
type("looseversion", (), {"__file__": "/site-packages/looseversion"}),
)
@patch(
@patch_if(
salt.utils.thin.has_immutables,
"salt.utils.thin.immutables",
type("immutables", (), {"__file__": "/site-packages/immutables"}),
)
@patch_if(
salt.utils.thin.typing_extensions is not None,
"salt.utils.thin.typing_extensions",
type("typing_extensions", (), {"__file__": "/site-packages/typing_extensions"}),
)
@patch("salt.utils.thin.log", MagicMock())
def test_get_tops(self):
"""
@ -478,10 +474,9 @@ class SSHThinTestCase(TestCase):
"contextvars",
"looseversion",
"packaging",
"immutables",
]
if salt.utils.thin.typing_extensions is not None:
base_tops.append("typing_extensions")
if salt.utils.thin.has_immutables:
base_tops.extend(["immutables"])
tops = []
for top in thin.get_tops(extra_mods="foo,bar"):
if top.find("/") != -1:
@ -556,15 +551,11 @@ class SSHThinTestCase(TestCase):
"salt.utils.thin.looseversion",
type("looseversion", (), {"__file__": "/site-packages/looseversion"}),
)
@patch(
@patch_if(
salt.utils.thin.has_immutables,
"salt.utils.thin.immutables",
type("immutables", (), {"__file__": "/site-packages/immutables"}),
)
@patch_if(
salt.utils.thin.typing_extensions is not None,
"salt.utils.thin.typing_extensions",
type("typing_extensions", (), {"__file__": "/site-packages/typing_extensions"}),
)
@patch("salt.utils.thin.log", MagicMock())
def test_get_tops_extra_mods(self):
"""
@ -588,12 +579,11 @@ class SSHThinTestCase(TestCase):
"contextvars",
"looseversion",
"packaging",
"immutables",
"foo",
"bar.py",
]
if salt.utils.thin.typing_extensions is not None:
base_tops.append("typing_extensions")
if salt.utils.thin.has_immutables:
base_tops.extend(["immutables"])
libs = salt.utils.thin.find_site_modules("contextvars")
foo = {"__file__": os.sep + os.path.join("custom", "foo", "__init__.py")}
bar = {"__file__": os.sep + os.path.join("custom", "bar")}
@ -676,15 +666,11 @@ class SSHThinTestCase(TestCase):
"salt.utils.thin.looseversion",
type("looseversion", (), {"__file__": "/site-packages/looseversion"}),
)
@patch(
@patch_if(
salt.utils.thin.has_immutables,
"salt.utils.thin.immutables",
type("immutables", (), {"__file__": "/site-packages/immutables"}),
)
@patch_if(
salt.utils.thin.typing_extensions is not None,
"salt.utils.thin.typing_extensions",
type("typing_extensions", (), {"__file__": "/site-packages/typing_extensions"}),
)
@patch("salt.utils.thin.log", MagicMock())
def test_get_tops_so_mods(self):
"""
@ -708,12 +694,11 @@ class SSHThinTestCase(TestCase):
"contextvars",
"looseversion",
"packaging",
"immutables",
"foo.so",
"bar.so",
]
if salt.utils.thin.typing_extensions is not None:
base_tops.append("typing_extensions")
if salt.utils.thin.has_immutables:
base_tops.extend(["immutables"])
libs = salt.utils.thin.find_site_modules("contextvars")
with patch("salt.utils.thin.find_site_modules", MagicMock(side_effect=[libs])):
with patch(