firebase-tools: Infinite loading collections on Firestore Emulator UI
[REQUIRED] Environment info
firebase-tools: 12.6.1
Platform: macOS
[REQUIRED] Test case
Run firebase init, select Functions and Emulators, use an existing project, select Typescript, enable linting, install dependencies with npm, setup Authentication, Functions, Firestore, Storage emulators, use default ports, enable Emulator UI.
Once firebase init is finished, uncomment the helloWorld lines of TS code.
Modify the serve npm command in functions/package.json to "serve": "npm run build && firebase emulators:start --only functions,firestore"
Go to http://127.0.0.1:4000/firestore
[REQUIRED] Steps to reproduce
Create a new Firebase project with firebase init, selecting Functions and Emulators as products, choosing TS, connecting to an existing project and running npm run serve to test the helloWorld function.
[REQUIRED] Expected behavior
When I open http://127.0.0.1:4000/firestore I would expect to see an empty firestore database and be able to add data to it.
[REQUIRED] Actual behavior
> npm run build && firebase emulators:start --only functions,firestore --inspect-functions
> build
> tsc
i emulators: Starting emulators: functions, firestore
⚠ functions: You are running the Functions emulator in debug mode (port=9229). This means that functions will execute in sequence rather than in parallel.
⚠ functions: The following emulators are not running, calls to these services from the Functions emulator will affect production: auth, database, hosting, pubsub, storage
⚠ functions: Your GOOGLE_APPLICATION_CREDENTIALS environment variable points to /Users/dalonso/secrets/giftit-207d2-0f228517529a.json. Non-emulated services will access production using these credentials. Be careful!
⚠ firestore: Cloud Firestore Emulator does not support multiple databases yet.
⚠ firestore: Did not find a Cloud Firestore rules file specified in a firebase.json config file.
⚠ firestore: The emulator will default to allowing all reads and writes. Learn more about this option: https://firebase.google.com/docs/emulator-suite/install_and_configure#security_rules_configuration.
i firestore: Firestore Emulator logging to firestore-debug.log
✔ firestore: Firestore Emulator UI websocket is running on 9150.
i ui: Emulator UI logging to ui-debug.log
i functions: Watching "/Users/dalonso/git/giftit/GiftitHQ/giftit-backend/functions/ts-firebase-functions/functions" for Cloud Functions...
⚠ functions: Your requested "node" version "18" doesn't match your global version "19". Using node@19 from host.
Serving at port 8948
shutdown requested via /__/quitquitquit
✔ functions: Loaded functions definitions from source: helloWorld.
✔ functions[us-central1-helloWorld]: http function initialized (http://127.0.0.1:5001/giftit-207d2/us-central1/helloWorld).
> Debugger listening on ws://127.0.0.1:9229/0f833b4e-b16b-441f-892b-5d46df351822
> For help, see: https://nodejs.org/en/docs/inspector
┌─────────────────────────────────────────────────────────────┐
│ ✔ 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 │ 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 │
└───────────┴────────────────┴─────────────────────────────────┘
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.
About this issue
- Original URL
- State: open
- Created 9 months ago
- Reactions: 1
- Comments: 30 (3 by maintainers)
I have the same problem with Mac OS Sonoma 14.3. If I set the Firestore port in firebase.json to anything other than 8080, it works. Can anyone else confirm this?
Do you have anything already running on 8080? (
lsof -i TCP:8080
)I managed to solve this problem by turning off “Communication Safety” in MacOS settings. (Screen Time > Communication Safety > Communication Safety)
@kroikie. Yes, I was able to make it work for the time being with firebase-tools 12.7.0 and node 18.18.2.
I will update you if I experience any problems in upcoming days.