issue: admin user can't login after password change #5994

Closed
opened 2025-11-11 16:41:50 -06:00 by GiteaMirror · 1 comment
Owner

Originally created by @spookynando on GitHub (Aug 8, 2025).

Check Existing Issues

  • I have searched the existing issues and discussions.
  • I am using the latest version of Open WebUI.

Installation Method

Pip Install

Open WebUI Version

v0.6.18

Ollama Version (if applicable)

v0.11.4

Operating System

macOS Sequoia 15.6 (24G84)

Browser (if applicable)

Safari, Chrome

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

The auth service should have authorised me and taken to the chats page

Actual Behavior

Login button pressed, no errors pop up, nothing happens.

Steps to Reproduce

The situation and steps are best described in the "Additional Information" section.

Logs & Screenshots

Terminal log:

Loading WEBUI_SECRET_KEY from file, not provided as an environment variable.
Loading WEBUI_SECRET_KEY from /Users/ls1/.webui_secret_key
/opt/anaconda3/lib/python3.11/site-packages/open_webui
/opt/anaconda3/lib/python3.11/site-packages
/opt/anaconda3/lib/python3.11
INFO [alembic.runtime.migration] Context impl SQLiteImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
INFO [open_webui.env] 'ENABLE_SIGNUP' loaded from the latest database entry
INFO [open_webui.env] 'DEFAULT_LOCALE' loaded from the latest database entry
INFO [open_webui.env] 'DEFAULT_PROMPT_SUGGESTIONS' loaded from the latest database entry
WARNI [open_webui.env]

WARNING: CORS_ALLOW_ORIGIN IS SET TO '*' - NOT RECOMMENDED FOR PRODUCTION DEPLOYMENTS.

INFO [open_webui.env] Embedding model set: sentence-transformers/all-MiniLM-L6-v2
/opt/anaconda3/lib/python3.11/site-packages/pydub/utils.py:170: RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work
warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning)
WARNI [langchain_community.utils.user_agent] USER_AGENT environment variable not set, consider setting it to identify your requests.

██████╗ ██████╗ ███████╗███╗ ██╗ ██╗ ██╗███████╗██████╗ ██╗ ██╗██╗
██╔═══██╗██╔══██╗██╔════╝████╗ ██║ ██║ ██║██╔════╝██╔══██╗██║ ██║██║
██║ ██║██████╔╝█████╗ ██╔██╗ ██║ ██║ █╗ ██║█████╗ ██████╔╝██║ ██║██║
██║ ██║██╔═══╝ ██╔══╝ ██║╚██╗██║ ██║███╗██║██╔══╝ ██╔══██╗██║ ██║█���║
╚██████╔╝██║ ███████╗██║ ╚████║ ╚███╔███╔╝███████╗██████╔╝╚██████╔╝██║
╚═════╝ ╚═╝ ╚══════╝╚═╝ ╚═══╝ ╚══╝╚══╝ ╚══════╝╚═════╝ ╚═════╝ ╚═╝

v0.6.18 - building the best AI user interface.

https://github.com/open-webui/open-webui

Fetching 30 files: 100%|█████████████████████| 30/30 [00:00<00:00, 35757.07it/s]
INFO: Started server process [58898]
INFO: Waiting for application startup.
2025-08-08 17:05:47.396 | INFO | open_webui.utils.logger:start_logger:157 - GLOBAL_LOG_LEVEL: INFO - {}
2025-08-08 17:05:47.396 | INFO | open_webui.main:lifespan:519 - Installing external dependencies of functions and tools... - {}
2025-08-08 17:05:47.402 | INFO | open_webui.utils.plugin:install_frontmatter_requirements:241 - No requirements found in frontmatter. - {}
2025-08-08 17:05:56.251 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60928 - "GET /_app/version.json HTTP/1.1" 200 - {}
2025-08-08 17:05:56.251 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60927 - "GET /_app/version.json HTTP/1.1" 200 - {}
2025-08-08 17:05:56.251 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60930 - "GET /_app/version.json HTTP/1.1" 200 - {}
2025-08-08 17:05:59.092 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60930 - "GET /static/loader.js HTTP/1.1" 200 - {}
2025-08-08 17:05:59.096 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60927 - "GET /static/custom.css HTTP/1.1" 200 - {}
2025-08-08 17:05:59.119 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60927 - "GET /static/splash.png HTTP/1.1" 200 - {}
2025-08-08 17:05:59.121 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60930 - "GET /static/splash-dark.png HTTP/1.1" 200 - {}
2025-08-08 17:05:59.425 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60930 - "GET /api/config HTTP/1.1" 200 - {}
2025-08-08 17:05:59.446 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60930 - "GET /static/favicon.png HTTP/1.1" 200 - {}
2025-08-08 17:05:59.446 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60927 - "GET /static/favicon-dark.png HTTP/1.1" 200 - {}
2025-08-08 17:05:59.547 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60927 - "GET /manifest.json HTTP/1.1" 200 - {}
2025-08-08 17:05:59.550 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60930 - "GET /static/favicon.png HTTP/1.1" 304 - {}
2025-08-08 17:05:59.556 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60930 - "GET /static/logo.png HTTP/1.1" 200 - {}
2025-08-08 17:06:09.225 | INFO | open_webui.models.auths:authenticate_user:131 - authenticate_user: sr.novichkov@gmail.com - {}
2025-08-08 17:06:09.341 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60937 - "POST /api/v1/auths/signin HTTP/1.1" 500 - {}
Exception in ASGI application

  • Exception Group Traceback (most recent call last):
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 76, in collapse_excgroups
    | yield
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 178, in call
    | async with anyio.create_task_group() as task_group:
    | File "/opt/anaconda3/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 815, in aexit
    | raise BaseExceptionGroup(
    | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
    +-+---------------- 1 ----------------
    | Traceback (most recent call last):
    | File "/opt/anaconda3/lib/python3.11/site-packages/uvicorn/protocols/http/httptools_impl.py", line 409, in run_asgi
    | result = await app( # type: ignore[func-returns-value]
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in call
    | return await self.app(scope, receive, send)
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/fastapi/applications.py", line 1054, in call
    | await super().call(scope, receive, send)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/applications.py", line 112, in call
    | await self.middleware_stack(scope, receive, send)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/errors.py", line 187, in call
    | raise exc
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/errors.py", line 165, in call
    | await self.app(scope, receive, _send)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/cors.py", line 93, in call
    | await self.simple_response(scope, receive, send, request_headers=headers)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/cors.py", line 144, in simple_response
    | await self.app(scope, receive, send)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in call
    | with recv_stream, send_stream, collapse_excgroups():
    | File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in exit
    | self.gen.throw(typ, value, traceback)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups
    | raise exc
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in call
    | response = await self.dispatch_func(request, call_next)
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1162, in inspect_websocket
    | return await call_next(request)
    | ^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next
    | raise app_exc
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro
    | await self.app(scope, receive_or_disconnect, send_no_error)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in call
    | with recv_stream, send_stream, collapse_excgroups():
    | File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in exit
    | self.gen.throw(typ, value, traceback)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups
    | raise exc
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in call
    | response = await self.dispatch_func(request, call_next)
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1141, in check_url
    | response = await call_next(request)
    | ^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next
    | raise app_exc
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro
    | await self.app(scope, receive_or_disconnect, send_no_error)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in call
    | with recv_stream, send_stream, collapse_excgroups():
    | File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in exit
    | self.gen.throw(typ, value, traceback)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups
    | raise exc
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in call
    | response = await self.dispatch_func(request, call_next)
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1127, in commit_session_after_request
    | response = await call_next(request)
    | ^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next
    | raise app_exc
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro
    | await self.app(scope, receive_or_disconnect, send_no_error)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in call
    | with recv_stream, send_stream, collapse_excgroups():
    | File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in exit
    | self.gen.throw(typ, value, traceback)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups
    | raise exc
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in call
    | response = await self.dispatch_func(request, call_next)
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/utils/security_headers.py", line 11, in dispatch
    | response = await call_next(request)
    | ^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next
    | raise app_exc
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro
    | await self.app(scope, receive_or_disconnect, send_no_error)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in call
    | with recv_stream, send_stream, collapse_excgroups():
    | File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in exit
    | self.gen.throw(typ, value, traceback)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups
    | raise exc
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in call
    | response = await self.dispatch_func(request, call_next)
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1113, in dispatch
    | response = await call_next(request)
    | ^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next
    | raise app_exc
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro
    | await self.app(scope, receive_or_disconnect, send_no_error)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette_compress/init.py", line 92, in call
    | return await self._zstd(scope, receive, send)
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette_compress/_zstd_legacy.py", line 100, in call
    | await self.app(scope, receive, wrapper)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 62, in call
    | await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    | raise exc
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
    | await app(scope, receive, sender)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 715, in call
    | await self.middleware_stack(scope, receive, send)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 735, in app
    | await route.handle(scope, receive, send)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 288, in handle
    | await self.app(scope, receive, send)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 76, in app
    | await wrap_app_handling_exceptions(app, request)(scope, receive, send)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    | raise exc
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
    | await app(scope, receive, sender)
    | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 73, in app
    | response = await f(request)
    | ^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/fastapi/routing.py", line 301, in app
    | raw_response = await run_endpoint_function(
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/fastapi/routing.py", line 212, in run_endpoint_function
    | return await dependant.call(**values)
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/routers/auths.py", line 512, in signin
    | token = create_token(
    | ^^^^^^^^^^^^^
    | File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/utils/auth.py", line 134, in create_token
    | encoded_jwt = jwt.encode(payload, SESSION_SECRET, algorithm=ALGORITHM)
    | ^^^^^^^^^^
    | AttributeError: module 'jwt' has no attribute 'encode'
    +------------------------------------

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/opt/anaconda3/lib/python3.11/site-packages/uvicorn/protocols/http/httptools_impl.py", line 409, in run_asgi
result = await app( # type: ignore[func-returns-value]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in call
return await self.app(scope, receive, send)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/fastapi/applications.py", line 1054, in call
await super().call(scope, receive, send)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/applications.py", line 112, in call
await self.middleware_stack(scope, receive, send)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/errors.py", line 187, in call
raise exc
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/errors.py", line 165, in call
await self.app(scope, receive, _send)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/cors.py", line 93, in call
await self.simple_response(scope, receive, send, request_headers=headers)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/cors.py", line 144, in simple_response
await self.app(scope, receive, send)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in call
with recv_stream, send_stream, collapse_excgroups():
File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in exit
self.gen.throw(typ, value, traceback)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups
raise exc
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in call
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1162, in inspect_websocket
return await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next
raise app_exc
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in call
with recv_stream, send_stream, collapse_excgroups():
File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in exit
self.gen.throw(typ, value, traceback)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups
raise exc
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in call
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1141, in check_url
response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next
raise app_exc
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in call
with recv_stream, send_stream, collapse_excgroups():
File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in exit
self.gen.throw(typ, value, traceback)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups
raise exc
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in call
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1127, in commit_session_after_request
response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next
raise app_exc
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in call
with recv_stream, send_stream, collapse_excgroups():
File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in exit
self.gen.throw(typ, value, traceback)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups
raise exc
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in call
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/utils/security_headers.py", line 11, in dispatch
response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next
raise app_exc
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in call
with recv_stream, send_stream, collapse_excgroups():
File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in exit
self.gen.throw(typ, value, traceback)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups
raise exc
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in call
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1113, in dispatch
response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next
raise app_exc
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette_compress/init.py", line 92, in call
return await self._zstd(scope, receive, send)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/starlette_compress/_zstd_legacy.py", line 100, in call
await self.app(scope, receive, wrapper)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 62, in call
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
raise exc
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 715, in call
await self.middleware_stack(scope, receive, send)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 735, in app
await route.handle(scope, receive, send)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 288, in handle
await self.app(scope, receive, send)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 76, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
raise exc
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 73, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/fastapi/routing.py", line 301, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/fastapi/routing.py", line 212, in run_endpoint_function
return await dependant.call(**values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/routers/auths.py", line 512, in signin
token = create_token(
^^^^^^^^^^^^^
File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/utils/auth.py", line 134, in create_token
encoded_jwt = jwt.encode(payload, SESSION_SECRET, algorithm=ALGORITHM)
^^^^^^^^^^
AttributeError: module 'jwt' has no attribute 'encode'

Chrome console log:
Use of history.pushState in a trivial session history context, which maintains only one session history entry, is treated as history.replaceState.
ee @ client.js:1534Understand this warningAI
hook.js:608 No token found in localStorage, user-join event not emitted
overrideMethod @ hook.js:608Understand this warningAI
:8080/api/v1/auths/signin:1

   Failed to load resource: the server responded with a status of 500 (Internal Server Error)Understand this errorAI

hook.js:608 SyntaxError: Unexpected token 'I', "Internal S"... is not valid JSON
overrideMethod @ hook.js:608Understand this errorAI

Additional Information

I have updated my macOS version to Sequoia 15.6 (24G84), after launching the service found that WebUI logged me out for some reason.

When I typed my regular (chrome saved) login/password it returned an error "wrong password". ok, i started troubleshooting, found an official manual on how to change the password. Generated a new HASH and inserted it directly into the database file: table "auth", column "password", replaced the old hash with the new one, saved the .db file. Launched the server and at the auth page, chrome auto-pasted correct details, pressed "login", the screen did not change, yet no error message were shown.

Complete log is attached.

To try fix this, I have also tried reinstalling open-webui (pip-uninstalled, pip-installed), did not fix the issue.

Originally created by @spookynando on GitHub (Aug 8, 2025). ### Check Existing Issues - [x] I have searched the existing issues and discussions. - [x] I am using the latest version of Open WebUI. ### Installation Method Pip Install ### Open WebUI Version v0.6.18 ### Ollama Version (if applicable) v0.11.4 ### Operating System macOS Sequoia 15.6 (24G84) ### Browser (if applicable) Safari, Chrome ### 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 The auth service should have authorised me and taken to the chats page ### Actual Behavior Login button pressed, no errors pop up, nothing happens. ### Steps to Reproduce The situation and steps are best described in the "Additional Information" section. ### Logs & Screenshots **Terminal log**: Loading WEBUI_SECRET_KEY from file, not provided as an environment variable. Loading WEBUI_SECRET_KEY from /Users/ls1/.webui_secret_key /opt/anaconda3/lib/python3.11/site-packages/open_webui /opt/anaconda3/lib/python3.11/site-packages /opt/anaconda3/lib/python3.11 INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [open_webui.env] 'ENABLE_SIGNUP' loaded from the latest database entry INFO [open_webui.env] 'DEFAULT_LOCALE' loaded from the latest database entry INFO [open_webui.env] 'DEFAULT_PROMPT_SUGGESTIONS' loaded from the latest database entry WARNI [open_webui.env] WARNING: CORS_ALLOW_ORIGIN IS SET TO '*' - NOT RECOMMENDED FOR PRODUCTION DEPLOYMENTS. INFO [open_webui.env] Embedding model set: sentence-transformers/all-MiniLM-L6-v2 /opt/anaconda3/lib/python3.11/site-packages/pydub/utils.py:170: RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning) WARNI [langchain_community.utils.user_agent] USER_AGENT environment variable not set, consider setting it to identify your requests. ██████╗ ██████╗ ███████╗███╗ ██╗ ██╗ ██╗███████╗██████╗ ██╗ ██╗██╗ ██╔═══██╗██╔══██╗██╔════╝████╗ ██║ ██║ ██║██╔════╝██╔══██╗██║ ██║██║ ██║ ██║██████╔╝█████╗ ██╔██╗ ██║ ██║ █╗ ██║█████╗ ██████╔╝██║ ██║██║ ██║ ██║██╔═══╝ ██╔══╝ ██║╚██╗██║ ██║███╗██║██╔══╝ ██╔══██╗██║ ██║█���║ ╚██████╔╝██║ ███████╗██║ ╚████║ ╚███╔███╔╝███████╗██████╔╝╚██████╔╝██║ ╚═════╝ ╚═╝ ╚══════╝╚═╝ ╚═══╝ ╚══╝╚══╝ ╚══════╝╚═════╝ ╚═════╝ ╚═╝ v0.6.18 - building the best AI user interface. https://github.com/open-webui/open-webui Fetching 30 files: 100%|█████████████████████| 30/30 [00:00<00:00, 35757.07it/s] INFO: Started server process [58898] INFO: Waiting for application startup. 2025-08-08 17:05:47.396 | INFO | open_webui.utils.logger:start_logger:157 - GLOBAL_LOG_LEVEL: INFO - {} 2025-08-08 17:05:47.396 | INFO | open_webui.main:lifespan:519 - Installing external dependencies of functions and tools... - {} 2025-08-08 17:05:47.402 | INFO | open_webui.utils.plugin:install_frontmatter_requirements:241 - No requirements found in frontmatter. - {} 2025-08-08 17:05:56.251 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60928 - "GET /_app/version.json HTTP/1.1" 200 - {} 2025-08-08 17:05:56.251 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60927 - "GET /_app/version.json HTTP/1.1" 200 - {} 2025-08-08 17:05:56.251 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60930 - "GET /_app/version.json HTTP/1.1" 200 - {} 2025-08-08 17:05:59.092 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60930 - "GET /static/loader.js HTTP/1.1" 200 - {} 2025-08-08 17:05:59.096 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60927 - "GET /static/custom.css HTTP/1.1" 200 - {} 2025-08-08 17:05:59.119 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60927 - "GET /static/splash.png HTTP/1.1" 200 - {} 2025-08-08 17:05:59.121 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60930 - "GET /static/splash-dark.png HTTP/1.1" 200 - {} 2025-08-08 17:05:59.425 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60930 - "GET /api/config HTTP/1.1" 200 - {} 2025-08-08 17:05:59.446 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60930 - "GET /static/favicon.png HTTP/1.1" 200 - {} 2025-08-08 17:05:59.446 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60927 - "GET /static/favicon-dark.png HTTP/1.1" 200 - {} 2025-08-08 17:05:59.547 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60927 - "GET /manifest.json HTTP/1.1" 200 - {} 2025-08-08 17:05:59.550 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60930 - "GET /static/favicon.png HTTP/1.1" 304 - {} 2025-08-08 17:05:59.556 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60930 - "GET /static/logo.png HTTP/1.1" 200 - {} 2025-08-08 17:06:09.225 | INFO | open_webui.models.auths:authenticate_user:131 - authenticate_user: sr.novichkov@gmail.com - {} 2025-08-08 17:06:09.341 | INFO | uvicorn.protocols.http.httptools_impl:send:476 - 127.0.0.1:60937 - "POST /api/v1/auths/signin HTTP/1.1" 500 - {} Exception in ASGI application + Exception Group Traceback (most recent call last): | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 76, in collapse_excgroups | yield | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 178, in __call__ | async with anyio.create_task_group() as task_group: | File "/opt/anaconda3/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 815, in __aexit__ | raise BaseExceptionGroup( | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception) +-+---------------- 1 ---------------- | Traceback (most recent call last): | File "/opt/anaconda3/lib/python3.11/site-packages/uvicorn/protocols/http/httptools_impl.py", line 409, in run_asgi | result = await app( # type: ignore[func-returns-value] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in __call__ | return await self.app(scope, receive, send) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/fastapi/applications.py", line 1054, in __call__ | await super().__call__(scope, receive, send) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/applications.py", line 112, in __call__ | await self.middleware_stack(scope, receive, send) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/errors.py", line 187, in __call__ | raise exc | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/errors.py", line 165, in __call__ | await self.app(scope, receive, _send) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/cors.py", line 93, in __call__ | await self.simple_response(scope, receive, send, request_headers=headers) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/cors.py", line 144, in simple_response | await self.app(scope, receive, send) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in __call__ | with recv_stream, send_stream, collapse_excgroups(): | File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in __exit__ | self.gen.throw(typ, value, traceback) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups | raise exc | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in __call__ | response = await self.dispatch_func(request, call_next) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1162, in inspect_websocket | return await call_next(request) | ^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next | raise app_exc | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro | await self.app(scope, receive_or_disconnect, send_no_error) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in __call__ | with recv_stream, send_stream, collapse_excgroups(): | File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in __exit__ | self.gen.throw(typ, value, traceback) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups | raise exc | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in __call__ | response = await self.dispatch_func(request, call_next) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1141, in check_url | response = await call_next(request) | ^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next | raise app_exc | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro | await self.app(scope, receive_or_disconnect, send_no_error) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in __call__ | with recv_stream, send_stream, collapse_excgroups(): | File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in __exit__ | self.gen.throw(typ, value, traceback) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups | raise exc | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in __call__ | response = await self.dispatch_func(request, call_next) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1127, in commit_session_after_request | response = await call_next(request) | ^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next | raise app_exc | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro | await self.app(scope, receive_or_disconnect, send_no_error) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in __call__ | with recv_stream, send_stream, collapse_excgroups(): | File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in __exit__ | self.gen.throw(typ, value, traceback) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups | raise exc | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in __call__ | response = await self.dispatch_func(request, call_next) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/utils/security_headers.py", line 11, in dispatch | response = await call_next(request) | ^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next | raise app_exc | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro | await self.app(scope, receive_or_disconnect, send_no_error) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in __call__ | with recv_stream, send_stream, collapse_excgroups(): | File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in __exit__ | self.gen.throw(typ, value, traceback) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups | raise exc | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in __call__ | response = await self.dispatch_func(request, call_next) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1113, in dispatch | response = await call_next(request) | ^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next | raise app_exc | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro | await self.app(scope, receive_or_disconnect, send_no_error) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette_compress/__init__.py", line 92, in __call__ | return await self._zstd(scope, receive, send) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/starlette_compress/_zstd_legacy.py", line 100, in __call__ | await self.app(scope, receive, wrapper) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 62, in __call__ | await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app | raise exc | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app | await app(scope, receive, sender) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 715, in __call__ | await self.middleware_stack(scope, receive, send) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 735, in app | await route.handle(scope, receive, send) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 288, in handle | await self.app(scope, receive, send) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 76, in app | await wrap_app_handling_exceptions(app, request)(scope, receive, send) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app | raise exc | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app | await app(scope, receive, sender) | File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 73, in app | response = await f(request) | ^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/fastapi/routing.py", line 301, in app | raw_response = await run_endpoint_function( | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/fastapi/routing.py", line 212, in run_endpoint_function | return await dependant.call(**values) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/routers/auths.py", line 512, in signin | token = create_token( | ^^^^^^^^^^^^^ | File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/utils/auth.py", line 134, in create_token | encoded_jwt = jwt.encode(payload, SESSION_SECRET, algorithm=ALGORITHM) | ^^^^^^^^^^ | AttributeError: module 'jwt' has no attribute 'encode' +------------------------------------ During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/opt/anaconda3/lib/python3.11/site-packages/uvicorn/protocols/http/httptools_impl.py", line 409, in run_asgi result = await app( # type: ignore[func-returns-value] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in __call__ return await self.app(scope, receive, send) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/fastapi/applications.py", line 1054, in __call__ await super().__call__(scope, receive, send) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/applications.py", line 112, in __call__ await self.middleware_stack(scope, receive, send) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/errors.py", line 187, in __call__ raise exc File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/errors.py", line 165, in __call__ await self.app(scope, receive, _send) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/cors.py", line 93, in __call__ await self.simple_response(scope, receive, send, request_headers=headers) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/cors.py", line 144, in simple_response await self.app(scope, receive, send) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in __call__ with recv_stream, send_stream, collapse_excgroups(): File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in __exit__ self.gen.throw(typ, value, traceback) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups raise exc File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in __call__ response = await self.dispatch_func(request, call_next) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1162, in inspect_websocket return await call_next(request) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next raise app_exc File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in __call__ with recv_stream, send_stream, collapse_excgroups(): File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in __exit__ self.gen.throw(typ, value, traceback) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups raise exc File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in __call__ response = await self.dispatch_func(request, call_next) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1141, in check_url response = await call_next(request) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next raise app_exc File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in __call__ with recv_stream, send_stream, collapse_excgroups(): File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in __exit__ self.gen.throw(typ, value, traceback) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups raise exc File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in __call__ response = await self.dispatch_func(request, call_next) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1127, in commit_session_after_request response = await call_next(request) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next raise app_exc File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in __call__ with recv_stream, send_stream, collapse_excgroups(): File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in __exit__ self.gen.throw(typ, value, traceback) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups raise exc File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in __call__ response = await self.dispatch_func(request, call_next) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/utils/security_headers.py", line 11, in dispatch response = await call_next(request) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next raise app_exc File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 177, in __call__ with recv_stream, send_stream, collapse_excgroups(): File "/opt/anaconda3/lib/python3.11/contextlib.py", line 155, in __exit__ self.gen.throw(typ, value, traceback) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_utils.py", line 82, in collapse_excgroups raise exc File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 179, in __call__ response = await self.dispatch_func(request, call_next) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/main.py", line 1113, in dispatch response = await call_next(request) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 154, in call_next raise app_exc File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/base.py", line 141, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "/opt/anaconda3/lib/python3.11/site-packages/starlette_compress/__init__.py", line 92, in __call__ return await self._zstd(scope, receive, send) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/starlette_compress/_zstd_legacy.py", line 100, in __call__ await self.app(scope, receive, wrapper) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 62, in __call__ await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app raise exc File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app await app(scope, receive, sender) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 715, in __call__ await self.middleware_stack(scope, receive, send) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 735, in app await route.handle(scope, receive, send) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 288, in handle await self.app(scope, receive, send) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 76, in app await wrap_app_handling_exceptions(app, request)(scope, receive, send) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app raise exc File "/opt/anaconda3/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app await app(scope, receive, sender) File "/opt/anaconda3/lib/python3.11/site-packages/starlette/routing.py", line 73, in app response = await f(request) ^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/fastapi/routing.py", line 301, in app raw_response = await run_endpoint_function( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/fastapi/routing.py", line 212, in run_endpoint_function return await dependant.call(**values) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/routers/auths.py", line 512, in signin token = create_token( ^^^^^^^^^^^^^ File "/opt/anaconda3/lib/python3.11/site-packages/open_webui/utils/auth.py", line 134, in create_token encoded_jwt = jwt.encode(payload, SESSION_SECRET, algorithm=ALGORITHM) ^^^^^^^^^^ AttributeError: module 'jwt' has no attribute 'encode' **Chrome console log:** Use of history.pushState in a trivial session history context, which maintains only one session history entry, is treated as history.replaceState. ee @ client.js:1534Understand this warningAI hook.js:608 No token found in localStorage, user-join event not emitted overrideMethod @ hook.js:608Understand this warningAI :8080/api/v1/auths/signin:1 Failed to load resource: the server responded with a status of 500 (Internal Server Error)Understand this errorAI hook.js:608 SyntaxError: Unexpected token 'I', "Internal S"... is not valid JSON overrideMethod @ hook.js:608Understand this errorAI ### Additional Information I have updated my macOS version to Sequoia 15.6 (24G84), after launching the service found that WebUI logged me out for some reason. When I typed my regular (chrome saved) login/password it returned an error "wrong password". ok, i started troubleshooting, found an official manual on [how to change the password](https://docs.openwebui.com/troubleshooting/password-reset/). Generated a new HASH and inserted it directly into the database file: table "auth", column "password", replaced the old hash with the new one, saved the .db file. Launched the server and at the auth page, chrome auto-pasted **correct** details, pressed "login", the screen did not change, yet no error message were shown. Complete log is attached. To try fix this, I have also tried reinstalling open-webui (pip-uninstalled, pip-installed), did not fix the issue.
GiteaMirror added the bug label 2025-11-11 16:41:50 -06:00
Author
Owner

@tjbck commented on GitHub (Aug 8, 2025):

Unable to reproduce, keep us updated!

@tjbck commented on GitHub (Aug 8, 2025): Unable to reproduce, keep us updated!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#5994