diff --git a/CHANGELOG.md b/CHANGELOG.md index 898a7021bd..919baf244a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.6.18] - 2025-07-19 + +### Fixed + +- ๐Ÿš‘ **Users Not Loading in Groups**: Resolved an issue where user list was not displaying within user groups, restoring full visibility and management of group memberships for teams and admins. + ## [0.6.17] - 2025-07-19 ### Added diff --git a/backend/dev.sh b/backend/dev.sh index 5449ab7777..0164c1940e 100755 --- a/backend/dev.sh +++ b/backend/dev.sh @@ -1,2 +1,3 @@ +export CORS_ALLOW_ORIGIN=http://localhost:5173/ PORT="${PORT:-8080}" -uvicorn open_webui.main:app --port $PORT --host 0.0.0.0 --forwarded-allow-ips '*' --reload \ No newline at end of file +uvicorn open_webui.main:app --port $PORT --host 0.0.0.0 --forwarded-allow-ips '*' --reload diff --git a/hatch_build.py b/hatch_build.py index 8ddaf0749b..28aad1b6cd 100644 --- a/hatch_build.py +++ b/hatch_build.py @@ -17,7 +17,7 @@ class CustomBuildHook(BuildHookInterface): "NodeJS `npm` is required for building Open Webui but it was not found" ) stderr.write("### npm install\n") - subprocess.run([npm, "install"], check=True) # noqa: S603 + subprocess.run([npm, "install", "--force"], check=True) # noqa: S603 stderr.write("\n### npm run build\n") os.environ["APP_BUILD_HASH"] = version subprocess.run([npm, "run", "build"], check=True) # noqa: S603 diff --git a/package-lock.json b/package-lock.json index 5150e31d5a..6c49690d66 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "open-webui", - "version": "0.6.17", + "version": "0.6.18", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "open-webui", - "version": "0.6.17", + "version": "0.6.18", "dependencies": { "@azure/msal-browser": "^4.5.0", "@codemirror/lang-javascript": "^6.2.2", diff --git a/package.json b/package.json index 5b1f1530a6..0575cd6ca5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "open-webui", - "version": "0.6.17", + "version": "0.6.18", "private": true, "scripts": { "dev": "npm run pyodide:fetch && vite dev --host", diff --git a/src/lib/components/admin/Users/Groups/Users.svelte b/src/lib/components/admin/Users/Groups/Users.svelte index 771a6f8e07..9d13fa45f0 100644 --- a/src/lib/components/admin/Users/Groups/Users.svelte +++ b/src/lib/components/admin/Users/Groups/Users.svelte @@ -57,7 +57,7 @@ -
+
{#if filteredUsers.length > 0} {#each filteredUsers as user, userIdx (user.id)} @@ -78,16 +78,6 @@
- user -
{user.name}
diff --git a/src/lib/components/admin/Users/UserList.svelte b/src/lib/components/admin/Users/UserList.svelte index 09de1a9f2a..0827d17ada 100644 --- a/src/lib/components/admin/Users/UserList.svelte +++ b/src/lib/components/admin/Users/UserList.svelte @@ -392,7 +392,7 @@
{{NAME}} and all its contents.": "{{NAME}} ์™€ ๋ชจ๋“  ๋‚ด์šฉ์„ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.", "This will delete all models including custom models": "์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์‚ฌ์šฉ์ž ์ง€์ • ๋ชจ๋ธ์„ ํฌํ•จํ•œ ๋ชจ๋“  ๋ชจ๋ธ์ด ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค", "This will delete all models including custom models and cannot be undone.": "์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์‚ฌ์šฉ์ž ์ง€์ • ๋ชจ๋ธ์„ ํฌํ•จํ•œ ๋ชจ๋“  ๋ชจ๋ธ์ด ์‚ญ์ œ๋˜๋ฉฐ ์‹คํ–‰ ์ทจ์†Œํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.", @@ -1324,17 +1324,17 @@ "To access the WebUI, please reach out to the administrator. Admins can manage user statuses from the Admin Panel.": "WebUI์— ์ ‘์†ํ•˜๋ ค๋ฉด ๊ด€๋ฆฌ์ž์—๊ฒŒ ๋ฌธ์˜ํ•˜์‹ญ์‹œ์˜ค. ๊ด€๋ฆฌ์ž๋Š” ๊ด€๋ฆฌ์ž ํŒจ๋„์—์„œ ์‚ฌ์šฉ์ž ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.", "To attach knowledge base here, add them to the \"Knowledge\" workspace first.": "์ง€์‹ ๊ธฐ๋ฐ˜์„ ์—ฌ๊ธฐ์— ์ฒจ๋ถ€ํ•˜๋ ค๋ฉด. \"์ง€์‹ ๊ธฐ๋ฐ˜\" ์›Œํฌ์ŠคํŽ˜์ด์Šค์— ๋จผ์ € ์ถ”๊ฐ€ํ•˜์„ธ์š”", "To learn more about available endpoints, visit our documentation.": "์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์—”๋“œํฌ์ธํŠธ์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„๋ณด๋ ค๋ฉด ๋ฌธ์„œ๋ฅผ ๋ฐฉ๋ฌธํ•˜์„ธ์š”.", - "To learn more about powerful prompt variables, click here": "", + "To learn more about powerful prompt variables, click here": "๊ฐ•๋ ฅํ•œ ํ”„๋กฌํ”„ํŠธ ๋ณ€์ˆ˜์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„๋ณด๋ ค๋ฉด ์—ฌ๊ธฐ๋ฅผ ํด๋ฆญํ•˜์„ธ์š”.", "To protect your privacy, only ratings, model IDs, tags, and metadata are shared from your feedbackโ€”your chat logs remain private and are not included.": "๊ฐœ์ธ์ •๋ณด๋ฅผ ๋ณดํ˜ธํ•˜๊ธฐ ์œ„ํ•ด, ๋‹น์‹ ์˜ ์ฑ„ํŒ… ๋กœ๊ทธ๋Š” ๋น„๊ณต๊ฐœ๋กœ ์œ ์ง€๋˜๊ณ , ์˜ค์ง ๋‹น์‹ ์˜ ํ”ผ๋“œ๋ฐฑ์—์„œ ํ‰๊ฐ€, ๋ชจ๋ธ ID, ํƒœ๊ทธ, ๊ทธ๋ฆฌ๊ณ  ๋ฉ”ํƒ€๋ฐ์ดํƒ€๋งŒ ๊ณต์œ ๋ฉ๋‹ˆ๋‹ค", "To select actions here, add them to the \"Functions\" workspace first.": "์—ฌ๊ธฐ์„œ ํ–‰๋™์„ ์„ ํƒํ•˜๋ ค๋ฉด, \"ํ•จ์ˆ˜\" ์›Œํฌ์ŠคํŽ˜์ด์Šค์— ๋จผ์ € ์ถ”๊ฐ€ํ•˜์„ธ์š”", "To select filters here, add them to the \"Functions\" workspace first.": "์—ฌ๊ธฐ์„œ ํ•„ํ„ฐ๋ฅผ ์„ ํƒํ•˜๋ ค๋ฉด, \"ํ•จ์ˆ˜\" ์›Œํฌ์ŠคํŽ˜์ด์Šค์— ๋จผ์ € ์ถ”๊ฐ€ํ•˜์„ธ์š”", "To select toolkits here, add them to the \"Tools\" workspace first.": "์—ฌ๊ธฐ์„œ ๋„๊ตฌ๋ฅผ ์„ ํƒํ•˜๋ ค๋ฉด, \"๋„๊ตฌ\" ์›Œํฌ์ŠคํŽ˜์ด์Šค์— ๋จผ์ € ์ถ”๊ฐ€ํ•˜์„ธ์š”.", - "Toast notifications for new updates": "์—…๋ฐ์ดํŠธ ํ† ์ŠคํŠธ ์•Œ๋ฆผ", + "Toast notifications for new updates": "์ƒˆ ์—…๋ฐ์ดํŠธ ์•Œ๋ฆผ", "Today": "์˜ค๋Š˜", "Toggle search": "๊ฒ€์ƒ‰ ์ „ํ™˜", "Toggle settings": "์„ค์ • ์ „ํ™˜", "Toggle sidebar": "์‚ฌ์ด๋“œ๋ฐ” ์ „ํ™˜", - "Toggle whether current connection is active.": "", + "Toggle whether current connection is active.": "ํ˜„์žฌ ์—ฐ๊ฒฐ ํ™œ์„ฑํ™” ์—ฌ๋ถ€ ์„ค์ •", "Token": "ํ† ํฐ", "Too verbose": "๋ง์ด ๋„ˆ๋ฌด ๋งŽ์Œ", "Tool created successfully": "์„ฑ๊ณต์ ์œผ๋กœ ๋„๊ตฌ๊ฐ€ ์ƒ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.", @@ -1352,8 +1352,8 @@ "Tools have a function calling system that allows arbitrary code execution.": "๋„๊ตฌ์— ์ž„์˜ ์ฝ”๋“œ ์‹คํ–‰์„ ํ—ˆ์šฉํ•˜๋Š” ํ•จ์ˆ˜๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.", "Tools Public Sharing": "๋„๊ตฌ ๊ณต๊ฐœ ๋ฐ ๊ณต์œ ", "Top K": "Top K", - "Top K Reranker": "", - "Transformers": "", + "Top K Reranker": "Top K ๋ฆฌ๋žญ์ปค", + "Transformers": "ํŠธ๋žœ์Šคํฌ๋จธ", "Trouble accessing Ollama?": "์˜ฌ๋ผ๋งˆ(Ollama)์— ์ ‘๊ทผํ•˜๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ๋‚˜์š”?", "Trust Proxy Environment": "์‹ ๋ขฐ ํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋ก์‹œ ํ™˜๊ฒฝ", "TTS Model": "TTS ๋ชจ๋ธ", @@ -1366,21 +1366,21 @@ "Unarchive All": "๋ชจ๋‘ ๋ณด๊ด€ ํ•ด์ œ", "Unarchive All Archived Chats": "๋ณด๊ด€๋œ ๋ชจ๋“  ์ฑ„ํŒ…์„ ๋ณด๊ด€ ํ•ด์ œ", "Unarchive Chat": "์ฑ„ํŒ… ๋ณด๊ด€ ํ•ด์ œ", - "Underline": "", - "Unloads {{FROM_NOW}}": "", + "Underline": "๋ฐ‘์ค„", + "Unloads {{FROM_NOW}}": "{{FROM_NOW}} ์–ธ๋กœ๋“œ", "Unlock mysteries": "๋ฏธ์Šคํ„ฐ๋ฆฌ ํ’€๊ธฐ", "Unpin": "๊ณ ์ • ํ•ด์ œ", "Unravel secrets": "๋น„๋ฐ€ ํ’€๊ธฐ", - "Unsupported file type.": "", + "Unsupported file type.": "์ง€์›ํ•˜์ง€ ์•Š๋Š” ํŒŒ์ผ ํ˜•์‹", "Untagged": "ํƒœ๊ทธ ํ•ด์ œ", - "Untitled": "", + "Untitled": "์ œ๋ชฉ ์—†์Œ", "Update": "์—…๋ฐ์ดํŠธ", "Update and Copy Link": "๋งํฌ ์—…๋ฐ์ดํŠธ ๋ฐ ๋ณต์‚ฌ", "Update for the latest features and improvements.": "์ด๋ฒˆ ์—…๋ฐ์ดํŠธ์˜ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ๊ณผ ๊ฐœ์„ ", "Update password": "๋น„๋ฐ€๋ฒˆํ˜ธ ์—…๋ฐ์ดํŠธ", "Updated": "์—…๋ฐ์ดํŠธ๋จ", - "Updated at": "๋‹ค์Œ์— ์—…๋ฐ์ดํŠธ๋จ", - "Updated At": "๋‹ค์Œ์— ์—…๋ฐ์ดํŠธ๋จ", + "Updated at": "์—…๋ฐ์ดํŠธ ์ผ์‹œ", + "Updated At": "์—…๋ฐ์ดํŠธ ์ผ์‹œ", "Upgrade to a licensed plan for enhanced capabilities, including custom theming and branding, and dedicated support.": "๋งž์ถคํ˜• ํ…Œ๋งˆ ์„ค์ • ๋ฐ ๋ธŒ๋žœ๋”ฉ, ์ „์šฉ ์ง€์›์„ ํฌํ•จํ•œ ํ–ฅ์ƒ๋œ ๊ธฐ๋Šฅ์„ ์œ„ํ•ด ๋ผ์ด์„ ์Šค ํ”Œ๋žœ์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์„ธ์š”.", "Upload": "์—…๋กœ๋“œ", "Upload a GGUF model": "GGUF ๋ชจ๋ธ ์—…๋กœ๋“œ", @@ -1403,12 +1403,12 @@ "user": "์‚ฌ์šฉ์ž", "User": "์‚ฌ์šฉ์ž", "User location successfully retrieved.": "์„ฑ๊ณต์ ์œผ๋กœ ์‚ฌ์šฉ์ž์˜ ์œ„์น˜๋ฅผ ๋ถˆ๋Ÿฌ์™”์Šต๋‹ˆ๋‹ค", - "User menu": "", + "User menu": "์‚ฌ์šฉ์ž ๋ฉ”๋‰ด", "User Webhooks": "์‚ฌ์šฉ์ž ์›นํ›…", "Username": "์‚ฌ์šฉ์ž ์ด๋ฆ„", "Users": "์‚ฌ์šฉ์ž", - "Using Entire Document": "", - "Using Focused Retrieval": "", + "Using Entire Document": "์ „์ฒด ๋ฌธ์„œ ์‚ฌ์šฉ", + "Using Focused Retrieval": "์ง‘์ค‘ ๊ฒ€์ƒ‰ ์‚ฌ์šฉ", "Using the default arena model with all models. Click the plus button to add custom models.": "๋ชจ๋“  ๋ชจ๋ธ์€ ๊ธฐ๋ณธ ์•„๋ ˆ๋‚˜ ๋ชจ๋ธ์„ ์‚ฌ์šฉ์ค‘์ž…๋‹ˆ๋‹ค. ํ”Œ๋Ÿฌ์Šค ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ ์ปค์Šคํ…€ ๋ชจ๋ธ์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”.", "Valid time units:": "์œ ํšจ ์‹œ๊ฐ„ ๋‹จ์œ„:", "Valves": "๋ฐธ๋ธŒ", @@ -1422,7 +1422,7 @@ "View Replies": "๋‹ต๊ธ€ ๋ณด๊ธฐ", "View Result from **{{NAME}}**": "**{{NAME}}**์˜ ๊ฒฐ๊ณผ ๋ณด๊ธฐ", "Visibility": "๊ณต๊ฐœ ๋ฒ”์œ„", - "Vision": "", + "Vision": "๋น„์ „", "Voice": "์Œ์„ฑ", "Voice Input": "์Œ์„ฑ ์ž…๋ ฅ", "Voice mode": "์Œ์„ฑ ๋ชจ๋“œ ์‚ฌ์šฉ", @@ -1444,13 +1444,13 @@ "WebUI will make requests to \"{{url}}\"": "WebUI๊ฐ€ \"{{url}}\"๋กœ ์š”์ฒญ์„ ๋ณด๋ƒ…๋‹ˆ๋‹ค", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI๊ฐ€ \"{{url}}/api/chat\"๋กœ ์š”์ฒญ์„ ๋ณด๋ƒ…๋‹ˆ๋‹ค", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI๊ฐ€ \"{{url}}/chat/completions\"๋กœ ์š”์ฒญ์„ ๋ณด๋ƒ…๋‹ˆ๋‹ค", - "Weight of BM25 Retrieval": "", + "Weight of BM25 Retrieval": "BM25 ๊ฒ€์ƒ‰ ๊ฐ€์ค‘์น˜", "What are you trying to achieve?": "๋ฌด์—‡์„ ์„ฑ์ทจํ•˜๊ณ  ์‹ถ์œผ์‹ ๊ฐ€์š”?", "What are you working on?": "์–ด๋–ค ์ž‘์—…์„ ํ•˜๊ณ  ๊ณ„์‹ ๊ฐ€์š”?", "What's New in": "์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ:", "When enabled, the model will respond to each chat message in real-time, generating a response as soon as the user sends a message. This mode is useful for live chat applications, but may impact performance on slower hardware.": "ํ™œ์„ฑํ™”ํ•˜๋ฉด ๋ชจ๋ธ์ด ๊ฐ ์ฑ„ํŒ… ๋ฉ”์‹œ์ง€์— ์‹ค์‹œ๊ฐ„์œผ๋กœ ์‘๋‹ตํ•˜์—ฌ ์‚ฌ์šฉ์ž๊ฐ€ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด๋Š” ์ฆ‰์‹œ ์‘๋‹ต์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋Š” ์‹ค์‹œ๊ฐ„ ์ฑ„ํŒ… ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์œ ์šฉํ•˜์ง€๋งŒ, ๋А๋ฆฐ ํ•˜๋“œ์›จ์–ด์—์„œ๋Š” ์„ฑ๋Šฅ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.", "wherever you are": "๋‹น์‹ ์ด ์–ด๋””์— ์žˆ๋“ ", - "Whether to paginate the output. Each page will be separated by a horizontal rule and page number. Defaults to False.": "", + "Whether to paginate the output. Each page will be separated by a horizontal rule and page number. Defaults to False.": "์ถœ๋ ฅ์„ ํŽ˜์ด์ง€๋กœ ๋‚˜๋ˆŒ์ง€ ์—ฌ๋ถ€์ž…๋‹ˆ๋‹ค. ๊ฐ ํŽ˜์ด์ง€๋Š” ๊ตฌ๋ถ„์„ ๊ณผ ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ๋กœ ๊ตฌ๋ถ„๋ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ False์ž…๋‹ˆ๋‹ค.", "Whisper (Local)": "Whisper (๋กœ์ปฌ)", "Why?": "์ด์œ ๋Š”?", "Widescreen Mode": "์™€์ด๋“œ์Šคํฌ๋ฆฐ ๋ชจ๋“œ",