ModuleNotFoundError: No module named 'typing_extensions'
Describe the bug I run the project on WSL Ubuntu (Windows 11). I get to a missing module error. Steps to Reproduce
- Install according to the instructions (with pipenv under python 3.11)
- When trying to start uvicorn I get this error:
(OpenDevin) marcin@MKLaptop:~/gitrepos/OpenDevin$ uvicorn opendevin.server.listen:app --port 3000
Traceback (most recent call last):
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/bin/uvicorn", line 8, in <module>
sys.exit(main())
^^^^^^
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/click/core.py", line 1157, in __call__
return self.main(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/click/core.py", line 1078, in main
rv = self.invoke(ctx)
^^^^^^^^^^^^^^^^
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/click/core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/click/core.py", line 783, in invoke
return __callback(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/uvicorn/main.py", line 409, in main
run(
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/uvicorn/main.py", line 575, in run
server.run()
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/uvicorn/server.py", line 65, in run
return asyncio.run(self.serve(sockets=sockets))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/runners.py", line 190, in run
return runner.run(main)
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/runners.py", line 118, in run
return self._loop.run_until_complete(task)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "uvloop/loop.pyx", line 1517, in uvloop.loop.Loop.run_until_complete
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/uvicorn/server.py", line 69, in serve
await self._serve(sockets)
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/uvicorn/server.py", line 76, in _serve
config.load()
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/uvicorn/config.py", line 433, in load
self.loaded_app = import_from_string(self.app)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/uvicorn/importer.py", line 22, in import_from_string
raise exc from None
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/uvicorn/importer.py", line 19, in import_from_string
module = importlib.import_module(module_str)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 940, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/home/marcin/gitrepos/OpenDevin/opendevin/server/listen.py", line 1, in <module>
from opendevin.server.session import Session
File "/home/marcin/gitrepos/OpenDevin/opendevin/server/session.py", line 5, in <module>
from fastapi import WebSocketDisconnect
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/fastapi/__init__.py", line 7, in <module>
from .applications import FastAPI as FastAPI
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/fastapi/applications.py", line 16, in <module>
from fastapi import routing
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/fastapi/routing.py", line 22, in <module>
from fastapi import params
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/fastapi/params.py", line 5, in <module>
from fastapi.openapi.models import Example
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/fastapi/openapi/models.py", line 4, in <module>
from fastapi._compat import (
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/fastapi/_compat.py", line 20, in <module>
from fastapi.exceptions import RequestErrorModel
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/fastapi/exceptions.py", line 3, in <module>
from pydantic import BaseModel, create_model
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/pydantic/__init__.py", line 368, in <module>
_getattr_migration = getattr_migration(__name__)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/pydantic/_migration.py", line 260, in getattr_migration
from .errors import PydanticImportError
File "/home/marcin/.local/share/virtualenvs/OpenDevin-EyFo6ESF/lib/python3.11/site-packages/pydantic/errors.py", line 6, in <module>
from typing_extensions import Literal, Self
ModuleNotFoundError: No module named 'typing_extensions'
Expected behavior
Uvicorn should start.
Actual behavior
Getting the error.
Additional context
It worked yesterday, I believe with commit 2a959a199b9f31b249fc0d590df614ba0eb84b06 it was fine.
Does pip install typing-extensions fix the problem? We might have missed it in the Pipfile
@emkaminsk did you see any package installs being skipped during pipenv install? Think this cold be related to #469
@emkaminsk did you see any package installs being skipped during
pipenv install? Think this cold be related to #469
Hard to say - pipenv install drops too much logs.
Agree--remove the -v. Not sure why we put it there
When I remove -v I get no missing dependency message.
Anyway I sort of upgraded the installation procedure and I run pipenv run uvicorn opendevin.server.listen:app --port 3000. This makes sure that the uvicorn runs from inside the pipenv environment (which is actually a venv environment). Now the project starts up every time.
Thanks for reporting back!