Anunciamos React Native 0.65
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 versión 0.65 con una nueva versión de Hermes, mejoras en accesibilidad, actualizaciones de paquetes y más.
Novedades en Hermes 0.8
Hermes, la máquina virtual JavaScript de código abierto de Facebook optimizada para React Native, se ha actualizado a la versión 0.8.1. Algunas características destacadas en esta versión son:
-
Un nuevo recolector de basura concurrente llamado "Hades" que reduce los tiempos de pausa hasta 30 veces en dispositivos de 64 bits. En Facebook, observamos que esto mejora algunas cargas de trabajo intensivas en CPU entre un 20% y 50%. Puedes aprender más sobre Hades aquí.
-
La API de Internacionalización de ECMAScript (ECMA-402 o
Intl) ahora está integrada en Hermes para Android y activada por defecto, con solo 57-62K de sobrecarga por API (comparado con los 6MiB de JSC). Con este cambio, los usuarios de Hermes ya no necesitan polyfills de localización. ¡Un gran agradecimiento a @mganandraj y otros colaboradores en Microsoft por impulsar esta implementación! -
Hermes en iOS ahora soporta Macs con Apple M1 y Mac Catalyst!
-
Mejoras de memoria incluyendo compresión de SMI (Small Integers) y punteros que redujeron el heap de JS en un 30%.
-
Cambios en
Function.prototype.toStringque solucionaron una caída de rendimiento por detección incorrecta de características y soportan casos de inyección de código fuente.
Puedes consultar el registro completo de cambios de Hermes aquí.
¡Sigue estos pasos para habilitar Hermes en tu aplicación si aún no lo has hecho y aprovecha estas nuevas características y mejoras!
Correcciones y mejoras en accesibilidad
El año pasado Facebook asumió el compromiso GAAD para mejorar la accesibilidad en React Native. ¡La versión 0.65 comparte los resultados de este compromiso y otros avances en accesibilidad! Algunos cambios destacados incluyen:
-
Posibilidad de especificar valores de alto contraste claro y oscuro para iOS. Consulta la documentación para más detalles.
-
Se añadió la API
getRecommendedTimeoutMillisen Android. Esto expone el tiempo de espera predeterminado preferido del usuario según las opciones de accesibilidad de Android, diseñado para usuarios que necesiten tiempo adicional para revisar o alcanzar controles. -
Correcciones generales para asegurar que TalkBack/VoiceOver anuncien correctamente estados de UI como
disabled(deshabilitado) yunselected(no seleccionado) en componentes.
¡Puedes seguir o contribuir a nuestros problemas pendientes de accesibilidad aquí!
Actualizaciones de dependencias y consideraciones importantes
-
Ahora se requiere
react-native-codegenversión0.0.7comodevDependencyen elpackage.json. -
JCenter ha sido discontinuado y ahora es de solo lectura. Hemos eliminado JCenter como repositorio de Maven y actualizado las dependencias para usar MavenCentral y Jitpack.
-
Actualización de OkHttp de la versión 3 a la 4.9.1. Consulta Actualización a OkHttp 4 para más detalles sobre los cambios.
-
Actualización a Flipper 0.93 para soportar Xcode 12.5. Consulta el registro de cambios de Flipper aquí.
-
Soporte para Android Gradle Plugin 7
-
Apple Silicon requiere una solución alternativa para el enlazador. Consulta la nota de @mikehardy sobre esto.
¡Gracias!
Esta versión incluye más de 1100 commits de 61 colaboradores. ¡Gracias a todos los que han contribuido y apoyado este lanzamiento! Puedes consultar el registro de cambios completo aquí.
