[debug] [2026-04-20T06:11:15.602Z] ---------------------------------------------------------------------- [debug] [2026-04-20T06:11:15.604Z] Command: /usr/local/bin/firebase /home/leon/.cache/firebase/tools/lib/node_modules/firebase-tools/lib/bin/firebase emulators:start --only functions [debug] [2026-04-20T06:11:15.604Z] CLI Version: 15.15.0 [debug] [2026-04-20T06:11:15.604Z] Platform: linux [debug] [2026-04-20T06:11:15.604Z] Node Version: v20.18.2 [debug] [2026-04-20T06:11:15.604Z] Time: Mon Apr 20 2026 08:11:15 GMT+0200 (GMT+02:00) [debug] [2026-04-20T06:11:15.604Z] ---------------------------------------------------------------------- [debug] [debug] [2026-04-20T06:11:16.006Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"] [debug] [2026-04-20T06:11:16.006Z] > authorizing via signed-in user (leon.morival@gmail.com) [info] i emulators: Starting emulators: functions {"metadata":{"emulator":{"name":"hub"},"message":"Starting emulators: functions"}} [debug] [2026-04-20T06:11:16.015Z] [logging] Logging Emulator only supports listening on one address (127.0.0.1). Not listening on ::1 [debug] [2026-04-20T06:11:16.015Z] assigned listening specs for emulators {"user":{"ui":[{"address":"0.0.0.0","family":"IPv4","port":4000}],"hub":[{"address":"127.0.0.1","family":"IPv4","port":4400},{"address":"::1","family":"IPv6","port":4400}],"logging":[{"address":"127.0.0.1","family":"IPv4","port":4500}]},"metadata":{"message":"assigned listening specs for emulators"}} [debug] [2026-04-20T06:11:16.017Z] Write emulator hub locator at /tmp/hub-expo-starter-9daef.json [debug] [2026-04-20T06:11:16.021Z] [eventarc] Eventarc Emulator only supports listening on one address (127.0.0.1). Not listening on ::1 [debug] [2026-04-20T06:11:16.021Z] [tasks] Cloud Tasks Emulator only supports listening on one address (127.0.0.1). Not listening on ::1 [debug] [2026-04-20T06:11:16.021Z] late-assigned ports for functions and eventarc emulators {"user":{"ui":[{"address":"0.0.0.0","family":"IPv4","port":4000}],"hub":[{"address":"127.0.0.1","family":"IPv4","port":4400},{"address":"::1","family":"IPv6","port":4400}],"logging":[{"address":"127.0.0.1","family":"IPv4","port":4500}],"functions":[{"address":"0.0.0.0","family":"IPv4","port":5001}],"eventarc":[{"address":"127.0.0.1","family":"IPv4","port":9299}],"tasks":[{"address":"127.0.0.1","family":"IPv4","port":9499}]},"metadata":{"message":"late-assigned ports for functions and eventarc emulators"}} [warn] ⚠ functions: The following emulators are not running, calls to these services from the Functions emulator will affect production: apphosting, auth, firestore, database, hosting, pubsub, storage, dataconnect {"metadata":{"emulator":{"name":"functions"},"message":"The following emulators are not running, calls to these services from the Functions emulator will affect production: \u001b[1mapphosting, auth, firestore, database, hosting, pubsub, storage, dataconnect\u001b[22m"}} [debug] [2026-04-20T06:11:16.034Z] defaultcredentials: writing to file /home/leon/.config/firebase/leon_morival_gmail.com_application_default_credentials.json [debug] [2026-04-20T06:11:16.035Z] Setting GAC to /home/leon/.config/firebase/leon_morival_gmail.com_application_default_credentials.json {"metadata":{"emulator":{"name":"functions"},"message":"Setting GAC to /home/leon/.config/firebase/leon_morival_gmail.com_application_default_credentials.json"}} [debug] [2026-04-20T06:11:16.035Z] Checked if tokens are valid: true, expires at: 1776668874171 [debug] [2026-04-20T06:11:16.035Z] Checked if tokens are valid: true, expires at: 1776668874171 [debug] [2026-04-20T06:11:16.036Z] >>> [apiv2][query] GET https://firebase.googleapis.com/v1beta1/projects/expo-starter-9daef/adminSdkConfig [none] [debug] [2026-04-20T06:11:16.463Z] <<< [apiv2][status] GET https://firebase.googleapis.com/v1beta1/projects/expo-starter-9daef/adminSdkConfig 200 [debug] [2026-04-20T06:11:16.464Z] <<< [apiv2][body] GET https://firebase.googleapis.com/v1beta1/projects/expo-starter-9daef/adminSdkConfig {"projectId":"expo-starter-9daef","storageBucket":"expo-starter-9daef.firebasestorage.app"} [info] i functions: Watching "/home/leon/Workspace/perso/starter/expo-starter/functions" for Cloud Functions... {"metadata":{"emulator":{"name":"functions"},"message":"Watching \"/home/leon/Workspace/perso/starter/expo-starter/functions\" for Cloud Functions..."}} [debug] [2026-04-20T06:11:16.479Z] Validating nodejs source [debug] [2026-04-20T06:11:16.835Z] > [functions] package.json contents: { "name": "functions", "scripts": { "lint": "ESLINT_USE_FLAT_CONFIG=false eslint --ext .js,.ts src", "build": "tsc", "build:watch": "tsc --watch", "serve": "npm run build && firebase emulators:start --only functions", "shell": "npm run build && firebase functions:shell", "start": "npm run shell", "deploy": "firebase deploy --only functions", "logs": "firebase functions:log" }, "engines": { "node": "24" }, "main": "lib/index.js", "dependencies": { "firebase-admin": "^13.6.0", "firebase-functions": "^7.0.0" }, "devDependencies": { "@typescript-eslint/eslint-plugin": "^5.12.0", "@typescript-eslint/parser": "^5.12.0", "eslint": "^8.9.0", "eslint-config-google": "^0.14.0", "eslint-plugin-import": "^2.25.4", "firebase-functions-test": "^3.4.1", "typescript": "^6.0.0" }, "private": true } [debug] [2026-04-20T06:11:16.836Z] Building nodejs source [debug] [2026-04-20T06:11:16.836Z] Failed to find version of module node: reached end of search path /home/leon/Workspace/perso/starter/expo-starter/functions/node_modules [warn] ⚠ functions: You've requested "node" version "24", but the standalone Firebase CLI comes with bundled Node "20". [info] ✔ functions: To use a different Node.js version, consider removing the standalone Firebase CLI and switching to "firebase-tools" on npm. [debug] [2026-04-20T06:11:16.837Z] Could not find functions.yaml. Must use http discovery [debug] [2026-04-20T06:11:16.839Z] Found firebase-functions binary at '/home/leon/Workspace/perso/starter/expo-starter/functions/node_modules/.bin/firebase-functions' [info] Serving at port 8224 [debug] [2026-04-20T06:11:17.159Z] Got response from /__/functions.yaml {"endpoints":{"deleteUserAuthOnUserDocumentDeleted":{"availableMemoryMb":null,"timeoutSeconds":null,"minInstances":null,"maxInstances":10,"ingressSettings":null,"concurrency":null,"serviceAccountEmail":null,"vpc":null,"platform":"gcfv2","labels":{},"eventTrigger":{"eventType":"google.cloud.firestore.document.v1.deleted","eventFilters":{"database":"(default)","namespace":"(default)"},"eventFilterPathPatterns":{"document":"users/{uid}"},"retry":false},"entryPoint":"deleteUserAuthOnUserDocumentDeleted"},"sendTestPushNotification":{"availableMemoryMb":null,"timeoutSeconds":null,"minInstances":null,"maxInstances":10,"ingressSettings":null,"concurrency":null,"serviceAccountEmail":null,"vpc":null,"platform":"gcfv2","labels":{},"callableTrigger":{},"entryPoint":"sendTestPushNotification"}},"specVersion":"v1alpha1","requiredAPIs":[],"extensions":{}} [info] ✔ functions: Loaded functions definitions from source: deleteUserAuthOnUserDocumentDeleted, sendTestPushNotification. {"metadata":{"emulator":{"name":"functions"},"message":"Loaded functions definitions from source: deleteUserAuthOnUserDocumentDeleted, sendTestPushNotification."}} [info] i functions[us-central1-deleteUserAuthOnUserDocumentDeleted]: function ignored because the firestore emulator does not exist or is not running. {"metadata":{"emulator":{"name":"functions"},"message":"function ignored because the firestore emulator does not exist or is not running."}} [info] ✔ functions[us-central1-sendTestPushNotification]: http function initialized (http://127.0.0.1:5001/expo-starter-9daef/us-central1/sendTestPushNotification). {"metadata":{"emulator":{"name":"functions"},"message":"\u001b[1mhttp\u001b[22m function initialized (http://127.0.0.1:5001/expo-starter-9daef/us-central1/sendTestPushNotification)."}} [debug] [2026-04-20T06:11:21.191Z] Could not find VSCode notification endpoint: FetchError: request to http://localhost:40001/vscode/notify failed, reason: connect ECONNREFUSED 127.0.0.1:40001. If you are not running the Firebase SQL Connect VSCode extension, this is expected and not an issue. [info] ┌─────────────────────────────────────────────────────────────┐ │ ✔ All emulators ready! It is now safe to connect your app. │ │ i View Emulator UI at http://127.0.0.1:4000/ │ └─────────────────────────────────────────────────────────────┘ ┌───────────┬──────────────┬─────────────────────────────────┐ │ Emulator │ Host:Port │ View in Emulator UI │ ├───────────┼──────────────┼─────────────────────────────────┤ │ Functions │ 0.0.0.0:5001 │ http://127.0.0.1:4000/functions │ └───────────┴──────────────┴─────────────────────────────────┘ Emulator Hub host: 127.0.0.1 port: 4400 Other reserved ports: 4500 Issues? Report them at https://github.com/firebase/firebase-tools/issues and attach the *-debug.log files. [debug] [2026-04-20T06:14:50.136Z] Functions emulator received unknown request at path /favicon.ico [debug] [2026-04-20T06:17:58.356Z] File /home/leon/Workspace/perso/starter/expo-starter/functions/src/notifications.ts changed, reloading triggers {"metadata":{"emulator":{"name":"functions"},"message":"File /home/leon/Workspace/perso/starter/expo-starter/functions/src/notifications.ts changed, reloading triggers"}} [debug] [2026-04-20T06:17:59.356Z] Validating nodejs source [debug] [2026-04-20T06:17:59.732Z] > [functions] package.json contents: { "name": "functions", "scripts": { "lint": "ESLINT_USE_FLAT_CONFIG=false eslint --ext .js,.ts src", "build": "tsc", "build:watch": "tsc --watch", "serve": "npm run build && firebase emulators:start --only functions", "shell": "npm run build && firebase functions:shell", "start": "npm run shell", "deploy": "firebase deploy --only functions", "logs": "firebase functions:log" }, "engines": { "node": "24" }, "main": "lib/index.js", "dependencies": { "firebase-admin": "^13.6.0", "firebase-functions": "^7.0.0" }, "devDependencies": { "@typescript-eslint/eslint-plugin": "^5.12.0", "@typescript-eslint/parser": "^5.12.0", "eslint": "^8.9.0", "eslint-config-google": "^0.14.0", "eslint-plugin-import": "^2.25.4", "firebase-functions-test": "^3.4.1", "typescript": "^6.0.0" }, "private": true } [debug] [2026-04-20T06:17:59.732Z] Building nodejs source [debug] [2026-04-20T06:17:59.732Z] Failed to find version of module node: reached end of search path /home/leon/Workspace/perso/starter/expo-starter/functions/node_modules [warn] ⚠ functions: You've requested "node" version "24", but the standalone Firebase CLI comes with bundled Node "20". [info] ✔ functions: To use a different Node.js version, consider removing the standalone Firebase CLI and switching to "firebase-tools" on npm. [debug] [2026-04-20T06:17:59.733Z] Could not find functions.yaml. Must use http discovery [debug] [2026-04-20T06:17:59.734Z] Found firebase-functions binary at '/home/leon/Workspace/perso/starter/expo-starter/functions/node_modules/.bin/firebase-functions' [info] Serving at port 8152 [debug] [2026-04-20T06:18:00.131Z] Got response from /__/functions.yaml {"endpoints":{"deleteUserAuthOnUserDocumentDeleted":{"availableMemoryMb":null,"timeoutSeconds":null,"minInstances":null,"maxInstances":10,"ingressSettings":null,"concurrency":null,"serviceAccountEmail":null,"vpc":null,"platform":"gcfv2","labels":{},"eventTrigger":{"eventType":"google.cloud.firestore.document.v1.deleted","eventFilters":{"database":"(default)","namespace":"(default)"},"eventFilterPathPatterns":{"document":"users/{uid}"},"retry":false},"entryPoint":"deleteUserAuthOnUserDocumentDeleted"},"sendTestPushNotification":{"availableMemoryMb":null,"timeoutSeconds":null,"minInstances":null,"maxInstances":10,"ingressSettings":null,"concurrency":null,"serviceAccountEmail":null,"vpc":null,"platform":"gcfv2","labels":{},"callableTrigger":{},"entryPoint":"sendTestPushNotification"}},"specVersion":"v1alpha1","requiredAPIs":[],"extensions":{}} [info] ✔ functions: Loaded functions definitions from source: deleteUserAuthOnUserDocumentDeleted, sendTestPushNotification. {"metadata":{"emulator":{"name":"functions"},"message":"Loaded functions definitions from source: deleteUserAuthOnUserDocumentDeleted, sendTestPushNotification."}} [debug] [2026-04-20T06:18:04.814Z] File /home/leon/Workspace/perso/starter/expo-starter/functions/lib/users.js.map changed, reloading triggers {"metadata":{"emulator":{"name":"functions"},"message":"File /home/leon/Workspace/perso/starter/expo-starter/functions/lib/users.js.map changed, reloading triggers"}} [debug] [2026-04-20T06:18:04.814Z] File /home/leon/Workspace/perso/starter/expo-starter/functions/lib/users.js changed, reloading triggers {"metadata":{"emulator":{"name":"functions"},"message":"File /home/leon/Workspace/perso/starter/expo-starter/functions/lib/users.js changed, reloading triggers"}} [debug] [2026-04-20T06:18:04.821Z] File /home/leon/Workspace/perso/starter/expo-starter/functions/lib/notifications.js.map changed, reloading triggers {"metadata":{"emulator":{"name":"functions"},"message":"File /home/leon/Workspace/perso/starter/expo-starter/functions/lib/notifications.js.map changed, reloading triggers"}} [debug] [2026-04-20T06:18:04.822Z] File /home/leon/Workspace/perso/starter/expo-starter/functions/lib/notifications.js changed, reloading triggers {"metadata":{"emulator":{"name":"functions"},"message":"File /home/leon/Workspace/perso/starter/expo-starter/functions/lib/notifications.js changed, reloading triggers"}} [debug] [2026-04-20T06:18:04.823Z] File /home/leon/Workspace/perso/starter/expo-starter/functions/lib/index.js.map changed, reloading triggers {"metadata":{"emulator":{"name":"functions"},"message":"File /home/leon/Workspace/perso/starter/expo-starter/functions/lib/index.js.map changed, reloading triggers"}} [debug] [2026-04-20T06:18:04.823Z] File /home/leon/Workspace/perso/starter/expo-starter/functions/lib/index.js changed, reloading triggers {"metadata":{"emulator":{"name":"functions"},"message":"File /home/leon/Workspace/perso/starter/expo-starter/functions/lib/index.js changed, reloading triggers"}} [debug] [2026-04-20T06:18:05.823Z] Validating nodejs source [debug] [2026-04-20T06:18:06.192Z] > [functions] package.json contents: { "name": "functions", "scripts": { "lint": "ESLINT_USE_FLAT_CONFIG=false eslint --ext .js,.ts src", "build": "tsc", "build:watch": "tsc --watch", "serve": "npm run build && firebase emulators:start --only functions", "shell": "npm run build && firebase functions:shell", "start": "npm run shell", "deploy": "firebase deploy --only functions", "logs": "firebase functions:log" }, "engines": { "node": "24" }, "main": "lib/index.js", "dependencies": { "firebase-admin": "^13.6.0", "firebase-functions": "^7.0.0" }, "devDependencies": { "@typescript-eslint/eslint-plugin": "^5.12.0", "@typescript-eslint/parser": "^5.12.0", "eslint": "^8.9.0", "eslint-config-google": "^0.14.0", "eslint-plugin-import": "^2.25.4", "firebase-functions-test": "^3.4.1", "typescript": "^6.0.0" }, "private": true } [debug] [2026-04-20T06:18:06.192Z] Building nodejs source [debug] [2026-04-20T06:18:06.192Z] Failed to find version of module node: reached end of search path /home/leon/Workspace/perso/starter/expo-starter/functions/node_modules [warn] ⚠ functions: You've requested "node" version "24", but the standalone Firebase CLI comes with bundled Node "20". [info] ✔ functions: To use a different Node.js version, consider removing the standalone Firebase CLI and switching to "firebase-tools" on npm. [debug] [2026-04-20T06:18:06.193Z] Could not find functions.yaml. Must use http discovery [debug] [2026-04-20T06:18:06.193Z] Found firebase-functions binary at '/home/leon/Workspace/perso/starter/expo-starter/functions/node_modules/.bin/firebase-functions' [info] Serving at port 8735 [debug] [2026-04-20T06:18:06.554Z] Got response from /__/functions.yaml {"endpoints":{"deleteUserAuthOnUserDocumentDeleted":{"availableMemoryMb":null,"timeoutSeconds":null,"minInstances":null,"maxInstances":10,"ingressSettings":null,"concurrency":null,"serviceAccountEmail":null,"vpc":null,"platform":"gcfv2","labels":{},"eventTrigger":{"eventType":"google.cloud.firestore.document.v1.deleted","eventFilters":{"database":"(default)","namespace":"(default)"},"eventFilterPathPatterns":{"document":"users/{uid}"},"retry":false},"entryPoint":"deleteUserAuthOnUserDocumentDeleted"},"sendTestPushNotification":{"availableMemoryMb":null,"timeoutSeconds":null,"minInstances":null,"maxInstances":10,"ingressSettings":null,"concurrency":null,"serviceAccountEmail":null,"vpc":null,"platform":"gcfv2","labels":{},"callableTrigger":{},"entryPoint":"sendTestPushNotification"}},"specVersion":"v1alpha1","requiredAPIs":[],"extensions":{}} [info] ✔ functions: Loaded functions definitions from source: deleteUserAuthOnUserDocumentDeleted, sendTestPushNotification. {"metadata":{"emulator":{"name":"functions"},"message":"Loaded functions definitions from source: deleteUserAuthOnUserDocumentDeleted, sendTestPushNotification."}}