Negocio y crecimiento
Upgrade React Native 0.87: Strict TypeScript por defecto, Metro 0.87 y SwiftPM
- React Native
- Móvil
- TypeScript
- iOS
- Upgrades

React Native 0.87 es la release que esperaban equipos con deep imports o pipeline iOS solo CocoaPods. Publicada el **11 de agosto de 2026**, paso hacia **React Native 1.0**.
Si planificas un **upgrade React Native 0.87**: **Strict TypeScript API** ya no es opt-in, **Metro 0.87** más rápido, **SwiftPM experimental** y **AGP 9** con mínimos de toolchain más altos.
Por qué importa ahora
0.80 avisó sobre deep imports. **0.87 hace Strict TypeScript la API JS por defecto**. Tipos desde el código fuente; `react-native/Libraries/*` bloqueadas.
Strict TypeScript: default
- Deep imports = errores de tipo
- Tipos alineados al source
- Refs `ViewInstance`, `TextInputInstance`
- `InitializeCore` deprecado → `react-native/setup-env`
Opt-out temporal: `"customConditions": ["react-native-legacy-deep-imports"]` en `tsconfig.json`.
Metro 0.87
De 0.84 a 0.87: **~2× source maps** y **~50% menos memoria**. Soporte estable para `metro.config.mts`.
SwiftPM experimental (iOS)
Opt-in; CocoaPods sigue siendo default. En `ios`: **`npx react-native spm`**. Revertir: **`npx react-native spm deinit`**. Experimental.
Android: AGP 9
- **Node ≥ 22.13.0**
- **Kotlin 2.0+**
- **minCompileSdk 34**
- `react-native/src/private/*` eliminado en runtime
Usa [Upgrade Helper](https://react-native-community.github.io/upgrade-helper/).
New Architecture
El debate pasa a **terminar migración**. Arregla libs con deep imports en la misma rama.
Checklist
- Node 22.13+ en local y CI
- Upgrade Helper → 0.87
- Buscar `Libraries`, `src/private`, `InitializeCore`
- Corregir Strict TS o legacy-deep-imports temporal
- Gradle/Kotlin/compileSdk
- Rebuild limpio + smoke en dispositivo
Ver [release 0.87](https://reactnative.dev/blog/2026/08/11/react-native-0.87).
Conclusión
**React Native 0.87**: Strict TS default, Metro 0.87, SwiftPM experimental, AGP 9. ¿Segunda opinión? Escríbenos.