Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto.
¿Encontraste un error? Reportar problema →
¡Feliz año nuevo a todos! Hoy anunciamos el lanzamiento más reciente de React Native, la versión 0.67.0, junto con algunas actualizaciones del proceso de publicación en las que hemos estado trabajado durante los últimos meses.
Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto.
¿Encontraste un error? Reportar problema →
Desde que anunciamos Hermes en 2019, su adopción ha ido en aumento en la comunidad. El equipo de Expo, que mantiene un meta-framework popular para aplicaciones React Native, recientemente anunciósoporte experimental para Hermes tras ser una de las funcionalidades más solicitadas de Expo. El equipo de Realm, una popular base de datos móvil, también lanzó recientemente su soporte alfa para Hermes. En esta publicación, queremos destacar algunos de los avances más emocionantes que hemos logrado en los últimos dos años para impulsar a Hermes como el mejor motor de JavaScript para React Native. De cara al futuro, estamos seguros de que con estas mejoras y otras por venir, podemos hacer de Hermes el motor de JavaScript predeterminado para React Native en todas las plataformas.
Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto.
¿Encontraste un error? Reportar problema →
React Native ha tenido mucho éxito elevando el nivel del desarrollo móvil, tanto en Facebook como en la industria. A medida que interactuamos con computadoras de nuevas formas y se inventan nuevos dispositivos, queremos que React Native esté disponible para todos. Aunque React Native se creó originalmente para construir aplicaciones móviles, creemos que enfocarnos en múltiples plataformas y desarrollar según las fortalezas y limitaciones de cada una tiene un efecto simbiótico. Hemos visto enormes beneficios al extender esta tecnología a escritorio y realidad virtual, y estamos emocionados de compartir lo que esto significa para el futuro de React Native.
Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto.
¿Encontraste un error? Reportar problema →
Durante el último año, nuestro mundo ha cambiado enormemente, y React Native no es la excepción. Hemos dado la bienvenida a nuevos miembros en nuestro equipo (¡a quienes estamos ansiosos por conocer en persona eventualmente!), nuestros proyectos han madurado y han surgido nuevas oportunidades. Estamos emocionados de compartir todo esto con ustedes en esta publicación y en las próximas.
En Facebook, nuestro equipo trabaja en ciclos semestrales. Cada semestre revisamos nuestra estrategia, establecemos planes y los compartimos internamente. Hoy queremos compartir nuestros planes para el segundo semestre (H2) con ustedes, nuestra comunidad.
El segundo semestre de 2021 es un período emocionante para React Native. Nuestras áreas de enfoque incluyen nutrir a la comunidad, comenzar a implementar la nueva arquitectura en código abierto e impulsar la tecnología hacia adelante.
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!
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 getRecommendedTimeoutMillis en 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) y unselected (no seleccionado) en componentes.
Actualizaciones de dependencias y consideraciones importantes
Ahora se requiere react-native-codegen versión 0.0.7 como devDependency en el package.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.
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í.
GAAD Pledge Open Source Accessibility Community Manager for React Native
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 →
Ha transcurrido un año desde que Facebook asumió el Compromiso GAAD para hacer React Native accesible, y el proyecto ha superado nuestras expectativas. Nos complace anunciar que este proyecto continuará durante 2021 y queremos actualizar a todos sobre nuestro progreso hasta ahora. Tras un análisis exhaustivo de las brechas de accesibilidad en React Native el año pasado, comenzamos a trabajar para subsanarlas.
Comenzamos con 90 problemas pendientes de análisis de brechas y desde marzo de 2021, cuando el proyecto se lanzó en GitHub, hasta ahora:
11 issues han sido cerrados por la comunidad.
19 issues fueron evaluados y cerrados por el equipo de React Native.
9 pull requests fueron fusionados.
1 pull request se fusionó en la documentación de React Native.
Queremos reconocer y agradecer a la comunidad de React Native por el progreso significativo hacia una React Native más accesible durante el último año. El esfuerzo de cada contribuyente ha sido fundamental para avanzar en la mejora de la Accesibilidad de React Native.
GAAD Pledge Open Source Accessibility Community Manager for React Native
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 →
Han pasado cuatro semanas desde que contactamos a la comunidad de GitHub con un análisis de brechas minuciosamente revisado y una lista de problemas para mejorar la accesibilidad de React Native. Con la ayuda de la comunidad de React Native, ya estamos avanzando significativamente en mejorar la accesibilidad. Los miembros de la comunidad han estado ayudando a los colaboradores, revisando pruebas y llamando la atención sobre problemas de accesibilidad anteriores. Desde el 8 de marzo, la comunidad ha cerrado seis incidencias con cuatro pull requests, y otros siete pull requests están en proceso de revisión.
Mientras este trabajo continúa, los equipos de React Native y Accesibilidad en Facebook están evaluando errores y problemas de accesibilidad enviados antes de esta iniciativa, para determinar si ya están cubiertos por nuestro análisis actual de brechas o si hay problemas adicionales que deben incorporarse al proyecto. Ya se ha descubierto un nuevo problema y se ha trasladado al proyecto, otros cuatro se vincularon directamente con incidencias existentes y se espera que dos más se cierren abordando problemas existentes que solucionan la causa raíz.
¡Gracias a todos los miembros de la comunidad que han participado! Realmente están marcando la diferencia para hacer React Native más accesible para todos.
Hermes es un motor JavaScript de código abierto optimizado para ejecutar React Native. Mejora el rendimiento reduciendo el uso de memoria, disminuyendo el tamaño de descarga y acortando el tiempo hasta que la app se vuelve utilizable o "tiempo hasta la interacción" (TTI).
Con esta versión, nos complace anunciar que ahora también puedes usar Hermes para desarrollo en iOS. Para activarlo, establece hermes_enabled como true en tu Podfile y ejecuta pod install.
use_react_native!( :path=> config[:reactNativePath], # to enable hermes on iOS, change `false` to `true` and then install pods :hermes_enabled=>true )
Ten en cuenta que el soporte de Hermes en iOS aún está en etapa temprana. Lo mantenemos como opción mientras realizamos más pruebas de rendimiento. Te animamos a probarlo en tus aplicaciones y contarnos tu experiencia.
Inline Requires es una opción de configuración de Metro que mejora el tiempo de inicio al retrasar la ejecución de módulos JavaScript hasta que se usan, en lugar de hacerlo al inicio.
Esta función ha existido y sido recomendada durante años como opción configurable, listada en la sección de Rendimiento de nuestra documentación. Ahora la activamos por defecto en nuevas aplicaciones para facilitar React Native rápido sin configuración adicional.
Inline Requires es una transformación de Babel que toma importaciones de módulos y las convierte en inline. Por ejemplo, transforma esta llamada de importación desde la parte superior del archivo hasta donde se utiliza.
Antes:
import{MyFunction}from'my-module'; constMyComponent=props=>{ const result =MyFunction(); return<Text>{result}</Text>; };
Después:
constMyComponent=props=>{ const result =require('my-module').MyFunction(); return<Text>{result}</Text>; };
El último año Facebook patrocinó la beca Major League Hacking, apoyando contribuciones a React Native. Jessie Nguyen y Saphal Patro añadieron la capacidad de usar la pestaña Performance en Chrome DevTools para visualizar la ejecución de tu aplicación cuando usa Hermes.
Hemos añadido soporte para Proxy en Hermes, permitiendo compatibilidad con proyectos populares como react-native-firebase y mobx. Si usas estos paquetes, ahora puedes migrar a Hermes.
Planeamos hacer Hermes el motor JavaScript predeterminado para Android en próximas versiones, por lo que estamos resolviendo problemas pendientes. Por favor, abre un issue en el repositorio de Hermes en GitHub si encuentras obstáculos para adoptarlo.
React 17 no incluye nuevas funciones para desarrolladores ni cambios importantes. Para aplicaciones React Native, el cambio principal es un nuevo transformador JSX que elimina la necesidad de importar React para usar JSX.
Eliminado soporte para niveles de API Android 16-20. La app de Facebook consistentemente elimina soporte para versiones con uso suficientemente bajo. Como la app de Facebook ya no soporta estas versiones y es la principal superficie de prueba de React Native, también eliminamos el soporte.
Se requiere Xcode 12 y CocoaPods 1.10
El soporte mínimo de Node se ha incrementado de 10 a Node 12
¡Agradecemos a los cientos de colaboradores que hicieron posible la versión 0.64! El registro de cambios de la 0.64 incluye todas las modificaciones de esta versión.
En mayo de 2020, Facebook fue la primera empresa en asumir el Compromiso GAAD, comprometiéndose así a hacer de la accesibilidad una parte fundamental del proyecto de código abierto de React Native. Desde mayo, Facebook ha dedicado este tiempo a revisar cuidadosamente y documentar las brechas de accesibilidad en React Native. Hasta ahora, este análisis ha identificado 90 problemas, todos los cuales se han trasladado a incidencias en GitHub.
En general, encontramos que las APIs de React Native brindan un sólido soporte para accesibilidad. Sin embargo, también descubrimos que muchos componentes principales aún no aprovechan completamente las APIs de accesibilidad de las plataformas, y falta soporte para algunas funciones específicas de cada plataforma.
El entusiasmo y la diversidad de colaboradores siempre han jugado un papel crítico en el desarrollo de React Native, y estas brechas en accesibilidad son grandes oportunidades tanto para colaboradores actuales como nuevos. Si has estado interesado en contribuir a React Native, te animamos a unirte para hacerlo más accesible.
Para reconocer el esfuerzo de los colaboradores, cuando se cierre una incidencia de accesibilidad vinculada a un pull request, nuestro gestor comunitario les mencionará en Twitter. Los colaboradores cuyos pull requests sean aceptados en el código base serán destacados en la actualización mensual de incidencias en el blog de React Native.
Únete a nosotros para hacer React Native más accesible para todos.
Los redactores técnicos interesados en actualizar la documentación de React Native para reflejar las mejoras de accesibilidad implementadas pueden visitar la Documentación de React Native.
¡Comparte esta iniciativa con cualquier persona que pueda contribuir!
Sigue al Gestor de Comunidad de Accesibilidad en Código Abierto para React Native del Compromiso GAAD en Twitter o Facebook para mantenerte al día con los avances.