Tengo un proyecto iOS Swift con múltiples objetivos.
Convertir el primer objetivo a Swift 5 fue fácil.
Al convertir el segundo objetivo a Swift 5, Xcode 10.2 intenta compilar archivos que claramente existen solo en el primer objetivo y falla (porque no compila todos los archivos del primer objetivo y se queja de identificadores no resueltos).
¿Qué puedo hacer para que Xcode compile solo esos archivos que son parte del objetivo mientras se convierte a Swift 5?
¿Cómo puedo convertir mi proyecto a Swift 5?
Limpiar la carpeta Build y reiniciar Xcode 10.2 no ayuda.
Acabo de pasar por este proceso y pude encontrar una solución bastante simple a partir de una sugerencia en la última oración de la Guía de migración https://swift.org/migration-guide-swift5/
Cuando traté de convertir cada objetivo individualmente en mi proyecto, el segundo objetivo fallaba debido al código compartido con el primer objetivo que ya se había convertido. La solución es crear un nuevo esquema que incluya todos los destinos que deben migrarse en un solo paso.
Haga clic en el botón de esquema para obtener el menú desplegable y seleccione "Nuevo esquema..."
Cree el esquema y luego selecciónelo en el menú desplegable y elija "Editar esquema..."
En la sección "Construir", use el botón "+" para agregar todos los objetivos que necesita para convertir al esquema.
Compile el nuevo esquema con la versión actual de Swift para confirmar que todos los objetivos se compilan correctamente.
Use Editar -> Convertir -> "A la sintaxis Swift actual..." para iniciar la conversión
Esto funcionó para mí en un proyecto con 15 objetivos con mucho código Swift compartido que estaba en la versión 4.0.
Encontré una solución:
Con este enfoque pude convertir mi proyecto.
(Vea también el comentario de Cœur, creo que su conversión manual también funcionaría)
No me queda claro cuál es el problema, si puede presentar un informe de error en http://bugreport.apple.com , el equipo de Apple se comunicará con usted.
Tenga en cuenta que hay una guía de migración que puede resultarle útil aquí: https://swift.org/migration-guide-swift5