mirror of
https://github.com/open-webui/desktop.git
synced 2026-11-05 01:27:46 +00:00
[GH-ISSUE #220] [Bug]: Windows desktop updater can corrupt embedded runtime on locked file and survive reinstall #136
Labels
No labels
help wanted
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
open-webui/desktop#136
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @Daevalus on GitHub (Jun 1, 2026).
Original GitHub issue: https://github.com/open-webui/desktop/issues/220
Summary
On Windows desktop v0.0.20, Open WebUI can corrupt its own embedded runtime under
C:\Users\<user>\AppData\Roaming\open-webui\pythonwhen it updates that runtime in place while files are still in use.After the failed update, the desktop app continued startup with a partially updated environment, causing import failures such as:
ModuleNotFoundError: No module named 'pydantic_core'ModuleNotFoundError: No module named 'uvicorn._subprocess'open-webui package is not installedA normal uninstall/reinstall of the desktop app did not fix it because the broken runtime persisted under the roaming data directory.
Environment
0.0.2010.0.26200)3.12.13C:\Users\<user>\AppData\Local\Programs\open-webuiC:\Users\<user>\AppData\Roaming\open-webuiWhat happened
The desktop app:
open-webuiand dependencies successfully.Evidence from logs
From
C:\Users\<user>\AppData\Roaming\open-webui\logs\main.log:Initial install succeeded:
Installed 263 packages in 10.94spydantic==2.12.5pydantic-core==2.41.5open-webui==0.9.5Then a later update attempted to mutate the same runtime and failed:
After that, helper components were already broken:
And the main server failed with:
I also verified from the bundled Python environment that
pydanticwas present whilepydantic-corewas not.Actual behavior
AppData\Roaming\open-webuiremains.Expected behavior
If the runtime update fails because files are locked, the desktop app should:
Recovery that worked
The reliable recovery path here was:
C:\Users\<user>\AppData\Roaming\open-webui\config.json.C:\Users\<user>\AppData\Roaming\open-webui\python.open-webui==0.9.5package into the bundled runtime manually.After that, the desktop app started correctly and served HTTP 200 on the local backend.
Suggested fixes
open_webuipydantic_coreuvicorn._subprocessWhy I think this belongs in the Desktop repo
The failure path appears to be in the desktop app's embedded-runtime lifecycle and updater behavior on Windows, not just in
open-webuipackage dependency resolution by itself.@Werve commented on GitHub (Aug 21, 2026):
I encountered a similar issue after trying to force an update using the “Update” button in the GUI; the open-webui module would no longer start properly, not even after reinstalling it from the setup or using the “Uninstall Module” button in the UI.
I resolved this by removing the “open-webui\python\Lib\site-packages” folder and restarting from the desktop app’s setup to re-select the reinstallation from scratch, while keeping the same folder to preserve the data.
I then analyzed the differences and it appears that the following packages were missing from the previous corrupted installation:
open-webui\python\Lib\site-packages\fastapi
open-webui\python\Lib\site-packages\fastapi-0.136.3.dist-info
open-webui\python\Lib\site-packages\google
open-webui\python\Lib\site-packages\lxml
open-webui\python\Lib\site-packages\lxml-6.1.1.dist-info