Saltar al contenido principal

Anunciamos React Native 0.66

· 6 min de lectura
Luna Wei
Luna Wei
Software Engineer @ Meta
Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

Hoy lanzamos React Native v0.66 con soporte para Android 12 e iOS 15, junto con correcciones y actualizaciones generales.

Lo más destacado

Manejo de toques en vistas secundarias fuera de los límites del padre en Android

Agradecemos a @hsource por agregar soporte de interacción para elementos secundarios renderizados fuera de los límites de la vista principal mediante overflow: visible. Este es un caso de uso común y acerca más a React Native en Android a los estándares web.

Encuentra más detalles en la solicitud de extracción.

Nuevos permisos de Bluetooth en Android

Hemos agregado soporte para nuevos permisos de Bluetooth en preparación para Android 12 y planeamos actualizar targetSDKVersion a 31 en el próximo lanzamiento.

Mejor soporte para Apple Silicon, Xcode 13 e iOS 15

Esta versión proporciona varias soluciones para que las compilaciones de Xcode para iOS en máquinas Mac con Apple Silicon (M1) sean más confiables.

Destacamos que la nueva plantilla de aplicación ahora incluye una solución alternativa para CocoaPods (¡gracias a @mikehardy!). Para aplicarla, asegúrate de que el Podfile de tu aplicación tenga __apply_Xcode_12_5_M1_post_install_workaround(installer) agregado en el paso post_install.

Además, RCT-Folly.podspec ha sido actualizado para prevenir fallos del enlazador en arm64.

Consulta esta publicación que compartimos sobre cómo preparar tu aplicación para iOS 15 y Android 12.

Hermes 0.9.0

Hermes 0.9.0 se centra principalmente en cerrar la brecha entre el punto de corte de la versión de Hermes y este lanzamiento de React Native.

Entre aproximadamente 400 commits, ha habido correcciones generales de errores junto con mejoras en memoria y tamaño.

Consulta el problema de lanzamiento de Hermes 0.9.0 para más detalles.

Lanzamientos nocturnos y por commit

En una publicación reciente de blog compartimos que uno de nuestros objetivos en la segunda mitad de 2021 es mejorar nuestro proceso de lanzamiento para que sea más rápido y estable. Como parte de este esfuerzo, estamos trabajando para que React Native sea más estable en la rama main y para reducir los errores identificados durante nuestro proceso de Candidato a Lanzamiento.

Aunque llevamos más de un año publicando versiones nocturnas (nightly) de React Native, la mayoría de proyectos no las utilizaban efectivamente. Ahora son más accesibles y esperamos usarlas como candidatas a lanzamiento en el futuro. Estas versiones se publican en npm bajo la etiqueta "nightly".

Para mejorar el proceso de prueba de commits individuales, el CI de React Native ahora creará un artefacto en formato tarball por cada commit en las ramas main y release, así como para cada PR. Las llamamos "commitlies". Estas versiones no se publicarán en npm, pero pueden descargarse directamente desde CircleCI. Consulta las instrucciones a continuación.

¿Quieres ayudar a que un PR se fusione? Al probar la commitly relacionada y verificar el cambio, estarás proporcionando una señal valiosa para ayudar a que se incluya.

Usando versiones nocturnas (Nightlies)

El proceso para migrar tu proyecto a una versión nocturna de React Native es muy similar al que seguirías para actualizar a una versión estable, con la excepción de que herramientas como Upgrade Helper actualmente no funcionan con nightlies. Teniendo esto en cuenta, recomendamos que primero actualices tu proyecto a la versión estable más reciente si aún no lo has hecho. Luego, ejecuta yarn upgrade react-native@nightly para instalar la versión nocturna más reciente. Ten en cuenta que pueden ser necesarios cambios adicionales para que tu proyecto funcione correctamente con una versión nocturna.

Usando versiones por commit (Commitlies)

Screenshot of CircleCI artifact panel to find tarball

Find the "build_npm_package-1" job related to a commit and head to the "Artifacts" panel to download the tarball for the commitly.

Al igual que con una versión nocturna, primero asegúrate de que tu proyecto se haya actualizado a la versión estable más reciente. Luego, ve al panel de react-native en Circle CI y busca el flujo de trabajo desencadenado por el commit en cuestión. Allí deberías ver un job llamado build_npm_package. Ese job tendrá un panel "Artifacts" que proporcionará un enlace para descargar un archivo tarball. Luego puedes ejecutar lo siguiente:

# Update your react-native dependency to the tarball
# using your preferred package manager
$ yarn add <path to tarball>
$ npm add <path to tarball>

Agradecimientos

¡Esta versión incluye 621 commits con 92 colaboradores! Gracias a todos nuestros colaboradores, nuevos y veteranos. Puedes consultar el registro de cambios completo aquí.

Asimismo, ¡agradecemos a los siguientes colaboradores por su apoyo en la preparación, prueba y desbloqueo de esta versión!