Skip to content

Commit a727153

Browse files
tjbckjoaoback
andauthored
* refac * fix: python pip install dep issue * Merge pull request open-webui#20085 from joaoback/patch-19 Update translation.json (pt-BR) * fix/refac: stt default content type * fix/refac: temp chat image handling * fix/refac: image action button * chore: bump --------- Co-authored-by: joaoback <156559121+joaoback@users.noreply.github.com>
2 parents d95f533 + 5088583 commit a727153

File tree

11 files changed

+67
-36
lines changed

11 files changed

+67
-36
lines changed

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,15 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.6.43] - 2025-12-22
9+
10+
### Fixed
11+
12+
- 🐍 **Python dependency installation issues** were resolved by correcting pip dependency handling, preventing installation failures in certain environments and improving setup reliability. [Commit](https://github.com/open-webui/open-webui/commit/5c5f87a)
13+
- 🎙️ **Speech-to-Text default content type handling** was fixed and refactored to ensure correct MIME type usage, improving compatibility across STT providers and preventing transcription errors caused by incorrect defaults. [Commit](https://github.com/open-webui/open-webui/commit/4ab917c)
14+
- 🖼️ **Temporary chat image handling** was fixed and refactored, ensuring images generated or edited in temporary chats are correctly processed, stored, and displayed without inconsistencies or missing references. [Commit](https://github.com/open-webui/open-webui/commit/423983f)
15+
- 🎨 **Image action button fixed**, restoring the ability to trigger image generation, editing, and related image actions from the chat UI. [Commit](https://github.com/open-webui/open-webui/commit/def8a00)
16+
817
## [0.6.42] - 2025-12-21
918

1019
### Added

backend/open_webui/env.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@
8585
log.exception(cuda_error)
8686
del cuda_error
8787

88+
SRC_LOG_LEVELS = {} # Legacy variable, do not remove
8889

8990
WEBUI_NAME = os.environ.get("WEBUI_NAME", "Open WebUI")
9091
if WEBUI_NAME != "Open WebUI":

backend/open_webui/routers/audio.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1151,10 +1151,9 @@ def transcription(
11511151
user=Depends(get_verified_user),
11521152
):
11531153
log.info(f"file.content_type: {file.content_type}")
1154-
11551154
stt_supported_content_types = getattr(
11561155
request.app.state.config, "STT_SUPPORTED_CONTENT_TYPES", []
1157-
) or ["audio/*", "video/webm"]
1156+
)
11581157

11591158
if not strict_match_mime_type(stt_supported_content_types, file.content_type):
11601159
raise HTTPException(

backend/open_webui/routers/files.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ def process_uploaded_file(request, file, file_path, file_item, file_metadata, us
114114
if file.content_type:
115115
stt_supported_content_types = getattr(
116116
request.app.state.config, "STT_SUPPORTED_CONTENT_TYPES", []
117-
) or ["audio/*", "video/webm"]
117+
)
118118

119119
if strict_match_mime_type(stt_supported_content_types, file.content_type):
120120
file_path = Storage.get_file(file_path)

backend/open_webui/routers/images.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -531,11 +531,17 @@ def upload_image(request, image_data, content_type, metadata, user):
531531

532532

533533
@router.post("/generations")
534+
async def generate_images(
535+
request: Request, form_data: CreateImageForm, user=Depends(get_verified_user)
536+
):
537+
return await image_generations(request, form_data, user=user)
538+
539+
534540
async def image_generations(
535541
request: Request,
536542
form_data: CreateImageForm,
537543
metadata: Optional[dict] = None,
538-
user=Depends(get_verified_user),
544+
user=None,
539545
):
540546
# if IMAGE_SIZE = 'auto', default WidthxHeight to the 512x512 default
541547
# This is only relevant when the user has set IMAGE_SIZE to 'auto' with an

backend/open_webui/utils/misc.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -622,6 +622,10 @@ def strict_match_mime_type(supported: list[str] | str, header: str) -> Optional[
622622

623623
supported = [s for s in supported if s.strip() and "/" in s]
624624

625+
if len(supported) == 0:
626+
# Default to common types if none are specified
627+
supported = ["audio/*", "video/webm"]
628+
625629
match = mimeparse.best_match(supported, header)
626630
if not match:
627631
return None

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "open-webui",
3-
"version": "0.6.42",
3+
"version": "0.6.43",
44
"private": true,
55
"scripts": {
66
"dev": "npm run pyodide:fetch && vite dev --host",

pyproject.toml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,10 @@ dependencies = [
5252
"google-genai==1.56.0",
5353
"google-generativeai==0.8.6",
5454

55-
"langchain==0.3.27",
56-
"langchain-community==0.3.29",
55+
"langchain==1.2.0",
56+
"langchain-community==0.4.1",
57+
"langchain-classic==1.0.0",
58+
"langchain-text-splitters==1.1.0",
5759

5860
"fake-useragent==2.2.0",
5961
"chromadb==1.3.7",

src/lib/components/chat/MessageInput.svelte

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -731,10 +731,20 @@
731731
imageUrl = await compressImageHandler(imageUrl, $settings, $config);
732732
}
733733
734-
const blob = await (await fetch(imageUrl)).blob();
735-
const compressedFile = new File([blob], file.name, { type: file.type });
734+
if ($temporaryChatEnabled) {
735+
files = [
736+
...files,
737+
{
738+
type: 'image',
739+
url: imageUrl
740+
}
741+
];
742+
} else {
743+
const blob = await (await fetch(imageUrl)).blob();
744+
const compressedFile = new File([blob], file.name, { type: file.type });
736745
737-
uploadFileHandler(compressedFile, false);
746+
uploadFileHandler(compressedFile, false);
747+
}
738748
};
739749
740750
reader.readAsDataURL(file['type'] === 'image/heic' ? await convertHeicToJpeg(file) : file);

0 commit comments

Comments
 (0)