- 
                Notifications
    
You must be signed in to change notification settings  - Fork 679
 
Description
Describe the problem
Launching the web interface from code opens a web page, but the page is empty except for the text "Not Found". The terminal shows this error:
{"t":{"$date":"2025-10-20T09:38:04.210Z"},"s":"I",  "c":"CONTROL",  "id":20697,   "ctx":"main","msg":"Renamed existing log file","attr":{"oldLogPath":"/home/jeroen/.fiftyone/var/lib/mongo/log/mongo.log","newLogPath":"/home/jeroen/.fiftyone/var/lib/mongo/log/mongo.log.2025-10-20T09-38-04"}}
Subprocess ['/home/jeroen/.pyenv/versions/tmp2/lib/python3.10/site-packages/fiftyone/db/bin/mongod', '--dbpath', '/home/jeroen/.fiftyone/var/lib/mongo', '--logpath', '/home/jeroen/.fiftyone/var/lib/mongo/log/mongo.log', '--port', '0', '--nounixsocket'] exited with error -6:
I tried running rm -rf ~/.fiftyone/, after which the error is no longer shown in terminal, but the web page still doesn't load.
I ran into this after installing supervisely-6.73.457. There's no requirements conflicts according to pip, but after looking around in the dependency trees for likely culprits, it seems the required version of starlette causes the problem.
Fiftyone requirements specify starlette>=0.24.0, but any version of fiftyone>=1.0.0 (at least up to 1.8.1) actually needs starlette>=0.42.0 to load the web interface. However, older versions of starlette do work if I downgrade to fiftyone==0.25.2.
It seems to also depend on the Python version. The issue shows up on Python 3.10 and 3.11, but I can't reproduce it in Python 3.12.
Side-note: two of my colleagues somehow have working Python 3.10 environments with fiftyone==1.7.2 and starlette==0.35.1, so I'm not 100% sure starlette is the root cause. Unfortunately I'm unable to reproduce their exact environment on my machine because it has unresovable dependencies (the result of installing lots of stuff over time, it's an env for messing around).
Code to reproduce issue
Just the example code from the docs:
import fiftyone as fo
import fiftyone.zoo as foz
dataset = foz.load_zoo_dataset("quickstart")
session = fo.launch_app(dataset)
session.wait()System information
- OS Platform and Distribution (e.g., Linux Ubuntu 22.04): Ubuntu 24.04.3 LTS
 - Python version (
python --version): 3.10.16 - FiftyOne version (
fiftyone --version): 1.8.1 - FiftyOne installed from (pip or source): pip
 
Other info/logs
Willingness to contribute
- Yes. I can contribute a fix for this bug independently
 -  Yes. I would be willing to contribute a fix for this bug with guidance
from the FiftyOne community - No. I cannot contribute a bug fix at this time