To overcome the problem, a simple pip3 install async_timeout fixes the issue
It seems this only happens for Python < 3.11.3. So a possible fix is to set the min required python version to 3.11.3 or add the package in the pyproject.toml>= 3.11
Originally created by @wirthual on GitHub (Oct 10, 2024).
# Bug Report
I searched the issues for keyword `async_timeout`
## Installation Method
Pip
## Environment
- **Open WebUI Version:**
Name: open-webui
Version: 0.3.32
- **Operating System:** Ubuntu 22.04 Python 3.11.2
**Confirmation:**
- [x] I have read and followed all the instructions provided in the README.md.
- [x] I am on the latest version of both Open WebUI and Ollama.
- [x] I have provided the exact steps to reproduce the bug in the "Steps to Reproduce" section below.
## Expected Behavior:
open-webui is starting
## Actual Behavior:
`ModuleNotFoundError: No module named 'async_timeout'`
## Description
Missing dependency
**Bug Summary:**
open-webui does not start
## Reproduction Details
**Steps to Reproduce:**
```bash
python3.11 -m venv .venv
source .venv/bin/activate
pip3 install open-webui
open-webui serve
```
## Logs and Screenshots
```
│ /asyncio/connection.py:37 in <module> │
│ │
│ 34 if sys.version_info >= (3, 11, 3): │
│ 35 │ from asyncio import timeout as async_timeout │
│ 36 else: │
│ ❱ 37 │ from async_timeout import timeout as async_timeout │
│ 38 │
│ 39 from redis.asyncio.retry import Retry │
│ 40 from redis.backoff import NoBackoff │
│ │
│ ╭───────────────────────────────── locals ─────────────────────────────────╮ │
│ │ asyncio = <module 'asyncio' from │ │
│ │ '/usr/lib/python3.11/asyncio/__init__.py'> │ │
│ │ Callable = typing.Callable │ │
│ │ copy = <module 'copy' from '/usr/lib/python3.11/copy.py'> │ │
│ │ enum = <module 'enum' from '/usr/lib/python3.11/enum.py'> │ │
│ │ inspect = <module 'inspect' from '/usr/lib/python3.11/inspect.py'> │ │
│ │ Iterable = typing.Iterable │ │
│ │ List = typing.List │ │
│ │ Mapping = typing.Mapping │ │
│ │ Optional = typing.Optional │ │
│ │ Set = typing.Set │ │
│ │ socket = <module 'socket' from '/usr/lib/python3.11/socket.py'> │ │
│ │ ssl = <module 'ssl' from '/usr/lib/python3.11/ssl.py'> │ │
│ │ sys = <module 'sys' (built-in)> │ │
│ │ Tuple = typing.Tuple │ │
│ │ Type = typing.Type │ │
│ │ Union = typing.Union │ │
│ │ warnings = <module 'warnings' from '/usr/lib/python3.11/warnings.py'> │ │
│ │ weakref = <module 'weakref' from '/usr/lib/python3.11/weakref.py'> │ │
│ ╰────────────────���─────────────────────────────────────────────────────────╯ │
╰──────────────────────────────────────────────────────────────────────────────╯
ModuleNotFoundError: No module named 'async_timeout'
```
## Additional Information
To overcome the problem, a simple
`pip3 install async_timeout` fixes the issue
It seems this only happens for Python < 3.11.3. So a possible fix is to set the min required python version to 3.11.3 or add the package in the pyproject.toml>= 3.11
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Originally created by @wirthual on GitHub (Oct 10, 2024).
Bug Report
I searched the issues for keyword
async_timeoutInstallation Method
Pip
Environment
Open WebUI Version:
Name: open-webui
Version: 0.3.32
Operating System: Ubuntu 22.04 Python 3.11.2
Confirmation:
Expected Behavior:
open-webui is starting
Actual Behavior:
ModuleNotFoundError: No module named 'async_timeout'Description
Missing dependency
Bug Summary:
open-webui does not start
Reproduction Details
Steps to Reproduce:
Logs and Screenshots
Additional Information
To overcome the problem, a simple
pip3 install async_timeoutfixes the issueIt seems this only happens for Python < 3.11.3. So a possible fix is to set the min required python version to 3.11.3 or add the package in the pyproject.toml>= 3.11
@tjbck commented on GitHub (Oct 12, 2024):
Fixed on dev!