React Native 0.84リリース
React Native 0.84がリリースされた。本バージョンでは、試験的に導入されていたHermes V1がiOSおよびAndroidの両方でデフォルトのJavaScriptエンジンとして採用された。コンパイラとVMの改良により、実行速度の向上やメモリ使用量の削減といったパフォーマンス改善が自動的に適用される。
また、iOS向けには事前コンパイル済みバイナリがデフォルトで導入された。これにより、クリーンビルドのたびにReact Nativeコアをソースからコンパイルする必要がなくなり、pod install時に.xcframeworkバイナリがダウンロードされるため、ビルド時間の大幅な短縮が見込まれる。
主要な変更点
- Hermes V1のデフォルト化: 0.70以降でHermesを使用している場合、設定変更なしでV1に移行可能。
- iOSの事前コンパイル済みバイナリ導入:
pod install時のビルド時間短縮。ソースからビルドする場合はRCT_USE_PREBUILT_RNCORE=0で無効化可能。 - Legacy Architectureコードの削除: New Architecture移行に伴い、iOSおよびAndroidのレガシーコードがビルドから除外された。
- Node.js 22の必須化: 最小要件がNode.js v22.11以降に引き上げられた。
- エコシステムの更新: React 19.2.3への同期、ESLint v9 Flat Configのサポート、URL APIの改善などが含まれる。
留意事項
- Legacy ArchitectureをiOSで再有効化するには
RCT_USE_PREBUILT_RNCORE=0 RCT_REMOVE_LEGACY_ARCH=0 bundle exec pod installを使用してソースからビルドする必要がある。 XHRInterceptorおよびWebSocketInterceptorAPIが非推奨化された。今後はChrome DevTools Protocol (CDP) のNetwork domainを使用する。- Androidの
BridgeDevSupportManagerやC++のBigStringBufferなど一部のクラスが削除された。