Originally created by @HarukaRepo on GitHub (Sep 18, 2025).
Check Existing Issues
I have searched for any existing and/or related issues.
I have searched for any existing and/or related discussions.
I am using the latest version of Open WebUI.
Installation Method
Pip Install
Open WebUI Version
v0.6.25
Ollama Version (if applicable)
0.11.6
Operating System
Windows 11
Browser (if applicable)
140.0.7339.128
Confirmation
I have read and followed all instructions in README.md.
I am using the latest version of both Open WebUI and Ollama.
I have included the browser console logs.
I have included the Docker container logs.
I have provided every relevant configuration, setting, and environment variable used in my setup.
I have clearly listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc).
I have documented step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation. My steps:
Start with the initial platform/version/OS and dependencies used,
Specify exact install/launch/configure commands,
List URLs visited, user input (incl. example values/emails/passwords if needed),
Describe all options and toggles enabled or changed,
Include any files or environmental changes,
Identify the expected and actual result at each stage,
Ensure any reasonably skilled user can follow and hit the same issue.
Expected Behavior
When I start open-webui, and the script has already auto-updated openwebui.
Actual Behavior
The package is already installed in venv open-webui, but the console says this: ModuleNotFoundError: No module named 'itsdangerous'
Steps to Reproduce
Install Python 3.12.8,
update pip to new version
install openWebUI via pip
open-webui is up to date script
There were no errors before, only today's latest update caused errors.
Originally created by @HarukaRepo on GitHub (Sep 18, 2025).
### Check Existing Issues
- [x] I have searched for any existing and/or related issues.
- [x] I have searched for any existing and/or related discussions.
- [x] I am using the latest version of Open WebUI.
### Installation Method
Pip Install
### Open WebUI Version
v0.6.25
### Ollama Version (if applicable)
0.11.6
### Operating System
Windows 11
### Browser (if applicable)
140.0.7339.128
### Confirmation
- [x] I have read and followed all instructions in `README.md`.
- [x] I am using the latest version of **both** Open WebUI and Ollama.
- [x] I have included the browser console logs.
- [x] I have included the Docker container logs.
- [x] I have **provided every relevant configuration, setting, and environment variable used in my setup.**
- [x] I have clearly **listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup** (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc).
- [x] I have documented **step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation**. My steps:
- Start with the initial platform/version/OS and dependencies used,
- Specify exact install/launch/configure commands,
- List URLs visited, user input (incl. example values/emails/passwords if needed),
- Describe all options and toggles enabled or changed,
- Include any files or environmental changes,
- Identify the expected and actual result at each stage,
- Ensure any reasonably skilled user can follow and hit the same issue.
### Expected Behavior
When I start open-webui, and the script has already auto-updated openwebui.
### Actual Behavior
The package is already installed in venv open-webui, but the console says this: ModuleNotFoundError: No module named 'itsdangerous'
### Steps to Reproduce
1. Install Python 3.12.8,
2. update pip to new version
3. install openWebUI via pip
4. open-webui is up to date script
5. There were no errors before, only today's latest update caused errors.
### Logs & Screenshots
Installed 265 packages in 9.16s
Loading WEBUI_SECRET_KEY from file, not provided as an environment variable.
Loading WEBUI_SECRET_KEY from F:\AI\WebUI\.webui_secret_key
╭───────────────────────────────────────── Traceback (most recent call last) ──────────────────────────────────────────╮
│ C:\Users\USER\AppData\Local\uv\cache\archive-v0\2OjspJyap3n_yX0XGlRR2\Lib\site-packages\open_webui\__init__.py:75 in │
│ serve │
│ │
│ 72 │ │ │ os.environ["USE_CUDA_DOCKER"] = "false" ╭───── locals ─────╮ │
│ 73 │ │ │ os.environ["LD_LIBRARY_PATH"] = ":".join(LD_LIBRARY_PATH) │ host = '0.0.0.0' │ │
│ 74 │ │ port = 8080 │ │
│ ❱ 75 │ import open_webui.main # we need set environment variables before importing main ╰──────────────────╯ │
│ 76 │ from open_webui.env import UVICORN_WORKERS # Import the workers setting │
│ 77 │ │
│ 78 │ uvicorn.run( │
│ │
│ C:\Users\USER\AppData\Local\uv\cache\archive-v0\2OjspJyap3n_yX0XGlRR2\Lib\site-packages\open_webui\main.py:49 in │
│ <module> │
│ │
│ 46 │
│ 47 from starlette.exceptions import HTTPException as StarletteHTTPException │
│ 48 from starlette.middleware.base import BaseHTTPMiddleware │
│ ❱ 49 from starlette.middleware.sessions import SessionMiddleware │
│ 50 from starlette.responses import Response, StreamingResponse │
│ 51 from starlette.datastructures import Headers │
│ 52 │
│ │
│ ╭───────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────╮ │
│ │ aiohttp = <module 'aiohttp' from │ │
│ │ 'C:\\Users\\USER\\AppData\\Local\\uv\\cache\\archive-v0\\2OjspJyap3n_yX0XGlRR2\\Lib\\site-packag… │ │
│ │ anyio = <module 'anyio' from │ │
│ │ 'C:\\Users\\USER\\AppData\\Local\\uv\\cache\\archive-v0\\2OjspJyap3n_yX0XGlRR2\\Lib\\site-packag… │ │
│ │ applications = <module 'fastapi.applications' from │ │
│ │ 'C:\\Users\\USER\\AppData\\Local\\uv\\cache\\archive-v0\\2OjspJyap3n_yX0XGlRR2\\Lib\\site-packag… │ │
│ │ asyncio = <module 'asyncio' from │ │
│ │ 'C:\\Users\\USER\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\asyncio\\__init__.py'> │ │
│ │ inspect = <module 'inspect' from │ │
│ │ 'C:\\Users\\USER\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\inspect.py'> │ │
│ │ json = <module 'json' from │ │
│ │ 'C:\\Users\\USER\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\json\\__init__.py'> │ │
│ │ logging = <module 'logging' from │ │
│ │ 'C:\\Users\\USER\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\logging\\__init__.py'> │ │
│ │ mimetypes = <module 'mimetypes' from │ │
│ │ 'C:\\Users\\USER\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\mimetypes.py'> │ │
│ │ Optional = typing.Optional │ │
│ │ os = <module 'os' (frozen)> │ │
│ │ random = <module 'random' from │ │
│ │ 'C:\\Users\\USER\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\random.py'> │ │
│ │ requests = <module 'requests' from │ │
│ │ 'C:\\Users\\USER\\AppData\\Local\\uv\\cache\\archive-v0\\2OjspJyap3n_yX0XGlRR2\\Lib\\site-packag… │ │
│ │ shutil = <module 'shutil' from │ │
│ │ 'C:\\Users\\USER\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\shutil.py'> │ │
│ │ status = <module 'starlette.status' from │ │
│ │ 'C:\\Users\\USER\\AppData\\Local\\uv\\cache\\archive-v0\\2OjspJyap3n_yX0XGlRR2\\Lib\\site-packag… │ │
│ │ sys = <module 'sys' (built-in)> │ │
│ │ time = <module 'time' (built-in)> │ │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
│ │
│ C:\Users\USER\AppData\Local\uv\cache\archive-v0\2OjspJyap3n_yX0XGlRR2\Lib\site-packages\starlette\middleware\session │
│ s.py:7 in <module> │
│ │
│ 4 import typing │
│ 5 from base64 import b64decode, b64encode │
│ 6 │
│ ❱ 7 import itsdangerous │
│ 8 from itsdangerous.exc import BadSignature │
│ 9 │
│ 10 from starlette.datastructures import MutableHeaders, Secret │
│ │
│ ╭───────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────╮ │
│ │ annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) │ │
│ │ json = <module 'json' from │ │
│ │ 'C:\\Users\\USER\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\json\\__init__.py'> │ │
│ │ typing = <module 'typing' from │ │
│ │ 'C:\\Users\\USER\\AppData\\Local\\Programs\\Python\\Python311\\Lib\\typing.py'> │ │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
ModuleNotFoundError: No module named 'itsdangerous'
Press any key to continue . . .
### Additional Information
_No response_
GiteaMirror
added the bug label 2025-11-11 16:54:58 -06:00
I had a similar issue and when reverting back from the latest release to v0.6.28.
I was able to get it operational.
This is what I was using.
uvx --python 3.11 open-webui@v0.6.28 serve
When using the uvx with v0.6.28 there are 291 packages, but now there are 265 packages.
But I see nothing wrong with the uv.lock file. Nor can I see anything in the files listed in the traceback that would hint an issue.
I hope that the following image will be easier to read.
Using Windows 11.
@joocoo commented on GitHub (Sep 18, 2025):
I had a similar issue and when reverting back from the latest release to v0.6.28.
I was able to get it operational.
This is what I was using.
uvx --python 3.11 open-webui@v0.6.28 serve
When using the uvx with v0.6.28 there are 291 packages, but now there are 265 packages.
But I see nothing wrong with the uv.lock file. Nor can I see anything in the files listed in the traceback that would hint an issue.
I hope that the following image will be easier to read.
<img width="2521" height="975" alt="Image" src="https://github.com/user-attachments/assets/22ee66bb-8385-4762-a480-1aac7d0e23ae" />
Using Windows 11.
Some middleware in Starlette is trying to import the itsdangerous library but that's only included with a pip install starlette[full] per their docs and not the default starlette. Open-webui uses FastAPI which wraps starlette so it's probably just a requirements.txt getting out of sync somewhere.
Try doing a pip install itsdangerous or a pip install starlette[full] and see if that resolves it.
@Marclass commented on GitHub (Sep 18, 2025):
Some middleware in Starlette is trying to import the itsdangerous library but that's only included with a pip install starlette[full] per their docs and not the default starlette. Open-webui uses FastAPI which wraps starlette so it's probably just a requirements.txt getting out of sync somewhere.
Try doing a pip install itsdangerous or a pip install starlette[full] and see if that resolves it.
@Marclass commented on GitHub (Sep 18, 2025):
> I had a similar issue and when reverting back from the latest release to v0.6.28. I was able to get it operational.
>
> This is what I was using. uvx --python 3.11 open-webui@v0.6.28 serve
>
> When using the uvx with v0.6.28 there are 291 packages, but now there are 265 packages.
>
> But I see nothing wrong with the uv.lock file. Nor can I see anything in the files listed in the traceback that would hint an issue.
>
> I hope that the following image will be easier to read.
> <img alt="Image" width="2000" height="975" src="https://private-user-images.githubusercontent.com/3761505/490843795-22ee66bb-8385-4762-a480-1aac7d0e23ae.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NTgxNjI4NDUsIm5iZiI6MTc1ODE2MjU0NSwicGF0aCI6Ii8zNzYxNTA1LzQ5MDg0Mzc5NS0yMmVlNjZiYi04Mzg1LTQ3NjItYTQ4MC0xYWFjN2QwZTIzYWUucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDkxOCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTA5MThUMDIyOTA1WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9YzY2MjE4YmY2MDIwNzRkMzA5NTUzZGUwMTkzY2FhYjY1ODc0MTljODlmYTJlNjZkYWRlOTJkZjg3MDU1NGZhZCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.KYUkMaSdYzOeB49UUjgNotiYe5jroS_eHl8_BPTBnsI">
>
> Using Windows 11.
Someone using uvx also posted a temp fix in the discord to add --with itsdangerous to the uvx command line.
https://discord.com/channels/1170866489302188073/1170866490174619690/1417958923121463438
I am not familiar with UV that well but if this does not help, please ignore.
I just am not sure if the uvx command uses the additional packages from the pip install.
I did to a pip install starlette[full] and then attempted to run the latest tag.,
@joocoo commented on GitHub (Sep 18, 2025):
I am not familiar with UV that well but if this does not help, please ignore.
I just am not sure if the uvx command uses the additional packages from the pip install.
I did to a pip install starlette[full] and then attempted to run the latest tag.,
<img width="2558" height="1342" alt="Image" src="https://github.com/user-attachments/assets/5510b9c3-f626-4d39-a8c2-974d2383d7c4" />
yeah seems like .6.29 on is broken with this. I did that pip install above too and it gives the same error. I'll just wait for a .31 i guess
@Nfams commented on GitHub (Sep 18, 2025):
yeah seems like .6.29 on is broken with this. I did that pip install above too and it gives the same error. I'll just wait for a .31 i guess
Same error updating from v0.6.28 to v0.6.30. Mine is a local installation with uv on Ubuntu 22.04. The update removed 27 packages and only 1, open-webui, was added. itsdangerous is one of the 27 packages removed. Going back to v0.6.28 with uv tool install open-webui@0.6.28 turned OWUI on again.
@arruga commented on GitHub (Sep 18, 2025):
Same error updating from v0.6.28 to v0.6.30. Mine is a local installation with uv on Ubuntu 22.04. The update removed 27 packages and only 1, open-webui, was added. itsdangerous is one of the 27 packages removed. Going back to v0.6.28 with uv tool install open-webui@0.6.28 turned OWUI on again.
Adding this flag worked for me as well with the following command inside a uv env: DATA_DIR=~/.open-webui uvx --python 3.11 --with itsdangerous open-webui@latest serve
@NinadKP commented on GitHub (Sep 18, 2025):
> --with itsdangerous
Adding this flag worked for me as well with the following command inside a uv env:
`DATA_DIR=~/.open-webui uvx --python 3.11 --with itsdangerous open-webui@latest serve`
Adding this flag worked for me as well with the following command inside a uv env: DATA_DIR=~/.open-webui uvx --python 3.11 --with itsdangerous open-webui@latest serve
@mattspruiell commented on GitHub (Sep 18, 2025):
> > --with itsdangerous
>
> Adding this flag worked for me as well with the following command inside a uv env: `DATA_DIR=~/.open-webui uvx --python 3.11 --with itsdangerous open-webui@latest serve`
This solution from [NinadKP](https://github.com/open-webui/open-webui/issues/17536#issuecomment-3306873419) worked for me as well.
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 @HarukaRepo on GitHub (Sep 18, 2025).
Check Existing Issues
Installation Method
Pip Install
Open WebUI Version
v0.6.25
Ollama Version (if applicable)
0.11.6
Operating System
Windows 11
Browser (if applicable)
140.0.7339.128
Confirmation
README.md.Expected Behavior
When I start open-webui, and the script has already auto-updated openwebui.
Actual Behavior
The package is already installed in venv open-webui, but the console says this: ModuleNotFoundError: No module named 'itsdangerous'
Steps to Reproduce
Logs & Screenshots
Installed 265 packages in 9.16s
Loading WEBUI_SECRET_KEY from file, not provided as an environment variable.
Loading WEBUI_SECRET_KEY from F:\AI\WebUI.webui_secret_key
╭───────────────────────────────────────── Traceback (most recent call last) ──────────────────────────────────────────╮
│ C:\Users\USER\AppData\Local\uv\cache\archive-v0\2OjspJyap3n_yX0XGlRR2\Lib\site-packages\open_webui__init__.py:75 in │
│ serve │
│ │
│ 72 │ │ │ os.environ["USE_CUDA_DOCKER"] = "false" ╭───── locals ─────╮ │
│ 73 │ │ │ os.environ["LD_LIBRARY_PATH"] = ":".join(LD_LIBRARY_PATH) │ host = '0.0.0.0' │ │
│ 74 │ │ port = 8080 │ │
│ ❱ 75 │ import open_webui.main # we need set environment variables before importing main ╰──────────────────╯ │
│ 76 │ from open_webui.env import UVICORN_WORKERS # Import the workers setting │
│ 77 │ │
│ 78 │ uvicorn.run( │
│ │
│ C:\Users\USER\AppData\Local\uv\cache\archive-v0\2OjspJyap3n_yX0XGlRR2\Lib\site-packages\open_webui\main.py:49 in │
│ │
│ │
│ 46 │
│ 47 from starlette.exceptions import HTTPException as StarletteHTTPException │
│ 48 from starlette.middleware.base import BaseHTTPMiddleware │
│ ❱ 49 from starlette.middleware.sessions import SessionMiddleware │
│ 50 from starlette.responses import Response, StreamingResponse │
│ 51 from starlette.datastructures import Headers │
│ 52 │
│ │
│ ╭───────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────╮ │
│ │ aiohttp = <module 'aiohttp' from │ │
│ │ 'C:\Users\USER\AppData\Local\uv\cache\archive-v0\2OjspJyap3n_yX0XGlRR2\Lib\site-packag… │ │
│ │ anyio = <module 'anyio' from │ │
│ │ 'C:\Users\USER\AppData\Local\uv\cache\archive-v0\2OjspJyap3n_yX0XGlRR2\Lib\site-packag… │ │
│ │ applications = <module 'fastapi.applications' from │ │
│ │ 'C:\Users\USER\AppData\Local\uv\cache\archive-v0\2OjspJyap3n_yX0XGlRR2\Lib\site-packag… │ │
│ │ asyncio = <module 'asyncio' from │ │
│ │ 'C:\Users\USER\AppData\Local\Programs\Python\Python311\Lib\asyncio\__init__.py'> │ │
│ │ inspect = <module 'inspect' from │ │
│ │ 'C:\Users\USER\AppData\Local\Programs\Python\Python311\Lib\inspect.py'> │ │
│ │ json = <module 'json' from │ │
│ │ 'C:\Users\USER\AppData\Local\Programs\Python\Python311\Lib\json\__init__.py'> │ │
│ │ logging = <module 'logging' from │ │
│ │ 'C:\Users\USER\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py'> │ │
│ │ mimetypes = <module 'mimetypes' from │ │
│ │ 'C:\Users\USER\AppData\Local\Programs\Python\Python311\Lib\mimetypes.py'> │ │
│ │ Optional = typing.Optional │ │
│ │ os = <module 'os' (frozen)> │ │
│ │ random = <module 'random' from │ │
│ │ 'C:\Users\USER\AppData\Local\Programs\Python\Python311\Lib\random.py'> │ │
│ │ requests = <module 'requests' from │ │
│ │ 'C:\Users\USER\AppData\Local\uv\cache\archive-v0\2OjspJyap3n_yX0XGlRR2\Lib\site-packag… │ │
│ │ shutil = <module 'shutil' from │ │
│ │ 'C:\Users\USER\AppData\Local\Programs\Python\Python311\Lib\shutil.py'> │ │
│ │ status = <module 'starlette.status' from │ │
│ │ 'C:\Users\USER\AppData\Local\uv\cache\archive-v0\2OjspJyap3n_yX0XGlRR2\Lib\site-packag… │ │
│ │ sys = <module 'sys' (built-in)> │ │
│ │ time = <module 'time' (built-in)> │ │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
│ │
│ C:\Users\USER\AppData\Local\uv\cache\archive-v0\2OjspJyap3n_yX0XGlRR2\Lib\site-packages\starlette\middleware\session │
│ s.py:7 in │
│ │
│ 4 import typing │
│ 5 from base64 import b64decode, b64encode │
│ 6 │
│ ❱ 7 import itsdangerous │
│ 8 from itsdangerous.exc import BadSignature │
│ 9 │
│ 10 from starlette.datastructures import MutableHeaders, Secret │
│ │
│ ╭───────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────╮ │
│ │ annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) │ │
│ │ json = <module 'json' from │ │
│ │ 'C:\Users\USER\AppData\Local\Programs\Python\Python311\Lib\json\__init__.py'> │ │
│ │ typing = <module 'typing' from │ │
│ │ 'C:\Users\USER\AppData\Local\Programs\Python\Python311\Lib\typing.py'> │ │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
ModuleNotFoundError: No module named 'itsdangerous'
Press any key to continue . . .
Additional Information
No response
@nkuhn-vmw commented on GitHub (Sep 18, 2025):
Seeing this same error as well.
@sjw-4 commented on GitHub (Sep 18, 2025):
Same error for me on a VM running Ubuntu server 22.04.5
@adarmawan commented on GitHub (Sep 18, 2025):
Same here, using Win11, python 3.11 + UVX
@v-shah89 commented on GitHub (Sep 18, 2025):
I am running into the same error.
macOS, python 3.11, using uv
@joocoo commented on GitHub (Sep 18, 2025):
I had a similar issue and when reverting back from the latest release to v0.6.28.
I was able to get it operational.
This is what I was using.
uvx --python 3.11 open-webui@v0.6.28 serve
When using the uvx with v0.6.28 there are 291 packages, but now there are 265 packages.
But I see nothing wrong with the uv.lock file. Nor can I see anything in the files listed in the traceback that would hint an issue.
I hope that the following image will be easier to read.
Using Windows 11.
@Marclass commented on GitHub (Sep 18, 2025):
Some middleware in Starlette is trying to import the itsdangerous library but that's only included with a pip install starlette[full] per their docs and not the default starlette. Open-webui uses FastAPI which wraps starlette so it's probably just a requirements.txt getting out of sync somewhere.
Try doing a pip install itsdangerous or a pip install starlette[full] and see if that resolves it.
@Marclass commented on GitHub (Sep 18, 2025):
Someone using uvx also posted a temp fix in the discord to add --with itsdangerous to the uvx command line.
https://discord.com/channels/1170866489302188073/1170866490174619690/1417958923121463438
@joocoo commented on GitHub (Sep 18, 2025):
I am not familiar with UV that well but if this does not help, please ignore.
I just am not sure if the uvx command uses the additional packages from the pip install.
I did to a pip install starlette[full] and then attempted to run the latest tag.,
@Nfams commented on GitHub (Sep 18, 2025):
yeah seems like .6.29 on is broken with this. I did that pip install above too and it gives the same error. I'll just wait for a .31 i guess
@Djordje-Stojanovic commented on GitHub (Sep 18, 2025):
Same error after doing: C:\Finetuning> pip install open-webui
I get: PS C:\Finetuning> open-webui serve:
ModuleNotFoundError: No module named 'itsdangerous'
Python version:
PS C:\Finetuning> python --version
Python 3.11.9
@arruga commented on GitHub (Sep 18, 2025):
Same error updating from v0.6.28 to v0.6.30. Mine is a local installation with uv on Ubuntu 22.04. The update removed 27 packages and only 1, open-webui, was added. itsdangerous is one of the 27 packages removed. Going back to v0.6.28 with uv tool install open-webui@0.6.28 turned OWUI on again.
@nviraj commented on GitHub (Sep 18, 2025):
Facing this as well
@NinadKP commented on GitHub (Sep 18, 2025):
Adding this flag worked for me as well with the following command inside a uv env:
DATA_DIR=~/.open-webui uvx --python 3.11 --with itsdangerous open-webui@latest serve@mattspruiell commented on GitHub (Sep 18, 2025):
This solution from NinadKP worked for me as well.