Skip to content

Dev#270

Merged
OrenZhang merged 35 commits intomainfrom
dev
Mar 9, 2026
Merged

Dev#270
OrenZhang merged 35 commits intomainfrom
dev

Conversation

@OrenZhang
Copy link
Copy Markdown
Collaborator

No description provided.

gambletan and others added 30 commits March 8, 2026 16:36
* fix: replace bare except with except Exception in main.py

* fix: replace bare except with Exception in oauth.py

In Python 3, bare 'except:' is discouraged as it catches all
SystemExit and KeyboardInterrupt exceptions. Changed to 'except Exception:'
to only catch actual exceptions.
…cy pass (#22391)

New **pt-BR** translations for items introduced in the latest releases, plus a consistency/quality pass across existing strings (grammar, tone, capitalization, pluralization). Placeholders and hotkeys preserved. No logic changes.
… pass (#22452)

New **pt-BR** translations for items introduced in the latest releases, plus a consistency/quality pass across existing strings (grammar, tone, capitalization, pluralization). Placeholders and hotkeys preserved. No logic changes.
Update ms-MY Malay (Bahasa Malaysia) Language
`raise "string"` in Python raises TypeError instead of the intended
error, making error messages confusing and debugging difficult.

Co-authored-by: gambletan <ethanchang32@gmail.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
…ing into sidebar (#22454)

getTimeRange returns month names that are used as i18n translation keys
(consumed via \.t(chat.time_range) in the sidebar, search modal, etc.).
The keys must be exact English strings like 'January', 'February', etc.

Previously, toLocaleString('default', { month: 'long' }) was used to
generate these keys. The 'default' locale defers to the browser's locale
resolution, which in Firefox with intl.regional_prefs.use_os_locales=true
picks up OS regional settings instead of the browser language. This caused
German month names (e.g. 'Februar', 'Januar') to appear in the sidebar for
users whose OS region is set to Germany, even when both browser and app
language are set to English. Chrome was unaffected because it ignores OS
regional settings for the 'default' locale.

Since i18n has no translation key for 'Februar', the German string passed
through untranslated. Replace toLocaleString with a static MONTH_NAMES
array lookup to make the intent explicit and eliminate any browser/OS
locale dependency.
…22445)

In both inlet and outlet filter processing, response.json() was called
BEFORE response.raise_for_status(). When a filter endpoint returns an
HTTP error, the user's chat payload gets silently overwritten with the
error response body. If the error is not caught, the corrupted payload
propagates through subsequent filters and into the chat completion.

Swapped the order so raise_for_status() runs first — payload is only
updated on success.

Co-authored-by: gambletan <ethanchang32@gmail.com>
…2444)

json.loads(event_data.get("user", {})) crashes with TypeError when
the "user" key is absent because the default value {} is a dict, not
a JSON string. json.loads expects str/bytes, not dict.

Also handle the case where "user" is already a dict (not serialized
JSON) to make the webhook more robust.

Co-authored-by: gambletan <ethanchang32@gmail.com>
- URL-encodes the OAuth error message when constructing the redirect URL in the OIDC callback handler
- Without encoding, error messages containing spaces, ampersands, or other special characters produce malformed URLs that the frontend cannot parse correctly
- The custom OAuth client callback handler already correctly uses urllib.parse.quote_plus() for the same purpose; this fix brings the OIDC handler in line with that pattern

Co-authored-by: gambletan <tan@gambletan.com>
The locale for Azure TTS SSML was being extracted with `split("-")[:1]`,
which only takes the first segment (e.g., "en" from "en-US"). The
xml:lang attribute in SSML requires a full locale like "en-US", not just
a language code. This caused Azure TTS to either fail or use incorrect
pronunciation rules.

Changed `[:1]` to `[:2]` to properly extract the locale (e.g., "en-US").

Co-authored-by: gambletan <ethanchang32@gmail.com>
The get_token_usage_by_user query lacked group_id filtering, while the
companion get_message_count_by_user query already supported it. When an
admin filtered analytics by user group, message counts were correctly
scoped to the group but token usage totals included data from all users.

Add the group_id parameter and subquery filter to get_token_usage_by_user,
matching the pattern used by get_message_count_by_user and other analytics
queries, and pass group_id through from the analytics endpoint.
Add on:error handler to img
Previously, QueuedMessageItem only rendered text content and ignored
the files array, causing queued messages with only images to appear
blank. Now passes files to the component and renders image thumbnails
and file name indicators inline.

Fixes #22256
… templates

Add |middletruncate:n, |start:n, and |end:n pipe filters to the
{{MESSAGES}} template variable, enabling per-message character
truncation for task models (title, tags, follow-up, etc.).

Example: {{MESSAGES:END:2|middletruncate:500}}

This optimizes task model prompt size for conversations with very
long messages (e.g. pasted documents), reducing latency for local
models and API costs.

Closes #21499
* Add v0.8.10 changelog entry

* changelog: docker startup fix for missing opentelemetry dependency

* changelog: add translation updates for v0.8.10

* changelog: oauth-error-handling, exception-messages

* changelog: fix YAML file processing with Docling (#22399)

* changelog: tool access fix for non-admin users

* changelog: fix time range month names localization

* changelog: pipeline filter, webhook crash, shutdown handling

* changelog: tool method filtering, OAuth URL encoding, Azure TTS

* changelog: add analytics group filtering fix

* changelog: api-calls, optimization, performance

* changelog: add MariaDB Vector support entry

* changelog: add web search favicon fallback fix

* changelog: custom model fallback fix

* changelog: pending message image display fix (#22256)

* changelog: task message truncation for title and tag generation

* changelog: oidc, logout, custom-endpoint

* changelog: files list stability fix for issue #21879

* Remove empty Changed section from v0.8.10

* changelog: file metadata sanitization fix

* Remove empty Changed section from v0.8.10

* changelog: fix knowledge file embedding updates for RAG

* changelog: add Azure speech transcription error fix
tjbck and others added 5 commits March 8, 2026 19:00
# Conflicts:
#	backend/open_webui/retrieval/utils.py
#	backend/requirements.txt
#	package-lock.json
#	package.json
#	src/lib/i18n/locales/ar-BH/translation.json
#	src/lib/i18n/locales/ar/translation.json
#	src/lib/i18n/locales/bg-BG/translation.json
#	src/lib/i18n/locales/bn-BD/translation.json
#	src/lib/i18n/locales/bo-TB/translation.json
#	src/lib/i18n/locales/bs-BA/translation.json
#	src/lib/i18n/locales/ca-ES/translation.json
#	src/lib/i18n/locales/ceb-PH/translation.json
#	src/lib/i18n/locales/cs-CZ/translation.json
#	src/lib/i18n/locales/da-DK/translation.json
#	src/lib/i18n/locales/de-DE/translation.json
#	src/lib/i18n/locales/dg-DG/translation.json
#	src/lib/i18n/locales/el-GR/translation.json
#	src/lib/i18n/locales/en-GB/translation.json
#	src/lib/i18n/locales/en-US/translation.json
#	src/lib/i18n/locales/es-ES/translation.json
#	src/lib/i18n/locales/et-EE/translation.json
#	src/lib/i18n/locales/eu-ES/translation.json
#	src/lib/i18n/locales/fa-IR/translation.json
#	src/lib/i18n/locales/fi-FI/translation.json
#	src/lib/i18n/locales/fr-CA/translation.json
#	src/lib/i18n/locales/fr-FR/translation.json
#	src/lib/i18n/locales/gl-ES/translation.json
#	src/lib/i18n/locales/he-IL/translation.json
#	src/lib/i18n/locales/hi-IN/translation.json
#	src/lib/i18n/locales/hr-HR/translation.json
#	src/lib/i18n/locales/hu-HU/translation.json
#	src/lib/i18n/locales/id-ID/translation.json
#	src/lib/i18n/locales/ie-GA/translation.json
#	src/lib/i18n/locales/it-IT/translation.json
#	src/lib/i18n/locales/ja-JP/translation.json
#	src/lib/i18n/locales/ka-GE/translation.json
#	src/lib/i18n/locales/kab-DZ/translation.json
#	src/lib/i18n/locales/ko-KR/translation.json
#	src/lib/i18n/locales/lt-LT/translation.json
#	src/lib/i18n/locales/lv-LV/translation.json
#	src/lib/i18n/locales/ms-MY/translation.json
#	src/lib/i18n/locales/nb-NO/translation.json
#	src/lib/i18n/locales/nl-NL/translation.json
#	src/lib/i18n/locales/pa-IN/translation.json
#	src/lib/i18n/locales/pl-PL/translation.json
#	src/lib/i18n/locales/pt-BR/translation.json
#	src/lib/i18n/locales/pt-PT/translation.json
#	src/lib/i18n/locales/ro-RO/translation.json
#	src/lib/i18n/locales/ru-RU/translation.json
#	src/lib/i18n/locales/sk-SK/translation.json
#	src/lib/i18n/locales/sr-RS/translation.json
#	src/lib/i18n/locales/sv-SE/translation.json
#	src/lib/i18n/locales/th-TH/translation.json
#	src/lib/i18n/locales/tk-TM/translation.json
#	src/lib/i18n/locales/tr-TR/translation.json
#	src/lib/i18n/locales/ug-CN/translation.json
#	src/lib/i18n/locales/uk-UA/translation.json
#	src/lib/i18n/locales/ur-PK/translation.json
#	src/lib/i18n/locales/uz-Cyrl-UZ/translation.json
#	src/lib/i18n/locales/uz-Latn-Uz/translation.json
#	src/lib/i18n/locales/vi-VN/translation.json
#	src/lib/i18n/locales/zh-CN/translation.json
#	src/lib/i18n/locales/zh-TW/translation.json
Comment thread backend/open_webui/retrieval/vector/dbs/mariadb_vector.py Dismissed
@OrenZhang OrenZhang merged commit 270955e into main Mar 9, 2026
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.