Post

Replies

Boosts

Views

Activity

Reply to TipKit vs. Swift 6 + Concurrency
Thanks. Glad to know that a solution is on the way. FWIW, I tried to use the suggested workaround and got the following compile errors: "Variable with getter/setter cannot have an initial value" (for setting isLoggedIn to false). I can remove this initialization. But then I get this error: "Cannot declare entity named '$isLoggedIn'; the '$' prefix is reserved for implicitly-synthesized declarations" (for the static non isolated(safe)... expression) For me, it's fine to disable this code until a fix is ready. So not particularly concerned about getting workarounds to resolve.
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Jun ’24
Reply to Non-sendable Warning for NotificationCenter.default.notifications(named: ...) in for await
Thanks @eskimo. I think I was confused why this code required await when turning on the Swift 6 extra concurrency warning/errors setting.         self.applicationDidBecomeActiveSubscriber = NotificationCenter.default.publisher(for: UIApplication.didBecomeActiveNotification).sink() { [weak self] _ in             self?.applicationDidBecomeActive()         } In particular, it's surprising that UIApplication.didBecomeActiveNotification required @MainActor since this is essentially a constant string. It seems that because UIApplication requires @MainActor, referencing these class level properties bears the same obligation. In my particular case, this forces this code block into a Task{} because I don't want the enclosing function to be async. Which then means that it skips a run-loop execution cycle, causing me not to actually receive the didBecomeActive notification. (Note, this is just one example. I'm using several such notifications for a few different reasons). The mitigation appears to be to create my own clones of the UIApplication.didDoX Notification.Name constants just to get around this - which of course seems pretty undesirable.
Topic: App & System Services SubTopic: General Tags:
Feb ’23
Reply to Is Face ID usage supported in App Clips?
Looks like somehow Touch ID is allowed, while Face ID is not. Source: https://developer.apple.com/documentation/app_clips/choosing_the_right_functionality_for_your_app_clip You can’t use Face ID in your App Clip because the NSFaceIDUsageDescription entitlement isn’t available to App Clips. However, you can use the Local Authentication framework to authenticate users with Touch ID. Unexpected. FB10380162
Topic: App & System Services SubTopic: General Tags:
Jun ’22
Reply to Disabled button in SwiftUI .alert not working
Not fixed in Xcode 16 beta 3
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Replies
Boosts
Views
Activity
Jul ’24
Reply to TipKit vs. Swift 6 + Concurrency
Fixed in Xcode 16.0 beta 3 (16A5202i). Thank you
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Replies
Boosts
Views
Activity
Jul ’24
Reply to TipKit vs. Swift 6 + Concurrency
Thanks. Glad to know that a solution is on the way. FWIW, I tried to use the suggested workaround and got the following compile errors: "Variable with getter/setter cannot have an initial value" (for setting isLoggedIn to false). I can remove this initialization. But then I get this error: "Cannot declare entity named '$isLoggedIn'; the '$' prefix is reserved for implicitly-synthesized declarations" (for the static non isolated(safe)... expression) For me, it's fine to disable this code until a fix is ready. So not particularly concerned about getting workarounds to resolve.
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Replies
Boosts
Views
Activity
Jun ’24
Reply to TipKit vs. Swift 6 + Concurrency
Submitted bug report: FB13946094 FYI: Also posted question to Stack Overflow here: https://stackoverflow.com/questions/78630356/tipkit-parameters-incompatible-with-swift-6-concurrency-property-is-not-concurr
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Replies
Boosts
Views
Activity
Jun ’24
Reply to Disabled button in SwiftUI .alert not working
Not fixed in Xcode 16 beta 1
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Replies
Boosts
Views
Activity
Jun ’24
Reply to Non-sendable Warning for NotificationCenter.default.notifications(named: ...) in for await
Thanks @eskimo. I think I was confused why this code required await when turning on the Swift 6 extra concurrency warning/errors setting.         self.applicationDidBecomeActiveSubscriber = NotificationCenter.default.publisher(for: UIApplication.didBecomeActiveNotification).sink() { [weak self] _ in             self?.applicationDidBecomeActive()         } In particular, it's surprising that UIApplication.didBecomeActiveNotification required @MainActor since this is essentially a constant string. It seems that because UIApplication requires @MainActor, referencing these class level properties bears the same obligation. In my particular case, this forces this code block into a Task{} because I don't want the enclosing function to be async. Which then means that it skips a run-loop execution cycle, causing me not to actually receive the didBecomeActive notification. (Note, this is just one example. I'm using several such notifications for a few different reasons). The mitigation appears to be to create my own clones of the UIApplication.didDoX Notification.Name constants just to get around this - which of course seems pretty undesirable.
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
Feb ’23
Reply to Non-sendable Warning for NotificationCenter.default.notifications(named: ...) in for await
But why isn't Notification.Name Sendable?     public struct Name : Hashable, Equatable, RawRepresentable, @unchecked Sendable {         public init(_ rawValue: String)         public init(rawValue: String)     }
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
Feb ’23
Reply to Mac App Store url problem on Mac M1
Seeing this crash too. I believe it's been around since the first release of M1 Macs. Confirming also that workaround of using "itms-apps://apple.com/app/id*****" works.
Replies
Boosts
Views
Activity
Sep ’22
Reply to Is Face ID usage supported in App Clips?
Looks like somehow Touch ID is allowed, while Face ID is not. Source: https://developer.apple.com/documentation/app_clips/choosing_the_right_functionality_for_your_app_clip You can’t use Face ID in your App Clip because the NSFaceIDUsageDescription entitlement isn’t available to App Clips. However, you can use the Local Authentication framework to authenticate users with Touch ID. Unexpected. FB10380162
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
Jun ’22