From aa89147743399f765b90ea4c64b3c8bd0c4f63ca Mon Sep 17 00:00:00 2001 From: Pavel Yaskevich Date: Mon, 7 Jul 2025 00:31:15 -0700 Subject: [PATCH] [Concurrency] Remove deprecated `Task.startSynchronously` API This is the original spelling which was not accepted. We kept it for a bit to give adopters time to switch but it's time to remove it now. (cherry picked from commit e108524d9852f103432ebe3887a876f8f37d6a65) --- .../Concurrency/Task+immediate.swift.gyb | 19 ------------------- .../Runtime/startImmediately.swift | 7 ------- test/abi/macOS/arm64/concurrency.swift | 4 +--- test/abi/macOS/x86_64/concurrency.swift | 4 +--- 4 files changed, 2 insertions(+), 32 deletions(-) diff --git a/stdlib/public/Concurrency/Task+immediate.swift.gyb b/stdlib/public/Concurrency/Task+immediate.swift.gyb index 599d5862a634e..33b592d74f654 100644 --- a/stdlib/public/Concurrency/Task+immediate.swift.gyb +++ b/stdlib/public/Concurrency/Task+immediate.swift.gyb @@ -33,25 +33,6 @@ import Swift @available(SwiftStdlib 6.2, *) extension Task where Failure == ${FAILURE_TYPE} { - // FIXME: This method is left in place to give adopters time to switch to `immediate` but it's going - // to be removed soon, since this spelling was rejected as part of SE-0472 proposal. - @available(SwiftStdlib 6.2, *) - @available(*, deprecated, renamed: "immediate") - // Used to preserve the symbols as originally declared without `@isolated(any)` attribute on `operation:`. - % if FAILURE_TYPE == "Error": - @_silgen_name("$sScTss5Error_pRs_rlE18startSynchronously4name8priority_ScTyxsAA_pGSSSg_ScPSgxyYaKcntFZ") - % elif FAILURE_TYPE == "Never": - @_silgen_name("$sScTss5NeverORs_rlE18startSynchronously4name8priority_ScTyxABGSSSg_ScPSgxyYaKcntFZ") - % end - @discardableResult - public static func startSynchronously( - name: String? = nil, - priority: TaskPriority? = nil, - @_implicitSelfCapture @_inheritActorContext(always) _ operation: sending @isolated(any) @escaping () async ${THROWS} -> Success - ) -> Task { - immediate(name: name, priority: priority, operation: operation) - } - /// Create and immediately start running a new task in the context of the calling thread/task. /// /// This function _starts_ the created task on the calling context. diff --git a/test/Concurrency/Runtime/startImmediately.swift b/test/Concurrency/Runtime/startImmediately.swift index 2c0f2b9daf010..7433804367375 100644 --- a/test/Concurrency/Runtime/startImmediately.swift +++ b/test/Concurrency/Runtime/startImmediately.swift @@ -436,11 +436,6 @@ print("call_startSynchronously_insideActor()") actor A { func f() { - Task.startSynchronously(name: "hello") { print("Task.startSynchronously (\(Task.name!))") } - Task.startSynchronously() { print("Task.startSynchronously") } - } - - func f2() { Task.immediate(name: "hello") { print("Task.immediate (\(Task.name!))") } Task.immediate() { print("Task.immediate") } @@ -451,12 +446,10 @@ actor A { func call_startSynchronously_insideActor() async { await A().f() - await A().f2() } await call_startSynchronously_insideActor() // CHECK-LABEL: call_startSynchronously_insideActor() -// Those two definitely in this order, however the startSynchronously is not determinate // CHECK: Task.immediate // CHECK: Task.immediate { @MainActor } diff --git a/test/abi/macOS/arm64/concurrency.swift b/test/abi/macOS/arm64/concurrency.swift index 004b46a1ae4c2..1bfa25d6d44f2 100644 --- a/test/abi/macOS/arm64/concurrency.swift +++ b/test/abi/macOS/arm64/concurrency.swift @@ -389,10 +389,8 @@ Added: _$sScTss5NeverORszABRs_rlE4nameSSSgvgZ Added: _$sScTss5NeverORszABRs_rlE4nameSSSgvpZMV Added: _swift_task_getCurrentTaskName -// startSynchronously, immediate, addImmediateTask{UnlessCancelled} +// immediate, addImmediateTask{UnlessCancelled} Added: _swift_task_immediate -Added: _$sScTss5Error_pRs_rlE18startSynchronously4name8priority_ScTyxsAA_pGSSSg_ScPSgxyYaKcntFZ -Added: _$sScTss5NeverORs_rlE18startSynchronously4name8priority_ScTyxABGSSSg_ScPSgxyYaKcntFZ // isIsolatingCurrentContext Added: _swift_task_invokeSwiftIsIsolatingCurrentContext diff --git a/test/abi/macOS/x86_64/concurrency.swift b/test/abi/macOS/x86_64/concurrency.swift index 2f90f3c9f6b43..2a141dcee0ce5 100644 --- a/test/abi/macOS/x86_64/concurrency.swift +++ b/test/abi/macOS/x86_64/concurrency.swift @@ -389,10 +389,8 @@ Added: _$sScTss5NeverORszABRs_rlE4nameSSSgvgZ Added: _$sScTss5NeverORszABRs_rlE4nameSSSgvpZMV Added: _swift_task_getCurrentTaskName -// startSynchronously, immediate, addImmediateTask{UnlessCancelled} +// immediate, addImmediateTask{UnlessCancelled} Added: _swift_task_immediate -Added: _$sScTss5Error_pRs_rlE18startSynchronously4name8priority_ScTyxsAA_pGSSSg_ScPSgxyYaKcntFZ -Added: _$sScTss5NeverORs_rlE18startSynchronously4name8priority_ScTyxABGSSSg_ScPSgxyYaKcntFZ // isIsolatingCurrentContext Added: _swift_task_invokeSwiftIsIsolatingCurrentContext