From 671c9d7d42e17e26f854df4339896384013170ff Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 16 Feb 2026 12:38:35 +0000 Subject: [PATCH] chore(release): Update version to v1.4.405 --- CHANGELOG.md | 39 +++++++++++++++++++++++ cmd/fabric/version.go | 2 +- cmd/generate_changelog/changelog.db | Bin 3915776 -> 3944448 bytes cmd/generate_changelog/incoming/2002.txt | 7 ---- cmd/generate_changelog/incoming/2003.txt | 7 ---- nix/pkgs/fabric/version.nix | 2 +- 6 files changed, 41 insertions(+), 16 deletions(-) delete mode 100644 cmd/generate_changelog/incoming/2002.txt delete mode 100644 cmd/generate_changelog/incoming/2003.txt diff --git a/CHANGELOG.md b/CHANGELOG.md index 9cff26f2..063e9b26 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,44 @@ # Changelog +## v1.4.405 (2026-02-16) + +### PR [#2002](https://github.com/danielmiessler/Fabric/pull/2002) by [ksylvan](https://github.com/ksylvan): Internationalization Polish + +- Added i18n translations for ollama, extensions, lmstudio, and spotify modules +- Replaced hardcoded English strings with `i18n.T()` calls across all modules +- Added translations for all new keys in de, en, es, fa, fr, it, ja, pt-BR, pt-PT, and zh locales +- Added i18n strings for extension registry, executor, and manager operations +- Added i18n strings for Spotify API client error messages + +### PR [#2003](https://github.com/danielmiessler/Fabric/pull/2003) by [ksylvan](https://github.com/ksylvan): Add internationalization support for chatter and template file operations + +- Add internationalization support for chatter and template file operations +- Replace hardcoded strings with i18n keys in chatter.go and file.go +- Provide translations in nine languages: German, English, Spanish, Persian, French, Italian, Japanese, Portuguese, and Chinese +- Enable localized output for stream updates and file plugin operations +- Maintain backward compatibility with existing functionality + +### Direct commits + +- MAESTRO: i18n: extract hard-coded strings from internal/tools/spotify/spotify.go +Co-Authored-By: Claude Opus 4.6 +- MAESTRO: i18n: extract hard-coded strings from internal/plugins/template/extension_executor.go +Co-Authored-By: Claude Opus 4.6 +- MAESTRO: i18n: extract hard-coded strings from internal/plugins/ai/openai/openai.go +Co-Authored-By: Claude Opus 4.6 +- MAESTRO: i18n: extract hard-coded strings from internal/plugins/template/extension_registry.go +Co-Authored-By: Claude Opus 4.6 +- MAESTRO: i18n: extract hard-coded strings from internal/plugins/ai/lmstudio/lmstudio.go +Co-Authored-By: Claude Opus 4.6 +- MAESTRO: i18n: extract hard-coded strings from internal/plugins/template/extension_manager.go +Co-Authored-By: Claude Opus 4.6 +- MAESTRO: i18n: extract hard-coded strings from internal/server/ollama.go +Replace 37 hard-coded error/log strings with i18n.T() calls and add +translations for all 10 supported languages (en, de, es, fa, fr, it, +ja, pt-BR, pt-PT, zh). Keys use ollama_ prefix following project +conventions. +Co-Authored-By: Claude Opus 4.6 + ## v1.4.404 (2026-02-13) ### PR [#1997](https://github.com/danielmiessler/Fabric/pull/1997) by [ksylvan](https://github.com/ksylvan): Enable responses API usage for GrokAI (xAI) provider diff --git a/cmd/fabric/version.go b/cmd/fabric/version.go index f9a44d3b..614e56bd 100644 --- a/cmd/fabric/version.go +++ b/cmd/fabric/version.go @@ -1,3 +1,3 @@ package main -var version = "v1.4.404" +var version = "v1.4.405" diff --git a/cmd/generate_changelog/changelog.db b/cmd/generate_changelog/changelog.db index 1a8ca55a88fd03e1a6f649c86231ace715bf8560..fffda6b8e362d0a1ec3c26e314740e7cbc7bd7e2 100644 GIT binary patch delta 20117 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 diff --git a/cmd/generate_changelog/incoming/2002.txt b/cmd/generate_changelog/incoming/2002.txt deleted file mode 100644 index 5c6eaac2..00000000 --- a/cmd/generate_changelog/incoming/2002.txt +++ /dev/null @@ -1,7 +0,0 @@ -### PR [#2002](https://github.com/danielmiessler/Fabric/pull/2002) by [ksylvan](https://github.com/ksylvan): Internationalization Polish - -- Added i18n translations for ollama, extensions, lmstudio, and spotify modules -- Replaced hardcoded English strings with `i18n.T()` calls across all modules -- Added translations for all new keys in de, en, es, fa, fr, it, ja, pt-BR, pt-PT, and zh locales -- Added i18n strings for extension registry, executor, and manager operations -- Added i18n strings for Spotify API client error messages diff --git a/cmd/generate_changelog/incoming/2003.txt b/cmd/generate_changelog/incoming/2003.txt deleted file mode 100644 index 3a1ce2e7..00000000 --- a/cmd/generate_changelog/incoming/2003.txt +++ /dev/null @@ -1,7 +0,0 @@ -### PR [#2003](https://github.com/danielmiessler/Fabric/pull/2003) by [ksylvan](https://github.com/ksylvan): Add internationalization support for chatter and template file operations - -- Add internationalization support for chatter and template file operations -- Replace hardcoded strings with i18n keys in chatter.go and file.go -- Provide translations in nine languages: German, English, Spanish, Persian, French, Italian, Japanese, Portuguese, and Chinese -- Enable localized output for stream updates and file plugin operations -- Maintain backward compatibility with existing functionality diff --git a/nix/pkgs/fabric/version.nix b/nix/pkgs/fabric/version.nix index 290adcd1..07ad57a9 100644 --- a/nix/pkgs/fabric/version.nix +++ b/nix/pkgs/fabric/version.nix @@ -1 +1 @@ -"1.4.404" +"1.4.405"