Skip to content

Commit 8685c80

Browse files
authored
Empty tuple instead of None for PlatformInfo version properties fallthrough (#4754)
2 parents 2c77cd2 + 50d671b commit 8685c80

File tree

2 files changed

+8
-7
lines changed

2 files changed

+8
-7
lines changed

newsfragments/4754.feature.rst

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Changed the ``WindowsSdkVersion``, ``FrameworkVersion32`` and ``FrameworkVersion64`` properties of ``setuptools.msvc.PlatformInfo`` to return an empty `tuple` instead of `None` as a fallthrough case -- by :user:`Avasam`

setuptools/msvc.py

+7-7
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
import distutils.errors
2121

2222
if TYPE_CHECKING:
23-
from typing_extensions import NotRequired
23+
from typing_extensions import LiteralString, NotRequired
2424

2525
# https://github.com/python/mypy/issues/8166
2626
if not TYPE_CHECKING and platform.system() == 'Windows':
@@ -573,7 +573,7 @@ def _guess_vc_legacy(self):
573573
return self.ri.lookup(self.ri.vc, '%0.1f' % self.vs_ver) or default_vc
574574

575575
@property
576-
def WindowsSdkVersion(self):
576+
def WindowsSdkVersion(self) -> tuple[LiteralString, ...]:
577577
"""
578578
Microsoft Windows SDK versions for specified MSVC++ version.
579579
@@ -592,7 +592,7 @@ def WindowsSdkVersion(self):
592592
return '8.1', '8.1a'
593593
elif self.vs_ver >= 14.0:
594594
return '10.0', '8.1'
595-
return None
595+
return ()
596596

597597
@property
598598
def WindowsSdkLastVersion(self):
@@ -800,7 +800,7 @@ def FrameworkDir64(self):
800800
return self.ri.lookup(self.ri.vc, 'frameworkdir64') or guess_fw
801801

802802
@property
803-
def FrameworkVersion32(self):
803+
def FrameworkVersion32(self) -> tuple[str, ...]:
804804
"""
805805
Microsoft .NET Framework 32bit versions.
806806
@@ -812,7 +812,7 @@ def FrameworkVersion32(self):
812812
return self._find_dot_net_versions(32)
813813

814814
@property
815-
def FrameworkVersion64(self):
815+
def FrameworkVersion64(self) -> tuple[str, ...]:
816816
"""
817817
Microsoft .NET Framework 64bit versions.
818818
@@ -823,7 +823,7 @@ def FrameworkVersion64(self):
823823
"""
824824
return self._find_dot_net_versions(64)
825825

826-
def _find_dot_net_versions(self, bits):
826+
def _find_dot_net_versions(self, bits) -> tuple[str, ...]:
827827
"""
828828
Find Microsoft .NET Framework versions.
829829
@@ -851,7 +851,7 @@ def _find_dot_net_versions(self, bits):
851851
return 'v3.5', 'v2.0.50727'
852852
elif self.vs_ver == 8.0:
853853
return 'v3.0', 'v2.0.50727'
854-
return None
854+
return ()
855855

856856
@staticmethod
857857
def _use_last_dir_name(path, prefix=''):

0 commit comments

Comments
 (0)