iOS Term of the Day: GeometryReader
A SwiftUI container view that gives its content the size and coordinate space it was offered, so you can lay out views from real dimensions.
https://t.co/msXcUsyxZO
#SwiftUI#iOSDev
Swift main now makes if let / guard let on a non-optional a warning (ConditionalBindingNonOptionalType) instead of an error. if case let x? stays an error, and -Werror can keep it strict.
https://t.co/oCZCavptQt
#Swift#iOSDev
iOS 27.2 RC finalizes the EU App Tracking Transparency prompt: requestTrackingAuthorization(preferExpandedInterface:), a new NSUserTrackingMarkdownUsageDescription key, and yearly re-prompts.
https://t.co/ckxDAwKE6c
#iOSDev#Swift
iOS Term of the Day: @Binding
A SwiftUI property wrapper that lets a child view read and write a value its parent owns. One source of truth, no copies.
https://t.co/A2dsIr06Tr
#SwiftUI#iOSDev
Noncopyable deinit vs consuming close(): how should Swift release file handles and sockets? deinit runs at scope end, and close() still triggers it unless you discard self. Three patterns compared, from an open Swift Forums discussion.
https://t.co/4kroWbXban
#Swift#iOSDev
iOS Term of the Day: @Observable
A Swift macro that makes a class observable. SwiftUI redraws only the views that read the property that changed, no @Published needed.
https://t.co/zL1EyPnIPh
#SwiftUI#iOSDev
Swift pitch: an opt-in AvoidablePadding warning. A struct of Bool, Int64, Bool has a 24 byte stride; reorder it and it's 16. The compiler would flag it and suggest an order. Diagnostic only, no ABI change, not accepted yet.
https://t.co/bjnIR91cvF
#Swift#iOSDev
iOS Term of the Day: @State
A view's own mutable source of truth. SwiftUI keeps it outside the struct so it survives body updates, and $value hands a child a Binding.
https://t.co/Hy58xV7BBQ
#SwiftUI#iOSDev
Swift pitch: make AsyncStream's next() return sending Element?. yield already takes sending (SE-0430), but pulled values land in your region and can't be forwarded. Pitch only, not accepted yet.
https://t.co/qREFz0Y6Ks
#Swift#iOSDev
iOS Term of the Day: Sendable, a Swift marker protocol. It marks values that are safe to pass between tasks and actors, so the compiler catches data races at the isolation boundary instead of at runtime.
https://t.co/6Oh8DTIrsU
Swift pitch: split continuations. ContinuationWaiter.wait(onCancel:) closes the early-cancel race in withCheckedContinuation, and resumeSynchronously resumes inline when it can.
Pitch only, no SE number yet:
https://t.co/b7jbj9K5Ij
iOS Term of the Day: @MainActor@MainActor isolates a type, method, property, or closure to the main thread, where UIKit and SwiftUI state must be touched. Callers from another isolation domain have to hop over with await, so a runtime threading bug becomes a compile-time error.
Two examples, from loading a feed to hopping back from detached work:
https://t.co/tZfsAMSRbH
#Swift #iOSDev #SwiftConcurrency
SE-0557: Hasher.combine(bytes: RawSpan), safe byte mixing without UnsafeRawBufferPointer.
Active review through Oct 20. Interview angle + review debate:
https://t.co/Mp2bPtruWT
iOS Term of the Day: navigationDestination(for:)
In SwiftUI's NavigationStack, navigationDestination(for:) maps a value type to the screen it should show. Push a value with NavigationLink(value:) and the stack builds the matching destination, which keeps routing type-safe and data-driven.
Two runnable examples with live previews:
https://t.co/Txi3nyk2Wy
#SwiftUI #iOSDev #Swift
iOS Term of the Day: navigationDestination(for:)
In SwiftUI's NavigationStack, navigationDestination(for:) maps a value type to the screen it should show. Push a value with NavigationLink(value:) and the stack builds the matching destination, which keeps routing type-safe and data-driven.
Two runnable examples with live previews:
https://t.co/Txi3nyk2Wy
#SwiftUI #iOSDev #Swift
SE-0558 is in review: bulk updates for MutableSpan. updateAll, updateSubrange and updateElements(from:copying:) replace hand-written index loops and unsafe buffer code. Breakdown:
https://t.co/jVcCh6ToBq
iOS Term of the Day: @Environment, a SwiftUI property wrapper. It reads a value the system or a parent view put in the environment, like colorScheme or dismiss, so deep child views get it without passing it through every initializer. https://t.co/h5X67zctHu
SE-0556 is in review: Cell, ConstCell and Volatile. Interior mutability with stable addresses, plus memory-mapped I/O for Swift. What each one is for and the open debates:
https://t.co/VkNBPKgCtQ