Transferencia de un proyecto de Swift 4.2 a Swift 5.0

Hola Habr! Le presento la traducci贸n del art铆culo "Swift 5.0: C贸mo migrar su proyecto y marcos" por Antoine Van Der Lee.

Swift 5.0 se lanz贸 en marzo de 2019 y es la primera versi贸n estable de ABI Swift. Aunque muchos recursos cubren las nuevas caracter铆sticas de Swift 5.0, a menudo no le dicen lo que necesita hacer para actualizar su proyecto a Swift 5.0.

En esta publicaci贸n, cubrir茅 los pasos que puede seguir para actualizar un proyecto existente a Swift 5.0.

Verifique que su proyecto ya haya sido portado a Swift 4.2.
No me sorprender谩 si este art铆culo ayuda a convencer a su gerente de producto para que planifique el tiempo para la transici贸n.

Migraci贸n autom谩tica con asistente de migrante


Xcode sugiere usar el Asistente de migraci贸n para actualizar autom谩ticamente su c贸digo a la sintaxis Swift actual. Esta conversi贸n utilizar谩 la 煤ltima versi贸n de Swift, disponible con la versi贸n instalada de Xcode.

Xcode 10.2 es la primera versi贸n que incluye Swift 5.0, por lo que debe usar esta versi贸n del software.

Esta caracter铆stica a menudo hace el trabajo duro por usted. Por lo tanto, recomiendo iniciar el puerto de c贸digo yendo a Edici贸n -> Convertir -> A la sintaxis Swift actual ...

Consejo: Aseg煤rese de hacer esto solo para su proyecto y marco. Puede omitir la conversi贸n para cualquier dependencia externa.



Actualizaci贸n de dependencia


Lo m谩s probable es que tenga algunas dependencias de Swift que deben actualizarse. Muchos grandes proyectos de c贸digo abierto, como Alamofire y Moya, ya comenzaron a trabajar con la versi贸n Swift 5.0.

Sin embargo, es probable que no todas sus dependencias ya est茅n actualizadas. Aunque me gustar铆a instarlo a que realice la transferencia y luego env铆e la solicitud de extracci贸n usted mismo, probablemente tenga que esperar un poco hasta que los propietarios del proyecto lo hagan ellos mismos.

Si planea realizar una prueba intensiva completa de su aplicaci贸n despu茅s de esta transferencia, puede valer la pena actualizar directamente sus dependencias. Su prueba cubrir谩 estas actualizaciones directamente, lo que puede ser una "doble victoria".

Actualizaci贸n del entorno de CI


Si est谩 utilizando Travis, Jenkins o cualquier otra plataforma de CI, tambi茅n necesita actualizar Xcode.



Usando el resultado en Swift


Xcode Converter solo realiza cambios b谩sicos de c贸digo. No tiene en cuenta el nuevo tipo de resultado , que ahora se incluye en la biblioteca est谩ndar de Swift. Muchos marcos han incluido el tipo "Resultado" en su c贸digo. Esto puede significar que tiene bastantes datos con un tipo de enumeraci贸n que ya no se necesitan. Sin embargo, no se apresure a reemplazarlos con datos de sus dependencias: usted depende de los cambios de c贸digo en la estructura externa.

Tipo com煤n de error



Es probable que su tipo actual de "Resultado" solo haya definido el tipo para el caso apropiado.

El resultado en Swift 5.0 tambi茅n requiere que determine el tipo de error esperado. Como ciudadano respetable, debe intentar concretar este tipo de error, en funci贸n de lo que espera. Sin embargo, si desea acelerar la migraci贸n, tambi茅n puede establecer el tipo en Swift.Error .

Sugerencia: Si desea obtener m谩s informaci贸n sobre el nuevo tipo de Resultado en Swift 5.0, le recomendar铆a que lea este art铆culo .

Tomamos en cuenta la estabilidad de ABI


De hecho, la estabilidad ABI es un tema aparte. Puedes leer m谩s sobre esto en el blog oficial de Swift.

Tenga en cuenta que el tama帽o de la aplicaci贸n que est谩 descargando disminuir谩 , ya que las aplicaciones ya no necesitan incrustar la biblioteca Swift est谩ndar.

Esto deber铆a convencer a su producto para que encuentre el momento de la transferencia.
Si desea sumergirse en Swift 5.0 m谩s, puede pasar a la publicaci贸n del blog Apple Migrating to Swift 5.0.

Source: https://habr.com/ru/post/447098/


All Articles