Daily iOS
Concurrency

Swift 6 migration

You've been asked to move a large app written with completion handlers and GCD to Swift 6 strict concurrency. In what order would you do it?

How would an interviewer hear this answer? You'll see whether they'd move on, dig in, or say no, and which sentences would trip you up. Your score doesn't change.
See the short answer

Raise strict concurrency module by module from minimal to targeted to complete, get warnings to zero, then switch only that module to Swift 6 language mode. Start with leaf modules that have no dependencies, do the UI layer last, and flip the language mode that turns warnings into errors at the very end.

Share a question