in Xcode/XcodeVersioner.py [0:0]
def xcode_info(self, app_path):
DVTFoundation_path = (
"%s/Contents/SharedFrameworks/" + "DVTFoundation.framework"
) % app_path
desired_classes = ["DVTToolsInfo"]
DVTFoundation = self._load_objc_framework(
"DVTFoundation", DVTFoundation_path, desired_classes
)
x_info = DVTFoundation.DVTToolsInfo.toolsInfo()
x_v = x_info.toolsVersion()
x_b = x_info.toolsBuildVersion()
app_info = []
app_info.append(["major_version", str(x_v.versionMajorComponent())])
app_info.append(["minor_version", str(x_v.versionMinorComponent())])
app_info.append(["patch_version", str(x_v.versionUpdateComponent())])
app_info.append(["build_version", x_b.name()])
is_beta = bool(x_info.isBeta())
app_info.append(["is_beta", is_beta])
if is_beta:
app_info.append(["beta_version", str(x_info.toolsBetaVersion())])
else:
app_info.append(["beta_version", "0"])
return app_info