Skip to content

Commit 7fc946a

Browse files
committed
Type setuptools/msvc.py dir methods and properties
1 parent af8b322 commit 7fc946a

File tree

1 file changed

+22
-21
lines changed

1 file changed

+22
-21
lines changed

setuptools/msvc.py

+22-21
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717

1818
from more_itertools import unique_everseen
1919

20+
from ._path import StrPath
21+
2022
import distutils.errors
2123

2224
if TYPE_CHECKING:
@@ -135,7 +137,7 @@ def target_dir(self, hidex86=False, x64=False) -> str:
135137
else rf'\{self.target_cpu}'
136138
)
137139

138-
def cross_dir(self, forcex86=False):
140+
def cross_dir(self, forcex86=False) -> str:
139141
r"""
140142
Cross platform specific subfolder.
141143
@@ -306,7 +308,7 @@ def microsoft(self, key, x86=False):
306308
node64 = '' if self.pi.current_is_x86() or x86 else 'Wow6432Node'
307309
return os.path.join('Software', node64, 'Microsoft', key)
308310

309-
def lookup(self, key, name):
311+
def lookup(self, key: str, name: str) -> str | None:
310312
"""
311313
Look for values in registry in Microsoft software registry.
312314
@@ -319,7 +321,7 @@ def lookup(self, key, name):
319321
320322
Return
321323
------
322-
str
324+
str | None
323325
value
324326
"""
325327
key_read = winreg.KEY_READ
@@ -486,7 +488,7 @@ def _as_float_version(version):
486488
return float('.'.join(version.split('.')[:2]))
487489

488490
@property
489-
def VSInstallDir(self):
491+
def VSInstallDir(self) -> str:
490492
"""
491493
Microsoft Visual Studio directory.
492494
@@ -504,7 +506,7 @@ def VSInstallDir(self):
504506
return self.ri.lookup(self.ri.vs, f'{self.vs_ver:0.1f}') or default
505507

506508
@property
507-
def VCInstallDir(self):
509+
def VCInstallDir(self) -> str:
508510
"""
509511
Microsoft Visual C++ directory.
510512
@@ -608,7 +610,7 @@ def WindowsSdkLastVersion(self):
608610
return self._use_last_dir_name(os.path.join(self.WindowsSdkDir, 'lib'))
609611

610612
@property
611-
def WindowsSdkDir(self) -> str | None: # noqa: C901 # is too complex (12) # FIXME
613+
def WindowsSdkDir(self) -> str: # noqa: C901 # is too complex (12) # FIXME
612614
"""
613615
Microsoft Windows SDK directory.
614616
@@ -651,13 +653,13 @@ def WindowsSdkDir(self) -> str | None: # noqa: C901 # is too complex (12) # F
651653
return sdkdir
652654

653655
@property
654-
def WindowsSDKExecutablePath(self):
656+
def WindowsSDKExecutablePath(self) -> str | None:
655657
"""
656658
Microsoft Windows SDK executable directory.
657659
658660
Return
659661
------
660-
str
662+
str | None
661663
path
662664
"""
663665
# Find WinSDK NetFx Tools registry dir name
@@ -688,7 +690,7 @@ def WindowsSDKExecutablePath(self):
688690
return None
689691

690692
@property
691-
def FSharpInstallDir(self):
693+
def FSharpInstallDir(self) -> str:
692694
"""
693695
Microsoft Visual F# directory.
694696
@@ -701,7 +703,7 @@ def FSharpInstallDir(self):
701703
return self.ri.lookup(path, 'productdir') or ''
702704

703705
@property
704-
def UniversalCRTSdkDir(self):
706+
def UniversalCRTSdkDir(self) -> str:
705707
"""
706708
Microsoft Universal CRT SDK directory.
707709
@@ -717,9 +719,9 @@ def UniversalCRTSdkDir(self):
717719
for ver in vers:
718720
sdkdir = self.ri.lookup(self.ri.windows_kits_roots, f'kitsroot{ver}')
719721
if sdkdir:
720-
return sdkdir or ''
722+
return sdkdir
721723

722-
return None
724+
return ''
723725

724726
@property
725727
def UniversalCRTSdkLastVersion(self):
@@ -751,16 +753,15 @@ def NetFxSdkVersion(self):
751753
)
752754

753755
@property
754-
def NetFxSdkDir(self):
756+
def NetFxSdkDir(self) -> str | None:
755757
"""
756758
Microsoft .NET Framework SDK directory.
757759
758760
Return
759761
------
760-
str
762+
str | None
761763
path
762764
"""
763-
sdkdir = ''
764765
for ver in self.NetFxSdkVersion:
765766
loc = os.path.join(self.ri.netfx_sdk, ver)
766767
sdkdir = self.ri.lookup(loc, 'kitsinstallationfolder')
@@ -769,7 +770,7 @@ def NetFxSdkDir(self):
769770
return sdkdir
770771

771772
@property
772-
def FrameworkDir32(self):
773+
def FrameworkDir32(self) -> str:
773774
"""
774775
Microsoft .NET Framework 32bit directory.
775776
@@ -785,7 +786,7 @@ def FrameworkDir32(self):
785786
return self.ri.lookup(self.ri.vc, 'frameworkdir32') or guess_fw
786787

787788
@property
788-
def FrameworkDir64(self):
789+
def FrameworkDir64(self) -> str:
789790
"""
790791
Microsoft .NET Framework 64bit directory.
791792
@@ -855,7 +856,7 @@ def _find_dot_net_versions(self, bits) -> tuple[str, ...]:
855856
return ()
856857

857858
@staticmethod
858-
def _use_last_dir_name(path, prefix=''):
859+
def _use_last_dir_name(path: StrPath, prefix: str = '') -> str:
859860
"""
860861
Return name of the last dir in path or '' if no dir found.
861862
@@ -877,7 +878,7 @@ def _use_last_dir_name(path, prefix=''):
877878
if os.path.isdir(os.path.join(path, dir_name))
878879
and dir_name.startswith(prefix)
879880
)
880-
return next(matching_dirs, None) or ''
881+
return next(matching_dirs, '')
881882

882883

883884
class _EnvironmentDict(TypedDict):
@@ -1200,7 +1201,7 @@ def _sdk_tools(self):
12001201
yield self.si.WindowsSDKExecutablePath
12011202

12021203
@property
1203-
def _sdk_subdir(self):
1204+
def _sdk_subdir(self) -> str:
12041205
"""
12051206
Microsoft Windows SDK version subdir.
12061207
@@ -1379,7 +1380,7 @@ def UCRTIncludes(self):
13791380
return [os.path.join(include, f'{self._ucrt_subdir}ucrt')]
13801381

13811382
@property
1382-
def _ucrt_subdir(self):
1383+
def _ucrt_subdir(self) -> str:
13831384
"""
13841385
Microsoft Universal C Runtime SDK version subdir.
13851386

0 commit comments

Comments
 (0)