27.1.1 (2026-11-10)
Bug Fixes
- app-check: report provider setup failures and align Android provider readiness with iOS (#9405) (431338d)
- app-distribution, android: bump Firebase App Distribution Gradle plugin to 5.3.1 (e43eaef)
- app, ios: remove the simulator-slice signature files in the SPM archive workaround (#9423) (7c83af7)
- crashlytics, ios: name the dSYM input after the executable (#9411) (cac23b8)
- e2e: bound the drain's terminateApp and keep a drained attempt off the next device (bcde2f4)
- e2e: do not kill a stalled Jet again as a launch retry (8630dd1)
- e2e: fail fast when another user's process holds the Jet port (14a1810)
- e2e: join the drain's capped terminateApp before the next attempt (c9ef2e7)
- e2e: keep a late Jet attempt from killing the next attempt's Jet (164ea54)
- e2e: keep script logs and scratch files under TMPDIR (dfecc19)
- e2e: re-apply the selected slot's env for check and release --slot=N (78e93ec)
- e2e: record every harness reboot and cold-boot only this run's emulator (67ea61d)
- e2e: record the macOS Jet process so the default release frees it (f8e0561)
- e2e: release only resources a run recorded; machine wipe is manual-only (ea8f86d)
- e2e: stop the Jet a failed attempt is still running before the outer retry (505e1f4)
- firestore, pipelines: send Timestamp and Date constants as timestamps (#9416) (f53c07f)
- lint: skip the android git diff check outside a git work tree (8e34db5)
- scripts: skip ruby:install when host Ruby is too old or bundler cannot run (0fcbc2e)
- tests: skip native build dirs in harness default scan (a72279d)