diff --git a/utils/build-presets.ini b/utils/build-presets.ini index 2e83a50dbbe9a..b857c8799a39e 100644 --- a/utils/build-presets.ini +++ b/utils/build-presets.ini @@ -379,6 +379,8 @@ sourcekit-lsp # swift-inspect swiftsyntax swiftformat +swift-testing +swift-testing-macros skstresstester @@ -402,6 +404,8 @@ install-swiftpm install-swift-driver install-swiftsyntax install-swiftformat +install-swift-testing +install-swift-testing-macros [preset: buildbot_incremental,tools=RA,stdlib=RA,apple_silicon] mixin-preset=buildbot_incremental,tools=RA,stdlib=RA @@ -835,6 +839,8 @@ mixin-preset= llbuild swiftpm swift-driver +swift-testing +swift-testing-macros xctest libicu swiftdocc @@ -849,6 +855,8 @@ install-llbuild install-swiftpm install-swift-driver install-swiftsyntax +install-swift-testing +install-swift-testing-macros install-xctest install-libicu install-prefix=/usr @@ -1169,12 +1177,15 @@ llbuild swiftpm swift-driver xctest +swift-testing +swift-testing-macros foundation libdispatch swiftsyntax swiftformat indexstore-db sourcekit-lsp + install-llvm install-static-linux-config install-swift @@ -1186,6 +1197,8 @@ install-swiftsyntax install-foundation install-libdispatch install-xctest +install-swift-testing +install-swift-testing-macros install-swiftformat [preset: buildbot_incremental_linux,long_test] @@ -1309,6 +1322,8 @@ swift-driver # Failing to build in CI: rdar://78408440 # swift-inspect swiftsyntax +swift-testing +swift-testing-macros swiftformat playgroundsupport indexstore-db @@ -1351,6 +1366,8 @@ install-llbuild install-swiftpm install-swift-driver install-swiftsyntax +install-swift-testing +install-swift-testing-macros install-playgroundsupport install-sourcekit-lsp install-swiftformat @@ -1652,6 +1669,8 @@ swiftpm # swift-inspect swift-driver swiftsyntax +swift-testing +swift-testing-macros swiftformat swiftdocc @@ -1671,6 +1690,8 @@ install-llbuild install-swiftpm install-swift-driver install-swiftsyntax +install-swift-testing +install-swift-testing-macros install-swiftdocc install-swiftformat diff --git a/utils/build.ps1 b/utils/build.ps1 index 6a94a49ec453c..eeeeb0e57cd60 100644 --- a/utils/build.ps1 +++ b/utils/build.ps1 @@ -187,6 +187,7 @@ $ArchX64 = @{ PlatformInstallRoot = "$BinaryCache\x64\Windows.platform"; SDKInstallRoot = "$BinaryCache\x64\Windows.platform\Developer\SDKs\Windows.sdk"; XCTestInstallRoot = "$BinaryCache\x64\Windows.platform\Developer\Library\XCTest-development"; + SwiftTestingInstallRoot = "$BinaryCache\x64\Windows.platform\Developer\Library\Testing-development"; ToolchainInstallRoot = "$BinaryCache\x64\toolchains\$ProductVersion+Asserts"; } @@ -202,6 +203,7 @@ $ArchX86 = @{ PlatformInstallRoot = "$BinaryCache\x86\Windows.platform"; SDKInstallRoot = "$BinaryCache\x86\Windows.platform\Developer\SDKs\Windows.sdk"; XCTestInstallRoot = "$BinaryCache\x86\Windows.platform\Developer\Library\XCTest-development"; + SwiftTestingInstallRoot = "$BinaryCache\x86\Windows.platform\Developer\Library\Testing-development"; } $ArchARM64 = @{ @@ -217,6 +219,7 @@ $ArchARM64 = @{ SDKInstallRoot = "$BinaryCache\arm64\Windows.platform\Developer\SDKs\Windows.sdk"; XCTestInstallRoot = "$BinaryCache\arm64\Windows.platform\Developer\Library\XCTest-development"; ToolchainInstallRoot = "$BinaryCache\arm64\toolchains\$ProductVersion+Asserts"; + SwiftTestingInstallRoot = "$BinaryCache\arm64\Windows.platform\Developer\Library\Testing-development"; } $HostArch = switch ($HostArchName) { @@ -284,6 +287,7 @@ enum TargetComponent { Dispatch Foundation XCTest + SwiftTesting } function Get-TargetProjectBinaryCache($Arch, [TargetComponent]$Project) { @@ -311,6 +315,7 @@ enum HostComponent { LMDB SymbolKit DocC + SwiftTestingMacros } function Get-HostProjectBinaryCache([HostComponent]$Project) { @@ -1548,11 +1553,43 @@ function Build-XCTest([Platform]$Platform, $Arch, [switch]$Test = $false) { dispatch_DIR = "$DispatchBinaryCache\cmake\modules"; Foundation_DIR = "$FoundationBinaryCache\cmake\modules"; } + $TestingDefines) + } +} + +function Build-SwiftTesting([Platform]$Platform, $Arch, [switch]$Test = $false) { + $SwiftTestingBinaryCache = Get-TargetProjectBinaryCache $Arch SwiftTesting + + Isolate-EnvVars { + if ($Test) { + # TODO: Test + return + } else { + $Targets = @("default") + $InstallPath = "$($Arch.SwiftTestingInstallRoot)\usr" + } + Build-CMakeProject ` + -Src $SourceCache\swift-testing ` + -Bin $SwiftTestingBinaryCache ` + -InstallTo $InstallPath ` + -Arch $Arch ` + -Platform $Platform ` + -UseBuiltCompilers C,CXX,Swift ` + -BuildTargets $Targets ` + -Defines (@{ + BUILD_SHARED_LIBS = "YES"; + CMAKE_BUILD_WITH_INSTALL_RPATH = "YES"; + SwiftSyntax_DIR = (Get-HostProjectCMakeModules Compilers); + # FIXME: Build the plugin for the builder and specify the path. + SwiftTesting_MACRO = "NO"; + }) + } +} + +function Write-PlatformInfoPlist([Platform]$Platform, $Arch) { $PList = [IO.Path]::Combine($Arch.BinaryCache, "${Platform}.platform".ToLower(), "Info.plist") - Invoke-Program $python -c "import plistlib; print(str(plistlib.dumps({ 'DefaultProperties': { 'XCTEST_VERSION': 'development', 'SWIFTC_FLAGS': ['-use-ld=lld'] } }), encoding='utf-8'))" ` + Invoke-Program $python -c "import plistlib; print(str(plistlib.dumps({ 'DefaultProperties': { 'XCTEST_VERSION': 'development', 'SWIFT_TESTING_VERSION': 'development', 'SWIFTC_FLAGS': ['-use-ld=lld'] } }), encoding='utf-8'))" ` -OutFile "$PList" - } } # Copies files installed by CMake from the arch-specific platform root, @@ -1956,6 +1993,21 @@ function Build-SourceKitLSP($Arch) { } } +function Build-SwiftTestingMacros($Arch) { + Build-CMakeProject ` + -Src $SourceCache\swift-testing\Sources\TestingMacros ` + -Bin (Get-HostProjectBinaryCache SwiftTestingMacros) ` + -InstallTo "$($Arch.ToolchainInstallRoot)\usr" ` + -Arch $Arch ` + -Platform Windows ` + -UseBuiltCompilers Swift ` + -SwiftSDK ([IO.Path]::Combine((Get-InstallDir $HostArch), "Platforms", "Windows.platform", "Developer", "SDKs", "Windows.sdk")) ` + -BuildTargets default ` + -Defines @{ + SwiftSyntax_DIR = (Get-HostProjectCMakeModules Compilers); + } +} + function Install-HostToolchain() { if ($ToBatch) { return } @@ -2116,6 +2168,8 @@ if (-not $SkipBuild) { Invoke-BuildStep Build-FoundationMacros -Build Windows $BuildArch Invoke-BuildStep Build-Foundation Windows $Arch Invoke-BuildStep Build-XCTest Windows $Arch + Invoke-BuildStep Build-SwiftTesting Windows $Arch + Invoke-BuildStep Write-PlatformInfoPlist Windows $Arch } } @@ -2139,6 +2193,8 @@ if (-not $ToBatch) { } if (-not $SkipBuild) { + # TestingMacros can't be built before the standard library for the host as it is required for the Swift code. + Invoke-BuildStep Build-SwiftTestingMacros $HostArch Invoke-BuildStep Build-SQLite $HostArch Invoke-BuildStep Build-System $HostArch Invoke-BuildStep Build-ToolsSupportCore $HostArch @@ -2193,6 +2249,9 @@ if (-not $IsCrossCompiling) { if ($Test -contains "xctest") { Build-XCTest Windows $HostArch -Test } + if ($Test -contains "testing") { + Build-SwiftTesting Windows $HostArch -Test + } if ($Test -contains "llbuild") { Build-LLBuild $HostArch -Test } if ($Test -contains "swiftpm") { Test-PackageManager $HostArch } } diff --git a/utils/build_swift/build_swift/driver_arguments.py b/utils/build_swift/build_swift/driver_arguments.py index 360b507b82e87..cd9480cc7b3a3 100644 --- a/utils/build_swift/build_swift/driver_arguments.py +++ b/utils/build_swift/build_swift/driver_arguments.py @@ -811,6 +811,16 @@ def create_argument_parser(): option(['--wasmkit'], toggle_true('build_wasmkit'), help='build WasmKit') + option('--swift-testing', toggle_true('build_swift_testing'), + help='build Swift Testing') + option('--install-swift-testing', toggle_true('install_swift_testing'), + help='install Swift Testing') + option('--swift-testing-macros', toggle_true('build_swift_testing_macros'), + help='build Swift Testing macro plugin') + option('--install-swift-testing-macros', + toggle_true('install_swift_testing_macros'), + help='install Swift Testing macro plugin') + option('--xctest', toggle_true('build_xctest'), help='build xctest') diff --git a/utils/build_swift/tests/expected_options.py b/utils/build_swift/tests/expected_options.py index c90e7367d1e17..5d1a6a6898aac 100644 --- a/utils/build_swift/tests/expected_options.py +++ b/utils/build_swift/tests/expected_options.py @@ -95,6 +95,8 @@ 'build_swiftpm': False, 'build_swift_driver': False, 'build_swift_libexec': True, + 'build_swift_testing': False, + 'build_swift_testing_macros': False, 'build_early_swift_driver': True, 'build_early_swiftsyntax': True, 'build_swiftsyntax': False, @@ -111,6 +113,8 @@ 'install_static_linux_config': False, 'install_swiftpm': False, 'install_swiftsyntax': False, + 'install_swift_testing': False, + 'install_swift_testing_macros': False, 'install_swift_driver': False, 'install_swiftdocc': False, 'swiftsyntax_verify_generated_files': False, @@ -565,6 +569,8 @@ class BuildScriptImplOption(_BaseOption): SetTrueOption('--swiftpm', dest='build_swiftpm'), SetTrueOption('--swift-driver', dest='build_swift_driver'), SetTrueOption('--swiftsyntax', dest='build_swiftsyntax'), + SetTrueOption('--swift-testing', dest='build_swift_testing'), + SetTrueOption('--swift-testing-macros', dest='build_swift_testing_macros'), SetTrueOption('--skstresstester', dest='build_skstresstester'), SetTrueOption('--swiftformat', dest='build_swiftformat'), SetTrueOption('--swiftdocc', dest='build_swiftdocc'), @@ -644,6 +650,9 @@ class BuildScriptImplOption(_BaseOption): EnableOption('--install-llvm', dest='install_llvm'), EnableOption('--install-static-linux-config', dest='install_static_linux_config'), EnableOption('--install-swiftsyntax', dest='install_swiftsyntax'), + EnableOption('--install-swift-testing', dest='install_swift_testing'), + EnableOption('--install-swift-testing-macros', + dest='install_swift_testing_macros'), EnableOption('--swiftsyntax-verify-generated-files', dest='swiftsyntax_verify_generated_files'), EnableOption('--swiftsyntax-enable-rawsyntax-validation', diff --git a/utils/swift_build_support/swift_build_support/build_script_invocation.py b/utils/swift_build_support/swift_build_support/build_script_invocation.py index d14f79359bc24..772c6e0f15988 100644 --- a/utils/swift_build_support/swift_build_support/build_script_invocation.py +++ b/utils/swift_build_support/swift_build_support/build_script_invocation.py @@ -662,6 +662,10 @@ def compute_product_pipelines(self): # Begin the post build-script-impl build phase. builder.begin_pipeline() + builder.add_product(products.SwiftTestingMacros, + is_enabled=self.args.build_swift_testing_macros) + builder.add_product(products.SwiftTesting, + is_enabled=self.args.build_swift_testing) builder.add_product(products.SwiftPM, is_enabled=self.args.build_swiftpm) builder.add_product(products.SwiftSyntax, diff --git a/utils/swift_build_support/swift_build_support/productpipeline_list_builder.py b/utils/swift_build_support/swift_build_support/productpipeline_list_builder.py index 09c16611090ef..056e8af2f117f 100644 --- a/utils/swift_build_support/swift_build_support/productpipeline_list_builder.py +++ b/utils/swift_build_support/swift_build_support/productpipeline_list_builder.py @@ -101,7 +101,7 @@ def add_product(self, product_cls, is_enabled): self.current_pipeline.append(product_cls, is_enabled) def add_impl_product(self, product_cls, is_enabled): - """Add a non-impl product to the current pipeline begin constructed""" + """Add an impl product to the current pipeline begin constructed""" assert self.current_pipeline is not None assert self.is_current_pipeline_impl assert product_cls.is_build_script_impl_product() diff --git a/utils/swift_build_support/swift_build_support/products/__init__.py b/utils/swift_build_support/swift_build_support/products/__init__.py index 3af36fe224847..e2d657702b169 100644 --- a/utils/swift_build_support/swift_build_support/products/__init__.py +++ b/utils/swift_build_support/swift_build_support/products/__init__.py @@ -30,6 +30,8 @@ from .sourcekitlsp import SourceKitLSP from .staticswiftlinux import StaticSwiftLinuxConfig from .swift import Swift +from .swift_testing import SwiftTesting +from .swift_testing_macros import SwiftTestingMacros from .swiftdocc import SwiftDocC from .swiftdoccrender import SwiftDocCRender from .swiftdriver import SwiftDriver @@ -65,6 +67,8 @@ 'SwiftInspect', 'SwiftPM', 'SwiftDriver', + 'SwiftTesting', + 'SwiftTestingMacros', 'EarlySwiftDriver', 'XCTest', 'SwiftSyntax', diff --git a/utils/swift_build_support/swift_build_support/products/product.py b/utils/swift_build_support/swift_build_support/products/product.py index ababc351f95ee..a3f2bc91c2148 100644 --- a/utils/swift_build_support/swift_build_support/products/product.py +++ b/utils/swift_build_support/swift_build_support/products/product.py @@ -293,7 +293,8 @@ def target_for_platform(self, platform, arch, include_version=True): arch, self.args.darwin_deployment_version_xros) return target - def generate_darwin_toolchain_file(self, platform, arch): + def generate_darwin_toolchain_file(self, platform, arch, + macos_deployment_version=None): """ Generates a new CMake tolchain file that specifies Darwin as a target plaftorm. @@ -306,9 +307,14 @@ def generate_darwin_toolchain_file(self, platform, arch): cmake_osx_sysroot = xcrun.sdk_path(platform) - target = self.target_for_platform(platform, arch) - if not target: - raise RuntimeError('Unhandled platform {}?!'.format(platform)) + if platform == 'macosx': + if macos_deployment_version is None: + macos_deployment_version = self.args.darwin_deployment_version_osx + target = '{}-apple-macosx{}'.format(arch, macos_deployment_version) + else: + target = self.target_for_platform(platform, arch) + if not target: + raise RuntimeError('Unhandled platform {}?!'.format(platform)) toolchain_args = {} @@ -429,7 +435,8 @@ def generate_linux_toolchain_file(self, platform, arch): return toolchain_file - def generate_toolchain_file_for_darwin_or_linux(self, host_target): + def generate_toolchain_file_for_darwin_or_linux( + self, host_target, override_macos_deployment_version=None): """ Checks `host_target` platform and generates a new CMake tolchain file appropriate for that target plaftorm (either Darwin or Linux). Defines @@ -448,7 +455,9 @@ def generate_toolchain_file_for_darwin_or_linux(self, host_target): toolchain_file = None if self.is_darwin_host(host_target): - toolchain_file = self.generate_darwin_toolchain_file(platform, arch) + toolchain_file = self.generate_darwin_toolchain_file( + platform, arch, + macos_deployment_version=override_macos_deployment_version) self.cmake_options.define('CMAKE_TOOLCHAIN_FILE:PATH', toolchain_file) elif platform == "linux": toolchain_file = self.generate_linux_toolchain_file(platform, arch) diff --git a/utils/swift_build_support/swift_build_support/products/swift_testing.py b/utils/swift_build_support/swift_build_support/products/swift_testing.py new file mode 100644 index 0000000000000..474724baddb0e --- /dev/null +++ b/utils/swift_build_support/swift_build_support/products/swift_testing.py @@ -0,0 +1,117 @@ +# swift_build_support/products/swift_testing.py -----------------*- python -*- +# +# This source file is part of the Swift.org open source project +# +# Copyright (c) 2024 Apple Inc. and the Swift project authors +# Licensed under Apache License v2.0 with Runtime Library Exception +# +# See https://swift.org/LICENSE.txt for license information +# See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors +# +# ---------------------------------------------------------------------------- + +import os + +from build_swift.build_swift.versions import Version + +from . import cmake_product +from . import product +from . import swift +from . import swift_testing_macros + + +class SwiftTesting(product.Product): + @classmethod + def is_build_script_impl_product(cls): + return False + + @classmethod + def is_before_build_script_impl_product(cls): + return False + + @classmethod + def product_source_name(cls): + return "swift-testing" + + @classmethod + def get_dependencies(cls): + return [swift.Swift, + swift_testing_macros.SwiftTestingMacros] + + def should_build(self, host_target): + return True + + def should_test(self, host_target): + # TODO: Implement. + return False + + def should_install(self, host_target): + return self.args.install_swift_testing_macros + + def _cmake_product(self, host_target): + build_root = os.path.dirname(self.build_dir) + build_dir = os.path.join( + build_root, '%s-%s' % (self.product_name(), host_target)) + + return SwiftTestingCMakeShim( + args=self.args, + toolchain=self.toolchain, + source_dir=self.source_dir, + build_dir=build_dir) + + def _build_with_cmake(self, host_target): + self._cmake_product(host_target).build(host_target) + + def build(self, host_target): + self._build_with_cmake(host_target) + + # For Darwin host, 'build' is only called for the builder. + # Manually iterate the cross compile hosts. + if self.has_cross_compile_hosts() and self.is_darwin_host(host_target): + for target in self.args.cross_compile_hosts: + self._build_with_cmake(target) + + # FIXME: build testing library for 'stdlib_deployment_targets'? + pass + + def _install_with_cmake(self, host_target): + self._cmake_product(host_target).install(host_target) + + def install(self, host_target): + self._install_with_cmake(host_target) + + # For Darwin host, 'install' is only called for the builder. + # Manually iterate the cross compile hosts. + if self.has_cross_compile_hosts() and self.is_darwin_host(host_target): + for target in self.args.cross_compile_hosts: + self._install_with_cmake(target) + + +class SwiftTestingCMakeShim(cmake_product.CMakeProduct): + def build(self, host_target): + override_deployment_version = None + if host_target.startswith('macosx'): + if Version(self.args.darwin_deployment_version_osx) < Version('10.15'): + override_deployment_version = '10.15' + + self.cmake_options.define('BUILD_SHARED_LIBS', 'YES') + + # Use empty CMake install prefix, since the `DESTDIR` env var is set by + # `install_with_cmake` later which already has the same prefix. + self.cmake_options.define('CMAKE_INSTALL_PREFIX', '') + + self.cmake_options.define('CMAKE_BUILD_TYPE', self.args.build_variant) + + # FIXME: If we build macros for the builder, specify the path. + self.cmake_options.define('SwiftTesting_MACRO', 'NO') + + self.generate_toolchain_file_for_darwin_or_linux( + host_target, override_macos_deployment_version=override_deployment_version) + self.build_with_cmake([], self.args.build_variant, [], + prefer_native_toolchain=True) + + def install(self, host_target): + install_destdir = self.host_install_destdir(host_target) + install_prefix = install_destdir + self.args.install_prefix + + self.install_with_cmake(['install'], install_prefix) diff --git a/utils/swift_build_support/swift_build_support/products/swift_testing_macros.py b/utils/swift_build_support/swift_build_support/products/swift_testing_macros.py new file mode 100644 index 0000000000000..38e2d8ab3a8fa --- /dev/null +++ b/utils/swift_build_support/swift_build_support/products/swift_testing_macros.py @@ -0,0 +1,112 @@ +# swift_build_support/products/swift_testing_macros.py ----------*- python -*- +# +# This source file is part of the Swift.org open source project +# +# Copyright (c) 2024 Apple Inc. and the Swift project authors +# Licensed under Apache License v2.0 with Runtime Library Exception +# +# See https://swift.org/LICENSE.txt for license information +# See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors +# +# ---------------------------------------------------------------------------- + +import os + +from build_swift.build_swift.versions import Version + +from . import cmake_product +from . import product +from . import swift + + +class SwiftTestingMacros(product.Product): + @classmethod + def is_build_script_impl_product(cls): + return False + + @classmethod + def is_before_build_script_impl_product(cls): + return False + + @classmethod + def product_source_name(cls): + return "swift-testing/Sources/TestingMacros" + + @classmethod + def get_dependencies(cls): + return [swift.Swift] + + def should_build(self, host_target): + return True + + def should_test(self, host_target): + return False + + def should_install(self, host_target): + return self.args.install_swift_testing_macros + + def _cmake_product(self, host_target): + build_root = os.path.dirname(self.build_dir) + build_dir = os.path.join( + build_root, '%s-%s' % (self.product_name(), host_target)) + + return SwiftTestingMacrosCMakeShim( + args=self.args, + toolchain=self.toolchain, + source_dir=self.source_dir, + build_dir=build_dir) + + def _build_with_cmake(self, host_target): + self._cmake_product(host_target).build(host_target) + + def build(self, host_target): + self._build_with_cmake(host_target) + + # For Darwin host, 'build' is only called for the builder. + # Manually iterate the cross compile hosts. + if self.has_cross_compile_hosts() and self.is_darwin_host(host_target): + for target in self.args.cross_compile_hosts: + self._build_with_cmake(target) + + def _install_with_cmake(self, host_target): + self._cmake_product(host_target).install(host_target) + + def install(self, host_target): + self._install_with_cmake(host_target) + + # For Darwin host, 'install' is only called for the builder. + # Manually iterate the cross compile hosts. + if self.has_cross_compile_hosts() and self.is_darwin_host(host_target): + for target in self.args.cross_compile_hosts: + self._install_with_cmake(target) + + +class SwiftTestingMacrosCMakeShim(cmake_product.CMakeProduct): + def build(self, host_target): + override_deployment_version = None + if host_target.startswith('macosx'): + if Version(self.args.darwin_deployment_version_osx) < Version('10.15'): + override_deployment_version = '10.15' + + # Use empty CMake install prefix, since the `DESTDIR` env var is set by + # `install_with_cmake` later which already has the same prefix. + self.cmake_options.define('CMAKE_INSTALL_PREFIX', '') + + self.cmake_options.define('CMAKE_BUILD_TYPE', self.args.build_variant) + + build_root = os.path.dirname(self.build_dir) + swift_build_dir = os.path.join( + '..', build_root, '%s-%s' % ('swift', host_target)) + swift_cmake_dir = os.path.join(swift_build_dir, 'cmake', 'modules') + self.cmake_options.define('SwiftSyntax_DIR:PATH', swift_cmake_dir) + + self.generate_toolchain_file_for_darwin_or_linux( + host_target, override_macos_deployment_version=override_deployment_version) + self.build_with_cmake([], self.args.build_variant, [], + prefer_native_toolchain=True) + + def install(self, host_target): + install_destdir = self.host_install_destdir(host_target) + install_prefix = install_destdir + self.args.install_prefix + + self.install_with_cmake(['install'], install_prefix) diff --git a/utils/swift_build_support/swift_build_support/products/swiftpm.py b/utils/swift_build_support/swift_build_support/products/swiftpm.py index c9024e64bdaab..ea6e71d193ef2 100644 --- a/utils/swift_build_support/swift_build_support/products/swiftpm.py +++ b/utils/swift_build_support/swift_build_support/products/swiftpm.py @@ -21,6 +21,7 @@ from . import llvm from . import product from . import swift +from . import swift_testing from . import xctest from .. import shell from ..targets import StdlibDeploymentTarget @@ -143,4 +144,5 @@ def get_dependencies(cls): libdispatch.LibDispatch, foundation.Foundation, xctest.XCTest, - llbuild.LLBuild] + llbuild.LLBuild, + swift_testing.SwiftTesting] diff --git a/utils/update_checkout/update-checkout-config.json b/utils/update_checkout/update-checkout-config.json index fc7247acb86ba..feaac98246d51 100644 --- a/utils/update_checkout/update-checkout-config.json +++ b/utils/update_checkout/update-checkout-config.json @@ -34,6 +34,8 @@ "remote": { "id": "apple/swift-system" } }, "swift-stress-tester": { "remote": { "id": "swiftlang/swift-stress-tester" } }, + "swift-testing": { + "remote": { "id": "swiftlang/swift-testing" } }, "swift-corelibs-xctest": { "remote": { "id": "apple/swift-corelibs-xctest" } }, "swift-corelibs-foundation": { @@ -128,6 +130,7 @@ "swift-syntax": "main", "swift-system": "1.3.0", "swift-stress-tester": "main", + "swift-testing": "main", "swift-corelibs-xctest": "main", "swift-corelibs-foundation": "main", "swift-foundation-icu": "main", @@ -179,6 +182,7 @@ "swift-syntax": "release/6.0", "swift-system": "1.3.0", "swift-stress-tester": "release/6.0", + "swift-testing": "release/6.0", "swift-corelibs-xctest": "release/6.0", "swift-corelibs-foundation": "release/6.0", "swift-foundation": "release/6.0", @@ -230,6 +234,7 @@ "swift-syntax": "release/6.0.0", "swift-system": "1.3.0", "swift-stress-tester": "release/6.0.0", + "swift-testing": "release/6.0.0", "swift-corelibs-xctest": "release/6.0.0", "swift-corelibs-foundation": "release/6.0.0", "swift-foundation": "release/6.0.0", @@ -328,6 +333,7 @@ "swift-syntax": "main", "swift-system": "1.3.0", "swift-stress-tester": "main", + "swift-testing": "main", "swift-corelibs-xctest": "main", "swift-corelibs-foundation": "main", "swift-corelibs-libdispatch": "main", @@ -705,6 +711,7 @@ "swift-syntax": "main", "swift-system": "1.3.0", "swift-stress-tester": "main", + "swift-testing": "main", "swift-corelibs-xctest": "main", "swift-corelibs-foundation": "main", "swift-corelibs-libdispatch": "main",