Timothy Jaeryang Baek
6fce92aa12
chore: format
2026-06-01 13:56:55 -07:00
Timothy Jaeryang Baek
c7de057a4a
refac
2026-06-01 13:45:23 -07:00
Timothy Jaeryang Baek
fd76b51ab2
refac
...
Co-Authored-By: Classic298 <27028174+Classic298@users.noreply.github.com >
2026-06-01 12:27:08 -07:00
Classic298
81d4ed79ae
Update main.py ( #25271 )
2026-05-31 14:48:51 -07:00
Timothy Jaeryang Baek
cac4c6da2e
fix: resolve NameError for redis_sentinels in session_cleanup_lock
...
The variable was renamed to ws_sentinels but session_cleanup_lock
still referenced the old name, causing a startup crash.
2026-05-21 13:41:21 +04:00
Timothy Jaeryang Baek
154679200f
refac: clean up Redis sentinel utilities and import grouping
2026-05-21 11:47:25 +04:00
Timothy Jaeryang Baek
bc244fdc90
refac
2026-05-13 12:44:12 +09:00
Timothy Jaeryang Baek
6d0295588e
refac: modernize type annotations (PEP 604 / PEP 585)
2026-05-12 17:10:15 +09:00
Timothy Jaeryang Baek
a59c967d7e
refac: modernize imports, standardize type hints and docstrings
2026-05-12 06:30:38 +09:00
Timothy Jaeryang Baek
4856ce48be
chore: format
2026-05-11 02:51:59 +09:00
Timothy Jaeryang Baek
0037baeb26
enh: channels streaming agent
2026-05-11 02:50:30 +09:00
Timothy Jaeryang Baek
aa51ce482c
refac
2026-05-09 15:21:31 +09:00
Timothy Jaeryang Baek
552bbcecfa
refac
2026-05-09 03:15:53 +09:00
Timothy Jaeryang Baek
3271b013a8
refac
2026-04-17 13:29:51 +09:00
Timothy Jaeryang Baek
638c7ab802
refac
2026-04-17 13:27:58 +09:00
Classic298
977d638afe
fix: invalidate stale Socket.IO sessions on role change and user deletion ( #23642 )
...
SESSION_POOL caches user.role at connection time and never refreshes it. When an admin demotes or deletes a user, their socket sessions retain the old cached role until voluntary disconnect, allowing continued use of admin-gated socket features (ydoc editing, channel access).
Adds disconnect_user_sessions() helper that disconnects all sockets for a user ID. Called from update_user_by_id (on role change) and delete_user_by_id. The client auto-reconnects and re-authenticates with fresh DB data.
2026-04-12 16:19:38 -05:00
Timothy Jaeryang Baek
27169124f2
refac: async db
2026-04-12 14:22:11 -05:00
Timothy Jaeryang Baek
584a9a0920
refac
2026-04-01 07:42:11 -05:00
Timothy Jaeryang Baek
c8ef5a4f38
chore: format
2026-04-01 04:36:02 -05:00
Timothy Jaeryang Baek
0638b9f56c
refac
2026-04-01 04:00:18 -05:00
Timothy Jaeryang Baek
ade617efa8
refac
2026-03-24 04:49:48 -05:00
Algorithm5838
f0d48a4295
perf: use asyncio.to_thread for heartbeat DB write ( #22980 )
2026-03-24 04:48:06 -05:00
Timothy Jaeryang Baek
ee901fcd2c
refac
2026-03-22 05:48:05 -05:00
Timothy Jaeryang Baek
de3317e26b
refac
2026-03-17 17:58:01 -05:00
Timothy Jaeryang Baek
3107a5363d
refac
2026-03-17 17:37:20 -05:00
Ethan T.
a229f9ea42
fix: replace bare except with except Exception ( #22473 )
...
Replace bare except clauses with except Exception to follow Python best practices and avoid catching unexpected system exceptions like KeyboardInterrupt and SystemExit.
2026-03-15 17:48:23 -05:00
Classic298
4403c7b6c2
feat: Timeout for event_call events ( #22222 )
...
* Update main.py
* Update env.py
* Update main.py
* Update env.py
2026-03-04 16:39:53 -06:00
Timothy Jaeryang Baek
93bab8d822
refac
2026-03-01 13:54:44 -06:00
Timothy Jaeryang Baek
ff86283be0
refac
...
Co-Authored-By: Algorithm5838 <108630393+Algorithm5838@users.noreply.github.com >
2026-03-01 12:50:24 -06:00
Classic298
c436e0366c
perf: async DB calls, skip intermediate status writes, elif chain in event emitter ( #22107 )
...
Three improvements to the socket event emitter hot path (when realtime chat save is enabled):
1. Wrap all synchronous Chats.* DB calls in asyncio.to_thread() to avoid blocking the event loop during streaming. With N concurrent users, sync DB calls serialize all writes and block socket event delivery.
2. Only persist final (done=True) status events to DB. Intermediate statuses (tool calling progress, web search progress, etc.) are ephemeral UI-only data already delivered via socket — writing every one to DB is unnecessary I/O.
3. Convert if/if/if chain to if/elif since event types are mutually exclusive, avoiding unnecessary string comparisons after a match.
2026-03-01 13:43:03 -05:00
Timothy Jaeryang Baek
0a700aafe4
refac
2026-02-19 16:32:41 -06:00
Timothy Jaeryang Baek
b780d5c556
refac
2026-02-15 18:41:16 -06:00
Timothy Jaeryang Baek
b7549d2f6c
refac: defer profile
2026-02-13 14:08:07 -06:00
Classic298
ea4ef28da5
init ( #20883 )
...
Co-authored-by: Tim Baek <tim@openwebui.com >
2026-02-12 15:50:13 -06:00
Timothy Jaeryang Baek
f376d4f378
chore: format
2026-02-11 16:24:11 -06:00
Timothy Jaeryang Baek
f7406ff576
refac
2026-02-09 13:28:14 -06:00
Timothy Jaeryang Baek
700349064d
chore: format
2026-01-08 01:55:56 +04:00
Classic298
f4670b3add
fix: prevent get_user_ids_from_room crash on missing session ( #20271 )
...
Add null check in list comprehension before accessing session['id']. When a session_id exists in the room but has been removed from SESSION_POOL, the function now skips it instead of crashing with TypeError.
2025-12-31 17:39:22 +04:00
Timothy Jaeryang Baek
01e88c6ac2
chore: format
2025-12-21 23:34:08 +04:00
okamototk
37085ed42b
chore: update langchain 1.2.0 ( #19991 )
...
* chore: update langchain 1.2.0
* chore: format
2025-12-20 08:50:44 -05:00
Classic298
823b9a6dd9
chore/perf: Remove old SRC level log env vars with no impact ( #20045 )
...
* Update openai.py
* Update env.py
* Merge pull request open-webui#19030 from open-webui/dev (#119 )
Co-authored-by: Tim Baek <tim@openwebui.com >
Co-authored-by: Claude <noreply@anthropic.com >
---------
Co-authored-by: Tim Baek <tim@openwebui.com >
Co-authored-by: Claude <noreply@anthropic.com >
2025-12-20 08:16:14 -05:00
Joseph Low
8e661a4e73
Fix: Use SCAN instead of KEYS for Redis cluster compatibility ( #19871 )
2025-12-11 14:30:51 -05:00
Timothy Jaeryang Baek
c62609faba
refac
2025-11-30 14:51:44 -05:00
Timothy Jaeryang Baek
3f1d9ccbf8
feat/enh: add/remove users from group channel
2025-11-30 10:33:50 -05:00
Timothy Jaeryang Baek
70948f8803
enh/refac: deprecate USER_POOL
2025-11-28 07:39:02 -05:00
Timothy Jaeryang Baek
64b4d5d9c2
feat/enh: channels unread messages count
2025-11-27 04:31:04 -05:00
Timothy Jaeryang Baek
b5e5617a41
enh: redis dict for internal models state
...
Co-Authored-By: cw.a <57549718+acwoo97@users.noreply.github.com >
2025-11-27 01:33:52 -05:00
Timothy Jaeryang Baek
a1d09eae95
chore: format
2025-11-19 03:23:33 -05:00
Adam Skalicky
f89c170566
Add additional config elements to control how engineio and redis log and interact. ( #19091 )
2025-11-19 01:26:33 -05:00
Timothy Jaeryang Baek
b2667470cd
refac: get event emitter/caller
2025-11-09 23:13:25 -05:00