Swift 6.4, released at WWDC 2026, brings several concurrency improvements. Key changes include: async defer bodies (SE-0493) allowing await inside defer for cleaner cleanup; task cancellation shields (SE-0504) via withTaskCancellationShield to protect cleanup code from observing cancellation; compiler warnings for ignored throwing tasks (SE-0520) to prevent silently swallowed errors; typed throwing task initializers for more specific failure types; an async Result initializer (SE-0530) to reduce boilerplate; weak let references from Swift 6.3 (SE-0481) for Sendable-safe delegate patterns; and ~Sendable (SE-0518) to explicitly mark types as intentionally non-Sendable.
Table of contents
Finding Swift version-related proposalsAsync defer statementsTask cancellation shieldsWarnings for ignored throwing tasksTyped throwing task initializersAsync Result supportWeak let referencesExplicitly non-Sendable typesGet weekly Swift Evolution updatesConclusion2 Impressions