Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Regression from node 18 CVE-2024-27980 #7026

Closed
megamisan opened this issue Apr 21, 2024 · 4 comments · Fixed by #7033
Closed

Regression from node 18 CVE-2024-27980 #7026

megamisan opened this issue Apr 21, 2024 · 4 comments · Fixed by #7033

Comments

@megamisan
Copy link

megamisan commented Apr 21, 2024

CVE-2024-27980 prevents pubsub emulator from starting with current code on node 18.20.2. Using 18.20.1 works.

See also: nodejs/node#52554 Release Blog Post

[REQUIRED] Environment info

firebase-tools: 13.7.3

Platform: Windows 11

Node: 18.20.2

Npm: 10.5.0

[REQUIRED] Test case

Create a project with pubsub emulator active.

[REQUIRED] Steps to reproduce

Run firebase emulators:start

[REQUIRED] Expected behavior

(personal information replaced in output)

[2024-04-21T14:14:54.426Z] > 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"]
[2024-04-21T14:14:54.427Z] > authorizing via signed-in user (******@******)
[2024-04-21T14:14:54.503Z] openjdk version "17.0.10" 2024-01-16

[2024-04-21T14:14:54.504Z] OpenJDK Runtime Environment Temurin-17.0.10+7 (build 17.0.10+7)
OpenJDK 64-Bit Server VM Temurin-17.0.10+7 (build 17.0.10+7, mixed mode, sharing)

[2024-04-21T14:14:54.531Z] Parsed Java major version: 17
i  emulators: Starting emulators: auth, functions, firestore, hosting, pubsub, storage {"metadata":{"emulator":{"name":"hub"},"message":"Starting emulators: auth, functions, firestore, hosting, pubsub, storage"}}
[2024-04-21T14:14:54.547Z] [logging] Logging Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:14:54.548Z] [auth] Authentication Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:14:54.548Z] [firestore] Firestore Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:14:54.548Z] [firestore.websocket] websocket server for firestore only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:14:54.548Z] [hosting] Hosting Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:14:54.549Z] [pubsub] Pub/Sub Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:14:54.549Z] [storage] Storage Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:14:54.549Z] assigned listening specs for emulators {"user":{"hub":[{"address":"127.0.0.1","family":"IPv4","port":4400},{"address":"::1","family":"IPv6","port":4400}],"ui":[{"address":"127.0.0.1","family":"IPv4","port":4000},{"address":"::1","family":"IPv6","port":4000}],"logging":[{"address":"127.0.0.1","family":"IPv4","port":4500}],"auth":[{"address":"127.0.0.1","family":"IPv4","port":9099}],"firestore":[{"address":"127.0.0.1","family":"IPv4","port":8080}],"firestore.websocket":[{"address":"127.0.0.1","family":"IPv4","port":9150}],"hosting":[{"address":"127.0.0.1","family":"IPv4","port":5000}],"pubsub":[{"address":"127.0.0.1","family":"IPv4","port":8085}],"storage":[{"address":"127.0.0.1","family":"IPv4","port":9199}]},"metadata":{"message":"assigned listening specs for emulators"}}
[2024-04-21T14:14:54.556Z] [hub] writing locator at C:\Users\******\AppData\Local\Temp\hub-******.json
[2024-04-21T14:14:54.569Z] [functions] Functions Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:14:54.570Z] [eventarc] Eventarc Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:14:54.570Z] late-assigned ports for functions and eventarc emulators {"user":{"hub":[{"address":"127.0.0.1","family":"IPv4","port":4400},{"address":"::1","family":"IPv6","port":4400}],"ui":[{"address":"127.0.0.1","family":"IPv4","port":4000},{"address":"::1","family":"IPv6","port":4000}],"logging":[{"address":"127.0.0.1","family":"IPv4","port":4500}],"auth":[{"address":"127.0.0.1","family":"IPv4","port":9099}],"firestore":[{"address":"127.0.0.1","family":"IPv4","port":8080}],"firestore.websocket":[{"address":"127.0.0.1","family":"IPv4","port":9150}],"hosting":[{"address":"127.0.0.1","family":"IPv4","port":5000}],"pubsub":[{"address":"127.0.0.1","family":"IPv4","port":8085}],"storage":[{"address":"127.0.0.1","family":"IPv4","port":9199}],"functions":[{"address":"127.0.0.1","family":"IPv4","port":5001}],"eventarc":[{"address":"127.0.0.1","family":"IPv4","port":9299}]},"metadata":{"message":"late-assigned ports for functions and eventarc emulators"}}
!  functions: The following emulators are not running, calls to these services from the Functions emulator will affect production: database {"metadata":{"emulator":{"name":"functions"},"message":"The following emulators are not running, calls to these services from the Functions emulator will affect production: \u001b[1mdatabase\u001b[22m"}}
[2024-04-21T14:14:54.575Z] defaultcredentials: writing to file C:\Users\******\AppData\Roaming\firebase\******_application_default_credentials.json
[2024-04-21T14:14:54.578Z] Setting GAC to C:\Users\******\AppData\Roaming\firebase\******_application_default_credentials.json {"metadata":{"emulator":{"name":"functions"},"message":"Setting GAC to C:\\Users\\******\\AppData\\Roaming\\firebase\\******_application_default_credentials.json"}}
[2024-04-21T14:14:54.581Z] >>> [apiv2][query] GET https://firebase.googleapis.com/v1beta1/projects/******/adminSdkConfig [none]
[2024-04-21T14:14:55.127Z] <<< [apiv2][status] GET https://firebase.googleapis.com/v1beta1/projects/******/adminSdkConfig 200
[2024-04-21T14:14:55.127Z] <<< [apiv2][body] GET https://firebase.googleapis.com/v1beta1/projects/******/adminSdkConfig {"projectId":"******","databaseURL":"https://******-default-rtdb.europe-west1.firebasedatabase.app","storageBucket":"******.appspot.com","locationId":"europe-west"}
[2024-04-21T14:14:55.146Z] Ignoring unsupported arg: auto_download {"metadata":{"emulator":{"name":"firestore"},"message":"Ignoring unsupported arg: auto_download"}}
[2024-04-21T14:14:55.146Z] Ignoring unsupported arg: single_project_mode_error {"metadata":{"emulator":{"name":"firestore"},"message":"Ignoring unsupported arg: single_project_mode_error"}}
[2024-04-21T14:14:55.146Z] Starting Firestore Emulator with command {"binary":"java","args":["-Dgoogle.cloud_firestore.debug_log_level=FINE","-Duser.language=en","-jar","C:\\Users\\******\\.cache\\firebase\\emulators\\cloud-firestore-emulator-v1.19.4.jar","--host","127.0.0.1","--port",8080,"--websocket_port",9150,"--project_id","******","--rules","C:\\Users\\******\\PhpstormProjects\\******\\firestore.rules","--single_project_mode",true,"--functions_emulator","127.0.0.1:5001"],"optionalArgs":["port","webchannel_port","host","rules","websocket_port","functions_emulator","seed_from_export","project_id","single_project_mode"],"joinArgs":false} {"metadata":{"emulator":{"name":"firestore"},"message":"Starting Firestore Emulator with command {\"binary\":\"java\",\"args\":[\"-Dgoogle.cloud_firestore.debug_log_level=FINE\",\"-Duser.language=en\",\"-jar\",\"C:\\\\Users\\\\******\\\\.cache\\\\firebase\\\\emulators\\\\cloud-firestore-emulator-v1.19.4.jar\",\"--host\",\"127.0.0.1\",\"--port\",8080,\"--websocket_port\",9150,\"--project_id\",\"******\",\"--rules\",\"C:\\\\Users\\\\******\\\\PhpstormProjects\\\\******\\\\firestore.rules\",\"--single_project_mode\",true,\"--functions_emulator\",\"127.0.0.1:5001\"],\"optionalArgs\":[\"port\",\"webchannel_port\",\"host\",\"rules\",\"websocket_port\",\"functions_emulator\",\"seed_from_export\",\"project_id\",\"single_project_mode\"],\"joinArgs\":false}"}}
i  firestore: Firestore Emulator logging to firestore-debug.log {"metadata":{"emulator":{"name":"firestore"},"message":"Firestore Emulator logging to \u001b[1mfirestore-debug.log\u001b[22m"}}
[2024-04-21T14:14:56.202Z] Apr 21, 2024 4:14:56 PM com.google.cloud.datastore.emulator.firestore.websocket.WebSocketServer start
INFO: Started WebSocket server on ws://127.0.0.1:9150
 {"metadata":{"emulator":{"name":"firestore"},"message":"Apr 21, 2024 4:14:56 PM com.google.cloud.datastore.emulator.firestore.websocket.WebSocketServer start\r\nINFO: Started WebSocket server on ws://127.0.0.1:9150\r\n"}}
[2024-04-21T14:14:56.235Z] API endpoint: http://127.0.0.1:8080
If you are using a library that supports the FIRESTORE_EMULATOR_HOST environment variable, run:
 {"metadata":{"emulator":{"name":"firestore"},"message":"API endpoint: http://127.0.0.1:8080\nIf you are using a library that supports the FIRESTORE_EMULATOR_HOST environment variable, run:\r\n"}}
[2024-04-21T14:14:56.236Z]
   export FIRESTORE_EMULATOR_HOST=127.0.0.1:8080

If you are running a Firestore in Datastore Mode project, run:

   export DATASTORE_EMULATOR_HOST=127.0.0.1:8080

Note: Support for Datastore Mode is in preview. If you encounter any bugs please file at https://github.com/firebase/firebase-tools/issues.
Dev App Server is now running.

 {"metadata":{"emulator":{"name":"firestore"},"message":"\n   export FIRESTORE_EMULATOR_HOST=127.0.0.1:8080\n\nIf you are running a Firestore in Datastore Mode project, run:\r\n\n   export DATASTORE_EMULATOR_HOST=127.0.0.1:8080\n\nNote: Support for Datastore Mode is in preview. If you encounter any bugs please file at https://github.com/firebase/firebase-tools/issues.\r\nDev App Server is now running.\n\r\n"}}
+  firestore: Firestore Emulator UI websocket is running on 9150. {"metadata":{"emulator":{"name":"firestore"},"message":"Firestore Emulator UI websocket is running on 9150."}}
[2024-04-21T14:15:01.799Z] Ignoring unsupported arg: projectId {"metadata":{"emulator":{"name":"pubsub"},"message":"Ignoring unsupported arg: projectId"}}
[2024-04-21T14:15:01.799Z] Ignoring unsupported arg: auto_download {"metadata":{"emulator":{"name":"pubsub"},"message":"Ignoring unsupported arg: auto_download"}}
[2024-04-21T14:15:01.800Z] Starting Pub/Sub Emulator with command {"binary":"C:\\Users\\******\\.cache\\firebase\\emulators\\pubsub-emulator-0.8.2\\pubsub-emulator\\bin\\cloud-pubsub-emulator.bat","args":["--host=127.0.0.1","--port=8085"],"optionalArgs":["port","host"],"joinArgs":true} {"metadata":{"emulator":{"name":"pubsub"},"message":"Starting Pub/Sub Emulator with command {\"binary\":\"C:\\\\Users\\\\******\\\\.cache\\\\firebase\\\\emulators\\\\pubsub-emulator-0.8.2\\\\pubsub-emulator\\\\bin\\\\cloud-pubsub-emulator.bat\",\"args\":[\"--host=127.0.0.1\",\"--port=8085\"],\"optionalArgs\":[\"port\",\"host\"],\"joinArgs\":true}"}}
i  pubsub: Pub/Sub Emulator logging to pubsub-debug.log {"metadata":{"emulator":{"name":"pubsub"},"message":"Pub/Sub Emulator logging to \u001b[1mpubsub-debug.log\u001b[22m"}}
[2024-04-21T14:15:01.812Z]
C:\Users\******\PhpstormProjects\******>if "Windows_NT" == "Windows_NT" setlocal
 {"metadata":{"emulator":{"name":"pubsub"},"message":"\r\nC:\\Users\\******\\PhpstormProjects\\******>if \"Windows_NT\" == \"Windows_NT\" setlocal\r\n"}}
[2024-04-21T14:15:01.813Z]
C:\Users\******\PhpstormProjects\******>set DIRNAME=C:\Users\******\.cache\firebase\emulators\pubsub-emulator-0.8.2\pubsub-emulator\bin\

C:\Users\******\PhpstormProjects\******>if "C:\Users\******\.cache\firebase\emulators\pubsub-emulator-0.8.2\pubsub-emulator\bin\" == "" set DIRNAME=.
 {"metadata":{"emulator":{"name":"pubsub"},"message":"\r\nC:\\Users\\******\\PhpstormProjects\\******>set DIRNAME=C:\\Users\\******\\.cache\\firebase\\emulators\\pubsub-emulator-0.8.2\\pubsub-emulator\\bin\\ \r\n\r\nC:\\Users\\******\\PhpstormProjects\\******>if \"C:\\Users\\******\\.cache\\firebase\\emulators\\pubsub-emulator-0.8.2\\pubsub-emulator\\bin\\\" == \"\" set DIRNAME=. \r\n"}}
[2024-04-21T14:15:01.814Z]
C:\Users\******\PhpstormProjects\******>set APP_BASE_NAME=cloud-pubsub-emulator

C:\Users\******\PhpstormProjects\******>set APP_HOME=C:\Users\******\.cache\firebase\emulators\pubsub-emulator-0.8.2\pubsub-emulator\bin\..
 {"metadata":{"emulator":{"name":"pubsub"},"message":"\r\nC:\\Users\\******\\PhpstormProjects\\******>set APP_BASE_NAME=cloud-pubsub-emulator \r\n\r\nC:\\Users\\******\\PhpstormProjects\\******>set APP_HOME=C:\\Users\\******\\.cache\\firebase\\emulators\\pubsub-emulator-0.8.2\\pubsub-emulator\\bin\\.. \r\n"}}
[2024-04-21T14:15:01.814Z]
C:\Users\******\PhpstormProjects\******>set DEFAULT_JVM_OPTS=

C:\Users\******\PhpstormProjects\******>if defined JAVA_HOME goto findJavaFromJavaHome

C:\Users\******\PhpstormProjects\******>set JAVA_EXE=java.exe

C:\Users\******\PhpstormProjects\******>java.exe -version  1>NUL 2>&1
 {"metadata":{"emulator":{"name":"pubsub"},"message":"\r\nC:\\Users\\******\\PhpstormProjects\\******>set DEFAULT_JVM_OPTS= \r\n\r\nC:\\Users\\******\\PhpstormProjects\\******>if defined JAVA_HOME goto findJavaFromJavaHome \r\n\r\nC:\\Users\\******\\PhpstormProjects\\******>set JAVA_EXE=java.exe \r\n\r\nC:\\Users\\******\\PhpstormProjects\\******>java.exe -version  1>NUL 2>&1 \r\n"}}
[2024-04-21T14:15:02.428Z] 
C:\Users\******\PhpstormProjects\******>if "0" == "0" goto init
 {"metadata":{"emulator":{"name":"pubsub"},"message":"\r\nC:\\Users\\******\\PhpstormProjects\\******>if \"0\" == \"0\" goto init \r\n"}}
[2024-04-21T14:15:02.429Z]
C:\Users\******\PhpstormProjects\******>if not "Windows_NT" == "Windows_NT" goto win9xME_args

C:\Users\******\PhpstormProjects\******>set CMD_LINE_ARGS=

C:\Users\******\PhpstormProjects\******>set _SKIP=2
 {"metadata":{"emulator":{"name":"pubsub"},"message":"\r\nC:\\Users\\******\\PhpstormProjects\\******>if not \"Windows_NT\" == \"Windows_NT\" goto win9xME_args \r\n\r\nC:\\Users\\******\\PhpstormProjects\\******>set CMD_LINE_ARGS= \r\n\r\nC:\\Users\\******\\PhpstormProjects\\******>set _SKIP=2 \r\n"}}
[2024-04-21T14:15:02.430Z]
C:\Users\******\PhpstormProjects\******>if "x--host" == "x" goto execute

C:\Users\******\PhpstormProjects\******>set CMD_LINE_ARGS=--host=127.0.0.1 --port=8085
 {"metadata":{"emulator":{"name":"pubsub"},"message":"\r\nC:\\Users\\******\\PhpstormProjects\\******>if \"x--host\" == \"x\" goto execute \r\n\r\nC:\\Users\\******\\PhpstormProjects\\******>set CMD_LINE_ARGS=--host=127.0.0.1 --port=8085 \r\n"}}
[2024-04-21T14:15:02.430Z]
C:\Users\******\PhpstormProjects\******>set CLASSPATH=C:\Users\******\.cache\firebase\emulators\pubsub-emulator-0.8.2\pubsub-emulator\bin\..\lib\cloud-pubsub-emulator-0.8.2.jar
 {"metadata":{"emulator":{"name":"pubsub"},"message":"\r\nC:\\Users\\******\\PhpstormProjects\\******>set CLASSPATH=C:\\Users\\******\\.cache\\firebase\\emulators\\pubsub-emulator-0.8.2\\pubsub-emulator\\bin\\..\\lib\\cloud-pubsub-emulator-0.8.2.jar \r\n"}}
[2024-04-21T14:15:02.431Z]
C:\Users\******\PhpstormProjects\******>"java.exe"     -jar "C:\Users\******\.cache\firebase\emulators\pubsub-emulator-0.8.2\pubsub-emulator\bin\..\lib\cloud-pubsub-emulator-0.8.2.jar" --host=127.0.0.1 --port=8085
 {"metadata":{"emulator":{"name":"pubsub"},"message":"\r\nC:\\Users\\******\\PhpstormProjects\\******>\"java.exe\"     -jar \"C:\\Users\\******\\.cache\\firebase\\emulators\\pubsub-emulator-0.8.2\\pubsub-emulator\\bin\\..\\lib\\cloud-pubsub-emulator-0.8.2.jar\" --host=127.0.0.1 --port=8085 \r\n"}}
[2024-04-21T14:15:04.152Z] Ignoring unsupported arg: port {"metadata":{"emulator":{"name":"storage"},"message":"Ignoring unsupported arg: port"}}
[2024-04-21T14:15:04.916Z] Temp file directory for storage emulator: C:\Users\MYGODD~1\AppData\Local\Temp/firebase/storage/blobs {"metadata":{"emulator":{"name":"storage"},"message":"Temp file directory for storage emulator: C:\\Users\\MYGODD~1\\AppData\\Local\\Temp/firebase/storage/blobs"}}
[2024-04-21T14:15:04.922Z] >>> [apiv2][query] GET https://firebasehosting.googleapis.com/v1beta1/projects/******/sites
[2024-04-21T14:15:05.825Z] <<< [apiv2][status] GET https://firebasehosting.googleapis.com/v1beta1/projects/******/sites 200
[2024-04-21T14:15:05.826Z] <<< [apiv2][body] GET https://firebasehosting.googleapis.com/v1beta1/projects/******/sites {"sites":[{"name":"projects/******/sites/******","defaultUrl":"https://******.web.app","appId":"1:26804324378:web:c52ea8b765023f2a25a9a3","type":"DEFAULT_SITE"}]}
[2024-04-21T14:15:05.826Z] >>> [apiv2][query] GET https://firebase.googleapis.com/v1beta1/projects/******/webApps/1:26804324378:web:c52ea8b765023f2a25a9a3/config [none]
[2024-04-21T14:15:06.498Z] <<< [apiv2][status] GET https://firebase.googleapis.com/v1beta1/projects/******/webApps/1:26804324378:web:c52ea8b765023f2a25a9a3/config 200
[2024-04-21T14:15:06.498Z] <<< [apiv2][body] GET https://firebase.googleapis.com/v1beta1/projects/******/webApps/1:26804324378:web:c52ea8b765023f2a25a9a3/config {"projectId":"cospl
ay-forms","appId":"1:26804324378:web:c52ea8b765023f2a25a9a3","databaseURL":"https://******-default-rtdb.europe-west1.firebasedatabase.app","storageBucket":"******.appspot.co
m","locationId":"europe-west","apiKey":"******","authDomain":"******.firebaseapp.com","messagingSenderId":"26804324378","measurementId":"G-YFQ5Y79R8Q"}
[2024-04-21T14:15:06.503Z] >>> [apiv2][query] GET https://firebase.googleapis.com/v1beta1/projects/****** [none]
[2024-04-21T14:15:06.721Z] <<< [apiv2][status] GET https://firebase.googleapis.com/v1beta1/projects/****** 200
[2024-04-21T14:15:06.721Z] <<< [apiv2][body] GET https://firebase.googleapis.com/v1beta1/projects/****** {"projectId":"******","projectNumber":"26804324378","displayName":"Cosplay Forms","name":"projects/******","resources":{"hostingSite":"******","realtimeDatabaseInstance":"******-default-rtdb","storageBucket":"******.appspot.com","locationId":"europe-west"},"state":"ACTIVE","etag":"1_cbb0436f-a7c6-4810-b49a-0814dd5bbb74"}
i  hosting[******]: Serving hosting files from: dist {"metadata":{"emulator":{"name":"hosting"},"message":"Serving hosting files from: \u001b[1mdist\u001b[22m"}}
+  hosting[******]: Local server: http://127.0.0.1:5000 {"metadata":{"emulator":{"name":"hosting"},"message":"Local server: \u001b[4m\u001b[1mhttp://127.0.0.1:5000\u001b[22m\u001b[24m"}}
[2024-04-21T14:15:06.742Z] Ignoring unsupported arg: auto_download {"metadata":{"emulator":{"name":"ui"},"message":"Ignoring unsupported arg: auto_download"}}
[2024-04-21T14:15:06.742Z] Ignoring unsupported arg: port {"metadata":{"emulator":{"name":"ui"},"message":"Ignoring unsupported arg: port"}}
[2024-04-21T14:15:06.743Z] Starting Emulator UI with command {"binary":"node","args":["C:\\Users\\******\\.cache\\firebase\\emulators\\ui-v1.11.8\\server\\server.mjs"],"optionalArgs":[],"joinArgs":false} {"metadata":{"emulator":{"name":"ui"},"message":"Starting Emulator UI with command {\"binary\":\"node\",\"args\":[\"C:\\\\Users\\\\******\\\\.cache\\\\firebase\\\\emulators\\\\ui-v1.11.8\\\\server\\\\server.mjs\"],\"optionalArgs\":[],\"joinArgs\":false}"}}
i  ui: Emulator UI logging to ui-debug.log {"metadata":{"emulator":{"name":"ui"},"message":"Emulator UI logging to \u001b[1mui-debug.log\u001b[22m"}}
[2024-04-21T14:15:06.926Z] Web / API server started at 127.0.0.1:4000
 {"metadata":{"emulator":{"name":"ui"},"message":"Web / API server started at 127.0.0.1:4000\n"}}
[2024-04-21T14:15:06.926Z] Web / API server started at ::1:4000
 {"metadata":{"emulator":{"name":"ui"},"message":"Web / API server started at ::1:4000\n"}}
i  functions: Watching "C:\Users\******\PhpstormProjects\******\functions" for Cloud Functions... {"metadata":{"emulator":{"name":"functions"},"message":"Watching \"C:\\Users\\******\\PhpstormProjects\\******\\functions\" for Cloud Functions..."}}
[2024-04-21T14:15:07.041Z] Validating nodejs source
[2024-04-21T14:15:08.379Z] > [functions] package.json contents: {
  "name": "functions",
  "scripts": {
    "lint": "eslint --ext .js,.ts src",
    "build": "tsc",
    "build:watch": "tsc --watch",
    "tools": "ts-node src/tools.ts"
  },
  "engines": {
    "node": "18"
  },
  "main": "lib/index.js",
  "dependencies": {
    "@google-cloud/local-auth": "^3.0.1",
    "firebase-admin": "^11.8.0",
    "firebase-functions": "^4.9.0",
    "googleapis": "^134.0.0",
    "inquirer": "^8.2.6"
  },
  "devDependencies": {
    "@types/inquirer": "^8.2.10",
    "@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.1.0",
    "ts-node": "^10.9.2",
    "typescript": "^4.9.5"
  },
  "private": true,
  "volta": {
    "node": "18.20.2"
  }
}
[2024-04-21T14:15:08.380Z] Building nodejs source
[2024-04-21T14:15:08.381Z] Failed to find version of module node: reached end of search path C:\Users\******\PhpstormProjects\******\functions\node_modules
+  functions: Using node@18 from host.
i  functions: Loaded environment variables from .env.
[2024-04-21T14:15:08.388Z] Could not find functions.yaml. Must use http discovery
[2024-04-21T14:15:08.399Z] Found firebase-functions binary at 'C:\Users\******\PhpstormProjects\******\functions\node_modules\.bin\firebase-functions'
Serving at port 8325

[2024-04-21T14:15:08.866Z] Got response from /__/functions.yaml {"endpoints":{"domainAsAdmin":{"platform":"gcfv1","availableMemoryMb":null,"timeoutSeconds":null,"minInstances":null,"maxInstances":null,"ingressSettings":null,"serviceAccountEmail":null,"vpc":null,"region":["europe-west1"],"eventTrigger":{"eventType":"providers/firebase.auth/eventTypes/user.create","eventFilters":{"resource":"projects/******"},"retry":false},"labels":{},"entryPoint":"domainAsAdmin"},"contestsDefaultFields":{"platform":"gcfv1","availableMemoryMb":null,"timeoutSeconds":null,"minInstances":null,"maxInstances":null,"ingressSettings":null,"serviceAccountEmail":null,"vpc":null,"region":["europe-west1"],"eventTrigger":{"eventType":"providers/cloud.firestore/eventTypes/document.create","eventFilters":{"resource":"projects/******/databases/(default)/documents/contests/{contestId}"},"retry":false},"labels":{},"entryPoint":"contestsDefaultFields"},"contestSubscriptionCreation":{"platform":"gcfv1","availableMemoryMb":null,"timeoutSeconds":null,"minInstances":null,"maxInstances":null,"ingressSettings":null,"serviceAccountEmail":null,"vpc":null,"region":["europe-west1"],"eventTrigger":{"eventType":"providers/cloud.firestore/eventTypes/document.create","eventFilters":{"resource":"projects/******/databases/(default)/documents/contests/{contestId}/subscriptions/{userId}"},"retry":false},"labels":{},"entryPoint":"contestSubscriptionCreation"},"contestSubscriptionUpdate":{"platform":"gcfv1","availableMemoryMb":null,"timeoutSeconds":null,"minInstances":null,"maxInstances":null,"ingressSettings":null,"serviceAccountEmail":null,"vpc":null,"region":["europe-west1"],"eventTrigger":{"eventType":"providers/cloud.firestore/eventTypes/document.update","eventFilters":{"resource":"projects/******/databases/(default)/documents/contests/{contestId}/subscriptions/{userId}"},"retry":false},"labels":{},"entryPoint":"contestSubscriptionUpdate"}},"specVersion":"v1alpha1","requiredAPIs":[]}
+  functions: Loaded functions definitions from source: domainAsAdmin, contestsDefaultFields, contestSubscriptionCreation, contestSubscriptionUpdate. {"metadata":{"emulator":{"name":"functions"},"message":"Loaded functions definitions from source: domainAsAdmin, contestsDefaultFields, contestSubscriptionCreation, contestSubscriptionUpdate."}}
[2024-04-21T14:15:08.897Z] addAuthTrigger {"eventTrigger":{"eventType":"providers/firebase.auth/eventTypes/user.create","resource":"projects/******"}}
+  functions[europe-west1-domainAsAdmin]: auth function initialized. {"metadata":{"emulator":{"name":"functions"},"message":"\u001b[1mauth\u001b[22m function initialized."}}
[2024-04-21T14:15:08.898Z] addFirestoreTrigger "{\"eventTrigger\":{\"eventType\":\"providers/cloud.firestore/eventTypes/document.create\",\"resource\":\"projects/******/databases/(default)/documents/contests/{contestId}\",\"service\":\"firestore.googleapis.com\"}}"
[2024-04-21T14:15:08.899Z] >>> [apiv2][query] PUT http://127.0.0.1:8080/emulator/v1/projects/******/triggers/europe-west1-contestsDefaultFields-0 [none]
[2024-04-21T14:15:08.899Z] >>> [apiv2][body] PUT http://127.0.0.1:8080/emulator/v1/projects/******/triggers/europe-west1-contestsDefaultFields-0 "{\"eventTrigger\":{\"eventType\":\"providers/cloud.firestore/eventTypes/document.create\",\"resource\":\"projects/******/databases/(default)/documents/contests/{contestId}\",\"service\":\"firestore.googleapis.com\"}}"
[2024-04-21T14:15:08.905Z] Apr 21, 2024 4:15:08 PM io.gapi.emulators.netty.HttpVersionRoutingHandler channelRead
INFO: Detected non-HTTP/2 connection.
 {"metadata":{"emulator":{"name":"firestore"},"message":"Apr 21, 2024 4:15:08 PM io.gapi.emulators.netty.HttpVersionRoutingHandler channelRead\r\nINFO: Detected non-HTTP/2 connection.\r\n"}}
[2024-04-21T14:15:09.035Z] Apr 21, 2024 4:15:09 PM io.gapi.emulators.netty.HttpVersionRoutingHandler channelRead
INFO: Detected HTTP/2 connection.
 {"metadata":{"emulator":{"name":"firestore"},"message":"Apr 21, 2024 4:15:09 PM io.gapi.emulators.netty.HttpVersionRoutingHandler channelRead\r\nINFO: Detected HTTP/2 connection.\r\n"}} 
[2024-04-21T14:15:09.717Z] <<< [apiv2][status] PUT http://127.0.0.1:8080/emulator/v1/projects/******/triggers/europe-west1-contestsDefaultFields-0 200
[2024-04-21T14:15:09.717Z] <<< [apiv2][body] PUT http://127.0.0.1:8080/emulator/v1/projects/******/triggers/europe-west1-contestsDefaultFields-0 {}
+  functions[europe-west1-contestsDefaultFields]: firestore function initialized. {"metadata":{"emulator":{"name":"functions"},"message":"\u001b[1mfirestore\u001b[22m function initialized."}}
[2024-04-21T14:15:09.718Z] addFirestoreTrigger "{\"eventTrigger\":{\"eventType\":\"providers/cloud.firestore/eventTypes/document.create\",\"resource\":\"projects/******/databases/(default)/documents/contests/{contestId}/subscriptions/{userId}\",\"service\":\"firestore.googleapis.com\"}}"
[2024-04-21T14:15:09.718Z] >>> [apiv2][query] PUT http://127.0.0.1:8080/emulator/v1/projects/******/triggers/europe-west1-contestSubscriptionCreation-0 [none]
[2024-04-21T14:15:09.719Z] >>> [apiv2][body] PUT http://127.0.0.1:8080/emulator/v1/projects/******/triggers/europe-west1-contestSubscriptionCreation-0 "{\"eventTrigger\":{\"eventType\":\"providers/cloud.firestore/eventTypes/document.create\",\"resource\":\"projects/******/databases/(default)/documents/contests/{contestId}/subscriptions/{userId}\",\"service\":\"firestore.googleapis.com\"}}"
[2024-04-21T14:15:09.722Z] Apr 21, 2024 4:15:09 PM io.gapi.emulators.netty.HttpVersionRoutingHandler channelRead
INFO: Detected non-HTTP/2 connection.
 {"metadata":{"emulator":{"name":"firestore"},"message":"Apr 21, 2024 4:15:09 PM io.gapi.emulators.netty.HttpVersionRoutingHandler channelRead\r\nINFO: Detected non-HTTP/2 connection.\r\n"}}
[2024-04-21T14:15:09.729Z] <<< [apiv2][status] PUT http://127.0.0.1:8080/emulator/v1/projects/******/triggers/europe-west1-contestSubscriptionCreation-0 200
[2024-04-21T14:15:09.730Z] <<< [apiv2][body] PUT http://127.0.0.1:8080/emulator/v1/projects/******/triggers/europe-west1-contestSubscriptionCreation-0 {}
+  functions[europe-west1-contestSubscriptionCreation]: firestore function initialized. {"metadata":{"emulator":{"name":"functions"},"message":"\u001b[1mfirestore\u001b[22m function initialized."}}
[2024-04-21T14:15:09.731Z] addFirestoreTrigger "{\"eventTrigger\":{\"eventType\":\"providers/cloud.firestore/eventTypes/document.update\",\"resource\":\"projects/******/databases/(default)/documents/contests/{contestId}/subscriptions/{userId}\",\"service\":\"firestore.googleapis.com\"}}"
[2024-04-21T14:15:09.731Z] >>> [apiv2][query] PUT http://127.0.0.1:8080/emulator/v1/projects/******/triggers/europe-west1-contestSubscriptionUpdate-0 [none]
[2024-04-21T14:15:09.731Z] >>> [apiv2][body] PUT http://127.0.0.1:8080/emulator/v1/projects/******/triggers/europe-west1-contestSubscriptionUpdate-0 "{\"eventTrigger\":{\"eventType\":\"providers/cloud.firestore/eventTypes/document.update\",\"resource\":\"projects/******/databases/(default)/documents/contests/{contestId}/subscriptions/{userId}\",\"service\":\"firestore.googleapis.com\"}}"
[2024-04-21T14:15:09.735Z] Apr 21, 2024 4:15:09 PM io.gapi.emulators.netty.HttpVersionRoutingHandler channelRead
INFO: Detected non-HTTP/2 connection.
 {"metadata":{"emulator":{"name":"firestore"},"message":"Apr 21, 2024 4:15:09 PM io.gapi.emulators.netty.HttpVersionRoutingHandler channelRead\r\nINFO: Detected non-HTTP/2 connection.\r\n"}}
[2024-04-21T14:15:09.743Z] <<< [apiv2][status] PUT http://127.0.0.1:8080/emulator/v1/projects/******/triggers/europe-west1-contestSubscriptionUpdate-0 200
[2024-04-21T14:15:09.743Z] <<< [apiv2][body] PUT http://127.0.0.1:8080/emulator/v1/projects/******/triggers/europe-west1-contestSubscriptionUpdate-0 {}
+  functions[europe-west1-contestSubscriptionUpdate]: firestore function initialized. {"metadata":{"emulator":{"name":"functions"},"message":"\u001b[1mfirestore\u001b[22m function initialized."}}

┌─────────────────────────────────────────────────────────────┐
│ ✔  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             │
├────────────────┼────────────────┼─────────────────────────────────┤
│ Authentication │ 127.0.0.1:9099 │ http://127.0.0.1:4000/auth      │
├────────────────┼────────────────┼─────────────────────────────────┤
│ Functions      │ 127.0.0.1:5001 │ http://127.0.0.1:4000/functions │
├────────────────┼────────────────┼─────────────────────────────────┤
│ Firestore      │ 127.0.0.1:8080 │ http://127.0.0.1:4000/firestore │
├────────────────┼────────────────┼─────────────────────────────────┤
│ Hosting        │ 127.0.0.1:5000 │ n/a                             │
├────────────────┼────────────────┼─────────────────────────────────┤
│ Pub/Sub        │ 127.0.0.1:8085 │ n/a                             │
├────────────────┼────────────────┼─────────────────────────────────┤
│ Storage        │ 127.0.0.1:9199 │ http://127.0.0.1:4000/storage   │
└────────────────┴────────────────┴─────────────────────────────────┘
  Emulator Hub running at 127.0.0.1:4400
  Other reserved ports: 4500, 9150

Issues? Report them at https://github.com/firebase/firebase-tools/issues and attach the *-debug.log files.

[REQUIRED] Actual behavior

(personal information replaced in output)

$ firebase emulators:start --debug
[2024-04-21T14:00:31.781Z] > 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"]
[2024-04-21T14:00:31.782Z] > authorizing via signed-in user (******@******)
[2024-04-21T14:00:31.847Z] openjdk version "17.0.10" 2024-01-16
OpenJDK Runtime Environment Temurin-17.0.10+7 (build 17.0.10+7)
OpenJDK 64-Bit Server VM Temurin-17.0.10+7 (build 17.0.10+7, mixed mode, sharing)

[2024-04-21T14:00:31.870Z] Parsed Java major version: 17
i  emulators: Starting emulators: auth, functions, firestore, hosting, pubsub, storage {"metadata":{"emulator":{"name":"hub"},"message":"Starting emulators: auth, functions, firestore, hosting, pubsub, storage"}}
[2024-04-21T14:00:31.892Z] [logging] Logging Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:00:31.893Z] [auth] Authentication Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:00:31.893Z] [firestore] Firestore Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:00:31.894Z] [firestore.websocket] websocket server for firestore only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:00:31.894Z] [hosting] Hosting Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:00:31.894Z] [pubsub] Pub/Sub Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:00:31.895Z] [storage] Storage Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:00:31.895Z] assigned listening specs for emulators {"user":{"hub":[{"address":"127.0.0.1","family":"IPv4","port":4400},{"address":"::1","family":"IPv6","port":4400}],"ui":[{"address":"127.0.0.1","family":"IPv4","port":4000},{"address":"::1","family":"IPv6","port":4000}],"logging":[{"address":"127.0.0.1","family":"IPv4","port":4500}],"auth":[{"address":"127.0.0.1","family":"IPv4","port":9099}],"firestore":[{"address":"127.0.0.1","family":"IPv4","port":8080}],"firestore.websocket":[{"address":"127.0.0.1","family":"IPv4","port":9150}],"hosting":[{"address":"127.0.0.1","family":"IPv4","port":5000}],"pubsub":[{"address":"127.0.0.1","family":"IPv4","port":8085}],"storage":[{"address":"127.0.0.1","family":"IPv4","port":9199}]},"metadata":{"message":"assigned listening specs for emulators"}}
[2024-04-21T14:00:31.902Z] [hub] writing locator at C:\Users\******\AppData\Local\Temp\hub-******.json
[2024-04-21T14:00:31.914Z] [functions] Functions Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:00:31.914Z] [eventarc] Eventarc Emulator only supports listening on one address (127.0.0.1). Not listening on ::1
[2024-04-21T14:00:31.914Z] late-assigned ports for functions and eventarc emulators {"user":{"hub":[{"address":"127.0.0.1","family":"IPv4","port":4400},{"address":"::1","family":"IPv6","port":4400}],"ui":[{"address":"127.0.0.1","family":"IPv4","port":4000},{"address":"::1","family":"IPv6","port":4000}],"logging":[{"address":"127.0.0.1","family":"IPv4","port":4500}],"auth":[{"address":"127.0.0.1","family":"IPv4","port":9099}],"firestore":[{"address":"127.0.0.1","family":"IPv4","port":8080}],"firestore.websocket":[{"address":"127.0.0.1","family":"IPv4","port":9150}],"hosting":[{"address":"127.0.0.1","family":"IPv4","port":5000}],"pubsub":[{"address":"127.0.0.1","family":"IPv4","port":8085}],"storage":[{"address":"127.0.0.1","family":"IPv4","port":9199}],"functions":[{"address":"127.0.0.1","family":"IPv4","port":5001}],"eventarc":[{"address":"127.0.0.1","family":"IPv4","port":9299}]},"metadata":{"message":"late-assigned ports for functions and eventarc emulators"}}
!  functions: The following emulators are not running, calls to these services from the Functions emulator will affect production: database {"metadata":{"emulator":{"name":"functions"},"message":"The following emulators are not running, calls to these services from the Functions emulator will affect production: \u001b[1mdatabase\u001b[22m"}}
[2024-04-21T14:00:31.919Z] defaultcredentials: writing to file C:\Users\******\AppData\Roaming\firebase\******_application_default_credentials.json
[2024-04-21T14:00:31.922Z] Setting GAC to C:\Users\******\AppData\Roaming\firebase\******_application_default_credentials.json {"metadata":{"emulator":{"name":"functions"},"message":"Setting GAC to C:\\Users\\******\\AppData\\Roaming\\firebase\\******_application_default_credentials.json"}}
[2024-04-21T14:00:31.925Z] >>> [apiv2][query] GET https://firebase.googleapis.com/v1beta1/projects/******/adminSdkConfig [none]
[2024-04-21T14:00:32.169Z] <<< [apiv2][status] GET https://firebase.googleapis.com/v1beta1/projects/******/adminSdkConfig 200
[2024-04-21T14:00:32.169Z] <<< [apiv2][body] GET https://firebase.googleapis.com/v1beta1/projects/******/adminSdkConfig {"projectId":"******","databaseURL":"https://******-default-rtdb.europe-west1.firebasedatabase.app","storageBucket":"******.appspot.com","locationId":"europe-west"}
[2024-04-21T14:00:32.190Z] Ignoring unsupported arg: auto_download {"metadata":{"emulator":{"name":"firestore"},"message":"Ignoring unsupported arg: auto_download"}}
[2024-04-21T14:00:32.190Z] Ignoring unsupported arg: single_project_mode_error {"metadata":{"emulator":{"name":"firestore"},"message":"Ignoring unsupported arg: single_project_mode_error"}}
[2024-04-21T14:00:32.191Z] Starting Firestore Emulator with command {"binary":"java","args":["-Dgoogle.cloud_firestore.debug_log_level=FINE","-Duser.language=en","-jar","C:\\Users\\******\\.cache\\firebase\\emulators\\cloud-firestore-emulator-v1.19.4.jar","--host","127.0.0.1","--port",8080,"--websocket_port",9150,"--project_id","******","--rules","C:\\Users\\******\\PhpstormProjects\\******\\firestore.rules","--single_project_mode",true,"--functions_emulator","127.0.0.1:5001"],"optionalArgs":["port","webchannel_port","host","rules","websocket_port","functions_emulator","seed_from_export","project_id","single_project_mode"],"joinArgs":false} {"metadata":{"emulator":{"name":"firestore"},"message":"Starting Firestore Emulator with command {\"binary\":\"java\",\"args\":[\"-Dgoogle.cloud_firestore.debug_log_level=FINE\",\"-Duser.language=en\",\"-jar\",\"C:\\\\Users\\\\******\\\\.cache\\\\firebase\\\\emulators\\\\cloud-firestore-emulator-v1.19.4.jar\",\"--host\",\"127.0.0.1\",\"--port\",8080,\"--websocket_port\",9150,\"--project_id\",\"******\",\"--rules\",\"C:\\\\Users\\\\******\\\\PhpstormProjects\\\\******\\\\firestore.rules\",\"--single_project_mode\",true,\"--functions_emulator\",\"127.0.0.1:5001\"],\"optionalArgs\":[\"port\",\"webchannel_port\",\"host\",\"rules\",\"websocket_port\",\"functions_emulator\",\"seed_from_export\",\"project_id\",\"single_project_mode\"],\"joinArgs\":false}"}}
i  firestore: Firestore Emulator logging to firestore-debug.log {"metadata":{"emulator":{"name":"firestore"},"message":"Firestore Emulator logging to \u001b[1mfirestore-debug.log\u001b[22m"}}
[2024-04-21T14:00:33.301Z] Apr 21, 2024 4:00:33 PM com.google.cloud.datastore.emulator.firestore.websocket.WebSocketServer start
INFO: Started WebSocket server on ws://127.0.0.1:9150
 {"metadata":{"emulator":{"name":"firestore"},"message":"Apr 21, 2024 4:00:33 PM com.google.cloud.datastore.emulator.firestore.websocket.WebSocketServer start\r\nINFO: Started WebSocket server on ws://127.0.0.1:9150\r\n"}}
[2024-04-21T14:00:33.331Z] API endpoint: http:// {"metadata":{"emulator":{"name":"firestore"},"message":"API endpoint: http://"}}
[2024-04-21T14:00:33.332Z] 127.0.0.1:8080
If you are using a library that supports the FIRESTORE_EMULATOR_HOST environment variable, run:

   export FIRESTORE_EMULATOR_HOST=127.0.0.1:8080

If you are running a Firestore in Datastore Mode project, run:

   export DATASTORE_EMULATOR_HOST=127.0.0.1:8080

Note: Support for Datastore Mode is in preview. If you encounter any bugs please file at https://github.com/firebase/firebase-tools/issues.
Dev App Server is now running.

 {"metadata":{"emulator":{"name":"firestore"},"message":"127.0.0.1:8080\nIf you are using a library that supports the FIRESTORE_EMULATOR_HOST environment variable, run:\r\n\n   export FIRESTORE_EMULATOR_HOST=127.0.0.1:8080\n\nIf you are running a Firestore in Datastore Mode project, run:\r\n\n   export DATASTORE_EMULATOR_HOST=127.0.0.1:8080\n\nNote: Support for Datastore Mode is in preview. If you encounter any bugs please file at https://github.com/firebase/firebase-tools/issues.\r\nDev App Server is now running.\n\r\n"}}
+  firestore: Firestore Emulator UI websocket is running on 9150. {"metadata":{"emulator":{"name":"firestore"},"message":"Firestore Emulator UI websocket is running on 9150."}}
[2024-04-21T14:00:38.771Z] Ignoring unsupported arg: projectId {"metadata":{"emulator":{"name":"pubsub"},"message":"Ignoring unsupported arg: projectId"}}
[2024-04-21T14:00:38.772Z] Ignoring unsupported arg: auto_download {"metadata":{"emulator":{"name":"pubsub"},"message":"Ignoring unsupported arg: auto_download"}}
[2024-04-21T14:00:38.772Z] Starting Pub/Sub Emulator with command {"binary":"C:\\Users\\******\\.cache\\firebase\\emulators\\pubsub-emulator-0.8.2\\pubsub-emulator\\bin\\cloud-pubsub-emulator.bat","args":["--host=127.0.0.1","--port=8085"],"optionalArgs":["port","host"],"joinArgs":true} {"metadata":{"emulator":{"name":"pubsub"},"message":"Starting Pub/Sub Emulator with command {\"binary\":\"C:\\\\Users\\\\******\\\\.cache\\\\firebase\\\\emulators\\\\pubsub-emulator-0.8.2\\\\pubsub-emulator\\\\bin\\\\cloud-pubsub-emulator.bat\",\"args\":[\"--host=127.0.0.1\",\"--port=8085\"],\"optionalArgs\":[\"port\",\"host\"],\"joinArgs\":true}"}}
!  pubsub: Fatal error occurred:
   Error: spawn EINVAL,
   stopping all running emulators {"metadata":{"emulator":{"name":"pubsub"},"message":"Fatal error occurred: \n   Error: spawn EINVAL, \n   stopping all running emulators"}}
i  functions: Stopping Functions Emulator {"metadata":{"emulator":{"name":"functions"},"message":"Stopping Functions Emulator"}}
!  pubsub: Could not spawn child process for Pub/Sub Emulator. {"metadata":{"emulator":{"name":"pubsub"},"message":"Could not spawn child process for Pub/Sub Emulator."}}
i  firestore: Stopping Firestore Emulator {"metadata":{"emulator":{"name":"firestore"},"message":"Stopping Firestore Emulator"}}
!  Firestore Emulator has exited upon receiving signal: SIGINT
i  pubsub: Stopping Pub/Sub Emulator {"metadata":{"emulator":{"name":"pubsub"},"message":"Stopping Pub/Sub Emulator"}}
i  auth: Stopping Authentication Emulator {"metadata":{"emulator":{"name":"auth"},"message":"Stopping Authentication Emulator"}}
i  eventarc: Stopping Eventarc Emulator {"metadata":{"emulator":{"name":"eventarc"},"message":"Stopping Eventarc Emulator"}}
i  hub: Stopping emulator hub {"metadata":{"emulator":{"name":"hub"},"message":"Stopping emulator hub"}}

Having trouble? Try firebase [command] --help
@aalej
Copy link
Contributor

aalej commented Apr 22, 2024

Hey @megamisan, thanks for reporting this to us and for creating a detailed report. I was able to reproduce this issue. Reading through the blog post you shared, it looks like this affects the versions of Node.js v18.20.2, 20.12.2, and v21.7.3. I’ll raise this to our engineering team so they can take a look into the issue.

A possible workaround for this, as you mentioned, would be to downgrade to a previous version of Node.js. From what I can gather, the ff works:

v18.20.2 (not ok) -> 18.20.1 (ok)
v20.12.2 (not ok) -> v20.12.1 (ok)
v21.7.3 (not ok) -> v21.7.2 (ok)

@ryandn2
Copy link

ryandn2 commented Apr 23, 2024

Still running into issues with this error on Pub/Sub while using Node v20.12.2 & Windows 11, not sure if this was thought to be addressed in the fix above ^

@megamisan
Copy link
Author

megamisan commented Apr 24, 2024

@ryandn2 New release works for me on the initially reported environment. You should create a new (follow up?) issue with logs. Maybe doing some step debugging over the modified code to get more data.
I'm running the emulator on temurin jre17.

@aalej
Copy link
Contributor

aalej commented Apr 25, 2024

Hey @ryandn2, I tried to reproduce this issue again using firebase-tools v13.7.4 with Node.js v20.12.2 on a Windows 10 machine, and no errors were raised when starting the emulators. Also tried using Node.js v21.7.3.

It's possible that the cause of the error you encountered is different from the initial report. Could you please create a new issue and share your firebase-debug.log with us so we can investigate what caused the error?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants